Files
30-seconds-of-code/node_modules/rollup-plugin-babel-minify/dist/rollup-plugin-babel-minify.js
2019-08-20 15:52:05 +02:00

3 lines
2.0 KiB
JavaScript

/*! rollup-plugin-babel-minify v4.0.0 | (c) 2018 Comandeer | MIT license (see LICENSE) */'use strict';function _interopDefault(a){return a&&'object'==typeof a&&'default'in a?a['default']:a}var MagicString=_interopDefault(require('magic-string')),semver=_interopDefault(require('semver')),depd=_interopDefault(require('depd')),minifyPreset=_interopDefault(require('babel-preset-minify')),bannerPlugin=_interopDefault(require('@comandeer/babel-plugin-banner')),utils=require('@comandeer/babel-plugin-banner/utils'),babelCore=require('babel-core');function addNewLine(a){var b=new MagicString(a),c=a.indexOf('*/');b.appendRight(c+2,'\n');var d=b.generateMap({includeContent:!0});return{code:b.toString(),map:d}}function filterMinifyOptions(a){var b=['banner','bannerNewLine','sourceMap','comments'],c={};return Object.keys(a).filter(function(d){-1===b.indexOf(d)&&(c[d]=a[d])}),c}function isString(a){return null!=a&&'string'==typeof a}function isFn(a){return null!=a&&'function'==typeof a}function isFnOrString(a){return isString(a)||isFn(a)}function checkNodeVersion(){return semver.satisfies(process.version,'>=6.0.0')}var deprecate=depd('rollup-plugin-babel-minify');function minify(){var a,b=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{};return checkNodeVersion()||deprecate('This plugin will remove support for Node <6 in version 5.0.0.'),{name:'babel-minify',options(b){var c=b.banner;a=c},transformBundle(c,d){var e=d.banner,f=filterMinifyOptions(b),g={presets:[[minifyPreset,f]],sourceMaps:'undefined'==typeof b.sourceMap||!!b.sourceMap,comments:'undefined'==typeof b.comments||!!b.comments};if(isFnOrString(b.banner)||isFnOrString(e)||isFnOrString(a)){var h=b.banner||e||a;h=isFn(h)?h():h;var i=utils.getCommentContent(h),j=!1;g.plugins=[[bannerPlugin,{banner:h}]],g.comments||(g.shouldPrintComment=function(a){return j||a!==i?!1:(j=!0,!0)})}var k=babelCore.transform(c,g),l=k.code,m=k.map;if(b.bannerNewLine){var n=addNewLine(l);l=n.code,m=n.map}return{code:l,map:m}}}}module.exports=minify;
//# sourceMappingURL=rollup-plugin-babel-minify.js.map