const genmap = require('../build/generate_asset_map'); const isServer = typeof genmap === 'function'; const prefix = isServer ? '/' : ''; let manifest = {}; try { //eslint-disable-next-line node/no-missing-require manifest = require('../dist/manifest.json'); } catch (e) { // use middleware } const assets = isServer ? manifest : genmap; function getAsset(name) { return prefix + assets[name]; } const instance = { get: getAsset, setMiddleware: function(middleware) { if (middleware) { instance.get = function getAssetWithMiddleware(name) { const f = middleware.fileSystem.readFileSync( middleware.getFilenameFromUrl('/manifest.json') ); return prefix + JSON.parse(f)[name]; }; } } }; module.exports = instance;