@common-stack/generate-plugin 5.0.6-alpha.3 → 5.0.6-alpha.4

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 (141) hide show
  1. package/.eslintrc.json +1 -1
  2. package/CHANGELOG.md +4 -0
  3. package/executors.json +14 -0
  4. package/generators.json +15 -0
  5. package/lib/executors/sort-package-json/executor.cjs +46 -0
  6. package/lib/executors/sort-package-json/executor.cjs.map +1 -0
  7. package/lib/executors/sort-package-json/executor.d.ts +4 -0
  8. package/lib/executors/sort-package-json/executor.mjs +46 -0
  9. package/lib/executors/sort-package-json/executor.mjs.map +1 -0
  10. package/lib/executors/sort-package-json/executor.spec.d.ts +1 -0
  11. package/lib/executors/sort-package-json/schema.json +9 -0
  12. package/lib/executors/update-deploy-version/executor.cjs +22 -0
  13. package/lib/executors/update-deploy-version/executor.cjs.map +1 -0
  14. package/lib/executors/update-deploy-version/executor.d.ts +4 -0
  15. package/lib/executors/update-deploy-version/executor.mjs +22 -0
  16. package/lib/executors/update-deploy-version/executor.mjs.map +1 -0
  17. package/lib/executors/update-deploy-version/executor.spec.d.ts +1 -0
  18. package/lib/executors/update-deploy-version/schema.json +14 -0
  19. package/lib/generators/add-backend/files/package.json +5 -5
  20. package/lib/generators/add-backend/files/tsconfig.json +1 -1
  21. package/lib/generators/add-backend/files/webpack.config.js +6 -10
  22. package/lib/generators/add-browser-package/files/package.json +1 -1
  23. package/lib/generators/add-client-package/files/CHANGELOG.md +807 -0
  24. package/lib/generators/add-client-package/files/LICENSE +674 -0
  25. package/lib/generators/add-client-package/files/jest.config.js +13 -0
  26. package/lib/generators/add-client-package/files/package.json +31 -0
  27. package/lib/generators/add-client-package/files/rollup.config.mjs +29 -0
  28. package/lib/generators/add-client-package/files/src/components/index.tsx.template +1 -0
  29. package/lib/generators/add-client-package/files/src/index.ts.template +1 -0
  30. package/lib/generators/add-client-package/files/tsconfig.json +27 -0
  31. package/lib/generators/add-client-package/files/webpack.config.js +72 -0
  32. package/lib/generators/add-client-package/generator.cjs +19 -0
  33. package/lib/generators/add-client-package/generator.cjs.map +1 -0
  34. package/lib/generators/add-client-package/generator.d.ts +4 -0
  35. package/lib/generators/add-client-package/generator.mjs +19 -0
  36. package/lib/generators/add-client-package/generator.mjs.map +1 -0
  37. package/lib/generators/add-client-package/generator.spec.d.ts +1 -0
  38. package/lib/generators/add-client-package/schema.json +19 -0
  39. package/lib/generators/add-core-package/files/CHANGELOG.md +1076 -0
  40. package/lib/generators/add-core-package/files/LICENSE +39 -0
  41. package/lib/generators/add-core-package/files/jest.config.js +3 -0
  42. package/lib/generators/add-core-package/files/package.json +31 -0
  43. package/lib/generators/add-core-package/files/rollup.config.mjs +65 -0
  44. package/lib/generators/add-core-package/files/src/constants/index.ts.template +1 -0
  45. package/lib/generators/add-core-package/files/src/constants/types.ts.template +3 -0
  46. package/lib/generators/add-core-package/files/src/index.ts.template +2 -0
  47. package/lib/generators/add-core-package/files/src/types/index.ts.template +1 -0
  48. package/lib/generators/add-core-package/files/src/types/types.ts.template +17 -0
  49. package/lib/generators/add-core-package/files/tsconfig.json +22 -0
  50. package/lib/generators/add-core-package/files/webpack.config.js +53 -0
  51. package/lib/generators/add-core-package/generator.cjs +19 -0
  52. package/lib/generators/add-core-package/generator.cjs.map +1 -0
  53. package/lib/generators/add-core-package/generator.d.ts +4 -0
  54. package/lib/generators/add-core-package/generator.mjs +19 -0
  55. package/lib/generators/add-core-package/generator.mjs.map +1 -0
  56. package/lib/generators/add-core-package/generator.spec.d.ts +1 -0
  57. package/lib/generators/add-core-package/schema.json +19 -0
  58. package/lib/generators/add-frontend/templates/package.json +8 -8
  59. package/lib/generators/add-fullstack/files/package.json +1 -1
  60. package/lib/generators/add-moleculer/files/package.json +5 -5
  61. package/lib/generators/add-server-package/files/CHANGELOG.md +2599 -0
  62. package/lib/generators/add-server-package/files/LICENSE +674 -0
  63. package/lib/generators/add-server-package/files/jest.config.js +32 -0
  64. package/lib/generators/add-server-package/files/package.json +78 -0
  65. package/lib/generators/add-server-package/files/rollup.config.mjs +30 -0
  66. package/lib/generators/add-server-package/files/src/constants/constants.ts.template +62 -0
  67. package/lib/generators/add-server-package/files/src/constants/index.ts.template +1 -0
  68. package/lib/generators/add-server-package/files/src/constants/types.ts.template +21 -0
  69. package/lib/generators/add-server-package/files/src/index.ts.template +6 -0
  70. package/lib/generators/add-server-package/files/src/module.ts.template +6 -0
  71. package/lib/generators/add-server-package/files/tsconfig.json +27 -0
  72. package/lib/generators/add-server-package/generator.cjs +19 -0
  73. package/lib/generators/add-server-package/generator.cjs.map +1 -0
  74. package/lib/generators/add-server-package/generator.d.ts +4 -0
  75. package/lib/generators/add-server-package/generator.mjs +19 -0
  76. package/lib/generators/add-server-package/generator.mjs.map +1 -0
  77. package/lib/generators/add-server-package/generator.spec.d.ts +1 -0
  78. package/lib/generators/add-server-package/schema.json +19 -0
  79. package/lib/index.cjs +1 -1
  80. package/lib/index.d.ts +5 -0
  81. package/lib/index.mjs +1 -1
  82. package/package.json +3 -2
  83. package/project.json +12 -1
  84. package/rollup.config.mjs +8 -0
  85. package/src/executors/sort-package-json/executor.spec.ts +18 -0
  86. package/src/executors/sort-package-json/executor.ts +53 -0
  87. package/src/executors/sort-package-json/schema.d.ts +1 -0
  88. package/src/executors/sort-package-json/schema.json +9 -0
  89. package/src/executors/update-deploy-version/executor.spec.ts +18 -0
  90. package/src/executors/update-deploy-version/executor.ts +36 -0
  91. package/src/executors/update-deploy-version/schema.d.ts +3 -0
  92. package/src/executors/update-deploy-version/schema.json +14 -0
  93. package/src/generators/add-client-package/generator.spec.ts +20 -0
  94. package/src/generators/add-client-package/generator.ts +23 -0
  95. package/src/generators/add-client-package/schema.d.ts +4 -0
  96. package/src/generators/add-client-package/schema.json +19 -0
  97. package/src/generators/add-core-package/generator.spec.ts +20 -0
  98. package/src/generators/add-core-package/generator.ts +23 -0
  99. package/src/generators/add-core-package/schema.d.ts +4 -0
  100. package/src/generators/add-core-package/schema.json +19 -0
  101. package/src/generators/add-fullstack/files/package.json +1 -1
  102. package/src/generators/add-moleculer/files/package.json +5 -5
  103. package/src/generators/add-server-package/generator.spec.ts +20 -0
  104. package/src/generators/add-server-package/generator.ts +23 -0
  105. package/src/generators/add-server-package/schema.d.ts +4 -0
  106. package/src/generators/add-server-package/schema.json +19 -0
  107. package/src/index.ts +5 -0
  108. package/lib/generators/add-backend/files/knexfile.js +0 -63
  109. package/lib/generators/add-backend/files/src/api/remote-config.ts.template +0 -11
  110. package/lib/generators/add-backend/files/src/api/resolver.ts.template +0 -15
  111. package/lib/generators/add-backend/files/src/api/scalar.ts.template +0 -16
  112. package/lib/generators/add-backend/files/src/api/schema-builder.ts.template +0 -189
  113. package/lib/generators/add-backend/files/src/api/utils.ts.template +0 -44
  114. package/lib/generators/add-backend/files/src/config/moleculer.config.ts.template +0 -228
  115. package/lib/generators/add-backend/files/src/connectors/connection-broker.ts.template +0 -80
  116. package/lib/generators/add-backend/files/src/connectors/graphql-pubsub-connector.ts.template +0 -43
  117. package/lib/generators/add-backend/files/src/connectors/mongo-connector.ts.template +0 -78
  118. package/lib/generators/add-backend/files/src/connectors/nats-connector.ts.template +0 -82
  119. package/lib/generators/add-backend/files/src/connectors/redis-connector.ts.template +0 -73
  120. package/lib/generators/add-backend/files/src/express-app.ts.template +0 -67
  121. package/lib/generators/add-backend/files/src/interfaces/index.ts.template +0 -1
  122. package/lib/generators/add-backend/files/src/interfaces/module-interface.ts.template +0 -16
  123. package/lib/generators/add-backend/files/src/main.spec.ts.template +0 -129
  124. package/lib/generators/add-backend/files/src/middleware/__tests__/cors.test.ts.template +0 -12
  125. package/lib/generators/add-backend/files/src/middleware/cors.ts.template +0 -31
  126. package/lib/generators/add-backend/files/src/middleware/error.ts.template +0 -63
  127. package/lib/generators/add-backend/files/src/middleware/moleculer-inter-namespace.ts.template +0 -60
  128. package/lib/generators/add-backend/files/src/middleware/persistedQuery.ts.template +0 -40
  129. package/lib/generators/add-backend/files/src/middleware/sentry.ts.template +0 -9
  130. package/lib/generators/add-backend/files/src/middleware/services.ts.template +0 -16
  131. package/lib/generators/add-backend/files/src/middleware/tracer.ts.template +0 -24
  132. package/lib/generators/add-backend/files/src/modules/auth/schema/auth-schema.graphql +0 -25
  133. package/lib/generators/add-backend/files/src/server-setup/graphql-server.ts.template +0 -185
  134. package/lib/generators/add-backend/files/src/server-setup/graphql-subscription-server.ts.template +0 -113
  135. package/lib/generators/add-backend/files/src/server-setup/graphql-ws.ts.template +0 -158
  136. package/lib/generators/add-backend/files/src/server-setup/mongodb-migration-update.ts.template +0 -47
  137. package/lib/generators/add-backend/files/src/server-setup/utils.ts.template +0 -43
  138. package/lib/generators/add-backend/files/src/server-setup/websocket-multipath-update.ts.template +0 -88
  139. package/lib/generators/add-backend/files/src/stack-server.ts.template +0 -277
  140. package/lib/generators/add-backend/files/src/utils/migrations.ts.template +0 -32
  141. package/lib/generators/add-backend/files/uploads/3986781.ppt +0 -0
