mirror of
https://github.com/idanoo/GoScrobble
synced 2025-07-01 13:42:20 +00:00
0.2.0 - Mid migration
This commit is contained in:
parent
139e6a915e
commit
7e38fdbd7d
42393 changed files with 5358157 additions and 62 deletions
22
web/node_modules/postcss-discard-comments/LICENSE-MIT
generated
vendored
Normal file
22
web/node_modules/postcss-discard-comments/LICENSE-MIT
generated
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
Copyright (c) Ben Briggs <beneb.info@gmail.com> (http://beneb.info)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person
|
||||
obtaining a copy of this software and associated documentation
|
||||
files (the "Software"), to deal in the Software without
|
||||
restriction, including without limitation the rights to use,
|
||||
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following
|
||||
conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
114
web/node_modules/postcss-discard-comments/README.md
generated
vendored
Normal file
114
web/node_modules/postcss-discard-comments/README.md
generated
vendored
Normal file
|
@ -0,0 +1,114 @@
|
|||
# [postcss][postcss]-discard-comments
|
||||
|
||||
> Discard comments in your CSS files with PostCSS.
|
||||
|
||||
|
||||
## Install
|
||||
|
||||
With [npm](https://npmjs.org/package/postcss-discard-comments) do:
|
||||
|
||||
```
|
||||
npm install postcss-discard-comments --save
|
||||
```
|
||||
|
||||
|
||||
## Example
|
||||
|
||||
### Input
|
||||
|
||||
```css
|
||||
h1/* heading */{
|
||||
margin: 0 auto
|
||||
}
|
||||
```
|
||||
|
||||
### Output
|
||||
|
||||
```css
|
||||
h1 {
|
||||
margin: 0 auto
|
||||
}
|
||||
```
|
||||
|
||||
This module discards comments from your CSS files; by default, it will remove
|
||||
all regular comments (`/* comment */`) and preserve comments marked as important
|
||||
(`/*! important */`).
|
||||
|
||||
Note that this module does not handle source map comments because they are not
|
||||
available to it; PostCSS handles this internally, so if they are removed then
|
||||
you will have to [configure source maps in PostCSS][maps].
|
||||
|
||||
[maps]: https://github.com/postcss/postcss/blob/master/docs/source-maps.md
|
||||
|
||||
|
||||
## API
|
||||
|
||||
### comments([options])
|
||||
|
||||
#### options
|
||||
|
||||
##### remove(function)
|
||||
|
||||
Type: `function`
|
||||
Return: `boolean`
|
||||
Variable: `comment` contains a comment without `/**/`
|
||||
|
||||
For each comment, return true to remove, or false to keep the comment.
|
||||
|
||||
```js
|
||||
function(comment) {}
|
||||
```
|
||||
|
||||
```js
|
||||
var css = '/* headings *//*@ h1 */h1{margin:0 auto}/*@ h2 */h2{color:red}';
|
||||
console.log(postcss(comments({
|
||||
remove: function(comment) { return comment[0] == "@"; }
|
||||
})).process(css).css);
|
||||
//=> /* headings */h1{margin:0 auto}h2{color:red}
|
||||
```
|
||||
**NOTE:** If you use the `remove` function other options will not be available.
|
||||
|
||||
##### removeAll
|
||||
|
||||
Type: `boolean`
|
||||
Default: `false`
|
||||
|
||||
Remove all comments marked as important.
|
||||
|
||||
```js
|
||||
var css = '/*! heading */h1{margin:0 auto}/*! heading 2 */h2{color:red}';
|
||||
console.log(postcss(comments({removeAll: true})).process(css).css);
|
||||
//=> h1{margin:0 auto}h2{color:red}
|
||||
```
|
||||
|
||||
##### removeAllButFirst
|
||||
|
||||
Type: `boolean`
|
||||
Default: `false`
|
||||
|
||||
Remove all comments marked as important, but the first one.
|
||||
|
||||
```js
|
||||
var css = '/*! heading */h1{margin:0 auto}/*! heading 2 */h2{color:red}';
|
||||
console.log(postcss(comments({removeAllButFirst: true})).process(css).css);
|
||||
//=> /*! heading */h1{margin:0 auto}h2{color:red}
|
||||
```
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
See the [PostCSS documentation](https://github.com/postcss/postcss#usage) for
|
||||
examples for your environment.
|
||||
|
||||
|
||||
## Contributors
|
||||
|
||||
See [CONTRIBUTORS.md](https://github.com/cssnano/cssnano/blob/master/CONTRIBUTORS.md).
|
||||
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Ben Briggs](http://beneb.info)
|
||||
|
||||
|
||||
[postcss]: https://github.com/postcss/postcss
|
124
web/node_modules/postcss-discard-comments/dist/index.js
generated
vendored
Normal file
124
web/node_modules/postcss-discard-comments/dist/index.js
generated
vendored
Normal file
|
@ -0,0 +1,124 @@
|
|||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
|
||||
var _postcss = require("postcss");
|
||||
|
||||
var _commentRemover = require("./lib/commentRemover");
|
||||
|
||||
var _commentRemover2 = _interopRequireDefault(_commentRemover);
|
||||
|
||||
var _commentParser = require("./lib/commentParser");
|
||||
|
||||
var _commentParser2 = _interopRequireDefault(_commentParser);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
const { space } = _postcss.list;
|
||||
|
||||
exports.default = (0, _postcss.plugin)("postcss-discard-comments", (opts = {}) => {
|
||||
const remover = new _commentRemover2.default(opts);
|
||||
const matcherCache = {};
|
||||
const replacerCache = {};
|
||||
|
||||
function matchesComments(source) {
|
||||
if (matcherCache[source]) {
|
||||
return matcherCache[source];
|
||||
}
|
||||
|
||||
const result = (0, _commentParser2.default)(source).filter(([type]) => type);
|
||||
|
||||
matcherCache[source] = result;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
function replaceComments(source, separator = " ") {
|
||||
const key = source + "@|@" + separator;
|
||||
|
||||
if (replacerCache[key]) {
|
||||
return replacerCache[key];
|
||||
}
|
||||
|
||||
const parsed = (0, _commentParser2.default)(source).reduce((value, [type, start, end]) => {
|
||||
const contents = source.slice(start, end);
|
||||
|
||||
if (!type) {
|
||||
return value + contents;
|
||||
}
|
||||
|
||||
if (remover.canRemove(contents)) {
|
||||
return value + separator;
|
||||
}
|
||||
|
||||
return `${value}/*${contents}*/`;
|
||||
}, "");
|
||||
|
||||
const result = space(parsed).join(" ");
|
||||
|
||||
replacerCache[key] = result;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
return css => {
|
||||
css.walk(node => {
|
||||
if (node.type === "comment" && remover.canRemove(node.text)) {
|
||||
node.remove();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (node.raws.between) {
|
||||
node.raws.between = replaceComments(node.raws.between);
|
||||
}
|
||||
|
||||
if (node.type === "decl") {
|
||||
if (node.raws.value && node.raws.value.raw) {
|
||||
if (node.raws.value.value === node.value) {
|
||||
node.value = replaceComments(node.raws.value.raw);
|
||||
} else {
|
||||
node.value = replaceComments(node.value);
|
||||
}
|
||||
|
||||
node.raws.value = null;
|
||||
}
|
||||
|
||||
if (node.raws.important) {
|
||||
node.raws.important = replaceComments(node.raws.important);
|
||||
|
||||
const b = matchesComments(node.raws.important);
|
||||
|
||||
node.raws.important = b.length ? node.raws.important : "!important";
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (node.type === "rule" && node.raws.selector && node.raws.selector.raw) {
|
||||
node.raws.selector.raw = replaceComments(node.raws.selector.raw, "");
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (node.type === "atrule") {
|
||||
if (node.raws.afterName) {
|
||||
const commentsReplaced = replaceComments(node.raws.afterName);
|
||||
|
||||
if (!commentsReplaced.length) {
|
||||
node.raws.afterName = commentsReplaced + " ";
|
||||
} else {
|
||||
node.raws.afterName = " " + commentsReplaced + " ";
|
||||
}
|
||||
}
|
||||
|
||||
if (node.raws.params && node.raws.params.raw) {
|
||||
node.raws.params.raw = replaceComments(node.raws.params.raw);
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
});
|
||||
module.exports = exports["default"];
|
31
web/node_modules/postcss-discard-comments/dist/lib/commentParser.js
generated
vendored
Normal file
31
web/node_modules/postcss-discard-comments/dist/lib/commentParser.js
generated
vendored
Normal file
|
@ -0,0 +1,31 @@
|
|||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = commentParser;
|
||||
function commentParser(input) {
|
||||
const tokens = [];
|
||||
const length = input.length;
|
||||
let pos = 0;
|
||||
let next;
|
||||
|
||||
while (pos < length) {
|
||||
next = input.indexOf('/*', pos);
|
||||
|
||||
if (~next) {
|
||||
tokens.push([0, pos, next]);
|
||||
pos = next;
|
||||
|
||||
next = input.indexOf('*/', pos + 2);
|
||||
tokens.push([1, pos + 2, next]);
|
||||
pos = next + 2;
|
||||
} else {
|
||||
tokens.push([0, pos, length]);
|
||||
pos = length;
|
||||
}
|
||||
}
|
||||
|
||||
return tokens;
|
||||
};
|
||||
module.exports = exports['default'];
|
32
web/node_modules/postcss-discard-comments/dist/lib/commentRemover.js
generated
vendored
Normal file
32
web/node_modules/postcss-discard-comments/dist/lib/commentRemover.js
generated
vendored
Normal file
|
@ -0,0 +1,32 @@
|
|||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
function CommentRemover(options) {
|
||||
this.options = options;
|
||||
}
|
||||
|
||||
CommentRemover.prototype.canRemove = function (comment) {
|
||||
const remove = this.options.remove;
|
||||
|
||||
if (remove) {
|
||||
return remove(comment);
|
||||
} else {
|
||||
const isImportant = comment.indexOf('!') === 0;
|
||||
|
||||
if (!isImportant) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (this.options.removeAll || this._hasFirst) {
|
||||
return true;
|
||||
} else if (this.options.removeAllButFirst && !this._hasFirst) {
|
||||
this._hasFirst = true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
exports.default = CommentRemover;
|
||||
module.exports = exports['default'];
|
42
web/node_modules/postcss-discard-comments/package.json
generated
vendored
Normal file
42
web/node_modules/postcss-discard-comments/package.json
generated
vendored
Normal file
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
"name": "postcss-discard-comments",
|
||||
"version": "4.0.2",
|
||||
"description": "Discard comments in your CSS files with PostCSS.",
|
||||
"main": "dist/index.js",
|
||||
"files": [
|
||||
"dist",
|
||||
"LICENSE-MIT"
|
||||
],
|
||||
"scripts": {
|
||||
"prepublish": "cross-env BABEL_ENV=publish babel src --out-dir dist --ignore /__tests__/"
|
||||
},
|
||||
"keywords": [
|
||||
"css",
|
||||
"comments",
|
||||
"postcss",
|
||||
"postcss-plugin"
|
||||
],
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"babel-cli": "^6.0.0",
|
||||
"cross-env": "^5.0.0",
|
||||
"postcss-scss": "^2.0.0",
|
||||
"postcss-simple-vars": "^5.0.1"
|
||||
},
|
||||
"homepage": "https://github.com/cssnano/cssnano",
|
||||
"author": {
|
||||
"name": "Ben Briggs",
|
||||
"email": "beneb.info@gmail.com",
|
||||
"url": "http://beneb.info"
|
||||
},
|
||||
"repository": "cssnano/cssnano",
|
||||
"dependencies": {
|
||||
"postcss": "^7.0.0"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/cssnano/cssnano/issues"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6.9.0"
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue