cloudstructs 0.2.3 → 0.2.7

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 (198) hide show
  1. package/.gitattributes +1 -0
  2. package/.jsii +215 -5
  3. package/API.md +56 -0
  4. package/README.md +2 -0
  5. package/lib/codecommit-mirror/index.js +2 -2
  6. package/lib/ecs-service-roller/index.js +2 -2
  7. package/lib/email-receiver/receiver.js +1 -1
  8. package/lib/index.d.ts +1 -0
  9. package/lib/index.js +2 -1
  10. package/lib/saml-identity-provider/index.js +2 -2
  11. package/lib/slack-app/index.d.ts +95 -0
  12. package/lib/slack-app/index.js +49 -0
  13. package/lib/slack-app/provider.d.ts +11 -0
  14. package/lib/slack-app/provider.handler.d.ts +2 -0
  15. package/lib/slack-app/provider.handler.js +100 -0
  16. package/lib/slack-app/provider.js +33 -0
  17. package/lib/slack-events/index.js +1 -1
  18. package/lib/slack-textract/index.js +1 -1
  19. package/lib/state-machine-cr-provider/index.js +1 -1
  20. package/lib/static-website/index.js +1 -1
  21. package/lib/url-shortener/index.js +1 -1
  22. package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
  23. package/node_modules/@types/cacheable-request/node_modules/@types/node/assert.d.ts +1 -1
  24. package/node_modules/@types/cacheable-request/node_modules/@types/node/async_hooks.d.ts +7 -3
  25. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +9 -9
  26. package/node_modules/@types/cacheable-request/node_modules/@types/node/child_process.d.ts +1 -1
  27. package/node_modules/@types/cacheable-request/node_modules/@types/node/cluster.d.ts +1 -1
  28. package/node_modules/@types/cacheable-request/node_modules/@types/node/console.d.ts +1 -1
  29. package/node_modules/@types/cacheable-request/node_modules/@types/node/crypto.d.ts +2 -2
  30. package/node_modules/@types/cacheable-request/node_modules/@types/node/dgram.d.ts +2 -2
  31. package/node_modules/@types/cacheable-request/node_modules/@types/node/diagnostics_channel.d.ts +1 -1
  32. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns/promises.d.ts +12 -10
  33. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns.d.ts +17 -12
  34. package/node_modules/@types/cacheable-request/node_modules/@types/node/domain.d.ts +1 -1
  35. package/node_modules/@types/cacheable-request/node_modules/@types/node/events.d.ts +2 -2
  36. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs/promises.d.ts +5 -5
  37. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs.d.ts +62 -11
  38. package/node_modules/@types/cacheable-request/node_modules/@types/node/http.d.ts +20 -3
  39. package/node_modules/@types/cacheable-request/node_modules/@types/node/http2.d.ts +2 -2
  40. package/node_modules/@types/cacheable-request/node_modules/@types/node/https.d.ts +1 -1
  41. package/node_modules/@types/cacheable-request/node_modules/@types/node/index.d.ts +1 -1
  42. package/node_modules/@types/cacheable-request/node_modules/@types/node/inspector.d.ts +4 -5
  43. package/node_modules/@types/cacheable-request/node_modules/@types/node/net.d.ts +11 -11
  44. package/node_modules/@types/cacheable-request/node_modules/@types/node/os.d.ts +1 -1
  45. package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
  46. package/node_modules/@types/cacheable-request/node_modules/@types/node/path.d.ts +1 -1
  47. package/node_modules/@types/cacheable-request/node_modules/@types/node/perf_hooks.d.ts +4 -4
  48. package/node_modules/@types/cacheable-request/node_modules/@types/node/punycode.d.ts +1 -1
  49. package/node_modules/@types/cacheable-request/node_modules/@types/node/querystring.d.ts +1 -1
  50. package/node_modules/@types/cacheable-request/node_modules/@types/node/readline.d.ts +121 -14
  51. package/node_modules/@types/cacheable-request/node_modules/@types/node/repl.d.ts +1 -1
  52. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/web.d.ts +3 -65
  53. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream.d.ts +2 -2
  54. package/node_modules/@types/cacheable-request/node_modules/@types/node/string_decoder.d.ts +1 -1
  55. package/node_modules/@types/cacheable-request/node_modules/@types/node/timers.d.ts +1 -1
  56. package/node_modules/@types/cacheable-request/node_modules/@types/node/tls.d.ts +1 -1
  57. package/node_modules/@types/cacheable-request/node_modules/@types/node/trace_events.d.ts +1 -1
  58. package/node_modules/@types/cacheable-request/node_modules/@types/node/tty.d.ts +1 -1
  59. package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +58 -18
  60. package/node_modules/@types/cacheable-request/node_modules/@types/node/util.d.ts +3 -3
  61. package/node_modules/@types/cacheable-request/node_modules/@types/node/v8.d.ts +3 -3
  62. package/node_modules/@types/cacheable-request/node_modules/@types/node/vm.d.ts +1 -1
  63. package/node_modules/@types/cacheable-request/node_modules/@types/node/wasi.d.ts +1 -1
  64. package/node_modules/@types/cacheable-request/node_modules/@types/node/worker_threads.d.ts +4 -4
  65. package/node_modules/@types/cacheable-request/node_modules/@types/node/zlib.d.ts +1 -1
  66. package/node_modules/@types/is-stream/node_modules/@types/node/README.md +1 -1
  67. package/node_modules/@types/is-stream/node_modules/@types/node/assert.d.ts +1 -1
  68. package/node_modules/@types/is-stream/node_modules/@types/node/async_hooks.d.ts +7 -3
  69. package/node_modules/@types/is-stream/node_modules/@types/node/buffer.d.ts +9 -9
  70. package/node_modules/@types/is-stream/node_modules/@types/node/child_process.d.ts +1 -1
  71. package/node_modules/@types/is-stream/node_modules/@types/node/cluster.d.ts +1 -1
  72. package/node_modules/@types/is-stream/node_modules/@types/node/console.d.ts +1 -1
  73. package/node_modules/@types/is-stream/node_modules/@types/node/crypto.d.ts +2 -2
  74. package/node_modules/@types/is-stream/node_modules/@types/node/dgram.d.ts +2 -2
  75. package/node_modules/@types/is-stream/node_modules/@types/node/diagnostics_channel.d.ts +1 -1
  76. package/node_modules/@types/is-stream/node_modules/@types/node/dns/promises.d.ts +12 -10
  77. package/node_modules/@types/is-stream/node_modules/@types/node/dns.d.ts +17 -12
  78. package/node_modules/@types/is-stream/node_modules/@types/node/domain.d.ts +1 -1
  79. package/node_modules/@types/is-stream/node_modules/@types/node/events.d.ts +2 -2
  80. package/node_modules/@types/is-stream/node_modules/@types/node/fs/promises.d.ts +5 -5
  81. package/node_modules/@types/is-stream/node_modules/@types/node/fs.d.ts +62 -11
  82. package/node_modules/@types/is-stream/node_modules/@types/node/http.d.ts +20 -3
  83. package/node_modules/@types/is-stream/node_modules/@types/node/http2.d.ts +2 -2
  84. package/node_modules/@types/is-stream/node_modules/@types/node/https.d.ts +1 -1
  85. package/node_modules/@types/is-stream/node_modules/@types/node/index.d.ts +1 -1
  86. package/node_modules/@types/is-stream/node_modules/@types/node/inspector.d.ts +4 -5
  87. package/node_modules/@types/is-stream/node_modules/@types/node/net.d.ts +11 -11
  88. package/node_modules/@types/is-stream/node_modules/@types/node/os.d.ts +1 -1
  89. package/node_modules/@types/is-stream/node_modules/@types/node/package.json +2 -2
  90. package/node_modules/@types/is-stream/node_modules/@types/node/path.d.ts +1 -1
  91. package/node_modules/@types/is-stream/node_modules/@types/node/perf_hooks.d.ts +4 -4
  92. package/node_modules/@types/is-stream/node_modules/@types/node/punycode.d.ts +1 -1
  93. package/node_modules/@types/is-stream/node_modules/@types/node/querystring.d.ts +1 -1
  94. package/node_modules/@types/is-stream/node_modules/@types/node/readline.d.ts +121 -14
  95. package/node_modules/@types/is-stream/node_modules/@types/node/repl.d.ts +1 -1
  96. package/node_modules/@types/is-stream/node_modules/@types/node/stream/web.d.ts +3 -65
  97. package/node_modules/@types/is-stream/node_modules/@types/node/stream.d.ts +2 -2
  98. package/node_modules/@types/is-stream/node_modules/@types/node/string_decoder.d.ts +1 -1
  99. package/node_modules/@types/is-stream/node_modules/@types/node/timers.d.ts +1 -1
  100. package/node_modules/@types/is-stream/node_modules/@types/node/tls.d.ts +1 -1
  101. package/node_modules/@types/is-stream/node_modules/@types/node/trace_events.d.ts +1 -1
  102. package/node_modules/@types/is-stream/node_modules/@types/node/tty.d.ts +1 -1
  103. package/node_modules/@types/is-stream/node_modules/@types/node/url.d.ts +58 -18
  104. package/node_modules/@types/is-stream/node_modules/@types/node/util.d.ts +3 -3
  105. package/node_modules/@types/is-stream/node_modules/@types/node/v8.d.ts +3 -3
  106. package/node_modules/@types/is-stream/node_modules/@types/node/vm.d.ts +1 -1
  107. package/node_modules/@types/is-stream/node_modules/@types/node/wasi.d.ts +1 -1
  108. package/node_modules/@types/is-stream/node_modules/@types/node/worker_threads.d.ts +4 -4
  109. package/node_modules/@types/is-stream/node_modules/@types/node/zlib.d.ts +1 -1
  110. package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
  111. package/node_modules/@types/keyv/node_modules/@types/node/assert.d.ts +1 -1
  112. package/node_modules/@types/keyv/node_modules/@types/node/async_hooks.d.ts +7 -3
  113. package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +9 -9
  114. package/node_modules/@types/keyv/node_modules/@types/node/child_process.d.ts +1 -1
  115. package/node_modules/@types/keyv/node_modules/@types/node/cluster.d.ts +1 -1
  116. package/node_modules/@types/keyv/node_modules/@types/node/console.d.ts +1 -1
  117. package/node_modules/@types/keyv/node_modules/@types/node/crypto.d.ts +2 -2
  118. package/node_modules/@types/keyv/node_modules/@types/node/dgram.d.ts +2 -2
  119. package/node_modules/@types/keyv/node_modules/@types/node/diagnostics_channel.d.ts +1 -1
  120. package/node_modules/@types/keyv/node_modules/@types/node/dns/promises.d.ts +12 -10
  121. package/node_modules/@types/keyv/node_modules/@types/node/dns.d.ts +17 -12
  122. package/node_modules/@types/keyv/node_modules/@types/node/domain.d.ts +1 -1
  123. package/node_modules/@types/keyv/node_modules/@types/node/events.d.ts +2 -2
  124. package/node_modules/@types/keyv/node_modules/@types/node/fs/promises.d.ts +5 -5
  125. package/node_modules/@types/keyv/node_modules/@types/node/fs.d.ts +62 -11
  126. package/node_modules/@types/keyv/node_modules/@types/node/http.d.ts +20 -3
  127. package/node_modules/@types/keyv/node_modules/@types/node/http2.d.ts +2 -2
  128. package/node_modules/@types/keyv/node_modules/@types/node/https.d.ts +1 -1
  129. package/node_modules/@types/keyv/node_modules/@types/node/index.d.ts +1 -1
  130. package/node_modules/@types/keyv/node_modules/@types/node/inspector.d.ts +4 -5
  131. package/node_modules/@types/keyv/node_modules/@types/node/net.d.ts +11 -11
  132. package/node_modules/@types/keyv/node_modules/@types/node/os.d.ts +1 -1
  133. package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
  134. package/node_modules/@types/keyv/node_modules/@types/node/path.d.ts +1 -1
  135. package/node_modules/@types/keyv/node_modules/@types/node/perf_hooks.d.ts +4 -4
  136. package/node_modules/@types/keyv/node_modules/@types/node/punycode.d.ts +1 -1
  137. package/node_modules/@types/keyv/node_modules/@types/node/querystring.d.ts +1 -1
  138. package/node_modules/@types/keyv/node_modules/@types/node/readline.d.ts +121 -14
  139. package/node_modules/@types/keyv/node_modules/@types/node/repl.d.ts +1 -1
  140. package/node_modules/@types/keyv/node_modules/@types/node/stream/web.d.ts +3 -65
  141. package/node_modules/@types/keyv/node_modules/@types/node/stream.d.ts +2 -2
  142. package/node_modules/@types/keyv/node_modules/@types/node/string_decoder.d.ts +1 -1
  143. package/node_modules/@types/keyv/node_modules/@types/node/timers.d.ts +1 -1
  144. package/node_modules/@types/keyv/node_modules/@types/node/tls.d.ts +1 -1
  145. package/node_modules/@types/keyv/node_modules/@types/node/trace_events.d.ts +1 -1
  146. package/node_modules/@types/keyv/node_modules/@types/node/tty.d.ts +1 -1
  147. package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +58 -18
  148. package/node_modules/@types/keyv/node_modules/@types/node/util.d.ts +3 -3
  149. package/node_modules/@types/keyv/node_modules/@types/node/v8.d.ts +3 -3
  150. package/node_modules/@types/keyv/node_modules/@types/node/vm.d.ts +1 -1
  151. package/node_modules/@types/keyv/node_modules/@types/node/wasi.d.ts +1 -1
  152. package/node_modules/@types/keyv/node_modules/@types/node/worker_threads.d.ts +4 -4
  153. package/node_modules/@types/keyv/node_modules/@types/node/zlib.d.ts +1 -1
  154. package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
  155. package/node_modules/@types/responselike/node_modules/@types/node/assert.d.ts +1 -1
  156. package/node_modules/@types/responselike/node_modules/@types/node/async_hooks.d.ts +7 -3
  157. package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +9 -9
  158. package/node_modules/@types/responselike/node_modules/@types/node/child_process.d.ts +1 -1
  159. package/node_modules/@types/responselike/node_modules/@types/node/cluster.d.ts +1 -1
  160. package/node_modules/@types/responselike/node_modules/@types/node/console.d.ts +1 -1
  161. package/node_modules/@types/responselike/node_modules/@types/node/crypto.d.ts +2 -2
  162. package/node_modules/@types/responselike/node_modules/@types/node/dgram.d.ts +2 -2
  163. package/node_modules/@types/responselike/node_modules/@types/node/diagnostics_channel.d.ts +1 -1
  164. package/node_modules/@types/responselike/node_modules/@types/node/dns/promises.d.ts +12 -10
  165. package/node_modules/@types/responselike/node_modules/@types/node/dns.d.ts +17 -12
  166. package/node_modules/@types/responselike/node_modules/@types/node/domain.d.ts +1 -1
  167. package/node_modules/@types/responselike/node_modules/@types/node/events.d.ts +2 -2
  168. package/node_modules/@types/responselike/node_modules/@types/node/fs/promises.d.ts +5 -5
  169. package/node_modules/@types/responselike/node_modules/@types/node/fs.d.ts +62 -11
  170. package/node_modules/@types/responselike/node_modules/@types/node/http.d.ts +20 -3
  171. package/node_modules/@types/responselike/node_modules/@types/node/http2.d.ts +2 -2
  172. package/node_modules/@types/responselike/node_modules/@types/node/https.d.ts +1 -1
  173. package/node_modules/@types/responselike/node_modules/@types/node/index.d.ts +1 -1
  174. package/node_modules/@types/responselike/node_modules/@types/node/inspector.d.ts +4 -5
  175. package/node_modules/@types/responselike/node_modules/@types/node/net.d.ts +11 -11
  176. package/node_modules/@types/responselike/node_modules/@types/node/os.d.ts +1 -1
  177. package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
  178. package/node_modules/@types/responselike/node_modules/@types/node/path.d.ts +1 -1
  179. package/node_modules/@types/responselike/node_modules/@types/node/perf_hooks.d.ts +4 -4
  180. package/node_modules/@types/responselike/node_modules/@types/node/punycode.d.ts +1 -1
  181. package/node_modules/@types/responselike/node_modules/@types/node/querystring.d.ts +1 -1
  182. package/node_modules/@types/responselike/node_modules/@types/node/readline.d.ts +121 -14
  183. package/node_modules/@types/responselike/node_modules/@types/node/repl.d.ts +1 -1
  184. package/node_modules/@types/responselike/node_modules/@types/node/stream/web.d.ts +3 -65
  185. package/node_modules/@types/responselike/node_modules/@types/node/stream.d.ts +2 -2
  186. package/node_modules/@types/responselike/node_modules/@types/node/string_decoder.d.ts +1 -1
  187. package/node_modules/@types/responselike/node_modules/@types/node/timers.d.ts +1 -1
  188. package/node_modules/@types/responselike/node_modules/@types/node/tls.d.ts +1 -1
  189. package/node_modules/@types/responselike/node_modules/@types/node/trace_events.d.ts +1 -1
  190. package/node_modules/@types/responselike/node_modules/@types/node/tty.d.ts +1 -1
  191. package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +58 -18
  192. package/node_modules/@types/responselike/node_modules/@types/node/util.d.ts +3 -3
  193. package/node_modules/@types/responselike/node_modules/@types/node/v8.d.ts +3 -3
  194. package/node_modules/@types/responselike/node_modules/@types/node/vm.d.ts +1 -1
  195. package/node_modules/@types/responselike/node_modules/@types/node/wasi.d.ts +1 -1
  196. package/node_modules/@types/responselike/node_modules/@types/node/worker_threads.d.ts +4 -4
  197. package/node_modules/@types/responselike/node_modules/@types/node/zlib.d.ts +1 -1
  198. package/package.json +10 -9
