@zohodesk/react-cli 1.0.1 → 1.0.2

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.
package/README.md CHANGED
@@ -44,6 +44,11 @@ Now to run app
44
44
 
45
45
  # Change Logs
46
46
 
47
+ # 1.0.2
48
+
49
+ **Feature Update**
50
+ - Selector replace plugin made custom postcss-plugin with update to code that was unpublished in package.
51
+
47
52
  # 1.0.1
48
53
 
49
54
  **Issue Fix**
@@ -73,7 +73,7 @@ const getCSSLoaders = optionsObj => {
73
73
  } // console.log('selector weight config : ', selectorWeightConfig);
74
74
 
75
75
 
76
- const postcssPlugins = [valueReplacer && require('../postcss-plugins/ValueReplacer')(valueReplacer), selectorReplace && require('postcss-selector-replace')(selectorReplace), ...excludeEmptyCheckPlugin({
76
+ const postcssPlugins = [valueReplacer && require('../postcss-plugins/ValueReplacer')(valueReplacer), selectorReplace && require('../postcss-plugins/SelectorReplace')(selectorReplace), ...excludeEmptyCheckPlugin({
77
77
  enable: plugins.hasRTL,
78
78
  ignore: rtlExcludeLocal,
79
79
  plugins: [require('@zohodesk/postcss-rtl')({
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ var _postcss = _interopRequireDefault(require("postcss"));
4
+
5
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
+
7
+ function validator(opts) {
8
+ if (!opts || typeof opts !== 'object') {
9
+ throw new Error('Always requires argment');
10
+ }
11
+
12
+ const {
13
+ before,
14
+ after
15
+ } = opts;
16
+
17
+ if (!before || !after) {
18
+ throw new Error('Be sure to have "before" and "after" object names');
19
+ }
20
+
21
+ if (!Array.isArray(before) || !Array.isArray(after)) {
22
+ throw new Error('Objects "before" and "after" must be of type Array');
23
+ }
24
+
25
+ if (before.length !== after.length) {
26
+ throw new Error('Length of before and after options must be the same');
27
+ }
28
+
29
+ if (before.length === 0) {
30
+ throw new Error('Array length is 1 or more');
31
+ }
32
+
33
+ before.forEach((beforeOpt, idx) => {
34
+ const afterOpt = after[idx];
35
+
36
+ switch (true) {
37
+ case typeof beforeOpt === 'string':
38
+ {
39
+ if (!typeof afterOpt === 'string') {
40
+ throw new Error(`The after option ${afterOpt} must be a string. If you want to apply the replace callback function, then use a RegExp for the before option`);
41
+ }
42
+
43
+ break;
44
+ }
45
+
46
+ case beforeOpt instanceof RegExp:
47
+ {
48
+ if (!typeof afterOpt === 'string' && !typeof afterOpt === 'function') {
49
+ throw new Error(`The after option ${afterOpt} must be either a string, or a function`);
50
+ }
51
+
52
+ break;
53
+ }
54
+
55
+ default:
56
+ throw new Error(`The before option ${beforeOpt} must be either a string, or a RegExp`);
57
+ }
58
+ });
59
+ }
60
+
61
+ module.exports = _postcss.default.plugin('postcss-selector-replace-new', opts => {
62
+ validator(opts);
63
+ const {
64
+ before,
65
+ after
66
+ } = opts;
67
+ return root => {
68
+ root.walkRules(rule => {
69
+ before.forEach((beforeOpt, idx) => {
70
+ const afterOpt = after[idx];
71
+
72
+ if (typeof beforeOpt === 'string') {
73
+ rule.selector = rule.selector.split(beforeOpt).join(afterOpt);
74
+ } else {
75
+ rule.selector = rule.selector.replace(beforeOpt, afterOpt);
76
+ }
77
+ });
78
+ });
79
+ };
80
+ });
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ let settings1 = {
4
+ selectorReplace: {
5
+ before: [':root', 'data-mode', 'data-theme'],
6
+ after: [':global .zohodesk_controlpanel,:global .wms-mainui,:global .wms-hysearch, :global .mcf1ee8b17_overlay,:global .wms-hvalign, :global .KB_Editor_UploadImage,:global .zdeskEditor_popup, :global .ze_dd, :global .__baseZC_Container__', 'data-desk-mode', 'data-desk-theme']
7
+ }
8
+ };
9
+ let settings2 = {
10
+ selectorReplace: {
11
+ before: [':root', 'data-'],
12
+ after: [':global .zohodesk_controlpanel,:global .wms-mainui,:global .wms-hysearch, :global .mcf1ee8b17_overlay,:global .wms-hvalign, :global .KB_Editor_UploadImage,:global .zdeskEditor_popup, :global .ze_dd, :global .__baseZC_Container__', 'test-']
13
+ }
14
+ }; //error case
15
+
16
+ let settings3 = {
17
+ selectorReplace: {
18
+ before: [':root', 'data-'],
19
+ after: [':global .zohodesk_controlpanel,:global .wms-mainui,:global .wms-hysearch, :global .mcf1ee8b17_overlay,:global .wms-hvalign, :global .KB_Editor_UploadImage,:global .zdeskEditor_popup, :global .ze_dd, :global .__baseZC_Container__']
20
+ }
21
+ }; //error case
22
+
23
+ let settings4 = {
24
+ selectorReplace: {
25
+ before: [':root'],
26
+ after: [':global .zohodesk_controlpanel,:global .wms-mainui,:global .wms-hysearch, :global .mcf1ee8b17_overlay,:global .wms-hvalign, :global .KB_Editor_UploadImage,:global .zdeskEditor_popup, :global .ze_dd, :global .__baseZC_Container__', 'test-']
27
+ }
28
+ }; // here conversion happens for data from one index to another
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/react-cli",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "A CLI tool for build modern web application and libraries",
5
5
  "scripts": {
6
6
  "init": "node ./lib/utils/init.js",
@@ -88,7 +88,6 @@
88
88
  "postcss-hash-classname": "0.4.0",
89
89
  "postcss-loader": "3.0.0",
90
90
  "postcss-mobile-hover": "1.0.2",
91
- "postcss-selector-replace": "1.0.2",
92
91
  "react-test-renderer": "16.13.1",
93
92
  "redis": "3.0.2",
94
93
  "redux-mock-store": "1.5.4",
@@ -1,11 +0,0 @@
1
- {
2
- "workbench.iconTheme": "vscode-icons",
3
- "window.zoomLevel": 1,
4
- "window.autoDetectColorScheme": true,
5
- "gitlens.views.stashes.files.layout": "list",
6
- "git.openRepositoryInParentFolders": "never",
7
- "diffEditor.ignoreTrimWhitespace": false,
8
- "workbench.colorTheme": "Default Light+",
9
- "editor.indentSize": "tabSize",
10
- "eslint.enable": true
11
- }