@aws-amplify/graphql-api-construct 1.5.7-rds-5.0 → 1.6.0-secrets-manager.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. package/.jsii +146 -35
  2. package/API.md +13 -1
  3. package/CHANGELOG.md +3 -5
  4. package/README.md +75 -17
  5. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  6. package/lib/amplify-graphql-api.js +1 -1
  7. package/lib/amplify-graphql-definition.js +1 -1
  8. package/lib/internal/data-source-config.js +37 -4
  9. package/lib/model-datasource-strategy-types.d.ts +25 -1
  10. package/lib/model-datasource-strategy-types.js +1 -1
  11. package/lib/sql-model-datasource-strategy.d.ts +13 -1
  12. package/lib/sql-model-datasource-strategy.js +26 -4
  13. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +1 -7
  14. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/utils/validations.d.ts.map +1 -1
  15. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/utils/validations.js +3 -0
  16. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/utils/validations.js.map +1 -1
  17. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/vtl-generator/rds/resolvers/query.d.ts.map +1 -1
  18. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/vtl-generator/rds/resolvers/query.js +2 -3
  19. package/node_modules/@aws-amplify/graphql-auth-transformer/lib/vtl-generator/rds/resolvers/query.js.map +1 -1
  20. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +12 -12
  21. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +1 -5
  22. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +7 -7
  23. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +1 -5
  24. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +6 -6
  25. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +1 -5
  26. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +6 -6
  27. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +1 -5
  28. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +7 -7
  29. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +1 -5
  30. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  31. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +10 -10
  32. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +4 -5
  33. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  34. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  35. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  36. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.d.ts +5 -1
  37. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.d.ts.map +1 -1
  38. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js +71 -26
  39. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resolvers/rds/resolver.js.map +1 -1
  40. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.d.ts.map +1 -1
  41. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.js +21 -7
  42. package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/rds-model-resource-generator.js.map +1 -1
  43. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +6 -6
  44. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +1 -5
  45. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  46. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +6 -6
  47. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +1 -5
  48. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +8 -8
  49. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +1 -5
  50. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  51. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +7 -7
  52. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +1 -5
  53. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +7 -7
  54. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +3 -5
  55. package/node_modules/@aws-amplify/graphql-transformer/package.json +16 -16
  56. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +1 -5
  57. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +4 -4
  58. package/node_modules/@aws-amplify/graphql-transformer-interfaces/API.md +27 -1
  59. package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +6 -0
  60. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts +12 -1
  61. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.d.ts.map +1 -1
  62. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.js +22 -0
  63. package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/model-datasource/types.js.map +1 -1
  64. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +3 -2
  65. package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/model-datasource/types.ts +76 -1
  66. package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
  67. package/node_modules/graphql-transformer-common/API.md +0 -14
  68. package/node_modules/graphql-transformer-common/CHANGELOG.md +0 -10
  69. package/node_modules/graphql-transformer-common/lib/index.d.ts +0 -1
  70. package/node_modules/graphql-transformer-common/lib/index.d.ts.map +1 -1
  71. package/node_modules/graphql-transformer-common/lib/index.js +0 -1
  72. package/node_modules/graphql-transformer-common/lib/index.js.map +1 -1
  73. package/node_modules/graphql-transformer-common/package.json +2 -3
  74. package/package.json +18 -18
  75. package/src/internal/data-source-config.ts +42 -9
  76. package/src/model-datasource-strategy-types.ts +33 -1
  77. package/src/sql-model-datasource-strategy.ts +32 -1
  78. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts +0 -13
  79. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.d.ts.map +0 -1
  80. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js +0 -16
  81. package/node_modules/graphql-transformer-common/lib/TypescriptSchemaConstants.js.map +0 -1
  82. /package/node_modules/{graphql-transformer-common → @aws-amplify/graphql-transformer-interfaces}/LICENSE +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer",
