@aws-amplify/graphql-api-construct 1.4.0-nov-14-cut-1.0 → 1.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. package/.jsii +21 -21
  2. package/CHANGELOG.md +7 -1
  3. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  4. package/lib/amplify-graphql-api.js +1 -1
  5. package/lib/amplify-graphql-definition.js +1 -1
  6. package/node_modules/@aws-amplify/backend-output-schemas/lib/auth/index.d.ts +40 -5
  7. package/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.d.ts +40 -5
  8. package/node_modules/@aws-amplify/backend-output-schemas/lib/auth/v1.js +10 -2
  9. package/node_modules/@aws-amplify/backend-output-schemas/lib/index.d.ts +56 -7
  10. package/node_modules/@aws-amplify/backend-output-schemas/package.json +2 -2
  11. package/node_modules/@aws-amplify/backend-output-storage/lib/store_attribution_metadata.js +3 -3
  12. package/node_modules/@aws-amplify/backend-output-storage/package.json +3 -3
  13. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +5 -1
  14. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +10 -10
  15. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +5 -1
  16. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +7 -7
  17. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +5 -1
  18. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +6 -6
  19. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +5 -1
  20. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +6 -6
  21. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +5 -1
  22. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +7 -7
  23. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +5 -1
  24. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  25. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +10 -10
  26. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +7 -1
  27. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  28. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  29. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  30. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js +1 -1
  31. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js.map +1 -1
  32. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +6 -6
  33. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +5 -1
  34. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  35. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +6 -6
  36. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +5 -1
  37. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +8 -8
  38. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +5 -1
  39. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  40. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +7 -7
  41. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +5 -1
  42. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +7 -7
  43. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +5 -1
  44. package/node_modules/@aws-amplify/graphql-transformer/package.json +15 -15
  45. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +5 -1
  46. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +4 -4
  47. package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +1 -1
  48. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +2 -3
  49. package/node_modules/@aws-amplify/platform-core/lib/backend_entry_point_locator.d.ts +14 -0
  50. package/node_modules/@aws-amplify/platform-core/lib/backend_entry_point_locator.js +33 -0
  51. package/node_modules/@aws-amplify/platform-core/lib/backend_identifier_conversions.d.ts +22 -0
  52. package/node_modules/@aws-amplify/platform-core/lib/backend_identifier_conversions.js +86 -0
  53. package/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.d.ts +5 -2
  54. package/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.js +6 -3
  55. package/node_modules/@aws-amplify/platform-core/lib/extract_file_path_from_stack_trace_line.d.ts +13 -0
  56. package/node_modules/@aws-amplify/platform-core/lib/extract_file_path_from_stack_trace_line.js +61 -0
  57. package/node_modules/@aws-amplify/platform-core/lib/index.d.ts +3 -2
  58. package/node_modules/@aws-amplify/platform-core/lib/index.js +4 -3
  59. package/node_modules/@aws-amplify/platform-core/package.json +2 -2
  60. package/node_modules/@aws-amplify/plugin-types/lib/auth_resources.d.ts +11 -3
  61. package/node_modules/@aws-amplify/plugin-types/lib/auth_resources.js +1 -1
  62. package/node_modules/@aws-amplify/plugin-types/lib/backend_identifier.d.ts +56 -0
  63. package/node_modules/@aws-amplify/plugin-types/lib/backend_identifier.js +3 -0
  64. package/node_modules/@aws-amplify/plugin-types/lib/backend_secret_resolver.d.ts +2 -2
  65. package/node_modules/@aws-amplify/plugin-types/lib/backend_secret_resolver.js +1 -1
  66. package/node_modules/@aws-amplify/plugin-types/lib/deployment_type.d.ts +8 -0
  67. package/node_modules/@aws-amplify/plugin-types/lib/deployment_type.js +3 -0
  68. package/node_modules/@aws-amplify/plugin-types/lib/index.d.ts +2 -2
  69. package/node_modules/@aws-amplify/plugin-types/lib/index.js +3 -3
  70. package/node_modules/@aws-amplify/plugin-types/package.json +1 -1
  71. package/node_modules/graphql-transformer-common/API.md +1 -0
  72. package/node_modules/graphql-transformer-common/CHANGELOG.md +7 -1
  73. package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts +1 -0
  74. package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts.map +1 -1
  75. package/node_modules/graphql-transformer-common/lib/ResourceConstants.js +1 -0
  76. package/node_modules/graphql-transformer-common/lib/ResourceConstants.js.map +1 -1
  77. package/node_modules/graphql-transformer-common/package.json +2 -2
  78. package/package.json +21 -21
  79. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/backend_deployment_type.d.ts +0 -5
  80. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/backend_deployment_type.js +0 -9
  81. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.d.ts +0 -9
  82. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/cdk_context_key.js +0 -13
  83. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/index.d.ts +0 -4
  84. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/index.js +0 -22
  85. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/unique_backend_identifier.d.ts +0 -53
  86. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/lib/unique_backend_identifier.js +0 -74
  87. package/node_modules/@aws-amplify/backend-output-storage/node_modules/@aws-amplify/platform-core/package.json +0 -23
  88. package/node_modules/@aws-amplify/graphql-transformer-interfaces/LICENSE +0 -201
  89. package/node_modules/@aws-amplify/platform-core/lib/backend_deployment_type.d.ts +0 -5
  90. package/node_modules/@aws-amplify/platform-core/lib/backend_deployment_type.js +0 -9
  91. package/node_modules/@aws-amplify/platform-core/lib/unique_backend_identifier.d.ts +0 -53
  92. package/node_modules/@aws-amplify/platform-core/lib/unique_backend_identifier.js +0 -74
  93. package/node_modules/@aws-amplify/plugin-types/lib/amplify_output_writer.d.ts +0 -9
  94. package/node_modules/@aws-amplify/plugin-types/lib/amplify_output_writer.js +0 -3
  95. package/node_modules/@aws-amplify/plugin-types/lib/unique_backend_identifier.d.ts +0 -25
  96. package/node_modules/@aws-amplify/plugin-types/lib/unique_backend_identifier.js +0 -3
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-sql-transformer",
3
- "version": "0.1.0-nov-14-cut-1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Amplify GraphQL @sql transformer",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,15 +28,15 @@
28
28
  "extract-api": "ts-node ../../scripts/extract-api.ts"
29
29
  },
30
30
  "dependencies": {
31
- "@aws-amplify/graphql-model-transformer": "2.3.0-nov-14-cut-1.0",
32
- "@aws-amplify/graphql-transformer-core": "2.3.0-nov-14-cut-1.0",
33
- "@aws-amplify/graphql-transformer-interfaces": "3.3.0-nov-14-cut-1.0",
31
+ "@aws-amplify/graphql-model-transformer": "2.3.1",
32
+ "@aws-amplify/graphql-transformer-core": "2.3.1",
33
+ "@aws-amplify/graphql-transformer-interfaces": "3.3.0",
34
34
  "graphql": "^15.5.0",
35
35
  "graphql-mapping-template": "4.20.12",
36
- "graphql-transformer-common": "4.26.0-nov-14-cut-1.0"
36
+ "graphql-transformer-common": "4.26.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@aws-amplify/graphql-transformer-test-utils": "0.3.0-nov-14-cut-1.0"
39
+ "@aws-amplify/graphql-transformer-test-utils": "0.3.1"
40
40
  },
41
41
  "peerDependencies": {
42
42
  "aws-cdk-lib": "^2.80.0",
@@ -67,5 +67,5 @@
67
67
  "overrides"
68
68
  ]
69
69
  },
70
- "gitHead": "7957a8c3e87fee7fadb53c2705b9840940e8030c"
70
+ "gitHead": "317a141956493f0940bb506470259026edf3b7bc"
71
71
  }
@@ -3,7 +3,11 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [1.3.0-nov-14-cut-1.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer@1.2.6...@aws-amplify/graphql-transformer@1.3.0-nov-14-cut-1.0) (2023-11-15)
6
+ ## [1.3.1](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer@1.3.0...@aws-amplify/graphql-transformer@1.3.1) (2023-11-16)
7
+
8
+ **Note:** Version bump only for package @aws-amplify/graphql-transformer
9
+
10
+ # [1.3.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer@1.2.6...@aws-amplify/graphql-transformer@1.3.0) (2023-11-15)
7
11
 
8
12
  ### Bug Fixes
9
13
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer",
3
- "version": "1.3.0-nov-14-cut-1.0",
3
+ "version": "1.3.1",
4
4
  "description": "Amplify GraphQL Transformer Root Package",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,19 +28,19 @@
28
28
  "access": "public"
29
29
  },
