@omnia/tooling-vue
Version:
Used to bundle and serve manifests web component that build on Vue framework.
28 lines (27 loc) • 963 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.defineResolver = void 0;
const utils_1 = require("../utils");
function defineResolver(name, ctor) {
if (typeof ctor != 'function') {
throw new utils_1.ErrorHMR('resolver constructor is not a function');
}
return (...args) => {
const resolver = ctor(...args);
if (typeof name != 'string' || name.length == 0) {
throw new utils_1.ErrorHMR('resolver.name is empty or undefined');
}
if (typeof resolver.test != 'function') {
throw new utils_1.ErrorHMR('resolver.test is not a function');
}
if (typeof resolver.resolve != 'function') {
throw new utils_1.ErrorHMR('resolver.resolve is not a function');
}
return {
name,
test: resolver.test,
resolve: resolver.resolve
};
};
}
exports.defineResolver = defineResolver;