@zohodesk/react-cli 0.0.1-exp.176.3 → 0.0.1-exp.178.1

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 (126) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +180 -180
  3. package/.prettierrc +6 -6
  4. package/{CHANGELOG.md → CHANGELOG-fz.md} +0 -0
  5. package/Changelog.md +1019 -0
  6. package/README.md +1112 -1025
  7. package/bin/cli.js +482 -482
  8. package/docs/CustomChunks.md +26 -26
  9. package/docs/DevServerPort.md +39 -0
  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 +6 -6
  14. package/docs/TODOS.md +10 -10
  15. package/docs/ValueReplacer.md +60 -60
  16. package/docs/VariableConversion.md +724 -719
  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/configs/resolvers.js +40 -0
  21. package/lib/configs/webpack.css.umd.config.js +4 -4
  22. package/lib/configs/webpack.dev.config.js +4 -11
  23. package/lib/configs/webpack.docs.config.js +4 -11
  24. package/lib/configs/webpack.impact.config.js +5 -7
  25. package/lib/configs/webpack.prod.config.js +9 -13
  26. package/lib/constants.js +31 -0
  27. package/lib/loaderUtils/configsAssetsLoaders.js +34 -34
  28. package/lib/loaders/workerLoader.js +9 -9
  29. package/lib/pluginUtils/getDevPlugins.js +5 -5
  30. package/lib/pluginUtils/getProdPlugins.js +5 -5
  31. package/lib/plugins/EFCPlugin.md +6 -6
  32. package/lib/plugins/I18NInjectIntoIndexPlugin.js +4 -4
  33. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +38 -38
  34. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +30 -30
  35. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +8 -8
  36. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  37. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  38. package/lib/plugins/I18nSplitPlugin/index.js +57 -57
  39. package/lib/plugins/ResourceHintsPlugin.js +17 -17
  40. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +6 -6
  41. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  42. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  43. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  44. package/lib/plugins/VariableConversionCollector.js +104 -74
  45. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  46. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  47. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  48. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  49. package/lib/schemas/index.js +8 -0
  50. package/lib/servers/docsServerCore.js +13 -12
  51. package/lib/servers/httpsOptions.js +40 -9
  52. package/lib/servers/nowatchserver.js +12 -11
  53. package/lib/servers/server.js +23 -20
  54. package/lib/sh/pre-commit.sh +34 -34
  55. package/lib/sh/reportPublish.sh +45 -45
  56. package/lib/utils/buildstats.html +148 -148
  57. package/lib/utils/cssURLReplacer.js +30 -43
  58. package/lib/utils/getFileType.js +49 -0
  59. package/lib/utils/getOptions.js +13 -13
  60. package/lib/utils/resultSchema.json +73 -73
  61. package/npm8.md +9 -9
  62. package/package.json +122 -146
  63. package/postpublish.js +8 -6
  64. package/result.json +1 -0
  65. package/templates/app/.eslintrc.js +140 -140
  66. package/templates/app/README.md +12 -12
  67. package/templates/app/app/index.html +24 -24
  68. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  69. package/templates/app/app/properties/i18nkeys.json +3 -3
  70. package/templates/app/docs/all.html +69 -69
  71. package/templates/app/mockapi/index.js +18 -18
  72. package/templates/app/package.json +37 -37
  73. package/templates/app/src/actions/SampleActions/index.js +37 -37
  74. package/templates/app/src/actions/index.js +65 -65
  75. package/templates/app/src/appUrls.js +19 -19
  76. package/templates/app/src/components/Alert/Alert.js +134 -134
  77. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  78. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  79. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  80. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  81. package/templates/app/src/components/Sample/SampleList.js +61 -61
  82. package/templates/app/src/components/Slider/Slider.css +41 -41
  83. package/templates/app/src/components/Slider/Slider.js +55 -55
  84. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  85. package/templates/app/src/containers/AppContainer/index.js +96 -96
  86. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  87. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  88. package/templates/app/src/containers/DevTools/index.js +10 -10
  89. package/templates/app/src/containers/Header/index.js +67 -67
  90. package/templates/app/src/containers/Header/index.module.css +43 -43
  91. package/templates/app/src/containers/Redirect/index.js +63 -63
  92. package/templates/app/src/containers/Redirector/index.js +47 -47
  93. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  94. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  95. package/templates/app/src/historyChange.js +5 -5
  96. package/templates/app/src/index.html +10 -10
  97. package/templates/app/src/index.js +24 -24
  98. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  99. package/templates/app/src/reducers/alertData.js +11 -11
  100. package/templates/app/src/reducers/index.js +6 -6
  101. package/templates/app/src/reducers/samples.js +19 -19
  102. package/templates/app/src/store/configureStore.dev.js +51 -51
  103. package/templates/app/src/store/configureStore.js +5 -5
  104. package/templates/app/src/store/configureStore.prod.js +26 -26
  105. package/templates/app/src/util/Common.js +5 -5
  106. package/templates/app/src/util/RequestAPI.js +132 -132
  107. package/templates/docs/all.html +249 -249
  108. package/templates/docs/component.html +178 -178
  109. package/templates/docs/components.html +221 -221
  110. package/templates/docs/css/b.min.css +6 -6
  111. package/templates/docs/css/component.css +42 -42
  112. package/templates/docs/css/componentTest.css +6 -6
  113. package/templates/docs/css/hopscotch.css +585 -585
  114. package/templates/docs/css/style.css +1022 -1022
  115. package/templates/docs/impactReportTemplate.html +154 -154
  116. package/templates/docs/index.html +1501 -1501
  117. package/templates/docs/js/active-line.js +72 -72
  118. package/templates/docs/js/b.min.js +7 -7
  119. package/templates/docs/js/codemirror.js +9680 -9680
  120. package/templates/docs/js/designTokens.js +334 -334
  121. package/templates/docs/js/j.min.js +4 -4
  122. package/templates/docs/js/javascript.js +874 -874
  123. package/templates/docs/js/matchbrackets.js +145 -145
  124. package/unittest/index.html +37 -0
  125. package/cert/Tsicsezwild-22-23.crt +0 -37
  126. package/cert/Tsicsezwild-22-23.key +0 -27
