@cdk8s/awscdk-resolver 0.0.35 → 0.0.37

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.
Files changed (45) hide show
  1. package/.jsii +2 -2
  2. package/lib/resolve.js +1 -1
  3. package/node_modules/@smithy/abort-controller/package.json +2 -2
  4. package/node_modules/@smithy/config-resolver/package.json +4 -4
  5. package/node_modules/@smithy/credential-provider-imds/package.json +5 -5
  6. package/node_modules/@smithy/eventstream-codec/package.json +2 -2
  7. package/node_modules/@smithy/fetch-http-handler/package.json +5 -5
  8. package/node_modules/@smithy/hash-node/package.json +2 -2
  9. package/node_modules/@smithy/invalid-dependency/package.json +2 -2
  10. package/node_modules/@smithy/middleware-content-length/package.json +4 -4
  11. package/node_modules/@smithy/middleware-endpoint/package.json +7 -7
  12. package/node_modules/@smithy/middleware-retry/package.json +8 -8
  13. package/node_modules/@smithy/middleware-serde/package.json +3 -3
  14. package/node_modules/@smithy/middleware-stack/package.json +2 -2
  15. package/node_modules/@smithy/node-config-provider/package.json +4 -4
  16. package/node_modules/@smithy/node-http-handler/package.json +5 -5
  17. package/node_modules/@smithy/property-provider/package.json +2 -2
  18. package/node_modules/@smithy/protocol-http/package.json +2 -2
  19. package/node_modules/@smithy/querystring-builder/package.json +2 -2
  20. package/node_modules/@smithy/querystring-parser/package.json +2 -2
  21. package/node_modules/@smithy/service-error-classification/package.json +2 -2
  22. package/node_modules/@smithy/shared-ini-file-loader/package.json +2 -2
  23. package/node_modules/@smithy/signature-v4/package.json +5 -5
  24. package/node_modules/@smithy/smithy-client/package.json +4 -4
  25. package/node_modules/@smithy/types/README.md +41 -2
  26. package/node_modules/@smithy/types/dist-cjs/index.js +1 -0
  27. package/node_modules/@smithy/types/dist-cjs/transform/no-undefined.js +2 -0
  28. package/node_modules/@smithy/types/dist-es/index.js +1 -0
  29. package/node_modules/@smithy/types/dist-es/transform/no-undefined.js +1 -0
  30. package/node_modules/@smithy/types/dist-types/auth/HttpSigner.d.ts +26 -1
  31. package/node_modules/@smithy/types/dist-types/index.d.ts +1 -0
  32. package/node_modules/@smithy/types/dist-types/transform/no-undefined.d.ts +62 -0
  33. package/node_modules/@smithy/types/dist-types/ts3.4/auth/HttpSigner.d.ts +26 -1
  34. package/node_modules/@smithy/types/dist-types/ts3.4/index.d.ts +1 -0
  35. package/node_modules/@smithy/types/dist-types/ts3.4/transform/no-undefined.d.ts +82 -0
  36. package/node_modules/@smithy/types/package.json +1 -1
  37. package/node_modules/@smithy/url-parser/package.json +3 -3
  38. package/node_modules/@smithy/util-defaults-mode-browser/package.json +4 -4
  39. package/node_modules/@smithy/util-defaults-mode-node/package.json +7 -7
  40. package/node_modules/@smithy/util-endpoints/package.json +3 -3
  41. package/node_modules/@smithy/util-middleware/package.json +2 -2
  42. package/node_modules/@smithy/util-retry/package.json +3 -3
  43. package/node_modules/@smithy/util-stream/package.json +5 -5
  44. package/node_modules/@smithy/util-waiter/package.json +3 -3
  45. package/package.json +6 -7
package/.jsii CHANGED
@@ -3674,6 +3674,6 @@
3674
3674
  "symbolId": "src/resolve:AwsCdkResolver"
3675
3675
  }
3676
3676
  },
3677
- "version": "0.0.35",
3678
- "fingerprint": "CWzQ0C4dAOShWFrI3S86WsXjGRKHNjB21ABCndEklFc="
3677
+ "version": "0.0.37",
3678
+ "fingerprint": "QddhHhJa1tagq0GocvwULeftQm5B4PV4BFtEZomLwag="
3679
3679
  }
package/lib/resolve.js CHANGED
@@ -61,5 +61,5 @@ class AwsCdkResolver {
61
61
  }
62
62
  exports.AwsCdkResolver = AwsCdkResolver;
63
63
  _a = JSII_RTTI_SYMBOL_1;
