Files
pole-book/server/node_modules/@strapi/utils/dist/validate/utils.mjs

25 lines
837 B
JavaScript

import { ValidationError } from '../errors.mjs';
// lodash/fp curry does not handle async functions properly, and creates very "ugly" types,
// so we will use our own version to ensure curried functions are typed correctly
// TODO: Export this from root @strapi/utils so we don't have copies of it between packages
const throwInvalidKey = ({ key, path })=>{
const msg = path && path !== key ? `Invalid key ${key} at ${path}` : `Invalid key ${key}`;
throw new ValidationError(msg, {
key,
path
});
};
const asyncCurry = (fn)=>{
const curried = (...args)=>{
if (args.length >= fn.length) {
return fn(...args);
}
return (...moreArgs)=>curried(...args, ...moreArgs);
};
return curried;
};
export { asyncCurry, throwInvalidKey };
//# sourceMappingURL=utils.mjs.map