@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.
- package/.eslintignore +7 -7
- package/.eslintrc.js +183 -183
- package/CHANGELOG.md +5 -0
- package/README.md +636 -491
- package/bin/cli.js +372 -367
- package/files/eslintrc.js +57 -0
- package/files/prettierrc.js +3 -0
- package/lib/babel/cmjs-plugins-presets.js +16 -9
- package/lib/babel/es-plugins-presets.js +26 -14
- package/lib/common/getEntries.js +31 -22
- package/lib/common/getPublicPathConfig.js +27 -13
- package/lib/common/index.js +21 -25
- package/lib/common/splitChunks.js +62 -53
- package/lib/common/templateParameters.js +10 -8
- package/lib/configs/jest.config.js +15 -25
- package/lib/configs/webpack.component.umd.config.js +31 -37
- package/lib/configs/webpack.css.umd.config.js +44 -47
- package/lib/configs/webpack.dev.config.js +70 -52
- package/lib/configs/webpack.docs.config.js +106 -106
- package/lib/configs/webpack.prod.config.js +95 -75
- package/lib/hooks/docsProptypeHook.js +32 -38
- package/lib/jest/commitedFilesResult.js +103 -74
- package/lib/jest/coverageCollector.js +41 -21
- package/lib/jest/jsonMaker.js +15 -16
- package/lib/jest/preProcessors/cssPreprocessor.js +16 -18
- package/lib/jest/preProcessors/jsPreprocessor.js +3 -5
- package/lib/jest/preProcessors/otherFilesPreprocessor.js +5 -6
- package/lib/jest/result.js +90 -45
- package/lib/jest/run.js +43 -43
- package/lib/jest/setup.js +102 -95
- package/lib/loaderUtils/getCSSLoaders.js +21 -22
- package/lib/loaderUtils/getDevJsLoaders.js +25 -23
- package/lib/loaderUtils/index.js +11 -13
- package/lib/loaders/docsLoader.js +15 -15
- package/lib/loaders/docsPropsLoader.js +14 -17
- package/lib/loaders/fileLoader.js +33 -35
- package/lib/loaders/scriptInstrumentLoader.js +21 -20
- package/lib/loaders/workerLoader.js +136 -0
- package/lib/middlewares/HMRMiddleware.js +54 -45
- package/lib/middlewares/SSTMiddleware.js +8 -5
- package/lib/pluginUtils/getDevPlugins.js +114 -52
- package/lib/pluginUtils/getDocsPlugins.js +25 -29
- package/lib/pluginUtils/getLibraryPlugins.js +8 -10
- package/lib/pluginUtils/getProdPlugins.js +163 -74
- package/lib/pluginUtils/getServerPlugins.js +8 -11
- package/lib/pluginUtils/getUMDCSSPlugins.js +11 -15
- package/lib/pluginUtils/getUMDComponentPlugins.js +11 -15
- package/lib/pluginUtils/index.js +36 -43
- package/lib/plugins/CdnChangePlugin.js +63 -0
- package/lib/plugins/CleanupStatsPlugin.js +18 -32
- package/lib/plugins/CustomAttributePlugin.js +79 -0
- package/lib/plugins/CustomAttributePlugin.md +35 -0
- package/lib/plugins/EFCPlugin.js +185 -0
- package/lib/plugins/I18NInjectIntoIndexPlugin.js +118 -52
- package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +60 -0
- package/lib/plugins/I18nSplitPlugin/I18nDependency.js +44 -0
- package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +266 -0
- package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +183 -0
- package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +100 -0
- package/lib/plugins/I18nSplitPlugin/I18nSplit.md +86 -0
- package/lib/plugins/I18nSplitPlugin/README.md +25 -0
- package/lib/plugins/I18nSplitPlugin/index.js +185 -0
- package/lib/plugins/I18nSplitPlugin/utils/collectI18nKeys.js +64 -0
- package/lib/plugins/I18nSplitPlugin/utils/getI18nFileUrlPathTemplate.js +13 -0
- package/lib/plugins/I18nSplitPlugin/utils/getI18nKeysFormModules.js +26 -0
- package/lib/plugins/I18nSplitPlugin/utils/hashUtils.js +40 -0
- package/lib/plugins/I18nSplitPlugin/utils/index.js +31 -0
- package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +112 -0
- package/lib/plugins/ManifestPlugin.js +52 -63
- package/lib/plugins/ModuleStatsPlugin.js +83 -173
- package/lib/plugins/OptimizeJSPlugin.js +24 -41
- package/lib/plugins/PublicPathCallbackPlugin.js +42 -116
- package/lib/plugins/PublicPathChangePlugin.js +175 -284
- package/lib/plugins/ReportGeneratePlugin.js +150 -151
- package/lib/plugins/ResourceHintsPlugin.js +53 -35
- package/lib/plugins/ScriptInstrumentPlugin.js +22 -37
- package/lib/plugins/ServiceWorkerPlugin.js +81 -57
- package/lib/plugins/ShadowDOMSupportPlugin.js +153 -234
- package/lib/plugins/SourceMapHookPlugin.js +21 -33
- package/lib/plugins/TPHashMappingPlugin.js +67 -0
- package/lib/plugins/UglifyCSSPlugin.js +23 -30
- package/lib/plugins/UnusedFilesFindPlugin.js +137 -152
- package/lib/plugins/index.js +100 -91
- package/lib/plugins/webpackwatchrunplugin.js +18 -30
- package/lib/postcss-plugins/ExcludeRTLPlugin.js +14 -17
- package/lib/schemas/index.js +336 -81
- package/lib/servers/clusterHubServer.js +22 -26
- package/lib/servers/docsServer.js +3 -5
- package/lib/servers/docsServerCore.js +84 -91
- package/lib/servers/helpServer.js +19 -21
- package/lib/servers/impactServer.js +99 -92
- package/lib/servers/mockserver.js +24 -24
- package/lib/servers/scrServer.js +78 -98
- package/lib/servers/server.js +101 -122
- package/lib/servers/ssServer.js +63 -61
- package/lib/sh/pre-commit.sh +34 -34
- package/lib/sh/reportPublish.sh +45 -46
- package/lib/templates/CoverageScriptTemplate.js +45 -18
- package/lib/templates/WMSTemplate.js +17 -18
- package/lib/templates/linterConstant.js +6 -4
- package/lib/utils/babelPresets.js +12 -5
- package/lib/utils/buildstats.html +148 -148
- package/lib/utils/clean.js +12 -11
- package/lib/utils/copy.js +12 -34
- package/lib/utils/copyTimezones.js +9 -16
- package/lib/utils/createEventStream.js +24 -19
- package/lib/utils/cssClassNameGenerate.js +44 -73
- package/lib/utils/cssURLReplacer.js +60 -54
- package/lib/utils/dependencyPostPublish.js +20 -19
- package/lib/utils/fileUtils.js +66 -54
- package/lib/utils/folderIterator.js +20 -21
- package/lib/utils/getComponents.js +70 -27
- package/lib/utils/getCurrentBranch.js +11 -17
- package/lib/utils/getDependenciesImpactList.js +114 -187
- package/lib/utils/getHash.js +9 -13
- package/lib/utils/getIp.js +9 -9
- package/lib/utils/getOptions.js +26 -29
- package/lib/utils/getServerURL.js +19 -10
- package/lib/utils/index.js +147 -126
- package/lib/utils/init.js +2 -2
- package/lib/utils/initPreCommitHook.js +40 -32
- package/lib/utils/jsonHelper.js +37 -21
- package/lib/utils/lint/addScripts.js +27 -0
- package/lib/utils/lint/checkExistingConfig.js +67 -0
- package/lib/utils/lint/copyConfigs.js +24 -0
- package/lib/utils/lint/index.js +54 -0
- package/lib/utils/lint/lintScripts.js +11 -0
- package/lib/utils/lint/lintSetup.js +31 -0
- package/lib/utils/lint/lintStagedPreCommitHook.js +7 -0
- package/lib/utils/lint/question.js +30 -0
- package/lib/utils/lintReporter.js +70 -56
- package/lib/utils/mailSender.js +12 -27
- package/lib/utils/pullOrigin.js +21 -18
- package/lib/utils/reinstallDependencies.js +76 -85
- package/lib/utils/removeAttributes.js +25 -23
- package/lib/utils/repoClone.js +47 -45
- package/lib/utils/request.js +64 -77
- package/lib/utils/resultSchema.json +73 -73
- package/lib/utils/rtl.js +22 -29
- package/lib/utils/setEnvVariables.js +5 -6
- package/lib/utils/ssTestHack.js +21 -19
- package/lib/utils/switchBranch.js +21 -20
- package/lib/utils/urlConcat.js +22 -0
- package/package.json +141 -136
- package/templates/app/.eslintrc.js +140 -140
- package/templates/app/README.md +12 -12
- package/templates/app/app/index.html +24 -24
- package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
- package/templates/app/app/properties/i18nkeys.json +3 -3
- package/templates/app/docs/all.html +69 -69
- package/templates/app/mockapi/index.js +18 -18
- package/templates/app/package.json +37 -37
- package/templates/app/src/actions/SampleActions/index.js +37 -37
- package/templates/app/src/actions/index.js +65 -65
- package/templates/app/src/appUrls.js +19 -19
- package/templates/app/src/components/Alert/Alert.js +134 -134
- package/templates/app/src/components/Alert/Alert.module.css +79 -79
- package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
- package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
- package/templates/app/src/components/Sample/Sample.module.css +11 -11
- package/templates/app/src/components/Sample/SampleList.js +61 -61
- package/templates/app/src/components/Slider/Slider.css +41 -41
- package/templates/app/src/components/Slider/Slider.js +55 -55
- package/templates/app/src/containers/AlertContainer/index.js +15 -15
- package/templates/app/src/containers/AppContainer/index.js +96 -96
- package/templates/app/src/containers/AppContainer/index.module.css +27 -27
- package/templates/app/src/containers/CustomMatch/index.js +65 -65
- package/templates/app/src/containers/DevTools/index.js +10 -10
- package/templates/app/src/containers/Header/index.js +67 -67
- package/templates/app/src/containers/Header/index.module.css +43 -43
- package/templates/app/src/containers/Redirect/index.js +63 -63
- package/templates/app/src/containers/Redirector/index.js +47 -47
- package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
- package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
- package/templates/app/src/historyChange.js +5 -5
- package/templates/app/src/index.html +10 -10
- package/templates/app/src/index.js +24 -24
- package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
- package/templates/app/src/reducers/alertData.js +11 -11
- package/templates/app/src/reducers/index.js +6 -6
- package/templates/app/src/reducers/samples.js +19 -19
- package/templates/app/src/store/configureStore.dev.js +51 -51
- package/templates/app/src/store/configureStore.js +5 -5
- package/templates/app/src/store/configureStore.prod.js +26 -26
- package/templates/app/src/util/Common.js +5 -5
- package/templates/app/src/util/RequestAPI.js +132 -132
- package/templates/docs/all.html +249 -249
- package/templates/docs/component.html +178 -178
- package/templates/docs/components.html +221 -221
- package/templates/docs/css/b.min.css +6 -6
- package/templates/docs/css/component.css +42 -42
- package/templates/docs/css/componentTest.css +6 -6
- package/templates/docs/css/hopscotch.css +585 -585
- package/templates/docs/css/style.css +1022 -1022
- package/templates/docs/index.html +1493 -1493
- package/templates/docs/js/active-line.js +72 -72
- package/templates/docs/js/b.min.js +7 -7
- package/templates/docs/js/codemirror.js +9680 -9680
- package/templates/docs/js/designTokens.js +334 -334
- package/templates/docs/js/j.min.js +4 -4
- package/templates/docs/js/javascript.js +874 -874
- package/templates/docs/js/matchbrackets.js +145 -145
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
-
var _express = require(
|
|
3
|
+
var _express = _interopRequireDefault(require("express"));
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _path = _interopRequireDefault(require("path"));
|
|
8
8
|
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
var _path = require('path');
|
|
12
|
-
|
|
13
|
-
var _path2 = _interopRequireDefault(_path);
|
|
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
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
13
|
+
let options = (0, _utils.getOptions)();
|
|
14
|
+
let {
|
|
15
|
+
app: {
|
|
16
|
+
server: {
|
|
17
|
+
mockPort
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
} = options;
|
|
21
|
+
const app = (0, _express.default)();
|
|
22
|
+
app.use(_express.default.json());
|
|
23
|
+
app.use(_express.default.urlencoded({
|
|
26
24
|
extended: true
|
|
27
25
|
}));
|
|
26
|
+
let appPath = process.cwd();
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
let mockServerPath = _path.default.join(appPath, 'mockapi', 'index.js');
|
|
29
|
+
|
|
30
|
+
if (_fs.default.existsSync(mockServerPath)) {
|
|
31
|
+
let mockServer = require(mockServerPath);
|
|
31
32
|
|
|
32
|
-
if (_fs2.default.existsSync(mockServerPath)) {
|
|
33
|
-
var mockServer = require(mockServerPath);
|
|
34
33
|
mockServer(app);
|
|
35
34
|
} else {
|
|
36
35
|
(0, _utils.log)('You must export a function from mockapi folder by only we can provide mock api hook');
|
|
37
36
|
}
|
|
38
|
-
|
|
37
|
+
|
|
38
|
+
app.listen(mockPort, err => {
|
|
39
39
|
if (err) {
|
|
40
40
|
(0, _utils.log)('error', err);
|
|
41
41
|
} else {
|
|
42
|
-
(0, _utils.log)(
|
|
42
|
+
(0, _utils.log)(`mock server listening port: ${mockPort}`);
|
|
43
43
|
}
|
|
44
44
|
});
|
package/lib/servers/scrServer.js
CHANGED
|
@@ -1,107 +1,97 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _screenshotTest = _interopRequireDefault(require("@zohodesk/screenshot-test"));
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _jsonHelper = require("../utils/jsonHelper");
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _child_process = require("child_process");
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _utils = require("../utils");
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _docsServerCore = _interopRequireDefault(require("./docsServerCore"));
|
|
12
12
|
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
var _docsServerCore = require('./docsServerCore');
|
|
16
|
-
|
|
17
|
-
var _docsServerCore2 = _interopRequireDefault(_docsServerCore);
|
|
18
|
-
|
|
19
|
-
var _SSTMiddleware = require('../middlewares/SSTMiddleware');
|
|
20
|
-
|
|
21
|
-
var _SSTMiddleware2 = _interopRequireDefault(_SSTMiddleware);
|
|
13
|
+
var _SSTMiddleware = _interopRequireDefault(require("../middlewares/SSTMiddleware"));
|
|
22
14
|
|
|
23
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
24
16
|
|
|
25
17
|
//Getting variables from flag and exe
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
seleniumHub
|
|
31
|
-
referBranch
|
|
32
|
-
currentBranch
|
|
33
|
-
enableImage
|
|
34
|
-
pathToSubProjects
|
|
35
|
-
isImpactRun
|
|
36
|
-
isStore
|
|
37
|
-
dbURL
|
|
38
|
-
tableName
|
|
39
|
-
serviceName
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
18
|
+
let cwd = process.cwd();
|
|
19
|
+
let options = (0, _utils.getOptions)();
|
|
20
|
+
let {
|
|
21
|
+
ssTest: {
|
|
22
|
+
seleniumHub,
|
|
23
|
+
referBranch,
|
|
24
|
+
currentBranch,
|
|
25
|
+
enableImage,
|
|
26
|
+
pathToSubProjects,
|
|
27
|
+
isImpactRun,
|
|
28
|
+
isStore,
|
|
29
|
+
dbURL,
|
|
30
|
+
tableName,
|
|
31
|
+
serviceName,
|
|
32
|
+
tokenGit
|
|
33
|
+
},
|
|
34
|
+
docs: {
|
|
35
|
+
server
|
|
36
|
+
}
|
|
37
|
+
} = options;
|
|
38
|
+
let resultFileName = `${cwd}/result.json`;
|
|
39
|
+
let docsServerInstance; // let impactedComponentList = null;
|
|
40
|
+
|
|
41
|
+
let url = (0, _utils.getServerURL)(Object.assign(server, {
|
|
42
|
+
host: server.iphost
|
|
43
|
+
}), 'ht' + 'tp');
|
|
44
|
+
let commitID = (0, _child_process.execSync)('git log --first-parent --pretty="format:%H" --max-count 2', {
|
|
47
45
|
cwd: cwd
|
|
48
46
|
}).toString() || '';
|
|
49
|
-
|
|
50
|
-
var
|
|
51
|
-
_commitID$split2 = _slicedToArray(_commitID$split, 2),
|
|
52
|
-
latestCommitHash = _commitID$split2[0],
|
|
53
|
-
lastCommitHash = _commitID$split2[1];
|
|
54
|
-
|
|
55
|
-
var script = 'var Objlist = {};for (i in componentList) {try { if (componentList[i].prototype.isReactComponent) Objlist[i] = componentList[i].docs.componentGroup;}catch (err) {console.log(i, err);}};if (Object.keys(Objlist).length < 5) {Objlist = false;}return Objlist;';
|
|
56
|
-
|
|
57
|
-
// Variable getting part end //
|
|
47
|
+
let [latestCommitHash, lastCommitHash] = commitID.split('\n');
|
|
48
|
+
let script = 'var Objlist = {};for (i in componentList) {try { if (componentList[i].prototype.isReactComponent) Objlist[i] = componentList[i].docs.componentGroup;}catch (err) {console.log(i, err);}};if (Object.keys(Objlist).length < 5) {Objlist = false;}return Objlist;'; // Variable getting part end //
|
|
58
49
|
|
|
59
50
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.compareBranch', referBranch);
|
|
60
51
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.TestBranch', currentBranch);
|
|
61
52
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.isExecuted', true);
|
|
53
|
+
(0, _utils.log)('Test Branch Name :- ', currentBranch); // function declaration part //
|
|
62
54
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
// function declaration part //
|
|
66
|
-
|
|
67
|
-
var closeServer = function closeServer(serverInstance) {
|
|
55
|
+
let closeServer = serverInstance => {
|
|
68
56
|
(0, _utils.log)('Docs service stopped!');
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
57
|
+
let {
|
|
58
|
+
http,
|
|
59
|
+
https,
|
|
60
|
+
wdm
|
|
61
|
+
} = serverInstance;
|
|
73
62
|
http.close();
|
|
74
63
|
https.close();
|
|
75
64
|
wdm.close();
|
|
76
|
-
};
|
|
65
|
+
}; //eslint-disable-next-line
|
|
66
|
+
|
|
77
67
|
|
|
78
|
-
|
|
79
|
-
var afterFirstScreenShotCollected = function afterFirstScreenShotCollected() {
|
|
68
|
+
let afterFirstScreenShotCollected = () => {
|
|
80
69
|
closeServer(docsServerInstance);
|
|
81
|
-
(0, _utils.switchBranch)('git', referBranch).then(
|
|
70
|
+
(0, _utils.switchBranch)('git', referBranch).then(() => {
|
|
82
71
|
(0, _utils.log)('Reference Branch Name :- ', (0, _utils.getCurrentBranch)());
|
|
83
|
-
(0, _utils.reinstallDependencies)(pathToSubProjects).then(
|
|
72
|
+
(0, _utils.reinstallDependencies)(pathToSubProjects).then(() => {
|
|
84
73
|
(0, _utils.ssTestHack)();
|
|
85
74
|
});
|
|
86
75
|
});
|
|
87
76
|
};
|
|
88
77
|
|
|
89
|
-
|
|
78
|
+
let onSStestEnd = (status, resultObject, message) => {
|
|
90
79
|
if (status) {
|
|
91
80
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.endTime', Date.now());
|
|
92
81
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.isPassed', true);
|
|
93
82
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.result', resultObject);
|
|
94
|
-
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.message',
|
|
83
|
+
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.message', message);
|
|
95
84
|
(0, _jsonHelper.setTestInfoStatus)(resultFileName, true);
|
|
96
|
-
(0, _utils.log)('Screenshot test completed successfully.'
|
|
85
|
+
(0, _utils.log)(message); //'Screenshot test completed successfully.'
|
|
86
|
+
|
|
97
87
|
closeServer(docsServerInstance);
|
|
98
88
|
} else {
|
|
99
89
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.isPassed', false);
|
|
100
|
-
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.message',
|
|
90
|
+
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.message', message);
|
|
101
91
|
(0, _jsonHelper.setTestInfoStatus)(resultFileName, false);
|
|
102
92
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'testInfo.failures', {
|
|
103
93
|
type: 'screenshotTest',
|
|
104
|
-
message
|
|
94
|
+
message
|
|
105
95
|
});
|
|
106
96
|
closeServer(docsServerInstance);
|
|
107
97
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.endTime', Date.now());
|
|
@@ -109,56 +99,46 @@ var onSStestEnd = function onSStestEnd(status, resultObject) {
|
|
|
109
99
|
}
|
|
110
100
|
};
|
|
111
101
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
beforeJobs();
|
|
116
|
-
}
|
|
117
|
-
return (0, _docsServerCore2.default)(true);
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
var run = function run() {
|
|
121
|
-
var listOfComponents = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
122
|
-
var configObject = arguments[1];
|
|
123
|
-
|
|
124
|
-
docsServerInstance = (0, _docsServerCore2.default)(true);
|
|
125
|
-
docsServerInstance.app.use((0, _SSTMiddleware2.default)(docsServerInstance.compiler, function (mData) {
|
|
102
|
+
let run = (listOfComponents = [], configObject) => {
|
|
103
|
+
docsServerInstance = (0, _docsServerCore.default)(true);
|
|
104
|
+
docsServerInstance.app.use((0, _SSTMiddleware.default)(docsServerInstance.compiler, mData => {
|
|
126
105
|
if (isImpactRun) {
|
|
127
|
-
|
|
128
|
-
configObject.impactedComponentList = impactedComponentList;
|
|
106
|
+
let finalResultObject = (0, _utils.getComponents)(mData, listOfComponents);
|
|
107
|
+
configObject.impactedComponentList = finalResultObject.impactedComponentList;
|
|
108
|
+
configObject.unDocsComList = finalResultObject.unDocsComList;
|
|
129
109
|
}
|
|
130
|
-
|
|
131
|
-
|
|
110
|
+
|
|
111
|
+
_screenshotTest.default.run(configObject, (status, finalObj, message) => {
|
|
112
|
+
onSStestEnd(status, finalObj, message);
|
|
132
113
|
});
|
|
133
114
|
}));
|
|
134
115
|
};
|
|
135
116
|
|
|
136
117
|
(0, _jsonHelper.jsonHelper)(resultFileName, 'tests.screenshotTest.startTime', Date.now());
|
|
137
|
-
|
|
138
118
|
(0, _utils.ssTestHack)();
|
|
139
|
-
|
|
140
|
-
currentBranch
|
|
141
|
-
referBranch
|
|
142
|
-
latestCommitHash
|
|
143
|
-
lastCommitHash
|
|
144
|
-
seleniumHub
|
|
145
|
-
url: url
|
|
119
|
+
let scrObject = {
|
|
120
|
+
currentBranch,
|
|
121
|
+
referBranch,
|
|
122
|
+
latestCommitHash,
|
|
123
|
+
lastCommitHash,
|
|
124
|
+
seleniumHub,
|
|
125
|
+
url: `${url}/docs/components.html`,
|
|
146
126
|
browser: 'chrome',
|
|
147
|
-
enableImage
|
|
148
|
-
dbURL
|
|
149
|
-
isImpactRun
|
|
150
|
-
isStore
|
|
151
|
-
script
|
|
152
|
-
tableName
|
|
127
|
+
enableImage,
|
|
128
|
+
dbURL,
|
|
129
|
+
isImpactRun,
|
|
130
|
+
isStore,
|
|
131
|
+
script,
|
|
132
|
+
tableName
|
|
153
133
|
};
|
|
154
134
|
|
|
155
135
|
if (isImpactRun) {
|
|
156
136
|
if (!isStore) {
|
|
157
|
-
(0, _utils.getDependenciesImpactList)(currentBranch, referBranch, serviceName).then(
|
|
137
|
+
(0, _utils.getDependenciesImpactList)(currentBranch, referBranch, tokenGit, serviceName).then(impactedList => {
|
|
158
138
|
run(impactedList, scrObject);
|
|
159
139
|
});
|
|
160
140
|
} else {
|
|
161
|
-
(0, _utils.getDependenciesImpactList)(latestCommitHash, lastCommitHash, serviceName).then(
|
|
141
|
+
(0, _utils.getDependenciesImpactList)(latestCommitHash, lastCommitHash, tokenGit, serviceName).then(impactedList => {
|
|
162
142
|
run(impactedList, scrObject);
|
|
163
143
|
});
|
|
164
144
|
}
|
package/lib/servers/server.js
CHANGED
|
@@ -1,136 +1,117 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
-
var _fs = require(
|
|
3
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _path = _interopRequireDefault(require("path"));
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _https = _interopRequireDefault(require("https"));
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _webpack = _interopRequireDefault(require("webpack"));
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _express = _interopRequireDefault(require("express"));
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _ws = _interopRequireDefault(require("ws"));
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _compression = _interopRequireDefault(require("compression"));
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _webpackDevMiddleware = _interopRequireDefault(require("webpack-dev-middleware"));
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _httpProxyMiddleware = require("http-proxy-middleware");
|
|
20
20
|
|
|
21
|
-
var
|
|
21
|
+
var _HMRMiddleware = _interopRequireDefault(require("../middlewares/HMRMiddleware"));
|
|
22
22
|
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
var _ws2 = _interopRequireDefault(_ws);
|
|
26
|
-
|
|
27
|
-
var _compression = require('compression');
|
|
28
|
-
|
|
29
|
-
var _compression2 = _interopRequireDefault(_compression);
|
|
30
|
-
|
|
31
|
-
var _webpackDevMiddleware = require('webpack-dev-middleware');
|
|
32
|
-
|
|
33
|
-
var _webpackDevMiddleware2 = _interopRequireDefault(_webpackDevMiddleware);
|
|
34
|
-
|
|
35
|
-
var _httpProxyMiddleware = require('http-proxy-middleware');
|
|
36
|
-
|
|
37
|
-
var _httpProxyMiddleware2 = _interopRequireDefault(_httpProxyMiddleware);
|
|
38
|
-
|
|
39
|
-
var _HMRMiddleware = require('../middlewares/HMRMiddleware');
|
|
40
|
-
|
|
41
|
-
var _HMRMiddleware2 = _interopRequireDefault(_HMRMiddleware);
|
|
42
|
-
|
|
43
|
-
var _utils = require('../utils');
|
|
23
|
+
var _utils = require("../utils");
|
|
44
24
|
|
|
45
25
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
46
26
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
27
|
+
let options = (0, _utils.getOptions)();
|
|
28
|
+
let {
|
|
29
|
+
app: {
|
|
30
|
+
context,
|
|
31
|
+
server
|
|
32
|
+
}
|
|
33
|
+
} = options;
|
|
34
|
+
let {
|
|
35
|
+
host,
|
|
36
|
+
port,
|
|
37
|
+
domain,
|
|
38
|
+
mode,
|
|
39
|
+
disableContextURL,
|
|
40
|
+
hasMock,
|
|
41
|
+
mockPort
|
|
42
|
+
} = server;
|
|
43
|
+
let isCompatableHttp2 = Number(process.version.substr(1).split('.')[0]) >= 8;
|
|
44
|
+
let contextURL = disableContextURL ? '' : `/${context}`;
|
|
45
|
+
let serverUrl = (0, _utils.getServerURL)(server, 'htt' + 'ps');
|
|
46
|
+
const app = (0, _express.default)();
|
|
66
47
|
|
|
67
48
|
if (hasMock) {
|
|
68
|
-
app.use('/api', (0,
|
|
49
|
+
app.use('/api', (0, _httpProxyMiddleware.createProxyMiddleware)({
|
|
50
|
+
target: 'ht' + `tp://localhost:${mockPort}`,
|
|
51
|
+
changeOrigin: true
|
|
52
|
+
}));
|
|
69
53
|
}
|
|
70
54
|
|
|
71
|
-
app.use(
|
|
72
|
-
app.use(
|
|
55
|
+
app.use(_express.default.json());
|
|
56
|
+
app.use(_express.default.urlencoded({
|
|
73
57
|
extended: true
|
|
74
58
|
}));
|
|
59
|
+
let config;
|
|
75
60
|
|
|
76
|
-
var config = void 0;
|
|
77
61
|
if (mode === 'prod') {
|
|
78
62
|
config = require('../configs/webpack.prod.config');
|
|
79
|
-
app.use((0,
|
|
63
|
+
app.use((0, _compression.default)());
|
|
80
64
|
} else if (mode === 'dev' || mode === 'dev-no-warn') {
|
|
81
65
|
config = require('../configs/webpack.dev.config');
|
|
82
66
|
} else {
|
|
83
67
|
throw new Error('You must configure valid option in mode');
|
|
84
68
|
}
|
|
85
69
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
app.use((0, _webpackDevMiddleware2.default)(compiler, {
|
|
70
|
+
let compiler = (0, _webpack.default)(config);
|
|
71
|
+
app.use((0, _webpackDevMiddleware.default)(compiler, {
|
|
89
72
|
logLevel: 'error',
|
|
90
|
-
publicPath: mode === 'prod' ? contextURL === '' ? serverUrl
|
|
91
|
-
headers: {
|
|
73
|
+
publicPath: mode === 'prod' ? contextURL === '' ? `${serverUrl}/${contextURL}` : serverUrl + contextURL : config.output.publicPath,
|
|
74
|
+
headers: {
|
|
75
|
+
'Access-Control-Allow-Origin': '*'
|
|
76
|
+
},
|
|
92
77
|
compress: mode === 'prod'
|
|
93
78
|
}));
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
app.use(
|
|
79
|
+
app.use((0, _HMRMiddleware.default)(compiler, {
|
|
80
|
+
path: '/sockjs-node/info'
|
|
81
|
+
}));
|
|
82
|
+
app.use((req, res, next) => {
|
|
98
83
|
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
99
84
|
next();
|
|
100
|
-
}).use(contextURL
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
res.sendFile(_path2.default.join(__dirname, '..', '..', 'templates', 'wms', 'index.html'));
|
|
85
|
+
}).use(`${contextURL}/fonts`, _express.default.static(`${context}/fonts`));
|
|
86
|
+
app.use('/wms/*', (req, res) => {
|
|
87
|
+
res.sendFile(_path.default.join(__dirname, '..', '..', 'templates', 'wms', 'index.html'));
|
|
104
88
|
});
|
|
105
89
|
|
|
106
|
-
|
|
107
|
-
key:
|
|
108
|
-
cert:
|
|
90
|
+
const httpsServer = _https.default.createServer({
|
|
91
|
+
key: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/key.pem')),
|
|
92
|
+
cert: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/cert.pem')),
|
|
109
93
|
passphrase: '9i1pqink!k11'
|
|
110
94
|
}, app);
|
|
111
95
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
96
|
+
const wss = new _ws.default.Server({
|
|
97
|
+
server: httpsServer
|
|
98
|
+
});
|
|
99
|
+
let wsPool = [];
|
|
100
|
+
wss.on('connection', ws => {
|
|
116
101
|
wsPool.push(ws);
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
wsPool = wsPool.filter(function (ws1) {
|
|
120
|
-
return ws1 !== ws;
|
|
121
|
-
});
|
|
102
|
+
ws.on('close', () => {
|
|
103
|
+
wsPool = wsPool.filter(ws1 => ws1 !== ws);
|
|
122
104
|
});
|
|
123
|
-
|
|
124
|
-
ws.on('message', function (message) {
|
|
105
|
+
ws.on('message', message => {
|
|
125
106
|
(0, _utils.log)('received: %s', message);
|
|
126
107
|
});
|
|
127
|
-
|
|
128
108
|
ws.send('something');
|
|
129
109
|
});
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
110
|
+
app.post('/wmsmockapi', (req, res) => {
|
|
111
|
+
wsPool.forEach(ws => {
|
|
112
|
+
let {
|
|
113
|
+
body
|
|
114
|
+
} = req;
|
|
134
115
|
|
|
135
116
|
try {
|
|
136
117
|
ws.send(JSON.stringify(body));
|
|
@@ -138,75 +119,73 @@ app.post('/wmsmockapi', function (req, res) {
|
|
|
138
119
|
(0, _utils.log)(e, body);
|
|
139
120
|
}
|
|
140
121
|
});
|
|
141
|
-
|
|
142
122
|
res.send('success');
|
|
143
123
|
});
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
compiler.hooks.afterCompile.tap('ReactCLI', function (compilation) {
|
|
124
|
+
let webpackCompilation;
|
|
125
|
+
compiler.hooks.afterCompile.tap('ReactCLI', compilation => {
|
|
147
126
|
webpackCompilation = compilation;
|
|
148
127
|
});
|
|
149
128
|
|
|
150
129
|
if (contextURL) {
|
|
151
|
-
app.use(contextURL,
|
|
152
|
-
app.use(contextURL
|
|
153
|
-
|
|
130
|
+
app.use(contextURL, _express.default.static(context));
|
|
131
|
+
app.use(`${contextURL}/*`, (req, res) => {
|
|
132
|
+
let indexHtml = webpackCompilation.assets['index.html'];
|
|
154
133
|
res.send(indexHtml && indexHtml.source());
|
|
155
134
|
});
|
|
156
135
|
} else {
|
|
157
|
-
app.use(
|
|
158
|
-
app.use('/*',
|
|
136
|
+
app.use(_express.default.static(context));
|
|
137
|
+
app.use('/*', _express.default.static(context));
|
|
159
138
|
}
|
|
160
139
|
|
|
161
|
-
httpsServer.listen(port,
|
|
140
|
+
httpsServer.listen(port, err => {
|
|
162
141
|
if (err) {
|
|
163
142
|
throw err;
|
|
164
143
|
}
|
|
165
|
-
|
|
144
|
+
|
|
145
|
+
(0, _utils.log)(`Listening at ${serverUrl}${contextURL}/`);
|
|
166
146
|
});
|
|
167
147
|
|
|
168
148
|
if (isCompatableHttp2) {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
149
|
+
const http2 = require('http2');
|
|
150
|
+
|
|
151
|
+
const http2Server = http2.createSecureServer({
|
|
152
|
+
key: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/key.pem')),
|
|
153
|
+
cert: _fs.default.readFileSync(_path.default.join(__dirname, '../../cert/cert.pem')),
|
|
173
154
|
passphrase: '9i1pqink!k11'
|
|
174
|
-
});
|
|
155
|
+
}); //eslint-disable-next-line
|
|
175
156
|
|
|
176
|
-
|
|
177
|
-
http2Server.on('stream', function (stream, headers) {
|
|
157
|
+
http2Server.on('stream', (stream, headers) => {
|
|
178
158
|
stream.respond({
|
|
179
159
|
'content-type': 'text/html',
|
|
180
160
|
':status': 200
|
|
181
161
|
});
|
|
182
162
|
stream.end('<h1>Hello World! <br>Working with http2</h1>');
|
|
183
163
|
});
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
http2Server.listen(http2Port, function (err) {
|
|
164
|
+
let http2Port = Number(port) + 1;
|
|
165
|
+
http2Server.listen(http2Port, err => {
|
|
188
166
|
if (err) {
|
|
189
167
|
throw err;
|
|
190
168
|
}
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
169
|
+
|
|
170
|
+
(0, _utils.log)(`Listening at ${(0, _utils.getServerURL)({
|
|
171
|
+
host,
|
|
172
|
+
domain,
|
|
194
173
|
port: http2Port
|
|
195
|
-
}, 'htt' + 'ps')
|
|
174
|
+
}, 'htt' + 'ps')}${contextURL}/`, 'http2 server');
|
|
196
175
|
});
|
|
197
176
|
} else {
|
|
198
|
-
(0, _utils.log)(
|
|
177
|
+
(0, _utils.log)("Your node version didn't adopted http2 support. Kindly update that to 8 LTS or above you can engage the http2");
|
|
199
178
|
}
|
|
200
179
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
app.listen(httpPort, function (err) {
|
|
180
|
+
let httpPort = Number(port) + (isCompatableHttp2 ? 2 : 1);
|
|
181
|
+
app.listen(httpPort, err => {
|
|
204
182
|
if (err) {
|
|
205
183
|
throw err;
|
|
206
184
|
}
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
185
|
+
|
|
186
|
+
(0, _utils.log)(`Listening at ${(0, _utils.getServerURL)({
|
|
187
|
+
host,
|
|
188
|
+
domain,
|
|
210
189
|
port: httpPort
|
|
211
|
-
}, 'ht' + 'tp')
|
|
190
|
+
}, 'ht' + 'tp')}${contextURL}/`);
|
|
212
191
|
});
|