@zohodesk/react-cli 0.0.1-beta.98 → 0.0.1-betaa.138.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +149 -0
  3. package/bin/cli.js +34 -29
  4. package/files/eslintrc.js +57 -0
  5. package/files/prettierrc.js +3 -0
  6. package/lib/babel/cmjs-plugins-presets.js +16 -9
  7. package/lib/babel/es-plugins-presets.js +26 -14
  8. package/lib/common/getEntries.js +31 -22
  9. package/lib/common/getPublicPathConfig.js +27 -13
  10. package/lib/common/index.js +21 -25
  11. package/lib/common/splitChunks.js +62 -53
  12. package/lib/common/templateParameters.js +10 -8
  13. package/lib/configs/jest.config.js +15 -25
  14. package/lib/configs/webpack.component.umd.config.js +31 -37
  15. package/lib/configs/webpack.css.umd.config.js +44 -47
  16. package/lib/configs/webpack.dev.config.js +70 -52
  17. package/lib/configs/webpack.docs.config.js +106 -106
  18. package/lib/configs/webpack.prod.config.js +95 -75
  19. package/lib/hooks/docsProptypeHook.js +32 -38
  20. package/lib/jest/commitedFilesResult.js +103 -74
  21. package/lib/jest/coverageCollector.js +41 -21
  22. package/lib/jest/jsonMaker.js +15 -16
  23. package/lib/jest/preProcessors/cssPreprocessor.js +16 -18
  24. package/lib/jest/preProcessors/jsPreprocessor.js +3 -5
  25. package/lib/jest/preProcessors/otherFilesPreprocessor.js +5 -6
  26. package/lib/jest/result.js +90 -45
  27. package/lib/jest/run.js +43 -43
  28. package/lib/jest/setup.js +102 -95
  29. package/lib/loaderUtils/getCSSLoaders.js +21 -22
  30. package/lib/loaderUtils/getDevJsLoaders.js +25 -23
  31. package/lib/loaderUtils/index.js +11 -13
  32. package/lib/loaders/docsLoader.js +15 -15
  33. package/lib/loaders/docsPropsLoader.js +14 -17
  34. package/lib/loaders/fileLoader.js +33 -35
  35. package/lib/loaders/scriptInstrumentLoader.js +21 -20
  36. package/lib/loaders/workerLoader.js +136 -0
  37. package/lib/middlewares/HMRMiddleware.js +54 -45
  38. package/lib/middlewares/SSTMiddleware.js +8 -5
  39. package/lib/pluginUtils/getDevPlugins.js +114 -52
  40. package/lib/pluginUtils/getDocsPlugins.js +25 -29
  41. package/lib/pluginUtils/getLibraryPlugins.js +8 -10
  42. package/lib/pluginUtils/getProdPlugins.js +163 -74
  43. package/lib/pluginUtils/getServerPlugins.js +8 -11
  44. package/lib/pluginUtils/getUMDCSSPlugins.js +11 -15
  45. package/lib/pluginUtils/getUMDComponentPlugins.js +11 -15
  46. package/lib/pluginUtils/index.js +36 -43
  47. package/lib/plugins/CdnChangePlugin.js +63 -0
  48. package/lib/plugins/CleanupStatsPlugin.js +18 -32
  49. package/lib/plugins/CustomAttributePlugin.js +79 -0
  50. package/lib/plugins/CustomAttributePlugin.md +35 -0
  51. package/lib/plugins/EFCPlugin.js +185 -0
  52. package/lib/plugins/I18NInjectIntoIndexPlugin.js +118 -52
  53. package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +60 -0
  54. package/lib/plugins/I18nSplitPlugin/I18nDependency.js +44 -0
  55. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +266 -0
  56. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +183 -0
  57. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +100 -0
  58. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +86 -0
  59. package/lib/plugins/I18nSplitPlugin/README.md +25 -0
  60. package/lib/plugins/I18nSplitPlugin/index.js +185 -0
  61. package/lib/plugins/I18nSplitPlugin/utils/collectI18nKeys.js +64 -0
  62. package/lib/plugins/I18nSplitPlugin/utils/getI18nFileUrlPathTemplate.js +13 -0
  63. package/lib/plugins/I18nSplitPlugin/utils/getI18nKeysFormModules.js +26 -0
  64. package/lib/plugins/I18nSplitPlugin/utils/hashUtils.js +40 -0
  65. package/lib/plugins/I18nSplitPlugin/utils/index.js +31 -0
  66. package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +112 -0
  67. package/lib/plugins/ManifestPlugin.js +52 -63
  68. package/lib/plugins/ModuleStatsPlugin.js +83 -173
  69. package/lib/plugins/OptimizeJSPlugin.js +24 -41
  70. package/lib/plugins/PublicPathCallbackPlugin.js +42 -116
  71. package/lib/plugins/PublicPathChangePlugin.js +175 -284
  72. package/lib/plugins/ReportGeneratePlugin.js +150 -151
  73. package/lib/plugins/ResourceHintsPlugin.js +53 -35
  74. package/lib/plugins/ScriptInstrumentPlugin.js +22 -37
  75. package/lib/plugins/ServiceWorkerPlugin.js +81 -57
  76. package/lib/plugins/ShadowDOMSupportPlugin.js +153 -234
  77. package/lib/plugins/SourceMapHookPlugin.js +21 -33
  78. package/lib/plugins/TPHashMappingPlugin.js +67 -0
  79. package/lib/plugins/UglifyCSSPlugin.js +23 -30
  80. package/lib/plugins/UnusedFilesFindPlugin.js +137 -152
  81. package/lib/plugins/index.js +100 -91
  82. package/lib/plugins/webpackwatchrunplugin.js +18 -30
  83. package/lib/postcss-plugins/ExcludeRTLPlugin.js +14 -17
  84. package/lib/schemas/index.js +336 -81
  85. package/lib/servers/clusterHubServer.js +22 -26
  86. package/lib/servers/docsServer.js +3 -5
  87. package/lib/servers/docsServerCore.js +84 -91
  88. package/lib/servers/helpServer.js +19 -21
  89. package/lib/servers/impactServer.js +99 -92
  90. package/lib/servers/mockserver.js +24 -24
  91. package/lib/servers/scrServer.js +78 -98
  92. package/lib/servers/server.js +101 -122
  93. package/lib/servers/ssServer.js +63 -61
  94. package/lib/sh/reportPublish.sh +1 -2
  95. package/lib/templates/CoverageScriptTemplate.js +45 -18
  96. package/lib/templates/WMSTemplate.js +17 -18
  97. package/lib/templates/linterConstant.js +6 -4
  98. package/lib/utils/babelPresets.js +12 -5
  99. package/lib/utils/clean.js +12 -11
  100. package/lib/utils/copy.js +12 -34
  101. package/lib/utils/copyTimezones.js +9 -16
  102. package/lib/utils/createEventStream.js +24 -19
  103. package/lib/utils/cssClassNameGenerate.js +44 -73
  104. package/lib/utils/cssURLReplacer.js +62 -56
  105. package/lib/utils/dependencyPostPublish.js +20 -19
  106. package/lib/utils/fileUtils.js +66 -54
  107. package/lib/utils/folderIterator.js +20 -21
  108. package/lib/utils/getComponents.js +70 -27
  109. package/lib/utils/getCurrentBranch.js +11 -17
  110. package/lib/utils/getDependenciesImpactList.js +114 -187
  111. package/lib/utils/getHash.js +9 -13
  112. package/lib/utils/getIp.js +9 -9
  113. package/lib/utils/getOptions.js +26 -29
  114. package/lib/utils/getServerURL.js +19 -10
  115. package/lib/utils/index.js +147 -126
  116. package/lib/utils/init.js +2 -2
  117. package/lib/utils/initPreCommitHook.js +40 -32
  118. package/lib/utils/jsonHelper.js +37 -21
  119. package/lib/utils/lint/addScripts.js +27 -0
  120. package/lib/utils/lint/checkExistingConfig.js +67 -0
  121. package/lib/utils/lint/copyConfigs.js +24 -0
  122. package/lib/utils/lint/index.js +54 -0
  123. package/lib/utils/lint/lintScripts.js +11 -0
  124. package/lib/utils/lint/lintSetup.js +31 -0
  125. package/lib/utils/lint/lintStagedPreCommitHook.js +7 -0
  126. package/lib/utils/lint/question.js +30 -0
  127. package/lib/utils/lintReporter.js +70 -56
  128. package/lib/utils/mailSender.js +12 -27
  129. package/lib/utils/pullOrigin.js +21 -18
  130. package/lib/utils/reinstallDependencies.js +76 -85
  131. package/lib/utils/removeAttributes.js +25 -23
  132. package/lib/utils/repoClone.js +47 -45
  133. package/lib/utils/request.js +64 -77
  134. package/lib/utils/rtl.js +22 -29
  135. package/lib/utils/setEnvVariables.js +5 -6
  136. package/lib/utils/ssTestHack.js +21 -19
  137. package/lib/utils/switchBranch.js +21 -20
  138. package/lib/utils/urlConcat.js +22 -0
  139. package/package.json +72 -67
