@rails/webpacker
Version:
Use Webpack to manage app-like JavaScript modules in Rails
22 lines (18 loc) • 708 B
JavaScript
const config = require('./config')
const { resolve } = require('path')
function removeOuterSlashes(string) {
return string.replace(/^\/*/, '').replace(/\/*$/, '')
}
function formatPublicPath(host = '', path = '') {
let formattedHost = removeOuterSlashes(host)
if (formattedHost && !/^http/i.test(formattedHost)) {
formattedHost = `//${formattedHost}`
}
const formattedPath = removeOuterSlashes(path)
return `${formattedHost}/${formattedPath}/`
}
module.exports = {
path: resolve('public', config.public_output_path),
publicPath: `/${config.public_output_path}/`.replace(/([^:]\/)\/+/g, '$1'),
publicPathWithHost: formatPublicPath(process.env.ASSET_HOST, config.public_output_path)
}