@@ -24,12 +24,12 @@ const isCss = filename => _path.default.extname(filename) === '.css'; // this p
24
24
 
25
25
  class RtlCssPlugin {
26
26
  constructor(options = {}) {
27
- /**
28
- * @typedef {Object} Options
29
- * @property {String} filename [not used]
30
- * @property {String} dirVarName
31
- * @property {Boolean} sourcemap
32
- * @property {Object} config
27
+ /**
28
+ * @typedef {Object} Options
29
+ * @property {String} filename [not used]
30
+ * @property {String} dirVarName
31
+ * @property {Boolean} sourcemap
32
+ * @property {Object} config
33
33
  */
34
34
  this.options = {
35
35
  filename: options.filename || '[name].rtl.css',
@@ -1,30 +1,30 @@
1
- # RTL Split
2
-
3
- we are doing in build time generating rtl related css code by using @zohodesk/postcss-rt npm.
4
- It was automated, That postcss plugin create rtl reacted css and put them into same file, with css selector [dir=rtl] and ltr realted css with [dir=ltr].
5
- Here is problem mostly no one need rtl and ltr related css at the same time in browser,
6
- we are try to split them by [dir] and load which type of css is needed.
7
- For this purpose we created RTL Split Plugin
8
-
9
-
10
- # To Try it out rtl-ltr split
11
- ### how to use this feature?
12
-
13
- to use this feature use have give the below oprtions
14
- `package.json`
15
- ```json
16
- {
17
- /// ...some things
18
- "react-cli": {
19
- // ...some things
20
- "css": {
21
- "enableRTLSplit": true,
22
- "templateLabel": "{{--dir}}",// this is for html template css file path dir template
23
- "disableMiniFiySelector": false,
24
- "dirVarName": "document.dir" // this will be used for download css based on dir
25
- },
26
- // ...some things
27
- }
28
- }
29
- ```
30
-
1
+ # RTL Split
2
+
3
+ we are doing in build time generating rtl related css code by using @zohodesk/postcss-rt npm.
4
+ It was automated, That postcss plugin create rtl reacted css and put them into same file, with css selector [dir=rtl] and ltr realted css with [dir=ltr].
5
+ Here is problem mostly no one need rtl and ltr related css at the same time in browser,
6
+ we are try to split them by [dir] and load which type of css is needed.
7
+ For this purpose we created RTL Split Plugin
8
+
9
+
10
+ # To Try it out rtl-ltr split
11
+ ### how to use this feature?
12
+
13
+ to use this feature use have give the below oprtions
14
+ `package.json`
15
+ ```json
16
+ {
17
+ /// ...some things
18
+ "react-cli": {
19
+ // ...some things
20
+ "css": {
21
+ "enableRTLSplit": true,
22
+ "templateLabel": "{{--dir}}",// this is for html template css file path dir template
23
+ "disableMiniFiySelector": false,
24
+ "dirVarName": "document.dir" // this will be used for download css based on dir
25
+ },
26
+ // ...some things
27
+ }
28
+ }
29
+ ```
30
+
@@ -51,11 +51,11 @@ class ServiceWorkerPlugin {
51
51
  if (err) {
52
52
  throw new Error(err);
53
53
  } else {
54
- /* const extractedChunks = compilation.chunks.filter(chunk => {
55
- if ('canBeInitial' in chunk) {
56
- return chunk.canBeInitial();
57
- }
58
- return chunk.isInitial();
54
+ /* const extractedChunks = compilation.chunks.filter(chunk => {
55
+ if ('canBeInitial' in chunk) {
56
+ return chunk.canBeInitial();
57
+ }
58
+ return chunk.isInitial();
59
59
  }); */
60
60
  // let [js, css, , , i18nPublicPath] = this.publicPaths;
61
61
  // let initialChunkUrls = [];
@@ -64,10 +64,10 @@ class ServiceWorkerPlugin {
64
64
  let entrypoint = compilation.entrypoints.get('main');
65
65
  let initialChunkUrls = entrypoint.getFiles();
66
66
  const cssDirTemplate = '@dir@';
67
- /**
68
- * NOTE:
69
- * if chunkSplitEnable is false means,
70
- * serviceWorker will get i18n files path for html
67
+ /**
68
+ * NOTE:
69
+ * if chunkSplitEnable is false means,
70
+ * serviceWorker will get i18n files path for html
71
71
  */
72
72
 
73
73
  let initalI18nAssets = chunkSplitEnable ? entrypoint.chunks.filter(chunk => _I18nKeysIdentifer.default.isChunkHasI18n(chunk)).map(chunk => (0, _getI18nFileUrlPathTemplate.getI18nFileUrlPathTemplate)(compilation, chunk, this.i18nFileNameTemplate, '@locale@')) : [];
@@ -15,10 +15,10 @@ var _crypto = _interopRequireDefault(require("crypto"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
18
- /**
19
- * Plugin that generates hash for the provided list of third party files
20
- * Map the provided key with the file hash and add it to the list of exisiting global constants.
21
- * Plugin in turn uses the defineplugin to generate global constants.
18
+ /**
19
+ * Plugin that generates hash for the provided list of third party files
20
+ * Map the provided key with the file hash and add it to the list of exisiting global constants.
21
+ * Plugin in turn uses the defineplugin to generate global constants.
22
22
  */
23
23
  class TPHashMappingPlugin {
24
24
  constructor(options) {
@@ -15,6 +15,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  const fs = require('fs');
16
16
 
17
17
  const ignoreVals = ['--zd_size', '--zd_font_size', '--size', '--size_'];
18
+ let variablesRead = {};
18
19
 
19
20
  const {
20
21
  errors,
@@ -25,15 +26,15 @@ const {
25
26
  const supportedProps = ['font-size', 'margin', 'margin-top', 'margin-bottom', 'margin-left', 'margin-right', 'padding', 'padding-top', 'padding-bottom', 'padding-left', 'padding-right', '^top', '^right', '^bottom', '^left', '^width', 'min-width', 'max-width', '^height', 'min-height', 'max-height', 'text-indent', 'clip', 'flex-basis', 'row-gap', 'gap', 'column-gap', 'flex']; // const avoidProps = [];
26
27
  // -- is issue IO --
27
28
 
28
- /*
29
- issues eg :
30
- issues = ['--zd_size', '--zd_font_size', '--size', '--size_'];
31
- input :
32
- --zd_size
33
- output :
34
- true
35
- comment :
36
- do not execute when --zd_size comes as prop
29
+ /*
30
+ issues eg :
31
+ issues = ['--zd_size', '--zd_font_size', '--size', '--size_'];
32
+ input :
33
+ --zd_size
34
+ output :
35
+ true
36
+ comment :
37
+ do not execute when --zd_size comes as prop
37
38
  */
38
39
 
39
40
  function isIgnoreValuePresent(ignoreVals, prop) {
@@ -46,14 +47,14 @@ function isIgnoreValuePresent(ignoreVals, prop) {
46
47
  return present;
47
48
  } // -- to convert the hyphen values to values --
48
49
 
49
- /*
50
- input :
51
- var(--zdt_uploadlist_default_width)
52
- output :
53
- --zdt_uploadlist_default_width
54
-
55
- comment :
56
- to make the variable object using the output as key and decl.prop such as font-size as value
50
+ /*
51
+ input :
52
+ var(--zdt_uploadlist_default_width)
53
+ output :
54
+ --zdt_uploadlist_default_width
55
+
56
+ comment :
57
+ to make the variable object using the output as key and decl.prop such as font-size as value
57
58
  */
58
59
 
59
60
 
@@ -64,8 +65,8 @@ function extractVariableName(val) {
64
65
  function rootConvertor(rootOriginal, variables, settingsObject) {
65
66
  rootOriginal.walkRules(rule => {
66
67
  rule.nodes.forEach((decl, index) => {
67
- let prevNode = rule.nodes[index - 1];
68
- let currentNode = rule.nodes[index];
68
+ const prevNode = rule.nodes[index - 1];
69
+ const currentNode = rule.nodes[index];
69
70
 
70
71
  if (decl.prop && decl.prop.includes('--')) {
71
72
  if (prevNode && prevNode.type === 'comment' && prevNode.text.toLowerCase() === 'variable:ignore') {
@@ -83,11 +84,11 @@ function rootConvertor(rootOriginal, variables, settingsObject) {
83
84
  }
84
85
 
85
86
  const pxReplacement = settingsObject[variables[decl.prop]].replacements.px;
86
- let valArr = decl.value.split(' '); // single values are considered in the above array and converted below
87
+ const valArr = decl.value.split(' '); // single values are considered in the above array and converted below
87
88
 
88
89
  valArr.forEach((value, index) => {
89
90
  if (value.includes('px')) {
90
- let num = value.replace('px', '');
91
+ const num = value.replace('px', '');
91
92
  valArr[index] = pxReplacement.replace('$$', num);
92
93
  }
93
94
  });
@@ -99,10 +100,33 @@ function rootConvertor(rootOriginal, variables, settingsObject) {
99
100
  return rootOriginal;
100
101
  }
101
102
 
103
+ function createFolderIfNonExistant(path) {
104
+ if (!fs.existsSync(path)) {
105
+ fs.mkdirSync(path, {
106
+ recursive: true
107
+ });
108
+ }
109
+ }
110
+
111
+ function createFileIfNonExistant(path, content) {
112
+ if (fs.existsSync(path)) {
113
+ fs.writeFileSync(path, content, 'utf-8');
114
+ }
115
+ }
116
+
102
117
  class VariableConversionCollector {
103
118
  constructor(options = {}) {
104
119
  this.optimize = options.optimize;
105
120
  this.filename = options.cssVariableReplacementConfig;
121
+ this.fileHandler();
122
+ }
123
+
124
+ fileHandler() {
125
+ createFolderIfNonExistant('./.cli/logs/');
126
+ createFolderIfNonExistant('./.cli/config/variables/');
127
+ createFolderIfNonExistant('./.cli/config/selectorWeight/');
128
+ createFileIfNonExistant('./.cli/logs/unassignedVariables.log', '{}');
129
+ createFileIfNonExistant('./.cli/logs/css_error.log', '{}');
106
130
  }
107
131
 
108
132
  apply(compiler) {
@@ -114,7 +138,8 @@ class VariableConversionCollector {
114
138
  settings: settingsObject,
115
139
  errorLog: errorLogStatus,
116
140
  errorInConsole: errorConsoleStatus,
117
- errorsAllowed
141
+ errorsAllowed,
142
+ strictMode
118
143
  } = data; // If theres is no setting for default prop in settingsObject, set one.
119
144
 
120
145
  if (!settingsObject.default) {
@@ -129,20 +154,20 @@ class VariableConversionCollector {
129
154
  }
130
155
  };
131
156
  }
132
- /*
133
- purpose of tap : to create a variable object such as:
134
- {
135
- --zdt_uploadlist_default_width : width,
136
- --zdt_uploadlist_default_height : height,
137
- }
138
- which will help in the conversion further
157
+ /*
158
+ purpose of tap : to create a variable object such as:
159
+ {
160
+ --zdt_uploadlist_default_width : width,
161
+ --zdt_uploadlist_default_height : height,
162
+ }
163
+ which will help in the conversion further
139
164
  */
140
165
 
141
166
 
142
- if (fs.existsSync('./variableMapping.json')) {
143
- const data = JSON.parse(fs.readFileSync('./variableMapping.json', 'utf-8'));
144
- Object.keys(data).forEach(key => {
145
- variables[key] = data[key];
167
+ if (fs.existsSync('./.cli/config/variables/variableMapping.json')) {
168
+ variablesRead = JSON.parse(fs.readFileSync('./.cli/config/variables/variableMapping.json', 'utf-8'));
169
+ Object.keys(variablesRead.changes).forEach(key => {
170
+ variables[key] = variablesRead.changes[key];
146
171
  });
147
172
  }
148
173
 
@@ -169,7 +194,7 @@ class VariableConversionCollector {
169
194
  // `${extractedValue} : ${variables[extractedValue]} already exists please check!`
170
195
  // );
171
196
  if (errorsAllowed.MULTIPLE_OCCURANCES) {
172
- let errObj = {
197
+ const errObj = {
173
198
  decl,
174
199
  type: 'MULTIPLE_OCCURANCES',
175
200
  filename,
@@ -182,29 +207,28 @@ class VariableConversionCollector {
182
207
  }
183
208
  } else {
184
209
  // console.log(decl.prop);
185
- if (/^--/gi.test(decl.prop) && new RegExp(supportedProps.join('|'), 'gi').test(decl.prop) && val.trim() !== '' && !variables[decl.prop]) {
186
- // console.log(
187
- // `${decl.prop} : ${variables[decl.prop]},`
188
- // );
189
- unassigned[decl.prop] = variables[decl.prop];
210
+ if (/^--/gi.test(decl.prop) && val.trim() !== '' && !variables[decl.prop]) {
211
+ if (!Object.keys(variablesRead.ignore).includes(decl.prop)) {
212
+ unassigned[decl.prop] = variables[decl.prop];
213
+ }
190
214
  }
191
215
  }
192
216
  });
193
217
  });
194
218
  });
195
- /*
196
- current value example:
197
- {
198
- --zdt_uploadlist_default_width : --zd_upload_width,
199
- --zd_upload_width : width
200
- }
201
- expected value :
202
- {
203
- --zdt_uploadlist_default_width : width,
204
- --zd_upload_width : width
205
- }
206
-
207
- conversion is done in the while loop below
219
+ /*
220
+ current value example:
221
+ {
222
+ --zdt_uploadlist_default_width : --zd_upload_width,
223
+ --zd_upload_width : width
224
+ }
225
+ expected value :
226
+ {
227
+ --zdt_uploadlist_default_width : width,
228
+ --zd_upload_width : width
229
+ }
230
+
231
+ conversion is done in the while loop below
208
232
  */
209
233
 
210
234
  Object.keys(variables).forEach(key => {
@@ -216,17 +240,17 @@ class VariableConversionCollector {
216
240
  });
217
241
  }); // -- conversion for the root using rootConvertor --
218
242
 
219
- /*
220
- input :
221
- .a{
222
- padding : 20px
223
- }
224
- output :
225
- // on settingObject file :
226
- { padding : { replacements : { px : 'zd_size$$' }}}
227
- .a{
228
- padding : zd_size20;
229
- }
243
+ /*
244
+ input :
245
+ .a{
246
+ padding : 20px
247
+ }
248
+ output :
249
+ // on settingObject file :
250
+ { padding : { replacements : { px : 'zd_size$$' }}}
251
+ .a{
252
+ padding : zd_size20;
253
+ }
230
254
  */
231
255
 
232
256
  compilation.hooks.optimizeModules.tap('VariableConversionCollector', modules => {
@@ -238,24 +262,30 @@ class VariableConversionCollector {
238
262
  });
239
263
  });
240
264
  });
241
- /*
242
- purpose of tap : to display the errors encountered so far
243
- input :
244
- all css files
245
- output :
246
- all errors that are present in the errTable arr
265
+ /*
266
+ purpose of tap : to display the errors encountered so far
267
+ input :
268
+ all css files
269
+ output :
270
+ all errors that are present in the errTable arr
247
271
  */
248
272
 
249
273
  compiler.hooks.afterEmit.tap('error-display', () => {
250
- if (Object.keys(unassigned).length > 0) {
274
+ if (Object.keys(unassigned).length > 0 && strictMode) {
251
275
  console.log();
252
276
  console.log(unassigned);
253
277
  console.log();
278
+ let str = '{\n';
279
+ Object.keys(unassigned).forEach(key => {
280
+ str += `"${key}" : "${unassigned[key]}",\n`;
281
+ });
282
+ str += '}';
283
+ fs.writeFileSync('./.cli/logs/unassignedVariables.log', str, 'utf-8');
254
284
  throw new Error('^^^ Variables above have not been assigned! ^^^');
255
285
  }
256
286
 
257
- let avlTypes = new Set([]);
258
- let srtArr = errTable.sort((a, b) => {
287
+ const avlTypes = new Set([]);
288
+ const srtArr = errTable.sort((a, b) => {
259
289
  avlTypes.add(a.type);
260
290
  avlTypes.add(b.type);
261
291
 
@@ -302,13 +332,13 @@ class VariableConversionCollector {
302
332
  }
303
333
 
304
334
  if (errorLogStatus) {
305
- fs.writeFileSync('./css_error.log', '');
335
+ fs.writeFileSync('./.cli/logs/css_error.log', '');
306
336
  console.log('writing to logFile...');
307
337
 
308
338
  if (errors.length > 0) {
309
339
  errors.forEach((err, index) => {
310
340
  if (errTable[index].decl.prop && errTable[index].decl.value) {
311
- fs.appendFileSync('./css_error.log', err);
341
+ fs.appendFileSync('./.cli/logs/css_error.log', err);
312
342
  }
313
343
  });
314
344
  }
@@ -38,11 +38,11 @@ function selectorMinifySameDir(selector, direction) {
38
38
  const regex = getRegex(direction);
39
39
  return selector.replace(regex, '').trim();
40
40
  }
41
- /**
42
- * this funtion will remove given rule,
43
- * if given selector and it's previous sibiling rule selector are same
44
- * current rule properties will move to previous sibiling rule.
45
- * @param {Rule} rule current rule
41
+ /**
42
+ * this funtion will remove given rule,
43
+ * if given selector and it's previous sibiling rule selector are same
44
+ * current rule properties will move to previous sibiling rule.
45
+ * @param {Rule} rule current rule
46
46
  */
47
47
 
48
48
 
@@ -57,11 +57,11 @@ function mergeIfSameSelector(rule) {
57
57
  rule.remove();
58
58
  }
59
59
  }
60
- /**
61
- * this funtion will remove given rule,
62
- * if given selector and it's previous sibiling rule selector are same
63
- * current rule properties will move to previous sibiling rule.
64
- * @param {Rule} rule current rule
60
+ /**
61
+ * this funtion will remove given rule,
62
+ * if given selector and it's previous sibiling rule selector are same
63
+ * current rule properties will move to previous sibiling rule.
64
+ * @param {Rule} rule current rule
65
65
  */
66
66
 
67
67
 
@@ -1,39 +1,39 @@
1
- /*Hover_active:ignore*/
2
- g,a:hover{
3
- color : red
4
- }
5
- /*Hover:ignore*/
6
- h:hover{
7
- background : yellow
8
- }
9
-
10
- /* Hover_active:ignore */
11
- g,d+e:hover{
12
- color : black
13
- }
14
-
15
- g,d e:hover{
16
- color : black
17
- }
18
-
19
- @media screen and (max-width:61.25em){
20
- /* Hover_active:ignore */
21
- a,b,a:hover, b:hover{
22
- background-color : blue
23
- }
24
- a + b,a:hover + b:hover{
25
- background-color : blue
26
- }
27
- a b:hover{
28
- background-color : blue
29
- }
30
-
31
- .cc:hover {
32
- color: red;
33
- }
34
-
35
- c:hover{
36
- color : red
37
- }
38
-
1
+ /*Hover_active:ignore*/
2
+ g,a:hover{
3
+ color : red
4
+ }
5
+ /*Hover:ignore*/
6
+ h:hover{
7
+ background : yellow
8
+ }
9
+
10
+ /* Hover_active:ignore */
11
+ g,d+e:hover{
12
+ color : black
13
+ }
14
+
15
+ g,d e:hover{
16
+ color : black
17
+ }
18
+
19
+ @media screen and (max-width:61.25em){
20
+ /* Hover_active:ignore */
21
+ a,b,a:hover, b:hover{
22
+ background-color : blue
23
+ }
24
+ a + b,a:hover + b:hover{
25
+ background-color : blue
26
+ }
27
+ a b:hover{
28
+ background-color : blue
29
+ }
30
+
31
+ .cc:hover {
32
+ color: red;
33
+ }
34
+
35
+ c:hover{
36
+ color : red
37
+ }
38
+
39
39
  }
@@ -1,39 +1,39 @@
1
- /*Hover_active:ignore*/
2
- g,a:hover{
3
- color : red
4
- }
5
- /*Hover:ignore*/
6
- h:hover{
7
- background : yellow
8
- }
9
-
10
- /* Hover_active:ignore */
11
- g,d+e:hover{
12
- color : black
13
- }
14
-
15
- g,d e:hover{
16
- color : black
17
- }
18
-
19
- @media screen and (max-width:61.25em){
20
- /* Hover_active:ignore */
21
- a,b,a:hover, b:hover{
22
- background-color : blue
23
- }
24
- a + b,a:hover + b:hover{
25
- background-color : blue
26
- }
27
- a b:hover{
28
- background-color : blue
29
- }
30
-
31
- .cc:hover {
32
- color: red;
33
- }
34
-
35
- c:hover{
36
- color : red
37
- }
38
-
1
+ /*Hover_active:ignore*/
2
+ g,a:hover{
3
+ color : red
4
+ }
5
+ /*Hover:ignore*/
6
+ h:hover{
7
+ background : yellow
8
+ }
9
+
10
+ /* Hover_active:ignore */
11
+ g,d+e:hover{
12
+ color : black
13
+ }
14
+
15
+ g,d e:hover{
16
+ color : black
17
+ }
18
+
19
+ @media screen and (max-width:61.25em){
20
+ /* Hover_active:ignore */
21
+ a,b,a:hover, b:hover{
22
+ background-color : blue
23
+ }
24
+ a + b,a:hover + b:hover{
25
+ background-color : blue
26
+ }
27
+ a b:hover{
28
+ background-color : blue
29
+ }
30
+
31
+ .cc:hover {
32
+ color: red;
33
+ }
34
+
35
+ c:hover{
36
+ color : red
37
+ }
38
+
39
39
  }
@@ -4,9 +4,9 @@ var _postcss = _interopRequireDefault(require("postcss"));
4
4
 
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
6
 
7
- /**
8
- * we have give support for ignore(exclude) comments
9
- * These are the comments' keyword
7
+ /**
8
+ * we have give support for ignore(exclude) comments
9
+ * These are the comments' keyword
10
10
  */
11
11
  const hoverIgnoreQuery = 'Hover:ignore',
12
12
  activeIgnoreQuery = 'Active:ignore',
@@ -91,6 +91,10 @@ var _default = {
91
91
  cssDirStatement: null
92
92
  },
93
93
  app: {
94
+ moduleResolvePath: {
95
+ value: '',
96
+ cli: 'module_resolve_path'
97
+ },
94
98
  // this option only for impact testing
95
99
  devCssFileBountry: {
96
100
  value: '',
@@ -137,6 +141,10 @@ var _default = {
137
141
  value: 'dev',
138
142
  cli: 'app_mode'
139
143
  },
144
+ httpsCerts: {
145
+ value: null,
146
+ cli: 'https_certs'
147
+ },
140
148
  branch: {
141
149
  value: 'master',
142
150
  cli: 'app_branch'