51 lines
1.9 KiB
JavaScript
51 lines
1.9 KiB
JavaScript
import { BinaryDecisionDiagram } from "@smithy/core/endpoints";
|
|
const m = "ref";
|
|
const a = -1, b = true, c = "isSet", d = "PartitionResult", e = "booleanEquals", f = "stringEquals", g = "getAttr", h = { [m]: "Endpoint" }, i = { [m]: "Region" }, j = { [m]: d }, k = {}, l = [i];
|
|
const _data = {
|
|
conditions: [
|
|
[c, [h]],
|
|
[c, l],
|
|
["aws.partition", l, d],
|
|
[e, [{ [m]: "UseFIPS" }, b]],
|
|
[e, [{ [m]: "UseDualStack" }, b]],
|
|
[f, [i, "us-gov-west-1"]],
|
|
[e, [{ fn: g, argv: [j, "supportsFIPS"] }, b]],
|
|
[f, [{ fn: g, argv: [j, "name"] }, "aws-us-gov"]],
|
|
[e, [{ fn: g, argv: [j, "supportsDualStack"] }, b]]
|
|
],
|
|
results: [
|
|
[a],
|
|
[a, "Invalid Configuration: FIPS and custom endpoint are not supported"],
|
|
[a, "Invalid Configuration: Dualstack and custom endpoint are not supported"],
|
|
[h, k],
|
|
["https://states.{Region}.{PartitionResult#dnsSuffix}", k],
|
|
["https://states-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", k],
|
|
[a, "FIPS and DualStack are enabled, but this partition does not support one or both"],
|
|
["https://states-fips.{Region}.{PartitionResult#dnsSuffix}", k],
|
|
[a, "FIPS is enabled but this partition does not support FIPS"],
|
|
["https://states.{Region}.{PartitionResult#dualStackDnsSuffix}", k],
|
|
[a, "DualStack is enabled but this partition does not support DualStack"],
|
|
[a, "Invalid Configuration: Missing Region"]
|
|
]
|
|
};
|
|
const root = 2;
|
|
const r = 100_000_000;
|
|
const nodes = new Int32Array([
|
|
-1, 1, -1,
|
|
0, 14, 3,
|
|
1, 4, r + 11,
|
|
2, 5, r + 11,
|
|
3, 9, 6,
|
|
4, 7, r + 4,
|
|
7, r + 5, 8,
|
|
8, r + 9, r + 10,
|
|
4, 12, 10,
|
|
5, r + 4, 11,
|
|
6, r + 7, r + 8,
|
|
6, 13, r + 6,
|
|
8, r + 5, r + 6,
|
|
3, r + 1, 15,
|
|
4, r + 2, r + 3,
|
|
]);
|
|
export const bdd = BinaryDecisionDiagram.from(nodes, root, _data.conditions, _data.results);
|