Spaces:
Sleeping
Sleeping
File size: 860 Bytes
c2b7eb3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | // src/getDotPath/getDotPath.ts
function getDotPath(issue) {
if (issue.path?.length) {
let dotPath = "";
for (const item of issue.path) {
const key = typeof item === "object" ? item.key : item;
if (typeof key === "string" || typeof key === "number") {
if (dotPath) {
dotPath += `.${key}`;
} else {
dotPath += key;
}
} else {
return null;
}
}
return dotPath;
}
return null;
}
// src/SchemaError/SchemaError.ts
var SchemaError = class extends Error {
/**
* The schema issues.
*/
issues;
/**
* Creates a schema error with useful information.
*
* @param issues The schema issues.
*/
constructor(issues) {
super(issues[0].message);
this.name = "SchemaError";
this.issues = issues;
}
};
export {
SchemaError,
getDotPath
};
|