@@ -0,0 +1,32 @@
1
+ const base = require('../../../jest.config.base');
2
+ const packageJson = require('./package');
3
+ const merge = require('merge')
4
+ const baseConfig = require('../../../jest.config.base');
5
+ const mongodbConfig = require('../../../jest.config.mongodb');
6
+
7
+ const mergeData = merge.recursive(
8
+ baseConfig,
9
+ {
10
+ "transform": {
11
+ "\\.(js|jsx)?$": "../../../transform.js",
12
+ },
13
+ moduleNameMapper: {
14
+ '^__mocks__/(.*)$': '<rootDir>/../../__mocks__/$1',
15
+ // we'll use commonjs version of lodash for tests 👌
16
+ // because we don't need to use any kind of tree shaking right?!
17
+ '^lodash-es$': '<rootDir>/../../../node_modules/lodash/index.js',
18
+ '@adminide-stack\/core': '<rootDir>/../../adminide-core/src/index.ts',
19
+ },
20
+ roots: [
21
+ "src",
22
+ ],
23
+ },
24
+ mongodbConfig,
25
+ {
26
+ globals: {
27
+
28
+ }
29
+ }
30
+ );
31
+
32
+ module.exports = mergeData;
@@ -0,0 +1,78 @@
1
+ {
2
+ "name": "server-package",
3
+ "version": "3.1.1-alpha.5",
4
+ "description": "Sample core for higher packages to depend on",
5
+ "license": "ISC",
6
+ "author": "CDMBase LLC",
7
+ "main": "lib/index.js",
8
+ "type": "module",
9
+ "module": "lib/index.js",
10
+ "typings": "lib/index.d.ts",
11
+ "scripts": {
12
+ "build": "npm run build:clean && npm run build:lib",
13
+ "build:clean": "rimraf lib",
14
+ "build:lib": "rollup -c rollup.config.mjs",
15
+ "build:lib:watch": "npm run build:lib -- --watch",
16
+ "jest": "./node_modules/.bin/jest",
17
+ "prepublish": "npm run build",
18
+ "schema:download": "./node_modules/.bin/apollo-codegen download-schema http://localhost:8080/graphql --output schema.json ",
19
+ "schema:generate": "./node_modules/.bin/apollo-codegen generate src/browser/graphql/**/*.gql --schema schema.json --target typescript --output src/browser/graphql/schema.ts",
20
+ "test": "cross-env ENV_FILE=../../../config/test/test.env jest",
21
+ "test:debug": "npm test -- --runInBand",
22
+ "test:watch": "npm test -- --watch",
23
+ "watch": "npm run build:lib:watch"
24
+ },
25
+ "jest": {
26
+ "moduleFileExtensions": [
27
+ "ts",
28
+ "tsx",
29
+ "js",
30
+ "json"
31
+ ],
32
+ "modulePaths": [
33
+ "node_modules"
34
+ ],
35
+ "roots": [
36
+ "src"
37
+ ],
38
+ "testEnvironment": "node",
39
+ "testRegex": "/__tests__/.*test*\\.(ts|tsx|js)$",
40
+ "transform": {
41
+ "\\.ts$": [
42
+ "ts-jest"
43
+ ]
44
+ }
45
+ },
46
+ "dependencies": {
47
+ "@casl/ability": "4.1.6",
48
+ "axios": "^0.19.0",
49
+ "bottleneck": "2.19.5",
50
+ "decamelize": "4.0.0",
51
+ "fastest-validator": "1.9.0",
52
+ "moment": "2.27.0",
53
+ "pluralize": "8.0.0",
54
+ "qs": "^6.10.1",
55
+ "query-string": "^9.0.0",
56
+ "uuid": "^9.0.1"
57
+ },
58
+ "devDependencies": {
59
+ "@types/qs": "^6.9.6",
60
+ "express-nock": "^0.1.1"
61
+ },
62
+ "peerDependencies": {
63
+ "@apollo/client": ">=3.0.0",
64
+ "@cdm-logger/server": "^7.0.12",
65
+ "@common-stack/core": "5.0.6-alpha.3",
66
+ "@common-stack/server-core": "5.0.6-alpha.3",
67
+ "@common-stack/store-mongo": "5.0.6-alpha.3",
68
+ "@container-stack/mailing-api": ">=0.0.35-alpha.1",
69
+ "@vscode-alt/monaco-editor": "^0.21.4",
70
+ "inversify": "^5.0.1",
71
+ "lodash": "^4.17.15",
72
+ "moleculer": "^0.14.2",
73
+ "mongoose": "^6.3.3"
74
+ },
75
+ "typescript": {
76
+ "definition": "lib/index.d.ts"
77
+ }
78
+ }
@@ -0,0 +1,30 @@
1
+ import { createRollupConfig } from '../../../rollup.config.base.mjs';
2
+ import json from '@rollup/plugin-json'
3
+
4
+ // Define any additional plugins specific to this bundle
5
+ const additionalPlugins = [
6
+ json()
7
+ ];
8
+
9
+ // Use the createRollupConfig function to merge the base and specific configurations
10
+ export default [
11
+ createRollupConfig({
12
+ input: ['src/index.ts'],
13
+ plugins: [
14
+ // Spread in additional plugins specific to this config
15
+ ...additionalPlugins,
16
+ ],
17
+ output: [
18
+ {
19
+ dir: 'lib',
20
+ format: 'es',
21
+ name: 'Server',
22
+ compact: true,
23
+ exports: 'named',
24
+ sourcemap: true,
25
+ preserveModules: true,
26
+ chunkFileNames: '[name]-[hash].[format].js',
27
+ },
28
+ ],
29
+ }),
30
+ ];
@@ -0,0 +1,62 @@
1
+ import { IMachineConfigRow } from '../interfaces/billing-service';
2
+
3
+ export enum EGoogleConstants {
4
+ GCEService = '6F81-5844-456A',
5
+ }
6
+
7
+ export enum EGoogleResourceGroup {
8
+ CPU = 'CPU',
9
+ GPU = 'GPU',
10
+ RAM = 'RAM',
11
+ N1Highmem = 'N1Highmem',
12
+ N1Highcpu = 'N1Highcpu',
13
+ N1Standard = 'N1Standard',
14
+ }
15
+
16
+ export enum EGoogleResourceFamily {
17
+ Network = 'Network',
18
+ License = 'License',
19
+ Compute = 'Compute',
20
+ Storage = 'Storage',
21
+ }
22
+
23
+ export enum MoleculerTopics {
24
+ Billing = 'Billing',
25
+ }
26
+
27
+ export enum BillingCommands {
28
+ charge = 'charge',
29
+ price = 'price',
30
+ process = 'process',
31
+ table = 'table',
32
+ calculate = 'calculate',
33
+ }
34
+
35
+ export const MAX_CONTAINER_LIMIT = 20;
36
+
37
+ export interface IMachinesValues {
38
+ [propName: string]: IMachineConfigRow;
39
+ }
40
+
41
+ export const MachineConfig: IMachinesValues = {
42
+ HCpu2: { id: 'n1-highcpu-2', cpu: 2, ram: 1800 },
43
+ HCpu4: { id: 'n1-highcpu-4', cpu: 4, ram: 3600 },
44
+ HCpu8: { id: 'n1-highcpu-8', cpu: 8, ram: 7200 },
45
+ HCpu16: { id: 'n1-highcpu-16', cpu: 16, ram: 14400 },
46
+ HCpu32: { id: 'n1-highcpu-32', cpu: 32, ram: 28800 },
47
+
48
+ HRam2: { id: 'n1-highmem-2', cpu: 2, ram: 13000 },
49
+ HRam4: { id: 'n1-highmem-4', cpu: 4, ram: 26000 },
50
+ HRam8: { id: 'n1-highmem-8', cpu: 8, ram: 52000 },
51
+ HRam16: { id: 'n1-highmem-16', cpu: 16, ram: 104000 },
52
+ HRam32: { id: 'n1-highmem-32', cpu: 32, ram: 208000 },
53
+
54
+ MStandard1: { id: 'n1-standard-1', cpu: 1, ram: 3750 },
55
+ MStandard2: { id: 'n1-standard-2', cpu: 2, ram: 7500 },
56
+ MStandard4: { id: 'n1-standard-4', cpu: 4, ram: 15000 },
57
+ MStandard8: { id: 'n1-standard-8', cpu: 8, ram: 30000 },
58
+ MStandard16: { id: 'n1-standard-16', cpu: 16, ram: 60000 },
59
+ MStandard32: { id: 'n1-standard-32', cpu: 32, ram: 120000 },
60
+ };
61
+
62
+ export const DEFAULT_TRIAL_DAYS = 15;
@@ -0,0 +1 @@
1
+ export * from './constants';
@@ -0,0 +1,21 @@
1
+
2
+
3
+
4
+ export enum TYPES {
5
+ BillingService = 'BillingService',
6
+ PaymentService = 'PaymentService',
7
+ PricingService = 'PricingService',
8
+ BillingReportService = 'BillingReportService',
9
+
10
+ PricingApi = 'PricingApi',
11
+ PaymentGateway = 'PaymentGateway',
12
+
13
+ PricesRepository = 'PricesRepository',
14
+ BillingPlanRepository = 'BillingPlanRepository',
15
+ BillingReportsRepository = 'BillingReportsRepository',
16
+ ISubscriptionRepository= 'ISubscriptionRepository',
17
+ IBillingPlanService = 'IBillingPlanService',
18
+ IPaymentProfileRepository= 'IPaymentProfileRepository',
19
+ IStripeIntegrationService= 'IStripeIntegrationService',
20
+ IPaypalIntegrationService= 'IPaypalIntegrationService',
21
+ }
@@ -0,0 +1,6 @@
1
+ import { Feature } from '@common-stack/server-core';
2
+ import modules from './module';
3
+
4
+ export * from './constants';
5
+
6
+ export default new Feature(modules);
@@ -0,0 +1,6 @@
1
+ import { Feature } from '@common-stack/server-core';
2
+ import { interfaces } from 'inversify';
3
+ import { TaggedType } from '@common-stack/core';
4
+
5
+ export default new Feature({
6
+ });
@@ -0,0 +1,27 @@
1
+ {
2
+ "extends": "../../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "resolveJsonModule": true,
5
+ "rootDir": "./src",
6
+ "outDir": "lib",
7
+ "sourceMap": false,
8
+ "noEmitOnError": false,
9
+ "declarationDir": "lib",
10
+ "skipLibCheck": true,
11
+ "declaration": true,
12
+ "declarationMap": true,
13
+ "types": [
14
+ "@types/node",
15
+ "@types/jest",
16
+ "../../../typings"
17
+ ]
18
+ },
19
+ "include": ["src"],
20
+ "exclude": [
21
+ "node_modules",
22
+ "lib",
23
+ "dist",
24
+ "rollup.config.mjs",
25
+ "webpack.config.js"
26
+ ]
27
+ }
@@ -0,0 +1,19 @@
1
+ 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var tslib=require('tslib'),devkit=require('@nx/devkit'),path=require('path'),index=require('../../utils/index.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 addServerPackageGenerator(tree, options) {
2
+ return tslib.__awaiter(this, void 0, void 0, function* () {
3
+ var _a;
4
+ const projectName = (_a = index.getValid(options.name)) !== null && _a !== void 0 ? _a : 'server-package';
5
+ const projectRoot = index.isValid(options.directory) ? `${index.getValid(options.directory)}/${projectName}` : projectName;
6
+ // addProjectConfiguration(tree, options.name, {
7
+ // root: projectRoot,
8
+ // projectType: 'library',
9
+ // sourceRoot: `${projectRoot}/src`,
10
+ // targets: {},
11
+ // });
12
+ devkit.generateFiles(tree, path__namespace.join(__dirname, 'files'), projectRoot, options);
13
+ devkit.updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
14
+ packageJson['name'] = projectName;
15
+ return packageJson;
16
+ });
17
+ yield devkit.formatFiles(tree);
18
+ });
19
+ }exports.addServerPackageGenerator=addServerPackageGenerator;exports.default=addServerPackageGenerator;//# sourceMappingURL=generator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.cjs","sources":["../../../src/generators/add-server-package/generator.ts"],"sourcesContent":[null],"names":["getValid","isValid","generateFiles","path","updateJson","formatFiles"],"mappings":"whBAKsB,SAAA,yBAAyB,CAAC,IAAU,EAAE,OAAwC,EAAA;;;QAChG,MAAM,WAAW,GAAG,CAAA,EAAA,GAAAA,cAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,gBAAgB,CAAC;QAC/D,MAAM,WAAW,GAAGC,aAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA,EAAGD,cAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA,CAAA,EAAI,WAAW,CAAA,CAAE,GAAG,WAAW,CAAC;;;;;;;AAO/G,QAAAE,oBAAa,CAAC,IAAI,EAAEC,eAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACzEC,iBAAU,CAAC,IAAI,EAAE,CAAG,EAAA,WAAW,eAAe,EAAE,CAAC,WAAW,KAAI;AAC5D,YAAA,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;AAClC,YAAA,OAAO,WAAW,CAAC;AACvB,SAAC,CAAC,CAAC;AACH,QAAA,MAAMC,kBAAW,CAAC,IAAI,CAAC,CAAC;KAC3B,CAAA,CAAA;AAAA"}
@@ -0,0 +1,4 @@
1
+ import { Tree } from '@nx/devkit';
2
+ import { AddServerPackageGeneratorSchema } from './schema';
3
+ export declare function addServerPackageGenerator(tree: Tree, options: AddServerPackageGeneratorSchema): Promise<void>;
4
+ export default addServerPackageGenerator;
@@ -0,0 +1,19 @@
1
+ import {__awaiter}from'tslib';import {generateFiles,updateJson,formatFiles}from'@nx/devkit';import*as path from'path';import {getValid,isValid}from'../../utils/index.mjs';function addServerPackageGenerator(tree, options) {
2
+ return __awaiter(this, void 0, void 0, function* () {
3
+ var _a;
4
+ const projectName = (_a = getValid(options.name)) !== null && _a !== void 0 ? _a : 'server-package';
5
+ const projectRoot = isValid(options.directory) ? `${getValid(options.directory)}/${projectName}` : projectName;
6
+ // addProjectConfiguration(tree, options.name, {
7
+ // root: projectRoot,
8
+ // projectType: 'library',
9
+ // sourceRoot: `${projectRoot}/src`,
10
+ // targets: {},
11
+ // });
12
+ generateFiles(tree, path.join(__dirname, 'files'), projectRoot, options);
13
+ updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
14
+ packageJson['name'] = projectName;
15
+ return packageJson;
16
+ });
17
+ yield formatFiles(tree);
18
+ });
19
+ }export{addServerPackageGenerator,addServerPackageGenerator as default};//# sourceMappingURL=generator.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.mjs","sources":["../../../src/generators/add-server-package/generator.ts"],"sourcesContent":[null],"names":[],"mappings":"2KAKsB,SAAA,yBAAyB,CAAC,IAAU,EAAE,OAAwC,EAAA;;;QAChG,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,gBAAgB,CAAC;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA,EAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA,CAAA,EAAI,WAAW,CAAA,CAAE,GAAG,WAAW,CAAC;;;;;;;AAO/G,QAAA,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACzE,UAAU,CAAC,IAAI,EAAE,CAAG,EAAA,WAAW,eAAe,EAAE,CAAC,WAAW,KAAI;AAC5D,YAAA,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;AAClC,YAAA,OAAO,WAAW,CAAC;AACvB,SAAC,CAAC,CAAC;AACH,QAAA,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;KAC3B,CAAA,CAAA;AAAA"}
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "AddServerPackage",
4
+ "title": "",
5
+ "type": "object",
6
+ "properties": {
7
+ "name": {
8
+ "type": "string",
9
+ "description": "",
10
+ "x-prompt": "What name would you like to use?"
11
+ },
12
+ "directory": {
13
+ "type": "string",
14
+ "description": "",
15
+ "x-prompt": "What directory would you like to create in?"
16
+ }
17
+ },
18
+ "required": ["name", "directory"]
19
+ }
package/lib/index.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var generator=require('./generators/add-frontend/generator.cjs'),generator$1=require('./generators/add-backend/generator.cjs'),generator$2=require('./generators/add-fullstack/generator.cjs'),generator$3=require('./generators/add-moleculer/generator.cjs'),generator$4=require('./generators/add-browser-package/generator.cjs');exports.addFrontendGenerator=generator.addFrontendGenerator;exports.addBackendGenerator=generator$1.addBackendGenerator;exports.addFullstackGenerator=generator$2.addFullstackGenerator;exports.addMoleculerGenerator=generator$3.addMoleculerGenerator;exports.addBrowserPackageGenerator=generator$4.addBrowserPackageGenerator;//# sourceMappingURL=index.cjs.map
1
+ 'use strict';var generator=require('./generators/add-frontend/generator.cjs'),generator$1=require('./generators/add-backend/generator.cjs'),generator$2=require('./generators/add-fullstack/generator.cjs'),generator$3=require('./generators/add-moleculer/generator.cjs'),generator$4=require('./generators/add-browser-package/generator.cjs'),generator$5=require('./generators/add-client-package/generator.cjs'),generator$6=require('./generators/add-core-package/generator.cjs'),generator$7=require('./generators/add-server-package/generator.cjs'),executor=require('./executors/update-deploy-version/executor.cjs'),executor$1=require('./executors/sort-package-json/executor.cjs');exports.addFrontendGenerator=generator.addFrontendGenerator;exports.addBackendGenerator=generator$1.addBackendGenerator;exports.addFullstackGenerator=generator$2.addFullstackGenerator;exports.addMoleculerGenerator=generator$3.addMoleculerGenerator;exports.addBrowserPackageGenerator=generator$4.addBrowserPackageGenerator;exports.addClientPackageGenerator=generator$5.addClientPackageGenerator;exports.addCorePackageGenerator=generator$6.addCorePackageGenerator;exports.addServerPackageGenerator=generator$7.addServerPackageGenerator;exports.updateDeployVersion=executor.runExecutor;exports.sortPackageJson=executor$1.runExecutor;//# sourceMappingURL=index.cjs.map
package/lib/index.d.ts CHANGED
@@ -3,3 +3,8 @@ export * from './generators/add-backend/generator';
3
3
  export * from './generators/add-fullstack/generator';
