UNPKG

mzinga

Version:

Node, React and MongoDB Headless CMS and Application Framework

42 lines (41 loc) 5.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "default", { enumerable: true, get: function() { return _default; } }); const _express = /*#__PURE__*/ _interop_require_default(require("express")); const _passport = /*#__PURE__*/ _interop_require_default(require("passport")); const _path = /*#__PURE__*/ _interop_require_default(require("path")); const _getExecuteStaticAccess = /*#__PURE__*/ _interop_require_default(require("../auth/getExecuteStaticAccess")); const _authenticate = /*#__PURE__*/ _interop_require_default(require("./middleware/authenticate")); const _corsHeaders = /*#__PURE__*/ _interop_require_default(require("./middleware/corsHeaders")); function _interop_require_default(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function initStatic(ctx) { Object.entries(ctx.collections).forEach(([_, collection])=>{ const { config } = collection; if (config.upload && config.upload.staticURL.startsWith('/')) { const router = _express.default.Router(); router.use((0, _corsHeaders.default)(ctx.config)); router.use(_passport.default.initialize()); router.use((0, _authenticate.default)(ctx.config)); router.use((0, _getExecuteStaticAccess.default)(config)); if (Array.isArray(config.upload?.handlers)) { router.get('/:filename*', config.upload.handlers); } const staticPath = _path.default.resolve(ctx.config.paths.configDir, config.upload.staticDir); router.use(_express.default.static(staticPath, config.upload.staticOptions || {})); ctx.express.use(`${config.upload.staticURL}`, router); } }); } const _default = initStatic; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHByZXNzL3N0YXRpYy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZXhwcmVzcyBmcm9tICdleHByZXNzJ1xuaW1wb3J0IHBhc3Nwb3J0IGZyb20gJ3Bhc3Nwb3J0J1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuaW1wb3J0IHR5cGUgeyBQYXlsb2FkIH0gZnJvbSAnLi4vbXppbmdhJ1xuXG5pbXBvcnQgZ2V0RXhlY3V0ZVN0YXRpY0FjY2VzcyBmcm9tICcuLi9hdXRoL2dldEV4ZWN1dGVTdGF0aWNBY2Nlc3MnXG5pbXBvcnQgYXV0aGVudGljYXRlIGZyb20gJy4vbWlkZGxld2FyZS9hdXRoZW50aWNhdGUnXG5pbXBvcnQgY29yc0hlYWRlcnMgZnJvbSAnLi9taWRkbGV3YXJlL2NvcnNIZWFkZXJzJ1xuXG5mdW5jdGlvbiBpbml0U3RhdGljKGN0eDogUGF5bG9hZCk6IHZvaWQge1xuICBPYmplY3QuZW50cmllcyhjdHguY29sbGVjdGlvbnMpLmZvckVhY2goKFtfLCBjb2xsZWN0aW9uXSkgPT4ge1xuICAgIGNvbnN0IHsgY29uZmlnIH0gPSBjb2xsZWN0aW9uXG5cbiAgICBpZiAoY29uZmlnLnVwbG9hZCAmJiBjb25maWcudXBsb2FkLnN0YXRpY1VSTC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgIGNvbnN0IHJvdXRlciA9IGV4cHJlc3MuUm91dGVyKClcblxuICAgICAgcm91dGVyLnVzZShjb3JzSGVhZGVycyhjdHguY29uZmlnKSlcbiAgICAgIHJvdXRlci51c2UocGFzc3BvcnQuaW5pdGlhbGl6ZSgpKVxuICAgICAgcm91dGVyLnVzZShhdXRoZW50aWNhdGUoY3R4LmNvbmZpZykpXG5cbiAgICAgIHJvdXRlci51c2UoZ2V0RXhlY3V0ZVN0YXRpY0FjY2Vzcyhjb25maWcpKVxuXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShjb25maWcudXBsb2FkPy5oYW5kbGVycykpIHtcbiAgICAgICAgcm91dGVyLmdldCgnLzpmaWxlbmFtZSonLCBjb25maWcudXBsb2FkLmhhbmRsZXJzKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBzdGF0aWNQYXRoID0gcGF0aC5yZXNvbHZlKGN0eC5jb25maWcucGF0aHMuY29uZmlnRGlyLCBjb25maWcudXBsb2FkLnN0YXRpY0RpcilcblxuICAgICAgcm91dGVyLnVzZShleHByZXNzLnN0YXRpYyhzdGF0aWNQYXRoLCBjb25maWcudXBsb2FkLnN0YXRpY09wdGlvbnMgfHwge30pKVxuXG4gICAgICBjdHguZXhwcmVzcy51c2UoYCR7Y29uZmlnLnVwbG9hZC5zdGF0aWNVUkx9YCwgcm91dGVyKVxuICAgIH1cbiAgfSlcbn1cblxuZXhwb3J0IGRlZmF1bHQgaW5pdFN0YXRpY1xuIl0sIm5hbWVzIjpbImluaXRTdGF0aWMiLCJjdHgiLCJPYmplY3QiLCJlbnRyaWVzIiwiY29sbGVjdGlvbnMiLCJmb3JFYWNoIiwiXyIsImNvbGxlY3Rpb24iLCJjb25maWciLCJ1cGxvYWQiLCJzdGF0aWNVUkwiLCJzdGFydHNXaXRoIiwicm91dGVyIiwiZXhwcmVzcyIsIlJvdXRlciIsInVzZSIsImNvcnNIZWFkZXJzIiwicGFzc3BvcnQiLCJpbml0aWFsaXplIiwiYXV0aGVudGljYXRlIiwiZ2V0RXhlY3V0ZVN0YXRpY0FjY2VzcyIsIkFycmF5IiwiaXNBcnJheSIsImhhbmRsZXJzIiwiZ2V0Iiwic3RhdGljUGF0aCIsInBhdGgiLCJyZXNvbHZlIiwicGF0aHMiLCJjb25maWdEaXIiLCJzdGF0aWNEaXIiLCJzdGF0aWMiLCJzdGF0aWNPcHRpb25zIl0sInJhbmdlTWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsiLCJtYXBwaW5ncyI6Ijs7OzsrQkFvQ0E7OztlQUFBOzs7Z0VBcENvQjtpRUFDQzs2REFDSjsrRUFJa0I7cUVBQ1Y7b0VBQ0Q7Ozs7OztBQUV4QixTQUFTQSxXQUFXQyxHQUFZO0lBQzlCQyxPQUFPQyxPQUFPLENBQUNGLElBQUlHLFdBQVcsRUFBRUMsT0FBTyxDQUFDLENBQUMsQ0FBQ0MsR0FBR0MsV0FBVztRQUN0RCxNQUFNLEVBQUVDLE1BQU0sRUFBRSxHQUFHRDtRQUVuQixJQUFJQyxPQUFPQyxNQUFNLElBQUlELE9BQU9DLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxVQUFVLENBQUMsTUFBTTtZQUM1RCxNQUFNQyxTQUFTQyxnQkFBTyxDQUFDQyxNQUFNO1lBRTdCRixPQUFPRyxHQUFHLENBQUNDLElBQUFBLG9CQUFXLEVBQUNmLElBQUlPLE1BQU07WUFDakNJLE9BQU9HLEdBQUcsQ0FBQ0UsaUJBQVEsQ0FBQ0MsVUFBVTtZQUM5Qk4sT0FBT0csR0FBRyxDQUFDSSxJQUFBQSxxQkFBWSxFQUFDbEIsSUFBSU8sTUFBTTtZQUVsQ0ksT0FBT0csR0FBRyxDQUFDSyxJQUFBQSwrQkFBc0IsRUFBQ1o7WUFFbEMsSUFBSWEsTUFBTUMsT0FBTyxDQUFDZCxPQUFPQyxNQUFNLEVBQUVjLFdBQVc7Z0JBQzFDWCxPQUFPWSxHQUFHLENBQUMsZUFBZWhCLE9BQU9DLE1BQU0sQ0FBQ2MsUUFBUTtZQUNsRDtZQUVBLE1BQU1FLGFBQWFDLGFBQUksQ0FBQ0MsT0FBTyxDQUFDMUIsSUFBSU8sTUFBTSxDQUFDb0IsS0FBSyxDQUFDQyxTQUFTLEVBQUVyQixPQUFPQyxNQUFNLENBQUNxQixTQUFTO1lBRW5GbEIsT0FBT0csR0FBRyxDQUFDRixnQkFBTyxDQUFDa0IsTUFBTSxDQUFDTixZQUFZakIsT0FBT0MsTUFBTSxDQUFDdUIsYUFBYSxJQUFJLENBQUM7WUFFdEUvQixJQUFJWSxPQUFPLENBQUNFLEdBQUcsQ0FBQyxDQUFDLEVBQUVQLE9BQU9DLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDLENBQUMsRUFBRUU7UUFDaEQ7SUFDRjtBQUNGO01BRUEsV0FBZVoifQ==