@ronas-it/nx-generators 0.7.3 → 0.8.1

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 (111) hide show
  1. package/README.md +49 -5
  2. package/generators.json +15 -0
  3. package/package.json +1 -1
  4. package/src/generators/code-checks/files/.eslintrc.json.template +36 -2
  5. package/src/generators/code-checks/generator.js +1 -1
  6. package/src/generators/code-checks/generator.js.map +1 -1
  7. package/src/generators/entity-api/generator.js +13 -19
  8. package/src/generators/entity-api/generator.js.map +1 -1
  9. package/src/generators/expo-app/app-files/app/_layout.tsx.template +21 -13
  10. package/src/generators/expo-app/generator.js +26 -9
  11. package/src/generators/expo-app/generator.js.map +1 -1
  12. package/src/generators/expo-app/i18n/app/en.json +3 -0
  13. package/src/generators/expo-app/i18n/shared/en.json +3 -0
  14. package/src/generators/expo-app/scripts.js +1 -1
  15. package/src/generators/expo-app/scripts.js.map +1 -1
  16. package/src/generators/form/files/__fileName__.ts.template +26 -0
  17. package/src/generators/form/generator.d.ts +4 -0
  18. package/src/generators/form/generator.js +48 -0
  19. package/src/generators/form/generator.js.map +1 -0
  20. package/src/generators/form/schema.d.ts +4 -0
  21. package/src/generators/form/schema.json +29 -0
  22. package/src/generators/form/utils/add-form-usage.d.ts +1 -0
  23. package/src/generators/form/utils/add-form-usage.js +67 -0
  24. package/src/generators/form/utils/add-form-usage.js.map +1 -0
  25. package/src/generators/form/utils/get-form-utils-directory.d.ts +1 -0
  26. package/src/generators/form/utils/get-form-utils-directory.js +24 -0
  27. package/src/generators/form/utils/get-form-utils-directory.js.map +1 -0
  28. package/src/generators/form/utils/index.d.ts +3 -0
  29. package/src/generators/form/utils/index.js +7 -0
  30. package/src/generators/form/utils/index.js.map +1 -0
  31. package/src/generators/form/utils/update-index.d.ts +2 -0
  32. package/src/generators/form/utils/update-index.js +18 -0
  33. package/src/generators/form/utils/update-index.js.map +1 -0
  34. package/src/generators/lib-tags/generator.d.ts +4 -0
  35. package/src/generators/lib-tags/generator.js +53 -0
  36. package/src/generators/lib-tags/generator.js.map +1 -0
  37. package/src/generators/lib-tags/interfaces/context.d.ts +6 -0
  38. package/src/generators/lib-tags/interfaces/context.js +3 -0
  39. package/src/generators/lib-tags/interfaces/context.js.map +1 -0
  40. package/src/generators/lib-tags/interfaces/index.d.ts +1 -0
  41. package/src/generators/lib-tags/interfaces/index.js +5 -0
  42. package/src/generators/lib-tags/interfaces/index.js.map +1 -0
  43. package/src/generators/lib-tags/schema.d.ts +3 -0
  44. package/src/generators/lib-tags/schema.json +14 -0
  45. package/src/generators/lib-tags/utils/check-lib-tags.d.ts +4 -0
  46. package/src/generators/lib-tags/utils/check-lib-tags.js +81 -0
  47. package/src/generators/lib-tags/utils/check-lib-tags.js.map +1 -0
  48. package/src/generators/lib-tags/utils/index.d.ts +1 -0
  49. package/src/generators/lib-tags/utils/index.js +5 -0
  50. package/src/generators/lib-tags/utils/index.js.map +1 -0
  51. package/src/generators/next-app/generator.js +16 -4
  52. package/src/generators/next-app/generator.js.map +1 -1
  53. package/src/generators/react-component/generator.js +3 -8
  54. package/src/generators/react-component/generator.js.map +1 -1
  55. package/src/generators/react-lib/generator.js +37 -11
  56. package/src/generators/react-lib/generator.js.map +1 -1
  57. package/src/generators/react-lib/schema.d.ts +0 -1
  58. package/src/generators/react-lib/schema.json +1 -10
  59. package/src/shared/dependencies.d.ts +6 -0
  60. package/src/shared/dependencies.js +6 -0
  61. package/src/shared/dependencies.js.map +1 -1
  62. package/src/shared/generators/api-client/generator.js +2 -2
  63. package/src/shared/generators/api-client/generator.js.map +1 -1
  64. package/src/shared/generators/app-env/generator.js +2 -2
  65. package/src/shared/generators/app-env/generator.js.map +1 -1
  66. package/src/shared/generators/auth/generator.js +38 -3
  67. package/src/shared/generators/auth/generator.js.map +1 -1
  68. package/src/shared/generators/form-utils/generator.d.ts +6 -0
  69. package/src/shared/generators/form-utils/generator.js +22 -0
  70. package/src/shared/generators/form-utils/generator.js.map +1 -0
  71. package/src/shared/generators/form-utils/index.d.ts +1 -0
  72. package/src/shared/generators/form-utils/index.js +5 -0
  73. package/src/shared/generators/form-utils/index.js.map +1 -0
  74. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/index.ts.template +1 -0
  75. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/lib/index.ts.template +2 -0
  76. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/lib/interfaces/base-schema.ts.template +5 -0
  77. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/lib/interfaces/index.ts.template +1 -0
  78. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/lib/types/index.ts.template +1 -0
  79. package/src/shared/generators/form-utils/lib-files/shared/utils/form/src/lib/types/values.ts.template +1 -0
  80. package/src/shared/generators/index.d.ts +1 -0
  81. package/src/shared/generators/index.js +1 -0
  82. package/src/shared/generators/index.js.map +1 -1
  83. package/src/shared/generators/rn-styles/generator.js +2 -2
  84. package/src/shared/generators/rn-styles/generator.js.map +1 -1
  85. package/src/shared/generators/storage/generator.js +2 -2
  86. package/src/shared/generators/storage/generator.js.map +1 -1
  87. package/src/shared/generators/store/expo-app/lib-files/shared/data-access/store/src/store.ts.template +3 -17
  88. package/src/shared/generators/store/generator.d.ts +2 -6
  89. package/src/shared/generators/store/generator.js +2 -2
  90. package/src/shared/generators/store/generator.js.map +1 -1
  91. package/src/shared/generators/store/next-app/lib-files/shared/data-access/store/src/store.ts.template +1 -1
  92. package/src/shared/generators/store/schema.d.ts +7 -0
  93. package/src/shared/generators/store/schema.json +36 -0
  94. package/src/shared/generators/ui-kitten/generator.js +2 -2
  95. package/src/shared/generators/ui-kitten/generator.js.map +1 -1
  96. package/src/shared/utils/cli-utils.d.ts +2 -0
  97. package/src/shared/utils/cli-utils.js +10 -2
  98. package/src/shared/utils/cli-utils.js.map +1 -1
  99. package/src/shared/utils/config-utils.d.ts +19 -0
  100. package/src/shared/utils/config-utils.js +110 -0
  101. package/src/shared/utils/config-utils.js.map +1 -0
  102. package/src/shared/utils/constants.d.ts +3 -0
  103. package/src/shared/utils/constants.js +7 -0
  104. package/src/shared/utils/constants.js.map +1 -0
  105. package/src/shared/utils/index.d.ts +3 -0
  106. package/src/shared/utils/index.js +3 -0
  107. package/src/shared/utils/index.js.map +1 -1
  108. package/src/shared/utils/ts-utils.d.ts +2 -0
  109. package/src/shared/utils/ts-utils.js +21 -0
  110. package/src/shared/utils/ts-utils.js.map +1 -0
  111. /package/src/generators/entity-api/files/models/{entity.ts.template → __entityFileName__.ts.template} +0 -0