4
4
  export * from './generators/add-moleculer/generator';
5
5
  export * from './generators/add-browser-package/generator';
6
+ export * from './generators/add-client-package/generator';
7
+ export * from './generators/add-core-package/generator';
8
+ export * from './generators/add-server-package/generator';
9
+ export { default as updateDeployVersion } from './executors/update-deploy-version/executor';
10
+ export { default as sortPackageJson } from './executors/sort-package-json/executor';
package/lib/index.mjs CHANGED
@@ -1 +1 @@
1
- export{addFrontendGenerator}from'./generators/add-frontend/generator.mjs';export{addBackendGenerator}from'./generators/add-backend/generator.mjs';export{addFullstackGenerator}from'./generators/add-fullstack/generator.mjs';export{addMoleculerGenerator}from'./generators/add-moleculer/generator.mjs';export{addBrowserPackageGenerator}from'./generators/add-browser-package/generator.mjs';//# sourceMappingURL=index.mjs.map
1
+ export{addFrontendGenerator}from'./generators/add-frontend/generator.mjs';export{addBackendGenerator}from'./generators/add-backend/generator.mjs';export{addFullstackGenerator}from'./generators/add-fullstack/generator.mjs';export{addMoleculerGenerator}from'./generators/add-moleculer/generator.mjs';export{addBrowserPackageGenerator}from'./generators/add-browser-package/generator.mjs';export{addClientPackageGenerator}from'./generators/add-client-package/generator.mjs';export{addCorePackageGenerator}from'./generators/add-core-package/generator.mjs';export{addServerPackageGenerator}from'./generators/add-server-package/generator.mjs';export{runExecutor as updateDeployVersion}from'./executors/update-deploy-version/executor.mjs';export{runExecutor as sortPackageJson}from'./executors/sort-package-json/executor.mjs';//# sourceMappingURL=index.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@common-stack/generate-plugin",
3
- "version": "5.0.6-alpha.3",
3
+ "version": "5.0.6-alpha.4",
4
4
  "type": "module",
