@zohodesk/react-cli 1.1.9 → 1.1.11

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.
@@ -0,0 +1,25 @@
1
+ {
2
+ "cSpell.words": [
3
+ "classname",
4
+ "cmjs",
5
+ "devbuild",
6
+ "escodegen",
7
+ "expublish",
8
+ "gitclone",
9
+ "hgclone",
10
+ "mockapi",
11
+ "mockserver",
12
+ "nowatchserver",
13
+ "nowatchstart",
14
+ "postpublish",
15
+ "propertytojson",
16
+ "sslcert",
17
+ "sslcertupdate",
18
+ "sstest",
19
+ "uglifycss",
20
+ "valuereplacer",
21
+ "xmlhttprequest",
22
+ "zohodesk",
23
+ "zsecurity"
24
+ ]
25
+ }
package/README.md CHANGED
@@ -43,6 +43,58 @@ Now to run app
43
43
  ---
44
44
 
45
45
  # Change Logs
46
+
47
+ # 1.1.11 (4-8-2023)
48
+
49
+ **Changes**
50
+
51
+ - we have renamed our default config file as `react-cli.config.js` instead of `build.config.js`. But we still support `build.config.js` we will remove it in later major version.
52
+
53
+ - Prop-type, Prop description, Default Props support for docs given.
54
+ - Docs and Docs_Code UI updated.
55
+
56
+ **Features:-**
57
+
58
+ - custom classname prefix for separate packages now supported.
59
+ - to use custom classnames for specific patterns, we use the following pattern in `app > customClassNamePrefix` or `docs > customClassNamePrefix` :
60
+
61
+ ```
62
+ "customClassNamePrefix" : [
63
+ {
64
+ "enable": true,
65
+ "prefix": "[required-prefix]",
66
+ "patterns":[
67
+ "**/[path-name]/**/*.css"
68
+ ]
69
+ }
70
+ ]
71
+ ```
72
+
73
+ For example,
74
+
75
+ ```
76
+ "customClassNamePrefix": [
77
+ {
78
+ "enable": true,
79
+ "prefix": "zdSvg",
80
+ "patterns": [
81
+ "**/@zohodesk/svg/**/*.css"
82
+ ]
83
+ },
84
+ ],
85
+ ```
86
+
87
+ **Issue Fix:**
88
+
89
+ - typo fix, (../src/common/runPreProcess.js) to (../lib/common/runPreProcess.js) in cli.js our code.
90
+
91
+ # 1.1.10 (2-8-2023)
92
+
93
+ **Issue Fix:**
94
+
95
+ - undefined plugin postcss issue fixed for docs.
96
+ - unnecessary deprecation warning stopped. (for exclude config)
97
+
46
98
  # 1.1.9 (25-7-2023)
47
99
 
48
100
  **Features:-**
@@ -53,55 +105,65 @@ Now to run app
53
105
  - added support for pattern as function for custom chunks split logic.
54
106
  - added options to split chunks base config in the key `app` => `customChunksBaseConfig` as object
55
107
  - added `postCssPluginOrder` feature :
108
+
56
109
  - If `app > postCssPluginOrder` or `docs > postCssPluginOrder` is set to "false", default plugin order will be followed.
57
- - If `app > postCssPluginOrder` or `docs > postCssPluginOrder` is set to "true", order preserved in `plugins` Object will be considered.
110
+ - If `app > postCssPluginOrder` or `docs > postCssPluginOrder` is set to "true", order preserved in `plugins` Object will be considered.
58
111
  - If `app > postCssPluginOrder` or `docs > postCssPluginOrder` is set to an array with plugins in a custom order, the custom order will be considered.
59
112
 
60
- - We use the same plugin names as in `patterns` for the plugins to execute successfully.
61
-
113
+ - We use the same plugin names as in `patterns` for the plugins to execute successfully.
62
114
 
63
115
  **Issue Fix**
116
+
64
117
  - fixed file path separator issue with split chunks config for vendor exclude list for windows (that was work well for mac and ubuntu only issue in windows).
65
118
  - fixed cssUniqueness pattern not working in docs.
66
119
 
67
120
  **Changes**
121
+
68
122
  - previously all custom chunks are enforce true, no we have given support for enforce false for chunks on splitChunks config.
69
123
 
70
124
  # 1.1.8
71
125
 
72
126
  **Issue Fix**
73
- - Docs fix for Selector Replace 'always require arguement' issue.
127
+
128
+ - Docs fix for Selector Replace 'always require argument' issue.
74
129
 
75
130
  # 1.1.7
76
131
 
77
132
  **Feature**
78
- - Markdown parser feature added in docs
79
- For more info please refer to :
80
- [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/MarkdownParser.md)
81
133
 
134
+ - Markdown parser feature added in docs
135
+ For more info please refer to :
136
+ [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/MarkdownParser.md)
82
137
 
83
138
  # 1.1.6-exp.2
139
+
84
140
  - fixed file path separator issue with split chunks config for vendor exclude list.
85
- - added support for not doing enforce true for chunks on splitchunks config.
141
+ - added support for not doing enforce true for chunks on splitChunks config.
86
142
 
87
143
  # 1.1.5-exp.5
144
+
88
145
  - fixed the issues regarding custom chunks base config schema.
89
146
 
90
147
  # 1.1.5-exp.4
148
+
91
149
  - added support for using regex expression to get group of chunks chunkId via Resource Hint plugin prefetch/preload hook.
92
150
 
93
151
  # 1.1.5-exp.3
152
+
94
153
  - added options to split chunks base config
95
154
  - added support for passing custom chunks split logic as function.
155
+
96
156
  # 1.1.6
97
157
 
98
158
  **Issue Fix**
159
+
99
160
  - local install react-cli spawnSync Error fix in npm 8
100
161
  - babel version update issue fix (Cannot read properties of undefined (reading 'file')) and (BABEL_TRANSFORM_ERROR)
101
162
 
102
163
  # 1.1.5-exp.2
103
164
 
104
165
  **Issue Fix**
166
+
105
167
  - local install react-cli spawnSync Error fix in npm 8
106
168
 
107
169
  # 1.1.5
@@ -113,6 +175,7 @@ For more info please refer to :
113
175
  # 1.1.4
114
176
 
115
177
  **Issue Fix**
178
+
116
179
  - global install react-cli spawnSync Error fix
117
180
  - `0px` variable value conversion issue fixed
118
181
  - pattern exclude for postcss plugins case fixed
@@ -120,6 +183,7 @@ For more info please refer to :
120
183
  # 1.1.3
121
184
 
122
185
  **Issue Fix**
186
+
123
187
  - local install react-cli spawnSync Error fix
124
188
 
125
189
  # 1.1.2
@@ -131,67 +195,75 @@ For more info please refer to :
131
195
  # 1.1.1
132
196
 
133
197
  **Issue Fix**
198
+
134
199
  - docs component name incorrect in windows, when using --enableReactLive issue fixed.
135
200
 
136
- **Feature Update**
201
+ **Feature Update**
202
+
137
203
  - Support for desk-library to use Selector Replace plugin using individual script. To use `react-cli selectorReplacer [source] [target]`
138
204
 
139
205
  # 1.1.0
140
206
 
141
207
  **Feature Update**
142
- - Support for desk-library to use variable convertion plugin using individual script. To use `react-cli variableConverter [source] [target]`
208
+
209
+ - Support for desk-library to use variable conversion plugin using individual script. To use `react-cli variableConverter [source] [target]`
143
210
  - pattern filter changes, new filter system instead of exclude to include or exclude files for plugins.
144
- For more info please refer to :
145
- [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/patternFiltering.md)
211
+ For more info please refer to :
212
+ [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/patternFiltering.md)
146
213
  - React Live feature implemented for Docs.
147
- [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/ReactLive.md)
214
+ [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/2.0.0/docs/ReactLive.md)
148
215
 
149
216
  # 1.0.3-beta.1
150
217
 
151
218
  **Issue Fix**
