@zohodesk/react-cli 1.1.14-kubernetes → 1.1.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. package/.vscode/settings.json +25 -0
  2. package/README.md +294 -16
  3. package/bin/cli.js +30 -55
  4. package/docs/ComposeMinification.md +13 -0
  5. package/docs/CustomChunks.md +12 -9
  6. package/docs/MarkdownParser.md +18 -0
  7. package/docs/ReactLive.md +14 -0
  8. package/docs/SelectorWeight.md +3 -0
  9. package/docs/ValueReplacer.md +27 -0
  10. package/docs/VariableConversion.md +6 -1
  11. package/docs/patternFiltering.md +57 -0
  12. package/lib/common/buildEs.js +12 -0
  13. package/lib/common/runPreProcess.js +71 -0
  14. package/lib/common/splitChunks.js +65 -45
  15. package/lib/common/testPattern.js +9 -11
  16. package/lib/common/valueReplacer.js +1 -3
  17. package/lib/configs/resolvers.js +16 -5
  18. package/lib/configs/webpack.css.umd.config.js +3 -2
  19. package/lib/configs/webpack.dev.config.js +15 -5
  20. package/lib/configs/webpack.docs.config.js +17 -5
  21. package/lib/configs/webpack.impact.config.js +11 -4
  22. package/lib/configs/webpack.prod.config.js +15 -5
  23. package/lib/constants.js +3 -3
  24. package/lib/deprecationLogger.js +40 -0
  25. package/lib/loaderUtils/getCSSLoaders.js +98 -49
  26. package/lib/loaderUtils/tests/windowsModification.test.js +10 -0
  27. package/lib/loaderUtils/windowsModification.js +6 -1
  28. package/lib/loaders/__test__/markdownLoader.spec.js +145 -0
  29. package/lib/loaders/composeLoader.js +298 -0
  30. package/lib/loaders/docsLoader.js +18 -7
  31. package/lib/loaders/markdownLoader.js +71 -0
  32. package/lib/loaders/reactLiveConvertor.js +105 -0
  33. package/lib/loaders/selectorMappingLoader.js +9 -9
  34. package/lib/logger.js +27 -0
  35. package/lib/pluginUtils/getDevPlugins.js +25 -6
  36. package/lib/pluginUtils/getProdPlugins.js +32 -5
  37. package/lib/pluginUtils/getUMDCSSPlugins.js +1 -1
  38. package/lib/pluginUtils/getUMDComponentPlugins.js +1 -1
  39. package/lib/plugins/CustomAttributePlugin.js +82 -0
  40. package/lib/plugins/CustomAttributePlugin.md +35 -0
  41. package/lib/plugins/EFCPlugin.js +9 -9
  42. package/lib/plugins/EFCTemplatePlugin.js +10 -12
  43. package/lib/plugins/EfcResourceCleanupPlugin.js +43 -0
  44. package/lib/plugins/I18NInjectIntoIndexPlugin.js +8 -9
  45. package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +2 -3
  46. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +2 -7
  47. package/lib/plugins/I18nSplitPlugin/index.js +1 -1
  48. package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +8 -8
  49. package/lib/plugins/{UglifyCSSPlugin.js → MinifyPlugin.js} +3 -3
  50. package/lib/plugins/ReportGeneratePlugin.js +8 -6
  51. package/lib/plugins/ResourceHintsPlugin.js +13 -3
  52. package/lib/plugins/SelectorPlugin.js +77 -37
  53. package/lib/plugins/StatsPlugin.js +82 -0
  54. package/lib/plugins/UnusedFilesFindPlugin.js +7 -5
  55. package/lib/plugins/VariableConversionCollector.js +40 -101
  56. package/lib/plugins/index.js +7 -7
  57. package/lib/plugins/utils/classHandling.js +35 -0
  58. package/lib/plugins/utils/fileHandling.js +92 -0
  59. package/lib/plugins/utils/tests/fileHandling.test.js +30 -0
  60. package/lib/plugins/variableConvertorUtils.js +133 -0
  61. package/lib/postcss-plugins/EmptyPlugin.js +8 -0
  62. package/lib/postcss-plugins/ExcludePlugin.js +1 -1
  63. package/lib/postcss-plugins/IncludePlugin.js +23 -0
  64. package/lib/postcss-plugins/RTLSplitPlugin.js +4 -10
  65. package/lib/postcss-plugins/SelectorReplace.js +80 -0
  66. package/lib/postcss-plugins/ValueReplacer.js +8 -29
  67. package/lib/postcss-plugins/__test__/selectorReplace.test.js +28 -0
  68. package/lib/postcss-plugins/__test__/valueReplacer.spec.js +43 -0
  69. package/lib/postcss-plugins/hoverActivePlugin.js +0 -6
  70. package/lib/postcss-plugins/variableModificationPlugin/ErrorHandler.js +0 -1
  71. package/lib/postcss-plugins/variableModificationPlugin/index.js +94 -38
  72. package/lib/schemas/index.js +95 -18
  73. package/lib/servers/devBuild.js +13 -11
  74. package/lib/servers/getCliPath.js +3 -5
  75. package/lib/servers/httpsOptions.js +12 -13
  76. package/lib/servers/nowatchserver.js +62 -55
  77. package/lib/servers/requireLocalOrGlobal.js +61 -0
  78. package/lib/servers/server.js +53 -52
  79. package/lib/utils/cssClassNameGenerate.js +70 -13
  80. package/lib/utils/deprecationSupport.js +134 -0
  81. package/lib/utils/getOptions.js +35 -28
  82. package/lib/utils/getServerURL.js +1 -9
  83. package/lib/utils/index.js +14 -12
  84. package/lib/utils/initPreCommitHook.js +5 -5
  85. package/lib/utils/log.js +11 -0
  86. package/lib/utils/object-manipulation.js +88 -0
  87. package/lib/utils/pullOrigin.js +3 -3
  88. package/lib/utils/reinstallDependencies.js +3 -3
  89. package/lib/utils/selectorReplacer.js +47 -0
  90. package/lib/utils/switchBranch.js +4 -2
  91. package/lib/utils/variableConverter.js +104 -0
  92. package/npm-shrinkwrap.json +33485 -0
  93. package/package.json +5 -3
  94. package/templates/docs/all.html +1 -0
  95. package/templates/docs/component.html +1 -0
  96. package/templates/docs/components.html +1 -0
  97. package/templates/docs/css/markdown.css +202 -0
  98. package/templates/docs/css/style.css +136 -169
  99. package/templates/docs/index.html +796 -632
  100. package/lib/plugins/composeCommonPlugin.js +0 -30
  101. package/lib/postcss-plugins/variableModifier.js +0 -244
@@ -3,18 +3,28 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports.defaulter = exports.default = void 0;
7
7
 
8
8
  var _child_process = require("child_process");
9
9
 
10
- var _fs = _interopRequireDefault(require("fs"));
10
+ var _fs = _interopRequireWildcard(require("fs"));
11
11
 
12
12
  var _path = _interopRequireDefault(require("path"));
13
13
 
14
14
  var _schemas = _interopRequireDefault(require("../schemas"));
15
15
 
16
+ var _deprecationSupport = require("./deprecationSupport");
17
+
18
+ var _deprecationLogger = require("../deprecationLogger");
19
+
20
+ var _logger = require("../logger");
21
+
16
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
23
 
24
+ 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); }
25
+
26
+ 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; }
27
+
18
28
  // import { argv } from 'process';
19
29
  const args = process.argv.slice(2); // console.log('argv', argv);
20
30
 
@@ -122,54 +132,51 @@ const defaulter = (target, source) => {
122
132
  return defaultObject;
123
133
  };
124
134
 
125
- global.reactCLIOptions = null; // function selectn(obj, key) {
126
- // let temp = obj;
127
- // let keys = key.split('.');
128
- // for (let i = 0; i < keys.length; i++) {
129
- // const element = keys[i];
130
- // temp = temp && temp[element];
131
- // }
132
- // return temp;
133
- // }
134
-
135
- function deprecationSupport(options) {
136
- // if (selectn(options, ".app.hasRTL") === true) {
137
- if (options.app.hasRTL === true) {
138
- options.app.plugins.hasRTL = true;
139
- }
135
+ exports.defaulter = defaulter;
136
+ global.reactCLIOptions = null;
140
137
 
141
- if (options.docs.hasRTL === true) {
142
- options.docs.plugins.hasRTL = true;
138
+ const getOptionsFromConfigFile = (appPath, configFileName) => {
139
+ const fileName = configFileName || 'react-cli.config.js';
140
+
141
+ if (!configFileName) {
142
+ (0, _logger.verboseLogger)('we have used default react-cli.config.js');
143
143
  }
144
144
 
145
- if (options.app.rtlExclude.length > 0) {
146
- options.app.exclude.rtl = options.app.rtlExclude;
145
+ const packagePath = _path.default.join(appPath, fileName);
146
+
147
+ if ((0, _fs.existsSync)(packagePath)) {
148
+ return require(packagePath).config;
147
149
  }
148
150
 
149
- if (options.docs.rtlExclude.length > 0) {
150
- options.docs.exclude.rtl = options.docs.rtlExclude;
151
+ const oldDeprecatedConfigFilePath = _path.default.join(appPath, 'build.config.js');
152
+
153
+ if ((0, _fs.existsSync)(oldDeprecatedConfigFilePath)) {
154
+ (0, _deprecationLogger.deprecateMessage)('"build.config.js" file was deprecated. So Kindly rename it as "react-cli.config.js"');
155
+ return require(oldDeprecatedConfigFilePath).config;
151
156
  }
152
- }
153
157
 
154
- const getOptions = () => {
158
+ return null;
159
+ };
160
+
161
+ const getOptions = fromRoot => {
155
162
  if (global.reactCLIOptions) {
156
163
  return global.reactCLIOptions;
157
164
  }
158
165
 
159
166
  const appPath = process.cwd();
160
- let userSchemas;
167
+ let userSchemas = getOptionsFromConfigFile(appPath, processEnv.config_file);
161
168
 
162
169
  const packagePath = _path.default.join(appPath, 'package.json');
163
170
 
164
171
  if (_fs.default.existsSync(packagePath)) {
165
- userSchemas = require(packagePath)['react-cli'] || {};
172
+ userSchemas = userSchemas || require(packagePath)['react-cli'] || {};
166
173
  }
167
174
 
168
175
  const options = defaulter(_schemas.default, userSchemas || {}); // for future may be for npm 8 edge cases
169
176
 
170
177
  options.npmVersion = getNpmVersion();
171
178
  options.cwd = getCWD();
172
- deprecationSupport(options);
179
+ (0, _deprecationSupport.deprecationSupport)(options, options.disableDeprecationWarning || !fromRoot);
173
180
  options.packageVersion = process.env.npm_package_version;
174
181
  global.reactCLIOptions = options;
175
182
  return options;
@@ -13,10 +13,6 @@ let getServerURL = (serverInfo, protocol) => {
13
13
  } = serverInfo;
14
14
 
15
15
  if (protocol) {
16
- if (domain === 'kubernetes') {
17
- return `${protocol ? `${protocol}:` : ''}//${host}`;
18
- }
19
-
20
16
  if (protocol === 'ht' + 'tp') {
21
17
  port = Number(port) + 1;
22
18
 
@@ -24,14 +20,10 @@ let getServerURL = (serverInfo, protocol) => {
24
20
  return `${protocol ? `${protocol}:` : ''}//${host}.${domain}.zohocorpin.com:${Number(port) + 1}`;
25
21
  }
26
22
 
27
- return `${protocol ? `${protocol}:` : ''}//${host}:${Number(port) + 1}`;
23
+ return `${protocol ? `${protocol}:` : ''}//${host}:${port}`;
28
24
  }
29
25
  }
30
26
 
31
- if (domain === 'kubernetes') {
32
- return `${protocol ? `${protocol}:` : ''}//${host}`;
33
- }
34
-
35
27
  if (domain) {
36
28
  return `${protocol ? `${protocol}:` : ''}//${host}.${domain}.zohocorpin.com:${port}`;
37
29
  }
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  var _exportNames = {
7
- log: true,
8
7
  writeFile: true,
9
8
  makeDir: true,
10
9
  getInfoFromPublicPaths: true,
11
10
  getLibraryConflict: true,
11
+ log: true,
12
12
  getOptions: true,
13
13
  createEventStream: true,
14
14
  getServerURL: true,
@@ -64,7 +64,13 @@ Object.defineProperty(exports, "jsonHelper", {
64
64
  return _jsonHelper.default;
65
65
  }
66
66
  });
67
- exports.makeDir = exports.log = void 0;
67
+ Object.defineProperty(exports, "log", {
68
+ enumerable: true,
69
+ get: function () {
70
+ return _log.log;
71
+ }
72
+ });
73
+ exports.makeDir = void 0;
68
74
  Object.defineProperty(exports, "pullOrigin", {
69
75
  enumerable: true,
70
76
  get: function () {
@@ -95,6 +101,8 @@ var _stream = require("stream");
95
101
 
96
102
  var _fs = _interopRequireDefault(require("fs"));
97
103
 
104
+ var _log = require("./log");
105
+
98
106
  var _getOptions = _interopRequireDefault(require("./getOptions"));
99
107
 
100
108
  var _createEventStream = _interopRequireDefault(require("./createEventStream"));
@@ -161,13 +169,7 @@ var _ssTestHack = _interopRequireDefault(require("./ssTestHack"));
161
169
 
162
170
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
163
171
 
164
- let log = (...info) => {
165
- let print = console;
166
- print.log(...info);
167
- };
168
-
169
- exports.log = log;
170
-
172
+ // eslint-disable-next-line no-duplicate-imports
171
173
  let writeFile = (outputPath, src, isPath = false) => new Promise((resolve, reject) => {
172
174
  let inStr;
173
175
 
@@ -314,9 +316,9 @@ let getLibraryConflict = (moduleObject, impactObj, changesOnly) => {
314
316
  whichLibrary = "No component file changes!";
315
317
  }
316
318
 
317
- log('\n');
318
- log('You can see the HTML out at coverageTest/impactLibrary.html!');
319
- log('\x1b[33m%s\x1b[0m', '************************************************************ \n ');
319
+ (0, _log.log)('\n');
320
+ (0, _log.log)('You can see the HTML out at coverageTest/impactLibrary.html!');
321
+ (0, _log.log)('\x1b[33m%s\x1b[0m', '************************************************************ \n ');
320
322
  return {
321
323
  response: allImpactArray,
322
324
  result: {
@@ -11,7 +11,7 @@ var _path = _interopRequireDefault(require("path"));
11
11
 
12
12
  var _child_process = require("child_process");
13
13
 
14
- var _index = require("./index");
14
+ var _log = require("./log");
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
@@ -38,7 +38,7 @@ let copyEslintConfig = rootDir => {
38
38
 
39
39
  _fs.default.writeFileSync(targetPath, src);
40
40
 
41
- (0, _index.log)('Eslint config added in project root path');
41
+ (0, _log.log)('Eslint config added in project root path');
42
42
  }
43
43
  };
44
44
 
@@ -58,7 +58,7 @@ let initPreCommitHook = (forReactCLI = false) => {
58
58
 
59
59
  _fs.default.writeFileSync(targetPath, precommit);
60
60
 
61
- (0, _index.log)('pre-commit hook added');
61
+ (0, _log.log)('pre-commit hook added');
62
62
  }
63
63
 
64
64
  let packagePath = _path.default.join(process.cwd(), 'package.json');
@@ -71,10 +71,10 @@ let initPreCommitHook = (forReactCLI = false) => {
71
71
 
72
72
  _fs.default.writeFileSync(packagePath, JSON.stringify(packageJson, null, 2));
73
73
 
74
- (0, _index.log)('lint script added in your package.json');
74
+ (0, _log.log)('lint script added in your package.json');
75
75
  }
76
76
  } catch (e) {
77
- (0, _index.log)('package.json not found');
77
+ (0, _log.log)('package.json not found');
78
78
  }
79
79
  }
80
80
  };
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.log = log;
7
+
8
+ function log(...info) {
9
+ let print = console;
10
+ print.log(...info);
11
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.convertObjectToStringGen = convertObjectToStringGen;
7
+ exports.removeKeysFromObject = removeKeysFromObject;
8
+
9
+ function objectPathMatcher(currentKey, objHierarchy = [], keysToBeRemoved = []) {
10
+ const objPathKey = objHierarchy.length > 0 ? `${objHierarchy.join('.')}.${currentKey}` : currentKey;
11
+ return keysToBeRemoved.some(key => {
12
+ const isWildPath = /^\*/.test(key);
13
+
14
+ if (isWildPath) {
15
+ const newKey = key.replace(/\*\.?/, '');
16
+ return objPathKey.includes(newKey);
17
+ }
18
+
19
+ return key === objPathKey;
20
+ });
21
+ }
22
+ /*
23
+ 1) *.keyTobeRemoved -> means match every object path, this key will be removed
24
+ 2) keyToBeremoved -> means root object key
25
+ 3) nestedPath.keyToBeRemoved -> means only that nested path key
26
+ 4) don't need to account for array iteration, just object key path is enough in the key to be removed.
27
+ */
28
+
29
+
30
+ function removeKeysFromObject(obj, keysToBeRemoved, prevKeys = []) {
31
+ if (Array.isArray(obj)) {
32
+ return obj.map(item => removeKeysFromObject(item, keysToBeRemoved, prevKeys));
33
+ }
34
+
35
+ if (obj && typeof obj === 'object') {
36
+ const filteredKeyObject = {};
37
+ const ObjectKeys = Object.keys(obj);
38
+
39
+ for (const objectKey of ObjectKeys) {
40
+ const isKeyToBeRemoved = objectPathMatcher(objectKey, prevKeys, keysToBeRemoved);
41
+
42
+ if (!isKeyToBeRemoved) {
43
+ filteredKeyObject[objectKey] = removeKeysFromObject(obj[objectKey], keysToBeRemoved, [...prevKeys, objectKey]);
44
+ }
45
+ }
46
+
47
+ return filteredKeyObject;
48
+ }
49
+
50
+ return obj;
51
+ }
52
+
53
+ function* convertObjectToStringGen(obj) {
54
+ if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || obj === null) {
55
+ yield JSON.stringify(obj);
56
+ } else if (Array.isArray(obj)) {
57
+ yield '[';
58
+ let isFirst = true;
59
+
60
+ for (let item of obj) {
61
+ if (item === undefined) {
62
+ item = null;
63
+ }
64
+
65
+ yield `${isFirst ? '' : ','}`;
66
+ yield* convertObjectToStringGen(item);
67
+ isFirst = false;
68
+ }
69
+
70
+ yield ']';
71
+ } else {
72
+ yield '{';
73
+ let isFirst = true;
74
+ const entries = Object.entries(obj);
75
+
76
+ for (const [itemKey, itemValue] of entries) {
77
+ if (itemValue === undefined) {
78
+ continue;
79
+ }
80
+
81
+ yield `${isFirst ? '' : ','}${JSON.stringify(itemKey)}: `;
82
+ yield* convertObjectToStringGen(itemValue);
83
+ isFirst = false;
84
+ }
85
+
86
+ yield '}';
87
+ }
88
+ }
@@ -7,20 +7,20 @@ exports.default = void 0;
7
7
 
8
8
  var _child_process = require("child_process");
9
9
 
10
- var _utils = require("../utils");
10
+ var _log = require("./log");
11
11
 
12
12
  var _default = (type = 'git', branchName) => new Promise(resolve => {
13
13
  if (type === 'git') {
14
14
  (0, _child_process.spawnSync)('git', ['pull', 'origin', branchName], {
15
15
  encoding: 'utf8'
16
16
  });
17
- (0, _utils.log)(branchName, 'Branch Pulled!');
17
+ (0, _log.log)(branchName, 'Branch Pulled!');
18
18
  resolve();
19
19
  } else if (type === 'hg') {
20
20
  (0, _child_process.spawnSync)('hg', ['pull'], {
21
21
  encoding: 'utf8'
22
22
  });
23
- (0, _utils.log)(branchName, 'Branch Pulled!');
23
+ (0, _log.log)(branchName, 'Branch Pulled!');
24
24
  resolve();
25
25
  }
26
26
  });
@@ -13,7 +13,7 @@ var _child_process = require("child_process");
13
13
 
14
14
  var _gitRootDir = _interopRequireDefault(require("git-root-dir"));
15
15
 
16
- var _index = require("./index");
16
+ var _log = require("./log");
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
@@ -80,7 +80,7 @@ let reinstallDependencies1 = pathToSubProjects => {
80
80
  let diffs = packageDiffChecker(prePackageJson, currentPackageJson);
81
81
 
82
82
  if (Object.keys(diffs).length) {
83
- (0, _index.log)(diffs, `package diffs between branches for ${project} project`);
83
+ (0, _log.log)(diffs, `package diffs between branches for ${project} project`);
84
84
  (0, _child_process.spawnSync)('rm', ['-rf', 'package-lock.json'], {
85
85
  cwd: projPath,
86
86
  stdio: 'inherit'
@@ -93,7 +93,7 @@ let reinstallDependencies1 = pathToSubProjects => {
93
93
  dummy.push(`${name}@${version}`);
94
94
  }
95
95
 
96
- (0, _index.log)(`npm ${['install'].concat(dummy).join(' ')}`);
96
+ (0, _log.log)(`npm ${['install'].concat(dummy).join(' ')}`);
97
97
  (0, _child_process.spawnSync)('npm', ['install'].concat(dummy), {
98
98
  cwd: projPath,
99
99
  stdio: 'inherit'
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ var _getOptions = _interopRequireDefault(require("./getOptions"));
4
+
5
+ var _folderIterator = _interopRequireDefault(require("./folderIterator"));
6
+
7
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+
9
+ const postcss = require('postcss');
10
+
11
+ const path = require('path');
12
+
13
+ const fs = require('fs');
14
+
15
+ const SelectorReplacePlugin = require('../postcss-plugins/SelectorReplace');
16
+
17
+ const cwd = process.cwd();
18
+ const src = path.join(cwd, process.argv[2]);
19
+ const dist = path.join(cwd, process.argv[3]);
20
+ const options = (0, _getOptions.default)();
21
+
22
+ function watchHandler(fromPath, toPath) {
23
+ const css = fs.readFileSync(fromPath, 'utf-8'); // console.log(css);
24
+
25
+ const {
26
+ css: cssOptions
27
+ } = options; // console.log(cssOptions, appOptions);
28
+
29
+ const {
30
+ selectorReplace
31
+ } = cssOptions;
32
+ postcss([SelectorReplacePlugin(selectorReplace)]).process(css, {
33
+ from: fromPath,
34
+ to: toPath
35
+ }).then(result => {
36
+ fs.writeFileSync(toPath, result.css);
37
+ }); // console.log(variableOptions);
38
+ }
39
+
40
+ (0, _folderIterator.default)(src, dist, ['.css'], false, (fromPath, toPath) => {
41
+ // console.log(fromPath, toPath);
42
+ watchHandler(fromPath, toPath);
43
+ }); // if (canWacth) {
44
+ // useExitCleanup(() => {
45
+ // fs.unwatchFile(src, watchHandler);
46
+ // });
47
+ // }
@@ -9,13 +9,15 @@ var _child_process = require("child_process");
9
9
 
10
10
  var _utils = require("../utils");
11
11
 
12
+ var _log = require("./log");
13
+
12
14
  var _default = (type = 'git', branchName) => new Promise(resolve => {
13
15
  if (type === 'git') {
14
- (0, _utils.log)((0, _utils.getCurrentBranch)(type, process.cwd()), 'Before the branch switch');
16
+ (0, _log.log)((0, _utils.getCurrentBranch)(type, process.cwd()), 'Before the branch switch');
15
17
  (0, _child_process.spawnSync)('git', ['checkout', branchName, '--force'], {
16
18
  encoding: 'utf8'
17
19
  });
18
- (0, _utils.log)((0, _utils.getCurrentBranch)(type, process.cwd()), 'After the branch switch');
20
+ (0, _log.log)((0, _utils.getCurrentBranch)(type, process.cwd()), 'After the branch switch');
19
21
  (0, _utils.pullOrigin)(type, branchName).then(resolve);
20
22
  } else if (type === 'hg') {
21
23
  (0, _child_process.spawnSync)('hg', ['update', branchName], {
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ var _fileHandling = require("../plugins/utils/fileHandling");
4
+
5
+ var _getOptions = _interopRequireDefault(require("./getOptions"));
6
+
7
+ var _folderIterator = _interopRequireDefault(require("./folderIterator"));
8
+
9
+ var _variableConvertorUtils = require("../plugins/variableConvertorUtils");
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+
13
+ const postcss = require('postcss');
14
+
15
+ const path = require('path');
16
+
17
+ const fs = require('fs');
18
+
19
+ const ignore = require('ignore');
20
+
21
+ const postcssVariableConvertor = require('../postcss-plugins/variableModificationPlugin/index').plugin;
22
+
23
+ const cwd = process.cwd();
24
+ const src = path.join(cwd, process.argv[2]);
25
+ const dist = path.join(cwd, process.argv[3]);
26
+ const options = (0, _getOptions.default)();
27
+
28
+ function watchHandler(fromPath, toPath) {
29
+ const css = fs.readFileSync(fromPath, 'utf-8'); // console.log(css);
30
+
31
+ const {
32
+ css: cssOptions
33
+ } = options; // console.log(cssOptions, appOptions);
34
+
35
+ const {
36
+ cssVariableReplacementConfig: cssVariableConfigFilePath,
37
+ patterns: filterArr
38
+ } = cssOptions;
39
+ const rootOriginal = postcss.parse(css);
40
+ const variables = {}; // const unassigned = {};
41
+
42
+ const rawdata = fs.readFileSync(cssVariableConfigFilePath).toString();
43
+ const cssVariableOptions = JSON.parse(rawdata);
44
+ const {
45
+ settings: settingsObject // errorLog: errorLogStatus,
46
+ // errorInConsole: errorConsoleStatus,
47
+ // errorsAllowed,
48
+ // strictMode
49
+
50
+ } = cssVariableOptions; //Variable Webpack Object Generation
51
+
52
+ rootOriginal.walkRules(rule => {
53
+ rule.walkDecls(decl => {
54
+ decl.value.split(' ').forEach(val => {
55
+ if (val && val.includes('--') && !new RegExp(_variableConvertorUtils.ignoreVals.join('|'), 'gi').test(val) && decl.prop) {
56
+ const extractedValue = (0, _variableConvertorUtils.extractVariableName)(val);
57
+
58
+ if (!variables[extractedValue]) {
59
+ variables[extractedValue] = decl.prop;
60
+ }
61
+ }
62
+ });
63
+ });
64
+ }); // if (
65
+ // !isFileNameMatchingPluginPattern({
66
+ // filename: fromPath,
67
+ // filterArr
68
+ // })
69
+ // ) {
70
+ // return;
71
+ // }
72
+
73
+ const ig = ignore({
74
+ allowRelativePaths: true
75
+ }).add(filterArr);
76
+
77
+ if (ig.ignores(fromPath)) {
78
+ // console.log(fromPath);
79
+ // console.log(ig.ignores(fromPath));
80
+ // console.log(
81
+ // '----------------------------------------------------------------'
82
+ // );
83
+ return;
84
+ } // Convert code
85
+
86
+
87
+ const convertedCode = (0, _variableConvertorUtils.variableConverter)(rootOriginal, variables, settingsObject).toString(); // run postcss plugin for css code input
88
+
89
+ postcss([postcssVariableConvertor(cssVariableConfigFilePath)]).process(convertedCode, {
90
+ from: undefined
91
+ }).then(result => {
92
+ //write new css file data in file
93
+ fs.writeFileSync(toPath, result.css);
94
+ }); // console.log(variableOptions);
95
+ }
96
+
97
+ (0, _folderIterator.default)(src, dist, ['.css'], false, (fromPath, toPath) => {
98
+ // console.log(fromPath, toPath);
99
+ watchHandler(fromPath, toPath);
100
+ }); // if (canWacth) {
101
+ // useExitCleanup(() => {
102
+ // fs.unwatchFile(src, watchHandler);
103
+ // });
104
+ // }