3
- "version": "1.3.11-rds-5.0",
3
+ "version": "1.4.0-secrets-manager.0",
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.3.7-rds-5.0",
32
- "@aws-amplify/graphql-default-value-transformer": "2.2.6-rds-5.0",
33
- "@aws-amplify/graphql-function-transformer": "2.1.18-rds-5.0",
34
- "@aws-amplify/graphql-http-transformer": "2.1.18-rds-5.0",
35
- "@aws-amplify/graphql-index-transformer": "2.3.6-rds-5.0",
36
- "@aws-amplify/graphql-maps-to-transformer": "3.4.7-rds-5.0",
37
- "@aws-amplify/graphql-model-transformer": "2.4.6-rds-5.0",
38
- "@aws-amplify/graphql-predictions-transformer": "2.1.18-rds-5.0",
39
- "@aws-amplify/graphql-relational-transformer": "2.3.7-rds-5.0",
40
- "@aws-amplify/graphql-searchable-transformer": "2.5.3-rds-5.0",
41
- "@aws-amplify/graphql-sql-transformer": "0.2.6-rds-5.0",
42
- "@aws-amplify/graphql-transformer-core": "2.4.6-rds-5.0",
43
- "@aws-amplify/graphql-transformer-interfaces": "3.3.3"
31
+ "@aws-amplify/graphql-auth-transformer": "3.3.6-secrets-manager.0",
32
+ "@aws-amplify/graphql-default-value-transformer": "2.2.5-secrets-manager.0",
33
+ "@aws-amplify/graphql-function-transformer": "2.1.17-secrets-manager.0",
34
+ "@aws-amplify/graphql-http-transformer": "2.1.17-secrets-manager.0",
35
+ "@aws-amplify/graphql-index-transformer": "2.3.5-secrets-manager.0",
36
+ "@aws-amplify/graphql-maps-to-transformer": "3.4.6-secrets-manager.0",
37
+ "@aws-amplify/graphql-model-transformer": "2.5.0-secrets-manager.0",
38
+ "@aws-amplify/graphql-predictions-transformer": "2.1.17-secrets-manager.0",
39
+ "@aws-amplify/graphql-relational-transformer": "2.3.6-secrets-manager.0",
40
+ "@aws-amplify/graphql-searchable-transformer": "2.5.2-secrets-manager.0",
41
+ "@aws-amplify/graphql-sql-transformer": "0.2.5-secrets-manager.0",
42
+ "@aws-amplify/graphql-transformer-core": "2.4.5-secrets-manager.0",
43
+ "@aws-amplify/graphql-transformer-interfaces": "3.4.0-secrets-manager.0"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/node": "^12.12.6",
@@ -71,7 +71,7 @@
71
71
  "coverageThreshold": {
72
72
  "global": {
73
73
  "branches": 59,
74
- "functions": 55,
74
+ "functions": 54,
75
75
  "lines": 74
76
76
  }
77
77
  },
@@ -81,5 +81,5 @@
81
81
  ],
82
82
  "testEnvironment": "../../FixJestEnvironment.js"
83
83
  },
84
- "gitHead": "553dbfa03d3329121143749cbb04db3f44987b5e"
84
+ "gitHead": "1b45d39e2064522f7bce51bd8bf5135742d4ce14"
85
85
  }
@@ -3,11 +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
- ## [2.4.6-rds-5.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.4.5...@aws-amplify/graphql-transformer-core@2.4.6-rds-5.0) (2024-02-09)
7
-
8
- **Note:** Version bump only for package @aws-amplify/graphql-transformer-core
9
-
10
- ## [2.4.5](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.4.4...@aws-amplify/graphql-transformer-core@2.4.5) (2024-02-05)
6
+ ## [2.4.5-secrets-manager.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-core@2.4.4...@aws-amplify/graphql-transformer-core@2.4.5-secrets-manager.0) (2024-02-21)
11
7
 
12
8
  **Note:** Version bump only for package @aws-amplify/graphql-transformer-core
