@zohodesk/react-cli 0.0.1-beta.99 → 0.0.1-betaa.138.2

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 (202) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +183 -183
  3. package/CHANGELOG.md +5 -0
  4. package/README.md +636 -491
  5. package/bin/cli.js +372 -367
  6. package/files/eslintrc.js +57 -0
  7. package/files/prettierrc.js +3 -0
  8. package/lib/babel/cmjs-plugins-presets.js +16 -9
  9. package/lib/babel/es-plugins-presets.js +26 -14
  10. package/lib/common/getEntries.js +31 -22
  11. package/lib/common/getPublicPathConfig.js +27 -13
  12. package/lib/common/index.js +21 -25
  13. package/lib/common/splitChunks.js +62 -53
  14. package/lib/common/templateParameters.js +10 -8
  15. package/lib/configs/jest.config.js +15 -25
  16. package/lib/configs/webpack.component.umd.config.js +31 -37
  17. package/lib/configs/webpack.css.umd.config.js +44 -47
  18. package/lib/configs/webpack.dev.config.js +70 -52
  19. package/lib/configs/webpack.docs.config.js +106 -106
  20. package/lib/configs/webpack.prod.config.js +95 -75
  21. package/lib/hooks/docsProptypeHook.js +32 -38
  22. package/lib/jest/commitedFilesResult.js +103 -74
  23. package/lib/jest/coverageCollector.js +41 -21
  24. package/lib/jest/jsonMaker.js +15 -16
  25. package/lib/jest/preProcessors/cssPreprocessor.js +16 -18
  26. package/lib/jest/preProcessors/jsPreprocessor.js +3 -5
  27. package/lib/jest/preProcessors/otherFilesPreprocessor.js +5 -6
  28. package/lib/jest/result.js +90 -45
  29. package/lib/jest/run.js +43 -43
  30. package/lib/jest/setup.js +102 -95
  31. package/lib/loaderUtils/getCSSLoaders.js +21 -22
  32. package/lib/loaderUtils/getDevJsLoaders.js +25 -23
  33. package/lib/loaderUtils/index.js +11 -13
  34. package/lib/loaders/docsLoader.js +15 -15
  35. package/lib/loaders/docsPropsLoader.js +14 -17
  36. package/lib/loaders/fileLoader.js +33 -35
  37. package/lib/loaders/scriptInstrumentLoader.js +21 -20
  38. package/lib/loaders/workerLoader.js +136 -0
  39. package/lib/middlewares/HMRMiddleware.js +54 -45
  40. package/lib/middlewares/SSTMiddleware.js +8 -5
  41. package/lib/pluginUtils/getDevPlugins.js +114 -52
  42. package/lib/pluginUtils/getDocsPlugins.js +25 -29
  43. package/lib/pluginUtils/getLibraryPlugins.js +8 -10
  44. package/lib/pluginUtils/getProdPlugins.js +163 -74
  45. package/lib/pluginUtils/getServerPlugins.js +8 -11
  46. package/lib/pluginUtils/getUMDCSSPlugins.js +11 -15
  47. package/lib/pluginUtils/getUMDComponentPlugins.js +11 -15
  48. package/lib/pluginUtils/index.js +36 -43
  49. package/lib/plugins/CdnChangePlugin.js +63 -0
  50. package/lib/plugins/CleanupStatsPlugin.js +18 -32
  51. package/lib/plugins/CustomAttributePlugin.js +79 -0
  52. package/lib/plugins/CustomAttributePlugin.md +35 -0
  53. package/lib/plugins/EFCPlugin.js +185 -0
  54. package/lib/plugins/I18NInjectIntoIndexPlugin.js +118 -52
  55. package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +60 -0
  56. package/lib/plugins/I18nSplitPlugin/I18nDependency.js +44 -0
  57. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +266 -0
  58. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +183 -0
  59. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +100 -0
  60. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +86 -0
  61. package/lib/plugins/I18nSplitPlugin/README.md +25 -0
  62. package/lib/plugins/I18nSplitPlugin/index.js +185 -0
  63. package/lib/plugins/I18nSplitPlugin/utils/collectI18nKeys.js +64 -0
  64. package/lib/plugins/I18nSplitPlugin/utils/getI18nFileUrlPathTemplate.js +13 -0
  65. package/lib/plugins/I18nSplitPlugin/utils/getI18nKeysFormModules.js +26 -0
  66. package/lib/plugins/I18nSplitPlugin/utils/hashUtils.js +40 -0
  67. package/lib/plugins/I18nSplitPlugin/utils/index.js +31 -0
  68. package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +112 -0
  69. package/lib/plugins/ManifestPlugin.js +52 -63
  70. package/lib/plugins/ModuleStatsPlugin.js +83 -173
  71. package/lib/plugins/OptimizeJSPlugin.js +24 -41
  72. package/lib/plugins/PublicPathCallbackPlugin.js +42 -116
  73. package/lib/plugins/PublicPathChangePlugin.js +175 -284
  74. package/lib/plugins/ReportGeneratePlugin.js +150 -151
  75. package/lib/plugins/ResourceHintsPlugin.js +53 -35
  76. package/lib/plugins/ScriptInstrumentPlugin.js +22 -37
  77. package/lib/plugins/ServiceWorkerPlugin.js +81 -57
  78. package/lib/plugins/ShadowDOMSupportPlugin.js +153 -234
  79. package/lib/plugins/SourceMapHookPlugin.js +21 -33
  80. package/lib/plugins/TPHashMappingPlugin.js +67 -0
  81. package/lib/plugins/UglifyCSSPlugin.js +23 -30
  82. package/lib/plugins/UnusedFilesFindPlugin.js +137 -152
  83. package/lib/plugins/index.js +100 -91
  84. package/lib/plugins/webpackwatchrunplugin.js +18 -30
  85. package/lib/postcss-plugins/ExcludeRTLPlugin.js +14 -17
  86. package/lib/schemas/index.js +336 -81
  87. package/lib/servers/clusterHubServer.js +22 -26
  88. package/lib/servers/docsServer.js +3 -5
  89. package/lib/servers/docsServerCore.js +84 -91
  90. package/lib/servers/helpServer.js +19 -21
  91. package/lib/servers/impactServer.js +99 -92
  92. package/lib/servers/mockserver.js +24 -24
  93. package/lib/servers/scrServer.js +78 -98
  94. package/lib/servers/server.js +101 -122
  95. package/lib/servers/ssServer.js +63 -61
  96. package/lib/sh/pre-commit.sh +34 -34
  97. package/lib/sh/reportPublish.sh +45 -46
  98. package/lib/templates/CoverageScriptTemplate.js +45 -18
  99. package/lib/templates/WMSTemplate.js +17 -18
  100. package/lib/templates/linterConstant.js +6 -4
  101. package/lib/utils/babelPresets.js +12 -5
  102. package/lib/utils/buildstats.html +148 -148
  103. package/lib/utils/clean.js +12 -11
  104. package/lib/utils/copy.js +12 -34
  105. package/lib/utils/copyTimezones.js +9 -16
  106. package/lib/utils/createEventStream.js +24 -19
  107. package/lib/utils/cssClassNameGenerate.js +44 -73
  108. package/lib/utils/cssURLReplacer.js +60 -54
  109. package/lib/utils/dependencyPostPublish.js +20 -19
  110. package/lib/utils/fileUtils.js +66 -54
  111. package/lib/utils/folderIterator.js +20 -21
  112. package/lib/utils/getComponents.js +70 -27
  113. package/lib/utils/getCurrentBranch.js +11 -17
  114. package/lib/utils/getDependenciesImpactList.js +114 -187
  115. package/lib/utils/getHash.js +9 -13
  116. package/lib/utils/getIp.js +9 -9
  117. package/lib/utils/getOptions.js +26 -29
  118. package/lib/utils/getServerURL.js +19 -10
  119. package/lib/utils/index.js +147 -126
  120. package/lib/utils/init.js +2 -2
  121. package/lib/utils/initPreCommitHook.js +40 -32
  122. package/lib/utils/jsonHelper.js +37 -21
  123. package/lib/utils/lint/addScripts.js +27 -0
  124. package/lib/utils/lint/checkExistingConfig.js +67 -0
  125. package/lib/utils/lint/copyConfigs.js +24 -0
  126. package/lib/utils/lint/index.js +54 -0
  127. package/lib/utils/lint/lintScripts.js +11 -0
  128. package/lib/utils/lint/lintSetup.js +31 -0
  129. package/lib/utils/lint/lintStagedPreCommitHook.js +7 -0
  130. package/lib/utils/lint/question.js +30 -0
  131. package/lib/utils/lintReporter.js +70 -56
  132. package/lib/utils/mailSender.js +12 -27
  133. package/lib/utils/pullOrigin.js +21 -18
  134. package/lib/utils/reinstallDependencies.js +76 -85
  135. package/lib/utils/removeAttributes.js +25 -23
  136. package/lib/utils/repoClone.js +47 -45
  137. package/lib/utils/request.js +64 -77
  138. package/lib/utils/resultSchema.json +73 -73
  139. package/lib/utils/rtl.js +22 -29
  140. package/lib/utils/setEnvVariables.js +5 -6
  141. package/lib/utils/ssTestHack.js +21 -19
  142. package/lib/utils/switchBranch.js +21 -20
  143. package/lib/utils/urlConcat.js +22 -0
  144. package/package.json +141 -136
  145. package/templates/app/.eslintrc.js +140 -140
  146. package/templates/app/README.md +12 -12
  147. package/templates/app/app/index.html +24 -24
  148. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  149. package/templates/app/app/properties/i18nkeys.json +3 -3
  150. package/templates/app/docs/all.html +69 -69
  151. package/templates/app/mockapi/index.js +18 -18
  152. package/templates/app/package.json +37 -37
  153. package/templates/app/src/actions/SampleActions/index.js +37 -37
  154. package/templates/app/src/actions/index.js +65 -65
  155. package/templates/app/src/appUrls.js +19 -19
  156. package/templates/app/src/components/Alert/Alert.js +134 -134
  157. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  158. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  159. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  160. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  161. package/templates/app/src/components/Sample/SampleList.js +61 -61
  162. package/templates/app/src/components/Slider/Slider.css +41 -41
  163. package/templates/app/src/components/Slider/Slider.js +55 -55
  164. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  165. package/templates/app/src/containers/AppContainer/index.js +96 -96
  166. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  167. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  168. package/templates/app/src/containers/DevTools/index.js +10 -10
  169. package/templates/app/src/containers/Header/index.js +67 -67
  170. package/templates/app/src/containers/Header/index.module.css +43 -43
  171. package/templates/app/src/containers/Redirect/index.js +63 -63
  172. package/templates/app/src/containers/Redirector/index.js +47 -47
  173. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  174. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  175. package/templates/app/src/historyChange.js +5 -5
  176. package/templates/app/src/index.html +10 -10
  177. package/templates/app/src/index.js +24 -24
  178. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  179. package/templates/app/src/reducers/alertData.js +11 -11
  180. package/templates/app/src/reducers/index.js +6 -6
  181. package/templates/app/src/reducers/samples.js +19 -19
  182. package/templates/app/src/store/configureStore.dev.js +51 -51
  183. package/templates/app/src/store/configureStore.js +5 -5
  184. package/templates/app/src/store/configureStore.prod.js +26 -26
  185. package/templates/app/src/util/Common.js +5 -5
  186. package/templates/app/src/util/RequestAPI.js +132 -132
  187. package/templates/docs/all.html +249 -249
  188. package/templates/docs/component.html +178 -178
  189. package/templates/docs/components.html +221 -221
  190. package/templates/docs/css/b.min.css +6 -6
  191. package/templates/docs/css/component.css +42 -42
  192. package/templates/docs/css/componentTest.css +6 -6
  193. package/templates/docs/css/hopscotch.css +585 -585
  194. package/templates/docs/css/style.css +1022 -1022
  195. package/templates/docs/index.html +1493 -1493
  196. package/templates/docs/js/active-line.js +72 -72
  197. package/templates/docs/js/b.min.js +7 -7
  198. package/templates/docs/js/codemirror.js +9680 -9680
  199. package/templates/docs/js/designTokens.js +334 -334
  200. package/templates/docs/js/j.min.js +4 -4
  201. package/templates/docs/js/javascript.js +874 -874
  202. package/templates/docs/js/matchbrackets.js +145 -145