@@ -0,0 +1,2 @@
1
+ import { OnEventRequest, OnEventResponse } from 'aws-cdk-lib/custom-resources/lib/provider-framework/types';
2
+ export declare function handler(event: OnEventRequest): Promise<OnEventResponse>;
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handler = void 0;
4
+ const aws_sdk_1 = require("aws-sdk"); // eslint-disable-line import/no-extraneous-dependencies
5
+ const got_1 = require("got");
6
+ const secretsmanager = new aws_sdk_1.SecretsManager({ apiVersion: '2017-10-17' });
7
+ const slackClient = got_1.default.extend({
8
+ prefixUrl: 'https://slack.com/api',
9
+ });
10
+ async function handler(event) {
11
+ var _a, _b;
12
+ console.log('Event: %j', event);
13
+ const data = await secretsmanager.getSecretValue({
14
+ SecretId: event.ResourceProperties.configurationTokenSecretArn,
15
+ }).promise();
16
+ if (!data.SecretString) {
17
+ throw new Error('No secret string found in configuration token secret');
18
+ }
19
+ const secret = JSON.parse(data.SecretString);
20
+ let accessToken = secret.accessToken;
21
+ if (!accessToken || isExpired((_a = secret.exp) !== null && _a !== void 0 ? _a : 0)) {
22
+ if (!secret.refreshToken) {
23
+ throw new Error('No refresh token found in configuration token secret');
24
+ }
25
+ console.log('Refreshing access token');
26
+ const rotate = await slackClient.get('tooling.tokens.rotate', {
27
+ searchParams: { refresh_token: secret.refreshToken },
28
+ }).json();
29
+ if (!rotate.ok) {
30
+ throw new Error(`Failed to refresh access token: ${rotate.error}`);
31
+ }
32
+ console.log('Access token refreshed');
33
+ accessToken = rotate.token;
34
+ console.log('Saving access token');
35
+ const putSecretValue = await secretsmanager.putSecretValue({
36
+ SecretId: event.ResourceProperties.configurationTokenSecretArn,
37
+ SecretString: JSON.stringify({
38
+ accessToken,
39
+ refreshToken: rotate.refresh_token,
40
+ exp: rotate.exp,
41
+ }),
42
+ }).promise();
43
+ console.log(`Successfully saved access token in secret ${putSecretValue.ARN}`);
44
+ }
45
+ const operation = event.RequestType.toLowerCase();
46
+ console.log('Calling manifest API');
47
+ const response = await slackClient.post(`apps.manifest.${operation}`, {
48
+ headers: { Authorization: `Bearer ${accessToken}` },
49
+ json: getManifestRequest(event),
50
+ }).json();
51
+ if (!response.ok) {
52
+ const errors = response.errors
53
+ ? response.errors.map((err) => `${err.message} at ${err.pointer}`).join('\n')
54
+ : '';
55
+ throw new Error(`Failed to ${operation} manifest: ${response.error}.${errors ? `\n${errors}}` : ''}`);
56
+ }
57
+ console.log(`Successfully ${operation}d Slack app ${(_b = event.PhysicalResourceId) !== null && _b !== void 0 ? _b : response.app_id}`);
58
+ if (event.RequestType === 'Create' && response.credentials) {
59
+ console.log('Saving app credentials');
60
+ const putSecretValue = await secretsmanager.putSecretValue({
61
+ SecretId: event.ResourceProperties.credentialsSecretArn,
62
+ SecretString: JSON.stringify({
63
+ appId: response.app_id,
64
+ clientId: response.credentials.client_id,
65
+ clientSecret: response.credentials.client_secret,
66
+ verificationToken: response.credentials.verification_token,
67
+ signingSecret: response.credentials.signing_secret,
68
+ }),
69
+ }).promise();
70
+ console.log(`Successfully saved app credentials in secret ${putSecretValue.ARN}`);
71
+ }
72
+ return {
73
+ PhysicalResourceId: response.app_id,
74
+ Data: {
75
+ appId: response.app_id,
76
+ },
77
+ };
78
+ }
79
+ exports.handler = handler;
80
+ function isExpired(iat) {
81
+ return (iat - (Date.now() / 1000)) < 0;
82
+ }
83
+ function getManifestRequest(event) {
84
+ switch (event.RequestType) {
85
+ case 'Create':
86
+ return {
87
+ manifest: event.ResourceProperties.manifest,
88
+ };
89
+ case 'Update':
90
+ return {
91
+ app_id: event.PhysicalResourceId,
92
+ manifest: event.ResourceProperties.manifest,
93
+ };
94
+ case 'Delete':
95
+ return {
96
+ app_id: event.PhysicalResourceId,
97
+ };
98
+ }
99
+ }
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zbGFjay1hcHAvcHJvdmlkZXIuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxxQ0FBeUMsQ0FBQyx3REFBd0Q7QUFDbEcsNkJBQXNCO0FBaUR0QixNQUFNLGNBQWMsR0FBRyxJQUFJLHdCQUFjLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztBQUV4RSxNQUFNLFdBQVcsR0FBRyxhQUFHLENBQUMsTUFBTSxDQUFDO0lBQzdCLFNBQVMsRUFBRSx1QkFBdUI7Q0FDbkMsQ0FBQyxDQUFDO0FBRUksS0FBSyxVQUFVLE9BQU8sQ0FBQyxLQUFxQjs7SUFDakQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFaEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxjQUFjLENBQUMsY0FBYyxDQUFDO1FBQy9DLFFBQVEsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsMkJBQTJCO0tBQy9ELENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUViLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1FBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztLQUN6RTtJQUVELE1BQU0sTUFBTSxHQUFnQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUUxRCxJQUFJLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO0lBRXJDLElBQUksQ0FBQyxXQUFXLElBQUksU0FBUyxPQUFDLE1BQU0sQ0FBQyxHQUFHLG1DQUFJLENBQUMsQ0FBQyxFQUFFO1FBQzlDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztTQUN6RTtRQUVELE9BQU8sQ0FBQyxHQUFH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QUFXLENBQUMsYUFBYTtnQkFDaEQsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0I7Z0JBQzFELGFBQWEsRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLGNBQWM7YUFDbkQsQ0FBQztTQUNILENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNiLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0RBQWdELGNBQWMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0tBQ25GO0lBRUQsT0FBTztRQUNMLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxNQUFNO1FBQ25DLElBQUksRUFBRTtZQUNKLEtBQUssRUFBRSxRQUFRLENBQUMsTUFBTTtTQUN2QjtLQUNGLENBQUM7QUFDSixDQUFDO0FBakZELDBCQWlGQztBQUVELFNBQVMsU0FBUyxDQUFDLEdBQVc7SUFDNUIsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFxQjtJQUMvQyxRQUFRLEtBQUssQ0FBQyxXQUFXLEVBQUU7UUFDekIsS0FBSyxRQUFRO1lBQ1gsT0FBTztnQkFDTCxRQUFRLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFFBQVE7YUFDNUMsQ0FBQztRQUNKLEtBQUssUUFBUTtZQUNYLE9BQU87Z0JBQ0wsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7Z0JBQ2hDLFFBQVEsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBUTthQUM1QyxDQUFDO1FBQ0osS0FBSyxRQUFRO1lBQ1gsT0FBTztnQkFDTCxNQUFNLEVBQUUsS0FBSyxDQUFDLGtCQUFtQjthQUNsQyxDQUFDO0tBQ0w7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHsgT25FdmVudFJlcXVlc3QsIE9uRXZlbnRSZXNwb25zZSB9IGZyb20gJ2F3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXMvbGliL3Byb3ZpZGVyLWZyYW1ld29yay90eXBlcyc7XG5pbXBvcnQgeyBTZWNyZXRzTWFuYWdlciB9IGZyb20gJ2F3cy1zZGsnOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1xuaW1wb3J0IGdvdCBmcm9tICdnb3QnO1xuXG5pbnRlcmZhY2UgU2xhY2tTZWNyZXQge1xuICBhY2Nlc3NUb2tlbj86IHN0cmluZztcbiAgcmVmcmVzaFRva2VuPzogc3RyaW5nO1xuICBleHA/OiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBSb3RhdGVSZXNwb25zZSB7XG4gIG9rOiBib29sZWFuO1xuICBlcnJvcj86IHN0cmluZztcbiAgdG9rZW46IHN0cmluZztcbiAgcmVmcmVzaF90b2tlbjogc3RyaW5nO1xuICB0ZWFtX2lkOiBzdHJpbmc7XG4gIHVzZXJfaWQ6IHN0cmluZztcbiAgaWF0OiBudW1iZXI7XG4gIGV4cDogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgTWFuaWZlc3RDcmVhdGVSZXF1ZXN0IHtcbiAgbWFuaWZlc3Q6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIE1hbmlmZXN0VXBkYXRlUmVxdWVzdCBleHRlbmRzIE1hbmlmZXN0Q3JlYXRlUmVxdWVzdCB7XG4gIGFwcF9pZDogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgTWFuaWZlc3REZWxldGVSZXF1ZXN0IHtcbiAgYXBwX2lkOiBzdHJpbmc7XG59XG5cbnR5cGUgTWFuaWZlc3RSZXF1ZXN0ID0gTWFuaWZlc3RDcmVhdGVSZXF1ZXN0IHwgTWFuaWZlc3RVcGRhdGVSZXF1ZXN0IHwgTWFuaWZlc3REZWxldGVSZXF1ZXN0O1xuXG5pbnRlcmZhY2UgTWFuaWZlc3RSZXNwb25zZSB7XG4gIG9rOiBib29sZWFuO1xuICBlcnJvcj86IHN0cmluZztcbiAgZXJyb3JzPzoge1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBwb2ludGVyOiBzdHJpbmc7XG4gIH1bXTtcbiAgYXBwX2lkPzogc3RyaW5nO1xuICBjcmVkZW50aWFscz86IHtcbiAgICBjbGllbnRfaWQ6IHN0cmluZztcbiAgICBjbGllbnRfc2VjcmV0OiBzdHJpbmc7XG4gICAgdmVyaWZpY2F0aW9uX3Rva2VuOiBzdHJpbmc7XG4gICAgc2lnbmluZ19zZWNyZXQ6IHN0cmluZztcbiAgfTtcbn1cblxuY29uc3Qgc2VjcmV0c21hbmFnZXIgPSBuZXcgU2VjcmV0c01hbmFnZXIoeyBhcGlWZXJzaW9uOiAnMjAxNy0xMC0xNycgfSk7XG5cbmNvbnN0IHNsYWNrQ2xpZW50ID0gZ290LmV4dGVuZCh7XG4gIHByZWZpeFVybDogJ2h0dHBzOi8vc2xhY2suY29tL2FwaScsXG59KTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQ6IE9uRXZlbnRSZXF1ZXN0KTogUHJvbWlzZTxPbkV2ZW50UmVzcG9uc2U+IHtcbiAgY29uc29sZS5sb2coJ0V2ZW50OiAlaicsIGV2ZW50KTtcblxuICBjb25zdCBkYXRhID0gYXdhaXQgc2VjcmV0c21hbmFnZXIuZ2V0U2VjcmV0VmFsdWUoe1xuICAgIFNlY3JldElkOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0QXJuLFxuICB9KS5wcm9taXNlKCk7XG5cbiAgaWYgKCFkYXRhLlNlY3JldFN0cmluZykge1xuICAgIHRocm93IG5ldyBFcnJvcignTm8gc2VjcmV0IHN0cmluZyBmb3VuZCBpbiBjb25maWd1cmF0aW9uIHRva2VuIHNlY3JldCcpO1xuICB9XG5cbiAgY29uc3Qgc2VjcmV0OiBTbGFja1NlY3JldCA9IEpTT04ucGFyc2UoZGF0YS5TZWNyZXRTdHJpbmcpO1xuXG4gIGxldCBhY2Nlc3NUb2tlbiA9IHNlY3JldC5hY2Nlc3NUb2tlbjtcblxuICBpZiAoIWFjY2Vzc1Rva2VuIHx8IGlzRXhwaXJlZChzZWNyZXQuZXhwID8/IDApKSB7XG4gICAgaWYgKCFzZWNyZXQucmVmcmVzaFRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHJlZnJlc2ggdG9rZW4gZm91bmQgaW4gY29uZmlndXJhdGlvbiB0b2tlbiBzZWNyZXQnKTtcbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZygnUmVmcmVzaGluZyBhY2Nlc3MgdG9rZW4nKTtcbiAgICBjb25zdCByb3RhdGUgPSBhd2FpdCBzbGFja0NsaWVudC5nZXQoJ3Rvb2xpbmcudG9rZW5zLnJvdGF0ZScsIHtcbiAgICAgIHNlYXJjaFBhcmFtczogeyByZWZyZXNoX3Rva2VuOiBzZWNyZXQucmVmcmVzaFRva2VuIH0sXG4gICAgfSkuanNvbjxSb3RhdGVSZXNwb25zZT4oKTtcblxuICAgIGlmICghcm90YXRlLm9rKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byByZWZyZXNoIGFjY2VzcyB0b2tlbjogJHtyb3RhdGUuZXJyb3J9YCk7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKCdBY2Nlc3MgdG9rZW4gcmVmcmVzaGVkJyk7XG5cbiAgICBhY2Nlc3NUb2tlbiA9IHJvdGF0ZS50b2tlbjtcblxuICAgIGNvbnNvbGUubG9nKCdTYXZpbmcgYWNjZXNzIHRva2VuJyk7XG4gICAgY29uc3QgcHV0U2VjcmV0VmFsdWUgPSBhd2FpdCBzZWNyZXRzbWFuYWdlci5wdXRTZWNyZXRWYWx1ZSh7XG4gICAgICBTZWNyZXRJZDogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLmNvbmZpZ3VyYXRpb25Ub2tlblNlY3JldEFybixcbiAgICAgIFNlY3JldFN0cmluZzogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBhY2Nlc3NUb2tlbixcbiAgICAgICAgcmVmcmVzaFRva2VuOiByb3RhdGUucmVmcmVzaF90b2tlbixcbiAgICAgICAgZXhwOiByb3RhdGUuZXhwLFxuICAgICAgfSksXG4gICAgfSkucHJvbWlzZSgpO1xuICAgIGNvbnNvbGUubG9nKGBTdWNjZXNzZnVsbHkgc2F2ZWQgYWNjZXNzIHRva2VuIGluIHNlY3JldCAke3B1dFNlY3JldFZhbHVlLkFSTn1gKTtcbiAgfVxuXG4gIGNvbnN0IG9wZXJhdGlvbiA9IGV2ZW50LlJlcXVlc3RUeXBlLnRvTG93ZXJDYXNlKCk7XG4gIGNvbnNvbGUubG9nKCdDYWxsaW5nIG1hbmlmZXN0IEFQSScpO1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHNsYWNrQ2xpZW50LnBvc3QoYGFwcHMubWFuaWZlc3QuJHtvcGVyYXRpb259YCwge1xuICAgIGhlYWRlcnM6IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2FjY2Vzc1Rva2VufWAgfSxcbiAgICBqc29uOiBnZXRNYW5pZmVzdFJlcXVlc3QoZXZlbnQpLFxuICB9KS5qc29uPE1hbmlmZXN0UmVzcG9uc2U+KCk7XG5cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIGNvbnN0IGVycm9ycyA9IHJlc3BvbnNlLmVycm9yc1xuICAgICAgPyByZXNwb25zZS5lcnJvcnMubWFwKChlcnIpID0+IGAke2Vyci5tZXNzYWdlfSBhdCAke2Vyci5wb2ludGVyfWApLmpvaW4oJ1xcbicpXG4gICAgICA6ICcnO1xuICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvICR7b3BlcmF0aW9ufSBtYW5pZmVzdDogJHtyZXNwb25zZS5lcnJvcn0uJHtlcnJvcnMgPyBgXFxuJHtlcnJvcnN9fWAgOiAnJ31gKTtcbiAgfVxuXG4gIGNvbnNvbGUubG9nKGBTdWNjZXNzZnVsbHkgJHtvcGVyYXRpb259ZCBTbGFjayBhcHAgJHtldmVudC5QaHlzaWNhbFJlc291cmNlSWQgPz8gcmVzcG9uc2UuYXBwX2lkfWApO1xuXG4gIGlmIChldmVudC5SZXF1ZXN0VHlwZSA9PT0gJ0NyZWF0ZScgJiYgcmVzcG9uc2UuY3JlZGVudGlhbHMpIHtcbiAgICBjb25zb2xlLmxvZygnU2F2aW5nIGFwcCBjcmVkZW50aWFscycpO1xuICAgIGNvbnN0IHB1dFNlY3JldFZhbHVlID0gYXdhaXQgc2VjcmV0c21hbmFnZXIucHV0U2VjcmV0VmFsdWUoe1xuICAgICAgU2VjcmV0SWQ6IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5jcmVkZW50aWFsc1NlY3JldEFybixcbiAgICAgIFNlY3JldFN0cmluZzogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBhcHBJZDogcmVzcG9uc2UuYXBwX2lkLFxuICAgICAgICBjbGllbnRJZDogcmVzcG9uc2UuY3JlZGVudGlhbHMuY2xpZW50X2lkLFxuICAgICAgICBjbGllbnRTZWNyZXQ6IHJlc3BvbnNlLmNyZWRlbnRpYWxzLmNsaWVudF9zZWNyZXQsXG4gICAgICAgIHZlcmlmaWNhdGlvblRva2VuOiByZXNwb25zZS5jcmVkZW50aWFscy52ZXJpZmljYXRpb25fdG9rZW4sXG4gICAgICAgIHNpZ25pbmdTZWNyZXQ6IHJlc3BvbnNlLmNyZWRlbnRpYWxzLnNpZ25pbmdfc2VjcmV0LFxuICAgICAgfSksXG4gICAgfSkucHJvbWlzZSgpO1xuICAgIGNvbnNvbGUubG9nKGBTdWNjZXNzZnVsbHkgc2F2ZWQgYXBwIGNyZWRlbnRpYWxzIGluIHNlY3JldCAke3B1dFNlY3JldFZhbHVlLkFSTn1gKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgUGh5c2ljYWxSZXNvdXJjZUlkOiByZXNwb25zZS5hcHBfaWQsXG4gICAgRGF0YToge1xuICAgICAgYXBwSWQ6IHJlc3BvbnNlLmFwcF9pZCxcbiAgICB9LFxuICB9O1xufVxuXG5mdW5jdGlvbiBpc0V4cGlyZWQoaWF0OiBudW1iZXIpIHtcbiAgcmV0dXJuIChpYXQgLSAoRGF0ZS5ub3coKSAvIDEwMDApKSA8IDA7XG59XG5cbmZ1bmN0aW9uIGdldE1hbmlmZXN0UmVxdWVzdChldmVudDogT25FdmVudFJlcXVlc3QpOiBNYW5pZmVzdFJlcXVlc3Qge1xuICBzd2l0Y2ggKGV2ZW50LlJlcXVlc3RUeXBlKSB7XG4gICAgY2FzZSAnQ3JlYXRlJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1hbmlmZXN0OiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMubWFuaWZlc3QsXG4gICAgICB9O1xuICAgIGNhc2UgJ1VwZGF0ZSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhcHBfaWQ6IGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCxcbiAgICAgICAgbWFuaWZlc3Q6IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5tYW5pZmVzdCxcbiAgICAgIH07XG4gICAgY2FzZSAnRGVsZXRlJzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFwcF9pZDogZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkISxcbiAgICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SlackAppProvider = void 0;
4
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
5
+ const lambda = require("aws-cdk-lib/aws-lambda");
6
+ const nodejs = require("aws-cdk-lib/aws-lambda-nodejs");
7
+ const logs = require("aws-cdk-lib/aws-logs");
8
+ const cr = require("aws-cdk-lib/custom-resources");
9
+ const constructs_1 = require("constructs");
10
+ class SlackAppProvider extends constructs_1.Construct {
11
+ constructor(scope, id) {
12
+ super(scope, id);
13
+ this.handler = new nodejs.NodejsFunction(this, 'handler', {
14
+ runtime: lambda.Runtime.NODEJS_12_X,
15
+ logRetention: logs.RetentionDays.ONE_MONTH,
16
+ });
17
+ const provider = new cr.Provider(this, 'Resource', {
18
+ onEventHandler: this.handler,
19
+ });
20
+ this.serviceToken = provider.serviceToken;
21
+ }
22
+ /**
23
+ * Creates a stack-singleton resource provider
24
+ */
25
+ static getOrCreate(scope) {
26
+ var _a;
27
+ const stack = aws_cdk_lib_1.Stack.of(scope);
28
+ const uid = 'SlackAppProvider';
29
+ return (_a = stack.node.tryFindChild(uid)) !== null && _a !== void 0 ? _a : new SlackAppProvider(stack, uid);
30
+ }
31
+ }
32
+ exports.SlackAppProvider = SlackAppProvider;
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stYXBwL3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvQztBQUNwQyxpREFBaUQ7QUFDakQsd0RBQXdEO0FBQ3hELDZDQUE2QztBQUM3QyxtREFBbUQ7QUFDbkQsMkNBQXVDO0FBRXZDLE1BQWEsZ0JBQWlCLFNBQVEsc0JBQVM7SUFjN0MsWUFBWSxLQUFnQixFQUFFLEVBQVU7UUFDdEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ3hELE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDbkMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztTQUMzQyxDQUFDLENBQUM7UUFFSCxNQUFNLFFBQVEsR0FBRyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNqRCxjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDN0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO0lBQzVDLENBQUM7SUExQkQ7O09BRUc7SUFDSSxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQWdCOztRQUN4QyxNQUFNLEtBQUssR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixNQUFNLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQztRQUMvQixhQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBcUIsbUNBQUksSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDOUYsQ0FBQztDQW9CRjtBQTVCRCw0Q0E0QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGFjayB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCAqIGFzIG5vZGVqcyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhLW5vZGVqcyc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIGNyIGZyb20gJ2F3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbmV4cG9ydCBjbGFzcyBTbGFja0FwcFByb3ZpZGVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBzdGFjay1zaW5nbGV0b24gcmVzb3VyY2UgcHJvdmlkZXJcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0T3JDcmVhdGUoc2NvcGU6IENvbnN0cnVjdCk6IFNsYWNrQXBwUHJvdmlkZXIge1xuICAgIGNvbnN0IHN0YWNrID0gU3RhY2sub2Yoc2NvcGUpO1xuICAgIGNvbnN0IHVpZCA9ICdTbGFja0FwcFByb3ZpZGVyJztcbiAgICByZXR1cm4gc3RhY2subm9kZS50cnlGaW5kQ2hpbGQodWlkKSBhcyBTbGFja0FwcFByb3ZpZGVyID8/IG5ldyBTbGFja0FwcFByb3ZpZGVyKHN0YWNrLCB1aWQpO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VUb2tlbjogc3RyaW5nO1xuXG4gIHB1YmxpYyByZWFkb25seSBoYW5kbGVyOiBub2RlanMuTm9kZWpzRnVuY3Rpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmhhbmRsZXIgPSBuZXcgbm9kZWpzLk5vZGVqc0Z1bmN0aW9uKHRoaXMsICdoYW5kbGVyJywge1xuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzEyX1gsXG4gICAgICBsb2dSZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfTU9OVEgsXG4gICAgfSk7XG5cbiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBjci5Qcm92aWRlcih0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBvbkV2ZW50SGFuZGxlcjogdGhpcy5oYW5kbGVyLFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXJ2aWNlVG9rZW4gPSBwcm92aWRlci5zZXJ2aWNlVG9rZW47XG4gIH1cbn1cbiJdfQ==
@@ -49,5 +49,5 @@ class SlackEvents extends constructs_1.Construct {
49
49
  }
