From 986e122dd99a0093fcc3d858668fadcbe6423cd4 Mon Sep 17 00:00:00 2001 From: Reinaldo Schiehll Date: Thu, 3 Jan 2019 17:31:46 -0200 Subject: [PATCH] Check for babelrc up from functions folder --- lib/build.js | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/build.js b/lib/build.js index 66ec33fd..af2d2afa 100644 --- a/lib/build.js +++ b/lib/build.js @@ -13,11 +13,27 @@ function getBabelTarget(envConfig) { return unknown ? "6.10" : current.replace(/^nodejs/, ""); } +function haveBabelrc(functionsDir) { + const cwd = process.cwd(); + + return ( + fs.existsSync(path.join(cwd, ".babelrc")) || + functionsDir.split("/").reduce((foundBabelrc, dir) => { + if (foundBabelrc) return foundBabelrc; + + const indexOf = functionsDir.indexOf(dir); + const dirToSearch = functionsDir.substr(0, indexOf); + + return fs.existsSync(path.join(cwd, dirToSearch, ".babelrc")); + }, false) + ); +} + function webpackConfig(dir, additionalConfig) { var config = conf.load(); var envConfig = config.build.environment || config.build.Environment || {}; var babelOpts = { cacheDirectory: true }; - if (!fs.existsSync(path.join(process.cwd(), ".babelrc"))) { + if (!haveBabelrc(dir)) { babelOpts.presets = [ ["@babel/preset-env", { targets: { node: getBabelTarget(envConfig) } }] ]; @@ -48,7 +64,7 @@ function webpackConfig(dir, additionalConfig) { var webpackConfig = { mode: "production", resolve: { - extensions: ['.wasm', '.mjs', '.js', '.json', '.ts'] + extensions: [".wasm", ".mjs", ".js", ".json", ".ts"] }, module: { rules: [ pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy