@aws-sdk/middleware-sdk-rds 3.25.0 → 3.32.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,44 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.32.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.31.0...v3.32.0) (2021-09-17)
7
+
8
+ **Note:** Version bump only for package @aws-sdk/middleware-sdk-rds
9
+
10
+
11
+
12
+
13
+
14
+ # [3.31.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.30.0...v3.31.0) (2021-09-11)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **middleware-sdk-rds:** stop throw when source id key is optional ([#2770](https://github.com/aws/aws-sdk-js-v3/issues/2770)) ([299cbbb](https://github.com/aws/aws-sdk-js-v3/commit/299cbbbef934380cdf56c668cc8cd7eebb7f73e5))
20
+
21
+
22
+
23
+
24
+
25
+ # [3.30.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.29.0...v3.30.0) (2021-09-07)
26
+
27
+ **Note:** Version bump only for package @aws-sdk/middleware-sdk-rds
28
+
29
+
30
+
31
+
32
+
33
+ # [3.29.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.28.0...v3.29.0) (2021-09-02)
34
+
35
+
36
+ ### Bug Fixes
37
+
38
+ * **middleware-sdk-rds:** double encoding the presigned url ([#2711](https://github.com/aws/aws-sdk-js-v3/issues/2711)) ([8a271be](https://github.com/aws/aws-sdk-js-v3/commit/8a271be6ac94080010aa4c3567b6770a2eee5547))
39
+
40
+
41
+
42
+
43
+
6
44
  # [3.25.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.24.0...v3.25.0) (2021-08-05)
7
45
 
8
46
  **Note:** Version bump only for package @aws-sdk/middleware-sdk-rds
package/dist/cjs/index.js CHANGED
@@ -4,19 +4,13 @@ exports.getCrossRegionPresignedUrlPlugin = exports.crossRegionPresignedUrlMiddle
4
4
  const protocol_http_1 = require("@aws-sdk/protocol-http");
5
5
  const signature_v4_1 = require("@aws-sdk/signature-v4");
6
6
  const util_format_url_1 = require("@aws-sdk/util-format-url");
7
- const util_uri_escape_1 = require("@aws-sdk/util-uri-escape");
8
7
  const regARN = /arn:[\w+=/,.@-]+:[\w+=/,.@-]+:([\w+=/,.@-]*)?:[0-9]+:[\w+=/,.@-]+(:[\w+=/,.@-]+)?(:[\w+=/,.@-]+)?/;
9
- const sourceIds = [
10
- "SourceDBSnapshotIdentifier",
11
- "SourceDBInstanceIdentifier",
12
- "ReplicationSourceIdentifier",
13
- "SourceDBClusterSnapshotIdentifier",
14
- ];
15
8
  const sourceIdToCommandKeyMap = {
16
9
  SourceDBSnapshotIdentifier: "CopyDBSnapshot",
17
10
  SourceDBInstanceIdentifier: "CreateDBInstanceReadReplica",
18
11
  ReplicationSourceIdentifier: "CreateDBCluster",
19
12
  SourceDBClusterSnapshotIdentifier: "CopyDBClusterSnapshot",
13
+ SourceDBInstanceArn: "StartDBInstanceAutomatedBackupsReplication",
20
14
  };
21
15
  const version = "2014-10-31";
22
16
  /**
@@ -27,18 +21,13 @@ function crossRegionPresignedUrlMiddleware(options) {
27
21
  return (next) => async (args) => {
28
22
  const { input } = args;
29
23
  const region = await options.region();
30
- let command, sourceId;
31
- for (const id of sourceIds) {
32
- if (input.hasOwnProperty(id)) {
33
- sourceId = id;
34
- command = sourceIdToCommandKeyMap[id];
35
- }
36
- }
37
- if (!sourceId) {
38
- throw new Error("Source identifier key not set");
39
- }
40
- if (!input.PreSignedUrl && isARN(input[sourceId]) && region !== getEndpointFromARN(input[sourceId])) {
41
- const sourceRegion = getEndpointFromARN(input[sourceId]);
24
+ const sourceIdKey = Object.keys(sourceIdToCommandKeyMap).filter((sourceKeyId) => input.hasOwnProperty(sourceKeyId))[0];
25
+ // Source id is optional.
26
+ if (!sourceIdKey)
27
+ return next(args);
28
+ const command = sourceIdToCommandKeyMap[sourceIdKey];
29
+ if (!input.PreSignedUrl && isARN(input[sourceIdKey]) && region !== getEndpointFromARN(input[sourceIdKey])) {
30
+ const sourceRegion = getEndpointFromARN(input[sourceIdKey]);
42
31
  const resolvedEndpoint = await options.endpoint();
43
32
  resolvedEndpoint.hostname = `rds.${sourceRegion}.amazonaws.com`;
44
33
  const request = new protocol_http_1.HttpRequest({
@@ -52,7 +41,7 @@ function crossRegionPresignedUrlMiddleware(options) {
52
41
  Version: version,
53
42
  KmsKeyId: input.KmsKeyId,
54
43
  DestinationRegion: region,
55
- [sourceId]: input[sourceId],
44
+ [sourceIdKey]: input[sourceIdKey],
56
45
  },
57
46
  });
58
47
  const signer = new signature_v4_1.SignatureV4({
@@ -69,7 +58,7 @@ function crossRegionPresignedUrlMiddleware(options) {
69
58
  ...args,
70
59
  input: {
71
60
  ...args.input,
72
- PreSignedUrl: util_uri_escape_1.escapeUri(util_format_url_1.formatUrl(presignedRequest)),
61
+ PreSignedUrl: util_format_url_1.formatUrl(presignedRequest),
73
62
  },
74
63
  };
75
64
  }
@@ -101,4 +90,4 @@ function getEndpointFromARN(arn) {
101
90
  }
102
91
  return arnArr[3];
103
92
  }
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMERBQXFEO0FBQ3JELHdEQUFvRDtBQWNwRCw4REFBcUQ7QUFDckQsOERBQXFEO0FBRXJELE1BQU0sTUFBTSxHQUFHLG1HQUFtRyxDQUFDO0FBRW5ILE1BQU0sU0FBUyxHQUFhO0lBQzFCLDRCQUE0QjtJQUM1Qiw0QkFBNEI7SUFDNUIsNkJBQTZCO0lBQzdCLG1DQUFtQztDQUNwQyxDQUFDO0FBRUYsTUFBTSx1QkFBdUIsR0FBOEI7SUFDekQsMEJBQTBCLEVBQUUsZ0JBQWdCO0lBQzVDLDBCQUEwQixFQUFFLDZCQUE2QjtJQUN6RCwyQkFBMkIsRUFBRSxpQkFBaUI7SUFDOUMsaUNBQWlDLEVBQUUsdUJBQXVCO0NBQzNELENBQUM7QUFFRixNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUM7QUFVN0I7OztHQUdHO0FBRUgsU0FBZ0IsaUNBQWlDLENBQUMsT0FBMkI7SUFDM0UsT0FBTyxDQUFnQyxJQUFvQyxFQUFrQyxFQUFFLENBQzdHLEtBQUssRUFBRSxJQUFxQyxFQUE0QyxFQUFFO1FBQ3hGLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDdkIsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDdEMsSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDO1FBQ3RCLEtBQUssTUFBTSxFQUFFLElBQUksU0FBUyxFQUFFO1lBQzFCLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDNUIsUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDZCxPQUFPLEdBQUcsdUJBQXVCLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDdkM7U0FDRjtRQUNELElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDYixNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7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QyxDQUFDLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBSZXF1ZXN0IH0gZnJvbSBcIkBhd3Mtc2RrL3Byb3RvY29sLWh0dHBcIjtcbmltcG9ydCB7IFNpZ25hdHVyZVY0IH0gZnJvbSBcIkBhd3Mtc2RrL3NpZ25hdHVyZS12NFwiO1xuaW1wb3J0IHtcbiAgQ3JlZGVudGlhbHMsXG4gIEVuZHBvaW50LFxuICBIYXNoQ29uc3RydWN0b3IsXG4gIEluaXRpYWxpemVIYW5kbGVyLFxuICBJbml0aWFsaXplSGFuZGxlckFyZ3VtZW50cyxcbiAgSW5pdGlhbGl6ZUhhbmRsZXJPcHRpb25zLFxuICBJbml0aWFsaXplSGFuZGxlck91dHB1dCxcbiAgSW5pdGlhbGl6ZU1pZGRsZXdhcmUsXG4gIE1ldGFkYXRhQmVhcmVyLFxuICBQbHVnZ2FibGUsXG4gIFByb3ZpZGVyLFxufSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IGZvcm1hdFVybCB9IGZyb20gXCJAYXdzLXNkay91dGlsLWZvcm1hdC11cmxcIjtcbmltcG9ydCB7IGVzY2FwZVVyaSB9IGZyb20gXCJAYXdzLXNkay91dGlsLXVyaS1lc2NhcGVcIjtcblxuY29uc3QgcmVnQVJOID0gL2FybjpbXFx3Kz0vLC5ALV0rOltcXHcrPS8sLkAtXSs6KFtcXHcrPS8sLkAtXSopPzpbMC05XSs6W1xcdys9LywuQC1dKyg6W1xcdys9LywuQC1dKyk/KDpbXFx3Kz0vLC5ALV0rKT8vO1xuXG5jb25zdCBzb3VyY2VJZHM6IHN0cmluZ1tdID0gW1xuICBcIlNvdXJjZURCU25hcHNob3RJZGVudGlmaWVyXCIsXG4gIFwiU291cmNlREJJbnN0YW5jZUlkZW50aWZpZXJcIixcbiAgXCJSZXBsaWNhdGlvblNvdXJjZUlkZW50aWZpZXJcIixcbiAgXCJTb3VyY2VEQkNsdXN0ZXJTbmFwc2hvdElkZW50aWZpZXJcIixcbl07XG5cbmNvbnN0IHNvdXJjZUlkVG9Db21tYW5kS2V5TWFwOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICBTb3VyY2VEQlNuYXBzaG90SWRlbnRpZmllcjogXCJDb3B5REJTbmFwc2hvdFwiLFxuICBTb3VyY2VEQkluc3RhbmNlSWRlbnRpZmllcjogXCJDcmVhdGVEQkluc3RhbmNlUmVhZFJlcGxpY2FcIixcbiAgUmVwbGljYXRpb25Tb3VyY2VJZGVudGlmaWVyOiBcIkNyZWF0ZURCQ2x1c3RlclwiLFxuICBTb3VyY2VEQkNsdXN0ZXJTbmFwc2hvdElkZW50aWZpZXI6IFwiQ29weURCQ2x1c3RlclNuYXBzaG90XCIsXG59O1xuXG5jb25zdCB2ZXJzaW9uID0gXCIyMDE0LTEwLTMxXCI7XG5cbmludGVyZmFjZSBQcmV2aW91c2x5UmVzb2x2ZWQge1xuICBjcmVkZW50aWFsczogUHJvdmlkZXI8Q3JlZGVudGlhbHM+O1xuICBlbmRwb2ludDogUHJvdmlkZXI8RW5kcG9pbnQ+O1xuICByZWdpb246IFByb3ZpZGVyPHN0cmluZz47XG4gIHNoYTI1NjogSGFzaENvbnN0cnVjdG9yO1xuICBzaWduaW5nRXNjYXBlUGF0aDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb25maWcgb2YgdGhlIG1pZGRsZXdhcmUgdG8gYXV0b21hdGljYWxseSBhZGQgcHJlc2lnbmVkIFVSTCB0byByZXF1ZXN0LlxuICogVGhlIHByZXNpZ25lZCBVUkwgaXMgZ2VuZXJhdGVkIGJ5IHNpZ1Y0XG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIGNyb3NzUmVnaW9uUHJlc2lnbmVkVXJsTWlkZGxld2FyZShvcHRpb25zOiBQcmV2aW91c2x5UmVzb2x2ZWQpOiBJbml0aWFsaXplTWlkZGxld2FyZTxhbnksIGFueT4ge1xuICByZXR1cm4gPE91dHB1dCBleHRlbmRzIE1ldGFkYXRhQmVhcmVyPihuZXh0OiBJbml0aWFsaXplSGFuZGxlcjxhbnksIE91dHB1dD4pOiBJbml0aWFsaXplSGFuZGxlcjxhbnksIE91dHB1dD4gPT5cbiAgICBhc3luYyAoYXJnczogSW5pdGlhbGl6ZUhhbmRsZXJBcmd1bWVudHM8YW55Pik6IFByb21pc2U8SW5pdGlhbGl6ZUhhbmRsZXJPdXRwdXQ8T3V0cHV0Pj4gPT4ge1xuICAgICAgY29uc3QgeyBpbnB1dCB9ID0gYXJncztcbiAgICAgIGNvbnN0IHJlZ2lvbiA9IGF3YWl0IG9wdGlvbnMucmVnaW9uKCk7XG4gICAgICBsZXQgY29tbWFuZCwgc291cmNlSWQ7XG4gICAgICBmb3IgKGNvbnN0IGlkIG9mIHNvdXJjZUlkcykge1xuICAgICAgICBpZiAoaW5wdXQuaGFzT3duUHJvcGVydHkoaWQpKSB7XG4gICAgICAgICAgc291cmNlSWQgPSBpZDtcbiAgICAgICAgICBjb21tYW5kID0gc291cmNlSWRUb0NvbW1hbmRLZXlNYXBbaWRdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIXNvdXJjZUlkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIlNvdXJjZSBpZGVudGlmaWVyIGtleSBub3Qgc2V0XCIpO1xuICAgICAgfVxuICAgICAgaWYgKCFpbnB1dC5QcmVTaWduZWRVcmwgJiYgaXNBUk4oaW5wdXRbc291cmNlSWRdKSAmJiByZWdpb24gIT09IGdldEVuZHBvaW50RnJvbUFSTihpbnB1dFtzb3VyY2VJZF0pKSB7XG4gICAgICAgIGNvbnN0IHNvdXJjZVJlZ2lvbiA9IGdldEVuZHBvaW50RnJvbUFSTihpbnB1dFtzb3VyY2VJZF0pO1xuICAgICAgICBjb25zdCByZXNvbHZlZEVuZHBvaW50ID0gYXdhaXQgb3B0aW9ucy5lbmRwb2ludCgpO1xuICAgICAgICByZXNvbHZlZEVuZHBvaW50Lmhvc3RuYW1lID0gYHJkcy4ke3NvdXJjZVJlZ2lvbn0uYW1hem9uYXdzLmNvbWA7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSBuZXcgSHR0cFJlcXVlc3Qoe1xuICAgICAgICAgIC4uLnJlc29sdmVkRW5kcG9pbnQsXG4gICAgICAgICAgcHJvdG9jb2w6IFwiaHR0cHNcIixcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICBob3N0OiByZXNvbHZlZEVuZHBvaW50Lmhvc3RuYW1lLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcXVlcnk6IHtcbiAgICAgICAgICAgIEFjdGlvbjogY29tbWFuZCxcbiAgICAgICAgICAgIFZlcnNpb246IHZlcnNpb24sXG4gICAgICAgICAgICBLbXNLZXlJZDogaW5wdXQuS21zS2V5SWQsXG4gICAgICAgICAgICBEZXN0aW5hdGlvblJlZ2lvbjogcmVnaW9uLFxuICAgICAgICAgICAgW3NvdXJjZUlkXTogaW5wdXRbc291cmNlSWRdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBzaWduZXIgPSBuZXcgU2lnbmF0dXJlVjQoe1xuICAgICAgICAgIGNyZWRlbnRpYWxzOiBvcHRpb25zLmNyZWRlbnRpYWxzLFxuICAgICAgICAgIHJlZ2lvbjogc291cmNlUmVnaW9uLFxuICAgICAgICAgIHNlcnZpY2U6IFwicmRzXCIsXG4gICAgICAgICAgc2hhMjU2OiBvcHRpb25zLnNoYTI1NixcbiAgICAgICAgICB1cmlFc2NhcGVQYXRoOiBvcHRpb25zLnNpZ25pbmdFc2NhcGVQYXRoLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcHJlc2lnbmVkUmVxdWVzdCA9IGF3YWl0IHNpZ25lci5wcmVzaWduKHJlcXVlc3QsIHtcbiAgICAgICAgICBleHBpcmVzSW46IDM2MDAsXG4gICAgICAgIH0pO1xuICAgICAgICBhcmdzID0ge1xuICAgICAgICAgIC4uLmFyZ3MsXG4gICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgIC4uLmFyZ3MuaW5wdXQsXG4gICAgICAgICAgICBQcmVTaWduZWRVcmw6IGVzY2FwZVVyaShmb3JtYXRVcmwocHJlc2lnbmVkUmVxdWVzdCkpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV4dChhcmdzKTtcbiAgICB9O1xufVxuXG5leHBvcnQgY29uc3QgY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlT3B0aW9uczogSW5pdGlhbGl6ZUhhbmRsZXJPcHRpb25zID0ge1xuICBzdGVwOiBcImluaXRpYWxpemVcIixcbiAgdGFnczogW1wiQ1JPU1NfUkVHSU9OX1BSRVNJR05FRF9VUkxcIl0sXG4gIG5hbWU6IFwiY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlXCIsXG4gIG92ZXJyaWRlOiB0cnVlLFxufTtcblxuZXhwb3J0IGNvbnN0IGdldENyb3NzUmVnaW9uUHJlc2lnbmVkVXJsUGx1Z2luID0gKGNvbmZpZzogUHJldmlvdXNseVJlc29sdmVkKTogUGx1Z2dhYmxlPGFueSwgYW55PiA9PiAoe1xuICBhcHBseVRvU3RhY2s6IChjbGllbnRTdGFjaykgPT4ge1xuICAgIGNsaWVudFN0YWNrLmFkZChjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmUoY29uZmlnKSwgY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlT3B0aW9ucyk7XG4gIH0sXG59KTtcblxuZnVuY3Rpb24gaXNBUk4oaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICBpZiAoIWlkKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiByZWdBUk4udGVzdChpZCk7XG59XG5cbmZ1bmN0aW9uIGdldEVuZHBvaW50RnJvbUFSTihhcm46IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGFybkFyciA9IGFybi5zcGxpdChcIjpcIik7XG4gIGlmIChhcm5BcnIubGVuZ3RoIDwgNCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGluZmVyIGVuZHBvaW50IGZyb20gJyR7YXJufSdgKTtcbiAgfVxuICByZXR1cm4gYXJuQXJyWzNdO1xufVxuIl19
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMERBQXFEO0FBQ3JELHdEQUFvRDtBQWNwRCw4REFBcUQ7QUFFckQsTUFBTSxNQUFNLEdBQUcsbUdBQW1HLENBQUM7QUFFbkgsTUFBTSx1QkFBdUIsR0FBOEI7SUFDekQsMEJBQTBCLEVBQUUsZ0JBQWdCO0lBQzVDLDBCQUEwQixFQUFFLDZCQUE2QjtJQUN6RCwyQkFBMkIsRUFBRSxpQkFBaUI7SUFDOUMsaUNBQWlDLEVBQUUsdUJBQXVCO0lBQzFELG1CQUFtQixFQUFFLDRDQUE0QztDQUNsRSxDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDO0FBVTdCOzs7R0FHRztBQUNILFNBQWdCLGlDQUFpQyxDQUFDLE9BQTJCO0lBQzNFLE9BQU8sQ0FBZ0MsSUFBb0MsRUFBa0MsRUFBRSxDQUM3RyxLQUFLLEVBQUUsSUFBcUMsRUFBNEMsRUFBRTtRQUN4RixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUM5RSxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUNsQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ0wseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxXQUFXO1lBQUUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEMsTUFBTSxPQUFPLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMs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Y29sLWh0dHBcIjtcbmltcG9ydCB7IFNpZ25hdHVyZVY0IH0gZnJvbSBcIkBhd3Mtc2RrL3NpZ25hdHVyZS12NFwiO1xuaW1wb3J0IHtcbiAgQ3JlZGVudGlhbHMsXG4gIEVuZHBvaW50LFxuICBIYXNoQ29uc3RydWN0b3IsXG4gIEluaXRpYWxpemVIYW5kbGVyLFxuICBJbml0aWFsaXplSGFuZGxlckFyZ3VtZW50cyxcbiAgSW5pdGlhbGl6ZUhhbmRsZXJPcHRpb25zLFxuICBJbml0aWFsaXplSGFuZGxlck91dHB1dCxcbiAgSW5pdGlhbGl6ZU1pZGRsZXdhcmUsXG4gIE1ldGFkYXRhQmVhcmVyLFxuICBQbHVnZ2FibGUsXG4gIFByb3ZpZGVyLFxufSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IGZvcm1hdFVybCB9IGZyb20gXCJAYXdzLXNkay91dGlsLWZvcm1hdC11cmxcIjtcblxuY29uc3QgcmVnQVJOID0gL2FybjpbXFx3Kz0vLC5ALV0rOltcXHcrPS8sLkAtXSs6KFtcXHcrPS8sLkAtXSopPzpbMC05XSs6W1xcdys9LywuQC1dKyg6W1xcdys9LywuQC1dKyk/KDpbXFx3Kz0vLC5ALV0rKT8vO1xuXG5jb25zdCBzb3VyY2VJZFRvQ29tbWFuZEtleU1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgU291cmNlREJTbmFwc2hvdElkZW50aWZpZXI6IFwiQ29weURCU25hcHNob3RcIixcbiAgU291cmNlREJJbnN0YW5jZUlkZW50aWZpZXI6IFwiQ3JlYXRlREJJbnN0YW5jZVJlYWRSZXBsaWNhXCIsXG4gIFJlcGxpY2F0aW9uU291cmNlSWRlbnRpZmllcjogXCJDcmVhdGVEQkNsdXN0ZXJcIiwgLy8gVGhpcyBrZXkgaXMgb3B0aW9uYWwuXG4gIFNvdXJjZURCQ2x1c3RlclNuYXBzaG90SWRlbnRpZmllcjogXCJDb3B5REJDbHVzdGVyU25hcHNob3RcIixcbiAgU291cmNlREJJbnN0YW5jZUFybjogXCJTdGFydERCSW5zdGFuY2VBdXRvbWF0ZWRCYWNrdXBzUmVwbGljYXRpb25cIixcbn07XG5cbmNvbnN0IHZlcnNpb24gPSBcIjIwMTQtMTAtMzFcIjtcblxuaW50ZXJmYWNlIFByZXZpb3VzbHlSZXNvbHZlZCB7XG4gIGNyZWRlbnRpYWxzOiBQcm92aWRlcjxDcmVkZW50aWFscz47XG4gIGVuZHBvaW50OiBQcm92aWRlcjxFbmRwb2ludD47XG4gIHJlZ2lvbjogUHJvdmlkZXI8c3RyaW5nPjtcbiAgc2hhMjU2OiBIYXNoQ29uc3RydWN0b3I7XG4gIHNpZ25pbmdFc2NhcGVQYXRoOiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZyBvZiB0aGUgbWlkZGxld2FyZSB0byBhdXRvbWF0aWNhbGx5IGFkZCBwcmVzaWduZWQgVVJMIHRvIHJlcXVlc3QuXG4gKiBUaGUgcHJlc2lnbmVkIFVSTCBpcyBnZW5lcmF0ZWQgYnkgc2lnVjRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyb3NzUmVnaW9uUHJlc2lnbmVkVXJsTWlkZGxld2FyZShvcHRpb25zOiBQcmV2aW91c2x5UmVzb2x2ZWQpOiBJbml0aWFsaXplTWlkZGxld2FyZTxhbnksIGFueT4ge1xuICByZXR1cm4gPE91dHB1dCBleHRlbmRzIE1ldGFkYXRhQmVhcmVyPihuZXh0OiBJbml0aWFsaXplSGFuZGxlcjxhbnksIE91dHB1dD4pOiBJbml0aWFsaXplSGFuZGxlcjxhbnksIE91dHB1dD4gPT5cbiAgICBhc3luYyAoYXJnczogSW5pdGlhbGl6ZUhhbmRsZXJBcmd1bWVudHM8YW55Pik6IFByb21pc2U8SW5pdGlhbGl6ZUhhbmRsZXJPdXRwdXQ8T3V0cHV0Pj4gPT4ge1xuICAgICAgY29uc3QgeyBpbnB1dCB9ID0gYXJncztcbiAgICAgIGNvbnN0IHJlZ2lvbiA9IGF3YWl0IG9wdGlvbnMucmVnaW9uKCk7XG4gICAgICBjb25zdCBzb3VyY2VJZEtleSA9IE9iamVjdC5rZXlzKHNvdXJjZUlkVG9Db21tYW5kS2V5TWFwKS5maWx0ZXIoKHNvdXJjZUtleUlkKSA9PlxuICAgICAgICBpbnB1dC5oYXNPd25Qcm9wZXJ0eShzb3VyY2VLZXlJZClcbiAgICAgIClbMF07XG4gICAgICAvLyBTb3VyY2UgaWQgaXMgb3B0aW9uYWwuXG4gICAgICBpZiAoIXNvdXJjZUlkS2V5KSByZXR1cm4gbmV4dChhcmdzKTtcblxuICAgICAgY29uc3QgY29tbWFuZCA9IHNvdXJjZUlkVG9Db21tYW5kS2V5TWFwW3NvdXJjZUlkS2V5XTtcbiAgICAgIGlmICghaW5wdXQuUHJlU2lnbmVkVXJsICYmIGlzQVJOKGlucHV0W3NvdXJjZUlkS2V5XSkgJiYgcmVnaW9uICE9PSBnZXRFbmRwb2ludEZyb21BUk4oaW5wdXRbc291cmNlSWRLZXldKSkge1xuICAgICAgICBjb25zdCBzb3VyY2VSZWdpb24gPSBnZXRFbmRwb2ludEZyb21BUk4oaW5wdXRbc291cmNlSWRLZXldKTtcbiAgICAgICAgY29uc3QgcmVzb2x2ZWRFbmRwb2ludCA9IGF3YWl0IG9wdGlvbnMuZW5kcG9pbnQoKTtcbiAgICAgICAgcmVzb2x2ZWRFbmRwb2ludC5ob3N0bmFtZSA9IGByZHMuJHtzb3VyY2VSZWdpb259LmFtYXpvbmF3cy5jb21gO1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gbmV3IEh0dHBSZXF1ZXN0KHtcbiAgICAgICAgICAuLi5yZXNvbHZlZEVuZHBvaW50LFxuICAgICAgICAgIHByb3RvY29sOiBcImh0dHBzXCIsXG4gICAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICAgaG9zdDogcmVzb2x2ZWRFbmRwb2ludC5ob3N0bmFtZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHF1ZXJ5OiB7XG4gICAgICAgICAgICBBY3Rpb246IGNvbW1hbmQsXG4gICAgICAgICAgICBWZXJzaW9uOiB2ZXJzaW9uLFxuICAgICAgICAgICAgS21zS2V5SWQ6IGlucHV0Lkttc0tleUlkLFxuICAgICAgICAgICAgRGVzdGluYXRpb25SZWdpb246IHJlZ2lvbixcbiAgICAgICAgICAgIFtzb3VyY2VJZEtleV06IGlucHV0W3NvdXJjZUlkS2V5XSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3Qgc2lnbmVyID0gbmV3IFNpZ25hdHVyZVY0KHtcbiAgICAgICAgICBjcmVkZW50aWFsczogb3B0aW9ucy5jcmVkZW50aWFscyxcbiAgICAgICAgICByZWdpb246IHNvdXJjZVJlZ2lvbixcbiAgICAgICAgICBzZXJ2aWNlOiBcInJkc1wiLFxuICAgICAgICAgIHNoYTI1Njogb3B0aW9ucy5zaGEyNTYsXG4gICAgICAgICAgdXJpRXNjYXBlUGF0aDogb3B0aW9ucy5zaWduaW5nRXNjYXBlUGF0aCxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHByZXNpZ25lZFJlcXVlc3QgPSBhd2FpdCBzaWduZXIucHJlc2lnbihyZXF1ZXN0LCB7XG4gICAgICAgICAgZXhwaXJlc0luOiAzNjAwLFxuICAgICAgICB9KTtcbiAgICAgICAgYXJncyA9IHtcbiAgICAgICAgICAuLi5hcmdzLFxuICAgICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgICAuLi5hcmdzLmlucHV0LFxuICAgICAgICAgICAgUHJlU2lnbmVkVXJsOiBmb3JtYXRVcmwocHJlc2lnbmVkUmVxdWVzdCksXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXh0KGFyZ3MpO1xuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCBjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVPcHRpb25zOiBJbml0aWFsaXplSGFuZGxlck9wdGlvbnMgPSB7XG4gIHN0ZXA6IFwiaW5pdGlhbGl6ZVwiLFxuICB0YWdzOiBbXCJDUk9TU19SRUdJT05fUFJFU0lHTkVEX1VSTFwiXSxcbiAgbmFtZTogXCJjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVcIixcbiAgb3ZlcnJpZGU6IHRydWUsXG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q3Jvc3NSZWdpb25QcmVzaWduZWRVcmxQbHVnaW4gPSAoY29uZmlnOiBQcmV2aW91c2x5UmVzb2x2ZWQpOiBQbHVnZ2FibGU8YW55LCBhbnk+ID0+ICh7XG4gIGFwcGx5VG9TdGFjazogKGNsaWVudFN0YWNrKSA9PiB7XG4gICAgY2xpZW50U3RhY2suYWRkKGNyb3NzUmVnaW9uUHJlc2lnbmVkVXJsTWlkZGxld2FyZShjb25maWcpLCBjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVPcHRpb25zKTtcbiAgfSxcbn0pO1xuXG5mdW5jdGlvbiBpc0FSTihpZDogc3RyaW5nIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gIGlmICghaWQpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHJlZ0FSTi50ZXN0KGlkKTtcbn1cblxuZnVuY3Rpb24gZ2V0RW5kcG9pbnRGcm9tQVJOKGFybjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgYXJuQXJyID0gYXJuLnNwbGl0KFwiOlwiKTtcbiAgaWYgKGFybkFyci5sZW5ndGggPCA0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgaW5mZXIgZW5kcG9pbnQgZnJvbSAnJHthcm59J2ApO1xuICB9XG4gIHJldHVybiBhcm5BcnJbM107XG59XG4iXX0=
package/dist/es/index.js CHANGED
@@ -1,20 +1,14 @@
1
- import { __assign, __awaiter, __generator, __values } from "tslib";
1
+ import { __assign, __awaiter, __generator } from "tslib";
2
2
  import { HttpRequest } from "@aws-sdk/protocol-http";
3
3
  import { SignatureV4 } from "@aws-sdk/signature-v4";
4
4
  import { formatUrl } from "@aws-sdk/util-format-url";
5
- import { escapeUri } from "@aws-sdk/util-uri-escape";
6
5
  var regARN = /arn:[\w+=/,.@-]+:[\w+=/,.@-]+:([\w+=/,.@-]*)?:[0-9]+:[\w+=/,.@-]+(:[\w+=/,.@-]+)?(:[\w+=/,.@-]+)?/;
7
- var sourceIds = [
8
- "SourceDBSnapshotIdentifier",
9
- "SourceDBInstanceIdentifier",
10
- "ReplicationSourceIdentifier",
11
- "SourceDBClusterSnapshotIdentifier",
12
- ];
13
6
  var sourceIdToCommandKeyMap = {
14
7
  SourceDBSnapshotIdentifier: "CopyDBSnapshot",
15
8
  SourceDBInstanceIdentifier: "CreateDBInstanceReadReplica",
16
9
  ReplicationSourceIdentifier: "CreateDBCluster",
17
10
  SourceDBClusterSnapshotIdentifier: "CopyDBClusterSnapshot",
11
+ SourceDBInstanceArn: "StartDBInstanceAutomatedBackupsReplication",
18
12
  };
19
13
  var version = "2014-10-31";
20
14
  /**
@@ -25,50 +19,38 @@ export function crossRegionPresignedUrlMiddleware(options) {
25
19
  var _this = this;
26
20
  return function (next) {
27
21
  return function (args) { return __awaiter(_this, void 0, void 0, function () {
28
- var input, region, command, sourceId, sourceIds_1, sourceIds_1_1, id, sourceRegion, resolvedEndpoint, request, signer, presignedRequest;
29
- var e_1, _a, _b;
30
- return __generator(this, function (_c) {
31
- switch (_c.label) {
22
+ var input, region, sourceIdKey, command, sourceRegion, resolvedEndpoint, request, signer, presignedRequest;
23
+ var _a;
24
+ return __generator(this, function (_b) {
25
+ switch (_b.label) {
32
26
  case 0:
33
27
  input = args.input;
34
28
  return [4 /*yield*/, options.region()];
35
29
  case 1:
36
- region = _c.sent();
37
- try {
38
- for (sourceIds_1 = __values(sourceIds), sourceIds_1_1 = sourceIds_1.next(); !sourceIds_1_1.done; sourceIds_1_1 = sourceIds_1.next()) {
39
- id = sourceIds_1_1.value;
40
- if (input.hasOwnProperty(id)) {
41
- sourceId = id;
42
- command = sourceIdToCommandKeyMap[id];
43
- }
44
- }
45
- }
46
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
47
- finally {
48
- try {
49
- if (sourceIds_1_1 && !sourceIds_1_1.done && (_a = sourceIds_1.return)) _a.call(sourceIds_1);
50
- }
51
- finally { if (e_1) throw e_1.error; }
52
- }
53
- if (!sourceId) {
54
- throw new Error("Source identifier key not set");
55
- }
56
- if (!(!input.PreSignedUrl && isARN(input[sourceId]) && region !== getEndpointFromARN(input[sourceId]))) return [3 /*break*/, 4];
57
- sourceRegion = getEndpointFromARN(input[sourceId]);
30
+ region = _b.sent();
31
+ sourceIdKey = Object.keys(sourceIdToCommandKeyMap).filter(function (sourceKeyId) {
32
+ return input.hasOwnProperty(sourceKeyId);
33
+ })[0];
34
+ // Source id is optional.
35
+ if (!sourceIdKey)
36
+ return [2 /*return*/, next(args)];
37
+ command = sourceIdToCommandKeyMap[sourceIdKey];
38
+ if (!(!input.PreSignedUrl && isARN(input[sourceIdKey]) && region !== getEndpointFromARN(input[sourceIdKey]))) return [3 /*break*/, 4];
39
+ sourceRegion = getEndpointFromARN(input[sourceIdKey]);
58
40
  return [4 /*yield*/, options.endpoint()];
59
41
  case 2:
60
- resolvedEndpoint = _c.sent();
42
+ resolvedEndpoint = _b.sent();
61
43
  resolvedEndpoint.hostname = "rds." + sourceRegion + ".amazonaws.com";
62
44
  request = new HttpRequest(__assign(__assign({}, resolvedEndpoint), { protocol: "https", headers: {
63
45
  host: resolvedEndpoint.hostname,
64
- }, query: (_b = {
46
+ }, query: (_a = {
65
47
  Action: command,
66
48
  Version: version,
67
49
  KmsKeyId: input.KmsKeyId,
68
50
  DestinationRegion: region
69
51
  },
70
- _b[sourceId] = input[sourceId],
71
- _b) }));
52
+ _a[sourceIdKey] = input[sourceIdKey],
53
+ _a) }));
72
54
  signer = new SignatureV4({
73
55
  credentials: options.credentials,
74
56
  region: sourceRegion,
@@ -80,9 +62,9 @@ export function crossRegionPresignedUrlMiddleware(options) {
80
62
  expiresIn: 3600,
81
63
  })];
82
64
  case 3:
83
- presignedRequest = _c.sent();
84
- args = __assign(__assign({}, args), { input: __assign(__assign({}, args.input), { PreSignedUrl: escapeUri(formatUrl(presignedRequest)) }) });
85
- _c.label = 4;
65
+ presignedRequest = _b.sent();
66
+ args = __assign(__assign({}, args), { input: __assign(__assign({}, args.input), { PreSignedUrl: formatUrl(presignedRequest) }) });
67
+ _b.label = 4;
86
68
  case 4: return [2 /*return*/, next(args)];
87
69
  }
88
70
  });
@@ -112,4 +94,4 @@ function getEndpointFromARN(arn) {
112
94
  }
113
95
  return arnArr[3];
114
96
  }
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFjcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVyRCxJQUFNLE1BQU0sR0FBRyxtR0FBbUcsQ0FBQztBQUVuSCxJQUFNLFNBQVMsR0FBYTtJQUMxQiw0QkFBNEI7SUFDNUIsNEJBQTRCO0lBQzVCLDZCQUE2QjtJQUM3QixtQ0FBbUM7Q0FDcEMsQ0FBQztBQUVGLElBQU0sdUJBQXVCLEdBQThCO0lBQ3pELDBCQUEwQixFQUFFLGdCQUFnQjtJQUM1QywwQkFBMEIsRUFBRSw2QkFBNkI7SUFDekQsMkJBQTJCLEVBQUUsaUJBQWlCO0lBQzlDLGlDQUFpQyxFQUFFLHVCQUF1QjtDQUMzRCxDQUFDO0FBRUYsSUFBTSxPQUFPLEdBQUcsWUFBWSxDQUFDO0FBVTdCOzs7R0FHRztBQUVILE1BQU0sVUFBVSxpQ0FBaUMsQ0FBQyxPQUEyQjtJQUE3RSxpQkFxREM7SUFwREMsT0FBTyxVQUFnQyxJQUFvQztRQUN6RSxPQUFBLFVBQU8sSUFBcUM7Ozs7Ozt3QkFDbEMsS0FBSyxHQUFLLElBQUksTUFBVCxDQUFVO3dCQUNSLHFCQUFNLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBQTs7d0JBQS9CLE1BQU0sR0FBRyxTQUFzQjs7NEJBRXJDLEtBQWlCLGNBQUEsU0FBQSxTQUFTLENBQUEsK0ZBQUU7Z0NBQWpCLEVBQUU7Z0NBQ1gsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29DQUM1QixRQUFRLEdBQUcsRUFBRSxDQUFDO29DQUNkLE9BQU8sR0FBRyx1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SSxLQUFLLENBQUMsaUNBQStCLEdBQUcsTUFBRyxDQUFDLENBQUM7S0FDeEQ7SUFDRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFJlcXVlc3QgfSBmcm9tIFwiQGF3cy1zZGsvcHJvdG9jb2wtaHR0cFwiO1xuaW1wb3J0IHsgU2lnbmF0dXJlVjQgfSBmcm9tIFwiQGF3cy1zZGsvc2lnbmF0dXJlLXY0XCI7XG5pbXBvcnQge1xuICBDcmVkZW50aWFscyxcbiAgRW5kcG9pbnQsXG4gIEhhc2hDb25zdHJ1Y3RvcixcbiAgSW5pdGlhbGl6ZUhhbmRsZXIsXG4gIEluaXRpYWxpemVIYW5kbGVyQXJndW1lbnRzLFxuICBJbml0aWFsaXplSGFuZGxlck9wdGlvbnMsXG4gIEluaXRpYWxpemVIYW5kbGVyT3V0cHV0LFxuICBJbml0aWFsaXplTWlkZGxld2FyZSxcbiAgTWV0YWRhdGFCZWFyZXIsXG4gIFBsdWdnYWJsZSxcbiAgUHJvdmlkZXIsXG59IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgZm9ybWF0VXJsIH0gZnJvbSBcIkBhd3Mtc2RrL3V0aWwtZm9ybWF0LXVybFwiO1xuaW1wb3J0IHsgZXNjYXBlVXJpIH0gZnJvbSBcIkBhd3Mtc2RrL3V0aWwtdXJpLWVzY2FwZVwiO1xuXG5jb25zdCByZWdBUk4gPSAvYXJuOltcXHcrPS8sLkAtXSs6W1xcdys9LywuQC1dKzooW1xcdys9LywuQC1dKik/OlswLTldKzpbXFx3Kz0vLC5ALV0rKDpbXFx3Kz0vLC5ALV0rKT8oOltcXHcrPS8sLkAtXSspPy87XG5cbmNvbnN0IHNvdXJjZUlkczogc3RyaW5nW10gPSBbXG4gIFwiU291cmNlREJTbmFwc2hvdElkZW50aWZpZXJcIixcbiAgXCJTb3VyY2VEQkluc3RhbmNlSWRlbnRpZmllclwiLFxuICBcIlJlcGxpY2F0aW9uU291cmNlSWRlbnRpZmllclwiLFxuICBcIlNvdXJjZURCQ2x1c3RlclNuYXBzaG90SWRlbnRpZmllclwiLFxuXTtcblxuY29uc3Qgc291cmNlSWRUb0NvbW1hbmRLZXlNYXA6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gIFNvdXJjZURCU25hcHNob3RJZGVudGlmaWVyOiBcIkNvcHlEQlNuYXBzaG90XCIsXG4gIFNvdXJjZURCSW5zdGFuY2VJZGVudGlmaWVyOiBcIkNyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYVwiLFxuICBSZXBsaWNhdGlvblNvdXJjZUlkZW50aWZpZXI6IFwiQ3JlYXRlREJDbHVzdGVyXCIsXG4gIFNvdXJjZURCQ2x1c3RlclNuYXBzaG90SWRlbnRpZmllcjogXCJDb3B5REJDbHVzdGVyU25hcHNob3RcIixcbn07XG5cbmNvbnN0IHZlcnNpb24gPSBcIjIwMTQtMTAtMzFcIjtcblxuaW50ZXJmYWNlIFByZXZpb3VzbHlSZXNvbHZlZCB7XG4gIGNyZWRlbnRpYWxzOiBQcm92aWRlcjxDcmVkZW50aWFscz47XG4gIGVuZHBvaW50OiBQcm92aWRlcjxFbmRwb2ludD47XG4gIHJlZ2lvbjogUHJvdmlkZXI8c3RyaW5nPjtcbiAgc2hhMjU2OiBIYXNoQ29uc3RydWN0b3I7XG4gIHNpZ25pbmdFc2NhcGVQYXRoOiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZyBvZiB0aGUgbWlkZGxld2FyZSB0byBhdXRvbWF0aWNhbGx5IGFkZCBwcmVzaWduZWQgVVJMIHRvIHJlcXVlc3QuXG4gKiBUaGUgcHJlc2lnbmVkIFVSTCBpcyBnZW5lcmF0ZWQgYnkgc2lnVjRcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlKG9wdGlvbnM6IFByZXZpb3VzbHlSZXNvbHZlZCk6IEluaXRpYWxpemVNaWRkbGV3YXJlPGFueSwgYW55PiB7XG4gIHJldHVybiA8T3V0cHV0IGV4dGVuZHMgTWV0YWRhdGFCZWFyZXI+KG5leHQ6IEluaXRpYWxpemVIYW5kbGVyPGFueSwgT3V0cHV0Pik6IEluaXRpYWxpemVIYW5kbGVyPGFueSwgT3V0cHV0PiA9PlxuICAgIGFzeW5jIChhcmdzOiBJbml0aWFsaXplSGFuZGxlckFyZ3VtZW50czxhbnk+KTogUHJvbWlzZTxJbml0aWFsaXplSGFuZGxlck91dHB1dDxPdXRwdXQ+PiA9PiB7XG4gICAgICBjb25zdCB7IGlucHV0IH0gPSBhcmdzO1xuICAgICAgY29uc3QgcmVnaW9uID0gYXdhaXQgb3B0aW9ucy5yZWdpb24oKTtcbiAgICAgIGxldCBjb21tYW5kLCBzb3VyY2VJZDtcbiAgICAgIGZvciAoY29uc3QgaWQgb2Ygc291cmNlSWRzKSB7XG4gICAgICAgIGlmIChpbnB1dC5oYXNPd25Qcm9wZXJ0eShpZCkpIHtcbiAgICAgICAgICBzb3VyY2VJZCA9IGlkO1xuICAgICAgICAgIGNvbW1hbmQgPSBzb3VyY2VJZFRvQ29tbWFuZEtleU1hcFtpZF07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICghc291cmNlSWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiU291cmNlIGlkZW50aWZpZXIga2V5IG5vdCBzZXRcIik7XG4gICAgICB9XG4gICAgICBpZiAoIWlucHV0LlByZVNpZ25lZFVybCAmJiBpc0FSTihpbnB1dFtzb3VyY2VJZF0pICYmIHJlZ2lvbiAhPT0gZ2V0RW5kcG9pbnRGcm9tQVJOKGlucHV0W3NvdXJjZUlkXSkpIHtcbiAgICAgICAgY29uc3Qgc291cmNlUmVnaW9uID0gZ2V0RW5kcG9pbnRGcm9tQVJOKGlucHV0W3NvdXJjZUlkXSk7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkRW5kcG9pbnQgPSBhd2FpdCBvcHRpb25zLmVuZHBvaW50KCk7XG4gICAgICAgIHJlc29sdmVkRW5kcG9pbnQuaG9zdG5hbWUgPSBgcmRzLiR7c291cmNlUmVnaW9ufS5hbWF6b25hd3MuY29tYDtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IG5ldyBIdHRwUmVxdWVzdCh7XG4gICAgICAgICAgLi4ucmVzb2x2ZWRFbmRwb2ludCxcbiAgICAgICAgICBwcm90b2NvbDogXCJodHRwc1wiLFxuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgIGhvc3Q6IHJlc29sdmVkRW5kcG9pbnQuaG9zdG5hbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBxdWVyeToge1xuICAgICAgICAgICAgQWN0aW9uOiBjb21tYW5kLFxuICAgICAgICAgICAgVmVyc2lvbjogdmVyc2lvbixcbiAgICAgICAgICAgIEttc0tleUlkOiBpbnB1dC5LbXNLZXlJZCxcbiAgICAgICAgICAgIERlc3RpbmF0aW9uUmVnaW9uOiByZWdpb24sXG4gICAgICAgICAgICBbc291cmNlSWRdOiBpbnB1dFtzb3VyY2VJZF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHNpZ25lciA9IG5ldyBTaWduYXR1cmVWNCh7XG4gICAgICAgICAgY3JlZGVudGlhbHM6IG9wdGlvbnMuY3JlZGVudGlhbHMsXG4gICAgICAgICAgcmVnaW9uOiBzb3VyY2VSZWdpb24sXG4gICAgICAgICAgc2VydmljZTogXCJyZHNcIixcbiAgICAgICAgICBzaGEyNTY6IG9wdGlvbnMuc2hhMjU2LFxuICAgICAgICAgIHVyaUVzY2FwZVBhdGg6IG9wdGlvbnMuc2lnbmluZ0VzY2FwZVBhdGgsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBwcmVzaWduZWRSZXF1ZXN0ID0gYXdhaXQgc2lnbmVyLnByZXNpZ24ocmVxdWVzdCwge1xuICAgICAgICAgIGV4cGlyZXNJbjogMzYwMCxcbiAgICAgICAgfSk7XG4gICAgICAgIGFyZ3MgPSB7XG4gICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgLi4uYXJncy5pbnB1dCxcbiAgICAgICAgICAgIFByZVNpZ25lZFVybDogZXNjYXBlVXJpKGZvcm1hdFVybChwcmVzaWduZWRSZXF1ZXN0KSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXh0KGFyZ3MpO1xuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCBjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVPcHRpb25zOiBJbml0aWFsaXplSGFuZGxlck9wdGlvbnMgPSB7XG4gIHN0ZXA6IFwiaW5pdGlhbGl6ZVwiLFxuICB0YWdzOiBbXCJDUk9TU19SRUdJT05fUFJFU0lHTkVEX1VSTFwiXSxcbiAgbmFtZTogXCJjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVcIixcbiAgb3ZlcnJpZGU6IHRydWUsXG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q3Jvc3NSZWdpb25QcmVzaWduZWRVcmxQbHVnaW4gPSAoY29uZmlnOiBQcmV2aW91c2x5UmVzb2x2ZWQpOiBQbHVnZ2FibGU8YW55LCBhbnk+ID0+ICh7XG4gIGFwcGx5VG9TdGFjazogKGNsaWVudFN0YWNrKSA9PiB7XG4gICAgY2xpZW50U3RhY2suYWRkKGNyb3NzUmVnaW9uUHJlc2lnbmVkVXJsTWlkZGxld2FyZShjb25maWcpLCBjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmVPcHRpb25zKTtcbiAgfSxcbn0pO1xuXG5mdW5jdGlvbiBpc0FSTihpZDogc3RyaW5nIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gIGlmICghaWQpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHJlZ0FSTi50ZXN0KGlkKTtcbn1cblxuZnVuY3Rpb24gZ2V0RW5kcG9pbnRGcm9tQVJOKGFybjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgYXJuQXJyID0gYXJuLnNwbGl0KFwiOlwiKTtcbiAgaWYgKGFybkFyci5sZW5ndGggPCA0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgaW5mZXIgZW5kcG9pbnQgZnJvbSAnJHthcm59J2ApO1xuICB9XG4gIHJldHVybiBhcm5BcnJbM107XG59XG4iXX0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFjcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJELElBQU0sTUFBTSxHQUFHLG1HQUFtRyxDQUFDO0FBRW5ILElBQU0sdUJBQXVCLEdBQThCO0lBQ3pELDBCQUEwQixFQUFFLGdCQUFnQjtJQUM1QywwQkFBMEIsRUFBRSw2QkFBNkI7SUFDekQsMkJBQTJCLEVBQUUsaUJBQWlCO0lBQzlDLGlDQUFpQyxFQUFFLHVCQUF1QjtJQUMxRCxtQkFBbUIsRUFBRSw0Q0FBNEM7Q0FDbEUsQ0FBQztBQUVGLElBQU0sT0FBTyxHQUFHLFlBQVksQ0FBQztBQVU3Qjs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsaUNBQWlDLENBQUMsT0FBMkI7SUFBN0UsaUJBa0RDO0lBakRDLE9BQU8sVUFBZ0MsSUFBb0M7UUFDekUsT0FBQSxVQUFPLElBQXFDOzs7Ozs7d0JBQ2xDLEtBQUssR0FBSyxJQUFJLE1BQVQsQ0FBVTt3QkFDUixxQkFBTSxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUE7O3dCQUEvQixNQUFNLEdBQUcsU0FBc0I7d0JBQy9CLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUMsTUFBTSxDQUFDLFVBQUMsV0FBVzs0QkFDMUUsT0FBQSxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQzt3QkFBakMsQ0FBaUMsQ0FDbEMsQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDTCx5QkFBeUI7d0JBQ3pCLElBQUksQ0FBQyxXQUFXOzRCQUFFLHNCQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQzt3QkFFOUIsT0FBTyxHQUFH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WyJpbXBvcnQgeyBIdHRwUmVxdWVzdCB9IGZyb20gXCJAYXdzLXNkay9wcm90b2NvbC1odHRwXCI7XG5pbXBvcnQgeyBTaWduYXR1cmVWNCB9IGZyb20gXCJAYXdzLXNkay9zaWduYXR1cmUtdjRcIjtcbmltcG9ydCB7XG4gIENyZWRlbnRpYWxzLFxuICBFbmRwb2ludCxcbiAgSGFzaENvbnN0cnVjdG9yLFxuICBJbml0aWFsaXplSGFuZGxlcixcbiAgSW5pdGlhbGl6ZUhhbmRsZXJBcmd1bWVudHMsXG4gIEluaXRpYWxpemVIYW5kbGVyT3B0aW9ucyxcbiAgSW5pdGlhbGl6ZUhhbmRsZXJPdXRwdXQsXG4gIEluaXRpYWxpemVNaWRkbGV3YXJlLFxuICBNZXRhZGF0YUJlYXJlcixcbiAgUGx1Z2dhYmxlLFxuICBQcm92aWRlcixcbn0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyBmb3JtYXRVcmwgfSBmcm9tIFwiQGF3cy1zZGsvdXRpbC1mb3JtYXQtdXJsXCI7XG5cbmNvbnN0IHJlZ0FSTiA9IC9hcm46W1xcdys9LywuQC1dKzpbXFx3Kz0vLC5ALV0rOihbXFx3Kz0vLC5ALV0qKT86WzAtOV0rOltcXHcrPS8sLkAtXSsoOltcXHcrPS8sLkAtXSspPyg6W1xcdys9LywuQC1dKyk/LztcblxuY29uc3Qgc291cmNlSWRUb0NvbW1hbmRLZXlNYXA6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gIFNvdXJjZURCU25hcHNob3RJZGVudGlmaWVyOiBcIkNvcHlEQlNuYXBzaG90XCIsXG4gIFNvdXJjZURCSW5zdGFuY2VJZGVudGlmaWVyOiBcIkNyZWF0ZURCSW5zdGFuY2VSZWFkUmVwbGljYVwiLFxuICBSZXBsaWNhdGlvblNvdXJjZUlkZW50aWZpZXI6IFwiQ3JlYXRlREJDbHVzdGVyXCIsIC8vIFRoaXMga2V5IGlzIG9wdGlvbmFsLlxuICBTb3VyY2VEQkNsdXN0ZXJTbmFwc2hvdElkZW50aWZpZXI6IFwiQ29weURCQ2x1c3RlclNuYXBzaG90XCIsXG4gIFNvdXJjZURCSW5zdGFuY2VBcm46IFwiU3RhcnREQkluc3RhbmNlQXV0b21hdGVkQmFja3Vwc1JlcGxpY2F0aW9uXCIsXG59O1xuXG5jb25zdCB2ZXJzaW9uID0gXCIyMDE0LTEwLTMxXCI7XG5cbmludGVyZmFjZSBQcmV2aW91c2x5UmVzb2x2ZWQge1xuICBjcmVkZW50aWFsczogUHJvdmlkZXI8Q3JlZGVudGlhbHM+O1xuICBlbmRwb2ludDogUHJvdmlkZXI8RW5kcG9pbnQ+O1xuICByZWdpb246IFByb3ZpZGVyPHN0cmluZz47XG4gIHNoYTI1NjogSGFzaENvbnN0cnVjdG9yO1xuICBzaWduaW5nRXNjYXBlUGF0aDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb25maWcgb2YgdGhlIG1pZGRsZXdhcmUgdG8gYXV0b21hdGljYWxseSBhZGQgcHJlc2lnbmVkIFVSTCB0byByZXF1ZXN0LlxuICogVGhlIHByZXNpZ25lZCBVUkwgaXMgZ2VuZXJhdGVkIGJ5IHNpZ1Y0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmUob3B0aW9uczogUHJldmlvdXNseVJlc29sdmVkKTogSW5pdGlhbGl6ZU1pZGRsZXdhcmU8YW55LCBhbnk+IHtcbiAgcmV0dXJuIDxPdXRwdXQgZXh0ZW5kcyBNZXRhZGF0YUJlYXJlcj4obmV4dDogSW5pdGlhbGl6ZUhhbmRsZXI8YW55LCBPdXRwdXQ+KTogSW5pdGlhbGl6ZUhhbmRsZXI8YW55LCBPdXRwdXQ+ID0+XG4gICAgYXN5bmMgKGFyZ3M6IEluaXRpYWxpemVIYW5kbGVyQXJndW1lbnRzPGFueT4pOiBQcm9taXNlPEluaXRpYWxpemVIYW5kbGVyT3V0cHV0PE91dHB1dD4+ID0+IHtcbiAgICAgIGNvbnN0IHsgaW5wdXQgfSA9IGFyZ3M7XG4gICAgICBjb25zdCByZWdpb24gPSBhd2FpdCBvcHRpb25zLnJlZ2lvbigpO1xuICAgICAgY29uc3Qgc291cmNlSWRLZXkgPSBPYmplY3Qua2V5cyhzb3VyY2VJZFRvQ29tbWFuZEtleU1hcCkuZmlsdGVyKChzb3VyY2VLZXlJZCkgPT5cbiAgICAgICAgaW5wdXQuaGFzT3duUHJvcGVydHkoc291cmNlS2V5SWQpXG4gICAgICApWzBdO1xuICAgICAgLy8gU291cmNlIGlkIGlzIG9wdGlvbmFsLlxuICAgICAgaWYgKCFzb3VyY2VJZEtleSkgcmV0dXJuIG5leHQoYXJncyk7XG5cbiAgICAgIGNvbnN0IGNvbW1hbmQgPSBzb3VyY2VJZFRvQ29tbWFuZEtleU1hcFtzb3VyY2VJZEtleV07XG4gICAgICBpZiAoIWlucHV0LlByZVNpZ25lZFVybCAmJiBpc0FSTihpbnB1dFtzb3VyY2VJZEtleV0pICYmIHJlZ2lvbiAhPT0gZ2V0RW5kcG9pbnRGcm9tQVJOKGlucHV0W3NvdXJjZUlkS2V5XSkpIHtcbiAgICAgICAgY29uc3Qgc291cmNlUmVnaW9uID0gZ2V0RW5kcG9pbnRGcm9tQVJOKGlucHV0W3NvdXJjZUlkS2V5XSk7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkRW5kcG9pbnQgPSBhd2FpdCBvcHRpb25zLmVuZHBvaW50KCk7XG4gICAgICAgIHJlc29sdmVkRW5kcG9pbnQuaG9zdG5hbWUgPSBgcmRzLiR7c291cmNlUmVnaW9ufS5hbWF6b25hd3MuY29tYDtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IG5ldyBIdHRwUmVxdWVzdCh7XG4gICAgICAgICAgLi4ucmVzb2x2ZWRFbmRwb2ludCxcbiAgICAgICAgICBwcm90b2NvbDogXCJodHRwc1wiLFxuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgIGhvc3Q6IHJlc29sdmVkRW5kcG9pbnQuaG9zdG5hbWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBxdWVyeToge1xuICAgICAgICAgICAgQWN0aW9uOiBjb21tYW5kLFxuICAgICAgICAgICAgVmVyc2lvbjogdmVyc2lvbixcbiAgICAgICAgICAgIEttc0tleUlkOiBpbnB1dC5LbXNLZXlJZCxcbiAgICAgICAgICAgIERlc3RpbmF0aW9uUmVnaW9uOiByZWdpb24sXG4gICAgICAgICAgICBbc291cmNlSWRLZXldOiBpbnB1dFtzb3VyY2VJZEtleV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHNpZ25lciA9IG5ldyBTaWduYXR1cmVWNCh7XG4gICAgICAgICAgY3JlZGVudGlhbHM6IG9wdGlvbnMuY3JlZGVudGlhbHMsXG4gICAgICAgICAgcmVnaW9uOiBzb3VyY2VSZWdpb24sXG4gICAgICAgICAgc2VydmljZTogXCJyZHNcIixcbiAgICAgICAgICBzaGEyNTY6IG9wdGlvbnMuc2hhMjU2LFxuICAgICAgICAgIHVyaUVzY2FwZVBhdGg6IG9wdGlvbnMuc2lnbmluZ0VzY2FwZVBhdGgsXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBwcmVzaWduZWRSZXF1ZXN0ID0gYXdhaXQgc2lnbmVyLnByZXNpZ24ocmVxdWVzdCwge1xuICAgICAgICAgIGV4cGlyZXNJbjogMzYwMCxcbiAgICAgICAgfSk7XG4gICAgICAgIGFyZ3MgPSB7XG4gICAgICAgICAgLi4uYXJncyxcbiAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgLi4uYXJncy5pbnB1dCxcbiAgICAgICAgICAgIFByZVNpZ25lZFVybDogZm9ybWF0VXJsKHByZXNpZ25lZFJlcXVlc3QpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV4dChhcmdzKTtcbiAgICB9O1xufVxuXG5leHBvcnQgY29uc3QgY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlT3B0aW9uczogSW5pdGlhbGl6ZUhhbmRsZXJPcHRpb25zID0ge1xuICBzdGVwOiBcImluaXRpYWxpemVcIixcbiAgdGFnczogW1wiQ1JPU1NfUkVHSU9OX1BSRVNJR05FRF9VUkxcIl0sXG4gIG5hbWU6IFwiY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlXCIsXG4gIG92ZXJyaWRlOiB0cnVlLFxufTtcblxuZXhwb3J0IGNvbnN0IGdldENyb3NzUmVnaW9uUHJlc2lnbmVkVXJsUGx1Z2luID0gKGNvbmZpZzogUHJldmlvdXNseVJlc29sdmVkKTogUGx1Z2dhYmxlPGFueSwgYW55PiA9PiAoe1xuICBhcHBseVRvU3RhY2s6IChjbGllbnRTdGFjaykgPT4ge1xuICAgIGNsaWVudFN0YWNrLmFkZChjcm9zc1JlZ2lvblByZXNpZ25lZFVybE1pZGRsZXdhcmUoY29uZmlnKSwgY3Jvc3NSZWdpb25QcmVzaWduZWRVcmxNaWRkbGV3YXJlT3B0aW9ucyk7XG4gIH0sXG59KTtcblxuZnVuY3Rpb24gaXNBUk4oaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICBpZiAoIWlkKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiByZWdBUk4udGVzdChpZCk7XG59XG5cbmZ1bmN0aW9uIGdldEVuZHBvaW50RnJvbUFSTihhcm46IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGFybkFyciA9IGFybi5zcGxpdChcIjpcIik7XG4gIGlmIChhcm5BcnIubGVuZ3RoIDwgNCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IGluZmVyIGVuZHBvaW50IGZyb20gJyR7YXJufSdgKTtcbiAgfVxuICByZXR1cm4gYXJuQXJyWzNdO1xufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/middleware-sdk-rds",
3
- "version": "3.25.0",
3
+ "version": "3.32.0",
4
4
  "scripts": {
5
5
  "build:cjs": "tsc -p tsconfig.cjs.json",
6
6
  "build:es": "tsc -p tsconfig.es.json",
@@ -17,17 +17,16 @@
17
17
  },
