@collectionspace/cspace-public-browser
Version:
CollectionSpace public browser
56 lines (55 loc) • 2.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _get = _interopRequireDefault(require("lodash/get"));
var _mergeWith = _interopRequireDefault(require("lodash/mergeWith"));
var _default2 = _interopRequireDefault(require("./default"));
var _anthro = _interopRequireDefault(require("./anthro"));
var _bonsai = _interopRequireDefault(require("./bonsai"));
var _botgarden = _interopRequireDefault(require("./botgarden"));
var _fcart = _interopRequireDefault(require("./fcart"));
var _herbarium = _interopRequireDefault(require("./herbarium"));
var _lhmc = _interopRequireDefault(require("./lhmc"));
var _materials = _interopRequireDefault(require("./materials"));
var _publicart = _interopRequireDefault(require("./publicart"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const namedConfig = {
anthro: _anthro.default,
bonsai: _bonsai.default,
botgarden: _botgarden.default,
fcart: _fcart.default,
herbarium: _herbarium.default,
lhmc: _lhmc.default,
materials: _materials.default,
publicart: _publicart.default
};
const config = (0, _mergeWith.default)({}, _default2.default);
const configMerge = (objValue, srcValue) => {
// overwrite arrays instead of merging them
if (Array.isArray(objValue)) {
return srcValue;
}
return undefined;
};
var _default = exports.default = {
get: (path, defaultValue) => (0, _get.default)(config, path, defaultValue),
// eslint-disable-next-line no-console
log: () => console.log(config),
merge: (...sources) => {
sources.forEach(source => {
const {
baseConfig: baseConfigName
} = source;
if (baseConfigName) {
const baseConfig = namedConfig[baseConfigName];
if (baseConfig) {
(0, _mergeWith.default)(config, baseConfig, configMerge);
}
}
(0, _mergeWith.default)(config, source, configMerge);
});
},
getFilterFieldConfig: id => (0, _get.default)(config, ['filters', 'fields', id])
};