30
30
  "dependencies": {
31
- "@aws-amplify/graphql-auth-transformer": "3.2.0-nov-14-cut-1.0",
32
- "@aws-amplify/graphql-default-value-transformer": "2.1.9-nov-14-cut-1.0",
33
- "@aws-amplify/graphql-function-transformer": "2.1.8-nov-14-cut-1.0",
34
- "@aws-amplify/graphql-http-transformer": "2.1.8-nov-14-cut-1.0",
35
- "@aws-amplify/graphql-index-transformer": "2.2.0-nov-14-cut-1.0",
36
- "@aws-amplify/graphql-maps-to-transformer": "3.3.0-nov-14-cut-1.0",
37
- "@aws-amplify/graphql-model-transformer": "2.3.0-nov-14-cut-1.0",
38
- "@aws-amplify/graphql-predictions-transformer": "2.1.8-nov-14-cut-1.0",
39
- "@aws-amplify/graphql-relational-transformer": "2.2.0-nov-14-cut-1.0",
40
- "@aws-amplify/graphql-searchable-transformer": "2.3.0-nov-14-cut-1.0",
41
- "@aws-amplify/graphql-sql-transformer": "0.1.0-nov-14-cut-1.0",
42
- "@aws-amplify/graphql-transformer-core": "2.3.0-nov-14-cut-1.0",
43
- "@aws-amplify/graphql-transformer-interfaces": "3.3.0-nov-14-cut-1.0"
31
+ "@aws-amplify/graphql-auth-transformer": "3.2.1",
32
+ "@aws-amplify/graphql-default-value-transformer": "2.1.10",
33
+ "@aws-amplify/graphql-function-transformer": "2.1.9",
34
+ "@aws-amplify/graphql-http-transformer": "2.1.9",
35
+ "@aws-amplify/graphql-index-transformer": "2.2.1",
36
+ "@aws-amplify/graphql-maps-to-transformer": "3.3.1",
37
+ "@aws-amplify/graphql-model-transformer": "2.3.1",
38
+ "@aws-amplify/graphql-predictions-transformer": "2.1.9",
39
+ "@aws-amplify/graphql-relational-transformer": "2.2.1",
40
+ "@aws-amplify/graphql-searchable-transformer": "2.3.1",
41
+ "@aws-amplify/graphql-sql-transformer": "0.1.1",
42
+ "@aws-amplify/graphql-transformer-core": "2.3.1",
43
+ "@aws-amplify/graphql-transformer-interfaces": "3.3.0"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/node": "^12.12.6",
@@ -75,5 +75,5 @@
75
75
  }
76
76
  }
77
77
  },
78
- "gitHead": "7957a8c3e87fee7fadb53c2705b9840940e8030c"
78
+ "gitHead": "317a141956493f0940bb506470259026edf3b7bc"
79
79
  }
@@ -3,7 +3,11 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [2.3.0-nov-14-cut-1.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.2.4...@aws-amplify/graphql-transformer-core@2.3.0-nov-14-cut-1.0) (2023-11-15)
6
+ ## [2.3.1](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.3.0...@aws-amplify/graphql-transformer-core@2.3.1) (2023-11-16)
7
+
8
+ **Note:** Version bump only for package @aws-amplify/graphql-transformer-core
9
+
10
+ # [2.3.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.2.4...@aws-amplify/graphql-transformer-core@2.3.0) (2023-11-15)
7
11
 
8
12
  ### Bug Fixes
9
13
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer-core",
3
- "version": "2.3.0-nov-14-cut-1.0",
3
+ "version": "2.3.1",
4
4
  "description": "A framework to transform from GraphQL SDL to AWS CloudFormation.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,10 +28,10 @@
28
28
  "extract-api": "ts-node ../../scripts/extract-api.ts"
29
29
  },
30
30
  "dependencies": {
31
- "@aws-amplify/graphql-transformer-interfaces": "3.3.0-nov-14-cut-1.0",
31
+ "@aws-amplify/graphql-transformer-interfaces": "3.3.0",
32
32
  "fs-extra": "^8.1.0",
33
33
  "graphql": "^15.5.0",
34
- "graphql-transformer-common": "4.26.0-nov-14-cut-1.0",
34
+ "graphql-transformer-common": "4.26.1",
35
35
  "hjson": "^3.2.2",
36
36
  "lodash": "^4.17.21",
37
37
  "md5": "^2.3.0",
@@ -73,5 +73,5 @@
73
73
  }
74
74
  }
75
75
  },
76
- "gitHead": "7957a8c3e87fee7fadb53c2705b9840940e8030c"
76
+ "gitHead": "317a141956493f0940bb506470259026edf3b7bc"
77
77
  }
@@ -3,7 +3,7 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- # [3.3.0-nov-14-cut-1.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-interfaces@3.2.2...@aws-amplify/graphql-transformer-interfaces@3.3.0-nov-14-cut-1.0) (2023-11-15)
6
+ # [3.3.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-interfaces@3.2.2...@aws-amplify/graphql-transformer-interfaces@3.3.0) (2023-11-15)
7
7
 
8
8
  ### Features
9
9
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer-interfaces",
3
- "version": "3.3.0-nov-14-cut-1.0",
3
+ "version": "3.3.0",
4
4
  "description": "Amplify GraphQL transformer interface definitions",
5
5
  "repository": {
6
6
  "type": "git",
@@ -48,6 +48,5 @@
48
48
  "node"
49
49
  ],
50
50
  "collectCoverage": true
51
- },
52
- "gitHead": "7957a8c3e87fee7fadb53c2705b9840940e8030c"
51
+ }
53
52
  }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Find the backend definition file in the customer app that represents a CDK app.
