@zohodesk/react-cli 1.0.2 → 1.0.3-exp.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 +180 -180
- package/.prettierrc +6 -6
- package/Changelog.md +1019 -1019
- package/README.md +1209 -1165
- package/bin/cli.js +489 -483
- package/docs/ComposeMinification.md +14 -0
- package/docs/CustomChunks.md +26 -26
- package/docs/DevServerPort.md +39 -39
- package/docs/DevStart.md +18 -18
- package/docs/HoverActive.md +12 -12
- package/docs/InstallNode.md +28 -28
- package/docs/SelectorWeight.md +8 -8
- package/docs/TODOS.md +10 -10
- package/docs/ValueReplacer.md +60 -60
- package/docs/VariableConversion.md +729 -729
- package/docs/warnings_while_install.txt +35 -35
- package/files/eslintrc.js +62 -62
- package/files/prettierrc.js +3 -3
- package/lib/common/buildEs.js +12 -0
- package/lib/common/testPattern.js +0 -2
- package/lib/common/valueReplacer.js +1 -3
- package/lib/configs/resolvers.js +14 -3
- package/lib/configs/webpack.css.umd.config.js +4 -4
- package/lib/configs/webpack.dev.config.js +6 -0
- package/lib/configs/webpack.docs.config.js +4 -0
- package/lib/configs/webpack.impact.config.js +4 -0
- package/lib/configs/webpack.prod.config.js +6 -0
- package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
- package/lib/loaderUtils/getCSSLoaders.js +78 -49
- package/lib/loaderUtils/tests/windowsModification.test.js +10 -0
- package/lib/loaderUtils/windowsModification.js +6 -1
- package/lib/loaders/composeLoader.js +172 -0
- package/lib/loaders/selectorMappingLoader.js +9 -9
- package/lib/loaders/workerLoader.js +9 -9
- package/lib/logger.js +20 -0
- package/lib/pluginUtils/getDevPlugins.js +23 -8
- package/lib/pluginUtils/getProdPlugins.js +20 -8
- package/lib/pluginUtils/getUMDCSSPlugins.js +1 -1
- package/lib/pluginUtils/getUMDComponentPlugins.js +1 -1
- package/lib/plugins/CustomAttributePlugin.js +82 -0
- package/lib/plugins/CustomAttributePlugin.md +35 -0
- package/lib/plugins/EFCPlugin.js +9 -9
- package/lib/plugins/EFCPlugin.md +6 -6
- package/lib/plugins/EFCTemplatePlugin.js +10 -12
- package/lib/plugins/I18NInjectIntoIndexPlugin.js +12 -13
- package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +2 -3
- package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
- package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
- package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +10 -15
- package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
- package/lib/plugins/I18nSplitPlugin/README.md +25 -25
- package/lib/plugins/I18nSplitPlugin/index.js +57 -57
- package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +8 -8
- package/lib/plugins/{UglifyCSSPlugin.js → MinifyPlugin.js} +3 -3
- package/lib/plugins/ResourceHintsPlugin.js +17 -17
- package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
- package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
- package/lib/plugins/SelectorPlugin.js +66 -48
- package/lib/plugins/ServiceWorkerPlugin.js +9 -9
- package/lib/plugins/TPHashMappingPlugin.js +4 -4
- package/lib/plugins/VariableConversionCollector.js +94 -88
- package/lib/plugins/index.js +7 -7
- package/lib/plugins/utils/classHandling.js +20 -0
- package/lib/plugins/utils/fileHandling.js +107 -0
- package/lib/plugins/utils/tests/fileHandling.test.js +30 -0
- package/lib/postcss-plugins/EmptyPlugin.js +8 -0
- package/lib/postcss-plugins/ExcludePlugin.js +1 -1
- package/lib/postcss-plugins/IncludePlugin.js +0 -1
- package/lib/postcss-plugins/RTLSplitPlugin.js +14 -20
- package/lib/postcss-plugins/ValueReplacer.js +2 -13
- package/lib/postcss-plugins/__test__/test1Input.css +38 -38
- package/lib/postcss-plugins/__test__/test1Output.css +38 -38
- package/lib/postcss-plugins/hoverActivePlugin.js +3 -9
- package/lib/postcss-plugins/variableModificationPlugin/index.js +2 -21
- package/lib/schemas/index.js +39 -4
- package/lib/servers/devBuild.js +13 -11
- package/lib/servers/httpsOptions.js +12 -13
- package/lib/servers/nowatchserver.js +5 -3
- package/lib/servers/requireLocalOrGlobal.js +61 -0
- package/lib/servers/server.js +3 -5
- package/lib/sh/pre-commit.sh +34 -34
- package/lib/sh/reportPublish.sh +45 -45
- package/lib/utils/buildstats.html +148 -148
- package/lib/utils/cssClassNameGenerate.js +38 -12
- package/lib/utils/getOptions.js +9 -0
- package/lib/utils/resultSchema.json +73 -73
- package/lib/utils/variableConvertor.js +159 -0
- package/npm8.md +9 -9
- package/package-lock.json +14412 -0
- package/package.json +121 -120
- package/postpublish.js +8 -8
- 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 -1501
- 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/lib/plugins/composeCommonPlugin.js +0 -30
- package/lib/postcss-plugins/variableModifier.js +0 -244
- package/result.json +0 -1
- package/unittest/index.html +0 -37
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _windowsModification = require("../loaderUtils/windowsModification");
|
|
4
|
+
|
|
5
|
+
var _fileHandling = require("../plugins/utils/fileHandling");
|
|
6
|
+
|
|
7
|
+
var _getOptions = _interopRequireDefault(require("../utils/getOptions"));
|
|
8
|
+
|
|
9
|
+
var _folderIterator = _interopRequireDefault(require("./folderIterator"));
|
|
10
|
+
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
|
|
13
|
+
const postcss = require('postcss');
|
|
14
|
+
|
|
15
|
+
const path = require('path');
|
|
16
|
+
|
|
17
|
+
const fs = require('fs');
|
|
18
|
+
|
|
19
|
+
const postcssVariableConvertor = require('../postcss-plugins/variableModificationPlugin/index').plugin;
|
|
20
|
+
|
|
21
|
+
let cwd = process.cwd();
|
|
22
|
+
let src = path.join(cwd, process.argv[2]);
|
|
23
|
+
let dist = path.join(cwd, process.argv[3]);
|
|
24
|
+
const options = (0, _getOptions.default)();
|
|
25
|
+
const ignoreVals = ['--zd_size', '--zd_font_size', '--size', '--size_'];
|
|
26
|
+
|
|
27
|
+
function extractVariableName(val) {
|
|
28
|
+
return val.replace(/calc\((.+)\)/gi, '$1').replace(/var\((.+)\)/gi, '$1').replace('-1', '').replace('*', '').replace('\n', '').trim();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function isIgnoreValuePresent(ignoreVals, prop) {
|
|
32
|
+
let present = false;
|
|
33
|
+
ignoreVals.forEach(issue => {
|
|
34
|
+
if (prop && prop.includes(issue)) {
|
|
35
|
+
present = true;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
return present;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function variableConvertor(rootOriginal, variables, settingsObject) {
|
|
42
|
+
rootOriginal.walkRules(rule => {
|
|
43
|
+
rule.nodes.forEach((decl, index) => {
|
|
44
|
+
const prevNode = rule.nodes[index - 1];
|
|
45
|
+
const currentNode = rule.nodes[index];
|
|
46
|
+
|
|
47
|
+
if (decl.prop && decl.prop.includes('--')) {
|
|
48
|
+
if (prevNode && prevNode.type === 'comment' && prevNode.text.toLowerCase() === 'variable:ignore') {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (isIgnoreValuePresent(ignoreVals, decl.prop)) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if (settingsObject[variables[decl.prop]]) {
|
|
57
|
+
/* if there is no value for property, set it to default so that undefined doesn't get called as key */
|
|
58
|
+
if (!variables[decl.prop]) {
|
|
59
|
+
variables[decl.prop] = 'default';
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
const pxReplacement = settingsObject[variables[decl.prop]].replacements.px;
|
|
63
|
+
const valArr = decl.value.split(' '); // single values are considered in the above array and converted below
|
|
64
|
+
|
|
65
|
+
valArr.forEach((value, index) => {
|
|
66
|
+
if (value.includes('px')) {
|
|
67
|
+
const num = value.replace('px', '');
|
|
68
|
+
valArr[index] = pxReplacement.replace('$$', num);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
currentNode.value = valArr.join(' ');
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
return rootOriginal;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
function watchHandler(fromPath, toPath) {
|
|
80
|
+
let css = fs.readFileSync(fromPath, 'utf-8'); // console.log(css);
|
|
81
|
+
|
|
82
|
+
const {
|
|
83
|
+
css: cssOptions,
|
|
84
|
+
app: appOptions
|
|
85
|
+
} = options; // console.log(cssOptions, appOptions);
|
|
86
|
+
|
|
87
|
+
const {
|
|
88
|
+
cssVariableReplacementConfig: cssVariableConfigFilePath,
|
|
89
|
+
patterns: cssPatterns
|
|
90
|
+
} = cssOptions;
|
|
91
|
+
const {
|
|
92
|
+
cssVariableReplacementConfig: appVariableConfigFilePath,
|
|
93
|
+
patterns: appPatterns
|
|
94
|
+
} = appOptions;
|
|
95
|
+
const cssVariableOptions = cssVariableConfigFilePath && cssVariableConfigFilePath !== '' ? cssVariableConfigFilePath : appVariableConfigFilePath;
|
|
96
|
+
const filterArr = cssOptions && cssPatterns && cssPatterns.cssVariableReplacement && cssPatterns.cssVariableReplacement !== {} ? cssPatterns.cssVariableReplacement : appPatterns.cssVariableReplacement;
|
|
97
|
+
const rootOriginal = postcss.parse(css);
|
|
98
|
+
const variables = {}; // const unassigned = {};
|
|
99
|
+
|
|
100
|
+
const rawdata = fs.readFileSync(cssVariableOptions);
|
|
101
|
+
const data = JSON.parse(rawdata);
|
|
102
|
+
const {
|
|
103
|
+
settings: settingsObject // errorLog: errorLogStatus,
|
|
104
|
+
// errorInConsole: errorConsoleStatus,
|
|
105
|
+
// errorsAllowed,
|
|
106
|
+
// strictMode
|
|
107
|
+
|
|
108
|
+
} = data;
|
|
109
|
+
rootOriginal.walkRules(rule => {
|
|
110
|
+
rule.walkDecls(decl => {
|
|
111
|
+
decl.value.split(' ').forEach(val => {
|
|
112
|
+
if (val && val.includes('--') && !new RegExp(ignoreVals.join('|'), 'gi').test(val) && decl.prop) {
|
|
113
|
+
const extractedValue = extractVariableName(val);
|
|
114
|
+
|
|
115
|
+
if (!variables[extractedValue]) {
|
|
116
|
+
variables[extractedValue] = decl.prop;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
const strArray = (0, _windowsModification.windowsModificationFile)(process.cwd()).split('\\');
|
|
123
|
+
const lastElem = strArray[strArray.length - 1].toString();
|
|
124
|
+
|
|
125
|
+
if (!(0, _fileHandling.isFileNameMatchingPluginPattern)({
|
|
126
|
+
filename: fromPath,
|
|
127
|
+
filterArr,
|
|
128
|
+
rootDir: lastElem
|
|
129
|
+
})) {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
const convertedCode = variableConvertor(rootOriginal, variables, settingsObject).toString();
|
|
134
|
+
|
|
135
|
+
if (convertedCode.trim() !== '') {
|
|
136
|
+
fs.writeFile(fromPath, convertedCode, () => true);
|
|
137
|
+
} // console.log(convertedCode);
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
postcss([postcssVariableConvertor(cssVariableOptions)]).process(css, {
|
|
141
|
+
from: fromPath,
|
|
142
|
+
to: toPath
|
|
143
|
+
}).then(result => {
|
|
144
|
+
fs.writeFile(toPath, result.css, () => true);
|
|
145
|
+
|
|
146
|
+
if (result.map) {
|
|
147
|
+
fs.writeFile(`${toPath}.map`, result.map, () => true);
|
|
148
|
+
}
|
|
149
|
+
}); // console.log(variableOptions);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
(0, _folderIterator.default)(src, dist, ['.css'], false, (fromPath, toPath) => {
|
|
153
|
+
// console.log(fromPath, toPath);
|
|
154
|
+
watchHandler(fromPath, toPath);
|
|
155
|
+
}); // if (canWacth) {
|
|
156
|
+
// useExitCleanup(() => {
|
|
157
|
+
// fs.unwatchFile(src, watchHandler);
|
|
158
|
+
// });
|
|
159
|
+
// }
|
package/npm8.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
# npm 8 change related things
|
|
2
|
-
|
|
3
|
-
1. in npm run script config options `:` not working (properly|correctly), So we need to use `_` in the place of `:`
|
|
4
|
-
For Example:
|
|
5
|
-
- `--app:port` wouldn't work we have to do like this `--app_port`
|
|
6
|
-
- `--clone:proj:name` wouldn't work we have to do like this `----clone_proj_name`
|
|
7
|
-
|
|
8
|
-
@zohodes/react-cli or fz-react-cli regardless of what cli you use.
|
|
9
|
-
So, we need to change all package.json script which is using this (`:`) we need to change as (`_`)
|
|
1
|
+
# npm 8 change related things
|
|
2
|
+
|
|
3
|
+
1. in npm run script config options `:` not working (properly|correctly), So we need to use `_` in the place of `:`
|
|
4
|
+
For Example:
|
|
5
|
+
- `--app:port` wouldn't work we have to do like this `--app_port`
|
|
6
|
+
- `--clone:proj:name` wouldn't work we have to do like this `----clone_proj_name`
|
|
7
|
+
|
|
8
|
+
@zohodes/react-cli or fz-react-cli regardless of what cli you use.
|
|
9
|
+
So, we need to change all package.json script which is using this (`:`) we need to change as (`_`)
|