mirror of
https://github.com/xfarrow/blink
synced 2025-06-27 09:03:02 +02:00
Change endpoint from persons to people
This commit is contained in:
95
backend/apis/nodejs/node_modules/knex/lib/util/helpers.js
generated
vendored
Normal file
95
backend/apis/nodejs/node_modules/knex/lib/util/helpers.js
generated
vendored
Normal file
@ -0,0 +1,95 @@
|
||||
const isPlainObject = require('lodash/isPlainObject');
|
||||
const isTypedArray = require('lodash/isTypedArray');
|
||||
const { CLIENT_ALIASES } = require('../constants');
|
||||
const { isFunction } = require('./is');
|
||||
|
||||
// Check if the first argument is an array, otherwise uses all arguments as an
|
||||
// array.
|
||||
function normalizeArr(...args) {
|
||||
if (Array.isArray(args[0])) {
|
||||
return args[0];
|
||||
}
|
||||
|
||||
return args;
|
||||
}
|
||||
|
||||
function containsUndefined(mixed) {
|
||||
let argContainsUndefined = false;
|
||||
|
||||
if (isTypedArray(mixed)) return false;
|
||||
|
||||
if (mixed && isFunction(mixed.toSQL)) {
|
||||
//Any QueryBuilder or Raw will automatically be validated during compile.
|
||||
return argContainsUndefined;
|
||||
}
|
||||
|
||||
if (Array.isArray(mixed)) {
|
||||
for (let i = 0; i < mixed.length; i++) {
|
||||
if (argContainsUndefined) break;
|
||||
argContainsUndefined = containsUndefined(mixed[i]);
|
||||
}
|
||||
} else if (isPlainObject(mixed)) {
|
||||
Object.keys(mixed).forEach((key) => {
|
||||
if (!argContainsUndefined) {
|
||||
argContainsUndefined = containsUndefined(mixed[key]);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
argContainsUndefined = mixed === undefined;
|
||||
}
|
||||
|
||||
return argContainsUndefined;
|
||||
}
|
||||
|
||||
function getUndefinedIndices(mixed) {
|
||||
const indices = [];
|
||||
|
||||
if (Array.isArray(mixed)) {
|
||||
mixed.forEach((item, index) => {
|
||||
if (containsUndefined(item)) {
|
||||
indices.push(index);
|
||||
}
|
||||
});
|
||||
} else if (isPlainObject(mixed)) {
|
||||
Object.keys(mixed).forEach((key) => {
|
||||
if (containsUndefined(mixed[key])) {
|
||||
indices.push(key);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
indices.push(0);
|
||||
}
|
||||
|
||||
return indices;
|
||||
}
|
||||
|
||||
function addQueryContext(Target) {
|
||||
// Stores or returns (if called with no arguments) context passed to
|
||||
// wrapIdentifier and postProcessResponse hooks
|
||||
Target.prototype.queryContext = function (context) {
|
||||
if (context === undefined) {
|
||||
return this._queryContext;
|
||||
}
|
||||
this._queryContext = context;
|
||||
return this;
|
||||
};
|
||||
}
|
||||
|
||||
function resolveClientNameWithAliases(clientName) {
|
||||
return CLIENT_ALIASES[clientName] || clientName;
|
||||
}
|
||||
|
||||
function toNumber(val, fallback) {
|
||||
if (val === undefined || val === null) return fallback;
|
||||
const number = parseInt(val, 10);
|
||||
return isNaN(number) ? fallback : number;
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
addQueryContext,
|
||||
containsUndefined,
|
||||
getUndefinedIndices,
|
||||
normalizeArr,
|
||||
resolveClientNameWithAliases,
|
||||
toNumber,
|
||||
};
|
Reference in New Issue
Block a user