64
- AwsCdkResolver[_a] = { fqn: "@cdk8s/awscdk-resolver.AwsCdkResolver", version: "0.0.35" };
64
+ AwsCdkResolver[_a] = { fqn: "@cdk8s/awscdk-resolver.AwsCdkResolver", version: "0.0.37" };
65
65
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQTZDO0FBQzdDLDZCQUE2QjtBQUM3Qiw2Q0FBK0U7QUFJL0UsTUFBYSxjQUFjO0lBRWxCLE9BQU8sQ0FBQyxPQUEwQjtRQUV2QyxJQUFJLENBQUMsbUJBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RDLE9BQU87U0FDUjtRQUVELElBQUksT0FBTyxPQUFPLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUNyQywrREFBK0Q7WUFDL0QsbUJBQW1CO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsdUJBQXVCLE9BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7U0FDckY7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJO1lBQ0YsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2xELE9BQU8sQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDbkM7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLDJFQUEyRTtZQUMzRSxrRUFBa0U7WUFDbEUsMkVBQTJFO1lBQzNFLCtFQUErRTtZQUMvRSwrQ0FBK0M7WUFDL0MsT0FBTyxDQUFDLFlBQVksQ0FBQyxvQ0FBb0MsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssR0FBRyxFQUFFLENBQUMsQ0FBQztTQUN0RjtJQUVILENBQUM7SUFFTyxVQUFVLENBQUMsS0FBYTtRQUU5QixNQUFNLGVBQWUsR0FBWSxFQUFFLENBQUM7UUFFcEMsS0FBSyxNQUFNLEtBQUssSUFBSSwwQkFBWSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDNUQsSUFBSSx1QkFBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDaEMsTUFBTSxLQUFLLEdBQUcsbUJBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNyQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1QixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSx1QkFBUyxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFjLENBQUM7Z0JBQzdHLGtGQUFrRjtnQkFDbEYsd0RBQXdEO2dCQUN4RCxJQUFJLE1BQU07b0JBQUUsT0FBTyxNQUFNLENBQUM7YUFDM0I7U0FDRjtRQUVELDZCQUE2QjtRQUM3Qiw2QkFBNkI7UUFDN0Isb0NBQW9DO1FBQ3BDLG9GQUFvRjtRQUNwRiwrREFBK0Q7UUFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsS0FBSyx1QkFBdUIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRXZJLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUFpQjtRQUV4QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLHVCQUF1QixDQUFDLENBQUM7UUFDMUUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUEsNEJBQVksRUFBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQy9DLE1BQU07WUFDTixtQkFBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTO1lBQzFCLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtTQUNmLEVBQUUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRWhFLENBQUM7O0FBOURILHdDQWdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNGaWxlU3luYyB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IFRva2VuLCBTdGFjaywgVG9rZW5pemF0aW9uLCBSZWZlcmVuY2UsIENmbk91dHB1dCB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IElSZXNvbHZlciwgUmVzb2x1dGlvbkNvbnRleHQgfSBmcm9tICdjZGs4cyc7XG5cblxuZXhwb3J0IGNsYXNzIEF3c0Nka1Jlc29sdmVyIGltcGxlbWVudHMgSVJlc29sdmVyIHtcblxuICBwdWJsaWMgcmVzb2x2ZShjb250ZXh0OiBSZXNvbHV0aW9uQ29udGV4dCkge1xuXG4gICAgaWYgKCFUb2tlbi5pc1VucmVzb2x2ZWQoY29udGV4dC52YWx1ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGNvbnRleHQudmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBzaG91bGQgYmUgb2sgYmVjYXVzZSB3ZSBvbmx5IHJlc29sdmUgQ2ZuT3V0cHV0IHZhbHVlcywgd2hpY2hcbiAgICAgIC8vIG11c3QgYmUgc3RyaW5ncy5cbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB2YWx1ZSB0eXBlOiAke3R5cGVvZihjb250ZXh0LnZhbHVlKX0gKEV4cGVjdGVkICdzdHJpbmcnKWApO1xuICAgIH1cblxuICAgIGNvbnN0IG91dHB1dCA9IHRoaXMuZmluZE91dHB1dChjb250ZXh0LnZhbHVlKTtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgb3V0cHV0VmFsdWUgPSB0aGlzLmZldGNoT3V0cHV0VmFsdWUob3V0cHV0KTtcbiAgICAgIGNvbnRleHQucmVwbGFjZVZhbHVlKG91dHB1dFZhbHVlKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIGlmIGJvdGggY2RrOHMgYW5kIEFXUyBDREsgYXBwbGljYXRpb25zIGFyZSBkZWZpbmVkIHdpdGhpbiB0aGUgc2FtZSBmaWxlLFxuICAgICAgLy8gYSBjZGs4cyBzeW50aCBpcyBnb2luZyB0byBoYXBwZW4gYmVmb3JlIHRoZSBBV1MgQ0RLIGRlcGxveW1lbnQuXG4gICAgICAvLyBpbiB0aGlzIGNhc2Ugd2UgbXVzdCBzd2FsbG93IHRoZSBlcnJvciwgb3RoZXJ3aXNlIHRoZSBBV1MgQ0RLIGRlcGxveW1lbnRcbiAgICAgIC8vIHdvbid0IGJlIGFibGUgdG8gZ28gdGhyb3VnaC4gd2UgcmVwbGFjZSB0aGUgdmFsdWUgd2l0aCBzb21ldGhpbmcgdG8gaW5kaWNhdGVcbiAgICAgIC8vIHRoYXQgYSBmZXRjaGluZyBhdHRlbXB0IHdhcyBtYWRlIGFuZCBmYWlsZWQuXG4gICAgICBjb250ZXh0LnJlcGxhY2VWYWx1ZShgRmFpbGVkIGZldGNoaW5nIHZhbHVlIGZvciBvdXRwdXQgJHtvdXRwdXQubm9kZS5wYXRofTogJHtlcnJ9YCk7XG4gICAgfVxuXG4gIH1cblxuICBwcml2YXRlIGZpbmRPdXRwdXQodmFsdWU6IHN0cmluZykge1xuXG4gICAgY29uc3QgaW5zcGVjdGVkU3RhY2tzOiBTdGFja1tdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHRva2VuIG9mIFRva2VuaXphdGlvbi5yZXZlcnNlU3RyaW5nKHZhbHVlKS50b2tlbnMpIHtcbiAgICAgIGlmIChSZWZlcmVuY2UuaXNSZWZlcmVuY2UodG9rZW4pKSB7XG4gICAgICAgIGNvbnN0IHN0YWNrID0gU3RhY2sub2YodG9rZW4udGFyZ2V0KTtcbiAgICAgICAgaW5zcGVjdGVkU3RhY2tzLnB1c2goc3RhY2spO1xuICAgICAgICBjb25zdCBvdXRwdXQgPSBzdGFjay5ub2RlLmZpbmRBbGwoKS5maWx0ZXIoYyA9PiBjIGluc3RhbmNlb2YgQ2ZuT3V0cHV0ICYmIGMudmFsdWUgPT09IHZhbHVlKVswXSBhcyBDZm5PdXRwdXQ7XG4gICAgICAgIC8vIHdlIGRvbid0IHJlYWxseSBjYXJlIGlmIHRoZXJlIGFyZSBtb3JlIG91dHB1dHMgKHBvc3NpYmx5IGZyb20gZGlmZmVyZW50IHN0YWNrcylcbiAgICAgICAgLy8gdGhhdCBwb2ludCB0byB0aGUgc2FtZSB2YWx1ZS4gdGhlIGZpcnN0IHdpbGwgc3VmZmljZS5cbiAgICAgICAgaWYgKG91dHB1dCkgcmV0dXJuIG91dHB1dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUaGlzIGNhbiBoYXBwZW4gaWYgZWl0aGVyOlxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gIDEuIFVzZXIgZGlkbid0IGRlZmluZSBhbiBvdXRwdXQuXG4gICAgLy8gIDIuIE91dHB1dCB3YXMgZGVmaW5lZCBpbiBhIGRpZmZlcmVudCBzdGFjayB0aGFuIHRoZSB0b2tlbnMgY29tcHJpc2luZyBpdHMgdmFsdWUuXG4gICAgLy8gIDMuIE5vbmUgb2YgdGhlIHRva2VucyBjb21wcmlzaW5nIHRoZSB2YWx1ZSBhcmUgYSBSZWZlcmVuY2UuXG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbmFibGUgdG8gZmluZCBvdXRwdXQgZGVmaW5lZCBmb3IgJHt2YWx1ZX0gKEluc3BlY3RlZCBzdGFja3M6ICR7aW5zcGVjdGVkU3RhY2tzLm1hcChzID0+IHMuc3RhY2tOYW1lKS5qb2luKCcsJyl9KWApO1xuXG4gIH1cblxuICBwcml2YXRlIGZldGNoT3V0cHV0VmFsdWUob3V0cHV0OiBDZm5PdXRwdXQpIHtcblxuICAgIGNvbnN0IHNjcmlwdCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICdsaWInLCAnZmV0Y2gtb3V0cHV0LXZhbHVlLmpzJyk7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UoZXhlY0ZpbGVTeW5jKHByb2Nlc3MuZXhlY1BhdGgsIFtcbiAgICAgIHNjcmlwdCxcbiAgICAgIFN0YWNrLm9mKG91dHB1dCkuc3RhY2tOYW1lLFxuICAgICAgb3V0cHV0Lm5vZGUuaWQsXG4gICAgXSwgeyBlbmNvZGluZzogJ3V0Zi04Jywgc3RkaW86IFsncGlwZSddIH0pLnRvU3RyaW5nKCkudHJpbSgpKTtcblxuICB9XG5cbn1cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/abort-controller",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "description": "A simple abort controller library",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@smithy/types": "^2.5.0",
27
+ "@smithy/types": "^2.6.0",
28
28
  "tslib": "^2.5.0"
