UNPKG

nix-api

Version:

<div align="center"> <img src="./docs/.vuepress/public/images/logo.png" width="200px"> </div>

84 lines (63 loc) 2.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _html = _interopRequireDefault(require("./html")); var _json = _interopRequireDefault(require("./json")); var _markdown = _interopRequireDefault(require("./markdown")); var _javascript = _interopRequireDefault(require("./javascript")); var _default2 = _interopRequireDefault(require("./default")); var _image = _interopRequireDefault(require("./image")); var _path = _interopRequireDefault(require("path")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } var Module = /*#__PURE__*/ function () { function Module(_ref) { var basePath = _ref.basePath; _classCallCheck(this, Module); this.basePath = basePath; this.modules = [_html.default, _json.default, _markdown.default, _javascript.default, _image.default, _default2.default]; } _createClass(Module, [{ key: "resolveFile", value: function resolveFile(fileModel) { var _this = this; return function (_ref2) { var req = _ref2.req, res = _ref2.res; return _this._resolveFile(fileModel, { req: req, res: res }); }; } }, { key: "_resolveFile", value: function _resolveFile(fileModel, _ref3) { var req = _ref3.req, res = _ref3.res; var findedModule = this.getModuleByExtension(fileModel.ext); var pathFile = _path.default.resolve(this.basePath, fileModel.getPath()); if (!findedModule) return res.send("Module not found for this extension."); findedModule.resolve(pathFile, { req: req, res: res }); } }, { key: "getModuleByExtension", value: function getModuleByExtension(extension) { return this.modules.find(function (_module) { return extension.match(_module.accept); }); } }]); return Module; }(); var _default = Module; exports.default = _default;