dilswer
Version:
Blazingly fast data validation library with TypeScript integration.
20 lines (19 loc) • 476 B
JavaScript
// src/utilities/concat-object-path.ts
var concatPathSegments = (path, key) => {
key = key.toString();
if (/^[0-9]+$/.test(key)) {
return `${path}[${key}]`;
}
if (/[^a-zA-Z0-9]/.test(key)) {
return `${path}["${key.replace(/"/g, '\\"')}"]`;
}
return `${path}.${key}`;
};
var concatPath = (segments) => {
var _a;
return segments.slice(1).reduce(concatPathSegments, (_a = segments[0]) != null ? _a : "");
};
export {
concatPath,
concatPathSegments
};