rittenhop-dev/versions/5.94.2/node_modules/@aws-sdk/util-endpoints/dist-es/lib/getAttr.js
2024-09-23 19:40:12 -04:00

12 lines
441 B
JavaScript

import { EndpointError } from "../types";
import { getAttrPathList } from "./getAttrPathList";
export const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {
if (typeof acc !== "object") {
throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);
}
else if (Array.isArray(acc)) {
return acc[parseInt(index)];
}
return acc[index];
}, value);