50
50
  exports.SlackEvents = SlackEvents;
51
51
  _a = JSII_RTTI_SYMBOL_1;
52
- SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.2.3" };
52
+ SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.2.7" };
53
53
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stZXZlbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0VBQWdFO0FBQ2hFLDZFQUE2RTtBQUM3RSxtQ0FBbUM7QUFDbkMsaURBQWlEO0FBQ2pELGlEQUFpRDtBQUNqRCx3REFBd0Q7QUFDeEQsNkNBQTZDO0FBQzdDLDJDQUF1Qzs7Ozs7O0FBZXZDLE1BQWEsV0FBWSxTQUFRLHNCQUFTOzs7O0lBSXhDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsOEJBQThCO1FBQzlCLE1BQU0sT0FBTyxHQUFHLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ3pELE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDbkMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztZQUMxQyxXQUFXLEVBQUU7Z0JBQ1gsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7YUFDckQ7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3RFO1FBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyxXQUFXO1FBQ1gsTUFBTSxPQUFPLEdBQUcsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUMvRCxrQkFBa0IsRUFBRSxJQUFJLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDO1lBQ2xGLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztTQUN2QixDQUFDLENBQUM7UUFFSCxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNyQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFdBQVc7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFuQ0gsa0NBb0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXBpZ2F0ZXdheXYyIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5djItYWxwaGEnO1xuaW1wb3J0ICogYXMgaW50ZWdyYXRpb25zIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5djItaW50ZWdyYXRpb25zLWFscGhhJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWV2ZW50cyc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBub2RlanMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrRXZlbnRzUHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzaWduaW5nU2VjcmV0OiBjZGsuU2VjcmV0VmFsdWU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaU5hbWU/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjdXN0b21FdmVudEJ1cz86IGJvb2xlYW47XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgU2xhY2tFdmVudHMgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGV2ZW50QnVzPzogZXZlbnRzLkV2ZW50QnVzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTbGFja0V2ZW50c1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGlmIChwcm9wcy5jdXN0b21FdmVudEJ1cykge1xuICAgICAgdGhpcy5ldmVudEJ1cyA9IG5ldyBldmVudHMuRXZlbnRCdXModGhpcywgJ0V2ZW50QnVzJyk7XG4gICAgfVxuXG4gICAgLy8gU2VuZCBldmVudCB0byB0aGUgZXZlbnQgYnVzXG4gICAgY29uc3QgaGFuZGxlciA9IG5ldyBub2RlanMuTm9kZWpzRnVuY3Rpb24odGhpcywgJ2hhbmRsZXInLCB7XG4gICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMTJfWCxcbiAgICAgIGxvZ1JldGVudGlvbjogbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNMQUNLX1NJR05JTkdfU0VDUkVUOiBwcm9wcy5zaWduaW5nU2VjcmV0LnRvU3RyaW5nKCksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuZXZlbnRCdXMpIHtcbiAgICAgIGhhbmRsZXIuYWRkRW52aXJvbm1lbnQoJ0VWRU5UX0JVU19OQU1FJywgdGhpcy5ldmVudEJ1cy5ldmVudEJ1c05hbWUpO1xuICAgIH1cblxuICAgIGV2ZW50cy5FdmVudEJ1cy5ncmFudEFsbFB1dEV2ZW50cyhoYW5kbGVyKTtcblxuICAgIC8vIEhUVFAgQVBJXG4gICAgY29uc3QgaHR0cEFwaSA9IG5ldyBhcGlnYXRld2F5djIuSHR0cEFwaSh0aGlzLCAnU2xhY2tFdmVudHNBcGknLCB7XG4gICAgICBkZWZhdWx0SW50ZWdyYXRpb246IG5ldyBpbnRlZ3JhdGlvbnMuSHR0cExhbWJkYUludGVncmF0aW9uKCdJbnRlZ3JhdGlvbicsIGhhbmRsZXIpLFxuICAgICAgYXBpTmFtZTogcHJvcHMuYXBpTmFtZSxcbiAgICB9KTtcblxuICAgIG5ldyBjZGsuQ2ZuT3V0cHV0KHRoaXMsICdBcGlFbmRwb2ludCcsIHtcbiAgICAgIHZhbHVlOiBodHRwQXBpLmFwaUVuZHBvaW50LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -56,5 +56,5 @@ class SlackTextract extends constructs_1.Construct {
56
56
  }
