@zohodesk/react-cli 0.0.1-test.148.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- package/.eslintignore +7 -7
- package/.eslintrc.js +180 -183
- package/.prettierrc +6 -0
- package/{CHANGELOG.md → CHANGELOG-fz.md} +0 -0
- package/Changelog.md +1019 -0
- package/README.md +1152 -678
- package/bin/cli.js +483 -392
- package/docs/CustomChunks.md +26 -0
- package/docs/DevServerPort.md +39 -0
- package/docs/DevStart.md +18 -0
- package/docs/HoverActive.md +12 -0
- package/docs/InstallNode.md +28 -0
- package/docs/SelectorWeight.md +6 -0
- package/docs/TODOS.md +10 -0
- package/docs/ValueReplacer.md +60 -0
- package/docs/VariableConversion.md +724 -0
- package/docs/warnings_while_install.txt +35 -0
- package/files/eslintrc.js +62 -62
- package/files/prettierrc.js +3 -3
- package/lib/common/index.js +6 -6
- package/lib/common/splitChunks.js +60 -12
- package/lib/common/sslcertUpdater.js +59 -0
- package/lib/common/testPattern.js +69 -0
- package/lib/common/valueReplacer.js +55 -0
- package/lib/configs/jest.config.js +18 -8
- package/lib/configs/libAlias.js +38 -0
- package/lib/configs/resolvers.js +40 -0
- package/lib/configs/webpack.css.umd.config.js +4 -4
- package/lib/configs/webpack.dev.config.js +59 -54
- package/lib/configs/webpack.docs.config.js +56 -53
- package/lib/configs/webpack.impact.config.js +54 -50
- package/lib/configs/webpack.prod.config.js +72 -47
- package/lib/constants.js +31 -0
- package/lib/jest/preProcessors/cssPreprocessor.js +16 -7
- package/lib/loaderUtils/configsAssetsLoaders.js +117 -0
- package/lib/loaderUtils/getCSSLoaders.js +89 -21
- package/lib/loaderUtils/index.js +4 -4
- package/lib/loaderUtils/windowsModification.js +11 -0
- package/lib/loaders/fileBountryLoader.js +17 -0
- package/lib/loaders/scriptInstrumentLoader.js +2 -2
- package/lib/loaders/selectorMappingLoader.js +75 -0
- package/lib/loaders/workerLoader.js +9 -9
- package/lib/pluginUtils/configHtmlWebpackPlugins.js +59 -0
- package/lib/pluginUtils/getDevPlugins.js +68 -45
- package/lib/pluginUtils/getDocsPlugins.js +6 -8
- package/lib/pluginUtils/getLibraryImactPlugins.js +23 -0
- package/lib/pluginUtils/getProdPlugins.js +72 -58
- package/lib/pluginUtils/index.js +12 -12
- package/lib/plugins/CdnChangePlugin.js +16 -2
- package/lib/plugins/EFCPlugin.js +52 -20
- package/lib/plugins/EFCPlugin.md +6 -0
- package/lib/plugins/EFCTemplatePlugin.js +151 -0
- package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
- package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
- package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
- package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
- package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -86
- package/lib/plugins/I18nSplitPlugin/README.md +25 -25
- package/lib/plugins/I18nSplitPlugin/index.js +57 -57
- package/lib/plugins/I18nSplitPlugin/utils/hashUtils.js +2 -2
- package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +1 -1
- package/lib/plugins/ManifestPlugin.js +8 -0
- package/lib/plugins/RequireVariablePublicPlugin.js +30 -0
- package/lib/plugins/ResourceHintsPlugin.js +17 -17
- package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
- package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -0
- package/lib/plugins/SelectorPlugin.js +97 -0
- package/lib/plugins/ServiceWorkerPlugin.js +13 -9
- package/lib/plugins/SourceMapHookPlugin.js +9 -3
- package/lib/plugins/TPHashMappingPlugin.js +4 -4
- package/lib/plugins/VariableConversionCollector.js +352 -0
- package/lib/plugins/composeCommonPlugin.js +30 -0
- package/lib/plugins/index.js +36 -36
- package/lib/plugins/libraryImpactPlugin.js +14 -2
- package/lib/postcss-plugins/{ExcludeRTLPlugin.js → ExcludePlugin.js} +1 -1
- package/lib/postcss-plugins/RTLSplitPlugin.js +13 -13
- package/lib/postcss-plugins/ValueReplacer.js +46 -0
- package/lib/postcss-plugins/__test__/hoverActivePlugin.spec.js +22 -0
- package/lib/postcss-plugins/__test__/test1Input.css +39 -0
- package/lib/postcss-plugins/__test__/test1Output.css +39 -0
- package/lib/postcss-plugins/hoverActivePlugin.js +389 -0
- package/lib/postcss-plugins/variableModificationPlugin/ErrorHandler.js +60 -0
- package/lib/postcss-plugins/variableModificationPlugin/index.js +307 -0
- package/lib/postcss-plugins/variableModifier.js +244 -0
- package/lib/schemas/index.js +165 -11
- package/lib/servers/devBuild.js +102 -0
- package/lib/servers/docsServerCore.js +16 -18
- package/lib/servers/getCliPath.js +28 -0
- package/lib/servers/httpsOptions.js +49 -0
- package/lib/servers/nowatchserver.js +206 -0
- package/lib/servers/server.js +114 -82
- package/lib/sh/pre-commit.sh +34 -34
- package/lib/sh/reportPublish.sh +45 -45
- package/lib/templates/linterConstant.js +1 -1
- package/lib/utils/buildstats.html +148 -148
- package/lib/utils/cssClassNameGenerate.js +9 -2
- package/lib/utils/cssURLReplacer.js +30 -43
- package/lib/utils/getCurrentBranch.js +1 -1
- package/lib/utils/getDependenciesImpactList.js +14 -12
- package/lib/utils/getFileType.js +49 -0
- package/lib/utils/getOptions.js +118 -10
- package/lib/utils/index.js +44 -20
- package/lib/utils/jsonHelper.js +12 -3
- package/lib/utils/reinstallDependencies.js +1 -1
- package/lib/utils/repoClone.js +16 -4
- package/lib/utils/resultSchema.json +73 -73
- package/lib/utils/rtl.js +19 -2
- package/lib/utils/useExitCleanup.js +55 -0
- package/npm8.md +9 -0
- package/package.json +121 -142
- package/postpublish.js +8 -0
- package/result.json +1 -0
- 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/impactReportTemplate.html +154 -154
- package/templates/docs/index.html +1501 -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
- package/unittest/index.html +37 -0
- package/cert/cert.pem +0 -105
- package/cert/key.pem +0 -30
@@ -10,46 +10,65 @@ var _pluginUtils = require("../pluginUtils");
|
|
10
10
|
|
11
11
|
var _loaderUtils = require("../loaderUtils");
|
12
12
|
|
13
|
+
var _configsAssetsLoaders = require("../loaderUtils/configsAssetsLoaders");
|
14
|
+
|
15
|
+
var _resolvers = require("./resolvers");
|
16
|
+
|
13
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
14
18
|
|
15
|
-
|
16
|
-
|
19
|
+
const options = (0, _utils.getOptions)();
|
20
|
+
const {
|
17
21
|
app: {
|
18
22
|
folder,
|
19
23
|
context,
|
20
24
|
server,
|
21
25
|
outputFolder,
|
22
|
-
|
23
|
-
|
26
|
+
plugins,
|
27
|
+
exclude,
|
28
|
+
mediaQueryHoverActiveString,
|
29
|
+
cssVariableReplacementConfig,
|
30
|
+
selectorWeightConfig,
|
24
31
|
cssUniqueness,
|
25
32
|
seperateCssModules,
|
26
33
|
changeRuntimeChunkChar,
|
34
|
+
// we are going to use this for fonts file name collide in issue in devmode
|
35
|
+
enableChunkHash,
|
27
36
|
cssHashSelectors,
|
28
37
|
classNamePrefix,
|
29
38
|
selectorReplace,
|
30
|
-
|
31
|
-
|
39
|
+
devConsoleExculde,
|
40
|
+
sourcemap,
|
41
|
+
crossorigin
|
32
42
|
}
|
33
43
|
} = options;
|
34
|
-
|
44
|
+
const {
|
35
45
|
disableContextURL
|
36
46
|
} = server;
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
47
|
+
const appPath = process.cwd();
|
48
|
+
const contextURL = disableContextURL ? '' : context;
|
49
|
+
const serverUrl = (0, _utils.getServerURL)(server, 'https');
|
50
|
+
const output = {
|
41
51
|
path: _path.default.join(appPath, outputFolder),
|
42
52
|
filename: 'js/[name].js',
|
43
53
|
chunkFilename: 'js/[name].js',
|
44
54
|
publicPath: `${[serverUrl, contextURL].filter(a => a).join('/')}/`,
|
45
55
|
jsonpFunction: `${context}Jsonp`
|
46
56
|
};
|
57
|
+
const nameTemplate = (0, _configsAssetsLoaders.createNameTemplate)(enableChunkHash);
|
58
|
+
|
59
|
+
if (crossorigin) {
|
60
|
+
output.crossOriginLoading = 'anonymous';
|
61
|
+
}
|
62
|
+
|
47
63
|
module.exports = {
|
48
64
|
entry: (0, _common.getEntries)(options, 'dev'),
|
49
|
-
devtool:
|
65
|
+
devtool: sourcemap,
|
50
66
|
mode: 'development',
|
67
|
+
// watchOptions: {
|
68
|
+
// ignored: /node_modules.(?!@zohodesk)/
|
69
|
+
// },
|
51
70
|
output,
|
52
|
-
stats: {
|
71
|
+
stats: options.app.disableWatch ? 'errors-only' : {
|
53
72
|
children: false
|
54
73
|
},
|
55
74
|
optimization: {
|
@@ -67,9 +86,9 @@ module.exports = {
|
|
67
86
|
test: /\.js$/,
|
68
87
|
use: (0, _loaderUtils.getDevJsLoaders)(options),
|
69
88
|
include: module => {
|
70
|
-
|
89
|
+
const srcPath = _path.default.join(appPath, folder);
|
71
90
|
|
72
|
-
|
91
|
+
const depsPath = _path.default.join(appPath, 'node_modules', '@zohodesk');
|
73
92
|
|
74
93
|
if (module.includes(srcPath) || devConsoleExculde && module.includes(depsPath)) {
|
75
94
|
return true;
|
@@ -80,23 +99,31 @@ module.exports = {
|
|
80
99
|
}, seperateCssModules ? {
|
81
100
|
test: /\.css$/,
|
82
101
|
exclude: /\.module\.css$/,
|
83
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
102
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
103
|
+
plugins,
|
104
|
+
exclude,
|
105
|
+
mediaQueryHoverActiveString,
|
106
|
+
cssVariableReplacementConfig,
|
107
|
+
selectorWeightConfig,
|
108
|
+
classNameBlob: '[local]',
|
109
|
+
cssUniqueness: false,
|
110
|
+
selectorReplace: null
|
111
|
+
})
|
84
112
|
} : null, {
|
85
113
|
test: seperateCssModules ? /\.module\.css$/ : /(\.module)?\.css$/,
|
86
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
}, {
|
114
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
115
|
+
plugins,
|
116
|
+
exclude,
|
117
|
+
mediaQueryHoverActiveString,
|
118
|
+
cssVariableReplacementConfig,
|
119
|
+
selectorWeightConfig,
|
120
|
+
classNameBlob: null,
|
121
|
+
cssUniqueness,
|
122
|
+
selectorReplace,
|
123
|
+
cssHashSelectors,
|
124
|
+
classNamePrefix
|
125
|
+
})
|
126
|
+
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), {
|
100
127
|
test: /\.tmpl$/,
|
101
128
|
use: [{
|
102
129
|
loader: 'html-loader',
|
@@ -118,28 +145,6 @@ module.exports = {
|
|
118
145
|
externals: {
|
119
146
|
ZC: '$ZC'
|
120
147
|
},
|
121
|
-
resolve:
|
122
|
-
|
123
|
-
alias: disableES5Transpile ? {
|
124
|
-
'@zohodesk/components/lib': '@zohodesk/components/es',
|
125
|
-
'@zohodesk/dot/lib': '@zohodesk/dot/es',
|
126
|
-
'@zohodesk/i18n/lib': '@zohodesk/i18n/es',
|
127
|
-
'@zohodesk/icons/lib': '@zohodesk/icons/es',
|
128
|
-
'@zohodesk/normalizer/lib': '@zohodesk/normalizer/es',
|
129
|
-
'@zohodesk/perf-components/lib': '@zohodesk/perf-components/es',
|
130
|
-
'@zohodesk/perf-middleware/lib': '@zohodesk/perf-middleware/es',
|
131
|
-
'@zohodesk/permissions/lib': '@zohodesk/permissions/es',
|
132
|
-
'@zohodesk/platform-middleware/lib': '@zohodesk/platform-middleware/es',
|
133
|
-
'@zohodesk/react-dnd/lib': '@zohodesk/react-dnd/es',
|
134
|
-
'@zohodesk/router-middleware/lib': '@zohodesk/router-middleware/es',
|
135
|
-
'@zohodesk/storage/lib': '@zohodesk/storage/es',
|
136
|
-
'@zohodesk/svg/lib': '@zohodesk/svg/es',
|
137
|
-
'@zohodesk/timetracker/lib': '@zohodesk/timetracker/es',
|
138
|
-
'@zohodesk/variables/lib': '@zohodesk/variables/es',
|
139
|
-
'@zohodesk/virtualizer/lib': '@zohodesk/virtualizer/es'
|
140
|
-
} : {}
|
141
|
-
},
|
142
|
-
resolveLoader: {
|
143
|
-
modules: [_path.default.resolve(__dirname, '..', '..', 'node_modules'), 'node_modules']
|
144
|
-
}
|
148
|
+
resolve: (0, _resolvers.moduleResolver)(options),
|
149
|
+
resolveLoader: (0, _resolvers.loaderResolver)(options)
|
145
150
|
};
|
@@ -8,15 +8,23 @@ var _pluginUtils = require("../pluginUtils");
|
|
8
8
|
|
9
9
|
var _loaderUtils = require("../loaderUtils");
|
10
10
|
|
11
|
+
var _configsAssetsLoaders = require("../loaderUtils/configsAssetsLoaders");
|
12
|
+
|
13
|
+
var _resolvers = require("./resolvers");
|
14
|
+
|
11
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
12
16
|
|
13
|
-
|
14
|
-
|
17
|
+
const options = (0, _utils.getOptions)();
|
18
|
+
const {
|
15
19
|
docs: {
|
16
20
|
componentFolder,
|
21
|
+
enableChunkHash,
|
17
22
|
cssUniqueness,
|
18
|
-
|
19
|
-
|
23
|
+
plugins,
|
24
|
+
exclude,
|
25
|
+
mediaQueryHoverActiveString,
|
26
|
+
cssVariableReplacementConfig,
|
27
|
+
selectorWeightConfig,
|
20
28
|
cssHashSelectors,
|
21
29
|
classNamePrefix
|
22
30
|
},
|
@@ -24,93 +32,88 @@ let {
|
|
24
32
|
folder
|
25
33
|
}
|
26
34
|
} = options;
|
27
|
-
|
35
|
+
const appPath = process.cwd();
|
36
|
+
const nameTemplate = (0, _configsAssetsLoaders.createNameTemplate)(enableChunkHash);
|
28
37
|
|
29
38
|
module.exports = isSSTest => ({
|
30
39
|
entry: {
|
31
|
-
main: [_path.default.resolve(__dirname,
|
32
|
-
vendor: [
|
40
|
+
main: [_path.default.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'), _path.default.join(appPath, componentFolder, 'index.js')],
|
41
|
+
vendor: ['react', 'react-dom', 'redux', 'react-redux']
|
33
42
|
},
|
34
|
-
devtool:
|
35
|
-
mode:
|
43
|
+
devtool: 'none',
|
44
|
+
mode: 'development',
|
36
45
|
output: {
|
37
|
-
path: _path.default.join(appPath,
|
38
|
-
filename:
|
39
|
-
publicPath:
|
40
|
-
library:
|
41
|
-
libraryTarget:
|
46
|
+
path: _path.default.join(appPath, 'build'),
|
47
|
+
filename: 'js/[name].js',
|
48
|
+
publicPath: '/docs/',
|
49
|
+
library: 'Component',
|
50
|
+
libraryTarget: 'umd'
|
42
51
|
},
|
43
52
|
plugins: (0, _pluginUtils.getDocsPlugins)(isSSTest, options),
|
44
53
|
module: {
|
45
54
|
rules: [{
|
46
55
|
test: /\.js$/,
|
47
56
|
use: [{
|
48
|
-
loader:
|
57
|
+
loader: 'babel-loader',
|
49
58
|
options: {
|
50
|
-
presets: [[require.resolve(
|
59
|
+
presets: [[require.resolve('@babel/preset-env'), {
|
51
60
|
modules: false
|
52
|
-
}], require.resolve(
|
53
|
-
plugins: [[require.resolve(
|
61
|
+
}], require.resolve('@babel/preset-react')],
|
62
|
+
plugins: [[require.resolve('@babel/plugin-transform-runtime'), {
|
54
63
|
helpers: true,
|
55
64
|
regenerator: false
|
56
|
-
}], require.resolve(
|
65
|
+
}], require.resolve('@babel/plugin-syntax-dynamic-import'), require.resolve('@babel/plugin-syntax-object-rest-spread')],
|
57
66
|
cacheDirectory: true
|
58
67
|
}
|
59
68
|
}],
|
60
69
|
include: _path.default.join(appPath, folder)
|
61
70
|
}, {
|
62
71
|
test: /\.docs\.js$/,
|
63
|
-
use: require.resolve(
|
72
|
+
use: require.resolve('../loaders/docsLoader.js'),
|
64
73
|
include: _path.default.join(appPath, folder),
|
65
74
|
exclude: /node_modules/
|
66
75
|
}, {
|
67
76
|
test: /(\.module)?\.css$/,
|
68
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
77
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
78
|
+
plugins,
|
79
|
+
exclude,
|
80
|
+
mediaQueryHoverActiveString,
|
81
|
+
cssVariableReplacementConfig,
|
82
|
+
selectorWeightConfig,
|
83
|
+
classNameBlob: false,
|
84
|
+
cssUniqueness,
|
85
|
+
selectorReplace: null,
|
86
|
+
cssHashSelectors,
|
87
|
+
classNamePrefix
|
88
|
+
})
|
89
|
+
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), {
|
79
90
|
test: /\.html$/,
|
80
91
|
use: {
|
81
|
-
loader:
|
92
|
+
loader: 'html-loader',
|
82
93
|
options: {
|
83
|
-
attrs: [
|
84
|
-
interpolate:
|
94
|
+
attrs: [':data-src'],
|
95
|
+
interpolate: 'require'
|
85
96
|
}
|
86
97
|
}
|
87
|
-
}, {
|
88
|
-
test: /\.ogg$/,
|
89
|
-
use: ["file-loader?name=./fonts/[name].[ext]"]
|
90
98
|
}, {
|
91
99
|
test: /\.tmpl$/,
|
92
100
|
use: [{
|
93
|
-
loader:
|
101
|
+
loader: 'html-loader',
|
94
102
|
options: {
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
minifyJS: false
|
103
|
+
minimize: {
|
104
|
+
removeComments: true,
|
105
|
+
collapseWhitespace: false,
|
106
|
+
removeAttributeQuotes: false,
|
107
|
+
minifyCSS: false,
|
108
|
+
minifyJS: false
|
109
|
+
}
|
103
110
|
}
|
104
111
|
}]
|
105
112
|
}]
|
106
113
|
},
|
107
114
|
externals: {
|
108
|
-
ZC:
|
115
|
+
ZC: '$ZC'
|
109
116
|
},
|
110
|
-
resolve:
|
111
|
-
|
112
|
-
},
|
113
|
-
resolveLoader: {
|
114
|
-
modules: [_path.default.resolve(__dirname, "..", "..", "node_modules"), "node_modules"]
|
115
|
-
}
|
117
|
+
resolve: (0, _resolvers.moduleResolver)(options),
|
118
|
+
resolveLoader: (0, _resolvers.loaderResolver)(options)
|
116
119
|
});
|
@@ -4,94 +4,103 @@ var _path = _interopRequireDefault(require("path"));
|
|
4
4
|
|
5
5
|
var _utils = require("../utils");
|
6
6
|
|
7
|
-
var _pluginUtils = require("../pluginUtils");
|
8
|
-
|
9
7
|
var _loaderUtils = require("../loaderUtils");
|
10
8
|
|
9
|
+
var _getLibraryImactPlugins = _interopRequireDefault(require("../pluginUtils/getLibraryImactPlugins"));
|
10
|
+
|
11
|
+
var _configsAssetsLoaders = require("../loaderUtils/configsAssetsLoaders");
|
12
|
+
|
13
|
+
var _resolvers = require("./resolvers");
|
14
|
+
|
11
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
12
16
|
|
13
|
-
|
14
|
-
|
17
|
+
const options = (0, _utils.getOptions)();
|
18
|
+
const {
|
15
19
|
docs: {
|
16
20
|
componentFolder,
|
17
21
|
cssUniqueness,
|
18
|
-
|
19
|
-
|
22
|
+
plugins,
|
23
|
+
exclude,
|
24
|
+
mediaQueryHoverActiveString,
|
25
|
+
cssVariableReplacementConfig,
|
26
|
+
selectorWeightConfig,
|
20
27
|
cssHashSelectors,
|
28
|
+
enableChunkHash,
|
21
29
|
classNamePrefix
|
22
30
|
},
|
23
31
|
app: {
|
24
32
|
folder
|
25
33
|
}
|
26
34
|
} = options;
|
27
|
-
|
35
|
+
const appPath = process.cwd();
|
36
|
+
const nameTemplate = (0, _configsAssetsLoaders.createNameTemplate)(enableChunkHash);
|
28
37
|
module.exports = {
|
29
38
|
entry: {
|
30
|
-
main: [_path.default.resolve(__dirname,
|
31
|
-
vendor: [
|
39
|
+
main: [_path.default.resolve(__dirname, '..', 'hooks', 'docsProptypeHook.js'), _path.default.join(appPath, componentFolder, 'index.js')],
|
40
|
+
vendor: ['react', 'react-dom', 'redux', 'react-redux']
|
32
41
|
},
|
33
|
-
devtool:
|
34
|
-
mode:
|
42
|
+
devtool: 'none',
|
43
|
+
mode: 'development',
|
44
|
+
stats: 'errors-only',
|
35
45
|
output: {
|
36
|
-
path: _path.default.join(appPath,
|
37
|
-
filename:
|
38
|
-
publicPath:
|
39
|
-
library:
|
40
|
-
libraryTarget:
|
46
|
+
path: _path.default.join(appPath, 'build'),
|
47
|
+
filename: 'js/[name].js',
|
48
|
+
publicPath: '/docs/',
|
49
|
+
library: 'Component',
|
50
|
+
libraryTarget: 'umd'
|
41
51
|
},
|
42
|
-
plugins: (0,
|
52
|
+
plugins: (0, _getLibraryImactPlugins.default)(options),
|
43
53
|
module: {
|
44
54
|
rules: [{
|
45
55
|
test: /\.js$/,
|
46
56
|
use: [{
|
47
|
-
loader:
|
57
|
+
loader: 'babel-loader',
|
48
58
|
options: {
|
49
|
-
presets: [[require.resolve(
|
59
|
+
presets: [[require.resolve('@babel/preset-env'), {
|
50
60
|
modules: false
|
51
|
-
}], require.resolve(
|
52
|
-
plugins: [[require.resolve(
|
61
|
+
}], require.resolve('@babel/preset-react')],
|
62
|
+
plugins: [[require.resolve('@babel/plugin-transform-runtime'), {
|
53
63
|
helpers: true,
|
54
64
|
regenerator: false
|
55
|
-
}], require.resolve(
|
65
|
+
}], require.resolve('@babel/plugin-syntax-dynamic-import'), require.resolve('@babel/plugin-syntax-object-rest-spread')],
|
56
66
|
cacheDirectory: true
|
57
67
|
}
|
58
68
|
}],
|
59
69
|
include: _path.default.join(appPath, folder)
|
60
70
|
}, {
|
61
71
|
test: /\.docs\.js$/,
|
62
|
-
use: require.resolve(
|
72
|
+
use: require.resolve('../loaders/docsLoader.js'),
|
63
73
|
include: _path.default.join(appPath, folder),
|
64
74
|
exclude: /node_modules/
|
65
75
|
}, {
|
66
76
|
test: /(\.module)?\.css$/,
|
67
|
-
use: (0, _loaderUtils.getCSSLoaders)(
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
77
|
+
use: (0, _loaderUtils.getCSSLoaders)({
|
78
|
+
plugins,
|
79
|
+
exclude,
|
80
|
+
mediaQueryHoverActiveString,
|
81
|
+
cssVariableReplacementConfig,
|
82
|
+
selectorWeightConfig,
|
83
|
+
classNameBlob: false,
|
84
|
+
cssUniqueness,
|
85
|
+
selectorReplace: null,
|
86
|
+
cssHashSelectors,
|
87
|
+
classNamePrefix
|
88
|
+
})
|
89
|
+
}, (0, _configsAssetsLoaders.configImageLoader)(nameTemplate), (0, _configsAssetsLoaders.configFontLoader)(nameTemplate), (0, _configsAssetsLoaders.configSVGLoader)(nameTemplate), (0, _configsAssetsLoaders.configAudioLoader)(nameTemplate), (0, _configsAssetsLoaders.configVideoLoader)(nameTemplate), {
|
78
90
|
test: /\.html$/,
|
79
91
|
use: {
|
80
|
-
loader:
|
92
|
+
loader: 'html-loader',
|
81
93
|
options: {
|
82
|
-
attrs: [
|
83
|
-
interpolate:
|
94
|
+
attrs: [':data-src'],
|
95
|
+
interpolate: 'require'
|
84
96
|
}
|
85
97
|
}
|
86
|
-
}, {
|
87
|
-
test: /\.ogg$/,
|
88
|
-
use: ["file-loader?name=./fonts/[name].[ext]"]
|
89
98
|
}, {
|
90
99
|
test: /\.tmpl$/,
|
91
100
|
use: [{
|
92
|
-
loader:
|
101
|
+
loader: 'html-loader',
|
93
102
|
options: {
|
94
|
-
interpolate:
|
103
|
+
interpolate: 'require',
|
95
104
|
ignoreCustomFragments: [/\{\{.*?}}/, /\$\{.*?}/],
|
96
105
|
minimize: true,
|
97
106
|
removeComments: true,
|
@@ -104,13 +113,8 @@ module.exports = {
|
|
104
113
|
}]
|
105
114
|
},
|
106
115
|
externals: {
|
107
|
-
ZC:
|
108
|
-
},
|
109
|
-
resolve: {
|
110
|
-
modules: [_path.default.resolve(__dirname, "..", "..", "node_modules"), "node_modules"]
|
111
|
-
},
|
112
|
-
resolveLoader: {
|
113
|
-
modules: [_path.default.resolve(__dirname, "..", "..", "node_modules"), "node_modules"]
|
116
|
+
ZC: '$ZC'
|
114
117
|
},
|
115
|
-
|
118
|
+
resolve: (0, _resolvers.moduleResolver)(options),
|
119
|
+
resolveLoader: (0, _resolvers.loaderResolver)(options)
|
116
120
|
};
|