@egodigital/nef
Version:
Managed Extensibility Framework like library written for Node.js
47 lines • 1.62 kB
JavaScript
;
/**
* This file is part of the @egodigital/nef distribution.
* Copyright (c) e.GO Digital GmbH, Aachen, Germany (https://www.e-go-digital.com/)
*
* @egodigital/nef is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation, version 3.
*
* @egodigital/nef is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ModuleCatalog = void 0;
const _ = require("lodash");
const CatalogBase_1 = require("./CatalogBase");
const util_1 = require("../util");
/**
* A catalog for a JavaScript module.
*/
class ModuleCatalog extends CatalogBase_1.CatalogBase {
/**
* Initializes a new instance of that class.
*
* @param {any} mod The mod.
*
* @throws {Error} 'mod' is (null) or (undefined).
*/
constructor(mod) {
super();
if (_.isNil(mod)) {
throw new Error('cls must not be null and undfined');
}
this._MODULE = mod;
}
/** @inheritdoc */
getClassesSync() {
return util_1.getClassesFromObject(this._MODULE);
}
}
exports.ModuleCatalog = ModuleCatalog;
//# sourceMappingURL=ModuleCatalog.js.map