57
57
  exports.SlackTextract = SlackTextract;
58
58
  _a = JSII_RTTI_SYMBOL_1;
59
- SlackTextract[_a] = { fqn: "cloudstructs.SlackTextract", version: "0.2.3" };
59
+ SlackTextract[_a] = { fqn: "cloudstructs.SlackTextract", version: "0.2.7" };
60
60
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stdGV4dHJhY3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBb0Q7QUFDcEQsaURBQWlEO0FBQ2pELDBEQUEwRDtBQUMxRCwyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELHdEQUF3RDtBQUN4RCw2Q0FBNkM7QUFDN0MsMkNBQXVDO0FBQ3ZDLGtEQUE4Qzs7Ozs7O0FBZTlDLE1BQWEsYUFBYyxTQUFRLHNCQUFTOzs7O0lBQzFDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBeUI7UUFDakUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLE9BQU8sR0FBRyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUN6RCxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1lBQ25DLE9BQU8sRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDN0IsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztZQUMxQyxXQUFXLEVBQUU7Z0JBQ1gsV0FBVyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO2FBQ3ZDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDOUMsT0FBTyxFQUFFLENBQUMsNkJBQTZCLENBQUM7WUFDeEMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO1NBQ2pCLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSwwQkFBVyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDbkMsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhO1NBQ25DLENBQUMsQ0FBQztRQUVILE1BQU0sY0FBYyxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDOUQsWUFBWSxFQUFFO2dCQUNaLE1BQU0sRUFBRTtvQkFDTixLQUFLLEVBQUU7d0JBQ0wsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDO3FCQUN0QjtpQkFDRjtnQkFDRCxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUN4QixNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDbEI7U0FDRixDQUFDLENBQUM7UUFFSCxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUU7WUFDM0QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDO1NBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzs7QUFyQ0gsc0NBc0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHVyYXRpb24sIFNlY3JldFZhbHVlIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMnO1xuaW1wb3J0ICogYXMgdGFyZ2V0cyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZXZlbnRzLXRhcmdldHMnO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgbm9kZWpzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEtbm9kZWpzJztcbmltcG9ydCAqIGFzIGxvZ3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxvZ3MnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBTbGFja0V2ZW50cyB9IGZyb20gJy4uL3NsYWNrLWV2ZW50cyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrVGV4dHJhY3RQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNpZ25pbmdTZWNyZXQ6IFNlY3JldFZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGJvdFRva2VuOiBTZWNyZXRWYWx1ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXBwSWQ6IHN0cmluZztcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFNsYWNrVGV4dHJhY3QgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2xhY2tUZXh0cmFjdFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGhhbmRsZXIgPSBuZXcgbm9kZWpzLk5vZGVqc0Z1bmN0aW9uKHRoaXMsICdoYW5kbGVyJywge1xuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzEyX1gsXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDMwKSxcbiAgICAgIGxvZ1JldGVudGlvbjogbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNMQUNLX1RPS0VOOiBwcm9wcy5ib3RUb2tlbi50b1N0cmluZygpLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGhhbmRsZXIuYWRkVG9Sb2xlUG9saWN5KG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIGFjdGlvbnM6IFsndGV4dHJhY3Q6RGV0ZWN0RG9jdW1lbnRUZXh0J10sXG4gICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgIH0pKTtcblxuICAgIG5ldyBTbGFja0V2ZW50cyh0aGlzLCAnU2xhY2tFdmVudHMnLCB7XG4gICAgICBzaWduaW5nU2VjcmV0OiBwcm9wcy5zaWduaW5nU2VjcmV0LFxuICAgIH0pO1xuXG4gICAgY29uc3QgZmlsZVNoYXJlZFJ1bGUgPSBuZXcgZXZlbnRzLlJ1bGUodGhpcywgJ1NsYWNrRXZlbnRzUnVsZScsIHtcbiAgICAgIGV2ZW50UGF0dGVybjoge1xuICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICBldmVudDoge1xuICAgICAgICAgICAgdHlwZTogWydmaWxlX3NoYXJlZCddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHJlc291cmNlczogW3Byb3BzLmFwcElkXSxcbiAgICAgICAgc291cmNlOiBbJ3NsYWNrJ10sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgZmlsZVNoYXJlZFJ1bGUuYWRkVGFyZ2V0KG5ldyB0YXJnZXRzLkxhbWJkYUZ1bmN0aW9uKGhhbmRsZXIsIHtcbiAgICAgIGV2ZW50OiBldmVudHMuUnVsZVRhcmdldElucHV0LmZyb21FdmVudFBhdGgoJyQuZGV0YWlsLmV2ZW50JyksXG4gICAgfSkpO1xuICB9XG59XG4iXX0=
@@ -111,5 +111,5 @@ class StateMachineCustomResourceProvider extends constructs_1.Construct {
111
111
  }
