template-saas/apps/backend/node_modules/@aws-sdk/util-arn-parser/dist-es/index.js
rckrdmrd 50a821a415
Some checks failed
CI / Backend CI (push) Has been cancelled
CI / Frontend CI (push) Has been cancelled
CI / Security Scan (push) Has been cancelled
CI / CI Summary (push) Has been cancelled
[SIMCO-V38] feat: Actualizar a SIMCO v3.8.0
- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8
- Actualizaciones de configuracion

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 08:53:08 -06:00

22 lines
851 B
JavaScript

export const validate = (str) => typeof str === "string" && str.indexOf("arn:") === 0 && str.split(":").length >= 6;
export const parse = (arn) => {
const segments = arn.split(":");
if (segments.length < 6 || segments[0] !== "arn")
throw new Error("Malformed ARN");
const [, partition, service, region, accountId, ...resource] = segments;
return {
partition,
service,
region,
accountId,
resource: resource.join(":"),
};
};
export const build = (arnObject) => {
const { partition = "aws", service, region, accountId, resource } = arnObject;
if ([service, region, accountId, resource].some((segment) => typeof segment !== "string")) {
throw new Error("Input ARN object is invalid");
}
return `arn:${partition}:${service}:${region}:${accountId}:${resource}`;
};