@zohodesk/react-cli 1.0.3-beta.1 → 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.
Files changed (138) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +180 -180
  3. package/.prettierrc +6 -6
  4. package/Changelog.md +1019 -1019
  5. package/README.md +1209 -1189
  6. package/bin/cli.js +489 -483
  7. package/docs/ComposeMinification.md +14 -0
  8. package/docs/CustomChunks.md +26 -26
  9. package/docs/DevServerPort.md +39 -39
  10. package/docs/DevStart.md +18 -18
  11. package/docs/HoverActive.md +12 -12
  12. package/docs/InstallNode.md +28 -28
  13. package/docs/SelectorWeight.md +8 -8
  14. package/docs/TODOS.md +10 -10
  15. package/docs/ValueReplacer.md +60 -60
  16. package/docs/VariableConversion.md +729 -729
  17. package/docs/warnings_while_install.txt +35 -35
  18. package/files/eslintrc.js +62 -62
  19. package/files/prettierrc.js +3 -3
  20. package/lib/common/buildEs.js +12 -0
  21. package/lib/configs/webpack.css.umd.config.js +4 -4
  22. package/lib/configs/webpack.dev.config.js +6 -0
  23. package/lib/configs/webpack.docs.config.js +4 -0
  24. package/lib/configs/webpack.impact.config.js +4 -0
  25. package/lib/configs/webpack.prod.config.js +6 -0
  26. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  27. package/lib/loaderUtils/getCSSLoaders.js +80 -46
  28. package/lib/loaderUtils/tests/windowsModification.test.js +10 -0
  29. package/lib/loaderUtils/windowsModification.js +6 -1
  30. package/lib/loaders/composeLoader.js +172 -0
  31. package/lib/loaders/workerLoader.js +9 -9
  32. package/lib/pluginUtils/getDevPlugins.js +18 -8
  33. package/lib/pluginUtils/getProdPlugins.js +16 -8
  34. package/lib/pluginUtils/getUMDCSSPlugins.js +1 -1
  35. package/lib/pluginUtils/getUMDComponentPlugins.js +1 -1
  36. package/lib/plugins/CustomAttributePlugin.md +35 -35
  37. package/lib/plugins/EFCPlugin.md +6 -6
  38. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  39. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
  40. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  41. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  42. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  43. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  44. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  45. package/lib/plugins/{UglifyCSSPlugin.js → MinifyPlugin.js} +3 -3
  46. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  47. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  48. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  49. package/lib/plugins/SelectorPlugin.js +64 -40
  50. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  51. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  52. package/lib/plugins/VariableConversionCollector.js +94 -84
  53. package/lib/plugins/index.js +7 -7
  54. package/lib/plugins/utils/classHandling.js +20 -0
  55. package/lib/plugins/utils/fileHandling.js +107 -0
  56. package/lib/plugins/utils/tests/fileHandling.test.js +30 -0
  57. package/lib/postcss-plugins/EmptyPlugin.js +8 -0
  58. package/lib/postcss-plugins/ExcludePlugin.js +1 -1
  59. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  60. package/lib/postcss-plugins/ValueReplacer.js +5 -14
  61. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  62. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  63. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  64. package/lib/postcss-plugins/variableModificationPlugin/index.js +1 -19
  65. package/lib/schemas/index.js +31 -3
  66. package/lib/servers/server.js +2 -2
  67. package/lib/sh/pre-commit.sh +34 -34
  68. package/lib/sh/reportPublish.sh +45 -45
  69. package/lib/utils/buildstats.html +148 -148
  70. package/lib/utils/cssClassNameGenerate.js +40 -13
  71. package/lib/utils/getOptions.js +9 -0
  72. package/lib/utils/resultSchema.json +73 -73
  73. package/lib/utils/variableConvertor.js +159 -0
  74. package/npm8.md +9 -9
  75. package/{npm-shrinkwrap.json → package-lock.json} +14412 -14407
  76. package/package.json +121 -121
  77. package/postpublish.js +8 -8
  78. package/templates/app/.eslintrc.js +140 -140
  79. package/templates/app/README.md +12 -12
  80. package/templates/app/app/index.html +24 -24
  81. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  82. package/templates/app/app/properties/i18nkeys.json +3 -3
  83. package/templates/app/docs/all.html +69 -69
  84. package/templates/app/mockapi/index.js +18 -18
  85. package/templates/app/package.json +37 -37
  86. package/templates/app/src/actions/SampleActions/index.js +37 -37
  87. package/templates/app/src/actions/index.js +65 -65
  88. package/templates/app/src/appUrls.js +19 -19
  89. package/templates/app/src/components/Alert/Alert.js +134 -134
  90. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  91. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  92. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  93. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  94. package/templates/app/src/components/Sample/SampleList.js +61 -61
  95. package/templates/app/src/components/Slider/Slider.css +41 -41
  96. package/templates/app/src/components/Slider/Slider.js +55 -55
  97. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  98. package/templates/app/src/containers/AppContainer/index.js +96 -96
  99. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  100. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  101. package/templates/app/src/containers/DevTools/index.js +10 -10
  102. package/templates/app/src/containers/Header/index.js +67 -67
  103. package/templates/app/src/containers/Header/index.module.css +43 -43
  104. package/templates/app/src/containers/Redirect/index.js +63 -63
  105. package/templates/app/src/containers/Redirector/index.js +47 -47
  106. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  107. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  108. package/templates/app/src/historyChange.js +5 -5
  109. package/templates/app/src/index.html +10 -10
  110. package/templates/app/src/index.js +24 -24
  111. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  112. package/templates/app/src/reducers/alertData.js +11 -11
  113. package/templates/app/src/reducers/index.js +6 -6
  114. package/templates/app/src/reducers/samples.js +19 -19
  115. package/templates/app/src/store/configureStore.dev.js +51 -51
  116. package/templates/app/src/store/configureStore.js +5 -5
  117. package/templates/app/src/store/configureStore.prod.js +26 -26
  118. package/templates/app/src/util/Common.js +5 -5
  119. package/templates/app/src/util/RequestAPI.js +132 -132
  120. package/templates/docs/all.html +249 -249
  121. package/templates/docs/component.html +178 -178
  122. package/templates/docs/components.html +221 -221
  123. package/templates/docs/css/b.min.css +6 -6
  124. package/templates/docs/css/component.css +42 -42
  125. package/templates/docs/css/componentTest.css +6 -6
  126. package/templates/docs/css/hopscotch.css +585 -585
  127. package/templates/docs/css/style.css +1022 -1022
  128. package/templates/docs/impactReportTemplate.html +154 -154
  129. package/templates/docs/index.html +1501 -1501
  130. package/templates/docs/js/active-line.js +72 -72
  131. package/templates/docs/js/b.min.js +7 -7
  132. package/templates/docs/js/codemirror.js +9680 -9680
  133. package/templates/docs/js/designTokens.js +334 -334
  134. package/templates/docs/js/j.min.js +4 -4
  135. package/templates/docs/js/javascript.js +874 -874
  136. package/templates/docs/js/matchbrackets.js +145 -145
  137. package/lib/plugins/composeCommonPlugin.js +0 -30
  138. package/lib/postcss-plugins/variableModifier.js +0 -210
