@zohodesk/react-cli 1.1.7 → 1.1.8-exp.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) 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 +1293 -1251
  6. package/bin/cli.js +497 -497
  7. package/docs/ComposeMinification.md +13 -13
  8. package/docs/CustomChunks.md +29 -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/MarkdownParser.md +17 -17
  14. package/docs/ReactLive.md +13 -13
  15. package/docs/SelectorWeight.md +8 -8
  16. package/docs/TODOS.md +10 -10
  17. package/docs/ValueReplacer.md +60 -60
  18. package/docs/VariableConversion.md +729 -729
  19. package/docs/patternFiltering.md +56 -56
  20. package/docs/warnings_while_install.txt +35 -35
  21. package/files/eslintrc.js +62 -62
  22. package/files/prettierrc.js +3 -3
  23. package/lib/common/splitChunks.js +65 -45
  24. package/lib/common/testPattern.js +9 -9
  25. package/lib/configs/webpack.css.umd.config.js +4 -4
  26. package/lib/configs/webpack.dev.config.js +24 -3
  27. package/lib/configs/webpack.docs.config.js +22 -3
  28. package/lib/configs/webpack.impact.config.js +4 -2
  29. package/lib/configs/webpack.prod.config.js +6 -3
  30. package/lib/deprecationLogger.js +41 -0
  31. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  32. package/lib/loaderUtils/getCSSLoaders.js +77 -56
  33. package/lib/loaders/workerLoader.js +9 -9
  34. package/lib/pluginUtils/getDevPlugins.js +8 -7
  35. package/lib/pluginUtils/getProdPlugins.js +6 -6
  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/ResourceHintsPlugin.js +30 -20
  46. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  47. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  48. package/lib/plugins/SelectorPlugin.js +29 -29
  49. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  50. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  51. package/lib/plugins/VariableConversionCollector.js +59 -59
  52. package/lib/plugins/utils/fileHandling.js +35 -42
  53. package/lib/plugins/variableConvertorUtils.js +9 -9
  54. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  55. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  56. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  57. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  58. package/lib/schemas/index.js +19 -36
  59. package/lib/sh/pre-commit.sh +34 -34
  60. package/lib/sh/reportPublish.sh +45 -45
  61. package/lib/utils/buildstats.html +148 -148
  62. package/lib/utils/cssClassNameGenerate.js +13 -13
  63. package/lib/utils/deprecationSupport.js +144 -0
  64. package/lib/utils/getOptions.js +18 -78
  65. package/lib/utils/resultSchema.json +73 -73
  66. package/npm-shrinkwrap.json +33393 -33393
  67. package/npm8.md +9 -9
  68. package/package.json +123 -123
  69. package/postpublish.js +8 -8
  70. package/result.json +1 -0
  71. package/templates/app/.eslintrc.js +140 -140
  72. package/templates/app/README.md +12 -12
  73. package/templates/app/app/index.html +24 -24
  74. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  75. package/templates/app/app/properties/i18nkeys.json +3 -3
  76. package/templates/app/docs/all.html +69 -69
  77. package/templates/app/mockapi/index.js +18 -18
  78. package/templates/app/package.json +37 -37
  79. package/templates/app/src/actions/SampleActions/index.js +37 -37
  80. package/templates/app/src/actions/index.js +65 -65
  81. package/templates/app/src/appUrls.js +19 -19
  82. package/templates/app/src/components/Alert/Alert.js +134 -134
  83. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  84. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  85. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  86. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  87. package/templates/app/src/components/Sample/SampleList.js +61 -61
  88. package/templates/app/src/components/Slider/Slider.css +41 -41
  89. package/templates/app/src/components/Slider/Slider.js +55 -55
  90. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  91. package/templates/app/src/containers/AppContainer/index.js +96 -96
  92. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  93. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  94. package/templates/app/src/containers/DevTools/index.js +10 -10
  95. package/templates/app/src/containers/Header/index.js +67 -67
  96. package/templates/app/src/containers/Header/index.module.css +43 -43
  97. package/templates/app/src/containers/Redirect/index.js +63 -63
  98. package/templates/app/src/containers/Redirector/index.js +47 -47
  99. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  100. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  101. package/templates/app/src/historyChange.js +5 -5
  102. package/templates/app/src/index.html +10 -10
  103. package/templates/app/src/index.js +24 -24
  104. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  105. package/templates/app/src/reducers/alertData.js +11 -11
  106. package/templates/app/src/reducers/index.js +6 -6
  107. package/templates/app/src/reducers/samples.js +19 -19
  108. package/templates/app/src/store/configureStore.dev.js +51 -51
  109. package/templates/app/src/store/configureStore.js +5 -5
  110. package/templates/app/src/store/configureStore.prod.js +26 -26
  111. package/templates/app/src/util/Common.js +5 -5
  112. package/templates/app/src/util/RequestAPI.js +132 -132
  113. package/templates/docs/all.html +250 -250
  114. package/templates/docs/component.html +179 -179
  115. package/templates/docs/components.html +222 -222
  116. package/templates/docs/css/b.min.css +6 -6
  117. package/templates/docs/css/component.css +42 -42
  118. package/templates/docs/css/componentTest.css +6 -6
  119. package/templates/docs/css/hopscotch.css +585 -585
  120. package/templates/docs/css/markdown.css +202 -202
  121. package/templates/docs/css/style.css +1022 -1022
  122. package/templates/docs/impactReportTemplate.html +154 -154
  123. package/templates/docs/index.html +1502 -1502
  124. package/templates/docs/js/active-line.js +72 -72
  125. package/templates/docs/js/b.min.js +7 -7
  126. package/templates/docs/js/codemirror.js +9680 -9680
  127. package/templates/docs/js/designTokens.js +334 -334
  128. package/templates/docs/js/j.min.js +4 -4
  129. package/templates/docs/js/javascript.js +874 -874
  130. package/templates/docs/js/matchbrackets.js +145 -145
  131. package/unittest/index.html +37 -0