18
18
  "license": "Apache-2.0",
19
19
  "dependencies": {
20
- "@aws-sdk/protocol-http": "3.25.0",
21
- "@aws-sdk/signature-v4": "3.25.0",
22
- "@aws-sdk/types": "3.25.0",
23
- "@aws-sdk/util-format-url": "3.25.0",
24
- "@aws-sdk/util-uri-escape": "3.23.0",
20
+ "@aws-sdk/protocol-http": "3.32.0",
21
+ "@aws-sdk/signature-v4": "3.32.0",
22
+ "@aws-sdk/types": "3.32.0",
23
+ "@aws-sdk/util-format-url": "3.32.0",
25
24
  "tslib": "^2.3.0"
26
25
  },
27
26
  "devDependencies": {
28
27
  "@types/jest": "^26.0.4",
29
28
  "jest": "^26.1.0",
30
- "typescript": "~4.3.2"
29
+ "typescript": "~4.3.5"
31
30
  },
32
31
  "engines": {
33
32
  "node": ">= 10.0.0"
package/src/index.ts CHANGED
@@ -14,22 +14,15 @@ import {
14
14
  Provider,
15
15
  } from "@aws-sdk/types";
16
16
  import { formatUrl } from "@aws-sdk/util-format-url";
17
- import { escapeUri } from "@aws-sdk/util-uri-escape";
18
17
 
19
18
  const regARN = /arn:[\w+=/,.@-]+:[\w+=/,.@-]+:([\w+=/,.@-]*)?:[0-9]+:[\w+=/,.@-]+(:[\w+=/,.@-]+)?(:[\w+=/,.@-]+)?/;
20
19
 
21
- const sourceIds: string[] = [
22
- "SourceDBSnapshotIdentifier",
23
- "SourceDBInstanceIdentifier",
24
- "ReplicationSourceIdentifier",
25
- "SourceDBClusterSnapshotIdentifier",
26
- ];
27
-
28
20
  const sourceIdToCommandKeyMap: { [key: string]: string } = {
29
21
  SourceDBSnapshotIdentifier: "CopyDBSnapshot",
30
22
  SourceDBInstanceIdentifier: "CreateDBInstanceReadReplica",
31
- ReplicationSourceIdentifier: "CreateDBCluster",
23
+ ReplicationSourceIdentifier: "CreateDBCluster", // This key is optional.
32
24
  SourceDBClusterSnapshotIdentifier: "CopyDBClusterSnapshot",
25
+ SourceDBInstanceArn: "StartDBInstanceAutomatedBackupsReplication",
33
26
  };
34
27
 
35
28
  const version = "2014-10-31";
@@ -46,24 +39,20 @@ interface PreviouslyResolved {
46
39
  * Config of the middleware to automatically add presigned URL to request.
47
40
  * The presigned URL is generated by sigV4
48
41
  */
49
-
50
42
  export function crossRegionPresignedUrlMiddleware(options: PreviouslyResolved): InitializeMiddleware<any, any> {
51
43
  return <Output extends MetadataBearer>(next: InitializeHandler<any, Output>): InitializeHandler<any, Output> =>
52
44
  async (args: InitializeHandlerArguments<any>): Promise<InitializeHandlerOutput<Output>> => {
53
45
  const { input } = args;
54
46
  const region = await options.region();
55
- let command, sourceId;
56
- for (const id of sourceIds) {
57
- if (input.hasOwnProperty(id)) {
58
- sourceId = id;
59
- command = sourceIdToCommandKeyMap[id];
60
- }
61
- }
62
- if (!sourceId) {
63
- throw new Error("Source identifier key not set");
64
- }
65
- if (!input.PreSignedUrl && isARN(input[sourceId]) && region !== getEndpointFromARN(input[sourceId])) {
66
- const sourceRegion = getEndpointFromARN(input[sourceId]);
47
+ const sourceIdKey = Object.keys(sourceIdToCommandKeyMap).filter((sourceKeyId) =>
48
+ input.hasOwnProperty(sourceKeyId)
49
+ )[0];
50
+ // Source id is optional.
51
+ if (!sourceIdKey) return next(args);
52
+
53
+ const command = sourceIdToCommandKeyMap[sourceIdKey];
54
+ if (!input.PreSignedUrl && isARN(input[sourceIdKey]) && region !== getEndpointFromARN(input[sourceIdKey])) {
55
+ const sourceRegion = getEndpointFromARN(input[sourceIdKey]);
67
56
  const resolvedEndpoint = await options.endpoint();
68
57
  resolvedEndpoint.hostname = `rds.${sourceRegion}.amazonaws.com`;
69
58
  const request = new HttpRequest({
@@ -77,7 +66,7 @@ export function crossRegionPresignedUrlMiddleware(options: PreviouslyResolved):
77
66
  Version: version,
78
67
  KmsKeyId: input.KmsKeyId,
79
68
  DestinationRegion: region,
80
- [sourceId]: input[sourceId],
69
+ [sourceIdKey]: input[sourceIdKey],
81
70
  },
82
71
  });
83
72
  const signer = new SignatureV4({
@@ -94,7 +83,7 @@ export function crossRegionPresignedUrlMiddleware(options: PreviouslyResolved):
94
83
  ...args,
95
84
  input: {
96
85
  ...args.input,
97
- PreSignedUrl: escapeUri(formatUrl(presignedRequest)),
86
+ PreSignedUrl: formatUrl(presignedRequest),
98
87
  },
99
88
  };
100
89
  }