@aws-cdk/region-info 2.0.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateRegionMap = exports.partitionInformation = exports.regionsBefore = exports.before = exports.AWS_SERVICES = exports.AWS_REGIONS = exports.AWS_REGIONS_AND_RULES = exports.RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = exports.RULE_SSM_PRINCIPALS_ARE_REGIONAL = void 0;
4
+ // Rule prefix
5
+ const RULE_ = 'RULE_';
6
+ /**
7
+ * After this point, SSM only creates regional principals
8
+ */
9
+ exports.RULE_SSM_PRINCIPALS_ARE_REGIONAL = `${RULE_}SSM_PRINCIPALS_ARE_REGIONAL`;
10
+ /**
11
+ * After this point, S3 website domains look like `s3-website.REGION.s3.amazonaws.com`
12
+ *
13
+ * Before this point, S3 website domains look like `s3-website-REGION.s3.amazonaws.com`.
14
+ */
15
+ exports.RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = `${RULE_}S3_WEBSITE_REGIONAL_SUBDOMAIN`;
16
+ /**
17
+ * List of AWS region, ordered by launch date (oldest to newest)
18
+ *
19
+ * The significance of this is that standards and conventions change over time.
20
+ * Generally, as rules are changed they only apply to new regions, and old
21
+ * regions are left as-is.
22
+ *
23
+ * We mix the list of regions with a list of rules that were introduced over
24
+ * time (rules are strings starting with `RULE_`).
25
+ *
26
+ * Therefore, if we want to know if a rule applies to a certain region, we
27
+ * only need to check its position in the list and compare it to when a
28
+ * rule was introduced.
29
+ */
30
+ exports.AWS_REGIONS_AND_RULES = [
31
+ 'us-east-1',
32
+ 'eu-west-1',
33
+ 'us-west-1',
34
+ 'ap-southeast-1',
35
+ 'ap-northeast-1',
36
+ 'us-gov-west-1',
37
+ 'us-west-2',
38
+ 'sa-east-1',
39
+ 'ap-southeast-2',
40
+ exports.RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN,
41
+ 'cn-north-1',
42
+ 'us-iso-east-1',
43
+ 'eu-central-1',
44
+ 'ap-northeast-2',
45
+ 'ap-south-1',
46
+ 'us-east-2',
47
+ 'ca-central-1',
48
+ 'eu-west-2',
49
+ 'us-isob-east-1',
50
+ 'cn-northwest-1',
51
+ 'eu-west-3',
52
+ 'ap-northeast-3',
53
+ 'us-gov-east-1',
54
+ 'eu-north-1',
55
+ exports.RULE_SSM_PRINCIPALS_ARE_REGIONAL,
56
+ 'ap-east-1',
57
+ 'me-south-1',
58
+ 'eu-south-1',
59
+ 'af-south-1',
60
+ 'us-iso-west-1',
61
+ 'eu-south-2',
62
+ 'ap-southeast-3',
63
+ ];
64
+ /**
65
+ * The names of all (known) AWS regions
66
+ *
67
+ * Not in the list ==> no built-in data for that region.
68
+ */
69
+ exports.AWS_REGIONS = exports.AWS_REGIONS_AND_RULES
70
+ .filter((x) => !x.startsWith(RULE_))
71
+ .sort();
72
+ /**
73
+ * Possibly non-exaustive list of all service names, used to locate service principals.
74
+ *
75
+ * Not in the list ==> default service principal mappings.
76
+ */
77
+ exports.AWS_SERVICES = [
78
+ 'application-autoscaling',
79
+ 'autoscaling',
80
+ 'codedeploy',
81
+ 'ec2',
82
+ 'events',
83
+ 'lambda',
84
+ 'logs',
85
+ 's3',
86
+ 'ssm',
87
+ 'sns',
88
+ 'sqs',
89
+ 'states',
90
+ ].sort();
91
+ /**
92
+ * Whether or not a region predates a given rule (or region).
93
+ *
94
+ * Unknown region => we have to assume no.
95
+ */
96
+ function before(region, ruleOrRegion) {
97
+ const ruleIx = exports.AWS_REGIONS_AND_RULES.indexOf(ruleOrRegion);
98
+ if (ruleIx === -1) {
99
+ throw new Error(`Unknown rule: ${ruleOrRegion}`);
100
+ }
101
+ const regionIx = exports.AWS_REGIONS_AND_RULES.indexOf(region);
102
+ return regionIx === -1 ? false : regionIx < ruleIx;
103
+ }
104
+ exports.before = before;
105
+ /**
106
+ * Return all regions before a given rule was introduced (or region)
107
+ */
108
+ function regionsBefore(ruleOrRegion) {
109
+ const ruleIx = exports.AWS_REGIONS_AND_RULES.indexOf(ruleOrRegion);
110
+ if (ruleIx === -1) {
111
+ throw new Error(`Unknown rule: ${ruleOrRegion}`);
112
+ }
113
+ return exports.AWS_REGIONS_AND_RULES.filter((_, i) => i < ruleIx).sort();
114
+ }
115
+ exports.regionsBefore = regionsBefore;
116
+ const PARTITION_MAP = {
117
+ 'default': { partition: 'aws', domainSuffix: 'amazonaws.com' },
118
+ 'cn-': { partition: 'aws-cn', domainSuffix: 'amazonaws.com.cn' },
119
+ 'us-gov-': { partition: 'aws-us-gov', domainSuffix: 'amazonaws.com' },
120
+ 'us-iso-': { partition: 'aws-iso', domainSuffix: 'c2s.ic.gov' },
121
+ 'us-isob-': { partition: 'aws-iso-b', domainSuffix: 'sc2s.sgov.gov' },
122
+ };
123
+ function partitionInformation(region) {
124
+ for (const [prefix, info] of Object.entries(PARTITION_MAP)) {
125
+ if (region.startsWith(prefix)) {
126
+ return info;
127
+ }
128
+ }
129
+ return PARTITION_MAP.default;
130
+ }
131
+ exports.partitionInformation = partitionInformation;
132
+ /**
133
+ * Build a lookup map for all regions
134
+ */
135
+ function generateRegionMap(cb) {
136
+ const ret = {};
137
+ for (const region of exports.AWS_REGIONS) {
138
+ ret[region] = cb(region);
139
+ }
140
+ return ret;
141
+ }
142
+ exports.generateRegionMap = generateRegionMap;
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWVudGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGNBQWM7QUFDZCxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUM7QUFFdEI7O0dBRUc7QUFDVSxRQUFBLGdDQUFnQyxHQUFHLEdBQUcsS0FBSyw2QkFBNkIsQ0FBQztBQUV0Rjs7OztHQUlHO0FBQ1UsUUFBQSxrQ0FBa0MsR0FBRyxHQUFHLEtBQUssK0JBQStCLENBQUM7QUFFMUY7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNVLFFBQUEscUJBQXFCLEdBQUc7SUFDbkMsV0FBVztJQUNYLFdBQVc7SUFDWCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsV0FBVztJQUNYLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsMENBQWtDO0lBQ2xDLFlBQVk7SUFDWixlQUFlO0lBQ2YsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osV0FBVztJQUNYLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixZQUFZO0lBQ1osd0NBQWdDO0lBQ2hDLFdBQVc7SUFDWCxZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWTtJQUNaLGdCQUFnQjtDQUNqQixDQUFDO0FBRUY7Ozs7R0FJRztBQUNVLFFBQUEsV0FBVyxHQUFHLDZCQUFxQjtLQUM3QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNuQyxJQUFJLEVBQUUsQ0FBQztBQUVWOzs7O0dBSUc7QUFDVSxRQUFBLFlBQVksR0FBRztJQUMxQix5QkFBeUI7SUFDekIsYUFBYTtJQUNiLFlBQVk7SUFDWixLQUFLO0lBQ0wsUUFBUTtJQUNSLFFBQVE7SUFDUixNQUFNO0lBQ04sSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLFFBQVE7Q0FDVCxDQUFDLElBQUksRUFBRSxDQUFDO0FBRVQ7Ozs7R0FJRztBQUNILFNBQWdCLE1BQU0sQ0FBQyxNQUFjLEVBQUUsWUFBb0I7SUFDekQsTUFBTSxNQUFNLEdBQUcsNkJBQXFCLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLFlBQVksRUFBRSxDQUFDLENBQUM7S0FDbEQ7SUFDRCxNQUFNLFFBQVEsR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBUEQsd0JBT0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxZQUFvQjtJQUNoRCxNQUFNLE1BQU0sR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0QsSUFBSSxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsWUFBWSxFQUFFLENBQUMsQ0FBQztLQUNsRDtJQUNELE9BQU8sNkJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ25FLENBQUM7QUFORCxzQ0FNQztBQUlELE1BQU0sYUFBYSxHQUFpQztJQUNsRCxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7SUFDOUQsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUU7SUFDaEUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFO0lBQ3JFLFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRTtJQUMvRCxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7Q0FDdEUsQ0FBQztBQUVGLFNBQWdCLG9CQUFvQixDQUFDLE1BQWM7SUFDakQsS0FBSyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUU7UUFDMUQsSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzdCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtJQUNELE9BQU8sYUFBYSxDQUFDLE9BQU8sQ0FBQztBQUMvQixDQUFDO0FBUEQsb0RBT0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLEVBQThCO0lBQzlELE1BQU0sR0FBRyxHQUEyQixFQUFFLENBQUM7SUFDdkMsS0FBSyxNQUFNLE1BQU0sSUFBSSxtQkFBVyxFQUFFO1FBQ2hDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDMUI7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFORCw4Q0FNQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFJ1bGUgcHJlZml4XG5jb25zdCBSVUxFXyA9ICdSVUxFXyc7XG5cbi8qKlxuICogQWZ0ZXIgdGhpcyBwb2ludCwgU1NNIG9ubHkgY3JlYXRlcyByZWdpb25hbCBwcmluY2lwYWxzXG4gKi9cbmV4cG9ydCBjb25zdCBSVUxFX1NTTV9QUklOQ0lQQUxTX0FSRV9SRUdJT05BTCA9IGAke1JVTEVffVNTTV9QUklOQ0lQQUxTX0FSRV9SRUdJT05BTGA7XG5cbi8qKlxuICogQWZ0ZXIgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS5SRUdJT04uczMuYW1hem9uYXdzLmNvbWBcbiAqXG4gKiBCZWZvcmUgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS1SRUdJT04uczMuYW1hem9uYXdzLmNvbWAuXG4gKi9cbmV4cG9ydCBjb25zdCBSVUxFX1MzX1dFQlNJVEVfUkVHSU9OQUxfU1VCRE9NQUlOID0gYCR7UlVMRV99UzNfV0VCU0lURV9SRUdJT05BTF9TVUJET01BSU5gO1xuXG4vKipcbiAqIExpc3Qgb2YgQVdTIHJlZ2lvbiwgb3JkZXJlZCBieSBsYXVuY2ggZGF0ZSAob2xkZXN0IHRvIG5ld2VzdClcbiAqXG4gKiBUaGUgc2lnbmlmaWNhbmNlIG9mIHRoaXMgaXMgdGhhdCBzdGFuZGFyZHMgYW5kIGNvbnZlbnRpb25zIGNoYW5nZSBvdmVyIHRpbWUuXG4gKiBHZW5lcmFsbHksIGFzIHJ1bGVzIGFyZSBjaGFuZ2VkIHRoZXkgb25seSBhcHBseSB0byBuZXcgcmVnaW9ucywgYW5kIG9sZFxuICogcmVnaW9ucyBhcmUgbGVmdCBhcy1pcy5cbiAqXG4gKiBXZSBtaXggdGhlIGxpc3Qgb2YgcmVnaW9ucyB3aXRoIGEgbGlzdCBvZiBydWxlcyB0aGF0IHdlcmUgaW50cm9kdWNlZCBvdmVyXG4gKiB0aW1lIChydWxlcyBhcmUgc3RyaW5ncyBzdGFydGluZyB3aXRoIGBSVUxFX2ApLlxuICpcbiAqIFRoZXJlZm9yZSwgaWYgd2Ugd2FudCB0byBrbm93IGlmIGEgcnVsZSBhcHBsaWVzIHRvIGEgY2VydGFpbiByZWdpb24sIHdlXG4gKiBvbmx5IG5lZWQgdG8gY2hlY2sgaXRzIHBvc2l0aW9uIGluIHRoZSBsaXN0IGFuZCBjb21wYXJlIGl0IHRvIHdoZW4gYVxuICogcnVsZSB3YXMgaW50cm9kdWNlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IEFXU19SRUdJT05TX0FORF9SVUxFUyA9IFtcbiAgJ3VzLWVhc3QtMScsIC8vIFVTIEVhc3QgKE4uIFZpcmdpbmlhKVxuICAnZXUtd2VzdC0xJywgLy8gRXVyb3BlIChJcmVsYW5kKVxuICAndXMtd2VzdC0xJywgLy8gVVMgV2VzdCAoTi4gQ2FsaWZvcm5pYSlcbiAgJ2FwLXNvdXRoZWFzdC0xJywgLy8gQXNpYSBQYWNpZmljIChTaW5nYXBvcmUpXG4gICdhcC1ub3J0aGVhc3QtMScsIC8vIEFzaWEgUGFjaWZpYyAoVG9reW8pXG4gICd1cy1nb3Ytd2VzdC0xJywgLy8gQVdTIEdvdkNsb3VkIChVUy1XZXN0KVxuICAndXMtd2VzdC0yJywgLy8gVVMgV2VzdCAoT3JlZ29uKVxuICAnc2EtZWFzdC0xJywgLy8gU291dGggQW1lcmljYSAoU8OjbyBQYXVsbylcbiAgJ2FwLXNvdXRoZWFzdC0yJywgLy8gQXNpYSBQYWNpZmljIChTeWRuZXkpXG4gIFJVTEVfUzNfV0VCU0lURV9SRUdJT05BTF9TVUJET01BSU4sXG4gICdjbi1ub3J0aC0xJywgLy8gQ2hpbmEgKEJlaWppbmcpXG4gICd1cy1pc28tZWFzdC0xJywgLy8gQVdTIElTT1xuICAnZXUtY2VudHJhbC0xJywgLy8gRXVyb3BlIChGcmFua2Z1cnQpXG4gICdhcC1ub3J0aGVhc3QtMicsIC8vIEFzaWEgUGFjaWZpYyAoU2VvdWwpXG4gICdhcC1zb3V0aC0xJywgLy8gQXNpYSBQYWNpZmljIChNdW1iYWkpXG4gICd1cy1lYXN0LTInLCAvLyBVUyBFYXN0IChPaGlvKVxuICAnY2EtY2VudHJhbC0xJywgLy8gQ2FuYWRhIChDZW50cmFsKVxuICAnZXUtd2VzdC0yJywgLy8gRXVyb3BlIChMb25kb24pXG4gICd1cy1pc29iLWVhc3QtMScsIC8vIEFXUyBJU08tQlxuICAnY24tbm9ydGh3ZXN0LTEnLCAvLyBDaGluYSAoTmluZ3hpYSlcbiAgJ2V1LXdlc3QtMycsIC8vIEV1cm9wZSAoUGFyaXMpXG4gICdhcC1ub3J0aGVhc3QtMycsIC8vIEFzaWEgUGFjaWZpYyAoT3Nha2EpXG4gICd1cy1nb3YtZWFzdC0xJywgLy8gQVdTIEdvdkNsb3VkIChVUy1FYXN0KVxuICAnZXUtbm9ydGgtMScsIC8vIEV1cm9wZSAoU3RvY2tob2xtKVxuICBSVUxFX1NTTV9QUklOQ0lQQUxTX0FSRV9SRUdJT05BTCxcbiAgJ2FwLWVhc3QtMScsIC8vIEFzaWEgUGFjaWZpYyAoSG9uZyBLb25nKVxuICAnbWUtc291dGgtMScsIC8vIE1pZGRsZSBFYXN0IChCYWhyYWluKVxuICAnZXUtc291dGgtMScsIC8vIEV1cm9wZSAoTWlsYW4pXG4gICdhZi1zb3V0aC0xJywgLy8gQWZyaWNhIChDYXBlIFRvd24pXG4gICd1cy1pc28td2VzdC0xJywgLy8gVVMgSVNPIFdlc3RcbiAgJ2V1LXNvdXRoLTInLCAvLyBFdXJvcGUgKFNwYWluKVxuICAnYXAtc291dGhlYXN0LTMnLCAvLyBBc2lhIFBhY2lmaWMgKEpha2FydGEpXG5dO1xuXG4vKipcbiAqIFRoZSBuYW1lcyBvZiBhbGwgKGtub3duKSBBV1MgcmVnaW9uc1xuICpcbiAqIE5vdCBpbiB0aGUgbGlzdCA9PT4gbm8gYnVpbHQtaW4gZGF0YSBmb3IgdGhhdCByZWdpb24uXG4gKi9cbmV4cG9ydCBjb25zdCBBV1NfUkVHSU9OUyA9IEFXU19SRUdJT05TX0FORF9SVUxFU1xuICAuZmlsdGVyKCh4KSA9PiAheC5zdGFydHNXaXRoKFJVTEVfKSlcbiAgLnNvcnQoKTtcblxuLyoqXG4gKiBQb3NzaWJseSBub24tZXhhdXN0aXZlIGxpc3Qgb2YgYWxsIHNlcnZpY2UgbmFtZXMsIHVzZWQgdG8gbG9jYXRlIHNlcnZpY2UgcHJpbmNpcGFscy5cbiAqXG4gKiBOb3QgaW4gdGhlIGxpc3QgPT0+IGRlZmF1bHQgc2VydmljZSBwcmluY2lwYWwgbWFwcGluZ3MuXG4gKi9cbmV4cG9ydCBjb25zdCBBV1NfU0VSVklDRVMgPSBbXG4gICdhcHBsaWNhdGlvbi1hdXRvc2NhbGluZycsXG4gICdhdXRvc2NhbGluZycsXG4gICdjb2RlZGVwbG95JyxcbiAgJ2VjMicsXG4gICdldmVudHMnLFxuICAnbGFtYmRhJyxcbiAgJ2xvZ3MnLFxuICAnczMnLFxuICAnc3NtJyxcbiAgJ3NucycsXG4gICdzcXMnLFxuICAnc3RhdGVzJyxcbl0uc29ydCgpO1xuXG4vKipcbiAqIFdoZXRoZXIgb3Igbm90IGEgcmVnaW9uIHByZWRhdGVzIGEgZ2l2ZW4gcnVsZSAob3IgcmVnaW9uKS5cbiAqXG4gKiBVbmtub3duIHJlZ2lvbiA9PiB3ZSBoYXZlIHRvIGFzc3VtZSBuby5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZShyZWdpb246IHN0cmluZywgcnVsZU9yUmVnaW9uOiBzdHJpbmcpIHtcbiAgY29uc3QgcnVsZUl4ID0gQVdTX1JFR0lPTlNfQU5EX1JVTEVTLmluZGV4T2YocnVsZU9yUmVnaW9uKTtcbiAgaWYgKHJ1bGVJeCA9PT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcnVsZTogJHtydWxlT3JSZWdpb259YCk7XG4gIH1cbiAgY29uc3QgcmVnaW9uSXggPSBBV1NfUkVHSU9OU19BTkRfUlVMRVMuaW5kZXhPZihyZWdpb24pO1xuICByZXR1cm4gcmVnaW9uSXggPT09IC0xID8gZmFsc2UgOiByZWdpb25JeCA8IHJ1bGVJeDtcbn1cblxuLyoqXG4gKiBSZXR1cm4gYWxsIHJlZ2lvbnMgYmVmb3JlIGEgZ2l2ZW4gcnVsZSB3YXMgaW50cm9kdWNlZCAob3IgcmVnaW9uKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaW9uc0JlZm9yZShydWxlT3JSZWdpb246IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgY29uc3QgcnVsZUl4ID0gQVdTX1JFR0lPTlNfQU5EX1JVTEVTLmluZGV4T2YocnVsZU9yUmVnaW9uKTtcbiAgaWYgKHJ1bGVJeCA9PT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcnVsZTogJHtydWxlT3JSZWdpb259YCk7XG4gIH1cbiAgcmV0dXJuIEFXU19SRUdJT05TX0FORF9SVUxFUy5maWx0ZXIoKF8sIGkpID0+IGkgPCBydWxlSXgpLnNvcnQoKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWdpb24geyBwYXJ0aXRpb246IHN0cmluZywgZG9tYWluU3VmZml4OiBzdHJpbmcgfVxuXG5jb25zdCBQQVJUSVRJT05fTUFQOiB7IFtyZWdpb246IHN0cmluZ106IFJlZ2lvbiB9ID0ge1xuICAnZGVmYXVsdCc6IHsgcGFydGl0aW9uOiAnYXdzJywgZG9tYWluU3VmZml4OiAnYW1hem9uYXdzLmNvbScgfSxcbiAgJ2NuLSc6IHsgcGFydGl0aW9uOiAnYXdzLWNuJywgZG9tYWluU3VmZml4OiAnYW1hem9uYXdzLmNvbS5jbicgfSxcbiAgJ3VzLWdvdi0nOiB7IHBhcnRpdGlvbjogJ2F3cy11cy1nb3YnLCBkb21haW5TdWZmaXg6ICdhbWF6b25hd3MuY29tJyB9LFxuICAndXMtaXNvLSc6IHsgcGFydGl0aW9uOiAnYXdzLWlzbycsIGRvbWFpblN1ZmZpeDogJ2Mycy5pYy5nb3YnIH0sXG4gICd1cy1pc29iLSc6IHsgcGFydGl0aW9uOiAnYXdzLWlzby1iJywgZG9tYWluU3VmZml4OiAnc2Mycy5zZ292LmdvdicgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJ0aXRpb25JbmZvcm1hdGlvbihyZWdpb246IHN0cmluZyk6IFJlZ2lvbiB7XG4gIGZvciAoY29uc3QgW3ByZWZpeCwgaW5mb10gb2YgT2JqZWN0LmVudHJpZXMoUEFSVElUSU9OX01BUCkpIHtcbiAgICBpZiAocmVnaW9uLnN0YXJ0c1dpdGgocHJlZml4KSkge1xuICAgICAgcmV0dXJuIGluZm87XG4gICAgfVxuICB9XG4gIHJldHVybiBQQVJUSVRJT05fTUFQLmRlZmF1bHQ7XG59XG5cbi8qKlxuICogQnVpbGQgYSBsb29rdXAgbWFwIGZvciBhbGwgcmVnaW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVSZWdpb25NYXAoY2I6IChyZWdpb246IHN0cmluZykgPT4gc3RyaW5nKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBmb3IgKGNvbnN0IHJlZ2lvbiBvZiBBV1NfUkVHSU9OUykge1xuICAgIHJldFtyZWdpb25dID0gY2IocmVnaW9uKTtcbiAgfVxuICByZXR1cm4gcmV0O1xufVxuIl19
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Built-in regional information, re-generated by `npm run build`.
3
3
  *
4
- * @generated 2021-12-01T09:48:12.605Z
4
+ * @generated 2022-01-06T10:08:34.247Z
5
5
  */
6
6
  export declare class BuiltIns {
7
7
  /**