@@ -9,9 +9,9 @@ const utils_1 = require("../../utils");
9
9
  function runAppEnvGenerator(tree, options) {
10
10
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
11
11
  const libRoot = `libs/${options.directory}`;
12
- const libPath = `@${options.name}/${options.directory}`;
12
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
13
13
  // Generate shared libs
14
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/utils/app-env`, { stdio: 'inherit' });
14
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=utils --name=app-env`, { stdio: 'inherit' });
15
15
  // Remove unnecessary files and files that will be replaced
16
16
  tree.delete(`${libRoot}/shared/utils/app-env/src/index.ts`);
17
17
  // Add lib files
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/app-env/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAIoB;AACpB,uCAA8D;AAE9D,SAAsB,kBAAkB,CACtC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,uBAAuB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE/F,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,oCAAoC,CAAC,CAAC;QAE5D,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAtBD,gDAsBC;AAED,kBAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/app-env/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAIoB;AACpB,uCAAmF;AAEnF,SAAsB,kBAAkB,CACtC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAEpE,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,6CAA6C,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE3H,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,oCAAoC,CAAC,CAAC;QAE5D,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAtBD,gDAsBC;AAED,kBAAe,kBAAkB,CAAC"}
@@ -8,14 +8,48 @@ const devkit_1 = require("@nx/devkit");
8
8
  const dependencies_1 = require("../../dependencies");
9
9
  const utils_1 = require("../../utils");
10
10
  const fs_1 = require("fs");