3
+ */
4
+ export declare class BackendLocator {
5
+ private readonly rootDir;
6
+ private relativePath;
7
+ private supportedFileExtensions;
8
+ /**
9
+ * Constructor for BackendLocator
10
+ */
11
+ constructor(rootDir?: string);
12
+ locate: () => string;
13
+ }
14
+ //# sourceMappingURL=backend_entry_point_locator.d.ts.map
@@ -0,0 +1,33 @@
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.BackendLocator = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ /**
10
+ * Find the backend definition file in the customer app that represents a CDK app.
11
+ */
12
+ class BackendLocator {
13
+ rootDir;
14
+ relativePath = path_1.default.join('amplify', 'backend');
15
+ // Give preference to JS if that exists over TS in case customers have their own compilation process.
16
+ supportedFileExtensions = ['.js', '.mjs', '.cjs', '.ts'];
17
+ /**
18
+ * Constructor for BackendLocator
19
+ */
20
+ constructor(rootDir = process.cwd()) {
21
+ this.rootDir = rootDir;
22
+ }
23
+ locate = () => {
24
+ for (const fileExtension of this.supportedFileExtensions) {
25
+ if (fs_1.default.existsSync(path_1.default.resolve(this.rootDir, this.relativePath + fileExtension))) {
26
+ return this.relativePath + fileExtension;
27
+ }
28
+ }
29
+ throw new Error(`Amplify Backend not found in ${this.rootDir}. Amplify Backend must be defined in amplify/backend.(ts|js|cjs|mjs)`);
30
+ };
31
+ }
32
+ exports.BackendLocator = BackendLocator;
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZF9lbnRyeV9wb2ludF9sb2NhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JhY2tlbmRfZW50cnlfcG9pbnRfbG9jYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw0Q0FBb0I7QUFDcEIsZ0RBQXdCO0FBRXhCOztHQUVHO0FBQ0gsTUFBYSxjQUFjO0lBUUk7SUFQckIsWUFBWSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRXZELHFHQUFxRztJQUM3Rix1QkFBdUIsR0FBRyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pFOztPQUVHO0lBQ0gsWUFBNkIsVUFBa0IsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUEvQixZQUFPLEdBQVAsT0FBTyxDQUF3QjtJQUFHLENBQUM7SUFFaEUsTUFBTSxHQUFHLEdBQUcsRUFBRTtRQUNaLEtBQUssTUFBTSxhQUFhLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQ3hELElBQ0UsWUFBRSxDQUFDLFVBQVUsQ0FDWCxjQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FDOUQsRUFDRDtnQkFDQSxPQUFPLElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDO2FBQzFDO1NBQ0Y7UUFFRCxNQUFNLElBQUksS0FBSyxDQUNiLGdDQUFnQyxJQUFJLENBQUMsT0FBTyxzRUFBc0UsQ0FDbkgsQ0FBQztJQUNKLENBQUMsQ0FBQztDQUNIO0FBekJELHdDQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tICdmcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuLyoqXG4gKiBGaW5kIHRoZSBiYWNrZW5kIGRlZmluaXRpb24gZmlsZSBpbiB0aGUgY3VzdG9tZXIgYXBwIHRoYXQgcmVwcmVzZW50cyBhIENESyBhcHAuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYWNrZW5kTG9jYXRvciB7XG4gIHByaXZhdGUgcmVsYXRpdmVQYXRoID0gcGF0aC5qb2luKCdhbXBsaWZ5JywgJ2JhY2tlbmQnKTtcblxuICAvLyBHaXZlIHByZWZlcmVuY2UgdG8gSlMgaWYgdGhhdCBleGlzdHMgb3ZlciBUUyBpbiBjYXNlIGN1c3RvbWVycyBoYXZlIHRoZWlyIG93biBjb21waWxhdGlvbiBwcm9jZXNzLlxuICBwcml2YXRlIHN1cHBvcnRlZEZpbGVFeHRlbnNpb25zID0gWycuanMnLCAnLm1qcycsICcuY2pzJywgJy50cyddO1xuICAvKipcbiAgICogQ29uc3RydWN0b3IgZm9yIEJhY2tlbmRMb2NhdG9yXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvb3REaXI6IHN0cmluZyA9IHByb2Nlc3MuY3dkKCkpIHt9XG5cbiAgbG9jYXRlID0gKCkgPT4ge1xuICAgIGZvciAoY29uc3QgZmlsZUV4dGVuc2lvbiBvZiB0aGlzLnN1cHBvcnRlZEZpbGVFeHRlbnNpb25zKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGZzLmV4aXN0c1N5bmMoXG4gICAgICAgICAgcGF0aC5yZXNvbHZlKHRoaXMucm9vdERpciwgdGhpcy5yZWxhdGl2ZVBhdGggKyBmaWxlRXh0ZW5zaW9uKVxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVsYXRpdmVQYXRoICsgZmlsZUV4dGVuc2lvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgQW1wbGlmeSBCYWNrZW5kIG5vdCBmb3VuZCBpbiAke3RoaXMucm9vdERpcn0uIEFtcGxpZnkgQmFja2VuZCBtdXN0IGJlIGRlZmluZWQgaW4gYW1wbGlmeS9iYWNrZW5kLih0c3xqc3xjanN8bWpzKWBcbiAgICApO1xuICB9O1xufVxuIl19
@@ -0,0 +1,22 @@
1
+ import { BackendIdentifier } from '@aws-amplify/plugin-types';
2
+ /**
3
+ * Provides static methods for converting BackendIdentifier to/from a stack name string
4
+ */
5
+ export declare class BackendIdentifierConversions {
6
+ /**
7
+ * Convert a stack name to a BackendIdentifier
8
+ *
9
+ * If the stack name is ambiguous, undefined is returned
10
+ */
11
+ static fromStackName(stackName?: string): BackendIdentifier | undefined;
12
+ /**
13
+ * Convert a BackendIdentifier to a stack name.
14
+ *
15
+ * !!!DANGER!!!
16
+ * !!!DO NOT CHANGE THIS UNLESS YOU ARE 100% SURE YOU UNDERSTAND THE CONSEQUENCES!!!
17
+ *
18
+ * Changing this method will change how stack names are generated which could be a massive breaking change for existing Amplify stacks.
19
+ */
20
+ static toStackName(backendId: BackendIdentifier): string;
21
+ }
22
+ //# sourceMappingURL=backend_identifier_conversions.d.ts.map
@@ -0,0 +1,86 @@
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
+ static fromStackName(stackName) {
19
+ if (!stackName) {
20
+ return;
21
+ }
22
+ const parts = stackName.split('-');
23
+ if (parts.length !== 5) {
24
+ return;
25
+ }
26
+ const [prefix, namespace, instance, type, hash] = parts;
27
+ if (prefix !== AMPLIFY_PREFIX) {
28
+ return;
29
+ }
30
+ if (type !== 'sandbox' && type !== 'branch') {
31
+ return;
32
+ }
33
+ return {
34
+ namespace,
35
+ name: instance,
36
+ type: type,
37
+ hash,
38
+ };
39
+ }
40
+ /**
41
+ * Convert a BackendIdentifier to a stack name.
42
+ *
43
+ * !!!DANGER!!!
44
+ * !!!DO NOT CHANGE THIS UNLESS YOU ARE 100% SURE YOU UNDERSTAND THE CONSEQUENCES!!!
45
+ *
46
+ * Changing this method will change how stack names are generated which could be a massive breaking change for existing Amplify stacks.
47
+ */
48
+ static toStackName(backendId) {
49
+ const hash = getHash(backendId);
50
+ // only take the first 50 chars here to make sure there is room in the stack name for the namespace as well
51
+ const name = sanitizeChars(backendId.name).slice(0, 50);
52
+ const namespaceMaxLength = STACK_NAME_LENGTH_LIMIT -
53
+ AMPLIFY_PREFIX.length -
54
+ backendId.type.length -
55
+ name.length -
56
+ NUM_DASHES -
57
+ HASH_LENGTH;
58
+ const namespace = sanitizeChars(backendId.namespace).slice(0, namespaceMaxLength - 1);
59
+ return ['amplify', namespace, name, backendId.type, hash].join('-');
60
+ }
61
+ }
62
+ exports.BackendIdentifierConversions = BackendIdentifierConversions;
63
+ /**
64
+ * Gets a stable hash from the namespace and name in the backendId.
65
+ *
66
+ * If the backendId already includes a hash, this hash is returned as-is.
67
+ *
68
+ * !!!DANGER!!!
69
+ * !!!DO NOT CHANGE THIS UNLESS YOU ARE 100% SURE YOU UNDERSTAND THE CONSEQUENCES!!!
70
+ *
71
+ * Changing this hash algorithm will change how stack names are generated which would be a massive breaking change for existing Amplify stacks.
72
+ */
73
+ const getHash = (backendId) => backendId.hash ??
74
+ // 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
75
+ (0, crypto_1.createHash)('sha512')
76
+ .update(backendId.namespace)
77
+ .update(backendId.name)
78
+ .digest('hex')
79
+ .slice(0, HASH_LENGTH);
80
+ /**
81
+ * Remove all non-alphanumeric characters from the input string
82
+ */
83
+ const sanitizeChars = (str) => {
84
+ return str.replace(/[^A-Za-z0-9]/g, '');
85
+ };
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZF9pZGVudGlmaWVyX2NvbnZlcnNpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JhY2tlbmRfaWRlbnRpZmllcl9jb252ZXJzaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxtQ0FBb0M7QUFFcEMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUM7QUFDcEMsTUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDO0FBQ2pDLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztBQUN2QixNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFFckI7O0dBRUc7QUFDSCxNQUFhLDRCQUE0QjtJQUN2Qzs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFrQjtRQUNyQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2QsT0FBTztTQUNSO1FBQ0QsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLE9BQU87U0FDUjtRQUNELE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ3hELElBQUksTUFBTSxLQUFLLGNBQWMsRUFBRTtZQUM3QixPQUFPO1NBQ1I7UUFDRCxJQUFJLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUMzQyxPQUFPO1NBQ1I7UUFFRCxPQUFPO1lBQ0wsU0FBUztZQUNULElBQUksRUFBRSxRQUFRO1lBQ2QsSUFBSSxFQUFFLElBQTRCO1lBQ2xDLElBQUk7U0FDTCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQTRCO1FBQzdDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVoQywyR0FBMkc7UUFDM0csTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXhELE1BQU0sa0JBQWtCLEdBQ3RCLHVCQUF1QjtZQUN2QixjQUFjLENBQUMsTUFBTTtZQUNyQixTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDckIsSUFBSSxDQUFDLE1BQU07WUFDWCxVQUFVO1lBQ1YsV0FBVyxDQUFDO1FBRWQsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQ3hELENBQUMsRUFDRCxrQkFBa0IsR0FBRyxDQUFDLENBQ3ZCLENBQUM7UUFFRixPQUFPLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEUsQ0FBQztDQUNGO0FBM0RELG9FQTJEQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sT0FBTyxHQUFHLENBQUMsU0FBNEIsRUFBVSxFQUFFLENBQ3ZELFNBQVMsQ0FBQyxJQUFJO0lBQ2QsaUxBQWlMO0lBQ2pMLElBQUEsbUJBQVUsRUFBQyxRQUFRLENBQUM7U0FDakIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7U0FDM0IsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7U0FDdEIsTUFBTSxDQUFDLEtBQUssQ0FBQztTQUNiLEtBQUssQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFFM0I7O0dBRUc7QUFDSCxNQUFNLGFBQWEsR0FBRyxDQUFDLEdBQVcsRUFBVSxFQUFFO0lBQzVDLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDMUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFja2VuZElkZW50aWZpZXIgfSBmcm9tICdAYXdzLWFtcGxpZnkvcGx1Z2luLXR5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUhhc2ggfSBmcm9tICdjcnlwdG8nO1xuXG5jb25zdCBTVEFDS19OQU1FX0xFTkdUSF9MSU1JVCA9IDEyODtcbmNvbnN0IEFNUExJRllfUFJFRklYID0gJ2FtcGxpZnknO1xuY29uc3QgSEFTSF9MRU5HVEggPSAxMDtcbmNvbnN0IE5VTV9EQVNIRVMgPSA0O1xuXG4vKipcbiAqIFByb3ZpZGVzIHN0YXRpYyBtZXRob2RzIGZvciBjb252ZXJ0aW5nIEJhY2tlbmRJZGVudGlmaWVyIHRvL2Zyb20gYSBzdGFjayBuYW1lIHN0cmluZ1xuICovXG5leHBvcnQgY2xhc3MgQmFja2VuZElkZW50aWZpZXJDb252ZXJzaW9ucyB7XG4gIC8qKlxuICAgKiBDb252ZXJ0IGEgc3RhY2sgbmFtZSB0byBhIEJhY2tlbmRJZGVudGlmaWVyXG4gICAqXG4gICAqIElmIHRoZSBzdGFjayBuYW1lIGlzIGFtYmlndW91cywgdW5kZWZpbmVkIGlzIHJldHVybmVkXG4gICAqL1xuICBzdGF0aWMgZnJvbVN0YWNrTmFtZShzdGFja05hbWU/OiBzdHJpbmcpOiBCYWNrZW5kSWRlbnRpZmllciB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFzdGFja05hbWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGFydHMgPSBzdGFja05hbWUuc3BsaXQoJy0nKTtcbiAgICBpZiAocGFydHMubGVuZ3RoICE9PSA1KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IFtwcmVmaXgsIG5hbWVzcGFjZSwgaW5zdGFuY2UsIHR5cGUsIGhhc2hdID0gcGFydHM7XG4gICAgaWYgKHByZWZpeCAhPT0gQU1QTElGWV9QUkVGSVgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHR5cGUgIT09ICdzYW5kYm94JyAmJiB0eXBlICE9PSAnYnJhbmNoJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBuYW1lc3BhY2UsXG4gICAgICBuYW1lOiBpbnN0YW5jZSxcbiAgICAgIHR5cGU6IHR5cGUgYXMgJ3NhbmRib3gnIHwgJ2JyYW5jaCcsXG4gICAgICBoYXNoLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBhIEJhY2tlbmRJZGVudGlmaWVyIHRvIGEgc3RhY2sgbmFtZS5cbiAgICpcbiAgICogISEhREFOR0VSISEhXG4gICAqICEhIURPIE5PVCBDSEFOR0UgVEhJUyBVTkxFU1MgWU9VIEFSRSAxMDAlIFNVUkUgWU9VIFVOREVSU1RBTkQgVEhFIENPTlNFUVVFTkNFUyEhIVxuICAgKlxuICAgKiBDaGFuZ2luZyB0aGlzIG1ldGhvZCB3aWxsIGNoYW5nZSBob3cgc3RhY2sgbmFtZXMgYXJlIGdlbmVyYXRlZCB3aGljaCBjb3VsZCBiZSBhIG1hc3NpdmUgYnJlYWtpbmcgY2hhbmdlIGZvciBleGlzdGluZyBBbXBsaWZ5IHN0YWNrcy5cbiAgICovXG4gIHN0YXRpYyB0b1N0YWNrTmFtZShiYWNrZW5kSWQ6IEJhY2tlbmRJZGVudGlmaWVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBoYXNoID0gZ2V0SGFzaChiYWNrZW5kSWQpO1xuXG4gICAgLy8gb25seSB0YWtlIHRoZSBmaXJzdCA1MCBjaGFycyBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBpcyByb29tIGluIHRoZSBzdGFjayBuYW1lIGZvciB0aGUgbmFtZXNwYWNlIGFzIHdlbGxcbiAgICBjb25zdCBuYW1lID0gc2FuaXRpemVDaGFycyhiYWNrZW5kSWQubmFtZSkuc2xpY2UoMCwgNTApO1xuXG4gICAgY29uc3QgbmFtZXNwYWNlTWF4TGVuZ3RoID1cbiAgICAgIFNUQUNLX05BTUVfTEVOR1RIX0xJTUlUIC1cbiAgICAgIEFNUExJRllfUFJFRklYLmxlbmd0aCAtXG4gICAgICBiYWNrZW5kSWQudHlwZS5sZW5ndGggLVxuICAgICAgbmFtZS5sZW5ndGggLVxuICAgICAgTlVNX0RBU0hFUyAtXG4gICAgICBIQVNIX0xFTkdUSDtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IHNhbml0aXplQ2hhcnMoYmFja2VuZElkLm5hbWVzcGFjZSkuc2xpY2UoXG4gICAgICAwLFxuICAgICAgbmFtZXNwYWNlTWF4TGVuZ3RoIC0gMVxuICAgICk7XG5cbiAgICByZXR1cm4gWydhbXBsaWZ5JywgbmFtZXNwYWNlLCBuYW1lLCBiYWNrZW5kSWQudHlwZSwgaGFzaF0uam9pbignLScpO1xuICB9XG59XG5cbi8qKlxuICogR2V0cyBhIHN0YWJsZSBoYXNoIGZyb20gdGhlIG5hbWVzcGFjZSBhbmQgbmFtZSBpbiB0aGUgYmFja2VuZElkLlxuICpcbiAqIElmIHRoZSBiYWNrZW5kSWQgYWxyZWFkeSBpbmNsdWRlcyBhIGhhc2gsIHRoaXMgaGFzaCBpcyByZXR1cm5lZCBhcy1pcy5cbiAqXG4gKiAhISFEQU5HRVIhISFcbiAqICEhIURPIE5PVCBDSEFOR0UgVEhJUyBVTkxFU1MgWU9VIEFSRSAxMDAlIFNVUkUgWU9VIFVOREVSU1RBTkQgVEhFIENPTlNFUVVFTkNFUyEhIVxuICpcbiAqIENoYW5naW5nIHRoaXMgaGFzaCBhbGdvcml0aG0gd2lsbCBjaGFuZ2UgaG93IHN0YWNrIG5hbWVzIGFyZSBnZW5lcmF0ZWQgd2hpY2ggd291bGQgYmUgYSBtYXNzaXZlIGJyZWFraW5nIGNoYW5nZSBmb3IgZXhpc3RpbmcgQW1wbGlmeSBzdGFja3MuXG4gKi9cbmNvbnN0IGdldEhhc2ggPSAoYmFja2VuZElkOiBCYWNrZW5kSWRlbnRpZmllcik6IHN0cmluZyA9PlxuICBiYWNrZW5kSWQuaGFzaCA/P1xuICAvLyBtZDUgd291bGQgYmUgc3VmZmljaWVudCBoZXJlIGJlY2F1c2UgdGhpcyBoYXNoIGRvZXMgbm90IG5lZWQgdG8gYmUgY3J5cHRvZ3JhcGhpY2FsbHkgc2VjdXJlLCBidXQgdGhpcyBlbnN1cmVzIHRoYXQgd2UgZG9uJ3QgZ2V0IHVubmVjZXNzYXJpbHkgZmxhZ2dlZCBieSBzb21lIHNlY3VyaXR5IHNjYW5uZXJcbiAgY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAudXBkYXRlKGJhY2tlbmRJZC5uYW1lc3BhY2UpXG4gICAgLnVwZGF0ZShiYWNrZW5kSWQubmFtZSlcbiAgICAuZGlnZXN0KCdoZXgnKVxuICAgIC5zbGljZSgwLCBIQVNIX0xFTkdUSCk7XG5cbi8qKlxuICogUmVtb3ZlIGFsbCBub24tYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgZnJvbSB0aGUgaW5wdXQgc3RyaW5nXG4gKi9cbmNvbnN0IHNhbml0aXplQ2hhcnMgPSAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gc3RyLnJlcGxhY2UoL1teQS1aYS16MC05XS9nLCAnJyk7XG59O1xuIl19
@@ -1,9 +1,12 @@
1
1
  /**
2
2
  * Keys for values that are passed between the Amplify deployment engine and the CDK synth process via CDK Context
3
3
  *
4
- * This enum does not currently capture all context keys. We can refactor incrementally as we need to use these keys in multiple places
4
+ * !!!WARNING!!!
5
+ * Changing the values of these keys could be a breaking change
5
6
  */
