UNPKG

rollup-plugin-insert

Version:
54 lines 2.09 kB
import { createFilter } from 'rollup-pluginutils'; import MagicString from 'magic-string'; export var transform = function (insert, options) { if (options === void 0) { options = {}; } var filter = createFilter(options.include, options.exclude); var sourceMap = options.sourceMap !== false; return { name: 'insert', transform: function (code, id) { if (!filter(id)) return; var magicString = new MagicString(code); var output = insert(magicString, code, id); if (typeof output === 'string') { magicString.overwrite(0, code.length, output); } else if (output instanceof MagicString) { magicString = output; // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition } else if (output != null) { var received = void 0; try { received = JSON.stringify(output); } catch (_a) { /* istanbul ignore next */ received = String(output); } throw new TypeError("The output content should be an instance of string or MagicString, but received: " + received); } return { code: magicString.toString(), map: sourceMap ? magicString.generateMap() : undefined, }; }, }; }; export var append = function (append, options) { return transform(function (magicString) { return magicString.append(append); }, options); }; export var prepend = function (prepend, options) { return transform(function (magicString) { return magicString.prepend(prepend); }, options); }; export var wrap = function (begin, end, options) { return transform(function (magicString) { return magicString.prepend(begin).append(end); }, options); }; export default { transform: transform, append: append, prepend: prepend, wrap: wrap, }; //# sourceMappingURL=index.js.map