11
+ const ts_morph_1 = require("ts-morph");
12
+ const updateStore = (libRoot) => {
13
+ const project = new ts_morph_1.Project({
14
+ manipulationSettings: {
15
+ indentationText: ts_morph_1.IndentationText.TwoSpaces,
16
+ quoteKind: ts_morph_1.QuoteKind.Single
17
+ }
18
+ });
19
+ const storePath = `${libRoot}/shared/data-access/store/src`;
20
+ const apiPath = `${libRoot}/shared/data-access/api/src`;
21
+ const authPath = `${libRoot}/shared/data-access/auth/src`;
22
+ const store = project.addSourceFileAtPath(`${storePath}/store.ts`);
23
+ const apiAlias = (0, utils_1.searchAliasPath)(apiPath);
24
+ const authAlias = (0, utils_1.searchAliasPath)(authPath);
25
+ store.addImportDeclarations([
26
+ { moduleSpecifier: apiAlias, namedImports: ['authApi', 'profileApi'] },
27
+ { moduleSpecifier: authAlias, namedImports: ['authListenerMiddleware', 'authReducer', 'authReducerPath'] }
28
+ ]);
29
+ const rootReducer = store.getVariableDeclarationOrThrow('rootReducer');
30
+ rootReducer.getInitializerIfKindOrThrow(ts_morph_1.SyntaxKind.ObjectLiteralExpression)
31
+ .addProperties([
32
+ { name: '[authApi.reducerPath]', initializer: 'authApi.reducer', kind: ts_morph_1.StructureKind.PropertyAssignment },
33
+ { name: '[authReducerPath]', initializer: 'authReducer', kind: ts_morph_1.StructureKind.PropertyAssignment },
34
+ { name: '[profileApi.reducerPath]', initializer: 'profileApi.reducer', kind: ts_morph_1.StructureKind.PropertyAssignment }
35
+ ]);
36
+ const middlewares = store.getVariableDeclarationOrThrow('middlewares');
37
+ middlewares.getInitializerIfKindOrThrow(ts_morph_1.SyntaxKind.ArrayLiteralExpression)
38
+ .addElements([
39
+ 'authApi.middleware',
40
+ 'authListenerMiddleware.middleware',
41
+ 'profileApi.middleware'
42
+ ], { useNewLines: true });
43
+ project.saveSync();
44
+ };
11
45
  function runAuthGenerator(tree, options) {
12
46
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
47
  const appRoot = `apps/${options.directory}`;
14
48
  const libRoot = `libs/${options.directory}`;
15
- const libPath = `@${options.name}/${options.directory}`;
49
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
16
50
  // Generate shared libs
17
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/data-access/api`, { stdio: 'inherit' });
18
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/data-access/auth`, { stdio: 'inherit' });
51
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=data-access --name=api`, { stdio: 'inherit' });
52
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=data-access --name=auth`, { stdio: 'inherit' });
19
53
  const appPackagePath = `${appRoot}/package.json`;
20
54
  // Remove unnecessary files and files that will be replaced
21
55
  tree.delete(`${libRoot}/shared/data-access/api/src/index.ts`);