@@ -1,116 +1,116 @@
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 _utils = require("../utils");
6
6
 
7
- var _utils = require('../utils');
7
+ var _pluginUtils = require("../pluginUtils");
8
8
 
9
- var _pluginUtils = require('../pluginUtils');
10
-
11
- var _loaderUtils = require('../loaderUtils');
9
+ var _loaderUtils = require("../loaderUtils");
12
10
 
13
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
12
 
15
- var options = (0, _utils.getOptions)();
16
- var _options$docs = options.docs,
17
- componentFolder = _options$docs.componentFolder,
18
- cssUniqueness = _options$docs.cssUniqueness,
19
- hasRTL = _options$docs.hasRTL,
20
- rtlExclude = _options$docs.rtlExclude,
21
- cssHashSelectors = _options$docs.cssHashSelectors,
22
- classNamePrefix = _options$docs.classNamePrefix,
23
- folder = options.app.folder;
24
-
25
- var appPath = process.cwd();
13
+ let options = (0, _utils.getOptions)();
14
+ let {
15
+ docs: {
16
+ componentFolder,
17
+ cssUniqueness,
18
+ hasRTL,
19
+ rtlExclude,
20
+ cssHashSelectors,
21
+ classNamePrefix
22
+ },
23
+ app: {
24
+ folder
25
+ }
26
+ } = options;
27
+ let appPath = process.cwd();
26
28
 