6
7
  export declare enum CDKContextKey {
7
- DEPLOYMENT_TYPE = "deployment-type"
8
+ BACKEND_NAME = "amplify-backend-name",
9
+ BACKEND_NAMESPACE = "amplify-backend-namespace",
10
+ DEPLOYMENT_TYPE = "amplify-backend-type"
8
11
  }
9
12
  //# sourceMappingURL=cdk_context_key.d.ts.map
@@ -4,10 +4,13 @@ exports.CDKContextKey = void 0;
4
4
  /**
5
5
  * Keys for values that are passed between the Amplify deployment engine and the CDK synth process via CDK Context
6
6
  *
7
- * This enum does not currently capture all context keys. We can refactor incrementally as we need to use these keys in multiple places
7
+ * !!!WARNING!!!
8
+ * Changing the values of these keys could be a breaking change
8
9
  */
9
10
  var CDKContextKey;
10
11
  (function (CDKContextKey) {
11
- CDKContextKey["DEPLOYMENT_TYPE"] = "deployment-type";
12
+ CDKContextKey["BACKEND_NAME"] = "amplify-backend-name";
13
+ CDKContextKey["BACKEND_NAMESPACE"] = "amplify-backend-namespace";
14
+ CDKContextKey["DEPLOYMENT_TYPE"] = "amplify-backend-type";
12
15
  })(CDKContextKey || (exports.CDKContextKey = CDKContextKey = {}));
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrX2NvbnRleHRfa2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Nka19jb250ZXh0X2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7OztHQUlHO0FBQ0gsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLG9EQUFtQyxDQUFBO0FBQ3JDLENBQUMsRUFGVyxhQUFhLDZCQUFiLGFBQWEsUUFFeEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtleXMgZm9yIHZhbHVlcyB0aGF0IGFyZSBwYXNzZWQgYmV0d2VlbiB0aGUgQW1wbGlmeSBkZXBsb3ltZW50IGVuZ2luZSBhbmQgdGhlIENESyBzeW50aCBwcm9jZXNzIHZpYSBDREsgQ29udGV4dFxuICpcbiAqIFRoaXMgZW51bSBkb2VzIG5vdCBjdXJyZW50bHkgY2FwdHVyZSBhbGwgY29udGV4dCBrZXlzLiBXZSBjYW4gcmVmYWN0b3IgaW5jcmVtZW50YWxseSBhcyB3ZSBuZWVkIHRvIHVzZSB0aGVzZSBrZXlzIGluIG11bHRpcGxlIHBsYWNlc1xuICovXG5leHBvcnQgZW51bSBDREtDb250ZXh0S2V5IHtcbiAgREVQTE9ZTUVOVF9UWVBFID0gJ2RlcGxveW1lbnQtdHlwZScsXG59XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrX2NvbnRleHRfa2V5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Nka19jb250ZXh0X2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7R0FLRztBQUNILElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUN2QixzREFBcUMsQ0FBQTtJQUNyQyxnRUFBK0MsQ0FBQTtJQUMvQyx5REFBd0MsQ0FBQTtBQUMxQyxDQUFDLEVBSlcsYUFBYSw2QkFBYixhQUFhLFFBSXhCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLZXlzIGZvciB2YWx1ZXMgdGhhdCBhcmUgcGFzc2VkIGJldHdlZW4gdGhlIEFtcGxpZnkgZGVwbG95bWVudCBlbmdpbmUgYW5kIHRoZSBDREsgc3ludGggcHJvY2VzcyB2aWEgQ0RLIENvbnRleHRcbiAqXG4gKiAhISFXQVJOSU5HISEhXG4gKiBDaGFuZ2luZyB0aGUgdmFsdWVzIG9mIHRoZXNlIGtleXMgY291bGQgYmUgYSBicmVha2luZyBjaGFuZ2VcbiAqL1xuZXhwb3J0IGVudW0gQ0RLQ29udGV4dEtleSB7XG4gIEJBQ0tFTkRfTkFNRSA9ICdhbXBsaWZ5LWJhY2tlbmQtbmFtZScsXG4gIEJBQ0tFTkRfTkFNRVNQQUNFID0gJ2FtcGxpZnktYmFja2VuZC1uYW1lc3BhY2UnLFxuICBERVBMT1lNRU5UX1RZUEUgPSAnYW1wbGlmeS1iYWNrZW5kLXR5cGUnLFxufVxuIl19
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Extracts a file path from a given stack trace line
3
+ */
4
+ export declare class FilePathExtractor {
5
+ private readonly stackTraceLine;
6
+ /**
7
+ * Constructor for FilePathExtractor
8
+ */
9
+ constructor(stackTraceLine: string);
10
+ extract: () => string | undefined;
11
+ private standardizePath;
12
+ }
13
+ //# sourceMappingURL=extract_file_path_from_stack_trace_line.d.ts.map
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilePathExtractor = void 0;
4
+ const url_1 = require("url");
5
+ /**
6
+ * Regex that pulls out the path from a stack trace line. Works for both unix and windows paths and cjs and esm loaders
7
+ *
8
+ * For ESM loaders in TS files or CJS loaders
9
+ * The line is something like "at SymbolName (/some/path/to/project/root/backend/auth.ts:3:21)"
10
+ * or on Windows "at SymbolName (C:\some\path\to\project\root\backend\auth.ts:3:21)"
11
+ *
12
+ * For ESM loaders in JS files
13
+ * The line is something like "at file:///some/path/to/project/root/backend/auth.ts:14:28"
14
+ * or on Windows " at file:///C:\some\path\to\project\root\backend\auth.ts:3:21"
15
+ *
16
+ * This regex pulls out the file path into the "filepath" named matching group
17
+ * In the above examples that would be "/some/path/to/project/root/backend/auth.ts" or "C:\some\path\to\project\root\backend\auth.ts"
18
+ *
19
+ * Instead of combining both matches with single regex, we create two to keep it simple and manageable.
20
+ *
21
+ */
22
+ const extractFilePathFromStackTraceLineRegexes = [
23
+ /\((?<filepath>(\w:)?[^:]*)[:\d]*\)/,
24
+ /at (?<filepath>.*\.\w[^:\d]*)[:\d]*/,
25
+ ];
26
+ /**
27
+ * Extracts a file path from a given stack trace line
28
+ */
29
+ class FilePathExtractor {
30
+ stackTraceLine;
31
+ /**
32
+ * Constructor for FilePathExtractor
33
+ */
34
+ constructor(stackTraceLine) {
35
+ this.stackTraceLine = stackTraceLine;
36
+ }
37
+ extract = () => {
38
+ for (const regex of extractFilePathFromStackTraceLineRegexes) {
39
+ const match = this.stackTraceLine.match(regex);
40
+ if (match?.groups?.filepath) {
41
+ return this.standardizePath(match?.groups?.filepath);
42
+ }
43
+ }
44
+ return undefined;
45
+ };
46
+ // The input can be either a file path or a file URL. If it's a file URL, convert it to the path.
47
+ standardizePath = (maybeUrl) => {
48
+ try {
49
+ const url = new URL(maybeUrl);
50
+ if (url.protocol === 'file:') {
51
+ return (0, url_1.fileURLToPath)(url);
52
+ }
53
+ return maybeUrl;
54
+ }
55
+ catch {
56
+ return maybeUrl;
57
+ }
58
+ };
59
+ }
60
+ exports.FilePathExtractor = FilePathExtractor;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdF9maWxlX3BhdGhfZnJvbV9zdGFja190cmFjZV9saW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2V4dHJhY3RfZmlsZV9wYXRoX2Zyb21fc3RhY2tfdHJhY2VfbGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBb0M7QUFFcEM7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLHdDQUF3QyxHQUFHO0lBQy9DLG9DQUFvQztJQUNwQyxxQ0FBcUM7Q0FDdEMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBYSxpQkFBaUI7SUFJQztJQUg3Qjs7T0FFRztJQUNILFlBQTZCLGNBQXNCO1FBQXRCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO0lBQUcsQ0FBQztJQUV2RCxPQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ2IsS0FBSyxNQUFNLEtBQUssSUFBSSx3Q0FBd0MsRUFBRTtZQUM1RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQyxJQUFJLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO2dCQUMzQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQzthQUN0RDtTQUNGO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0lBRUYsaUdBQWlHO0lBQ3pGLGVBQWUsR0FBRyxDQUFDLFFBQWdCLEVBQVUsRUFBRTtRQUNyRCxJQUFJO1lBQ0YsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRTtnQkFDNUIsT0FBTyxJQUFBLG1CQUFhLEVBQUMsR0FBRyxDQUFDLENBQUM7YUFDM0I7WUFDRCxPQUFPLFFBQVEsQ0FBQztTQUNqQjtRQUFDLE1BQU07WUFDTixPQUFPLFFBQVEsQ0FBQztTQUNqQjtJQUNILENBQUMsQ0FBQztDQUNIO0FBNUJELDhDQTRCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpbGVVUkxUb1BhdGggfSBmcm9tICd1cmwnO1xuXG4vKipcbiAqIFJlZ2V4IHRoYXQgcHVsbHMgb3V0IHRoZSBwYXRoIGZyb20gYSBzdGFjayB0cmFjZSBsaW5lLiBXb3JrcyBmb3IgYm90aCB1bml4IGFuZCB3aW5kb3dzIHBhdGhzIGFuZCBjanMgYW5kIGVzbSBsb2FkZXJzXG4gKlxuICogRm9yIEVTTSBsb2FkZXJzIGluIFRTIGZpbGVzIG9yIENKUyBsb2FkZXJzXG4gKiBUaGUgbGluZSBpcyBzb21ldGhpbmcgbGlrZSBcImF0IFN5bWJvbE5hbWUgKC9zb21lL3BhdGgvdG8vcHJvamVjdC9yb290L2JhY2tlbmQvYXV0aC50czozOjIxKVwiXG4gKiBvciBvbiBXaW5kb3dzIFwiYXQgU3ltYm9sTmFtZSAoQzpcXHNvbWVcXHBhdGhcXHRvXFxwcm9qZWN0XFxyb290XFxiYWNrZW5kXFxhdXRoLnRzOjM6MjEpXCJcbiAqXG4gKiBGb3IgRVNNIGxvYWRlcnMgaW4gSlMgZmlsZXNcbiAqIFRoZSBsaW5lIGlzIHNvbWV0aGluZyBsaWtlIFwiYXQgZmlsZTovLy9zb21lL3BhdGgvdG8vcHJvamVjdC9yb290L2JhY2tlbmQvYXV0aC50czoxNDoyOFwiXG4gKiBvciBvbiBXaW5kb3dzIFwiIGF0IGZpbGU6Ly8vQzpcXHNvbWVcXHBhdGhcXHRvXFxwcm9qZWN0XFxyb290XFxiYWNrZW5kXFxhdXRoLnRzOjM6MjFcIlxuICpcbiAqIFRoaXMgcmVnZXggcHVsbHMgb3V0IHRoZSBmaWxlIHBhdGggaW50byB0aGUgXCJmaWxlcGF0aFwiIG5hbWVkIG1hdGNoaW5nIGdyb3VwXG4gKiBJbiB0aGUgYWJvdmUgZXhhbXBsZXMgdGhhdCB3b3VsZCBiZSBcIi9zb21lL3BhdGgvdG8vcHJvamVjdC9yb290L2JhY2tlbmQvYXV0aC50c1wiIG9yIFwiQzpcXHNvbWVcXHBhdGhcXHRvXFxwcm9qZWN0XFxyb290XFxiYWNrZW5kXFxhdXRoLnRzXCJcbiAqXG4gKiBJbnN0ZWFkIG9mIGNvbWJpbmluZyBib3RoIG1hdGNoZXMgd2l0aCBzaW5nbGUgcmVnZXgsIHdlIGNyZWF0ZSB0d28gdG8ga2VlcCBpdCBzaW1wbGUgYW5kIG1hbmFnZWFibGUuXG4gKlxuICovXG5jb25zdCBleHRyYWN0RmlsZVBhdGhGcm9tU3RhY2tUcmFjZUxpbmVSZWdleGVzID0gW1xuICAvXFwoKD88ZmlsZXBhdGg+KFxcdzopP1teOl0qKVs6XFxkXSpcXCkvLFxuICAvYXQgKD88ZmlsZXBhdGg+LipcXC5cXHdbXjpcXGRdKilbOlxcZF0qLyxcbl07XG5cbi8qKlxuICogRXh0cmFjdHMgYSBmaWxlIHBhdGggZnJvbSBhIGdpdmVuIHN0YWNrIHRyYWNlIGxpbmVcbiAqL1xuZXhwb3J0IGNsYXNzIEZpbGVQYXRoRXh0cmFjdG9yIHtcbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yIGZvciBGaWxlUGF0aEV4dHJhY3RvclxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdGFja1RyYWNlTGluZTogc3RyaW5nKSB7fVxuXG4gIGV4dHJhY3QgPSAoKSA9PiB7XG4gICAgZm9yIChjb25zdCByZWdleCBvZiBleHRyYWN0RmlsZVBhdGhGcm9tU3RhY2tUcmFjZUxpbmVSZWdleGVzKSB7XG4gICAgICBjb25zdCBtYXRjaCA9IHRoaXMuc3RhY2tUcmFjZUxpbmUubWF0Y2gocmVnZXgpO1xuICAgICAgaWYgKG1hdGNoPy5ncm91cHM/LmZpbGVwYXRoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YW5kYXJkaXplUGF0aChtYXRjaD8uZ3JvdXBzPy5maWxlcGF0aCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLy8gVGhlIGlucHV0IGNhbiBiZSBlaXRoZXIgYSBmaWxlIHBhdGggb3IgYSBmaWxlIFVSTC4gSWYgaXQncyBhIGZpbGUgVVJMLCBjb252ZXJ0IGl0IHRvIHRoZSBwYXRoLlxuICBwcml2YXRlIHN0YW5kYXJkaXplUGF0aCA9IChtYXliZVVybDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdXJsID0gbmV3IFVSTChtYXliZVVybCk7XG4gICAgICBpZiAodXJsLnByb3RvY29sID09PSAnZmlsZTonKSB7XG4gICAgICAgIHJldHVybiBmaWxlVVJMVG9QYXRoKHVybCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbWF5YmVVcmw7XG4gICAgfSBjYXRjaCB7XG4gICAgICByZXR1cm4gbWF5YmVVcmw7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -1,4 +1,5 @@
1
- export * from './backend_deployment_type.js';
2
- export * from './unique_backend_identifier.js';
1
+ export * from './backend_identifier_conversions.js';
2
+ export * from './backend_entry_point_locator.js';
3
+ export * from './extract_file_path_from_stack_trace_line.js';
3
4
  export { CDKContextKey } from './cdk_context_key.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -15,8 +15,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.CDKContextKey = void 0;
