@effect-aws/client-iam 1.7.0 → 1.9.3

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 (69) hide show
  1. package/Errors/package.json +6 -0
  2. package/IAMClientInstance/package.json +6 -0
  3. package/IAMService/package.json +6 -0
  4. package/IAMServiceConfig/package.json +6 -0
  5. package/{lib → dist/cjs}/Errors.d.ts +6 -11
  6. package/dist/cjs/Errors.d.ts.map +1 -0
  7. package/dist/cjs/Errors.js +41 -0
  8. package/dist/cjs/Errors.js.map +1 -0
  9. package/dist/cjs/IAMClientInstance.d.ts +24 -0
  10. package/dist/cjs/IAMClientInstance.d.ts.map +1 -0
  11. package/dist/cjs/IAMClientInstance.js +50 -0
  12. package/dist/cjs/IAMClientInstance.js.map +1 -0
  13. package/dist/cjs/IAMService.d.ts +697 -0
  14. package/dist/cjs/IAMService.d.ts.map +1 -0
  15. package/dist/cjs/IAMService.js +223 -0
  16. package/dist/cjs/IAMService.js.map +1 -0
  17. package/dist/cjs/IAMServiceConfig.d.ts +25 -0
  18. package/dist/cjs/IAMServiceConfig.d.ts.map +1 -0
  19. package/dist/cjs/IAMServiceConfig.js +35 -0
  20. package/dist/cjs/IAMServiceConfig.js.map +1 -0
  21. package/dist/cjs/index.d.ts +39 -0
  22. package/dist/cjs/index.d.ts.map +1 -0
  23. package/dist/cjs/index.js +56 -0
  24. package/dist/cjs/index.js.map +1 -0
  25. package/dist/dts/Errors.d.ts +40 -0
  26. package/dist/dts/Errors.d.ts.map +1 -0
  27. package/dist/dts/IAMClientInstance.d.ts +24 -0
  28. package/dist/dts/IAMClientInstance.d.ts.map +1 -0
  29. package/dist/dts/IAMService.d.ts +697 -0
  30. package/dist/dts/IAMService.d.ts.map +1 -0
  31. package/dist/dts/IAMServiceConfig.d.ts +25 -0
  32. package/dist/dts/IAMServiceConfig.d.ts.map +1 -0
  33. package/dist/dts/index.d.ts +39 -0
  34. package/dist/dts/index.d.ts.map +1 -0
  35. package/dist/esm/Errors.js +38 -0
  36. package/dist/esm/Errors.js.map +1 -0
  37. package/dist/esm/IAMClientInstance.js +23 -0
  38. package/dist/esm/IAMClientInstance.js.map +1 -0
  39. package/dist/esm/IAMService.js +196 -0
  40. package/dist/esm/IAMService.js.map +1 -0
  41. package/dist/esm/IAMServiceConfig.js +31 -0
  42. package/dist/esm/IAMServiceConfig.js.map +1 -0
  43. package/dist/esm/index.js +27 -0
  44. package/dist/esm/index.js.map +1 -0
  45. package/dist/esm/package.json +4 -0
  46. package/package.json +60 -43
  47. package/src/Errors.ts +112 -0
  48. package/src/IAMClientInstance.ts +33 -0
  49. package/src/IAMService.ts +2797 -0
  50. package/src/IAMServiceConfig.ts +51 -0
  51. package/src/index.ts +44 -0
  52. package/CHANGELOG.md +0 -73
  53. package/docgen.json +0 -8
  54. package/lib/Errors.js +0 -41
  55. package/lib/IAMClientInstance.d.ts +0 -31
  56. package/lib/IAMClientInstance.js +0 -57
  57. package/lib/IAMClientInstanceConfig.d.ts +0 -23
  58. package/lib/IAMClientInstanceConfig.js +0 -44
  59. package/lib/IAMService.d.ts +0 -885
  60. package/lib/IAMService.js +0 -252
  61. package/lib/esm/Errors.js +0 -38
  62. package/lib/esm/IAMClientInstance.js +0 -30
  63. package/lib/esm/IAMClientInstanceConfig.js +0 -40
  64. package/lib/esm/IAMService.js +0 -248
  65. package/lib/esm/index.js +0 -5
  66. package/lib/index.d.ts +0 -4
  67. package/lib/index.js +0 -21
  68. package/project.json +0 -77
  69. package/vitest.config.ts +0 -3
