@aws-amplify/graphql-api-construct 1.18.7 → 1.18.8

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 (177) hide show
  1. package/.jsii +83 -43
  2. package/CHANGELOG.md +6 -0
  3. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  4. package/lib/amplify-graphql-api.js +4 -2
  5. package/lib/amplify-graphql-definition.js +1 -1
  6. package/lib/sql-model-datasource-strategy.js +1 -1
  7. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.d.ts +13 -0
  8. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/conversation_handler_construct.js +17 -4
  9. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/bedrock_converse_adapter.js +89 -71
  10. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.d.ts +1 -0
  11. package/node_modules/@aws-amplify/ai-constructs/lib/conversation/runtime/types.js +1 -1
  12. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/README.md +9 -0
  13. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/backend_entry_point_locator.d.ts +14 -0
  14. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/backend_entry_point_locator.js +37 -0
  15. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/backend_identifier_conversions.d.ts +22 -0
  16. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/backend_identifier_conversions.js +90 -0
  17. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/caller_directory_extractor.d.ts +14 -0
  18. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/caller_directory_extractor.js +70 -0
  19. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk/enum_converters.d.ts +18 -0
  20. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk/enum_converters.js +116 -0
  21. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk/index.d.ts +3 -0
  22. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk/index.js +7 -0
  23. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.d.ts +12 -0
  24. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.js +16 -0
  25. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/config/local_configuration_controller.d.ts +45 -0
  26. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/config/local_configuration_controller.js +125 -0
  27. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/config/local_configuration_controller_factory.d.ts +23 -0
  28. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/config/local_configuration_controller_factory.js +29 -0
  29. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_error.d.ts +64 -0
  30. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_error.js +267 -0
  31. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_library_fault.d.ts +21 -0
  32. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_library_fault.js +27 -0
  33. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_user_error.d.ts +21 -0
  34. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/amplify_user_error.js +27 -0
  35. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/index.d.ts +4 -0
  36. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/errors/index.js +20 -0
  37. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/extract_file_path_from_stack_trace_line.d.ts +13 -0
  38. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/extract_file_path_from_stack_trace_line.js +61 -0
  39. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/index.d.ts +15 -0
  40. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/index.internal.d.ts +4 -0
  41. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/index.internal.js +35 -0
  42. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/index.js +35 -0
  43. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/naming_convention_conversions.d.ts +13 -0
  44. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/naming_convention_conversions.js +23 -0
  45. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/object_accumulator.d.ts +45 -0
  46. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/object_accumulator.js +99 -0
  47. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/package_json_reader.d.ts +33 -0
  48. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/package_json_reader.js +56 -0
  49. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/parameter_path_conversions.d.ts +19 -0
  50. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/parameter_path_conversions.js +79 -0
  51. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/tag_name.d.ts +4 -0
  52. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/tag_name.js +8 -0
  53. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/account_id_fetcher.d.ts +14 -0
  54. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/account_id_fetcher.js +38 -0
  55. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/constants.d.ts +13 -0
  56. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/constants.js +16 -0
  57. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/get_installation_id.d.ts +5 -0
  58. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/get_installation_id.js +15 -0
  59. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/get_usage_data_url.d.ts +6 -0
  60. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/get_usage_data_url.js +24 -0
  61. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/noop_usage_data_emitter.d.ts +15 -0
  62. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/noop_usage_data_emitter.js +24 -0
  63. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/serializable_error.d.ts +27 -0
  64. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/serializable_error.js +70 -0
  65. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data.d.ts +29 -0
  66. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data.js +3 -0
  67. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data_emitter.d.ts +27 -0
  68. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data_emitter.js +146 -0
  69. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data_emitter_factory.d.ts +16 -0
  70. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/lib/usage-data/usage_data_emitter_factory.js +27 -0
  71. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/platform-core/package.json +45 -0
  72. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/README.md +9 -0
  73. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/amplify_function.d.ts +4 -0
  74. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/amplify_function.js +3 -0
  75. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/amplify_resource_group_name.d.ts +7 -0
  76. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/amplify_resource_group_name.js +3 -0
  77. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/auth_resources.d.ts +106 -0
  78. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/auth_resources.js +3 -0
  79. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/aws_client_provider.d.ts +5 -0
  80. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/aws_client_provider.js +3 -0
  81. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_identifier.d.ts +56 -0
  82. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_identifier.js +3 -0
  83. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_output.d.ts +6 -0
  84. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_output.js +3 -0
  85. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_secret_resolver.d.ts +22 -0
  86. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_secret_resolver.js +3 -0
  87. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_stack_creator.d.ts +8 -0
  88. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_stack_creator.js +3 -0
  89. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_stack_resolver.d.ts +7 -0
  90. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/backend_stack_resolver.js +3 -0
  91. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/construct_container.d.ts +35 -0
  92. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/construct_container.js +3 -0
  93. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/construct_factory.d.ts +24 -0
  94. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/construct_factory.js +3 -0
  95. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/deep_partial.d.ts +17 -0
  96. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/deep_partial.js +3 -0
  97. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/deployment_type.d.ts +8 -0
  98. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/deployment_type.js +3 -0
  99. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/function_resources.d.ts +8 -0
  100. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/function_resources.js +3 -0
  101. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/import_path_verifier.d.ts +14 -0
  102. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/import_path_verifier.js +3 -0
  103. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/index.d.ts +27 -0
  104. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/index.js +43 -0
  105. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/log_level.d.ts +2 -0
  106. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/log_level.js +3 -0
  107. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/log_retention.d.ts +2 -0
  108. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/log_retention.js +3 -0
  109. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/output_retrieval_strategy.d.ts +11 -0
  110. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/output_retrieval_strategy.js +3 -0
  111. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/output_storage_strategy.d.ts +10 -0
  112. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/output_storage_strategy.js +3 -0
  113. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/package_manager_controller.d.ts +30 -0
  114. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/package_manager_controller.js +3 -0
  115. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_access_acceptor.d.ts +27 -0
  116. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_access_acceptor.js +3 -0
  117. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_name_validator.d.ts +10 -0
  118. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_name_validator.js +3 -0
  119. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_provider.d.ts +10 -0
  120. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/resource_provider.js +3 -0
  121. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/ssm_environment_entries_generator.d.ts +5 -0
  122. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/ssm_environment_entries_generator.js +3 -0
  123. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/stable_backend_identifiers.d.ts +4 -0
  124. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/stable_backend_identifiers.js +3 -0
  125. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/stack_provider.d.ts +5 -0
  126. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/lib/stack_provider.js +3 -0
  127. package/node_modules/@aws-amplify/ai-constructs/node_modules/@aws-amplify/plugin-types/package.json +21 -0
  128. package/node_modules/@aws-amplify/ai-constructs/package.json +5 -5
  129. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +4 -0
  130. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +12 -12
  131. package/node_modules/@aws-amplify/graphql-conversation-transformer/CHANGELOG.md +6 -0
  132. package/node_modules/@aws-amplify/graphql-conversation-transformer/package.json +10 -10
  133. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +4 -0
  134. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +6 -6
  135. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +4 -0
  136. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +6 -6
  137. package/node_modules/@aws-amplify/graphql-generation-transformer/CHANGELOG.md +4 -0
  138. package/node_modules/@aws-amplify/graphql-generation-transformer/package.json +6 -6
  139. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +4 -0
  140. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +6 -6
  141. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +4 -0
  142. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +7 -7
  143. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +4 -0
  144. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  145. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +10 -10
  146. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +7 -0
  147. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  148. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  149. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  150. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts +1 -0
  151. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.d.ts.map +1 -1
  152. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js +24 -4
  153. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/import-table.js.map +1 -1
  154. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +6 -6
  155. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +4 -0
  156. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  157. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +6 -6
  158. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +4 -0
  159. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +8 -8
  160. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +4 -0
  161. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  162. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +7 -7
  163. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +4 -0
  164. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +7 -7
  165. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +4 -0
  166. package/node_modules/@aws-amplify/graphql-transformer/package.json +19 -19
  167. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +4 -0
  168. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +4 -4
  169. package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +4 -0
  170. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +3 -3
  171. package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
  172. package/node_modules/lodash.snakecase/LICENSE +47 -0
  173. package/node_modules/lodash.snakecase/README.md +18 -0
  174. package/node_modules/lodash.snakecase/index.js +435 -0
  175. package/node_modules/lodash.snakecase/package.json +17 -0
  176. package/package.json +24 -22
  177. package/src/amplify-graphql-api.ts +7 -1
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getUrl = void 0;
7
+ const node_url_1 = __importDefault(require("node:url"));
8
+ const constants_js_1 = require("./constants.js");
9
+ let cachedUrl;
10
+ const prodUrl = `https://api.cli.amplify.aws/${constants_js_1.latestApiVersion}/metrics`;
11
+ /**
12
+ * Usage data tracking service URL
13
+ */
14
+ const getUrl = () => {
15
+ if (!cachedUrl) {
16
+ cachedUrl = getParsedUrl();
17
+ }
18
+ return cachedUrl;
19
+ };
20
+ exports.getUrl = getUrl;
21
+ const getParsedUrl = () => {
22
+ return node_url_1.default.parse(process.env.AMPLIFY_BACKEND_USAGE_TRACKING_ENDPOINT || prodUrl);
23
+ };
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0X3VzYWdlX2RhdGFfdXJsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VzYWdlLWRhdGEvZ2V0X3VzYWdlX2RhdGFfdXJsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHdEQUFtRDtBQUNuRCxpREFBa0Q7QUFFbEQsSUFBSSxTQUE2QixDQUFDO0FBRWxDLE1BQU0sT0FBTyxHQUFHLCtCQUErQiwrQkFBZ0IsVUFBVSxDQUFDO0FBRTFFOztHQUVHO0FBQ0ksTUFBTSxNQUFNLEdBQUcsR0FBdUIsRUFBRTtJQUM3QyxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ2QsU0FBUyxHQUFHLFlBQVksRUFBRSxDQUFDO0tBQzVCO0lBRUQsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBTlcsUUFBQSxNQUFNLFVBTWpCO0FBRUYsTUFBTSxZQUFZLEdBQUcsR0FBdUIsRUFBRTtJQUM1QyxPQUFPLGtCQUFHLENBQUMsS0FBSyxDQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUNBQXVDLElBQUksT0FBTyxDQUMvRCxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHVybCwgeyBVcmxXaXRoU3RyaW5nUXVlcnkgfSBmcm9tICdub2RlOnVybCc7XG5pbXBvcnQgeyBsYXRlc3RBcGlWZXJzaW9uIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuXG5sZXQgY2FjaGVkVXJsOiBVcmxXaXRoU3RyaW5nUXVlcnk7XG5cbmNvbnN0IHByb2RVcmwgPSBgaHR0cHM6Ly9hcGkuY2xpLmFtcGxpZnkuYXdzLyR7bGF0ZXN0QXBpVmVyc2lvbn0vbWV0cmljc2A7XG5cbi8qKlxuICogIFVzYWdlIGRhdGEgdHJhY2tpbmcgc2VydmljZSBVUkxcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFVybCA9ICgpOiBVcmxXaXRoU3RyaW5nUXVlcnkgPT4ge1xuICBpZiAoIWNhY2hlZFVybCkge1xuICAgIGNhY2hlZFVybCA9IGdldFBhcnNlZFVybCgpO1xuICB9XG5cbiAgcmV0dXJuIGNhY2hlZFVybDtcbn07XG5cbmNvbnN0IGdldFBhcnNlZFVybCA9ICgpOiBVcmxXaXRoU3RyaW5nUXVlcnkgPT4ge1xuICByZXR1cm4gdXJsLnBhcnNlKFxuICAgIHByb2Nlc3MuZW52LkFNUExJRllfQkFDS0VORF9VU0FHRV9UUkFDS0lOR19FTkRQT0lOVCB8fCBwcm9kVXJsXG4gICk7XG59O1xuIl19
@@ -0,0 +1,15 @@
1
+ import { UsageDataEmitter } from './usage_data_emitter_factory';
2
+ /**
3
+ * no-op class that implements UsageDataEmitter.
4
+ */
5
+ export declare class NoOpUsageDataEmitter implements UsageDataEmitter {
6
+ /**
7
+ * no-op emitSuccess
8
+ */
9
+ emitSuccess(): Promise<void>;
10
+ /**
11
+ * no-op emitFailure
12
+ */
13
+ emitFailure(): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=noop_usage_data_emitter.d.ts.map
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NoOpUsageDataEmitter = void 0;
4
+ /**
5
+ * no-op class that implements UsageDataEmitter.
6
+ */
7
+ class NoOpUsageDataEmitter {
8
+ /**
9
+ * no-op emitSuccess
10
+ */
11
+ emitSuccess() {
12
+ // no-op
13
+ return Promise.resolve();
14
+ }
15
+ /**
16
+ * no-op emitFailure
17
+ */
18
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
19
+ emitFailure() {
20
+ return Promise.resolve();
21
+ }
22
+ }
23
+ exports.NoOpUsageDataEmitter = NoOpUsageDataEmitter;
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcF91c2FnZV9kYXRhX2VtaXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXNhZ2UtZGF0YS9ub29wX3VzYWdlX2RhdGFfZW1pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQTs7R0FFRztBQUNILE1BQWEsb0JBQW9CO0lBQy9COztPQUVHO0lBQ0gsV0FBVztRQUNULFFBQVE7UUFDUixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSCw2REFBNkQ7SUFDN0QsV0FBVztRQUNULE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQWhCRCxvREFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2FnZURhdGFFbWl0dGVyIH0gZnJvbSAnLi91c2FnZV9kYXRhX2VtaXR0ZXJfZmFjdG9yeSc7XG5cbi8qKlxuICogbm8tb3AgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIFVzYWdlRGF0YUVtaXR0ZXIuXG4gKi9cbmV4cG9ydCBjbGFzcyBOb09wVXNhZ2VEYXRhRW1pdHRlciBpbXBsZW1lbnRzIFVzYWdlRGF0YUVtaXR0ZXIge1xuICAvKipcbiAgICogbm8tb3AgZW1pdFN1Y2Nlc3NcbiAgICovXG4gIGVtaXRTdWNjZXNzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIG5vLW9wXG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIG5vLW9wIGVtaXRGYWlsdXJlXG4gICAqL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIGVtaXRGYWlsdXJlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Wrapper around Error for serialization for usage metrics
3
+ */
4
+ export declare class SerializableError {
5
+ name: string;
6
+ message: string;
7
+ details?: string;
8
+ trace?: Trace[];
9
+ private stackTraceRegex;
10
+ private arnRegex;
11
+ /**
12
+ * constructor for SerializableError
13
+ */
14
+ constructor(error: Error);
15
+ private extractStackTrace;
16
+ private processPaths;
17
+ private removeARN;
18
+ private sanitize;
19
+ }
20
+ type Trace = {
21
+ methodName: string;
22
+ file: string;
23
+ lineNumber: string;
24
+ columnNumber: string;
25
+ };
26
+ export {};
27
+ //# sourceMappingURL=serializable_error.d.ts.map
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SerializableError = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ /**
9
+ * Wrapper around Error for serialization for usage metrics
10
+ */
11
+ class SerializableError {
12
+ name;
13
+ message;
14
+ details;
15
+ trace;
16
+ stackTraceRegex = /^\s*at (?:((?:\[object object\])?[^\\/]+(?: \[as \S+\])?) )?\(?(.*?):(\d+)(?::(\d+))?\)?\s*$/i;
17
+ arnRegex = /arn:[a-z0-9][-.a-z0-9]{0,62}:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}/g;
18
+ /**
19
+ * constructor for SerializableError
20
+ */
21
+ constructor(error) {
22
+ this.name =
23
+ 'code' in error && error.code
24
+ ? this.sanitize(error.code)
25
+ : error.name;
26
+ this.message = this.sanitize(error.message);
27
+ this.details =
28
+ 'details' in error ? this.sanitize(error.details) : undefined;
29
+ this.trace = this.extractStackTrace(error);
30
+ }
31
+ extractStackTrace = (error) => {
32
+ const result = [];
33
+ if (error.stack) {
34
+ const stack = error.stack.split('\n');
35
+ stack.forEach((line) => {
36
+ const match = this.stackTraceRegex.exec(line);
37
+ if (match) {
38
+ const [, methodName, file, lineNumber, columnNumber] = match;
39
+ result.push({
40
+ methodName,
41
+ file,
42
+ lineNumber,
43
+ columnNumber,
44
+ });
45
+ }
46
+ });
47
+ const processedPaths = this.processPaths(result.map((trace) => trace.file));
48
+ result.forEach((trace, index) => {
49
+ trace.file = processedPaths[index];
50
+ });
51
+ }
52
+ return result;
53
+ };
54
+ processPaths = (paths) => {
55
+ return paths.map((tracePath) => {
56
+ if (path_1.default.isAbsolute(tracePath)) {
57
+ return path_1.default.relative(process.cwd(), tracePath);
58
+ }
59
+ return tracePath;
60
+ });
61
+ };
62
+ removeARN = (str) => {
63
+ return str?.replace(this.arnRegex, '<escaped ARN>') ?? '';
64
+ };
65
+ sanitize = (str) => {
66
+ return this.removeARN(str)?.replaceAll(/["❌]/g, '');
67
+ };
68
+ }
69
+ exports.SerializableError = SerializableError;
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXphYmxlX2Vycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VzYWdlLWRhdGEvc2VyaWFsaXphYmxlX2Vycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGdEQUF3QjtBQUV4Qjs7R0FFRztBQUNILE1BQWEsaUJBQWlCO0lBQzVCLElBQUksQ0FBUztJQUNiLE9BQU8sQ0FBUztJQUNoQixPQUFPLENBQVU7SUFDakIsS0FBSyxDQUFXO0lBRVIsZUFBZSxHQUNyQiwrRkFBK0YsQ0FBQztJQUMxRixRQUFRLEdBQ2Qsb0pBQW9KLENBQUM7SUFFdko7O09BRUc7SUFDSCxZQUFZLEtBQVk7UUFDdEIsSUFBSSxDQUFDLElBQUk7WUFDUCxNQUFNLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJO2dCQUMzQixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBYyxDQUFDO2dCQUNyQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPO1lBQ1YsU0FBUyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDMUUsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLGlCQUFpQixHQUFHLENBQUMsS0FBWSxFQUFXLEVBQUU7UUFDcEQsTUFBTSxNQUFNLEdBQVksRUFBRSxDQUFDO1FBQzNCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNmLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzlDLElBQUksS0FBSyxFQUFFO29CQUNULE1BQU0sQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFlBQVksQ0FBQyxHQUFHLEtBQUssQ0FBQztvQkFDN0QsTUFBTSxDQUFDLElBQUksQ0FBQzt3QkFDVixVQUFVO3dCQUNWLElBQUk7d0JBQ0osVUFBVTt3QkFDVixZQUFZO3FCQUNiLENBQUMsQ0FBQztpQkFDSjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FDdEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUNsQyxDQUFDO1lBQ0YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDOUIsS0FBSyxDQUFDLElBQUksR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckMsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztJQUVNLFlBQVksR0FBRyxDQUFDLEtBQWUsRUFBWSxFQUFFO1FBQ25ELE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQzdCLElBQUksY0FBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDOUIsT0FBTyxjQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUNoRDtZQUNELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBRU0sU0FBUyxHQUFHLENBQUMsR0FBWSxFQUFVLEVBQUU7UUFDM0MsT0FBTyxHQUFHLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVELENBQUMsQ0FBQztJQUVNLFFBQVEsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUMsQ0FBQztDQUNIO0FBbkVELDhDQW1FQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuXG4vKipcbiAqIFdyYXBwZXIgYXJvdW5kIEVycm9yIGZvciBzZXJpYWxpemF0aW9uIGZvciB1c2FnZSBtZXRyaWNzXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJpYWxpemFibGVFcnJvciB7XG4gIG5hbWU6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBkZXRhaWxzPzogc3RyaW5nO1xuICB0cmFjZT86IFRyYWNlW107XG5cbiAgcHJpdmF0ZSBzdGFja1RyYWNlUmVnZXggPVxuICAgIC9eXFxzKmF0ICg/OigoPzpcXFtvYmplY3Qgb2JqZWN0XFxdKT9bXlxcXFwvXSsoPzogXFxbYXMgXFxTK1xcXSk/KSApP1xcKD8oLio/KTooXFxkKykoPzo6KFxcZCspKT9cXCk/XFxzKiQvaTtcbiAgcHJpdmF0ZSBhcm5SZWdleCA9XG4gICAgL2FybjpbYS16MC05XVstLmEtejAtOV17MCw2Mn06W0EtWmEtejAtOV1bQS1aYS16MC05Xy8uLV17MCw2Mn06W0EtWmEtejAtOV8vLi1dezAsNjN9OltBLVphLXowLTlfLy4tXXswLDYzfTpbQS1aYS16MC05XVtBLVphLXowLTk6Xy8rPSxALi1dezAsMTAyM30vZztcblxuICAvKipcbiAgICogY29uc3RydWN0b3IgZm9yIFNlcmlhbGl6YWJsZUVycm9yXG4gICAqL1xuICBjb25zdHJ1Y3RvcihlcnJvcjogRXJyb3IpIHtcbiAgICB0aGlzLm5hbWUgPVxuICAgICAgJ2NvZGUnIGluIGVycm9yICYmIGVycm9yLmNvZGVcbiAgICAgICAgPyB0aGlzLnNhbml0aXplKGVycm9yLmNvZGUgYXMgc3RyaW5nKVxuICAgICAgICA6IGVycm9yLm5hbWU7XG4gICAgdGhpcy5tZXNzYWdlID0gdGhpcy5zYW5pdGl6ZShlcnJvci5tZXNzYWdlKTtcbiAgICB0aGlzLmRldGFpbHMgPVxuICAgICAgJ2RldGFpbHMnIGluIGVycm9yID8gdGhpcy5zYW5pdGl6ZShlcnJvci5kZXRhaWxzIGFzIHN0cmluZykgOiB1bmRlZmluZWQ7XG4gICAgdGhpcy50cmFjZSA9IHRoaXMuZXh0cmFjdFN0YWNrVHJhY2UoZXJyb3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBleHRyYWN0U3RhY2tUcmFjZSA9IChlcnJvcjogRXJyb3IpOiBUcmFjZVtdID0+IHtcbiAgICBjb25zdCByZXN1bHQ6IFRyYWNlW10gPSBbXTtcbiAgICBpZiAoZXJyb3Iuc3RhY2spIHtcbiAgICAgIGNvbnN0IHN0YWNrID0gZXJyb3Iuc3RhY2suc3BsaXQoJ1xcbicpO1xuICAgICAgc3RhY2suZm9yRWFjaCgobGluZSkgPT4ge1xuICAgICAgICBjb25zdCBtYXRjaCA9IHRoaXMuc3RhY2tUcmFjZVJlZ2V4LmV4ZWMobGluZSk7XG4gICAgICAgIGlmIChtYXRjaCkge1xuICAgICAgICAgIGNvbnN0IFssIG1ldGhvZE5hbWUsIGZpbGUsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlcl0gPSBtYXRjaDtcbiAgICAgICAgICByZXN1bHQucHVzaCh7XG4gICAgICAgICAgICBtZXRob2ROYW1lLFxuICAgICAgICAgICAgZmlsZSxcbiAgICAgICAgICAgIGxpbmVOdW1iZXIsXG4gICAgICAgICAgICBjb2x1bW5OdW1iZXIsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgY29uc3QgcHJvY2Vzc2VkUGF0aHMgPSB0aGlzLnByb2Nlc3NQYXRocyhcbiAgICAgICAgcmVzdWx0Lm1hcCgodHJhY2UpID0+IHRyYWNlLmZpbGUpXG4gICAgICApO1xuICAgICAgcmVzdWx0LmZvckVhY2goKHRyYWNlLCBpbmRleCkgPT4ge1xuICAgICAgICB0cmFjZS5maWxlID0gcHJvY2Vzc2VkUGF0aHNbaW5kZXhdO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG5cbiAgcHJpdmF0ZSBwcm9jZXNzUGF0aHMgPSAocGF0aHM6IHN0cmluZ1tdKTogc3RyaW5nW10gPT4ge1xuICAgIHJldHVybiBwYXRocy5tYXAoKHRyYWNlUGF0aCkgPT4ge1xuICAgICAgaWYgKHBhdGguaXNBYnNvbHV0ZSh0cmFjZVBhdGgpKSB7XG4gICAgICAgIHJldHVybiBwYXRoLnJlbGF0aXZlKHByb2Nlc3MuY3dkKCksIHRyYWNlUGF0aCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJhY2VQYXRoO1xuICAgIH0pO1xuICB9O1xuXG4gIHByaXZhdGUgcmVtb3ZlQVJOID0gKHN0cj86IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gICAgcmV0dXJuIHN0cj8ucmVwbGFjZSh0aGlzLmFyblJlZ2V4LCAnPGVzY2FwZWQgQVJOPicpID8/ICcnO1xuICB9O1xuXG4gIHByaXZhdGUgc2FuaXRpemUgPSAoc3RyOiBzdHJpbmcpID0+IHtcbiAgICByZXR1cm4gdGhpcy5yZW1vdmVBUk4oc3RyKT8ucmVwbGFjZUFsbCgvW1wi4p2MXS9nLCAnJyk7XG4gIH07XG59XG5cbnR5cGUgVHJhY2UgPSB7XG4gIG1ldGhvZE5hbWU6IHN0cmluZztcbiAgZmlsZTogc3RyaW5nO1xuICBsaW5lTnVtYmVyOiBzdHJpbmc7XG4gIGNvbHVtbk51bWJlcjogc3RyaW5nO1xufTtcbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { SerializableError } from './serializable_error';
2
+ export type UsageData = {
3
+ sessionUuid: string;
4
+ installationUuid: string;
5
+ amplifyCliVersion: string;
6
+ timestamp: string;
7
+ error?: SerializableError | undefined;
8
+ downstreamException?: SerializableError | undefined;
9
+ payloadVersion: string;
10
+ osPlatform: string;
11
+ osRelease: string;
12
+ nodeVersion: string;
13
+ state: 'FAILED' | 'SUCCEEDED';
14
+ isCi: boolean;
15
+ accountId: string;
16
+ input: {
17
+ command: string;
18
+ plugin: string;
19
+ };
20
+ codePathDurations: {
21
+ platformStartup?: number;
22
+ totalDuration?: number;
23
+ };
24
+ projectSetting: {
25
+ editor?: string;
26
+ details?: string;
27
+ };
28
+ };
29
+ //# sourceMappingURL=usage_data.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNhZ2VfZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91c2FnZS1kYXRhL3VzYWdlX2RhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcmlhbGl6YWJsZUVycm9yIH0gZnJvbSAnLi9zZXJpYWxpemFibGVfZXJyb3InO1xuXG5leHBvcnQgdHlwZSBVc2FnZURhdGEgPSB7XG4gIHNlc3Npb25VdWlkOiBzdHJpbmc7XG4gIGluc3RhbGxhdGlvblV1aWQ6IHN0cmluZztcbiAgYW1wbGlmeUNsaVZlcnNpb246IHN0cmluZztcbiAgdGltZXN0YW1wOiBzdHJpbmc7XG4gIGVycm9yPzogU2VyaWFsaXphYmxlRXJyb3IgfCB1bmRlZmluZWQ7XG4gIGRvd25zdHJlYW1FeGNlcHRpb24/OiBTZXJpYWxpemFibGVFcnJvciB8IHVuZGVmaW5lZDtcbiAgcGF5bG9hZFZlcnNpb246IHN0cmluZztcbiAgb3NQbGF0Zm9ybTogc3RyaW5nO1xuICBvc1JlbGVhc2U6IHN0cmluZztcbiAgbm9kZVZlcnNpb246IHN0cmluZztcbiAgc3RhdGU6ICdGQUlMRUQnIHwgJ1NVQ0NFRURFRCc7XG4gIGlzQ2k6IGJvb2xlYW47XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBpbnB1dDogeyBjb21tYW5kOiBzdHJpbmc7IHBsdWdpbjogc3RyaW5nIH07XG4gIGNvZGVQYXRoRHVyYXRpb25zOiB7IHBsYXRmb3JtU3RhcnR1cD86IG51bWJlcjsgdG90YWxEdXJhdGlvbj86IG51bWJlciB9O1xuICBwcm9qZWN0U2V0dGluZzogeyBlZGl0b3I/OiBzdHJpbmc7IGRldGFpbHM/OiBzdHJpbmcgfTtcbn07XG4iXX0=
@@ -0,0 +1,27 @@
1
+ /// <reference types="node" />
2
+ import { AccountIdFetcher } from './account_id_fetcher.js';
3
+ import { UsageDataEmitter } from './usage_data_emitter_factory.js';
4
+ import { AmplifyError } from '../index.js';
5
+ import { Dependency } from '@aws-amplify/plugin-types';
6
+ /**
7
+ * Entry point for sending usage data metrics
8
+ */
9
+ export declare class DefaultUsageDataEmitter implements UsageDataEmitter {
10
+ private readonly libraryVersion;
11
+ private readonly dependencies?;
12
+ private readonly sessionUuid;
13
+ private readonly url;
14
+ private readonly accountIdFetcher;
15
+ private dependenciesToReport?;
16
+ /**
17
+ * Constructor for UsageDataEmitter
18
+ */
19
+ constructor(libraryVersion: string, dependencies?: Dependency[] | undefined, sessionUuid?: string, url?: import("url").UrlWithStringQuery, accountIdFetcher?: AccountIdFetcher);
20
+ emitSuccess: (metrics?: Record<string, number>, dimensions?: Record<string, string>) => Promise<void>;
21
+ emitFailure: (error: AmplifyError, dimensions?: Record<string, string>) => Promise<void>;
22
+ private getUsageData;
23
+ private send;
24
+ private translateMetricsToUsageData;
25
+ private translateDimensionsToUsageData;
26
+ }
27
+ //# sourceMappingURL=usage_data_emitter.d.ts.map
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DefaultUsageDataEmitter = void 0;
7
+ const uuid_1 = require("uuid");
8
+ const account_id_fetcher_js_1 = require("./account_id_fetcher.js");
9
+ const os_1 = __importDefault(require("os"));
10
+ const https_1 = __importDefault(require("https"));
11
+ const get_installation_id_js_1 = require("./get_installation_id.js");
12
+ const constants_js_1 = require("./constants.js");
13
+ const get_usage_data_url_js_1 = require("./get_usage_data_url.js");
14
+ const is_ci_1 = __importDefault(require("is-ci"));
15
+ const serializable_error_js_1 = require("./serializable_error.js");
16
+ /**
17
+ * Entry point for sending usage data metrics
18
+ */
19
+ class DefaultUsageDataEmitter {
20
+ libraryVersion;
21
+ dependencies;
22
+ sessionUuid;
23
+ url;
24
+ accountIdFetcher;
25
+ dependenciesToReport;
26
+ /**
27
+ * Constructor for UsageDataEmitter
28
+ */
29
+ constructor(libraryVersion, dependencies, sessionUuid = (0, uuid_1.v4)(), url = (0, get_usage_data_url_js_1.getUrl)(), accountIdFetcher = new account_id_fetcher_js_1.AccountIdFetcher()) {
30
+ this.libraryVersion = libraryVersion;
31
+ this.dependencies = dependencies;
32
+ this.sessionUuid = sessionUuid;
33
+ this.url = url;
34
+ this.accountIdFetcher = accountIdFetcher;
35
+ const targetDependencies = ['aws-cdk', 'aws-cdk-lib'];
36
+ this.dependenciesToReport = this.dependencies?.filter((dependency) => targetDependencies.includes(dependency.name));
37
+ }
38
+ emitSuccess = async (metrics, dimensions) => {
39
+ try {
40
+ const data = await this.getUsageData({
41
+ state: 'SUCCEEDED',
42
+ metrics,
43
+ dimensions,
44
+ });
45
+ await this.send(data);
46
+ // eslint-disable-next-line amplify-backend-rules/no-empty-catch
47
+ }
48
+ catch {
49
+ // Don't propagate errors related to not being able to send telemetry
50
+ }
51
+ };
52
+ emitFailure = async (error, dimensions) => {
53
+ try {
54
+ const data = await this.getUsageData({
55
+ state: 'FAILED',
56
+ error,
57
+ dimensions,
58
+ });
59
+ await this.send(data);
60
+ // eslint-disable-next-line amplify-backend-rules/no-empty-catch
61
+ }
62
+ catch {
63
+ // Don't propagate errors related to not being able to send telemetry
64
+ }
65
+ };
66
+ getUsageData = async (options) => {
67
+ return {
68
+ accountId: await this.accountIdFetcher.fetch(),
69
+ sessionUuid: this.sessionUuid,
70
+ installationUuid: (0, get_installation_id_js_1.getInstallationUuid)(),
71
+ amplifyCliVersion: this.libraryVersion,
72
+ timestamp: new Date().toISOString(),
73
+ error: options.error ? new serializable_error_js_1.SerializableError(options.error) : undefined,
74
+ downstreamException: options.error &&
75
+ options.error.cause &&
76
+ options.error.cause instanceof Error
77
+ ? new serializable_error_js_1.SerializableError(options.error.cause)
78
+ : undefined,
79
+ payloadVersion: constants_js_1.latestPayloadVersion,
80
+ osPlatform: os_1.default.platform(),
81
+ osRelease: os_1.default.release(),
82
+ nodeVersion: process.versions.node,
83
+ state: options.state,
84
+ codePathDurations: this.translateMetricsToUsageData(options.metrics),
85
+ input: this.translateDimensionsToUsageData(options.dimensions),
86
+ isCi: is_ci_1.default,
87
+ projectSetting: {
88
+ editor: process.env.npm_config_user_agent,
89
+ details: JSON.stringify(this.dependenciesToReport),
90
+ },
91
+ };
92
+ };
93
+ send = (data) => {
94
+ return new Promise((resolve) => {
95
+ const payload = JSON.stringify(data);
96
+ const req = https_1.default.request({
97
+ hostname: this.url.hostname,
98
+ port: this.url.port,
99
+ path: this.url.path,
100
+ method: 'POST',
101
+ headers: {
102
+ 'content-type': 'application/json',
103
+ 'content-length': payload.length,
104
+ },
105
+ });
106
+ req.on('error', () => {
107
+ /* noop */
108
+ });
109
+ req.setTimeout(2000, () => {
110
+ // 2 seconds
111
+ resolve();
112
+ });
113
+ req.write(payload);
114
+ req.end(() => {
115
+ resolve();
116
+ });
117
+ });
118
+ };
119
+ translateMetricsToUsageData = (metrics) => {
120
+ if (!metrics)
121
+ return {};
122
+ let totalDuration, platformStartup;
123
+ for (const [name, data] of Object.entries(metrics)) {
124
+ if (name === 'totalTime') {
125
+ totalDuration = Math.round(data);
126
+ }
127
+ else if (name === 'synthesisTime') {
128
+ platformStartup = Math.round(data);
129
+ }
130
+ }
131
+ return { totalDuration, platformStartup };
132
+ };
133
+ translateDimensionsToUsageData = (dimensions) => {
134
+ let command = '';
135
+ if (dimensions) {
136
+ for (const [name, data] of Object.entries(dimensions)) {
137
+ if (name === 'command') {
138
+ command = data;
139
+ }
140
+ }
141
+ }
142
+ return { command, plugin: 'Gen2' };
143
+ };
144
+ }
145
+ exports.DefaultUsageDataEmitter = DefaultUsageDataEmitter;
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNhZ2VfZGF0YV9lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VzYWdlLWRhdGEvdXNhZ2VfZGF0YV9lbWl0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLCtCQUFrQztBQUNsQyxtRUFBMkQ7QUFFM0QsNENBQW9CO0FBQ3BCLGtEQUEwQjtBQUMxQixxRUFBK0Q7QUFDL0QsaURBQXNEO0FBQ3RELG1FQUFpRDtBQUNqRCxrREFBeUI7QUFDekIsbUVBQTREO0FBSzVEOztHQUVHO0FBQ0gsTUFBYSx1QkFBdUI7SUFNZjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBVFgsb0JBQW9CLENBQXFCO0lBQ2pEOztPQUVHO0lBQ0gsWUFDbUIsY0FBc0IsRUFDdEIsWUFBZ0MsRUFDaEMsY0FBYyxJQUFBLFNBQUksR0FBRSxFQUNwQixNQUFNLElBQUEsOEJBQU0sR0FBRSxFQUNkLG1CQUFtQixJQUFJLHdDQUFnQixFQUFFO1FBSnpDLG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBUztRQUNwQixRQUFHLEdBQUgsR0FBRyxDQUFXO1FBQ2QscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF5QjtRQUUxRCxNQUFNLGtCQUFrQixHQUFHLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQ25FLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQzdDLENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVyxHQUFHLEtBQUssRUFDakIsT0FBZ0MsRUFDaEMsVUFBbUMsRUFDbkMsRUFBRTtRQUNGLElBQUk7WUFDRixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZ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QixJQUFJLFVBQVUsRUFBRTtZQUNkLEtBQUssTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUNyRCxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7b0JBQ3RCLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2hCO2FBQ0Y7U0FDRjtRQUNELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQ3JDLENBQUMsQ0FBQztDQUNIO0FBN0lELDBEQTZJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IEFjY291bnRJZEZldGNoZXIgfSBmcm9tICcuL2FjY291bnRfaWRfZmV0Y2hlci5qcyc7XG5pbXBvcnQgeyBVc2FnZURhdGEgfSBmcm9tICcuL3VzYWdlX2RhdGEuanMnO1xuaW1wb3J0IG9zIGZyb20gJ29zJztcbmltcG9ydCBodHRwcyBmcm9tICdodHRwcyc7XG5pbXBvcnQgeyBnZXRJbnN0YWxsYXRpb25VdWlkIH0gZnJvbSAnLi9nZXRfaW5zdGFsbGF0aW9uX2lkLmpzJztcbmltcG9ydCB7IGxhdGVzdFBheWxvYWRWZXJzaW9uIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgZ2V0VXJsIH0gZnJvbSAnLi9nZXRfdXNhZ2VfZGF0YV91cmwuanMnO1xuaW1wb3J0IGlzQ0kgZnJvbSAnaXMtY2knO1xuaW1wb3J0IHsgU2VyaWFsaXphYmxlRXJyb3IgfSBmcm9tICcuL3NlcmlhbGl6YWJsZV9lcnJvci5qcyc7XG5pbXBvcnQgeyBVc2FnZURhdGFFbWl0dGVyIH0gZnJvbSAnLi91c2FnZV9kYXRhX2VtaXR0ZXJfZmFjdG9yeS5qcyc7XG5pbXBvcnQgeyBBbXBsaWZ5RXJyb3IgfSBmcm9tICcuLi9pbmRleC5qcyc7XG5pbXBvcnQgeyBEZXBlbmRlbmN5IH0gZnJvbSAnQGF3cy1hbXBsaWZ5L3BsdWdpbi10eXBlcyc7XG5cbi8qKlxuICogRW50cnkgcG9pbnQgZm9yIHNlbmRpbmcgdXNhZ2UgZGF0YSBtZXRyaWNzXG4gKi9cbmV4cG9ydCBjbGFzcyBEZWZhdWx0VXNhZ2VEYXRhRW1pdHRlciBpbXBsZW1lbnRzIFVzYWdlRGF0YUVtaXR0ZXIge1xuICBwcml2YXRlIGRlcGVuZGVuY2llc1RvUmVwb3J0PzogQXJyYXk8RGVwZW5kZW5jeT47XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvciBmb3IgVXNhZ2VEYXRhRW1pdHRlclxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaWJyYXJ5VmVyc2lvbjogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVwZW5kZW5jaWVzPzogQXJyYXk8RGVwZW5kZW5jeT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXNzaW9uVXVpZCA9IHV1aWQoKSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybCA9IGdldFVybCgpLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWNjb3VudElkRmV0Y2hlciA9IG5ldyBBY2NvdW50SWRGZXRjaGVyKClcbiAgKSB7XG4gICAgY29uc3QgdGFyZ2V0RGVwZW5kZW5jaWVzID0gWydhd3MtY2RrJywgJ2F3cy1jZGstbGliJ107XG5cbiAgICB0aGlzLmRlcGVuZGVuY2llc1RvUmVwb3J0ID0gdGhpcy5kZXBlbmRlbmNpZXM/LmZpbHRlcigoZGVwZW5kZW5jeSkgPT5cbiAgICAgIHRhcmdldERlcGVuZGVuY2llcy5pbmNsdWRlcyhkZXBlbmRlbmN5Lm5hbWUpXG4gICAgKTtcbiAgfVxuXG4gIGVtaXRTdWNjZXNzID0gYXN5bmMgKFxuICAgIG1ldHJpY3M/OiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+LFxuICAgIGRpbWVuc2lvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gICkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5nZXRVc2FnZURhdGEoe1xuICAgICAgICBzdGF0ZTogJ1NVQ0NFRURFRCcsXG4gICAgICAgIG1ldHJpY3MsXG4gICAgICAgIGRpbWVuc2lvbnMsXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IHRoaXMuc2VuZChkYXRhKTtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBhbXBsaWZ5LWJhY2tlbmQtcnVsZXMvbm8tZW1wdHktY2F0Y2hcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIERvbid0IHByb3BhZ2F0ZSBlcnJvcnMgcmVsYXRlZCB0byBub3QgYmVpbmcgYWJsZSB0byBzZW5kIHRlbGVtZXRyeVxuICAgIH1cbiAgfTtcblxuICBlbWl0RmFpbHVyZSA9IGFzeW5jIChcbiAgICBlcnJvcjogQW1wbGlmeUVycm9yLFxuICAgIGRpbWVuc2lvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gICkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5nZXRVc2FnZURhdGEoe1xuICAgICAgICBzdGF0ZTogJ0ZBSUxFRCcsXG4gICAgICAgIGVycm9yLFxuICAgICAgICBkaW1lbnNpb25zLFxuICAgICAgfSk7XG4gICAgICBhd2FpdCB0aGlzLnNlbmQoZGF0YSk7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYW1wbGlmeS1iYWNrZW5kLXJ1bGVzL25vLWVtcHR5LWNhdGNoXG4gICAgfSBjYXRjaCB7XG4gICAgICAvLyBEb24ndCBwcm9wYWdhdGUgZXJyb3JzIHJlbGF0ZWQgdG8gbm90IGJlaW5nIGFibGUgdG8gc2VuZCB0ZWxlbWV0cnlcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBnZXRVc2FnZURhdGEgPSBhc3luYyAob3B0aW9uczoge1xuICAgIHN0YXRlOiAnU1VDQ0VFREVEJyB8ICdGQUlMRUQnO1xuICAgIG1ldHJpY3M/OiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+O1xuICAgIGRpbWVuc2lvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIGVycm9yPzogQW1wbGlmeUVycm9yO1xuICB9KTogUHJvbWlzZTxVc2FnZURhdGE+ID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgYWNjb3VudElkOiBhd2FpdCB0aGlzLmFjY291bnRJZEZldGNoZXIuZmV0Y2goKSxcbiAgICAgIHNlc3Npb25VdWlkOiB0aGlzLnNlc3Npb25VdWlkLFxuICAgICAgaW5zdGFsbGF0aW9uVXVpZDogZ2V0SW5zdGFsbGF0aW9uVXVpZCgpLFxuICAgICAgYW1wbGlmeUNsaVZlcnNpb246IHRoaXMubGlicmFyeVZlcnNpb24sXG4gICAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgIGVycm9yOiBvcHRpb25zLmVycm9yID8gbmV3IFNlcmlhbGl6YWJsZUVycm9yKG9wdGlvbnMuZXJyb3IpIDogdW5kZWZpbmVkLFxuICAgICAgZG93bnN0cmVhbUV4Y2VwdGlvbjpcbiAgICAgICAgb3B0aW9ucy5lcnJvciAmJlxuICAgICAgICBvcHRpb25zLmVycm9yLmNhdXNlICYmXG4gICAgICAgIG9wdGlvbnMuZXJyb3IuY2F1c2UgaW5zdGFuY2VvZiBFcnJvclxuICAgICAgICAgID8gbmV3IFNlcmlhbGl6YWJsZUVycm9yKG9wdGlvbnMuZXJyb3IuY2F1c2UpXG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBwYXlsb2FkVmVyc2lvbjogbGF0ZXN0UGF5bG9hZFZlcnNpb24sXG4gICAgICBvc1BsYXRmb3JtOiBvcy5wbGF0Zm9ybSgpLFxuICAgICAgb3NSZWxlYXNlOiBvcy5yZWxlYXNlKCksXG4gICAgICBub2RlVmVyc2lvbjogcHJvY2Vzcy52ZXJzaW9ucy5ub2RlLFxuICAgICAgc3RhdGU6IG9wdGlvbnMuc3RhdGUsXG4gICAgICBjb2RlUGF0aER1cmF0aW9uczogdGhpcy50cmFuc2xhdGVNZXRyaWNzVG9Vc2FnZURhdGEob3B0aW9ucy5tZXRyaWNzKSxcbiAgICAgIGlucHV0OiB0aGlzLnRyYW5zbGF0ZURpbWVuc2lvbnNUb1VzYWdlRGF0YShvcHRpb25zLmRpbWVuc2lvbnMpLFxuICAgICAgaXNDaTogaXNDSSxcbiAgICAgIHByb2plY3RTZXR0aW5nOiB7XG4gICAgICAgIGVkaXRvcjogcHJvY2Vzcy5lbnYubnBtX2NvbmZpZ191c2VyX2FnZW50LFxuICAgICAgICBkZXRhaWxzOiBKU09OLnN0cmluZ2lmeSh0aGlzLmRlcGVuZGVuY2llc1RvUmVwb3J0KSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcblxuICBwcml2YXRlIHNlbmQgPSAoZGF0YTogVXNhZ2VEYXRhKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiB7XG4gICAgICBjb25zdCBwYXlsb2FkOiBzdHJpbmcgPSBKU09OLnN0cmluZ2lmeShkYXRhKTtcbiAgICAgIGNvbnN0IHJlcSA9IGh0dHBzLnJlcXVlc3Qoe1xuICAgICAgICBob3N0bmFtZTogdGhpcy51cmwuaG9zdG5hbWUsXG4gICAgICAgIHBvcnQ6IHRoaXMudXJsLnBvcnQsXG4gICAgICAgIHBhdGg6IHRoaXMudXJsLnBhdGgsXG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAnY29udGVudC1sZW5ndGgnOiBwYXlsb2FkLmxlbmd0aCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgcmVxLm9uKCdlcnJvcicsICgpID0+IHtcbiAgICAgICAgLyogbm9vcCAqL1xuICAgICAgfSk7XG4gICAgICByZXEuc2V0VGltZW91dCgyMDAwLCAoKSA9PiB7XG4gICAgICAgIC8vIDIgc2Vjb25kc1xuICAgICAgICByZXNvbHZlKCk7XG4gICAgICB9KTtcblxuICAgICAgcmVxLndyaXRlKHBheWxvYWQpO1xuICAgICAgcmVxLmVuZCgoKSA9PiB7XG4gICAgICAgIHJlc29sdmUoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9O1xuXG4gIHByaXZhdGUgdHJhbnNsYXRlTWV0cmljc1RvVXNhZ2VEYXRhID0gKG1ldHJpY3M/OiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+KSA9PiB7XG4gICAgaWYgKCFtZXRyaWNzKSByZXR1cm4ge307XG4gICAgbGV0IHRvdGFsRHVyYXRpb24sIHBsYXRmb3JtU3RhcnR1cDtcbiAgICBmb3IgKGNvbnN0IFtuYW1lLCBkYXRhXSBvZiBPYmplY3QuZW50cmllcyhtZXRyaWNzKSkge1xuICAgICAgaWYgKG5hbWUgPT09ICd0b3RhbFRpbWUnKSB7XG4gICAgICAgIHRvdGFsRHVyYXRpb24gPSBNYXRoLnJvdW5kKGRhdGEpO1xuICAgICAgfSBlbHNlIGlmIChuYW1lID09PSAnc3ludGhlc2lzVGltZScpIHtcbiAgICAgICAgcGxhdGZvcm1TdGFydHVwID0gTWF0aC5yb3VuZChkYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgdG90YWxEdXJhdGlvbiwgcGxhdGZvcm1TdGFydHVwIH07XG4gIH07XG5cbiAgcHJpdmF0ZSB0cmFuc2xhdGVEaW1lbnNpb25zVG9Vc2FnZURhdGEgPSAoXG4gICAgZGltZW5zaW9ucz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgKSA9PiB7XG4gICAgbGV0IGNvbW1hbmQgPSAnJztcbiAgICBpZiAoZGltZW5zaW9ucykge1xuICAgICAgZm9yIChjb25zdCBbbmFtZSwgZGF0YV0gb2YgT2JqZWN0LmVudHJpZXMoZGltZW5zaW9ucykpIHtcbiAgICAgICAgaWYgKG5hbWUgPT09ICdjb21tYW5kJykge1xuICAgICAgICAgIGNvbW1hbmQgPSBkYXRhO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGNvbW1hbmQsIHBsdWdpbjogJ0dlbjInIH07XG4gIH07XG59XG4iXX0=
@@ -0,0 +1,16 @@
1
+ import { AmplifyError } from '../index.js';
2
+ import { Dependency } from '@aws-amplify/plugin-types';
3
+ export type UsageDataEmitter = {
4
+ emitSuccess: (metrics?: Record<string, number>, dimensions?: Record<string, string>) => Promise<void>;
5
+ emitFailure: (error: AmplifyError, dimensions?: Record<string, string>) => Promise<void>;
6
+ };
7
+ /**
8
+ * Creates UsageDataEmitter for a given library version
9
+ */
10
+ export declare class UsageDataEmitterFactory {
11
+ /**
12
+ * Creates UsageDataEmitter for a given library version, usage data tracking preferences
13
+ */
14
+ getInstance: (libraryVersion: string, dependencies?: Array<Dependency>) => Promise<UsageDataEmitter>;
15
+ }
16
+ //# sourceMappingURL=usage_data_emitter_factory.d.ts.map
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UsageDataEmitterFactory = void 0;
4
+ const local_configuration_controller_factory_js_1 = require("../config/local_configuration_controller_factory.js");
5
+ const noop_usage_data_emitter_js_1 = require("./noop_usage_data_emitter.js");
6
+ const usage_data_emitter_js_1 = require("./usage_data_emitter.js");
7
+ const constants_js_1 = require("./constants.js");
8
+ /**
9
+ * Creates UsageDataEmitter for a given library version
10
+ */
11
+ class UsageDataEmitterFactory {
12
+ /**
13
+ * Creates UsageDataEmitter for a given library version, usage data tracking preferences
14
+ */
15
+ getInstance = async (libraryVersion, dependencies) => {
16
+ const configController = local_configuration_controller_factory_js_1.configControllerFactory.getInstance('usage_data_preferences.json');
17
+ const usageDataTrackingDisabledLocalFile = (await configController.get(constants_js_1.USAGE_DATA_TRACKING_ENABLED)) ===
18
+ false;
19
+ if (process.env.AMPLIFY_DISABLE_TELEMETRY ||
20
+ usageDataTrackingDisabledLocalFile) {
21
+ return new noop_usage_data_emitter_js_1.NoOpUsageDataEmitter();
22
+ }
23
+ return new usage_data_emitter_js_1.DefaultUsageDataEmitter(libraryVersion, dependencies);
24
+ };
25
+ }
26
+ exports.UsageDataEmitterFactory = UsageDataEmitterFactory;
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNhZ2VfZGF0YV9lbWl0dGVyX2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXNhZ2UtZGF0YS91c2FnZV9kYXRhX2VtaXR0ZXJfZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtSEFBOEY7QUFDOUYsNkVBQW9FO0FBQ3BFLG1FQUFrRTtBQUNsRSxpREFBNkQ7QUFlN0Q7O0dBRUc7QUFDSCxNQUFhLHVCQUF1QjtJQUNsQzs7T0FFRztJQUNILFdBQVcsR0FBRyxLQUFLLEVBQ2pCLGNBQXNCLEVBQ3RCLFlBQWdDLEVBQ0wsRUFBRTtRQUM3QixNQUFNLGdCQUFnQixHQUFHLG1FQUF1QixDQUFDLFdBQVcsQ0FDMUQsNkJBQTZCLENBQzlCLENBQUM7UUFFRixNQUFNLGtDQUFrQyxHQUN0QyxDQUFDLE1BQU0sZ0JBQWdCLENBQUMsR0FBRyxDQUFVLDBDQUEyQixDQUFDLENBQUM7WUFDbEUsS0FBSyxDQUFDO1FBRVIsSUFDRSxPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QjtZQUNyQyxrQ0FBa0MsRUFDbEM7WUFDQSxPQUFPLElBQUksaURBQW9CLEVBQUUsQ0FBQztTQUNuQztRQUNELE9BQU8sSUFBSSwrQ0FBdUIsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDbkUsQ0FBQyxDQUFDO0NBQ0g7QUF4QkQsMERBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29uZmlnQ29udHJvbGxlckZhY3RvcnkgfSBmcm9tICcuLi9jb25maWcvbG9jYWxfY29uZmlndXJhdGlvbl9jb250cm9sbGVyX2ZhY3RvcnkuanMnO1xuaW1wb3J0IHsgTm9PcFVzYWdlRGF0YUVtaXR0ZXIgfSBmcm9tICcuL25vb3BfdXNhZ2VfZGF0YV9lbWl0dGVyLmpzJztcbmltcG9ydCB7IERlZmF1bHRVc2FnZURhdGFFbWl0dGVyIH0gZnJvbSAnLi91c2FnZV9kYXRhX2VtaXR0ZXIuanMnO1xuaW1wb3J0IHsgVVNBR0VfREFUQV9UUkFDS0lOR19FTkFCTEVEIH0gZnJvbSAnLi9jb25zdGFudHMuanMnO1xuaW1wb3J0IHsgQW1wbGlmeUVycm9yIH0gZnJvbSAnLi4vaW5kZXguanMnO1xuaW1wb3J0IHsgRGVwZW5kZW5jeSB9IGZyb20gJ0Bhd3MtYW1wbGlmeS9wbHVnaW4tdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBVc2FnZURhdGFFbWl0dGVyID0ge1xuICBlbWl0U3VjY2VzczogKFxuICAgIG1ldHJpY3M/OiBSZWNvcmQ8c3RyaW5nLCBudW1iZXI+LFxuICAgIGRpbWVuc2lvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gICkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgZW1pdEZhaWx1cmU6IChcbiAgICBlcnJvcjogQW1wbGlmeUVycm9yLFxuICAgIGRpbWVuc2lvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gICkgPT4gUHJvbWlzZTx2b2lkPjtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBVc2FnZURhdGFFbWl0dGVyIGZvciBhIGdpdmVuIGxpYnJhcnkgdmVyc2lvblxuICovXG5leHBvcnQgY2xhc3MgVXNhZ2VEYXRhRW1pdHRlckZhY3Rvcnkge1xuICAvKipcbiAgICogQ3JlYXRlcyBVc2FnZURhdGFFbWl0dGVyIGZvciBhIGdpdmVuIGxpYnJhcnkgdmVyc2lvbiwgdXNhZ2UgZGF0YSB0cmFja2luZyBwcmVmZXJlbmNlc1xuICAgKi9cbiAgZ2V0SW5zdGFuY2UgPSBhc3luYyAoXG4gICAgbGlicmFyeVZlcnNpb246IHN0cmluZyxcbiAgICBkZXBlbmRlbmNpZXM/OiBBcnJheTxEZXBlbmRlbmN5PlxuICApOiBQcm9taXNlPFVzYWdlRGF0YUVtaXR0ZXI+ID0+IHtcbiAgICBjb25zdCBjb25maWdDb250cm9sbGVyID0gY29uZmlnQ29udHJvbGxlckZhY3RvcnkuZ2V0SW5zdGFuY2UoXG4gICAgICAndXNhZ2VfZGF0YV9wcmVmZXJlbmNlcy5qc29uJ1xuICAgICk7XG5cbiAgICBjb25zdCB1c2FnZURhdGFUcmFja2luZ0Rpc2FibGVkTG9jYWxGaWxlID1cbiAgICAgIChhd2FpdCBjb25maWdDb250cm9sbGVyLmdldDxib29sZWFuPihVU0FHRV9EQVRBX1RSQUNLSU5HX0VOQUJMRUQpKSA9PT1cbiAgICAgIGZhbHNlO1xuXG4gICAgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuQU1QTElGWV9ESVNBQkxFX1RFTEVNRVRSWSB8fFxuICAgICAgdXNhZ2VEYXRhVHJhY2tpbmdEaXNhYmxlZExvY2FsRmlsZVxuICAgICkge1xuICAgICAgcmV0dXJuIG5ldyBOb09wVXNhZ2VEYXRhRW1pdHRlcigpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IERlZmF1bHRVc2FnZURhdGFFbWl0dGVyKGxpYnJhcnlWZXJzaW9uLCBkZXBlbmRlbmNpZXMpO1xuICB9O1xufVxuIl19
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "@aws-amplify/platform-core",
3
+ "version": "1.6.1",
4
+ "type": "commonjs",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "exports": {
9
+ ".": {
10
+ "types": "./lib/index.d.ts",
11
+ "import": "./lib/index.js",
12
+ "require": "./lib/index.js"
13
+ },
14
+ "./cdk": {
15
+ "types": "./lib/cdk/index.d.ts",
16
+ "import": "./lib/cdk/index.js",
17
+ "require": "./lib/cdk/index.js"
18
+ }
19
+ },
20
+ "main": "lib/index.js",
21
+ "types": "lib/index.d.ts",
22
+ "scripts": {
23
+ "update:api": "api-extractor run --local"
24
+ },
25
+ "license": "Apache-2.0",
26
+ "devDependencies": {
27
+ "@types/is-ci": "^3.0.4",
28
+ "@types/lodash.mergewith": "^4.6.2",
29
+ "@types/uuid": "9.0.7"
30
+ },
31
+ "dependencies": {
32
+ "@aws-amplify/plugin-types": "^1.8.0",
33
+ "@aws-sdk/client-sts": "^3.624.0",
34
+ "is-ci": "^3.0.1",
35
+ "lodash.mergewith": "^4.6.2",
36
+ "semver": "^7.6.3",
37
+ "lodash.snakecase": "^4.1.1",
38
+ "uuid": "^9.0.1",
39
+ "zod": "^3.22.2"
40
+ },
41
+ "peerDependencies": {
42
+ "aws-cdk-lib": "^2.168.0",
43
+ "constructs": "^10.0.0"
44
+ }
45
+ }
@@ -0,0 +1,9 @@
1
+ # Description
2
+
3
+ This is a **types only** package that is used to facilitate dependency injection patterns across the codebase.
4
+ Components can declare that they need an instance of a certain type that comes from this package and another component can provide the implementation.
5
+ This allows us to depend on interfaces rather than implementations in many parts of the codebase.
6
+
7
+ Whenever two packages in this repo need to talk to each other, they should do so through an interface defined in this package.
8
+
9
+ This package may also need to be split at some point into different logical groupings.
@@ -0,0 +1,4 @@
1
+ import { ResourceProvider } from './resource_provider.js';
2
+ import { FunctionResources } from './function_resources.js';
3
+ export type AmplifyFunction = ResourceProvider<FunctionResources>;
4
+ //# sourceMappingURL=amplify_function.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGlmeV9mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hbXBsaWZ5X2Z1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXNvdXJjZVByb3ZpZGVyIH0gZnJvbSAnLi9yZXNvdXJjZV9wcm92aWRlci5qcyc7XG5pbXBvcnQgeyBGdW5jdGlvblJlc291cmNlcyB9IGZyb20gJy4vZnVuY3Rpb25fcmVzb3VyY2VzLmpzJztcblxuZXhwb3J0IHR5cGUgQW1wbGlmeUZ1bmN0aW9uID0gUmVzb3VyY2VQcm92aWRlcjxGdW5jdGlvblJlc291cmNlcz47XG4iXX0=
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Represents the types of resource group name
3
+ */
4
+ export type AmplifyResourceGroupName = 'auth' | 'data' | 'storage' | (string & {
5
+ resourceGroupNameLike?: any;
6
+ });
7
+ //# sourceMappingURL=amplify_resource_group_name.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGlmeV9yZXNvdXJjZV9ncm91cF9uYW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FtcGxpZnlfcmVzb3VyY2VfZ3JvdXBfbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXByZXNlbnRzIHRoZSB0eXBlcyBvZiByZXNvdXJjZSBncm91cCBuYW1lXG4gKi9cbmV4cG9ydCB0eXBlIEFtcGxpZnlSZXNvdXJjZUdyb3VwTmFtZSA9XG4gIHwgJ2F1dGgnXG4gIHwgJ2RhdGEnXG4gIHwgJ3N0b3JhZ2UnXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBzcGVsbGNoZWNrL3NwZWxsLWNoZWNrZXJcbiAgLy8gYChzdHJpbmcgJiB7IHJlc291cmNlR3JvdXBOYW1lTGlrZT86IGFueX0gKWAgaXMgYSB3b3JrYXJvdW5kIHRvIGFsbG93IGRlZmF1bHQgcmVzb3VyY2UgZ3JvdXAgbmFtZXMgdG8gc2hvdyB1cCBpbiBJbnRlbGxpU2Vuc2Ugd2hpbGUgYWxsb3dpbmcgYW55IHN0cmluZyB0byBiZSBwYXNzZWQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vbWljcm9zb2Z0L1R5cGVTY3JpcHQvaXNzdWVzLzI5NzI5I2lzc3VlY29tbWVudC00NjAzNDY0MjEuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHwgKHN0cmluZyAmIHsgcmVzb3VyY2VHcm91cE5hbWVMaWtlPzogYW55IH0pO1xuIl19
@@ -0,0 +1,106 @@
1
+ import { IRole } from 'aws-cdk-lib/aws-iam';
2
+ import { CfnIdentityPool, CfnIdentityPoolRoleAttachment, CfnUserPool, CfnUserPoolClient, CfnUserPoolGroup, IUserPool, IUserPoolClient } from 'aws-cdk-lib/aws-cognito';
3
+ /**
4
+ * Accessible Cfn resources from the Auth construct, which were generated during
5
+ * initialization.
6
+ */
7
+ export type AuthCfnResources = {
8
+ /**
9
+ * The generated CfnUserPool L1 resource.
10
+ */
11
+ cfnUserPool: CfnUserPool;
12
+ /**
13
+ * The generated CfnUserPoolClient L1 resource.
14
+ */
15
+ cfnUserPoolClient: CfnUserPoolClient;
16
+ /**
17
+ * The generated CfnIdentityPool L1 resource.
18
+ */
19
+ cfnIdentityPool: CfnIdentityPool;
20
+ /**
21
+ * The generated CfnIdentityPoolRoleAttachment L1 resource.
22
+ */
23
+ cfnIdentityPoolRoleAttachment: CfnIdentityPoolRoleAttachment;
24
+ };
25
+ /**
26
+ * Auth L2 and L1 resources.
27
+ */
28
+ export type AuthResources = {
29
+ /**
30
+ * The generated UserPool L2 Resource.
31
+ */
32
+ userPool: IUserPool;
33
+ /**
34
+ * The generated UserPoolClient L2 Resource.
35
+ */
36
+ userPoolClient: IUserPoolClient;
37
+ /**
38
+ * The generated auth role.
39
+ */
40
+ authenticatedUserIamRole: IRole;
41
+ /**
42
+ * The generated unauth role.
43
+ */
44
+ unauthenticatedUserIamRole: IRole;
45
+ /**
46
+ * Identity pool Id
47
+ */
48
+ identityPoolId: string;
49
+ /**
50
+ * L1 Cfn Resources, for when dipping down a level of abstraction is desirable.
51
+ */
52
+ cfnResources: AuthCfnResources;
53
+ /**
54
+ * A map of group names to the generated resources for that group.
55
+ */
56
+ groups: {
57
+ [groupName: string]: {
58
+ /**
59
+ * The generated CfnUserPoolGroup for this group
60
+ */
61
+ cfnUserGroup: CfnUserPoolGroup;
62
+ /**
63
+ * The generated Role for this group
64
+ */
65
+ role: IRole;
66
+ };
67
+ };
68
+ };
69
+ /**
70
+ * Reference auth resources
71
+ */
72
+ export type ReferenceAuthResources = {
73
+ /**
74
+ * The referenced UserPool L2 Resource.
75
+ */
76
+ userPool: IUserPool;
77
+ /**
78
+ * The referenced UserPoolClient L2 Resource.
79
+ */
80
+ userPoolClient: IUserPoolClient;
81
+ /**
82
+ * The referenced auth role.
83
+ */
84
+ authenticatedUserIamRole: IRole;
85
+ /**
86
+ * The referenced unauth role.
87
+ */
88
+ unauthenticatedUserIamRole: IRole;
89
+ /**
90
+ * Identity pool Id
91
+ */
92
+ identityPoolId: string;
93
+ /**
94
+ * A map of existing group names and their associated group role.
95
+ */
96
+ groups: {
97
+ [groupName: string]: {
98
+ /**
99
+ * The generated Role for this group
100
+ */
101
+ role: IRole;
102
+ };
103
+ };
104
+ };
105
+ export type AuthRoleName = keyof Pick<AuthResources, 'authenticatedUserIamRole' | 'unauthenticatedUserIamRole'>;
106
+ //# sourceMappingURL=auth_resources.d.ts.map