18
- __exportStar(require("./backend_deployment_type.js"), exports);
19
- __exportStar(require("./unique_backend_identifier.js"), exports);
18
+ __exportStar(require("./backend_identifier_conversions.js"), exports);
19
+ __exportStar(require("./backend_entry_point_locator.js"), exports);
20
+ __exportStar(require("./extract_file_path_from_stack_trace_line.js"), exports);
20
21
  var cdk_context_key_js_1 = require("./cdk_context_key.js");
21
22
  Object.defineProperty(exports, "CDKContextKey", { enumerable: true, get: function () { return cdk_context_key_js_1.CDKContextKey; } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrREFBNkM7QUFDN0MsaUVBQStDO0FBQy9DLDJEQUFxRDtBQUE1QyxtSEFBQSxhQUFhLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2JhY2tlbmRfZGVwbG95bWVudF90eXBlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdW5pcXVlX2JhY2tlbmRfaWRlbnRpZmllci5qcyc7XG5leHBvcnQgeyBDREtDb250ZXh0S2V5IH0gZnJvbSAnLi9jZGtfY29udGV4dF9rZXkuanMnO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzRUFBb0Q7QUFDcEQsbUVBQWlEO0FBQ2pELCtFQUE2RDtBQUM3RCwyREFBcUQ7QUFBNUMsbUhBQUEsYUFBYSxPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYWNrZW5kX2lkZW50aWZpZXJfY29udmVyc2lvbnMuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9iYWNrZW5kX2VudHJ5X3BvaW50X2xvY2F0b3IuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9leHRyYWN0X2ZpbGVfcGF0aF9mcm9tX3N0YWNrX3RyYWNlX2xpbmUuanMnO1xuZXhwb3J0IHsgQ0RLQ29udGV4dEtleSB9IGZyb20gJy4vY2RrX2NvbnRleHRfa2V5LmpzJztcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/platform-core",
3
- "version": "0.1.3",
3
+ "version": "0.2.0",
4
4
  "type": "commonjs",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -19,6 +19,6 @@
19
19
  },
20
20
  "license": "Apache-2.0",
21
21
  "dependencies": {
22
- "@aws-amplify/plugin-types": "^0.3.0"
22
+ "@aws-amplify/plugin-types": "^0.4.0"
23
23
  }
24
24
  }
