feat: CORS enable button...ish still now understanding this
This commit is contained in:
@@ -26,8 +26,11 @@ import type {
|
||||
ApiGatewayTestRouteResult,
|
||||
ApiGatewayRoutesResult,
|
||||
ApiGatewayDeleteRouteInput,
|
||||
ApiGatewayCorsInput,
|
||||
ApiGatewayCorsResult,
|
||||
S3LambdaTriggerInput,
|
||||
S3LambdaTriggerOverview,
|
||||
S3BucketWebsiteConfiguration,
|
||||
EventBridgeLambdaTriggerInput,
|
||||
EventBridgeLambdaTriggerOverview,
|
||||
EventBridgeRuleInput,
|
||||
@@ -280,6 +283,12 @@ export class CloudProxyService {
|
||||
await adapter.deleteApiGatewayRoute(apiId, input)
|
||||
}
|
||||
|
||||
async enableApiGatewayCors(cloud: CloudProvider, apiId: string, input: ApiGatewayCorsInput): Promise<ApiGatewayCorsResult> {
|
||||
const adapter = this.requireAdapter(cloud, 'apigateway')
|
||||
if (!adapter.enableApiGatewayCors) throw new NotSupportedError(`API Gateway CORS is not supported for ${cloud}`)
|
||||
return adapter.enableApiGatewayCors(apiId, input)
|
||||
}
|
||||
|
||||
async createS3LambdaTrigger(cloud: CloudProvider, bucketName: string, input: S3LambdaTriggerInput): Promise<S3LambdaTriggerOverview> {
|
||||
const adapter = this.requireAdapter(cloud, 'storage')
|
||||
if (!adapter.createS3LambdaTrigger) throw new NotSupportedError(`S3 Lambda triggers are not supported for ${cloud}`)
|
||||
@@ -298,6 +307,24 @@ export class CloudProxyService {
|
||||
await adapter.deleteS3LambdaTrigger(bucketName, triggerId)
|
||||
}
|
||||
|
||||
async getS3BucketWebsite(cloud: CloudProvider, bucketName: string): Promise<S3BucketWebsiteConfiguration | null> {
|
||||
const adapter = this.requireAdapter(cloud, 'storage')
|
||||
if (!adapter.getS3BucketWebsite) throw new NotSupportedError(`S3 website hosting is not supported for ${cloud}`)
|
||||
return adapter.getS3BucketWebsite(bucketName)
|
||||
}
|
||||
|
||||
async putS3BucketWebsite(cloud: CloudProvider, bucketName: string, configuration: S3BucketWebsiteConfiguration): Promise<void> {
|
||||
const adapter = this.requireAdapter(cloud, 'storage')
|
||||
if (!adapter.putS3BucketWebsite) throw new NotSupportedError(`S3 website hosting is not supported for ${cloud}`)
|
||||
await adapter.putS3BucketWebsite(bucketName, configuration)
|
||||
}
|
||||
|
||||
async deleteS3BucketWebsite(cloud: CloudProvider, bucketName: string): Promise<void> {
|
||||
const adapter = this.requireAdapter(cloud, 'storage')
|
||||
if (!adapter.deleteS3BucketWebsite) throw new NotSupportedError(`S3 website hosting is not supported for ${cloud}`)
|
||||
await adapter.deleteS3BucketWebsite(bucketName)
|
||||
}
|
||||
|
||||
async createEventBridgeLambdaTrigger(cloud: CloudProvider, input: EventBridgeLambdaTriggerInput): Promise<EventBridgeLambdaTriggerOverview> {
|
||||
const adapter = this.requireAdapter(cloud, 'serverless')
|
||||
if (!adapter.createEventBridgeLambdaTrigger) throw new NotSupportedError(`EventBridge Lambda triggers are not supported for ${cloud}`)
|
||||
|
||||
Reference in New Issue
Block a user