@cucumber/cucumber
Version:
The official JavaScript implementation of Cucumber.
27 lines • 1.05 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveImplementation = resolveImplementation;
const builtin_1 = __importDefault(require("./builtin"));
const import_code_1 = require("./import_code");
const find_class_or_plugin_1 = require("./find_class_or_plugin");
async function resolveImplementation(specifier, cwd) {
const fromBuiltin = builtin_1.default[specifier];
if (fromBuiltin) {
if (typeof fromBuiltin !== 'string') {
return fromBuiltin;
}
else {
specifier = fromBuiltin;
}
}
const imported = await (0, import_code_1.importCode)(specifier, cwd);
const found = (0, find_class_or_plugin_1.findClassOrPlugin)(imported);
if (!found) {
throw new Error(`${specifier} does not export a function/class`);
}
return found;
}
//# sourceMappingURL=resolve_implementation.js.map
;