package/.eslintignore CHANGED
@@ -1,7 +1,7 @@
1
- **/*.docs.js
2
- **/*.spec.js
3
- /src/jest/setup.js
4
- **/lib/*
5
- **/es/*
6
- **/templates/*
7
- **/eslint
1
+ **/*.docs.js
2
+ **/*.spec.js
3
+ /src/jest/setup.js
4
+ **/lib/*
5
+ **/es/*
6
+ **/templates/*
7
+ **/eslint
package/.eslintrc.js CHANGED
@@ -1,180 +1,180 @@
1
- let getOptions = require('./lib/utils/getOptions').default;
2
-
3
- let {
4
- esLint: { isCI }
5
- } = getOptions();
6
- let logLevel = 'error';
7
-
8
- let CIConfig = {
9
- env: {
10
- browser: true,
11
- commonjs: true,
12
- es6: true,
13
- node: true
14
- },
15
- parser: 'babel-eslint',
16
- parserOptions: {
17
- ecmaFeatures: {
18
- jsx: true
19
- },
20
- sourceType: 'module',
21
- allowImportExportEverywhere: true
22
- },
23
- settings: {
24
- react: {
25
- version: '16.8.5'
26
- }
27
- },
28
- plugins: ['@zohodesk/zsecurity', '@zohodesk/react-performance'],
29
- rules: {
30
- '@zohodesk/zsecurity/no-unsecure-html': [logLevel],
31
- '@zohodesk/zsecurity/no-protocol-check': [logLevel],
32
- '@zohodesk/react-performance/no-ref-mapstatetoprops': [logLevel]
33
- }
34
- };
35
-
36
- let commonConfigs = {
37
- env: {
38
- browser: true,
39
- commonjs: true,
40
- es6: true,
41
- node: true
42
- },
43
- extends: [
44
- 'eslint:recommended',
45
- 'plugin:react/recommended',
46
- 'plugin:css-modules/recommended'
47
- ],
48
- parserOptions: {
49
- ecmaFeatures: {
50
- jsx: true
51
- },
52
- sourceType: 'module'
53
- },
54
- settings: {
55
- react: {
56
- version: '16.8.5'
57
- }
58
- },
59
- plugins: [
60
- 'react',
61
- 'css-modules',
62
- '@zohodesk/zsecurity',
63
- '@zohodesk/react-performance'
64
- ],
65
- rules: {
66
- '@zohodesk/zsecurity/no-unsecure-html': [logLevel],
67
- '@zohodesk/zsecurity/no-protocol-check': [logLevel],
68
- '@zohodesk/react-performance/no-ref-mapstatetoprops': [logLevel],
69
- 'for-direction': [logLevel],
70
- 'no-prototype-builtins': [logLevel],
71
- 'no-template-curly-in-string': [logLevel],
72
- 'array-callback-return': [logLevel],
73
- curly: [logLevel],
74
- 'default-case': [logLevel],
75
- 'dot-location': [logLevel, 'property'],
76
- 'dot-notation': [logLevel],
77
- eqeqeq: [logLevel],
78
- 'guard-for-in': [logLevel],
79
- 'no-alert': [logLevel],
80
- 'no-caller': [logLevel],
81
- 'no-div-regex': [logLevel],
82
- 'no-else-return': [logLevel],
83
- 'no-empty-function': [logLevel],
84
- 'no-eq-null': [logLevel],
85
- 'no-eval': [logLevel],
86
- 'no-extend-native': [logLevel],
87
- 'no-extra-bind': [logLevel],
88
- 'no-floating-decimal': [logLevel],
89
- 'no-iterator': [logLevel],
90
- 'no-labels': [logLevel],
91
- 'no-loop-func': [logLevel],
92
- 'no-multi-str': [logLevel],
93
- 'no-new-wrappers': [logLevel],
94
- 'no-param-reassign': [logLevel],
95
- 'no-proto': [logLevel],
96
- 'no-redeclare': [
97
- logLevel,
98
- {
99
- builtinGlobals: true
100
- }
101
- ],
102
- 'no-return-assign': [logLevel],
103
- 'no-script-url': [logLevel],
104
- 'wrap-iife': [logLevel, 'outside'],
105
- 'block-spacing': [logLevel],
106
- 'brace-style': [logLevel],
107
- camelcase: [logLevel],
108
- 'comma-dangle': [logLevel],
109
- 'comma-spacing': [logLevel],
110
- 'func-call-spacing': [logLevel],
111
- // reference to this https://stackoverflow.com/questions/56337176/prettier-and-eslint-indents-not-working-together
112
- // when using prettier, we should disable eslint's indent rule
113
- indent: ['off', 2, { SwitchCase: 1 }],
114
- 'jsx-quotes': [logLevel, 'prefer-single'],
115
- 'key-spacing': [logLevel],
116
- 'keyword-spacing': [logLevel],
117
- 'lines-between-class-members': [logLevel],
118
- 'no-whitespace-before-property': [logLevel],
119
- 'object-curly-spacing': [logLevel, 'always'],
120
- 'space-before-blocks': [logLevel],
121
- 'switch-colon-spacing': [logLevel],
122
- 'space-in-parens': [logLevel],
123
- quotes: [logLevel, 'single'],
124
- semi: [logLevel],
125
- 'semi-spacing': [logLevel],
126
- 'arrow-spacing': [logLevel],
127
- 'arrow-body-style': [logLevel],
128
- 'prefer-const': [logLevel],
129
- 'arrow-parens': [logLevel, 'as-needed'],
130
- 'no-const-assign': [logLevel],
131
- 'no-dupe-class-members': [logLevel],
132
- 'no-this-before-super': [logLevel],
133
- 'no-duplicate-imports': [
134
- logLevel,
135
- {
136
- includeExports: true
137
- }
138
- ],
139
- 'no-var': [logLevel],
140
- 'prefer-destructuring': [logLevel],
141
- 'prefer-arrow-callback': [logLevel],
142
- 'prefer-spread': [logLevel],
143
- 'prefer-template': [logLevel],
144
- 'prefer-rest-params': [logLevel],
145
- 'no-useless-constructor': [logLevel],
146
- 'no-use-before-define': [logLevel],
147
-
148
- 'react/default-props-match-prop-types': [logLevel],
149
- 'react/destructuring-assignment': [logLevel],
150
- // 'react/no-did-update-set-state': [logLevel],
151
- 'react/no-redundant-should-component-update': [logLevel],
152
- 'react/no-danger': [logLevel],
153
- 'react/no-this-in-sfc': [logLevel],
154
- 'react/no-will-update-set-state': [logLevel],
155
- 'react/no-unused-state': [logLevel],
156
- // 'react/require-default-props': [logLevel],
157
- // 'react/require-optimization': [logLevel],
158
-
159
- 'react/jsx-closing-bracket-location': [logLevel],
160
- 'react/jsx-equals-spacing': [logLevel],
161
- 'react/jsx-indent': [logLevel, 2],
162
- 'react/jsx-key': [logLevel],
163
- 'react/jsx-pascal-case': [logLevel],
164
-
165
- 'react/no-array-index-key': [logLevel],
166
- 'react/no-unused-prop-types': [logLevel],
167
- 'react/forbid-component-props': [0],
168
- 'react/forbid-dom-props': [logLevel],
169
- 'react/jsx-no-bind': [logLevel],
170
- 'react/sort-prop-types': [logLevel],
171
- 'react/jsx-no-duplicate-props': [logLevel],
172
- 'react/no-deprecated': [logLevel],
173
- 'react/no-children-prop': [logLevel],
174
-
175
- 'css-modules/no-unused-class': [logLevel, { camelCase: true }],
176
- 'css-modules/no-undef-class': [logLevel, { camelCase: 'only' }]
177
- }
178
- };
179
-
180
- module.exports = isCI ? CIConfig : commonConfigs;
1
+ let getOptions = require('./lib/utils/getOptions').default;
2
+
3
+ let {
4
+ esLint: { isCI }
5
+ } = getOptions();
6
+ let logLevel = 'error';
7
+
8
+ let CIConfig = {
9
+ env: {
10
+ browser: true,
11
+ commonjs: true,
12
+ es6: true,
13
+ node: true
14
+ },
15
+ parser: 'babel-eslint',
16
+ parserOptions: {
17
+ ecmaFeatures: {
18
+ jsx: true
19
+ },
20
+ sourceType: 'module',
21
+ allowImportExportEverywhere: true
22
+ },
23
+ settings: {
24
+ react: {
25
+ version: '16.8.5'
26
+ }
27
+ },
28
+ plugins: ['@zohodesk/zsecurity', '@zohodesk/react-performance'],
29
+ rules: {
30
+ '@zohodesk/zsecurity/no-unsecure-html': [logLevel],
31
+ '@zohodesk/zsecurity/no-protocol-check': [logLevel],
32
+ '@zohodesk/react-performance/no-ref-mapstatetoprops': [logLevel]
33
+ }
34
+ };
35
+
36
+ let commonConfigs = {
37
+ env: {
38
+ browser: true,
39
+ commonjs: true,
40
+ es6: true,
41
+ node: true
42
+ },
43
+ extends: [
44
+ 'eslint:recommended',
45
+ 'plugin:react/recommended',
46
+ 'plugin:css-modules/recommended'
47
+ ],
48
+ parserOptions: {
49
+ ecmaFeatures: {
50
+ jsx: true
51
+ },
52
+ sourceType: 'module'
53
+ },
54
+ settings: {
55
+ react: {
56
+ version: '16.8.5'
57
+ }
58
+ },
59
+ plugins: [
60
+ 'react',
61
+ 'css-modules',
62
+ '@zohodesk/zsecurity',
63
+ '@zohodesk/react-performance'
64
+ ],
65
+ rules: {
66
+ '@zohodesk/zsecurity/no-unsecure-html': [logLevel],
67
+ '@zohodesk/zsecurity/no-protocol-check': [logLevel],
68
+ '@zohodesk/react-performance/no-ref-mapstatetoprops': [logLevel],
69
+ 'for-direction': [logLevel],
70
+ 'no-prototype-builtins': [logLevel],
71
+ 'no-template-curly-in-string': [logLevel],
72
+ 'array-callback-return': [logLevel],
73
+ curly: [logLevel],
74
+ 'default-case': [logLevel],
75
+ 'dot-location': [logLevel, 'property'],
76
+ 'dot-notation': [logLevel],
77
+ eqeqeq: [logLevel],
78
+ 'guard-for-in': [logLevel],
79
+ 'no-alert': [logLevel],
80
+ 'no-caller': [logLevel],
81
+ 'no-div-regex': [logLevel],
82
+ 'no-else-return': [logLevel],
83
+ 'no-empty-function': [logLevel],
84
+ 'no-eq-null': [logLevel],
85
+ 'no-eval': [logLevel],
86
+ 'no-extend-native': [logLevel],
87
+ 'no-extra-bind': [logLevel],
88
+ 'no-floating-decimal': [logLevel],
89
+ 'no-iterator': [logLevel],
90
+ 'no-labels': [logLevel],
91
+ 'no-loop-func': [logLevel],
92
+ 'no-multi-str': [logLevel],
93
+ 'no-new-wrappers': [logLevel],
94
+ 'no-param-reassign': [logLevel],
95
+ 'no-proto': [logLevel],
96
+ 'no-redeclare': [
97
+ logLevel,
98
+ {
99
+ builtinGlobals: true
100
+ }
101
+ ],
102
+ 'no-return-assign': [logLevel],
103
+ 'no-script-url': [logLevel],
104
+ 'wrap-iife': [logLevel, 'outside'],
105
+ 'block-spacing': [logLevel],
106
+ 'brace-style': [logLevel],
107
+ camelcase: [logLevel],
108
+ 'comma-dangle': [logLevel],
109
+ 'comma-spacing': [logLevel],
110
+ 'func-call-spacing': [logLevel],
111
+ // reference to this https://stackoverflow.com/questions/56337176/prettier-and-eslint-indents-not-working-together
112
+ // when using prettier, we should disable eslint's indent rule
113
+ indent: ['off', 2, { SwitchCase: 1 }],
114
+ 'jsx-quotes': [logLevel, 'prefer-single'],
115
+ 'key-spacing': [logLevel],
116
+ 'keyword-spacing': [logLevel],
117
+ 'lines-between-class-members': [logLevel],
118
+ 'no-whitespace-before-property': [logLevel],
119
+ 'object-curly-spacing': [logLevel, 'always'],
120
+ 'space-before-blocks': [logLevel],
121
+ 'switch-colon-spacing': [logLevel],
122
+ 'space-in-parens': [logLevel],
123
+ quotes: [logLevel, 'single'],
124
+ semi: [logLevel],
125
+ 'semi-spacing': [logLevel],
126
+ 'arrow-spacing': [logLevel],
127
+ 'arrow-body-style': [logLevel],
128
+ 'prefer-const': [logLevel],
129
+ 'arrow-parens': [logLevel, 'as-needed'],
130
+ 'no-const-assign': [logLevel],
131
+ 'no-dupe-class-members': [logLevel],
132
+ 'no-this-before-super': [logLevel],
133
+ 'no-duplicate-imports': [
134
+ logLevel,
135
+ {
136
+ includeExports: true
137
+ }
138
+ ],
139
+ 'no-var': [logLevel],
140
+ 'prefer-destructuring': [logLevel],
141
+ 'prefer-arrow-callback': [logLevel],
142
+ 'prefer-spread': [logLevel],
143
+ 'prefer-template': [logLevel],
144
+ 'prefer-rest-params': [logLevel],
145
+ 'no-useless-constructor': [logLevel],
146
+ 'no-use-before-define': [logLevel],
147
+
148
+ 'react/default-props-match-prop-types': [logLevel],
149
+ 'react/destructuring-assignment': [logLevel],
150
+ // 'react/no-did-update-set-state': [logLevel],
151
+ 'react/no-redundant-should-component-update': [logLevel],
152
+ 'react/no-danger': [logLevel],
153
+ 'react/no-this-in-sfc': [logLevel],
154
+ 'react/no-will-update-set-state': [logLevel],
155
+ 'react/no-unused-state': [logLevel],
156
+ // 'react/require-default-props': [logLevel],
157
+ // 'react/require-optimization': [logLevel],
158
+
159
+ 'react/jsx-closing-bracket-location': [logLevel],
160
+ 'react/jsx-equals-spacing': [logLevel],
161
+ 'react/jsx-indent': [logLevel, 2],
162
+ 'react/jsx-key': [logLevel],
163
+ 'react/jsx-pascal-case': [logLevel],
164
+
165
+ 'react/no-array-index-key': [logLevel],
166
+ 'react/no-unused-prop-types': [logLevel],
167
+ 'react/forbid-component-props': [0],
168
+ 'react/forbid-dom-props': [logLevel],
169
+ 'react/jsx-no-bind': [logLevel],
170
+ 'react/sort-prop-types': [logLevel],
171
+ 'react/jsx-no-duplicate-props': [logLevel],
172
+ 'react/no-deprecated': [logLevel],
173
+ 'react/no-children-prop': [logLevel],
174
+
175
+ 'css-modules/no-unused-class': [logLevel, { camelCase: true }],
176
+ 'css-modules/no-undef-class': [logLevel, { camelCase: 'only' }]
177
+ }
178
+ };
179
+
180
+ module.exports = isCI ? CIConfig : commonConfigs;
package/.prettierrc CHANGED
@@ -1,6 +1,6 @@
1
- {
2
- "trailingComma": "none",
3
- "singleQuote": true,
4
- "arrowParens": "avoid",
5
- "jsxSingleQuote": true
6
- }
1
+ {
2
+ "trailingComma": "none",
3
+ "singleQuote": true,
4
+ "arrowParens": "avoid",
5
+ "jsxSingleQuote": true
6
+ }