@zohodesk/react-cli 1.1.4-exp.2 → 1.1.5

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 (125) 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 +1228 -1215
  6. package/bin/cli.js +497 -497
  7. package/docs/ComposeMinification.md +13 -13
  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/ReactLive.md +13 -13
  14. package/docs/SelectorWeight.md +8 -8
  15. package/docs/TODOS.md +10 -10
  16. package/docs/ValueReplacer.md +60 -60
  17. package/docs/VariableConversion.md +729 -729
  18. package/docs/patternFiltering.md +56 -56
  19. package/docs/warnings_while_install.txt +35 -35
  20. package/files/eslintrc.js +62 -62
  21. package/files/prettierrc.js +3 -3
  22. package/lib/configs/resolvers.js +2 -2
  23. package/lib/configs/webpack.css.umd.config.js +4 -4
  24. package/lib/constants.js +3 -3
  25. package/lib/loaderUtils/configsAssetsLoaders.js +33 -33
  26. package/lib/loaderUtils/getCSSLoaders.js +54 -52
  27. package/lib/loaders/workerLoader.js +9 -9
  28. package/lib/pluginUtils/getDevPlugins.js +5 -5
  29. package/lib/pluginUtils/getProdPlugins.js +5 -5
  30. package/lib/plugins/CustomAttributePlugin.md +35 -35
  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/SelectorPlugin.js +29 -29
  43. package/lib/plugins/ServiceWorkerPlugin.js +9 -9
  44. package/lib/plugins/TPHashMappingPlugin.js +4 -4
  45. package/lib/plugins/VariableConversionCollector.js +59 -59
  46. package/lib/plugins/utils/fileHandling.js +7 -21
  47. package/lib/plugins/variableConvertorUtils.js +9 -9
  48. package/lib/postcss-plugins/RTLSplitPlugin.js +10 -10
  49. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  50. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  51. package/lib/postcss-plugins/hoverActivePlugin.js +3 -3
  52. package/lib/postcss-plugins/variableModificationPlugin/index.js +5 -0
  53. package/lib/servers/getCliPath.js +3 -5
  54. package/lib/servers/requireLocalOrGlobal.js +1 -1
  55. package/lib/sh/pre-commit.sh +34 -34
  56. package/lib/sh/reportPublish.sh +45 -45
  57. package/lib/utils/buildstats.html +148 -148
  58. package/lib/utils/cssClassNameGenerate.js +13 -13
  59. package/lib/utils/getOptions.js +8 -2
  60. package/lib/utils/resultSchema.json +73 -73
  61. package/npm-shrinkwrap.json +14412 -14412
  62. package/npm8.md +9 -9
  63. package/package.json +122 -122
  64. package/postpublish.js +8 -8
  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/result.json +0 -1
  125. package/unittest/index.html +0 -37
@@ -21,23 +21,23 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
21
21
 
22
22
  // #region initial
23
23
 
24
- /**
25
- * @TODO:
26
- * [?] add comment line options for properties file and get all keys form property file do right way to genarate them
27
- * [?] need to discuss with collectI18n Keys with js comment need to conform "what is the comment? "
24
+ /**
25
+ * @TODO:
26
+ * [?] add comment line options for properties file and get all keys form property file do right way to genarate them
27
+ * [?] need to discuss with collectI18n Keys with js comment need to conform "what is the comment? "
28
28
  */
29
29
 
30
- /**
31
- * Notes: this plugin has done below works
32
- * 1. collect I18n Keys from js files and make it as Depenencies
33
- * 2. we create file(asset) for chunk specific i18nChunk Files
34
- * 3. create hash for the specific i18nChunk Files
35
- * 4. write logic to requireEnsure method for dowlod I18n chunk download dynamicaly
36
- * 5. create manifest.json file which has the mapping of chunk-locales-i18nChunkFile
37
- * for the external referrece.
38
- * Hints :-
39
- * - file means your machine files
40
- * - asset means that also file but that will create by webpack after build
30
+ /**
31
+ * Notes: this plugin has done below works
32
+ * 1. collect I18n Keys from js files and make it as Depenencies
33
+ * 2. we create file(asset) for chunk specific i18nChunk Files
34
+ * 3. create hash for the specific i18nChunk Files
35
+ * 4. write logic to requireEnsure method for dowlod I18n chunk download dynamicaly
36
+ * 5. create manifest.json file which has the mapping of chunk-locales-i18nChunkFile
37
+ * for the external referrece.
38
+ * Hints :-
39
+ * - file means your machine files
40
+ * - asset means that also file but that will create by webpack after build
41
41
  */