@@ -1,151 +1,144 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.default = void 0;
6
7
 
7
- var _fs = require('fs');
8
+ var _fs = _interopRequireDefault(require("fs"));
8
9
 
9
- var _fs2 = _interopRequireDefault(_fs);
10
+ var _path = _interopRequireDefault(require("path"));
10
11
 
11
- var _path = require('path');
12
+ var _https = _interopRequireDefault(require("https"));
12
13
 
13
- var _path2 = _interopRequireDefault(_path);
14
+ var _webpack = _interopRequireDefault(require("webpack"));
14
15
 
15
- var _https = require('https');
16
+ var _express = _interopRequireDefault(require("express"));
16
17
 
17
- var _https2 = _interopRequireDefault(_https);
18
+ var _child_process = require("child_process");
18
19
 
19
- var _webpack = require('webpack');
20
+ var _webpackDevMiddleware = _interopRequireDefault(require("webpack-dev-middleware"));
20
21
 
21
- var _webpack2 = _interopRequireDefault(_webpack);
22
+ var _HMRMiddleware = _interopRequireDefault(require("../middlewares/HMRMiddleware"));
22
23
 
23
- var _express = require('express');
24
+ var _utils = require("../utils");
24
25
 
25
- var _express2 = _interopRequireDefault(_express);
26
-
27
- var _child_process = require('child_process');
28
-
29
- var _webpackDevMiddleware = require('webpack-dev-middleware');
30
-
31
- var _webpackDevMiddleware2 = _interopRequireDefault(_webpackDevMiddleware);
32
-
33
- var _HMRMiddleware = require('../middlewares/HMRMiddleware');
34
-
35
- var _HMRMiddleware2 = _interopRequireDefault(_HMRMiddleware);
36
-
37
- var _utils = require('../utils');
38
-
39
- var _webpackDocs = require('../configs/webpack.docs.config');
40
-
41
- var _webpackDocs2 = _interopRequireDefault(_webpackDocs);
26
+ var _webpackDocs = _interopRequireDefault(require("../configs/webpack.docs.config"));
42
27
 