112
112
  exports.StateMachineCustomResourceProvider = StateMachineCustomResourceProvider;
113
113
  _a = JSII_RTTI_SYMBOL_1;
114
- StateMachineCustomResourceProvider[_a] = { fqn: "cloudstructs.StateMachineCustomResourceProvider", version: "0.2.3" };
114
+ StateMachineCustomResourceProvider[_a] = { fqn: "cloudstructs.StateMachineCustomResourceProvider", version: "0.2.7" };
115
115
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RhdGUtbWFjaGluZS1jci1wcm92aWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3Qiw2Q0FBc0U7QUFDdEUsMkNBQTJDO0FBQzNDLGlEQUFpRDtBQUNqRCwyQ0FBdUM7Ozs7OztBQWtCdkMsTUFBYSxrQ0FBbUMsU0FBUSxzQkFBUzs7OztJQUkvRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQThDOztRQUN0RixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRS9ELE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3RDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztTQUM1RCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUN2QyxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztZQUNsQyxTQUFTLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsV0FBVyxDQUFDO1NBQy9FLENBQUMsQ0FBQyxDQUFDO1FBQ0osOEVBQThFO1FBQzlFLDhIQUE4SDtRQUM5SCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUN2QyxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztZQUNsQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FB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QkFBc0I7WUFDL0IsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVztTQUNwQyxDQUFDLENBQUM7UUFDSCxjQUFjLENBQUMsZUFBZSxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUNyRCxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztZQUNsQyxTQUFTLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDO1NBQzlCLENBQUMsQ0FBQyxDQUFDO1FBQ0osY0FBYyxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFckUsSUFBSSxDQUFDLFlBQVksR0FBRyxjQUFjLENBQUMsV0FBVyxDQUFDO0lBQ2pELENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxNQUFjO1FBQ3hDLE9BQU8sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxjQUFjLE1BQU0sRUFBRSxFQUFFO1lBQ3ZELElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM1RCxPQUFPLEVBQUUsb0JBQW9CLE1BQU0sRUFBRTtZQUNyQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcEdILGdGQXFHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBBcm5Gb3JtYXQsIENmblJlc291cmNlLCBEdXJhdGlvbiwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgSVN0YXRlTWFjaGluZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgc3RhdGVNYWNoaW5lQXJuOiBzdHJpbmc7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlTWFjaGluZUN1c3RvbVJlc291cmNlUHJvdmlkZXJQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHN0YXRlTWFjaGluZTogSVN0YXRlTWFjaGluZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB0aW1lb3V0PzogRHVyYXRpb247XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFN0YXRlTWFjaGluZUN1c3RvbVJlc291cmNlUHJvdmlkZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZVRva2VuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YXRlTWFjaGluZUN1c3RvbVJlc291cmNlUHJvdmlkZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBjZm5SZXNwb25zZVN1Y2Nlc3NGbiA9IHRoaXMuY3JlYXRlQ2ZuUmVzcG9uc2VGbignU3VjY2VzcycpO1xuICAgIGNvbnN0IGNmblJlc3BvbnNlRmFpbGVkRm4gPSB0aGlzLmNyZWF0ZUNmblJlc3BvbnNlRm4oJ0ZhaWxlZCcpO1xuXG4gICAgY29uc3Qgcm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCAnUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdzdGF0ZXMuYW1hem9uYXdzLmNvbScpLFxuICAgIH0pO1xuICAgIHJvbGUuYWRkVG9Qb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgYWN0aW9uczogWydsYW1iZGE6SW52b2tlRnVuY3Rpb24nXSxcbiAgICAgIHJlc291cmNlczogW2NmblJlc3BvbnNlU3VjY2Vzc0ZuLmZ1bmN0aW9uQXJuLCBjZm5SZXNwb25zZUZhaWxlZEZuLmZ1bmN0aW9uQXJuXSxcbiAgICB9KSk7XG4gICAgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9zdGVwZnVuY3Rpb25zLWlhbS5odG1sXG4gICAgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3N0ZXAtZnVuY3Rpb25zL2xhdGVzdC9kZy9jb25jZXB0LWNyZWF0ZS1pYW0tYWR2YW5jZWQuaHRtbCNjb25jZXB0LWNyZWF0ZS1pYW0tYWR2YW5jZWQtZXhlY3V0aW9uXG4gICAgcm9sZS5hZGRUb1BvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBhY3Rpb25zOiBbJ3N0YXRlczpTdGFydEV4ZWN1dGlvbiddLFxuICAgICAgcmVzb3VyY2VzOiBbcHJvcHMuc3RhdGVNYWNoaW5lLnN0YXRlTWFjaGluZUFybl0sXG4gICAgfSkpO1xuICAgIHJvbGUuYWRkVG9Qb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgYWN0aW9uczogWydzdGF0ZXM6RGVzY3JpYmVFeGVjdXRpb24nLCAnc3RhdGVzOlN0b3BFeGVjdXRpb24nXSxcbiAgICAgIHJlc291cmNlczogW1N0YWNrLm9mKHRoaXMpLmZvcm1hdEFybih7XG4gICAgICAgIHNlcnZpY2U6ICdzdGF0ZXMnLFxuICAgICAgICByZXNvdXJjZTogJ2V4ZWN1dGlvbicsXG4gICAgICAgIGFybkZvcm1hdDogQXJuRm9ybWF0LkNPTE9OX1JFU09VUkNFX05BTUUsXG4gICAgICAgIHJlc291cmNlTmFtZTogYCR7U3RhY2sub2YodGhpcykuc3BsaXRBcm4ocHJvcHMuc3RhdGVNYWNoaW5lLnN0YXRlTWFjaGluZUFybiwgQXJuRm9ybWF0LkNPTE9OX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZX0qYCxcbiAgICAgIH0pXSxcbiAgICB9KSk7XG4gICAgcm9sZS5hZGRUb1BvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBhY3Rpb25zOiBbJ2V2ZW50czpQdXRUYXJnZXRzJywgJ2V2ZW50czpQdXRSdWxlJywgJ2V2ZW50czpEZXNjcmliZVJ1bGUnXSxcbiAgICAgIHJlc291cmNlczogW1N0YWNrLm9mKHRoaXMpLmZvcm1hdEFybih7XG4gICAgICAgIHNlcnZpY2U6ICdldmVudHMnLFxuICAgICAgICByZXNvdXJjZTogJ3J1bGUnLFxuICAgICAgICByZXNvdXJjZU5hbWU6ICdTdGVwRnVuY3Rpb25zR2V0RXZlbnRzRm9yU3RlcEZ1bmN0aW9uc0V4ZWN1dGlvblJ1bGUnLFxuICAgICAgfSldLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IGRlZmluaXRpb24gPSBTdGFjay5vZih0aGlzKS50b0pzb25TdHJpbmcoe1xuICAgICAgU3RhcnRBdDogJ1N0YXJ0RXhlY3V0aW9uJyxcbiAgICAgIFN0YXRlczoge1xuICAgICAgICBTdGFydEV4ZWN1dGlvbjoge1xuICAgICAgICAgIFR5cGU6ICdUYXNrJyxcbiAgICAgICAgICBSZXNvdXJjZTogJ2Fybjphd3M6c3RhdGVzOjo6c3RhdGVzOnN0YXJ0RXhlY3V0aW9uLnN5bmM6MicsIC8vIHdpdGggc3luYzoyIHRoZSBPdXRwdXQgaXMgSlNPTiBwYXJzZWRcbiAgICAgICAgICBQYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAnSW5wdXQuJCc6ICckJyxcbiAgICAgICAgICAgICdTdGF0ZU1hY2hpbmVBcm4nOiBwcm9wcy5zdGF0ZU1hY2hpbmUuc3RhdGVNYWNoaW5lQXJuLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgVGltZW91dFNlY29uZHM6IChwcm9wcy50aW1lb3V0ID8/IER1cmF0aW9uLm1pbnV0ZXMoMzApKS50b1NlY29uZHMoKSxcbiAgICAgICAgICBOZXh0OiAnQ2ZuUmVzcG9uc2VTdWNjZXNzJyxcbiAgICAgICAgICBDYXRjaDogW3tcbiAgICAgICAgICAgIEVycm9yRXF1YWxzOiBbJ1N0YXRlcy5BTEwnXSxcbiAgICAgICAgICAgIE5leHQ6ICdDZm5SZXNwb25zZUZhaWxlZCcsXG4gICAgICAgICAgfV0sXG4gICAgICAgIH0sXG4gICAgICAgIENmblJlc3BvbnNlU3VjY2Vzczoge1xuICAgICAgICAgIFR5cGU6ICdUYXNrJyxcbiAgICAgICAgICBSZXNvdXJjZTogY2ZuUmVzcG9uc2VTdWNjZXNzRm4uZnVuY3Rpb25Bcm4sXG4gICAgICAgICAgRW5kOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBDZm5SZXNwb25zZUZhaWxlZDoge1xuICAgICAgICAgIFR5cGU6ICdUYXNrJyxcbiAgICAgICAgICBSZXNvdXJjZTogY2ZuUmVzcG9uc2VGYWlsZWRGbi5mdW5jdGlvbkFybixcbiAgICAgICAgICBFbmQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3RhdGVNYWNoaW5lID0gbmV3IENmblJlc291cmNlKHRoaXMsICdTdGF0ZU1hY2hpbmUnLCB7XG4gICAgICB0eXBlOiAnQVdTOjpTdGVwRnVuY3Rpb25zOjpTdGF0ZU1hY2hpbmUnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBEZWZpbml0aW9uU3RyaW5nOiBkZWZpbml0aW9uLFxuICAgICAgICBSb2xlQXJuOiByb2xlLnJvbGVBcm4sXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHN0YXRlTWFjaGluZS5ub2RlLmFkZERlcGVuZGVuY3kocm9sZSk7XG5cbiAgICBjb25zdCBzdGFydEV4ZWN1dGlvbiA9IG5ldyBsYW1iZGEuRnVuY3Rpb24odGhpcywgJ1N0YXJ0RXhlY3V0aW9uJywge1xuICAgICAgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICdydW50aW1lJykpLFxuICAgICAgaGFuZGxlcjogJ2luZGV4LnN0YXJ0RXhlY3V0aW9uJyxcbiAgICAgIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU18xMl9YLFxuICAgIH0pO1xuICAgIHN0YXJ0RXhlY3V0aW9uLmFkZFRvUm9sZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBhY3Rpb25zOiBbJ3N0YXRlczpTdGFydEV4ZWN1dGlvbiddLFxuICAgICAgcmVzb3VyY2VzOiBbc3RhdGVNYWNoaW5lLnJlZl0sXG4gICAgfSkpO1xuICAgIHN0YXJ0RXhlY3V0aW9uLmFkZEVudmlyb25tZW50KCdTVEFURV9NQUNISU5FX0FSTicsIHN0YXRlTWFjaGluZS5yZWYpO1xuXG4gICAgdGhpcy5zZXJ2aWNlVG9rZW4gPSBzdGFydEV4ZWN1dGlvbi5mdW5jdGlvbkFybjtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ2ZuUmVzcG9uc2VGbihzdGF0dXM6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgbGFtYmRhLkZ1bmN0aW9uKHRoaXMsIGBDZm5SZXNwb25zZSR7c3RhdHVzfWAsIHtcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAncnVudGltZScpKSxcbiAgICAgIGhhbmRsZXI6IGBpbmRleC5jZm5SZXNwb25zZSR7c3RhdHVzfWAsXG4gICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMTJfWCxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -117,5 +117,5 @@ class StaticWebsite extends constructs_1.Construct {
117
117
  }