27
- module.exports = function (isSSTest) {
28
- return {
29
- entry: {
30
- main: [_path2.default.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'), _path2.default.join(appPath, componentFolder, 'index.js')],
31
- vendor: ['react', 'react-dom', 'redux', 'react-redux']
32
- },
33
- devtool: 'none',
34
- mode: 'development',
35
- output: {
36
- path: _path2.default.join(appPath, 'build'),
37
- filename: 'js/[name].js',
38
- publicPath: '/docs/',
39
- library: 'Component',
40
- libraryTarget: 'umd'
41
- },
42
- plugins: (0, _pluginUtils.getDocsPlugins)(isSSTest, options),
43
- module: {
44
- rules: [{
45
- test: /\.js$/,
46
- use: [{
47
- loader: 'babel-loader',
48
- options: {
49
- presets: [[require.resolve('babel-preset-env'), { modules: false }], require.resolve('babel-preset-react')],
50
- plugins: [[require.resolve('babel-plugin-transform-runtime'), {
51
- helpers: true,
52
- polyfill: true,
53
- regenerator: false,
54
- moduleName: 'babel-runtime'
55
- }], require.resolve('babel-plugin-syntax-dynamic-import'), require.resolve('babel-plugin-syntax-object-rest-spread')],
56
- cacheDirectory: true
57
- }
58
- }],
59
- include: _path2.default.join(appPath, folder)
60
- }, {
61
- test: /\.docs\.js$/,
62
- use: require.resolve('../loaders/docsLoader.js'),
63
- include: _path2.default.join(appPath, folder),
64
- exclude: /node_modules/
65
- }, {
66
- test: /(\.module)?\.css$/,
67
- use: (0, _loaderUtils.getCSSLoaders)(hasRTL, rtlExclude, false, cssUniqueness, null, cssHashSelectors, classNamePrefix)
68
- }, {
69
- test: /\.jpe?g$|\.gif$|\.png$/,
70
- use: ['url-loader?limit=1000&name=./images/[name].[ext]']
71
- }, {
72
- test: /\.woff2|\.woff$|\.ttf$|\.eot$/,
73
- use: ['url-loader?limit=1000&name=./fonts/[name].[ext]']
74
- }, {
75
- test: /\.svg$/,
76
- use: ['url-loader?limit=1&name=./fonts/[name].[ext]']
77
- }, {
78
- test: /\.html$/,
79
- use: {
80
- loader: 'html-loader',
81
- options: {
82
- attrs: [':data-src'],
83
- interpolate: 'require'
84
- }
29
+ module.exports = isSSTest => ({
30
+ entry: {
31
+ main: [_path.default.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'), _path.default.join(appPath, componentFolder, 'index.js')],
32
+ vendor: ['react', 'react-dom', 'redux', 'react-redux']
33
+ },
34
+ devtool: 'none',
35
+ mode: 'development',
36
+ output: {
37
+ path: _path.default.join(appPath, 'build'),
38
+ filename: 'js/[name].js',
39
+ publicPath: '/docs/',
40
+ library: 'Component',
41
+ libraryTarget: 'umd'
42
+ },
43
+ plugins: (0, _pluginUtils.getDocsPlugins)(isSSTest, options),
44
+ module: {
45
+ rules: [{
46
+ test: /\.js$/,
47
+ use: [{
48
+ loader: 'babel-loader',
49
+ options: {
50
+ presets: [[require.resolve('@babel/preset-env'), {
51
+ modules: false
52
+ }], require.resolve('@babel/preset-react')],
53
+ plugins: [[require.resolve('@babel/plugin-transform-runtime'), {
54
+ helpers: true,
55
+ regenerator: false
56
+ }], require.resolve('babel-plugin-syntax-dynamic-import'), require.resolve('babel-plugin-syntax-object-rest-spread')],
57
+ cacheDirectory: true
58
+ }
59
+ }],
60
+ include: _path.default.join(appPath, folder)
61
+ }, {
62
+ test: /\.docs\.js$/,
63
+ use: require.resolve('../loaders/docsLoader.js'),
64
+ include: _path.default.join(appPath, folder),
65
+ exclude: /node_modules/
66
+ }, {
67
+ test: /(\.module)?\.css$/,
68
+ use: (0, _loaderUtils.getCSSLoaders)(hasRTL, rtlExclude, false, cssUniqueness, null, cssHashSelectors, classNamePrefix)
69
+ }, {
70
+ test: /\.jpe?g$|\.gif$|\.png$/,
71
+ use: ['url-loader?limit=1000&name=./images/[name].[ext]']
72
+ }, {
73
+ test: /\.woff2|\.woff$|\.ttf$|\.eot$/,
74
+ use: ['url-loader?limit=1000&name=./fonts/[name].[ext]']
75
+ }, {
76
+ test: /\.svg$/,
77
+ use: ['url-loader?limit=1&name=./fonts/[name].[ext]']
78
+ }, {
79
+ test: /\.html$/,
80
+ use: {
81
+ loader: 'html-loader',
82
+ options: {
83
+ attrs: [':data-src'],
84
+ interpolate: 'require'
85
+ }
86
+ }
87
+ }, {
88
+ test: /\.ogg$/,
89
+ use: ['file-loader?name=./fonts/[name].[ext]']
90
+ }, {
91
+ test: /\.tmpl$/,
92
+ use: [{
93
+ loader: 'html-loader',
94
+ options: {
95
+ interpolate: 'require',
96
+ ignoreCustomFragments: [/\{\{.*?}}/, /\$\{.*?}/],
97
+ minimize: true,
98
+ removeComments: true,
99
+ collapseWhitespace: false,
100
+ removeAttributeQuotes: false,
101
+ minifyCSS: false,
102
+ minifyJS: false
85
103
  }
86
- }, {
87
- test: /\.ogg$/,
88
- use: ['file-loader?name=./fonts/[name].[ext]']
89
- }, {
90
- test: /\.tmpl$/,
91
- use: [{
92
- loader: 'html-loader',
93
- options: {
94
- interpolate: 'require',
95
- ignoreCustomFragments: [/\{\{.*?}}/, /\$\{.*?}/],
96
- minimize: true,
97
- removeComments: true,
98
- collapseWhitespace: false,
99
- removeAttributeQuotes: false,
100
- minifyCSS: false,
101
- minifyJS: false
102
- }
103
- }]
104
104
  }]
105
- },
106
- externals: {
107
- ZC: '$ZC'
108
- },
109
- resolve: {
110
- modules: [_path2.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
111
- },
112
- resolveLoader: {
113
- modules: [_path2.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
114
- }
115
- };
116
- };
105
+ }]
106
+ },
107
+ externals: {
108
+ ZC: '$ZC'
109
+ },
110
+ resolve: {
111
+ modules: [_path.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
112
+ },
113
+ resolveLoader: {
114
+ modules: [_path.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
115
+ }
116
+ });
@@ -1,84 +1,83 @@
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 _utils = require("../utils");
6
6
 
7
- var _utils = require('../utils');
7
+ var _common = require("../common");
8
8
 
9
- var _common = require('../common');
9
+ var _pluginUtils = require("../pluginUtils");
10
10
 
11
- var _pluginUtils = require('../pluginUtils');
12
-
13
- var _loaderUtils = require('../loaderUtils');
11
+ var _loaderUtils = require("../loaderUtils");
14
12
 
15
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
14
 
17
- var options = (0, _utils.getOptions)();
18
-
19
- var _options$app = options.app,
20
- folder = _options$app.folder,
21
- context = _options$app.context,
22
- enableChunkHash = _options$app.enableChunkHash,
23
- outputFolder = _options$app.outputFolder,
24
- disableES5Transpile = _options$app.disableES5Transpile,
25
- removeAttribute = _options$app.removeAttribute,
26
- enableSMap = _options$app.enableSMap,
27
- server = _options$app.server,
28
- hasRTL = _options$app.hasRTL,
29
- rtlExclude = _options$app.rtlExclude,
30
- cssUniqueness = _options$app.cssUniqueness,
31
- mode = _options$app.server.mode,
32
- seperateCssModules = _options$app.seperateCssModules,
33
- changeRuntimeChunkChar = _options$app.changeRuntimeChunkChar,
34
- cssHashSelectors = _options$app.cssHashSelectors,
35
- classNamePrefix = _options$app.classNamePrefix,
36
- selectorReplace = _options$app.selectorReplace,
37
- removePropTypes = _options$app.removePropTypes;
38
-
39
-
40
- var appPath = process.cwd();
41
-
42
- var isDevelopment = mode === 'prod' || mode === 'dev' || mode === 'dev-no-warn';
15
+ let options = (0, _utils.getOptions)();
16
+ let {
17
+ app: {
18
+ folder,
19
+ context,
20
+ enableChunkHash,
21
+ outputFolder,
22
+ disableES5Transpile,
23
+ removeAttribute,
24
+ enableSMap,
25
+ server,
26
+ hasRTL,
27
+ rtlExclude,
28
+ cssUniqueness,
29
+ server: {
30
+ mode
31
+ },
32
+ seperateCssModules,
33
+ changeRuntimeChunkChar,
34
+ cssHashSelectors,
35
+ classNamePrefix,
36
+ selectorReplace,
37
+ removePropTypes
38
+ }
39
+ } = options;
40
+ let appPath = process.cwd();
41
+ let isDevelopment = mode === 'prod' || mode === 'dev' || mode === 'dev-no-warn';
43
42
  enableChunkHash = !isDevelopment && enableChunkHash;
44
-
45
- var output = {
46
- path: _path2.default.resolve(appPath, outputFolder),
43
+ let output = {
44
+ path: _path.default.resolve(appPath, outputFolder),
47
45
  filename: enableChunkHash ? './js/[name].[chunkhash:20]_.js' : './js/[name]_.js',
48
46
  chunkFilename: enableChunkHash ? './js/[name].[chunkhash:20]_.js' : './js/[name]_.js',
49
- jsonpFunction: context + 'Jsonp',
47
+ jsonpFunction: `${context}Jsonp`,
50
48
  sourceMapFilename: enableChunkHash ? 'smap/[name].[chunkhash:20]_.map' : 'smap/[name]_.map'
51
49
  };
52
50
 
53
51
  if (isDevelopment) {
54
- var disableContextURL = server.disableContextURL;
55
-
56
- var contextURL = disableContextURL ? '' : context;
57
- var serverUrl = (0, _utils.getServerURL)(server);
58
- output.publicPath = [serverUrl, contextURL].filter(function (a) {
59
- return a;
60
- }).join('/') + '/';
52
+ let {
53
+ disableContextURL
54
+ } = server;
55
+ let contextURL = disableContextURL ? '' : context;
56
+ let serverUrl = (0, _utils.getServerURL)(server, 'https');
57
+ output.publicPath = `${[serverUrl, contextURL].filter(a => a).join('/')}/`;
61
58
  }
62
59
 
63
- var shouldRemovePropTypes = !isDevelopment && removePropTypes;
64
-
60
+ let shouldRemovePropTypes = !isDevelopment && removePropTypes;
65
61
  module.exports = {
66
62
  entry: (0, _common.getEntries)(options, 'production'),
67
63
  devtool: isDevelopment ? 'cheap-module-source-map' : enableSMap ? 'hidden-source-map' : 'none',
68
64
  mode: 'production',
69
- output: output,
65
+ output,
70
66
  optimization: {
71
67
  splitChunks: _common.splitChunks,
72
68
  runtimeChunk: {
73
- name: function name(entrypoint) {
74
- return changeRuntimeChunkChar ? './runtime-' + entrypoint.name : './runtime~' + entrypoint.name;
75
- }
69
+ name: entrypoint => changeRuntimeChunkChar ? `./runtime-${entrypoint.name}` : `./runtime~${entrypoint.name}`
76
70
  },
77
71
  concatenateModules: true,
78
72
  minimize: true,
79
73
  moduleIds: 'named'
80
74
  },
81
- stats: { children: false },
75
+ stats: {
76
+ children: false,
77
+ colors: true,
78
+ // excludeAssets: /i18n/,
79
+ warningsFilter: /\[mini-css-extract-plugin\]/
80
+ },
82
81
  plugins: (0, _pluginUtils.getProdPlugins)(options, output.publicPath),
83
82
  module: {
84
83
  /* strictExportPresence for break the build when imported module not present in respective file */
@@ -88,23 +87,24 @@ module.exports = {
88
87
  use: [{
89
88
  loader: 'babel-loader',
90
89
  options: {
91
- presets: [[require.resolve('babel-preset-env'), disableES5Transpile ? {
90
+ presets: [[require.resolve('@babel/preset-env'), disableES5Transpile ? {
92
91
  modules: false,
93
- useBuiltIns: true,
92
+ useBuiltIns: 'usage',
93
+ corejs: 3,
94
94
  targets: {
95
- browsers: ['Chrome >= 60', 'Safari >= 10.1', 'iOS >= 10.3', 'Firefox >= 54', 'Edge >= 15']
95
+ browsers: ['last 3 Chrome versions', 'last 3 Firefox versions', 'last 3 Edge versions', 'last 3 Safari versions']
96
96
  }
97
- } : { modules: false }], require.resolve('babel-preset-react')],
98
- plugins: disableES5Transpile ? [removeAttribute ? require.resolve('../utils/removeAttributes') : false, require.resolve('babel-plugin-syntax-dynamic-import'), require.resolve('babel-plugin-lodash'), require.resolve('babel-plugin-syntax-object-rest-spread'), shouldRemovePropTypes ? [require.resolve('babel-plugin-transform-react-remove-prop-types'), removePropTypes] : false].filter(Boolean) : [removeAttribute ? require.resolve('../utils/removeAttributes') : false, [require.resolve('babel-plugin-transform-runtime'), {
97
+ } : {
98
+ modules: false
99
+ }], require.resolve('@babel/preset-react')],
100
+ plugins: disableES5Transpile ? [removeAttribute ? require.resolve('../utils/removeAttributes') : false, require.resolve('@babel/plugin-syntax-dynamic-import'), require.resolve('babel-plugin-lodash'), require.resolve('@babel/plugin-proposal-object-rest-spread')].filter(Boolean) : [removeAttribute ? require.resolve('../utils/removeAttributes') : false, shouldRemovePropTypes ? [require.resolve('babel-plugin-transform-react-remove-prop-types'), removePropTypes] : false[(require.resolve('@babel/plugin-transform-runtime'), {
99
101
  helpers: true,
100
- polyfill: true,
101
- regenerator: false,
102
- moduleName: 'babel-runtime'
103
- }], require.resolve('babel-plugin-syntax-dynamic-import'), require.resolve('babel-plugin-lodash'), require.resolve('babel-plugin-syntax-object-rest-spread'), shouldRemovePropTypes ? [require.resolve('babel-plugin-transform-react-remove-prop-types'), removePropTypes] : false].filter(Boolean),
102
+ regenerator: false
103
+ }, require.resolve('@babel/plugin-proposal-object-rest-spread'))], require.resolve('@babel/plugin-syntax-dynamic-import'), require.resolve('babel-plugin-lodash')].filter(Boolean),
104
104
  cacheDirectory: true
105
105
  }
106
106
  }],
107
- include: _path2.default.join(appPath, folder)
107
+ include: _path.default.join(appPath, folder)
108
108
  }, seperateCssModules ? {
109
109
  test: /\.css$/,
110
110
  exclude: /\.module\.css$/,
@@ -119,7 +119,7 @@ module.exports = {
119
119
  options: {
120
120
  limit: 1000,
121
121
  name: enableChunkHash ? './images/[name].[hash:20].[ext]' : './images/[name].[ext]',
122
- fallback: _path2.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
122
+ fallback: _path.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
123
123
  }
124
124
  }]
125
125
  }, {
@@ -129,7 +129,7 @@ module.exports = {
129
129
  options: {
130
130
  limit: 1000,
131
131
  name: enableChunkHash ? './fonts/[name].[hash:20].[ext]' : './fonts/[name].[ext]',
132
- fallback: _path2.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
132
+ fallback: _path.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
133
133
  }
134
134
  }]
135
135
  }, {
@@ -139,7 +139,7 @@ module.exports = {
139
139
  options: {
140
140
  limit: 1,
141
141
  name: enableChunkHash ? './fonts/[name].[hash:20].[ext]' : './fonts/[name].[ext]',
142
- fallback: _path2.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
142
+ fallback: _path.default.join(__dirname, '..', 'loaders', 'fileLoader.js')
143
143
  }
144
144
  }]
145
145
  }, {
@@ -155,25 +155,45 @@ module.exports = {
155
155
  use: [{
156
156
  loader: 'html-loader',
157
157
  options: {
158
- interpolate: 'require',
159
- ignoreCustomFragments: [/\{\{.*?}}/, /\$\{.*?}/],
160
- minimize: true,
161
- removeComments: true,
162
- collapseWhitespace: false,
163
- removeAttributeQuotes: false,
164
- minifyCSS: false,
165
- minifyJS: false
158
+ minimize: false
166
159
  }
167
160
  }]
161
+ }, {
162
+ test: /\.worker.js$/,
163
+ use: {
164
+ loader: require.resolve('../loaders/workerLoader.js'),
165
+ options: {
166
+ esModule: true,
167
+ filename: 'js/[name].[chunkhash:20].js'
168
+ }
169
+ }
168
170
  }].filter(Boolean)
169
171
  },
170
172
  externals: {
171
173
  ZC: '$ZC'
172
174
  },
173
175
  resolve: {
174
- modules: [_path2.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
176
+ modules: [_path.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules'],
177
+ alias: disableES5Transpile ? {
178
+ '@zohodesk/components/lib': '@zohodesk/components/es',
179
+ '@zohodesk/dot/lib': '@zohodesk/dot/es',
180
+ '@zohodesk/i18n/lib': '@zohodesk/i18n/es',
181
+ '@zohodesk/icons/lib': '@zohodesk/icons/es',
182
+ '@zohodesk/normalizer/lib': '@zohodesk/normalizer/es',
183
+ '@zohodesk/perf-components/lib': '@zohodesk/perf-components/es',
184
+ '@zohodesk/perf-middleware/lib': '@zohodesk/perf-middleware/es',
185
+ '@zohodesk/permissions/lib': '@zohodesk/permissions/es',
186
+ '@zohodesk/platform-middleware/lib': '@zohodesk/platform-middleware/es',
187
+ '@zohodesk/react-dnd/lib': '@zohodesk/react-dnd/es',
188
+ '@zohodesk/router-middleware/lib': '@zohodesk/router-middleware/es',
189
+ '@zohodesk/storage/lib': '@zohodesk/storage/es',
190
+ '@zohodesk/svg/lib': '@zohodesk/svg/es',
191
+ '@zohodesk/timetracker/lib': '@zohodesk/timetracker/es',
192
+ '@zohodesk/variables/lib': '@zohodesk/variables/es',
193
+ '@zohodesk/virtualizer/lib': '@zohodesk/virtualizer/es'
194
+ } : {}
175
195
  },
176
196
  resolveLoader: {
177
- modules: [_path2.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
197
+ modules: [_path.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
178
198
  }
179
199
  };
@@ -1,51 +1,45 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
- var _propTypes = require('prop-types');
4
-
5
- var _propTypes2 = _interopRequireDefault(_propTypes);
3
+ var _propTypes = _interopRequireDefault(require("prop-types"));
6
4
 
7
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
6
 
9
- _propTypes2.default.array.hookType = 'array';
10
- _propTypes2.default.bool.hookType = 'bool';
11
- _propTypes2.default.func.hookType = 'func';
12
- _propTypes2.default.number.hookType = 'number';
13
- _propTypes2.default.object.hookType = 'object';
14
- _propTypes2.default.string.hookType = 'string';
15
- _propTypes2.default.symbol.hookType = 'symbol';
16
- _propTypes2.default.element.hookType = 'element';
17
- _propTypes2.default.node.hookType = 'element';
18
- _propTypes2.default.array.isRequired.hookType = 'array';
19
- _propTypes2.default.bool.isRequired.hookType = 'bool';
20
- _propTypes2.default.func.isRequired.hookType = 'func';
21
- _propTypes2.default.number.isRequired.hookType = 'number';
22
- _propTypes2.default.object.isRequired.hookType = 'object';
23
- _propTypes2.default.string.isRequired.hookType = 'string';
24
- _propTypes2.default.symbol.isRequired.hookType = 'symbol';
25
- _propTypes2.default.element.isRequired.hookType = 'element';
26
- _propTypes2.default.node.isRequired.hookType = 'element';
27
- function proxy(fn, type) {
28
- var oneOf = fn;
29
- return function () {
30
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
31
- args[_key] = arguments[_key];
32
- }
7
+ _propTypes.default.array.hookType = 'array';
8
+ _propTypes.default.bool.hookType = 'bool';
9
+ _propTypes.default.func.hookType = 'func';
10
+ _propTypes.default.number.hookType = 'number';
11
+ _propTypes.default.object.hookType = 'object';
12
+ _propTypes.default.string.hookType = 'string';
13
+ _propTypes.default.symbol.hookType = 'symbol';
14
+ _propTypes.default.element.hookType = 'element';
15
+ _propTypes.default.node.hookType = 'element';
16
+ _propTypes.default.array.isRequired.hookType = 'array';
17
+ _propTypes.default.bool.isRequired.hookType = 'bool';
18
+ _propTypes.default.func.isRequired.hookType = 'func';
19
+ _propTypes.default.number.isRequired.hookType = 'number';
20
+ _propTypes.default.object.isRequired.hookType = 'object';
21
+ _propTypes.default.string.isRequired.hookType = 'string';
22
+ _propTypes.default.symbol.isRequired.hookType = 'symbol';
23
+ _propTypes.default.element.isRequired.hookType = 'element';
24
+ _propTypes.default.node.isRequired.hookType = 'element';
33
25
 
34
- var a = oneOf.apply(undefined, args);
35
- var type1 = Array.isArray(args) && Array.isArray(args[0]) ? type + '[' + args[0].map(function (data) {
36
- return typeof data === 'function' ? data.hookType //arrayOf shape complex type not mention
37
- : JSON.stringify(data);
38
- }) + ']' : type;
26
+ function proxy(fn, type) {
27
+ let oneOf = fn;
28
+ return (...args) => {
29
+ let a = oneOf(...args);
30
+ let type1 = Array.isArray(args) && Array.isArray(args[0]) ? `${type}[${args[0].map(data => typeof data === 'function' ? data.hookType //arrayOf shape complex type not mention
31
+ : JSON.stringify(data))}]` : type;
39
32
  a.hookType = type1;
33
+
40
34
  if (a.isRequired) {
41
35
  a.isRequired.hookType = type1;
42
36
  }
37
+
43
38
  return a;
44
39
  };
45
40
  }
46
- _propTypes2.default.oneOf = proxy(_propTypes2.default.oneOf, 'enum');
47
- _propTypes2.default.oneOfType = proxy(_propTypes2.default.oneOfType, 'union');
48
- _propTypes2.default.arrayOf = proxy(_propTypes2.default.arrayOf, 'arrayOf');
49
- _propTypes2.default.shape = proxy(_propTypes2.default.shape, 'shape');
50
41
 
51
- // export default PropTypes;
42
+ _propTypes.default.oneOf = proxy(_propTypes.default.oneOf, 'enum');
43
+ _propTypes.default.oneOfType = proxy(_propTypes.default.oneOfType, 'union');
44
+ _propTypes.default.arrayOf = proxy(_propTypes.default.arrayOf, 'arrayOf');
45
+ _propTypes.default.shape = proxy(_propTypes.default.shape, 'shape'); // export default PropTypes;