29
29
  },
30
30
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/config-resolver",
3
- "version": "2.0.18",
3
+ "version": "2.0.19",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,10 +23,10 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/node-config-provider": "^2.1.5",
27
- "@smithy/types": "^2.5.0",
26
+ "@smithy/node-config-provider": "^2.1.6",
27
+ "@smithy/types": "^2.6.0",
28
28
  "@smithy/util-config-provider": "^2.0.0",
29
- "@smithy/util-middleware": "^2.0.6",
29
+ "@smithy/util-middleware": "^2.0.7",
30
30
  "tslib": "^2.5.0"
31
31
  },
32
32
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/credential-provider-imds",
3
- "version": "2.1.1",
3
+ "version": "2.1.2",
4
4
  "description": "AWS credential provider that sources credentials from the EC2 instance metadata service and ECS container metadata service",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,10 +26,10 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@smithy/node-config-provider": "^2.1.5",
30
- "@smithy/property-provider": "^2.0.14",
31
- "@smithy/types": "^2.5.0",
32
- "@smithy/url-parser": "^2.0.13",
29
+ "@smithy/node-config-provider": "^2.1.6",
30
+ "@smithy/property-provider": "^2.0.15",
31
+ "@smithy/types": "^2.6.0",
32
+ "@smithy/url-parser": "^2.0.14",
33
33
  "tslib": "^2.5.0"
34
34
  },
35
35
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/eventstream-codec",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,7 +23,7 @@
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
25
  "@aws-crypto/crc32": "3.0.0",
26
- "@smithy/types": "^2.5.0",
26
+ "@smithy/types": "^2.6.0",
27
27
  "@smithy/util-hex-encoding": "^2.0.0",
28
28
  "tslib": "^2.5.0"
29
29
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/fetch-http-handler",
3
- "version": "2.2.6",
3
+ "version": "2.2.7",
4
4
  "description": "Provides a way to make requests",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
@@ -24,14 +24,14 @@
24
24
  "module": "./dist-es/index.js",
25
25
  "types": "./dist-types/index.d.ts",
26
26
  "dependencies": {
27
- "@smithy/protocol-http": "^3.0.9",
28
- "@smithy/querystring-builder": "^2.0.13",
29
- "@smithy/types": "^2.5.0",
27
+ "@smithy/protocol-http": "^3.0.10",
28
+ "@smithy/querystring-builder": "^2.0.14",
29
+ "@smithy/types": "^2.6.0",
30
30
  "@smithy/util-base64": "^2.0.1",
31
31
  "tslib": "^2.5.0"
32
32
  },
33
33
  "devDependencies": {
34
- "@smithy/abort-controller": "^2.0.13",
34
+ "@smithy/abort-controller": "^2.0.14",
35
35
  "@tsconfig/recommended": "1.0.1",
36
36
  "@types/chai-as-promised": "^7.1.2",
37
37
  "chai": "^4.2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/hash-node",
3
- "version": "2.0.15",
3
+ "version": "2.0.16",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -31,7 +31,7 @@
31
31
  "typedoc": "0.23.23"
32
32
  },
33
33
  "dependencies": {
34
- "@smithy/types": "^2.5.0",
34
+ "@smithy/types": "^2.6.0",
35
35
  "@smithy/util-buffer-from": "^2.0.0",
36
36
  "@smithy/util-utf8": "^2.0.2",
37
37
  "tslib": "^2.5.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/invalid-dependency",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/types": "^2.5.0",
25
+ "@smithy/types": "^2.6.0",
26
26
  "tslib": "^2.5.0"
27
27
  },
28
28
  "typesVersions": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-content-length",
3
- "version": "2.0.15",
3
+ "version": "2.0.16",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,8 +23,8 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/protocol-http": "^3.0.9",
27
- "@smithy/types": "^2.5.0",
26
+ "@smithy/protocol-http": "^3.0.10",
27
+ "@smithy/types": "^2.6.0",
28
28
  "tslib": "^2.5.0"
29
29
  },
30
30
  "engines": {
@@ -47,7 +47,7 @@
47
47
  "directory": "packages/middleware-content-length"
48
48
  },
49
49
  "devDependencies": {
50
- "@smithy/util-test": "^0.1.9",
50
+ "@smithy/util-test": "^0.1.10",
51
51
  "@tsconfig/recommended": "1.0.1",
52
52
  "concurrently": "7.0.0",
53
53
  "downlevel-dts": "0.10.1",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-endpoint",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,12 +23,12 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/middleware-serde": "^2.0.13",
27
- "@smithy/node-config-provider": "^2.1.5",
28
- "@smithy/shared-ini-file-loader": "^2.2.4",
29
- "@smithy/types": "^2.5.0",
30
- "@smithy/url-parser": "^2.0.13",
31
- "@smithy/util-middleware": "^2.0.6",
26
+ "@smithy/middleware-serde": "^2.0.14",
27
+ "@smithy/node-config-provider": "^2.1.6",
28
+ "@smithy/shared-ini-file-loader": "^2.2.5",
29
+ "@smithy/types": "^2.6.0",
30
+ "@smithy/url-parser": "^2.0.14",
31
+ "@smithy/util-middleware": "^2.0.7",
32
32
  "tslib": "^2.5.0"
33
33
  },
34
34
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-retry",
3
- "version": "2.0.20",
3
+ "version": "2.0.21",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -24,17 +24,17 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@smithy/node-config-provider": "^2.1.5",
28
- "@smithy/protocol-http": "^3.0.9",
29
- "@smithy/service-error-classification": "^2.0.6",
30
- "@smithy/types": "^2.5.0",
31
- "@smithy/util-middleware": "^2.0.6",
32
- "@smithy/util-retry": "^2.0.6",
27
+ "@smithy/node-config-provider": "^2.1.6",
28
+ "@smithy/protocol-http": "^3.0.10",
29
+ "@smithy/service-error-classification": "^2.0.7",
30
+ "@smithy/types": "^2.6.0",
31
+ "@smithy/util-middleware": "^2.0.7",
32
+ "@smithy/util-retry": "^2.0.7",
33
33
  "tslib": "^2.5.0",
34
34
  "uuid": "^8.3.2"
35
35
  },
36
36
  "devDependencies": {
37
- "@smithy/util-test": "^0.1.9",
37
+ "@smithy/util-test": "^0.1.10",
38
38
  "@tsconfig/recommended": "1.0.1",
39
39
  "@types/uuid": "^8.3.0",
40
40
  "concurrently": "7.0.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-serde",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/types": "^2.5.0",
26
+ "@smithy/types": "^2.6.0",
27
27
  "tslib": "^2.5.0"
28
28
  },
29
29
  "engines": {
@@ -46,7 +46,7 @@
46
46
  "directory": "packages/middleware-serde"
47
47
  },
48
48
  "devDependencies": {
49
- "@smithy/util-test": "^0.1.9",
49
+ "@smithy/util-test": "^0.1.10",
50
50
  "@tsconfig/recommended": "1.0.1",
51
51
  "concurrently": "7.0.0",
52
52
  "downlevel-dts": "0.10.1",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/middleware-stack",
3
- "version": "2.0.7",
3
+ "version": "2.0.8",
4
4
  "description": "Provides a means for composing multiple middleware functions into a single handler",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
@@ -25,7 +25,7 @@
25
25
  "module": "./dist-es/index.js",
26
26
  "types": "./dist-types/index.d.ts",
27
27
  "dependencies": {
28
- "@smithy/types": "^2.5.0",
28
+ "@smithy/types": "^2.6.0",
29
29
  "tslib": "^2.5.0"
30
30
  },
31
31
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/node-config-provider",
3
- "version": "2.1.5",
3
+ "version": "2.1.6",
4
4
  "description": "Load config default values from ini config files and environmental variable",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
@@ -24,9 +24,9 @@
24
24
  "module": "./dist-es/index.js",
25
25
  "types": "./dist-types/index.d.ts",
26
26
  "dependencies": {
27
- "@smithy/property-provider": "^2.0.14",
28
- "@smithy/shared-ini-file-loader": "^2.2.4",
29
- "@smithy/types": "^2.5.0",
27
+ "@smithy/property-provider": "^2.0.15",
28
+ "@smithy/shared-ini-file-loader": "^2.2.5",
29
+ "@smithy/types": "^2.6.0",
30
30
  "tslib": "^2.5.0"
31
31
  },
32
32
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/node-http-handler",
3
- "version": "2.1.9",
3
+ "version": "2.1.10",
4
4
  "description": "Provides a way to make requests",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
@@ -25,10 +25,10 @@
25
25
  "module": "./dist-es/index.js",
26
26
  "types": "./dist-types/index.d.ts",
27
27
  "dependencies": {
28
- "@smithy/abort-controller": "^2.0.13",
29
- "@smithy/protocol-http": "^3.0.9",
30
- "@smithy/querystring-builder": "^2.0.13",
31
- "@smithy/types": "^2.5.0",
28
+ "@smithy/abort-controller": "^2.0.14",
29
+ "@smithy/protocol-http": "^3.0.10",
30
+ "@smithy/querystring-builder": "^2.0.14",
31
+ "@smithy/types": "^2.6.0",
32
32
  "tslib": "^2.5.0"
33
33
  },
34
34
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/property-provider",
3
- "version": "2.0.14",
3
+ "version": "2.0.15",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/types": "^2.5.0",
25
+ "@smithy/types": "^2.6.0",
26
26
  "tslib": "^2.5.0"
27
27
  },
28
28
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/protocol-http",
3
- "version": "3.0.9",
3
+ "version": "3.0.10",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/types": "^2.5.0",
26
+ "@smithy/types": "^2.6.0",
27
27
  "tslib": "^2.5.0"