5
5
  "main": "./lib/index.mjs",
6
6
  "typings": "./lib/index.d.ts",
@@ -23,6 +23,7 @@
23
23
  "publishConfig": {
24
24
  "access": "public"
25
25
  },
26
+ "executors": "./executors.json",
26
27
  "generators": "./generators.json",
27
- "gitHead": "6f2ee2fc446895ae8da7f8e6f923dc8f8e9975a5"
28
+ "gitHead": "784e8c233d4e13308d950af3da6d0108ff369375"
28
29
  }
package/project.json CHANGED
@@ -3,5 +3,16 @@
3
3
  "$schema": "../../node_modules/nx/schemas/project-schema.json",
4
4
  "sourceRoot": "packages/generate-plugin/src",
5
5
  "projectType": "library",
6
- "tags": []
6
+ "tags": [],
7
+ "targets": {
8
+ "update-deploy-version": {
9
+ "executor": "@common-stack/generate-plugin:update-deploy-version",
10
+ "options": {
11
+ "version": "v10"
12
+ }
13
+ },
14
+ "sort-package-json": {
15
+ "executor": "@common-stack/generate-plugin:sort-package-json"
16
+ }
17
+ }
7
18
  }
package/rollup.config.mjs CHANGED
@@ -35,6 +35,14 @@ const baseConfig = {
35
35
  { src: 'src/generators/add-moleculer/files/*', dest: 'lib/generators/add-moleculer/files' },
36
36
  { src: 'src/generators/add-browser-package/schema.json', dest: 'lib/generators/add-browser-package' },
37
37
  { src: 'src/generators/add-browser-package/files/*', dest: 'lib/generators/add-browser-package/files' },
38
+ { src: 'src/generators/add-client-package/schema.json', dest: 'lib/generators/add-client-package' },
39
+ { src: 'src/generators/add-client-package/files/*', dest: 'lib/generators/add-client-package/files' },
40
+ { src: 'src/generators/add-core-package/schema.json', dest: 'lib/generators/add-core-package' },
41
+ { src: 'src/generators/add-core-package/files/*', dest: 'lib/generators/add-core-package/files' },
42
+ { src: 'src/generators/add-server-package/schema.json', dest: 'lib/generators/add-server-package' },
43
+ { src: 'src/generators/add-server-package/files/*', dest: 'lib/generators/add-server-package/files' },
44
+ { src: 'src/executors/update-deploy-version/schema.json', dest: 'lib/executors/update-deploy-version' },
45
+ { src: 'src/executors/sort-package-json/schema.json', dest: 'lib/executors/sort-package-json' },
38
46
  ],