@@ -0,0 +1,51 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { IAMClientConfig } from "@aws-sdk/client-iam";
5
+ import { ServiceLogger } from "@effect-aws/commons";
6
+ import { Effect, FiberRef, Layer } from "effect";
7
+ import { dual } from "effect/Function";
8
+ import { globalValue } from "effect/GlobalValue";
9
+ import type { IAMService } from "./IAMService.js";
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ * @category iam service config
14
+ */
15
+ const currentIAMServiceConfig = globalValue(
16
+ "@effect-aws/client-iam/currentIAMServiceConfig",
17
+ () => FiberRef.unsafeMake<IAMService.Config>({}),
18
+ );
19
+
20
+ /**
21
+ * @since 1.0.0
22
+ * @category iam service config
23
+ */
24
+ export const withIAMServiceConfig: {
25
+ (config: IAMService.Config): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
26
+ <A, E, R>(effect: Effect.Effect<A, E, R>, config: IAMService.Config): Effect.Effect<A, E, R>;
27
+ } = dual(
28
+ 2,
29
+ <A, E, R>(effect: Effect.Effect<A, E, R>, config: IAMService.Config): Effect.Effect<A, E, R> =>
30
+ Effect.locally(effect, currentIAMServiceConfig, config),
31
+ );
32
+
33
+ /**
34
+ * @since 1.0.0
35
+ * @category iam service config
36
+ */
37
+ export const setIAMServiceConfig = (config: IAMService.Config) => Layer.locallyScoped(currentIAMServiceConfig, config);
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category adapters
42
+ */
43
+ export const toIAMClientConfig: Effect.Effect<IAMClientConfig> = Effect.gen(function*() {
44
+ const { logger: serviceLogger, ...config } = yield* FiberRef.get(currentIAMServiceConfig);
45
+
46
+ const logger = serviceLogger === true
47
+ ? yield* ServiceLogger.toClientLogger(ServiceLogger.defaultServiceLogger)
48
+ : (serviceLogger ? yield* ServiceLogger.toClientLogger(ServiceLogger.make(serviceLogger)) : undefined);
49
+
50
+ return { logger, ...config };
51
+ });
package/src/index.ts ADDED
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import { IAMService } from "./IAMService.js";
5
+
6
+ /**
7
+ * @since 1.0.0
8
+ */
9
+ export * from "./Errors.js";
10
+
11
+ /**
12
+ * @since 1.0.0
13
+ */
14
+ export * as IAMClientInstance from "./IAMClientInstance.js";
15
+
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+ export * as IAMServiceConfig from "./IAMServiceConfig.js";
20
+
21
+ /**
22
+ * @since 1.0.0
23
+ */
24
+ export * from "./IAMService.js";
25
+
26
+ /**
27
+ * @since 1.0.0
28
+ * @category exports
29
+ * @alias IAMService
30
+ */
31
+ export declare namespace IAM {
32
+ /**
33
+ * @since 1.0.0
34
+ * @alias IAMService.Config
35
+ */
36
+ export type Config = IAMService.Config;
37
+ }
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category exports
42
+ * @alias IAMService
43
+ */
44
+ export const IAM = IAMService;
package/CHANGELOG.md DELETED
@@ -1,73 +0,0 @@
1
- # @effect-aws/client-iam
2
-
3
- ## 1.7.0
4
-
5
- ### Minor Changes
6
-
7
- - [#93](https://github.com/floydspace/effect-aws/pull/93) [`a96fbd8`](https://github.com/floydspace/effect-aws/commit/a96fbd8840a7a6cfb795a2a6ab96aa32d32a3525) Thanks [@godu](https://github.com/godu)! - Destroy client after layer lifecycle to release idle connections.
8
-
9
- ## 1.6.0
10
-
11
- ### Minor Changes
12
-
13
- - [`b24f980`](https://github.com/floydspace/effect-aws/commit/b24f98045ee3383c54d1152054e5b77f01d5f5e3) Thanks [@floydspace](https://github.com/floydspace)! - update services
14
-
15
- ## 1.5.0
16
-
17
- ### Minor Changes
18
-
19
- - [#80](https://github.com/floydspace/effect-aws/pull/80) [`4b16fbe`](https://github.com/floydspace/effect-aws/commit/4b16fbebce8131df7798ee92f43cf6b7df3e907c) Thanks [@floydspace](https://github.com/floydspace)! - simplify layers configuration (closes #78)
20
-
21
- ## 1.4.1
22
-
23
- ### Patch Changes
24
-
25
- - [#75](https://github.com/floydspace/effect-aws/pull/75) [`9dc170d`](https://github.com/floydspace/effect-aws/commit/9dc170d975c04888bbc7ca7b241b4b5265668fb5) Thanks [@godu](https://github.com/godu)! - export the HttpHandlerOptions type
26
-
27
- ## 1.4.0
28
-
29
- ### Minor Changes
30
-
31
- - [`e540420`](https://github.com/floydspace/effect-aws/commit/e5404208c2438e1e1546637a8edbbdc1c9468850) Thanks [@floydspace](https://github.com/floydspace)! - integrate aws-sdk abort signal with effect interruption
32
-
33
- ## 1.3.0
34
-
35
- ### Minor Changes
36
-
37
- - [#58](https://github.com/floydspace/effect-aws/pull/58) [`888dc8c`](https://github.com/floydspace/effect-aws/commit/888dc8ca0d7104e33a24426a1aacedb48e8fc3ac) Thanks [@floydspace](https://github.com/floydspace)! - use Effect.Tag instead of Context.GenericTag for service, upgrade sdk, handle only known errors
38
-
39
- ## 1.2.0
40
-
41
- ### Minor Changes
42
-
43
- - [`0cfcda0`](https://github.com/floydspace/effect-aws/commit/0cfcda0d5617916d966807f5d5120df9ba461c12) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect to v3
44
-
45
- ## 1.1.1
46
-
47
- ### Patch Changes
48
-
49
- - [`b2f00db`](https://github.com/floydspace/effect-aws/commit/b2f00db5fdffaa74bcb124324db7313bd4f218df) Thanks [@floydspace](https://github.com/floydspace)! - update effect peer version
50
-
51
- ## 1.1.0
52
-
53
- ### Minor Changes
54
-
55
- - [`82eaea7`](https://github.com/floydspace/effect-aws/commit/82eaea778048c9ebba98682196448b0aa1586d2e) Thanks [@floydspace](https://github.com/floydspace)! - upgrade effect to v2.3 and fix breaking changes
56
-
57
- ## 1.0.2
58
-
59
- ### Patch Changes
60
-
61
- - [`88676ae`](https://github.com/floydspace/effect-aws/commit/88676ae3a5f7fa514cab58ba83a50a0774be1aa1) Thanks [@floydspace](https://github.com/floydspace)! - use effect@~2.2 as maximum allowed peer version
62
-
63
- ## 1.0.1
64
-
65
- ### Patch Changes
66
-
67
- - [#29](https://github.com/floydspace/effect-aws/pull/29) [`4b6c521`](https://github.com/floydspace/effect-aws/commit/4b6c521206c8ff76ff878938f6b90ee474cc8da2) Thanks [@godu](https://github.com/godu)! - improve tree shaking by using sideEffects flag
68
-
69
- ## 1.0.0
70
-
71
- ### Major Changes
72
-
73
- - [#24](https://github.com/floydspace/effect-aws/pull/24) [`dfa2ff9`](https://github.com/floydspace/effect-aws/commit/dfa2ff94ba0bebf1dddcd65ed055207980adc452) Thanks [@godu](https://github.com/godu)! - implement effectful iam client
package/docgen.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "$schema": "../../node_modules/@effect/docgen/schema.json",
3
- "exclude": [
4
- "src/index.ts",
5
- "src/Errors.ts"
6
- ],
7
- "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"."
8
- }
package/lib/Errors.js DELETED
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SdkError = exports.AllServiceErrors = void 0;
4
- const effect_1 = require("effect");
5
- exports.AllServiceErrors = [
6
- "AccountNotManagementOrDelegatedAdministratorException",
7
- "CallerIsNotManagementAccountException",
8
- "ConcurrentModificationException",
9
- "CredentialReportExpiredException",
10
- "CredentialReportNotPresentException",
11
- "CredentialReportNotReadyException",
12
- "DeleteConflictException",
13
- "DuplicateCertificateException",
14
- "DuplicateSSHPublicKeyException",
15
- "EntityAlreadyExistsException",
16
- "EntityTemporarilyUnmodifiableException",
17
- "InvalidAuthenticationCodeException",
18
- "InvalidCertificateException",
19
- "InvalidInputException",
20
- "InvalidPublicKeyException",
21
- "InvalidUserTypeException",
22
- "KeyPairMismatchException",
23
- "LimitExceededException",
24
- "MalformedCertificateException",
25
- "MalformedPolicyDocumentException",
26
- "NoSuchEntityException",
27
- "OpenIdIdpCommunicationErrorException",
28
- "OrganizationNotFoundException",
29
- "OrganizationNotInAllFeaturesModeException",
30
- "PasswordPolicyViolationException",
31
- "PolicyEvaluationException",
32
- "PolicyNotAttachableException",
33
- "ReportGenerationLimitExceededException",
34
- "ServiceAccessNotEnabledException",
35
- "ServiceFailureException",
36
- "ServiceNotSupportedException",
37
- "UnmodifiableEntityException",
38
- "UnrecognizedPublicKeyEncodingException",
39
- ];
40
- exports.SdkError = effect_1.Data.tagged("SdkError");
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFtQ0EsbUNBQThCO0FBRWpCLFFBQUEsZ0JBQWdCLEdBQUc7SUFDOUIsdURBQXVEO0lBQ3ZELHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsa0NBQWtDO0lBQ2xDLHFDQUFxQztJQUNyQyxtQ0FBbUM7SUFDbkMseUJBQXlCO0lBQ3pCLCtCQUErQjtJQUMvQixnQ0FBZ0M7SUFDaEMsOEJBQThCO0lBQzlCLHdDQUF3QztJQUN4QyxvQ0FBb0M7SUFDcEMsNkJBQTZCO0lBQzdCLHVCQUF1QjtJQUN2QiwyQkFBMkI7SUFDM0IsMEJBQTBCO0lBQzFCLDBCQUEwQjtJQUMxQix3QkFBd0I7SUFDeEIsK0JBQStCO0lBQy9CLGtDQUFrQztJQUNsQyx1QkFBdUI7SUFDdkIsc0NBQXNDO0lBQ3RDLCtCQUErQjtJQUMvQiwyQ0FBMkM7SUFDM0Msa0NBQWtDO0lBQ2xDLDJCQUEyQjtJQUMzQiw4QkFBOEI7SUFDOUIsd0NBQXdDO0lBQ3hDLGtDQUFrQztJQUNsQyx5QkFBeUI7SUFDekIsOEJBQThCO0lBQzlCLDZCQUE2QjtJQUM3Qix3Q0FBd0M7Q0FDekMsQ0FBQztBQWlFVyxRQUFBLFFBQVEsR0FBRyxhQUFJLENBQUMsTUFBTSxDQUFXLFVBQVUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBBY2NvdW50Tm90TWFuYWdlbWVudE9yRGVsZWdhdGVkQWRtaW5pc3RyYXRvckV4Y2VwdGlvbixcbiAgQ2FsbGVySXNOb3RNYW5hZ2VtZW50QWNjb3VudEV4Y2VwdGlvbixcbiAgQ29uY3VycmVudE1vZGlmaWNhdGlvbkV4Y2VwdGlvbixcbiAgQ3JlZGVudGlhbFJlcG9ydEV4cGlyZWRFeGNlcHRpb24sXG4gIENyZWRlbnRpYWxSZXBvcnROb3RQcmVzZW50RXhjZXB0aW9uLFxuICBDcmVkZW50aWFsUmVwb3J0Tm90UmVhZHlFeGNlcHRpb24sXG4gIERlbGV0ZUNvbmZsaWN0RXhjZXB0aW9uLFxuICBEdXBsaWNhdGVDZXJ0aWZpY2F0ZUV4Y2VwdGlvbixcbiAgRHVwbGljYXRlU1NIUHVibGljS2V5RXhjZXB0aW9uLFxuICBFbnRpdHlBbHJlYWR5RXhpc3RzRXhjZXB0aW9uLFxuICBFbnRpdHlUZW1wb3JhcmlseVVubW9kaWZpYWJsZUV4Y2VwdGlvbixcbiAgSW52YWxpZEF1dGhlbnRpY2F0aW9uQ29kZUV4Y2VwdGlvbixcbiAgSW52YWxpZENlcnRpZmljYXRlRXhjZXB0aW9uLFxuICBJbnZhbGlkSW5wdXRFeGNlcHRpb24sXG4gIEludmFsaWRQdWJsaWNLZXlFeGNlcHRpb24sXG4gIEludmFsaWRVc2VyVHlwZUV4Y2VwdGlvbixcbiAgS2V5UGFpck1pc21hdGNoRXhjZXB0aW9uLFxuICBMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uLFxuICBNYWxmb3JtZWRDZXJ0aWZpY2F0ZUV4Y2VwdGlvbixcbiAgTWFsZm9ybWVkUG9saWN5RG9jdW1lbnRFeGNlcHRpb24sXG4gIE5vU3VjaEVudGl0eUV4Y2VwdGlvbixcbiAgT3BlbklkSWRwQ29tbXVuaWNhdGlvbkVycm9yRXhjZXB0aW9uLFxuICBPcmdhbml6YXRpb25Ob3RGb3VuZEV4Y2VwdGlvbixcbiAgT3JnYW5pemF0aW9uTm90SW5BbGxGZWF0dXJlc01vZGVFeGNlcHRpb24sXG4gIFBhc3N3b3JkUG9saWN5VmlvbGF0aW9uRXhjZXB0aW9uLFxuICBQb2xpY3lFdmFsdWF0aW9uRXhjZXB0aW9uLFxuICBQb2xpY3lOb3RBdHRhY2hhYmxlRXhjZXB0aW9uLFxuICBSZXBvcnRHZW5lcmF0aW9uTGltaXRFeGNlZWRlZEV4Y2VwdGlvbixcbiAgU2VydmljZUFjY2Vzc05vdEVuYWJsZWRFeGNlcHRpb24sXG4gIFNlcnZpY2VGYWlsdXJlRXhjZXB0aW9uLFxuICBTZXJ2aWNlTm90U3VwcG9ydGVkRXhjZXB0aW9uLFxuICBVbm1vZGlmaWFibGVFbnRpdHlFeGNlcHRpb24sXG4gIFVucmVjb2duaXplZFB1YmxpY0tleUVuY29kaW5nRXhjZXB0aW9uLFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWlhbVwiO1xuaW1wb3J0IHsgRGF0YSB9IGZyb20gXCJlZmZlY3RcIjtcblxuZXhwb3J0IGNvbnN0IEFsbFNlcnZpY2VFcnJvcnMgPSBbXG4gIFwiQWNjb3VudE5vdE1hbmFnZW1lbnRPckRlbGVnYXRlZEFkbWluaXN0cmF0b3JFeGNlcHRpb25cIixcbiAgXCJDYWxsZXJJc05vdE1hbmFnZW1lbnRBY2NvdW50RXhjZXB0aW9uXCIsXG4gIFwiQ29uY3VycmVudE1vZGlmaWNhdGlvbkV4Y2VwdGlvblwiLFxuICBcIkNyZWRlbnRpYWxSZXBvcnRFeHBpcmVkRXhjZXB0aW9uXCIsXG4gIFwiQ3JlZGVudGlhbFJlcG9ydE5vdFByZXNlbnRFeGNlcHRpb25cIixcbiAgXCJDcmVkZW50aWFsUmVwb3J0Tm90UmVhZHlFeGNlcHRpb25cIixcbiAgXCJEZWxldGVDb25mbGljdEV4Y2VwdGlvblwiLFxuICBcIkR1cGxpY2F0ZUNlcnRpZmljYXRlRXhjZXB0aW9uXCIsXG4gIFwiRHVwbGljYXRlU1NIUHVibGljS2V5RXhjZXB0aW9uXCIsXG4gIFwiRW50aXR5QWxyZWFkeUV4aXN0c0V4Y2VwdGlvblwiLFxuICBcIkVudGl0eVRlbXBvcmFyaWx5VW5tb2RpZmlhYmxlRXhjZXB0aW9uXCIsXG4gIFwiSW52YWxpZEF1dGhlbnRpY2F0aW9uQ29kZUV4Y2VwdGlvblwiLFxuICBcIkludmFsaWRDZXJ0aWZpY2F0ZUV4Y2VwdGlvblwiLFxuICBcIkludmFsaWRJbnB1dEV4Y2VwdGlvblwiLFxuICBcIkludmFsaWRQdWJsaWNLZXlFeGNlcHRpb25cIixcbiAgXCJJbnZhbGlkVXNlclR5cGVFeGNlcHRpb25cIixcbiAgXCJLZXlQYWlyTWlzbWF0Y2hFeGNlcHRpb25cIixcbiAgXCJMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uXCIsXG4gIFwiTWFsZm9ybWVkQ2VydGlmaWNhdGVFeGNlcHRpb25cIixcbiAgXCJNYWxmb3JtZWRQb2xpY3lEb2N1bWVudEV4Y2VwdGlvblwiLFxuICBcIk5vU3VjaEVudGl0eUV4Y2VwdGlvblwiLFxuICBcIk9wZW5JZElkcENvbW11bmljYXRpb25FcnJvckV4Y2VwdGlvblwiLFxuICBcIk9yZ2FuaXphdGlvbk5vdEZvdW5kRXhjZXB0aW9uXCIsXG4gIFwiT3JnYW5pemF0aW9uTm90SW5BbGxGZWF0dXJlc01vZGVFeGNlcHRpb25cIixcbiAgXCJQYXNzd29yZFBvbGljeVZpb2xhdGlvbkV4Y2VwdGlvblwiLFxuICBcIlBvbGljeUV2YWx1YXRpb25FeGNlcHRpb25cIixcbiAgXCJQb2xpY3lOb3RBdHRhY2hhYmxlRXhjZXB0aW9uXCIsXG4gIFwiUmVwb3J0R2VuZXJhdGlvbkxpbWl0RXhjZWVkZWRFeGNlcHRpb25cIixcbiAgXCJTZXJ2aWNlQWNjZXNzTm90RW5hYmxlZEV4Y2VwdGlvblwiLFxuICBcIlNlcnZpY2VGYWlsdXJlRXhjZXB0aW9uXCIsXG4gIFwiU2VydmljZU5vdFN1cHBvcnRlZEV4Y2VwdGlvblwiLFxuICBcIlVubW9kaWZpYWJsZUVudGl0eUV4Y2VwdGlvblwiLFxuICBcIlVucmVjb2duaXplZFB1YmxpY0tleUVuY29kaW5nRXhjZXB0aW9uXCIsXG5dO1xuXG5leHBvcnQgdHlwZSBUYWdnZWRFeGNlcHRpb248VCBleHRlbmRzIHsgbmFtZTogc3RyaW5nIH0+ID0gVCAmIHtcbiAgcmVhZG9ubHkgX3RhZzogVFtcIm5hbWVcIl07XG59O1xuXG5leHBvcnQgdHlwZSBBY2NvdW50Tm90TWFuYWdlbWVudE9yRGVsZWdhdGVkQWRtaW5pc3RyYXRvckVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEFjY291bnROb3RNYW5hZ2VtZW50T3JEZWxlZ2F0ZWRBZG1pbmlzdHJhdG9yRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIENhbGxlcklzTm90TWFuYWdlbWVudEFjY291bnRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxDYWxsZXJJc05vdE1hbmFnZW1lbnRBY2NvdW50RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIENvbmN1cnJlbnRNb2RpZmljYXRpb25FcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxDb25jdXJyZW50TW9kaWZpY2F0aW9uRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIENyZWRlbnRpYWxSZXBvcnRFeHBpcmVkRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248Q3JlZGVudGlhbFJlcG9ydEV4cGlyZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgQ3JlZGVudGlhbFJlcG9ydE5vdFByZXNlbnRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxDcmVkZW50aWFsUmVwb3J0Tm90UHJlc2VudEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBDcmVkZW50aWFsUmVwb3J0Tm90UmVhZHlFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxDcmVkZW50aWFsUmVwb3J0Tm90UmVhZHlFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgRGVsZXRlQ29uZmxpY3RFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxEZWxldGVDb25mbGljdEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBEdXBsaWNhdGVDZXJ0aWZpY2F0ZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPER1cGxpY2F0ZUNlcnRpZmljYXRlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIER1cGxpY2F0ZVNTSFB1YmxpY0tleUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPER1cGxpY2F0ZVNTSFB1YmxpY0tleUV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBFbnRpdHlBbHJlYWR5RXhpc3RzRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248RW50aXR5QWxyZWFkeUV4aXN0c0V4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBFbnRpdHlUZW1wb3JhcmlseVVubW9kaWZpYWJsZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEVudGl0eVRlbXBvcmFyaWx5VW5tb2RpZmlhYmxlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEludmFsaWRBdXRoZW50aWNhdGlvbkNvZGVFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkQXV0aGVudGljYXRpb25Db2RlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEludmFsaWRDZXJ0aWZpY2F0ZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRDZXJ0aWZpY2F0ZUV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBJbnZhbGlkSW5wdXRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkSW5wdXRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFB1YmxpY0tleUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRQdWJsaWNLZXlFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFVzZXJUeXBlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFVzZXJUeXBlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEtleVBhaXJNaXNtYXRjaEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEtleVBhaXJNaXNtYXRjaEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBMaW1pdEV4Y2VlZGVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248TGltaXRFeGNlZWRlZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBNYWxmb3JtZWRDZXJ0aWZpY2F0ZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPE1hbGZvcm1lZENlcnRpZmljYXRlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIE1hbGZvcm1lZFBvbGljeURvY3VtZW50RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248TWFsZm9ybWVkUG9saWN5RG9jdW1lbnRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgTm9TdWNoRW50aXR5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Tm9TdWNoRW50aXR5RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIE9wZW5JZElkcENvbW11bmljYXRpb25FcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxPcGVuSWRJZHBDb21tdW5pY2F0aW9uRXJyb3JFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgT3JnYW5pemF0aW9uTm90Rm91bmRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxPcmdhbml6YXRpb25Ob3RGb3VuZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBPcmdhbml6YXRpb25Ob3RJbkFsbEZlYXR1cmVzTW9kZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPE9yZ2FuaXphdGlvbk5vdEluQWxsRmVhdHVyZXNNb2RlRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFBhc3N3b3JkUG9saWN5VmlvbGF0aW9uRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248UGFzc3dvcmRQb2xpY3lWaW9sYXRpb25FeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgUG9saWN5RXZhbHVhdGlvbkVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFBvbGljeUV2YWx1YXRpb25FeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgUG9saWN5Tm90QXR0YWNoYWJsZUVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFBvbGljeU5vdEF0dGFjaGFibGVFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgUmVwb3J0R2VuZXJhdGlvbkxpbWl0RXhjZWVkZWRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxSZXBvcnRHZW5lcmF0aW9uTGltaXRFeGNlZWRlZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBTZXJ2aWNlQWNjZXNzTm90RW5hYmxlZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFNlcnZpY2VBY2Nlc3NOb3RFbmFibGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFNlcnZpY2VGYWlsdXJlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248U2VydmljZUZhaWx1cmVFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgU2VydmljZU5vdFN1cHBvcnRlZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFNlcnZpY2VOb3RTdXBwb3J0ZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVW5tb2RpZmlhYmxlRW50aXR5RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248VW5tb2RpZmlhYmxlRW50aXR5RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFVucmVjb2duaXplZFB1YmxpY0tleUVuY29kaW5nRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248VW5yZWNvZ25pemVkUHVibGljS2V5RW5jb2RpbmdFeGNlcHRpb24+O1xuXG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
@@ -1,31 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import { IAMClient } from "@aws-sdk/client-iam";
5
- import * as Context from "effect/Context";
6
- import * as Effect from "effect/Effect";
7
- import * as Layer from "effect/Layer";
8
- import { IAMClientInstanceConfig } from "./IAMClientInstanceConfig";
9
- declare const IAMClientInstance_base: Context.TagClass<IAMClientInstance, "@effect-aws/client-iam/IAMClientInstance", IAMClient>;
10
- /**
11
- * @since 1.0.0
12
- * @category tags
13
- */
14
- export declare class IAMClientInstance extends IAMClientInstance_base {
15
- }
16
- /**
17
- * @since 1.0.0
18
- * @category constructors
19
- */
20
- export declare const makeIAMClientInstance: Effect.Effect<IAMClient, never, import("effect/Scope").Scope | IAMClientInstanceConfig>;
21
- /**
22
- * @since 1.0.0
23
- * @category layers
24
- */
25
- export declare const IAMClientInstanceLayer: Layer.Layer<IAMClientInstance, never, IAMClientInstanceConfig>;
26
- /**
27
- * @since 1.0.0
28
- * @category layers
29
- */
30
- export declare const DefaultIAMClientInstanceLayer: Layer.Layer<IAMClientInstance, never, never>;
31
- export {};
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.DefaultIAMClientInstanceLayer = exports.IAMClientInstanceLayer = exports.makeIAMClientInstance = exports.IAMClientInstance = void 0;
27
- /**
28
- * @since 1.0.0
29
- */
30
- const client_iam_1 = require("@aws-sdk/client-iam");
31
- const Context = __importStar(require("effect/Context"));
32
- const Effect = __importStar(require("effect/Effect"));
33
- const Layer = __importStar(require("effect/Layer"));
34
- const IAMClientInstanceConfig_1 = require("./IAMClientInstanceConfig");
35
- /**
36
- * @since 1.0.0
37
- * @category tags
38
- */
39
- class IAMClientInstance extends Context.Tag("@effect-aws/client-iam/IAMClientInstance")() {
40
- }
41
- exports.IAMClientInstance = IAMClientInstance;
42
- /**
43
- * @since 1.0.0
44
- * @category constructors
45
- */
46
- exports.makeIAMClientInstance = Effect.flatMap(IAMClientInstanceConfig_1.IAMClientInstanceConfig, (config) => Effect.acquireRelease(Effect.sync(() => new client_iam_1.IAMClient(config)), (client) => Effect.sync(() => client.destroy())));
47
- /**
48
- * @since 1.0.0
49
- * @category layers
50
- */
51
- exports.IAMClientInstanceLayer = Layer.scoped(IAMClientInstance, exports.makeIAMClientInstance);
52
- /**
53
- * @since 1.0.0
54
- * @category layers
55
- */
56
- exports.DefaultIAMClientInstanceLayer = exports.IAMClientInstanceLayer.pipe(Layer.provide(IAMClientInstanceConfig_1.DefaultIAMClientConfigLayer));
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUFNQ2xpZW50SW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvSUFNQ2xpZW50SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7R0FFRztBQUNILG9EQUFnRDtBQUNoRCx3REFBMEM7QUFDMUMsc0RBQXdDO0FBQ3hDLG9EQUFzQztBQUN0Qyx1RUFHbUM7QUFFbkM7OztHQUdHO0FBQ0gsTUFBYSxpQkFBa0IsU0FBUSxPQUFPLENBQUMsR0FBRyxDQUNoRCwwQ0FBMEMsQ0FDM0MsRUFBZ0M7Q0FBRztBQUZwQyw4Q0FFb0M7QUFFcEM7OztHQUdHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUNqRCxpREFBdUIsRUFDdkIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNULE1BQU0sQ0FBQyxjQUFjLENBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQ3hDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUNoRCxDQUNKLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2hELGlCQUFpQixFQUNqQiw2QkFBcUIsQ0FDdEIsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsNkJBQTZCLEdBQUcsOEJBQXNCLENBQUMsSUFBSSxDQUN0RSxLQUFLLENBQUMsT0FBTyxDQUFDLHFEQUEyQixDQUFDLENBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgeyBJQU1DbGllbnQgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWlhbVwiO1xuaW1wb3J0ICogYXMgQ29udGV4dCBmcm9tIFwiZWZmZWN0L0NvbnRleHRcIjtcbmltcG9ydCAqIGFzIEVmZmVjdCBmcm9tIFwiZWZmZWN0L0VmZmVjdFwiO1xuaW1wb3J0ICogYXMgTGF5ZXIgZnJvbSBcImVmZmVjdC9MYXllclwiO1xuaW1wb3J0IHtcbiAgRGVmYXVsdElBTUNsaWVudENvbmZpZ0xheWVyLFxuICBJQU1DbGllbnRJbnN0YW5jZUNvbmZpZyxcbn0gZnJvbSBcIi4vSUFNQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjbGFzcyBJQU1DbGllbnRJbnN0YW5jZSBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1pYW0vSUFNQ2xpZW50SW5zdGFuY2VcIixcbik8SUFNQ2xpZW50SW5zdGFuY2UsIElBTUNsaWVudD4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZUlBTUNsaWVudEluc3RhbmNlID0gRWZmZWN0LmZsYXRNYXAoXG4gIElBTUNsaWVudEluc3RhbmNlQ29uZmlnLFxuICAoY29uZmlnKSA9PlxuICAgIEVmZmVjdC5hY3F1aXJlUmVsZWFzZShcbiAgICAgIEVmZmVjdC5zeW5jKCgpID0+IG5ldyBJQU1DbGllbnQoY29uZmlnKSksXG4gICAgICAoY2xpZW50KSA9PiBFZmZlY3Quc3luYygoKSA9PiBjbGllbnQuZGVzdHJveSgpKSxcbiAgICApLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IElBTUNsaWVudEluc3RhbmNlTGF5ZXIgPSBMYXllci5zY29wZWQoXG4gIElBTUNsaWVudEluc3RhbmNlLFxuICBtYWtlSUFNQ2xpZW50SW5zdGFuY2UsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdElBTUNsaWVudEluc3RhbmNlTGF5ZXIgPSBJQU1DbGllbnRJbnN0YW5jZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdElBTUNsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
@@ -1,23 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import type { IAMClientConfig } from "@aws-sdk/client-iam";
5
- import { Context, Effect, Layer } from "effect";
6
- declare const IAMClientInstanceConfig_base: Context.TagClass<IAMClientInstanceConfig, "@effect-aws/client-iam/IAMClientInstanceConfig", IAMClientConfig>;
7
- /**
8
- * @since 1.0.0
9
- * @category tags
10
- */
11
- export declare class IAMClientInstanceConfig extends IAMClientInstanceConfig_base {
12
- }
13
- /**
14
- * @since 1.0.0
15
- * @category constructors
16
- */
17
- export declare const makeDefaultIAMClientInstanceConfig: Effect.Effect<IAMClientConfig>;
18
- /**
19
- * @since 1.0.0
20
- * @category layers
21
- */
22
- export declare const DefaultIAMClientConfigLayer: Layer.Layer<IAMClientInstanceConfig, never, never>;
23
- export {};
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultIAMClientConfigLayer = exports.makeDefaultIAMClientInstanceConfig = exports.IAMClientInstanceConfig = void 0;
4
- const effect_1 = require("effect");
5
- /**
6
- * @since 1.0.0
7
- * @category tags
8
- */
9
- class IAMClientInstanceConfig extends effect_1.Context.Tag("@effect-aws/client-iam/IAMClientInstanceConfig")() {
10
- }
11
- exports.IAMClientInstanceConfig = IAMClientInstanceConfig;
12
- /**
13
- * @since 1.0.0
14
- * @category constructors
15
- */
16
- exports.makeDefaultIAMClientInstanceConfig = effect_1.Effect.gen(function* (_) {
17
- const runtime = yield* _(effect_1.Effect.runtime());
18
- const runSync = effect_1.Runtime.runSync(runtime);
19
- return {
20
- logger: {
21
- info(m) {
22
- effect_1.Effect.logInfo(m).pipe(runSync);
23
- },
24
- warn(m) {
25
- effect_1.Effect.logWarning(m).pipe(runSync);
26
- },
27
- error(m) {
28
- effect_1.Effect.logError(m).pipe(runSync);
29
- },
30
- debug(m) {
31
- effect_1.Effect.logDebug(m).pipe(runSync);
32
- },
33
- trace(m) {
34
- effect_1.Effect.logTrace(m).pipe(runSync);
35
- },
36
- },
37
- };
38
- });
39
- /**
40
- * @since 1.0.0
41
- * @category layers
42
- */
43
- exports.DefaultIAMClientConfigLayer = effect_1.Layer.effect(IAMClientInstanceConfig, exports.makeDefaultIAMClientInstanceConfig);
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUFNQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvSUFNQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsbUNBQXlEO0FBRXpEOzs7R0FHRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsZ0JBQU8sQ0FBQyxHQUFHLENBQ3RELGdEQUFnRCxDQUNqRCxFQUE0QztDQUFHO0FBRmhELDBEQUVnRDtBQUVoRDs7O0dBR0c7QUFDVSxRQUFBLGtDQUFrQyxHQUM3QyxlQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDckIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLGdCQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpDLE9BQU87UUFDTCxNQUFNLEVBQUU7WUFDTixJQUFJLENBQUMsQ0FBQztnQkFDSixlQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0osZUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLGVBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxlQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsZUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUw7OztHQUdHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxjQUFLLENBQUMsTUFBTSxDQUNyRCx1QkFBdUIsRUFDdkIsMENBQWtDLENBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgdHlwZSB7IElBTUNsaWVudENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtaWFtXCI7XG5pbXBvcnQgeyBDb250ZXh0LCBFZmZlY3QsIExheWVyLCBSdW50aW1lIH0gZnJvbSBcImVmZmVjdFwiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIElBTUNsaWVudEluc3RhbmNlQ29uZmlnIGV4dGVuZHMgQ29udGV4dC5UYWcoXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LWlhbS9JQU1DbGllbnRJbnN0YW5jZUNvbmZpZ1wiLFxuKTxJQU1DbGllbnRJbnN0YW5jZUNvbmZpZywgSUFNQ2xpZW50Q29uZmlnPigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRGVmYXVsdElBTUNsaWVudEluc3RhbmNlQ29uZmlnOiBFZmZlY3QuRWZmZWN0PElBTUNsaWVudENvbmZpZz4gPVxuICBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICAgIGNvbnN0IHJ1bnRpbWUgPSB5aWVsZCogXyhFZmZlY3QucnVudGltZTxuZXZlcj4oKSk7XG4gICAgY29uc3QgcnVuU3luYyA9IFJ1bnRpbWUucnVuU3luYyhydW50aW1lKTtcblxuICAgIHJldHVybiB7XG4gICAgICBsb2dnZXI6IHtcbiAgICAgICAgaW5mbyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0luZm8obSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgd2FybihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1dhcm5pbmcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dFcnJvcihtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBkZWJ1ZyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0RlYnVnKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYWNlKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nVHJhY2UobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0SUFNQ2xpZW50Q29uZmlnTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIElBTUNsaWVudEluc3RhbmNlQ29uZmlnLFxuICBtYWtlRGVmYXVsdElBTUNsaWVudEluc3RhbmNlQ29uZmlnLFxuKTtcbiJdfQ==