@nrwl/react 14.4.1 → 14.5.0-beta.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 (51) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/generators.json +28 -0
  3. package/index.d.ts +2 -0
  4. package/index.js +5 -1
  5. package/index.js.map +1 -1
  6. package/package.json +10 -10
  7. package/plugins/component-testing/index.d.ts +29 -0
  8. package/plugins/component-testing/index.js +167 -0
  9. package/plugins/component-testing/index.js.map +1 -0
  10. package/src/generators/application/lib/set-defaults.js +1 -1
  11. package/src/generators/application/lib/set-defaults.js.map +1 -1
  12. package/src/generators/application/schema.d.ts +1 -0
  13. package/src/generators/application/schema.json +5 -0
  14. package/src/generators/component/component.d.ts +1 -1
  15. package/src/generators/component/component.js +4 -4
  16. package/src/generators/component/component.js.map +1 -1
  17. package/src/generators/component-cypress-spec/component-cypress-spec.d.ts +1 -1
  18. package/src/generators/component-cypress-spec/component-cypress-spec.js +10 -4
  19. package/src/generators/component-cypress-spec/component-cypress-spec.js.map +1 -1
  20. package/src/generators/component-cypress-spec/files/{__componentName__.spec.__fileExt__ → __componentName__.__fileExt__} +0 -0
  21. package/src/generators/component-story/component-story.d.ts +0 -1
  22. package/src/generators/component-story/component-story.js +3 -40
  23. package/src/generators/component-story/component-story.js.map +1 -1
  24. package/src/generators/component-story/schema.json +2 -1
  25. package/src/generators/component-test/component-test.d.ts +4 -0
  26. package/src/generators/component-test/component-test.js +66 -0
  27. package/src/generators/component-test/component-test.js.map +1 -0
  28. package/src/generators/component-test/files/__fileName__.cy__ext__ +22 -0
  29. package/src/generators/component-test/schema.d.ts +4 -0
  30. package/src/generators/component-test/schema.js +3 -0
  31. package/src/generators/component-test/schema.js.map +1 -0
  32. package/src/generators/component-test/schema.json +30 -0
  33. package/src/generators/cypress-component-configuration/cypress-component-configuration.d.ts +9 -0
  34. package/src/generators/cypress-component-configuration/cypress-component-configuration.js +108 -0
  35. package/src/generators/cypress-component-configuration/cypress-component-configuration.js.map +1 -0
  36. package/src/generators/cypress-component-configuration/files/cypress.config.ts__tpl__ +6 -0
  37. package/src/generators/cypress-component-configuration/schema.d.ts +5 -0
  38. package/src/generators/cypress-component-configuration/schema.js +3 -0
  39. package/src/generators/cypress-component-configuration/schema.js.map +1 -0
  40. package/src/generators/cypress-component-configuration/schema.json +39 -0
  41. package/src/generators/library/schema.d.ts +1 -1
  42. package/src/generators/remote/remote.js +1 -1
  43. package/src/generators/remote/remote.js.map +1 -1
  44. package/src/generators/stories/schema.json +5 -4
  45. package/src/generators/storybook-configuration/schema.json +5 -2
  46. package/src/module-federation/with-module-federation.js +1 -1
  47. package/src/module-federation/with-module-federation.js.map +1 -1
  48. package/src/utils/component-props.d.ts +15 -0
  49. package/src/utils/component-props.js +54 -0
  50. package/src/utils/component-props.js.map +1 -0
  51. package/.eslintrc.json +0 -36
package/CHANGELOG.md CHANGED
@@ -3,6 +3,6 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [14.4.1](https://github.com/nrwl/nx/compare/14.4.0...14.4.1) (2022-07-04)
6
+ # [14.5.0-beta.1](https://github.com/nrwl/nx/compare/14.4.2...14.5.0-beta.1) (2022-07-14)
7
7
 
8
8
  **Note:** Version bump only for package @nrwl/react
package/generators.json CHANGED
@@ -74,6 +74,20 @@
74
74
  "schema": "./src/generators/hook/schema.json",
75
75
  "description": "Create a hook.",
76
76
  "aliases": ["h"]
77
+ },
78
+
79
+ "cypress-component-configuration": {
80
+ "factory": "./src/generators/cypress-component-configuration/cypress-component-configuration#cypressComponentConfigGenerator",
81
+ "schema": "./src/generators/cypress-component-configuration/schema.json",
82
+ "description": "Setup Cypress component testing for a React project",
83
+ "hidden": false
84
+ },
85
+
86
+ "component-test": {
87
+ "factory": "./src/generators/component-test/component-test#componentTestGenerator",
88
+ "schema": "./src/generators/component-test/schema.json",
89
+ "description": "Generate a Cypress component test for a React component",
90
+ "hidden": false
77
91
  }
78
92
  },
79
93
  "generators": {
@@ -162,6 +176,20 @@
162
176
  "schema": "./src/generators/remote/schema.json",
163
177
  "x-type": "application",
164
178
  "description": "Generate a remote react application"
179
+ },
180
+
181
+ "cypress-component-configuration": {
182
+ "factory": "./src/generators/cypress-component-configuration/cypress-component-configuration#cypressComponentConfigGenerator",
183
+ "schema": "./src/generators/cypress-component-configuration/schema.json",
184
+ "description": "Setup Cypress component testing for a React project",
185
+ "hidden": false
186
+ },
187
+
188
+ "component-test": {
189
+ "factory": "./src/generators/component-test/component-test#componentTestGenerator",
190
+ "schema": "./src/generators/component-test/schema.json",
191
+ "description": "Generate a Cypress component test for a React component",
192
+ "hidden": false
165
193
  }
166
194
  }
167
195
  }
package/index.d.ts CHANGED
@@ -13,4 +13,6 @@ export { reduxGenerator } from './src/generators/redux/redux';
13
13
  export { storiesGenerator } from './src/generators/stories/stories';
14
14
  export { storybookConfigurationGenerator } from './src/generators/storybook-configuration/configuration';
15
15
  export { hostGenerator } from './src/generators/host/host';
16
+ export { cypressComponentConfigGenerator } from './src/generators/cypress-component-configuration/cypress-component-configuration';
17
+ export { componentTestGenerator } from './src/generators/component-test/component-test';
16
18
  export type { SupportedStyles } from './typings/style';
package/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hostGenerator = exports.storybookConfigurationGenerator = exports.storiesGenerator = exports.reduxGenerator = exports.reactInitGenerator = exports.libraryGenerator = exports.componentStoryGenerator = exports.componentCypressGenerator = exports.hookGenerator = exports.componentGenerator = exports.applicationGenerator = exports.reactVersion = exports.reactDomVersion = exports.assertValidStyle = exports.CSS_IN_JS_DEPENDENCIES = exports.createReactEslintJson = exports.extraEslintDependencies = void 0;
3
+ exports.componentTestGenerator = exports.cypressComponentConfigGenerator = exports.hostGenerator = exports.storybookConfigurationGenerator = exports.storiesGenerator = exports.reduxGenerator = exports.reactInitGenerator = exports.libraryGenerator = exports.componentStoryGenerator = exports.componentCypressGenerator = exports.hookGenerator = exports.componentGenerator = exports.applicationGenerator = exports.reactVersion = exports.reactDomVersion = exports.assertValidStyle = exports.CSS_IN_JS_DEPENDENCIES = exports.createReactEslintJson = exports.extraEslintDependencies = void 0;
4
4
  var lint_1 = require("./src/utils/lint");
5
5
  Object.defineProperty(exports, "extraEslintDependencies", { enumerable: true, get: function () { return lint_1.extraEslintDependencies; } });
6
6
  Object.defineProperty(exports, "createReactEslintJson", { enumerable: true, get: function () { return lint_1.createReactEslintJson; } });
