IOTConnect-Web/node_modules/esniff/strip-comments.js
2024-05-09 09:49:52 +08:00

25 lines
652 B
JavaScript

"use strict";
var repeat = require("es5-ext/string/#/repeat")
, esniff = require("./");
module.exports = exports = function (code/*, options*/) {
var options = Object(arguments[1]);
var comments = esniff(code, function (emitter, accessor) {
accessor.shouldCollectComments = true;
});
if (!comments.length) return code;
var i = 0, result = [];
comments.forEach(function (commentMeta) {
result.push(code.slice(i, commentMeta.point));
if (options.preserveLocation) {
result.push(repeat.call(" ", commentMeta.endPoint - commentMeta.point));
}
i = commentMeta.endPoint;
});
result.push(code.slice(i));
return result.join("");
};