stylehacks 5.0.0-rc.2 → 5.0.3
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 +5 -8
- package/package.json +8 -13
- package/src/dictionary/browsers.js +9 -0
- package/src/dictionary/identifiers.js +7 -0
- package/src/dictionary/postcss.js +6 -0
- package/src/dictionary/tags.js +5 -0
- package/src/exists.js +6 -0
- package/src/index.js +50 -0
- package/src/isMixin.js +11 -0
- package/src/plugin.js +60 -0
- package/src/plugins/bodyEmpty.js +40 -0
- package/src/plugins/htmlCombinatorCommentBody.js +46 -0
- package/src/plugins/htmlFirstChild.js +41 -0
- package/src/plugins/important.js +21 -0
- package/src/plugins/index.js +28 -0
- package/src/plugins/leadingStar.js +50 -0
- package/src/plugins/leadingUnderscore.js +42 -0
- package/src/plugins/mediaSlash0.js +22 -0
- package/src/plugins/mediaSlash0Slash9.js +22 -0
- package/src/plugins/mediaSlash9.js +22 -0
- package/src/plugins/slash9.js +21 -0
- package/src/plugins/starHtml.js +41 -0
- package/src/plugins/trailingSlashComma.js +31 -0
- package/CHANGELOG.md +0 -65
- package/dist/dictionary/browsers.js +0 -18
- package/dist/dictionary/identifiers.js +0 -14
- package/dist/dictionary/postcss.js +0 -12
- package/dist/dictionary/tags.js +0 -10
- package/dist/exists.js +0 -13
- package/dist/index.js +0 -69
- package/dist/isMixin.js +0 -20
- package/dist/plugin.js +0 -71
- package/dist/plugins/bodyEmpty.js +0 -48
- package/dist/plugins/htmlCombinatorCommentBody.js +0 -50
- package/dist/plugins/htmlFirstChild.js +0 -48
- package/dist/plugins/important.js +0 -29
- package/dist/plugins/index.js +0 -36
- package/dist/plugins/leadingStar.js +0 -67
- package/dist/plugins/leadingUnderscore.js +0 -49
- package/dist/plugins/mediaSlash0.js +0 -30
- package/dist/plugins/mediaSlash0Slash9.js +0 -30
- package/dist/plugins/mediaSlash9.js +0 -30
- package/dist/plugins/slash9.js +0 -30
- package/dist/plugins/starHtml.js +0 -48
- package/dist/plugins/trailingSlashComma.js +0 -39
package/CHANGELOG.md
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
# [5.0.0-rc.2](https://github.com/cssnano/cssnano/compare/stylehacks@5.0.0-rc.1...stylehacks@5.0.0-rc.2) (2021-03-15)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package stylehacks
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# [5.0.0-rc.1](https://github.com/cssnano/cssnano/compare/stylehacks@5.0.0-rc.0...stylehacks@5.0.0-rc.1) (2021-03-04)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package stylehacks
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
# 5.0.0-rc.0 (2021-02-19)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
### chore
|
|
26
|
-
|
|
27
|
-
* minimum require version of node is 10.13 ([#871](https://github.com/cssnano/cssnano/issues/871)) ([28bda24](https://github.com/cssnano/cssnano/commit/28bda243e32ce3ba89b3c358a5f78727b3732f11))
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
### Features
|
|
31
|
-
|
|
32
|
-
* migarete to PostCSS 8 ([#975](https://github.com/cssnano/cssnano/issues/975)) ([40b82dc](https://github.com/cssnano/cssnano/commit/40b82dca7f53ac02cd4fe62846dec79b898ccb49))
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
### BREAKING CHANGES
|
|
36
|
-
|
|
37
|
-
* minimum supported `postcss` version is `8.2.1`
|
|
38
|
-
* minimum require version of node is 10.13
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
## 4.1.10 (2019-02-14)
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
### Bug Fixes
|
|
46
|
-
|
|
47
|
-
* **stylehacks:** doesn't throw error on `[attr]` selector ([#711](https://github.com/cssnano/cssnano/issues/711)) ([a4a43c3](https://github.com/cssnano/cssnano/commit/a4a43c37c58eb9dec3123072485f12e20f627bd1))
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
## 4.1.9 (2019-02-12)
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
### Bug Fixes
|
|
55
|
-
|
|
56
|
-
* **stylehacks:** better handle uppercase ([#704](https://github.com/cssnano/cssnano/issues/704)) ([8d48058](https://github.com/cssnano/cssnano/commit/8d48058b0f5be6943c443e4ce653fb156794f6b7))
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
## 4.1.1 (2018-09-24)
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
### Bug Fixes
|
|
64
|
-
|
|
65
|
-
* **postcss-merge-longhand:** not mangle border output ([#555](https://github.com/cssnano/cssnano/issues/555)) ([9a70605](https://github.com/cssnano/cssnano/commit/9a706050b621e7795a9bf74eb7110b5c81804ffe)), closes [#553](https://github.com/cssnano/cssnano/issues/553) [#554](https://github.com/cssnano/cssnano/issues/554)
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.OP_9 = exports.IE_8 = exports.IE_7 = exports.IE_6 = exports.IE_5_5 = exports.FF_2 = void 0;
|
|
7
|
-
const FF_2 = 'firefox 2';
|
|
8
|
-
exports.FF_2 = FF_2;
|
|
9
|
-
const IE_5_5 = 'ie 5.5';
|
|
10
|
-
exports.IE_5_5 = IE_5_5;
|
|
11
|
-
const IE_6 = 'ie 6';
|
|
12
|
-
exports.IE_6 = IE_6;
|
|
13
|
-
const IE_7 = 'ie 7';
|
|
14
|
-
exports.IE_7 = IE_7;
|
|
15
|
-
const IE_8 = 'ie 8';
|
|
16
|
-
exports.IE_8 = IE_8;
|
|
17
|
-
const OP_9 = 'opera 9';
|
|
18
|
-
exports.OP_9 = OP_9;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.VALUE = exports.SELECTOR = exports.PROPERTY = exports.MEDIA_QUERY = void 0;
|
|
7
|
-
const MEDIA_QUERY = 'media query';
|
|
8
|
-
exports.MEDIA_QUERY = MEDIA_QUERY;
|
|
9
|
-
const PROPERTY = 'property';
|
|
10
|
-
exports.PROPERTY = PROPERTY;
|
|
11
|
-
const SELECTOR = 'selector';
|
|
12
|
-
exports.SELECTOR = SELECTOR;
|
|
13
|
-
const VALUE = 'value';
|
|
14
|
-
exports.VALUE = VALUE;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.RULE = exports.DECL = exports.ATRULE = void 0;
|
|
7
|
-
const ATRULE = 'atrule';
|
|
8
|
-
exports.ATRULE = ATRULE;
|
|
9
|
-
const DECL = 'decl';
|
|
10
|
-
exports.DECL = DECL;
|
|
11
|
-
const RULE = 'rule';
|
|
12
|
-
exports.RULE = RULE;
|
package/dist/dictionary/tags.js
DELETED
package/dist/exists.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = exists;
|
|
7
|
-
|
|
8
|
-
function exists(selector, index, value) {
|
|
9
|
-
const node = selector.at(index);
|
|
10
|
-
return node && node.value && node.value.toLowerCase() === value;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
module.exports = exports.default;
|
package/dist/index.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _browserslist = _interopRequireDefault(require("browserslist"));
|
|
9
|
-
|
|
10
|
-
var _plugins = _interopRequireDefault(require("./plugins"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
function pluginCreator(opts = {}) {
|
|
15
|
-
return {
|
|
16
|
-
postcssPlugin: 'stylehacks',
|
|
17
|
-
|
|
18
|
-
OnceExit(css, {
|
|
19
|
-
result
|
|
20
|
-
}) {
|
|
21
|
-
const resultOpts = result.opts || {};
|
|
22
|
-
const browsers = (0, _browserslist.default)(null, {
|
|
23
|
-
stats: resultOpts.stats,
|
|
24
|
-
path: __dirname,
|
|
25
|
-
env: resultOpts.env
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
const processors = _plugins.default.reduce((list, Plugin) => {
|
|
29
|
-
const hack = new Plugin(result);
|
|
30
|
-
const applied = browsers.some(browser => {
|
|
31
|
-
return hack.targets.some(target => browser === target);
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
if (applied) {
|
|
35
|
-
return list;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
return [...list, hack];
|
|
39
|
-
}, []);
|
|
40
|
-
|
|
41
|
-
css.walk(node => {
|
|
42
|
-
processors.forEach(proc => {
|
|
43
|
-
if (!~proc.nodeTypes.indexOf(node.type)) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
if (opts.lint) {
|
|
48
|
-
return proc.detectAndWarn(node);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return proc.detectAndResolve(node);
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
pluginCreator.detect = node => {
|
|
60
|
-
return _plugins.default.some(Plugin => {
|
|
61
|
-
const hack = new Plugin();
|
|
62
|
-
return hack.any(node);
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
pluginCreator.postcss = true;
|
|
67
|
-
var _default = pluginCreator;
|
|
68
|
-
exports.default = _default;
|
|
69
|
-
module.exports = exports.default;
|
package/dist/isMixin.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = isMixin;
|
|
7
|
-
|
|
8
|
-
function isMixin(node) {
|
|
9
|
-
const {
|
|
10
|
-
selector
|
|
11
|
-
} = node; // If the selector ends with a ':' it is likely a part of a custom mixin.
|
|
12
|
-
|
|
13
|
-
if (!selector || selector[selector.length - 1] === ':') {
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
module.exports = exports.default;
|
package/dist/plugin.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = plugin;
|
|
7
|
-
|
|
8
|
-
function plugin(targets, nodeTypes, detect) {
|
|
9
|
-
class Plugin {
|
|
10
|
-
constructor(result) {
|
|
11
|
-
this.nodes = [];
|
|
12
|
-
this.result = result;
|
|
13
|
-
this.targets = targets;
|
|
14
|
-
this.nodeTypes = nodeTypes;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
push(node, metadata) {
|
|
18
|
-
node._stylehacks = Object.assign({}, metadata, {
|
|
19
|
-
message: `Bad ${metadata.identifier}: ${metadata.hack}`,
|
|
20
|
-
browsers: this.targets
|
|
21
|
-
});
|
|
22
|
-
this.nodes.push(node);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
any(node) {
|
|
26
|
-
if (~this.nodeTypes.indexOf(node.type)) {
|
|
27
|
-
detect.apply(this, arguments);
|
|
28
|
-
return !!node._stylehacks;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
detectAndResolve(...args) {
|
|
35
|
-
this.nodes = [];
|
|
36
|
-
detect.apply(this, args);
|
|
37
|
-
return this.resolve();
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
detectAndWarn(...args) {
|
|
41
|
-
this.nodes = [];
|
|
42
|
-
detect.apply(this, args);
|
|
43
|
-
return this.warn();
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
resolve() {
|
|
47
|
-
return this.nodes.forEach(node => node.remove());
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
warn() {
|
|
51
|
-
return this.nodes.forEach(node => {
|
|
52
|
-
const {
|
|
53
|
-
message,
|
|
54
|
-
browsers,
|
|
55
|
-
identifier,
|
|
56
|
-
hack
|
|
57
|
-
} = node._stylehacks;
|
|
58
|
-
return node.warn(this.result, message, {
|
|
59
|
-
browsers,
|
|
60
|
-
identifier,
|
|
61
|
-
hack
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
return Plugin;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
module.exports = exports.default;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _postcssSelectorParser = _interopRequireDefault(require("postcss-selector-parser"));
|
|
9
|
-
|
|
10
|
-
var _exists = _interopRequireDefault(require("../exists"));
|
|
11
|
-
|
|
12
|
-
var _isMixin = _interopRequireDefault(require("../isMixin"));
|
|
13
|
-
|
|
14
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
15
|
-
|
|
16
|
-
var _browsers = require("../dictionary/browsers");
|
|
17
|
-
|
|
18
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
19
|
-
|
|
20
|
-
var _postcss = require("../dictionary/postcss");
|
|
21
|
-
|
|
22
|
-
var _tags = require("../dictionary/tags");
|
|
23
|
-
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
|
-
function analyse(ctx, rule) {
|
|
27
|
-
return selectors => {
|
|
28
|
-
selectors.each(selector => {
|
|
29
|
-
if ((0, _exists.default)(selector, 0, _tags.BODY) && (0, _exists.default)(selector, 1, ':empty') && (0, _exists.default)(selector, 2, ' ') && selector.at(3)) {
|
|
30
|
-
ctx.push(rule, {
|
|
31
|
-
identifier: _identifiers.SELECTOR,
|
|
32
|
-
hack: selector.toString()
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
var _default = (0, _plugin.default)([_browsers.FF_2], [_postcss.RULE], function (rule) {
|
|
40
|
-
if ((0, _isMixin.default)(rule)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
(0, _postcssSelectorParser.default)(analyse(this, rule)).processSync(rule.selector);
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
exports.default = _default;
|
|
48
|
-
module.exports = exports.default;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _postcssSelectorParser = _interopRequireDefault(require("postcss-selector-parser"));
|
|
9
|
-
|
|
10
|
-
var _exists = _interopRequireDefault(require("../exists"));
|
|
11
|
-
|
|
12
|
-
var _isMixin = _interopRequireDefault(require("../isMixin"));
|
|
13
|
-
|
|
14
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
15
|
-
|
|
16
|
-
var _browsers = require("../dictionary/browsers");
|
|
17
|
-
|
|
18
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
19
|
-
|
|
20
|
-
var _postcss = require("../dictionary/postcss");
|
|
21
|
-
|
|
22
|
-
var _tags = require("../dictionary/tags");
|
|
23
|
-
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
|
-
function analyse(ctx, rule) {
|
|
27
|
-
return selectors => {
|
|
28
|
-
selectors.each(selector => {
|
|
29
|
-
if ((0, _exists.default)(selector, 0, _tags.HTML) && ((0, _exists.default)(selector, 1, '>') || (0, _exists.default)(selector, 1, '~')) && selector.at(2) && selector.at(2).type === 'comment' && (0, _exists.default)(selector, 3, ' ') && (0, _exists.default)(selector, 4, _tags.BODY) && (0, _exists.default)(selector, 5, ' ') && selector.at(6)) {
|
|
30
|
-
ctx.push(rule, {
|
|
31
|
-
identifier: _identifiers.SELECTOR,
|
|
32
|
-
hack: selector.toString()
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
var _default = (0, _plugin.default)([_browsers.IE_5_5, _browsers.IE_6, _browsers.IE_7], [_postcss.RULE], function (rule) {
|
|
40
|
-
if ((0, _isMixin.default)(rule)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
if (rule.raws.selector && rule.raws.selector.raw) {
|
|
45
|
-
(0, _postcssSelectorParser.default)(analyse(this, rule)).processSync(rule.raws.selector.raw);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
exports.default = _default;
|
|
50
|
-
module.exports = exports.default;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _postcssSelectorParser = _interopRequireDefault(require("postcss-selector-parser"));
|
|
9
|
-
|
|
10
|
-
var _exists = _interopRequireDefault(require("../exists"));
|
|
11
|
-
|
|
12
|
-
var _isMixin = _interopRequireDefault(require("../isMixin"));
|
|
13
|
-
|
|
14
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
15
|
-
|
|
16
|
-
var _browsers = require("../dictionary/browsers");
|
|
17
|
-
|
|
18
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
19
|
-
|
|
20
|
-
var _postcss = require("../dictionary/postcss");
|
|
21
|
-
|
|
22
|
-
var _tags = require("../dictionary/tags");
|
|
23
|
-
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
|
-
function analyse(ctx, rule) {
|
|
27
|
-
return selectors => {
|
|
28
|
-
selectors.each(selector => {
|
|
29
|
-
if ((0, _exists.default)(selector, 0, _tags.HTML) && (0, _exists.default)(selector, 1, ':first-child') && (0, _exists.default)(selector, 2, ' ') && selector.at(3)) {
|
|
30
|
-
ctx.push(rule, {
|
|
31
|
-
identifier: _identifiers.SELECTOR,
|
|
32
|
-
hack: selector.toString()
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
var _default = (0, _plugin.default)([_browsers.OP_9], [_postcss.RULE], function (rule) {
|
|
40
|
-
if ((0, _isMixin.default)(rule)) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
(0, _postcssSelectorParser.default)(analyse(this, rule)).processSync(rule.selector);
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
exports.default = _default;
|
|
48
|
-
module.exports = exports.default;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
9
|
-
|
|
10
|
-
var _browsers = require("../dictionary/browsers");
|
|
11
|
-
|
|
12
|
-
var _postcss = require("../dictionary/postcss");
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
var _default = (0, _plugin.default)([_browsers.IE_5_5, _browsers.IE_6, _browsers.IE_7], [_postcss.DECL], function (decl) {
|
|
17
|
-
const match = decl.value.match(/!\w/);
|
|
18
|
-
|
|
19
|
-
if (match) {
|
|
20
|
-
const hack = decl.value.substr(match.index, decl.value.length - 1);
|
|
21
|
-
this.push(decl, {
|
|
22
|
-
identifier: '!important',
|
|
23
|
-
hack
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
exports.default = _default;
|
|
29
|
-
module.exports = exports.default;
|
package/dist/plugins/index.js
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _bodyEmpty = _interopRequireDefault(require("./bodyEmpty"));
|
|
9
|
-
|
|
10
|
-
var _htmlCombinatorCommentBody = _interopRequireDefault(require("./htmlCombinatorCommentBody"));
|
|
11
|
-
|
|
12
|
-
var _htmlFirstChild = _interopRequireDefault(require("./htmlFirstChild"));
|
|
13
|
-
|
|
14
|
-
var _important = _interopRequireDefault(require("./important"));
|
|
15
|
-
|
|
16
|
-
var _leadingStar = _interopRequireDefault(require("./leadingStar"));
|
|
17
|
-
|
|
18
|
-
var _leadingUnderscore = _interopRequireDefault(require("./leadingUnderscore"));
|
|
19
|
-
|
|
20
|
-
var _mediaSlash = _interopRequireDefault(require("./mediaSlash0"));
|
|
21
|
-
|
|
22
|
-
var _mediaSlash0Slash = _interopRequireDefault(require("./mediaSlash0Slash9"));
|
|
23
|
-
|
|
24
|
-
var _mediaSlash2 = _interopRequireDefault(require("./mediaSlash9"));
|
|
25
|
-
|
|
26
|
-
var _slash = _interopRequireDefault(require("./slash9"));
|
|
27
|
-
|
|
28
|
-
var _starHtml = _interopRequireDefault(require("./starHtml"));
|
|
29
|
-
|
|
30
|
-
var _trailingSlashComma = _interopRequireDefault(require("./trailingSlashComma"));
|
|
31
|
-
|
|
32
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
-
|
|
34
|
-
var _default = [_bodyEmpty.default, _htmlCombinatorCommentBody.default, _htmlFirstChild.default, _important.default, _leadingStar.default, _leadingUnderscore.default, _mediaSlash.default, _mediaSlash0Slash.default, _mediaSlash2.default, _slash.default, _starHtml.default, _trailingSlashComma.default];
|
|
35
|
-
exports.default = _default;
|
|
36
|
-
module.exports = exports.default;
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
9
|
-
|
|
10
|
-
var _browsers = require("../dictionary/browsers");
|
|
11
|
-
|
|
12
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
13
|
-
|
|
14
|
-
var _postcss = require("../dictionary/postcss");
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
const hacks = '!_$_&_*_)_=_%_+_,_._/_`_]_#_~_?_:_|'.split('_');
|
|
19
|
-
|
|
20
|
-
var _default = (0, _plugin.default)([_browsers.IE_5_5, _browsers.IE_6, _browsers.IE_7], [_postcss.ATRULE, _postcss.DECL], function (node) {
|
|
21
|
-
if (node.type === _postcss.DECL) {
|
|
22
|
-
// some values are not picked up by before, so ensure they are
|
|
23
|
-
// at the beginning of the value
|
|
24
|
-
hacks.some(hack => {
|
|
25
|
-
if (!node.prop.indexOf(hack)) {
|
|
26
|
-
this.push(node, {
|
|
27
|
-
identifier: _identifiers.PROPERTY,
|
|
28
|
-
hack: node.prop
|
|
29
|
-
});
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
let {
|
|
34
|
-
before
|
|
35
|
-
} = node.raws;
|
|
36
|
-
|
|
37
|
-
if (!before) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
hacks.some(hack => {
|
|
42
|
-
if (~before.indexOf(hack)) {
|
|
43
|
-
this.push(node, {
|
|
44
|
-
identifier: _identifiers.PROPERTY,
|
|
45
|
-
hack: `${before.trim()}${node.prop}`
|
|
46
|
-
});
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
} else {
|
|
51
|
-
// test for the @property: value; hack
|
|
52
|
-
let {
|
|
53
|
-
name
|
|
54
|
-
} = node;
|
|
55
|
-
let len = name.length - 1;
|
|
56
|
-
|
|
57
|
-
if (name.lastIndexOf(':') === len) {
|
|
58
|
-
this.push(node, {
|
|
59
|
-
identifier: _identifiers.PROPERTY,
|
|
60
|
-
hack: `@${name.substr(0, len)}`
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
exports.default = _default;
|
|
67
|
-
module.exports = exports.default;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
9
|
-
|
|
10
|
-
var _browsers = require("../dictionary/browsers");
|
|
11
|
-
|
|
12
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
13
|
-
|
|
14
|
-
var _postcss = require("../dictionary/postcss");
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
function vendorPrefix(prop) {
|
|
19
|
-
let match = prop.match(/^(-\w+-)/);
|
|
20
|
-
|
|
21
|
-
if (match) {
|
|
22
|
-
return match[0];
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
return '';
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
var _default = (0, _plugin.default)([_browsers.IE_6], [_postcss.DECL], function (decl) {
|
|
29
|
-
const {
|
|
30
|
-
before
|
|
31
|
-
} = decl.raws;
|
|
32
|
-
|
|
33
|
-
if (before && ~before.indexOf('_')) {
|
|
34
|
-
this.push(decl, {
|
|
35
|
-
identifier: _identifiers.PROPERTY,
|
|
36
|
-
hack: `${before.trim()}${decl.prop}`
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
if (decl.prop[0] === '-' && decl.prop[1] !== '-' && vendorPrefix(decl.prop) === '') {
|
|
41
|
-
this.push(decl, {
|
|
42
|
-
identifier: _identifiers.PROPERTY,
|
|
43
|
-
hack: decl.prop
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
exports.default = _default;
|
|
49
|
-
module.exports = exports.default;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _plugin = _interopRequireDefault(require("../plugin"));
|
|
9
|
-
|
|
10
|
-
var _browsers = require("../dictionary/browsers");
|
|
11
|
-
|
|
12
|
-
var _identifiers = require("../dictionary/identifiers");
|
|
13
|
-
|
|
14
|
-
var _postcss = require("../dictionary/postcss");
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
var _default = (0, _plugin.default)([_browsers.IE_8], [_postcss.ATRULE], function (rule) {
|
|
19
|
-
const params = rule.params.trim();
|
|
20
|
-
|
|
21
|
-
if (params.toLowerCase() === '\\0screen') {
|
|
22
|
-
this.push(rule, {
|
|
23
|
-
identifier: _identifiers.MEDIA_QUERY,
|
|
24
|
-
hack: params
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
exports.default = _default;
|
|
30
|
-
module.exports = exports.default;
|