28
28
  },
29
29
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/querystring-builder",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/types": "^2.5.0",
25
+ "@smithy/types": "^2.6.0",
26
26
  "@smithy/util-uri-escape": "^2.0.0",
27
27
  "tslib": "^2.5.0"
28
28
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/querystring-parser",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/types": "^2.5.0",
25
+ "@smithy/types": "^2.6.0",
26
26
  "tslib": "^2.5.0"
27
27
  },
28
28
  "engines": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/service-error-classification",
3
- "version": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -54,6 +54,6 @@
54
54
  "directory": ".release/package"
55
55
  },
56
56
  "dependencies": {
57
- "@smithy/types": "^2.5.0"
57
+ "@smithy/types": "^2.6.0"
58
58
  }
59
59
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@smithy/shared-ini-file-loader",
3
- "version": "2.2.4",
3
+ "version": "2.2.5",
4
4
  "dependencies": {
5
- "@smithy/types": "^2.5.0",
5
+ "@smithy/types": "^2.6.0",
6
6
  "tslib": "^2.5.0"
7
7
  },
8
8
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/signature-v4",
3
- "version": "2.0.15",
3
+ "version": "2.0.16",
4
4
  "description": "A standalone implementation of the AWS Signature V4 request signing algorithm",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -24,18 +24,18 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@smithy/eventstream-codec": "^2.0.13",
27
+ "@smithy/eventstream-codec": "^2.0.14",
28
28
  "@smithy/is-array-buffer": "^2.0.0",
29
- "@smithy/types": "^2.5.0",
29
+ "@smithy/types": "^2.6.0",
30
30
  "@smithy/util-hex-encoding": "^2.0.0",
31
- "@smithy/util-middleware": "^2.0.6",
31
+ "@smithy/util-middleware": "^2.0.7",
32
32
  "@smithy/util-uri-escape": "^2.0.0",
33
33
  "@smithy/util-utf8": "^2.0.2",
34
34
  "tslib": "^2.5.0"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@aws-crypto/sha256-js": "3.0.0",
38
- "@smithy/protocol-http": "^3.0.9",
38
+ "@smithy/protocol-http": "^3.0.10",
39
39
  "@tsconfig/recommended": "1.0.1",
40
40
  "concurrently": "7.0.0",
41
41
  "downlevel-dts": "0.10.1",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/smithy-client",
3
- "version": "2.1.15",
3
+ "version": "2.1.16",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -23,9 +23,9 @@
23
23
  },
24
24
  "license": "Apache-2.0",
25
25
  "dependencies": {
26
- "@smithy/middleware-stack": "^2.0.7",
27
- "@smithy/types": "^2.5.0",
28
- "@smithy/util-stream": "^2.0.20",
26
+ "@smithy/middleware-stack": "^2.0.8",
27
+ "@smithy/types": "^2.6.0",
28
+ "@smithy/util-stream": "^2.0.21",
29
29
  "tslib": "^2.5.0"
30
30
  },