118
118
  exports.StaticWebsite = StaticWebsite;
119
119
  _a = JSII_RTTI_SYMBOL_1;
120
- StaticWebsite[_a] = { fqn: "cloudstructs.StaticWebsite", version: "0.2.3" };
120
+ StaticWebsite[_a] = { fqn: "cloudstructs.StaticWebsite", version: "0.2.7" };
121
121
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RhdGljLXdlYnNpdGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLDZDQUFvQztBQUNwQywwREFBMEQ7QUFDMUQseURBQXlEO0FBQ3pELDhEQUE4RDtBQUM5RCwyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELG1EQUFtRDtBQUNuRCw2REFBNkQ7QUFDN0QsMkRBQTJEO0FBQzNELHlDQUF5QztBQUN6QyxtREFBbUQ7QUFDbkQsMkNBQXVDO0FBQ3ZDLHlEQUFzRDs7Ozs7O0FBcUJ0RCxNQUFhLGFBQWMsU0FBUSxzQkFBUzs7OztJQU8xQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUMxQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsU0FBUztTQUNsRCxDQUFDLENBQUM7UUFFSCxNQUFNLFdBQVcsR0FBRyxJQUFJLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3ZFLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUM1QixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7WUFDNUIsTUFBTSxFQUFFLFdBQVc7U0FDcEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxhQUFhLEdBQUcsSUFBSSxVQUFVLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ3BGLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1lB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QkFDYixNQUFNLEVBQUUsV0FBVztvQkFDbkIsVUFBVSxFQUFFO3dCQUNWLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVU7d0JBQzlCLEdBQUcsRUFBRSxhQUFhO3dCQUNsQixJQUFJLEVBQUUsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQzt3QkFDN0QsV0FBVyxFQUFFLGtCQUFrQjt3QkFDL0IsWUFBWSxFQUFFLGdEQUFnRDtxQkFDL0Q7b0JBQ0Qsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7aUJBQ3ZEO2FBQ0YsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEQsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUU7Z0JBQ2hELFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVTtnQkFDOUIsSUFBSSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUN0QixXQUFXLEVBQUUsS0FBSyxDQUFDLFNBQVM7YUFDN0IsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOztBQXRHSCxzQ0F1R0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBhY20gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlcic7XG5pbXBvcnQgKiBhcyBjbG91ZGZyb250IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250JztcbmltcG9ydCAqIGFzIG9yaWdpbnMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQtb3JpZ2lucyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyByb3V0ZTUzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzJztcbmltcG9ydCAqIGFzIHBhdHRlcm5zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXBhdHRlcm5zJztcbmltcG9ydCAqIGFzIHRhcmdldHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0cyc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0ICogYXMgY3IgZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFNFQ1VSSVRZX0hFQURFUlMgfSBmcm9tICcuL3NlY3VyaXR5LWhlYWRlcnMnO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTdGF0aWNXZWJzaXRlUHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZG9tYWluTmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBob3N0ZWRab25lOiByb3V0ZTUzLklIb3N0ZWRab25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBiYWNrZW5kQ29uZmlndXJhdGlvbj86IGFueTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlZGlyZWN0cz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGh0dHBIZWFkZXJzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBkaXN0cmlidXRpb246IGNsb3VkZnJvbnQuRGlzdHJpYnV0aW9uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgYnVja2V0OiBzMy5CdWNrZXQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YXRpY1dlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmJ1Y2tldCA9IG5ldyBzMy5CdWNrZXQodGhpcywgJ0J1Y2tldCcsIHtcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBzMy5CbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZSA9IG5ldyBhY20uRG5zVmFsaWRhdGVkQ2VydGlmaWNhdGUodGhpcywgJ0NlcnRpZmljYXRlJywge1xuICAgICAgZG9tYWluTmFtZTogcHJvcHMuZG9tYWluTmFtZSxcbiAgICAgIGhvc3RlZFpvbmU6IHByb3BzLmhvc3RlZFpvbmUsXG4gICAgICByZWdpb246ICd1cy1lYXN0LTEnLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgb3JpZ2luUmVxdWVzdCA9IG5ldyBjbG91ZGZyb250LmV4cGVyaW1lbnRhbC5FZGdlRnVuY3Rpb24odGhpcywgJ09yaWdpblJlcXVlc3QnLCB7XG4gICAgICBjb2RlOiBsYW1iZGEuQ29kZS5mcm9tQXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJ29yaWdpbi1yZXF1ZXN0LWhhbmRsZXInKSksXG4gICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMTRfWCxcbiAgICB9KTtcblxuICAgIC8vIExhbWJkYUBFZGdlIGRvZXNuJ3Qgc3VwcG9ydCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc28gd2Ugd3JpdGUgYSBKU09OIGZpbGUgd2l0aFxuICAgIC8vIHRoZSBIVFRQIGhlYWRlcnNcbiAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihfX2Rpcm5hbWUsICdvcmlnaW4tcmVzcG9uc2UtaGFuZGxlcicsICdoZWFkZXJzLmpzb24nKSwgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgLi4uU0VDVVJJVFlfSEVBREVSUyxcbiAgICAgIC4uLnByb3BzLmh0dHBIZWFkZXJzLFxuICAgIH0pKTtcbiAgICBjb25zdCBvcmlnaW5SZXNwb25zZSA9IG5ldyBjbG91ZGZyb250LmV4cGVyaW1lbnRhbC5FZGdlRnVuY3Rpb24odGhpcywgJ09yaWdpblJlc3BvbnNlJywge1xuICAgICAgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICdvcmlnaW4tcmVzcG9uc2UtaGFuZGxlcicpKSxcbiAgICAgIGhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbiAgICAgIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU18xNF9YLFxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXN0cmlidXRpb24gPSBuZXcgY2xvdWRmcm9udC5EaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IG5ldyBvcmlnaW5zLlMzT3JpZ2luKHRoaXMuYnVja2V0KSxcbiAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IGNsb3VkZnJvbnQuVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgIGVkZ2VMYW1iZGFzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZXZlbnRUeXBlOiBjbG91ZGZyb250LkxhbWJkYUVkZ2VFdmVudFR5cGUuT1JJR0lOX1JFUVVFU1QsXG4gICAgICAgICAgICBmdW5jdGlvblZlcnNpb246IG9yaWdpblJlcXVlc3QsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBldmVudFR5cGU6IGNsb3VkZnJvbnQuTGFtYmRhRWRnZUV2ZW50VHlwZS5PUklHSU5fUkVTUE9OU0UsXG4gICAgICAgICAgICBmdW5jdGlvblZlcnNpb246IG9yaWdpblJlc3BvbnNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgICAgZGVmYXVsdFJvb3RPYmplY3Q6ICdpbmRleC5odG1sJyxcbiAgICAgIGRvbWFpbk5hbWVzOiBbcHJvcHMuZG9tYWluTmFtZV0sXG4gICAgICBjZXJ0aWZpY2F0ZSxcbiAgICAgIG1pbmltdW1Qcm90b2NvbFZlcnNpb246ICdUTFN2MS4yXzIwMjEnIGFzIGNsb3VkZnJvbnQuU2VjdXJpdHlQb2xpY3lQcm90b2NvbCxcbiAgICB9KTtcblxuICAgIG5ldyByb3V0ZTUzLkFSZWNvcmQodGhpcywgJ0FSZWNvcmQnLCB7XG4gICAgICByZWNvcmROYW1lOiBwcm9wcy5kb21haW5OYW1lLFxuICAgICAgem9uZTogcHJvcHMuaG9zdGVkWm9uZSxcbiAgICAgIHRhcmdldDogcm91dGU1My5SZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyB0YXJnZXRzLkNsb3VkRnJvbnRUYXJnZXQodGhpcy5kaXN0cmlidXRpb24pKSxcbiAgICB9KTtcblxuICAgIG5ldyByb3V0ZTUzLkFhYWFSZWNvcmQodGhpcywgJ0FhYWFSZWNvcmQnLCB7XG4gICAgICByZWNvcmROYW1lOiBwcm9wcy5kb21haW5OYW1lLFxuICAgICAgem9uZTogcHJvcHMuaG9zdGVkWm9uZSxcbiAgICAgIHRhcmdldDogcm91dGU1My5SZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyB0YXJnZXRzLkNsb3VkRnJvbnRUYXJnZXQodGhpcy5kaXN0cmlidXRpb24pKSxcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy5iYWNrZW5kQ29uZmlndXJhdGlvbikge1xuICAgIC8vIFNhdmUgYmFja2VuZCBjb25maWcgdG8gYnVja2V0LCBjYW4gYmUgcXVlcmllZCBieSB0aGUgZnJvbnRlbmRcbiAgICAgIG5ldyBjci5Bd3NDdXN0b21SZXNvdXJjZSh0aGlzLCAnUHV0Q29uZmlnJywge1xuICAgICAgICBwb2xpY3k6IGNyLkF3c0N1c3RvbVJlc291cmNlUG9saWN5LmZyb21TdGF0ZW1lbnRzKFtcbiAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBhY3Rpb25zOiBbJ3MzOlB1dE9iamVjdCddLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5idWNrZXQuYXJuRm9yT2JqZWN0cygnY29uZmlnLmpzb24nKV0sXG4gICAgICAgICAgfSksXG4gICAgICAgIF0pLFxuICAgICAgICBvblVwZGF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdTMycsXG4gICAgICAgICAgYWN0aW9uOiAncHV0T2JqZWN0JyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6IHRoaXMuYnVja2V0LmJ1Y2tldE5hbWUsXG4gICAgICAgICAgICBLZXk6ICdjb25maWcuanNvbicsXG4gICAgICAgICAgICBCb2R5OiBTdGFjay5vZih0aGlzKS50b0pzb25TdHJpbmcocHJvcHMuYmFja2VuZENvbmZpZ3VyYXRpb24pLFxuICAgICAgICAgICAgQ29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgIENhY2hlQ29udHJvbDogJ21heC1hZ2U9MCwgbm8tY2FjaGUsIG5vLXN0b3JlLCBtdXN0LXJldmFsaWRhdGUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBjci5QaHlzaWNhbFJlc291cmNlSWQub2YoJ2NvbmZpZycpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wcy5yZWRpcmVjdHMgfHwgcHJvcHMucmVkaXJlY3RzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbmV3IHBhdHRlcm5zLkh0dHBzUmVkaXJlY3QodGhpcywgJ0h0dHBzUmVkaXJlY3QnLCB7XG4gICAgICAgIHRhcmdldERvbWFpbjogcHJvcHMuZG9tYWluTmFtZSxcbiAgICAgICAgem9uZTogcHJvcHMuaG9zdGVkWm9uZSxcbiAgICAgICAgcmVjb3JkTmFtZXM6IHByb3BzLnJlZGlyZWN0cyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -101,5 +101,5 @@ class UrlShortener extends constructs_1.Construct {
101
101
  }
102
102
  exports.UrlShortener = UrlShortener;
103
103
  _a = JSII_RTTI_SYMBOL_1;