39
47
  verbose: false,
40
48
  }),
@@ -0,0 +1,18 @@
1
+ import { ExecutorContext } from '@nx/devkit';
2
+
3
+ import { SortPackageJsonExecutorSchema } from './schema';
4
+ import executor from './executor';
5
+
6
+ const options: SortPackageJsonExecutorSchema = {};
7
+ const context: ExecutorContext = {
8
+ root: '',
9
+ cwd: process.cwd(),
10
+ isVerbose: false,
11
+ };
12
+
13
+ describe('SortPackageJson Executor', () => {
14
+ it('can run', async () => {
15
+ const output = await executor(options, context);
16
+ expect(output.success).toBe(true);
17
+ });
18
+ });
@@ -0,0 +1,53 @@
1
+ import { PromiseExecutor } from '@nx/devkit';
2
+ import { promises as fsPromises } from 'fs';
3
+ import path from 'path';
4
+ // import { fileURLToPath } from 'url';
5
+ import { SortPackageJsonExecutorSchema } from './schema';
6
+
7
+ // const __filename = fileURLToPath(import.meta.url);
8
+ // const __dirname = path.dirname(__filename);
9
+
10
+ async function sortPackageJsonFile(filePath) {
11
+ const packageJson = JSON.parse(await fsPromises.readFile(filePath, 'utf8'));
12
+ const sortPackageJson = await import('sort-package-json').then(module => module.default);
13
+ const sortedPackageJson = sortPackageJson(packageJson);
14
+ await fsPromises.writeFile(filePath, JSON.stringify(sortedPackageJson, null, 2) + '\n');
15
+ }
16
+
17
+ async function sortAllPackageJsonFiles(dir) {
18
+ const files = await fsPromises.readdir(dir);
19
+ for (const file of files) {
20
+ const fullPath = path.join(dir, file);
21
+ const stat = await fsPromises.lstat(fullPath);
22
+ if (stat.isDirectory() && ["src", "lib", "node_modules"].includes(file) === false) {
23
+ await sortAllPackageJsonFiles(fullPath);
24
+ } else if (file === 'package.json') {
25
+ await sortPackageJsonFile(fullPath);
26
+ console.log(`Sorted ${fullPath}`);
27
+ }
28
+ }
29
+ }
30
+
31
+ async function processDirectories(dirs) {
32
+ for (const dir of dirs) {
33
+ await sortAllPackageJsonFiles(dir);
34
+ }
35
+ }
36
+
37
+ export const runExecutor: PromiseExecutor<SortPackageJsonExecutorSchema> = async (options) => {
38
+ console.log('Executor ran for SortPackageJson', options);
39
+
40
+ const basePath = process.cwd();
41
+ const directories = [
42
+ path.join(basePath, './packages'),
43
+ path.join(basePath, './servers'),
44
+ path.join(basePath, './portable-devices')
45
+ ];
46
+ await processDirectories(directories);
47
+
48
+ return {
49
+ success: true,
50
+ };
51
+ };
52
+
53
+ export default runExecutor;
@@ -0,0 +1 @@
1
+ export interface SortPackageJsonExecutorSchema {} // eslint-disable-line
@@ -0,0 +1,9 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "version": 2,
4
+ "title": "SortPackageJson executor",
5
+ "description": "",
6
+ "type": "object",
7
+ "properties": {},
8
+ "required": []
9
+ }
@@ -0,0 +1,18 @@
1
+ import { ExecutorContext } from '@nx/devkit';
2
+
3
+ import { UpdateDeployVersionExecutorSchema } from './schema';
4
+ import executor from './executor';
5
+
6
+ const options: UpdateDeployVersionExecutorSchema = {"version": "v01"};
7
+ const context: ExecutorContext = {
8
+ root: '',
9
+ cwd: process.cwd(),
10
+ isVerbose: false,
11
+ };
12
+
13
+ describe('UpdateDeployVersion Executor', () => {
14
+ it('can run', async () => {
15
+ const output = await executor(options, context);
16
+ expect(output.success).toBe(true);
17
+ });
18
+ });
@@ -0,0 +1,36 @@
1
+ import { PromiseExecutor } from '@nx/devkit';
2
+ import { exec } from 'child_process';
3
+ import { promisify } from 'util';
4
+ import path from 'path';
5
+ import { UpdateDeployVersionExecutorSchema } from './schema';
6
+
7
+ const basePath = process.cwd();
8
+ const LERNA_JSON_PATH = path.join(basePath, 'lerna.json');
9
+ const JENKINSFILE_PATH = path.join(basePath, 'Jenkinsfile');
10
+ const CONFIG_FILE_PATH = path.join(basePath, 'values-dev.yaml'); // Updated path
11
+
12
+ const runScript = async (scriptPath, args) => {
13
+ console.log(`Running script: ${scriptPath} with args: ${args}`);
14
+ const { stdout, stderr } = await promisify(exec)(
15
+ `node ${scriptPath} ${args}`
16
+ );
17
+ console.log(stdout);
18
+ console.error(stderr);
19
+
20
+ return !stderr;
21
+ }
22
+
23
+ export const runExecutor: PromiseExecutor<UpdateDeployVersionExecutorSchema> = async (options) => {
24
+ console.log('Executor ran for UpdateDeployVersion', options);
25
+ const success = await Promise.all([
26
+ runScript(path.join(basePath, './tools/deploy-cli/updateLernaVersion.js'), `${LERNA_JSON_PATH} ${options.version}`),
27
+ runScript(path.join(basePath, './tools/deploy-cli/updateJenkinsfileVersion.js'), `${JENKINSFILE_PATH} ${options.version}`),
28
+ runScript(path.join(basePath, './tools/deploy-cli/updateYamlSettings.js'), `${CONFIG_FILE_PATH} ${options.version}`),
29
+ ]).then((values) => {
30
+ return !(values.some(value => value === false));
31
+ });
32
+
33
+ return { success };
34
+ };
35
+
36
+ export default runExecutor;
@@ -0,0 +1,3 @@
1
+ export interface UpdateDeployVersionExecutorSchema {
2
+ version: string;
3
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "version": 2,
4
+ "title": "UpdateDeployVersion executor",
5
+ "description": "",
6
+ "type": "object",
7
+ "properties": {
8
+ "version": {
9
+ "type": "string",
10
+ "description": "Version to set"
11
+ }
12
+ },
13
+ "required": ["version"]
14
+ }
@@ -0,0 +1,20 @@
1
+ import { createTreeWithEmptyWorkspace } from '@nx/devkit/testing';
2
+ import { Tree, readProjectConfiguration } from '@nx/devkit';
3
+
4
+ import { addClientPackageGenerator } from './generator';
5
+ import { AddClientPackageGeneratorSchema } from './schema';
6
+
7
+ describe('add-client-package generator', () => {
8
+ let tree: Tree;
9
+ const options: AddClientPackageGeneratorSchema = { name: 'test', directory: 'lib' };
10
+
11
+ beforeEach(() => {
12
+ tree = createTreeWithEmptyWorkspace();
13
+ });
14
+
15
+ it('should run successfully', async () => {
16
+ await addClientPackageGenerator(tree, options);
17
+ const config = readProjectConfiguration(tree, 'test');
18
+ expect(config).toBeDefined();
19
+ });
20
+ });
@@ -0,0 +1,23 @@
1
+ import { addProjectConfiguration, formatFiles, generateFiles, Tree, updateJson } from '@nx/devkit';
2
+ import * as path from 'path';
3
+ import { AddClientPackageGeneratorSchema } from './schema';
4
+ import { isValid, getValid } from '../../utils';
5
+
6
+ export async function addClientPackageGenerator(tree: Tree, options: AddClientPackageGeneratorSchema) {
7
+ const projectName = getValid(options.name) ?? 'client-package';
8
+ const projectRoot = isValid(options.directory) ? `${getValid(options.directory)}/${projectName}` : projectName;
9
+ // addProjectConfiguration(tree, options.name, {
10
+ // root: projectRoot,
11
+ // projectType: 'library',
12
+ // sourceRoot: `${projectRoot}/src`,
13
+ // targets: {},
14
+ // });
15
+ generateFiles(tree, path.join(__dirname, 'files'), projectRoot, options);
16
+ updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
17
+ packageJson['name'] = projectName;
18
+ return packageJson;
19
+ });
20
+ await formatFiles(tree);
21
+ }
22
+
23
+ export default addClientPackageGenerator;