31
31
  "engines": {
@@ -8,10 +8,49 @@
8
8
  This package is mostly used internally by generated clients.
9
9
  Some public components have independent applications.
10
10
 
11
- ### Scenario: Narrowing a smithy-typescript generated client's output payload blob types
12
-
13
11
  ---
14
12
 
13
+ ### Scenario: Removing `| undefined` from input and output structures
14
+
15
+ Generated shapes' members are unioned with `undefined` for
16
+ input shapes, and are `?` (optional) for output shapes.
17
+
18
+ - for inputs, this defers the validation to the service.
19
+ - for outputs, this strongly suggests that you should runtime-check the output data.
20
+
21
+ If you would like to skip these steps, use the `AssertiveClient` or
22
+ `UncheckedClient` type helpers.
23
+
24
+ Using AWS S3 as an example:
25
+
26
+ ```ts
27
+ import { S3 } from "@aws-sdk/client-s3";
28
+ import type { AssertiveClient, UncheckedClient } from "@smithy/types";
29
+
30
+ const s3a = new S3({}) as AssertiveClient<S3>;
31
+ const s3b = new S3({}) as UncheckedClient<S3>;
32
+
33
+ // AssertiveClient enforces required inputs are not undefined
34
+ // and required outputs are not undefined.
35
+ const get = await s3a.getObject({
36
+ Bucket: "",
37
+ Key: "",
38
+ });
39
+
40
+ // UncheckedClient makes output fields non-nullable.
41
+ // You should still perform type checks as you deem
42
+ // necessary, but the SDK will no longer prompt you
43
+ // with nullability errors.
44
+ const body = await (
45
+ await s3b.getObject({
46
+ Bucket: "",
47
+ Key: "",
48
+ })
49
+ ).Body.transformToString();
50
+ ```
51
+
52
+ ### Scenario: Narrowing a smithy-typescript generated client's output payload blob types
53
+
15
54
  This is mostly relevant to operations with streaming bodies such as within
16
55
  the S3Client in the AWS SDK for JavaScript v3.
17
56
 
@@ -31,6 +31,7 @@ tslib_1.__exportStar(require("./streaming-payload/streaming-blob-payload-input-t
31
31
  tslib_1.__exportStar(require("./streaming-payload/streaming-blob-payload-output-types"), exports);
32
32
  tslib_1.__exportStar(require("./transfer"), exports);
33
33
  tslib_1.__exportStar(require("./transform/client-payload-blob-type-narrow"), exports);
34
+ tslib_1.__exportStar(require("./transform/no-undefined"), exports);
34
35
  tslib_1.__exportStar(require("./transform/type-transform"), exports);
35
36
  tslib_1.__exportStar(require("./uri"), exports);
36
37
  tslib_1.__exportStar(require("./util"), exports);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -28,6 +28,7 @@ export * from "./streaming-payload/streaming-blob-payload-input-types";
28
28
  export * from "./streaming-payload/streaming-blob-payload-output-types";
29
29
  export * from "./transfer";
30
30
  export * from "./transform/client-payload-blob-type-narrow";
31
+ export * from "./transform/no-undefined";
31
32
  export * from "./transform/type-transform";
32
33
  export * from "./uri";
33
34
  export * from "./util";
@@ -1,5 +1,17 @@
1
- import { HttpRequest } from "../http";
1
+ import { HttpRequest, HttpResponse } from "../http";
2
2
  import { Identity } from "../identity/identity";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface ErrorHandler {
7
+ (signingProperties: Record<string, unknown>): <E extends Error>(error: E) => never;
8
+ }
9
+ /**
10
+ * @internal
11
+ */
12
+ export interface SuccessHandler {
13
+ (httpResponse: HttpResponse | unknown, signingProperties: Record<string, unknown>): void;
14
+ }
3
15
  /**
4
16
  * Interface to sign identity and signing properties.
5
17
  * @internal
@@ -13,4 +25,17 @@ export interface HttpSigner {
13
25
  * @returns signed request in a promise
14
26
  */
15
27
  sign(httpRequest: HttpRequest, identity: Identity, signingProperties: Record<string, unknown>): Promise<HttpRequest>;
28
+ /**
29
+ * Handler that executes after the {@link HttpSigner.sign} invocation and corresponding
30
+ * middleware throws an error.
31
+ * The error handler is expected to throw the error it receives, so the return type of the error handler is `never`.
32
+ * @internal
33
+ */
34
+ errorHandler?: ErrorHandler;
35
+ /**
36
+ * Handler that executes after the {@link HttpSigner.sign} invocation and corresponding
37
+ * middleware succeeds.
38
+ * @internal
39
+ */
40
+ successHandler?: SuccessHandler;
16
41
  }
@@ -28,6 +28,7 @@ export * from "./streaming-payload/streaming-blob-payload-input-types";
28
28
  export * from "./streaming-payload/streaming-blob-payload-output-types";
29
29
  export * from "./transfer";
30
30
  export * from "./transform/client-payload-blob-type-narrow";
31
+ export * from "./transform/no-undefined";
31
32
  export * from "./transform/type-transform";
32
33
  export * from "./uri";
33
34
  export * from "./util";
@@ -0,0 +1,62 @@
1
+ import type { InvokeFunction, InvokeMethod } from "../client";
2
+ /**
3
+ * @public
4
+ *
5
+ * This type is intended as a type helper for generated clients.
6
+ * When initializing client, cast it to this type by passing
7
+ * the client constructor type as the type parameter.
8
+ *
9
+ * It will then recursively remove "undefined" as a union type from all
10
+ * input and output shapes' members. Note, this does not affect
11
+ * any member that is optional (?) such as outputs with no required members.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const client = new Client({}) as AssertiveClient<Client>;
16
+ * ```
17
+ */
18
+ export type AssertiveClient<Client extends object> = NarrowClientIOTypes<Client>;
19
+ /**
20
+ * @public
21
+ *
22
+ * This is similar to AssertiveClient but additionally changes all
23
+ * output types to (recursive) Required<T> so as to bypass all output nullability guards.
24
+ */
25
+ export type UncheckedClient<Client extends object> = UncheckedClientOutputTypes<Client>;
26
+ /**
27
+ * @internal
28
+ *
29
+ * Excludes undefined recursively.
30
+ */
31
+ export type NoUndefined<T> = T extends Function ? T : [T] extends [object] ? {
32
+ [key in keyof T]: NoUndefined<T[key]>;
33
+ } : Exclude<T, undefined>;
34
+ /**
35
+ * @internal
36
+ *
37
+ * Excludes undefined and optional recursively.
38
+ */
39
+ export type RecursiveRequired<T> = T extends Function ? T : [T] extends [object] ? {
40
+ [key in keyof T]-?: RecursiveRequired<T[key]>;
41
+ } : Exclude<T, undefined>;
42
+ /**
43
+ * @internal
44
+ *
45
+ * Removes undefined from unions.
46
+ */
47
+ type NarrowClientIOTypes<ClientType extends object> = {
48
+ [key in keyof ClientType]: [ClientType[key]] extends [
49
+ InvokeFunction<infer InputTypes, infer OutputTypes, infer ConfigType>
50
+ ] ? InvokeFunction<NoUndefined<InputTypes>, NoUndefined<OutputTypes>, ConfigType> : [ClientType[key]] extends [InvokeMethod<infer FunctionInputTypes, infer FunctionOutputTypes>] ? InvokeMethod<NoUndefined<FunctionInputTypes>, NoUndefined<FunctionOutputTypes>> : ClientType[key];
51
+ };
52
+ /**
53
+ * @internal
54
+ *
55
+ * Removes undefined from unions and adds yolo output types.
56
+ */
57
+ type UncheckedClientOutputTypes<ClientType extends object> = {
58
+ [key in keyof ClientType]: [ClientType[key]] extends [
59
+ InvokeFunction<infer InputTypes, infer OutputTypes, infer ConfigType>
60
+ ] ? InvokeFunction<NoUndefined<InputTypes>, RecursiveRequired<OutputTypes>, ConfigType> : [ClientType[key]] extends [InvokeMethod<infer FunctionInputTypes, infer FunctionOutputTypes>] ? InvokeMethod<NoUndefined<FunctionInputTypes>, RecursiveRequired<FunctionOutputTypes>> : ClientType[key];
61
+ };
62
+ export {};
@@ -1,5 +1,17 @@
1
- import { HttpRequest } from "../http";
1
+ import { HttpRequest, HttpResponse } from "../http";
2
2
  import { Identity } from "../identity/identity";
3
+ /**
4
+ * @internal
5
+ */
6
+ export interface ErrorHandler {
7
+ (signingProperties: Record<string, unknown>): <E extends Error>(error: E) => never;
8
+ }
9
+ /**
10
+ * @internal
11
+ */
12
+ export interface SuccessHandler {
13
+ (httpResponse: HttpResponse | unknown, signingProperties: Record<string, unknown>): void;
14
+ }
3
15
  /**
4
16
  * Interface to sign identity and signing properties.
5
17
  * @internal
@@ -13,4 +25,17 @@ export interface HttpSigner {
13
25
  * @returns signed request in a promise
14
26
  */
15
27
  sign(httpRequest: HttpRequest, identity: Identity, signingProperties: Record<string, unknown>): Promise<HttpRequest>;
28
+ /**
29
+ * Handler that executes after the {@link HttpSigner.sign} invocation and corresponding
30
+ * middleware throws an error.
31
+ * The error handler is expected to throw the error it receives, so the return type of the error handler is `never`.
32
+ * @internal
33
+ */
34
+ errorHandler?: ErrorHandler;
35
+ /**
36
+ * Handler that executes after the {@link HttpSigner.sign} invocation and corresponding
37
+ * middleware succeeds.
38
+ * @internal
39
+ */
40
+ successHandler?: SuccessHandler;
16
41
  }
@@ -28,6 +28,7 @@ export * from "./streaming-payload/streaming-blob-payload-input-types";
28
28
  export * from "./streaming-payload/streaming-blob-payload-output-types";
29
29
  export * from "./transfer";
30
30
  export * from "./transform/client-payload-blob-type-narrow";
31
+ export * from "./transform/no-undefined";
31
32
  export * from "./transform/type-transform";
32
33
  export * from "./uri";
33
34
  export * from "./util";
@@ -0,0 +1,82 @@
1
+ import { InvokeFunction, InvokeMethod } from "../client";
2
+ /**
3
+ * @public
4
+ *
5
+ * This type is intended as a type helper for generated clients.
6
+ * When initializing client, cast it to this type by passing
7
+ * the client constructor type as the type parameter.
8
+ *
9
+ * It will then recursively remove "undefined" as a union type from all
10
+ * input and output shapes' members. Note, this does not affect
11
+ * any member that is optional (?) such as outputs with no required members.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const client = new Client({}) as AssertiveClient<Client>;
16
+ * ```
17
+ */
18
+ export type AssertiveClient<Client extends object> = NarrowClientIOTypes<Client>;
19
+ /**
20
+ * @public
21
+ *
22
+ * This is similar to AssertiveClient but additionally changes all
23
+ * output types to (recursive) Required<T> so as to bypass all output nullability guards.
24
+ */
25
+ export type UncheckedClient<Client extends object> = UncheckedClientOutputTypes<Client>;
26
+ /**
27
+ * @internal
28
+ *
29
+ * Excludes undefined recursively.
30
+ */
31
+ export type NoUndefined<T> = T extends Function ? T : [
32
+ T
33
+ ] extends [
34
+ object
35
+ ] ? {
36
+ [key in keyof T]: NoUndefined<T[key]>;
37
+ } : Exclude<T, undefined>;
38
+ /**
39
+ * @internal
40
+ *
41
+ * Excludes undefined and optional recursively.
42
+ */
43
+ export type RecursiveRequired<T> = T extends Function ? T : [
44
+ T
45
+ ] extends [
46
+ object
47
+ ] ? {
48
+ [key in keyof T]-?: RecursiveRequired<T[key]>;
49
+ } : Exclude<T, undefined>;
50
+ /**
51
+ * @internal
52
+ *
53
+ * Removes undefined from unions.
54
+ */
55
+ type NarrowClientIOTypes<ClientType extends object> = {
56
+ [key in keyof ClientType]: [
57
+ ClientType[key]
58
+ ] extends [
59
+ InvokeFunction<infer InputTypes, infer OutputTypes, infer ConfigType>
60
+ ] ? InvokeFunction<NoUndefined<InputTypes>, NoUndefined<OutputTypes>, ConfigType> : [
61
+ ClientType[key]
62
+ ] extends [
63
+ InvokeMethod<infer FunctionInputTypes, infer FunctionOutputTypes>
64
+ ] ? InvokeMethod<NoUndefined<FunctionInputTypes>, NoUndefined<FunctionOutputTypes>> : ClientType[key];
65
+ };
66
+ /**
67
+ * @internal
68
+ *
69
+ * Removes undefined from unions and adds yolo output types.
70
+ */
71
+ type UncheckedClientOutputTypes<ClientType extends object> = {
72
+ [key in keyof ClientType]: [
73
+ ClientType[key]
74
+ ] extends [
75
+ InvokeFunction<infer InputTypes, infer OutputTypes, infer ConfigType>
76
+ ] ? InvokeFunction<NoUndefined<InputTypes>, RecursiveRequired<OutputTypes>, ConfigType> : [
77
+ ClientType[key]
78
+ ] extends [
79
+ InvokeMethod<infer FunctionInputTypes, infer FunctionOutputTypes>
80
+ ] ? InvokeMethod<NoUndefined<FunctionInputTypes>, RecursiveRequired<FunctionOutputTypes>> : ClientType[key];
81
+ };
82
+ export {};
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/types",
3
- "version": "2.5.0",
3
+ "version": "2.6.0",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/url-parser",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,8 +22,8 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/querystring-parser": "^2.0.13",
26
- "@smithy/types": "^2.5.0",
25
+ "@smithy/querystring-parser": "^2.0.14",
26
+ "@smithy/types": "^2.6.0",
27
27
  "tslib": "^2.5.0"
28
28
  },
