UNPKG

babel-preset-jaid

Version:

These are my personal Babel presets. They aim for minimizing boilerplate for projects that need Babel.

7 lines 11.1 kB
/*! *** babel-preset-jaid 6.9.2 *** Copyright © 2019, Jaid <jaid.jsx@gmail.com> (https://github.com/Jaid) *** @license MIT *** See https://github.com/Jaid/babel-preset-jaid !*/ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(global,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=44)}([function(e,t,n){var r=n(8),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();e.exports=i},function(e,t,n){var r=n(23),o=n(28);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},function(e,t,n){var r=n(7),o=n(24),i=n(25),c=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":c&&c in Object(e)?o(e):i(e)}},function(e,t){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},function(e,t){e.exports=function(e){return null!=e&&"object"==typeof e}},function(e,t){var n=Object.prototype;e.exports=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||n)}},function(e,t,n){var r=n(2),o=n(3);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},function(e,t,n){var r=n(0).Symbol;e.exports=r},function(e,t){var n="object"==typeof global&&global&&global.Object===Object&&global;e.exports=n},function(e,t){var n=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return n.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},function(e,t){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&9007199254740991>=e}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(18),o=n(21),i=n(33),c=n(35),p=n(36),u=n(37),s=n(5),a=n(39),l=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(p(e)&&(c(e)||"string"==typeof e||"function"==typeof e.splice||u(e)||a(e)||i(e)))return!e.length;var t=o(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(s(e))return!r(e).length;for(var n in e)if(l.call(e,n))return!1;return!0}},function(e,t){e.exports=require("path")},function(e,t){e.exports=require("fs")},function(e,t){e.exports=require("prevent-start")},function(e,t){e.exports=require("load-jest-config")},function(e,t){e.exports=require("read-pkg-up")},function(e,t,n){var r=n(5),o=n(19),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=[];for(var n in Object(e))i.call(e,n)&&"constructor"!=n&&t.push(n);return t}},function(e,t,n){var r=n(20)(Object.keys,Object);e.exports=r},function(e,t){e.exports=function(e,t){return function(n){return e(t(n))}}},function(e,t,n){var r=n(22),o=n(29),i=n(30),c=n(31),p=n(32),u=n(2),s=n(9),a=s(r),l=s(o),f=s(i),b=s(c),g=s(p),d=u;(r&&"[object DataView]"!=d(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=d(new o)||i&&"[object Promise]"!=d(i.resolve())||c&&"[object Set]"!=d(new c)||p&&"[object WeakMap]"!=d(new p))&&(d=function(e){var t=u(e),n="[object Object]"==t?e.constructor:void 0,r=n?s(n):"";if(r)switch(r){case a:return"[object DataView]";case l:return"[object Map]";case f:return"[object Promise]";case b:return"[object Set]";case g:return"[object WeakMap]"}return t}),e.exports=d},function(e,t,n){var r=n(1)(n(0),"DataView");e.exports=r},function(e,t,n){var r=n(6),o=n(26),i=n(3),c=n(9),p=Function.prototype,u=Object.prototype,s=p.toString,a=u.hasOwnProperty,l=RegExp("^"+s.call(a).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||o(e))&&(r(e)?l:/^\[object .+?Constructor\]$/).test(c(e))}},function(e,t,n){var r=n(7),o=Object.prototype,i=o.hasOwnProperty,c=o.toString,p=r?r.toStringTag:void 0;e.exports=function(e){var t=i.call(e,p),n=e[p];try{e[p]=void 0;var r=!0}catch(e){}var o=c.call(e);return r&&(t?e[p]=n:delete e[p]),o}},function(e,t){var n=Object.prototype.toString;e.exports=function(e){return n.call(e)}},function(e,t,n){var r,o=n(27),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";e.exports=function(e){return!!i&&i in e}},function(e,t,n){var r=n(0)["__core-js_shared__"];e.exports=r},function(e,t){e.exports=function(e,t){return null==e?void 0:e[t]}},function(e,t,n){var r=n(1)(n(0),"Map");e.exports=r},function(e,t,n){var r=n(1)(n(0),"Promise");e.exports=r},function(e,t,n){var r=n(1)(n(0),"Set");e.exports=r},function(e,t,n){var r=n(1)(n(0),"WeakMap");e.exports=r},function(e,t,n){var r=n(34),o=n(4),i=Object.prototype,c=i.hasOwnProperty,p=i.propertyIsEnumerable,u=r(function(){return arguments}())?r:function(e){return o(e)&&c.call(e,"callee")&&!p.call(e,"callee")};e.exports=u},function(e,t,n){var r=n(2),o=n(4);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},function(e,t){var n=Array.isArray;e.exports=n},function(e,t,n){var r=n(6),o=n(10);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},function(e,t,n){(function(e){var r=n(0),o=n(38),i=t&&!t.nodeType&&t,c=i&&"object"==typeof e&&e&&!e.nodeType&&e,p=c&&c.exports===i?r.Buffer:void 0,u=(p?p.isBuffer:void 0)||o;e.exports=u}).call(this,n(11)(e))},function(e,t){e.exports=function(){return!1}},function(e,t,n){var r=n(40),o=n(41),i=n(42),c=i&&i.isTypedArray,p=c?o(c):r;e.exports=p},function(e,t,n){var r=n(2),o=n(10),i=n(4),c={};c["[object Float32Array]"]=c["[object Float64Array]"]=c["[object Int8Array]"]=c["[object Int16Array]"]=c["[object Int32Array]"]=c["[object Uint8Array]"]=c["[object Uint8ClampedArray]"]=c["[object Uint16Array]"]=c["[object Uint32Array]"]=!0,c["[object Arguments]"]=c["[object Array]"]=c["[object ArrayBuffer]"]=c["[object Boolean]"]=c["[object DataView]"]=c["[object Date]"]=c["[object Error]"]=c["[object Function]"]=c["[object Map]"]=c["[object Number]"]=c["[object Object]"]=c["[object RegExp]"]=c["[object Set]"]=c["[object String]"]=c["[object WeakMap]"]=!1,e.exports=function(e){return i(e)&&o(e.length)&&!!c[r(e)]}},function(e,t){e.exports=function(e){return function(t){return e(t)}}},function(e,t,n){(function(e){var r=n(8),o=t&&!t.nodeType&&t,i=o&&"object"==typeof e&&e&&!e.nodeType&&e,c=i&&i.exports===o&&r.process,p=function(){try{return i&&i.require&&i.require("util").types||c&&c.binding&&c.binding("util")}catch(e){}}();e.exports=p}).call(this,n(11)(e))},function(e,t){e.exports=require("debug")},function(e,t,n){n.r(t);var r=n(3),o=n.n(r),i=n(12),c=n.n(i),p=n(13),u=n.n(p),s=n(14),a=n.n(s),l=n(15),f=n.n(l),b=n(16),g=n.n(b),d=n(17);class v{constructor(e,t=process.cwd()){this.config={presets:[],plugins:[]},this.babelApi=e,this.cwd=t;const n=Object(d.sync)(t);(null==n?void 0:n.pkg)&&(this.pkg=n.pkg,this.pkgPath=n.path,this.pkgDependencies=Object.keys({...this.pkg.dependencies,...this.pkg.peerDependencies,...this.pkg.optionalDependencies,...this.pkg.devDependencies}))}plugin(e,t){this.config.plugins.push(t?[e,t]:e)}pluginForEnv(e,...t){this.babelApi.env(e)&&this.plugin(...t)}pluginForEnvsBut(e,...t){this.babelApi.env(e)||this.plugin(...t)}pluginForDependency(e,...t){var n;(null===(n=this.pkgDependencies)||null==n?void 0:n.includes(e))&&this.plugin(...t)}preset(e,t){this.config.presets.push(t?[e,t]:e)}presetForEnv(e,...t){this.babelApi.env(e)&&this.preset(...t)}presetForEnvsBut(e,...t){this.babelApi.env(e)||this.preset(...t)}presetForDependency(e,...t){var n;(null===(n=this.pkgDependencies)||null==n?void 0:n.includes(e))&&this.preset(...t)}}const y=n(43)("babel-preset-jaid");t.default=(e,t)=>{t={react:!1,minify:!0,runtime:!0,envOptions:null,flow:!1,typescript:!1,aotLoader:!0,...t},e.assertVersion("^7.2");const n=new v(e),r=[e.version,e.env(),JSON.stringify(t),"6.9.2"];if(n.pkg){const e=a.a.statSync(n.pkgPath);r.push(n.pkgPath),r.push(+e.mtime),y(`Loaded ${n.pkgPath}`)}else r.push(0),r.push(0);const i=r.join("|");y(`Cache identifier: ${i}`),e.cache.using(()=>i);const p={},{jestConfigPath:s,jestConfig:l}=g()({cwd:n.cwd});if(null==l?void 0:l.moduleNameMapper){y("Found Jest config in %s",s);for(const[e,t]of Object.entries(l.moduleNameMapper))if(/^\^\w/i.test(e)){const r=f()(e,"^"),o=u.a.resolve(t.replace("<rootDir>",n.cwd));p[r]=o,y("Registered alias: %s -> %s",r,o)}else y("Skipping alias: %s -> %s",e,t)}if(n.plugin("macros"),n.plugin("@babel/plugin-proposal-decorators",{legacy:!0}),t.aotLoader&&n.plugin("aot-loader/babel"),n.plugin("@babel/plugin-proposal-class-properties"),n.plugin("@babel/plugin-proposal-do-expressions"),n.plugin("@babel/plugin-proposal-pipeline-operator",{proposal:"smart"}),n.plugin("@babel/plugin-proposal-optional-chaining"),n.plugin("@babel/plugin-syntax-dynamic-import"),n.plugin("@babel/plugin-proposal-export-default-from"),n.pluginForEnvsBut("production","captains-log"),t.typescript&&(n.preset("@babel/preset-typescript"),!t.minify&&(n.config.retainLines=!0)),t.flow&&(n.preset("@babel/preset-flow"),n.config.retainLines=!0),t.react&&(n.preset("@babel/preset-react",{development:!e.env("production")}),n.pluginForEnv("production","transform-react-class-to-function"),n.pluginForEnv("production","transform-react-remove-prop-types"),n.pluginForEnv("production","@babel/plugin-transform-react-inline-elements")),t.runtime&&n.plugin("@babel/plugin-transform-runtime"),"react-dom"===t.react&&n.pluginForEnv("development","react-hot-loader/babel"),t.minify){var b;const e={removeConsole:!0,removeDebugger:!0},r=(b=t.minify,o()(b)?{...e,...t.minify}:e);y("Using minify options: %o",r),n.presetForEnv("production","minify",r)}else y("Skipping minification");return n.pluginForEnv("production","transform-imports"),n.pluginForEnv("production","lodash"),n.pluginForEnv("production","module:faster.js"),n.pluginForEnv("production","tailcall-optimization"),c()(p)||n.plugin("module-resolver",{alias:p,cwd:n.cwd}),n.plugin("pkg",{cwd:n.cwd}),e.env("test")&&n.presetForDependency("ava","@ava/babel-preset-transform-test-files"),n.preset("@babel/preset-env",t.envOptions),y("Final config: %j",n.config),n.config}}])});