UNPKG

19.4 kBSource Map (JSON)View Raw
1{"version":3,"file":null,"sources":["../src/config/createBubleConfig.js","../src/config/createLatestConfig.js","../src/config/createReactConfig.js","../src/getTranspilers.js","../src/getBanner.js","../src/index.js"],"sourcesContent":["import buble from \"rollup-plugin-buble\"\n\nexport default function createBubleConfig() {\n return buble()\n}\n","import babel from \"rollup-plugin-babel\"\n\nconst classicPreset = [ \"latest\", {\n es2015: {\n modules: false\n }\n}]\n\nconst modernPreset = [ \"babel-preset-env\", {\n targets: {\n node: 6,\n browsers: [\n \"Safari 10\",\n \"iOS 10\",\n \"Edge 14\",\n \"Chrome 54\",\n \"ChromeAndroid 54\",\n \"Firefox 50\",\n \"FirefoxAndroid 50\"\n ]\n },\n\n modules: false,\n debug: false,\n useBuiltIns: true\n}]\n\nexport function createHelper(modern, minified, presets = [], plugins = []) {\n if (minified) {\n presets = presets.concat([\n [ \"babili\", {\n booleans: false,\n infinity: false\n }]\n ])\n }\n\n return babel({\n // Don't try to find .babelrc because we want to force this configuration.\n babelrc: false,\n\n // Allow usage of transform-runtime for referencing to a common library of polyfills\n runtimeHelpers: true,\n\n // Remove comments - these are often positioned on the wrong positon after transpiling anyway\n comments: false,\n\n // No need for preserve perfect formatting\n compact: true,\n\n // Should the output be minified (not printing last semicolons in blocks, printing literal string\n // values instead of escaped ones, stripping () from new when safe)\n minified,\n\n exclude: \"node_modules/**\",\n\n presets: [\n modern ? modernPreset : classicPreset,\n\n ...presets\n ],\n\n plugins: [\n // Cherry-picks Lodash modules so you don’t have to.\n // https://www.npmjs.com/package/babel-plugin-lodash\n \"lodash\",\n\n // Improve some ES3 edge case to make code parseable by older clients\n // e.g. when using reserved words as keys like \"catch\"\n \"transform-es3-property-literals\",\n \"transform-es3-member-expression-literals\",\n\n // Using centralized helpers but require generic Polyfills being loaded separately\n // e.g. via Babel-Runtime or via services like polyfill.io.\n // See also: https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-runtime\n [ \"transform-runtime\", {\n // default\n helpers: true,\n\n // default\n regenerator: true,\n\n // changed from default. More efficient to use real polyfills.\n polyfill: false\n }],\n\n // class { handleClick = () => { } }\n \"transform-class-properties\",\n\n // { ...todo, completed: true }\n [ \"transform-object-rest-spread\", { useBuiltIns: true }],\n\n // Eliminates unnecessary closures from your JavaScript in the name of performance\n // https://github.com/codemix/babel-plugin-closure-elimination\n \"closure-elimination\",\n\n // Strip flow type annotations from your output code.\n \"transform-flow-strip-types\",\n\n ...plugins\n ]\n })\n}\n\nexport default function createLatestConfig(minified) {\n return {\n classic: createHelper(false, minified),\n modern: createHelper(true, minified)\n }\n}\n","import { createHelper } from \"./createLatestConfig\"\n\nconst additionalPresets = [\n \"react\"\n]\n\nconst additionalPlugins = [\n // Transform JSX and prefer built-in methods\n [ \"transform-react-jsx\", { useBuiltIns: true }],\n\n // Optimization: hoist JSX that never changes out of render()\n \"transform-react-constant-elements\",\n\n // Optimization: wrap propTypes into environment checks\n \"transform-react-remove-prop-types\"\n]\n\nexport default function createReactConfig(minified) {\n return {\n classic: createHelper(false, minified, additionalPresets, additionalPlugins),\n modern: createHelper(true, minified, additionalPresets, additionalPlugins)\n }\n}\n","import createBubleConfig from \"./config/createBubleConfig\"\nimport createLatestConfig from \"./config/createLatestConfig\"\nimport createReactConfig from \"./config/createReactConfig\"\n\n// We try to benefit from native features when possible and offer\n// additional builds containing es2015 code for modern clients (Node v6, Chrome 50+, etc.)\n// For bundling you have to use a tool which is aware of the additional package entries\n// to access the additional exported library files though e.g. via 'main' fields in Webpack v2.\nexport default function getTranspilers(mode, { minified })\n{\n switch (mode)\n {\n case \"buble\":\n return createBubleConfig(minified)\n\n case \"latest\":\n return createLatestConfig(minified)\n\n case \"react\":\n return createReactConfig(minified)\n\n }\n}\n","export default function getBanner(pkg) {\n var banner = `/*! ${pkg.name} v${pkg.version}`\n\n if (pkg.author) {\n if (typeof pkg.author === \"object\") {\n banner += ` by ${pkg.author.name} <${pkg.author.email}>`\n } else if (typeof pkg.author === \"string\") {\n banner += ` by ${pkg.author.name}`\n }\n }\n\n banner += ` */`\n\n return banner\n}\n","import { resolve, relative, isAbsolute, dirname } from \"path\"\nimport { eachOfSeries } from \"async\"\nimport { camelCase } from \"lodash\"\nimport fileExists from \"file-exists\"\nimport meow from \"meow\"\nimport chalk from \"chalk\"\n\nimport { rollup } from \"rollup\"\nimport relink from \"rollup-plugin-relink\"\nimport nodeResolve from \"rollup-plugin-node-resolve\"\nimport jsonPlugin from \"rollup-plugin-json\"\nimport yamlPlugin from \"rollup-plugin-yaml\"\nimport replacePlugin from \"rollup-plugin-replace\"\n\nimport getTranspilers from \"./getTranspilers\"\nimport getBanner from \"./getBanner\"\n\nconst CWD = process.cwd()\nconst PKG = require(resolve(CWD, \"package.json\"))\n\nvar cache\n\n\n\nconst cli = meow(`\n Usage\n $ prepublish-lib\n\n Options\n --entry-node Entry file for NodeJS environment [default = auto]\n --entry-browser Entry file for Browser environment [default = auto]\n\n --output-folder Configure the output folder [default = auto]\n\n -t, --transpiler Chose the transpiler/config to use. Either \"react\", \"latest\" or \"buble\". [default = latest]\n -x, --minified Enabled minification of output files\n -m, --sourcemap Create a source map file during processing\n\n -v, --verbose Verbose output mode [default = false]\n -q, --quiet Quiet output mode [default = false]\n`, {\n default: {\n entryNode: null,\n entryBrowser: null,\n\n outputFolder: null,\n\n transpiler: \"react\",\n minified: false,\n sourcemap: true,\n\n verbose: false,\n quiet: false\n }\n})\n\n\nconst verbose = cli.flags.verbose\nconst quiet = cli.flags.quiet\n\nif (verbose) {\n console.log(cli.flags)\n}\n\n\n/* eslint-disable dot-notation */\nconst outputFileMatrix = {\n \"node-classic-commonjs\": PKG[\"main\"] || null,\n \"node-classic-esmodule\": PKG[\"module\"] || PKG[\"jsnext:main\"] || null,\n \"node-modern-commonjs\": PKG[\"main:modern\"] || null,\n \"node-modern-esmodule\": PKG[\"module:modern\"] || null,\n \"browser-classic-esmodule\": PKG[\"browser\"] || PKG[\"web\"] || PKG[\"browserify\"] || null,\n \"browser-modern-esmodule\": PKG[\"browser:modern\"] || PKG[\"web:modern\"] || PKG[\"browserify:modern\"] || null\n}\n\nconst outputFolder = cli.flags.outputFolder\nif (outputFolder) {\n outputFileMatrix[\"node-classic-commonjs\"] = `${outputFolder}/node.classic.commonjs.js`\n outputFileMatrix[\"node-classic-esmodule\"] = `${outputFolder}/node.classic.esmodule.js`\n outputFileMatrix[\"node-modern-commonjs\"] = `${outputFolder}/node.modern.commonjs.js`\n outputFileMatrix[\"node-modern-esmodule\"] = `${outputFolder}/node.modern.esmodule.js`\n outputFileMatrix[\"browser-classic-esmodule\"] = `${outputFolder}/browser.classic.esmodule.js`\n outputFileMatrix[\"browser-modern-esmodule\"] = `${outputFolder}/browser.modern.esmodule.js`\n}\n\n// Rollups support these formats: 'amd', 'cjs', 'es', 'iife', 'umd'\nconst format2Rollup = {\n commonjs: \"cjs\",\n esmodule: \"es\"\n}\n\nconst moduleId = PKG.name\nconst moduleName = camelCase(moduleId)\nconst banner = getBanner(PKG)\nconst envs = {}\nconst formats = [ \"esmodule\", \"commonjs\" ]\nconst transpilers = getTranspilers(\"react\", {\n minified: cli.flags.minified\n})\n\nif (cli.flags.entryNode) {\n envs.node = [ cli.flags.entryNode ]\n} else {\n envs.node = [ \"src/index.js\", \"module/index.js\", \"src/server/index.js\" ]\n}\n\nif (cli.flags.entryBrowser) {\n envs.browser = [ cli.flags.entryBrowser ]\n} else {\n envs.browser = [ \"src/browser/index.js\", \"src/client/index.js\", \"src/browser.js\", \"src/client.js\", \"src/web.js\" ]\n}\n\neachOfSeries(envs, (envEntries, envId, envCallback) =>\n{\n var entry = lookupBest(envEntries)\n if (entry)\n {\n if (!quiet) {\n console.log(`Using entry ${chalk.blue(entry)} for environment ${chalk.blue(envId)}`)\n }\n\n eachOfSeries(formats, (format, formatIndex, formatCallback) =>\n {\n eachOfSeries(transpilers, (currentTranspiler, transpilerId, variantCallback) =>\n {\n var destFile = outputFileMatrix[`${envId}-${transpilerId}-${format}`]\n if (destFile) {\n return bundleTo({ entry, envId, transpilerId, currentTranspiler, format, destFile, variantCallback })\n } else {\n return variantCallback(null)\n }\n }, formatCallback)\n }, envCallback)\n }\n else\n {\n envCallback(null)\n }\n})\n\nfunction lookupBest(candidates) {\n var filtered = candidates.filter(fileExists)\n return filtered[0]\n}\n\nfunction bundleTo({ entry, envId, transpilerId, currentTranspiler, format, destFile, variantCallback }) {\n if (!quiet) {\n console.log(`${chalk.green(\">>> Bundling\")} ${chalk.magenta(PKG.name)}-${chalk.magenta(PKG.version)} as ${chalk.blue(transpilerId)} defined as ${chalk.blue(format)} to ${chalk.green(destFile)}...`)\n }\n\n var prefix = \"process.env.\"\n var variables = {\n [`${prefix}NAME`]: JSON.stringify(PKG.name),\n [`${prefix}VERSION`]: JSON.stringify(PKG.version),\n [`${prefix}TARGET`]: JSON.stringify(envId)\n }\n\n var outputFolder = dirname(destFile)\n var fileRelink = relink({ outputFolder, entry, verbose })\n rollup({\n entry,\n cache,\n onwarn: (msg) => console.warn(msg),\n external(dependency)\n {\n if (dependency === entry) {\n return false\n }\n\n if (fileRelink.isExternal(dependency)) {\n return true\n }\n\n if (isAbsolute(dependency)) {\n var rel = relative(CWD, dependency)\n return Boolean(/node_modules/.exec(rel))\n }\n\n return dependency.charAt(0) !== \".\"\n },\n plugins:\n [\n nodeResolve({\n extensions: [ \".js\", \".jsx\", \".ts\", \".tsx\", \".json\" ],\n jsnext: true,\n module: true,\n main: true\n }),\n jsonPlugin,\n yamlPlugin,\n replacePlugin(variables),\n currentTranspiler,\n fileRelink\n ]\n })\n .then((bundle) =>\n bundle.write({\n format: format2Rollup[format],\n moduleId,\n moduleName,\n banner,\n sourceMap: cli.flags.sourcemap,\n dest: destFile\n })\n )\n .then(() =>\n variantCallback(null)\n )\n .catch((err) =>\n {\n console.error(err)\n variantCallback(`Error during bundling ${format}: ${err}`)\n })\n}\n"],"names":["const","resolve","camelCase","eachOfSeries","dirname","rollup","isAbsolute","relative"],"mappings":"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"}
\No newline at end of file