UNPKG

babel-preset-jolt

Version:

Default babel configuration for jolt packages.

1 lines 2.24 kB
'use strict';var _toConsumableArray2=require('babel-runtime/helpers/toConsumableArray');var _toConsumableArray3=_interopRequireDefault(_toConsumableArray2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj};}var resolveDependencies=require('./resolveDependencies');var getEnv=function getEnv(_ref){var target=_ref.target,uglify=_ref.uglify;switch(target){case'node':return[['env',{targets:{node:4,uglify}}]];case'web':return[['env',{targets:{browsers:['last 2 versions','safari >= 7'],uglify}}]];default:return[];}};var getPresets=function getPresets(_ref2){var react=_ref2.react,reactNative=_ref2.reactNative;return[react&&'react',reactNative&&'react-native'];};var getPlugins=function getPlugins(_ref3){var target=_ref3.target;switch(target){case'node':return['runtime'];default:return[];}};var sharedPlugins=['decorators-legacy',['builtin-extend',{globals:['Array','Error']}],'class-properties','export-extensions','object-rest-spread'];var getCustomPlugins=function getCustomPlugins(_ref4){var useStaticImport=_ref4.useStaticImport;return[useStaticImport&&require('./transforms/static-import')];};module.exports=function(context){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var target=options.target,_options$react=options.react,react=_options$react===undefined?false:_options$react,_options$reactNative=options.reactNative,reactNative=_options$reactNative===undefined?false:_options$reactNative,_options$uglify=options.uglify,uglify=_options$uglify===undefined?false:_options$uglify,_options$useStaticImp=options.useStaticImport,useStaticImport=_options$useStaticImp===undefined?false:_options$useStaticImp;return{comments:false,compact:true,presets:[].concat((0,_toConsumableArray3.default)(resolveDependencies('babel-preset',getEnv({target,uglify}))),(0,_toConsumableArray3.default)(resolveDependencies('babel-preset',getPresets({react,reactNative})))).filter(Boolean),plugins:[].concat((0,_toConsumableArray3.default)(resolveDependencies('babel-plugin-transform',sharedPlugins)),(0,_toConsumableArray3.default)(resolveDependencies('babel-plugin-transform',getPlugins({target}))),(0,_toConsumableArray3.default)(getCustomPlugins({useStaticImport}))).filter(Boolean)};};