29
29
  "typesVersions": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-browser",
3
- "version": "2.0.19",
3
+ "version": "2.0.20",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,9 +22,9 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/property-provider": "^2.0.14",
26
- "@smithy/smithy-client": "^2.1.15",
27
- "@smithy/types": "^2.5.0",
25
+ "@smithy/property-provider": "^2.0.15",
26
+ "@smithy/smithy-client": "^2.1.16",
27
+ "@smithy/types": "^2.6.0",
28
28
  "bowser": "^2.11.0",
29
29
  "tslib": "^2.5.0"
30
30
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-defaults-mode-node",
3
- "version": "2.0.25",
3
+ "version": "2.0.26",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -22,12 +22,12 @@
22
22
  },
23
23
  "license": "Apache-2.0",
24
24
  "dependencies": {
25
- "@smithy/config-resolver": "^2.0.18",
26
- "@smithy/credential-provider-imds": "^2.1.1",
27
- "@smithy/node-config-provider": "^2.1.5",
28
- "@smithy/property-provider": "^2.0.14",
29
- "@smithy/smithy-client": "^2.1.15",
30
- "@smithy/types": "^2.5.0",
25
+ "@smithy/config-resolver": "^2.0.19",
26
+ "@smithy/credential-provider-imds": "^2.1.2",
27
+ "@smithy/node-config-provider": "^2.1.6",
28
+ "@smithy/property-provider": "^2.0.15",
29
+ "@smithy/smithy-client": "^2.1.16",
30
+ "@smithy/types": "^2.6.0",
31
31
  "tslib": "^2.5.0"
32
32
  },