42
42
  // const getI18nLocales = require('./utils/getI18nLocales');
43
43
  // const { ConcatSource, SourceMapSource, OriginalSource } = sources;
@@ -49,16 +49,16 @@ const MODULE_TYPE = 'json/i18n';
49
49
  const i18ntype = locale => `${MODULE_TYPE}/${locale}`;
50
50
 
51
51
  const pluginName = 'i18n-plugin';
52
- /**
53
- * @typedef I18nPluginOptions
54
- * @property {String} filenameTemplate this was template for i18n chunk
55
- * @property {String} jsResource this was path for jsResource i18n file
56
- * @property {String} propertiesFolder this was path for propertiesFolder i18n file
57
- * @property {Boolean} disableDefault this option for disable defulat value for i18n keys, means if the language file does not have some key we don't give jsResource value
58
- * @property {String} i18nManifestFileName this was ouput path for i18n manifest.
59
- * @property {String} jsonpFunc this was function name, we will call that function everytime i18n chunk download.
60
- * @property {String} localeVarName this was variable name, we will call that function everytime i18n chunk download.
61
- *
52
+ /**
53
+ * @typedef I18nPluginOptions
54
+ * @property {String} filenameTemplate this was template for i18n chunk
55
+ * @property {String} jsResource this was path for jsResource i18n file
56
+ * @property {String} propertiesFolder this was path for propertiesFolder i18n file
57
+ * @property {Boolean} disableDefault this option for disable defulat value for i18n keys, means if the language file does not have some key we don't give jsResource value
58
+ * @property {String} i18nManifestFileName this was ouput path for i18n manifest.
59
+ * @property {String} jsonpFunc this was function name, we will call that function everytime i18n chunk download.
60
+ * @property {String} localeVarName this was variable name, we will call that function everytime i18n chunk download.
61
+ *
62
62
  */
63
63
 
