aboutsummaryrefslogtreecommitdiff
path: root/node_modules/postcss-discard-comments/dist/lib
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/postcss-discard-comments/dist/lib')
-rw-r--r--node_modules/postcss-discard-comments/dist/lib/commentParser.js41
-rw-r--r--node_modules/postcss-discard-comments/dist/lib/commentRemover.js28
2 files changed, 69 insertions, 0 deletions
diff --git a/node_modules/postcss-discard-comments/dist/lib/commentParser.js b/node_modules/postcss-discard-comments/dist/lib/commentParser.js
new file mode 100644
index 00000000..1b2e487f
--- /dev/null
+++ b/node_modules/postcss-discard-comments/dist/lib/commentParser.js
@@ -0,0 +1,41 @@
+'use strict';
+
+exports.__esModule = true;
+exports.default = commentParser;
+function commentParser(input) {
+ var tokens = [];
+ var length = input.length;
+ var pos = 0;
+ var next = undefined;
+
+ while (pos < length) {
+ next = input.indexOf('/*', pos);
+
+ if (~next) {
+ tokens.push({
+ type: 'other',
+ value: input.slice(pos, next)
+ });
+ pos = next;
+
+ next = input.indexOf('*/', pos + 2);
+ if (! ~next) {
+ throw new Error('postcss-discard-comments: Unclosed */');
+ }
+ tokens.push({
+ type: 'comment',
+ value: input.slice(pos + 2, next)
+ });
+ pos = next + 2;
+ } else {
+ tokens.push({
+ type: 'other',
+ value: input.slice(pos)
+ });
+ pos = length;
+ }
+ }
+
+ return tokens;
+};
+module.exports = exports['default']; \ No newline at end of file
diff --git a/node_modules/postcss-discard-comments/dist/lib/commentRemover.js b/node_modules/postcss-discard-comments/dist/lib/commentRemover.js
new file mode 100644
index 00000000..56019a30
--- /dev/null
+++ b/node_modules/postcss-discard-comments/dist/lib/commentRemover.js
@@ -0,0 +1,28 @@
+'use strict';
+
+exports.__esModule = true;
+function CommentRemover(options) {
+ this.options = options;
+}
+
+CommentRemover.prototype.canRemove = function (comment) {
+ var remove = this.options.remove;
+ if (remove) {
+ return remove(comment);
+ } else {
+ var isImportant = comment.indexOf('!') === 0;
+ if (!isImportant) {
+ return true;
+ } else if (isImportant) {
+ 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']; \ No newline at end of file