@@ -33,4 +33,8 @@ var configuration_1 = require("./src/generators/storybook-configuration/configur
33
33
  Object.defineProperty(exports, "storybookConfigurationGenerator", { enumerable: true, get: function () { return configuration_1.storybookConfigurationGenerator; } });
34
34
  var host_1 = require("./src/generators/host/host");
35
35
  Object.defineProperty(exports, "hostGenerator", { enumerable: true, get: function () { return host_1.hostGenerator; } });
36
+ var cypress_component_configuration_1 = require("./src/generators/cypress-component-configuration/cypress-component-configuration");
37
+ Object.defineProperty(exports, "cypressComponentConfigGenerator", { enumerable: true, get: function () { return cypress_component_configuration_1.cypressComponentConfigGenerator; } });
38
+ var component_test_1 = require("./src/generators/component-test/component-test");
39
+ Object.defineProperty(exports, "componentTestGenerator", { enumerable: true, get: function () { return component_test_1.componentTestGenerator; } });
36
40
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/react/index.ts"],"names":[],"mappings":";;;AAAA,yCAG0B;AAFxB,+GAAA,uBAAuB,OAAA;AACvB,6GAAA,qBAAqB,OAAA;AAEvB,6CAA4D;AAAnD,gHAAA,sBAAsB,OAAA;AAC/B,mDAAyD;AAAhD,6GAAA,gBAAgB,OAAA;AACzB,iDAAqE;AAA5D,2GAAA,eAAe,OAAA;AAAE,wGAAA,YAAY,OAAA;AACtC,wEAAgF;AAAvE,mHAAA,oBAAoB,OAAA;AAC7B,kEAA0E;AAAjE,+GAAA,kBAAkB,OAAA;AAC3B,mDAA2D;AAAlD,qGAAA,aAAa,OAAA;AACtB,yGAA2G;AAAlG,mIAAA,yBAAyB,OAAA;AAClC,oFAA2F;AAAlF,0HAAA,uBAAuB,OAAA;AAChC,4DAAoE;AAA3D,2GAAA,gBAAgB,OAAA;AACzB,mDAAgE;AAAvD,0GAAA,kBAAkB,OAAA;AAC3B,sDAA8D;AAArD,uGAAA,cAAc,OAAA;AACvB,4DAAoE;AAA3D,2GAAA,gBAAgB,OAAA;AACzB,wFAAyG;AAAhG,gIAAA,+BAA+B,OAAA;AACxC,mDAA2D;AAAlD,qGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/react/index.ts"],"names":[],"mappings":";;;AAAA,yCAG0B;AAFxB,+GAAA,uBAAuB,OAAA;AACvB,6GAAA,qBAAqB,OAAA;AAEvB,6CAA4D;AAAnD,gHAAA,sBAAsB,OAAA;AAC/B,mDAAyD;AAAhD,6GAAA,gBAAgB,OAAA;AACzB,iDAAqE;AAA5D,2GAAA,eAAe,OAAA;AAAE,wGAAA,YAAY,OAAA;AACtC,wEAAgF;AAAvE,mHAAA,oBAAoB,OAAA;AAC7B,kEAA0E;AAAjE,+GAAA,kBAAkB,OAAA;AAC3B,mDAA2D;AAAlD,qGAAA,aAAa,OAAA;AACtB,yGAA2G;AAAlG,mIAAA,yBAAyB,OAAA;AAClC,oFAA2F;AAAlF,0HAAA,uBAAuB,OAAA;AAChC,4DAAoE;AAA3D,2GAAA,gBAAgB,OAAA;AACzB,mDAAgE;AAAvD,0GAAA,kBAAkB,OAAA;AAC3B,sDAA8D;AAArD,uGAAA,cAAc,OAAA;AACvB,4DAAoE;AAA3D,2GAAA,gBAAgB,OAAA;AACzB,wFAAyG;AAAhG,gIAAA,+BAA+B,OAAA;AACxC,mDAA2D;AAAlD,qGAAA,aAAa,OAAA;AACtB,oIAAmI;AAA1H,kJAAA,+BAA+B,OAAA;AACxC,iFAAwF;AAA/E,wHAAA,sBAAsB,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nrwl/react",
3
- "version": "14.4.1",
3
+ "version": "14.5.0-beta.1",
4
4
  "description": "The React plugin contains executors and generators for managing React applications and libraries within an Nx workspace. It provides:\n\n\n- Integration with libraries such as Jest, Cypress, and Storybook.\n\n- Generators for applications, libraries, components, hooks, and more.\n\n- Library build support for publishing packages to npm or other registries.\n\n- Utilities for automatic workspace refactoring.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,14 +32,14 @@
32
32
  "dependencies": {
33
33
  "@babel/core": "^7.15.0",
34
34
  "@babel/preset-react": "^7.14.5",
35
- "@nrwl/cypress": "14.4.1",
36
- "@nrwl/devkit": "14.4.1",
37
- "@nrwl/jest": "14.4.1",
38
- "@nrwl/js": "14.4.1",
39
- "@nrwl/linter": "14.4.1",
40
- "@nrwl/storybook": "14.4.1",
41
- "@nrwl/web": "14.4.1",
42
- "@nrwl/workspace": "14.4.1",
35
+ "@nrwl/cypress": "14.5.0-beta.1",
36
+ "@nrwl/devkit": "14.5.0-beta.1",
37
+ "@nrwl/jest": "14.5.0-beta.1",
38
+ "@nrwl/js": "14.5.0-beta.1",
39
+ "@nrwl/linter": "14.5.0-beta.1",
40
+ "@nrwl/storybook": "14.5.0-beta.1",
41
+ "@nrwl/web": "14.5.0-beta.1",
42
+ "@nrwl/workspace": "14.5.0-beta.1",
43
43
  "@pmmmwh/react-refresh-webpack-plugin": "^0.5.1",
44
44
  "@storybook/node-logger": "6.1.20",
45
45
  "@svgr/webpack": "^6.1.2",
@@ -54,5 +54,5 @@
54
54
  "webpack": "^5.58.1",
55
55
  "webpack-merge": "^5.8.0"
56
56
  },
57
- "gitHead": "5a20d365721a2471dc271056d3d13a88f2995215"
57
+ "gitHead": "63b74d2a5655c0c09131dfa24a0a024ca7360fca"
58
58
  }
@@ -0,0 +1,29 @@
1
+ import type { Configuration } from 'webpack';
2
+ /**
3
+ * React nx preset for Cypress Component Testing
4
+ *
5
+ * This preset contains the base configuration
6
+ * for your component tests that nx recommends.
7
+ * including a devServer that supports nx workspaces.
8
+ * you can easily extend this within your cypress config via spreading the preset
9
+ * @example
10
+ * export default defineConfig({
11
+ * component: {
12
+ * ...nxComponentTestingPreset(__dirname)
13
+ * // add your own config here
14
+ * }
15
+ * })
16
+ *
17
+ * @param pathToConfig will be used to construct the output paths for videos and screenshots
18
+ */
19
+ export declare function nxComponentTestingPreset(pathToConfig: string): {
20
+ devServer: {
21
+ readonly framework: "react";
22
+ readonly bundler: "webpack";
23
+ readonly webpackConfig: Configuration;
24
+ };
25
+ videosFolder: string;
26
+ screenshotsFolder: string;
27
+ video: boolean;
28
+ chromeWebSecurity: boolean;
29
+ };
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.nxComponentTestingPreset = void 0;
4
+ const cypress_preset_1 = require("@nrwl/cypress/plugins/cypress-preset");
5
+ const web_config_1 = require("@nrwl/web/src/utils/web.config");
6
+ const tsconfig_paths_webpack_plugin_1 = require("tsconfig-paths-webpack-plugin");
7
+ /**
8
+ * React nx preset for Cypress Component Testing
9
+ *
10
+ * This preset contains the base configuration
11
+ * for your component tests that nx recommends.
12
+ * including a devServer that supports nx workspaces.
13
+ * you can easily extend this within your cypress config via spreading the preset
14
+ * @example
15
+ * export default defineConfig({
16
+ * component: {
17
+ * ...nxComponentTestingPreset(__dirname)
18
+ * // add your own config here
19
+ * }
20
+ * })
21
+ *
22
+ * @param pathToConfig will be used to construct the output paths for videos and screenshots
23
+ */
24
+ function nxComponentTestingPreset(pathToConfig) {
25
+ return Object.assign(Object.assign({}, (0, cypress_preset_1.nxBaseCypressPreset)(pathToConfig)), { devServer: {
26
+ // cypress uses string union type,
27
+ // need to use const to prevent typing to string
28
+ framework: 'react',
29
+ bundler: 'webpack',
30
+ webpackConfig: buildBaseWebpackConfig({
31
+ tsConfigPath: 'tsconfig.cy.json',
32
+ compiler: 'babel',
33
+ }),
34
+ } });
35
+ }
36
+ exports.nxComponentTestingPreset = nxComponentTestingPreset;
37
+ // TODO(caleb): use the webpack utils to build the config
38
+ // can't seem to get css modules to play nice when using it 🤔
39
+ function buildBaseWebpackConfig({ tsConfigPath = 'tsconfig.cy.json', compiler = 'babel', }) {
40
+ const extensions = ['.ts', '.tsx', '.mjs', '.js', '.jsx'];
41
+ const config = {
42
+ target: 'web',
43
+ resolve: {
44
+ extensions,
45
+ plugins: [
46
+ new tsconfig_paths_webpack_plugin_1.TsconfigPathsPlugin({
47
+ configFile: tsConfigPath,
48
+ extensions,
49
+ }),
50
+ ],
51
+ },
52
+ mode: 'development',
53
+ devtool: false,
54
+ output: {
55
+ publicPath: '/',
56
+ chunkFilename: '[name].bundle.js',
57
+ },
58
+ module: {
59
+ rules: [
60
+ {
61
+ test: /\.(bmp|png|jpe?g|gif|webp|avif)$/,
62
+ type: 'asset',
63
+ parser: {
64
+ dataUrlCondition: {
65
+ maxSize: 10000, // 10 kB
66
+ },
67
+ },
68
+ },
69
+ CSS_MODULES_LOADER,
70
+ ],
71
+ },
72
+ };
73
+ if (compiler === 'swc') {
74
+ config.module.rules.push({
75
+ test: /\.([jt])sx?$/,
76
+ loader: require.resolve('swc-loader'),
77
+ exclude: /node_modules/,
78
+ options: {
79
+ jsc: {
80
+ parser: {
81
+ syntax: 'typescript',
82
+ decorators: true,
83
+ tsx: true,
84
+ },
85
+ transform: {
86
+ react: {
87
+ runtime: 'automatic',
88
+ },
89
+ },
90
+ loose: true,
91
+ },
92
+ },
93
+ });
94
+ }
95
+ if (compiler === 'babel') {
96
+ config.module.rules.push({
97
+ test: /\.(js|jsx|mjs|ts|tsx)$/,
98
+ loader: require.resolve('babel-loader'),
99
+ options: {
100
+ presets: [`@nrwl/react/babel`],
101
+ rootMode: 'upward',
102
+ babelrc: true,
103
+ },
104
+ });
105
+ }
106
+ return config;
107
+ }
108
+ const loaderModulesOptions = {
109
+ modules: {
110
+ mode: 'local',
111
+ getLocalIdent: web_config_1.getCSSModuleLocalIdent,
112
+ },
113
+ importLoaders: 1,
114
+ };
115
+ const commonLoaders = [
116
+ {
117
+ loader: require.resolve('style-loader'),
118
+ },
119
+ {
120
+ loader: require.resolve('css-loader'),
121
+ options: loaderModulesOptions,
122
+ },
123
+ ];
124
+ const CSS_MODULES_LOADER = {
125
+ test: /\.css$|\.scss$|\.sass$|\.less$|\.styl$/,
126
+ oneOf: [
127
+ {
128
+ test: /\.module\.css$/,
129
+ use: commonLoaders,
130
+ },
131
+ {
132
+ test: /\.module\.(scss|sass)$/,
133
+ use: [
134
+ ...commonLoaders,
135
+ {
136
+ loader: require.resolve('sass-loader'),
137
+ options: {
138
+ implementation: require('sass'),
139
+ sassOptions: {
140
+ fiber: false,
141
+ precision: 8,
142
+ },
143
+ },
144
+ },
145
+ ],
146
+ },
147
+ {
148
+ test: /\.module\.less$/,
149
+ use: [
150
+ ...commonLoaders,
151
+ {
152
+ loader: require.resolve('less-loader'),
153
+ },
154
+ ],
155
+ },
156
+ {
157
+ test: /\.module\.styl$/,
158
+ use: [
159
+ ...commonLoaders,
160
+ {
161
+ loader: require.resolve('stylus-loader'),
162
+ },
163
+ ],
164
+ },
165
+ ],
166
+ };
167
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/react/plugins/component-testing/index.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ function setDefaults(host, options) {
7
7
  return;
8
8
  }
9
9
  const workspace = (0, devkit_1.readWorkspaceConfiguration)(host);
10
- if (!workspace.defaultProject) {
10
+ if (!options.skipDefaultProject && !workspace.defaultProject) {
11
11
  workspace.defaultProject = options.projectName;
12
12
  }
13
13
  workspace.generators = workspace.generators || {};
@@ -1 +1 @@
1
- {"version":3,"file":"set-defaults.js","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/set-defaults.ts"],"names":[],"mappings":";;;AAAA,yCAIsB;AAGtB,SAAgB,WAAW,CAAC,IAAU,EAAE,OAAyB;IAC/D,IAAI,OAAO,CAAC,iBAAiB,EAAE;QAC7B,OAAO;KACR;IAED,MAAM,SAAS,GAAG,IAAA,mCAA0B,EAAC,IAAI,CAAC,CAAC;IAEnD,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;QAC7B,SAAS,CAAC,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;KAChD;IAED,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,EAAE,CAAC;IAClD,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAE5C,MAAM,IAAI,qBAAQ,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAE,CAAC;IAExD,SAAS,CAAC,UAAU,mCACf,SAAS,CAAC,UAAU,KACvB,aAAa,kCACR,IAAI,KACP,WAAW,kBACT,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,MAAM,EAAE,OAAO,CAAC,MAAM,IACnB,IAAI,CAAC,WAAW,GAErB,SAAS,kBACP,KAAK,EAAE,OAAO,CAAC,KAAK,IACjB,IAAI,CAAC,SAAS,GAEnB,OAAO,kBACL,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,MAAM,EAAE,OAAO,CAAC,MAAM,IACnB,IAAI,CAAC,OAAO,OAGpB,CAAC;IAEF,IAAA,qCAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC;AAvCD,kCAuCC"}
1
+ {"version":3,"file":"set-defaults.js","sourceRoot":"","sources":["../../../../../../../packages/react/src/generators/application/lib/set-defaults.ts"],"names":[],"mappings":";;;AAAA,yCAIsB;AAGtB,SAAgB,WAAW,CAAC,IAAU,EAAE,OAAyB;IAC/D,IAAI,OAAO,CAAC,iBAAiB,EAAE;QAC7B,OAAO;KACR;IAED,MAAM,SAAS,GAAG,IAAA,mCAA0B,EAAC,IAAI,CAAC,CAAC;IAEnD,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;QAC5D,SAAS,CAAC,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;KAChD;IAED,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,EAAE,CAAC;IAClD,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC;QACjC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAE5C,MAAM,IAAI,qBAAQ,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAE,CAAC;IAExD,SAAS,CAAC,UAAU,mCACf,SAAS,CAAC,UAAU,KACvB,aAAa,kCACR,IAAI,KACP,WAAW,kBACT,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,MAAM,EAAE,OAAO,CAAC,MAAM,IACnB,IAAI,CAAC,WAAW,GAErB,SAAS,kBACP,KAAK,EAAE,OAAO,CAAC,KAAK,IACjB,IAAI,CAAC,SAAS,GAEnB,OAAO,kBACL,KAAK,EAAE,OAAO,CAAC,KAAK,EACpB,MAAM,EAAE,OAAO,CAAC,MAAM,IACnB,IAAI,CAAC,OAAO,OAGpB,CAAC;IAEF,IAAA,qCAA4B,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAChD,CAAC;AAvCD,kCAuCC"}
@@ -26,6 +26,7 @@ export interface Schema {
26
26
  compiler?: 'babel' | 'swc';
27
27
  remotes?: string[];
28
28
  devServerPort?: number;
29
+ skipDefaultProject?: boolean;
29
30
  }
