rittenhop-ghost/versions/5.94.2/node_modules/@aws-sdk/util-endpoints/dist-cjs/utils/evaluateRules.js

32 lines
1.2 KiB
JavaScript
Raw Normal View History

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.evaluateRules = void 0;
const types_1 = require("../types");
const evaluateEndpointRule_1 = require("./evaluateEndpointRule");
const evaluateErrorRule_1 = require("./evaluateErrorRule");
const evaluateTreeRule_1 = require("./evaluateTreeRule");
const evaluateRules = (rules, options) => {
for (const rule of rules) {
if (rule.type === "endpoint") {
const endpointOrUndefined = (0, evaluateEndpointRule_1.evaluateEndpointRule)(rule, options);
if (endpointOrUndefined) {
return endpointOrUndefined;
}
}
else if (rule.type === "error") {
(0, evaluateErrorRule_1.evaluateErrorRule)(rule, options);
}
else if (rule.type === "tree") {
const endpointOrUndefined = (0, evaluateTreeRule_1.evaluateTreeRule)(rule, options);
if (endpointOrUndefined) {
return endpointOrUndefined;
}
}
else {
throw new types_1.EndpointError(`Unknown endpoint rule: ${rule}`);
}
}
throw new types_1.EndpointError(`Rules evaluation failed`);
};
exports.evaluateRules = evaluateRules;