@@ -23,6 +57,7 @@ function runAuthGenerator(tree, options) {
23
57
  // Add lib files
24
58
  (0, devkit_1.generateFiles)(tree, path.join(__dirname, '/lib-files'), libRoot, Object.assign(Object.assign({}, options), { formatName: utils_1.formatName,
25
59
  formatAppIdentifier: utils_1.formatAppIdentifier, formatDirectory: () => libPath }));
60
+ updateStore(libRoot);
26
61
  // Add dependencies
27
62
  (0, devkit_1.addDependenciesToPackageJson)(tree, dependencies_1.dependencies['auth'], dependencies_1.devDependencies['auth']);
28
63
  if ((0, fs_1.existsSync)(appPackagePath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/auth/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAKoB;AACpB,qDAAmE;AACnE,uCAA8D;AAC9D,2BAAgC;AAEhC,SAAsB,gBAAgB,CACpC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,yBAAyB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACjG,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,0BAA0B,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAElG,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,sCAAsC,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,uCAAuC,CAAC,CAAC;QAE/D,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,kCAC1D,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAED,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,MAAM,CAAC,EAAE,8BAAe,CAAC,MAAM,CAAC,CAAC,CAAC;QAElF,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,MAAM,CAAC,EAAE,8BAAe,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;QACpG,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAlCD,4CAkCC;AAED,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/auth/generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function runFormUtilsGenerator(tree: Tree, options: {
3
+ name: string;
4
+ directory: string;
5
+ }): Promise<void>;
6
+ export default runFormUtilsGenerator;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runFormUtilsGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const child_process_1 = require("child_process");
6
+ const path = require("path");
7
+ const devkit_1 = require("@nx/devkit");
8
+ function runFormUtilsGenerator(tree, options) {
9
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
10
+ const libRoot = `libs/${options.directory}`;
11
+ // Generate shared libs
12
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=utils --name=form`, { stdio: 'inherit' });
13
+ // Remove unnecessary files and files that will be replaced
14
+ tree.delete(`${libRoot}/shared/utils/form/src/index.ts`);
15
+ // Add lib files
16
+ (0, devkit_1.generateFiles)(tree, path.join(__dirname, '/lib-files'), libRoot, {});
17
+ yield (0, devkit_1.formatFiles)(tree);
18
+ });
19
+ }
20
+ exports.runFormUtilsGenerator = runFormUtilsGenerator;
21
+ exports.default = runFormUtilsGenerator;
22
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/form-utils/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAA8D;AAE9D,SAAsB,qBAAqB,CACzC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAE5C,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,0CAA0C,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAExH,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,iCAAiC,CAAC,CAAC;QAEzD,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAErE,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAhBD,sDAgBC;AAED,kBAAe,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './generator';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./generator"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/form-utils/index.ts"],"names":[],"mappings":";;;AAAA,sDAA4B"}
@@ -0,0 +1,2 @@
1
+ export * from './interfaces';
2
+ export * from './types';
@@ -0,0 +1,5 @@
1
+ import { FormValues } from '../types';
2
+
3
+ export interface BaseFormSchema<T> {
4
+ formValues: FormValues<T>;
5
+ }
@@ -0,0 +1 @@
1
+ export type FormValues<T> = Omit<T, 'formValues'>;
@@ -5,3 +5,4 @@ export * from './auth';
5
5
  export * from './storage';
6
6
  export * from './rn-styles';
7
7
  export * from './ui-kitten';
8
+ export * from './form-utils';
@@ -8,4 +8,5 @@ tslib_1.__exportStar(require("./auth"), exports);
8
8
  tslib_1.__exportStar(require("./storage"), exports);
9
9
  tslib_1.__exportStar(require("./rn-styles"), exports);
10
10
  tslib_1.__exportStar(require("./ui-kitten"), exports);
11
+ tslib_1.__exportStar(require("./form-utils"), exports);
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/generators/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,oDAA0B;AAC1B,uDAA6B;AAC7B,iDAAuB;AACvB,oDAA0B;AAC1B,sDAA4B;AAC5B,sDAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/generators/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,oDAA0B;AAC1B,uDAA6B;AAC7B,iDAAuB;AACvB,oDAA0B;AAC1B,sDAA4B;AAC5B,sDAA4B;AAC5B,uDAA6B"}
@@ -12,9 +12,9 @@ function runRNStylesGenerator(tree, options) {
12
12
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
13
  const appRoot = `apps/${options.directory}`;
14
14
  const libRoot = `libs/${options.directory}`;
15
- const libPath = `@${options.name}/${options.directory}`;
15
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
16
16
  // Generate shared libs
17
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/ui/styles`, {
17
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=ui --name=styles --withComponent=false`, {
18
18
  stdio: 'inherit',
19
19
  });
20
20
  const appPackagePath = `${appRoot}/package.json`;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/rn-styles/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAKoB;AACpB,qDAAkD;AAClD,uCAA8D;AAE9D,SAAsB,oBAAoB,CACxC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,mBAAmB,EAAE;YACnE,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,gCAAgC,CAAC,CAAC;QAExD,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;QAElE,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAlCD,oDAkCC;AAED,kBAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/rn-styles/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAKoB;AACpB,qDAAkD;AAClD,uCAAmF;AAEnF,SAAsB,oBAAoB,CACxC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAEpE,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,+DAA+D,EAAE;YACrH,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,gCAAgC,CAAC,CAAC;QAExD,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;QAElE,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAlCD,oDAkCC;AAED,kBAAe,oBAAoB,CAAC"}
@@ -9,9 +9,9 @@ const utils_1 = require("../../utils");
9
9
  function runStorageGenerator(tree, options) {
10
10
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
11
11
  const libRoot = `libs/${options.directory}`;
12
- const libPath = `@${options.name}/${options.directory}`;
12
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
13
13
  // Generate shared libs
14
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/data-access/storage`, { stdio: 'inherit' });
14
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=data-access --name=storage`, { stdio: 'inherit' });
15
15
  // Remove unnecessary files and files that will be replaced
16
16
  tree.delete(`${libRoot}/shared/data-access/storage/src/index.ts`);
17
17
  // Add lib files
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/storage/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAIoB;AACpB,uCAA8D;AAE9D,SAAsB,mBAAmB,CACvC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,6BAA6B,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAErG,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,0CAA0C,CAAC,CAAC;QAElE,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,kCAC1D,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAtBD,kDAsBC;AAED,kBAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/storage/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,6BAA6B;AAC7B,uCAIoB;AACpB,uCAAmF;AAEnF,SAAsB,mBAAmB,CACvC,IAAU,EACV,OAA4C;;QAE5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAEpE,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,mDAAmD,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEjI,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,0CAA0C,CAAC,CAAC;QAElE,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,kCAC1D,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAtBD,kDAsBC;AAED,kBAAe,mBAAmB,CAAC"}
@@ -1,30 +1,16 @@
1
- import { Reducer } from '@reduxjs/toolkit';
1
+ import { Middleware, Reducer } from '@reduxjs/toolkit';
2
2
  import { setupReactotron } from '@ronas-it/react-native-common-modules';
3
3
  import {
4
4
  AppStateFromRootReducer,
5
5
  createStoreInitializer,
6
6
  } from '@ronas-it/rtkq-entity-api';
7
- import { authApi, profileApi } from '<%= formatDirectory() %>/shared/data-access/api';
8
- import {
9
- authListenerMiddleware,
10
- authReducer,
11
- authReducerPath,
12
- } from '<%= formatDirectory() %>/shared/data-access/auth';
13
7
 
14
8
 
15
9
  export type AppState = AppStateFromRootReducer<typeof rootReducer>;
16
10
 
17
- const rootReducer = {
18
- [authApi.reducerPath]: authApi.reducer,
19
- [authReducerPath]: authReducer,
20
- [profileApi.reducerPath]: profileApi.reducer,
21
- };
11
+ const rootReducer = {};
22
12
 
23
- const middlewares = [
24
- authApi.middleware,
25
- authListenerMiddleware.middleware,
26
- profileApi.middleware
27
- ];
13
+ const middlewares: Array<Middleware> = [];
28
14
 
29
15
  const reactotron = setupReactotron('my-app');
30
16
  const enhancers = reactotron ? [reactotron.createEnhancer()] : [];
@@ -1,8 +1,4 @@
1
1
  import { Tree } from '@nx/devkit';
2
- import { BaseGeneratorType } from '../../enums';
3
- export declare function runStoreGenerator(tree: Tree, options: {
4
- name: string;
5
- directory: string;
6
- baseGeneratorType: BaseGeneratorType;
7
- }): Promise<void>;
2
+ import { StoreGeneratorSchema } from './schema';
3
+ export declare function runStoreGenerator(tree: Tree, options: StoreGeneratorSchema): Promise<void>;
8
4
  export default runStoreGenerator;
@@ -12,9 +12,9 @@ function runStoreGenerator(tree, options) {
12
12
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
13
  const appRoot = `apps/${options.directory}`;
14
14
  const libRoot = `libs/${options.directory}`;
15
- const libPath = `@${options.name}/${options.directory}`;
15
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
16
16
  // Generate shared libs
17
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/data-access/store`, { stdio: 'inherit' });
17
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=data-access --name=store`, { stdio: 'inherit' });
18
18
  const appPackagePath = `${appRoot}/package.json`;
19
19
  // Remove unnecessary files and files that will be replaced
20
20
  tree.delete(`${libRoot}/shared/data-access/store/src/index.ts`);
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/store/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAKoB;AACpB,qDAAkD;AAElD,uCAA8D;AAE9D,SAAsB,iBAAiB,CACrC,IAAU,EACV,OAAkF;;QAElF,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,2BAA2B,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEnG,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,wCAAwC,CAAC,CAAC;QAEhE,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,iBAAiB,YAAY,CAAC,EAAE,OAAO,kCACtF,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAE9D,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAhCD,8CAgCC;AAED,kBAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/store/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAKoB;AACpB,qDAAkD;AAClD,uCAAmF;AAGnF,SAAsB,iBAAiB,CACrC,IAAU,EACV,OAA6B;;QAE7B,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAEpE,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,iDAAiD,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE/H,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,wCAAwC,CAAC,CAAC;QAEhE,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,iBAAiB,YAAY,CAAC,EAAE,OAAO,kCACtF,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAE9D,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CAAA;AAhCD,8CAgCC;AAED,kBAAe,iBAAiB,CAAC"}
@@ -8,7 +8,7 @@ export type AppState = AppStateFromRootReducer<typeof rootReducer>;
8
8
 
9
9
  const rootReducer = {};
10
10
 
11
- const middlewares = [] as Array<Middleware>;
11
+ const middlewares: Array<Middleware> = [];
12
12
 
13
13
  const initStore = createStoreInitializer({
14
14
  rootReducer: rootReducer as unknown as Reducer<AppState>,
@@ -0,0 +1,7 @@
1
+ import { BaseGeneratorType } from '../enums/base-generator-type';
2
+
3
+ export interface StoreGeneratorSchema {
4
+ name: string;
5
+ directory: string;
6
+ baseGeneratorType: BaseGeneratorType;
7
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "$schema": "https://json-schema.org/schema",
3
+ "$id": "Store",
4
+ "title": "",
5
+ "type": "object",
6
+ "properties": {
7
+ "name": {
8
+ "type": "string",
9
+ "description": "Name of the app",
10
+ "default": "",
11
+ "$default": {
12
+ "$source": "argv",
13
+ "index": 0
14
+ }
15
+ },
16
+ "directory": {
17
+ "type": "string",
18
+ "description": "Directory of the app (folder inside apps/)",
19
+ "default": "",
20
+ "$default": {
21
+ "$source": "argv",
22
+ "index": 1
23
+ }
24
+ },
25
+ "baseGeneratorType": {
26
+ "type": "string",
27
+ "description": "Base generator type (Expo or Next.js)",
28
+ "default": "",
29
+ "$default": {
30
+ "$source": "argv",
31
+ "index": 2
32
+ }
33
+ }
34
+ },
35
+ "required": []
36
+ }
@@ -12,12 +12,12 @@ function runUIKittenGenerator(tree, options) {
12
12
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
13
  const appRoot = `apps/${options.directory}`;
14
14
  const libRoot = `libs/${options.directory}`;
15
- const libPath = `@${options.name}/${options.directory}`;
15
+ const libPath = `${(0, utils_1.getImportPathPrefix)(tree)}/${options.directory}`;
16
16
  if (!options.confirmation) {
17
17
  return;
18
18
  }
19
19
  // Generate shared libs
20
- (0, child_process_1.execSync)(`npx nx g react-lib ${options.directory}/shared/features/user-theme-provider`, {
20
+ (0, child_process_1.execSync)(`npx nx g react-lib --app=${options.directory} --scope=shared --type=feature --name=user-theme-provider --withComponent=false`, {
21
21
  stdio: 'inherit',
22
22
  });
23
23
  const appPackagePath = `${appRoot}/package.json`;
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/ui-kitten/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAMoB;AACpB,qDAAkD;AAClD,uCAA8D;AAE9D,SAAsB,oBAAoB,CACxC,IAAU,EACV,OAAkE;;QAElE,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAExD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,sBAAsB,OAAO,CAAC,SAAS,sCAAsC,EAAE;YACtF,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,mDAAmD,CAAC,CAAC;QAE3E,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4CAA4C,CAAC,EAAE,GAAG,OAAO,MAAM,kCACnG,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,EAC9B,iBAAiB,EAAE,IAAI,IACvB,CAAC;QAEH,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,4BAA4B;QAC5B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,oCAAoC,CAAC,CAAC;QACrF,MAAM,qBAAqB,GAAG,kBAAkB,GAAG,2EAA2E,CAAC;QAE/H,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,oCAAoC,EAAE,qBAAqB,CAAC,CAAC;QAElF,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;QAElE,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAExB,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;CAAA;AAxDD,oDAwDC;AAED,kBAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../plugin/src/shared/generators/ui-kitten/generator.ts"],"names":[],"mappings":";;;;AAAA,iDAAyC;AACzC,2BAAgC;AAChC,6BAA6B;AAC7B,uCAMoB;AACpB,qDAAkD;AAClD,uCAAmF;AAEnF,SAAsB,oBAAoB,CACxC,IAAU,EACV,OAAkE;;QAElE,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAEpE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAA,wBAAQ,EAAC,4BAA4B,OAAO,CAAC,SAAS,iFAAiF,EAAE;YACvI,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,GAAG,OAAO,eAAe,CAAC;QAEjD,2DAA2D;QAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,mDAAmD,CAAC,CAAC;QAE3E,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,4CAA4C,CAAC,EAAE,GAAG,OAAO,MAAM,kCACnG,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,EAC9B,iBAAiB,EAAE,IAAI,IACvB,CAAC;QAEH,gBAAgB;QAChB,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,kCACzD,OAAO,KACV,UAAU,EAAV,kBAAU;YACV,mBAAmB,EAAnB,2BAAmB,EACnB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,IAC9B,CAAC;QAEH,4BAA4B;QAC5B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,oCAAoC,CAAC,CAAC;QACrF,MAAM,qBAAqB,GAAG,kBAAkB,GAAG,2EAA2E,CAAC;QAE/H,IAAI,CAAC,KAAK,CAAC,GAAG,OAAO,oCAAoC,EAAE,qBAAqB,CAAC,CAAC;QAElF,mBAAmB;QACnB,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;QAElE,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,IAAA,qCAA4B,EAAC,IAAI,EAAE,2BAAY,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAExB,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;CAAA;AAxDD,oDAwDC;AAED,kBAAe,oBAAoB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { Tree } from '@nx/devkit';
1
2
  export declare const askQuestion: (question: string, defaultAnswer?: string) => Promise<string>;
2
3
  export declare enum LibraryType {
3
4
  UI = "ui",
@@ -11,3 +12,4 @@ export declare const searchAliasPath: (input: string) => string;
11
12
  export declare const filterSource: (input: string, source: Array<string>) => Promise<{
12
13
  value: string;
13
14
  }[]>;
15
+ export declare const appendFileContent: (path: string, endContent: string, tree: Tree) => void;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.filterSource = exports.searchAliasPath = exports.searchNxLibsPaths = exports.getNxLibsPaths = exports.LibraryType = exports.askQuestion = void 0;
3
+ exports.appendFileContent = exports.filterSource = exports.searchAliasPath = exports.searchNxLibsPaths = exports.getNxLibsPaths = exports.LibraryType = exports.askQuestion = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const readline = require("readline");
6
6
  const fs = require("fs");
@@ -55,8 +55,16 @@ const searchAliasPath = (input) => {
55
55
  };
56
56
  exports.searchAliasPath = searchAliasPath;
57
57
  const filterSource = (input, source) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
58
- const filteredData = input ? source.filter((pathname) => pathname.toLowerCase().includes(input.toLowerCase())) : source;
58
+ const filteredData = input
59
+ ? source.filter((pathname) => pathname.toLowerCase().includes(input.toLowerCase()))
60
+ : source;
59
61
  return filteredData.map((path) => ({ value: path }));
60
62
  });
61
63
  exports.filterSource = filterSource;
64
+ const appendFileContent = (path, endContent, tree) => {
65
+ const content = tree.read(path, 'utf-8');
66
+ const contentUpdate = (content || '') + endContent;
67
+ tree.write(path, contentUpdate);
68
+ };
69
+ exports.appendFileContent = appendFileContent;
62
70
  //# sourceMappingURL=cli-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/cli-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/cli-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export interface Constraint {
3
+ sourceTag: string;
4
+ onlyDependOnLibsWithTags: Array<string>;
5
+ }
6
+ export declare const getNxRulesEntry: (config: Record<string, any>) => {
7
+ files: Array<string>;
8
+ rules: Record<string, any>;
9
+ };
10
+ export declare const getNxRulesStatus: (config: Record<string, any>) => string;
11
+ export declare const getNxRules: (config: Record<string, any>) => Array<Constraint>;
12
+ export declare const readESLintConfig: (tree: Tree) => {
13
+ config: Record<string, any>;
14
+ path: string;
15
+ };
16
+ export declare const addNxAppTag: (tree: Tree, appDirectory: string) => void;
17
+ export declare const addNxScopeTag: (tree: Tree, scope: string) => void;
18
+ export declare const getImportPathPrefix: (tree: Tree) => string;
19
+ export declare const verifyEsLintConfig: (tree: Tree) => Record<string, any>;
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyEsLintConfig = exports.getImportPathPrefix = exports.addNxScopeTag = exports.addNxAppTag = exports.readESLintConfig = exports.getNxRules = exports.getNxRulesStatus = exports.getNxRulesEntry = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const lodash_1 = require("lodash");
6
+ const defaultEsLintConfigPath = '.eslintrc.json';
7
+ const getNxRulesEntry = (config) => {
8
+ var _a;
9
+ if (!config) {
10
+ throw new Error('ESLint config not found');
11
+ }
12
+ const entryWithRules = (_a = config.overrides) === null || _a === void 0 ? void 0 : _a.find((entry) => !!entry.rules['@nx/enforce-module-boundaries']);
13
+ if (!entryWithRules) {
14
+ throw new Error(`ESLint: can't find '@nx/enforce-module-boundaries' rule`);
15
+ }
16
+ return entryWithRules;
17
+ };
18
+ exports.getNxRulesEntry = getNxRulesEntry;
19
+ const getNxRulesStatus = (config) => {
20
+ return (0, exports.getNxRulesEntry)(config).rules['@nx/enforce-module-boundaries'][0];
21
+ };
22
+ exports.getNxRulesStatus = getNxRulesStatus;
23
+ const getNxRules = (config) => {
24
+ return (0, exports.getNxRulesEntry)(config).rules['@nx/enforce-module-boundaries'][1].depConstraints;
25
+ };
26
+ exports.getNxRules = getNxRules;
27
+ const readESLintConfig = (tree) => {
28
+ var _a;
29
+ let path = defaultEsLintConfigPath;
30
+ const checkConfigExists = (path) => {
31
+ if (!tree.exists(path)) {
32
+ throw new Error(`ESLint config not found: ${path}`);
33
+ }
34
+ };
35
+ checkConfigExists(path);
36
+ let config = (0, devkit_1.readJson)(tree, path);
37
+ if ((_a = config.extends) === null || _a === void 0 ? void 0 : _a.length) {
38
+ path = config.extends[0];
39
+ checkConfigExists(path);
40
+ config = (0, devkit_1.readJson)(tree, config.extends[0]);
41
+ }
42
+ return { config, path };
43
+ };
44
+ exports.readESLintConfig = readESLintConfig;
45
+ const getNpmScope = (tree) => {
46
+ const { name } = tree.exists('package.json')
47
+ ? (0, devkit_1.readJson)(tree, 'package.json')
48
+ : { name: null };
49
+ return (name === null || name === void 0 ? void 0 : name.startsWith('@')) ? name.split('/')[0].substring(1) : undefined;
50
+ };
51
+ const addNxAppTag = (tree, appDirectory) => {
52
+ const { config, path } = (0, exports.readESLintConfig)(tree);
53
+ const constraints = (0, exports.getNxRules)(config);
54
+ const doesTagExist = !!constraints.find((constraint) => constraint.sourceTag === `app:${appDirectory}`);
55
+ if (doesTagExist) {
56
+ return;
57
+ }
58
+ constraints.push({ sourceTag: `app:${appDirectory}`, onlyDependOnLibsWithTags: [`app:${appDirectory}`, 'app:shared'] });
59
+ (0, devkit_1.writeJson)(tree, path, config);
60
+ };
61
+ exports.addNxAppTag = addNxAppTag;
62
+ const addNxScopeTag = (tree, scope) => {
63
+ const { config, path } = (0, exports.readESLintConfig)(tree);
64
+ const constraints = (0, exports.getNxRules)(config);
65
+ const doesTagExist = !!constraints.find((constraint) => constraint.sourceTag === `scope:${scope}`);
66
+ if (doesTagExist) {
67
+ return;
68
+ }
69
+ constraints.push({ sourceTag: `scope:${scope}`, onlyDependOnLibsWithTags: [`scope:${scope}`, 'scope:shared'] });
70
+ (0, devkit_1.writeJson)(tree, path, config);
71
+ };
72
+ exports.addNxScopeTag = addNxScopeTag;
73
+ const getImportPathPrefix = (tree) => {
74
+ const npmScope = getNpmScope(tree);
75
+ return npmScope ? `${npmScope === '@' ? '' : '@'}${npmScope}` : '';
76
+ };
77
+ exports.getImportPathPrefix = getImportPathPrefix;
78
+ const verifyEsLintConfig = (tree) => {
79
+ const { config, path } = (0, exports.readESLintConfig)(tree);
80
+ const importantTags = ['app:shared', 'scope:shared', 'type:app', 'type:data-access', 'type:features', 'type:ui', 'type:utils'];
81
+ if (!config || (0, lodash_1.isEmpty)(config)) {
82
+ throw new Error(`Failed to load ESLint config: ${path}`);
83
+ }
84
+ try {
85
+ const rulesEntry = (0, exports.getNxRulesEntry)(config).rules['@nx/enforce-module-boundaries'];
86
+ const tags = rulesEntry[1].depConstraints.map((rule) => rule.sourceTag);
87
+ const areRulesDisabled = rulesEntry[1].depConstraints.find((rule) => rule.sourceTag === '*' && rule.onlyDependOnLibsWithTags.includes('*'));
88
+ const areRulesBroken = !importantTags.every((tag) => tags.includes(tag));
89
+ if (rulesEntry[0] !== 'error') {
90
+ rulesEntry[0] = 'error';
91
+ }
92
+ if (areRulesDisabled || areRulesBroken) {
93
+ const esLintConfigTemplate = (0, devkit_1.readJson)(tree, 'plugin/src/generators/code-checks/files/.eslintrc.json.template');
94
+ const templateRules = (0, exports.getNxRulesEntry)(esLintConfigTemplate);
95
+ rulesEntry[1] = templateRules.rules['@nx/enforce-module-boundaries'][1];
96
+ (0, devkit_1.writeJson)(tree, path, config);
97
+ }
98
+ // TODO: use custom errors
99
+ }
100
+ catch (_a) {
101
+ devkit_1.output.warn({ title: devkit_1.output.bold('ESLint config has no @nx/enforce-module-boundaries rule. Updating rules...') });
102
+ const esLintConfigTemplate = (0, devkit_1.readJson)(tree, 'plugin/src/generators/code-checks/files/.eslintrc.json.template');
103
+ const templateRules = (0, exports.getNxRulesEntry)(esLintConfigTemplate);
104
+ config.overrides.push(templateRules);
105
+ (0, devkit_1.writeJson)(tree, path, config);
106
+ }
107
+ return config;
108
+ };
109
+ exports.verifyEsLintConfig = verifyEsLintConfig;
110
+ //# sourceMappingURL=config-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/config-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const constants: {
2
+ sharedValue: string;
3
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.constants = void 0;
4
+ exports.constants = {
5
+ sharedValue: 'shared'
6
+ };
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../plugin/src/shared/utils/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG;IACvB,WAAW,EAAE,QAAQ;CACtB,CAAC"}
@@ -1,3 +1,6 @@
1
1
  export * from './format-utils';
2
2
  export * from './cli-utils';
3
3
  export * from './dynamic-import';
4
+ export * from './config-utils';
5
+ export * from './ts-utils';
6
+ export * from './constants';