30
31
 
31
32
  export interface NormalizedSchema extends Schema {
@@ -159,6 +159,11 @@
159
159
  "description": "The compiler to use.",
160
160
  "enum": ["babel", "swc"],
161
161
  "default": "babel"
162
+ },
163
+ "skipDefaultProject": {
164
+ "description": "Skip setting the project as the default project. When `false` (the default), the project is set as the default project only if there is no default project already set.",
165
+ "type": "boolean",
166
+ "default": false
162
167
  }
163
168
  },
164
169
  "required": []
@@ -1,5 +1,5 @@
1
- import { Schema } from './schema';
2
1
  import { GeneratorCallback, Tree } from '@nrwl/devkit';
2
+ import { Schema } from './schema';
3
3
  export declare function componentGenerator(host: Tree, schema: Schema): Promise<GeneratorCallback>;
4
4
  export default componentGenerator;
5
5
  export declare const componentSchematic: (generatorOptions: Schema) => (tree: any, context: any) => Promise<any>;
@@ -2,13 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.componentSchematic = exports.componentGenerator = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const ts = require("typescript");
6
- const versions_1 = require("../../utils/versions");
7
- const assertion_1 = require("../../utils/assertion");
8
- const add_styled_dependencies_1 = require("../../rules/add-styled-dependencies");
9
5
  const devkit_1 = require("@nrwl/devkit");
10
6
  const run_tasks_in_serial_1 = require("@nrwl/workspace/src/utilities/run-tasks-in-serial");
7
+ const ts = require("typescript");
8
+ const add_styled_dependencies_1 = require("../../rules/add-styled-dependencies");
9
+ const assertion_1 = require("../../utils/assertion");
11
10
  const ast_utils_1 = require("../../utils/ast-utils");
11
+ const versions_1 = require("../../utils/versions");
12
12
  function componentGenerator(host, schema) {
13
13
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
14
14
  const options = yield normalizeOptions(host, schema);
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component/component.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import * as ts from 'typescript';
2
1
  import { Tree } from '@nrwl/devkit';
2
+ import * as ts from 'typescript';
3
3
  export interface CreateComponentSpecFileSchema {
4
4
  project: string;
5
5
  componentPath: string;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.componentCypressSchematic = exports.createComponentSpecFile = exports.getArgsDefaultValue = exports.componentCypressGenerator = void 0;
4
- const ast_utils_1 = require("../../utils/ast-utils");
5
- const ts = require("typescript");
6
4
  const devkit_1 = require("@nrwl/devkit");
5
+ const path_1 = require("path");
6
+ const ts = require("typescript");
7
+ const ast_utils_1 = require("../../utils/ast-utils");
7
8
  function componentCypressGenerator(host, schema) {
8
9
  createComponentSpecFile(host, schema);
9
10
  }
@@ -30,7 +31,10 @@ exports.getArgsDefaultValue = getArgsDefaultValue;
30
31
  function createComponentSpecFile(tree, { project, componentPath, js, cypressProject }) {
31
32
  const e2eProjectName = cypressProject || `${project}-e2e`;
32
33
  const projects = (0, devkit_1.getProjects)(tree);
33
- const e2eLibIntegrationFolderPath = `${projects.get(e2eProjectName).sourceRoot}/integration`;
34
+ const e2eProject = projects.get(e2eProjectName);
35
+ // cypress >= v10 will have a cypress.config.ts < v10 will have a cypress.json
36
+ const isCypressV10 = tree.exists((0, path_1.join)(e2eProject.root, 'cypress.config.ts'));
37
+ const e2eLibIntegrationFolderPath = (0, path_1.join)(e2eProject.sourceRoot, isCypressV10 ? 'e2e' : 'integration');
34
38
  const proj = projects.get(project);
35
39
  const componentFilePath = (0, devkit_1.joinPathFragments)(proj.sourceRoot, componentPath);
36
40
  const componentName = componentFilePath
@@ -71,6 +75,8 @@ function findPropsAndGenerateFileForCypress(tree, sourceFile, cmpDeclaration, e2
71
75
  };
72
76
  });
73
77
  }
78
+ const isCypressV10 = (0, path_1.basename)(e2eLibIntegrationFolderPath) === 'e2e';
79
+ const cyFilePrefix = isCypressV10 ? 'cy' : 'spec';
74
80
  (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, './files'), `${e2eLibIntegrationFolderPath}/${fromNodeArray
75
81
  ? componentName + '--' + cmpDeclaration.name.text
76
82
  : componentName}`, {
@@ -78,7 +84,7 @@ function findPropsAndGenerateFileForCypress(tree, sourceFile, cmpDeclaration, e2
78
84
  componentName,
79
85
  componentSelector: cmpDeclaration.name.text,
80
86
  props,
81
- fileExt: js ? 'js' : 'ts',
87
+ fileExt: js ? `${cyFilePrefix}.js` : `${cyFilePrefix}.ts`,
82
88
  });
83
89
  }
84
90
  exports.default = componentCypressGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"component-cypress-spec.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-cypress-spec/component-cypress-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-cypress-spec.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-cypress-spec/component-cypress-spec.ts"],"names":[],"mappings":";;;AAAA,yCAMsB;AACtB,+BAAsC;AACtC,iCAAiC;AACjC,qDAI+B;AAS/B,SAAgB,yBAAyB,CACvC,IAAU,EACV,MAAqC;IAErC,uBAAuB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACxC,CAAC;AALD,8DAKC;AAED,+DAA+D;AAC/D,SAAgB,mBAAmB,CAAC,QAAuB;IACzD,MAAM,iBAAiB,GAAwB;QAC7C,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,EAAE;QACjC,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAChC,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,KAAK;KACtC,CAAC;IAEF,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,OAAO,aAAa,KAAK,SAAS,EAAE;QACtC,OAAO,EAAE,CAAC;KACX;SAAM,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QAC5C,OAAO,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;KAC1C;SAAM;QACL,OAAO,aAAa,CAAC;KACtB;AACH,CAAC;AAfD,kDAeC;AAED,SAAgB,uBAAuB,CACrC,IAAU,EACV,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,cAAc,EAAiC;IAE7E,MAAM,cAAc,GAAG,cAAc,IAAI,GAAG,OAAO,MAAM,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChD,8EAA8E;IAC9E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAA,WAAI,EAAC,UAAU,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAE7E,MAAM,2BAA2B,GAAG,IAAA,WAAI,EACtC,UAAU,CAAC,UAAU,EACrB,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CACrC,CAAC;IAEF,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,iBAAiB,GAAG,IAAA,0BAAiB,EAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,iBAAiB;SACpC,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC7C,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEtB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IACvD,IAAI,QAAQ,KAAK,IAAI,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,kBAAkB,iBAAiB,EAAE,CAAC,CAAC;KACxD;IAED,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,iBAAiB,EACjB,QAAQ,EACR,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IAEF,MAAM,cAAc,GAAG,IAAA,4BAAgB,EAAC,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,cAAc,GAAG,IAAA,wCAA4B,EAAC,UAAU,CAAC,CAAC;QAChE,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,EAAE;YAC1B,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;gBACrC,kCAAkC,CAChC,IAAI,EACJ,UAAU,EACV,WAAW,EACX,2BAA2B,EAC3B,aAAa,EACb,OAAO,EACP,EAAE,EACF,IAAI,CACL,CAAC;YACJ,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,IAAI,KAAK,CACb,8CAA8C,iBAAiB,EAAE,CAClE,CAAC;SACH;KACF;SAAM;QACL,kCAAkC,CAChC,IAAI,EACJ,UAAU,EACV,cAAc,EACd,2BAA2B,EAC3B,aAAa,EACb,OAAO,EACP,EAAE,CACH,CAAC;KACH;AACH,CAAC;AAnED,0DAmEC;AAED,SAAS,kCAAkC,CACzC,IAAU,EACV,UAAyB,EACzB,cAAuB,EACvB,2BAAmC,EACnC,aAAqB,EACrB,OAAe,EACf,EAAW,EACX,aAAuB;IAEvB,MAAM,cAAc,GAAG,IAAA,sCAA0B,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAE9E,IAAI,KAAK,GAGH,EAAE,CAAC;IAET,IAAI,cAAc,EAAE;QAClB,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAA4B,EAAE,EAAE;YAClE,OAAO;gBACL,IAAI,EAAG,MAAM,CAAC,IAAsB,CAAC,IAAI;gBACzC,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aACpD,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,MAAM,YAAY,GAAG,IAAA,eAAQ,EAAC,2BAA2B,CAAC,KAAK,KAAK,CAAC;IACrE,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IAElD,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,SAAS,CAAC,EACvC,GAAG,2BAA2B,IAC5B,aAAa;QACX,CAAC,CAAC,aAAa,GAAG,IAAI,GAAI,cAAsB,CAAC,IAAI,CAAC,IAAI;QAC1D,CAAC,CAAC,aACN,EAAE,EACF;QACE,WAAW,EAAE,OAAO;QACpB,aAAa;QACb,iBAAiB,EAAG,cAAsB,CAAC,IAAI,CAAC,IAAI;QACpD,KAAK;QACL,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK;KAC1D,CACF,CAAC;AACJ,CAAC;AAED,kBAAe,yBAAyB,CAAC;AAC5B,QAAA,yBAAyB,GAAG,IAAA,2BAAkB,EACzD,yBAAyB,CAC1B,CAAC"}