@@ -1,69 +1,69 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
5
- <style type="text/css">
6
- .comps
7
- {
8
- padding: 10px;
9
- max-width: 100%;
10
- margin-bottom: 10px;
11
- border-bottom: 1px solid #f5f5f5;
12
- }
13
- .componentNameRed
14
- {
15
- color: red;
16
- }
17
- .propertyName
18
- {
19
- color:green;
20
- margin-left: 10px;
21
- }
22
- .valueName
23
- {
24
- color:orange;
25
- margin-right: 10px;
26
- }
27
- .example
28
- {
29
- padding: 20px 20px 20px 0px;
30
- width: 100%;
31
- box-sizing: border-box;
32
- margin: 15px 0px;
33
- }
34
- .htmlTag
35
- {
36
- color: #999;
37
- color: #676565;
38
- line-height: 25px;
39
- margin-bottom: 10px;
40
- font-size: 13px;
41
- }
42
- .textArea
43
- {
44
- min-width: 50%;
45
- outline: none;
46
- min-height: 100px;
47
- margin: 15px 0px;
48
- max-width: 90%;
49
- }
50
-
51
- </style>
52
- </head>
53
- <body>
54
- <div id="react">
55
-
56
- </div>
57
-
58
- <script src="/docs/js/vendor.js" ></script>
59
- <script src="/docs/js/main.js" ></script>
60
- <script>
61
- var React = Component.React;
62
- var ReactDOM = Component.ReactDOM;
63
- var Text__default = Component.Text__default;
64
- ReactDOM.render(React.createElement(Text__default), react);
65
- </script>
66
-
67
-
68
- </body>
69
- </html>
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
5
+ <style type="text/css">
6
+ .comps
7
+ {
8
+ padding: 10px;
9
+ max-width: 100%;
10
+ margin-bottom: 10px;
11
+ border-bottom: 1px solid #f5f5f5;
12
+ }
13
+ .componentNameRed
14
+ {
15
+ color: red;
16
+ }
17
+ .propertyName
18
+ {
19
+ color:green;
20
+ margin-left: 10px;
21
+ }
22
+ .valueName
23
+ {
24
+ color:orange;
25
+ margin-right: 10px;
26
+ }
27
+ .example
28
+ {
29
+ padding: 20px 20px 20px 0px;
30
+ width: 100%;
31
+ box-sizing: border-box;
32
+ margin: 15px 0px;
33
+ }
34
+ .htmlTag
35
+ {
36
+ color: #999;
37
+ color: #676565;
38
+ line-height: 25px;
39
+ margin-bottom: 10px;
40
+ font-size: 13px;
41
+ }
42
+ .textArea
43
+ {
44
+ min-width: 50%;
45
+ outline: none;
46
+ min-height: 100px;
47
+ margin: 15px 0px;
48
+ max-width: 90%;
49
+ }
50
+
51
+ </style>
52
+ </head>
53
+ <body>
54
+ <div id="react">
55
+
56
+ </div>
57
+
58
+ <script src="/docs/js/vendor.js" ></script>
59
+ <script src="/docs/js/main.js" ></script>
60
+ <script>
61
+ var React = Component.React;
62
+ var ReactDOM = Component.ReactDOM;
63
+ var Text__default = Component.Text__default;
64
+ ReactDOM.render(React.createElement(Text__default), react);
65
+ </script>
66
+
67
+
68
+ </body>
69
+ </html>
@@ -1,18 +1,18 @@
1
- const cors = require("cors");
2
- const fileUpload = require("express-fileupload");
3
-
4
- function mockServer(app) {
5
- app.use(
6
- fileUpload({
7
- limits: { fileSize: 50 * 1024 * 1024 }
8
- })
9
- );
10
- app.use(cors());
11
-
12
- app.get("/app/sample/*", (req, res) => {
13
- res.type("html");
14
- res.sendFile(path.join(__dirname + "/../app/index.html"));
15
- });
16
- }
17
-
18
- module.exports = mockServer;
1
+ const cors = require("cors");
2
+ const fileUpload = require("express-fileupload");
3
+
4
+ function mockServer(app) {
5
+ app.use(
6
+ fileUpload({
7
+ limits: { fileSize: 50 * 1024 * 1024 }
8
+ })
9
+ );
10
+ app.use(cors());
11
+
12
+ app.get("/app/sample/*", (req, res) => {
13
+ res.type("html");
14
+ res.sendFile(path.join(__dirname + "/../app/index.html"));
15
+ });
16
+ }
17
+
18
+ module.exports = mockServer;
@@ -1,37 +1,37 @@
1
- {
2
- "name": "sampleapp",
3
- "version": "1.0.0",
4
- "description": "",
5
- "main": "index.js",
6
- "scripts": {
7
- "clean": "react-cli clean build unittest coverage",
8
- "docs": "react-cli docs",
9
- "component": "react-cli build:component",
10
- "component:umd": "react-cli build:component:umd",
11
- "start": "react-cli start",
12
- "build": "react-cli build",
13
- "test": "npm run clean && react-cli test",
14
- "lint": "react-cli lint"
15
- },
16
- "author": "",
17
- "license": "ISC",
18
- "dependencies": {
19
- "@zohodesk/components": "^1.0.0-alpha-21",
20
- "cors": "^2.8.5",
21
- "redux-devtools": "^3.5.0",
22
- "redux-devtools-dock-monitor": "^1.1.3",
23
- "redux-devtools-log-monitor": "^1.4.0",
24
- "redux-logger": "^3.0.6"
25
- },
26
- "react-cli": {
27
- "app": {
28
- "server": {
29
- "hasMock": true
30
- }
31
- }
32
- },
33
- "devDependencies": {
34
- "body-parser": "^1.19.0",
35
- "express-fileupload": "^1.1.5"
36
- }
37
- }
1
+ {
2
+ "name": "sampleapp",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "clean": "react-cli clean build unittest coverage",
8
+ "docs": "react-cli docs",
9
+ "component": "react-cli build:component",
10
+ "component:umd": "react-cli build:component:umd",
11
+ "start": "react-cli start",
12
+ "build": "react-cli build",
13
+ "test": "npm run clean && react-cli test",
14
+ "lint": "react-cli lint"
15
+ },
16
+ "author": "",
17
+ "license": "ISC",
18
+ "dependencies": {
19
+ "@zohodesk/components": "^1.0.0-alpha-21",
20
+ "cors": "^2.8.5",
21
+ "redux-devtools": "^3.5.0",
22
+ "redux-devtools-dock-monitor": "^1.1.3",
23
+ "redux-devtools-log-monitor": "^1.4.0",
24
+ "redux-logger": "^3.0.6"
25
+ },
26
+ "react-cli": {
27
+ "app": {
28
+ "server": {
29
+ "hasMock": true
30
+ }
31
+ }
32
+ },
33
+ "devDependencies": {
34
+ "body-parser": "^1.19.0",
35
+ "express-fileupload": "^1.1.5"
36
+ }
37
+ }
@@ -1,37 +1,37 @@
1
- import { generateAPITypes } from "../../util/Common";
2
- import requestAPI from "../../util/RequestAPI";
3
-
4
- export function getSampleList(isForce = true) {
5
- return {
6
- types: generateAPITypes("SAMPLE_LIST"),
7
- shouldCallAPI: state => {
8
- if (!isForce) {
9
- const { sampleDataList = [] } = state;
10
- return sampleDataList.length === 0;
11
- }
12
- return true;
13
- },
14
- callAPI: state =>
15
- requestAPI(`${mockServerURL}/api/v1/sampleapi`, {})
16
- .get()
17
- .then(res => {
18
- return res;
19
- })
20
- };
21
- }
22
-
23
- export function addSample(payload) {
24
- return {
25
- types: generateAPITypes("ADD_SAMPLE"),
26
- callAPI: state => {
27
- return new Promise((resolve, reject) => {
28
- let url = `${mockServerURL}/api/v1/addSample`;
29
- requestAPI(url, {})
30
- .post("", payload)
31
- .then(res => {
32
- resolve(res);
33
- });
34
- });
35
- }
36
- };
37
- }
1
+ import { generateAPITypes } from "../../util/Common";
2
+ import requestAPI from "../../util/RequestAPI";
3
+
4
+ export function getSampleList(isForce = true) {
5
+ return {
6
+ types: generateAPITypes("SAMPLE_LIST"),
7
+ shouldCallAPI: state => {
8
+ if (!isForce) {
9
+ const { sampleDataList = [] } = state;
10
+ return sampleDataList.length === 0;
11
+ }
12
+ return true;
13
+ },
14
+ callAPI: state =>
15
+ requestAPI(`${mockServerURL}/api/v1/sampleapi`, {})
16
+ .get()
17
+ .then(res => {
18
+ return res;
19
+ })
20
+ };
21
+ }
22
+
23
+ export function addSample(payload) {
24
+ return {
25
+ types: generateAPITypes("ADD_SAMPLE"),
26
+ callAPI: state => {
27
+ return new Promise((resolve, reject) => {
28
+ let url = `${mockServerURL}/api/v1/addSample`;
29
+ requestAPI(url, {})
30
+ .post("", payload)
31
+ .then(res => {
32
+ resolve(res);
33
+ });
34
+ });
35
+ }
36
+ };
37
+ }
@@ -1,65 +1,65 @@
1
- import {
2
- push as routerPush,
3
- replace as routerReplace
4
- } from "redux-router-middleware";
5
-
6
- export function push(obj, isHref) {
7
- //obj.pathname = isHref ? obj.pathname : URL_PREFIX + obj.pathname;
8
- return (dispatch, getState) => {
9
- let state = getState();
10
- dispatch(routerPush(obj));
11
- };
12
- }
13
-
14
- export function replace(obj) {
15
- return (dispatch, getState) => {
16
- let state = getState();
17
- if (
18
- !state.routing.location ||
19
- obj.href !== state.routing.location.pathname
20
- ) {
21
- let locationState =
22
- state.routing.location && state.routing.location.state;
23
- if (!obj.state && locationState) {
24
- obj.state = {};
25
- Object.assign(obj.state, locationState);
26
- }
27
- dispatch(routerReplace(obj));
28
- }
29
- };
30
- }
31
-
32
- export function showAlert(data) {
33
- return {
34
- type: "ALERT_SHOW",
35
- data
36
- };
37
- }
38
-
39
- export function hideAlert() {
40
- return {
41
- type: "ALERT_HIDE"
42
- };
43
- }
44
-
45
- export const alertAction = (() => {
46
- let ob = { resolve: null, reject: null };
47
- function showConfirmBox(data) {
48
- return dispatch =>
49
- new Promise((res, rej) => {
50
- ob.resolve = () => {
51
- dispatch(hideAlert());
52
- res();
53
- };
54
- ob.reject = () => {
55
- dispatch(hideAlert());
56
- rej();
57
- };
58
- dispatch(showAlert(data));
59
- });
60
- }
61
- return {
62
- ob,
63
- showConfirmBox
64
- };
65
- })();
1
+ import {
2
+ push as routerPush,
3
+ replace as routerReplace
4
+ } from "redux-router-middleware";
5
+
6
+ export function push(obj, isHref) {
7
+ //obj.pathname = isHref ? obj.pathname : URL_PREFIX + obj.pathname;
8
+ return (dispatch, getState) => {
9
+ let state = getState();
10
+ dispatch(routerPush(obj));
11
+ };
12
+ }
13
+
14
+ export function replace(obj) {
15
+ return (dispatch, getState) => {
16
+ let state = getState();
17
+ if (
18
+ !state.routing.location ||
19
+ obj.href !== state.routing.location.pathname
20
+ ) {
21
+ let locationState =
22
+ state.routing.location && state.routing.location.state;
23
+ if (!obj.state && locationState) {
24
+ obj.state = {};
25
+ Object.assign(obj.state, locationState);
26
+ }
27
+ dispatch(routerReplace(obj));
28
+ }
29
+ };
30
+ }
31
+
32
+ export function showAlert(data) {
33
+ return {
34
+ type: "ALERT_SHOW",
35
+ data
36
+ };
37
+ }
38
+
39
+ export function hideAlert() {
40
+ return {
41
+ type: "ALERT_HIDE"
42
+ };
43
+ }
44
+
45
+ export const alertAction = (() => {
46
+ let ob = { resolve: null, reject: null };
47
+ function showConfirmBox(data) {
48
+ return dispatch =>
49
+ new Promise((res, rej) => {
50
+ ob.resolve = () => {
51
+ dispatch(hideAlert());
52
+ res();
53
+ };
54
+ ob.reject = () => {
55
+ dispatch(hideAlert());
56
+ rej();
57
+ };
58
+ dispatch(showAlert(data));
59
+ });
60
+ }
61
+ return {
62
+ ob,
63
+ showConfirmBox
64
+ };
65
+ })();
@@ -1,19 +1,19 @@
1
- import { URL_PREFIX } from "./util/Common";
2
-
3
- export default function getUrls(isDomainMapped) {
4
- let urls = [
5
- {
6
- name: "root",
7
- pattern: "/"
8
- },
9
- {
10
- name: "sampleList",
11
- pattern: "/sample"
12
- }
13
- ];
14
-
15
- return urls.map(url => {
16
- url.pattern = `${URL_PREFIX}${url.pattern}`;
17
- return url;
18
- });
19
- }
1
+ import { URL_PREFIX } from "./util/Common";
2
+
3
+ export default function getUrls(isDomainMapped) {
4
+ let urls = [
5
+ {
6
+ name: "root",
7
+ pattern: "/"
8
+ },
9
+ {
10
+ name: "sampleList",
11
+ pattern: "/sample"
12
+ }
13
+ ];
14
+
15
+ return urls.map(url => {
16
+ url.pattern = `${URL_PREFIX}${url.pattern}`;
17
+ return url;
18
+ });
19
+ }