13
9
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer-core",
3
- "version": "2.4.6-rds-5.0",
3
+ "version": "2.4.5-secrets-manager.0",
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.3",
31
+ "@aws-amplify/graphql-transformer-interfaces": "3.4.0-secrets-manager.0",
32
32
  "fs-extra": "^8.1.0",
33
33
  "graphql": "^15.5.0",
34
- "graphql-transformer-common": "4.28.1-rds-5.0",
34
+ "graphql-transformer-common": "4.27.1",
35
35
  "hjson": "^3.2.2",
36
36
  "lodash": "^4.17.21",
37
37
  "md5": "^2.3.0",
@@ -79,5 +79,5 @@
79
79
  ],
80
80
  "testEnvironment": "../../FixJestEnvironment.js"
81
81
  },
82
- "gitHead": "553dbfa03d3329121143749cbb04db3f44987b5e"
82
+ "gitHead": "1b45d39e2064522f7bce51bd8bf5135742d4ce14"
83
83
  }
@@ -222,6 +222,15 @@ export interface InlineMappingTemplateProvider {
222
222
  type: MappingTemplateType.INLINE;
223
223
  }
224
224
 
225
+ // @public (undocumented)
226
+ export const isSqlModelDataSourceDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceDbConnectionConfig;
227
+
228
+ // @public (undocumented)
229
+ export const isSqlModelDataSourceSecretsManagerDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceSecretsManagerDbConnectionConfig;
230
+
231
+ // @public (undocumented)
232
+ export const isSqlModelDataSourceSsmDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceSsmDbConnectionConfig;
233
+
225
234
  // @public (undocumented)
226
235
  export type MappingTemplateProvider = InlineMappingTemplateProvider | S3MappingTemplateProvider;
227
236
 
@@ -372,7 +381,24 @@ export interface SQLLambdaModelDataSourceStrategy extends ModelDataSourceStrateg
372
381
  }
373
382
 
374
383
  // @public (undocumented)