@@ -4,7 +4,6 @@ export interface CreateComponentStoriesFileSchema {
4
4
  project: string;
5
5
  componentPath: string;
6
6
  }
7
- export declare function getArgsDefaultValue(property: ts.SyntaxKind): string;
8
7
  export declare function createComponentStoriesFile(host: Tree, { project, componentPath }: CreateComponentStoriesFileSchema): void;
9
8
  export declare function findPropsAndGenerateFile(host: Tree, sourceFile: ts.SourceFile, cmpDeclaration: ts.Node, componentDirectory: string, name: string, isPlainJs: boolean, fileExt: string, fromNodeArray?: boolean): void;
10
9
  export declare function componentStoryGenerator(host: Tree, schema: CreateComponentStoriesFileSchema): Promise<void>;
@@ -1,26 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.componentStorySchematic = exports.componentStoryGenerator = exports.findPropsAndGenerateFile = exports.createComponentStoriesFile = exports.getArgsDefaultValue = void 0;
3
+ exports.componentStorySchematic = exports.componentStoryGenerator = exports.findPropsAndGenerateFile = exports.createComponentStoriesFile = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const devkit_1 = require("@nrwl/devkit");
6
6
  const ts = require("typescript");
7
7
  const ast_utils_1 = require("../../utils/ast-utils");