64
64
  class I18nPlugin {
@@ -104,13 +104,13 @@ class I18nPlugin {
104
104
  }
105
105
 
106
106
  maintainHashForAllI18nAssets(compilation) {
107
- /**
108
- * we write chunkHash logic inside of our plugin Because we only add Dependency not Module.
109
- * So we need to update chunkHash for our assets
110
- * and we not able tell with just Modules.
111
- * Because, if we add Module for the Depenentcy then that module must has some hash.
112
- * But our I18n Hash is no module specific it was chunk specific,
113
- * that's why we do the stuf in the chunkHash hook.
107
+ /**
108
+ * we write chunkHash logic inside of our plugin Because we only add Dependency not Module.
109
+ * So we need to update chunkHash for our assets
110
+ * and we not able tell with just Modules.
111
+ * Because, if we add Module for the Depenentcy then that module must has some hash.
112
+ * But our I18n Hash is no module specific it was chunk specific,
113
+ * that's why we do the stuf in the chunkHash hook.
114
114
  */
115
115
  compilation.hooks.chunkHash.tap(pluginName, (chunk, chunkHash) => {
116
116
  const {
@@ -154,31 +154,31 @@ class I18nPlugin {
154
154
  }
155
155
 
156
156
  }
157
- /*
158
- // TODO: need to reimplement this logic
159
- // NOTE: this logic for split all content hash per mani chunk
160
- // like add chunk content hash to main locale i18n file
161
-
162
- // let isEntry = chunk.name === this.options.mainChunkName;
163
- // if (chunk.name === 'main' && chunk.hasEntryModule()) {
164
- if (isEntry) {
165
- const hashSource = new ConcatSource();
166
- const dummyChunk = new chunk.constructor();
167
- hashSource.add('// it wil be I18N file hash');
168
- const templateHooks = compilation.chunkTemplate.hooks;
169
- let c = templateHooks.render.call(
170
- templateHooks.module.call(
171
- hashSource,
172
- dummyChunk,
173
- compilation.moduleTemplate.javascript,
174
- compilation.dependencyTemplates
175
- ),
176
- dummyChunk,
177
- compilation.moduleTemplate.javascript,
178
- compilation.dependencyTemplates
179
- );
180
-
181
- }
157
+ /*
158
+ // TODO: need to reimplement this logic
159
+ // NOTE: this logic for split all content hash per mani chunk
160
+ // like add chunk content hash to main locale i18n file
161
+
162
+ // let isEntry = chunk.name === this.options.mainChunkName;
163
+ // if (chunk.name === 'main' && chunk.hasEntryModule()) {
164
+ if (isEntry) {
165
+ const hashSource = new ConcatSource();
166
+ const dummyChunk = new chunk.constructor();
167
+ hashSource.add('// it wil be I18N file hash');
168
+ const templateHooks = compilation.chunkTemplate.hooks;
169
+ let c = templateHooks.render.call(
170
+ templateHooks.module.call(
171
+ hashSource,
172
+ dummyChunk,
173
+ compilation.moduleTemplate.javascript,
174
+ compilation.dependencyTemplates
175
+ ),
176
+ dummyChunk,
177
+ compilation.moduleTemplate.javascript,
178
+ compilation.dependencyTemplates
179
+ );
180
+
181
+ }
182
182
  */
183
183
 
184
184
 
@@ -33,25 +33,25 @@ class ResourceHintsPlugin {
33
33
  }
34
34
 
35
35
  return Template.asString([source, '', `${mainTemplate.requireFn}.getChunkId = function getChunkId(chunkId) {`, Template.indent((needsMap ? [`chunkId = ${JSON.stringify(nameIdMap)}[chunkId]||chunkId;`] : []).concat(['return chunkId;'])), '}', `// Prefetch a chunk (${pluginName})`, `${mainTemplate.requireFn}.pfc = function prefetchChunk(chunkId) {`, Template.indent([`chunkId = ${mainTemplate.requireFn}.getChunkId(chunkId)`, `${mainTemplate.requireFn}.e(chunkId);`]), '};',
36
- /*
37
- (needsMap
38
- ? [`chunkId = ${JSON.stringify(nameIdMap)}[chunkId]||chunkId;`]
39
- : []
40
- ).concat([
41
- 'var promises = [];',
42
- 'if(installedChunks[chunkId] === undefined) {',
43
- Template.indent([
44
- 'installedChunks[chunkId] = null;',
45
- /* mainTemplate.hooks.linkPrefetch.call('', chunk, hash),
36
+ /*
37
+ (needsMap
38
+ ? [`chunkId = ${JSON.stringify(nameIdMap)}[chunkId]||chunkId;`]
39
+ : []
40
+ ).concat([
41
+ 'var promises = [];',
42
+ 'if(installedChunks[chunkId] === undefined) {',
43
+ Template.indent([
44
+ 'installedChunks[chunkId] = null;',
45
+ /* mainTemplate.hooks.linkPrefetch.call('', chunk, hash),
46
46
  'document.head.appendChild(link);', */
47
47
 
48
- /*
49
- mainTemplate.hooks.requireEnsure.call('', chunk, hash)
50
- ]),
51
- '}'
52
- ])
53
- ),
54
- '}',
48
+ /*
49
+ mainTemplate.hooks.requireEnsure.call('', chunk, hash)
50
+ ]),
51
+ '}'
52
+ ])
53
+ ),
54
+ '}',
55
55
  */
56
56
  `// Preload a chunk (${pluginName})`, `${mainTemplate.requireFn}.plc = function preloadChunk(chunkId) {`, Template.indent([`chunkId = ${mainTemplate.requireFn}.getChunkId(chunkId)`, 'if(installedChunks[chunkId] === undefined) {', Template.indent(['installedChunks[chunkId] = null;', mainTemplate.hooks.linkPreload.call('', chunk, hash), 'document.head.appendChild(link);', `${mainTemplate.requireFn}.e(chunkId);` // 'var head = document.getElementsByTagName(\'head\')[0];',
57
57
  // mainTemplate.hooks.jsonpScript.call('', chunk, hash),
@@ -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
+
@@ -86,20 +86,20 @@ class SelectorPlugin {
86
86
  const rootOriginal = _postcss.default.parse(module.content);
87
87
 
88
88
  const filename = module.issuer.resource;
89
- /*
90
- input :
91
- filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
92
-
93
- patterns.cssVariableReplacement:
94
- // include src folder, include deskapp folder, exclude node modules
95
- "selectorWeight": [
96
- "src",
97
- "deskapp",
98
- "!node_modules"
99
- ]
100
-
101
- output :
102
- true or false
89
+ /*
90
+ input :
91
+ filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
92
+
93
+ patterns.cssVariableReplacement:
94
+ // include src folder, include deskapp folder, exclude node modules
95
+ "selectorWeight": [
96
+ "src",
97
+ "deskapp",
98
+ "!node_modules"
99
+ ]
100
+
101
+ output :
102
+ true or false
103
103
  */
104
104
 
105
105
  if (!(0, _fileHandling.isFileNameMatchingPluginPattern)({
@@ -108,21 +108,21 @@ class SelectorPlugin {
108
108
  })) {
109
109
  return;
110
110
  }
111
- /*
112
-
113
- filename : Deskapp.module.css ?
114
- data :
115
- {
116
- "DeskApp.module.css": {"defaultSelector" : ".desk_app_ui "}
117
- }
118
- selectorWeightConfig :
119
- defaultSelector : .zoho_desk_ui
120
-
121
- case filename = 'DeskApp.module.css' ?
122
- data[filename].defaultSelector = '.desk_app_ui'
123
- case filename is different ?
124
- defaultSelector = '.zoho_desk_ui'
125
- */
111
+ /*
112
+
113
+ filename : Deskapp.module.css ?
114
+ data :
115
+ {
116
+ "DeskApp.module.css": {"defaultSelector" : ".desk_app_ui "}
117
+ }
118
+ selectorWeightConfig :
119
+ defaultSelector : .zoho_desk_ui
120
+
121
+ case filename = 'DeskApp.module.css' ?
122
+ data[filename].defaultSelector = '.desk_app_ui'
123
+ case filename is different ?
124
+ defaultSelector = '.zoho_desk_ui'
125
+ */
126
126
 
127
127
 
128
128
  module.content = selectorWeightPrefixAdder(rootOriginal, data[filename] ? data[filename].defaultSelector : defaultSelector, excludeStrings).toString();
@@ -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) {
@@ -28,14 +28,14 @@ const {
28
28
 
29
29
  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']; // -- to convert the hyphen values to values --
30
30
 
31
- /*
32
- input :
33
- var(--zdt_uploadlist_default_width)
34
- output :
35
- --zdt_uploadlist_default_width
36
-
37
- comment :
38
- to make the variable object using the output as key and decl.prop such as font-size as value
31
+ /*
32
+ input :
33
+ var(--zdt_uploadlist_default_width)
34
+ output :
35
+ --zdt_uploadlist_default_width
36
+
37
+ comment :
38
+ to make the variable object using the output as key and decl.prop such as font-size as value
39
39
  */
40
40
 
41
41
  function createFolderIfNonExistant(path) {
@@ -95,13 +95,13 @@ class VariableConversionCollector {
95
95
  }
96
96
  };
97
97
  }
98
- /*
99
- purpose of tap : to create a variable object such as:
100
- {
101
- --zdt_uploadlist_default_width : width,
102
- --zdt_uploadlist_default_height : height,
103
- }
104
- which will help in the conversion further
98
+ /*
99
+ purpose of tap : to create a variable object such as:
100
+ {
101
+ --zdt_uploadlist_default_width : width,
102
+ --zdt_uploadlist_default_height : height,
103
+ }
104
+ which will help in the conversion further
105
105
  */
106
106
 
107
107
 
@@ -153,19 +153,19 @@ class VariableConversionCollector {
153
153
  });
154
154
  });
155
155
  });
156
- /*
157
- current value example:
158
- {
159
- --zdt_uploadlist_default_width : --zd_upload_width,
160
- --zd_upload_width : width
161
- }
162
- expected value :
163
- {
164
- --zdt_uploadlist_default_width : width,
165
- --zd_upload_width : width
166
- }
167
-
168
- conversion is done in the while loop below
156
+ /*
157
+ current value example:
158
+ {
159
+ --zdt_uploadlist_default_width : --zd_upload_width,
160
+ --zd_upload_width : width
161
+ }
162
+ expected value :
163
+ {
164
+ --zdt_uploadlist_default_width : width,
165
+ --zd_upload_width : width
166
+ }
167
+
168
+ conversion is done in the while loop below
169
169
  */
170
170
 
171
171
  Object.keys(variables).forEach(key => {
@@ -177,37 +177,37 @@ class VariableConversionCollector {
177
177
  });
178
178
  }); // -- conversion for the root using variableConvertor --
179
179
 
180
- /*
181
- input :
182
- .a{
183
- padding : 20px
184
- }
185
- output :
186
- // on settingObject file :
187
- { padding : { replacements : { px : 'zd_size$$' }}}
188
- .a{
189
- padding : zd_size20;
190
- }
180
+ /*
181
+ input :
182
+ .a{
183
+ padding : 20px
184
+ }
185
+ output :
186
+ // on settingObject file :
187
+ { padding : { replacements : { px : 'zd_size$$' }}}
188
+ .a{
189
+ padding : zd_size20;
190
+ }
191
191
  */
192
192
 
193
193
  compilation.hooks.optimizeModules.tap('VariableConversionCollector', modules => {
194
194
  const mods = modules.filter(x => x.type.includes('css'));
195
195
  mods.forEach(module => {
196
196
  const filename = module.issuer.resource;
197
- /*
198
- input :
199
- filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
200
-
201
- patterns.cssVariableReplacement:
202
- // include src folder, include deskapp folder, exclude node modules
203
- "cssVariableReplacement": [
204
- "src",
205
- "deskapp",
206
- "!node_modules"
207
- ]
208
-
209
- output :
210
- true or false
197
+ /*
198
+ input :
199
+ filename : 'D:/MyWork/..../desk_client_app/supportapp/src/components/Avatar/Avatar.module.css,
200
+
201
+ patterns.cssVariableReplacement:
202
+ // include src folder, include deskapp folder, exclude node modules
203
+ "cssVariableReplacement": [
204
+ "src",
205
+ "deskapp",
206
+ "!node_modules"
207
+ ]
208
+
209
+ output :
210
+ true or false
211
211
  */
212
212
 
213
213
  if (!(0, _fileHandling.isFileNameMatchingPluginPattern)({
@@ -223,12 +223,12 @@ class VariableConversionCollector {
223
223
  });
224
224
  });
225
225
  });
226
- /*
227
- purpose of tap : to display the errors encountered so far
228
- input :
229
- all css files
230
- output :
231
- all errors that are present in the errTable arr
226
+ /*
227
+ purpose of tap : to display the errors encountered so far
228
+ input :
229
+ all css files
230
+ output :
231
+ all errors that are present in the errTable arr
232
232
  */
233
233
 
234
234
  compiler.hooks.afterEmit.tap('error-display', () => {
@@ -23,10 +23,10 @@ let aliasNames = {
23
23
  cssVariableReplacement: 'postcss-variable-report',
24
24
  composeMinification: 'postcss-compose-plugin'
25
25
  };
26
- /*
27
-
28
- unique scenario
29
-
26
+ /*
27
+
28
+ unique scenario
29
+
30
30
  */
31
31
  // export function filterFileCssUniqueness(filename, filterObj) {
32
32
  // let rootDir = 'supportapp';
@@ -50,34 +50,20 @@ function isFileNameMatchingPattern({
50
50
  filterObject,
51
51
  plugins
52
52
  }) {
53
- const finalPlugins = []; // console.log(rootDir);
54
- // const regex = `^(.+?)${rootDir}?\\\\`;
55
-
56
- const newFilename = path.relative(path.parse(process.cwd()).base, filename); //windowsModificationFile(filename).replace(
57
- // new RegExp(regex, 'gi'),
58
- // ''
59
- // );
60
- // path.relative('supportapp', 'd:\')
61
-
53
+ const finalPlugins = [];
62
54
  Object.keys(filterObject).forEach(key => {
63
55
  plugins.forEach(x => {
64
- // console.log(key, x.postcssPlugin);
65
56
  if (aliasNames[key] === x.postcssPlugin) {
66
57
  const ig = (0, _ignore.default)({
67
58
  allowRelativePaths: true
68
- }).add(filterObject[key]); // console.log(key, filterObject[key], ig);
59
+ }).add(filterObject[key]);
69
60
 
70
- if (ig.ignores(newFilename)) {
71
- // console.log(newFilename);
61
+ if (ig.ignores(filename)) {
72
62
  finalPlugins.push(x);
73
63
  }
74
64
  }
75
65
  });
76
66
  }); // console.log(filename);
77
- // console.log(finalPlugins);
78
- // console.log(
79
- // '----------------------------------------------------------------------'
80
- // );
81
67
 
82
68
  return finalPlugins; // console.log(filename, filterObject);
83
69
  }
@@ -12,15 +12,15 @@ var _classHandling = require("./utils/classHandling");
12
12
  const ignoreVals = ['--zd_size', '--zd_font_size', '--size', '--size_']; // const avoidProps = [];
13
13
  // -- is issue IO --
14
14
 
15
- /*
16
- issues eg :
17
- issues = ['--zd_size', '--zd_font_size', '--size', '--size_'];
18
- input :
19
- --zd_size
20
- output :
21
- true
22
- comment :
23
- do not execute when --zd_size comes as prop
15
+ /*
16
+ issues eg :
17
+ issues = ['--zd_size', '--zd_font_size', '--size', '--size_'];
18
+ input :
19
+ --zd_size
20
+ output :
21
+ true
22
+ comment :
23
+ do not execute when --zd_size comes as prop
24
24
  */
25
25
 
26
26
  exports.ignoreVals = ignoreVals;
@@ -37,11 +37,11 @@ function selectorMinifySameDir(selector, direction) {
37
37
  const regex = getRegex(direction);
38
38
  return selector.replace(regex, '').trim();
39
39
  }
40
- /**
41
- * this funtion will remove given rule,
42
- * if given selector and it's previous sibiling rule selector are same
43
- * current rule properties will move to previous sibiling rule.
44
- * @param {Rule} rule current rule
40
+ /**
41
+ * this funtion will remove given rule,
42
+ * if given selector and it's previous sibiling rule selector are same
43
+ * current rule properties will move to previous sibiling rule.
44
+ * @param {Rule} rule current rule
45
45
  */
46
46
 
47
47
 
@@ -56,11 +56,11 @@ function mergeIfSameSelector(rule) {
56
56
  rule.remove();
57
57
  }
58
58
  }
59
- /**
60
- * this funtion will remove given rule,
61
- * if given selector and it's previous sibiling rule selector are same
62
- * current rule properties will move to previous sibiling rule.
63
- * @param {Rule} rule current rule
59
+ /**
60
+ * this funtion will remove given rule,
61
+ * if given selector and it's previous sibiling rule selector are same
62
+ * current rule properties will move to previous sibiling rule.
63
+ * @param {Rule} rule current rule
64
64
  */
65
65
 
66
66