152
- - nock api not working issue fixed. This error throwing in @zohodesk/react-cli@1.0.2 version. but working in older versions ( 0.0.1-beta.178 )
153
219
 
220
+ - nock api not working issue fixed. This error throwing in @zohodesk/react-cli@1.0.2 version. but working in older versions ( 0.0.1-beta.178 )
154
221
 
155
222
  # 1.0.3
156
223
 
157
224
  **Feature Update**
225
+
158
226
  - Support for global httpsCerts usage
159
227
  - Support for global client_packages_group usage
160
- - custom attribute for dynamically loading chunks, In this version we merged changes from [0.0.1-beta.167.1](#0.0.1-beta.167.1).
161
- **Package Update**
162
- - @zohodesk/client_packages_group@**1.0.1** ==> @zohodesk/client_packages_group@**1.0.2**
163
-
164
-
228
+ - custom attribute for dynamically loading chunks, In this version we merged changes from [0.0.1-beta.167.1](#0.0.1-beta.167.1).
229
+ **Package Update**
230
+ - @zohodesk/client_packages_group@**1.0.1** ==> @zohodesk/client_packages_group@**1.0.2**
165
231
 
166
232
  # 1.0.2
167
233
 
168
234
  **Feature Update**
235
+
169
236
  - Selector replace plugin made as a custom postcss-plugin with update to code that was unpublished in package.
170
237
 
171
238
  # 1.0.1
172
239
 
173
240
  **Issue Fix**
241
+
174
242
  - variable conversion for px and var(--) values in same declaration was not supported, now it is supported.
175
243
  - package-lock.json removed from `.npmignore`
176
244
 
177
245
  **Feature Update**
246
+
178
247
  - exclude added to Selector Plugin
248
+
179
249
  # 1.0.0
250
+
180
251
  ## Major Release
252
+
181
253
  **Changes:**
254
+
182
255
  - File support added for `.webp` for `docs`, `dev` and `prod` mode
183
256
  - File support added for `.webm` for `docs`, `dev` and `prod` mode
184
257
 
185
258
  **Breaking Changes:**
186
259
 
187
- - We have remove ssl certificate for security reasons.
188
- So default https server won't run.
189
- In order to make it work as before you need to specify two things
260
+ - We have remove ssl certificate for security reasons.
261
+ So default https server won't run.
262
+ In order to make it work as before you need to specify two things
190
263
  1. install `@zohodesk-private/client_dev_cert`
191
- 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
192
- unless configaration are proper this may break `start` , `docs` , `nowatchstart`. and mock wms `/wmsmockapi` won't work.
193
- So Please be carefull when you update this version or above without proper configaration.
194
-
264
+ 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
265
+ unless configaration are proper this may break `start` , `docs` , `nowatchstart`. and mock wms `/wmsmockapi` won't work.
266
+ So Please be carefull when you update this version or above without proper configaration.
195
267
 
196
268
  # 0.0.1-beta.178
197
269
 
@@ -202,13 +274,13 @@ For more info please refer to :
202
274
 
203
275
  **Breaking Changes:**
204
276
 
205
- - We have remove ssl certificate for security reasons.
206
- So default https server won't run.
207
- In order to make it work as before you need to specify two things
277
+ - We have remove ssl certificate for security reasons.
278
+ So default https server won't run.
279
+ In order to make it work as before you need to specify two things
208
280
  1. install `@zohodesk-private/client_dev_cert`
209
- 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
210
- unless configaration are proper this may break `start` , `docs` , `nowatchstart`.
211
- So Please be carefull when you update this version or above without proper configaration.
281
+ 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
282
+ unless configaration are proper this may break `start` , `docs` , `nowatchstart`.
283
+ So Please be carefull when you update this version or above without proper configaration.
212
284
 
213
285
  # 0.0.1-exp.178.2
214
286
 
@@ -220,13 +292,13 @@ For more info please refer to :
220
292
 
221
293
  **Breaking Changes:**
222
294
 
223
- - We have remove ssl certificate for security reasons.
224
- So default https server won't run.
225
- In order to make it work as before you need to specify two things
295
+ - We have remove ssl certificate for security reasons.
296
+ So default https server won't run.
297
+ In order to make it work as before you need to specify two things
226
298
  1. install `@zohodesk-private/client_dev_cert`
227
- 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
228
- unless configaration are proper this may break `start` , `docs` , `nowatchstart`.
229
- So Please be carefull when you update this version or above without proper configaration.
299
+ 2. `react-cli.app.server.httpsCerts` option example `"httpsCerts": "@zohodesk-private/client_dev_cert"`
300
+ unless configaration are proper this may break `start` , `docs` , `nowatchstart`.
301
+ So Please be carefull when you update this version or above without proper configaration.
230
302
 
231
303
  # 0.0.1-beta.177
232
304
 
@@ -287,8 +359,8 @@ cli has been updated to fix compose issue faced when classname:hover exists and
287
359
 
288
360
  **Feature:-**
289
361
 
290
- - `react-cli.test.classnameFormat` option added to change CssModules (Ex: import style from "./a.module.css" ) className transform template unittest case.
291
- `classnameFormat` default value `[classname]` you can customize it. Example: `[classname]-[hash]`
362
+ - `react-cli.test.classnameFormat` option added to change CssModules (Ex: import style from "./a.module.css" ) className transform template unittest case.
363
+ `classnameFormat` default value `[classname]` you can customize it. Example: `[classname]-[hash]`
292
364
 
293
365
  **Changes:-**
294
366
 
@@ -307,7 +379,7 @@ For an more information and reference, refer to `[details](https://zgit.csez.zoh
307
379
 
308
380
  # 0.0.1-beta.172
309
381
 
310
- We have renamed some options, For Our future features convenience.
382
+ We have renamed some options, For Our future features convenience.
311
383
  We have given fallback support.
312
384
  Deprecation Warnings:-
313
385
 
@@ -384,8 +456,9 @@ Features:-
384
456
  - In docs we have added `Description` for Component Props- check out it in `PropTypes` tab
385
457
 
386
458
  # 0.0.1-beta.167.1
387
- In this version we merged changes from [0.0.1-betaa.138.1](#0.0.1-betaa.138.1).
388
- and with [0.0.1-beta.167](#0.0.1-beta.167) version changes.
459
+
460
+ In this version we merged changes from [0.0.1-betaa.138.1](#0.0.1-betaa.138.1).
461
+ and with [0.0.1-beta.167](#0.0.1-beta.167) version changes.
389
462
 
390
463
  # 0.0.1-beta.167
391
464
 
@@ -649,6 +722,7 @@ impact servise related changes:-
649
722
  - few enhancements
650
723
 
651
724
  # 0.0.1-betaa.138.1
725
+
652
726
  - new feature added for custom extra attribute for dynamically added tags by webpack.
653
727
  - To enable this feature you need to enable "react-cli" => "app" => "customAttributes" => "enable"
654
728
  - For more [details](https://zgit.csez.zohocorpin.com/zohodesk/react-cli/-/blob/9eea8df14e55584b2114b5e484ca8b751a4ba191/src/plugins/CustomAttributePlugin.md)
@@ -1291,3 +1365,7 @@ impact servise related changes:-
1291
1365
  - prod string error fix
1292
1366
  - efc build support
1293
1367
  - single style tag support
1368
+
1369
+ ```
1370
+
1371
+ ```
package/bin/cli.js CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  const path = require('path');
4
- const { existsSync } = require('fs');
5
- const { spawnSync: _spawnSync, spawn } = require('child_process');
4
+ const { spawnSync: _spawnSync, execSync } = require('child_process');
6
5
  const getOptions = require('../lib/utils/getOptions.js').default;
7
6
 
8
7
  const { log } = require('../lib/utils/log.js');
9
8
  const { getCliPath } = require('../lib/servers/getCliPath.js');
9
+ const { runPreProcess } = require('../lib/common/runPreProcess.js');
10
10
  //initPreCommitHook();
11
11
 
12
12
  const [, , option] = process.argv;
@@ -24,7 +24,6 @@ function spawnSync(...args) {
24
24
  }
25
25
 
26
26
  const { esLint: esLintOptions } = options || {};
27
- const { preprocess } = options;
28
27
  const {
29
28
  ignoreFilePaths: esLintIgnorePaths,
30
29
  fix: esLintFix,
@@ -39,53 +38,10 @@ const babel = getCliPath('babel');
39
38
  const propertyToJson = getCliPath('propertyToJson');
40
39
  const esLint = getCliPath('eslint');
41
40
 
42
- const preprocesserPath = preprocess.runner
43
- ? path.join(process.cwd(), preprocess.runner)
44
- : '';
45
- const preprocessCli = preprocess.stopNodemon ? 'node' : nodemon;
46
- if (preprocesserPath && existsSync(preprocesserPath)) {
47
- // eslint-disable-next-line default-case
48
- switch (option) {
49
- case 'start':
50
- case 'docs':
51
- spawn(
52
- preprocessCli,
53
- [preprocesserPath, '--watch', path.parse(preprocesserPath).dir],
54
- {
55
- stdio: 'inherit',
56
- cwd: path.parse(preprocesserPath).dir
57
- }
58
- );
59
- // NOTE: it's ok if we not close this here
60
- // Because when node server stops this program willbe closed So this nodemon will be killed as well
61
- break;
62
- case 'nowatchstart':
63
- case 'devbuild':
64
- case 'build:library:es':
65
- case 'build:component:es':
66
- case 'build:library:cmjs':
67
- case 'build:component:cmjs':
68
- spawnSync('node', [preprocesserPath], {
69
- stdio: 'inherit',
70
- cwd: preprocesserPath.slice(0, preprocesserPath.lastIndexOf('/') + 1)
71
- });
72
- break;
73
- }
74
- }
41
+ runPreProcess({ options, option, nodemon, spawnSync });
75
42
 
76
43
  let result;
77
44
  switch (option) {
78
- case 'preprocessor':
79
- if (preprocesserPath && existsSync(preprocesserPath)) {
80
- result = spawnSync(preprocessCli, [preprocesserPath], {
81
- stdio: 'inherit',
82
- cwd: preprocesserPath.slice(0, preprocesserPath.lastIndexOf('/') + 1)
83
- });
84
- process.exit(result.status);
85
- } else {
86
- console.error(`preProcessor not exists ${preprocesserPath}`);
87
- }
88
- break;
89
45
  case 'lint-setup': {
90
46
  result = spawnSync(
91
47
  'node',
@@ -481,8 +437,9 @@ switch (option) {
481
437
  case '--v':
482
438
  case '-v':
483
439
  log(`@zohodesk/react-cli v${require('../package.json').version}`);
440
+ log(`Node Js Version : ${process.version}`);
441
+ log(`Npm Version : ${execSync('npm --version')}`);
484
442
  break;
485
-
486
443
  default:
487
444
  log(`react-cli > Unknown option "${option}"`);
488
445
  log('react-cli app <appName>');
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.runPreProcess = runPreProcess;
7
+
8
+ var _path = _interopRequireWildcard(require("path"));
9
+
10
+ var _fs = require("fs");
11
+
12
+ var _child_process = require("child_process");
13
+
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
+
18
+ function runPreProcess({
19
+ options,
20
+ option,
21
+ nodemon,
22
+ spawnSync
23
+ }) {
24
+ const {
25
+ preprocess
26
+ } = options;
27
+ const preprocessorPath = preprocess.runner ? _path.default.join(process.cwd(), preprocess.runner) : '';
28
+ const preprocessCli = preprocess.stopNodemon ? 'node' : nodemon;
29
+
30
+ if (preprocessorPath && (0, _fs.existsSync)(preprocessorPath)) {
31
+ const preprocessorDirPath = (0, _path.dirname)(preprocessorPath);
32
+ const watchOptions = preprocessCli === nodemon ? ['--watch', preprocessorDirPath] : []; // eslint-disable-next-line default-case
33
+
34
+ switch (option) {
35
+ case 'start':
36
+ case 'docs':
37
+ (0, _child_process.spawn)(preprocessCli, [preprocessorPath, ...watchOptions], {
38
+ stdio: 'inherit',
39
+ cwd: preprocessorDirPath
40
+ }); // NOTE: it's ok if we not close this here
41
+ // Because when node server stops this program will be closed So this nodemon will be killed as well
42
+
43
+ break;
44
+
45
+ case 'nowatchstart':
46
+ case 'devbuild':
47
+ case 'build:library:es':
48
+ case 'build:component:es':
49
+ case 'build:library:cmjs':
50
+ case 'build:component:cmjs':
51
+ spawnSync('node', [preprocessorPath], {
52
+ stdio: 'inherit',
53
+ cwd: preprocessorPath.slice(0, preprocessorPath.lastIndexOf('/') + 1)
54
+ });
55
+ break;
56
+
57
+ case 'preprocessor':
58
+ {
59
+ const result = spawnSync(preprocessCli, [preprocessorPath, ...watchOptions], {
60
+ stdio: 'inherit',
61
+ cwd: preprocessorDirPath
62
+ });
63
+ process.exit(result.status);
64
+ break;
65
+ }
66
+ }
67
+ } else if (option === 'preprocess') {
68
+ console.error(`preProcessor not exists ${preprocessorPath}`);
69
+ process.exit(0);
70
+ }
71
+ }
@@ -23,7 +23,8 @@ let {
23
23
  folder,
24
24
  publicPath,
25
25
  cssHashSelectors,
26
- classNamePrefix
26
+ classNamePrefix,
27
+ customClassNamePrefix
27
28
  }
28
29
  },
29
30
  packageVersion
@@ -83,7 +84,7 @@ module.exports = {
83
84
  loader: 'css-loader',
84
85
  options: {
85
86
  modules: {
86
- getLocalIdent: (0, _cssClassNameGenerate.default)(cssUniqueness, cssHashSelectors, classNamePrefix)
87
+ getLocalIdent: (0, _cssClassNameGenerate.default)(cssUniqueness, cssHashSelectors, classNamePrefix, customClassNamePrefix)
87
88
  }
88
89
  }
89
90
  }]
@@ -30,6 +30,7 @@ const {
30
30
  cssVariableReplacementConfig,
31
31
  selectorWeightConfig,
32
32
  cssUniqueness,
33
+ customClassNamePrefix,
33
34
  seperateCssModules,
34
35
  changeRuntimeChunkChar,
35
36
  // we are going to use this for fonts file name collide in issue in devmode
@@ -108,6 +109,7 @@ module.exports = {
108
109
  mediaQueryHoverActiveString,
109
110
  cssVariableReplacementConfig,
110
111
  selectorWeightConfig,
112
+ customClassNamePrefix,
111
113
  classNameBlob: '[local]',
112
114
  cssUniqueness: false,
113
115
  selectorReplace: null,
@@ -124,6 +126,7 @@ module.exports = {
124
126
  selectorWeightConfig,
125
127
  classNameBlob: null,
126
128
  cssUniqueness,
129
+ customClassNamePrefix,
127
130
  selectorReplace,
128
131
  cssHashSelectors,
129
132
  classNamePrefix,
@@ -20,6 +20,7 @@ const {
20
20
  componentFolder,
21
21
  enableChunkHash,
22
22
  cssUniqueness,
23
+ customClassNamePrefix,
23
24
  plugins,
24
25
  exclude,
25
26
  patterns,
@@ -86,6 +87,7 @@ module.exports = isSSTest => ({
86
87
  selectorWeightConfig,
87
88
  classNameBlob: false,
88
89
  cssUniqueness,
90
+ customClassNamePrefix,
89
91
  selectorReplace,
90
92
  cssHashSelectors,
91
93
  classNamePrefix,
@@ -19,6 +19,7 @@ const {
19
19
  docs: {
20
20
  componentFolder,
21
21
  cssUniqueness,
22
+ customClassNamePrefix,
22
23
  plugins,
23
24
  exclude,
24
25
  patterns,
@@ -85,6 +86,7 @@ module.exports = {
85
86
  selectorWeightConfig,
86
87
  classNameBlob: false,
87
88
  cssUniqueness,
89
+ customClassNamePrefix,
88
90
  selectorReplace: null,
89
91
  cssHashSelectors,
90
92
  classNamePrefix,
@@ -34,6 +34,7 @@ const {
34
34
  cssVariableReplacementConfig,
35
35
  selectorWeightConfig,
36
36
  cssUniqueness,
37
+ customClassNamePrefix,
37
38
  server: {
38
39
  mode
39
40
  },
@@ -161,6 +162,7 @@ module.exports = {
161
162
  mediaQueryHoverActiveString,
162
163
  classNameBlob: '[local]',
163
164
  cssUniqueness: false,
165
+ customClassNamePrefix,
164
166
  selectorReplace: null,
165
167
  postCssPluginOrder
166
168
  })
@@ -175,6 +177,7 @@ module.exports = {
175
177
  selectorWeightConfig,
176
178
  classNameBlob: false,
177
179
  cssUniqueness,
180
+ customClassNamePrefix,
178
181
  selectorReplace,
179
182
  cssHashSelectors,
180
183
  classNamePrefix,
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.deprecateMessage = deprecateMessage;
7
7
  exports.deprecateOption = deprecateOption;
8
8
  exports.deprecationLoggerEnd = deprecationLoggerEnd;
9
- exports.deprecationLoggerStart = deprecationLoggerStart;
10
9
 
11
10
  var _logger = require("./logger");
12
11
 
@@ -44,7 +44,8 @@ const getCSSLoaders = optionsObj => {
44
44
  selectorReplace,
45
45
  cssHashSelectors,
46
46
  classNamePrefix,
47
- postCssPluginOrder
47
+ postCssPluginOrder,
48
+ customClassNamePrefix
48
49
  } = optionsObj;
49
50
  const {
50
51
  devCssFileBountry
@@ -65,10 +66,10 @@ const getCSSLoaders = optionsObj => {
65
66
  if (classNameBlob) {
66
67
  cssLoaderOptions.modules.localIdentName = classNameBlob;
67
68
  } else {
68
- cssLoaderOptions.modules.getLocalIdent = (0, _cssClassNameGenerate.default)(cssUniqueness, cssHashSelectors, classNamePrefix, patterns);
69
+ cssLoaderOptions.modules.getLocalIdent = (0, _cssClassNameGenerate.default)(cssUniqueness, cssHashSelectors, classNamePrefix, customClassNamePrefix, patterns);
69
70
  }
70
71
 
71
- const pluginOrder = calculatePostCssPluginOrder(postCssPluginOrder, Object.keys(plugins).filter(x => plugins[x] !== false)); // console.log('selector weight config : ', selectorWeightConfig);
72
+ const pluginOrder = calculatePostCssPluginOrder(postCssPluginOrder, Object.keys(plugins).filter(x => plugins[x] === true)); // console.log('selector weight config : ', selectorWeightConfig);
72
73
 
73
74
  const postcssPlugins = [plugins.valueReplacer && require('../postcss-plugins/ValueReplacer')(valueReplacer), plugins.hasRTL && require('@zohodesk/postcss-rtl')({
74
75
  addPrefixToSelector: function addPrefixToSelector(selector, prefix) {
package/lib/logger.js CHANGED
@@ -5,8 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.errorLogger = errorLogger;
7
7
  exports.messageLogger = messageLogger;
8
+ exports.verboseLogger = verboseLogger;
8
9
  exports.warnLogger = warnLogger;
9
10
 
11
+ /* eslint-disable no-console */
10
12
  function messageLogger(...args) {
11
13
  console.log(...args);
12
14
  }
@@ -17,4 +19,9 @@ function errorLogger(...args) {
17
19
 
18
20
  function warnLogger(...args) {
19
21
  console.warn(...args);
22
+ }
23
+
24
+ function verboseLogger(...args) {
25
+ // TODO: need to be remove when publish happens
26
+ process.env.VERBOSE === 'true' && console.log('\x1b[33m [verbose] \x1b[0m', ...args);
20
27
  }