8
- // TODO: candidate to refactor with the angular component story
9
- function getArgsDefaultValue(property) {
10
- const typeNameToDefault = {
11
- [ts.SyntaxKind.StringKeyword]: "''",
12
- [ts.SyntaxKind.NumberKeyword]: 0,
13
- [ts.SyntaxKind.BooleanKeyword]: false,
14
- };
15
- const resolvedValue = typeNameToDefault[property];
16
- if (typeof resolvedValue === undefined) {
17
- return "''";
18
- }
19
- else {
20
- return resolvedValue;
21
- }
22
- }
23
- exports.getArgsDefaultValue = getArgsDefaultValue;
8
+ const component_props_1 = require("../../utils/component-props");
24
9
  function createComponentStoriesFile(host, { project, componentPath }) {
25
10
  const proj = (0, devkit_1.getProjects)(host).get(project);
26
11
  const sourceRoot = proj.sourceRoot;
@@ -63,29 +48,7 @@ function createComponentStoriesFile(host, { project, componentPath }) {
63
48
  }
64
49
  exports.createComponentStoriesFile = createComponentStoriesFile;
65
50
  function findPropsAndGenerateFile(host, sourceFile, cmpDeclaration, componentDirectory, name, isPlainJs, fileExt, fromNodeArray) {
66
- const propsInterface = (0, ast_utils_1.getComponentPropsInterface)(sourceFile, cmpDeclaration);
67
- let propsTypeName = null;
68
- let props = [];
69
- let argTypes = [];
70
- if (propsInterface) {
71
- propsTypeName = propsInterface.name.text;
72
- props = propsInterface.members.map((member) => {
73
- if (member.type.kind === ts.SyntaxKind.FunctionType) {
74
- argTypes.push({
75
- name: member.name.text,
76
- type: 'action',
77
- actionText: `${member.name.text} executed!`,
78
- });
79
- }
80
- else {
81
- return {
82
- name: member.name.text,
83
- defaultValue: getArgsDefaultValue(member.type.kind),
84
- };
85
- }
86
- });
87
- props = props.filter((p) => p && p.defaultValue !== undefined);
88
- }
51
+ const { propsTypeName, props, argTypes } = (0, component_props_1.getDefaultsForComponent)(sourceFile, cmpDeclaration);
89
52
  (0, devkit_1.generateFiles)(host, (0, devkit_1.joinPathFragments)(__dirname, './files'), (0, devkit_1.normalizePath)(componentDirectory), {
90
53
  componentFileName: fromNodeArray
91
54
  ? `${name}--${cmpDeclaration.name.text}`
@@ -1 +1 @@
1
- {"version":3,"file":"component-story.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-story/component-story.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-story.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-story/component-story.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,8 @@
8
8
  "properties": {
9
9
  "project": {
10
10
  "type": "string",
11
- "description": "The project name where to add the components.",
11
+ "aliases": ["name", "projectName"],
12
+ "description": "The project where to add the components.",
12
13
  "examples": ["shared-ui-component"],
13
14
  "$default": {
14
15
  "$source": "projectName",
@@ -0,0 +1,4 @@
1
+ import { Tree } from '@nrwl/devkit';
2
+ import { ComponentTestSchema } from './schema';
3
+ export declare function componentTestGenerator(tree: Tree, options: ComponentTestSchema): void;
4
+ export default componentTestGenerator;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.componentTestGenerator = void 0;
4
+ const cypress_version_1 = require("@nrwl/cypress/src/utils/cypress-version");
5
+ const devkit_1 = require("@nrwl/devkit");
6
+ const path_1 = require("path");
7
+ const ts = require("typescript");
8
+ const ast_utils_1 = require("../../utils/ast-utils");
9
+ const component_props_1 = require("../../utils/component-props");
10
+ function componentTestGenerator(tree, options) {
11
+ (0, cypress_version_1.assertMinimumCypressVersion)(10);
12
+ const projectConfig = (0, devkit_1.readProjectConfiguration)(tree, options.project);
13
+ const normalizedPath = options.componentPath.startsWith(projectConfig.sourceRoot)
14
+ ? (0, path_1.relative)(projectConfig.sourceRoot, options.componentPath)
15
+ : options.componentPath;
16
+ const componentPath = (0, devkit_1.joinPathFragments)(projectConfig.sourceRoot, normalizedPath);
17
+ if (tree.exists(componentPath)) {
18
+ generateSpecsForComponents(tree, componentPath);
19
+ }
20
+ }
21
+ exports.componentTestGenerator = componentTestGenerator;
22
+ function generateSpecsForComponents(tree, filePath) {
23
+ const sourceFile = ts.createSourceFile(filePath, tree.read(filePath, 'utf-8'), ts.ScriptTarget.Latest, true);
24
+ const cmpNodes = (0, ast_utils_1.findExportDeclarationsForJsx)(sourceFile);
25
+ const componentDir = (0, path_1.dirname)(filePath);
26
+ const ext = (0, path_1.extname)(filePath);
27
+ const fileName = (0, path_1.basename)(filePath, ext);
28
+ const defaultExport = (0, ast_utils_1.getComponentNode)(sourceFile);
29
+ if (cmpNodes === null || cmpNodes === void 0 ? void 0 : cmpNodes.length) {
30
+ const components = cmpNodes.map((cmp) => {
31
+ const defaults = (0, component_props_1.getDefaultsForComponent)(sourceFile, cmp);
32
+ const isDefaultExport = defaultExport
33
+ ? defaultExport.name.text === cmp.name.text
34
+ : false;
35
+ return {
36
+ isDefaultExport,
37
+ props: [...defaults.props, ...defaults.argTypes],
38
+ name: cmp.name.text,
39
+ typeName: defaults.propsTypeName,
40
+ };
41
+ });
42
+ const namedImports = components
43
+ .reduce((imports, cmp) => {
44
+ if (cmp.typeName) {
45
+ imports.push(cmp.typeName);
46
+ }
47
+ if (cmp.isDefaultExport) {
48
+ return imports;
49
+ }
50
+ imports.push(cmp.name);
51
+ return imports;
52
+ }, [])
53
+ .join(', ');
54
+ const namedImportStatement = namedImports.length > 0 ? `, { ${namedImports} }` : '';
55
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files'), componentDir, {
56
+ fileName,
57
+ components,
58
+ importStatement: defaultExport
59
+ ? `import ${defaultExport.name.text}${namedImportStatement} from './${fileName}'`
60
+ : `import { ${namedImports} } from './${fileName}'`,
61
+ ext,
62
+ });
63
+ }
64
+ }
65
+ exports.default = componentTestGenerator;
66
+ //# sourceMappingURL=component-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-test.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-test/component-test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import * as React from 'react'
2
+ import { mount } from 'cypress/react'
3
+ <%- importStatement %>
4
+
5
+ <% for (let cmp of components) { %>
6
+ describe(<%= cmp.name %>.name, () => {<% if (cmp.typeName) { %>
7
+ let props: <%= cmp.typeName%>;
8
+
9
+ beforeEach(() => {
10
+ props = {<% for (let prop of cmp.props) { %>
11
+ <%- prop.name %>: <% if(prop.type === 'action') { %>undefined<% } else { %><%- prop.defaultValue %>,<% } %><% }%>
12
+ }
13
+ })
14
+
15
+ it('renders', () => {
16
+ mount(<<%= cmp.name %> {...props}/>)
17
+ })<% } else { %>
18
+ it('renders', () => {
19
+ mount(<<%= cmp.name %> />)
20
+ })<% } %>
21
+ })
22
+ <% } %>
@@ -0,0 +1,4 @@
1
+ export interface ComponentTestSchema {
2
+ project: string;
3
+ componentPath: string;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/component-test/schema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "cli": "nx",
4
+ "$id": "NxReactCypressComponentTest",
5
+ "title": "Add Cypress component test",
6
+ "description": "Add a Cypress component test for a component.",
7
+ "type": "object",
8
+ "examples": [
9
+ {
10
+ "command": "nx g @nrwl/react:component-test --project=my-react-project --component-path=src/lib/fancy-component.tsx",
11
+ "description": "Create a cypress component test for FancyComponent"
12
+ }
13
+ ],
14
+ "properties": {
15
+ "project": {
16
+ "type": "string",
17
+ "description": "The name of the project the component is apart of",
18
+ "$default": {
19
+ "$source": "projectName"
20
+ },
21
+ "x-prompt": "What project is this component apart of?"
22
+ },
23
+ "componentPath": {
24
+ "type": "string",
25
+ "description": "Path to component, from the project source root",
26
+ "x-prompt": "What is the path to the component?"
27
+ }
28
+ },
29
+ "required": ["project", "componentPath"]
30
+ }
@@ -0,0 +1,9 @@
1
+ import { Tree } from '@nrwl/devkit';
2
+ import { CypressComponentConfigurationSchema } from './schema';
3
+ /**
4
+ * This is for using cypresses own Component testing, if you want to use test
5
+ * storybook components then use componentCypressGenerator instead.
6
+ *
7
+ */
8
+ export declare function cypressComponentConfigGenerator(tree: Tree, options: CypressComponentConfigurationSchema): Promise<() => void>;
9
+ export default cypressComponentConfigGenerator;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cypressComponentConfigGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const cypress_1 = require("@nrwl/cypress");
6
+ const devkit_1 = require("@nrwl/devkit");
7
+ const ts = require("typescript");
8
+ const ast_utils_1 = require("../../utils/ast-utils");
9
+ const component_test_1 = require("../component-test/component-test");
10
+ const allowedFileExt = new RegExp(/\.[jt]sx?/g);
11
+ const isSpecFile = new RegExp(/(spec|test)\./g);
12
+ /**
13
+ * This is for using cypresses own Component testing, if you want to use test
14
+ * storybook components then use componentCypressGenerator instead.
15
+ *
16
+ */
17
+ function cypressComponentConfigGenerator(tree, options) {
18
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
+ const projectConfig = (0, devkit_1.readProjectConfiguration)(tree, options.project);
20
+ const installTask = yield (0, cypress_1.cypressComponentProject)(tree, {
21
+ project: options.project,
22
+ skipFormat: true,
23
+ });
24
+ addFiles(tree, projectConfig, options);
25
+ updateTsConfig(tree, projectConfig);
26
+ if (options.skipFormat) {
27
+ yield (0, devkit_1.formatFiles)(tree);
28
+ }
29
+ return () => {
30
+ installTask();
31
+ };
32
+ });
33
+ }
34
+ exports.cypressComponentConfigGenerator = cypressComponentConfigGenerator;
35
+ function addFiles(tree, projectConfig, options) {
36
+ const cypressConfigPath = (0, devkit_1.joinPathFragments)(projectConfig.root, 'cypress.config.ts');
37
+ if (tree.exists(cypressConfigPath)) {
38
+ tree.delete(cypressConfigPath);
39
+ }
40
+ (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files'), projectConfig.root, {
41
+ tpl: '',
42
+ });
43
+ if (options.generateTests) {
44
+ (0, devkit_1.visitNotIgnoredFiles)(tree, projectConfig.sourceRoot, (filePath) => {
45
+ if (isComponent(tree, filePath)) {
46
+ (0, component_test_1.default)(tree, {
47
+ project: options.project,
48
+ componentPath: filePath,
49
+ });
50
+ }
51
+ });
52
+ }
53
+ }
54
+ function updateTsConfig(tree, projectConfig) {
55
+ const tsConfigPath = (0, devkit_1.joinPathFragments)(projectConfig.root, projectConfig.projectType === 'library'
56
+ ? 'tsconfig.lib.json'
57
+ : 'tsconfig.app.json');
58
+ if (tree.exists(tsConfigPath)) {
59
+ (0, devkit_1.updateJson)(tree, tsConfigPath, (json) => {
60
+ const excluded = new Set([
61
+ ...(json.exclude || []),
62
+ 'cypress/**/*',
63
+ 'cypress.config.ts',
64
+ '**/*.cy.ts',
65
+ '**/*.cy.js',
66
+ '**/*.cy.tsx',
67
+ '**/*.cy.jsx',
68
+ ]);
69
+ json.exclude = Array.from(excluded);
70
+ return json;
71
+ });
72
+ }
73
+ const projectBaseTsConfig = (0, devkit_1.joinPathFragments)(projectConfig.root, 'tsconfig.json');
74
+ if (tree.exists(projectBaseTsConfig)) {
75
+ (0, devkit_1.updateJson)(tree, projectBaseTsConfig, (json) => {
76
+ if (json.references) {
77
+ const hasCyTsConfig = json.references.some((r) => r.path === './tsconfig.cy.json');
78
+ if (!hasCyTsConfig) {
79
+ json.references.push({ path: './tsconfig.cy.json' });
80
+ }
81
+ }
82
+ else {
83
+ const excluded = new Set([
84
+ ...(json.exclude || []),
85
+ 'cypress/**/*',
86
+ 'cypress.config.ts',
87
+ '**/*.cy.ts',
88
+ '**/*.cy.js',
89
+ '**/*.cy.tsx',
90
+ '**/*.cy.jsx',
91
+ ]);
92
+ json.exclude = Array.from(excluded);
93
+ }
94
+ return json;
95
+ });
96
+ }
97
+ }
98
+ function isComponent(tree, filePath) {
99
+ if (isSpecFile.test(filePath) || !allowedFileExt.test(filePath)) {
100
+ return false;
101
+ }
102
+ const content = tree.read(filePath, 'utf-8');
103
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
104
+ const cmpDeclaration = (0, ast_utils_1.getComponentNode)(sourceFile);
105
+ return !!cmpDeclaration;
106
+ }
107
+ exports.default = cypressComponentConfigGenerator;
108
+ //# sourceMappingURL=cypress-component-configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cypress-component-configuration.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/cypress-component-configuration/cypress-component-configuration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { defineConfig } from 'cypress';
2
+ import { nxComponentTestingPreset } from '@nrwl/react/plugins/component-testing';
3
+
4
+ export default defineConfig({
5
+ component: nxComponentTestingPreset(__dirname),
6
+ });
@@ -0,0 +1,5 @@
1
+ export interface CypressComponentConfigurationSchema {
2
+ project: string;
3
+ generateTests: boolean;
4
+ skipFormat?: boolean;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/cypress-component-configuration/schema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "cli": "nx",
4
+ "$id": "NxReactCypressComponentTestConfiguration",
5
+ "title": "Add Cypress component testing",
6
+ "description": "Add a Cypress component testing configuration to an existing project.",
7
+ "type": "object",
8
+ "examples": [
9
+ {
10
+ "command": "nx g @nrwl/react:cypress-component-configuration --project=my-react-project",
11
+ "description": "Add component testing to your react project"
12
+ },
13
+ {
14
+ "command": "nx g @nrwl/react:cypress-component-configuration --project=my-react-project --generate-tests",
15
+ "description": "Add component testing to your react project and generate component tests for your existing components"
16
+ }
17
+ ],
18
+ "properties": {
19
+ "project": {
20
+ "type": "string",
21
+ "description": "The name of the project to add cypress component testing configuration to",
22
+ "$default": {
23
+ "$source": "projectName"
24
+ },
25
+ "x-prompt": "What project should we add Cypress component testing to?"
26
+ },
27
+ "generateTests": {
28
+ "type": "boolean",
29
+ "description": "Generate default component tests for existing components in the project",
30
+ "default": false
31
+ },
32
+ "skipFormat": {
33
+ "type": "boolean",
34
+ "description": "Skip formatting files",
35
+ "default": false
36
+ }
37
+ },
38
+ "required": ["project"]
39
+ }
@@ -1,5 +1,5 @@
1
- import { SupportedStyles } from '../../../typings/style';
2
1
  import { Linter } from '@nrwl/linter';
2
+ import { SupportedStyles } from '../../../typings/style';
3
3
 
4
4
  export interface Schema {
5
5
  name: string;
@@ -17,7 +17,7 @@ exports.addModuleFederationFiles = addModuleFederationFiles;
17
17
  function remoteGenerator(host, schema) {
18
18
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
19
  const options = (0, normalize_options_1.normalizeOptions)(host, schema);
20
- const initApp = yield (0, application_1.default)(host, options);
20
+ const initApp = yield (0, application_1.default)(host, Object.assign(Object.assign({}, options), { skipDefaultProject: true }));
21
21
  if (schema.host) {
22
22
  (0, update_host_with_remote_1.updateHostWithRemote)(host, schema.host, options.name);
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/remote/remote.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,yCAAuE;AACvE,2FAAqF;AAErF,4EAAwE;AACxE,4DAA8D;AAE9D,2EAAqE;AACrE,mGAA6F;AAG7F,SAAgB,wBAAwB,CACtC,IAAU,EACV,OAAyB;IAEzB,MAAM,iBAAiB,iDAClB,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,GACnB,OAAO,KACV,IAAI,EAAE,EAAE,GACT,CAAC;IAEF,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,WAAI,EAAC,SAAS,EAAE,2BAA2B,CAAC,EAC5C,OAAO,CAAC,cAAc,EACtB,iBAAiB,CAClB,CAAC;AACJ,CAAC;AAhBD,4DAgBC;AAED,SAAsB,eAAe,CAAC,IAAU,EAAE,MAAc;;QAC9D,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAoB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE1D,IAAI,MAAM,CAAC,IAAI,EAAE;YACf,IAAA,8CAAoB,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;SACvD;QAED,wEAAwE;QACxE,sEAAsE;QACtE,kBAAkB;QAClB,IAAI,CAAC,MAAM,CACT,IAAA,WAAI,EAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,EAC5C,IAAA,WAAI,EAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAClD,CAAC;QAEF,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,IAAA,gEAA6B,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,sCAAgB,EAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CAAA;AAxBD,0CAwBC;AAED,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../../../../../packages/react/src/generators/remote/remote.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,yCAAuE;AACvE,2FAAqF;AAErF,4EAAwE;AACxE,4DAA8D;AAE9D,2EAAqE;AACrE,mGAA6F;AAG7F,SAAgB,wBAAwB,CACtC,IAAU,EACV,OAAyB;IAEzB,MAAM,iBAAiB,iDAClB,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,GACnB,OAAO,KACV,IAAI,EAAE,EAAE,GACT,CAAC;IAEF,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,WAAI,EAAC,SAAS,EAAE,2BAA2B,CAAC,EAC5C,OAAO,CAAC,cAAc,EACtB,iBAAiB,CAClB,CAAC;AACJ,CAAC;AAhBD,4DAgBC;AAED,SAAsB,eAAe,CAAC,IAAU,EAAE,MAAc;;QAC9D,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAoB,EAAC,IAAI,kCAC1C,OAAO,KACV,kBAAkB,EAAE,IAAI,IACxB,CAAC;QAEH,IAAI,MAAM,CAAC,IAAI,EAAE;YACf,IAAA,8CAAoB,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;SACvD;QAED,wEAAwE;QACxE,sEAAsE;QACtE,kBAAkB;QAClB,IAAI,CAAC,MAAM,CACT,IAAA,WAAI,EAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,EAC5C,IAAA,WAAI,EAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAClD,CAAC;QAEF,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,IAAA,gEAA6B,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,sCAAgB,EAAC,OAAO,CAAC,CAAC;IACnC,CAAC;CAAA;AA3BD,0CA2BC;AAED,kBAAe,eAAe,CAAC"}
@@ -2,18 +2,19 @@
2
2
  "$schema": "http://json-schema.org/schema",
3
3
  "cli": "nx",
4
4
  "$id": "NxReactStorybookStories",
5
- "title": "Create React Storybook stories",
6
- "description": "Create stories/specs for all components declared in an app or a library.",
5
+ "title": "Generate React Storybook stories",
6
+ "description": "Generate stories/specs for all components declared in a project.",
7
7
  "type": "object",
8
8
  "properties": {
9
9
  "project": {
10
10
  "type": "string",
11
- "description": "Library or application name.",
11
+ "aliases": ["name", "projectName"],
12
+ "description": "Project for which to generate stories.",
12
13
  "$default": {
13
14
  "$source": "projectName",
14
15
  "index": 0
15
16
  },
16
- "x-prompt": "What's name of the project for which you want to generate stories?"
17
+ "x-prompt": "For which project do you want to generate stories?"
17
18
  },
18
19
  "generateCypressSpecs": {
19
20
  "type": "boolean",
@@ -8,11 +8,14 @@
8
8
  "properties": {
9
9
  "name": {
10
10
  "type": "string",
11
- "description": "Project name",
11
+ "aliases": ["project", "projectName"],
12
+ "description": "Project for which to generate Storybook configuration.",
12
13
  "$default": {
13
14
  "$source": "argv",
14
15
  "index": 0
15
- }
16
+ },
17
+ "x-prompt": "For which project do you want to generate Storybook configuration?",
18
+ "x-dropdown": "projects"
16
19
  },
17
20
  "configureCypress": {
18
21
  "type": "boolean",
@@ -111,7 +111,7 @@ function addStringDependencyToSharedConfig(sharedConfig, dependency, projectGrap
111
111
  if (projectGraph.nodes[dependency]) {
112
112
  sharedConfig[dependency] = { requiredVersion: false };
113
113
  }
114
- else if ((_a = projectGraph.externalNodes) === null || _a === void 0 ? void 0 : _a[dependency]) {
114
+ else if ((_a = projectGraph.externalNodes) === null || _a === void 0 ? void 0 : _a[`npm:${dependency}`]) {
115
115
  const pkgJson = (0, package_json_1.readRootPackageJson)();
116
116
  const config = (0, webpack_utils_1.getNpmPackageSharedConfig)(dependency, (_c = (_b = pkgJson.dependencies) === null || _b === void 0 ? void 0 : _b[dependency]) !== null && _c !== void 0 ? _c : (_d = pkgJson.devDependencies) === null || _d === void 0 ? void 0 : _d[dependency]);
117
117
  if (!config) {
@@ -1 +1 @@
1
- {"version":3,"file":"with-module-federation.js","sourceRoot":"","sources":["../../../../../packages/react/src/module-federation/with-module-federation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"with-module-federation.js","sourceRoot":"","sources":["../../../../../packages/react/src/module-federation/with-module-federation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import * as ts from 'typescript';
2
+ export declare function getArgsDefaultValue(property: ts.SyntaxKind): string;
3
+ export declare function getDefaultsForComponent(sourceFile: ts.SourceFile, cmpDeclaration: ts.Node): {
4
+ propsTypeName: string;
5
+ props: {
6
+ name: string;
7
+ defaultValue: any;
8
+ }[];
9
+ argTypes: {
10
+ name: string;
11
+ type: string;
12
+ actionText: string;
13
+ }[];
14
+ };
15
+ export declare function getImportForType(sourceFile: ts.SourceFile, typeName: string): ts.Statement;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getImportForType = exports.getDefaultsForComponent = exports.getArgsDefaultValue = void 0;
4
+ const ts = require("typescript");
5
+ const ast_utils_1 = require("./ast-utils");
6
+ // TODO: candidate to refactor with the angular component story
7
+ function getArgsDefaultValue(property) {
8
+ const typeNameToDefault = {
9
+ [ts.SyntaxKind.StringKeyword]: "''",
10
+ [ts.SyntaxKind.NumberKeyword]: 0,
11
+ [ts.SyntaxKind.BooleanKeyword]: false,
12
+ };
13
+ const resolvedValue = typeNameToDefault[property];
14
+ if (typeof resolvedValue === undefined) {
15
+ return "''";
16
+ }
17
+ else {
18
+ return resolvedValue;
19
+ }
20
+ }
21
+ exports.getArgsDefaultValue = getArgsDefaultValue;
22
+ function getDefaultsForComponent(sourceFile, cmpDeclaration) {
23
+ const propsInterface = (0, ast_utils_1.getComponentPropsInterface)(sourceFile, cmpDeclaration);
24
+ let propsTypeName = null;
25
+ let props = [];
26
+ let argTypes = [];
27
+ if (propsInterface) {
28
+ propsTypeName = propsInterface.name.text;
29
+ props = propsInterface.members.map((member) => {
30
+ if (member.type.kind === ts.SyntaxKind.FunctionType) {
31
+ argTypes.push({
32
+ name: member.name.text,
33
+ type: 'action',
34
+ actionText: `${member.name.text} executed!`,
35
+ });
36
+ }
37
+ else {
38
+ return {
39
+ name: member.name.text,
40
+ defaultValue: getArgsDefaultValue(member.type.kind),
41
+ };
42
+ }
43
+ });
44
+ props = props.filter((p) => p && p.defaultValue !== undefined);
45
+ }
46
+ return { propsTypeName, props, argTypes };
47
+ }
48
+ exports.getDefaultsForComponent = getDefaultsForComponent;
49
+ function getImportForType(sourceFile, typeName) {
50
+ return sourceFile.statements.find((statement) => ts.isImportDeclaration(statement) &&
51
+ statement.getText().includes(typeName));
52
+ }
53
+ exports.getImportForType = getImportForType;
54
+ //# sourceMappingURL=component-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-props.js","sourceRoot":"","sources":["../../../../../packages/react/src/utils/component-props.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,2CAAyD;AAEzD,+DAA+D;AAC/D,SAAgB,mBAAmB,CAAC,QAAuB;IACzD,MAAM,iBAAiB,GAAwB;QAC7C,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI;QACnC,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAChC,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,KAAK;KACtC,CAAC;IAEF,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,OAAO,aAAa,KAAK,SAAS,EAAE;QACtC,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,aAAa,CAAC;KACtB;AACH,CAAC;AAbD,kDAaC;AAED,SAAgB,uBAAuB,CACrC,UAAyB,EACzB,cAAuB;IAEvB,MAAM,cAAc,GAAG,IAAA,sCAA0B,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAE9E,IAAI,aAAa,GAAW,IAAI,CAAC;IACjC,IAAI,KAAK,GAGH,EAAE,CAAC;IACT,IAAI,QAAQ,GAIN,EAAE,CAAC;IAET,IAAI,cAAc,EAAE;QAClB,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACzC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAA4B,EAAE,EAAE;YAClE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;gBACnD,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAG,MAAM,CAAC,IAAsB,CAAC,IAAI;oBACzC,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,GAAI,MAAM,CAAC,IAAsB,CAAC,IAAI,YAAY;iBAC/D,CAAC,CAAC;aACJ;iBAAM;gBACL,OAAO;oBACL,IAAI,EAAG,MAAM,CAAC,IAAsB,CAAC,IAAI;oBACzC,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;iBACpD,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QACH,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC;KAChE;IACD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC5C,CAAC;AApCD,0DAoCC;AAED,SAAgB,gBAAgB,CAAC,UAAyB,EAAE,QAAgB;IAC1E,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAC/B,CAAC,SAAkB,EAAE,EAAE,CACrB,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;QACjC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACzC,CAAC;AACJ,CAAC;AAND,4CAMC"}
package/.eslintrc.json DELETED
@@ -1,36 +0,0 @@
1
- {
2
- "extends": "../../.eslintrc",
3
- "rules": {},
4
- "overrides": [
5
- {
6
- "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
7
- "rules": {}
8
- },
9
- {
10
- "files": ["**/*.ts"],
11
- "excludedFiles": ["./src/migrations/**"],
12
- "rules": {
13
- "no-restricted-imports": [
14
- "error",
15
- "@nrwl/workspace",
16
- "@angular-devkit/core",
17
- "@angular-devkit/schematics",
18
- "@angular-devkit/architect"
19
- ]
20
- }
21
- },
22
- {
23
- "files": [
24
- "./package.json",
25
- "./generators.json",
26
- "./executors.json",
27
- "./migrations.json"
28
- ],
29
- "parser": "jsonc-eslint-parser",
30
- "rules": {
31
- "@nrwl/nx/nx-plugin-checks": "error"
32
- }
33
- }
34
- ],
35
- "ignorePatterns": ["!**/*"]
36
- }