Files
flights_web_raw/apps/angular/node_modules/reduce-configs/dist/index.cjs
T

99 lines
4.0 KiB
JavaScript

"use strict";
var __webpack_require__ = {};
(()=>{
__webpack_require__.d = (exports1, definition)=>{
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
enumerable: true,
get: definition[key]
});
};
})();
(()=>{
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
})();
(()=>{
__webpack_require__.r = (exports1)=>{
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
value: 'Module'
});
Object.defineProperty(exports1, '__esModule', {
value: true
});
};
})();
var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
__webpack_require__.d(__webpack_exports__, {
reduceConfigs: ()=>reduceConfigs,
reduceConfigsAsyncWithContext: ()=>reduceConfigsAsyncWithContext,
reduceConfigsMergeContext: ()=>reduceConfigsMergeContext,
reduceConfigsWithContext: ()=>reduceConfigsWithContext
});
const isNil = (o)=>null == o;
const isFunction = (func)=>'function' == typeof func;
const isObject = (obj)=>null !== obj && 'object' == typeof obj;
const isPlainObject = (obj)=>isObject(obj) && '[object Object]' === Object.prototype.toString.call(obj);
function reduceConfigs({ initial, config, mergeFn = Object.assign }) {
if (isNil(config)) return initial;
if (isPlainObject(config)) return isPlainObject(initial) ? mergeFn(initial, config) : config;
if (isFunction(config)) return config(initial) ?? initial;
if (Array.isArray(config)) return config.reduce((initial, config)=>reduceConfigs({
initial,
config,
mergeFn
}), initial);
return config ?? initial;
}
function reduceConfigsWithContext({ initial, config, ctx, mergeFn = Object.assign }) {
if (isNil(config)) return initial;
if (isPlainObject(config)) return isPlainObject(initial) ? mergeFn(initial, config) : config;
if (isFunction(config)) return config(initial, ctx) ?? initial;
if (Array.isArray(config)) return config.reduce((initial, config)=>reduceConfigsWithContext({
initial,
config,
ctx,
mergeFn
}), initial);
return config ?? initial;
}
async function reduceConfigsAsyncWithContext({ initial, config, ctx, mergeFn = Object.assign }) {
if (isNil(config)) return initial;
if (isPlainObject(config)) return isPlainObject(initial) ? mergeFn(initial, config) : config;
if (isFunction(config)) return await config(initial, ctx) ?? initial;
if (Array.isArray(config)) return config.reduce((initial, config)=>reduceConfigsWithContext({
initial,
config,
ctx,
mergeFn
}), initial);
return config ?? initial;
}
function reduceConfigsMergeContext({ initial, config, ctx, mergeFn = Object.assign }) {
if (isNil(config)) return initial;
if (isPlainObject(config)) return isPlainObject(initial) ? mergeFn(initial, config) : config;
if (isFunction(config)) return config({
value: initial,
...ctx
}) ?? initial;
if (Array.isArray(config)) return config.reduce((initial, config)=>reduceConfigsMergeContext({
initial,
config,
ctx,
mergeFn
}), initial);
return config ?? initial;
}
exports.reduceConfigs = __webpack_exports__.reduceConfigs;
exports.reduceConfigsAsyncWithContext = __webpack_exports__.reduceConfigsAsyncWithContext;
exports.reduceConfigsMergeContext = __webpack_exports__.reduceConfigsMergeContext;
exports.reduceConfigsWithContext = __webpack_exports__.reduceConfigsWithContext;
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
"reduceConfigs",
"reduceConfigsAsyncWithContext",
"reduceConfigsMergeContext",
"reduceConfigsWithContext"
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
Object.defineProperty(exports, '__esModule', {
value: true
});