@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,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BackendIdentifierConversions = void 0;
4
+ const crypto_1 = require("crypto");
5
+ const STACK_NAME_LENGTH_LIMIT = 128;
6
+ const AMPLIFY_PREFIX = 'amplify';
7
+ const HASH_LENGTH = 10;
8
+ const NUM_DASHES = 4;
9
+ /**
10
+ * Provides static methods for converting BackendIdentifier to/from a stack name string
11
+ */
12
+ class BackendIdentifierConversions {
13
+ /**
14
+ * Convert a stack name to a BackendIdentifier
15
+ *
16
+ * If the stack name is ambiguous, undefined is returned
17
+ */
18
+ // It's fine to ignore the rule here because the anti-static rule is to ban the static function which should use constructor
19
+ // eslint-disable-next-line no-restricted-syntax
20
+ static fromStackName(stackName) {
21
+ if (!stackName) {
22
+ return;
23
+ }
24
+ const parts = stackName.split('-');
25
+ if (parts.length !== 5) {
26
+ return;
27
+ }
28
+ const [prefix, namespace, instance, type, hash] = parts;
29
+ if (prefix !== AMPLIFY_PREFIX) {
30
+ return;
31
+ }
32
+ if (type !== 'sandbox' && type !== 'branch') {
33
+ return;
34
+ }
35
+ return {
36
+ namespace,
37
+ name: instance,
38
+ type: type,
39
+ hash,
40
+ };
41
+ }
42
+ /**
43
+ * Convert a BackendIdentifier to a stack name.
44
+ *
45
+ * !!!DANGER!!!
46
+ * !!!DO NOT CHANGE THIS UNLESS YOU ARE 100% SURE YOU UNDERSTAND THE CONSEQUENCES!!!
47
+ *
48
+ * Changing this method will change how stack names are generated which could be a massive breaking change for existing Amplify stacks.
49
+ */
50
+ // It's fine to ignore the rule here because the anti-static rule is to ban the static function which should use constructor
51
+ // eslint-disable-next-line no-restricted-syntax
52
+ static toStackName(backendId) {
53
+ const hash = getHash(backendId);
54
+ // only take the first 50 chars here to make sure there is room in the stack name for the namespace as well
55
+ const name = sanitizeChars(backendId.name).slice(0, 50);
56
+ const namespaceMaxLength = STACK_NAME_LENGTH_LIMIT -
57
+ AMPLIFY_PREFIX.length -
58
+ backendId.type.length -
59
+ name.length -
60
+ NUM_DASHES -
61
+ HASH_LENGTH;
62
+ const namespace = sanitizeChars(backendId.namespace).slice(0, namespaceMaxLength - 1);
63
+ return ['amplify', namespace, name, backendId.type, hash].join('-');
64
+ }
65
+ }
66
+ exports.BackendIdentifierConversions = BackendIdentifierConversions;
67
+ /**
68
+ * Gets a stable hash from the namespace and name in the backendId.
69
+ *
70
+ * If the backendId already includes a hash, this hash is returned as-is.
71
+ *
72
+ * !!!DANGER!!!
73
+ * !!!DO NOT CHANGE THIS UNLESS YOU ARE 100% SURE YOU UNDERSTAND THE CONSEQUENCES!!!
74
+ *
75
+ * Changing this hash algorithm will change how stack names are generated which would be a massive breaking change for existing Amplify stacks.
76
+ */
77
+ const getHash = (backendId) => backendId.hash ??
78
+ // md5 would be sufficient here because this hash does not need to be cryptographically secure, but this ensures that we don't get unnecessarily flagged by some security scanner
79
+ (0, crypto_1.createHash)('sha512')
80
+ .update(backendId.namespace)
81
+ .update(backendId.name)
82
+ .digest('hex')
83
+ .slice(0, HASH_LENGTH);
84
+ /**
85
+ * Remove all non-alphanumeric characters from the input string
86
+ */
87
+ const sanitizeChars = (str) => {
88
+ return str.replace(/[^A-Za-z0-9]/g, '');
89
+ };
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZF9pZGVudGlmaWVyX2NvbnZlcnNpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JhY2tlbmRfaWRlbnRpZmllcl9jb252ZXJzaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxtQ0FBb0M7QUFFcEMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUM7QUFDcEMsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDO0FBQ2pDLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztBQUN2QixNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFFckI7O0dBRUc7QUFDSCxNQUFhLDRCQUE0QjtJQUN2Qzs7OztPQUlHO0lBQ0gsNEhBQTRIO0lBQzVILGdEQUFnRDtJQUNoRCxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQWtCO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxPQUFPO1NBQ1I7UUFDRCxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdEIsT0FBTztTQUNSO1FBQ0QsTUFBTSxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDeEQsSUFBSSxNQUFNLEtBQUssY0FBYyxFQUFFO1lBQzdCLE9BQU87U0FDUjtRQUNELElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzNDLE9BQU87U0FDUjtRQUVELE9BQU87WUFDTCxTQUFTO1lBQ1QsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsSUFBNEI7WUFDbEMsSUFBSTtTQUNMLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILDRIQUE0SDtJQUM1SCxnREFBZ0Q7SUFDaEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxTQUE0QjtRQUM3QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFaEMsMkdBQTJHO1FBQzNHLE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV4RCxNQUFNLGtCQUFrQixHQUN0Qix1QkFBdUI7WUFDdkIsY0FBYyxDQUFDLE1BQU07WUFDckIsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQ3JCLElBQUksQ0FBQyxNQUFNO1lBQ1gsVUFBVTtZQUNWLFdBQVcsQ0FBQztRQUVkLE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUN4RCxDQUFDLEVBQ0Qsa0JBQWtCLEdBQUcsQ0FBQyxDQUN2QixDQUFDO1FBRUYsT0FBTyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRjtBQS9ERCxvRUErREM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLE9BQU8sR0FBRyxDQUFDLFNBQTRCLEVBQVUsRUFBRSxDQUN2RCxTQUFTLENBQUMsSUFBSTtJQUNkLGlMQUFpTDtJQUNqTCxJQUFBLG1CQUFVLEVBQUMsUUFBUSxDQUFDO1NBQ2pCLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO1NBQzNCLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1NBQ3RCLE1BQU0sQ0FBQyxLQUFLLENBQUM7U0FDYixLQUFLLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBRTNCOztHQUVHO0FBQ0gsTUFBTSxhQUFhLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRTtJQUM1QyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhY2tlbmRJZGVudGlmaWVyIH0gZnJvbSAnQGF3cy1hbXBsaWZ5L3BsdWdpbi10eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVIYXNoIH0gZnJvbSAnY3J5cHRvJztcblxuY29uc3QgU1RBQ0tfTkFNRV9MRU5HVEhfTElNSVQgPSAxMjg7XG5jb25zdCBBTVBMSUZZX1BSRUZJWCA9ICdhbXBsaWZ5JztcbmNvbnN0IEhBU0hfTEVOR1RIID0gMTA7XG5jb25zdCBOVU1fREFTSEVTID0gNDtcblxuLyoqXG4gKiBQcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgY29udmVydGluZyBCYWNrZW5kSWRlbnRpZmllciB0by9mcm9tIGEgc3RhY2sgbmFtZSBzdHJpbmdcbiAqL1xuZXhwb3J0IGNsYXNzIEJhY2tlbmRJZGVudGlmaWVyQ29udmVyc2lvbnMge1xuICAvKipcbiAgICogQ29udmVydCBhIHN0YWNrIG5hbWUgdG8gYSBCYWNrZW5kSWRlbnRpZmllclxuICAgKlxuICAgKiBJZiB0aGUgc3RhY2sgbmFtZSBpcyBhbWJpZ3VvdXMsIHVuZGVmaW5lZCBpcyByZXR1cm5lZFxuICAgKi9cbiAgLy8gSXQncyBmaW5lIHRvIGlnbm9yZSB0aGUgcnVsZSBoZXJlIGJlY2F1c2UgdGhlIGFudGktc3RhdGljIHJ1bGUgaXMgdG8gYmFuIHRoZSBzdGF0aWMgZnVuY3Rpb24gd2hpY2ggc2hvdWxkIHVzZSBjb25zdHJ1Y3RvclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1zeW50YXhcbiAgc3RhdGljIGZyb21TdGFja05hbWUoc3RhY2tOYW1lPzogc3RyaW5nKTogQmFja2VuZElkZW50aWZpZXIgfCB1bmRlZmluZWQge1xuICAgIGlmICghc3RhY2tOYW1lKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBhcnRzID0gc3RhY2tOYW1lLnNwbGl0KCctJyk7XG4gICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gNSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBbcHJlZml4LCBuYW1lc3BhY2UsIGluc3RhbmNlLCB0eXBlLCBoYXNoXSA9IHBhcnRzO1xuICAgIGlmIChwcmVmaXggIT09IEFNUExJRllfUFJFRklYKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0eXBlICE9PSAnc2FuZGJveCcgJiYgdHlwZSAhPT0gJ2JyYW5jaCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmFtZXNwYWNlLFxuICAgICAgbmFtZTogaW5zdGFuY2UsXG4gICAgICB0eXBlOiB0eXBlIGFzICdzYW5kYm94JyB8ICdicmFuY2gnLFxuICAgICAgaGFzaCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnQgYSBCYWNrZW5kSWRlbnRpZmllciB0byBhIHN0YWNrIG5hbWUuXG4gICAqXG4gICAqICEhIURBTkdFUiEhIVxuICAgKiAhISFETyBOT1QgQ0hBTkdFIFRISVMgVU5MRVNTIFlPVSBBUkUgMTAwJSBTVVJFIFlPVSBVTkRFUlNUQU5EIFRIRSBDT05TRVFVRU5DRVMhISFcbiAgICpcbiAgICogQ2hhbmdpbmcgdGhpcyBtZXRob2Qgd2lsbCBjaGFuZ2UgaG93IHN0YWNrIG5hbWVzIGFyZSBnZW5lcmF0ZWQgd2hpY2ggY291bGQgYmUgYSBtYXNzaXZlIGJyZWFraW5nIGNoYW5nZSBmb3IgZXhpc3RpbmcgQW1wbGlmeSBzdGFja3MuXG4gICAqL1xuICAvLyBJdCdzIGZpbmUgdG8gaWdub3JlIHRoZSBydWxlIGhlcmUgYmVjYXVzZSB0aGUgYW50aS1zdGF0aWMgcnVsZSBpcyB0byBiYW4gdGhlIHN0YXRpYyBmdW5jdGlvbiB3aGljaCBzaG91bGQgdXNlIGNvbnN0cnVjdG9yXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICBzdGF0aWMgdG9TdGFja05hbWUoYmFja2VuZElkOiBCYWNrZW5kSWRlbnRpZmllcik6IHN0cmluZyB7XG4gICAgY29uc3QgaGFzaCA9IGdldEhhc2goYmFja2VuZElkKTtcblxuICAgIC8vIG9ubHkgdGFrZSB0aGUgZmlyc3QgNTAgY2hhcnMgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgcm9vbSBpbiB0aGUgc3RhY2sgbmFtZSBmb3IgdGhlIG5hbWVzcGFjZSBhcyB3ZWxsXG4gICAgY29uc3QgbmFtZSA9IHNhbml0aXplQ2hhcnMoYmFja2VuZElkLm5hbWUpLnNsaWNlKDAsIDUwKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZU1heExlbmd0aCA9XG4gICAgICBTVEFDS19OQU1FX0xFTkdUSF9MSU1JVCAtXG4gICAgICBBTVBMSUZZX1BSRUZJWC5sZW5ndGggLVxuICAgICAgYmFja2VuZElkLnR5cGUubGVuZ3RoIC1cbiAgICAgIG5hbWUubGVuZ3RoIC1cbiAgICAgIE5VTV9EQVNIRVMgLVxuICAgICAgSEFTSF9MRU5HVEg7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBzYW5pdGl6ZUNoYXJzKGJhY2tlbmRJZC5uYW1lc3BhY2UpLnNsaWNlKFxuICAgICAgMCxcbiAgICAgIG5hbWVzcGFjZU1heExlbmd0aCAtIDFcbiAgICApO1xuXG4gICAgcmV0dXJuIFsnYW1wbGlmeScsIG5hbWVzcGFjZSwgbmFtZSwgYmFja2VuZElkLnR5cGUsIGhhc2hdLmpvaW4oJy0nKTtcbiAgfVxufVxuXG4vKipcbiAqIEdldHMgYSBzdGFibGUgaGFzaCBmcm9tIHRoZSBuYW1lc3BhY2UgYW5kIG5hbWUgaW4gdGhlIGJhY2tlbmRJZC5cbiAqXG4gKiBJZiB0aGUgYmFja2VuZElkIGFscmVhZHkgaW5jbHVkZXMgYSBoYXNoLCB0aGlzIGhhc2ggaXMgcmV0dXJuZWQgYXMtaXMuXG4gKlxuICogISEhREFOR0VSISEhXG4gKiAhISFETyBOT1QgQ0hBTkdFIFRISVMgVU5MRVNTIFlPVSBBUkUgMTAwJSBTVVJFIFlPVSBVTkRFUlNUQU5EIFRIRSBDT05TRVFVRU5DRVMhISFcbiAqXG4gKiBDaGFuZ2luZyB0aGlzIGhhc2ggYWxnb3JpdGhtIHdpbGwgY2hhbmdlIGhvdyBzdGFjayBuYW1lcyBhcmUgZ2VuZXJhdGVkIHdoaWNoIHdvdWxkIGJlIGEgbWFzc2l2ZSBicmVha2luZyBjaGFuZ2UgZm9yIGV4aXN0aW5nIEFtcGxpZnkgc3RhY2tzLlxuICovXG5jb25zdCBnZXRIYXNoID0gKGJhY2tlbmRJZDogQmFja2VuZElkZW50aWZpZXIpOiBzdHJpbmcgPT5cbiAgYmFja2VuZElkLmhhc2ggPz9cbiAgLy8gbWQ1IHdvdWxkIGJlIHN1ZmZpY2llbnQgaGVyZSBiZWNhdXNlIHRoaXMgaGFzaCBkb2VzIG5vdCBuZWVkIHRvIGJlIGNyeXB0b2dyYXBoaWNhbGx5IHNlY3VyZSwgYnV0IHRoaXMgZW5zdXJlcyB0aGF0IHdlIGRvbid0IGdldCB1bm5lY2Vzc2FyaWx5IGZsYWdnZWQgYnkgc29tZSBzZWN1cml0eSBzY2FubmVyXG4gIGNyZWF0ZUhhc2goJ3NoYTUxMicpXG4gICAgLnVwZGF0ZShiYWNrZW5kSWQubmFtZXNwYWNlKVxuICAgIC51cGRhdGUoYmFja2VuZElkLm5hbWUpXG4gICAgLmRpZ2VzdCgnaGV4JylcbiAgICAuc2xpY2UoMCwgSEFTSF9MRU5HVEgpO1xuXG4vKipcbiAqIFJlbW92ZSBhbGwgbm9uLWFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGZyb20gdGhlIGlucHV0IHN0cmluZ1xuICovXG5jb25zdCBzYW5pdGl6ZUNoYXJzID0gKHN0cjogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bXkEtWmEtejAtOV0vZywgJycpO1xufTtcbiJdfQ==
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Extracts the path of the caller of the code that generated the input stack trace.
3
+ * In other words, extracts the path from the _second_ entry in the stack trace
4
+ * (the first entry being the location where the stack trace was created and the second entry being the location that called the code that generated the stack trace)
5
+ */
6
+ export declare class CallerDirectoryExtractor {
7
+ private readonly stackTrace;
8
+ /**
9
+ * Creates caller directory extractor.
10
+ */
11
+ constructor(stackTrace: string | undefined);
12
+ extract: () => string;
13
+ }
14
+ //# sourceMappingURL=caller_directory_extractor.d.ts.map
@@ -0,0 +1,70 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.CallerDirectoryExtractor = void 0;
30
+ const path_1 = __importDefault(require("path"));
31
+ const os = __importStar(require("os"));
32
+ const extract_file_path_from_stack_trace_line_1 = require("./extract_file_path_from_stack_trace_line");
33
+ /**
34
+ * Extracts the path of the caller of the code that generated the input stack trace.
35
+ * In other words, extracts the path from the _second_ entry in the stack trace
36
+ * (the first entry being the location where the stack trace was created and the second entry being the location that called the code that generated the stack trace)
37
+ */
38
+ class CallerDirectoryExtractor {
39
+ stackTrace;
40
+ /**
41
+ * Creates caller directory extractor.
42
+ */
43
+ constructor(stackTrace) {
44
+ this.stackTrace = stackTrace;
45
+ }
46
+ extract = () => {
47
+ let stackTrace = this.stackTrace;
48
+ const unresolvedImportLocationError = new Error('Could not determine import path to construct absolute code path from relative path. Consider using an absolute path instead.');
49
+ if (!stackTrace) {
50
+ throw unresolvedImportLocationError;
51
+ }
52
+ // normalize EOL to \n so that parsing is consistent across platforms
53
+ stackTrace = stackTrace.replaceAll(os.EOL, '\n');
54
+ const stacktraceLines = stackTrace
55
+ .split('\n')
56
+ .map((line) => line.trim())
57
+ .filter((line) => line.startsWith('at')) || [];
58
+ if (stacktraceLines.length < 2) {
59
+ throw unresolvedImportLocationError;
60
+ }
61
+ const stackTraceImportLine = stacktraceLines[1]; // the first entry is the file where the error was initialized (our code). The second entry is where the customer called our code which is what we are interested in
62
+ const filePath = new extract_file_path_from_stack_trace_line_1.FilePathExtractor(stackTraceImportLine).extract();
63
+ if (filePath) {
64
+ return path_1.default.dirname(filePath);
65
+ }
66
+ throw unresolvedImportLocationError;
67
+ };
68
+ }
69
+ exports.CallerDirectoryExtractor = CallerDirectoryExtractor;
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGVyX2RpcmVjdG9yeV9leHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2FsbGVyX2RpcmVjdG9yeV9leHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBd0I7QUFDeEIsdUNBQXlCO0FBQ3pCLHVHQUE4RTtBQUU5RTs7OztHQUlHO0FBQ0gsTUFBYSx3QkFBd0I7SUFJTjtJQUg3Qjs7T0FFRztJQUNILFlBQTZCLFVBQThCO1FBQTlCLGVBQVUsR0FBVixVQUFVLENBQW9CO0lBQUcsQ0FBQztJQUUvRCxPQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ2IsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNqQyxNQUFNLDZCQUE2QixHQUFHLElBQUksS0FBSyxDQUM3Qyw4SEFBOEgsQ0FDL0gsQ0FBQztRQUNGLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixNQUFNLDZCQUE2QixDQUFDO1NBQ3JDO1FBQ0QscUVBQXFFO1FBQ3JFLFVBQVUsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDakQsTUFBTSxlQUFlLEdBQ25CLFVBQVU7YUFDUCxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ1gsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDMUIsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ25ELElBQUksZUFBZSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDOUIsTUFBTSw2QkFBNkIsQ0FBQztTQUNyQztRQUNELE1BQU0sb0JBQW9CLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsb0tBQW9LO1FBRXJOLE1BQU0sUUFBUSxHQUFHLElBQUksMkRBQWlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN2RSxJQUFJLFFBQVEsRUFBRTtZQUNaLE9BQU8sY0FBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMvQjtRQUNELE1BQU0sNkJBQTZCLENBQUM7SUFDdEMsQ0FBQyxDQUFDO0NBQ0g7QUFoQ0QsNERBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgeyBGaWxlUGF0aEV4dHJhY3RvciB9IGZyb20gJy4vZXh0cmFjdF9maWxlX3BhdGhfZnJvbV9zdGFja190cmFjZV9saW5lJztcblxuLyoqXG4gKiBFeHRyYWN0cyB0aGUgcGF0aCBvZiB0aGUgY2FsbGVyIG9mIHRoZSBjb2RlIHRoYXQgZ2VuZXJhdGVkIHRoZSBpbnB1dCBzdGFjayB0cmFjZS5cbiAqIEluIG90aGVyIHdvcmRzLCBleHRyYWN0cyB0aGUgcGF0aCBmcm9tIHRoZSBfc2Vjb25kXyBlbnRyeSBpbiB0aGUgc3RhY2sgdHJhY2VcbiAqICh0aGUgZmlyc3QgZW50cnkgYmVpbmcgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSBzdGFjayB0cmFjZSB3YXMgY3JlYXRlZCBhbmQgdGhlIHNlY29uZCBlbnRyeSBiZWluZyB0aGUgbG9jYXRpb24gdGhhdCBjYWxsZWQgdGhlIGNvZGUgdGhhdCBnZW5lcmF0ZWQgdGhlIHN0YWNrIHRyYWNlKVxuICovXG5leHBvcnQgY2xhc3MgQ2FsbGVyRGlyZWN0b3J5RXh0cmFjdG9yIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgY2FsbGVyIGRpcmVjdG9yeSBleHRyYWN0b3IuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHN0YWNrVHJhY2U6IHN0cmluZyB8IHVuZGVmaW5lZCkge31cblxuICBleHRyYWN0ID0gKCkgPT4ge1xuICAgIGxldCBzdGFja1RyYWNlID0gdGhpcy5zdGFja1RyYWNlO1xuICAgIGNvbnN0IHVucmVzb2x2ZWRJbXBvcnRMb2NhdGlvbkVycm9yID0gbmV3IEVycm9yKFxuICAgICAgJ0NvdWxkIG5vdCBkZXRlcm1pbmUgaW1wb3J0IHBhdGggdG8gY29uc3RydWN0IGFic29sdXRlIGNvZGUgcGF0aCBmcm9tIHJlbGF0aXZlIHBhdGguIENvbnNpZGVyIHVzaW5nIGFuIGFic29sdXRlIHBhdGggaW5zdGVhZC4nXG4gICAgKTtcbiAgICBpZiAoIXN0YWNrVHJhY2UpIHtcbiAgICAgIHRocm93IHVucmVzb2x2ZWRJbXBvcnRMb2NhdGlvbkVycm9yO1xuICAgIH1cbiAgICAvLyBub3JtYWxpemUgRU9MIHRvIFxcbiBzbyB0aGF0IHBhcnNpbmcgaXMgY29uc2lzdGVudCBhY3Jvc3MgcGxhdGZvcm1zXG4gICAgc3RhY2tUcmFjZSA9IHN0YWNrVHJhY2UucmVwbGFjZUFsbChvcy5FT0wsICdcXG4nKTtcbiAgICBjb25zdCBzdGFja3RyYWNlTGluZXMgPVxuICAgICAgc3RhY2tUcmFjZVxuICAgICAgICAuc3BsaXQoJ1xcbicpXG4gICAgICAgIC5tYXAoKGxpbmUpID0+IGxpbmUudHJpbSgpKVxuICAgICAgICAuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnN0YXJ0c1dpdGgoJ2F0JykpIHx8IFtdO1xuICAgIGlmIChzdGFja3RyYWNlTGluZXMubGVuZ3RoIDwgMikge1xuICAgICAgdGhyb3cgdW5yZXNvbHZlZEltcG9ydExvY2F0aW9uRXJyb3I7XG4gICAgfVxuICAgIGNvbnN0IHN0YWNrVHJhY2VJbXBvcnRMaW5lID0gc3RhY2t0cmFjZUxpbmVzWzFdOyAvLyB0aGUgZmlyc3QgZW50cnkgaXMgdGhlIGZpbGUgd2hlcmUgdGhlIGVycm9yIHdhcyBpbml0aWFsaXplZCAob3VyIGNvZGUpLiBUaGUgc2Vjb25kIGVudHJ5IGlzIHdoZXJlIHRoZSBjdXN0b21lciBjYWxsZWQgb3VyIGNvZGUgd2hpY2ggaXMgd2hhdCB3ZSBhcmUgaW50ZXJlc3RlZCBpblxuXG4gICAgY29uc3QgZmlsZVBhdGggPSBuZXcgRmlsZVBhdGhFeHRyYWN0b3Ioc3RhY2tUcmFjZUltcG9ydExpbmUpLmV4dHJhY3QoKTtcbiAgICBpZiAoZmlsZVBhdGgpIHtcbiAgICAgIHJldHVybiBwYXRoLmRpcm5hbWUoZmlsZVBhdGgpO1xuICAgIH1cbiAgICB0aHJvdyB1bnJlc29sdmVkSW1wb3J0TG9jYXRpb25FcnJvcjtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { LogLevel, LogRetention } from '@aws-amplify/plugin-types';
2
+ import { ApplicationLogLevel } from 'aws-cdk-lib/aws-lambda';
3
+ import { RetentionDays } from 'aws-cdk-lib/aws-logs';
4
+ import { FieldLogLevel } from 'aws-cdk-lib/aws-appsync';
5
+ /**
6
+ * Converts LogRetention to CDK types.
7
+ */
8
+ export declare class LogRetentionConverter {
9
+ toCDKRetentionDays: (retention: LogRetention | undefined) => RetentionDays | undefined;
10
+ }
11
+ /**
12
+ * Converts LogLevel to CDK types.
13
+ */
14
+ export declare class LogLevelConverter {
15
+ toCDKLambdaApplicationLogLevel: (logLevel: LogLevel | undefined) => ApplicationLogLevel | undefined;
16
+ toCDKAppsyncFieldLogLevel: (logLevel: LogLevel | undefined) => FieldLogLevel | undefined;
17
+ }
18
+ //# sourceMappingURL=enum_converters.d.ts.map
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LogLevelConverter = exports.LogRetentionConverter = void 0;
4
+ const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
5
+ const aws_logs_1 = require("aws-cdk-lib/aws-logs");
6
+ const aws_appsync_1 = require("aws-cdk-lib/aws-appsync");
7
+ /**
8
+ * Converts LogRetention to CDK types.
9
+ */
10
+ class LogRetentionConverter {
11
+ toCDKRetentionDays = (retention) => {
12
+ switch (retention) {
13
+ case undefined:
14
+ return undefined;
15
+ case '1 day':
16
+ return aws_logs_1.RetentionDays.ONE_DAY;
17
+ case '3 days':
18
+ return aws_logs_1.RetentionDays.THREE_DAYS;
19
+ case '5 days':
20
+ return aws_logs_1.RetentionDays.FIVE_DAYS;
21
+ case '1 week':
22
+ return aws_logs_1.RetentionDays.ONE_WEEK;
23
+ case '2 weeks':
24
+ return aws_logs_1.RetentionDays.TWO_WEEKS;
25
+ case '1 month':
26
+ return aws_logs_1.RetentionDays.ONE_MONTH;
27
+ case '2 months':
28
+ return aws_logs_1.RetentionDays.TWO_MONTHS;
29
+ case '3 months':
30
+ return aws_logs_1.RetentionDays.THREE_MONTHS;
31
+ case '4 months':
32
+ return aws_logs_1.RetentionDays.FOUR_MONTHS;
33
+ case '5 months':
34
+ return aws_logs_1.RetentionDays.FIVE_MONTHS;
35
+ case '6 months':
36
+ return aws_logs_1.RetentionDays.SIX_MONTHS;
37
+ case '1 year':
38
+ return aws_logs_1.RetentionDays.ONE_YEAR;
39
+ case '13 months':
40
+ return aws_logs_1.RetentionDays.THIRTEEN_MONTHS;
41
+ case '18 months':
42
+ return aws_logs_1.RetentionDays.EIGHTEEN_MONTHS;
43
+ case '2 years':
44
+ return aws_logs_1.RetentionDays.TWO_YEARS;
45
+ case '3 years':
46
+ return aws_logs_1.RetentionDays.THREE_YEARS;
47
+ case '5 years':
48
+ return aws_logs_1.RetentionDays.FIVE_YEARS;
49
+ case '6 years':
50
+ return aws_logs_1.RetentionDays.SIX_YEARS;
51
+ case '7 years':
52
+ return aws_logs_1.RetentionDays.SEVEN_YEARS;
53
+ case '8 years':
54
+ return aws_logs_1.RetentionDays.EIGHT_YEARS;
55
+ case '9 years':
56
+ return aws_logs_1.RetentionDays.NINE_YEARS;
57
+ case '10 years':
58
+ return aws_logs_1.RetentionDays.TEN_YEARS;
59
+ case 'infinite':
60
+ return aws_logs_1.RetentionDays.INFINITE;
61
+ }
62
+ };
63
+ }
64
+ exports.LogRetentionConverter = LogRetentionConverter;
65
+ /**
66
+ * Converts LogLevel to CDK types.
67
+ */
68
+ class LogLevelConverter {
69
+ toCDKLambdaApplicationLogLevel = (logLevel) => {
70
+ switch (logLevel) {
71
+ case undefined: {
72
+ return undefined;
73
+ }
74
+ case 'info': {
75
+ return aws_lambda_1.ApplicationLogLevel.INFO;
76
+ }
77
+ case 'debug': {
78
+ return aws_lambda_1.ApplicationLogLevel.DEBUG;
79
+ }
80
+ case 'warn': {
81
+ return aws_lambda_1.ApplicationLogLevel.WARN;
82
+ }
83
+ case 'error': {
84
+ return aws_lambda_1.ApplicationLogLevel.ERROR;
85
+ }
86
+ case 'fatal': {
87
+ return aws_lambda_1.ApplicationLogLevel.FATAL;
88
+ }
89
+ case 'trace': {
90
+ return aws_lambda_1.ApplicationLogLevel.TRACE;
91
+ }
92
+ default:
93
+ throw new Error(`Invalid Lambda application log level: ${logLevel}`);
94
+ }
95
+ };
96
+ toCDKAppsyncFieldLogLevel = (logLevel) => {
97
+ switch (logLevel) {
98
+ case undefined:
99
+ return undefined;
100
+ case 'none':
101
+ return aws_appsync_1.FieldLogLevel.NONE;
102
+ case 'error':
103
+ return aws_appsync_1.FieldLogLevel.ERROR;
104
+ case 'info':
105
+ return aws_appsync_1.FieldLogLevel.INFO;
106
+ case 'debug':
107
+ return aws_appsync_1.FieldLogLevel.DEBUG;
108
+ case 'all':
109
+ return aws_appsync_1.FieldLogLevel.ALL;
110
+ default:
111
+ throw new Error(`Invalid Appsync field log level: ${logLevel}`);
112
+ }
113
+ };
114
+ }
115
+ exports.LogLevelConverter = LogLevelConverter;
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bV9jb252ZXJ0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nkay9lbnVtX2NvbnZlcnRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdURBQTZEO0FBQzdELG1EQUFxRDtBQUNyRCx5REFBd0Q7QUFFeEQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFxQjtJQUNoQyxrQkFBa0IsR0FBRyxDQUNuQixTQUFtQyxFQUNSLEVBQUU7UUFDN0IsUUFBUSxTQUFTLEVBQUU7WUFDakIsS0FBSyxTQUFTO2dCQUNaLE9BQU8sU0FBUyxDQUFDO1lBRW5CLEtBQUssT0FBTztnQkFDVixPQUFPLHdCQUFhLENBQUMsT0FBTyxDQUFDO1lBQy9CLEtBQUssUUFBUTtnQkFDWCxPQUFPLHdCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ2xDLEtBQUssUUFBUTtnQkFDWCxPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssUUFBUTtnQkFDWCxPQUFPLHdCQUFhLENBQUMsUUFBUSxDQUFDO1lBQ2hDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ2xDLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsWUFBWSxDQUFDO1lBQ3BDLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsV0FBVyxDQUFDO1lBQ25DLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsV0FBVyxDQUFDO1lBQ25DLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ2xDLEtBQUssUUFBUTtnQkFDWCxPQUFPLHdCQUFhLENBQUMsUUFBUSxDQUFDO1lBQ2hDLEtBQUssV0FBVztnQkFDZCxPQUFPLHdCQUFhLENBQUMsZUFBZSxDQUFDO1lBQ3ZDLEtBQUssV0FBVztnQkFDZCxPQUFPLHdCQUFhLENBQUMsZUFBZSxDQUFDO1lBQ3ZDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsV0FBVyxDQUFDO1lBQ25DLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ2xDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsV0FBVyxDQUFDO1lBQ25DLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsV0FBVyxDQUFDO1lBQ25DLEtBQUssU0FBUztnQkFDWixPQUFPLHdCQUFhLENBQUMsVUFBVSxDQUFDO1lBQ2xDLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsU0FBUyxDQUFDO1lBQ2pDLEtBQUssVUFBVTtnQkFDYixPQUFPLHdCQUFhLENBQUMsUUFBUSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQyxDQUFDO0NBQ0g7QUF4REQsc0RBd0RDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGlCQUFpQjtJQUM1Qiw4QkFBOEIsR0FBRyxDQUMvQixRQUE4QixFQUNHLEVBQUU7UUFDbkMsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyxTQUFTLENBQUMsQ0FBQztnQkFDZCxPQUFPLFNBQVMsQ0FBQzthQUNsQjtZQUNELEtBQUssTUFBTSxDQUFDLENBQUM7Z0JBQ1gsT0FBTyxnQ0FBbUIsQ0FBQyxJQUFJLENBQUM7YUFDakM7WUFDRCxLQUFLLE9BQU8sQ0FBQyxDQUFDO2dCQUNaLE9BQU8sZ0NBQW1CLENBQUMsS0FBSyxDQUFDO2FBQ2xDO1lBQ0QsS0FBSyxNQUFNLENBQUMsQ0FBQztnQkFDWCxPQUFPLGdDQUFtQixDQUFDLElBQUksQ0FBQzthQUNqQztZQUNELEtBQUssT0FBTyxDQUFDLENBQUM7Z0JBQ1osT0FBTyxnQ0FBbUIsQ0FBQyxLQUFLLENBQUM7YUFDbEM7WUFDRCxLQUFLLE9BQU8sQ0FBQyxDQUFDO2dCQUNaLE9BQU8sZ0NBQW1CLENBQUMsS0FBSyxDQUFDO2FBQ2xDO1lBQ0QsS0FBSyxPQUFPLENBQUMsQ0FBQztnQkFDWixPQUFPLGdDQUFtQixDQUFDLEtBQUssQ0FBQzthQUNsQztZQUNEO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDeEU7SUFDSCxDQUFDLENBQUM7SUFFRix5QkFBeUIsR0FBRyxDQUMxQixRQUE4QixFQUNILEVBQUU7UUFDN0IsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyxTQUFTO2dCQUNaLE9BQU8sU0FBUyxDQUFDO1lBQ25CLEtBQUssTUFBTTtnQkFDVCxPQUFPLDJCQUFhLENBQUMsSUFBSSxDQUFDO1lBQzVCLEtBQUssT0FBTztnQkFDVixPQUFPLDJCQUFhLENBQUMsS0FBSyxDQUFDO1lBQzdCLEtBQUssTUFBTTtnQkFDVCxPQUFPLDJCQUFhLENBQUMsSUFBSSxDQUFDO1lBQzVCLEtBQUssT0FBTztnQkFDVixPQUFPLDJCQUFhLENBQUMsS0FBSyxDQUFDO1lBQzdCLEtBQUssS0FBSztnQkFDUixPQUFPLDJCQUFhLENBQUMsR0FBRyxDQUFDO1lBQzNCO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDbkU7SUFDSCxDQUFDLENBQUM7Q0FDSDtBQW5ERCw4Q0FtREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dMZXZlbCwgTG9nUmV0ZW50aW9uIH0gZnJvbSAnQGF3cy1hbXBsaWZ5L3BsdWdpbi10eXBlcyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxvZ0xldmVsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgeyBSZXRlbnRpb25EYXlzIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxvZ3MnO1xuaW1wb3J0IHsgRmllbGRMb2dMZXZlbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1hcHBzeW5jJztcblxuLyoqXG4gKiBDb252ZXJ0cyBMb2dSZXRlbnRpb24gdG8gQ0RLIHR5cGVzLlxuICovXG5leHBvcnQgY2xhc3MgTG9nUmV0ZW50aW9uQ29udmVydGVyIHtcbiAgdG9DREtSZXRlbnRpb25EYXlzID0gKFxuICAgIHJldGVudGlvbjogTG9nUmV0ZW50aW9uIHwgdW5kZWZpbmVkXG4gICk6IFJldGVudGlvbkRheXMgfCB1bmRlZmluZWQgPT4ge1xuICAgIHN3aXRjaCAocmV0ZW50aW9uKSB7XG4gICAgICBjYXNlIHVuZGVmaW5lZDpcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcblxuICAgICAgY2FzZSAnMSBkYXknOlxuICAgICAgICByZXR1cm4gUmV0ZW50aW9uRGF5cy5PTkVfREFZO1xuICAgICAgY2FzZSAnMyBkYXlzJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuVEhSRUVfREFZUztcbiAgICAgIGNhc2UgJzUgZGF5cyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLkZJVkVfREFZUztcbiAgICAgIGNhc2UgJzEgd2Vlayc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLk9ORV9XRUVLO1xuICAgICAgY2FzZSAnMiB3ZWVrcyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlRXT19XRUVLUztcbiAgICAgIGNhc2UgJzEgbW9udGgnOlxuICAgICAgICByZXR1cm4gUmV0ZW50aW9uRGF5cy5PTkVfTU9OVEg7XG4gICAgICBjYXNlICcyIG1vbnRocyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlRXT19NT05USFM7XG4gICAgICBjYXNlICczIG1vbnRocyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlRIUkVFX01PTlRIUztcbiAgICAgIGNhc2UgJzQgbW9udGhzJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuRk9VUl9NT05USFM7XG4gICAgICBjYXNlICc1IG1vbnRocyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLkZJVkVfTU9OVEhTO1xuICAgICAgY2FzZSAnNiBtb250aHMnOlxuICAgICAgICByZXR1cm4gUmV0ZW50aW9uRGF5cy5TSVhfTU9OVEhTO1xuICAgICAgY2FzZSAnMSB5ZWFyJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuT05FX1lFQVI7XG4gICAgICBjYXNlICcxMyBtb250aHMnOlxuICAgICAgICByZXR1cm4gUmV0ZW50aW9uRGF5cy5USElSVEVFTl9NT05USFM7XG4gICAgICBjYXNlICcxOCBtb250aHMnOlxuICAgICAgICByZXR1cm4gUmV0ZW50aW9uRGF5cy5FSUdIVEVFTl9NT05USFM7XG4gICAgICBjYXNlICcyIHllYXJzJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuVFdPX1lFQVJTO1xuICAgICAgY2FzZSAnMyB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlRIUkVFX1lFQVJTO1xuICAgICAgY2FzZSAnNSB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLkZJVkVfWUVBUlM7XG4gICAgICBjYXNlICc2IHllYXJzJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuU0lYX1lFQVJTO1xuICAgICAgY2FzZSAnNyB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlNFVkVOX1lFQVJTO1xuICAgICAgY2FzZSAnOCB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLkVJR0hUX1lFQVJTO1xuICAgICAgY2FzZSAnOSB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLk5JTkVfWUVBUlM7XG4gICAgICBjYXNlICcxMCB5ZWFycyc6XG4gICAgICAgIHJldHVybiBSZXRlbnRpb25EYXlzLlRFTl9ZRUFSUztcbiAgICAgIGNhc2UgJ2luZmluaXRlJzpcbiAgICAgICAgcmV0dXJuIFJldGVudGlvbkRheXMuSU5GSU5JVEU7XG4gICAgfVxuICB9O1xufVxuXG4vKipcbiAqIENvbnZlcnRzIExvZ0xldmVsIHRvIENESyB0eXBlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIExvZ0xldmVsQ29udmVydGVyIHtcbiAgdG9DREtMYW1iZGFBcHBsaWNhdGlvbkxvZ0xldmVsID0gKFxuICAgIGxvZ0xldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZFxuICApOiBBcHBsaWNhdGlvbkxvZ0xldmVsIHwgdW5kZWZpbmVkID0+IHtcbiAgICBzd2l0Y2ggKGxvZ0xldmVsKSB7XG4gICAgICBjYXNlIHVuZGVmaW5lZDoge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgY2FzZSAnaW5mbyc6IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uTG9nTGV2ZWwuSU5GTztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2RlYnVnJzoge1xuICAgICAgICByZXR1cm4gQXBwbGljYXRpb25Mb2dMZXZlbC5ERUJVRztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ3dhcm4nOiB7XG4gICAgICAgIHJldHVybiBBcHBsaWNhdGlvbkxvZ0xldmVsLldBUk47XG4gICAgICB9XG4gICAgICBjYXNlICdlcnJvcic6IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uTG9nTGV2ZWwuRVJST1I7XG4gICAgICB9XG4gICAgICBjYXNlICdmYXRhbCc6IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uTG9nTGV2ZWwuRkFUQUw7XG4gICAgICB9XG4gICAgICBjYXNlICd0cmFjZSc6IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uTG9nTGV2ZWwuVFJBQ0U7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgTGFtYmRhIGFwcGxpY2F0aW9uIGxvZyBsZXZlbDogJHtsb2dMZXZlbH1gKTtcbiAgICB9XG4gIH07XG5cbiAgdG9DREtBcHBzeW5jRmllbGRMb2dMZXZlbCA9IChcbiAgICBsb2dMZXZlbDogTG9nTGV2ZWwgfCB1bmRlZmluZWRcbiAgKTogRmllbGRMb2dMZXZlbCB8IHVuZGVmaW5lZCA9PiB7XG4gICAgc3dpdGNoIChsb2dMZXZlbCkge1xuICAgICAgY2FzZSB1bmRlZmluZWQ6XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICBjYXNlICdub25lJzpcbiAgICAgICAgcmV0dXJuIEZpZWxkTG9nTGV2ZWwuTk9ORTtcbiAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgICAgcmV0dXJuIEZpZWxkTG9nTGV2ZWwuRVJST1I7XG4gICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgcmV0dXJuIEZpZWxkTG9nTGV2ZWwuSU5GTztcbiAgICAgIGNhc2UgJ2RlYnVnJzpcbiAgICAgICAgcmV0dXJuIEZpZWxkTG9nTGV2ZWwuREVCVUc7XG4gICAgICBjYXNlICdhbGwnOlxuICAgICAgICByZXR1cm4gRmllbGRMb2dMZXZlbC5BTEw7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgQXBwc3luYyBmaWVsZCBsb2cgbGV2ZWw6ICR7bG9nTGV2ZWx9YCk7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ import { LogLevelConverter, LogRetentionConverter } from './enum_converters.js';
2
+ export { LogLevelConverter, LogRetentionConverter };
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LogRetentionConverter = exports.LogLevelConverter = void 0;
4
+ const enum_converters_js_1 = require("./enum_converters.js");
5
+ Object.defineProperty(exports, "LogLevelConverter", { enumerable: true, get: function () { return enum_converters_js_1.LogLevelConverter; } });
6
+ Object.defineProperty(exports, "LogRetentionConverter", { enumerable: true, get: function () { return enum_converters_js_1.LogRetentionConverter; } });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2RrL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZEQUFnRjtBQUV2RSxrR0FGQSxzQ0FBaUIsT0FFQTtBQUFFLHNHQUZBLDBDQUFxQixPQUVBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9nTGV2ZWxDb252ZXJ0ZXIsIExvZ1JldGVudGlvbkNvbnZlcnRlciB9IGZyb20gJy4vZW51bV9jb252ZXJ0ZXJzLmpzJztcblxuZXhwb3J0IHsgTG9nTGV2ZWxDb252ZXJ0ZXIsIExvZ1JldGVudGlvbkNvbnZlcnRlciB9O1xuIl19
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Keys for values that are passed between the Amplify deployment engine and the CDK synth process via CDK Context
3
+ *
4
+ * !!!WARNING!!!
5
+ * Changing the values of these keys could be a breaking change
6
+ */
7
+ export declare enum CDKContextKey {
8
+ BACKEND_NAME = "amplify-backend-name",
9
+ BACKEND_NAMESPACE = "amplify-backend-namespace",
10
+ DEPLOYMENT_TYPE = "amplify-backend-type"
11
+ }
12
+ //# sourceMappingURL=cdk_context_key.d.ts.map
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CDKContextKey = void 0;
4
+ /**
5
+ * Keys for values that are passed between the Amplify deployment engine and the CDK synth process via CDK Context
6
+ *
7
+ * !!!WARNING!!!
8
+ * Changing the values of these keys could be a breaking change
9
+ */
10
+ var CDKContextKey;
11
+ (function (CDKContextKey) {
12
+ CDKContextKey["BACKEND_NAME"] = "amplify-backend-name";
13
+ CDKContextKey["BACKEND_NAMESPACE"] = "amplify-backend-namespace";
14
+ CDKContextKey["DEPLOYMENT_TYPE"] = "amplify-backend-type";
15
+ })(CDKContextKey || (exports.CDKContextKey = CDKContextKey = {}));
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrX2NvbnRleHRfa2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Nka19jb250ZXh0X2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7R0FLRztBQUNILElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUN2QixzREFBcUMsQ0FBQTtJQUNyQyxnRUFBK0MsQ0FBQTtJQUMvQyx5REFBd0MsQ0FBQTtBQUMxQyxDQUFDLEVBSlcsYUFBYSw2QkFBYixhQUFhLFFBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLZXlzIGZvciB2YWx1ZXMgdGhhdCBhcmUgcGFzc2VkIGJldHdlZW4gdGhlIEFtcGxpZnkgZGVwbG95bWVudCBlbmdpbmUgYW5kIHRoZSBDREsgc3ludGggcHJvY2VzcyB2aWEgQ0RLIENvbnRleHRcbiAqXG4gKiAhISFXQVJOSU5HISEhXG4gKiBDaGFuZ2luZyB0aGUgdmFsdWVzIG9mIHRoZXNlIGtleXMgY291bGQgYmUgYSBicmVha2luZyBjaGFuZ2VcbiAqL1xuZXhwb3J0IGVudW0gQ0RLQ29udGV4dEtleSB7XG4gIEJBQ0tFTkRfTkFNRSA9ICdhbXBsaWZ5LWJhY2tlbmQtbmFtZScsXG4gIEJBQ0tFTkRfTkFNRVNQQUNFID0gJ2FtcGxpZnktYmFja2VuZC1uYW1lc3BhY2UnLFxuICBERVBMT1lNRU5UX1RZUEUgPSAnYW1wbGlmeS1iYWNrZW5kLXR5cGUnLFxufVxuIl19
@@ -0,0 +1,45 @@
1
+ import { ConfigurationController } from './local_configuration_controller_factory';
2
+ /**
3
+ * Used to interact with config file based on OS.
4
+ */
5
+ export declare class LocalConfigurationController implements ConfigurationController {
6
+ private readonly projectName;
7
+ private readonly configFileName;
8
+ dirPath: string;
9
+ configFilePath: string;
10
+ _store: Record<string, unknown>;
11
+ /**
12
+ * Initializes paths to project config dir & config file.
13
+ */
14
+ constructor(projectName?: string, configFileName?: string);
15
+ /**
16
+ * Gets values from cached config by path.
17
+ */
18
+ get<T>(path: string): Promise<T>;
19
+ /**
20
+ * Set value by path & update config file to disk.
21
+ */
22
+ set(path: string, value: string | boolean | number): Promise<void>;
23
+ /**
24
+ * Writes config file to disk if found.
25
+ */
26
+ write(): Promise<void>;
27
+ /**
28
+ * Reset cached config and delete the config file.
29
+ */
30
+ clear(): Promise<void>;
31
+ /**
32
+ * Getter for cached config, retrieves config from disk if not cached already.
33
+ * If the store is not cached & config file does not exist, it will create a blank one.
34
+ */
35
+ private store;
36
+ /**
37
+ * Creates project directory to store config if it doesn't exist yet.
38
+ */
39
+ private mkConfigDir;
40
+ /**
41
+ * Returns the path to config directory depending on OS
42
+ */
43
+ private getConfigDirPath;
44
+ }
45
+ //# sourceMappingURL=local_configuration_controller.d.ts.map
@@ -0,0 +1,125 @@
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.LocalConfigurationController = void 0;
7
+ const os_1 = __importDefault(require("os"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const promises_1 = __importDefault(require("fs/promises"));
10
+ /**
11
+ * Used to interact with config file based on OS.
12
+ */
13
+ class LocalConfigurationController {
14
+ projectName;
15
+ configFileName;
16
+ dirPath;
17
+ configFilePath;
18
+ _store;
19
+ /**
20
+ * Initializes paths to project config dir & config file.
21
+ */
22
+ constructor(projectName = 'amplify', configFileName = 'config.json') {
23
+ this.projectName = projectName;
24
+ this.configFileName = configFileName;
25
+ this.dirPath = this.getConfigDirPath(this.projectName);
26
+ this.configFilePath = path_1.default.join(this.dirPath, this.configFileName);
27
+ }
28
+ /**
29
+ * Gets values from cached config by path.
30
+ */
31
+ async get(path) {
32
+ return path
33
+ .split('.')
34
+ .reduce((acc, current) => {
35
+ return acc?.[current];
36
+ }, await this.store());
37
+ }
38
+ /**
39
+ * Set value by path & update config file to disk.
40
+ */
41
+ async set(path, value) {
42
+ let current = await this.store();
43
+ path.split('.').forEach((key, index, keys) => {
44
+ if (index === keys.length - 1) {
45
+ current[key] = value;
46
+ }
47
+ else {
48
+ if (current[key] == null) {
49
+ current[key] = {};
50
+ }
51
+ current = current[key];
52
+ }
53
+ });
54
+ await this.write();
55
+ }
56
+ /**
57
+ * Writes config file to disk if found.
58
+ */
59
+ async write() {
60
+ // creates project directory if it doesn't exist.
61
+ await this.mkConfigDir();
62
+ const output = JSON.stringify(this._store ? this._store : {});
63
+ await promises_1.default.writeFile(this.configFilePath, output, 'utf8');
64
+ }
65
+ /**
66
+ * Reset cached config and delete the config file.
67
+ */
68
+ async clear() {
69
+ this._store = {};
70
+ await promises_1.default.rm(this.configFilePath);
71
+ }
72
+ /**
73
+ * Getter for cached config, retrieves config from disk if not cached already.
74
+ * If the store is not cached & config file does not exist, it will create a blank one.
75
+ */
76
+ async store() {
77
+ if (this._store) {
78
+ return this._store;
79
+ }
80
+ // check if file exists & readable.
81
+ let fd;
82
+ try {
83
+ fd = await promises_1.default.open(this.configFilePath, promises_1.default.constants.F_OK, promises_1.default.constants.O_RDWR);
84
+ const fileContent = await promises_1.default.readFile(fd, 'utf-8');
85
+ this._store = JSON.parse(fileContent);
86
+ }
87
+ catch {
88
+ this._store = {};
89
+ await this.write();
90
+ }
91
+ finally {
92
+ await fd?.close();
93
+ }
94
+ return this._store;
95
+ }
96
+ /**
97
+ * Creates project directory to store config if it doesn't exist yet.
98
+ */
99
+ mkConfigDir() {
100
+ return promises_1.default.mkdir(this.dirPath, { recursive: true });
101
+ }
102
+ /**
103
+ * Returns the path to config directory depending on OS
104
+ */
105
+ getConfigDirPath(name) {
106
+ const homedir = os_1.default.homedir();
107
+ const macos = () => path_1.default.join(homedir, 'Library', 'Preferences', name);
108
+ const windows = () => {
109
+ return path_1.default.join(process.env.APPDATA || path_1.default.join(homedir, 'AppData', 'Roaming'), name, 'Config');
110
+ };
111
+ const linux = () => {
112
+ return path_1.default.join(process.env.XDG_STATE_HOME || path_1.default.join(homedir, '.local', 'state'), name);
113
+ };
114
+ switch (process.platform) {
115
+ case 'darwin':
116
+ return macos();
117
+ case 'win32':
118
+ return windows();
119
+ default:
120
+ return linux();
121
+ }
122
+ }
123
+ }
124
+ exports.LocalConfigurationController = LocalConfigurationController;
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxfY29uZmlndXJhdGlvbl9jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9sb2NhbF9jb25maWd1cmF0aW9uX2NvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNENBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QiwyREFBNkI7QUFHN0I7O0dBRUc7QUFDSCxNQUFhLDRCQUE0QjtJQVNwQjtJQUNBO0lBVG5CLE9BQU8sQ0FBUztJQUNoQixjQUFjLENBQVM7SUFDdkIsTUFBTSxDQUEwQjtJQUVoQzs7T0FFRztJQUNILFlBQ21CLGNBQWMsU0FBUyxFQUN2QixpQkFBaUIsYUFBYTtRQUQ5QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFFL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFJLElBQVk7UUFDdkIsT0FBTyxJQUFJO2FBQ1IsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLE1BQU0sQ0FBQyxDQUFDLEdBQTRCLEVBQUUsT0FBZSxFQUFFLEVBQUU7WUFDeEQsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQTRCLENBQUM7UUFDbkQsQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFNLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFZLEVBQUUsS0FBZ0M7UUFDdEQsSUFBSSxPQUFPLEdBQTRCLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTFELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUMzQyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQzthQUN0QjtpQkFBTTtnQkFDTCxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUU7b0JBQ3hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7aUJBQ25CO2dCQUNELE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUE0QixDQUFDO2FBQ25EO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsS0FBSztRQUNULGlEQUFpRDtRQUNqRCxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUV6QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sa0JBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixNQUFNLGtCQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssS0FBSyxDQUFDLEtBQUs7UUFDakIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1NBQ3BCO1FBQ0QsbUNBQW1DO1FBQ25DLElBQUksRUFBRSxDQUFDO1FBRVAsSUFBSTtZQUNGLEVBQUUsR0FBRyxNQUFNLGtCQUFFLENBQUMsSUFBSSxDQUNoQixJQUFJLENBQUMsY0FBYyxFQUNuQixrQkFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQ2pCLGtCQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FDcEIsQ0FBQztZQUNGLE1BQU0sV0FBVyxHQUFHLE1BQU0sa0JBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN2QztRQUFDLE1BQU07WUFDTixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNwQjtnQkFBUztZQUNSLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDO1NBQ25CO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNLLFdBQVc7UUFDakIsT0FBTyxrQkFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOztPQUVHO0lBQ0ssZ0JBQWdCLENBQUMsSUFBWTtRQUNuQyxNQUFNLE9BQU8sR0FBRyxZQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFN0IsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2RSxNQUFNLE9BQU8sR0FBRyxHQUFHLEVBQUU7WUFDbkIsT0FBTyxjQUFJLENBQUMsSUFBSSxDQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLGNBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsRUFDL0QsSUFBSSxFQUNKLFFBQVEsQ0FDVCxDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLE9BQU8sY0FBSSxDQUFDLElBQUksQ0FDZCxPQUFPLENBQUMsR0FBRyxDQUFDLGNBQWMsSUFBSSxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLEVBQ25FLElBQUksQ0FDTCxDQUFDO1FBQ0osQ0FBQyxDQUFDO1FBRUYsUUFBUSxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3hCLEtBQUssUUFBUTtnQkFDWCxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2pCLEtBQUssT0FBTztnQkFDVixPQUFPLE9BQU8sRUFBRSxDQUFDO1lBQ25CO2dCQUNFLE9BQU8sS0FBSyxFQUFFLENBQUM7U0FDbEI7SUFDSCxDQUFDO0NBQ0Y7QUFuSUQsb0VBbUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG9zIGZyb20gJ29zJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzL3Byb21pc2VzJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25Db250cm9sbGVyIH0gZnJvbSAnLi9sb2NhbF9jb25maWd1cmF0aW9uX2NvbnRyb2xsZXJfZmFjdG9yeSc7XG5cbi8qKlxuICogVXNlZCB0byBpbnRlcmFjdCB3aXRoIGNvbmZpZyBmaWxlIGJhc2VkIG9uIE9TLlxuICovXG5leHBvcnQgY2xhc3MgTG9jYWxDb25maWd1cmF0aW9uQ29udHJvbGxlciBpbXBsZW1lbnRzIENvbmZpZ3VyYXRpb25Db250cm9sbGVyIHtcbiAgZGlyUGF0aDogc3RyaW5nO1xuICBjb25maWdGaWxlUGF0aDogc3RyaW5nO1xuICBfc3RvcmU6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplcyBwYXRocyB0byBwcm9qZWN0IGNvbmZpZyBkaXIgJiBjb25maWcgZmlsZS5cbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvamVjdE5hbWUgPSAnYW1wbGlmeScsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdGaWxlTmFtZSA9ICdjb25maWcuanNvbidcbiAgKSB7XG4gICAgdGhpcy5kaXJQYXRoID0gdGhpcy5nZXRDb25maWdEaXJQYXRoKHRoaXMucHJvamVjdE5hbWUpO1xuICAgIHRoaXMuY29uZmlnRmlsZVBhdGggPSBwYXRoLmpvaW4odGhpcy5kaXJQYXRoLCB0aGlzLmNvbmZpZ0ZpbGVOYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHZhbHVlcyBmcm9tIGNhY2hlZCBjb25maWcgYnkgcGF0aC5cbiAgICovXG4gIGFzeW5jIGdldDxUPihwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcGF0aFxuICAgICAgLnNwbGl0KCcuJylcbiAgICAgIC5yZWR1Y2UoKGFjYzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIGN1cnJlbnQ6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gYWNjPy5bY3VycmVudF0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgICB9LCBhd2FpdCB0aGlzLnN0b3JlKCkpIGFzIFQ7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHZhbHVlIGJ5IHBhdGggJiB1cGRhdGUgY29uZmlnIGZpbGUgdG8gZGlzay5cbiAgICovXG4gIGFzeW5jIHNldChwYXRoOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyKSB7XG4gICAgbGV0IGN1cnJlbnQ6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gYXdhaXQgdGhpcy5zdG9yZSgpO1xuXG4gICAgcGF0aC5zcGxpdCgnLicpLmZvckVhY2goKGtleSwgaW5kZXgsIGtleXMpID0+IHtcbiAgICAgIGlmIChpbmRleCA9PT0ga2V5cy5sZW5ndGggLSAxKSB7XG4gICAgICAgIGN1cnJlbnRba2V5XSA9IHZhbHVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGN1cnJlbnRba2V5XSA9PSBudWxsKSB7XG4gICAgICAgICAgY3VycmVudFtrZXldID0ge307XG4gICAgICAgIH1cbiAgICAgICAgY3VycmVudCA9IGN1cnJlbnRba2V5XSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGF3YWl0IHRoaXMud3JpdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcml0ZXMgY29uZmlnIGZpbGUgdG8gZGlzayBpZiBmb3VuZC5cbiAgICovXG4gIGFzeW5jIHdyaXRlKCkge1xuICAgIC8vIGNyZWF0ZXMgcHJvamVjdCBkaXJlY3RvcnkgaWYgaXQgZG9lc24ndCBleGlzdC5cbiAgICBhd2FpdCB0aGlzLm1rQ29uZmlnRGlyKCk7XG5cbiAgICBjb25zdCBvdXRwdXQgPSBKU09OLnN0cmluZ2lmeSh0aGlzLl9zdG9yZSA/IHRoaXMuX3N0b3JlIDoge30pO1xuICAgIGF3YWl0IGZzLndyaXRlRmlsZSh0aGlzLmNvbmZpZ0ZpbGVQYXRoLCBvdXRwdXQsICd1dGY4Jyk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXQgY2FjaGVkIGNvbmZpZyBhbmQgZGVsZXRlIHRoZSBjb25maWcgZmlsZS5cbiAgICovXG4gIGFzeW5jIGNsZWFyKCkge1xuICAgIHRoaXMuX3N0b3JlID0ge307XG4gICAgYXdhaXQgZnMucm0odGhpcy5jb25maWdGaWxlUGF0aCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0dGVyIGZvciBjYWNoZWQgY29uZmlnLCByZXRyaWV2ZXMgY29uZmlnIGZyb20gZGlzayBpZiBub3QgY2FjaGVkIGFscmVhZHkuXG4gICAqIElmIHRoZSBzdG9yZSBpcyBub3QgY2FjaGVkICYgY29uZmlnIGZpbGUgZG9lcyBub3QgZXhpc3QsIGl0IHdpbGwgY3JlYXRlIGEgYmxhbmsgb25lLlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzdG9yZSgpOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIHVua25vd24+PiB7XG4gICAgaWYgKHRoaXMuX3N0b3JlKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc3RvcmU7XG4gICAgfVxuICAgIC8vIGNoZWNrIGlmIGZpbGUgZXhpc3RzICYgcmVhZGFibGUuXG4gICAgbGV0IGZkO1xuXG4gICAgdHJ5IHtcbiAgICAgIGZkID0gYXdhaXQgZnMub3BlbihcbiAgICAgICAgdGhpcy5jb25maWdGaWxlUGF0aCxcbiAgICAgICAgZnMuY29uc3RhbnRzLkZfT0ssXG4gICAgICAgIGZzLmNvbnN0YW50cy5PX1JEV1JcbiAgICAgICk7XG4gICAgICBjb25zdCBmaWxlQ29udGVudCA9IGF3YWl0IGZzLnJlYWRGaWxlKGZkLCAndXRmLTgnKTtcbiAgICAgIHRoaXMuX3N0b3JlID0gSlNPTi5wYXJzZShmaWxlQ29udGVudCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aGlzLl9zdG9yZSA9IHt9O1xuICAgICAgYXdhaXQgdGhpcy53cml0ZSgpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBhd2FpdCBmZD8uY2xvc2UoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX3N0b3JlO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgcHJvamVjdCBkaXJlY3RvcnkgdG8gc3RvcmUgY29uZmlnIGlmIGl0IGRvZXNuJ3QgZXhpc3QgeWV0LlxuICAgKi9cbiAgcHJpdmF0ZSBta0NvbmZpZ0RpcigpIHtcbiAgICByZXR1cm4gZnMubWtkaXIodGhpcy5kaXJQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBwYXRoIHRvIGNvbmZpZyBkaXJlY3RvcnkgZGVwZW5kaW5nIG9uIE9TXG4gICAqL1xuICBwcml2YXRlIGdldENvbmZpZ0RpclBhdGgobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBob21lZGlyID0gb3MuaG9tZWRpcigpO1xuXG4gICAgY29uc3QgbWFjb3MgPSAoKSA9PiBwYXRoLmpvaW4oaG9tZWRpciwgJ0xpYnJhcnknLCAnUHJlZmVyZW5jZXMnLCBuYW1lKTtcbiAgICBjb25zdCB3aW5kb3dzID0gKCkgPT4ge1xuICAgICAgcmV0dXJuIHBhdGguam9pbihcbiAgICAgICAgcHJvY2Vzcy5lbnYuQVBQREFUQSB8fCBwYXRoLmpvaW4oaG9tZWRpciwgJ0FwcERhdGEnLCAnUm9hbWluZycpLFxuICAgICAgICBuYW1lLFxuICAgICAgICAnQ29uZmlnJ1xuICAgICAgKTtcbiAgICB9O1xuICAgIGNvbnN0IGxpbnV4ID0gKCkgPT4ge1xuICAgICAgcmV0dXJuIHBhdGguam9pbihcbiAgICAgICAgcHJvY2Vzcy5lbnYuWERHX1NUQVRFX0hPTUUgfHwgcGF0aC5qb2luKGhvbWVkaXIsICcubG9jYWwnLCAnc3RhdGUnKSxcbiAgICAgICAgbmFtZVxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgc3dpdGNoIChwcm9jZXNzLnBsYXRmb3JtKSB7XG4gICAgICBjYXNlICdkYXJ3aW4nOlxuICAgICAgICByZXR1cm4gbWFjb3MoKTtcbiAgICAgIGNhc2UgJ3dpbjMyJzpcbiAgICAgICAgcmV0dXJuIHdpbmRvd3MoKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBsaW51eCgpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,23 @@
1
+ export type ConfigurationController = {
2
+ get: <T>(path: string) => Promise<T>;
3
+ set: (path: string, value: string | boolean | number) => Promise<void>;
4
+ clear: () => Promise<void>;
5
+ write: () => Promise<void>;
6
+ };
7
+ export type LocalConfigurationFileName = 'usage_data_preferences.json';
8
+ /**
9
+ * Instantiates LocalConfigurationController
10
+ */
11
+ export declare class ConfigurationControllerFactory {
12
+ private controllers;
13
+ /**
14
+ * initialized empty map of ConfigurationController;
15
+ */
16
+ constructor();
17
+ /**
18
+ * Returns a LocalConfigurationController
19
+ */
20
+ getInstance: (configFileName: LocalConfigurationFileName) => ConfigurationController;
21
+ }
22
+ export declare const configControllerFactory: ConfigurationControllerFactory;
23
+ //# sourceMappingURL=local_configuration_controller_factory.d.ts.map
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.configControllerFactory = exports.ConfigurationControllerFactory = void 0;
4
+ const local_configuration_controller_js_1 = require("../config/local_configuration_controller.js");
5
+ /**
6
+ * Instantiates LocalConfigurationController
7
+ */
8
+ class ConfigurationControllerFactory {
9
+ controllers;
10
+ /**
11
+ * initialized empty map of ConfigurationController;
12
+ */
13
+ constructor() {
14
+ this.controllers = {};
15
+ }
16
+ /**
17
+ * Returns a LocalConfigurationController
18
+ */
19
+ getInstance = (configFileName) => {
20
+ if (this.controllers[configFileName]) {
21
+ return this.controllers[configFileName];
22
+ }
23
+ this.controllers[configFileName] = new local_configuration_controller_js_1.LocalConfigurationController('amplify', configFileName);
24
+ return this.controllers[configFileName];
25
+ };
26
+ }
27
+ exports.ConfigurationControllerFactory = ConfigurationControllerFactory;
28
+ exports.configControllerFactory = new ConfigurationControllerFactory();
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxfY29uZmlndXJhdGlvbl9jb250cm9sbGVyX2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2xvY2FsX2NvbmZpZ3VyYXRpb25fY29udHJvbGxlcl9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1HQUEyRjtBQVczRjs7R0FFRztBQUNILE1BQWEsOEJBQThCO0lBQ2pDLFdBQVcsQ0FBMEM7SUFFN0Q7O09BRUc7SUFDSDtRQUNFLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFDRDs7T0FFRztJQUNILFdBQVcsR0FBRyxDQUNaLGNBQTBDLEVBQ2pCLEVBQUU7UUFDM0IsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ3BDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN6QztRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxnRUFBNEIsQ0FDakUsU0FBUyxFQUNULGNBQWMsQ0FDZixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FBQztDQUNIO0FBekJELHdFQXlCQztBQUVZLFFBQUEsdUJBQXVCLEdBQUcsSUFBSSw4QkFBOEIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9jYWxDb25maWd1cmF0aW9uQ29udHJvbGxlciB9IGZyb20gJy4uL2NvbmZpZy9sb2NhbF9jb25maWd1cmF0aW9uX2NvbnRyb2xsZXIuanMnO1xuXG5leHBvcnQgdHlwZSBDb25maWd1cmF0aW9uQ29udHJvbGxlciA9IHtcbiAgZ2V0OiA8VD4ocGF0aDogc3RyaW5nKSA9PiBQcm9taXNlPFQ+O1xuICBzZXQ6IChwYXRoOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBib29sZWFuIHwgbnVtYmVyKSA9PiBQcm9taXNlPHZvaWQ+O1xuICBjbGVhcjogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgd3JpdGU6ICgpID0+IFByb21pc2U8dm9pZD47XG59O1xuXG5leHBvcnQgdHlwZSBMb2NhbENvbmZpZ3VyYXRpb25GaWxlTmFtZSA9ICd1c2FnZV9kYXRhX3ByZWZlcmVuY2VzLmpzb24nO1xuXG4vKipcbiAqIEluc3RhbnRpYXRlcyBMb2NhbENvbmZpZ3VyYXRpb25Db250cm9sbGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uQ29udHJvbGxlckZhY3Rvcnkge1xuICBwcml2YXRlIGNvbnRyb2xsZXJzOiBSZWNvcmQ8c3RyaW5nLCBDb25maWd1cmF0aW9uQ29udHJvbGxlcj47XG5cbiAgLyoqXG4gICAqIGluaXRpYWxpemVkIGVtcHR5IG1hcCBvZiBDb25maWd1cmF0aW9uQ29udHJvbGxlcjtcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuY29udHJvbGxlcnMgPSB7fTtcbiAgfVxuICAvKipcbiAgICogUmV0dXJucyBhIExvY2FsQ29uZmlndXJhdGlvbkNvbnRyb2xsZXJcbiAgICovXG4gIGdldEluc3RhbmNlID0gKFxuICAgIGNvbmZpZ0ZpbGVOYW1lOiBMb2NhbENvbmZpZ3VyYXRpb25GaWxlTmFtZVxuICApOiBDb25maWd1cmF0aW9uQ29udHJvbGxlciA9PiB7XG4gICAgaWYgKHRoaXMuY29udHJvbGxlcnNbY29uZmlnRmlsZU5hbWVdKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyc1tjb25maWdGaWxlTmFtZV07XG4gICAgfVxuXG4gICAgdGhpcy5jb250cm9sbGVyc1tjb25maWdGaWxlTmFtZV0gPSBuZXcgTG9jYWxDb25maWd1cmF0aW9uQ29udHJvbGxlcihcbiAgICAgICdhbXBsaWZ5JyxcbiAgICAgIGNvbmZpZ0ZpbGVOYW1lXG4gICAgKTtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sbGVyc1tjb25maWdGaWxlTmFtZV07XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBjb25maWdDb250cm9sbGVyRmFjdG9yeSA9IG5ldyBDb25maWd1cmF0aW9uQ29udHJvbGxlckZhY3RvcnkoKTtcbiJdfQ==