43
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
44
29
 
45
- exports.default = function (isSSTest) {
46
- var options = (0, _utils.getOptions)();
47
- var server = options.docs.server;
48
- var port = server.port,
49
- branch = server.branch,
50
- host = server.host,
51
- domain = server.domain,
52
- iphost = server.iphost;
53
-
54
-
55
- var appPath = process.cwd();
56
-
57
- var app = (0, _express2.default)();
58
-
59
- app.use(_express2.default.json());
60
- app.use(_express2.default.urlencoded({
30
+ var _default = isSSTest => {
31
+ let options = (0, _utils.getOptions)();
32
+ let {
33
+ docs: {
34
+ server
35
+ }
36
+ } = options;
37
+ let {
38
+ port,
39
+ branch,
40
+ host,
41
+ domain,
42
+ iphost
43
+ } = server;
44
+ let appPath = process.cwd();
45
+ const app = (0, _express.default)();
46
+ app.use(_express.default.json());
47
+ app.use(_express.default.urlencoded({
61
48
  extended: true
62
49
  }));
63
-
64
- var docsConfig = (0, _webpackDocs2.default)(isSSTest);
65
-
66
- var compiler = (0, _webpack2.default)(docsConfig);
67
-
68
- var wdm = (0, _webpackDevMiddleware2.default)(compiler, {
50
+ let docsConfig = (0, _webpackDocs.default)(isSSTest);
51
+ let compiler = (0, _webpack.default)(docsConfig);
52
+ let wdm = (0, _webpackDevMiddleware.default)(compiler, {
69
53
  logLevel: 'error',
70
54
  publicPath: docsConfig.output.publicPath,
71
- headers: { 'Access-Control-Allow-Origin': '*' }
55
+ headers: {
56
+ 'Access-Control-Allow-Origin': '*'
57
+ }
72
58
  });
73
-
74
59
  app.use(wdm);
75
-
76
- app.use((0, _HMRMiddleware2.default)(compiler, { path: '/sockjs-node/info' }));
77
-
78
- app.use('/docs/external/', _express2.default.static(_path2.default.join(appPath, 'docs', 'external')));
79
- app.use('/docs', _express2.default.static(_path2.default.join(__dirname, '..', '..', 'templates', 'docs')));
80
-
81
- app.use('/docs/*', function (req, res) {
82
- res.sendFile(_path2.default.join(__dirname, '..', '..', 'templates', 'docs', 'index.html'));
60
+ app.use((0, _HMRMiddleware.default)(compiler, {
61
+ path: '/sockjs-node/info'
62
+ }));
63
+ app.use('/docs/external/', _express.default.static(_path.default.join(appPath, 'docs', 'external')));
64
+ app.use('/docs', _express.default.static(_path.default.join(__dirname, '..', '..', 'templates', 'docs')));
65
+ app.use('/docs/*', (req, res) => {
66
+ res.sendFile(_path.default.join(__dirname, '..', '..', 'templates', 'docs', 'index.html'));
83
67
  });
84
-
85
- app.use('/author/get', function (req, res) {
86
- var _req$query$componentN = req.query.componentName,
87
- componentName = _req$query$componentN === undefined ? '' : _req$query$componentN;
88
-
89
- res.json({ stdout: (0, _child_process.execSync)('git blame ' + componentName).toString() });
68
+ app.use('/author/get', (req, res) => {
69
+ let {
70
+ query: {
71
+ componentName = ''
72
+ }
73
+ } = req;
74
+ res.json({
75
+ stdout: (0, _child_process.execSync)(`git blame ${componentName}`).toString()
76
+ });
90
77
  });
91
-
92
- app.use('/cli/version', function (req, res) {
93
- res.json({ version: require('../../package.json').version });
78
+ app.use('/cli/version', (req, res) => {
79
+ res.json({
80
+ version: require('../../package.json').version
81
+ });
94
82
  });
95
83
 
96
84
  if (branch) {
97
- app.post('/repo/merge', function (req, res) {
98
- var ref = req.body.ref;
85
+ app.post('/repo/merge', (req, res) => {
86
+ let {
87
+ ref
88
+ } = req.body;
99
89
 
100
90
  if (ref && ref.endsWith(branch)) {
101
91
  (0, _child_process.spawnSync)('git', ['pull', 'origin', branch], {
102
92
  stdio: 'inherit'
103
93
  });
104
94
  }
95
+
105
96
  res.send('done');
106
97
  });
107
98
  }
108
99
 
109
- var httpsServer = _https2.default.createServer({
110
- key: _fs2.default.readFileSync(_path2.default.join(__dirname, '../../cert/key.pem')),
111
- cert: _fs2.default.readFileSync(_path2.default.join(__dirname, '../../cert/cert.pem')),
100
+ const httpsServer = _https.default.createServer({
101
+ key: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/key.pem')),
102
+ cert: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/cert.pem')),
112
103
  passphrase: '9i1pqink!k11'
113
104
  }, app);
105
+
114
106
  if (!isSSTest) {
115
- httpsServer.listen(port, function (err) {
107
+ httpsServer.listen(port, err => {
116
108
  if (err) {
117
109
  throw err;
118
110
  }
119
111
 
120
- (0, _utils.log)('Listening at ' + (0, _utils.getServerURL)(server, 'htt' + 'ps') + '/docs/');
112
+ (0, _utils.log)(`Listening at ${(0, _utils.getServerURL)(server, 'htt' + 'ps')}/docs/`);
121
113
  });
122
114
  }
123
115
 
124
- var httpPort = Number(port) + 1;
125
-
126
- var http = app.listen(httpPort, function (err) {
116
+ let httpPort = Number(port) + 1;
117
+ let http = app.listen(httpPort, err => {
127
118
  if (err) {
128
119
  throw err;
129
120
  }
121
+
130
122
  if (isSSTest) {
131
- (0, _utils.log)('Listening at ' + (0, _utils.getServerURL)(Object.assign(server, {
123
+ (0, _utils.log)(`Listening at ${(0, _utils.getServerURL)(Object.assign(server, {
132
124
  host: iphost,
133
125
  port: port
134
- }), 'htt' + 'p') + '/docs/');
126
+ }), 'htt' + 'p')}/docs/`);
135
127
  } else {
136
- (0, _utils.log)('Listening at ' + (0, _utils.getServerURL)({
137
- host: host,
138
- domain: domain,
139
- port: port
140
- }, 'htt' + 'p') + '/docs/');
128
+ (0, _utils.log)(`Listening at ${(0, _utils.getServerURL)({
129
+ host,
130
+ domain,
131
+ port
132
+ }, 'htt' + 'p')}/docs/`);
141
133
  }
142
134
  });
143
-
144
135
  return {
145
- compiler: compiler,
146
- app: app,
147
- http: http,
136
+ compiler,
137
+ app,
138
+ http,
148
139
  https: httpsServer,
149
- wdm: wdm
140
+ wdm
150
141
  };
151
- };
142
+ };
143
+
144
+ exports.default = _default;
@@ -1,31 +1,29 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
- var _path = require('path');
3
+ var _path = _interopRequireDefault(require("path"));
4
4
 
5
- var _path2 = _interopRequireDefault(_path);
5
+ var _express = _interopRequireDefault(require("express"));
6
6
 
7
- var _express = require('express');
8
-
9
- var _express2 = _interopRequireDefault(_express);
10
-
11
- var _utils = require('../utils');
7
+ var _utils = require("../utils");
12
8
 
13
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
10
 
15
- var options = (0, _utils.getOptions)();
16
- var server = options.help.server;
17
-
18
- var serverUrl = (0, _utils.getServerURL)(server, 'htt' + 'p');
19
- var port = server.port;
20
-
21
-
22
- var app = (0, _express2.default)();
23
-
24
- app.use('/help', _express2.default.static(_path2.default.join(__dirname, '..', '..', 'templates', 'help')));
25
-
26
- app.listen(port, function (err) {
11
+ let options = (0, _utils.getOptions)();
12
+ let {
13
+ help: {
14
+ server
15
+ }
16
+ } = options;
17
+ let serverUrl = (0, _utils.getServerURL)(server, 'htt' + 'p');
18
+ let {
19
+ port
20
+ } = server;
21
+ let app = (0, _express.default)();
22
+ app.use('/help', _express.default.static(_path.default.join(__dirname, '..', '..', 'templates', 'help')));
23
+ app.listen(port, err => {
27
24
  if (err) {
28
25
  throw err;
29
26
  }
30
- (0, _utils.log)('Listening at ' + serverUrl + '/help/');
27
+
28
+ (0, _utils.log)(`Listening at ${serverUrl}/help/`);
31
29
  });
@@ -1,64 +1,63 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
- var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
3
+ var _express = _interopRequireDefault(require("express"));
4
4
 
5
- var _express = require('express');
5
+ var _gitlab = require("gitlab");
6
6
 
7
- var _express2 = _interopRequireDefault(_express);
7
+ var _esprima = _interopRequireDefault(require("esprima"));
8
8
 
9
- var _gitlab = require('gitlab');
10
-
11
- var _esprima = require('esprima');
12
-
13
- var _esprima2 = _interopRequireDefault(_esprima);
14
-
15
- var _utils = require('../utils');
9
+ var _utils = require("../utils");
16
10
 
17
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
12
 
19
- function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
20
-
21
- var options = (0, _utils.getOptions)();
22
- var server = options.impact.server;
23
-
24
- var serverUrl = (0, _utils.getServerURL)(server, 'htt' + 'p');
25
- var port = server.port;
26
-
27
-
28
- var services = new _gitlab.ProjectsBundle({
13
+ let options = (0, _utils.getOptions)();
14
+ let {
15
+ impact: {
16
+ server
17
+ }
18
+ } = options;
19
+ let serverUrl = (0, _utils.getServerURL)(server, 'htt' + 'p');
20
+ let {
21
+ port
22
+ } = server;
23
+ const services = new _gitlab.ProjectsBundle({
29
24
  url: 'https://git.csez.zohocorpin.com',
30
25
  token: 'n6aqQz3RfzqRGPyMTPy8'
31
26
  });
32
-
33
- var app = (0, _express2.default)();
34
-
35
- app.use(_express2.default.json());
36
- app.use(_express2.default.urlencoded({
27
+ let app = (0, _express.default)();
28
+ app.use(_express.default.json());
29
+ app.use(_express.default.urlencoded({
37
30
  extended: true
38
31
  }));
39
32
 
40
33
  function traverseJSON(parsed, file) {
41
- var parsedObj = {};
42
- parsed.forEach(function (Block) {
34
+ let parsedObj = {};
35
+ parsed.forEach(Block => {
43
36
  if (Block.type === 'FunctionDeclaration' || Block.type === 'ExportDefaultDeclaration' || Block.type === 'ExportNamedDeclaration') {
44
- var ParsedTemp = void 0;
37
+ let ParsedTemp;
38
+
45
39
  if (Block.type === 'FunctionDeclaration') {
46
40
  ParsedTemp = Block;
47
41
  } else {
48
42
  ParsedTemp = Block.declaration;
49
43
  }
44
+
50
45
  if (ParsedTemp) {
51
46
  if (ParsedTemp.id) {
52
- var funcname = ParsedTemp.id.name;
47
+ let funcname = ParsedTemp.id.name;
48
+
53
49
  if (funcname !== 'mapStateToProps') {
54
50
  if (!funcname.includes('_')) {
55
51
  if (!Object.prototype.hasOwnProperty.call(parsedObj, 'file')) {
56
52
  parsedObj[file] = {};
57
53
  }
58
- var tempArray = [];
59
- for (var j = ParsedTemp.loc.start.line; j < ParsedTemp.loc.end.line; j++) {
54
+
55
+ let tempArray = [];
56
+
57
+ for (let j = ParsedTemp.loc.start.line; j < ParsedTemp.loc.end.line; j++) {
60
58
  tempArray.push(j);
61
59
  }
60
+
62
61
  parsedObj[file][funcname] = tempArray;
63
62
  }
64
63
  }
@@ -68,44 +67,42 @@ function traverseJSON(parsed, file) {
68
67
  });
69
68
  return parsedObj;
70
69
  }
70
+
71
71
  function getDetails(url, callback) {
72
- var changeObj = {};
73
- var compObj = {};
74
- (0, _utils.request)({ url: url }).then(function (res) {
75
- var body = JSON.parse(res.body);
72
+ let changeObj = {};
73
+ let compObj = {};
74
+ (0, _utils.request)({
75
+ url
76
+ }).then(res => {
77
+ let body = JSON.parse(res.body);
78
+
76
79
  if (body.includes('Source_Changeset')) {
77
- var branch = void 0,
78
- changeSet = void 0;
80
+ let branch, changeSet;
79
81
  body = body.split('\n');
80
- body.forEach(function (content) {
82
+ body.forEach(content => {
81
83
  if (content.includes('Source_Changeset')) {
82
- var _content$split = content.split('='),
83
- _content$split2 = _slicedToArray(_content$split, 2),
84
- __changeSet = _content$split2[1];
85
-
84
+ let [, __changeSet] = content.split('=');
86
85
  changeSet = __changeSet;
87
86
  }
88
- if (content.includes('SourceCoLabel')) {
89
- var _content$split3 = content.split('='),
90
- _content$split4 = _slicedToArray(_content$split3, 1),
91
- __branch = _content$split4[0];
92
87
 
88
+ if (content.includes('SourceCoLabel')) {
89
+ let [__branch] = content.split('=');
93
90
  branch = __branch;
94
91
  }
95
92
  });
96
- services.Commits.diff(1143, changeSet
97
- //'587efd32ce14620750a38ab74bc744fc52f2943a '
98
- ).then(function (result) {
99
- var promises = [];
93
+ services.Commits.diff(1143, changeSet //'587efd32ce14620750a38ab74bc744fc52f2943a '
94
+ ).then(result => {
95
+ let promises = [];
96
+
100
97
  if (result) {
101
- result.forEach(function (change) {
102
- var p = new Promise(function (resolve) {
103
- var filename = change.new_path;
98
+ result.forEach(change => {
99
+ let p = new Promise(resolve => {
100
+ let filename = change.new_path;
104
101
  changeObj[filename] = [];
105
102
  compObj[filename] = [];
106
- var diffList = change.diff.split('\n');
107
- var tempObj = {};
108
- diffList.forEach(function (diff) {
103
+ let diffList = change.diff.split('\n');
104
+ let tempObj = {};
105
+ diffList.forEach(diff => {
109
106
  if (diff.indexOf('data-id') >= 0) {
110
107
  if (diff.indexOf('//') >= 0) {
111
108
  if (diff.substr(diff.indexOf('//') + 1).includes('data-id')) {
@@ -114,22 +111,27 @@ function getDetails(url, callback) {
114
111
  tempObj.changedId = null;
115
112
  }
116
113
  }
114
+
117
115
  if (!diff.indexOf('-')) {
118
116
  //eslint-disable-next-line
119
117
  tempObj.defaultId = diff.match(/(data-id=.*)/g)[0].match(/["']([^"']+?)['"]/g)[0];
120
- var tempIndex = diffList.indexOf(diff);
118
+ let tempIndex = diffList.indexOf(diff);
119
+
121
120
  if (diffList[tempIndex + 1].indexOf('data-id') === -1) {
122
121
  tempObj.changedId = null;
123
122
  }
124
123
  }
124
+
125
125
  if (!diff.indexOf('+')) {
126
126
  //eslint-disable-next-line
127
127
  tempObj.changedId = diff.match(/(data-id=.*)/g)[0].match(/["']([^"']+?)['"]/g)[0];
128
- var _tempIndex = diffList.indexOf(diff);
129
- if (diffList[_tempIndex - 1].indexOf('data-id') === -1) {
128
+ let tempIndex = diffList.indexOf(diff);
129
+
130
+ if (diffList[tempIndex - 1].indexOf('data-id') === -1) {
130
131
  tempObj.defaultId = null;
131
132
  }
132
133
  }
134
+
133
135
  if (Object.prototype.hasOwnProperty.call(tempObj, 'defaultId') && Object.prototype.hasOwnProperty.call(tempObj, 'changedId')) {
134
136
  if (tempObj.defaultId !== tempObj.changedId) {
135
137
  compObj[filename].push(tempObj);
@@ -137,34 +139,39 @@ function getDetails(url, callback) {
137
139
  }
138
140
  }
139
141
  }
142
+
140
143
  if (diff.startsWith('@')) {
141
- var _diff$split = diff.split('@@'),
142
- _diff$split2 = _slicedToArray(_diff$split, 2),
143
- content = _diff$split2[1];
144
+ let [, content] = diff.split('@@');
145
+ let tempList = content.split(' ');
146
+ let startingLine = parseInt(tempList[1].split(',')[0]) * -1 + 3;
147
+ let furtherLines = parseInt(tempList[2].split(',')[0]) + 3;
144
148
 
145
- var tempList = content.split(' ');
146
- var startingLine = parseInt(tempList[1].split(',')[0]) * -1 + 3;
147
- var furtherLines = parseInt(tempList[2].split(',')[0]) + 3;
148
149
  if (parseInt(tempList[1].split(',')[1]) > 6) {
149
150
  changeObj[filename].push(startingLine);
150
151
  }
152
+
151
153
  if (parseInt(tempList[2].split(',')[1]) > 6) {
152
- var endValue = parseInt(tempList[2].split(',')[1]) - 6;
153
- for (var i = furtherLines; i < furtherLines + endValue; i++) {
154
+ let endValue = parseInt(tempList[2].split(',')[1]) - 6;
155
+
156
+ for (let i = furtherLines; i < furtherLines + endValue; i++) {
154
157
  changeObj[filename].push(i);
155
158
  }
156
159
  }
157
160
  }
158
161
  });
162
+
159
163
  if (!filename.includes('.spec.js') && !filename.includes('.docs.js') && !filename.includes('.css') && filename.includes('.js')) {
160
164
  try {
161
- services.RepositoryFiles.show(1143, filename, branch).then(function (res) {
162
- var code = Buffer.from(res.content, 'base64').toString('ascii');
163
- var parsed = _esprima2.default.parseModule(code, {
165
+ services.RepositoryFiles.show(1143, filename, branch).then(res => {
166
+ let code = Buffer.from(res.content, 'base64').toString('ascii');
167
+
168
+ let parsed = _esprima.default.parseModule(code, {
164
169
  jsx: true,
165
170
  loc: true
166
171
  });
167
- var methodDetail = traverseJSON(parsed.body, filename);
172
+
173
+ let methodDetail = traverseJSON(parsed.body, filename);
174
+
168
175
  if (Object.keys(methodDetail).length) {
169
176
  resolve(methodDetail);
170
177
  } else {
@@ -180,33 +187,33 @@ function getDetails(url, callback) {
180
187
  });
181
188
  promises.push(p);
182
189
  });
183
- Promise.all(promises).then(function (resPromise) {
184
- callback(changeObj, Object.assign.apply(Object, [{}].concat(_toConsumableArray(resPromise))), compObj);
190
+ Promise.all(promises).then(resPromise => {
191
+ callback(changeObj, Object.assign({}, ...resPromise), compObj);
185
192
  });
186
193
  }
187
194
  });
188
195
  }
189
- }).catch(function (err) {
190
- return err;
191
- });
196
+ }).catch(err => err);
192
197
  }
193
198
 
194
- app.post('/impact/build', function (req, res) {
199
+ app.post('/impact/build', (req, res) => {
195
200
  req.setTimeout(0);
196
- var subUrl = '/logs/reactbuildinfo.txt';
197
- var build = req.body;
198
-
199
- var url = build.buildUrl.substr(0, build.buildUrl.lastIndexOf('/'));
201
+ let subUrl = '/logs/reactbuildinfo.txt';
202
+ let {
203
+ body: build
204
+ } = req;
205
+ let url = build.buildUrl.substr(0, build.buildUrl.lastIndexOf('/'));
200
206
  url = url + subUrl;
201
- getDetails(url, function (body, esprimaObj, componentObj, err) {
207
+ getDetails(url, (body, esprimaObj, componentObj, err) => {
202
208
  if (err) {
203
209
  return err;
204
210
  }
205
- var responseObj = {};
206
- Object.keys(esprimaObj).forEach(function (file) {
211
+
212
+ let responseObj = {};
213
+ Object.keys(esprimaObj).forEach(file => {
207
214
  responseObj[file] = [];
208
- body[file].forEach(function (changedLine) {
209
- Object.keys(esprimaObj[file]).forEach(function (method) {
215
+ body[file].forEach(changedLine => {
216
+ Object.keys(esprimaObj[file]).forEach(method => {
210
217
  if (esprimaObj[file][method].includes(changedLine)) {
211
218
  if (!responseObj[file].includes(method)) {
212
219
  responseObj[file].push(method);
@@ -214,12 +221,12 @@ app.post('/impact/build', function (req, res) {
214
221
  }
215
222
  });
216
223
  });
224
+
217
225
  if (!responseObj[file].length) {
218
226
  delete responseObj[file];
219
227
  }
220
228
  });
221
-
222
- var resObj = {
229
+ let resObj = {
223
230
  chnagedMethods: responseObj,
224
231
  changedLocators: componentObj
225
232
  };
@@ -227,11 +234,11 @@ app.post('/impact/build', function (req, res) {
227
234
  res.end();
228
235
  });
229
236
  });
230
-
231
- app.listen(port, function (err) {
237
+ app.listen(port, err => {
232
238
  if (err) {
233
239
  throw err;
234
240
  }
235
- (0, _utils.log)('Listening at ' + serverUrl + '/impact/build/');
241
+
242
+ (0, _utils.log)(`Listening at ${serverUrl}/impact/build/`);
236
243
  (0, _utils.log)('payload like => {buildUrl:test_build_url}');
237
244
  });