104
- UrlShortener[_a] = { fqn: "cloudstructs.UrlShortener", version: "0.2.3" };
104
+ UrlShortener[_a] = { fqn: "cloudstructs.UrlShortener", version: "0.2.7" };
105
105
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXJsLXNob3J0ZW5lci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUEyQztBQUMzQyx5REFBeUQ7QUFDekQsMERBQTBEO0FBQzFELHlEQUF5RDtBQUN6RCw4REFBOEQ7QUFDOUQscURBQXFEO0FBRXJELDJDQUEyQztBQUMzQyxpREFBaUQ7QUFDakQsd0RBQXdEO0FBQ3hELDZDQUE2QztBQUM3QyxtREFBbUQ7QUFDbkQsMkRBQTJEO0FBQzNELHlDQUF5QztBQUN6QywyQ0FBdUM7Ozs7OztBQWV2QyxNQUFhLFlBQWEsU0FBUSxzQkFBUzs7OztJQU96QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCOztRQUNoRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLDBCQUEwQjtRQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRTtZQUM5QyxZQUFZLEVBQUU7Z0JBQ1osSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsSUFBSSxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTTthQUNwQztTQUNGLENBQUMsQ0FBQztRQUVILDJCQUEyQjtRQUMzQixNQUFNLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUMzQyxjQUFjLEVBQUUsQ0FBQztvQkFDZixVQUFVLFFBQUUsS0FBSyxDQUFDLFVBQVUsbUNBQUksc0JBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2lCQUNuRCxDQUFDO1lBQ0Ysb0JBQW9CLEVBQUUsWUFBWTtTQUNuQyxDQUFDLENBQUM7UUFFSCwwQkFBMEI7UUFDMUIsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsdUJBQXVCLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUN2RSxV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QUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQztJQUNsQyxDQUFDOztBQXBGSCxvQ0FxRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEdXJhdGlvbiwgRm4gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBhcGlnYXRld2F5IGZyb20gJ2F3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5JztcbmltcG9ydCAqIGFzIGFjbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyJztcbmltcG9ydCAqIGFzIGNsb3VkZnJvbnQgZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQnO1xuaW1wb3J0ICogYXMgb3JpZ2lucyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udC1vcmlnaW5zJztcbmltcG9ydCAqIGFzIGR5bmFtb2RiIGZyb20gJ2F3cy1jZGstbGliL2F3cy1keW5hbW9kYic7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBub2RlanMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgKiBhcyByb3V0ZTUzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzJztcbmltcG9ydCAqIGFzIHRhcmdldHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0cyc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgVXJsU2hvcnRlbmVyUHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBob3N0ZWRab25lOiByb3V0ZTUzLklIb3N0ZWRab25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZXhwaXJhdGlvbj86IER1cmF0aW9uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGFwaUdhdGV3YXlFbmRwb2ludD86IGVjMi5JSW50ZXJmYWNlVnBjRW5kcG9pbnQ7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFVybFNob3J0ZW5lciBleHRlbmRzIENvbnN0cnVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGFwaUVuZHBvaW50OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGFwaTogYXBpZ2F0ZXdheS5MYW1iZGFSZXN0QXBpO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBVcmxTaG9ydGVuZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICAvLyBUYWJsZSB0byBzYXZlIGEgY291bnRlclxuICAgIGNvbnN0IHRhYmxlID0gbmV3IGR5bmFtb2RiLlRhYmxlKHRoaXMsICdUYWJsZScsIHtcbiAgICAgIHBhcnRpdGlvbktleToge1xuICAgICAgICBuYW1lOiAna2V5JyxcbiAgICAgICAgdHlwZTogZHluYW1vZGIuQXR0cmlidXRlVHlwZS5TVFJJTkcsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gQnVja2V0IHRvIHNhdmUgcmVkaXJlY3RzXG4gICAgY29uc3QgYnVja2V0ID0gbmV3IHMzLkJ1Y2tldCh0aGlzLCAnQnVja2V0Jywge1xuICAgICAgbGlmZWN5Y2xlUnVsZXM6IFt7XG4gICAgICAgIGV4cGlyYXRpb246IHByb3BzLmV4cGlyYXRpb24gPz8gRHVyYXRpb24uZGF5cygzNjUpLFxuICAgICAgfV0sXG4gICAgICB3ZWJzaXRlSW5kZXhEb2N1bWVudDogJ2luZGV4Lmh0bWwnLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvdWRGcm9udCBkaXN0cmlidXRpb25cbiAgICBjb25zdCBjZXJ0aWZpY2F0ZSA9IG5ldyBhY20uRG5zVmFsaWRhdGVkQ2VydGlmaWNhdGUodGhpcywgJ0NlcnRpZmljYXRlJywge1xuICAgICAgZG9tYWluTmFtZTogcHJvcHMuaG9zdGVkWm9uZS56b25lTmFtZSxcbiAgICAgIGhvc3RlZFpvbmU6IHByb3BzLmhvc3RlZFpvbmUsXG4gICAgfSk7XG4gICAgY29uc3QgZGlzdHJpYnV0aW9uID0gbmV3IGNsb3VkZnJvbnQuRGlzdHJpYnV0aW9uKHRoaXMsICdEaXN0cmlidXRpb24nLCB7XG4gICAgICBkZWZhdWx0QmVoYXZpb3I6IHtcbiAgICAgICAgb3JpZ2luOiBuZXcgb3JpZ2lucy5TM09yaWdpbihidWNrZXQpLFxuICAgICAgfSxcbiAgICAgIGNlcnRpZmljYXRlLFxuICAgICAgZG9tYWluTmFtZXM6IFtwcm9wcy5ob3N0ZWRab25lLnpvbmVOYW1lXSxcbiAgICB9KTtcblxuICAgIC8vIFJvdXRlNTMgcmVjb3Jkc1xuICAgIG5ldyByb3V0ZTUzLkFSZWNvcmQodGhpcywgJ0FSZWNvcmQnLCB7XG4gICAgICB6b25lOiBwcm9wcy5ob3N0ZWRab25lLFxuICAgICAgdGFyZ2V0OiByb3V0ZTUzLlJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IHRhcmdldHMuQ2xvdWRGcm9udFRhcmdldChkaXN0cmlidXRpb24pKSxcbiAgICB9KTtcbiAgICBuZXcgcm91dGU1My5BYWFhUmVjb3JkKHRoaXMsICdBYWFhUmVjb3JkJywge1xuICAgICAgem9uZTogcHJvcHMuaG9zdGVkWm9uZSxcbiAgICAgIHRhcmdldDogcm91dGU1My5SZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyB0YXJnZXRzLkNsb3VkRnJvbnRUYXJnZXQoZGlzdHJpYnV0aW9uKSksXG4gICAgfSk7XG5cbiAgICAvLyBMYW1iZGEgZnVuY3Rpb24gdG8gaW5jcmVtZW50IGNvdW50ZXIgYW5kIHdyaXRlIHJlZGlyZWN0IGluIGJ1Y2tldFxuICAgIGNvbnN0IGhhbmRsZXIgPSBuZXcgbm9kZWpzLk5vZGVqc0Z1bmN0aW9uKHRoaXMsICdoYW5kbGVyJywge1xuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzEyX1gsXG4gICAgICBsb2dSZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfTU9OVEgsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBET01BSU5fTkFNRTogcHJvcHMuaG9zdGVkWm9uZS56b25lTmFtZSxcbiAgICAgICAgQlVDS0VUX05BTUU6IGJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICBUQUJMRV9OQU1FOiB0YWJsZS50YWJsZU5hbWUsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGJ1Y2tldC5ncmFudFB1dChoYW5kbGVyKTtcbiAgICB0YWJsZS5ncmFudChoYW5kbGVyLCAnZHluYW1vZGI6VXBkYXRlSXRlbScpO1xuXG4gICAgLy8gQVBJXG4gICAgdGhpcy5hcGkgPSBuZXcgYXBpZ2F0ZXdheS5MYW1iZGFSZXN0QXBpKHRoaXMsIGBVcmxTaG9ydGVuZXIke3Byb3BzLmhvc3RlZFpvbmUuem9uZU5hbWV9YCwge1xuICAgICAgaGFuZGxlcixcbiAgICAgIGVuZHBvaW50VHlwZXM6IHByb3BzLmFwaUdhdGV3YXlFbmRwb2ludCA/IFthcGlnYXRld2F5LkVuZHBvaW50VHlwZS5QUklWQVRFXSA6IHVuZGVmaW5lZCxcbiAgICAgIHBvbGljeTogcHJvcHMuYXBpR2F0ZXdheUVuZHBvaW50XG4gICAgICAgID8gbmV3IGlhbS5Qb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICAgIHByaW5jaXBhbHM6IFtuZXcgaWFtLkFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbRm4uam9pbignJywgWydleGVjdXRlLWFwaTovJywgJyonXSldLFxuICAgICAgICAgICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgICAgICAgICAgU3RyaW5nRXF1YWxzOiB7ICdhd3M6U291cmNlVnBjZSc6IHByb3BzLmFwaUdhdGV3YXlFbmRwb2ludC52cGNFbmRwb2ludElkIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9KTtcblxuICAgIHRoaXMuYXBpRW5kcG9pbnQgPSB0aGlzLmFwaS51cmw7XG4gIH1cbn1cbiJdfQ==
@@ -8,7 +8,7 @@ This package contains type definitions for Node.js (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Tue, 07 Dec 2021 06:31:07 GMT
11
+ * Last updated: Sun, 19 Dec 2021 19:01:19 GMT
12
12
  * Dependencies: none
13
13
  * Global values: `AbortController`, `AbortSignal`, `__dirname`, `__filename`, `console`, `exports`, `gc`, `global`, `module`, `process`, `require`
14
14
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * The `assert` module provides a set of assertion functions for verifying
3
3
  * invariants.
4
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/assert.js)
4
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/assert.js)
5
5
  */
