Merge pull request #2436 from overleaf/revert-2408-as-dynamic-public-path

Revert "Fetch dynamically fetched scripts from CDN"

GitOrigin-RevId: c443fb278b7e53890d0e83cd02307fad939f5f8c
This commit is contained in:
Hugh O'Brien 2019-12-04 13:31:35 +00:00 committed by sharelatex
parent 687d3c1b22
commit d1a668ffda
4 changed files with 21 additions and 22 deletions

View file

@ -78,12 +78,6 @@ module.exports = function(webRouter, privateApiRouter, publicApiRouter) {
staticFilesBase = '' staticFilesBase = ''
} }
res.locals.buildBaseAssetPath = function() {
// Return the base asset path (including the CDN url) so that webpack can
// use this to dynamically fetch scripts (e.g. PDFjs worker)
return Url.resolve(staticFilesBase, '/')
}
res.locals.buildJsPath = function(jsFile) { res.locals.buildJsPath = function(jsFile) {
let path let path
if (IS_DEV_ENV) { if (IS_DEV_ENV) {
@ -95,7 +89,7 @@ module.exports = function(webRouter, privateApiRouter, publicApiRouter) {
// In production: resolve path from webpack manifest file // In production: resolve path from webpack manifest file
// We are guaranteed to have a manifest file since webpack compiles in // We are guaranteed to have a manifest file since webpack compiles in
// the build // the build
path = `/${webpackManifest[jsFile]}` path = webpackManifest[jsFile]
} }
return Url.resolve(staticFilesBase, path) return Url.resolve(staticFilesBase, path)
@ -103,7 +97,7 @@ module.exports = function(webRouter, privateApiRouter, publicApiRouter) {
// Temporary hack while jQuery/Angular dependencies are *not* bundled, // Temporary hack while jQuery/Angular dependencies are *not* bundled,
// instead copied into output directory // instead copied into output directory
res.locals.buildCopiedJsAssetPath = function(jsFile) { res.locals.buildCopiedJsAssetPath = function(jsFile, opts = {}) {
let path let path
if (IS_DEV_ENV) { if (IS_DEV_ENV) {
// In dev: resolve path to root directory // In dev: resolve path to root directory
@ -114,17 +108,27 @@ module.exports = function(webRouter, privateApiRouter, publicApiRouter) {
// In production: resolve path from webpack manifest file // In production: resolve path from webpack manifest file
// We are guaranteed to have a manifest file since webpack compiles in // We are guaranteed to have a manifest file since webpack compiles in
// the build // the build
path = `/${webpackManifest[jsFile]}` path = webpackManifest[jsFile]
} }
return Url.resolve(staticFilesBase, path) if (opts.cdn !== false) {
path = Url.resolve(staticFilesBase, path)
} }
res.locals.mathJaxPath = `/js/libs/mathjax/MathJax.js?${querystring.stringify( if (opts.qs) {
path = path + '?' + querystring.stringify(opts.qs)
}
return path
}
res.locals.mathJaxPath = res.locals.buildCopiedJsAssetPath(
'js/libs/mathjax/MathJax.js',
{ {
config: 'TeX-AMS_HTML,Safe' cdn: false,
qs: { config: 'TeX-AMS_HTML,Safe' }
} }
)}` )
res.locals.lib = PackageVersions.lib res.locals.lib = PackageVersions.lib
@ -165,7 +169,7 @@ module.exports = function(webRouter, privateApiRouter, publicApiRouter) {
// In production: resolve path from webpack manifest file // In production: resolve path from webpack manifest file
// We are guaranteed to have a manifest file since webpack compiles in // We are guaranteed to have a manifest file since webpack compiles in
// the build // the build
path = `/${webpackManifest[cssFileName]}` path = webpackManifest[cssFileName]
} }
return Url.resolve(staticFilesBase, path) return Url.resolve(staticFilesBase, path)

View file

@ -47,9 +47,6 @@ html(
script(type="text/javascript"). script(type="text/javascript").
window.csrfToken = "#{csrfToken}"; window.csrfToken = "#{csrfToken}";
//- Configure dynamically loaded assets (via webpack) to be downloaded from CDN
//- See: https://webpack.js.org/guides/public-path/#on-the-fly
window.baseAssetPath = "#{buildBaseAssetPath()}"
script(src=buildCopiedJsAssetPath('js/libs/jquery-1.11.1.min.js')) script(src=buildCopiedJsAssetPath('js/libs/jquery-1.11.1.min.js'))
script(type="text/javascript"). script(type="text/javascript").

View file

@ -14,11 +14,6 @@
* DS207: Consider shorter variations of null checks * DS207: Consider shorter variations of null checks
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
*/ */
// Configure dynamically loaded assets (via webpack) to be downloaded from CDN
// See: https://webpack.js.org/guides/public-path/#on-the-fly
__webpack_public_path__ = window.baseAssetPath
define([ define([
'libraries', 'libraries',
'libs/polyfills/symbol', 'libs/polyfills/symbol',

View file

@ -41,6 +41,9 @@ module.exports = {
output: { output: {
path: path.join(__dirname, '/public'), path: path.join(__dirname, '/public'),
// Serve from the root of public directory
publicPath: '/',
// By default write into js directory // By default write into js directory
filename: 'js/[name].js', filename: 'js/[name].js',