@gradientedge/cdk-utils 8.161.0 → 8.163.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/dist/src/lib/aws/construct/api-to-any-target/main.js +1 -1
- package/dist/src/lib/aws/construct/api-to-any-target/types.d.ts +1 -0
- package/dist/src/lib/aws/services/api-gateway/main.d.ts +1 -1
- package/dist/src/lib/aws/services/api-gateway/main.js +12 -10
- package/dist/src/lib/aws/services/appconfig/constants.js +10 -10
- package/package.json +1 -1
- package/src/lib/aws/construct/api-to-any-target/main.ts +2 -1
- package/src/lib/aws/construct/api-to-any-target/types.ts +1 -0
- package/src/lib/aws/services/api-gateway/main.ts +14 -10
- package/src/lib/aws/services/appconfig/constants.ts +10 -10
|
@@ -129,7 +129,7 @@ class ApiToAnyTarget extends common_1.CommonConstruct {
|
|
|
129
129
|
else {
|
|
130
130
|
rootResource = this.apiToAnyTargetRestApi.api.root;
|
|
131
131
|
}
|
|
132
|
-
return this.apiManager.createApiResource(`${this.id}-resource-${apiResourceProps.path}}`, this, apiResourceProps.parent ?? rootResource, apiResourceProps.path, apiResourceProps.integration, apiResourceProps.addProxy, apiResourceProps.authorizer, apiResourceProps.allowedOrigins, apiResourceProps.allowedMethods, apiResourceProps.allowedHeaders, apiResourceProps.methodRequestParameters, apiResourceProps.proxyIntegration);
|
|
132
|
+
return this.apiManager.createApiResource(`${this.id}-resource-${apiResourceProps.path}}`, this, apiResourceProps.parent ?? rootResource, apiResourceProps.path, apiResourceProps.integration, apiResourceProps.addProxy, apiResourceProps.authorizer, apiResourceProps.allowedOrigins, apiResourceProps.allowedMethods, apiResourceProps.allowedHeaders, apiResourceProps.methodRequestParameters, apiResourceProps.proxyIntegration, apiResourceProps.enableDefaultCors);
|
|
133
133
|
}
|
|
134
134
|
createApiDomain() {
|
|
135
135
|
if (this.props.api.useExisting)
|
|
@@ -54,7 +54,7 @@ export declare class ApiManager {
|
|
|
54
54
|
*/
|
|
55
55
|
createApiResource(id: string, scope: CommonConstruct, parent: IResource, path: string, integration: Integration, addProxy: boolean, authorizer?: IAuthorizer, allowedOrigins?: string[], allowedMethods?: string[], allowedHeaders?: string[], methodRequestParameters?: {
|
|
56
56
|
[param: string]: boolean;
|
|
57
|
-
}, proxyIntegration?: Integration): import("aws-cdk-lib/aws-apigateway").Resource;
|
|
57
|
+
}, proxyIntegration?: Integration, enableDefaultCors?: boolean): import("aws-cdk-lib/aws-apigateway").Resource;
|
|
58
58
|
/**
|
|
59
59
|
* @summary Method to create an api deployment
|
|
60
60
|
* @param id
|
|
@@ -96,15 +96,22 @@ class ApiManager {
|
|
|
96
96
|
* @param methodRequestParameters
|
|
97
97
|
* @param proxyIntegration
|
|
98
98
|
*/
|
|
99
|
-
createApiResource(id, scope, parent, path, integration, addProxy, authorizer, allowedOrigins, allowedMethods, allowedHeaders, methodRequestParameters, proxyIntegration) {
|
|
99
|
+
createApiResource(id, scope, parent, path, integration, addProxy, authorizer, allowedOrigins, allowedMethods, allowedHeaders, methodRequestParameters, proxyIntegration, enableDefaultCors) {
|
|
100
100
|
const methods = allowedMethods ?? aws_apigateway_1.Cors.ALL_METHODS;
|
|
101
|
-
|
|
102
|
-
|
|
101
|
+
let defaultCorsPreflightOptions;
|
|
102
|
+
if (!enableDefaultCors) {
|
|
103
|
+
defaultCorsPreflightOptions = undefined;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
defaultCorsPreflightOptions = {
|
|
103
107
|
allowCredentials: true,
|
|
104
108
|
allowHeaders: allowedHeaders ?? aws_apigateway_1.Cors.DEFAULT_HEADERS,
|
|
105
109
|
allowMethods: [...methods, 'OPTIONS'],
|
|
106
110
|
allowOrigins: allowedOrigins ?? aws_apigateway_1.Cors.ALL_ORIGINS,
|
|
107
|
-
}
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
const resource = parent.addResource(path, {
|
|
114
|
+
defaultCorsPreflightOptions: defaultCorsPreflightOptions,
|
|
108
115
|
});
|
|
109
116
|
lodash_1.default.forEach(methods, method => {
|
|
110
117
|
resource.addMethod(method, integration, {
|
|
@@ -115,12 +122,7 @@ class ApiManager {
|
|
|
115
122
|
(0, utils_1.createCfnOutput)(`${id}-${path}ResourceId`, scope, resource.resourceId);
|
|
116
123
|
if (addProxy) {
|
|
117
124
|
const resourceProxy = resource.addResource(`{${path}+}`, {
|
|
118
|
-
defaultCorsPreflightOptions:
|
|
119
|
-
allowCredentials: true,
|
|
120
|
-
allowHeaders: allowedHeaders ?? aws_apigateway_1.Cors.DEFAULT_HEADERS,
|
|
121
|
-
allowMethods: [...methods, 'OPTIONS'],
|
|
122
|
-
allowOrigins: allowedOrigins ?? aws_apigateway_1.Cors.ALL_ORIGINS,
|
|
123
|
-
},
|
|
125
|
+
defaultCorsPreflightOptions: defaultCorsPreflightOptions,
|
|
124
126
|
});
|
|
125
127
|
lodash_1.default.forEach(methods, method => {
|
|
126
128
|
resourceProxy.addMethod(method, proxyIntegration ?? integration, {
|
|
@@ -41,14 +41,14 @@ exports.ArnsByRegionForX86_64 = {
|
|
|
41
41
|
* @returns { Map<string, string> } AppConfig extension ARN by region for arm64
|
|
42
42
|
*/
|
|
43
43
|
exports.ArnsByRegionForArm64 = {
|
|
44
|
-
'ap-northeast-1': 'arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:
|
|
45
|
-
'ap-south-1': 'arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:
|
|
46
|
-
'ap-southeast-1': 'arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:
|
|
47
|
-
'ap-southeast-2': 'arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:
|
|
48
|
-
'eu-central-1': 'arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:
|
|
49
|
-
'eu-west-1': 'arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:
|
|
50
|
-
'eu-west-2': 'arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:
|
|
51
|
-
'us-east-1': 'arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:
|
|
52
|
-
'us-east-2': 'arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:
|
|
53
|
-
'us-west-2': 'arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:
|
|
44
|
+
'ap-northeast-1': 'arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:51',
|
|
45
|
+
'ap-south-1': 'arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
46
|
+
'ap-southeast-1': 'arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:58',
|
|
47
|
+
'ap-southeast-2': 'arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
48
|
+
'eu-central-1': 'arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
49
|
+
'eu-west-1': 'arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:63',
|
|
50
|
+
'eu-west-2': 'arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:50',
|
|
51
|
+
'us-east-1': 'arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:61',
|
|
52
|
+
'us-east-2': 'arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:45',
|
|
53
|
+
'us-west-2': 'arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:63',
|
|
54
54
|
};
|
package/package.json
CHANGED
|
@@ -183,7 +183,8 @@ export class ApiToAnyTarget extends CommonConstruct {
|
|
|
183
183
|
apiResourceProps.allowedMethods,
|
|
184
184
|
apiResourceProps.allowedHeaders,
|
|
185
185
|
apiResourceProps.methodRequestParameters,
|
|
186
|
-
apiResourceProps.proxyIntegration
|
|
186
|
+
apiResourceProps.proxyIntegration,
|
|
187
|
+
apiResourceProps.enableDefaultCors
|
|
187
188
|
)
|
|
188
189
|
}
|
|
189
190
|
|
|
@@ -124,16 +124,25 @@ export class ApiManager {
|
|
|
124
124
|
allowedMethods?: string[],
|
|
125
125
|
allowedHeaders?: string[],
|
|
126
126
|
methodRequestParameters?: { [param: string]: boolean },
|
|
127
|
-
proxyIntegration?: Integration
|
|
127
|
+
proxyIntegration?: Integration,
|
|
128
|
+
enableDefaultCors?: boolean
|
|
128
129
|
) {
|
|
129
130
|
const methods = allowedMethods ?? Cors.ALL_METHODS
|
|
130
|
-
|
|
131
|
-
|
|
131
|
+
|
|
132
|
+
let defaultCorsPreflightOptions
|
|
133
|
+
if (!enableDefaultCors) {
|
|
134
|
+
defaultCorsPreflightOptions = undefined
|
|
135
|
+
} else {
|
|
136
|
+
defaultCorsPreflightOptions = {
|
|
132
137
|
allowCredentials: true,
|
|
133
138
|
allowHeaders: allowedHeaders ?? Cors.DEFAULT_HEADERS,
|
|
134
139
|
allowMethods: [...methods, 'OPTIONS'],
|
|
135
140
|
allowOrigins: allowedOrigins ?? Cors.ALL_ORIGINS,
|
|
136
|
-
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
const resource = parent.addResource(path, {
|
|
145
|
+
defaultCorsPreflightOptions: defaultCorsPreflightOptions,
|
|
137
146
|
})
|
|
138
147
|
|
|
139
148
|
_.forEach(methods, method => {
|
|
@@ -146,12 +155,7 @@ export class ApiManager {
|
|
|
146
155
|
|
|
147
156
|
if (addProxy) {
|
|
148
157
|
const resourceProxy = resource.addResource(`{${path}+}`, {
|
|
149
|
-
defaultCorsPreflightOptions:
|
|
150
|
-
allowCredentials: true,
|
|
151
|
-
allowHeaders: allowedHeaders ?? Cors.DEFAULT_HEADERS,
|
|
152
|
-
allowMethods: [...methods, 'OPTIONS'],
|
|
153
|
-
allowOrigins: allowedOrigins ?? Cors.ALL_ORIGINS,
|
|
154
|
-
},
|
|
158
|
+
defaultCorsPreflightOptions: defaultCorsPreflightOptions,
|
|
155
159
|
})
|
|
156
160
|
|
|
157
161
|
_.forEach(methods, method => {
|
|
@@ -39,14 +39,14 @@ export const ArnsByRegionForX86_64: { [region: string]: string } = {
|
|
|
39
39
|
* @returns { Map<string, string> } AppConfig extension ARN by region for arm64
|
|
40
40
|
*/
|
|
41
41
|
export const ArnsByRegionForArm64: { [region: string]: string } = {
|
|
42
|
-
'ap-northeast-1': 'arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:
|
|
43
|
-
'ap-south-1': 'arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:
|
|
44
|
-
'ap-southeast-1': 'arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:
|
|
45
|
-
'ap-southeast-2': 'arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:
|
|
46
|
-
'eu-central-1': 'arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:
|
|
47
|
-
'eu-west-1': 'arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:
|
|
48
|
-
'eu-west-2': 'arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:
|
|
49
|
-
'us-east-1': 'arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:
|
|
50
|
-
'us-east-2': 'arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:
|
|
51
|
-
'us-west-2': 'arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:
|
|
42
|
+
'ap-northeast-1': 'arn:aws:lambda:ap-northeast-1:980059726660:layer:AWS-AppConfig-Extension-Arm64:51',
|
|
43
|
+
'ap-south-1': 'arn:aws:lambda:ap-south-1:554480029851:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
44
|
+
'ap-southeast-1': 'arn:aws:lambda:ap-southeast-1:421114256042:layer:AWS-AppConfig-Extension-Arm64:58',
|
|
45
|
+
'ap-southeast-2': 'arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
46
|
+
'eu-central-1': 'arn:aws:lambda:eu-central-1:066940009817:layer:AWS-AppConfig-Extension-Arm64:49',
|
|
47
|
+
'eu-west-1': 'arn:aws:lambda:eu-west-1:434848589818:layer:AWS-AppConfig-Extension-Arm64:63',
|
|
48
|
+
'eu-west-2': 'arn:aws:lambda:eu-west-2:282860088358:layer:AWS-AppConfig-Extension-Arm64:50',
|
|
49
|
+
'us-east-1': 'arn:aws:lambda:us-east-1:027255383542:layer:AWS-AppConfig-Extension-Arm64:61',
|
|
50
|
+
'us-east-2': 'arn:aws:lambda:us-east-2:728743619870:layer:AWS-AppConfig-Extension-Arm64:45',
|
|
51
|
+
'us-west-2': 'arn:aws:lambda:us-west-2:359756378197:layer:AWS-AppConfig-Extension-Arm64:63',
|
|
52
52
|
}
|