6
6
  declare module 'assert' {
7
7
  /**
@@ -6,7 +6,7 @@
6
6
  * import async_hooks from 'async_hooks';
7
7
  * ```
8
8
  * @experimental
9
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/async_hooks.js)
9
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/async_hooks.js)
10
10
  */
11
11
  declare module 'async_hooks' {
12
12
  /**
@@ -395,8 +395,9 @@ declare module 'async_hooks' {
395
395
  getStore(): T | undefined;
396
396
  /**
397
397
  * Runs a function synchronously within a context and returns its
398
- * return value. The store is not accessible outside of the callback function or
399
- * the asynchronous operations created within the callback.
398
+ * return value. The store is not accessible outside of the callback function.
399
+ * The store is accessible to any asynchronous operations created within the
400
+ * callback.
400
401
  *
401
402
  * The optional `args` are passed to the callback function.
402
403
  *
@@ -410,6 +411,9 @@ declare module 'async_hooks' {
410
411
  * try {
411
412
  * asyncLocalStorage.run(store, () => {
412
413
  * asyncLocalStorage.getStore(); // Returns the store object
414
+ * setTimeout(() => {
415
+ * asyncLocalStorage.getStore(); // Returns the store object
416
+ * }, 200);
413
417
  * throw new Error();
414
418
  * });
415
419
  * } catch (e) {
@@ -41,7 +41,7 @@
41
41
  * // Creates a Buffer containing the Latin-1 bytes [0x74, 0xe9, 0x73, 0x74].
42
42
  * const buf7 = Buffer.from('tést', 'latin1');
43
43
  * ```
44
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/buffer.js)
44
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/buffer.js)
45
45
  */
46
46
  declare module 'buffer' {
47
47
  import { BinaryLike } from 'node:crypto';
@@ -113,18 +113,18 @@ declare module 'buffer' {
113
113
  /**
114
114
  * A [`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob) encapsulates immutable, raw data that can be safely shared across
115
115
  * multiple worker threads.
116
- * @since v15.7.0
116
+ * @since v15.7.0, v14.18.0
117
117
  * @experimental
118
118
  */
119
119
  export class Blob {
120
120
  /**
121
121
  * The total size of the `Blob` in bytes.
122
- * @since v15.7.0
122
+ * @since v15.7.0, v14.18.0
123
123
  */
124
124
  readonly size: number;
125
125
  /**
126
126
  * The content-type of the `Blob`.
127
- * @since v15.7.0
127
+ * @since v15.7.0, v14.18.0
128
128
  */
129
129
  readonly type: string;
130
130
  /**
@@ -139,13 +139,13 @@ declare module 'buffer' {
139
139
  /**
140
140
  * Returns a promise that fulfills with an [ArrayBuffer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer) containing a copy of
141
141
  * the `Blob` data.
142
- * @since v15.7.0
142
+ * @since v15.7.0, v14.18.0
143
143
  */
144
144
  arrayBuffer(): Promise<ArrayBuffer>;
145
145
  /**
146
146
  * Creates and returns a new `Blob` containing a subset of this `Blob` objects
147
147
  * data. The original `Blob` is not altered.
148
- * @since v15.7.0
148
+ * @since v15.7.0, v14.18.0
149
149
  * @param start The starting index.
150
150
  * @param end The ending index.
151
151
  * @param type The content-type for the new `Blob`
@@ -154,7 +154,7 @@ declare module 'buffer' {
154
154
  /**
155
155
  * Returns a promise that fulfills with the contents of the `Blob` decoded as a
156
156
  * UTF-8 string.
157
- * @since v15.7.0
157
+ * @since v15.7.0, v14.18.0
158
158
  */
159
159
  text(): Promise<string>;
160
160
  /**
@@ -2114,7 +2114,7 @@ declare module 'buffer' {
2114
2114
  * **binary data and predate the introduction of typed arrays in JavaScript.**
2115
2115
  * **For code running using Node.js APIs, converting between base64-encoded strings**
2116
2116
  * **and binary data should be performed using `Buffer.from(str, 'base64')` and`buf.toString('base64')`.**
2117
- * @since v15.13.0
2117
+ * @since v15.13.0, v14.17.0
2118
2118
  * @deprecated Use `Buffer.from(data, 'base64')` instead.
2119
2119
  * @param data The Base64-encoded input string.
2120
2120
  */
@@ -2130,7 +2130,7 @@ declare module 'buffer' {
2130
2130
  * **binary data and predate the introduction of typed arrays in JavaScript.**
2131
2131
  * **For code running using Node.js APIs, converting between base64-encoded strings**
2132
2132
  * **and binary data should be performed using `Buffer.from(str, 'base64')` and`buf.toString('base64')`.**
2133
- * @since v15.13.0
2133
+ * @since v15.13.0, v14.17.0
2134
2134
  * @deprecated Use `buf.toString('base64')` instead.
2135
2135
  * @param data An ASCII (Latin1) string.
2136
2136
  */
@@ -60,7 +60,7 @@
60
60
  * For certain use cases, such as automating shell scripts, the `synchronous counterparts` may be more convenient. In many cases, however,
61
61
  * the synchronous methods can have significant impact on performance due to
62
62
  * stalling the event loop while spawned processes complete.
63
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/child_process.js)
63
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/child_process.js)
64
64
  */
65
65
  declare module 'child_process' {
66
66
  import { ObjectEncodingOptions } from 'node:fs';
@@ -49,7 +49,7 @@
49
49
  * ```
50
50
  *
51
51
  * On Windows, it is not yet possible to set up a named pipe server in a worker.
52
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/cluster.js)
52
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/cluster.js)
53
53
  */
54
54
  declare module 'cluster' {
55
55
  import * as child from 'node:child_process';
@@ -53,7 +53,7 @@
53
53
  * myConsole.warn(`Danger ${name}! Danger!`);
54
54
  * // Prints: Danger Will Robinson! Danger!, to err
55
55
  * ```
56
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/console.js)
56
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/console.js)
57
57
  */
58
58
  declare module 'console' {
59
59
  import console = require('node:console');
@@ -13,7 +13,7 @@
13
13
  * // Prints:
14
14
  * // c0fa1bc00531bd78ef38c628449c5102aeabd49b5dc3a2a516ea6ea959d6658e
15
15
  * ```
16
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/crypto.js)
16
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/crypto.js)
17
17
  */
18
18
  declare module 'crypto' {
19
19
  import * as stream from 'node:stream';
@@ -3030,7 +3030,7 @@ declare module 'crypto' {
3030
3030
  /**
3031
3031
  * Generates a random [RFC 4122](https://www.rfc-editor.org/rfc/rfc4122.txt) version 4 UUID. The UUID is generated using a
3032
3032
  * cryptographic pseudorandom number generator.
3033
- * @since v15.6.0
3033
+ * @since v15.6.0, v14.17.0
3034
3034
  */
3035
3035
  function randomUUID(options?: RandomUUIDOptions): string;
3036
3036
  interface X509CheckOptions {
@@ -23,7 +23,7 @@
23
23
  * server.bind(41234);
24
24
  * // Prints: server listening 0.0.0.0:41234
25
25
  * ```
26
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/dgram.js)
26
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/dgram.js)
27
27
  */
28
28
  declare module 'dgram' {
29
29
  import { AddressInfo } from 'node:net';
@@ -260,7 +260,7 @@ declare module 'dgram' {
260
260
  *
261
261
  * The `address` argument is a string. If the value of `address` is a host name,
262
262
  * DNS will be used to resolve the address of the host. If `address` is not
263
- * provided or otherwise falsy, `'127.0.0.1'` (for `udp4` sockets) or `'::1'`(for `udp6` sockets) will be used by default.
263
+ * provided or otherwise nullish, `'127.0.0.1'` (for `udp4` sockets) or `'::1'`(for `udp6` sockets) will be used by default.
264
264
  *
265
265
  * If the socket has not been previously bound with a call to `bind`, the socket
266
266
  * is assigned a random port number and is bound to the "all interfaces" address
@@ -20,7 +20,7 @@
20
20
  * should generally include the module name to avoid collisions with data from
21
21
  * other modules.
22
22
  * @experimental
23
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/diagnostics_channel.js)
23
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/diagnostics_channel.js)
24
24
  */
25
25
  declare module 'diagnostics_channel' {
26
26
  /**
@@ -119,7 +119,7 @@ declare module 'dns/promises' {
119
119
  *
120
120
  * <omitted>
121
121
  *
122
- * On error, the `Promise` is rejected with an `Error` object, where `err.code`is one of the `DNS error codes`.
122
+ * On error, the `Promise` is rejected with an `Error` object, where `err.code`is one of the DNS error codes.
123
123
  * @since v10.6.0
124
124
  * @param hostname Host name to resolve.
125
125
  * @param [rrtype='A'] Resource record type.
@@ -189,7 +189,7 @@ declare module 'dns/promises' {
189
189
  * Uses the DNS protocol to resolve `CAA` records for the `hostname`. On success,
190
190
  * the `Promise` is resolved with an array of objects containing available
191
191
  * certification authority authorization records available for the `hostname`(e.g. `[{critical: 0, iodef: 'mailto:pki@example.com'},{critical: 128, issue: 'pki.example.com'}]`).
192
- * @since v15.0.0
192
+ * @since v15.0.0, v14.17.0
193
193
  */
194
194
  function resolveCaa(hostname: string): Promise<CaaRecord[]>;
195
195
  /**
@@ -300,7 +300,7 @@ declare module 'dns/promises' {
300
300
  * Performs a reverse DNS query that resolves an IPv4 or IPv6 address to an
301
301
  * array of host names.
302
302
  *
303
- * On error, the `Promise` is rejected with an `Error` object, where `err.code`is one of the `DNS error codes`.
303
+ * On error, the `Promise` is rejected with an `Error` object, where `err.code`is one of the DNS error codes.
304
304
  * @since v10.6.0
305
305
  */
306
306
  function reverse(ip: string): Promise<string[]>;
@@ -332,14 +332,16 @@ declare module 'dns/promises' {
332
332
  */
333
333
  function setServers(servers: ReadonlyArray<string>): void;
334
334
  /**
335
- * Set the default value of `verbatim` in {@link lookup}. The value could be:
336
- * - `ipv4first`: sets default `verbatim` `false`.
337
- * - `verbatim`: sets default `verbatim` `true`.
335
+ * Set the default value of `verbatim` in `dns.lookup()` and `dnsPromises.lookup()`. The value could be:
338
336
  *
339
- * The default is `ipv4first` and {@link setDefaultResultOrder} have higher priority than `--dns-result-order`.
340
- * When using worker threads, {@link setDefaultResultOrder} from the main thread won't affect the default dns orders in workers.
341
- * @since v14.18.0
342
- * @param order must be 'ipv4first' or 'verbatim'.
337
+ * * `ipv4first`: sets default `verbatim` `false`.
338
+ * * `verbatim`: sets default `verbatim` `true`.
339
+ *
340
+ * The default is `ipv4first` and `dnsPromises.setDefaultResultOrder()` have
341
+ * higher priority than `--dns-result-order`. When using `worker threads`,`dnsPromises.setDefaultResultOrder()` from the main thread won't affect the
342
+ * default dns orders in workers.
343
+ * @since v16.4.0, v14.18.0
344
+ * @param order must be `'ipv4first'` or `'verbatim'`.
343
345
  */
344
346
  function setDefaultResultOrder(order: 'ipv4first' | 'verbatim'): void;
345
347
  class Resolver {
@@ -42,7 +42,7 @@
42
42
  * ```
43
43
  *
44
44
  * See the `Implementation considerations section` for more information.
45
- * @see [source](https://github.com/nodejs/node/blob/v16.9.0/lib/dns.js)
45
+ * @see [source](https://github.com/nodejs/node/blob/v17.0.0/lib/dns.js)
46
46
  */
47
47
  declare module 'dns' {
48
48
  import * as dnsPromises from 'node:dns/promises';
@@ -58,6 +58,9 @@ declare module 'dns' {
58
58
  family?: number | undefined;
59
59
  hints?: number | undefined;
60
60
  all?: boolean | undefined;
61
+ /**
62
+ * @default true
63
+ */
61
64
  verbatim?: boolean | undefined;
62
65
  }
63
66
  export interface LookupOneOptions extends LookupOptions {
@@ -241,7 +244,7 @@ declare module 'dns' {
241
244
  *
242
245
  * <omitted>
243
246
  *
244
- * On error, `err` is an `Error` object, where `err.code` is one of the `DNS error codes`.
247
+ * On error, `err` is an `Error` object, where `err.code` is one of theDNS error codes.
245
248
  * @since v0.1.27
246
249
  * @param hostname Host name to resolve.
247
250
  * @param [rrtype='A'] Resource record type.
@@ -314,7 +317,7 @@ declare module 'dns' {
314
317
  * Uses the DNS protocol to resolve `CAA` records for the `hostname`. The`addresses` argument passed to the `callback` function
315
318
  * will contain an array of certification authority authorization records
316
319
  * available for the `hostname` (e.g. `[{critical: 0, iodef: 'mailto:pki@example.com'}, {critical: 128, issue: 'pki.example.com'}]`).
317
- * @since v15.0.0
320
+ * @since v15.0.0, v14.17.0
318
321
  */
319
322
  export function resolveCaa(hostname: string, callback: (err: NodeJS.ErrnoException | null, records: CaaRecord[]) => void): void;
320
323
  export namespace resolveCaa {
@@ -527,14 +530,16 @@ declare module 'dns' {
527
530
  */
528
531
  export function getServers(): string[];
529
532
  /**
530
- * Set the default value of `verbatim` in {@link lookup}. The value could be:
531
- * - `ipv4first`: sets default `verbatim` `false`.
532
- * - `verbatim`: sets default `verbatim` `true`.
533
- *
534
- * The default is `ipv4first` and {@link setDefaultResultOrder} have higher priority than `--dns-result-order`.
535
- * When using worker threads, {@link setDefaultResultOrder} from the main thread won't affect the default dns orders in workers.
536
- * @since v14.18.0
537
- * @param order must be 'ipv4first' or 'verbatim'.
533
+ * Set the default value of `verbatim` in {@link lookup} and `dnsPromises.lookup()`. The value could be:
534
+ *
535
+ * * `ipv4first`: sets default `verbatim` `false`.
536
+ * * `verbatim`: sets default `verbatim` `true`.
537
+ *
538
+ * The default is `ipv4first` and {@link setDefaultResultOrder} have higher
539
+ * priority than `--dns-result-order`. When using `worker threads`,{@link setDefaultResultOrder} from the main thread won't affect the default
540
+ * dns orders in workers.
541
+ * @since v16.4.0, v14.18.0
542
+ * @param order must be `'ipv4first'` or `'verbatim'`.
538
543
  */
539
544
  export function setDefaultResultOrder(order: 'ipv4first' | 'verbatim'): void;
540
545
  // Error codes
@@ -640,7 +645,7 @@ declare module 'dns' {
640
645
  * The resolver will use the v4 local address when making requests to IPv4 DNS
641
646
  * servers, and the v6 local address when making requests to IPv6 DNS servers.
642
647
  * The `rrtype` of resolution requests has no impact on the local address used.
643
- * @since v15.1.0
648
+ * @since v15.1.0, v14.17.0
644
649
  * @param [ipv4='0.0.0.0'] A string representation of an IPv4 address.
645
650
  * @param [ipv6='::0'] A string representation of an IPv6 address.
646
651
  */