375
- export interface SqlModelDataSourceDbConnectionConfig {
384
+ export type SqlModelDataSourceDbConnectionConfig = SqlModelDataSourceSecretsManagerDbConnectionConfig | SqlModelDataSourceSsmDbConnectionConfig;
385
+
386
+ // @public (undocumented)
387
+ export interface SqlModelDataSourceSecretsManagerDbConnectionConfig {
388
+ // (undocumented)
389
+ readonly databaseName: string;
390
+ // (undocumented)
391
+ readonly hostname: string;
392
+ // (undocumented)
393
+ readonly keyArn?: string;
394
+ // (undocumented)
395
+ readonly port: number;
396
+ // (undocumented)
397
+ readonly secretArn: string;
398
+ }
399
+
400
+ // @public (undocumented)
401
+ export interface SqlModelDataSourceSsmDbConnectionConfig {
376
402
  // (undocumented)
377
403
  readonly databaseNameSsmPath: string;
378
404
  // (undocumented)
@@ -3,6 +3,12 @@
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.4.0-secrets-manager.0](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-interfaces@3.3.3...@aws-amplify/graphql-transformer-interfaces@3.4.0-secrets-manager.0) (2024-02-21)
7
+
8
+ ### Features
9
+
10
+ - add secrets manager support for sql lambda auth ([#2103](https://github.com/aws-amplify/amplify-category-api/issues/2103)) ([fde423b](https://github.com/aws-amplify/amplify-category-api/commit/fde423bba09403c6bfd6788cc63546d629d756b6))
11
+
6
12
  ## [3.3.3](https://github.com/aws-amplify/amplify-category-api/compare/@aws-amplify/graphql-transformer-interfaces@3.3.2...@aws-amplify/graphql-transformer-interfaces@3.3.3) (2023-12-18)
7
13
 
8
14
  **Note:** Version bump only for package @aws-amplify/graphql-transformer-interfaces
@@ -31,7 +31,15 @@ export interface SubnetAvailabilityZone {
31
31
  readonly subnetId: string;
32
32
  readonly availabilityZone: string;
33
33
  }
34
- export interface SqlModelDataSourceDbConnectionConfig {
34
+ export type SqlModelDataSourceDbConnectionConfig = SqlModelDataSourceSecretsManagerDbConnectionConfig | SqlModelDataSourceSsmDbConnectionConfig;
35
+ export interface SqlModelDataSourceSecretsManagerDbConnectionConfig {
36
+ readonly secretArn: string;
37
+ readonly keyArn?: string;
38
+ readonly port: number;
39
+ readonly databaseName: string;
40
+ readonly hostname: string;
41
+ }
42
+ export interface SqlModelDataSourceSsmDbConnectionConfig {
35
43
  readonly hostnameSsmPath: string;
36
44
  readonly portSsmPath: string;
37
45
  readonly usernameSsmPath: string;
@@ -56,4 +64,7 @@ export interface RDSLayerMapping {
56
64
  export interface RDSLayerMappingProvider {
57
65
  rdsLayerMapping?: RDSLayerMapping;
58
66
  }
67
+ export declare const isSqlModelDataSourceDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceDbConnectionConfig;
68
+ export declare const isSqlModelDataSourceSsmDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceSsmDbConnectionConfig;
69
+ export declare const isSqlModelDataSourceSecretsManagerDbConnectionConfig: (obj: any) => obj is SqlModelDataSourceSecretsManagerDbConnectionConfig;
59
70
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/model-datasource/types.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,uBAAuB,GAC/B,sCAAsC,GACtC,sCAAsC,GACtC,gCAAgC,CAAC;AAErC,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,6BAA6B,CAAC;CACvC;AAKD,MAAM,MAAM,6BAA6B,GAAG,UAAU,GAAG,gCAAgC,CAAC;AAK1F,MAAM,MAAM,gCAAgC,GAAG,OAAO,GAAG,UAAU,CAAC;AAKpE,MAAM,WAAW,sCAAuC,SAAQ,2BAA2B;IACzF,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;CACvC;AAKD,MAAM,WAAW,sCAAuC,SAAQ,2BAA2B;IACzF,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAC;CAC7C;AAQD,MAAM,WAAW,gCAAiC,SAAQ,2BAA2B;IAKnF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAKtB,QAAQ,CAAC,MAAM,EAAE,gCAAgC,CAAC;IAKlD,QAAQ,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;IAKlE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAKtC,QAAQ,CAAC,qCAAqC,CAAC,EAAE,4BAA4B,CAAC;CAC/E;AASD,MAAM,WAAW,SAAS;IAExB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAGvB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAGpC,QAAQ,CAAC,4BAA4B,EAAE,sBAAsB,EAAE,CAAC;CACjE;AAKD,MAAM,WAAW,4BAA4B;IAE3C,QAAQ,CAAC,+BAA+B,EAAE,MAAM,CAAC;CAClD;AAOD,MAAM,WAAW,sBAAsB;IAErC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAG1B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAOD,MAAM,WAAW,oCAAoC;IAInD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAGjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAG7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAGjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAGjC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC;AAQD,MAAM,WAAW,8BAA8B;IAE7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,UAAU,CAAC;IAGxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAG3B,QAAQ,CAAC,QAAQ,EAAE,gCAAgC,CAAC;IASpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvD;AAKD,MAAM,WAAW,4BAA4B;IAE3C,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;IAG9D,gCAAgC,CAAC,EAAE,8BAA8B,EAAE,CAAC;CACrE;AAOD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG;QACtB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAMD,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/model-datasource/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSqlModelDataSourceSecretsManagerDbConnectionConfig = exports.isSqlModelDataSourceSsmDbConnectionConfig = exports.isSqlModelDataSourceDbConnectionConfig = void 0;
4
+ const isSqlModelDataSourceDbConnectionConfig = (obj) => {
5
+ return (0, exports.isSqlModelDataSourceSsmDbConnectionConfig)(obj) || (0, exports.isSqlModelDataSourceSecretsManagerDbConnectionConfig)(obj);
6
+ };
7
+ exports.isSqlModelDataSourceDbConnectionConfig = isSqlModelDataSourceDbConnectionConfig;
8
+ const isSqlModelDataSourceSsmDbConnectionConfig = (obj) => {
9
+ return ((typeof obj === 'object' || typeof obj === 'function') &&
10
+ typeof obj.hostnameSsmPath === 'string' &&
11
+ typeof obj.portSsmPath === 'string' &&
12
+ typeof obj.usernameSsmPath === 'string' &&
13
+ typeof obj.passwordSsmPath === 'string' &&
14
+ typeof obj.databaseNameSsmPath === 'string');
15
+ };
16
+ exports.isSqlModelDataSourceSsmDbConnectionConfig = isSqlModelDataSourceSsmDbConnectionConfig;
17
+ const isSqlModelDataSourceSecretsManagerDbConnectionConfig = (obj) => {
18
+ return ((typeof obj === 'object' || typeof obj === 'function') &&
19
+ typeof obj.secretArn === 'string' &&
20
+ typeof obj.port === 'number' &&
21
+ typeof obj.databaseName === 'string' &&
22
+ typeof obj.hostname === 'string');
23
+ };
24
+ exports.isSqlModelDataSourceSecretsManagerDbConnectionConfig = isSqlModelDataSourceSecretsManagerDbConnectionConfig;
3
25
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model-datasource/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model-datasource/types.ts"],"names":[],"mappings":";;;AA0OO,MAAM,sCAAsC,GAAG,CAAC,GAAQ,EAA+C,EAAE;IAC9G,OAAO,IAAA,iDAAyC,EAAC,GAAG,CAAC,IAAI,IAAA,4DAAoD,EAAC,GAAG,CAAC,CAAC;AACrH,CAAC,CAAC;AAFW,QAAA,sCAAsC,0CAEjD;AAOK,MAAM,yCAAyC,GAAG,CAAC,GAAQ,EAAkD,EAAE;IACpH,OAAO,CACL,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,UAAU,CAAC;QACtD,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ;QACvC,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ;QACnC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ;QACvC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ;QACvC,OAAO,GAAG,CAAC,mBAAmB,KAAK,QAAQ,CAC5C,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,yCAAyC,6CASpD;AAOK,MAAM,oDAAoD,GAAG,CAClE,GAAQ,EACmD,EAAE;IAC7D,OAAO,CACL,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,UAAU,CAAC;QACtD,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;QACjC,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC5B,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CACjC,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,oDAAoD,wDAU/D"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/graphql-transformer-interfaces",
3
- "version": "3.3.3",
3
+ "version": "3.4.0-secrets-manager.0",
4
4
  "description": "Amplify GraphQL transformer interface definitions",
5
5
  "repository": {
6
6
  "type": "git",
@@ -53,5 +53,6 @@
53
53
  "clover",
54
54
  "text"
55
55
  ]
56
- }
56
+ },
57
+ "gitHead": "1b45d39e2064522f7bce51bd8bf5135742d4ce14"
57
58
  }
@@ -114,12 +114,45 @@ export interface SubnetAvailabilityZone {
114
114
  readonly availabilityZone: string;
115
115
  }
116
116
 
117
+ /*
118
+ * The credentials the lambda data source will use to connect to the database.
119
+ *
120
+ * @experimental
121
+ */
122
+ export type SqlModelDataSourceDbConnectionConfig =
123
+ | SqlModelDataSourceSecretsManagerDbConnectionConfig
124
+ | SqlModelDataSourceSsmDbConnectionConfig;
125
+
126
+ /*
127
+ * The credentials stored in Secrets Manager that the lambda data source will use to connect to the database.
128
+ *
129
+ * The managed secret should be in the same region as the lambda.
130
+ * @experimental
131
+ */
132
+ export interface SqlModelDataSourceSecretsManagerDbConnectionConfig {
133
+ /** The arn of the managed secret with username, password, and hostname to use when connecting to the database. **/
134
+ readonly secretArn: string;
135
+
136
+ /** The ARN of the customer managed encryption key for the secret. If not supplied, the secret is expected to be encrypted with the default AWS-managed key. **/
137
+ readonly keyArn?: string;
138
+
139
+ /** port number of the database proxy, cluster, or instance. */
140
+ readonly port: number;
141
+
142
+ /** database name. */
143
+ readonly databaseName: string;
144
+
145
+ /** The hostname of the database. */
146
+ readonly hostname: string;
147
+ }
148
+
117
149
  /**
118
150
  * The Secure Systems Manager parameter paths the Lambda data source will use to connect to the database.
119
151
  *
120
152
  * These parameters are retrieved from Secure Systems Manager in the same region as the Lambda.
153
+ * @experimental
121
154
  */
122
- export interface SqlModelDataSourceDbConnectionConfig {
155
+ export interface SqlModelDataSourceSsmDbConnectionConfig {
123
156
  /** The Secure Systems Manager parameter containing the hostname of the database. For RDS-based SQL data sources, this can be the hostname
124
157
  * of a database proxy, cluster, or instance.
125
158
  */
@@ -193,3 +226,45 @@ export interface RDSLayerMapping {
193
226
  export interface RDSLayerMappingProvider {
194
227
  rdsLayerMapping?: RDSLayerMapping;
195
228
  }
229
+
230
+ /**
231
+ * Type predicate that returns true if the object is a SqlModelDataSourceDbConnectionConfig.
232
+ * @param obj the object to inspect
233
+ * @returns true if the object is shaped like a SqlModelDataSourceDbConnectionConfig
234
+ */
235
+ export const isSqlModelDataSourceDbConnectionConfig = (obj: any): obj is SqlModelDataSourceDbConnectionConfig => {
236
+ return isSqlModelDataSourceSsmDbConnectionConfig(obj) || isSqlModelDataSourceSecretsManagerDbConnectionConfig(obj);
237
+ };
238
+
239
+ /**
240
+ * Type predicate that returns true if the object is a SqlModelDataSourceSsmDbConnectionConfig.
241
+ * @param obj the object to inspect
242
+ * @returns true if the object is shaped like a SqlModelDataSourceDbConnectionConfig
243
+ */
244
+ export const isSqlModelDataSourceSsmDbConnectionConfig = (obj: any): obj is SqlModelDataSourceSsmDbConnectionConfig => {
245
+ return (
246
+ (typeof obj === 'object' || typeof obj === 'function') &&
247
+ typeof obj.hostnameSsmPath === 'string' &&
248
+ typeof obj.portSsmPath === 'string' &&
249
+ typeof obj.usernameSsmPath === 'string' &&
250
+ typeof obj.passwordSsmPath === 'string' &&
251
+ typeof obj.databaseNameSsmPath === 'string'
252
+ );
253
+ };
254
+
255
+ /**
256
+ * Type predicate that returns true if the object is a SqlModelDataSourceSecretsManagerDbConnectionConfig.
257
+ * @param obj the object to inspect
258
+ * @returns true if the object is shaped like a SqlModelDataSourceDbConnectionConfig
259
+ */
260
+ export const isSqlModelDataSourceSecretsManagerDbConnectionConfig = (
261
+ obj: any,
262
+ ): obj is SqlModelDataSourceSecretsManagerDbConnectionConfig => {
263
+ return (
264
+ (typeof obj === 'object' || typeof obj === 'function') &&
265
+ typeof obj.secretArn === 'string' &&
266
+ typeof obj.port === 'number' &&
267
+ typeof obj.databaseName === 'string' &&
268
+ typeof obj.hostname === 'string'
269
+ );
270
+ };