@winfe/preset-built-vmi
Version:
@vmi/preset-built-in
116 lines (86 loc) • 4.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
function _react() {
const data = _interopRequireDefault(require("react"));
_react = function _react() {
return data;
};
return data;
}
function _utils() {
const data = require("@nuxt/utils");
_utils = function _utils() {
return data;
};
return data;
}
function _fs() {
const data = _interopRequireWildcard(require("fs"));
_fs = function _fs() {
return data;
};
return data;
}
function _path() {
const data = _interopRequireDefault(require("path"));
_path = function _path() {
return data;
};
return data;
}
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
/**
* plugin for generate component routes
*/
var _default = api => {
// generate vmi component routes
api.onPatchRoutesBefore( /*#__PURE__*/function () {
var _ref = _asyncToGenerator(function* ({
routes,
parentRoute
}) {
// only deal with the top level routes
if (!parentRoute) {
// get root index.js/index.vue
const files = {};
const supportedExtensions = ['vue', 'js', 'jsx'];
const ext = new RegExp(`\\.(${supportedExtensions.join('|')})$`);
let rootIndex = [];
try {
_fs().default.accessSync(_path().default.resolve(api.cwd, 'index.js'), _fs().constants.R_OK);
rootIndex.push(_path().default.resolve(api.cwd, 'index.js'));
_fs().default.accessSync(_path().default.resolve(api.cwd, 'index.vue'), _fs().constants.R_OK);
rootIndex.push(_path().default.resolve(api.cwd, 'index.vue'));
} catch (error) {}
if (!rootIndex.length) return;
for (var _i = 0, _rootIndex = rootIndex; _i < _rootIndex.length; _i++) {
const page = _rootIndex[_i];
const key = page.replace(ext, ''); // .vue file takes precedence over other extensions
if (/\.vue$/.test(page) || !files[key]) {
files[key] = page.replace(/(['"])/g, '\\$1');
}
}
const route = (0, _utils().createRoutes)({
files: Object.values(files),
srcDir: api.paths.cwd,
pagesDir: api.paths.cwd,
routeNameSplitter: '-',
supportedExtensions: ['vue', 'js', 'jsx'],
undefined
}); // unshit docs routes in integrate mode
routes.unshift(...route);
}
});
return function (_x) {
return _ref.apply(this, arguments);
};
}());
};
exports.default = _default;