33
33
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-endpoints",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "Utilities to help with endpoint resolution.",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,8 +26,8 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@smithy/node-config-provider": "^2.1.5",
30
- "@smithy/types": "^2.5.0",
29
+ "@smithy/node-config-provider": "^2.1.6",
30
+ "@smithy/types": "^2.6.0",
31
31
  "tslib": "^2.5.0"
32
32
  },
33
33
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-middleware",
3
- "version": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "description": "Shared utilities for to be used in middleware packages.",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "license": "Apache-2.0",
28
28
  "dependencies": {
29
- "@smithy/types": "^2.5.0",
29
+ "@smithy/types": "^2.6.0",
30
30
  "tslib": "^2.5.0"
31
31
  },
32
32
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-retry",
3
- "version": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "description": "Shared retry utilities to be used in middleware packages.",
5
5
  "main": "./dist-cjs/index.js",
6
6
  "module": "./dist-es/index.js",
@@ -27,8 +27,8 @@
27
27
  },
28
28
  "license": "Apache-2.0",
29
29
  "dependencies": {
30
- "@smithy/service-error-classification": "^2.0.6",
31
- "@smithy/types": "^2.5.0",
30
+ "@smithy/service-error-classification": "^2.0.7",
31
+ "@smithy/types": "^2.6.0",
32
32
  "tslib": "^2.5.0"
33
33
  },
34
34
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/util-stream",
3
- "version": "2.0.20",
3
+ "version": "2.0.21",
4
4
  "scripts": {
5
5
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types && yarn build:types:downlevel'",
6
6
  "build:cjs": "yarn g:tsc -p tsconfig.cjs.json",
@@ -24,9 +24,9 @@
24
24
  },
25
25
  "license": "Apache-2.0",
26
26
  "dependencies": {
27
- "@smithy/fetch-http-handler": "^2.2.6",
28
- "@smithy/node-http-handler": "^2.1.9",
29
- "@smithy/types": "^2.5.0",
27
+ "@smithy/fetch-http-handler": "^2.2.7",
28
+ "@smithy/node-http-handler": "^2.1.10",
29
+ "@smithy/types": "^2.6.0",
30
30
  "@smithy/util-base64": "^2.0.1",
31
31
  "@smithy/util-buffer-from": "^2.0.0",
32
32
  "@smithy/util-hex-encoding": "^2.0.0",
@@ -34,7 +34,7 @@
34
34
  "tslib": "^2.5.0"
35
35
  },
36
36
  "devDependencies": {
37
- "@smithy/util-test": "^0.1.9",
37
+ "@smithy/util-test": "^0.1.10",
38
38
  "@types/chai-as-promised": "^7.1.2",
39
39
  "@types/node": "^14.14.31",
40
40
  "chai": "^4.2.0",
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@smithy/util-waiter",
3
- "version": "2.0.13",
3
+ "version": "2.0.14",
4
4
  "description": "Shared utilities for client waiters for the AWS SDK",
5
5
  "dependencies": {
6
- "@smithy/abort-controller": "^2.0.13",
7
- "@smithy/types": "^2.5.0",
6
+ "@smithy/abort-controller": "^2.0.14",
7
+ "@smithy/types": "^2.6.0",
8
8
  "tslib": "^2.5.0"
9
9
  },
10
10
  "scripts": {
package/package.json CHANGED
@@ -42,16 +42,16 @@
42
42
  "organization": false
43
43
  },
44
44
  "devDependencies": {
45
- "@cdk8s/projen-common": "0.0.470",
45
+ "@cdk8s/projen-common": "0.0.473",
46
46
  "@types/fs-extra": "^11.0.4",
47
47
  "@types/jest": "^27",
48
48
  "@types/node": "^16",
49
49
  "@typescript-eslint/eslint-plugin": "^6",
50
50
  "@typescript-eslint/parser": "^6",
51
- "aws-cdk": "^2.110.0",
51
+ "aws-cdk": "^2.110.1",
52
52
  "aws-cdk-lib": "2.109.0",
53
53
  "cdk8s": "2.68.4",
54
- "cdk8s-cli": "^2.180.0",
54
+ "cdk8s-cli": "^2.184.0",
55
55
  "constructs": "10.3.0",
56
56
  "eslint": "^8",
57
57
  "eslint-import-resolver-typescript": "^3.6.1",
@@ -64,12 +64,11 @@
64
64
  "jsii-docgen": "^9.2.2",
65
65
  "jsii-pacmak": "^1.92.0",
66
66
  "jsii-rosetta": "^5",
67
- "npm-check-updates": "^16",
68
- "projen": "^0.76.29",
67
+ "projen": "^0.77.2",
69
68
  "standard-version": "^9",
70
69
  "ts-jest": "^27",
71
70
  "ts-node": "^10.9.1",
72
- "typescript": "^5.2.2"
71
+ "typescript": "^5.3.2"
73
72
  },
74
73
  "peerDependencies": {
75
74
  "aws-cdk-lib": "^2.106.1",
@@ -93,7 +92,7 @@
93
92
  "publishConfig": {
94
93
  "access": "public"
95
94
  },
96
- "version": "0.0.35",
95
+ "version": "0.0.37",
97
96
  "jest": {
98
97
  "testMatch": [
99
98
  "<rootDir>/src/**/__tests__/**/*.ts?(x)",