@aws-amplify/graphql-api-construct 1.1.3 → 1.2.0-amplify-table-preview.0
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.
- package/.jsii +153 -100
- package/API.md +4 -0
- package/CHANGELOG.md +16 -0
- package/README.md +9 -3
- package/lib/amplify-graphql-api.d.ts +9 -3
- package/lib/amplify-graphql-api.js +11 -5
- package/lib/amplify-graphql-definition.js +1 -1
- package/lib/internal/codegen-assets.js +6 -1
- package/lib/internal/construct-exports.js +7 -1
- package/lib/internal/default-parameters.js +2 -1
- package/lib/types.d.ts +15 -4
- package/lib/types.js +1 -1
- package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +10 -10
- package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +7 -7
- package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-function-transformer/package.json +6 -6
- package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-http-transformer/package.json +6 -6
- package/node_modules/@aws-amplify/graphql-index-transformer/API.md +3 -0
- package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +11 -0
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/index.d.ts +1 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/index.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/index.js +2 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/index.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.d.ts +1 -0
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.js +26 -7
- package/node_modules/@aws-amplify/graphql-index-transformer/lib/resolvers/resolvers.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-index-transformer/package.json +7 -7
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +10 -10
- package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +12 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js +4 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/graphql-model-transformer.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.d.ts +13 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js +167 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamo-model-resource-generator.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts +40 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js +242 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-dynamodb-table-construct/index.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.d.ts +13 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.d.ts.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.js +665 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/amplify-dynamodb-table/amplify-table-manager-lambda/amplify-table-manager-handler.js.map +1 -0
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/dynamo-model-resource-generator.d.ts +5 -2
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/dynamo-model-resource-generator.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/dynamo-model-resource-generator.js +46 -60
- package/node_modules/@aws-amplify/graphql-model-transformer/lib/resources/dynamo-model-resource-generator.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-model-transformer/package.json +7 -6
- package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
- package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +6 -6
- package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +11 -0
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolvers.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolvers.js +3 -10
- package/node_modules/@aws-amplify/graphql-relational-transformer/lib/resolvers.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +8 -8
- package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +8 -0
- package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
- package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +7 -7
- package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +10 -0
- package/node_modules/@aws-amplify/graphql-transformer/package.json +14 -14
- package/node_modules/@aws-amplify/graphql-transformer-core/API.md +1 -0
- package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +12 -0
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/output.d.ts +8 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/output.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/output.js +60 -23
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/output.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/transform-parameters.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/transform-parameters.js +1 -0
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/transformer-context/transform-parameters.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/defaultSchema.d.ts +4 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/defaultSchema.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/defaultSchema.js +35 -36
- package/node_modules/@aws-amplify/graphql-transformer-core/lib/utils/defaultSchema.js.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-core/package.json +4 -4
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/API.md +1 -0
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/CHANGELOG.md +6 -0
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transform-parameters.d.ts +1 -0
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/lib/transformer-context/transform-parameters.d.ts.map +1 -1
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +2 -2
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/src/transformer-context/transform-parameters.ts +1 -0
- package/node_modules/@aws-amplify/graphql-transformer-interfaces/tsconfig.tsbuildinfo +1 -1
- package/node_modules/graphql-transformer-common/API.md +3 -0
- package/node_modules/graphql-transformer-common/CHANGELOG.md +6 -0
- package/node_modules/graphql-transformer-common/LICENSE +201 -0
- package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts +3 -0
- package/node_modules/graphql-transformer-common/lib/ResourceConstants.d.ts.map +1 -1
- package/node_modules/graphql-transformer-common/lib/ResourceConstants.js +3 -0
- package/node_modules/graphql-transformer-common/lib/ResourceConstants.js.map +1 -1
- package/node_modules/graphql-transformer-common/package.json +3 -2
- package/node_modules/zod/README.md +215 -120
- package/node_modules/zod/lib/ZodError.js +8 -0
- package/node_modules/zod/lib/helpers/parseUtil.js +3 -2
- package/node_modules/zod/lib/helpers/util.js +4 -4
- package/node_modules/zod/lib/index.mjs +121 -57
- package/node_modules/zod/lib/index.umd.js +121 -56
- package/node_modules/zod/lib/types.d.ts +55 -10
- package/node_modules/zod/lib/types.js +301 -58
- package/node_modules/zod/package.json +29 -15
- package/package.json +17 -17
- package/src/amplify-graphql-api.ts +9 -3
- package/src/internal/codegen-assets.ts +5 -0
- package/src/internal/construct-exports.ts +6 -0
- package/src/internal/default-parameters.ts +1 -0
- package/src/types.ts +18 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zod",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.22.4",
|
|
4
4
|
"author": "Colin McDonnell <colin@colinhacks.com>",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -9,12 +9,18 @@
|
|
|
9
9
|
"main": "./lib/index.js",
|
|
10
10
|
"module": "./lib/index.mjs",
|
|
11
11
|
"devDependencies": {
|
|
12
|
+
"@babel/core": "^7.22.5",
|
|
13
|
+
"@babel/preset-env": "^7.22.5",
|
|
14
|
+
"@babel/preset-typescript": "^7.22.5",
|
|
12
15
|
"@rollup/plugin-typescript": "^8.2.0",
|
|
16
|
+
"@swc/core": "^1.3.66",
|
|
17
|
+
"@swc/jest": "^0.2.26",
|
|
13
18
|
"@types/benchmark": "^2.1.0",
|
|
14
19
|
"@types/jest": "^29.2.2",
|
|
15
20
|
"@types/node": "14",
|
|
16
21
|
"@typescript-eslint/eslint-plugin": "^5.15.0",
|
|
17
22
|
"@typescript-eslint/parser": "^5.15.0",
|
|
23
|
+
"babel-jest": "^29.5.0",
|
|
18
24
|
"benchmark": "^2.1.4",
|
|
19
25
|
"dependency-cruiser": "^9.19.0",
|
|
20
26
|
"eslint": "^8.11.0",
|
|
@@ -30,18 +36,19 @@
|
|
|
30
36
|
"prettier": "^2.6.0",
|
|
31
37
|
"pretty-quick": "^3.1.3",
|
|
32
38
|
"rollup": "^2.70.1",
|
|
33
|
-
"ts-jest": "^29.0
|
|
39
|
+
"ts-jest": "^29.1.0",
|
|
34
40
|
"ts-morph": "^14.0.0",
|
|
35
41
|
"ts-node": "^10.9.1",
|
|
36
42
|
"tslib": "^2.3.1",
|
|
37
43
|
"tsx": "^3.8.0",
|
|
38
|
-
"typescript": "~4.5.0"
|
|
44
|
+
"typescript": "~4.5.0",
|
|
45
|
+
"vitest": "^0.32.2"
|
|
39
46
|
},
|
|
40
47
|
"exports": {
|
|
41
48
|
".": {
|
|
49
|
+
"types": "./index.d.ts",
|
|
42
50
|
"require": "./lib/index.js",
|
|
43
|
-
"import": "./lib/index.mjs"
|
|
44
|
-
"types": "./index.d.ts"
|
|
51
|
+
"import": "./lib/index.mjs"
|
|
45
52
|
},
|
|
46
53
|
"./package.json": "./package.json",
|
|
47
54
|
"./locales/*": "./lib/locales/*"
|
|
@@ -68,25 +75,32 @@
|
|
|
68
75
|
"src/*.ts": [
|
|
69
76
|
"eslint --cache --fix",
|
|
70
77
|
"prettier --ignore-unknown --write"
|
|
78
|
+
],
|
|
79
|
+
"*.md": [
|
|
80
|
+
"prettier --ignore-unknown --write"
|
|
71
81
|
]
|
|
72
82
|
},
|
|
73
83
|
"scripts": {
|
|
74
|
-
"prettier:check": "prettier --check src/**/*.ts deno/lib/**/*.ts --no-error-on-unmatched-pattern",
|
|
75
|
-
"prettier:fix": "prettier --write src/**/*.ts deno/lib/**/*.ts --ignore-unknown --no-error-on-unmatched-pattern",
|
|
84
|
+
"prettier:check": "prettier --check src/**/*.ts deno/lib/**/*.ts *.md --no-error-on-unmatched-pattern",
|
|
85
|
+
"prettier:fix": "prettier --write src/**/*.ts deno/lib/**/*.ts *.md --ignore-unknown --no-error-on-unmatched-pattern",
|
|
76
86
|
"lint:check": "eslint --cache --ext .ts ./src",
|
|
77
87
|
"lint:fix": "eslint --cache --fix --ext .ts ./src",
|
|
78
88
|
"check": "yarn lint:check && yarn prettier:check",
|
|
79
89
|
"fix": "yarn lint:fix && yarn prettier:fix",
|
|
80
90
|
"clean": "rm -rf lib/* deno/lib/*",
|
|
81
91
|
"build": "yarn run clean && npm run build:cjs && npm run build:esm && npm run build:deno",
|
|
82
|
-
"build:deno": "node ./deno
|
|
83
|
-
"build:esm": "rollup --config rollup.config.js",
|
|
84
|
-
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
85
|
-
"build:types": "tsc -p tsconfig.types.json",
|
|
86
|
-
"build:test": "tsc -p tsconfig.test.json",
|
|
87
|
-
"
|
|
88
|
-
"test
|
|
89
|
-
"test": "jest --coverage",
|
|
92
|
+
"build:deno": "node ./deno-build.mjs && cp ./README.md ./deno/lib",
|
|
93
|
+
"build:esm": "rollup --config ./configs/rollup.config.js",
|
|
94
|
+
"build:cjs": "tsc -p ./configs/tsconfig.cjs.json",
|
|
95
|
+
"build:types": "tsc -p ./configs/tsconfig.types.json",
|
|
96
|
+
"build:test": "tsc -p ./configs/tsconfig.test.json",
|
|
97
|
+
"test:watch": "yarn test:ts-jest --watch",
|
|
98
|
+
"test": "yarn test:ts-jest",
|
|
99
|
+
"test:babel": "jest --coverage --config ./configs/babel-jest.config.json",
|
|
100
|
+
"test:bun": "bun test",
|
|
101
|
+
"test:vitest": "npx vitest --config ./configs/vitest.config.ts",
|
|
102
|
+
"test:ts-jest": "npx jest --config ./configs/ts-jest.config.json",
|
|
103
|
+
"test:swc": "npx jest --config ./configs/swc-jest.config.json",
|
|
90
104
|
"test:deno": "cd deno && deno test",
|
|
91
105
|
"prepublishOnly": "npm run test && npm run build && npm run build:deno",
|
|
92
106
|
"play": "nodemon -e ts -w . -x tsx playground.ts",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-amplify/graphql-api-construct",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0-amplify-table-preview.0",
|
|
4
4
|
"description": "AppSync GraphQL Api Construct using Amplify GraphQL Transformer.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -76,26 +76,26 @@
|
|
|
76
76
|
"dependencies": {
|
|
77
77
|
"@aws-amplify/backend-output-schemas": "^0.2.0-alpha.6",
|
|
78
78
|
"@aws-amplify/backend-output-storage": "^0.1.1-alpha.2",
|
|
79
|
-
"@aws-amplify/graphql-auth-transformer": "3.1.
|
|
80
|
-
"@aws-amplify/graphql-default-value-transformer": "2.1.
|
|
81
|
-
"@aws-amplify/graphql-function-transformer": "2.1.
|
|
82
|
-
"@aws-amplify/graphql-http-transformer": "2.1.
|
|
83
|
-
"@aws-amplify/graphql-index-transformer": "2.
|
|
84
|
-
"@aws-amplify/graphql-maps-to-transformer": "3.2.
|
|
85
|
-
"@aws-amplify/graphql-model-transformer": "2.
|
|
86
|
-
"@aws-amplify/graphql-predictions-transformer": "2.1.
|
|
87
|
-
"@aws-amplify/graphql-relational-transformer": "2.
|
|
88
|
-
"@aws-amplify/graphql-searchable-transformer": "2.2.
|
|
89
|
-
"@aws-amplify/graphql-transformer": "1.
|
|
90
|
-
"@aws-amplify/graphql-transformer-core": "2.
|
|
91
|
-
"@aws-amplify/graphql-transformer-interfaces": "3.
|
|
79
|
+
"@aws-amplify/graphql-auth-transformer": "3.1.9-amplify-table-preview.0",
|
|
80
|
+
"@aws-amplify/graphql-default-value-transformer": "2.1.8-amplify-table-preview.0",
|
|
81
|
+
"@aws-amplify/graphql-function-transformer": "2.1.7-amplify-table-preview.0",
|
|
82
|
+
"@aws-amplify/graphql-http-transformer": "2.1.7-amplify-table-preview.0",
|
|
83
|
+
"@aws-amplify/graphql-index-transformer": "2.2.0-amplify-table-preview.0",
|
|
84
|
+
"@aws-amplify/graphql-maps-to-transformer": "3.2.5-amplify-table-preview.0",
|
|
85
|
+
"@aws-amplify/graphql-model-transformer": "2.3.0-amplify-table-preview.0",
|
|
86
|
+
"@aws-amplify/graphql-predictions-transformer": "2.1.7-amplify-table-preview.0",
|
|
87
|
+
"@aws-amplify/graphql-relational-transformer": "2.2.0-amplify-table-preview.0",
|
|
88
|
+
"@aws-amplify/graphql-searchable-transformer": "2.2.4-amplify-table-preview.0",
|
|
89
|
+
"@aws-amplify/graphql-transformer": "1.3.0-amplify-table-preview.0",
|
|
90
|
+
"@aws-amplify/graphql-transformer-core": "2.3.0-amplify-table-preview.0",
|
|
91
|
+
"@aws-amplify/graphql-transformer-interfaces": "3.3.0-amplify-table-preview.0",
|
|
92
92
|
"charenc": "^0.0.2",
|
|
93
93
|
"crypt": "^0.0.2",
|
|
94
94
|
"fs-extra": "^8.1.0",
|
|
95
95
|
"graceful-fs": "^4.2.11",
|
|
96
96
|
"graphql": "^15.5.0",
|
|
97
97
|
"graphql-mapping-template": "4.20.12",
|
|
98
|
-
"graphql-transformer-common": "4.
|
|
98
|
+
"graphql-transformer-common": "4.26.0-amplify-table-preview.0",
|
|
99
99
|
"hjson": "^3.2.2",
|
|
100
100
|
"immer": "^9.0.12",
|
|
101
101
|
"is-buffer": "^2.0.5",
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
"pluralize": "^8.0.0",
|
|
108
108
|
"ts-dedent": "^2.0.0",
|
|
109
109
|
"universalify": "^2.0.0",
|
|
110
|
-
"zod": "^3.
|
|
110
|
+
"zod": "^3.22.3"
|
|
111
111
|
},
|
|
112
112
|
"devDependencies": {
|
|
113
113
|
"@types/fs-extra": "^8.0.1",
|
|
@@ -162,5 +162,5 @@
|
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
164
|
},
|
|
165
|
-
"gitHead": "
|
|
165
|
+
"gitHead": "7d153ff268ff8e8fab43105b5e9ea6611adfc2dd"
|
|
166
166
|
}
|
|
@@ -64,12 +64,18 @@ import {
|
|
|
64
64
|
*
|
|
65
65
|
* For a full reference of the supported custom graphql directives - https://docs.amplify.aws/cli/graphql/directives-reference/
|
|
66
66
|
*
|
|
67
|
-
* The output of this construct is a mapping of L1 resources generated by the transformer, which generally follow the access pattern
|
|
67
|
+
* The output of this construct is a mapping of L2 or L1 resources generated by the transformer, which generally follow the access pattern
|
|
68
68
|
*
|
|
69
69
|
* ```typescript
|
|
70
70
|
* const api = new AmplifyGraphQlApi(this, 'api', { <params> });
|
|
71
|
-
*
|
|
72
|
-
*
|
|
71
|
+
* // Access L2 resources under `.resources`
|
|
72
|
+
* api.resources.tables["Todo"].tableArn;
|
|
73
|
+
*
|
|
74
|
+
* // Access L1 resources under `.resources.cfnResources`
|
|
75
|
+
* api.resources.cfnResources.cfnGraphqlApi.xrayEnabled = true;
|
|
76
|
+
* Object.values(api.resources.cfnResources.cfnTables).forEach(table => {
|
|
77
|
+
* table.pointInTimeRecoverySpecification = { pointInTimeRecoveryEnabled: false };
|
|
78
|
+
* });
|
|
73
79
|
* ```
|
|
74
80
|
* `resources.<ResourceType>.<ResourceName>` - you can then perform any CDK action on these resulting resoureces.
|
|
75
81
|
*/
|
|
@@ -35,6 +35,11 @@ export class CodegenAssets extends Construct {
|
|
|
35
35
|
new BucketDeployment(this, `${id}Deployment`, {
|
|
36
36
|
destinationBucket: bucket,
|
|
37
37
|
sources: [Source.data(MODEL_SCHEMA_KEY, props.modelSchema)],
|
|
38
|
+
// Bucket deployment uses a Lambda that runs AWS S3 CLI to transfer assets to destination bucket.
|
|
39
|
+
// That Lambda requires higher memory setting to run fast even when processing small assets (less than 1kB).
|
|
40
|
+
// This setting has been established experimentally. Benchmark can be found in pull request description that established it.
|
|
41
|
+
// The value has been chosen to prefer the lowest cost (run time * memory demand) while providing reasonable performance.
|
|
42
|
+
memoryLimit: 1536,
|
|
38
43
|
});
|
|
39
44
|
|
|
40
45
|
this.modelSchemaS3Uri = getS3UriForBucketAndKey(bucket, MODEL_SCHEMA_KEY);
|
|
@@ -33,6 +33,7 @@ export const getGeneratedResources = (scope: Construct): AmplifyGraphqlApiResour
|
|
|
33
33
|
const cfnDataSources: Record<string, CfnDataSource> = {};
|
|
34
34
|
const tables: Record<string, Table> = {};
|
|
35
35
|
const cfnTables: Record<string, CfnTable> = {};
|
|
36
|
+
const cfnAmplifyTables: Record<string, CfnResource> = {};
|
|
36
37
|
const roles: Record<string, Role> = {};
|
|
37
38
|
const cfnRoles: Record<string, CfnRole> = {};
|
|
38
39
|
const functions: Record<string, LambdaFunction> = {};
|
|
@@ -77,6 +78,10 @@ export const getGeneratedResources = (scope: Construct): AmplifyGraphqlApiResour
|
|
|
77
78
|
cfnTables[resourceName] = currentScope;
|
|
78
79
|
return;
|
|
79
80
|
}
|
|
81
|
+
if (currentScope instanceof CfnResource && currentScope.cfnResourceType === 'Custom::AmplifyDynamoDBTable') {
|
|
82
|
+
cfnAmplifyTables[resourceName] = currentScope;
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
80
85
|
if (currentScope instanceof Role) {
|
|
81
86
|
roles[resourceName] = currentScope;
|
|
82
87
|
return;
|
|
@@ -132,6 +137,7 @@ export const getGeneratedResources = (scope: Construct): AmplifyGraphqlApiResour
|
|
|
132
137
|
cfnFunctionConfigurations,
|
|
133
138
|
cfnDataSources,
|
|
134
139
|
cfnTables,
|
|
140
|
+
cfnAmplifyTables,
|
|
135
141
|
cfnRoles,
|
|
136
142
|
cfnFunctions,
|
|
137
143
|
additionalCfnResources,
|
|
@@ -16,5 +16,6 @@ export const defaultTranslationBehavior: TranslationBehavior = {
|
|
|
16
16
|
enableAutoIndexQueryNames: true,
|
|
17
17
|
respectPrimaryKeyAttributesOnConnectionField: true,
|
|
18
18
|
enableSearchNodeToNodeEncryption: false,
|
|
19
|
+
useAmplifyManagedTableResources: false, // TODO: flip to true once all implementations are finished
|
|
19
20
|
enableTransformerCfnOutputs: false,
|
|
20
21
|
};
|
package/src/types.ts
CHANGED
|
@@ -393,12 +393,14 @@ export interface TranslationBehavior {
|
|
|
393
393
|
readonly respectPrimaryKeyAttributesOnConnectionField: boolean;
|
|
394
394
|
|
|
395
395
|
/**
|
|
396
|
-
*
|
|
397
|
-
*
|
|
398
|
-
*
|
|
399
|
-
* });
|
|
396
|
+
* Used for AmplifyGrapqhlApi construct ONLY
|
|
397
|
+
* If enabled, the table resources will be generated under custom resource provider,
|
|
398
|
+
* which enables the multiple GSI updates within one deployment phase
|
|
400
399
|
* @default false
|
|
400
|
+
* @experimental
|
|
401
401
|
*/
|
|
402
|
+
readonly useAmplifyManagedTableResources: boolean;
|
|
403
|
+
|
|
402
404
|
readonly enableSearchNodeToNodeEncryption: boolean;
|
|
403
405
|
|
|
404
406
|
/**
|
|
@@ -484,6 +486,13 @@ export interface PartialTranslationBehavior {
|
|
|
484
486
|
* @default false
|
|
485
487
|
*/
|
|
486
488
|
readonly enableTransformerCfnOutputs?: boolean;
|
|
489
|
+
|
|
490
|
+
/**
|
|
491
|
+
* When enabled, amplify DynamoDB table will be generated instead of CFN pre-defined DynamoDB table
|
|
492
|
+
* @default false
|
|
493
|
+
* @experimental
|
|
494
|
+
*/
|
|
495
|
+
readonly useAmplifyManagedTableResources?: boolean;
|
|
487
496
|
}
|
|
488
497
|
|
|
489
498
|
/**
|
|
@@ -647,6 +656,11 @@ export interface AmplifyGraphqlApiCfnResources {
|
|
|
647
656
|
*/
|
|
648
657
|
readonly cfnTables: Record<string, CfnTable>;
|
|
649
658
|
|
|
659
|
+
/**
|
|
660
|
+
* The Generated Amplify DynamoDB Table L1 Resources, keyed by model name.
|
|
661
|
+
*/
|
|
662
|
+
readonly cfnAmplifyTables: Record<string, CfnResource>;
|
|
663
|
+
|
|
650
664
|
/**
|
|
651
665
|
* The Generated IAM Role L1 Resources, keyed by logicalId.
|
|
652
666
|
*/
|