@@ -1,18 +1,26 @@
1
1
  import { IRole } from 'aws-cdk-lib/aws-iam';
2
- import { CfnIdentityPool, CfnIdentityPoolRoleAttachment, IUserPool, IUserPoolClient } from 'aws-cdk-lib/aws-cognito';
2
+ import { CfnIdentityPool, CfnIdentityPoolRoleAttachment, CfnUserPool, CfnUserPoolClient, IUserPool, IUserPoolClient } from 'aws-cdk-lib/aws-cognito';
3
3
  /**
4
4
  * Accessible Cfn resources from the Auth construct, which were generated during
5
5
  * initialization.
6
6
  */
7
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;
8
16
  /**
9
17
  * The generated CfnIdentityPool L1 resource.
10
18
  */
11
- identityPool: CfnIdentityPool;
19
+ cfnIdentityPool: CfnIdentityPool;
12
20
  /**
13
21
  * The generated CfnIdentityPoolRoleAttachment L1 resource.
14
22
  */
15
- identityPoolRoleAttachment: CfnIdentityPoolRoleAttachment;
23
+ cfnIdentityPoolRoleAttachment: CfnIdentityPoolRoleAttachment;
16
24
  };
17
25
  /**
18
26
  * Auth L2 and L1 resources.
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aF9yZXNvdXJjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXV0aF9yZXNvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSb2xlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQge1xuICBDZm5JZGVudGl0eVBvb2wsXG4gIENmbklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50LFxuICBJVXNlclBvb2wsXG4gIElVc2VyUG9vbENsaWVudCxcbn0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNvZ25pdG8nO1xuXG4vKipcbiAqIEFjY2Vzc2libGUgQ2ZuIHJlc291cmNlcyBmcm9tIHRoZSBBdXRoIGNvbnN0cnVjdCwgd2hpY2ggd2VyZSBnZW5lcmF0ZWQgZHVyaW5nXG4gKiBpbml0aWFsaXphdGlvbi5cbiAqL1xuZXhwb3J0IHR5cGUgQXV0aENmblJlc291cmNlcyA9IHtcbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgQ2ZuSWRlbnRpdHlQb29sIEwxIHJlc291cmNlLlxuICAgKi9cbiAgaWRlbnRpdHlQb29sOiBDZm5JZGVudGl0eVBvb2w7XG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIENmbklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50IEwxIHJlc291cmNlLlxuICAgKi9cbiAgaWRlbnRpdHlQb29sUm9sZUF0dGFjaG1lbnQ6IENmbklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50O1xufTtcbi8qKlxuICogQXV0aCBMMiBhbmQgTDEgcmVzb3VyY2VzLlxuICovXG5leHBvcnQgdHlwZSBBdXRoUmVzb3VyY2VzID0ge1xuICAvKipcbiAgICogVGhlIGdlbmVyYXRlZCBVc2VyUG9vbCBMMiBSZXNvdXJjZS5cbiAgICovXG4gIHVzZXJQb29sOiBJVXNlclBvb2w7XG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIFVzZXJQb29sQ2xpZW50IEwyIFJlc291cmNlLlxuICAgKi9cbiAgdXNlclBvb2xDbGllbnQ6IElVc2VyUG9vbENsaWVudDtcbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgYXV0aCByb2xlLlxuICAgKi9cbiAgYXV0aGVudGljYXRlZFVzZXJJYW1Sb2xlOiBJUm9sZTtcbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgdW5hdXRoIHJvbGUuXG4gICAqL1xuICB1bmF1dGhlbnRpY2F0ZWRVc2VySWFtUm9sZTogSVJvbGU7XG4gIC8qKlxuICAgKiBMMSBDZm4gUmVzb3VyY2VzLCBmb3Igd2hlbiBkaXBwaW5nIGRvd24gYSBsZXZlbCBvZiBhYnN0cmFjdGlvbiBpcyBkZXNpcmFibGUuXG4gICAqL1xuICBjZm5SZXNvdXJjZXM6IEF1dGhDZm5SZXNvdXJjZXM7XG59O1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aF9yZXNvdXJjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXV0aF9yZXNvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElSb2xlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQge1xuICBDZm5JZGVudGl0eVBvb2wsXG4gIENmbklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50LFxuICBDZm5Vc2VyUG9vbCxcbiAgQ2ZuVXNlclBvb2xDbGllbnQsXG4gIElVc2VyUG9vbCxcbiAgSVVzZXJQb29sQ2xpZW50LFxufSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29nbml0byc7XG5cbi8qKlxuICogQWNjZXNzaWJsZSBDZm4gcmVzb3VyY2VzIGZyb20gdGhlIEF1dGggY29uc3RydWN0LCB3aGljaCB3ZXJlIGdlbmVyYXRlZCBkdXJpbmdcbiAqIGluaXRpYWxpemF0aW9uLlxuICovXG5leHBvcnQgdHlwZSBBdXRoQ2ZuUmVzb3VyY2VzID0ge1xuICAvKipcbiAgICogVGhlIGdlbmVyYXRlZCBDZm5Vc2VyUG9vbCBMMSByZXNvdXJjZS5cbiAgICovXG4gIGNmblVzZXJQb29sOiBDZm5Vc2VyUG9vbDtcbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgQ2ZuVXNlclBvb2xDbGllbnQgTDEgcmVzb3VyY2UuXG4gICAqL1xuICBjZm5Vc2VyUG9vbENsaWVudDogQ2ZuVXNlclBvb2xDbGllbnQ7XG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIENmbklkZW50aXR5UG9vbCBMMSByZXNvdXJjZS5cbiAgICovXG4gIGNmbklkZW50aXR5UG9vbDogQ2ZuSWRlbnRpdHlQb29sO1xuICAvKipcbiAgICogVGhlIGdlbmVyYXRlZCBDZm5JZGVudGl0eVBvb2xSb2xlQXR0YWNobWVudCBMMSByZXNvdXJjZS5cbiAgICovXG4gIGNmbklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50OiBDZm5JZGVudGl0eVBvb2xSb2xlQXR0YWNobWVudDtcbn07XG4vKipcbiAqIEF1dGggTDIgYW5kIEwxIHJlc291cmNlcy5cbiAqL1xuZXhwb3J0IHR5cGUgQXV0aFJlc291cmNlcyA9IHtcbiAgLyoqXG4gICAqIFRoZSBnZW5lcmF0ZWQgVXNlclBvb2wgTDIgUmVzb3VyY2UuXG4gICAqL1xuICB1c2VyUG9vbDogSVVzZXJQb29sO1xuICAvKipcbiAgICogVGhlIGdlbmVyYXRlZCBVc2VyUG9vbENsaWVudCBMMiBSZXNvdXJjZS5cbiAgICovXG4gIHVzZXJQb29sQ2xpZW50OiBJVXNlclBvb2xDbGllbnQ7XG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIGF1dGggcm9sZS5cbiAgICovXG4gIGF1dGhlbnRpY2F0ZWRVc2VySWFtUm9sZTogSVJvbGU7XG4gIC8qKlxuICAgKiBUaGUgZ2VuZXJhdGVkIHVuYXV0aCByb2xlLlxuICAgKi9cbiAgdW5hdXRoZW50aWNhdGVkVXNlcklhbVJvbGU6IElSb2xlO1xuICAvKipcbiAgICogTDEgQ2ZuIFJlc291cmNlcywgZm9yIHdoZW4gZGlwcGluZyBkb3duIGEgbGV2ZWwgb2YgYWJzdHJhY3Rpb24gaXMgZGVzaXJhYmxlLlxuICAgKi9cbiAgY2ZuUmVzb3VyY2VzOiBBdXRoQ2ZuUmVzb3VyY2VzO1xufTtcbiJdfQ==
@@ -0,0 +1,56 @@
1
+ import { DeploymentType } from './deployment_type';
2
+ /**
3
+ * These are some utility types to make the BackendIdentifier a bit more self-documenting
4
+ */
5
+ export type AppId = string;
6
+ export type ProjectName = string;
7
+ export type BranchName = string;
8
+ export type SandboxName = string;
9
+ /**
10
+ * This tuple defines the constituent parts that are used to construct backend stack names
11
+ * The stack name becomes what identifies a deployed backend.
12
+ *
13
+ * To translate to/from a stack name, use the utility methods in @aws-amplify/platform-core
14
+ */
15
+ export type BackendIdentifier = {
16
+ /**
17
+ * The Amplify AppId for the backend
18
+ */
19
+ namespace: Readonly<AppId>;
20
+ /**
21
+ * The Amplify branch name for the backend
22
+ */
23
+ name: Readonly<BranchName>;
24
+ /**
25
+ * Const that determines this BackendIdentifier is for a branch backend
26
+ */
27
+ type: Readonly<Extract<DeploymentType, 'branch'>>;
28
+ /**
29
+ * Optional hash for consistent stack naming in cases where namespace or name contain characters that can't be serialized into a stack name
30
+ */
31
+ hash?: Readonly<string>;
32
+ } | {
33
+ /**
34
+ * The project name for the sandbox.
35
+ *
36
+ * While this type does not enforce any specific behavior, at the time of writing, this value defaults to package.json#name when running sandbox commands
37
+ * Consult upstream code for exact usage.
38
+ */
39
+ namespace: Readonly<ProjectName>;
40
+ /**
41
+ * The name of this sandbox.
42
+ *
43
+ * While this type does not enforce any specific behavior, at the time of writing, this value defaults to the current local username and can be overridden with the --name argument to sandbox.
44
+ * Consult upstream code for exact usage.
45
+ */
46
+ name: Readonly<SandboxName>;
47
+ /**
48
+ * Const that determines this BackendIdentifier is for a sandbox backend
49
+ */
50
+ type: Readonly<Extract<DeploymentType, 'sandbox'>>;
51
+ /**
52
+ * Optional hash for consistent stack naming in cases where namespace or name contain characters that can't be serialized into a stack name
53
+ */
54
+ hash?: Readonly<string>;
55
+ };
56
+ //# sourceMappingURL=backend_identifier.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZF9pZGVudGlmaWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2JhY2tlbmRfaWRlbnRpZmllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVwbG95bWVudFR5cGUgfSBmcm9tICcuL2RlcGxveW1lbnRfdHlwZSc7XG5cbi8qKlxuICogVGhlc2UgYXJlIHNvbWUgdXRpbGl0eSB0eXBlcyB0byBtYWtlIHRoZSBCYWNrZW5kSWRlbnRpZmllciBhIGJpdCBtb3JlIHNlbGYtZG9jdW1lbnRpbmdcbiAqL1xuZXhwb3J0IHR5cGUgQXBwSWQgPSBzdHJpbmc7XG5leHBvcnQgdHlwZSBQcm9qZWN0TmFtZSA9IHN0cmluZztcbmV4cG9ydCB0eXBlIEJyYW5jaE5hbWUgPSBzdHJpbmc7XG5leHBvcnQgdHlwZSBTYW5kYm94TmFtZSA9IHN0cmluZztcblxuLyoqXG4gKiBUaGlzIHR1cGxlIGRlZmluZXMgdGhlIGNvbnN0aXR1ZW50IHBhcnRzIHRoYXQgYXJlIHVzZWQgdG8gY29uc3RydWN0IGJhY2tlbmQgc3RhY2sgbmFtZXNcbiAqIFRoZSBzdGFjayBuYW1lIGJlY29tZXMgd2hhdCBpZGVudGlmaWVzIGEgZGVwbG95ZWQgYmFja2VuZC5cbiAqXG4gKiBUbyB0cmFuc2xhdGUgdG8vZnJvbSBhIHN0YWNrIG5hbWUsIHVzZSB0aGUgdXRpbGl0eSBtZXRob2RzIGluIEBhd3MtYW1wbGlmeS9wbGF0Zm9ybS1jb3JlXG4gKi9cbmV4cG9ydCB0eXBlIEJhY2tlbmRJZGVudGlmaWVyID1cbiAgfCB7XG4gICAgICAvKipcbiAgICAgICAqIFRoZSBBbXBsaWZ5IEFwcElkIGZvciB0aGUgYmFja2VuZFxuICAgICAgICovXG4gICAgICBuYW1lc3BhY2U6IFJlYWRvbmx5PEFwcElkPjtcbiAgICAgIC8qKlxuICAgICAgICogVGhlIEFtcGxpZnkgYnJhbmNoIG5hbWUgZm9yIHRoZSBiYWNrZW5kXG4gICAgICAgKi9cbiAgICAgIG5hbWU6IFJlYWRvbmx5PEJyYW5jaE5hbWU+O1xuICAgICAgLyoqXG4gICAgICAgKiBDb25zdCB0aGF0IGRldGVybWluZXMgdGhpcyBCYWNrZW5kSWRlbnRpZmllciBpcyBmb3IgYSBicmFuY2ggYmFja2VuZFxuICAgICAgICovXG4gICAgICB0eXBlOiBSZWFkb25seTxFeHRyYWN0PERlcGxveW1lbnRUeXBlLCAnYnJhbmNoJz4+O1xuICAgICAgLyoqXG4gICAgICAgKiBPcHRpb25hbCBoYXNoIGZvciBjb25zaXN0ZW50IHN0YWNrIG5hbWluZyBpbiBjYXNlcyB3aGVyZSBuYW1lc3BhY2Ugb3IgbmFtZSBjb250YWluIGNoYXJhY3RlcnMgdGhhdCBjYW4ndCBiZSBzZXJpYWxpemVkIGludG8gYSBzdGFjayBuYW1lXG4gICAgICAgKi9cbiAgICAgIGhhc2g/OiBSZWFkb25seTxzdHJpbmc+O1xuICAgIH1cbiAgfCB7XG4gICAgICAvKipcbiAgICAgICAqIFRoZSBwcm9qZWN0IG5hbWUgZm9yIHRoZSBzYW5kYm94LlxuICAgICAgICpcbiAgICAgICAqIFdoaWxlIHRoaXMgdHlwZSBkb2VzIG5vdCBlbmZvcmNlIGFueSBzcGVjaWZpYyBiZWhhdmlvciwgYXQgdGhlIHRpbWUgb2Ygd3JpdGluZywgdGhpcyB2YWx1ZSBkZWZhdWx0cyB0byBwYWNrYWdlLmpzb24jbmFtZSB3aGVuIHJ1bm5pbmcgc2FuZGJveCBjb21tYW5kc1xuICAgICAgICogQ29uc3VsdCB1cHN0cmVhbSBjb2RlIGZvciBleGFjdCB1c2FnZS5cbiAgICAgICAqL1xuICAgICAgbmFtZXNwYWNlOiBSZWFkb25seTxQcm9qZWN0TmFtZT47XG4gICAgICAvKipcbiAgICAgICAqIFRoZSBuYW1lIG9mIHRoaXMgc2FuZGJveC5cbiAgICAgICAqXG4gICAgICAgKiBXaGlsZSB0aGlzIHR5cGUgZG9lcyBub3QgZW5mb3JjZSBhbnkgc3BlY2lmaWMgYmVoYXZpb3IsIGF0IHRoZSB0aW1lIG9mIHdyaXRpbmcsIHRoaXMgdmFsdWUgZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgbG9jYWwgdXNlcm5hbWUgYW5kIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggdGhlIC0tbmFtZSBhcmd1bWVudCB0byBzYW5kYm94LlxuICAgICAgICogQ29uc3VsdCB1cHN0cmVhbSBjb2RlIGZvciBleGFjdCB1c2FnZS5cbiAgICAgICAqL1xuICAgICAgbmFtZTogUmVhZG9ubHk8U2FuZGJveE5hbWU+O1xuICAgICAgLyoqXG4gICAgICAgKiBDb25zdCB0aGF0IGRldGVybWluZXMgdGhpcyBCYWNrZW5kSWRlbnRpZmllciBpcyBmb3IgYSBzYW5kYm94IGJhY2tlbmRcbiAgICAgICAqL1xuICAgICAgdHlwZTogUmVhZG9ubHk8RXh0cmFjdDxEZXBsb3ltZW50VHlwZSwgJ3NhbmRib3gnPj47XG4gICAgICAvKipcbiAgICAgICAqIE9wdGlvbmFsIGhhc2ggZm9yIGNvbnNpc3RlbnQgc3RhY2sgbmFtaW5nIGluIGNhc2VzIHdoZXJlIG5hbWVzcGFjZSBvciBuYW1lIGNvbnRhaW4gY2hhcmFjdGVycyB0aGF0IGNhbid0IGJlIHNlcmlhbGl6ZWQgaW50byBhIHN0YWNrIG5hbWVcbiAgICAgICAqL1xuICAgICAgaGFzaD86IFJlYWRvbmx5PHN0cmluZz47XG4gICAgfTtcbiJdfQ==
@@ -1,11 +1,11 @@
1
1
  import { Construct } from 'constructs';
2
- import { UniqueBackendIdentifier } from './unique_backend_identifier.js';
2
+ import { BackendIdentifier } from './backend_identifier.js';
3
3
  import { SecretValue } from 'aws-cdk-lib';
4
4
  export type BackendSecret = {
5
5
  /**
6
6
  * Resolves the given secret to a CDK token.
7
7
  */
8
- resolve: (scope: Construct, uniqueBackendIdentifier: UniqueBackendIdentifier) => SecretValue;
8
+ resolve: (scope: Construct, backendIdentifier: BackendIdentifier) => SecretValue;
9
9
  };
10
10
  export type BackendSecretResolver = {
11
11
  resolveSecret: (backendSecret: BackendSecret) => SecretValue;