Repository: cdklabs/cdk-appflow (language: python)

Issue:
Missing consistent styling
At the moment styling is not enforced so PRs are bloated with changes that are not relevant. 
Projen for CDK has `prettier` option that can be used to enforce consistent styling. 


Discussion / hints:

Fix patch:
diff --git a/.eslintrc.json b/.eslintrc.json
index 80b840db..200f5e98 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -16,7 +16,8 @@
     "project": "./tsconfig.dev.json"
   },
   "extends": [
-    "plugin:import/typescript"
+    "plugin:import/typescript",
+    "plugin:prettier/recommended"
   ],
   "settings": {
     "import/parsers": {
@@ -43,102 +44,6 @@
     "!projenrc/**/*.ts"
   ],
   "rules": {
-    "indent": [
-      "off"
-    ],
-    "@typescript-eslint/indent": [
-      "error",
-      2
-    ],
-    "quotes": [
-      "error",
-      "single",
-      {
-        "avoidEscape": true
-      }
-    ],
-    "comma-dangle": [
-      "error",
-      "always-multiline"
-    ],
-    "comma-spacing": [
-      "error",
-      {
-        "before": false,
-        "after": true
-      }
-    ],
-    "no-multi-spaces": [
-      "error",
-      {
-        "ignoreEOLComments": false
-      }
-    ],
-    "array-bracket-spacing": [
-      "error",
-      "never"
-    ],
-    "array-bracket-newline": [
-      "error",
-      "consistent"
-    ],
-    "object-curly-spacing": [
-      "error",
-      "always"
-    ],
-    "object-curly-newline": [
-      "error",
-      {
-        "multiline": true,
-        "consistent": true
-      }
-    ],
-    "object-property-newline": [
-      "error",
-      {
-        "allowAllPropertiesOnSameLine": true
-      }
-    ],
-    "keyword-spacing": [
-      "error"
-    ],
-    "brace-style": [
-      "error",
-      "1tbs",
-      {
-        "allowSingleLine": true
-      }
-    ],
-    "space-before-blocks": [
-      "error"
-    ],
-    "curly": [
-      "error",
-      "multi-line",
-      "consistent"
-    ],
-    "@typescript-eslint/member-delimiter-style": [
-      "error"
-    ],
-    "semi": [
-      "error",
-      "always"
-    ],
-    "max-len": [
-      "error",
-      {
-        "code": 150,
-        "ignoreUrls": true,
-        "ignoreStrings": true,
-        "ignoreTemplateLiterals": true,
-        "ignoreComments": true,
-        "ignoreRegExpLiterals": true
-      }
-    ],
-    "quote-props": [
-      "error",
-      "consistent-as-needed"
-    ],
     "@typescript-eslint/no-require-imports": [
       "error"
     ],
diff --git a/.gitattributes b/.gitattributes
index fbd8d6dd..509d7d4e 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -15,6 +15,8 @@
 /.gitignore linguist-generated
 /.mergify.yml linguist-generated
 /.npmignore linguist-generated
+/.prettierignore linguist-generated
+/.prettierrc.json linguist-generated
 /.projen/** linguist-generated
 /.projen/deps.json linguist-generated
 /.projen/files.json linguist-generated
diff --git a/.gitignore b/.gitignore
index 861040e7..579428a4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -43,6 +43,8 @@ junit.xml
 !/.github/workflows/release.yml
 !/.mergify.yml
 !/.github/pull_request_template.md
+!/.prettierignore
+!/.prettierrc.json
 !/test/
 !/tsconfig.dev.json
 !/src/
diff --git a/.npmignore b/.npmignore
index b43696b4..15c4652c 100644
--- a/.npmignore
+++ b/.npmignore
@@ -7,6 +7,8 @@ permissions-backup.acl
 /dist/changelog.md
 /dist/version.txt
 /.mergify.yml
+/.prettierignore
+/.prettierrc.json
 /test/
 /tsconfig.dev.json
 /src/
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 00000000..5afa5583
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,2 @@
+# ~~ Generated by projen. To modify, edit .projenrc.ts and run "npx projen".
+src/core/flows/flow-time-updater/flow-time-updater-function.ts
diff --git a/.prettierrc.json b/.prettierrc.json
new file mode 100644
index 00000000..84c85a38
--- /dev/null
+++ b/.prettierrc.json
@@ -0,0 +1,3 @@
+{
+  "overrides": []
+}
diff --git a/.projen/deps.json b/.projen/deps.json
index 8dff03c2..bf58b610 100644
--- a/.projen/deps.json
+++ b/.projen/deps.json
@@ -42,6 +42,10 @@
       "name": "esbuild",
       "type": "build"
     },
+    {
+      "name": "eslint-config-prettier",
+      "type": "build"
+    },
     {
       "name": "eslint-import-resolver-typescript",
       "type": "build"
@@ -50,6 +54,10 @@
       "name": "eslint-plugin-import",
       "type": "build"
     },
+    {
+      "name": "eslint-plugin-prettier",
+      "type": "build"
+    },
     {
       "name": "eslint",
       "version": "^8",
@@ -87,6 +95,10 @@
       "version": "~5.4.30",
       "type": "build"
     },
+    {
+      "name": "prettier",
+      "type": "build"
+    },
     {
       "name": "projen",
       "type": "build"
diff --git a/.projen/files.json b/.projen/files.json
index 96af84ef..299806a2 100644
--- a/.projen/files.json
+++ b/.projen/files.json
@@ -12,6 +12,8 @@
     ".github/workflows/upgrade-main.yml",
     ".gitignore",
     ".mergify.yml",
+    ".prettierignore",
+    ".prettierrc.json",
     ".projen/deps.json",
     ".projen/files.json",
     ".projen/tasks.json",
diff --git a/.projen/tasks.json b/.projen/tasks.json
index 5b46d6d6..9df5b0d1 100644
--- a/.projen/tasks.json
+++ b/.projen/tasks.json
@@ -1533,13 +1533,13 @@
       },
       "steps": [
         {
-          "exec": "npx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev --filter=@types/aws-lambda,esbuild,eslint-import-resolver-typescript,eslint-plugin-import,jsii-diff,jsii-pacmak,jsii-rosetta,ts-node,typescript"
+          "exec": "npx npm-check-updates@16 --upgrade --target=minor --peer --dep=dev --filter=@types/aws-lambda,esbuild,eslint-config-prettier,eslint-import-resolver-typescript,eslint-plugin-import,eslint-plugin-prettier,jsii-diff,jsii-pacmak,jsii-rosetta,prettier,ts-node,typescript"
         },
         {
           "exec": "yarn install --check-files"
         },
         {
-          "exec": "yarn upgrade @types/aws-lambda @types/jest @types/node @typescript-eslint/eslint-plugin @typescript-eslint/parser aws-cdk commit-and-tag-version esbuild eslint-import-resolver-typescript eslint-plugin-import eslint jest-junit jest jsii-diff jsii-docgen jsii-pacmak jsii-rosetta jsii ts-jest ts-node typescript @aws-cdk/integ-runner @aws-cdk/integ-tests-alpha"
+          "exec": "yarn upgrade @types/aws-lambda @types/jest @types/node @typescript-eslint/eslint-plugin @typescript-eslint/parser aws-cdk commit-and-tag-version esbuild eslint-config-prettier eslint-import-resolver-typescript eslint-plugin-import eslint-plugin-prettier eslint jest-junit jest jsii-diff jsii-docgen jsii-pacmak jsii-rosetta jsii prettier ts-jest ts-node typescript @aws-cdk/integ-runner @aws-cdk/integ-tests-alpha"
         },
         {
           "exec": "npx projen"
diff --git a/.projenrc.ts b/.projenrc.ts
index dbbcab2a..05485fe2 100644
--- a/.projenrc.ts
+++ b/.projenrc.ts
@@ -2,42 +2,35 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CdklabsConstructLibrary } from 'cdklabs-projen-project-types';
-import { Stability } from 'projen/lib/cdk';
+import { CdklabsConstructLibrary } from "cdklabs-projen-project-types";
+import { Stability } from "projen/lib/cdk";
 
-const cdkVersion = '2.159.1';
+const cdkVersion = "2.159.1";
 
 const project = new CdklabsConstructLibrary({
-  name: '@cdklabs/cdk-appflow',
-  author: 'Amazon Web Services',
-  authorAddress: 'cdk-appflow-maintainers@amazon.com',
+  name: "@cdklabs/cdk-appflow",
+  author: "Amazon Web Services",
+  authorAddress: "cdk-appflow-maintainers@amazon.com",
   cdkVersion,
-  defaultReleaseBranch: 'main',
+  defaultReleaseBranch: "main",
   projenrcTs: true,
   private: false,
-  repositoryUrl: 'https://github.com/cdklabs/cdk-appflow.git',
+  repositoryUrl: "https://github.com/cdklabs/cdk-appflow.git",
   stability: Stability.EXPERIMENTAL,
   docgen: true,
+  eslint: true,
+  prettier: true,
   bundledDeps: [],
-  devDeps: [
-    '@types/aws-lambda',
-    'esbuild',
-  ],
+  devDeps: ["@types/aws-lambda", "esbuild"],
   peerDeps: [
     `@aws-cdk/aws-redshift-alpha@${cdkVersion}-alpha.0`,
     `@aws-cdk/aws-glue-alpha@${cdkVersion}-alpha.0`,
   ],
-  jsiiVersion: '~5.4.30',
-  keywords: [
-    'aws',
-    'appflow',
-    'cdk',
-  ],
-  gitignore: [
-    '*.rest', '.vscode', '**/.DS_Store',
-  ],
+  jsiiVersion: "~5.4.30",
+  keywords: ["aws", "appflow", "cdk"],
+  gitignore: ["*.rest", ".vscode", "**/.DS_Store"],
   jestOptions: {
-    jestVersion: '^29',
+    jestVersion: "^29",
   },
 });
 project.synth();
diff --git a/package.json b/package.json
index ce54a8c5..35841cda 100644
--- a/package.json
+++ b/package.json
@@ -143,8 +143,10 @@
     "constructs": "10.0.5",
     "esbuild": "^0.24.0",
     "eslint": "^8",
+    "eslint-config-prettier": "^9.1.0",
     "eslint-import-resolver-typescript": "^3.6.3",
     "eslint-plugin-import": "^2.31.0",
+    "eslint-plugin-prettier": "^5.2.1",
     "jest": "^29",
     "jest-junit": "^15",
     "jsii": "~5.4.30",
@@ -152,6 +154,7 @@
     "jsii-docgen": "^10.5.0",
     "jsii-pacmak": "^1.104.0",
     "jsii-rosetta": "^5.5.5",
+    "prettier": "^3.3.3",
     "projen": "^0.87.4",
     "ts-jest": "^29",
     "ts-node": "^10.9.2",
diff --git a/src/amazonrdsforpostgresql/destination.ts b/src/amazonrdsforpostgresql/destination.ts
index daba3cd9..c01eb296 100644
--- a/src/amazonrdsforpostgresql/destination.ts
+++ b/src/amazonrdsforpostgresql/destination.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { AmazonRdsForPostgreSqlConnectorProfile } from './profile';
-import { AmazonRdsForPostgreSqlConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { WriteOperationType } from '../core/write-operation';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { AmazonRdsForPostgreSqlConnectorProfile } from "./profile";
+import { AmazonRdsForPostgreSqlConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { WriteOperationType } from "../core/write-operation";
 
 /**
  * The definition of the Amazon AppFlow object for Amazon RDS for PostgreSQL
@@ -32,7 +32,6 @@ export interface AmazonRdsForPostgreSqlObject {
  * Properties of the AmazonRdsForPostgreSqlDestination
  */
 export interface AmazonRdsForPostgreSqlDestinationProps {
-
   /**
    * The profile to use with the destination
    */
@@ -58,28 +57,35 @@ export interface AmazonRdsForPostgreSqlDestinationProps {
  * Represents a destination for the Amazon RDS for PostgreSQL connector
  */
 export class AmazonRdsForPostgreSqlDestination implements IDestination {
+  private static readonly defaultApiVersion = "1.0";
 
-  private static readonly defaultApiVersion = '1.0';
-
-  public readonly connectorType: ConnectorType = AmazonRdsForPostgreSqlConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    AmazonRdsForPostgreSqlConnectorType.instance;
 
   /**
    * Creates a new instance of the AmazonRdsForPostgreSqlDestination
    * @param props - properties of the destination
    */
-  constructor(private readonly props: AmazonRdsForPostgreSqlDestinationProps) { }
+  constructor(private readonly props: AmazonRdsForPostgreSqlDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
-      apiVersion: this.props.apiVersion ?? AmazonRdsForPostgreSqlDestination.defaultApiVersion,
+      apiVersion:
+        this.props.apiVersion ??
+        AmazonRdsForPostgreSqlDestination.defaultApiVersion,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -88,7 +94,8 @@ export class AmazonRdsForPostgreSqlDestination implements IDestination {
       customConnector: {
         entityName: `${this.props.object.schema}.${this.props.object.table}`,
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -97,9 +104,12 @@ export class AmazonRdsForPostgreSqlDestination implements IDestination {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/amazonrdsforpostgresql/index.ts b/src/amazonrdsforpostgresql/index.ts
index 1c39308b..055d082c 100644
--- a/src/amazonrdsforpostgresql/index.ts
+++ b/src/amazonrdsforpostgresql/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './destination';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./destination";
diff --git a/src/amazonrdsforpostgresql/profile.ts b/src/amazonrdsforpostgresql/profile.ts
index 4a7fbca3..a83d8119 100644
--- a/src/amazonrdsforpostgresql/profile.ts
+++ b/src/amazonrdsforpostgresql/profile.ts
@@ -2,17 +2,21 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { AmazonRdsForPostgreSqlConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { AmazonRdsForPostgreSqlConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 /**
  * Properties of the AmazonRdsForPostgreSqlConnectorProfile
  */
-export interface AmazonRdsForPostgreSqlConnectorProfileProps extends ConnectorProfileProps {
+export interface AmazonRdsForPostgreSqlConnectorProfileProps
+  extends ConnectorProfileProps {
   /**
    * The auth settings for the profile
    */
@@ -51,7 +55,6 @@ export interface AmazonRdsForPostgreSqlBasicAuthSettings {
  * The connector profile for the Amazon RDS for PostgreSQL connector
  */
 export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase {
-
   /**
    * Imports an existing AmazonRdsForPostgreSqlConnectorProfile
    * @param scope the scope for the connector profile
@@ -59,8 +62,14 @@ export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase
    * @param arn the ARN for the existing connector profile
    * @returns An instance of the AmazonRdsForPostreSqlConnectorProfile
    */
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as AmazonRdsForPostgreSqlConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as AmazonRdsForPostgreSqlConnectorProfile;
   }
 
   /**
@@ -70,8 +79,14 @@ export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase
    * @param name the name for the existing connector profile
    * @returns An instance of the AmazonRdsForPostreSqlConnectorProfile
    */
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as AmazonRdsForPostgreSqlConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as AmazonRdsForPostgreSqlConnectorProfile;
   }
 
   private static readonly defaultPort: number = 5432;
@@ -82,11 +97,17 @@ export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase
    * @param id the id of this connector profile
    * @param props properties to use when instantiating this connector profile
    */
-  constructor(scope: Construct, id: string, props: AmazonRdsForPostgreSqlConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: AmazonRdsForPostgreSqlConnectorProfileProps,
+  ) {
     super(scope, id, props, AmazonRdsForPostgreSqlConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(_props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+  protected buildConnectorProfileProperties(
+    _props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
     return {
       customConnector: {
         profileProperties: {},
@@ -94,8 +115,10 @@ export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as AmazonRdsForPostgreSqlConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as AmazonRdsForPostgreSqlConnectorProfileProps;
     return {
       customConnector: {
         authenticationType: ConnectorAuthenticationType.CUSTOM,
@@ -103,14 +126,16 @@ export class AmazonRdsForPostgreSqlConnectorProfile extends ConnectorProfileBase
           credentialsMap: {
             username: properties.basicAuth.username,
             password: properties.basicAuth.password.unsafeUnwrap(),
-            driver: 'postgresql',
+            driver: "postgresql",
             hostname: properties.hostname,
-            port: properties.port ? `${properties.port}` : AmazonRdsForPostgreSqlConnectorProfile.defaultPort.toString(),
+            port: properties.port
+              ? `${properties.port}`
+              : AmazonRdsForPostgreSqlConnectorProfile.defaultPort.toString(),
             database: properties.database,
           },
-          customAuthenticationType: 'CUSTOM',
+          customAuthenticationType: "CUSTOM",
         },
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/amazonrdsforpostgresql/type.ts b/src/amazonrdsforpostgresql/type.ts
index 6d882db9..bebbc808 100644
--- a/src/amazonrdsforpostgresql/type.ts
+++ b/src/amazonrdsforpostgresql/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class AmazonRdsForPostgreSqlConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!AmazonRdsForPostgreSqlConnectorType.actualInstance) {
-      AmazonRdsForPostgreSqlConnectorType.actualInstance = new AmazonRdsForPostgreSqlConnectorType();
+      AmazonRdsForPostgreSqlConnectorType.actualInstance =
+        new AmazonRdsForPostgreSqlConnectorType();
     }
     return AmazonRdsForPostgreSqlConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class AmazonRdsForPostgreSqlConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('AmazonRDSPostgreSQL', true);
+    super("AmazonRDSPostgreSQL", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/asana/index.ts b/src/asana/index.ts
index e8112703..a4672084 100644
--- a/src/asana/index.ts
+++ b/src/asana/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
diff --git a/src/asana/profile.ts b/src/asana/profile.ts
index f913b3a8..48043c39 100644
--- a/src/asana/profile.ts
+++ b/src/asana/profile.ts
@@ -2,12 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { AsanaConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { AsanaConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface AsanaConnectorProfileProps extends ConnectorProfileProps {
   readonly patToken: SecretValue;
@@ -18,29 +21,44 @@ export interface AsanaConnectorProfileProps extends ConnectorProfileProps {
  *
  */
 export class AsanaConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as AsanaConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as AsanaConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as AsanaConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as AsanaConnectorProfile;
   }
 
   constructor(scope: Construct, id: string, props: AsanaConnectorProfileProps) {
     super(scope, id, props, AsanaConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(_props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+  protected buildConnectorProfileProperties(
+    _props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
     return {
       customConnector: {
-        profileProperties: { },
+        profileProperties: {},
       },
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as AsanaConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as AsanaConnectorProfileProps;
 
     return {
       customConnector: {
@@ -49,9 +67,9 @@ export class AsanaConnectorProfile extends ConnectorProfileBase {
           credentialsMap: {
             patToken: properties.patToken.unsafeUnwrap(),
           },
-          customAuthenticationType: 'PAT',
+          customAuthenticationType: "PAT",
         },
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/asana/source.ts b/src/asana/source.ts
index 0d7b7e71..70e21544 100644
--- a/src/asana/source.ts
+++ b/src/asana/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { AsanaConnectorProfile } from './profile';
-import { AsanaConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { AsanaConnectorProfile } from "./profile";
+import { AsanaConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 export interface AsanaSourceProps {
   readonly profile: AsanaConnectorProfile;
@@ -20,7 +20,7 @@ export interface AsanaSourceProps {
  * A class that represents a Asana v3 Source
  */
 export class AsanaSource implements ISource {
-  private static readonly apiVersion: string = '1.0';
+  private static readonly apiVersion: string = "1.0";
 
   /**
    * The AppFlow type of the connector that this source is implemented for
@@ -52,7 +52,7 @@ export class AsanaSource implements ISource {
     scope: IConstruct,
     resource?: IConstruct | string,
   ) {
-    if (resource && typeof resource !== 'string') {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/asana/type.ts b/src/asana/type.ts
index 0914b70e..3fec0f37 100644
--- a/src/asana/type.ts
+++ b/src/asana/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class AsanaConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!AsanaConnectorType.actualInstance) {
       AsanaConnectorType.actualInstance = new AsanaConnectorType();
@@ -19,6 +18,6 @@ export class AsanaConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Asana', true);
+    super("Asana", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/appflow-permissions-manager.ts b/src/core/appflow-permissions-manager.ts
index 2eb98f13..ef35bb9f 100644
--- a/src/core/appflow-permissions-manager.ts
+++ b/src/core/appflow-permissions-manager.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Annotations, Aws, Lazy } from 'aws-cdk-lib';
-import { Effect, PolicyStatement, ServicePrincipal } from 'aws-cdk-lib/aws-iam';
-import { IKey } from 'aws-cdk-lib/aws-kms';
-import { IBucket } from 'aws-cdk-lib/aws-s3';
-import { ISecret } from 'aws-cdk-lib/aws-secretsmanager';
+import { Annotations, Aws, Lazy } from "aws-cdk-lib";
+import { Effect, PolicyStatement, ServicePrincipal } from "aws-cdk-lib/aws-iam";
+import { IKey } from "aws-cdk-lib/aws-kms";
+import { IBucket } from "aws-cdk-lib/aws-s3";
+import { ISecret } from "aws-cdk-lib/aws-secretsmanager";
 
 const glob = global as any;
 
@@ -25,19 +25,30 @@ export class AppFlowPermissionsManager {
     return glob.__cdkAppFlowPermissionsManager;
   }
 
-  private readonly principal = new ServicePrincipal('appflow.amazonaws.com');
+  private readonly principal = new ServicePrincipal("appflow.amazonaws.com");
 
   private readonly tokenPermissions = new Map<string, Set<string>>();
 
-  private readonly writeS3BucketActions = ['s3:PutObject', 's3:AbortMultipartUpload',
-    's3:ListMultipartUploadParts', 's3:ListBucketMultipartUploads',
-    's3:GetBucketAcl', 's3:PutObjectAcl'];
-  private readonly readS3BucketActions = ['s3:GetObject', 's3:ListBucket'];
-  private readonly encryptKMSKeyActions = ['kms:Encrypt', 'kms:GenerateDataKey'];
-  private readonly decryptKMSKeyActions = ['kms:Decrypt'];
-  private readonly readSMSecretActions = ['secretsmanager:GetSecretValue', 'secretsmanager:DescribeSecret'];
-
-  private constructor() { }
+  private readonly writeS3BucketActions = [
+    "s3:PutObject",
+    "s3:AbortMultipartUpload",
+    "s3:ListMultipartUploadParts",
+    "s3:ListBucketMultipartUploads",
+    "s3:GetBucketAcl",
+    "s3:PutObjectAcl",
+  ];
+  private readonly readS3BucketActions = ["s3:GetObject", "s3:ListBucket"];
+  private readonly encryptKMSKeyActions = [
+    "kms:Encrypt",
+    "kms:GenerateDataKey",
+  ];
+  private readonly decryptKMSKeyActions = ["kms:Decrypt"];
+  private readonly readSMSecretActions = [
+    "secretsmanager:GetSecretValue",
+    "secretsmanager:DescribeSecret",
+  ];
+
+  private constructor() {}
 
   private getActionsFor(arn: string) {
     let actions: Set<string>;
@@ -58,20 +69,17 @@ export class AppFlowPermissionsManager {
     if (bucket) {
       const { actions, isNew } = this.getActionsFor(bucket.bucketArn);
 
-      this.writeS3BucketActions.forEach(a => actions.add(a));
+      this.writeS3BucketActions.forEach((a) => actions.add(a));
 
       if (isNew) {
         const statement = new PolicyStatement({
           effect: Effect.ALLOW,
           principals: [this.principal],
           actions: Lazy.list({ produce: () => Array.from(actions) }),
-          resources: [
-            bucket.bucketArn,
-            bucket.arnForObjects('*'),
-          ],
+          resources: [bucket.bucketArn, bucket.arnForObjects("*")],
           conditions: {
             StringEquals: {
-              'aws:SourceAccount': Aws.ACCOUNT_ID,
+              "aws:SourceAccount": Aws.ACCOUNT_ID,
             },
           },
         });
@@ -79,7 +87,9 @@ export class AppFlowPermissionsManager {
         const addResult = bucket.addToResourcePolicy(statement);
 
         if (!addResult.statementAdded) {
-          Annotations.of(bucket).addWarning('Cannot change bucket policy of imported S3 bucket. Ensure that your bucket policy contains appropriate permissions');
+          Annotations.of(bucket).addWarning(
+            "Cannot change bucket policy of imported S3 bucket. Ensure that your bucket policy contains appropriate permissions",
+          );
         }
       }
 
@@ -91,20 +101,17 @@ export class AppFlowPermissionsManager {
     if (bucket) {
       const { actions, isNew } = this.getActionsFor(bucket.bucketArn);
 
-      this.readS3BucketActions.forEach(a => actions.add(a));
+      this.readS3BucketActions.forEach((a) => actions.add(a));
 
       if (isNew) {
         const statement = new PolicyStatement({
           effect: Effect.ALLOW,
           principals: [this.principal],
           actions: Lazy.list({ produce: () => Array.from(actions) }),
-          resources: [
-            bucket.bucketArn,
-            bucket.arnForObjects('*'),
-          ],
+          resources: [bucket.bucketArn, bucket.arnForObjects("*")],
           conditions: {
             StringEquals: {
-              'aws:SourceAccount': Aws.ACCOUNT_ID,
+              "aws:SourceAccount": Aws.ACCOUNT_ID,
             },
           },
         });
@@ -112,7 +119,9 @@ export class AppFlowPermissionsManager {
         const addResult = bucket.addToResourcePolicy(statement);
 
         if (!addResult.statementAdded) {
-          Annotations.of(bucket).addWarning('Cannot change bucket policy of imported S3 bucket. Ensure that your bucket policy contains appropriate permissions');
+          Annotations.of(bucket).addWarning(
+            "Cannot change bucket policy of imported S3 bucket. Ensure that your bucket policy contains appropriate permissions",
+          );
         }
       }
 
@@ -136,24 +145,29 @@ export class AppFlowPermissionsManager {
     if (key) {
       const { actions, isNew } = this.getActionsFor(key.keyArn);
 
-      this.encryptKMSKeyActions.forEach(a => actions.add(a));
+      this.encryptKMSKeyActions.forEach((a) => actions.add(a));
 
       if (isNew) {
         const statement = new PolicyStatement({
           principals: [this.principal],
           actions: Lazy.list({ produce: () => Array.from(actions) }),
-          resources: ['*'],
+          resources: ["*"],
           conditions: {
             StringEquals: {
-              'aws:SourceAccount': Aws.ACCOUNT_ID,
+              "aws:SourceAccount": Aws.ACCOUNT_ID,
             },
           },
         });
 
-        const addResult = key.addToResourcePolicy(statement, /* allowNoOp */ true);
+        const addResult = key.addToResourcePolicy(
+          statement,
+          /* allowNoOp */ true,
+        );
 
         if (!addResult.statementAdded) {
-          Annotations.of(key).addWarning('Cannot change key policy of imported kms key. Ensure that your key policy contains appropriate permissions');
+          Annotations.of(key).addWarning(
+            "Cannot change key policy of imported kms key. Ensure that your key policy contains appropriate permissions",
+          );
         }
       }
     }
@@ -163,24 +177,29 @@ export class AppFlowPermissionsManager {
     if (key) {
       const { actions, isNew } = this.getActionsFor(key.keyArn);
 
-      this.decryptKMSKeyActions.forEach(a => actions.add(a));
+      this.decryptKMSKeyActions.forEach((a) => actions.add(a));
 
       if (isNew) {
         const statement = new PolicyStatement({
           principals: [this.principal],
           actions: Lazy.list({ produce: () => Array.from(actions) }),
-          resources: ['*'],
+          resources: ["*"],
           conditions: {
             StringEquals: {
-              'aws:SourceAccount': Aws.ACCOUNT_ID,
+              "aws:SourceAccount": Aws.ACCOUNT_ID,
             },
           },
         });
 
-        const addResult = key.addToResourcePolicy(statement, /* allowNoOp */ true);
+        const addResult = key.addToResourcePolicy(
+          statement,
+          /* allowNoOp */ true,
+        );
 
         if (!addResult.statementAdded) {
-          Annotations.of(key).addWarning('Cannot change key policy of imported kms key. Ensure that your key policy contains appropriate permissions');
+          Annotations.of(key).addWarning(
+            "Cannot change key policy of imported kms key. Ensure that your key policy contains appropriate permissions",
+          );
         }
       }
     }
@@ -190,16 +209,20 @@ export class AppFlowPermissionsManager {
     if (secret) {
       const { actions, isNew } = this.getActionsFor(secret.secretArn);
 
-      this.readSMSecretActions.forEach(a => actions.add(a));
+      this.readSMSecretActions.forEach((a) => actions.add(a));
 
       if (isNew) {
         const statement = new PolicyStatement({
           principals: [this.principal],
           actions: Lazy.list({ produce: () => Array.from(actions) }),
-          resources: [secret.secretFullArn ? secret.secretFullArn : `${secret.secretArn}-??????`],
+          resources: [
+            secret.secretFullArn
+              ? secret.secretFullArn
+              : `${secret.secretArn}-??????`,
+          ],
           conditions: {
             StringEquals: {
-              'aws:SourceAccount': Aws.ACCOUNT_ID,
+              "aws:SourceAccount": Aws.ACCOUNT_ID,
             },
           },
         });
@@ -207,11 +230,13 @@ export class AppFlowPermissionsManager {
         const addResult = secret.addToResourcePolicy(statement);
 
         if (!addResult.statementAdded) {
-          Annotations.of(secret).addWarning('Cannot change secret policy of imported sm secret. Ensure that your secret policy contains appropriate permissions');
+          Annotations.of(secret).addWarning(
+            "Cannot change secret policy of imported sm secret. Ensure that your secret policy contains appropriate permissions",
+          );
         }
 
         this.grantKeyEncryptDecrypt(secret.encryptionKey);
       }
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/connectors/connection-mode.ts b/src/core/connectors/connection-mode.ts
index 6a54c162..fbd47e45 100644
--- a/src/core/connectors/connection-mode.ts
+++ b/src/core/connectors/connection-mode.ts
@@ -3,9 +3,9 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum ConnectionMode {
-  PUBLIC = 'Public',
+  PUBLIC = "Public",
   /**
    * @internal
    */
-  PRIVATE = 'Private',
+  PRIVATE = "Private",
 }
diff --git a/src/core/connectors/connector-authentication-type.ts b/src/core/connectors/connector-authentication-type.ts
index 5754d91a..68b94a51 100644
--- a/src/core/connectors/connector-authentication-type.ts
+++ b/src/core/connectors/connector-authentication-type.ts
@@ -3,8 +3,8 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum ConnectorAuthenticationType {
-  APIKEY = 'APIKEY',
-  BASIC = 'BASIC',
-  CUSTOM = 'CUSTOM',
-  OAUTH2 = 'OAUTH2'
-}
\ No newline at end of file
+  APIKEY = "APIKEY",
+  BASIC = "BASIC",
+  CUSTOM = "CUSTOM",
+  OAUTH2 = "OAUTH2",
+}
diff --git a/src/core/connectors/connector-profile.ts b/src/core/connectors/connector-profile.ts
index 91e73372..3a6eaeec 100644
--- a/src/core/connectors/connector-profile.ts
+++ b/src/core/connectors/connector-profile.ts
@@ -2,14 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Arn, ArnFormat, IResource, Resource, Stack } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { IKey } from 'aws-cdk-lib/aws-kms';
-import { ISecret, Secret } from 'aws-cdk-lib/aws-secretsmanager';
-import { Construct, IConstruct } from 'constructs';
-import { ConnectionMode } from './connection-mode';
-import { ConnectorType } from './connector-type';
-import { AppFlowPermissionsManager } from '../appflow-permissions-manager';
+import { Arn, ArnFormat, IResource, Resource, Stack } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { IKey } from "aws-cdk-lib/aws-kms";
+import { ISecret, Secret } from "aws-cdk-lib/aws-secretsmanager";
+import { Construct, IConstruct } from "constructs";
+import { ConnectionMode } from "./connection-mode";
+import { ConnectorType } from "./connector-type";
+import { AppFlowPermissionsManager } from "../appflow-permissions-manager";
 
 export interface IConnectorProfile extends IResource {
   readonly name: string;
@@ -26,17 +26,22 @@ export interface ConnectorProfileProps {
   readonly key?: IKey;
 }
 
-export abstract class ConnectorProfileBase extends Resource implements IConnectorProfile {
-
+export abstract class ConnectorProfileBase
+  extends Resource
+  implements IConnectorProfile
+{
   /**
    * @internal
    * @experimental
    */
-  protected static _fromConnectorProfileAttributes(scope: Construct, id: string, attrs: {
-    name?: string;
-    arn?: string;
-  }): IConnectorProfile {
-
+  protected static _fromConnectorProfileAttributes(
+    scope: Construct,
+    id: string,
+    attrs: {
+      name?: string;
+      arn?: string;
+    },
+  ): IConnectorProfile {
     if (attrs.name === undefined && attrs.arn === undefined) {
       throw new Error("Either 'name' or 'arn' needs to be defined");
     }
@@ -49,13 +54,17 @@ export abstract class ConnectorProfileBase extends Resource implements IConnecto
       public readonly name: string;
       constructor() {
         super(scope, id);
-        this.arn = arn ? arn : Stack.of(this).formatArn({
-          service: 'appflow',
-          resource: 'connectorprofile',
-          resourceName: name,
-          arnFormat: ArnFormat.SLASH_RESOURCE_NAME,
-        });
-        this.name = name ? name : Arn.split(arn!, ArnFormat.SLASH_RESOURCE_NAME).resourceName!;
+        this.arn = arn
+          ? arn
+          : Stack.of(this).formatArn({
+              service: "appflow",
+              resource: "connectorprofile",
+              resourceName: name,
+              arnFormat: ArnFormat.SLASH_RESOURCE_NAME,
+            });
+        this.name = name
+          ? name
+          : Arn.split(arn!, ArnFormat.SLASH_RESOURCE_NAME).resourceName!;
       }
     }
 
@@ -66,7 +75,12 @@ export abstract class ConnectorProfileBase extends Resource implements IConnecto
   public readonly credentials?: ISecret;
   public readonly name: string;
 
-  constructor(scope: Construct, id: string, props: ConnectorProfileProps, connectorType: ConnectorType) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: ConnectorProfileProps,
+    connectorType: ConnectorType,
+  ) {
     super(scope, id);
 
     this.name = props.name ?? id;
@@ -80,22 +94,33 @@ export abstract class ConnectorProfileBase extends Resource implements IConnecto
       connectionMode: ConnectionMode.PUBLIC,
       kmsArn: props.key && props.key.keyArn,
       connectorProfileConfig: {
-        connectorProfileCredentials: this.buildConnectorProfileCredentials(props),
+        connectorProfileCredentials:
+          this.buildConnectorProfileCredentials(props),
         connectorProfileProperties: this.buildConnectorProfileProperties(props),
       },
     });
 
     this.arn = resource.attrConnectorProfileArn;
-    this.credentials = Secret.fromSecretCompleteArn(scope, `${id}Credentials`, resource.attrCredentialsArn);
+    this.credentials = Secret.fromSecretCompleteArn(
+      scope,
+      `${id}Credentials`,
+      resource.attrCredentialsArn,
+    );
   }
 
-  protected abstract buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty;
-  protected abstract buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty;
-
-  protected tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  protected abstract buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty;
+  protected abstract buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty;
+
+  protected tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-
-}
\ No newline at end of file
+}
diff --git a/src/core/connectors/connector-type.ts b/src/core/connectors/connector-type.ts
index 1f8dc214..7f76a880 100644
--- a/src/core/connectors/connector-type.ts
+++ b/src/core/connectors/connector-type.ts
@@ -3,24 +3,24 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export class ConnectorType {
-
-  protected constructor(protected readonly name: string, public readonly isCustom: boolean) { }
+  protected constructor(
+    protected readonly name: string,
+    public readonly isCustom: boolean,
+  ) {}
 
   public get asProfileConnectorType(): string {
     return this.isCustom
-      ? 'CustomConnector'
+      ? "CustomConnector"
       : `${this.name[0].toUpperCase()}${this.name.substring(1).toLowerCase()}`;
   }
 
   public get asTaskConnectorOperatorOrigin(): string {
     return this.isCustom
-      ? 'customConnector'
+      ? "customConnector"
       : `${this.name[0].toLowerCase()}${this.name.substring(1)}`;
   }
 
   public get asProfileConnectorLabel(): string | undefined {
-    return this.isCustom
-      ? this.name
-      : undefined;
+    return this.isCustom ? this.name : undefined;
   }
 }
diff --git a/src/core/connectors/index.ts b/src/core/connectors/index.ts
index 32173efd..4b318c7f 100644
--- a/src/core/connectors/index.ts
+++ b/src/core/connectors/index.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './connection-mode';
-export * from './connector-profile';
-export * from './connector-type';
-export * from './oauth2-granttype';
-export * from './connector-authentication-type';
\ No newline at end of file
+export * from "./connection-mode";
+export * from "./connector-profile";
+export * from "./connector-type";
+export * from "./oauth2-granttype";
+export * from "./connector-authentication-type";
diff --git a/src/core/connectors/oauth2-granttype.ts b/src/core/connectors/oauth2-granttype.ts
index 5d582ebd..26ebadcd 100644
--- a/src/core/connectors/oauth2-granttype.ts
+++ b/src/core/connectors/oauth2-granttype.ts
@@ -3,6 +3,6 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum OAuth2GrantType {
-  CLIENT_CREDENTIALS = 'CLIENT_CREDENTIALS',
-  AUTHORIZATION_CODE = 'AUTHORIZATION_CODE'
+  CLIENT_CREDENTIALS = "CLIENT_CREDENTIALS",
+  AUTHORIZATION_CODE = "AUTHORIZATION_CODE",
 }
diff --git a/src/core/error-handling.ts b/src/core/error-handling.ts
index a0674420..ac69b137 100644
--- a/src/core/error-handling.ts
+++ b/src/core/error-handling.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { S3Location } from './s3-location';
+import { S3Location } from "./s3-location";
 
 export interface ErrorHandlingConfiguration {
   readonly errorLocation?: S3Location;
diff --git a/src/core/flows/flow-base.ts b/src/core/flows/flow-base.ts
index cc423efc..3d7a58e1 100644
--- a/src/core/flows/flow-base.ts
+++ b/src/core/flows/flow-base.ts
@@ -2,19 +2,19 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Duration, IResource, Lazy, Names, Resource } from 'aws-cdk-lib';
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
+import { Duration, IResource, Lazy, Names, Resource } from "aws-cdk-lib";
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
 
-import { Metric, MetricOptions } from 'aws-cdk-lib/aws-cloudwatch';
-import { OnEventOptions, Rule, Schedule } from 'aws-cdk-lib/aws-events';
-import { IKey } from 'aws-cdk-lib/aws-kms';
-import { Construct, IConstruct } from 'constructs';
-import { FlowTimeUpdater } from './flow-time-updater';
-import { ConnectorType } from '../connectors/connector-type';
+import { Metric, MetricOptions } from "aws-cdk-lib/aws-cloudwatch";
+import { OnEventOptions, Rule, Schedule } from "aws-cdk-lib/aws-events";
+import { IKey } from "aws-cdk-lib/aws-kms";
+import { Construct, IConstruct } from "constructs";
+import { FlowTimeUpdater } from "./flow-time-updater";
+import { ConnectorType } from "../connectors/connector-type";
 
-import { IMapping, ITransform, IFilter, IValidation } from '../tasks';
-import { IDestination } from '../vertices/destination';
-import { ISource } from '../vertices/source';
+import { IMapping, ITransform, IFilter, IValidation } from "../tasks";
+import { IDestination } from "../vertices/destination";
+import { ISource } from "../vertices/source";
 
 export interface IFlow extends IResource {
   /**
@@ -36,7 +36,6 @@ export interface IFlow extends IResource {
 
   onRunCompleted(id: string, options?: OnEventOptions): Rule;
 
-
   /**
    * Creates a metric to report the number of flow runs started.
    * @param options
@@ -94,19 +93,19 @@ export interface IFlow extends IResource {
 }
 
 export enum FlowType {
-  EVENT = 'Event',
-  ON_DEMAND = 'OnDemand',
-  SCHEDULED = 'Scheduled'
+  EVENT = "Event",
+  ON_DEMAND = "OnDemand",
+  SCHEDULED = "Scheduled",
 }
 
 export enum FlowStatus {
-  ACTIVE = 'Active',
-  SUSPENDED = 'Suspended'
+  ACTIVE = "Active",
+  SUSPENDED = "Suspended",
 }
 
 export enum DataPullMode {
-  COMPLETE = 'Complete',
-  INCREMENTAL = 'Incremental'
+  COMPLETE = "Complete",
+  INCREMENTAL = "Incremental",
 }
 
 export interface DataPullConfig {
@@ -159,7 +158,6 @@ export interface FlowBaseProps extends FlowProps {
 }
 
 export abstract class FlowBase extends Resource implements IFlow {
-
   /**
    * The ARN of the flow.
    */
@@ -194,30 +192,39 @@ export abstract class FlowBase extends Resource implements IFlow {
           produce: () =>
             Names.uniqueResourceName(this, {
               maxLength: 256,
-              allowedSpecialCharacters: '-_',
+              allowedSpecialCharacters: "-_",
             }),
         }),
     });
 
     this.type = props.type;
 
-    this._projectionFilter = this.initProjectionFilter(props.source.connectorType);
+    this._projectionFilter = this.initProjectionFilter(
+      props.source.connectorType,
+    );
 
     const resource = new CfnFlow(this, id, {
       flowName: this.physicalName,
       flowStatus: props.status,
       triggerConfig: {
         triggerType: props.type,
-        triggerProperties: props.triggerConfig
-          && props.triggerConfig.properties
-          && this.buildTriggerProperties(scope, id, props.triggerConfig.properties),
+        triggerProperties:
+          props.triggerConfig &&
+          props.triggerConfig.properties &&
+          this.buildTriggerProperties(
+            scope,
+            id,
+            props.triggerConfig.properties,
+          ),
       },
       kmsArn: props.key?.keyArn,
       metadataCatalogConfig: Lazy.any({ produce: () => this._catalogMetadata }),
       description: props.description,
       sourceFlowConfig: {
         ...props.source.bind(this),
-        incrementalPullConfig: this.buildIncrementalPullConfig(props.triggerConfig),
+        incrementalPullConfig: this.buildIncrementalPullConfig(
+          props.triggerConfig,
+        ),
       },
       // NOTE: currently only a single destination is allowed with AppFlow
       //       it might require a change of approach in the future.
@@ -245,28 +252,31 @@ export abstract class FlowBase extends Resource implements IFlow {
     this.name = this.physicalName;
     this.source = props.source;
 
-    props.mappings.forEach(m => this._addMapping(m));
+    props.mappings.forEach((m) => this._addMapping(m));
 
     if (props.validations) {
-      props.validations.forEach(v => this._addValidation(v));
+      props.validations.forEach((v) => this._addValidation(v));
     }
 
     if (props.transforms) {
-      props.transforms.forEach(t => this._addTransform(t));
+      props.transforms.forEach((t) => this._addTransform(t));
     }
 
     if (props.filters) {
-      props.filters.forEach(f => this._addFilter(f));
+      props.filters.forEach((f) => this._addFilter(f));
     }
 
     this.node.addValidation({
-      validate: () => this.mappings.length === 0 ? ['A Flow must have at least one mapping'] : [],
+      validate: () =>
+        this.mappings.length === 0
+          ? ["A Flow must have at least one mapping"]
+          : [],
     });
   }
 
   public metric(metricName: string, options?: MetricOptions): Metric {
     return new Metric({
-      namespace: 'AWS/AppFlow',
+      namespace: "AWS/AppFlow",
       metricName,
       dimensionsMap: {
         FlowName: this.name,
@@ -276,27 +286,30 @@ export abstract class FlowBase extends Resource implements IFlow {
   }
 
   public metricFlowExecutionsStarted(options?: MetricOptions): Metric {
-    return this.metric('FlowExecutionsStarted', options);
+    return this.metric("FlowExecutionsStarted", options);
   }
 
   public metricFlowExecutionsFailed(options?: MetricOptions): Metric {
-    return this.metric('FlowExecutionsFailed', options);
+    return this.metric("FlowExecutionsFailed", options);
   }
 
   public metricFlowExecutionsSucceeded(options?: MetricOptions): Metric {
-    return this.metric('FlowExecutionsSucceeded', options);
+    return this.metric("FlowExecutionsSucceeded", options);
   }
 
   public metricFlowExecutionTime(options?: MetricOptions): Metric {
-    return this.metric('FlowExecutionTime', options);
+    return this.metric("FlowExecutionTime", options);
   }
 
   public metricFlowExecutionRecordsProcessed(options?: MetricOptions): Metric {
-    return this.metric('FlowExecutionRecordsProcessed', options);
+    return this.metric("FlowExecutionRecordsProcessed", options);
   }
 
-  private buildTriggerProperties(scope: IConstruct, id: string, props: TriggerProperties): CfnFlow.ScheduledTriggerPropertiesProperty {
-
+  private buildTriggerProperties(
+    scope: IConstruct,
+    id: string,
+    props: TriggerProperties,
+  ): CfnFlow.ScheduledTriggerPropertiesProperty {
     const updater = new FlowTimeUpdater(scope, `${id}Updater`, {
       schedule: props.schedule,
       startTime: props.properties?.startTime,
@@ -309,30 +322,35 @@ export abstract class FlowBase extends Resource implements IFlow {
       dataPullMode: props.dataPullConfig.mode,
       flowErrorDeactivationThreshold: props.flowErrorDeactivationThreshold,
       scheduleExpression: updater.scheduleExpression,
-      firstExecutionFrom: props.properties?.firstExecutionFrom &&
+      firstExecutionFrom:
+        props.properties?.firstExecutionFrom &&
         Math.floor(props.properties.firstExecutionFrom.getTime() / 1000),
       scheduleStartTime: props.properties?.startTime && updater.startTime,
       scheduleEndTime: props.properties?.endTime && updater.endTime,
-      scheduleOffset: props.properties?.offset && props.properties.offset.toSeconds(),
+      scheduleOffset:
+        props.properties?.offset && props.properties.offset.toSeconds(),
     };
   }
 
-  private initProjectionFilter(sourceType: ConnectorType): CfnFlow.TaskProperty {
+  private initProjectionFilter(
+    sourceType: ConnectorType,
+  ): CfnFlow.TaskProperty {
     const filterConnectorOperator: { [key: string]: string } = {};
-    filterConnectorOperator[sourceType.asTaskConnectorOperatorOrigin] = 'PROJECTION';
+    filterConnectorOperator[sourceType.asTaskConnectorOperatorOrigin] =
+      "PROJECTION";
 
     return {
-      taskType: 'Filter',
+      taskType: "Filter",
       connectorOperator: filterConnectorOperator,
       sourceFields: [],
     };
   }
 
   /**
-     * Set the catalog definitionfor the flow
-     *
-     * @internal
-     */
+   * Set the catalog definitionfor the flow
+   *
+   * @internal
+   */
   public _addCatalog(metadata: CfnFlow.MetadataCatalogConfigProperty) {
     this._catalogMetadata = metadata;
   }
@@ -392,9 +410,9 @@ export abstract class FlowBase extends Resource implements IFlow {
 
   private addProjectionField(boundMappingTasks: CfnFlow.TaskProperty[]) {
     // TODO: test if this satisfies all the requirements.
-    boundMappingTasks.forEach(boundMapping => {
-      if (['Map', 'Filter'].includes(boundMapping.taskType)) {
-        boundMapping.sourceFields.forEach(field => {
+    boundMappingTasks.forEach((boundMapping) => {
+      if (["Map", "Filter"].includes(boundMapping.taskType)) {
+        boundMapping.sourceFields.forEach((field) => {
           if (!this._projectionFilter.sourceFields.includes(field)) {
             this._projectionFilter.sourceFields.push(field);
           }
@@ -407,7 +425,7 @@ export abstract class FlowBase extends Resource implements IFlow {
   public onEvent(id: string, options: OnEventOptions = {}) {
     const rule = new Rule(this, id, options);
     rule.addEventPattern({
-      source: ['aws.appflow'],
+      source: ["aws.appflow"],
       resources: [this.arn],
     });
     rule.addTarget(options.target);
@@ -417,7 +435,7 @@ export abstract class FlowBase extends Resource implements IFlow {
   public onRunStarted(id: string, options: OnEventOptions = {}) {
     const rule = this.onEvent(id, options);
     rule.addEventPattern({
-      detailType: ['AppFlow Start Flow Run Report'],
+      detailType: ["AppFlow Start Flow Run Report"],
     });
     return rule;
   }
@@ -425,17 +443,22 @@ export abstract class FlowBase extends Resource implements IFlow {
   public onRunCompleted(id: string, options: OnEventOptions = {}) {
     const rule = this.onEvent(id, options);
     rule.addEventPattern({
-      detailType: ['AppFlow End Flow Run Report'],
+      detailType: ["AppFlow End Flow Run Report"],
     });
     return rule;
   }
 
-  private buildIncrementalPullConfig(triggerConfig?: TriggerConfig): CfnFlow.IncrementalPullConfigProperty | undefined {
-    return triggerConfig && triggerConfig.properties && triggerConfig.properties.dataPullConfig
-      && triggerConfig.properties.dataPullConfig.timestampField
+  private buildIncrementalPullConfig(
+    triggerConfig?: TriggerConfig,
+  ): CfnFlow.IncrementalPullConfigProperty | undefined {
+    return triggerConfig &&
+      triggerConfig.properties &&
+      triggerConfig.properties.dataPullConfig &&
+      triggerConfig.properties.dataPullConfig.timestampField
       ? {
-        datetimeTypeFieldName: triggerConfig.properties.dataPullConfig.timestampField,
-      }
+          datetimeTypeFieldName:
+            triggerConfig.properties.dataPullConfig.timestampField,
+        }
       : undefined;
   }
 }
diff --git a/src/core/flows/flow-time-updater/api.ts b/src/core/flows/flow-time-updater/api.ts
index 1f9d1ad8..642d21e1 100644
--- a/src/core/flows/flow-time-updater/api.ts
+++ b/src/core/flows/flow-time-updater/api.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export const PROP_SCHEDULE = 'Schedule';
-export const PROP_STARTTIME = 'StartTime';
-export const PROP_ENDTIME = 'EndTime';
+export const PROP_SCHEDULE = "Schedule";
+export const PROP_STARTTIME = "StartTime";
+export const PROP_ENDTIME = "EndTime";
 
-export const ATTR_SCHEDULE = 'Schedule';
-export const ATTR_STARTTIME = 'StartTime';
-export const ATTR_ENDTIME = 'EndTime';
\ No newline at end of file
+export const ATTR_SCHEDULE = "Schedule";
+export const ATTR_STARTTIME = "StartTime";
+export const ATTR_ENDTIME = "EndTime";
diff --git a/src/core/flows/flow-time-updater/flow-time-updater.lambda.ts b/src/core/flows/flow-time-updater/flow-time-updater.lambda.ts
index 97821b8b..b547ecd3 100644
--- a/src/core/flows/flow-time-updater/flow-time-updater.lambda.ts
+++ b/src/core/flows/flow-time-updater/flow-time-updater.lambda.ts
@@ -4,24 +4,27 @@ SPDX-License-Identifier: Apache-2.0
 */
 
 // eslint-disable-next-line import/no-extraneous-dependencies
-import * as AWSLambda from 'aws-lambda';
-import * as API from './api';
+import * as AWSLambda from "aws-lambda";
+import * as API from "./api";
 
 /* eslint-disable no-console */
-export async function handler(event: AWSLambda.CloudFormationCustomResourceEvent) {
+export async function handler(
+  event: AWSLambda.CloudFormationCustomResourceEvent,
+) {
   switch (event.RequestType) {
-    case 'Create':
-    case 'Update':
+    case "Create":
+    case "Update":
       return updateFlowTime(event);
-    case 'Delete':
+    case "Delete":
       return;
     default:
-      throw new Error('Unknown signal');
+      throw new Error("Unknown signal");
   }
-};
-
-async function updateFlowTime(event: AWSLambda.CloudFormationCustomResourceEvent) {
+}
 
+async function updateFlowTime(
+  event: AWSLambda.CloudFormationCustomResourceEvent,
+) {
   let expressionString = event.ResourceProperties[API.PROP_SCHEDULE];
 
   const propStartTime = event.ResourceProperties[API.PROP_STARTTIME];
@@ -30,12 +33,13 @@ async function updateFlowTime(event: AWSLambda.CloudFormationCustomResourceEvent
     : undefined;
 
   const propEndTime = event.ResourceProperties[API.PROP_ENDTIME];
-  let endTime = propEndTime
-    ? new Date(Date.parse(propEndTime))
-    : undefined;
+  let endTime = propEndTime ? new Date(Date.parse(propEndTime)) : undefined;
 
   if (/^rate/.test(expressionString)) {
-    ({ expressionString, startTime } = buildForRateBasedSchedule(expressionString, startTime));
+    ({ expressionString, startTime } = buildForRateBasedSchedule(
+      expressionString,
+      startTime,
+    ));
   } else if (/^cron/.test(expressionString)) {
     // do nothing, as we don't change the expressionString
     // TODO: do we have to set the startTime? I think we do
@@ -53,47 +57,50 @@ async function updateFlowTime(event: AWSLambda.CloudFormationCustomResourceEvent
 }
 
 function buildForRateBasedSchedule(expressionString: string, startTime?: Date) {
-
   // TODO: the below statement is from a customer. I need to check it more thoroughly
   // Rebuilding expression string as Flows require always plural, so: hour -> hours, etc.
   const matches = /\((\d*)(.*)\)$/.exec(expressionString);
   if (!matches) {
-    throw new Error(`Expression ${expressionString} is not a rate-based expression`);
+    throw new Error(
+      `Expression ${expressionString} is not a rate-based expression`,
+    );
   }
 
   const rate = parseFloat(matches[1]);
   let rateUnit = matches[2].trim();
-  if (!rateUnit.endsWith('s')) {
+  if (!rateUnit.endsWith("s")) {
     rateUnit = `${rateUnit}s`;
   }
 
   expressionString = `rate(${rate}${rateUnit})`;
 
   if (startTime) {
-
     const nowMillis = Date.now();
     const startMillis = startTime.getTime();
     if (nowMillis > startMillis) {
-
       let denominator = 1;
 
       switch (rateUnit) {
-        case 'minutes':
+        case "minutes":
           denominator = 60 * 1000; // minutes in millis
           break;
-        case 'hours':
+        case "hours":
           denominator = 60 * 60 * 1000; // hours in millis
           break;
-        case 'days':
+        case "days":
           denominator = 24 * 60 * 60 * 1000; // days in millis
           break;
         default:
           throw new Error(`Unable to use schedule "${expressionString}"`);
       }
 
-      const cyclesBetween = Math.ceil((nowMillis - startMillis) / denominator / rate);
+      const cyclesBetween = Math.ceil(
+        (nowMillis - startMillis) / denominator / rate,
+      );
 
-      startTime = new Date((startMillis / denominator + cyclesBetween * rate) * denominator);
+      startTime = new Date(
+        (startMillis / denominator + cyclesBetween * rate) * denominator,
+      );
     }
   }
 
diff --git a/src/core/flows/flow-time-updater/flow-time-updater.ts b/src/core/flows/flow-time-updater/flow-time-updater.ts
index 6b6e4a0c..826563fc 100644
--- a/src/core/flows/flow-time-updater/flow-time-updater.ts
+++ b/src/core/flows/flow-time-updater/flow-time-updater.ts
@@ -3,14 +3,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 // import * as path from 'path';
-import { CustomResource, Stack, Token } from 'aws-cdk-lib';
-import { Schedule } from 'aws-cdk-lib/aws-events';
+import { CustomResource, Stack, Token } from "aws-cdk-lib";
+import { Schedule } from "aws-cdk-lib/aws-events";
 // import { Runtime } from 'aws-cdk-lib/aws-lambda';
 // import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
-import { Provider } from 'aws-cdk-lib/custom-resources';
-import { Construct } from 'constructs';
-import * as api from './api';
-import { FlowTimeUpdaterFunction } from './flow-time-updater-function';
+import { Provider } from "aws-cdk-lib/custom-resources";
+import { Construct } from "constructs";
+import * as api from "./api";
+import { FlowTimeUpdaterFunction } from "./flow-time-updater-function";
 
 interface FlowTimeUpdaterProps {
   readonly schedule: Schedule;
@@ -26,9 +26,9 @@ export class FlowTimeUpdater extends Construct {
   constructor(scope: Construct, id: string, props: FlowTimeUpdaterProps) {
     super(scope, id);
 
-    const resource = new CustomResource(this, 'Resource', {
+    const resource = new CustomResource(this, "Resource", {
       serviceToken: FlowTimeUpdaterProvider.getOrCreate(this),
-      resourceType: 'Custom::FlowTimeUpdater',
+      resourceType: "Custom::FlowTimeUpdater",
       properties: {
         [api.PROP_SCHEDULE]: props.schedule.expressionString,
         [api.PROP_STARTTIME]: props.startTime && props.startTime.toISOString(),
@@ -43,14 +43,15 @@ export class FlowTimeUpdater extends Construct {
 }
 
 class FlowTimeUpdaterProvider extends Construct {
-
   /**
    * Returns the singleton provider.
    */
   public static getOrCreate(scope: Construct) {
     const stack = Stack.of(scope);
-    const id = 'com.amazonaws.cdk.custom-resources.flow-time-provider';
-    const x = stack.node.tryFindChild(id) as FlowTimeUpdaterProvider || new FlowTimeUpdaterProvider(stack, id);
+    const id = "com.amazonaws.cdk.custom-resources.flow-time-provider";
+    const x =
+      (stack.node.tryFindChild(id) as FlowTimeUpdaterProvider) ||
+      new FlowTimeUpdaterProvider(stack, id);
     return x.provider.serviceToken;
   }
 
@@ -59,8 +60,8 @@ class FlowTimeUpdaterProvider extends Construct {
   constructor(scope: Construct, id: string) {
     super(scope, id);
 
-    this.provider = new Provider(this, 'flow-time-provider', {
-      onEventHandler: new FlowTimeUpdaterFunction(this, 'flow-time-on-event'),
+    this.provider = new Provider(this, "flow-time-provider", {
+      onEventHandler: new FlowTimeUpdaterFunction(this, "flow-time-on-event"),
     });
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/flows/flow-time-updater/index.ts b/src/core/flows/flow-time-updater/index.ts
index b7baf67f..45967034 100644
--- a/src/core/flows/flow-time-updater/index.ts
+++ b/src/core/flows/flow-time-updater/index.ts
@@ -2,4 +2,4 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './flow-time-updater';
\ No newline at end of file
+export * from "./flow-time-updater";
diff --git a/src/core/flows/index.ts b/src/core/flows/index.ts
index 1c781318..002e7668 100644
--- a/src/core/flows/index.ts
+++ b/src/core/flows/index.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './flow-base';
-export * from './triggered-flow-base';
-export * from './on-demand-flow';
-export * from './on-event-flow';
-export * from './on-schedule-flow';
\ No newline at end of file
+export * from "./flow-base";
+export * from "./triggered-flow-base";
+export * from "./on-demand-flow";
+export * from "./on-event-flow";
+export * from "./on-schedule-flow";
diff --git a/src/core/flows/on-demand-flow.ts b/src/core/flows/on-demand-flow.ts
index 2e0fa4b7..528f083b 100644
--- a/src/core/flows/on-demand-flow.ts
+++ b/src/core/flows/on-demand-flow.ts
@@ -2,15 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Construct } from 'constructs';
-import { FlowBase, FlowProps, FlowType, IFlow } from './flow-base';
+import { Construct } from "constructs";
+import { FlowBase, FlowProps, FlowType, IFlow } from "./flow-base";
 
-export interface OnDemandFlowProps extends FlowProps {
-
-}
+export interface OnDemandFlowProps extends FlowProps {}
 
 export class OnDemandFlow extends FlowBase implements IFlow {
-
   constructor(scope: Construct, id: string, props: OnDemandFlowProps) {
     super(scope, id, {
       ...props,
diff --git a/src/core/flows/on-event-flow.ts b/src/core/flows/on-event-flow.ts
index 0dccc4ec..1c1b924c 100644
--- a/src/core/flows/on-event-flow.ts
+++ b/src/core/flows/on-event-flow.ts
@@ -2,15 +2,17 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { OnEventOptions } from 'aws-cdk-lib/aws-events';
-import { Construct } from 'constructs';
-import { FlowType, IFlow } from './flow-base';
-import { TriggeredFlowBase, TriggeredFlowBaseProps } from './triggered-flow-base';
+import { OnEventOptions } from "aws-cdk-lib/aws-events";
+import { Construct } from "constructs";
+import { FlowType, IFlow } from "./flow-base";
+import {
+  TriggeredFlowBase,
+  TriggeredFlowBaseProps,
+} from "./triggered-flow-base";
 
-export interface OnEventFlowProps extends TriggeredFlowBaseProps { }
+export interface OnEventFlowProps extends TriggeredFlowBaseProps {}
 
 export class OnEventFlow extends TriggeredFlowBase implements IFlow {
-
   constructor(scope: Construct, id: string, props: OnEventFlowProps) {
     super(scope, id, {
       ...props,
@@ -22,7 +24,7 @@ export class OnEventFlow extends TriggeredFlowBase implements IFlow {
   public onDeactivated(id: string, options: OnEventOptions = {}) {
     const rule = this.onEvent(id, options);
     rule.addEventPattern({
-      detailType: ['AppFlow Event Flow Deactivated'],
+      detailType: ["AppFlow Event Flow Deactivated"],
     });
     return rule;
   }
@@ -30,7 +32,7 @@ export class OnEventFlow extends TriggeredFlowBase implements IFlow {
   public onStatus(id: string, options: OnEventOptions = {}) {
     const rule = this.onEvent(id, options);
     rule.addEventPattern({
-      detailType: ['AppFlow Event Flow Report'],
+      detailType: ["AppFlow Event Flow Report"],
     });
     return rule;
   }
diff --git a/src/core/flows/on-schedule-flow.ts b/src/core/flows/on-schedule-flow.ts
index 013183a4..646b794a 100644
--- a/src/core/flows/on-schedule-flow.ts
+++ b/src/core/flows/on-schedule-flow.ts
@@ -2,10 +2,18 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { OnEventOptions, Schedule } from 'aws-cdk-lib/aws-events';
-import { Construct } from 'constructs';
-import { DataPullConfig, FlowType, IFlow, ScheduleProperties } from './flow-base';
-import { TriggeredFlowBase, TriggeredFlowBaseProps } from './triggered-flow-base';
+import { OnEventOptions, Schedule } from "aws-cdk-lib/aws-events";
+import { Construct } from "constructs";
+import {
+  DataPullConfig,
+  FlowType,
+  IFlow,
+  ScheduleProperties,
+} from "./flow-base";
+import {
+  TriggeredFlowBase,
+  TriggeredFlowBaseProps,
+} from "./triggered-flow-base";
 
 export interface OnScheduleFlowProps extends TriggeredFlowBaseProps {
   readonly schedule: Schedule;
@@ -32,8 +40,8 @@ export class OnScheduleFlow extends TriggeredFlowBase implements IFlow {
   public onDeactivated(id: string, options: OnEventOptions = {}) {
     const rule = this.onEvent(id, options);
     rule.addEventPattern({
-      detailType: ['AppFlow Scheduled Flow Deactivated'],
+      detailType: ["AppFlow Scheduled Flow Deactivated"],
     });
     return rule;
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/flows/triggered-flow-base.ts b/src/core/flows/triggered-flow-base.ts
index a9e152af..3583e018 100644
--- a/src/core/flows/triggered-flow-base.ts
+++ b/src/core/flows/triggered-flow-base.ts
@@ -2,9 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { OnEventOptions, Rule } from 'aws-cdk-lib/aws-events';
-import { Construct } from 'constructs';
-import { FlowBase, FlowBaseProps, FlowProps, FlowStatus, IFlow } from './flow-base';
+import { OnEventOptions, Rule } from "aws-cdk-lib/aws-events";
+import { Construct } from "constructs";
+import {
+  FlowBase,
+  FlowBaseProps,
+  FlowProps,
+  FlowStatus,
+  IFlow,
+} from "./flow-base";
 
 export interface TriggeredFlowBaseProps extends FlowProps {
   /**
@@ -21,21 +27,27 @@ export interface TriggeredFlowBaseProps extends FlowProps {
  * A base class for triggered flows.
  */
 export abstract class TriggeredFlowBase extends FlowBase implements IFlow {
-
   /**
    *
    * @param autoActivate - a boolean value indicating whether to automatically activate the flow.
    * @param status - a {@link FlowStatus} value indicating the status to set on the flow.
    * @returns
    */
-  protected static setStatus(autoActivate?: boolean, status?: FlowStatus): FlowStatus | undefined {
+  protected static setStatus(
+    autoActivate?: boolean,
+    status?: FlowStatus,
+  ): FlowStatus | undefined {
     if (autoActivate !== undefined && status !== undefined) {
-      throw new Error('Cannot specify both autoActivate and status');
+      throw new Error("Cannot specify both autoActivate and status");
     }
 
-    return autoActivate !== undefined ?
-      (autoActivate ? FlowStatus.ACTIVE : FlowStatus.SUSPENDED) :
-      (status !== undefined ? status : undefined);
+    return autoActivate !== undefined
+      ? autoActivate
+        ? FlowStatus.ACTIVE
+        : FlowStatus.SUSPENDED
+      : status !== undefined
+        ? status
+        : undefined;
   }
   /**
    *
@@ -48,5 +60,4 @@ export abstract class TriggeredFlowBase extends FlowBase implements IFlow {
   }
 
   public abstract onDeactivated(id: string, options?: OnEventOptions): Rule;
-
 }
diff --git a/src/core/index.ts b/src/core/index.ts
index d7fb7533..57eb68b9 100644
--- a/src/core/index.ts
+++ b/src/core/index.ts
@@ -2,14 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './vertices';
-export * from './tasks';
-export * from './flows';
-export * from './error-handling';
-export * from './s3-location';
-export * from './write-operation';
+export * from "./vertices";
+export * from "./tasks";
+export * from "./flows";
+export * from "./error-handling";
+export * from "./s3-location";
+export * from "./write-operation";
 
-export * from './connectors';
+export * from "./connectors";
 
 // utils
-export * from './appflow-permissions-manager';
\ No newline at end of file
+export * from "./appflow-permissions-manager";
diff --git a/src/core/s3-location.ts b/src/core/s3-location.ts
index c01b87c0..4dd7dd21 100644
--- a/src/core/s3-location.ts
+++ b/src/core/s3-location.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { IBucket } from 'aws-cdk-lib/aws-s3';
+import { IBucket } from "aws-cdk-lib/aws-s3";
 
 export interface S3Location {
   readonly bucket: IBucket;
   readonly prefix?: string;
-}
\ No newline at end of file
+}
diff --git a/src/core/tasks/filters.ts b/src/core/tasks/filters.ts
index 3ece528c..2abb5be3 100644
--- a/src/core/tasks/filters.ts
+++ b/src/core/tasks/filters.ts
@@ -2,15 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Field } from './field';
-import { IOperation, OperationBase } from './operation';
-import { Task, TaskProperty } from './tasks';
+import { Field } from "./field";
+import { IOperation, OperationBase } from "./operation";
+import { Task, TaskProperty } from "./tasks";
 
 /**
  * A representation of a filter operation condtiion on a source record field
  */
 export class FilterCondition {
-
   /**
    * A condition testing whether a string-type source field contains the given value(s).
    * NOTE: When multiple values are passed the evaluation is resolved as logical OR
@@ -19,7 +18,7 @@ export class FilterCondition {
    * @returns an instance of a @see FilterCondition
    */
   public static stringContains(field: Field, val: string | string[]) {
-    return FilterCondition.stringCondition(field, val, 'CONTAINS');
+    return FilterCondition.stringCondition(field, val, "CONTAINS");
   }
 
   /**
@@ -30,7 +29,7 @@ export class FilterCondition {
    * @returns an instance of a @see FilterCondition
    */
   public static stringEquals(field: Field, val: string | string[]) {
-    return FilterCondition.stringCondition(field, val, 'EQUAL_TO');
+    return FilterCondition.stringCondition(field, val, "EQUAL_TO");
   }
 
   /**
@@ -41,141 +40,179 @@ export class FilterCondition {
    * @returns an instance of a @see FilterCondition
    */
   public static stringNotEquals(field: Field, val: string | string[]) {
-    return FilterCondition.stringCondition(field, val, 'NOT_EQUAL_TO');
+    return FilterCondition.stringCondition(field, val, "NOT_EQUAL_TO");
   }
 
   public static booleanEquals(field: Field, val: boolean | boolean[]) {
-    return FilterCondition.booleanCondition(field, val, 'EQUAL_TO');
+    return FilterCondition.booleanCondition(field, val, "EQUAL_TO");
   }
 
   public static booleanNotEquals(field: Field, val: boolean | boolean[]) {
-    return FilterCondition.booleanCondition(field, val, 'NOT_EQUAL_TO');
+    return FilterCondition.booleanCondition(field, val, "NOT_EQUAL_TO");
   }
 
   public static numberEquals(field: Field, val: number | number[]) {
-    return FilterCondition.numberCondition(field, val, 'EQUAL_TO');
+    return FilterCondition.numberCondition(field, val, "EQUAL_TO");
   }
 
   public static numberNotEquals(field: Field, val: number | number[]) {
-    return FilterCondition.numberCondition(field, val, 'NOT_EQUAL_TO');
+    return FilterCondition.numberCondition(field, val, "NOT_EQUAL_TO");
   }
 
   public static numberLessThan(field: Field, val: number) {
-    return FilterCondition.numberCondition(field, val, 'LESS_THAN');
+    return FilterCondition.numberCondition(field, val, "LESS_THAN");
   }
 
   public static numberLessThanEquals(field: Field, val: number) {
-    return FilterCondition.numberCondition(field, val, 'LESS_THAN_OR_EQUAL_TO');
+    return FilterCondition.numberCondition(field, val, "LESS_THAN_OR_EQUAL_TO");
   }
 
   public static numberGreaterThan(field: Field, val: number) {
-    return FilterCondition.numberCondition(field, val, 'GREATER_THAN');
+    return FilterCondition.numberCondition(field, val, "GREATER_THAN");
   }
 
   public static numberGreaterThanEquals(field: Field, val: number) {
-    return FilterCondition.numberCondition(field, val, 'GREATER_THAN_OR_EQUAL_TO');
+    return FilterCondition.numberCondition(
+      field,
+      val,
+      "GREATER_THAN_OR_EQUAL_TO",
+    );
   }
 
   public static timestampEquals(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'EQUAL_TO');
+    return FilterCondition.timestampCondition(field, val, "EQUAL_TO");
   }
 
   public static timestampNotEquals(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'NOT_EQUAL_TO');
+    return FilterCondition.timestampCondition(field, val, "NOT_EQUAL_TO");
   }
 
   public static timestampLessThan(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'LESS_THAN');
+    return FilterCondition.timestampCondition(field, val, "LESS_THAN");
   }
 
   public static timestampLessThanEquals(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'LESS_THAN_OR_EQUAL_TO');
+    return FilterCondition.timestampCondition(
+      field,
+      val,
+      "LESS_THAN_OR_EQUAL_TO",
+    );
   }
 
   public static timestampGreaterThan(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'GREATER_THAN');
+    return FilterCondition.timestampCondition(field, val, "GREATER_THAN");
   }
 
   public static timestampGreaterThanEquals(field: Field, val: Date | Date[]) {
-    return FilterCondition.timestampCondition(field, val, 'GREATER_THAN_OR_EQUAL_TO');
+    return FilterCondition.timestampCondition(
+      field,
+      val,
+      "GREATER_THAN_OR_EQUAL_TO",
+    );
   }
 
   public static timestampBetween(field: Field, lower: Date, upper: Date) {
-    return new FilterCondition(field, 'BETWEEN', [
-      { key: 'DATA_TYPE', value: field.dataType! },
-      { key: 'LOWER_BOUND', value: this.valueToString(lower) },
-      { key: 'UPPER_BOUND', value: this.valueToString(upper) },
-    ] );
+    return new FilterCondition(field, "BETWEEN", [
+      { key: "DATA_TYPE", value: field.dataType! },
+      { key: "LOWER_BOUND", value: this.valueToString(lower) },
+      { key: "UPPER_BOUND", value: this.valueToString(upper) },
+    ]);
   }
 
-  private static stringCondition(field: Field, val: string | string[], filter: string) {
-
+  private static stringCondition(
+    field: Field,
+    val: string | string[],
+    filter: string,
+  ) {
     if (Array.isArray(val)) {
       return new FilterCondition(field, filter, [
-        { key: 'DATA_TYPE', value: field.dataType! },
-        { key: 'VALUES', value: val.map(m => this.valueToString(m)).join(',') },
+        { key: "DATA_TYPE", value: field.dataType! },
+        {
+          key: "VALUES",
+          value: val.map((m) => this.valueToString(m)).join(","),
+        },
       ]);
     }
 
     return new FilterCondition(field, filter, [
-      { key: 'DATA_TYPE', value: field.dataType! },
-      { key: 'VALUE', value: this.valueToString(val) },
+      { key: "DATA_TYPE", value: field.dataType! },
+      { key: "VALUE", value: this.valueToString(val) },
     ]);
   }
 
-  private static numberCondition(field: Field, val: number | number[], filter: string) {
-
+  private static numberCondition(
+    field: Field,
+    val: number | number[],
+    filter: string,
+  ) {
     if (Array.isArray(val)) {
       return new FilterCondition(field, filter, [
-        { key: 'DATA_TYPE', value: field.dataType! },
-        { key: 'VALUES', value: val.map(m => this.valueToString(m)).join(',') },
+        { key: "DATA_TYPE", value: field.dataType! },
+        {
+          key: "VALUES",
+          value: val.map((m) => this.valueToString(m)).join(","),
+        },
       ]);
     }
 
     return new FilterCondition(field, filter, [
-      { key: 'DATA_TYPE', value: field.dataType! },
-      { key: 'VALUE', value: this.valueToString(val) },
+      { key: "DATA_TYPE", value: field.dataType! },
+      { key: "VALUE", value: this.valueToString(val) },
     ]);
   }
 
-  private static booleanCondition(field: Field, val: boolean | boolean[], filter: string) {
-
+  private static booleanCondition(
+    field: Field,
+    val: boolean | boolean[],
+    filter: string,
+  ) {
     if (Array.isArray(val)) {
       return new FilterCondition(field, filter, [
-        { key: 'DATA_TYPE', value: field.dataType! },
-        { key: 'VALUES', value: val.map(m => this.valueToString(m)).join(',') },
+        { key: "DATA_TYPE", value: field.dataType! },
+        {
+          key: "VALUES",
+          value: val.map((m) => this.valueToString(m)).join(","),
+        },
       ]);
     }
 
     return new FilterCondition(field, filter, [
-      { key: 'DATA_TYPE', value: field.dataType! },
-      { key: 'VALUE', value: this.valueToString(val) },
+      { key: "DATA_TYPE", value: field.dataType! },
+      { key: "VALUE", value: this.valueToString(val) },
     ]);
   }
 
-  private static timestampCondition(field: Field, val: Date | Date[], filter: string) {
-
+  private static timestampCondition(
+    field: Field,
+    val: Date | Date[],
+    filter: string,
+  ) {
     if (Array.isArray(val)) {
       return new FilterCondition(field, filter, [
-        { key: 'DATA_TYPE', value: field.dataType! },
-        { key: 'VALUES', value: val.map(m => this.valueToString(m)).join(',') },
+        { key: "DATA_TYPE", value: field.dataType! },
+        {
+          key: "VALUES",
+          value: val.map((m) => this.valueToString(m)).join(","),
+        },
       ]);
     }
 
     return new FilterCondition(field, filter, [
-      { key: 'DATA_TYPE', value: field.dataType! },
-      { key: 'VALUE', value: this.valueToString(val) },
+      { key: "DATA_TYPE", value: field.dataType! },
+      { key: "VALUE", value: this.valueToString(val) },
     ]);
   }
 
-  private static valueToString(value: string | number | boolean | Date): string {
+  private static valueToString(
+    value: string | number | boolean | Date,
+  ): string {
     const t = typeof value;
 
     switch (t) {
-      case 'string':
+      case "string":
         return value as string;
-      case 'number':
-      case 'boolean':
+      case "number":
+      case "boolean":
         return `${value}`;
       default: // meaning: Date
         return (value as Date).getTime().toString();
@@ -185,9 +222,10 @@ export class FilterCondition {
   constructor(
     public readonly field: Field,
     public readonly filter: string,
-    public readonly properties: TaskProperty[]) {
+    public readonly properties: TaskProperty[],
+  ) {
     if (!field.dataType) {
-      throw new Error('field dataType required');
+      throw new Error("field dataType required");
     }
   }
 }
@@ -195,26 +233,30 @@ export class FilterCondition {
 /**
  * A representation of a mapping operation, that is an operation filtering records at the source
  */
-export interface IFilter extends IOperation { }
+export interface IFilter extends IOperation {}
 
 /**
  * A representation of a mapping operation, that is an operation filtering records at the source
  */
 export class Filter extends OperationBase implements IFilter {
-
   /**
    * Builds a filter operation on source
    * @param condition a @see FilterCondition instance
    * @returns
    */
-  public static when(condition: FilterCondition) { return new Filter(condition); }
+  public static when(condition: FilterCondition) {
+    return new Filter(condition);
+  }
 
-  protected constructor(
-    readonly condition: FilterCondition) {
-    super([new Task('Filter',
-      [condition.field.name],
-      // TODO: think about source/destination here
-      { operation: condition.filter },
-      condition.properties)]);
+  protected constructor(readonly condition: FilterCondition) {
+    super([
+      new Task(
+        "Filter",
+        [condition.field.name],
+        // TODO: think about source/destination here
+        { operation: condition.filter },
+        condition.properties,
+      ),
+    ]);
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/tasks/index.ts b/src/core/tasks/index.ts
index 5d26c6cc..1218ffa7 100644
--- a/src/core/tasks/index.ts
+++ b/src/core/tasks/index.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './field';
-export * from './tasks';
-export * from './operation';
-export * from './validations';
-export * from './mappings';
-export * from './filters';
-export * from './transforms';
\ No newline at end of file
+export * from "./field";
+export * from "./tasks";
+export * from "./operation";
+export * from "./validations";
+export * from "./mappings";
+export * from "./filters";
+export * from "./transforms";
diff --git a/src/core/tasks/mappings.ts b/src/core/tasks/mappings.ts
index 260ae396..7210a6cc 100644
--- a/src/core/tasks/mappings.ts
+++ b/src/core/tasks/mappings.ts
@@ -2,29 +2,29 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Fn } from 'aws-cdk-lib';
-import { Field } from './field';
-import { IOperation, OperationBase } from './operation';
-import { Task, TaskProperty } from './tasks';
+import { Fn } from "aws-cdk-lib";
+import { Field } from "./field";
+import { IOperation, OperationBase } from "./operation";
+import { Task, TaskProperty } from "./tasks";
 
-const TT_MAPALL = 'Map_all';
-const TT_MAP = 'Map';
-const TT_MERGE = 'Merge';
-const TT_ARITHMETIC = 'Arithmetic';
+const TT_MAPALL = "Map_all";
+const TT_MAP = "Map";
+const TT_MERGE = "Merge";
+const TT_ARITHMETIC = "Arithmetic";
 
-const OP_NOOP = 'NO_OP';
-const OP_ADDITION = 'ADDITION';
-const OP_SUBTRACTION = 'SUBTRACTION';
-const OP_MULTIPLICATION = 'MULTIPLICATION';
-const OP_DIVISION = 'DIVISION';
+const OP_NOOP = "NO_OP";
+const OP_ADDITION = "ADDITION";
+const OP_SUBTRACTION = "SUBTRACTION";
+const OP_MULTIPLICATION = "MULTIPLICATION";
+const OP_DIVISION = "DIVISION";
 
-const TP_SOURCE_DATA_TYPE = 'SOURCE_DATA_TYPE';
-const TP_DESTINATION_DATA_TYPE = 'DESTINATION_DATA_TYPE';
+const TP_SOURCE_DATA_TYPE = "SOURCE_DATA_TYPE";
+const TP_DESTINATION_DATA_TYPE = "DESTINATION_DATA_TYPE";
 
 /**
  * A representation of a mapping operation, that is an operation translating source to destination fields
  */
-export interface IMapping extends IOperation { }
+export interface IMapping extends IOperation {}
 
 /**
  * A helper interface
@@ -40,11 +40,12 @@ export interface MapAllConfig {
 export class Mapping extends OperationBase implements IMapping {
   public static mapAll(config?: MapAllConfig): IMapping {
     return new Mapping([
-      new Task(
-        TT_MAPALL, [],
-        { operation: OP_NOOP },
-        [{ key: 'EXCLUDE_SOURCE_FIELDS_LIST', value: config ? `["${Fn.join('","', config.exclude)}"]` : '[]' }],
-      ),
+      new Task(TT_MAPALL, [], { operation: OP_NOOP }, [
+        {
+          key: "EXCLUDE_SOURCE_FIELDS_LIST",
+          value: config ? `["${Fn.join('","', config.exclude)}"]` : "[]",
+        },
+      ]),
     ]);
   }
   public static map(from: Field, to: Field): IMapping {
@@ -71,18 +72,22 @@ export class Mapping extends OperationBase implements IMapping {
    * @returns a mapping instance with concatenation definition
    */
   public static concat(from: Field[], to: Field, format: string) {
-
     if (!to.dataType) {
-      throw new Error('dataType for \'to\' required');
+      throw new Error("dataType for 'to' required");
     }
 
-    const tmpField = from.map(f => f.name).join(',');
+    const tmpField = from.map((f) => f.name).join(",");
     return new Mapping([
-      new Task(TT_MERGE, from.map(f => f.name), { operation: OP_NOOP },
-        [{ key: 'CONCAT_FORMAT', value: format }], tmpField),
+      new Task(
+        TT_MERGE,
+        from.map((f) => f.name),
+        { operation: OP_NOOP },
+        [{ key: "CONCAT_FORMAT", value: format }],
+        tmpField,
+      ),
       new Task(TT_MAP, [tmpField], { operation: OP_NOOP }, [
-        { key: 'DESTINATION_DATA_TYPE', value: to.dataType },
-        { key: 'SOURCE_DATA_TYPE', value: 'string' },
+        { key: "DESTINATION_DATA_TYPE", value: to.dataType },
+        { key: "SOURCE_DATA_TYPE", value: "string" },
       ]),
     ]);
   }
@@ -106,7 +111,12 @@ export class Mapping extends OperationBase implements IMapping {
    * @returns an IMapping instance
    */
   public static multiply(sourceField1: Field, sourceField2: Field, to: Field) {
-    return Mapping.arithmetic(sourceField1, sourceField2, to, OP_MULTIPLICATION);
+    return Mapping.arithmetic(
+      sourceField1,
+      sourceField2,
+      to,
+      OP_MULTIPLICATION,
+    );
   }
 
   /**
@@ -138,23 +148,40 @@ export class Mapping extends OperationBase implements IMapping {
    * @param to a numeric value
    * @returns an IMapping instance
    */
-  private static arithmetic(sourceField1: Field, sourceField2: Field, to: Field, operation: string) {
-
+  private static arithmetic(
+    sourceField1: Field,
+    sourceField2: Field,
+    to: Field,
+    operation: string,
+  ) {
     if (!to.dataType) {
-      throw new Error('dataType for \'to\' required');
+      throw new Error("dataType for 'to' required");
     }
 
     const tmpField = `${sourceField1.name},${sourceField2.name}`;
     return new Mapping([
-      new Task(TT_ARITHMETIC, [sourceField1.name, sourceField2.name], { operation: operation }, [{
-        key: 'MATH_OPERATION_FIELDS_ORDER', value: tmpField,
-      }], tmpField),
-      new Task(TT_MAP, [tmpField], { operation: OP_NOOP }, [
-        { key: 'DESTINATION_DATA_TYPE', value: to.dataType },
-        { key: 'SOURCE_DATA_TYPE', value: 'string' },
-      ],
-      to.name),
+      new Task(
+        TT_ARITHMETIC,
+        [sourceField1.name, sourceField2.name],
+        { operation: operation },
+        [
+          {
+            key: "MATH_OPERATION_FIELDS_ORDER",
+            value: tmpField,
+          },
+        ],
+        tmpField,
+      ),
+      new Task(
+        TT_MAP,
+        [tmpField],
+        { operation: OP_NOOP },
+        [
+          { key: "DESTINATION_DATA_TYPE", value: to.dataType },
+          { key: "SOURCE_DATA_TYPE", value: "string" },
+        ],
+        to.name,
+      ),
     ]);
   }
-
 }
diff --git a/src/core/tasks/operation.ts b/src/core/tasks/operation.ts
index f2e8d01c..a48cf722 100644
--- a/src/core/tasks/operation.ts
+++ b/src/core/tasks/operation.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { ITask } from './tasks';
-import { IFlow } from '../flows/flow-base';
-import { ISource } from '../vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { ITask } from "./tasks";
+import { IFlow } from "../flows/flow-base";
+import { ISource } from "../vertices/source";
 
 /**
  * A representation of a set of tasks that deliver complete operation
@@ -18,9 +18,9 @@ export interface IOperation {
  * A base class for all operations
  */
 export abstract class OperationBase implements IOperation {
-  constructor(private readonly tasks: ITask[]) { }
+  constructor(private readonly tasks: ITask[]) {}
 
   public bind(flow: IFlow, source: ISource): CfnFlow.TaskProperty[] {
-    return this.tasks.map(t => t.bind(flow, source));
+    return this.tasks.map((t) => t.bind(flow, source));
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/tasks/tasks.ts b/src/core/tasks/tasks.ts
index 1be5b52e..50200262 100644
--- a/src/core/tasks/tasks.ts
+++ b/src/core/tasks/tasks.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { ConnectorType } from '../connectors/connector-type';
-import { IFlow } from '../flows';
-import { ISource } from '../vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { ConnectorType } from "../connectors/connector-type";
+import { IFlow } from "../flows";
+import { ISource } from "../vertices/source";
 
 /**
  * A representation of a unitary action on the record fields
@@ -31,18 +31,22 @@ export interface TaskConnectorOperator {
  * A representation of a unitary action on the record fields
  */
 export class Task implements ITask {
-  constructor(protected type: string,
+  constructor(
+    protected type: string,
     protected sourceFields: string[],
     protected connectorOperator: TaskConnectorOperator,
     protected properties: TaskProperty[],
-    protected destinationField?: string) { }
+    protected destinationField?: string,
+  ) {}
 
   public bind(_flow: IFlow, source: ISource): CfnFlow.TaskProperty {
-
     return {
       taskType: this.type,
       sourceFields: this.sourceFields,
-      taskProperties: this.properties.map(({ key, value }) => ({ key: key, value: value })),
+      taskProperties: this.properties.map(({ key, value }) => ({
+        key: key,
+        value: value,
+      })),
       connectorOperator: this.buildOperatorFor(source),
       destinationField: this.destinationField,
     };
@@ -50,7 +54,9 @@ export class Task implements ITask {
 
   private buildOperatorFor(source: ISource): CfnFlow.ConnectorOperatorProperty {
     const operator: { [key: string]: string } = {};
-    const origin = this.connectorOperator.type?.asTaskConnectorOperatorOrigin ?? source.connectorType.asTaskConnectorOperatorOrigin;
+    const origin =
+      this.connectorOperator.type?.asTaskConnectorOperatorOrigin ??
+      source.connectorType.asTaskConnectorOperatorOrigin;
     operator[origin] = this.connectorOperator.operation;
     return operator;
   }
diff --git a/src/core/tasks/transforms.ts b/src/core/tasks/transforms.ts
index 5ddc0978..b18092bb 100644
--- a/src/core/tasks/transforms.ts
+++ b/src/core/tasks/transforms.ts
@@ -2,22 +2,21 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Field } from './field';
-import { IOperation, OperationBase } from './operation';
-import { Task } from './tasks';
+import { Field } from "./field";
+import { IOperation, OperationBase } from "./operation";
+import { Task } from "./tasks";
 
-const OP_NOOP = 'NO_OP';
+const OP_NOOP = "NO_OP";
 
 /**
  * A representation of a transform operation, that is an operation modifying source fields
  */
-export interface ITransform extends IOperation { }
+export interface ITransform extends IOperation {}
 
 /**
  * A representation of a transform operation, that is an operation modifying source fields
  */
 export class Transform extends OperationBase implements ITransform {
-
   /**
    * Truncates the field to a specified length
    * @param field a source field to truncate
@@ -25,21 +24,21 @@ export class Transform extends OperationBase implements ITransform {
    * @returns a @see Transform instance
    */
   public static truncate(field: string | Field, length: number): ITransform {
-
     if (!Number.isInteger(length)) {
-      throw new Error('length has to be an integer value');
+      throw new Error("length has to be an integer value");
     }
 
     if (length <= 0) {
-      throw new Error('length has to be a positive integer value');
+      throw new Error("length has to be a positive integer value");
     }
 
     return new Transform([
       new Task(
-        'Truncate',
-        [typeof field === 'string' ? field : field.name],
+        "Truncate",
+        [typeof field === "string" ? field : field.name],
         { operation: OP_NOOP },
-        [{ key: 'TRUNCATE_LENGTH', value: `${length}` }]),
+        [{ key: "TRUNCATE_LENGTH", value: `${length}` }],
+      ),
     ]);
   }
 
@@ -49,75 +48,83 @@ export class Transform extends OperationBase implements ITransform {
    * @param mask a mask character. @default '*'
    * @returns a @see Transform instance
    */
-  public static mask(field: string | Field, mask: string = '*'): ITransform {
+  public static mask(field: string | Field, mask: string = "*"): ITransform {
     if (mask && mask.length !== 1) {
-      throw new Error('The mask has to be a single character');
-
+      throw new Error("The mask has to be a single character");
     }
     return new Transform([
       new Task(
-        'Mask',
-        [typeof field === 'string' ? field : field.name],
-        { operation: 'MASK_ALL' },
-        [{
-          // TODO: test this. The AWS Console generated transform has length, but what for?
-          key: 'MASK_LENGTH', value: '5',
-        },
-        { key: 'MASK_VALUE', value: mask ?? '*' }],
+        "Mask",
+        [typeof field === "string" ? field : field.name],
+        { operation: "MASK_ALL" },
+        [
+          {
+            // TODO: test this. The AWS Console generated transform has length, but what for?
+            key: "MASK_LENGTH",
+            value: "5",
+          },
+          { key: "MASK_VALUE", value: mask ?? "*" },
+        ],
       ),
     ]);
   }
 
-  public static maskStart(field: string | Field, length: number, mask?: string): ITransform {
+  public static maskStart(
+    field: string | Field,
+    length: number,
+    mask?: string,
+  ): ITransform {
     if (!Number.isInteger(length)) {
-      throw new Error('length has to be an integer value');
+      throw new Error("length has to be an integer value");
     }
 
     if (length <= 0) {
-      throw new Error('length has to be a positive integer value');
+      throw new Error("length has to be a positive integer value");
     }
 
     if (mask && mask.length !== 1) {
-      throw new Error('The mask has to be a single character');
+      throw new Error("The mask has to be a single character");
     }
 
     return new Transform([
       new Task(
-        'Mask',
-        [typeof field === 'string' ? field : field.name],
-        { operation: 'MASK_FIRST_N' },
+        "Mask",
+        [typeof field === "string" ? field : field.name],
+        { operation: "MASK_FIRST_N" },
         [
-          { key: 'MASK_LENGTH', value: `${length}` },
-          { key: 'MASK_VALUE', value: mask ?? '*' },
+          { key: "MASK_LENGTH", value: `${length}` },
+          { key: "MASK_VALUE", value: mask ?? "*" },
         ],
       ),
     ]);
   }
 
-  public static maskEnd(field: string | Field, length: number, mask?: string): ITransform {
-
+  public static maskEnd(
+    field: string | Field,
+    length: number,
+    mask?: string,
+  ): ITransform {
     if (!Number.isInteger(length)) {
-      throw new Error('length has to be an integer value');
+      throw new Error("length has to be an integer value");
     }
 
     if (length <= 0) {
-      throw new Error('length has to be a positive integer value');
+      throw new Error("length has to be a positive integer value");
     }
 
     if (mask && mask.length !== 1) {
-      throw new Error('The mask has to be a single character');
-
+      throw new Error("The mask has to be a single character");
     }
     return new Transform([
       new Task(
-        'Mask',
-        [typeof field === 'string' ? field : field.name],
-        { operation: 'MASK_LAST_N' },
+        "Mask",
+        [typeof field === "string" ? field : field.name],
+        { operation: "MASK_LAST_N" },
         [
-          { key: 'MASK_LENGTH', value: `${length}` },
-          { key: 'MASK_VALUE', value: mask ?? '*' },
+          { key: "MASK_LENGTH", value: `${length}` },
+          { key: "MASK_VALUE", value: mask ?? "*" },
         ],
       ),
     ]);
   }
-}
\ No newline at end of file
+}
diff --git a/src/core/tasks/validations.ts b/src/core/tasks/validations.ts
index 18a321a3..9b86b865 100644
--- a/src/core/tasks/validations.ts
+++ b/src/core/tasks/validations.ts
@@ -2,22 +2,24 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Field } from './field';
-import { IOperation, OperationBase } from './operation';
-import { Task } from './tasks';
+import { Field } from "./field";
+import { IOperation, OperationBase } from "./operation";
+import { Task } from "./tasks";
 
 /**
  * A representation of a validation condition on a particular field in a flow execution
  */
 export class ValidationCondition {
-
   /**
    * Validates whether a particular field in an execution is negative
    * @param field a field for which the validation will be performed
    * @returns a @see ValidationCondition instance
    */
   public static isNegative(field: string | Field) {
-    return new ValidationCondition(typeof field === 'string' ? field : field.name, 'VALIDATE_NON_NEGATIVE');
+    return new ValidationCondition(
+      typeof field === "string" ? field : field.name,
+      "VALIDATE_NON_NEGATIVE",
+    );
   }
 
   /**
@@ -26,7 +28,10 @@ export class ValidationCondition {
    * @returns a @see ValidationCondition instance
    */
   public static isNull(field: string | Field) {
-    return new ValidationCondition(typeof field === 'string' ? field : field.name, 'VALIDATE_NON_NULL');
+    return new ValidationCondition(
+      typeof field === "string" ? field : field.name,
+      "VALIDATE_NON_NULL",
+    );
   }
 
   // TODO: make sure that you understand what's here
@@ -36,7 +41,10 @@ export class ValidationCondition {
    * @returns a @see ValidationCondition instance
    */
   public static isNotNull(field: string | Field) {
-    return new ValidationCondition(typeof field === 'string' ? field : field.name, 'VALIDATE_NUMERIC');
+    return new ValidationCondition(
+      typeof field === "string" ? field : field.name,
+      "VALIDATE_NUMERIC",
+    );
   }
 
   // TODO: make sure that you understand what's here
@@ -46,12 +54,16 @@ export class ValidationCondition {
    * @returns a @see ValidationCondition instance
    */
   public static isDefault(field: string | Field) {
-    return new ValidationCondition(typeof field === 'string' ? field : field.name, 'VALIDATE_NON_ZERO');
+    return new ValidationCondition(
+      typeof field === "string" ? field : field.name,
+      "VALIDATE_NON_ZERO",
+    );
   }
 
   protected constructor(
     public readonly field: string,
-    public readonly validation: string) { }
+    public readonly validation: string,
+  ) {}
 }
 
 export class ValidationAction {
@@ -59,43 +71,54 @@ export class ValidationAction {
    *
    * @returns a @see ValidationAction that removes a record from the flow execution result
    */
-  public static ignoreRecord() { return new ValidationAction('DropRecord'); }
+  public static ignoreRecord() {
+    return new ValidationAction("DropRecord");
+  }
 
   /**
    *
    * @returns a @see ValidationAction that terminates the whole flow execution
    */
-  public static terminateFlow() { return new ValidationAction('DropDataset'); }
+  public static terminateFlow() {
+    return new ValidationAction("DropDataset");
+  }
 
-  protected constructor(public readonly action: string) { }
+  protected constructor(public readonly action: string) {}
 }
 
 /**
  * A representation of a validation operation, that is an operation testing records and acting on the test results
  */
-export interface IValidation extends IOperation { }
+export interface IValidation extends IOperation {}
 
 /**
  * A representation of a validation operation, that is an operation testing records and acting on the test results
  */
 export class Validation extends OperationBase implements IValidation {
-
   /**
    *
    * @param condition a @see ValidationCondition for the validation
    * @param action a @see ValidationAction for the validation
    * @returns a Validation instance
    */
-  public static when(condition: ValidationCondition, action: ValidationAction): IValidation {
+  public static when(
+    condition: ValidationCondition,
+    action: ValidationAction,
+  ): IValidation {
     return new Validation(condition, action);
   }
 
   protected constructor(
     readonly condition: ValidationCondition,
-    readonly action: ValidationAction) {
-    super([new Task('Validate',
-      [condition.field],
-      { operation: condition.validation },
-      [{ key: 'VALIDATION_ACTION', value: action.action }])]);
+    readonly action: ValidationAction,
+  ) {
+    super([
+      new Task(
+        "Validate",
+        [condition.field],
+        { operation: condition.validation },
+        [{ key: "VALIDATION_ACTION", value: action.action }],
+      ),
+    ]);
   }
 }
diff --git a/src/core/vertices/destination.ts b/src/core/vertices/destination.ts
index d4d2a0dc..ac9dd046 100644
--- a/src/core/vertices/destination.ts
+++ b/src/core/vertices/destination.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IVertex } from './vertex';
-import { IFlow } from '../flows';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IVertex } from "./vertex";
+import { IFlow } from "../flows";
 
 /**
  * A destination of an AppFlow flow
  */
 export interface IDestination extends IVertex {
   bind(scope: IFlow): CfnFlow.DestinationFlowConfigProperty;
-}
\ No newline at end of file
+}
diff --git a/src/core/vertices/index.ts b/src/core/vertices/index.ts
index 93bb194b..4ba83fda 100644
--- a/src/core/vertices/index.ts
+++ b/src/core/vertices/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './source';
-export * from './vertex';
-export * from './destination';
\ No newline at end of file
+export * from "./source";
+export * from "./vertex";
+export * from "./destination";
diff --git a/src/core/vertices/source.ts b/src/core/vertices/source.ts
index affb573b..75f06f4d 100644
--- a/src/core/vertices/source.ts
+++ b/src/core/vertices/source.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IVertex } from './vertex';
-import { IFlow } from '../flows';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IVertex } from "./vertex";
+import { IFlow } from "../flows";
 
 /**
  * A source of an AppFlow flow
diff --git a/src/core/vertices/vertex.ts b/src/core/vertices/vertex.ts
index 74c854af..40f2ed67 100644
--- a/src/core/vertices/vertex.ts
+++ b/src/core/vertices/vertex.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../connectors/connector-type';
+import { ConnectorType } from "../connectors/connector-type";
 
 /**
  * An interface representing a vertex, i.e. a source or a destination of an AppFlow flow
@@ -12,4 +12,4 @@ export interface IVertex {
    * The AppFlow type of the connector that this source is implemented for
    */
   readonly connectorType: ConnectorType;
-}
\ No newline at end of file
+}
diff --git a/src/core/write-operation.ts b/src/core/write-operation.ts
index 1ddae02c..6884243d 100644
--- a/src/core/write-operation.ts
+++ b/src/core/write-operation.ts
@@ -3,17 +3,28 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum WriteOperationType {
-  DELETE = 'DELETE',
-  INSERT = 'INSERT',
-  UPDATE = 'UPDATE',
-  UPSERT = 'UPSERT'
+  DELETE = "DELETE",
+  INSERT = "INSERT",
+  UPDATE = "UPDATE",
+  UPSERT = "UPSERT",
 }
 
 export class WriteOperation {
-  public static insert(ids?: string[]): WriteOperation { return new WriteOperation(WriteOperationType.INSERT, ids); }
-  public static delete(ids?: string[]): WriteOperation { return new WriteOperation(WriteOperationType.DELETE, ids); }
-  public static update(ids?: string[]): WriteOperation { return new WriteOperation(WriteOperationType.UPDATE, ids); }
-  public static upsert(ids?: string[]): WriteOperation { return new WriteOperation(WriteOperationType.UPSERT, ids); }
+  public static insert(ids?: string[]): WriteOperation {
+    return new WriteOperation(WriteOperationType.INSERT, ids);
+  }
+  public static delete(ids?: string[]): WriteOperation {
+    return new WriteOperation(WriteOperationType.DELETE, ids);
+  }
+  public static update(ids?: string[]): WriteOperation {
+    return new WriteOperation(WriteOperationType.UPDATE, ids);
+  }
+  public static upsert(ids?: string[]): WriteOperation {
+    return new WriteOperation(WriteOperationType.UPSERT, ids);
+  }
 
-  constructor(public readonly type: WriteOperationType, public readonly ids?: string[]) { }
+  constructor(
+    public readonly type: WriteOperationType,
+    public readonly ids?: string[],
+  ) {}
 }
diff --git a/src/eventbridge/destination.ts b/src/eventbridge/destination.ts
index 6a8357e2..8d90e44f 100644
--- a/src/eventbridge/destination.ts
+++ b/src/eventbridge/destination.ts
@@ -2,14 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { EventBridgeConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { FlowType, IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { EventBridgeConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { FlowType, IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
 
 /**
  * The properties for the EventBridge destination
@@ -23,24 +23,31 @@ export interface EventBridgeDestinationProps {
  * This class represents AppFlow's EventBridge destination
  */
 export class EventBridgeDestination implements IDestination {
-
   private readonly compatibleFlows: FlowType[] = [FlowType.EVENT];
-  public readonly connectorType: ConnectorType = EventBridgeConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    EventBridgeConnectorType.instance;
 
-  constructor(private readonly props: EventBridgeDestinationProps) { }
+  constructor(private readonly props: EventBridgeDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
     if (!this.compatibleFlows.includes(flow.type)) {
-      throw new Error(`Flow of type ${flow.type} does not support EventBridge as a destination`);
+      throw new Error(
+        `Flow of type ${flow.type} does not support EventBridge as a destination`,
+      );
     }
 
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -49,7 +56,8 @@ export class EventBridgeDestination implements IDestination {
       eventBridge: {
         object: this.props.partnerBus,
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket?.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket?.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling?.failOnFirstError,
         },
@@ -57,9 +65,12 @@ export class EventBridgeDestination implements IDestination {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/eventbridge/events.ts b/src/eventbridge/events.ts
index 962c5383..059d3b78 100644
--- a/src/eventbridge/events.ts
+++ b/src/eventbridge/events.ts
@@ -2,12 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Aws } from 'aws-cdk-lib';
+import { Aws } from "aws-cdk-lib";
 
 export class EventSources {
   public static salesforceEventSource(suffix?: string): string {
     return suffix
-      ?`aws.partner/appflow/salesforce.com/${Aws.ACCOUNT_ID}/${suffix}`
+      ? `aws.partner/appflow/salesforce.com/${Aws.ACCOUNT_ID}/${suffix}`
       : `aws.partner/appflow/salesforce.com/${Aws.ACCOUNT_ID}`;
   }
-}
\ No newline at end of file
+}
diff --git a/src/eventbridge/index.ts b/src/eventbridge/index.ts
index ba1ff682..315ad8da 100644
--- a/src/eventbridge/index.ts
+++ b/src/eventbridge/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './destination';
-export * from './events';
\ No newline at end of file
+export * from "./type";
+export * from "./destination";
+export * from "./events";
diff --git a/src/eventbridge/type.ts b/src/eventbridge/type.ts
index 0fce814d..5118a8a8 100644
--- a/src/eventbridge/type.ts
+++ b/src/eventbridge/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class EventBridgeConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!EventBridgeConnectorType.actualInstance) {
       EventBridgeConnectorType.actualInstance = new EventBridgeConnectorType();
@@ -19,10 +18,10 @@ export class EventBridgeConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('EventBridge', false);
+    super("EventBridge", false);
   }
 
   public get asProfileConnectorType(): string {
     return this.name;
   }
-}
\ No newline at end of file
+}
diff --git a/src/googleads/index.ts b/src/googleads/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/googleads/index.ts
+++ b/src/googleads/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/googleads/profile.ts b/src/googleads/profile.ts
index c9c020bd..3aeded4c 100644
--- a/src/googleads/profile.ts
+++ b/src/googleads/profile.ts
@@ -2,13 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { GoogleAdsConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { GoogleAdsConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
 
 export interface GoogleAdsConnectorProfileProps extends ConnectorProfileProps {
   readonly oAuth: GoogleAdsOAuthSettings;
@@ -21,12 +24,12 @@ export interface GoogleAdsConnectorProfileProps extends ConnectorProfileProps {
  */
 export interface GoogleAdsOAuthEndpoints {
   /**
-     * The OAuth token endpoint URI
-     */
+   * The OAuth token endpoint URI
+   */
   readonly token?: string;
   /**
-     * The OAuth authorization endpoint URI
-     */
+   * The OAuth authorization endpoint URI
+   */
   readonly authorization?: string;
 }
 /**
@@ -34,16 +37,16 @@ export interface GoogleAdsOAuthEndpoints {
  */
 export interface GoogleAdsRefreshTokenGrantFlow {
   /**
-     * A non-expired refresh token.
-     */
+   * A non-expired refresh token.
+   */
   readonly refreshToken?: SecretValue;
   /**
-     * The secret of the client app.
-     */
+   * The secret of the client app.
+   */
   readonly clientSecret?: SecretValue;
   /**
-     * The id of the client app.
-     */
+   * The id of the client app.
+   */
   readonly clientId?: SecretValue;
 }
 /**
@@ -51,82 +54,103 @@ export interface GoogleAdsRefreshTokenGrantFlow {
  */
 export interface GoogleAdsOAuthFlow {
   /**
-     * The details required for executing the refresh token grant flow
-     */
+   * The details required for executing the refresh token grant flow
+   */
   readonly refreshTokenGrant: GoogleAdsRefreshTokenGrantFlow;
 }
 export interface GoogleAdsOAuthSettings {
   /**
-     * The access token to be used when interacting with Google Ads
-     *
-     * Note that if only the access token is provided AppFlow is not able to retrieve a fresh access token when the current one is expired
-     *
-     * @default Retrieves a fresh accessToken with the information in the [flow property]{@link GoogleAdsOAuthSettings#flow}
-     */
+   * The access token to be used when interacting with Google Ads
+   *
+   * Note that if only the access token is provided AppFlow is not able to retrieve a fresh access token when the current one is expired
+   *
+   * @default Retrieves a fresh accessToken with the information in the [flow property]{@link GoogleAdsOAuthSettings#flow}
+   */
   readonly accessToken?: SecretValue;
   /**
-     * The OAuth flow used for obtaining a new accessToken when the old is not present or expired.
-     *
-     * @default undefined. AppFlow will not request any new accessToken after expiry.
-     */
+   * The OAuth flow used for obtaining a new accessToken when the old is not present or expired.
+   *
+   * @default undefined. AppFlow will not request any new accessToken after expiry.
+   */
   readonly flow?: GoogleAdsOAuthFlow;
   /**
-     * The OAuth token and authorization endpoints.
-     */
+   * The OAuth token and authorization endpoints.
+   */
   readonly endpoints?: GoogleAdsOAuthEndpoints;
 }
 
 export class GoogleAdsConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as GoogleAdsConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as GoogleAdsConnectorProfile;
   }
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as GoogleAdsConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as GoogleAdsConnectorProfile;
   }
 
-  private static readonly defaultTokenEndpoint: string = 'https://oauth2.googleapis.com/token';
+  private static readonly defaultTokenEndpoint: string =
+    "https://oauth2.googleapis.com/token";
 
-  constructor(scope: Construct, id: string, props: GoogleAdsConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: GoogleAdsConnectorProfileProps,
+  ) {
     super(scope, id, props, GoogleAdsConnectorType.instance);
   }
 
-
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as GoogleAdsConnectorProfileProps);
+    const properties = props as GoogleAdsConnectorProfileProps;
     return {
       customConnector: {
         profileProperties: {
           developerToken: properties.developerToken.unsafeUnwrap(),
           apiVersion: properties.apiVersion,
-          managerID: properties.managerID?.unsafeUnwrap() as any /* can be undefined */,
+          managerID:
+            properties.managerID?.unsafeUnwrap() as any /* can be undefined */,
         },
         oAuth2Properties: {
           // INFO: even if we're using a refresh token grant flow this property is required
           oAuth2GrantType: OAuthGrantType.AUTHORIZATION_CODE,
           // INFO: even if we provide only the access token this property is required
-          tokenUrl: properties.oAuth.endpoints?.token ?? GoogleAdsConnectorProfile.defaultTokenEndpoint,
+          tokenUrl:
+            properties.oAuth.endpoints?.token ??
+            GoogleAdsConnectorProfile.defaultTokenEndpoint,
         },
       },
     };
   }
 
-
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as GoogleAdsConnectorProfileProps);
+    const properties = props as GoogleAdsConnectorProfileProps;
 
     return {
       customConnector: {
         oauth2: {
           // INFO: when using Refresh Token Grant Flow - access token property is required
-          accessToken: properties.oAuth.accessToken?.unsafeUnwrap() ?? 'dummyAccessToken',
-          refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
-          clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+          accessToken:
+            properties.oAuth.accessToken?.unsafeUnwrap() ?? "dummyAccessToken",
+          refreshToken:
+            properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
+          clientId:
+            properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
diff --git a/src/googleads/source.ts b/src/googleads/source.ts
index 5cfc0386..7767c942 100644
--- a/src/googleads/source.ts
+++ b/src/googleads/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { GoogleAdsConnectorProfile } from './profile';
-import { GoogleAdsConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { GoogleAdsConnectorProfile } from "./profile";
+import { GoogleAdsConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 /**
  * Properties of a Google Ads Source
  */
@@ -22,14 +22,14 @@ export interface GoogleAdsSourceProps {
  */
 export class GoogleAdsSource implements ISource {
   /**
-     * The AppFlow type of the connector that this source is implemented for
-     */
-  public readonly connectorType: ConnectorType = GoogleAdsConnectorType.instance;
+   * The AppFlow type of the connector that this source is implemented for
+   */
+  public readonly connectorType: ConnectorType =
+    GoogleAdsConnectorType.instance;
 
-  constructor(private readonly props: GoogleAdsSourceProps) { }
+  constructor(private readonly props: GoogleAdsSourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -47,8 +47,11 @@ export class GoogleAdsSource implements ISource {
       },
     };
   }
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/googleads/type.ts b/src/googleads/type.ts
index 88a25324..2b778220 100644
--- a/src/googleads/type.ts
+++ b/src/googleads/type.ts
@@ -2,15 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class GoogleAdsConnectorType extends ConnectorType {
   /**
-     * Singleton
-     */
+   * Singleton
+   */
   public static get instance(): ConnectorType {
     if (!GoogleAdsConnectorType.actualInstance) {
       GoogleAdsConnectorType.actualInstance = new GoogleAdsConnectorType();
@@ -21,6 +21,6 @@ export class GoogleAdsConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('GoogleAds', true);
+    super("GoogleAds", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/googleads/util.ts b/src/googleads/util.ts
index 365fbe99..d05f1156 100644
--- a/src/googleads/util.ts
+++ b/src/googleads/util.ts
@@ -7,5 +7,5 @@ SPDX-License-Identifier: Apache-2.0
  * An enum representing the GoogleAds API versions.
  */
 export enum GoogleAdsApiVersion {
-  V16 = 'v16',
-}
\ No newline at end of file
+  V16 = "v16",
+}
diff --git a/src/googleanalytics4/index.ts b/src/googleanalytics4/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/googleanalytics4/index.ts
+++ b/src/googleanalytics4/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/googleanalytics4/profile.ts b/src/googleanalytics4/profile.ts
index ce4edc31..617dfa34 100644
--- a/src/googleanalytics4/profile.ts
+++ b/src/googleanalytics4/profile.ts
@@ -2,15 +2,19 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { GoogleAnalytics4ConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
-
-export interface GoogleAnalytics4ConnectorProfileProps extends ConnectorProfileProps {
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { GoogleAnalytics4ConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
+
+export interface GoogleAnalytics4ConnectorProfileProps
+  extends ConnectorProfileProps {
   readonly oAuth: GoogleAnalytics4OAuthSettings;
 }
 
@@ -60,7 +64,6 @@ export interface GoogleAnalytics4OAuthFlow {
 }
 
 export interface GoogleAnalytics4OAuthSettings {
-
   /**
    * The access token to be used when interacting with Google Analytics 4
    *
@@ -84,25 +87,41 @@ export interface GoogleAnalytics4OAuthSettings {
 }
 
 export class GoogleAnalytics4ConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as GoogleAnalytics4ConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as GoogleAnalytics4ConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as GoogleAnalytics4ConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as GoogleAnalytics4ConnectorProfile;
   }
 
-  private static readonly defaultTokenEndpoint: string = 'https://oauth2.googleapis.com/token';
+  private static readonly defaultTokenEndpoint: string =
+    "https://oauth2.googleapis.com/token";
 
-  constructor(scope: Construct, id: string, props: GoogleAnalytics4ConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: GoogleAnalytics4ConnectorProfileProps,
+  ) {
     super(scope, id, props, GoogleAnalytics4ConnectorType.instance);
   }
 
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as GoogleAnalytics4ConnectorProfileProps);
+    const properties = props as GoogleAnalytics4ConnectorProfileProps;
     return {
       customConnector: {
         oAuth2Properties: {
@@ -110,7 +129,9 @@ export class GoogleAnalytics4ConnectorProfile extends ConnectorProfileBase {
           oAuth2GrantType: OAuthGrantType.AUTHORIZATION_CODE,
           // INFO: even if we provide only the access token this property is required
           // TODO: think about if this is correct. token can be IResolvable
-          tokenUrl: properties.oAuth.endpoints?.token ?? GoogleAnalytics4ConnectorProfile.defaultTokenEndpoint,
+          tokenUrl:
+            properties.oAuth.endpoints?.token ??
+            GoogleAnalytics4ConnectorProfile.defaultTokenEndpoint,
         },
       },
     };
@@ -119,19 +140,23 @@ export class GoogleAnalytics4ConnectorProfile extends ConnectorProfileBase {
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as GoogleAnalytics4ConnectorProfileProps);
+    const properties = props as GoogleAnalytics4ConnectorProfileProps;
 
     return {
       customConnector: {
         oauth2: {
           // INFO: when using Refresh Token Grant Flow - access token property is required
-          accessToken: properties.oAuth.accessToken?.unsafeUnwrap() ?? 'dummyAccessToken',
-          refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
-          clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+          accessToken:
+            properties.oAuth.accessToken?.unsafeUnwrap() ?? "dummyAccessToken",
+          refreshToken:
+            properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
+          clientId:
+            properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/googleanalytics4/source.ts b/src/googleanalytics4/source.ts
index 8f497bce..97baa99d 100644
--- a/src/googleanalytics4/source.ts
+++ b/src/googleanalytics4/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { GoogleAnalytics4ConnectorProfile } from './profile';
-import { GoogleAnalytics4ConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { GoogleAnalytics4ConnectorProfile } from "./profile";
+import { GoogleAnalytics4ConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 /**
  * Properties of a Google Analytics v4 Source
@@ -23,16 +23,15 @@ export interface GoogleAnalytics4SourceProps {
  * A class that represents a Google Analytics v4 Source
  */
 export class GoogleAnalytics4Source implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = GoogleAnalytics4ConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    GoogleAnalytics4ConnectorType.instance;
 
-  constructor(private readonly props: GoogleAnalytics4SourceProps) { }
+  constructor(private readonly props: GoogleAnalytics4SourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -51,9 +50,12 @@ export class GoogleAnalytics4Source implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/googleanalytics4/type.ts b/src/googleanalytics4/type.ts
index 01c7ac91..66f81b2c 100644
--- a/src/googleanalytics4/type.ts
+++ b/src/googleanalytics4/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class GoogleAnalytics4ConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!GoogleAnalytics4ConnectorType.actualInstance) {
-      GoogleAnalytics4ConnectorType.actualInstance = new GoogleAnalytics4ConnectorType();
+      GoogleAnalytics4ConnectorType.actualInstance =
+        new GoogleAnalytics4ConnectorType();
     }
     return GoogleAnalytics4ConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class GoogleAnalytics4ConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('GoogleAnalytics4', true);
+    super("GoogleAnalytics4", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/googleanalytics4/util.ts b/src/googleanalytics4/util.ts
index 942d291b..09cdd343 100644
--- a/src/googleanalytics4/util.ts
+++ b/src/googleanalytics4/util.ts
@@ -3,5 +3,5 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum GoogleAnalytics4ApiVersion {
-  V1BETA = 'v1beta'
-}
\ No newline at end of file
+  V1BETA = "v1beta",
+}
diff --git a/src/googlebigquery/index.ts b/src/googlebigquery/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/googlebigquery/index.ts
+++ b/src/googlebigquery/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/googlebigquery/profile.ts b/src/googlebigquery/profile.ts
index 80309a49..3f094130 100644
--- a/src/googlebigquery/profile.ts
+++ b/src/googlebigquery/profile.ts
@@ -2,15 +2,19 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { GoogleBigQueryConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
-
-export interface GoogleBigQueryConnectorProfileProps extends ConnectorProfileProps {
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { GoogleBigQueryConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
+
+export interface GoogleBigQueryConnectorProfileProps
+  extends ConnectorProfileProps {
   readonly oAuth: GoogleBigQueryOAuthSettings;
 }
 
@@ -60,7 +64,6 @@ export interface GoogleBigQueryOAuthFlow {
 }
 
 export interface GoogleBigQueryOAuthSettings {
-
   /**
    * The access token to be used when interacting with Google BigQuery
    *
@@ -84,25 +87,41 @@ export interface GoogleBigQueryOAuthSettings {
 }
 
 export class GoogleBigQueryConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as GoogleBigQueryConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as GoogleBigQueryConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as GoogleBigQueryConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as GoogleBigQueryConnectorProfile;
   }
 
-  private static readonly defaultTokenEndpoint: string = 'https://oauth2.googleapis.com/token';
+  private static readonly defaultTokenEndpoint: string =
+    "https://oauth2.googleapis.com/token";
 
-  constructor(scope: Construct, id: string, props: GoogleBigQueryConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: GoogleBigQueryConnectorProfileProps,
+  ) {
     super(scope, id, props, GoogleBigQueryConnectorType.instance);
   }
 
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as GoogleBigQueryConnectorProfileProps);
+    const properties = props as GoogleBigQueryConnectorProfileProps;
     return {
       customConnector: {
         oAuth2Properties: {
@@ -110,7 +129,9 @@ export class GoogleBigQueryConnectorProfile extends ConnectorProfileBase {
           oAuth2GrantType: OAuthGrantType.AUTHORIZATION_CODE,
           // INFO: even if we provide only the access token this property is required
           // TODO: think about if this is correct. token can be IResolvable
-          tokenUrl: properties.oAuth.endpoints?.token ?? GoogleBigQueryConnectorProfile.defaultTokenEndpoint,
+          tokenUrl:
+            properties.oAuth.endpoints?.token ??
+            GoogleBigQueryConnectorProfile.defaultTokenEndpoint,
         },
       },
     };
@@ -119,19 +140,23 @@ export class GoogleBigQueryConnectorProfile extends ConnectorProfileBase {
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as GoogleBigQueryConnectorProfileProps);
+    const properties = props as GoogleBigQueryConnectorProfileProps;
 
     return {
       customConnector: {
         oauth2: {
           // INFO: when using Refresh Token Grant Flow - access token property is required
-          accessToken: properties.oAuth.accessToken?.unsafeUnwrap() ?? 'dummyAccessToken',
-          refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
-          clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+          accessToken:
+            properties.oAuth.accessToken?.unsafeUnwrap() ?? "dummyAccessToken",
+          refreshToken:
+            properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
+          clientId:
+            properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/googlebigquery/source.ts b/src/googlebigquery/source.ts
index 3e89d07c..bc002a70 100644
--- a/src/googlebigquery/source.ts
+++ b/src/googlebigquery/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { GoogleBigQueryConnectorProfile } from './profile';
-import { GoogleBigQueryConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { GoogleBigQueryConnectorProfile } from "./profile";
+import { GoogleBigQueryConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 export interface GoogleBigQueryObject {
   readonly project: string;
@@ -29,16 +29,15 @@ export interface GoogleBigQuerySourceProps {
  * A class that represents a Google BigQuery Source
  */
 export class GoogleBigQuerySource implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = GoogleBigQueryConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    GoogleBigQueryConnectorType.instance;
 
-  constructor(private readonly props: GoogleBigQuerySourceProps) { }
+  constructor(private readonly props: GoogleBigQuerySourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -57,9 +56,12 @@ export class GoogleBigQuerySource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/googlebigquery/type.ts b/src/googlebigquery/type.ts
index 73d5347d..ad1f06cc 100644
--- a/src/googlebigquery/type.ts
+++ b/src/googlebigquery/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class GoogleBigQueryConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!GoogleBigQueryConnectorType.actualInstance) {
-      GoogleBigQueryConnectorType.actualInstance = new GoogleBigQueryConnectorType();
+      GoogleBigQueryConnectorType.actualInstance =
+        new GoogleBigQueryConnectorType();
     }
     return GoogleBigQueryConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class GoogleBigQueryConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('GoogleBigQuery', true);
+    super("GoogleBigQuery", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/googlebigquery/util.ts b/src/googlebigquery/util.ts
index e2672db3..65d31aa4 100644
--- a/src/googlebigquery/util.ts
+++ b/src/googlebigquery/util.ts
@@ -3,5 +3,5 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
 export enum GoogleBigQueryApiVersion {
-  V2 = 'v2'
-}
\ No newline at end of file
+  V2 = "v2",
+}
diff --git a/src/index.ts b/src/index.ts
index b8af1846..c4fc1fd3 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -2,25 +2,25 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './core';
+export * from "./core";
 
-export * from './amazonrdsforpostgresql';
-export * from './asana';
-export * from './eventbridge';
-export * from './googleanalytics4';
-export * from './googlebigquery';
-export * from './jdbcsmalldatascale';
-export * from './marketo';
-export * from './microsoftdynamics365';
-export * from './microsoftsharepointonline';
-export * from './s3';
-export * from './salesforce';
-export * from './salesforce-marketing-cloud';
-export * from './sapodata';
-export * from './servicenow';
-export * from './slack';
-export * from './snowflake';
-export * from './redshift';
-export * from './zendesk';
-export * from './mailchimp';
-export * from './googleads';
+export * from "./amazonrdsforpostgresql";
+export * from "./asana";
+export * from "./eventbridge";
+export * from "./googleanalytics4";
+export * from "./googlebigquery";
+export * from "./jdbcsmalldatascale";
+export * from "./marketo";
+export * from "./microsoftdynamics365";
+export * from "./microsoftsharepointonline";
+export * from "./s3";
+export * from "./salesforce";
+export * from "./salesforce-marketing-cloud";
+export * from "./sapodata";
+export * from "./servicenow";
+export * from "./slack";
+export * from "./snowflake";
+export * from "./redshift";
+export * from "./zendesk";
+export * from "./mailchimp";
+export * from "./googleads";
diff --git a/src/jdbcsmalldatascale/destination.ts b/src/jdbcsmalldatascale/destination.ts
index 6eef0035..9e6c0f80 100644
--- a/src/jdbcsmalldatascale/destination.ts
+++ b/src/jdbcsmalldatascale/destination.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { JdbcSmallDataScaleConnectorProfile } from './profile';
-import { JdbcSmallDataScaleConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { WriteOperationType } from '../core/write-operation';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { JdbcSmallDataScaleConnectorProfile } from "./profile";
+import { JdbcSmallDataScaleConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { WriteOperationType } from "../core/write-operation";
 
 /**
  * The definition of the Amazon AppFlow object for JdbcSmallDestination
@@ -32,7 +32,6 @@ export interface JdbcSmallDataScaleObject {
  * Properties of the JdbcSmallDataScaleDestination
  */
 export interface JdbcSmallDataScaleDestinationProps {
-
   /**
    * The profile to use with the destination
    */
@@ -58,28 +57,35 @@ export interface JdbcSmallDataScaleDestinationProps {
  * Represents a destination for the JDBC connector
  */
 export class JdbcSmallDataScaleDestination implements IDestination {
+  private static readonly defaultApiVersion = "V1";
 
-  private static readonly defaultApiVersion = 'V1';
-
-  public readonly connectorType: ConnectorType = JdbcSmallDataScaleConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    JdbcSmallDataScaleConnectorType.instance;
 
   /**
    * Creates a new instance of the JdbcSmallDataScaleDestination
    * @param props - properties of the destination
    */
-  constructor(private readonly props: JdbcSmallDataScaleDestinationProps) { }
+  constructor(private readonly props: JdbcSmallDataScaleDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
-      apiVersion: this.props.apiVersion ?? JdbcSmallDataScaleDestination.defaultApiVersion,
+      apiVersion:
+        this.props.apiVersion ??
+        JdbcSmallDataScaleDestination.defaultApiVersion,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -88,7 +94,8 @@ export class JdbcSmallDataScaleDestination implements IDestination {
       customConnector: {
         entityName: `${this.props.object.schema}.${this.props.object.table}`,
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -97,9 +104,12 @@ export class JdbcSmallDataScaleDestination implements IDestination {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/jdbcsmalldatascale/driver.ts b/src/jdbcsmalldatascale/driver.ts
index 015f7c6c..d8d1ac14 100644
--- a/src/jdbcsmalldatascale/driver.ts
+++ b/src/jdbcsmalldatascale/driver.ts
@@ -1,4 +1,4 @@
 export enum JdbcDriver {
-  POSTGRES = 'postgresql',
-  MYSQL = 'mysql'
+  POSTGRES = "postgresql",
+  MYSQL = "mysql",
 }
diff --git a/src/jdbcsmalldatascale/index.ts b/src/jdbcsmalldatascale/index.ts
index 585cb37b..7cc7c76c 100644
--- a/src/jdbcsmalldatascale/index.ts
+++ b/src/jdbcsmalldatascale/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './driver';
-export * from './profile';
-export * from './source';
\ No newline at end of file
+export * from "./type";
+export * from "./driver";
+export * from "./profile";
+export * from "./source";
diff --git a/src/jdbcsmalldatascale/profile.ts b/src/jdbcsmalldatascale/profile.ts
index b0b40578..fb15304f 100644
--- a/src/jdbcsmalldatascale/profile.ts
+++ b/src/jdbcsmalldatascale/profile.ts
@@ -2,18 +2,22 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { JdbcDriver } from './driver';
-import { JdbcSmallDataScaleConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { JdbcDriver } from "./driver";
+import { JdbcSmallDataScaleConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 /**
  * Properties for the JdbcSmallDataScaleConnectorProfile
  */
-export interface JdbcSmallDataScaleConnectorProfileProps extends ConnectorProfileProps {
+export interface JdbcSmallDataScaleConnectorProfileProps
+  extends ConnectorProfileProps {
   /**
    * The auth settings for the profile
    */
@@ -59,7 +63,6 @@ export interface JdbcSmallDataScaleBasicAuthSettings {
  * The connector profile for the JDBC connector
  */
 export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
-
   /**
    * Imports an existing JdbcSmallDataScaleConnectorProfile
    * @param scope the scope for the connector profile
@@ -67,8 +70,14 @@ export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
    * @param arn the ARN for the existing connector profile
    * @returns An instance of the JdbcSmallDataScaleConnectorProfile
    */
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as JdbcSmallDataScaleConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as JdbcSmallDataScaleConnectorProfile;
   }
 
   /**
@@ -78,8 +87,14 @@ export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
    * @param name the name for the existing connector profile
    * @returns An instance of the JdbcSmallDataScaleConnectorProfile
    */
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as JdbcSmallDataScaleConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as JdbcSmallDataScaleConnectorProfile;
   }
 
   /**
@@ -88,11 +103,17 @@ export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
    * @param id the id of this connector profile
    * @param props properties to use when instantiating this connector profile
    */
-  constructor(scope: Construct, id: string, props: JdbcSmallDataScaleConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: JdbcSmallDataScaleConnectorProfileProps,
+  ) {
     super(scope, id, props, JdbcSmallDataScaleConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(_props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+  protected buildConnectorProfileProperties(
+    _props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
     return {
       customConnector: {
         profileProperties: {},
@@ -100,8 +121,10 @@ export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as JdbcSmallDataScaleConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as JdbcSmallDataScaleConnectorProfileProps;
     return {
       customConnector: {
         authenticationType: ConnectorAuthenticationType.CUSTOM,
@@ -114,9 +137,9 @@ export class JdbcSmallDataScaleConnectorProfile extends ConnectorProfileBase {
             port: `${properties.port}`,
             database: properties.database,
           },
-          customAuthenticationType: 'CUSTOM',
+          customAuthenticationType: "CUSTOM",
         },
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/jdbcsmalldatascale/source.ts b/src/jdbcsmalldatascale/source.ts
index 5c70af12..2c0c5274 100644
--- a/src/jdbcsmalldatascale/source.ts
+++ b/src/jdbcsmalldatascale/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { JdbcSmallDataScaleConnectorProfile } from './profile';
-import { JdbcSmallDataScaleConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { JdbcSmallDataScaleConnectorProfile } from "./profile";
+import { JdbcSmallDataScaleConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface JdbcSmallDataScaleObject {
   readonly schema: string;
@@ -22,20 +22,20 @@ export interface JdbcSmallDataScaleSourceProps {
 }
 
 export class JdbcSmallDataScaleSource implements ISource {
+  private static readonly defaultApiVersion = "V1";
 
-  private static readonly defaultApiVersion = 'V1';
+  public readonly connectorType: ConnectorType =
+    JdbcSmallDataScaleConnectorType.instance;
 
-  public readonly connectorType: ConnectorType = JdbcSmallDataScaleConnectorType.instance;
-
-  constructor(private readonly props: JdbcSmallDataScaleSourceProps) { }
+  constructor(private readonly props: JdbcSmallDataScaleSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
-      apiVersion: this.props.apiVersion ?? JdbcSmallDataScaleSource.defaultApiVersion,
+      apiVersion:
+        this.props.apiVersion ?? JdbcSmallDataScaleSource.defaultApiVersion,
       connectorProfileName: this.props.profile.name,
       sourceConnectorProperties: this.buildSourceConnectorProperties(),
     };
@@ -49,9 +49,12 @@ export class JdbcSmallDataScaleSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/jdbcsmalldatascale/type.ts b/src/jdbcsmalldatascale/type.ts
index 6d93f29b..e65ff5c5 100644
--- a/src/jdbcsmalldatascale/type.ts
+++ b/src/jdbcsmalldatascale/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class JdbcSmallDataScaleConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!JdbcSmallDataScaleConnectorType.actualInstance) {
-      JdbcSmallDataScaleConnectorType.actualInstance = new JdbcSmallDataScaleConnectorType();
+      JdbcSmallDataScaleConnectorType.actualInstance =
+        new JdbcSmallDataScaleConnectorType();
     }
     return JdbcSmallDataScaleConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class JdbcSmallDataScaleConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('JDBCsmall', true);
+    super("JDBCsmall", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/mailchimp/index.ts b/src/mailchimp/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/mailchimp/index.ts
+++ b/src/mailchimp/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/mailchimp/profile.ts b/src/mailchimp/profile.ts
index c1ddb66e..d26104c8 100644
--- a/src/mailchimp/profile.ts
+++ b/src/mailchimp/profile.ts
@@ -2,12 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { MailchimpConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { MailchimpConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface MailchimpConnectorProfileProps extends ConnectorProfileProps {
   readonly apiKey: SecretValue;
@@ -19,21 +22,38 @@ export interface MailchimpConnectorProfileProps extends ConnectorProfileProps {
  *
  */
 export class MailchimpConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as MailchimpConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as MailchimpConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as MailchimpConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as MailchimpConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: MailchimpConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: MailchimpConnectorProfileProps,
+  ) {
     super(scope, id, props, MailchimpConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as MailchimpConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as MailchimpConnectorProfileProps;
     return {
       customConnector: {
         profileProperties: {
@@ -43,8 +63,10 @@ export class MailchimpConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as MailchimpConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as MailchimpConnectorProfileProps;
 
     return {
       customConnector: {
@@ -53,9 +75,9 @@ export class MailchimpConnectorProfile extends ConnectorProfileBase {
           credentialsMap: {
             api_key: properties.apiKey.unsafeUnwrap(),
           },
-          customAuthenticationType: 'api_key',
+          customAuthenticationType: "api_key",
         },
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/mailchimp/source.ts b/src/mailchimp/source.ts
index 0beadbcf..7ae73f72 100644
--- a/src/mailchimp/source.ts
+++ b/src/mailchimp/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { MailchimpConnectorProfile } from './profile';
-import { MailchimpConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { MailchimpConnectorProfile } from "./profile";
+import { MailchimpConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 export interface MailchimpSourceProps {
   readonly profile: MailchimpConnectorProfile;
@@ -20,17 +20,15 @@ export interface MailchimpSourceProps {
  * A class that represents a Mailchimp v3 Source
  */
 export class MailchimpSource implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = MailchimpConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    MailchimpConnectorType.instance;
 
-  constructor(private readonly props: MailchimpSourceProps) {
-  }
+  constructor(private readonly props: MailchimpSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -49,8 +47,11 @@ export class MailchimpSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/mailchimp/type.ts b/src/mailchimp/type.ts
index b7ed642a..f585c81c 100644
--- a/src/mailchimp/type.ts
+++ b/src/mailchimp/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class MailchimpConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!MailchimpConnectorType.actualInstance) {
       MailchimpConnectorType.actualInstance = new MailchimpConnectorType();
@@ -19,6 +18,6 @@ export class MailchimpConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Mailchimp', true);
+    super("Mailchimp", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/mailchimp/util.ts b/src/mailchimp/util.ts
index d5e11d46..38901f00 100644
--- a/src/mailchimp/util.ts
+++ b/src/mailchimp/util.ts
@@ -7,5 +7,5 @@ SPDX-License-Identifier: Apache-2.0
  * An enum representing the Mailchimp API versions.
  */
 export enum MailchimpApiVersion {
-  V3 = '3.0'
-}
\ No newline at end of file
+  V3 = "3.0",
+}
diff --git a/src/marketo/destination.ts b/src/marketo/destination.ts
index 92edba39..b10d1e3c 100644
--- a/src/marketo/destination.ts
+++ b/src/marketo/destination.ts
@@ -2,18 +2,17 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { MarketoConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { MarketoConnectorProfile } from '../marketo/profile';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { MarketoConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { MarketoConnectorProfile } from "../marketo/profile";
 
 export interface MarketoDestinationProps {
-
   readonly profile: MarketoConnectorProfile;
 
   /**
@@ -28,21 +27,25 @@ export interface MarketoDestinationProps {
 }
 
 export class MarketoDestination implements IDestination {
-
   public readonly connectorType: ConnectorType = MarketoConnectorType.instance;
 
-  constructor(private readonly props: MarketoDestinationProps) { }
+  constructor(private readonly props: MarketoDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -50,7 +53,8 @@ export class MarketoDestination implements IDestination {
     return {
       marketo: {
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket?.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket?.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -64,4 +68,4 @@ export class MarketoDestination implements IDestination {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/marketo/index.ts b/src/marketo/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/marketo/index.ts
+++ b/src/marketo/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/marketo/profile.ts b/src/marketo/profile.ts
index e8132bee..c23273eb 100644
--- a/src/marketo/profile.ts
+++ b/src/marketo/profile.ts
@@ -2,11 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { MarketoConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { MarketoConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface MarketoConnectorProfileProps extends ConnectorProfileProps {
   readonly oAuth: MarketoOAuthSettings;
@@ -28,21 +31,38 @@ export interface MarketoOAuthSettings {
 }
 
 export class MarketoConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as MarketoConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as MarketoConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as MarketoConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as MarketoConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: MarketoConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: MarketoConnectorProfileProps,
+  ) {
     super(scope, id, props, MarketoConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as MarketoConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as MarketoConnectorProfileProps;
     return {
       marketo: {
         instanceUrl: properties.instanceUrl,
@@ -50,14 +70,18 @@ export class MarketoConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as MarketoConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as MarketoConnectorProfileProps;
     return {
       marketo: {
         accessToken: properties.oAuth.accessToken?.unsafeUnwrap(),
-        clientId: properties.oAuth.flow.clientCredentials.clientId.unsafeUnwrap(),
-        clientSecret: properties.oAuth.flow.clientCredentials.clientSecret.unsafeUnwrap(),
+        clientId:
+          properties.oAuth.flow.clientCredentials.clientId.unsafeUnwrap(),
+        clientSecret:
+          properties.oAuth.flow.clientCredentials.clientSecret.unsafeUnwrap(),
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/marketo/source.ts b/src/marketo/source.ts
index 91f690b4..e37b3597 100644
--- a/src/marketo/source.ts
+++ b/src/marketo/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { MarketoConnectorProfile } from './profile';
-import { MarketoConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { MarketoConnectorProfile } from "./profile";
+import { MarketoConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface MarketoSourceProps {
   readonly profile: MarketoConnectorProfile;
@@ -17,13 +17,11 @@ export interface MarketoSourceProps {
 }
 
 export class MarketoSource implements ISource {
-
   public readonly connectorType: ConnectorType = MarketoConnectorType.instance;
 
-  constructor(private readonly props: MarketoSourceProps) { }
+  constructor(private readonly props: MarketoSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -42,9 +40,12 @@ export class MarketoSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/marketo/type.ts b/src/marketo/type.ts
index 3dabb0b1..986adf93 100644
--- a/src/marketo/type.ts
+++ b/src/marketo/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class MarketoConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!MarketoConnectorType.actualInstance) {
       MarketoConnectorType.actualInstance = new MarketoConnectorType();
@@ -19,6 +18,6 @@ export class MarketoConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Marketo', false);
+    super("Marketo", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/microsoftdynamics365/index.ts b/src/microsoftdynamics365/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/microsoftdynamics365/index.ts
+++ b/src/microsoftdynamics365/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/microsoftdynamics365/profile.ts b/src/microsoftdynamics365/profile.ts
index ae920a16..cef4dc87 100644
--- a/src/microsoftdynamics365/profile.ts
+++ b/src/microsoftdynamics365/profile.ts
@@ -2,16 +2,20 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { MicrosoftDynamics365ConnectorType } from './type';
-import { MicrosoftDynamics365TokenUrlBuilder } from './util';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
-
-export interface MicrosoftDynamics365ConnectorProfileProps extends ConnectorProfileProps {
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { MicrosoftDynamics365ConnectorType } from "./type";
+import { MicrosoftDynamics365TokenUrlBuilder } from "./util";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
+
+export interface MicrosoftDynamics365ConnectorProfileProps
+  extends ConnectorProfileProps {
   readonly oAuth: MicrosoftDynamics365OAuthSettings;
   readonly instanceUrl: string;
 }
@@ -31,7 +35,6 @@ export interface MicrosoftDynamics365OAuthFlow {
 }
 
 export interface MicrosoftDynamics365OAuthSettings {
-
   /**
    * The access token to be used when interacting with Microsoft Dynamics 365
    *
@@ -50,25 +53,41 @@ export interface MicrosoftDynamics365OAuthSettings {
  * This connector profile allows to transfer document libraries residing on a Microsoft Dynamics 365's site to Amazon S3.
  */
 export class MicrosoftDynamics365ConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as MicrosoftDynamics365ConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as MicrosoftDynamics365ConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as MicrosoftDynamics365ConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as MicrosoftDynamics365ConnectorProfile;
   }
 
-  private static readonly defaultTokenEndpoint = MicrosoftDynamics365TokenUrlBuilder.buildTokenUrl();
+  private static readonly defaultTokenEndpoint =
+    MicrosoftDynamics365TokenUrlBuilder.buildTokenUrl();
 
-  constructor(scope: Construct, id: string, props: MicrosoftDynamics365ConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: MicrosoftDynamics365ConnectorProfileProps,
+  ) {
     super(scope, id, props, MicrosoftDynamics365ConnectorType.instance);
   }
 
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as MicrosoftDynamics365ConnectorProfileProps);
+    const properties = props as MicrosoftDynamics365ConnectorProfileProps;
     return {
       customConnector: {
         profileProperties: {
@@ -79,7 +98,9 @@ export class MicrosoftDynamics365ConnectorProfile extends ConnectorProfileBase {
           oAuth2GrantType: OAuthGrantType.AUTHORIZATION_CODE,
           // INFO: even if we provide only the access token this property is required
           // TODO: think about if this is correct. token can be IResolvable
-          tokenUrl: properties.oAuth.endpoints?.token ?? MicrosoftDynamics365ConnectorProfile.defaultTokenEndpoint,
+          tokenUrl:
+            properties.oAuth.endpoints?.token ??
+            MicrosoftDynamics365ConnectorProfile.defaultTokenEndpoint,
         },
       },
     };
@@ -88,20 +109,25 @@ export class MicrosoftDynamics365ConnectorProfile extends ConnectorProfileBase {
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as MicrosoftDynamics365ConnectorProfileProps);
+    const properties = props as MicrosoftDynamics365ConnectorProfileProps;
 
     return {
       customConnector: {
         oauth2: {
           // INFO: when using Refresh Token Grant Flow - access token property is required
-          accessToken: properties.oAuth.accessToken?.unsafeUnwrap() ?? 'dummyAccessToken',
+          accessToken:
+            properties.oAuth.accessToken?.unsafeUnwrap() ?? "dummyAccessToken",
           // INFO: when passing only an access token - this value is still required
-          refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap() ?? 'dummyRefreshToken',
-          clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+          refreshToken:
+            properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap() ??
+            "dummyRefreshToken",
+          clientId:
+            properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/microsoftdynamics365/source.ts b/src/microsoftdynamics365/source.ts
index b3f934d6..ad2f697d 100644
--- a/src/microsoftdynamics365/source.ts
+++ b/src/microsoftdynamics365/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { MicrosoftDynamics365ConnectorProfile } from './profile';
-import { MicrosoftDynamics365ConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { MicrosoftDynamics365ConnectorProfile } from "./profile";
+import { MicrosoftDynamics365ConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 /**
  * Properties of a Microsoft Dynamics 365 Source
@@ -23,16 +23,15 @@ export interface MicrosoftDynamics365SourceProps {
  * A class that represents a Microsoft Dynamics 365 Source
  */
 export class MicrosoftDynamics365Source implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = MicrosoftDynamics365ConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    MicrosoftDynamics365ConnectorType.instance;
 
-  constructor(private readonly props: MicrosoftDynamics365SourceProps) { }
+  constructor(private readonly props: MicrosoftDynamics365SourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -52,8 +51,11 @@ export class MicrosoftDynamics365Source implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/microsoftdynamics365/type.ts b/src/microsoftdynamics365/type.ts
index 9b361051..098fdc5a 100644
--- a/src/microsoftdynamics365/type.ts
+++ b/src/microsoftdynamics365/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class MicrosoftDynamics365ConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!MicrosoftDynamics365ConnectorType.actualInstance) {
-      MicrosoftDynamics365ConnectorType.actualInstance = new MicrosoftDynamics365ConnectorType();
+      MicrosoftDynamics365ConnectorType.actualInstance =
+        new MicrosoftDynamics365ConnectorType();
     }
     return MicrosoftDynamics365ConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class MicrosoftDynamics365ConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('MicrosoftDynamics365', true);
+    super("MicrosoftDynamics365", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/microsoftdynamics365/util.ts b/src/microsoftdynamics365/util.ts
index a93a98e2..70f2f93d 100644
--- a/src/microsoftdynamics365/util.ts
+++ b/src/microsoftdynamics365/util.ts
@@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
  */
 export class MicrosoftDynamics365TokenUrlBuilder {
   public static buildTokenUrl(tenantId?: string) {
-    return `https://login.microsoftonline.com/${tenantId ?? 'common'}/oauth2/v2.0/token`;
+    return `https://login.microsoftonline.com/${tenantId ?? "common"}/oauth2/v2.0/token`;
   }
 }
 
@@ -25,5 +25,5 @@ export enum MicrosoftDynamics365ApiVersion {
   /**
    * Version 9.2
    */
-  V9_2 = 'v9.2'
-}
\ No newline at end of file
+  V9_2 = "v9.2",
+}
diff --git a/src/microsoftsharepointonline/index.ts b/src/microsoftsharepointonline/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/microsoftsharepointonline/index.ts
+++ b/src/microsoftsharepointonline/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/microsoftsharepointonline/profile.ts b/src/microsoftsharepointonline/profile.ts
index 1f5871d4..ce578325 100644
--- a/src/microsoftsharepointonline/profile.ts
+++ b/src/microsoftsharepointonline/profile.ts
@@ -2,16 +2,20 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { MicrosoftSharepointOnlineConnectorType } from './type';
-import { MicrosoftSharepointOnlineTokenUrlBuilder } from './util';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
-
-export interface MicrosoftSharepointOnlineConnectorProfileProps extends ConnectorProfileProps {
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { MicrosoftSharepointOnlineConnectorType } from "./type";
+import { MicrosoftSharepointOnlineTokenUrlBuilder } from "./util";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
+
+export interface MicrosoftSharepointOnlineConnectorProfileProps
+  extends ConnectorProfileProps {
   readonly oAuth: MicrosoftSharepointOnlineOAuthSettings;
 }
 
@@ -30,7 +34,6 @@ export interface MicrosoftSharepointOnlineOAuthFlow {
 }
 
 export interface MicrosoftSharepointOnlineOAuthSettings {
-
   /**
    * The access token to be used when interacting with Microsoft Sharepoint Online
    *
@@ -49,25 +52,41 @@ export interface MicrosoftSharepointOnlineOAuthSettings {
  * This connector profile allows to transfer document libraries residing on a Microsoft Sharepoint Online's site to Amazon S3.
  */
 export class MicrosoftSharepointOnlineConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as MicrosoftSharepointOnlineConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as MicrosoftSharepointOnlineConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as MicrosoftSharepointOnlineConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as MicrosoftSharepointOnlineConnectorProfile;
   }
 
-  private static readonly defaultTokenEndpoint = MicrosoftSharepointOnlineTokenUrlBuilder.buildTokenUrl();
+  private static readonly defaultTokenEndpoint =
+    MicrosoftSharepointOnlineTokenUrlBuilder.buildTokenUrl();
 
-  constructor(scope: Construct, id: string, props: MicrosoftSharepointOnlineConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: MicrosoftSharepointOnlineConnectorProfileProps,
+  ) {
     super(scope, id, props, MicrosoftSharepointOnlineConnectorType.instance);
   }
 
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as MicrosoftSharepointOnlineConnectorProfileProps);
+    const properties = props as MicrosoftSharepointOnlineConnectorProfileProps;
     return {
       customConnector: {
         oAuth2Properties: {
@@ -75,7 +94,9 @@ export class MicrosoftSharepointOnlineConnectorProfile extends ConnectorProfileB
           oAuth2GrantType: OAuthGrantType.AUTHORIZATION_CODE,
           // INFO: even if we provide only the access token this property is required
           // TODO: think about if this is correct. token can be IResolvable
-          tokenUrl: properties.oAuth.endpoints?.token ?? MicrosoftSharepointOnlineConnectorProfile.defaultTokenEndpoint,
+          tokenUrl:
+            properties.oAuth.endpoints?.token ??
+            MicrosoftSharepointOnlineConnectorProfile.defaultTokenEndpoint,
         },
       },
     };
@@ -84,20 +105,25 @@ export class MicrosoftSharepointOnlineConnectorProfile extends ConnectorProfileB
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as MicrosoftSharepointOnlineConnectorProfileProps);
+    const properties = props as MicrosoftSharepointOnlineConnectorProfileProps;
 
     return {
       customConnector: {
         oauth2: {
           // INFO: when using Refresh Token Grant Flow - access token property is required
-          accessToken: properties.oAuth.accessToken?.unsafeUnwrap() ?? 'dummyAccessToken',
+          accessToken:
+            properties.oAuth.accessToken?.unsafeUnwrap() ?? "dummyAccessToken",
           // INFO: when passing only an access token - this value is still required
-          refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap() ?? 'dummyRefreshToken',
-          clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+          refreshToken:
+            properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap() ??
+            "dummyRefreshToken",
+          clientId:
+            properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/microsoftsharepointonline/source.ts b/src/microsoftsharepointonline/source.ts
index 3cb0ed33..e041cf24 100644
--- a/src/microsoftsharepointonline/source.ts
+++ b/src/microsoftsharepointonline/source.ts
@@ -2,14 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Fn } from 'aws-cdk-lib';
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { MicrosoftSharepointOnlineConnectorProfile } from './profile';
-import { MicrosoftSharepointOnlineConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { Fn } from "aws-cdk-lib";
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { MicrosoftSharepointOnlineConnectorProfile } from "./profile";
+import { MicrosoftSharepointOnlineConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 /**
  * Represents a list of Microsoft Sharepoint Online site drives from which to retrieve the documents.
@@ -53,16 +53,15 @@ export interface MicrosoftSharepointOnlineSourceProps {
  * A class that represents a Microsoft Sharepoint Online Source
  */
 export class MicrosoftSharepointOnlineSource implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = MicrosoftSharepointOnlineConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    MicrosoftSharepointOnlineConnectorType.instance;
 
-  constructor(private readonly props: MicrosoftSharepointOnlineSourceProps) { }
+  constructor(private readonly props: MicrosoftSharepointOnlineSourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -74,14 +73,16 @@ export class MicrosoftSharepointOnlineSource implements ISource {
   }
 
   private buildSourceConnectorProperties(): CfnFlow.SourceConnectorPropertiesProperty {
-
     if (this.props.object.entities && this.props.object.drives) {
-      throw new Error('Only one of the properties entities or drives should be specified');
+      throw new Error(
+        "Only one of the properties entities or drives should be specified",
+      );
     }
 
-    const entities = this.props.object.entities ?? this.props.object.drives ?? [];
+    const entities =
+      this.props.object.entities ?? this.props.object.drives ?? [];
     if (entities.length < 1) {
-      throw new Error('At least one entity must be specified');
+      throw new Error("At least one entity must be specified");
     }
 
     return {
@@ -94,8 +95,11 @@ export class MicrosoftSharepointOnlineSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/microsoftsharepointonline/type.ts b/src/microsoftsharepointonline/type.ts
index b3f66aca..180b1a79 100644
--- a/src/microsoftsharepointonline/type.ts
+++ b/src/microsoftsharepointonline/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class MicrosoftSharepointOnlineConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!MicrosoftSharepointOnlineConnectorType.actualInstance) {
-      MicrosoftSharepointOnlineConnectorType.actualInstance = new MicrosoftSharepointOnlineConnectorType();
+      MicrosoftSharepointOnlineConnectorType.actualInstance =
+        new MicrosoftSharepointOnlineConnectorType();
     }
     return MicrosoftSharepointOnlineConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class MicrosoftSharepointOnlineConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('MicrosoftSharePointOnline', true);
+    super("MicrosoftSharePointOnline", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/microsoftsharepointonline/util.ts b/src/microsoftsharepointonline/util.ts
index c643e034..267f6119 100644
--- a/src/microsoftsharepointonline/util.ts
+++ b/src/microsoftsharepointonline/util.ts
@@ -8,7 +8,7 @@ SPDX-License-Identifier: Apache-2.0
  */
 export class MicrosoftSharepointOnlineTokenUrlBuilder {
   public static buildTokenUrl(tenantId?: string) {
-    return `https://login.microsoftonline.com/${tenantId ?? 'common'}/oauth2/v2.0/token`;
+    return `https://login.microsoftonline.com/${tenantId ?? "common"}/oauth2/v2.0/token`;
   }
 }
 
@@ -19,5 +19,5 @@ export enum MicrosoftSharepointOnlineApiVersion {
   /**
    * Version 1.0
    */
-  V1 = 'v1.0'
-}
\ No newline at end of file
+  V1 = "v1.0",
+}
diff --git a/src/redshift/destination.ts b/src/redshift/destination.ts
index 2322ea82..25670136 100644
--- a/src/redshift/destination.ts
+++ b/src/redshift/destination.ts
@@ -2,15 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ITable } from '@aws-cdk/aws-redshift-alpha';
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { RedshiftConnectorProfile } from './profile';
-import { RedshiftConnectorType } from './type';
-import { ErrorHandlingConfiguration, IFlow } from '../core';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IDestination } from '../core/vertices';
+import { ITable } from "@aws-cdk/aws-redshift-alpha";
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { RedshiftConnectorProfile } from "./profile";
+import { RedshiftConnectorType } from "./type";
+import { ErrorHandlingConfiguration, IFlow } from "../core";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IDestination } from "../core/vertices";
 
 export interface RedshiftDestinationObject {
   readonly table: string | ITable;
@@ -39,16 +39,19 @@ export interface RedshiftDestinationProps {
 }
 
 export class RedshiftDestination implements IDestination {
-
-  private readonly defaultSchema: string = 'public';
+  private readonly defaultSchema: string = "public";
   public readonly connectorType: ConnectorType = RedshiftConnectorType.instance;
 
-  constructor(private readonly props: RedshiftDestinationProps) { }
+  constructor(private readonly props: RedshiftDestinationProps) {}
 
   bind(scope: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(scope, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      scope,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(scope, this.props.profile);
     this.tryAddNodeDependency(scope, this.props.object.table);
     // NOTE: interesting case that the profile requires to have the table created
@@ -58,7 +61,8 @@ export class RedshiftDestination implements IDestination {
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -66,7 +70,8 @@ export class RedshiftDestination implements IDestination {
     return {
       redshift: {
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -74,7 +79,10 @@ export class RedshiftDestination implements IDestination {
         //       for now that is the assumption and we're pulling this data from the profile
         intermediateBucketName: this.props.profile._location.bucket.bucketName,
         bucketPrefix: this.props.profile._location.prefix,
-        object: this.buildObject(this.props.object.table, this.props.object.schema),
+        object: this.buildObject(
+          this.props.object.table,
+          this.props.object.schema,
+        ),
       },
     };
   }
@@ -82,16 +90,19 @@ export class RedshiftDestination implements IDestination {
   private buildObject(table: ITable | string, schema?: string) {
     const _schema = schema ?? this.defaultSchema;
 
-    if (typeof table === 'string') {
+    if (typeof table === "string") {
       return `${_schema}.${table}`;
     }
 
     return `${_schema}.${table.tableName}`;
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/redshift/index.ts b/src/redshift/index.ts
index 1c39308b..055d082c 100644
--- a/src/redshift/index.ts
+++ b/src/redshift/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './destination';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./destination";
diff --git a/src/redshift/profile.ts b/src/redshift/profile.ts
index a07e1227..8ae33f17 100644
--- a/src/redshift/profile.ts
+++ b/src/redshift/profile.ts
@@ -2,16 +2,30 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ICluster } from '@aws-cdk/aws-redshift-alpha';
-import { Aws, SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Effect, IRole, Policy, PolicyStatement, Role, ServicePrincipal } from 'aws-cdk-lib/aws-iam';
-import { AwsCustomResource, AwsCustomResourcePolicy, PhysicalResourceId } from 'aws-cdk-lib/custom-resources';
-import { Construct } from 'constructs';
-import { RedshiftConnectorType } from './type';
-import { S3Location } from '../core';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { ICluster } from "@aws-cdk/aws-redshift-alpha";
+import { Aws, SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import {
+  Effect,
+  IRole,
+  Policy,
+  PolicyStatement,
+  Role,
+  ServicePrincipal,
+} from "aws-cdk-lib/aws-iam";
+import {
+  AwsCustomResource,
+  AwsCustomResourcePolicy,
+  PhysicalResourceId,
+} from "aws-cdk-lib/custom-resources";
+import { Construct } from "constructs";
+import { RedshiftConnectorType } from "./type";
+import { S3Location } from "../core";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface RedshiftConnectorBasicCredentials {
   readonly username?: string;
@@ -45,13 +59,24 @@ export interface RedshiftConnectorProfileProps extends ConnectorProfileProps {
 }
 
 export class RedshiftConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as RedshiftConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as RedshiftConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as RedshiftConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as RedshiftConnectorProfile;
   }
 
   /**
@@ -59,7 +84,11 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
    */
   public readonly _location: S3Location;
 
-  constructor(scope: Construct, id: string, props: RedshiftConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: RedshiftConnectorProfileProps,
+  ) {
     super(scope, id, props, RedshiftConnectorType.instance);
     this.tryAddNodeDependency(this, props.cluster);
     this._location = props.intermediateLocation;
@@ -68,23 +97,31 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as RedshiftConnectorProfileProps);
+    const properties = props as RedshiftConnectorProfileProps;
 
-    const redshiftAccessRole = properties.bucketAccessRole ?? this.buildRedshiftAccessRole(
-      this.node.id,
-      properties.cluster,
-      properties.intermediateLocation);
+    const redshiftAccessRole =
+      properties.bucketAccessRole ??
+      this.buildRedshiftAccessRole(
+        this.node.id,
+        properties.cluster,
+        properties.intermediateLocation,
+      );
 
-    const appflowDataApiRole = properties.dataApiRole ?? this.buildAppFlowDataApiRole(
-      this.node.id,
-      properties.cluster,
-      properties.databaseName,
-      properties.basicAuth.username);
+    const appflowDataApiRole =
+      properties.dataApiRole ??
+      this.buildAppFlowDataApiRole(
+        this.node.id,
+        properties.cluster,
+        properties.databaseName,
+        properties.basicAuth.username,
+      );
 
     this.tryAddNodeDependency(this, redshiftAccessRole);
     this.tryAddNodeDependency(this, appflowDataApiRole);
     this.tryAddNodeDependency(this, properties.intermediateLocation.bucket);
-    AppFlowPermissionsManager.instance().grantBucketReadWrite(properties.intermediateLocation.bucket);
+    AppFlowPermissionsManager.instance().grantBucketReadWrite(
+      properties.intermediateLocation.bucket,
+    );
 
     return {
       redshift: {
@@ -101,7 +138,7 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as RedshiftConnectorProfileProps);
+    const properties = props as RedshiftConnectorProfileProps;
     return {
       redshift: properties && {
         username: properties.basicAuth.username,
@@ -110,21 +147,27 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  private buildRedshiftAccessRole(id: string, cluster: ICluster, location: S3Location): IRole {
-
+  private buildRedshiftAccessRole(
+    id: string,
+    cluster: ICluster,
+    location: S3Location,
+  ): IRole {
     // see: https://docs.aws.amazon.com/appflow/latest/userguide/security_iam_service-role-policies.html#redshift-access-s3
     const role = new Role(this.stack, `${id}RedshiftRole`, {
-      assumedBy: new ServicePrincipal('redshift.amazonaws.com'),
+      assumedBy: new ServicePrincipal("redshift.amazonaws.com"),
     });
 
-    location.bucket.grantRead(role, location.prefix ? `${location.prefix}/*` : '*');
+    location.bucket.grantRead(
+      role,
+      location.prefix ? `${location.prefix}/*` : "*",
+    );
 
     const modifierId = `${id}RedshiftRoleAttach`;
 
     const modifier = new AwsCustomResource(this.stack, modifierId, {
       onCreate: {
-        service: 'Redshift',
-        action: 'modifyClusterIamRoles',
+        service: "Redshift",
+        action: "modifyClusterIamRoles",
         parameters: {
           ClusterIdentifier: cluster.clusterName,
           AddIamRoles: [role.roleArn],
@@ -133,12 +176,12 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
       },
       policy: AwsCustomResourcePolicy.fromStatements([
         new PolicyStatement({
-          actions: ['iam:PassRole'],
+          actions: ["iam:PassRole"],
           resources: [role.roleArn],
           effect: Effect.ALLOW,
         }),
         new PolicyStatement({
-          actions: ['redshift:ModifyClusterIamRoles'],
+          actions: ["redshift:ModifyClusterIamRoles"],
           resources: [
             `arn:${Aws.PARTITION}:redshift:${Aws.REGION}:${Aws.ACCOUNT_ID}:cluster:${cluster.clusterName}`,
           ],
@@ -153,52 +196,57 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
     return role;
   }
 
-  private buildAppFlowDataApiRole(id: string, cluster: ICluster, databaseName: string, username?: string): IRole {
+  private buildAppFlowDataApiRole(
+    id: string,
+    cluster: ICluster,
+    databaseName: string,
+    username?: string,
+  ): IRole {
     // see: https://docs.aws.amazon.com/appflow/latest/userguide/security_iam_service-role-policies.html#access-redshift
     const role = new Role(this.stack, `${id}AppFlowDataApiRole`, {
-      assumedBy: new ServicePrincipal('appflow.amazonaws.com'),
+      assumedBy: new ServicePrincipal("appflow.amazonaws.com"),
     });
 
     const policy = new Policy(this.stack, `${id}AppFlowDataApiRolePolicy`, {
       roles: [role],
       statements: [
         new PolicyStatement({
-          sid: 'DataAPIPermissions',
+          sid: "DataAPIPermissions",
           effect: Effect.ALLOW,
           actions: [
-            'redshift-data:ExecuteStatement',
-            'redshift-data:GetStatementResult',
-            'redshift-data:DescribeStatement',
+            "redshift-data:ExecuteStatement",
+            "redshift-data:GetStatementResult",
+            "redshift-data:DescribeStatement",
           ],
-          resources: ['*'],
+          resources: ["*"],
         }),
         new PolicyStatement({
-          sid: 'GetCredentialsForAPIUser',
+          sid: "GetCredentialsForAPIUser",
           effect: Effect.ALLOW,
-          actions: ['redshift:GetClusterCredentials'],
+          actions: ["redshift:GetClusterCredentials"],
           resources: [
             `arn:aws:redshift:${Aws.REGION}:${Aws.ACCOUNT_ID}:dbname:${cluster.clusterName}/${databaseName}`,
-            `arn:aws:redshift:${Aws.REGION}:${Aws.ACCOUNT_ID}:dbuser:${cluster.clusterName}/${username ?? '*'}`,
+            `arn:aws:redshift:${Aws.REGION}:${Aws.ACCOUNT_ID}:dbuser:${cluster.clusterName}/${username ?? "*"}`,
           ],
         }),
         new PolicyStatement({
-          sid: 'DenyCreateAPIUser',
+          sid: "DenyCreateAPIUser",
           effect: Effect.DENY,
-          actions: ['redshift:CreateClusterUser'],
+          actions: ["redshift:CreateClusterUser"],
           resources: [
             `arn:aws:redshift:${Aws.REGION}:${Aws.ACCOUNT_ID}:dbuser:${cluster.clusterName}/*`,
           ],
         }),
         new PolicyStatement({
-          sid: 'ServiceLinkedRole',
+          sid: "ServiceLinkedRole",
           effect: Effect.ALLOW,
-          actions: ['iam:CreateServiceLinkedRole'],
+          actions: ["iam:CreateServiceLinkedRole"],
           resources: [
             `arn:aws:iam::${Aws.ACCOUNT_ID}:role/aws-service-role/redshift-data.amazonaws.com/AWSServiceRoleForRedshift`,
           ],
           conditions: {
             StringLike: {
-              'iam:AWSServiceName': 'redshift-data.amazonaws.com',
+              "iam:AWSServiceName": "redshift-data.amazonaws.com",
             },
           },
         }),
@@ -209,4 +257,4 @@ export class RedshiftConnectorProfile extends ConnectorProfileBase {
 
     return role;
   }
-}
\ No newline at end of file
+}
diff --git a/src/redshift/type.ts b/src/redshift/type.ts
index 49269309..36d4c210 100644
--- a/src/redshift/type.ts
+++ b/src/redshift/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class RedshiftConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!RedshiftConnectorType.actualInstance) {
       RedshiftConnectorType.actualInstance = new RedshiftConnectorType();
@@ -19,6 +18,6 @@ export class RedshiftConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Redshift', false);
+    super("Redshift", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/s3/destination.ts b/src/s3/destination.ts
index 9f089e85..7df53d72 100644
--- a/src/s3/destination.ts
+++ b/src/s3/destination.ts
@@ -2,23 +2,23 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { IDatabase } from '@aws-cdk/aws-glue-alpha';
-import { Stack } from 'aws-cdk-lib';
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
+import { IDatabase } from "@aws-cdk/aws-glue-alpha";
+import { Stack } from "aws-cdk-lib";
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
 import {
   Effect,
   IRole,
   PolicyStatement,
   Role,
   ServicePrincipal,
-} from 'aws-cdk-lib/aws-iam';
-import { IConstruct } from 'constructs';
-import { S3ConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { FlowType, IFlow } from '../core/flows';
-import { S3Location } from '../core/s3-location';
-import { IDestination } from '../core/vertices/destination';
+} from "aws-cdk-lib/aws-iam";
+import { IConstruct } from "constructs";
+import { S3ConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { FlowType, IFlow } from "../core/flows";
+import { S3Location } from "../core/s3-location";
+import { IDestination } from "../core/vertices/destination";
 
 export interface S3FileAggregation {
   readonly type?: S3OutputAggregationType;
@@ -57,8 +57,8 @@ export interface S3OutputFormatting {
 }
 
 export enum S3OutputAggregationType {
-  NONE = 'None',
-  SINGLE_FILE = 'SingleFile',
+  NONE = "None",
+  SINGLE_FILE = "SingleFile",
 }
 
 /**
@@ -68,34 +68,34 @@ export enum S3OutputFileType {
   /**
    * CSV file type
    */
-  CSV = 'CSV',
+  CSV = "CSV",
   /**
    * JSON file type
    */
-  JSON = 'JSON',
+  JSON = "JSON",
   /**
    * Parquet file type
    */
-  PARQUET = 'PARQUET',
+  PARQUET = "PARQUET",
 }
 
 export enum S3OutputFilePrefixHierarchy {
-  EXECUTION_ID = 'EXECUTION_ID',
-  SCHEMA_VERSION = 'SCHEMA_VERSION',
+  EXECUTION_ID = "EXECUTION_ID",
+  SCHEMA_VERSION = "SCHEMA_VERSION",
 }
 
 export enum S3OutputFilePrefixFormat {
-  DAY = 'DAY',
-  HOUR = 'HOUR',
-  MINUTE = 'MINUTE',
-  MONTH = 'MONTH',
-  YEAR = 'YEAR',
+  DAY = "DAY",
+  HOUR = "HOUR",
+  MINUTE = "MINUTE",
+  MONTH = "MONTH",
+  YEAR = "YEAR",
 }
 
 export enum S3OutputFilePrefixType {
-  FILENAME = 'FILENAME',
-  PATH = 'PATH',
-  PATH_AND_FILE = 'PATH_AND_FILE',
+  FILENAME = "FILENAME",
+  PATH = "PATH",
+  PATH_AND_FILE = "PATH_AND_FILE",
 }
 
 export interface S3Catalog {
@@ -218,7 +218,7 @@ export class S3Destination implements IDestination {
     tablePrefix: string,
   ) {
     const role = new Role(flow.stack, `${flow.node.id}GlueAccessRole`, {
-      assumedBy: new ServicePrincipal('appflow.amazonaws.com'),
+      assumedBy: new ServicePrincipal("appflow.amazonaws.com"),
     });
 
     // see: https://docs.aws.amazon.com/appflow/latest/userguide/security_iam_id-based-policy-examples.html#security_iam_id-based-policy-examples-access-gdc
@@ -226,42 +226,42 @@ export class S3Destination implements IDestination {
       new PolicyStatement({
         effect: Effect.ALLOW,
         actions: [
-          'glue:BatchCreatePartition',
-          'glue:CreatePartitionIndex',
-          'glue:DeleteDatabase',
-          'glue:GetTableVersions',
-          'glue:GetPartitions',
-          'glue:BatchDeletePartition',
-          'glue:DeleteTableVersion',
-          'glue:UpdateTable',
-          'glue:DeleteTable',
-          'glue:DeletePartitionIndex',
-          'glue:GetTableVersion',
-          'glue:CreatePartition',
-          'glue:UntagResource',
-          'glue:UpdatePartition',
-          'glue:TagResource',
-          'glue:UpdateDatabase',
-          'glue:CreateTable',
-          'glue:BatchUpdatePartition',
-          'glue:GetTables',
-          'glue:BatchGetPartition',
-          'glue:GetDatabases',
-          'glue:GetPartitionIndexes',
-          'glue:GetTable',
-          'glue:GetDatabase',
-          'glue:GetPartition',
-          'glue:CreateDatabase',
-          'glue:BatchDeleteTableVersion',
-          'glue:BatchDeleteTable',
-          'glue:DeletePartition',
+          "glue:BatchCreatePartition",
+          "glue:CreatePartitionIndex",
+          "glue:DeleteDatabase",
+          "glue:GetTableVersions",
+          "glue:GetPartitions",
+          "glue:BatchDeletePartition",
+          "glue:DeleteTableVersion",
+          "glue:UpdateTable",
+          "glue:DeleteTable",
+          "glue:DeletePartitionIndex",
+          "glue:GetTableVersion",
+          "glue:CreatePartition",
+          "glue:UntagResource",
+          "glue:UpdatePartition",
+          "glue:TagResource",
+          "glue:UpdateDatabase",
+          "glue:CreateTable",
+          "glue:BatchUpdatePartition",
+          "glue:GetTables",
+          "glue:BatchGetPartition",
+          "glue:GetDatabases",
+          "glue:GetPartitionIndexes",
+          "glue:GetTable",
+          "glue:GetDatabase",
+          "glue:GetPartition",
+          "glue:CreateDatabase",
+          "glue:BatchDeleteTableVersion",
+          "glue:BatchDeleteTable",
+          "glue:DeletePartition",
         ],
         resources: [
           database.catalogArn,
           database.databaseArn,
           Stack.of(flow).formatArn({
-            service: 'glue',
-            resource: 'table',
+            service: "glue",
+            resource: "table",
             resourceName: `${database.databaseName}/${tablePrefix}*`,
           }),
         ],
@@ -274,7 +274,7 @@ export class S3Destination implements IDestination {
     const bucketName = this.props.location.bucket.bucketName;
 
     if (!bucketName) {
-      throw new Error('bucketName is required');
+      throw new Error("bucketName is required");
     }
 
     return {
@@ -300,7 +300,7 @@ export class S3Destination implements IDestination {
     scope: IConstruct,
     resource?: IConstruct | string,
   ) {
-    if (resource && typeof resource !== 'string') {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/s3/index.ts b/src/s3/index.ts
index 243ef34e..0e162592 100644
--- a/src/s3/index.ts
+++ b/src/s3/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './destination';
-export * from './source';
\ No newline at end of file
+export * from "./type";
+export * from "./destination";
+export * from "./source";
diff --git a/src/s3/source.ts b/src/s3/source.ts
index d563ab52..b0fdab50 100644
--- a/src/s3/source.ts
+++ b/src/s3/source.ts
@@ -2,21 +2,21 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IBucket } from 'aws-cdk-lib/aws-s3';
-import { IConstruct } from 'constructs';
-import { S3ConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IBucket } from "aws-cdk-lib/aws-s3";
+import { IConstruct } from "constructs";
+import { S3ConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 /**
  * The file type that Amazon AppFlow gets from your Amazon S3 bucket.
  */
 export enum S3InputFileType {
-  CSV = 'CSV',
-  JSON = 'JSON'
+  CSV = "CSV",
+  JSON = "JSON",
 }
 
 export interface S3InputFormat {
@@ -30,13 +30,11 @@ export interface S3SourceProps {
 }
 
 export class S3Source implements ISource {
-
   public readonly connectorType: ConnectorType = S3ConnectorType.instance;
 
-  constructor(private readonly props: S3SourceProps) { }
+  constructor(private readonly props: S3SourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.bucket);
     AppFlowPermissionsManager.instance().grantBucketRead(this.props.bucket);
 
@@ -58,9 +56,12 @@ export class S3Source implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/s3/type.ts b/src/s3/type.ts
index 43bad6b2..0627872a 100644
--- a/src/s3/type.ts
+++ b/src/s3/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class S3ConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!S3ConnectorType.actualInstance) {
       S3ConnectorType.actualInstance = new S3ConnectorType();
@@ -19,6 +18,6 @@ export class S3ConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('S3', false);
+    super("S3", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/salesforce-marketing-cloud/index.ts b/src/salesforce-marketing-cloud/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/salesforce-marketing-cloud/index.ts
+++ b/src/salesforce-marketing-cloud/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/salesforce-marketing-cloud/profile.ts b/src/salesforce-marketing-cloud/profile.ts
index 0c721458..7386f675 100644
--- a/src/salesforce-marketing-cloud/profile.ts
+++ b/src/salesforce-marketing-cloud/profile.ts
@@ -2,15 +2,19 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { SalesforceMarketingCloudConnectorType } from './type';
-import { ConnectorAuthenticationType } from '../core/connectors/connector-authentication-type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { OAuth2GrantType as OAuthGrantType } from '../core/connectors/oauth2-granttype';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { SalesforceMarketingCloudConnectorType } from "./type";
+import { ConnectorAuthenticationType } from "../core/connectors/connector-authentication-type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { OAuth2GrantType as OAuthGrantType } from "../core/connectors/oauth2-granttype";
 
-export interface SalesforceMarketingCloudConnectorProfileProps extends ConnectorProfileProps {
+export interface SalesforceMarketingCloudConnectorProfileProps
+  extends ConnectorProfileProps {
   readonly oAuth: SalesforceMarketingCloudOAuthSettings;
   readonly instanceUrl: string;
 }
@@ -35,23 +39,38 @@ export interface SalesforceMarketingCloudOAuthSettings {
 }
 
 export class SalesforceMarketingCloudConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as SalesforceMarketingCloudConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as SalesforceMarketingCloudConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as SalesforceMarketingCloudConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as SalesforceMarketingCloudConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: SalesforceMarketingCloudConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: SalesforceMarketingCloudConnectorProfileProps,
+  ) {
     super(scope, id, props, SalesforceMarketingCloudConnectorType.instance);
   }
 
   protected buildConnectorProfileProperties(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as SalesforceMarketingCloudConnectorProfileProps);
+    const properties = props as SalesforceMarketingCloudConnectorProfileProps;
     return {
       customConnector: {
         oAuth2Properties: {
@@ -68,16 +87,18 @@ export class SalesforceMarketingCloudConnectorProfile extends ConnectorProfileBa
   protected buildConnectorProfileCredentials(
     props: ConnectorProfileProps,
   ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as SalesforceMarketingCloudConnectorProfileProps);
+    const properties = props as SalesforceMarketingCloudConnectorProfileProps;
     return {
       customConnector: {
         oauth2: {
           accessToken: properties.oAuth.accessToken?.unsafeUnwrap(),
-          clientId: properties.oAuth.flow?.clientCredentials.clientId?.unsafeUnwrap(),
-          clientSecret: properties.oAuth.flow?.clientCredentials.clientSecret?.unsafeUnwrap(),
+          clientId:
+            properties.oAuth.flow?.clientCredentials.clientId?.unsafeUnwrap(),
+          clientSecret:
+            properties.oAuth.flow?.clientCredentials.clientSecret?.unsafeUnwrap(),
         },
         authenticationType: ConnectorAuthenticationType.OAUTH2,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/salesforce-marketing-cloud/source.ts b/src/salesforce-marketing-cloud/source.ts
index e8244632..919e8b8c 100644
--- a/src/salesforce-marketing-cloud/source.ts
+++ b/src/salesforce-marketing-cloud/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SalesforceMarketingCloudConnectorProfile } from './profile';
-import { SalesforceMarketingCloudConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SalesforceMarketingCloudConnectorProfile } from "./profile";
+import { SalesforceMarketingCloudConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices";
 
 /**
  * Properties of a Salesforce Marketing Cloud Source
@@ -23,16 +23,15 @@ export interface SalesforceMarketingCloudSourceProps {
  * A class that represents a Salesforce Marketing Cloud Source
  */
 export class SalesforceMarketingCloudSource implements ISource {
-
   /**
    * The AppFlow type of the connector that this source is implemented for
    */
-  public readonly connectorType: ConnectorType = SalesforceMarketingCloudConnectorType.instance;
+  public readonly connectorType: ConnectorType =
+    SalesforceMarketingCloudConnectorType.instance;
 
-  constructor(private readonly props: SalesforceMarketingCloudSourceProps) { }
+  constructor(private readonly props: SalesforceMarketingCloudSourceProps) {}
 
   bind(scope: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
@@ -51,9 +50,12 @@ export class SalesforceMarketingCloudSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/salesforce-marketing-cloud/type.ts b/src/salesforce-marketing-cloud/type.ts
index eec7379b..c752b2ad 100644
--- a/src/salesforce-marketing-cloud/type.ts
+++ b/src/salesforce-marketing-cloud/type.ts
@@ -2,16 +2,16 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class SalesforceMarketingCloudConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!SalesforceMarketingCloudConnectorType.actualInstance) {
-      SalesforceMarketingCloudConnectorType.actualInstance = new SalesforceMarketingCloudConnectorType();
+      SalesforceMarketingCloudConnectorType.actualInstance =
+        new SalesforceMarketingCloudConnectorType();
     }
     return SalesforceMarketingCloudConnectorType.actualInstance;
   }
@@ -19,6 +19,6 @@ export class SalesforceMarketingCloudConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('SalesforceMarketingCloud', true);
+    super("SalesforceMarketingCloud", true);
   }
-}
\ No newline at end of file
+}
diff --git a/src/salesforce-marketing-cloud/util.ts b/src/salesforce-marketing-cloud/util.ts
index 5a02e981..45106d4f 100644
--- a/src/salesforce-marketing-cloud/util.ts
+++ b/src/salesforce-marketing-cloud/util.ts
@@ -6,5 +6,5 @@ SPDX-License-Identifier: Apache-2.0
  * A helper enum for SFMC api version
  */
 export enum SalesforceMarketingCloudApiVersions {
-  V1 = 'v1'
+  V1 = "v1",
 }
diff --git a/src/salesforce/destination.ts b/src/salesforce/destination.ts
index ab588105..43bc9a6f 100644
--- a/src/salesforce/destination.ts
+++ b/src/salesforce/destination.ts
@@ -2,20 +2,19 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SalesforceConnectorProfile } from './profile';
-import { SalesforceDataTransferApi } from './salesforce-data-transfer-api';
-import { SalesforceConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { WriteOperation } from '../core/write-operation';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SalesforceConnectorProfile } from "./profile";
+import { SalesforceDataTransferApi } from "./salesforce-data-transfer-api";
+import { SalesforceConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { WriteOperation } from "../core/write-operation";
 
 export interface SalesforceDestinationProps {
-
   readonly profile: SalesforceConnectorProfile;
 
   /**
@@ -37,21 +36,26 @@ export interface SalesforceDestinationProps {
 }
 
 export class SalesforceDestination implements IDestination {
+  public readonly connectorType: ConnectorType =
+    SalesforceConnectorType.instance;
 
-  public readonly connectorType: ConnectorType = SalesforceConnectorType.instance;
-
-  constructor(private readonly props: SalesforceDestinationProps) { }
+  constructor(private readonly props: SalesforceDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -60,7 +64,8 @@ export class SalesforceDestination implements IDestination {
       salesforce: {
         dataTransferApi: this.props.dataTransferApi,
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -71,10 +76,12 @@ export class SalesforceDestination implements IDestination {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-
 }
diff --git a/src/salesforce/index.ts b/src/salesforce/index.ts
index 2691ef48..44a78ae3 100644
--- a/src/salesforce/index.ts
+++ b/src/salesforce/index.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './destination';
-export * from './salesforce-data-transfer-api';
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./destination";
+export * from "./salesforce-data-transfer-api";
diff --git a/src/salesforce/profile.ts b/src/salesforce/profile.ts
index a56cc892..fd31b599 100644
--- a/src/salesforce/profile.ts
+++ b/src/salesforce/profile.ts
@@ -2,12 +2,15 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { ISecret } from 'aws-cdk-lib/aws-secretsmanager';
-import { Construct } from 'constructs';
-import { SalesforceConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { ISecret } from "aws-cdk-lib/aws-secretsmanager";
+import { Construct } from "constructs";
+import { SalesforceConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface SalesforceConnectorProfileProps extends ConnectorProfileProps {
   readonly oAuth: SalesforceOAuthSettings;
@@ -31,7 +34,6 @@ export interface SalesforceOAuthRefreshTokenGrantFlow {
 }
 
 export interface SalesforceOAuthFlow {
-
   /**
    * The parameters required for the refresh token grant OAuth flow
    */
@@ -44,21 +46,41 @@ export interface SalesforceOAuthSettings {
 }
 
 export class SalesforceConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as SalesforceConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as SalesforceConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as SalesforceConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as SalesforceConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: SalesforceConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: SalesforceConnectorProfileProps,
+  ) {
     super(scope, id, props, SalesforceConnectorType.instance);
-    this.tryAddNodeDependency(this, props.oAuth.flow?.refreshTokenGrant?.client);
+    this.tryAddNodeDependency(
+      this,
+      props.oAuth.flow?.refreshTokenGrant?.client,
+    );
   }
 
-  protected buildConnectorProfileProperties(properties: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+  protected buildConnectorProfileProperties(
+    properties: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
     const props = properties as SalesforceConnectorProfileProps;
     return {
       salesforce: {
@@ -68,27 +90,29 @@ export class SalesforceConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(properties: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+  protected buildConnectorProfileCredentials(
+    properties: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
     const props = properties as SalesforceConnectorProfileProps;
 
     let salesforce: { [key: string]: any } = {};
 
-
     salesforce.accessToken = props.oAuth.accessToken?.unsafeUnwrap();
 
     const refreshTokenGrant = props.oAuth.flow?.refreshTokenGrant;
-    salesforce.refreshToken = refreshTokenGrant?.refreshToken?.unsafeUnwrap() ?? 'dummyRefreshToken';
+    salesforce.refreshToken =
+      refreshTokenGrant?.refreshToken?.unsafeUnwrap() ?? "dummyRefreshToken";
 
     if (refreshTokenGrant?.client) {
       salesforce.clientCredentialsArn = refreshTokenGrant.client.secretArn;
       // TODO: make sure why this doesn't work.
       //       this doc says it should: https://docs.aws.amazon.com/appflow/latest/userguide/salesforce.html
       //       in order to obtain the access token I needed to follow: https://medium.com/@bpmmendis94/obtain-access-refresh-tokens-from-salesforce-rest-api-a324fe4ccd9b
-      salesforce.accessToken = salesforce.accessToken ?? 'dummyAccessToken';
+      salesforce.accessToken = salesforce.accessToken ?? "dummyAccessToken";
     }
 
     return {
       salesforce: salesforce,
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/salesforce/salesforce-data-transfer-api.ts b/src/salesforce/salesforce-data-transfer-api.ts
index 2b871fe5..f630dea5 100644
--- a/src/salesforce/salesforce-data-transfer-api.ts
+++ b/src/salesforce/salesforce-data-transfer-api.ts
@@ -6,8 +6,7 @@
  * By choosing this option, you optimize flow performance for both small and large data transfers, but the tradeoff is inconsistent formatting in the output.
  */
 export enum SalesforceDataTransferApi {
-
-  AUTOMATIC = 'AUTOMATIC',
-  BULKV2 = 'BULKV2',
-  REST_SYNC = 'REST_SYNC'
+  AUTOMATIC = "AUTOMATIC",
+  BULKV2 = "BULKV2",
+  REST_SYNC = "REST_SYNC",
 }
diff --git a/src/salesforce/source.ts b/src/salesforce/source.ts
index b561b827..3d603c88 100644
--- a/src/salesforce/source.ts
+++ b/src/salesforce/source.ts
@@ -2,14 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SalesforceConnectorProfile } from './profile';
-import { SalesforceDataTransferApi } from './salesforce-data-transfer-api';
-import { SalesforceConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SalesforceConnectorProfile } from "./profile";
+import { SalesforceDataTransferApi } from "./salesforce-data-transfer-api";
+import { SalesforceConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface SalesforceSourceProps {
   readonly profile: SalesforceConnectorProfile;
@@ -26,13 +26,12 @@ export interface SalesforceSourceProps {
 }
 
 export class SalesforceSource implements ISource {
+  public readonly connectorType: ConnectorType =
+    SalesforceConnectorType.instance;
 
-  public readonly connectorType: ConnectorType = SalesforceConnectorType.instance;
-
-  constructor(private readonly props: SalesforceSourceProps) { }
+  constructor(private readonly props: SalesforceSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -54,8 +53,11 @@ export class SalesforceSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
diff --git a/src/salesforce/type.ts b/src/salesforce/type.ts
index 89a898f8..61137b82 100644
--- a/src/salesforce/type.ts
+++ b/src/salesforce/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class SalesforceConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!SalesforceConnectorType.actualInstance) {
       SalesforceConnectorType.actualInstance = new SalesforceConnectorType();
@@ -19,6 +18,6 @@ export class SalesforceConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Salesforce', false);
+    super("Salesforce", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/sapodata/destination.ts b/src/sapodata/destination.ts
index f1e6dc5b..72688698 100644
--- a/src/sapodata/destination.ts
+++ b/src/sapodata/destination.ts
@@ -2,24 +2,23 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SAPOdataConnectorProfile } from './profile';
-import { SAPOdataConnectorType } from './type';
-import { S3Location } from '../core';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { WriteOperation } from '../core/write-operation';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SAPOdataConnectorProfile } from "./profile";
+import { SAPOdataConnectorType } from "./type";
+import { S3Location } from "../core";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { WriteOperation } from "../core/write-operation";
 
 export interface SAPOdataSuccessResponseHandlingConfiguration {
   readonly location: S3Location;
 }
 
 export interface SAPOdataDestinationProps {
-
   readonly profile: SAPOdataConnectorProfile;
 
   /**
@@ -37,23 +36,32 @@ export interface SAPOdataDestinationProps {
 }
 
 export class SAPOdataDestination implements IDestination {
-
   public readonly connectorType: ConnectorType = SAPOdataConnectorType.instance;
 
-  constructor(private readonly props: SAPOdataDestinationProps) { }
+  constructor(private readonly props: SAPOdataDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
-    this.tryAddNodeDependency(flow, this.props.successResponseHandling?.location.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.successResponseHandling?.location.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.successResponseHandling?.location.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.successResponseHandling?.location.bucket,
+    );
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -61,12 +69,15 @@ export class SAPOdataDestination implements IDestination {
     return {
       sapoData: {
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
-        successResponseHandlingConfig: this.props.successResponseHandling?.location && {
-          bucketName: this.props.successResponseHandling.location.bucket.bucketName,
+        successResponseHandlingConfig: this.props.successResponseHandling
+          ?.location && {
+          bucketName:
+            this.props.successResponseHandling.location.bucket.bucketName,
         },
         idFieldNames: this.props.operation.ids,
         objectPath: this.props.object,
@@ -75,10 +86,12 @@ export class SAPOdataDestination implements IDestination {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-
-}
\ No newline at end of file
+}
diff --git a/src/sapodata/index.ts b/src/sapodata/index.ts
index 728c66d2..e144c080 100644
--- a/src/sapodata/index.ts
+++ b/src/sapodata/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './destination';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./destination";
diff --git a/src/sapodata/profile.ts b/src/sapodata/profile.ts
index 4ea50304..dedd98a2 100644
--- a/src/sapodata/profile.ts
+++ b/src/sapodata/profile.ts
@@ -2,11 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { SAPOdataConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { SAPOdataConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface SAPOdataConnectorProfileProps extends ConnectorProfileProps {
   readonly basicAuth?: SAPOdataBasicAuthSettings;
@@ -47,22 +50,38 @@ export interface SAPOdataOAuthSettings {
 }
 
 export class SAPOdataConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as SAPOdataConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as SAPOdataConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as SAPOdataConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as SAPOdataConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: SAPOdataConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: SAPOdataConnectorProfileProps,
+  ) {
     super(scope, id, props, SAPOdataConnectorType.instance);
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-
-    const properties = (props as SAPOdataConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as SAPOdataConnectorProfileProps;
 
     let sapOdata: { [key: string]: any } = {};
 
@@ -74,9 +93,12 @@ export class SAPOdataConnectorProfile extends ConnectorProfileBase {
     } else if (properties.oAuth) {
       sapOdata.oAuthCredentials = {
         accessToken: properties.oAuth.accessToken?.unsafeUnwrap(),
-        refreshToken: properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
-        clientId: properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
-        clientSecret: properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
+        refreshToken:
+          properties.oAuth.flow?.refreshTokenGrant.refreshToken?.unsafeUnwrap(),
+        clientId:
+          properties.oAuth.flow?.refreshTokenGrant.clientId?.unsafeUnwrap(),
+        clientSecret:
+          properties.oAuth.flow?.refreshTokenGrant.clientSecret?.unsafeUnwrap(),
       };
     }
 
@@ -85,8 +107,10 @@ export class SAPOdataConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as SAPOdataConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as SAPOdataConnectorProfileProps;
     return {
       sapoData: {
         applicationHostUrl: properties.applicationHostUrl,
@@ -97,4 +121,4 @@ export class SAPOdataConnectorProfile extends ConnectorProfileBase {
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/sapodata/source.ts b/src/sapodata/source.ts
index 44e08f03..0ac2cb39 100644
--- a/src/sapodata/source.ts
+++ b/src/sapodata/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SAPOdataConnectorProfile } from './profile';
-import { SAPOdataConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SAPOdataConnectorProfile } from "./profile";
+import { SAPOdataConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface SAPOdataSourceProps {
   readonly profile: SAPOdataConnectorProfile;
@@ -16,13 +16,11 @@ export interface SAPOdataSourceProps {
 }
 
 export class SAPOdataSource implements ISource {
-
   public readonly connectorType: ConnectorType = SAPOdataConnectorType.instance;
 
-  constructor(private readonly props: SAPOdataSourceProps) { }
+  constructor(private readonly props: SAPOdataSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -40,9 +38,12 @@ export class SAPOdataSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/sapodata/type.ts b/src/sapodata/type.ts
index 4accd19f..046956a2 100644
--- a/src/sapodata/type.ts
+++ b/src/sapodata/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class SAPOdataConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!SAPOdataConnectorType.actualInstance) {
       SAPOdataConnectorType.actualInstance = new SAPOdataConnectorType();
@@ -19,14 +18,14 @@ export class SAPOdataConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('SAPOData', false);
+    super("SAPOData", false);
   }
 
   public get asTaskConnectorOperatorOrigin(): string {
-    return 'sapoData';
+    return "sapoData";
   }
 
   public get asProfileConnectorType(): string {
     return this.name;
   }
-}
\ No newline at end of file
+}
diff --git a/src/servicenow/index.ts b/src/servicenow/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/servicenow/index.ts
+++ b/src/servicenow/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/servicenow/profile.ts b/src/servicenow/profile.ts
index 47d804e2..3abb458a 100644
--- a/src/servicenow/profile.ts
+++ b/src/servicenow/profile.ts
@@ -2,11 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { ServiceNowConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { ServiceNowConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface ServiceNowConnectorProfileProps extends ConnectorProfileProps {
   readonly basicAuth: ServiceNowBasicSettings;
@@ -19,21 +22,38 @@ export interface ServiceNowBasicSettings {
 }
 
 export class ServiceNowConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as ServiceNowConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as ServiceNowConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as ServiceNowConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as ServiceNowConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: ServiceNowConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: ServiceNowConnectorProfileProps,
+  ) {
     super(scope, id, props, ServiceNowConnectorType.instance);
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as ServiceNowConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as ServiceNowConnectorProfileProps;
     return {
       serviceNow: {
         username: properties.basicAuth?.username,
@@ -42,12 +62,14 @@ export class ServiceNowConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as ServiceNowConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as ServiceNowConnectorProfileProps;
     return {
       serviceNow: {
         instanceUrl: properties.instanceUrl,
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/servicenow/source.ts b/src/servicenow/source.ts
index c92cc632..f271ff4c 100644
--- a/src/servicenow/source.ts
+++ b/src/servicenow/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { ServiceNowConnectorProfile } from './profile';
-import { ServiceNowConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { ServiceNowConnectorProfile } from "./profile";
+import { ServiceNowConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface ServiceNowSourceProps {
   readonly profile: ServiceNowConnectorProfile;
@@ -16,13 +16,12 @@ export interface ServiceNowSourceProps {
 }
 
 export class ServiceNowSource implements ISource {
+  public readonly connectorType: ConnectorType =
+    ServiceNowConnectorType.instance;
 
-  public readonly connectorType: ConnectorType = ServiceNowConnectorType.instance;
-
-  constructor(private readonly props: ServiceNowSourceProps) { }
+  constructor(private readonly props: ServiceNowSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -40,9 +39,12 @@ export class ServiceNowSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/servicenow/type.ts b/src/servicenow/type.ts
index 8d0626ef..6a9fd0f2 100644
--- a/src/servicenow/type.ts
+++ b/src/servicenow/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class ServiceNowConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!ServiceNowConnectorType.actualInstance) {
       ServiceNowConnectorType.actualInstance = new ServiceNowConnectorType();
@@ -19,6 +18,6 @@ export class ServiceNowConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('ServiceNow', false);
+    super("ServiceNow", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/slack/index.ts b/src/slack/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/slack/index.ts
+++ b/src/slack/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/slack/profile.ts b/src/slack/profile.ts
index eab060d2..01f6f6d4 100644
--- a/src/slack/profile.ts
+++ b/src/slack/profile.ts
@@ -2,11 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { SlackConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { SlackConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface SlackConnectorProfileProps extends ConnectorProfileProps {
   readonly oAuth: SlackOAuthSettings;
@@ -20,21 +23,34 @@ export interface SlackOAuthSettings {
 }
 
 export class SlackConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as SlackConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as SlackConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as SlackConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as SlackConnectorProfile;
   }
 
   constructor(scope: Construct, id: string, props: SlackConnectorProfileProps) {
     super(scope, id, props, SlackConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as SlackConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as SlackConnectorProfileProps;
     return {
       slack: {
         instanceUrl: properties.instanceUrl,
@@ -42,14 +58,17 @@ export class SlackConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as SlackConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as SlackConnectorProfileProps;
     return {
       slack: {
         accessToken: properties.oAuth.accessToken.unsafeUnwrap(),
-        clientId: properties.oAuth.clientId?.unsafeUnwrap() ?? 'dummyClientId',
-        clientSecret: properties.oAuth.clientSecret?.unsafeUnwrap() ?? 'dummyClientSecret',
+        clientId: properties.oAuth.clientId?.unsafeUnwrap() ?? "dummyClientId",
+        clientSecret:
+          properties.oAuth.clientSecret?.unsafeUnwrap() ?? "dummyClientSecret",
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/slack/source.ts b/src/slack/source.ts
index 69ff285d..95293f38 100644
--- a/src/slack/source.ts
+++ b/src/slack/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SlackConnectorProfile } from './profile';
-import { SlackConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SlackConnectorProfile } from "./profile";
+import { SlackConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface SlackSourceProps {
   readonly profile: SlackConnectorProfile;
@@ -17,13 +17,11 @@ export interface SlackSourceProps {
 }
 
 export class SlackSource implements ISource {
-
   public readonly connectorType: ConnectorType = SlackConnectorType.instance;
 
-  constructor(private readonly props: SlackSourceProps) { }
+  constructor(private readonly props: SlackSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -42,9 +40,12 @@ export class SlackSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/slack/type.ts b/src/slack/type.ts
index c31df948..641af370 100644
--- a/src/slack/type.ts
+++ b/src/slack/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class SlackConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!SlackConnectorType.actualInstance) {
       SlackConnectorType.actualInstance = new SlackConnectorType();
@@ -19,6 +18,6 @@ export class SlackConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Slack', false);
+    super("Slack", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/snowflake/destination.ts b/src/snowflake/destination.ts
index 5aad04d3..74f69cbd 100644
--- a/src/snowflake/destination.ts
+++ b/src/snowflake/destination.ts
@@ -2,25 +2,23 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { SnowflakeConnectorProfile } from './profile';
-import { SnowflakeConnectorType } from './type';
-import { ErrorHandlingConfiguration, IFlow } from '../core';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IDestination } from '../core/vertices';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { SnowflakeConnectorProfile } from "./profile";
+import { SnowflakeConnectorType } from "./type";
+import { ErrorHandlingConfiguration, IFlow } from "../core";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IDestination } from "../core/vertices";
 
 /**
  * The destination table in Snowflake. The table needs to reside in the databas and schema provided in the profile.
  */
 export interface SnowflakeDestinationObject {
-
   /**
    * The name of the table object
    */
   readonly table: string;
-
 }
 
 /**
@@ -47,25 +45,30 @@ export interface SnowflakeDestinationProps {
  * A Snowflake destination.
  */
 export class SnowflakeDestination implements IDestination {
-
-  private readonly _connectorType: ConnectorType = SnowflakeConnectorType.instance;
+  private readonly _connectorType: ConnectorType =
+    SnowflakeConnectorType.instance;
 
   public get connectorType(): ConnectorType {
     return this._connectorType;
   }
 
-  constructor(private readonly props: SnowflakeDestinationProps) { }
+  constructor(private readonly props: SnowflakeDestinationProps) {}
 
   bind(scope: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(scope, this.props.errorHandling?.errorLocation?.bucket);
-    AppFlowPermissionsManager.instance().grantBucketWrite(this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      scope,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
+    AppFlowPermissionsManager.instance().grantBucketWrite(
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(scope, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -73,7 +76,8 @@ export class SnowflakeDestination implements IDestination {
     return {
       snowflake: {
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -81,7 +85,11 @@ export class SnowflakeDestination implements IDestination {
         //       for now that is the assumption and we're pulling this data from the profile
         intermediateBucketName: this.props.profile._location.bucket.bucketName,
         bucketPrefix: this.props.profile._location.prefix,
-        object: this.buildObject(this.props.profile._database, this.props.object.table, this.props.profile._schema),
+        object: this.buildObject(
+          this.props.profile._database,
+          this.props.object.table,
+          this.props.profile._schema,
+        ),
       },
     };
   }
@@ -90,9 +98,12 @@ export class SnowflakeDestination implements IDestination {
     return `${database}.${schema}.${table}`;
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string): void {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ): void {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/snowflake/index.ts b/src/snowflake/index.ts
index 1c39308b..055d082c 100644
--- a/src/snowflake/index.ts
+++ b/src/snowflake/index.ts
@@ -2,6 +2,6 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './destination';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./destination";
diff --git a/src/snowflake/profile.ts b/src/snowflake/profile.ts
index fa7652c3..cec61dfa 100644
--- a/src/snowflake/profile.ts
+++ b/src/snowflake/profile.ts
@@ -2,14 +2,24 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { ArnPrincipal, Effect, IRole, PolicyDocument, PolicyStatement, Role } from 'aws-cdk-lib/aws-iam';
-import { Construct } from 'constructs';
-import { SnowflakeConnectorType } from './type';
-import { AppFlowPermissionsManager } from '../core/appflow-permissions-manager';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
-import { S3Location } from '../core/s3-location';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import {
+  ArnPrincipal,
+  Effect,
+  IRole,
+  PolicyDocument,
+  PolicyStatement,
+  Role,
+} from "aws-cdk-lib/aws-iam";
+import { Construct } from "constructs";
+import { SnowflakeConnectorType } from "./type";
+import { AppFlowPermissionsManager } from "../core/appflow-permissions-manager";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
+import { S3Location } from "../core/s3-location";
 
 /**
  * Properties for a Snowflake connectorprofile
@@ -65,19 +75,30 @@ export interface SnowflakeStorageIntegration {
 }
 
 export class SnowflakeConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as SnowflakeConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as SnowflakeConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as SnowflakeConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as SnowflakeConnectorProfile;
   }
 
   /**
    * Default Snowflake schema if no schema provided
    */
-  private static readonly defaultSchema: string = 'PUBLIC';
+  private static readonly defaultSchema: string = "PUBLIC";
 
   /**
    * This field is used by the SnowflakeDestination to remove repetition
@@ -107,21 +128,26 @@ export class SnowflakeConnectorProfile extends ConnectorProfileBase {
    */
   public readonly integrationRole?: IRole;
 
-
-  constructor(scope: Construct, id: string, props: SnowflakeConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: SnowflakeConnectorProfileProps,
+  ) {
     super(scope, id, props, SnowflakeConnectorType.instance);
     this._location = props.location;
     this._database = props.database;
     this._schema = props.schema ?? SnowflakeConnectorProfile.defaultSchema;
 
-
     this.integrationRole = this.tryCreateRole(scope, id, props);
   }
 
   // INFO: maybe move it to an external class so that it can be either used here or used in any subsequent deployment?
-  private tryCreateRole(scope: Construct, id: string, props: ConnectorProfileProps): IRole | undefined {
-
-    const properties = (props as SnowflakeConnectorProfileProps);
+  private tryCreateRole(
+    scope: Construct,
+    id: string,
+    props: ConnectorProfileProps,
+  ): IRole | undefined {
+    const properties = props as SnowflakeConnectorProfileProps;
     const integration = properties.integration;
 
     if (!integration) {
@@ -138,24 +164,20 @@ export class SnowflakeConnectorProfile extends ConnectorProfileBase {
           statements: [
             new PolicyStatement({
               effect: Effect.ALLOW,
-              actions: [
-                's3:GetObject',
-                's3:GetObjectVersion',
+              actions: ["s3:GetObject", "s3:GetObjectVersion"],
+              resources: [
+                properties.location.bucket.arnForObjects(
+                  properties.location.prefix ?? "*",
+                ),
               ],
-              resources: [properties.location.bucket.arnForObjects(
-                properties.location.prefix ?? '*',
-              )],
             }),
             new PolicyStatement({
               effect: Effect.ALLOW,
-              actions: [
-                's3:ListBucket',
-                's3:GetBucketLocation',
-              ],
+              actions: ["s3:ListBucket", "s3:GetBucketLocation"],
               resources: [properties.location.bucket.bucketArn],
               conditions: {
                 StringLike: {
-                  's3:prefix': [properties.location.prefix ?? '*'],
+                  "s3:prefix": [properties.location.prefix ?? "*"],
                 },
               },
             }),
@@ -165,9 +187,10 @@ export class SnowflakeConnectorProfile extends ConnectorProfileBase {
     });
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-
-    const properties = (props as SnowflakeConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as SnowflakeConnectorProfileProps;
 
     return {
       snowflake: {
@@ -177,11 +200,15 @@ export class SnowflakeConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as SnowflakeConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as SnowflakeConnectorProfileProps;
 
     this.tryAddNodeDependency(this, properties.location.bucket);
-    AppFlowPermissionsManager.instance().grantBucketReadWrite(properties.location.bucket);
+    AppFlowPermissionsManager.instance().grantBucketReadWrite(
+      properties.location.bucket,
+    );
 
     return {
       snowflake: {
@@ -194,4 +221,4 @@ export class SnowflakeConnectorProfile extends ConnectorProfileBase {
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/snowflake/type.ts b/src/snowflake/type.ts
index f701904c..a4e1d5db 100644
--- a/src/snowflake/type.ts
+++ b/src/snowflake/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class SnowflakeConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!SnowflakeConnectorType.actualInstance) {
       SnowflakeConnectorType.actualInstance = new SnowflakeConnectorType();
@@ -19,6 +18,6 @@ export class SnowflakeConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Snowflake', false);
+    super("Snowflake", false);
   }
-}
\ No newline at end of file
+}
diff --git a/src/zendesk/destination.ts b/src/zendesk/destination.ts
index f4401b04..93c8a1b1 100644
--- a/src/zendesk/destination.ts
+++ b/src/zendesk/destination.ts
@@ -2,18 +2,17 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { ZendeskConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { ErrorHandlingConfiguration } from '../core/error-handling';
-import { IFlow } from '../core/flows';
-import { IDestination } from '../core/vertices/destination';
-import { WriteOperation } from '../core/write-operation';
-import { ZendeskConnectorProfile } from '../zendesk/profile';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { ZendeskConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { ErrorHandlingConfiguration } from "../core/error-handling";
+import { IFlow } from "../core/flows";
+import { IDestination } from "../core/vertices/destination";
+import { WriteOperation } from "../core/write-operation";
+import { ZendeskConnectorProfile } from "../zendesk/profile";
 
 export interface ZendeskDestinationProps {
-
   readonly profile: ZendeskConnectorProfile;
 
   /**
@@ -30,20 +29,22 @@ export interface ZendeskDestinationProps {
 }
 
 export class ZendeskDestination implements IDestination {
-
   public readonly connectorType: ConnectorType = ZendeskConnectorType.instance;
 
-  constructor(private readonly props: ZendeskDestinationProps) { }
+  constructor(private readonly props: ZendeskDestinationProps) {}
 
   bind(flow: IFlow): CfnFlow.DestinationFlowConfigProperty {
-
-    this.tryAddNodeDependency(flow, this.props.errorHandling?.errorLocation?.bucket);
+    this.tryAddNodeDependency(
+      flow,
+      this.props.errorHandling?.errorLocation?.bucket,
+    );
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
       connectorType: this.connectorType.asProfileConnectorType,
       connectorProfileName: this.props.profile.name,
-      destinationConnectorProperties: this.buildDestinationConnectorProperties(),
+      destinationConnectorProperties:
+        this.buildDestinationConnectorProperties(),
     };
   }
 
@@ -51,7 +52,8 @@ export class ZendeskDestination implements IDestination {
     return {
       zendesk: {
         errorHandlingConfig: this.props.errorHandling && {
-          bucketName: this.props.errorHandling?.errorLocation?.bucket.bucketName,
+          bucketName:
+            this.props.errorHandling?.errorLocation?.bucket.bucketName,
           bucketPrefix: this.props.errorHandling?.errorLocation?.prefix,
           failOnFirstError: this.props.errorHandling.failOnFirstError,
         },
@@ -67,5 +69,4 @@ export class ZendeskDestination implements IDestination {
       scope.node.addDependency(resource);
     }
   }
-
-}
\ No newline at end of file
+}
diff --git a/src/zendesk/index.ts b/src/zendesk/index.ts
index bba9c6ea..3c28e553 100644
--- a/src/zendesk/index.ts
+++ b/src/zendesk/index.ts
@@ -2,7 +2,7 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-export * from './type';
-export * from './profile';
-export * from './source';
-export * from './util';
\ No newline at end of file
+export * from "./type";
+export * from "./profile";
+export * from "./source";
+export * from "./util";
diff --git a/src/zendesk/profile.ts b/src/zendesk/profile.ts
index 6c0e9c6e..f3b70bf7 100644
--- a/src/zendesk/profile.ts
+++ b/src/zendesk/profile.ts
@@ -2,11 +2,14 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue } from 'aws-cdk-lib';
-import { CfnConnectorProfile } from 'aws-cdk-lib/aws-appflow';
-import { Construct } from 'constructs';
-import { ZendeskConnectorType } from './type';
-import { ConnectorProfileBase, ConnectorProfileProps } from '../core/connectors/connector-profile';
+import { SecretValue } from "aws-cdk-lib";
+import { CfnConnectorProfile } from "aws-cdk-lib/aws-appflow";
+import { Construct } from "constructs";
+import { ZendeskConnectorType } from "./type";
+import {
+  ConnectorProfileBase,
+  ConnectorProfileProps,
+} from "../core/connectors/connector-profile";
 
 export interface ZendeskConnectorProfileProps extends ConnectorProfileProps {
   readonly oAuth: ZendeskOAuthSettings;
@@ -20,21 +23,38 @@ export interface ZendeskOAuthSettings {
 }
 
 export class ZendeskConnectorProfile extends ConnectorProfileBase {
-
-  public static fromConnectionProfileArn(scope: Construct, id: string, arn: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { arn }) as ZendeskConnectorProfile;
+  public static fromConnectionProfileArn(
+    scope: Construct,
+    id: string,
+    arn: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      arn,
+    }) as ZendeskConnectorProfile;
   }
 
-  public static fromConnectionProfileName(scope: Construct, id: string, name: string) {
-    return this._fromConnectorProfileAttributes(scope, id, { name }) as ZendeskConnectorProfile;
+  public static fromConnectionProfileName(
+    scope: Construct,
+    id: string,
+    name: string,
+  ) {
+    return this._fromConnectorProfileAttributes(scope, id, {
+      name,
+    }) as ZendeskConnectorProfile;
   }
 
-  constructor(scope: Construct, id: string, props: ZendeskConnectorProfileProps) {
+  constructor(
+    scope: Construct,
+    id: string,
+    props: ZendeskConnectorProfileProps,
+  ) {
     super(scope, id, props, ZendeskConnectorType.instance);
   }
 
-  protected buildConnectorProfileProperties(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
-    const properties = (props as ZendeskConnectorProfileProps);
+  protected buildConnectorProfileProperties(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfilePropertiesProperty {
+    const properties = props as ZendeskConnectorProfileProps;
     return {
       zendesk: {
         instanceUrl: properties.instanceUrl,
@@ -42,8 +62,10 @@ export class ZendeskConnectorProfile extends ConnectorProfileBase {
     };
   }
 
-  protected buildConnectorProfileCredentials(props: ConnectorProfileProps): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
-    const properties = (props as ZendeskConnectorProfileProps);
+  protected buildConnectorProfileCredentials(
+    props: ConnectorProfileProps,
+  ): CfnConnectorProfile.ConnectorProfileCredentialsProperty {
+    const properties = props as ZendeskConnectorProfileProps;
     return {
       zendesk: {
         accessToken: properties.oAuth.accessToken?.unsafeUnwrap(),
@@ -52,4 +74,4 @@ export class ZendeskConnectorProfile extends ConnectorProfileBase {
       },
     };
   }
-}
\ No newline at end of file
+}
diff --git a/src/zendesk/source.ts b/src/zendesk/source.ts
index 66e20e36..61f17b8a 100644
--- a/src/zendesk/source.ts
+++ b/src/zendesk/source.ts
@@ -2,13 +2,13 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { CfnFlow } from 'aws-cdk-lib/aws-appflow';
-import { IConstruct } from 'constructs';
-import { ZendeskConnectorProfile } from './profile';
-import { ZendeskConnectorType } from './type';
-import { ConnectorType } from '../core/connectors/connector-type';
-import { IFlow } from '../core/flows';
-import { ISource } from '../core/vertices/source';
+import { CfnFlow } from "aws-cdk-lib/aws-appflow";
+import { IConstruct } from "constructs";
+import { ZendeskConnectorProfile } from "./profile";
+import { ZendeskConnectorType } from "./type";
+import { ConnectorType } from "../core/connectors/connector-type";
+import { IFlow } from "../core/flows";
+import { ISource } from "../core/vertices/source";
 
 export interface ZendeskSourceProps {
   readonly profile: ZendeskConnectorProfile;
@@ -17,13 +17,11 @@ export interface ZendeskSourceProps {
 }
 
 export class ZendeskSource implements ISource {
-
   public readonly connectorType: ConnectorType = ZendeskConnectorType.instance;
 
-  constructor(private readonly props: ZendeskSourceProps) { }
+  constructor(private readonly props: ZendeskSourceProps) {}
 
   bind(flow: IFlow): CfnFlow.SourceFlowConfigProperty {
-
     this.tryAddNodeDependency(flow, this.props.profile);
 
     return {
@@ -42,9 +40,12 @@ export class ZendeskSource implements ISource {
     };
   }
 
-  private tryAddNodeDependency(scope: IConstruct, resource?: IConstruct | string) {
-    if (resource && typeof resource !== 'string') {
+  private tryAddNodeDependency(
+    scope: IConstruct,
+    resource?: IConstruct | string,
+  ) {
+    if (resource && typeof resource !== "string") {
       scope.node.addDependency(resource);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/src/zendesk/type.ts b/src/zendesk/type.ts
index ed379859..c5196aa7 100644
--- a/src/zendesk/type.ts
+++ b/src/zendesk/type.ts
@@ -2,13 +2,12 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { ConnectorType } from '../core/connectors/connector-type';
+import { ConnectorType } from "../core/connectors/connector-type";
 
 /**
  * @internal
  */
 export class ZendeskConnectorType extends ConnectorType {
-
   public static get instance(): ConnectorType {
     if (!ZendeskConnectorType.actualInstance) {
       ZendeskConnectorType.actualInstance = new ZendeskConnectorType();
@@ -19,6 +18,6 @@ export class ZendeskConnectorType extends ConnectorType {
   private static actualInstance: ConnectorType;
 
   constructor() {
-    super('Zendesk', false);
+    super("Zendesk", false);
   }
-}
\ No newline at end of file
+}
diff --git a/yarn.lock b/yarn.lock
index 9bb877c0..aa5c0498 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -860,6 +860,11 @@
   resolved "https://registry.yarnpkg.com/@oozcitak/util/-/util-8.3.8.tgz#10f65fe1891fd8cde4957360835e78fd1936bfdd"
   integrity sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==
 
+"@pkgr/core@^0.1.0":
+  version "0.1.1"
+  resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31"
+  integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==
+
 "@rtsao/scc@^1.1.0":
   version "1.1.0"
   resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8"
@@ -2299,6 +2304,11 @@ escape-string-regexp@^4.0.0:
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
   integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
 
+eslint-config-prettier@^9.1.0:
+  version "9.1.0"
+  resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz#31af3d94578645966c082fcb71a5846d3c94867f"
+  integrity sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==
+
 eslint-import-resolver-node@^0.3.9:
   version "0.3.9"
   resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac"
@@ -2354,6 +2364,14 @@ eslint-plugin-import@^2.31.0:
     string.prototype.trimend "^1.0.8"
     tsconfig-paths "^3.15.0"
 
+eslint-plugin-prettier@^5.2.1:
+  version "5.2.1"
+  resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz#d1c8f972d8f60e414c25465c163d16f209411f95"
+  integrity sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==
+  dependencies:
+    prettier-linter-helpers "^1.0.0"
+    synckit "^0.9.1"
+
 eslint-scope@^7.2.2:
   version "7.2.2"
   resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
@@ -2485,6 +2503,11 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
   resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
   integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
 
+fast-diff@^1.1.2:
+  version "1.3.0"
+  resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0"
+  integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==
+
 fast-glob@^3.2.9, fast-glob@^3.3.2:
   version "3.3.2"
   resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
@@ -4474,6 +4497,18 @@ prelude-ls@^1.2.1:
   resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
   integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
 
+prettier-linter-helpers@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b"
+  integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==
+  dependencies:
+    fast-diff "^1.1.2"
+
+prettier@^3.3.3:
+  version "3.3.3"
+  resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.3.tgz#30c54fe0be0d8d12e6ae61dbb10109ea00d53105"
+  integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==
+
 pretty-format@^29.0.0, pretty-format@^29.7.0:
   version "29.7.0"
   resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812"
@@ -5076,6 +5111,14 @@ symbol-tree@^3.2.4:
   resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
   integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
 
+synckit@^0.9.1:
+  version "0.9.2"
+  resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.2.tgz#a3a935eca7922d48b9e7d6c61822ee6c3ae4ec62"
+  integrity sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==
+  dependencies:
+    "@pkgr/core" "^0.1.0"
+    tslib "^2.6.2"
+
 table@^6.8.2:
   version "6.8.2"
   resolved "https://registry.yarnpkg.com/table/-/table-6.8.2.tgz#c5504ccf201213fa227248bdc8c5569716ac6c58"
@@ -5216,6 +5259,11 @@ tsconfig-paths@^3.15.0:
     minimist "^1.2.6"
     strip-bom "^3.0.0"
 
+tslib@^2.6.2:
+  version "2.8.0"
+  resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b"
+  integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==
+
 type-check@^0.4.0, type-check@~0.4.0:
   version "0.4.0"
   resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"


Test patch:
diff --git a/test/asana/profile.test.ts b/test/asana/profile.test.ts
index b3883a7e..e364a633 100644
--- a/test/asana/profile.test.ts
+++ b/test/asana/profile.test.ts
@@ -2,42 +2,46 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { AsanaConnectorProfile } from '../../src';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { AsanaConnectorProfile } from "../../src";
 
-describe('AsanaConnectorProfileProps', () => {
-
-  test('API Key profile with credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("AsanaConnectorProfileProps", () => {
+  test("API Key profile with credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new AsanaConnectorProfile(stack, 'TestProfile', {
-      patToken: SecretValue.unsafePlainText('patToken'),
+    new AsanaConnectorProfile(stack, "TestProfile", {
+      patToken: SecretValue.unsafePlainText("patToken"),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorLabel: 'Asana',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'CUSTOM',
-            Custom: {
-              CredentialsMap: {
-                patToken: 'patToken',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorLabel: "Asana",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "CUSTOM",
+              Custom: {
+                CredentialsMap: {
+                  patToken: "patToken",
+                },
+                CustomAuthenticationType: "PAT",
               },
-              CustomAuthenticationType: 'PAT',
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            ProfileProperties: { },
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              ProfileProperties: {},
+            },
           },
         },
       },
-    });
+    );
   });
 });
diff --git a/test/asana/source.test.ts b/test/asana/source.test.ts
index fbdb554e..42fa1543 100644
--- a/test/asana/source.test.ts
+++ b/test/asana/source.test.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   AsanaConnectorProfile,
   AsanaSource,
@@ -11,57 +11,78 @@ import {
   OnDemandFlow,
   S3Destination,
   Mapping,
-} from '../../src';
+} from "../../src";
 
-describe('AsanaSource', () => {
-
-  test('Source with connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("AsanaSource", () => {
+  test("Source with connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new AsanaSource({
-      profile: AsanaConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'workspace',
+      profile: AsanaConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "workspace",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const expectedConnectorType = AsanaConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source with connector Arn', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source with connector Arn", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new AsanaSource({
-      profile: AsanaConnectorProfile.fromConnectionProfileArn(stack, 'TestProfile', 'arn:aws:appflow:region:account-id:connectorprofile/TestProfile'),
-      object: 'workspace',
+      profile: AsanaConnectorProfile.fromConnectionProfileArn(
+        stack,
+        "TestProfile",
+        "arn:aws:appflow:region:account-id:connectorprofile/TestProfile",
+      ),
+      object: "workspace",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const expectedConnectorType = AsanaConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
-
-
 });
diff --git a/test/core/flows/flow-time-updater/flow-time-updater-function.test.ts b/test/core/flows/flow-time-updater/flow-time-updater-function.test.ts
index 1f77d52e..608acacd 100644
--- a/test/core/flows/flow-time-updater/flow-time-updater-function.test.ts
+++ b/test/core/flows/flow-time-updater/flow-time-updater-function.test.ts
@@ -1,19 +1,19 @@
-import { Duration } from 'aws-cdk-lib';
-import { Schedule } from 'aws-cdk-lib/aws-events';
-import type { CloudFormationCustomResourceEvent } from 'aws-lambda';
-import * as API from '../../../../src/core/flows/flow-time-updater/api';
-import { handler } from '../../../../src/core/flows/flow-time-updater/flow-time-updater.lambda';
+import { Duration } from "aws-cdk-lib";
+import { Schedule } from "aws-cdk-lib/aws-events";
+import type { CloudFormationCustomResourceEvent } from "aws-lambda";
+import * as API from "../../../../src/core/flows/flow-time-updater/api";
+import { handler } from "../../../../src/core/flows/flow-time-updater/flow-time-updater.lambda";
 
-describe('flow time updater function', () => {
-  it('converts CDK rate expressions to AppFlow rate expressions', async () => {
+describe("flow time updater function", () => {
+  it("converts CDK rate expressions to AppFlow rate expressions", async () => {
     const cdkExpression = Schedule.rate(Duration.days(1)).expressionString;
-    expect(cdkExpression).toEqual('rate(1 day)'); // validate assumption
+    expect(cdkExpression).toEqual("rate(1 day)"); // validate assumption
 
     const result = await handler(createEvent({ schedule: cdkExpression }));
 
     expect(result).toEqual({
       Data: {
-        [API.ATTR_SCHEDULE]: 'rate(1days)', // no space + pluralized
+        [API.ATTR_SCHEDULE]: "rate(1days)", // no space + pluralized
         [API.ATTR_STARTTIME]: undefined,
         [API.ATTR_ENDTIME]: undefined,
       },
@@ -21,25 +21,29 @@ describe('flow time updater function', () => {
   });
 });
 
-function createEvent(props: { schedule: string; startTime?: string; endTime?: string }): CloudFormationCustomResourceEvent {
+function createEvent(props: {
+  schedule: string;
+  startTime?: string;
+  endTime?: string;
+}): CloudFormationCustomResourceEvent {
   const { schedule, startTime, endTime } = props;
 
   const event: CloudFormationCustomResourceEvent = {
-    RequestType: 'Create',
+    RequestType: "Create",
     ResourceProperties: {
       [API.PROP_SCHEDULE]: schedule,
       [API.PROP_STARTTIME]: startTime,
       [API.PROP_ENDTIME]: endTime,
-      ServiceToken: '',
+      ServiceToken: "",
     },
 
     // These are boilerplate values that are not used in the function
-    ServiceToken: '',
-    ResponseURL: '',
-    StackId: '',
-    RequestId: '',
-    LogicalResourceId: '',
-    ResourceType: '',
+    ServiceToken: "",
+    ResponseURL: "",
+    StackId: "",
+    RequestId: "",
+    LogicalResourceId: "",
+    ResourceType: "",
   };
   return event;
 }
diff --git a/test/core/flows/on-demand-flow-metrics.test.ts b/test/core/flows/on-demand-flow-metrics.test.ts
index 1feb331f..e98b3b9e 100644
--- a/test/core/flows/on-demand-flow-metrics.test.ts
+++ b/test/core/flows/on-demand-flow-metrics.test.ts
@@ -2,70 +2,83 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Alarm, Metric } from 'aws-cdk-lib/aws-cloudwatch';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import {
-  OnDemandFlow,
-  S3Source,
-  S3Destination,
-  Mapping,
-} from '../../../src';
+import { Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Alarm, Metric } from "aws-cdk-lib/aws-cloudwatch";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { OnDemandFlow, S3Source, S3Destination, Mapping } from "../../../src";
 
-describe('OnDemandFlow metrics', () => {
-  test('default', () => {
+describe("OnDemandFlow metrics", () => {
+  test("default", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const stack = new Stack(undefined, 'TestStack');
-
-    const bucket = new Bucket(stack, 'TestBucket');
+    const bucket = new Bucket(stack, "TestBucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'account',
+      prefix: "account",
     });
 
     const destination = new S3Destination({
-      location: { bucket, prefix: 'new-account' },
+      location: { bucket, prefix: "new-account" },
     });
 
-
-    const flow = new OnDemandFlow(stack, 'OnDemandFlow', {
+    const flow = new OnDemandFlow(stack, "OnDemandFlow", {
       source,
       destination,
-      key: new Key(stack, 'TestKey'),
+      key: new Key(stack, "TestKey"),
       mappings: [Mapping.mapAll()],
     });
 
-    addAlarmForMetric(stack, flow.metricFlowExecutionsStarted(), 'FlowExecutionsStartedAlarm');
-    addAlarmForMetric(stack, flow.metricFlowExecutionsFailed(), 'FlowExecutionsFailedAlarm');
-    addAlarmForMetric(stack, flow.metricFlowExecutionsSucceeded(), 'FlowxecutionsSucceededAlarm');
-    addAlarmForMetric(stack, flow.metricFlowExecutionTime(), 'FlowExecutionTimeAlarm');
-    addAlarmForMetric(stack, flow.metricFlowExecutionRecordsProcessed(), 'FlowExecutionRecordsProcessedAlarm');
+    addAlarmForMetric(
+      stack,
+      flow.metricFlowExecutionsStarted(),
+      "FlowExecutionsStartedAlarm",
+    );
+    addAlarmForMetric(
+      stack,
+      flow.metricFlowExecutionsFailed(),
+      "FlowExecutionsFailedAlarm",
+    );
+    addAlarmForMetric(
+      stack,
+      flow.metricFlowExecutionsSucceeded(),
+      "FlowxecutionsSucceededAlarm",
+    );
+    addAlarmForMetric(
+      stack,
+      flow.metricFlowExecutionTime(),
+      "FlowExecutionTimeAlarm",
+    );
+    addAlarmForMetric(
+      stack,
+      flow.metricFlowExecutionRecordsProcessed(),
+      "FlowExecutionRecordsProcessedAlarm",
+    );
 
     const template = Template.fromStack(stack);
 
-    template.resourceCountIs('AWS::CloudWatch::Alarm', 5);
-    template.hasResourceProperties('AWS::CloudWatch::Alarm', {
-      MetricName: 'FlowExecutionsStarted',
-      Namespace: 'AWS/AppFlow',
+    template.resourceCountIs("AWS::CloudWatch::Alarm", 5);
+    template.hasResourceProperties("AWS::CloudWatch::Alarm", {
+      MetricName: "FlowExecutionsStarted",
+      Namespace: "AWS/AppFlow",
     });
-    template.hasResourceProperties('AWS::CloudWatch::Alarm', {
-      MetricName: 'FlowExecutionsFailed',
-      Namespace: 'AWS/AppFlow',
+    template.hasResourceProperties("AWS::CloudWatch::Alarm", {
+      MetricName: "FlowExecutionsFailed",
+      Namespace: "AWS/AppFlow",
     });
-    template.hasResourceProperties('AWS::CloudWatch::Alarm', {
-      MetricName: 'FlowExecutionsSucceeded',
-      Namespace: 'AWS/AppFlow',
+    template.hasResourceProperties("AWS::CloudWatch::Alarm", {
+      MetricName: "FlowExecutionsSucceeded",
+      Namespace: "AWS/AppFlow",
     });
-    template.hasResourceProperties('AWS::CloudWatch::Alarm', {
-      MetricName: 'FlowExecutionTime',
-      Namespace: 'AWS/AppFlow',
+    template.hasResourceProperties("AWS::CloudWatch::Alarm", {
+      MetricName: "FlowExecutionTime",
+      Namespace: "AWS/AppFlow",
     });
-    template.hasResourceProperties('AWS::CloudWatch::Alarm', {
-      MetricName: 'FlowExecutionRecordsProcessed',
-      Namespace: 'AWS/AppFlow',
+    template.hasResourceProperties("AWS::CloudWatch::Alarm", {
+      MetricName: "FlowExecutionRecordsProcessed",
+      Namespace: "AWS/AppFlow",
     });
   });
 });
@@ -77,4 +90,3 @@ function addAlarmForMetric(stack: Stack, metric: Metric, name: string) {
     evaluationPeriods: 2,
   });
 }
-
diff --git a/test/core/flows/on-demand-flow.test.ts b/test/core/flows/on-demand-flow.test.ts
index cc7daf01..1a777cc7 100644
--- a/test/core/flows/on-demand-flow.test.ts
+++ b/test/core/flows/on-demand-flow.test.ts
@@ -2,94 +2,83 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import {
-  OnDemandFlow,
-  S3Source,
-  S3Destination,
-  Mapping,
-} from '../../../src';
+import { Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { OnDemandFlow, S3Source, S3Destination, Mapping } from "../../../src";
 
-describe('OnDemandFlow', () => {
-  test('default', () => {
+describe("OnDemandFlow", () => {
+  test("default", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const stack = new Stack(undefined, 'TestStack');
-
-    const bucket = new Bucket(stack, 'TestBucket');
+    const bucket = new Bucket(stack, "TestBucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'account',
+      prefix: "account",
     });
 
     const destination = new S3Destination({
-      location: { bucket, prefix: 'new-account' },
+      location: { bucket, prefix: "new-account" },
     });
 
-
-    new OnDemandFlow(stack, 'OnDemandFlow', {
+    new OnDemandFlow(stack, "OnDemandFlow", {
       source,
       destination,
-      key: new Key(stack, 'TestKey'),
+      key: new Key(stack, "TestKey"),
       mappings: [Mapping.mapAll()],
     });
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
-              BucketPrefix: 'new-account',
+              BucketPrefix: "new-account",
             },
           },
         },
       ],
-      FlowName: 'TestStackOnDemandFlow53F97EB9',
+      FlowName: "TestStackOnDemandFlow53F97EB9",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: 'account',
+            BucketPrefix: "account",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
       KMSArn: {
-        'Fn::GetAtt': [
-          'TestKey4CACAF33',
-          'Arn',
-        ],
+        "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
       },
     });
-
   });
-});
\ No newline at end of file
+});
diff --git a/test/core/flows/on-event-flow.test.ts b/test/core/flows/on-event-flow.test.ts
index 5f14d213..2248c60b 100644
--- a/test/core/flows/on-event-flow.test.ts
+++ b/test/core/flows/on-event-flow.test.ts
@@ -2,170 +2,184 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { OnEventFlow, SalesforceSource, EventBridgeDestination, EventSources, Mapping, SalesforceConnectorProfile, FlowStatus } from '../../../src';
-
-describe('OnEventFlow', () => {
-  test.each([{
-    namedRules: true,
-  }, {
-    namedRules: false,
-  }])('autoactivated flow with status and deactivation listeners renders all the resources', ({ namedRules }) => {
-    const stack = new Stack(undefined, 'TestStack');
-    const source = new SalesforceSource({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'appflow-tester'),
-      object: 'AccountChangeEvent',
-    });
-
-    const bucket = new Bucket(stack, 'TestBucket');
-
-    const destination = new EventBridgeDestination({
-      partnerBus: EventSources.salesforceEventSource('test'),
-      errorHandling: { errorLocation: { bucket } },
-    });
-
-    const flow = new OnEventFlow(stack, 'OnEventFlow', {
-      source: source,
-      destination: destination,
-      mappings: [Mapping.mapAll()],
-      status: FlowStatus.ACTIVE,
-    });
-
-    flow.onDeactivated('OnDeactivated', namedRules ? {
-      ruleName: 'OnDeactivated',
-    } : undefined);
-
-    flow.onStatus('OnStatus', namedRules ? {
-      ruleName: 'OnStatus',
-    } : undefined);
-
-    const template = Template.fromStack(stack);
-
-    template.hasResource('AWS::AppFlow::Flow', {
-      Properties: {
-        DestinationFlowConfigList: [
-          {
-            ConnectorType: 'EventBridge',
-            DestinationConnectorProperties: {
-              EventBridge: {
-                ErrorHandlingConfig: {
-                  BucketName: {
-                    Ref: 'TestBucket560B80BC',
+import { Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import {
+  OnEventFlow,
+  SalesforceSource,
+  EventBridgeDestination,
+  EventSources,
+  Mapping,
+  SalesforceConnectorProfile,
+  FlowStatus,
+} from "../../../src";
+
+describe("OnEventFlow", () => {
+  test.each([
+    {
+      namedRules: true,
+    },
+    {
+      namedRules: false,
+    },
+  ])(
+    "autoactivated flow with status and deactivation listeners renders all the resources",
+    ({ namedRules }) => {
+      const stack = new Stack(undefined, "TestStack");
+      const source = new SalesforceSource({
+        profile: SalesforceConnectorProfile.fromConnectionProfileName(
+          stack,
+          "TestProfile",
+          "appflow-tester",
+        ),
+        object: "AccountChangeEvent",
+      });
+
+      const bucket = new Bucket(stack, "TestBucket");
+
+      const destination = new EventBridgeDestination({
+        partnerBus: EventSources.salesforceEventSource("test"),
+        errorHandling: { errorLocation: { bucket } },
+      });
+
+      const flow = new OnEventFlow(stack, "OnEventFlow", {
+        source: source,
+        destination: destination,
+        mappings: [Mapping.mapAll()],
+        status: FlowStatus.ACTIVE,
+      });
+
+      flow.onDeactivated(
+        "OnDeactivated",
+        namedRules
+          ? {
+              ruleName: "OnDeactivated",
+            }
+          : undefined,
+      );
+
+      flow.onStatus(
+        "OnStatus",
+        namedRules
+          ? {
+              ruleName: "OnStatus",
+            }
+          : undefined,
+      );
+
+      const template = Template.fromStack(stack);
+
+      template.hasResource("AWS::AppFlow::Flow", {
+        Properties: {
+          DestinationFlowConfigList: [
+            {
+              ConnectorType: "EventBridge",
+              DestinationConnectorProperties: {
+                EventBridge: {
+                  ErrorHandlingConfig: {
+                    BucketName: {
+                      Ref: "TestBucket560B80BC",
+                    },
                   },
-                },
-                Object: {
-                  'Fn::Join': [
-                    '',
-                    [
-                      'aws.partner/appflow/salesforce.com/',
-                      {
-                        Ref: 'AWS::AccountId',
-                      },
-                      '/test',
+                  Object: {
+                    "Fn::Join": [
+                      "",
+                      [
+                        "aws.partner/appflow/salesforce.com/",
+                        {
+                          Ref: "AWS::AccountId",
+                        },
+                        "/test",
+                      ],
                     ],
-                  ],
+                  },
                 },
               },
             },
-          },
-        ],
-        FlowName: 'TestStackOnEventFlow4BA4B0C6',
-        FlowStatus: 'Active',
-        SourceFlowConfig: {
-          ConnectorProfileName: 'appflow-tester',
-          ConnectorType: 'Salesforce',
-          SourceConnectorProperties: {
-            Salesforce: {
-              Object: 'AccountChangeEvent',
+          ],
+          FlowName: "TestStackOnEventFlow4BA4B0C6",
+          FlowStatus: "Active",
+          SourceFlowConfig: {
+            ConnectorProfileName: "appflow-tester",
+            ConnectorType: "Salesforce",
+            SourceConnectorProperties: {
+              Salesforce: {
+                Object: "AccountChangeEvent",
+              },
             },
           },
-        },
-        Tasks: [
-          {
-            ConnectorOperator: {
-              Salesforce: 'NO_OP',
-            },
-            SourceFields: [],
-            TaskProperties: [
-              {
-                Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-                Value: '[]',
+          Tasks: [
+            {
+              ConnectorOperator: {
+                Salesforce: "NO_OP",
               },
-            ],
-            TaskType: 'Map_all',
+              SourceFields: [],
+              TaskProperties: [
+                {
+                  Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+                  Value: "[]",
+                },
+              ],
+              TaskType: "Map_all",
+            },
+          ],
+          TriggerConfig: {
+            TriggerType: "Event",
           },
-        ],
-        TriggerConfig: {
-          TriggerType: 'Event',
         },
-      },
-      DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-      ],
-    });
+        DependsOn: ["TestBucketPolicyBA12ED38", "TestBucket560B80BC"],
+      });
 
-    template.resourceCountIs('AWS::Events::Rule', 2);
+      template.resourceCountIs("AWS::Events::Rule", 2);
 
-    template.hasResourceProperties('AWS::Events::Rule', {
-      EventPattern: {
-        'source': [
-          'aws.appflow',
-        ],
-        'resources': [
-          {
-            'Fn::GetAtt': [
-              'OnEventFlowBAB74E7A',
-              'FlowArn',
-            ],
-          },
-        ],
-        'detail-type': [
-          'AppFlow Event Flow Report',
-        ],
-      },
-      State: 'ENABLED',
-    });
-
-
-    template.hasResourceProperties('AWS::Events::Rule', {
-      EventPattern: {
-        'source': [
-          'aws.appflow',
-        ],
-        'resources': [
-          {
-            'Fn::GetAtt': [
-              'OnEventFlowBAB74E7A',
-              'FlowArn',
-            ],
-          },
-        ],
-        'detail-type': [
-          'AppFlow Event Flow Deactivated',
-        ],
-      },
-      State: 'ENABLED',
-    });
-  });
+      template.hasResourceProperties("AWS::Events::Rule", {
+        EventPattern: {
+          source: ["aws.appflow"],
+          resources: [
+            {
+              "Fn::GetAtt": ["OnEventFlowBAB74E7A", "FlowArn"],
+            },
+          ],
+          "detail-type": ["AppFlow Event Flow Report"],
+        },
+        State: "ENABLED",
+      });
+
+      template.hasResourceProperties("AWS::Events::Rule", {
+        EventPattern: {
+          source: ["aws.appflow"],
+          resources: [
+            {
+              "Fn::GetAtt": ["OnEventFlowBAB74E7A", "FlowArn"],
+            },
+          ],
+          "detail-type": ["AppFlow Event Flow Deactivated"],
+        },
+        State: "ENABLED",
+      });
+    },
+  );
 
-  test('autoactivated flow without status and deactivation listeners renders flow definition only', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("autoactivated flow without status and deactivation listeners renders flow definition only", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new SalesforceSource({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'appflow-tester'),
-      object: 'AccountChangeEvent',
+      profile: SalesforceConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "appflow-tester",
+      ),
+      object: "AccountChangeEvent",
     });
 
-    const bucket = new Bucket(stack, 'TestBucket');
+    const bucket = new Bucket(stack, "TestBucket");
 
     const destination = new EventBridgeDestination({
-      partnerBus: EventSources.salesforceEventSource('test'),
+      partnerBus: EventSources.salesforceEventSource("test"),
       errorHandling: { errorLocation: { bucket } },
     });
 
-    new OnEventFlow(stack, 'OnEventFlow', {
+    new OnEventFlow(stack, "OnEventFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -174,28 +188,28 @@ describe('OnEventFlow', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
-        FlowStatus: 'Suspended',
+        FlowStatus: "Suspended",
         DestinationFlowConfigList: [
           {
-            ConnectorType: 'EventBridge',
+            ConnectorType: "EventBridge",
             DestinationConnectorProperties: {
               EventBridge: {
                 ErrorHandlingConfig: {
                   BucketName: {
-                    Ref: 'TestBucket560B80BC',
+                    Ref: "TestBucket560B80BC",
                   },
                 },
                 Object: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      'aws.partner/appflow/salesforce.com/',
+                      "aws.partner/appflow/salesforce.com/",
                       {
-                        Ref: 'AWS::AccountId',
+                        Ref: "AWS::AccountId",
                       },
-                      '/test',
+                      "/test",
                     ],
                   ],
                 },
@@ -203,42 +217,39 @@ describe('OnEventFlow', () => {
             },
           },
         ],
-        FlowName: 'TestStackOnEventFlow4BA4B0C6',
+        FlowName: "TestStackOnEventFlow4BA4B0C6",
         SourceFlowConfig: {
-          ConnectorProfileName: 'appflow-tester',
-          ConnectorType: 'Salesforce',
+          ConnectorProfileName: "appflow-tester",
+          ConnectorType: "Salesforce",
           SourceConnectorProperties: {
             Salesforce: {
-              Object: 'AccountChangeEvent',
+              Object: "AccountChangeEvent",
             },
           },
         },
         Tasks: [
           {
             ConnectorOperator: {
-              Salesforce: 'NO_OP',
+              Salesforce: "NO_OP",
             },
             SourceFields: [],
             TaskProperties: [
               {
-                Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-                Value: '[]',
+                Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+                Value: "[]",
               },
             ],
-            TaskType: 'Map_all',
+            TaskType: "Map_all",
           },
         ],
         TriggerConfig: {
-          TriggerType: 'Event',
+          TriggerType: "Event",
         },
       },
-      DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-      ],
+      DependsOn: ["TestBucketPolicyBA12ED38", "TestBucket560B80BC"],
     });
 
-    template.resourceCountIs('AWS::Events::Rule', 0);
-    template.resourceCountIs('AWS::Custom', 0);
+    template.resourceCountIs("AWS::Events::Rule", 0);
+    template.resourceCountIs("AWS::Custom", 0);
   });
-});
\ No newline at end of file
+});
diff --git a/test/core/flows/on-schedule-flow.test.ts b/test/core/flows/on-schedule-flow.test.ts
index 52d42608..10e9defd 100644
--- a/test/core/flows/on-schedule-flow.test.ts
+++ b/test/core/flows/on-schedule-flow.test.ts
@@ -2,39 +2,38 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Duration, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Schedule } from 'aws-cdk-lib/aws-events';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Duration, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Schedule } from "aws-cdk-lib/aws-events";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   S3Source,
   S3Destination,
   Mapping,
   OnScheduleFlow,
   DataPullMode,
-} from '../../../src';
+} from "../../../src";
 
-describe('OnScheduleFlow', () => {
-  test('default', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("OnScheduleFlow", () => {
+  test("default", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const bucket = new Bucket(stack, 'TestBucket');
+    const bucket = new Bucket(stack, "TestBucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'account',
+      prefix: "account",
     });
 
     const destination = new S3Destination({
-      location: { bucket, prefix: 'new-account' },
+      location: { bucket, prefix: "new-account" },
     });
 
-
-    new OnScheduleFlow(stack, 'OnScheduleFlow', {
+    new OnScheduleFlow(stack, "OnScheduleFlow", {
       source,
       destination,
-      key: new Key(stack, 'TestKey'),
+      key: new Key(stack, "TestKey"),
       mappings: [Mapping.mapAll()],
       schedule: Schedule.rate(Duration.days(1)),
       pullConfig: {
@@ -44,78 +43,74 @@ describe('OnScheduleFlow', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
-              BucketPrefix: 'new-account',
+              BucketPrefix: "new-account",
             },
           },
         },
       ],
-      FlowName: 'TestStackOnScheduleFlow1BB655FE',
+      FlowName: "TestStackOnScheduleFlow1BB655FE",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: 'account',
+            BucketPrefix: "account",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'Scheduled',
+        TriggerType: "Scheduled",
         TriggerProperties: {
-          DataPullMode: 'Incremental',
+          DataPullMode: "Incremental",
         },
       },
       KMSArn: {
-        'Fn::GetAtt': [
-          'TestKey4CACAF33',
-          'Arn',
-        ],
+        "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
       },
     });
   });
 
-  test('it passes offset', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("it passes offset", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const bucket = new Bucket(stack, 'TestBucket');
+    const bucket = new Bucket(stack, "TestBucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'account',
+      prefix: "account",
     });
 
     const destination = new S3Destination({
-      location: { bucket, prefix: 'new-account' },
+      location: { bucket, prefix: "new-account" },
     });
 
-
-    new OnScheduleFlow(stack, 'OnScheduleFlow', {
+    new OnScheduleFlow(stack, "OnScheduleFlow", {
       source,
       destination,
       mappings: [Mapping.mapAll()],
@@ -130,12 +125,12 @@ describe('OnScheduleFlow', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
-      FlowName: 'TestStackOnScheduleFlow1BB655FE',
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
+      FlowName: "TestStackOnScheduleFlow1BB655FE",
       TriggerConfig: {
-        TriggerType: 'Scheduled',
+        TriggerType: "Scheduled",
         TriggerProperties: {
-          DataPullMode: 'Incremental',
+          DataPullMode: "Incremental",
           ScheduleOffset: 3600,
         },
       },
diff --git a/test/googleads/profile.test.ts b/test/googleads/profile.test.ts
index f9c83327..a16ecdb8 100644
--- a/test/googleads/profile.test.ts
+++ b/test/googleads/profile.test.ts
@@ -2,65 +2,66 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
 
-import {
-  GoogleAdsConnectorProfile,
-  GoogleAdsApiVersion,
-} from '../../src';
+import { GoogleAdsConnectorProfile, GoogleAdsApiVersion } from "../../src";
 
-describe('GoogleAdsConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("GoogleAdsConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
     // readonly oAuth: GoogleAdsOAuthSettings;
     // readonly apiVersion: string;
     // readonly managerID: string;
     // readonly developerToken: string;
-    new GoogleAdsConnectorProfile(stack, 'TestProfile', {
+    new GoogleAdsConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
       apiVersion: GoogleAdsApiVersion.V16,
-      managerID: SecretValue.unsafePlainText('managerId'),
-      developerToken: SecretValue.unsafePlainText('developerToken'),
+      managerID: SecretValue.unsafePlainText("managerId"),
+      developerToken: SecretValue.unsafePlainText("developerToken"),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorLabel: 'GoogleAds',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'OAUTH2',
-            Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorLabel: "GoogleAds",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "OAUTH2",
+              Oauth2: {
+                AccessToken: "accessToken",
+                ClientId: "clientId",
+                ClientSecret: "clientSecret",
+                RefreshToken: "refreshToken",
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://oauth2.googleapis.com/token',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              OAuth2Properties: {
+                OAuth2GrantType: "AUTHORIZATION_CODE",
+                TokenUrl: "https://oauth2.googleapis.com/token",
+              },
             },
           },
         },
       },
-    });
+    );
   });
-});
\ No newline at end of file
+});
diff --git a/test/googleads/source.test.ts b/test/googleads/source.test.ts
index 667c0794..d2792668 100644
--- a/test/googleads/source.test.ts
+++ b/test/googleads/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,123 +14,136 @@ import {
   GoogleAdsSource,
   OnDemandFlow,
   S3Destination,
-} from '../../src';
+} from "../../src";
 
-describe('GoogleAdsSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("GoogleAdsSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new GoogleAdsSource({
-      profile: GoogleAdsConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'campaign-1112931111',
+      profile: GoogleAdsConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "campaign-1112931111",
       apiVersion: GoogleAdsApiVersion.V16,
     });
 
     const expectedConnectorType = GoogleAdsConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-
   //   profile: GoogleAdsConnectorProfile;
   //     readonly apiVersion: string;
   //     readonly object: string;
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new GoogleAdsSource({
-      profile: GoogleAdsConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: GoogleAdsConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       apiVersion: GoogleAdsApiVersion.V16,
-      object: 'campaign',
+      object: "campaign",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ApiVersion: 'v16',
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'CustomConnector',
+        ApiVersion: "v16",
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "CustomConnector",
         SourceConnectorProperties: {
           CustomConnector: {
-            EntityName: 'campaign',
+            EntityName: "campaign",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            CustomConnector: 'NO_OP',
+            CustomConnector: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
-
-    const profile = new GoogleAdsConnectorProfile(stack, 'TestProfile', {
+    const profile = new GoogleAdsConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
       apiVersion: GoogleAdsApiVersion.V16,
-      managerID: SecretValue.unsafePlainText('managerId'),
-      developerToken: SecretValue.unsafePlainText('developerToken'),
+      managerID: SecretValue.unsafePlainText("managerId"),
+      developerToken: SecretValue.unsafePlainText("developerToken"),
     });
 
     const source = new GoogleAdsSource({
       profile: profile,
-      object: 'campaign-1112931111',
+      object: "campaign-1112931111",
       apiVersion: GoogleAdsApiVersion.V16,
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -138,82 +151,82 @@ describe('GoogleAdsSource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'GoogleAds',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "CustomConnector",
+      ConnectorLabel: "GoogleAds",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           CustomConnector: {
-            AuthenticationType: 'OAUTH2',
+            AuthenticationType: "OAUTH2",
             Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+              RefreshToken: "refreshToken",
             },
           },
         },
         ConnectorProfileProperties: {
           CustomConnector: {
             OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://oauth2.googleapis.com/token',
+              OAuth2GrantType: "AUTHORIZATION_CODE",
+              TokenUrl: "https://oauth2.googleapis.com/token",
             },
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         DestinationFlowConfigList: [
           {
-            ConnectorType: 'S3',
+            ConnectorType: "S3",
             DestinationConnectorProperties: {
               S3: {
                 BucketName: {
-                  Ref: 'TestBucket560B80BC',
+                  Ref: "TestBucket560B80BC",
                 },
               },
             },
           },
         ],
-        FlowName: 'TestStackTestFlow32CDAF42',
+        FlowName: "TestStackTestFlow32CDAF42",
         SourceFlowConfig: {
-          ApiVersion: 'v16',
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'CustomConnector',
+          ApiVersion: "v16",
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "CustomConnector",
           SourceConnectorProperties: {
             CustomConnector: {
-              EntityName: 'campaign-1112931111',
+              EntityName: "campaign-1112931111",
             },
           },
         },
         Tasks: [
           {
             ConnectorOperator: {
-              CustomConnector: 'NO_OP',
+              CustomConnector: "NO_OP",
             },
             SourceFields: [],
             TaskProperties: [
               {
-                Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-                Value: '[]',
+                Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+                Value: "[]",
               },
             ],
-            TaskType: 'Map_all',
+            TaskType: "Map_all",
           },
         ],
         TriggerConfig: {
-          TriggerType: 'OnDemand',
+          TriggerType: "OnDemand",
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
diff --git a/test/googlebigquery/profile.test.ts b/test/googlebigquery/profile.test.ts
index 2514cbe7..d2fd49af 100644
--- a/test/googlebigquery/profile.test.ts
+++ b/test/googlebigquery/profile.test.ts
@@ -2,248 +2,256 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import {
-  GoogleBigQueryConnectorProfile,
-} from '../../src';
+import { GoogleBigQueryConnectorProfile } from "../../src";
 
-describe('GoogleBigQueryConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("GoogleBigQueryConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new GoogleBigQueryConnectorProfile(stack, 'TestProfile', {
+    new GoogleBigQueryConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'GoogleBigQuery',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'OAUTH2',
-            Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "GoogleBigQuery",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "OAUTH2",
+              Oauth2: {
+                AccessToken: "accessToken",
+                ClientId: "clientId",
+                ClientSecret: "clientSecret",
+                RefreshToken: "refreshToken",
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://oauth2.googleapis.com/token',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              OAuth2Properties: {
+                OAuth2GrantType: "AUTHORIZATION_CODE",
+                TokenUrl: "https://oauth2.googleapis.com/token",
+              },
             },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new GoogleBigQueryConnectorProfile(stack, 'TestProfile', {
+    new GoogleBigQueryConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
         endpoints: {
-          token: secret.secretValueFromJson('tokenUrl').toString(),
+          token: secret.secretValueFromJson("tokenUrl").toString(),
         },
       },
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'GoogleBigQuery',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'OAUTH2',
-            Oauth2: {
-              AccessToken: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "GoogleBigQuery",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "OAUTH2",
+              Oauth2: {
+                AccessToken: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:accessToken::}}",
+                    ],
                   ],
-                ],
-              },
-              ClientId: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:clientId::}}',
+                },
+                ClientId: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:clientId::}}",
+                    ],
                   ],
-                ],
-              },
-              ClientSecret: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:clientSecret::}}',
+                },
+                ClientSecret: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:clientSecret::}}",
+                    ],
                   ],
-                ],
-              },
-              RefreshToken: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:refreshToken::}}',
+                },
+                RefreshToken: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:refreshToken::}}",
+                    ],
                   ],
-                ],
+                },
               },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:tokenUrl::}}',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              OAuth2Properties: {
+                OAuth2GrantType: "AUTHORIZATION_CODE",
+                TokenUrl: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:tokenUrl::}}",
+                    ],
                   ],
-                ],
+                },
               },
             },
           },
         },
       },
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new GoogleBigQueryConnectorProfile(stack, 'TestProfile', {
+    new GoogleBigQueryConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
         endpoints: {
-          token: secret.secretValueFromJson('tokenUrl').toString(),
+          token: secret.secretValueFromJson("tokenUrl").toString(),
         },
       },
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
       Properties: {
-        ConnectionMode: 'Public',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'CustomConnector',
-        ConnectorLabel: 'GoogleBigQuery',
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "GoogleBigQuery",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             CustomConnector: {
-              AuthenticationType: 'OAUTH2',
+              AuthenticationType: "OAUTH2",
               Oauth2: {
                 AccessToken: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:accessToken::}}',
+                      ":SecretString:accessToken::}}",
                     ],
                   ],
                 },
                 ClientId: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:clientId::}}',
+                      ":SecretString:clientId::}}",
                     ],
                   ],
                 },
                 ClientSecret: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:clientSecret::}}',
+                      ":SecretString:clientSecret::}}",
                     ],
                   ],
                 },
                 RefreshToken: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:refreshToken::}}',
+                      ":SecretString:refreshToken::}}",
                     ],
                   ],
                 },
@@ -253,16 +261,16 @@ describe('GoogleBigQueryConnectorProfile', () => {
           ConnectorProfileProperties: {
             CustomConnector: {
               OAuth2Properties: {
-                OAuth2GrantType: 'AUTHORIZATION_CODE',
+                OAuth2GrantType: "AUTHORIZATION_CODE",
                 TokenUrl: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:tokenUrl::}}',
+                      ":SecretString:tokenUrl::}}",
                     ],
                   ],
                 },
@@ -271,16 +279,10 @@ describe('GoogleBigQueryConnectorProfile', () => {
           },
         },
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      DependsOn: [
-        'TestKey4CACAF33',
-      ],
+      DependsOn: ["TestKey4CACAF33"],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/googlebigquery/source.test.ts b/test/googlebigquery/source.test.ts
index 9d7eab77..b28e0362 100644
--- a/test/googlebigquery/source.test.ts
+++ b/test/googlebigquery/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,107 +14,122 @@ import {
   GoogleBigQuerySource,
   OnDemandFlow,
   S3Destination,
-} from '../../src';
+} from "../../src";
 
-describe('GoogleBigQuerySource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("GoogleBigQuerySource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new GoogleBigQuerySource({
-      profile: GoogleBigQueryConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: GoogleBigQueryConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       object: {
-        project: 'projectName',
-        dataset: 'datasetName',
-        table: 'tableName',
+        project: "projectName",
+        dataset: "datasetName",
+        table: "tableName",
       },
       apiVersion: GoogleBigQueryApiVersion.V2,
     });
 
     const expectedConnectorType = GoogleBigQueryConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new GoogleBigQuerySource({
-      profile: GoogleBigQueryConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: GoogleBigQueryConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       object: {
-        project: 'projectName',
-        dataset: 'datasetName',
-        table: 'tableName',
+        project: "projectName",
+        dataset: "datasetName",
+        table: "tableName",
       },
       apiVersion: GoogleBigQueryApiVersion.V2,
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ApiVersion: 'v2',
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'CustomConnector',
+        ApiVersion: "v2",
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "CustomConnector",
         SourceConnectorProperties: {
           CustomConnector: {
-            EntityName: 'table/projectName/datasetName/tableName',
+            EntityName: "table/projectName/datasetName/tableName",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            CustomConnector: 'NO_OP',
+            CustomConnector: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const profile = new GoogleBigQueryConnectorProfile(stack, 'TestProfile', {
+    const profile = new GoogleBigQueryConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
@@ -123,18 +138,18 @@ describe('GoogleBigQuerySource', () => {
     const source = new GoogleBigQuerySource({
       profile: profile,
       object: {
-        project: 'projectName',
-        dataset: 'datasetName',
-        table: 'tableName',
+        project: "projectName",
+        dataset: "datasetName",
+        table: "tableName",
       },
       apiVersion: GoogleBigQueryApiVersion.V2,
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -142,82 +157,82 @@ describe('GoogleBigQuerySource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'GoogleBigQuery',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "CustomConnector",
+      ConnectorLabel: "GoogleBigQuery",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           CustomConnector: {
-            AuthenticationType: 'OAUTH2',
+            AuthenticationType: "OAUTH2",
             Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+              RefreshToken: "refreshToken",
             },
           },
         },
         ConnectorProfileProperties: {
           CustomConnector: {
             OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://oauth2.googleapis.com/token',
+              OAuth2GrantType: "AUTHORIZATION_CODE",
+              TokenUrl: "https://oauth2.googleapis.com/token",
             },
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         DestinationFlowConfigList: [
           {
-            ConnectorType: 'S3',
+            ConnectorType: "S3",
             DestinationConnectorProperties: {
               S3: {
                 BucketName: {
-                  Ref: 'TestBucket560B80BC',
+                  Ref: "TestBucket560B80BC",
                 },
               },
             },
           },
         ],
-        FlowName: 'TestStackTestFlow32CDAF42',
+        FlowName: "TestStackTestFlow32CDAF42",
         SourceFlowConfig: {
-          ApiVersion: 'v2',
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'CustomConnector',
+          ApiVersion: "v2",
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "CustomConnector",
           SourceConnectorProperties: {
             CustomConnector: {
-              EntityName: 'table/projectName/datasetName/tableName',
+              EntityName: "table/projectName/datasetName/tableName",
             },
           },
         },
         Tasks: [
           {
             ConnectorOperator: {
-              CustomConnector: 'NO_OP',
+              CustomConnector: "NO_OP",
             },
             SourceFields: [],
             TaskProperties: [
               {
-                Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-                Value: '[]',
+                Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+                Value: "[]",
               },
             ],
-            TaskType: 'Map_all',
+            TaskType: "Map_all",
           },
         ],
         TriggerConfig: {
-          TriggerType: 'OnDemand',
+          TriggerType: "OnDemand",
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
diff --git a/test/integ/ondemand-asana-to-s3.integ.ts b/test/integ/ondemand-asana-to-s3.integ.ts
index e903a673..0dcab2fa 100644
--- a/test/integ/ondemand-asana-to-s3.integ.ts
+++ b/test/integ/ondemand-asana-to-s3.integ.ts
@@ -2,35 +2,35 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
   S3Destination,
   AsanaConnectorProfile,
   AsanaSource,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/asana');
+const secret = Secret.fromSecretNameV2(stack, "TestSecret", "appflow/asana");
 
-const profile = new AsanaConnectorProfile(stack, 'TestConnectorProfile', {
-  patToken: secret.secretValueFromJson('patToken'),
+const profile = new AsanaConnectorProfile(stack, "TestConnectorProfile", {
+  patToken: secret.secretValueFromJson("patToken"),
 });
 
 const source = new AsanaSource({
   profile: profile,
-  object: secret.secretValueFromJson('object').toString(),
+  object: secret.secretValueFromJson("object").toString(),
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -39,10 +39,10 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-googleanalytics4-to-s3.integ.ts b/test/integ/ondemand-googleanalytics4-to-s3.integ.ts
index 8a04c545..2e0cc8f2 100644
--- a/test/integ/ondemand-googleanalytics4-to-s3.integ.ts
+++ b/test/integ/ondemand-googleanalytics4-to-s3.integ.ts
@@ -2,26 +2,33 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
-import { GoogleAnalytics4ApiVersion, GoogleAnalytics4ConnectorProfile, GoogleAnalytics4Source, Mapping, OnDemandFlow, S3Destination } from '../../src';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
+import {
+  GoogleAnalytics4ApiVersion,
+  GoogleAnalytics4ConnectorProfile,
+  GoogleAnalytics4Source,
+  Mapping,
+  OnDemandFlow,
+  S3Destination,
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/ga4');
+const secret = Secret.fromSecretNameV2(stack, "TestSecret", "appflow/ga4");
 
-const profile = new GoogleAnalytics4ConnectorProfile(stack, 'TestConnector', {
+const profile = new GoogleAnalytics4ConnectorProfile(stack, "TestConnector", {
   oAuth: {
     flow: {
       refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+        refreshToken: secret.secretValueFromJson("refreshToken"),
+        clientId: secret.secretValueFromJson("clientId"),
+        clientSecret: secret.secretValueFromJson("clientSecret"),
       },
     },
   },
@@ -30,10 +37,10 @@ const profile = new GoogleAnalytics4ConnectorProfile(stack, 'TestConnector', {
 const source = new GoogleAnalytics4Source({
   profile: profile,
   apiVersion: GoogleAnalytics4ApiVersion.V1BETA,
-  object: secret.secretValueFromJson('coreReport').toString(),
+  object: secret.secretValueFromJson("coreReport").toString(),
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -42,13 +49,22 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [
-    Mapping.map({ name: 'achievementId', dataType: 'String' }, { name: 'achievementId', dataType: 'String' }),
-    Mapping.map({ name: 'adFormat', dataType: 'String' }, { name: 'adFormat', dataType: 'String' }),
-    Mapping.map({ name: 'adSourceName', dataType: 'String' }, { name: 'adSourceName', dataType: 'String' }),
+    Mapping.map(
+      { name: "achievementId", dataType: "String" },
+      { name: "achievementId", dataType: "String" },
+    ),
+    Mapping.map(
+      { name: "adFormat", dataType: "String" },
+      { name: "adFormat", dataType: "String" },
+    ),
+    Mapping.map(
+      { name: "adSourceName", dataType: "String" },
+      { name: "adSourceName", dataType: "String" },
+    ),
   ],
 });
 
diff --git a/test/integ/ondemand-jdbcsmalldatascale-to-amazonrdsforpostgresql.integ.ts b/test/integ/ondemand-jdbcsmalldatascale-to-amazonrdsforpostgresql.integ.ts
index 558f5217..bbc3a4c9 100644
--- a/test/integ/ondemand-jdbcsmalldatascale-to-amazonrdsforpostgresql.integ.ts
+++ b/test/integ/ondemand-jdbcsmalldatascale-to-amazonrdsforpostgresql.integ.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, Stack, Token } from 'aws-cdk-lib';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, Stack, Token } from "aws-cdk-lib";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   AmazonRdsForPostgreSqlConnectorProfile,
   AmazonRdsForPostgreSqlDestination,
@@ -12,62 +12,74 @@ import {
   JdbcSmallDataScaleSource,
   Mapping,
   OnDemandFlow,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/rdspostgres');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/rdspostgres",
+);
 
-const profile = new JdbcSmallDataScaleConnectorProfile(stack, 'JdbcSmallTestConnectorProfile', {
-  basicAuth: {
-    username: secret.secretValueFromJson('username').toString(),
-    password: secret.secretValueFromJson('password'),
+const profile = new JdbcSmallDataScaleConnectorProfile(
+  stack,
+  "JdbcSmallTestConnectorProfile",
+  {
+    basicAuth: {
+      username: secret.secretValueFromJson("username").toString(),
+      password: secret.secretValueFromJson("password"),
+    },
+    hostname: secret.secretValueFromJson("hostname").toString(),
+    port: Token.asNumber(secret.secretValueFromJson("port").toString()),
+    database: secret.secretValueFromJson("database").toString(),
+    driver: secret.secretValueFromJson("driver").toString() as JdbcDriver,
   },
-  hostname: secret.secretValueFromJson('hostname').toString(),
-  port: Token.asNumber(secret.secretValueFromJson('port').toString()),
-  database: secret.secretValueFromJson('database').toString(),
-  driver: secret.secretValueFromJson('driver').toString() as JdbcDriver,
-});
+);
 
 const source = new JdbcSmallDataScaleSource({
   profile,
   object: {
-    schema: secret.secretValueFromJson('schema').toString(),
-    table: secret.secretValueFromJson('table').toString(),
+    schema: secret.secretValueFromJson("schema").toString(),
+    table: secret.secretValueFromJson("table").toString(),
   },
 });
 
-const destProfile = new AmazonRdsForPostgreSqlConnectorProfile(stack, 'AmazonRdsTestConnectorProfile', {
-  basicAuth: {
-    username: secret.secretValueFromJson('username').toString(),
-    password: secret.secretValueFromJson('password'),
+const destProfile = new AmazonRdsForPostgreSqlConnectorProfile(
+  stack,
+  "AmazonRdsTestConnectorProfile",
+  {
+    basicAuth: {
+      username: secret.secretValueFromJson("username").toString(),
+      password: secret.secretValueFromJson("password"),
+    },
+    hostname: secret.secretValueFromJson("hostname").toString(),
+    port: Token.asNumber(secret.secretValueFromJson("port").toString()),
+    database: secret.secretValueFromJson("database").toString(),
   },
-  hostname: secret.secretValueFromJson('hostname').toString(),
-  port: Token.asNumber(secret.secretValueFromJson('port').toString()),
-  database: secret.secretValueFromJson('database').toString(),
-});
+);
 
 const destination = new AmazonRdsForPostgreSqlDestination({
   profile: destProfile,
   object: {
-    schema: secret.secretValueFromJson('schema').toString(),
-    table: secret.secretValueFromJson('table').toString(),
+    schema: secret.secretValueFromJson("schema").toString(),
+    table: secret.secretValueFromJson("table").toString(),
   },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [
-    Mapping.map({ name: 'username' }, { name: 'username' }),
-    Mapping.map({ name: 'password' }, { name: 'password' }),
-    Mapping.map({ name: 'created_on' }, { name: 'created_on' }),
-    Mapping.map({ name: 'email' }, { name: 'email' }),
+    Mapping.map({ name: "username" }, { name: "username" }),
+    Mapping.map({ name: "password" }, { name: "password" }),
+    Mapping.map({ name: "created_on" }, { name: "created_on" }),
+    Mapping.map({ name: "email" }, { name: "email" }),
   ],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-jdbcsmalldatascale-to-s3.integ.ts b/test/integ/ondemand-jdbcsmalldatascale-to-s3.integ.ts
index 1b90f7b1..2aaf1ac0 100644
--- a/test/integ/ondemand-jdbcsmalldatascale-to-s3.integ.ts
+++ b/test/integ/ondemand-jdbcsmalldatascale-to-s3.integ.ts
@@ -2,41 +2,54 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack, Token } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack, Token } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
-  JdbcSmallDataScaleConnectorProfile, JdbcDriver, JdbcSmallDataScaleSource, S3Destination, OnDemandFlow, Mapping,
-} from '../../src';
+  JdbcSmallDataScaleConnectorProfile,
+  JdbcDriver,
+  JdbcSmallDataScaleSource,
+  S3Destination,
+  OnDemandFlow,
+  Mapping,
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/rdspostgres');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/rdspostgres",
+);
 
-const profile = new JdbcSmallDataScaleConnectorProfile(stack, 'TestConnectorProfile', {
-  basicAuth: {
-    username: secret.secretValueFromJson('username').toString(),
-    password: secret.secretValueFromJson('password'),
+const profile = new JdbcSmallDataScaleConnectorProfile(
+  stack,
+  "TestConnectorProfile",
+  {
+    basicAuth: {
+      username: secret.secretValueFromJson("username").toString(),
+      password: secret.secretValueFromJson("password"),
+    },
+    hostname: secret.secretValueFromJson("hostname").toString(),
+    port: Token.asNumber(secret.secretValueFromJson("port").toString()),
+    database: secret.secretValueFromJson("database").toString(),
+    driver: secret.secretValueFromJson("driver").toString() as JdbcDriver,
   },
-  hostname: secret.secretValueFromJson('hostname').toString(),
-  port: Token.asNumber(secret.secretValueFromJson('port').toString()),
-  database: secret.secretValueFromJson('database').toString(),
-  driver: secret.secretValueFromJson('driver').toString() as JdbcDriver,
-});
+);
 
 const source = new JdbcSmallDataScaleSource({
   profile,
   object: {
-    schema: secret.secretValueFromJson('schema').toString(),
-    table: secret.secretValueFromJson('table').toString(),
+    schema: secret.secretValueFromJson("schema").toString(),
+    table: secret.secretValueFromJson("table").toString(),
   },
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -45,10 +58,10 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-mailchimp-to-s3.integ.ts b/test/integ/ondemand-mailchimp-to-s3.integ.ts
index 6fcc132d..e5243fb2 100644
--- a/test/integ/ondemand-mailchimp-to-s3.integ.ts
+++ b/test/integ/ondemand-mailchimp-to-s3.integ.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   MailchimpApiVersion,
   MailchimpConnectorProfile,
@@ -12,15 +12,19 @@ import {
   Mapping,
   OnDemandFlow,
   S3Destination,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/mailchimp');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/mailchimp",
+);
 // const secret = new Secret(stack, 'TestSecret', {
 //   secretName: 'appflow/mailchimp',
 //   removalPolicy: RemovalPolicy.DESTROY,
@@ -30,18 +34,18 @@ const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/mailchimp')
 //   },
 // })
 
-const profile = new MailchimpConnectorProfile(stack, 'TestConnectorProfile', {
-  apiKey: secret.secretValueFromJson('apiKey'),
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+const profile = new MailchimpConnectorProfile(stack, "TestConnectorProfile", {
+  apiKey: secret.secretValueFromJson("apiKey"),
+  instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
 });
 
 const source = new MailchimpSource({
   profile: profile,
   apiVersion: MailchimpApiVersion.V3,
-  object: 'campaigns',
+  object: "campaigns",
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -50,7 +54,7 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
diff --git a/test/integ/ondemand-microsoftdynamics365-to-s3.integ.ts b/test/integ/ondemand-microsoftdynamics365-to-s3.integ.ts
index e6d060dd..8cd4ea75 100644
--- a/test/integ/ondemand-microsoftdynamics365-to-s3.integ.ts
+++ b/test/integ/ondemand-microsoftdynamics365-to-s3.integ.ts
@@ -2,44 +2,60 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
-import { Mapping, MicrosoftDynamics365ApiVersion, MicrosoftDynamics365ConnectorProfile, MicrosoftDynamics365Source, OnDemandFlow, S3Destination, S3OutputAggregationType } from '../../src';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
+import {
+  Mapping,
+  MicrosoftDynamics365ApiVersion,
+  MicrosoftDynamics365ConnectorProfile,
+  MicrosoftDynamics365Source,
+  OnDemandFlow,
+  S3Destination,
+  S3OutputAggregationType,
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack', {
+const stack = new Stack(app, "TestStack", {
   env: {
-    region: 'us-east-1',
+    region: "us-east-1",
   },
 });
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/msdynamics365');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/msdynamics365",
+);
 
-const profile = new MicrosoftDynamics365ConnectorProfile(stack, 'TestConnector', {
-  oAuth: {
-    accessToken: secret.secretValueFromJson('accessToken'),
-    flow: {
-      refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+const profile = new MicrosoftDynamics365ConnectorProfile(
+  stack,
+  "TestConnector",
+  {
+    oAuth: {
+      accessToken: secret.secretValueFromJson("accessToken"),
+      flow: {
+        refreshTokenGrant: {
+          refreshToken: secret.secretValueFromJson("refreshToken"),
+          clientId: secret.secretValueFromJson("clientId"),
+          clientSecret: secret.secretValueFromJson("clientSecret"),
+        },
       },
     },
+    instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
   },
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
-});
+);
 
 const source = new MicrosoftDynamics365Source({
   profile: profile,
   apiVersion: MicrosoftDynamics365ApiVersion.V9_2,
-  object: secret.secretValueFromJson('object').toString(),
+  object: secret.secretValueFromJson("object").toString(),
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -53,7 +69,7 @@ const destination = new S3Destination({
   },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
diff --git a/test/integ/ondemand-microsoftsharepointonline-to-s3.integ.ts b/test/integ/ondemand-microsoftsharepointonline-to-s3.integ.ts
index 754a8422..66b6655c 100644
--- a/test/integ/ondemand-microsoftsharepointonline-to-s3.integ.ts
+++ b/test/integ/ondemand-microsoftsharepointonline-to-s3.integ.ts
@@ -2,43 +2,62 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
-import { MicrosoftSharepointOnlineApiVersion, MicrosoftSharepointOnlineConnectorProfile, MicrosoftSharepointOnlineSource, Mapping, OnDemandFlow, S3Destination, MicrosoftSharepointOnlineTokenUrlBuilder, S3OutputAggregationType } from '../../src';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
+import {
+  MicrosoftSharepointOnlineApiVersion,
+  MicrosoftSharepointOnlineConnectorProfile,
+  MicrosoftSharepointOnlineSource,
+  Mapping,
+  OnDemandFlow,
+  S3Destination,
+  MicrosoftSharepointOnlineTokenUrlBuilder,
+  S3OutputAggregationType,
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/mssharepointonline');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/mssharepointonline",
+);
 
-const profile = new MicrosoftSharepointOnlineConnectorProfile(stack, 'TestConnector', {
-  oAuth: {
-    accessToken: secret.secretValueFromJson('accessToken'),
-    flow: {
-      refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
+const profile = new MicrosoftSharepointOnlineConnectorProfile(
+  stack,
+  "TestConnector",
+  {
+    oAuth: {
+      accessToken: secret.secretValueFromJson("accessToken"),
+      flow: {
+        refreshTokenGrant: {
+          refreshToken: secret.secretValueFromJson("refreshToken"),
+        },
+      },
+      endpoints: {
+        token: MicrosoftSharepointOnlineTokenUrlBuilder.buildTokenUrl(
+          secret.secretValueFromJson("tenantId").toString(),
+        ),
       },
-    },
-    endpoints: {
-      token: MicrosoftSharepointOnlineTokenUrlBuilder.buildTokenUrl(secret.secretValueFromJson('tenantId').toString()),
     },
   },
-});
+);
 
 const source = new MicrosoftSharepointOnlineSource({
   profile: profile,
   apiVersion: MicrosoftSharepointOnlineApiVersion.V1,
   object: {
-    site: secret.secretValueFromJson('site').toString(),
-    entities: [secret.secretValueFromJson('drive').toString()],
+    site: secret.secretValueFromJson("site").toString(),
+    entities: [secret.secretValueFromJson("drive").toString()],
   },
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -52,7 +71,7 @@ const destination = new S3Destination({
   },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
diff --git a/test/integ/ondemand-s3-to-s3.integ.ts b/test/integ/ondemand-s3-to-s3.integ.ts
index 8660bbcb..8f4c4b7c 100644
--- a/test/integ/ondemand-s3-to-s3.integ.ts
+++ b/test/integ/ondemand-s3-to-s3.integ.ts
@@ -2,42 +2,46 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { BucketDeployment, Source } from 'aws-cdk-lib/aws-s3-deployment';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { BucketDeployment, Source } from "aws-cdk-lib/aws-s3-deployment";
 import {
   Mapping,
   OnDemandFlow,
-  S3Destination, S3InputFileType, S3OutputAggregationType,
-  S3OutputFilePrefixHierarchy, S3OutputFilePrefixType,
-  S3OutputFileType, S3Source,
-} from '../../src';
+  S3Destination,
+  S3InputFileType,
+  S3OutputAggregationType,
+  S3OutputFilePrefixHierarchy,
+  S3OutputFilePrefixType,
+  S3OutputFileType,
+  S3Source,
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const sourceBucket = new Bucket(stack, 'TestSourceBucket', {
+const sourceBucket = new Bucket(stack, "TestSourceBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const destinationBucket = new Bucket(stack, 'TestDestinationBucket', {
+const destinationBucket = new Bucket(stack, "TestDestinationBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const deployment = new BucketDeployment(stack, 'TestDeployment', {
-  sources: [Source.jsonData('init.json', { Name: 'name' })],
+const deployment = new BucketDeployment(stack, "TestDeployment", {
+  sources: [Source.jsonData("init.json", { Name: "name" })],
   destinationBucket: sourceBucket,
-  destinationKeyPrefix: 'account',
+  destinationKeyPrefix: "account",
 });
 
 const source = new S3Source({
   bucket: sourceBucket,
-  prefix: 'account',
+  prefix: "account",
   format: {
     type: S3InputFileType.JSON,
   },
@@ -59,7 +63,7 @@ const destination = new S3Destination({
   },
 });
 
-const flow = new OnDemandFlow(stack, 'OnDemandFlow', {
+const flow = new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
@@ -67,4 +71,4 @@ const flow = new OnDemandFlow(stack, 'OnDemandFlow', {
 
 flow.node.addDependency(deployment);
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-s3-to-snowflake.integ.ts b/test/integ/ondemand-s3-to-snowflake.integ.ts
index 1a6973dc..9e352766 100644
--- a/test/integ/ondemand-s3-to-snowflake.integ.ts
+++ b/test/integ/ondemand-s3-to-snowflake.integ.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { BucketDeployment, Source } from 'aws-cdk-lib/aws-s3-deployment';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { BucketDeployment, Source } from "aws-cdk-lib/aws-s3-deployment";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
@@ -13,49 +13,53 @@ import {
   S3Source,
   SnowflakeConnectorProfile,
   SnowflakeDestination,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const deployment = new BucketDeployment(stack, 'TestDeployment', {
-  sources: [Source.jsonData('init.json', { Name: 'name' })],
+const deployment = new BucketDeployment(stack, "TestDeployment", {
+  sources: [Source.jsonData("init.json", { Name: "name" })],
   destinationBucket: bucket,
-  destinationKeyPrefix: 'account',
+  destinationKeyPrefix: "account",
 });
 
 const source = new S3Source({
   bucket: bucket,
-  prefix: 'account',
+  prefix: "account",
   format: {
     type: S3InputFileType.JSON,
   },
 });
-const secret = Secret.fromSecretNameV2(stack, 'SnowTestSecret', 'appflow/snowflake');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "SnowTestSecret",
+  "appflow/snowflake",
+);
 
-const dataBucket = Bucket.fromBucketAttributes(stack, 'ImportedBucket', {
-  bucketName: secret.secretValueFromJson('bucketName').toString(),
+const dataBucket = Bucket.fromBucketAttributes(stack, "ImportedBucket", {
+  bucketName: secret.secretValueFromJson("bucketName").toString(),
 });
 
-const snowProfile = new SnowflakeConnectorProfile(stack, 'SnowTestConnector', {
-  account: secret.secretValueFromJson('account').toString(),
-  region: secret.secretValueFromJson('region').toString(),
+const snowProfile = new SnowflakeConnectorProfile(stack, "SnowTestConnector", {
+  account: secret.secretValueFromJson("account").toString(),
+  region: secret.secretValueFromJson("region").toString(),
   basicAuth: {
-    username: secret.secretValueFromJson('username').toString(),
-    password: secret.secretValueFromJson('password'),
+    username: secret.secretValueFromJson("username").toString(),
+    password: secret.secretValueFromJson("password"),
   },
-  warehouse: secret.secretValueFromJson('warehouse').toString(),
-  database: secret.secretValueFromJson('database').toString(),
-  schema: secret.secretValueFromJson('schema').toString(),
-  stage: secret.secretValueFromJson('stage').toString(),
+  warehouse: secret.secretValueFromJson("warehouse").toString(),
+  database: secret.secretValueFromJson("database").toString(),
+  schema: secret.secretValueFromJson("schema").toString(),
+  stage: secret.secretValueFromJson("stage").toString(),
   location: {
     bucket: dataBucket,
   },
@@ -64,17 +68,17 @@ const snowProfile = new SnowflakeConnectorProfile(stack, 'SnowTestConnector', {
 const destination = new SnowflakeDestination({
   profile: snowProfile,
   object: {
-    table: secret.secretValueFromJson('table').toString(),
+    table: secret.secretValueFromJson("table").toString(),
   },
   errorHandling: {
     errorLocation: {
       bucket: dataBucket,
-      prefix: 'error',
+      prefix: "error",
     },
   },
 });
 
-const flow = new OnDemandFlow(stack, 'OnDemandFlow', {
+const flow = new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
@@ -82,4 +86,4 @@ const flow = new OnDemandFlow(stack, 'OnDemandFlow', {
 
 flow.node.addDependency(deployment);
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-salesforce-to-redshift.integ.ts b/test/integ/ondemand-salesforce-to-redshift.integ.ts
index 0582a01f..17c47c94 100644
--- a/test/integ/ondemand-salesforce-to-redshift.integ.ts
+++ b/test/integ/ondemand-salesforce-to-redshift.integ.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Cluster, Table } from '@aws-cdk/aws-redshift-alpha';
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Vpc } from 'aws-cdk-lib/aws-ec2';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { Cluster, Table } from "@aws-cdk/aws-redshift-alpha";
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Vpc } from "aws-cdk-lib/aws-ec2";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
@@ -14,65 +14,71 @@ import {
   RedshiftDestination,
   SalesforceConnectorProfile,
   SalesforceSource,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const creds = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce');
+const creds = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/salesforce",
+);
 
-const profile = new SalesforceConnectorProfile(stack, 'TestProfile', {
+const profile = new SalesforceConnectorProfile(stack, "TestProfile", {
   oAuth: {
-    accessToken: creds.secretValueFromJson('accessToken'),
+    accessToken: creds.secretValueFromJson("accessToken"),
   },
-  instanceUrl: creds.secretValueFromJson('instanceUrl').toString(),
+  instanceUrl: creds.secretValueFromJson("instanceUrl").toString(),
   isSandbox: false,
 });
 
 const source = new SalesforceSource({
   profile: profile,
-  object: 'Contact',
+  object: "Contact",
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const materUserName = 'admin';
-const databaseName = 'workshop';
+const materUserName = "admin";
+const databaseName = "workshop";
 
-const cluster = new Cluster(stack, 'TestCluster', {
+const cluster = new Cluster(stack, "TestCluster", {
   encrypted: false,
   masterUser: {
     masterUsername: materUserName,
   },
   defaultDatabaseName: databaseName,
-  vpc: new Vpc(stack, 'TestVpc'),
+  vpc: new Vpc(stack, "TestVpc"),
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const table = new Table(stack, 'TestTable', {
-  tableName: 'contact',
-  tableColumns: [
-    { name: 'name', dataType: 'character varying' },
-  ],
+const table = new Table(stack, "TestTable", {
+  tableName: "contact",
+  tableColumns: [{ name: "name", dataType: "character varying" }],
   cluster: cluster,
   databaseName: databaseName,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const redshiftProfile = new RedshiftConnectorProfile(stack, 'TestRedshiftProfile', {
-  basicAuth: {
-    username: materUserName,
+const redshiftProfile = new RedshiftConnectorProfile(
+  stack,
+  "TestRedshiftProfile",
+  {
+    basicAuth: {
+      username: materUserName,
+    },
+    intermediateLocation: { bucket, prefix: "intermediate" },
+    cluster: cluster,
+    databaseName: databaseName,
   },
-  intermediateLocation: { bucket, prefix: 'intermediate' },
-  cluster: cluster,
-  databaseName: databaseName,
-});
+);
 
 const destination = new RedshiftDestination({
   profile: redshiftProfile,
@@ -81,12 +87,15 @@ const destination = new RedshiftDestination({
   },
 });
 
-new OnDemandFlow(stack, 'SfdcToRedshiftELT', {
+new OnDemandFlow(stack, "SfdcToRedshiftELT", {
   source,
   destination,
   mappings: [
-    Mapping.map({ name: 'Name', dataType: 'string' }, { name: 'name', dataType: 'character varying' }),
+    Mapping.map(
+      { name: "Name", dataType: "string" },
+      { name: "name", dataType: "character varying" },
+    ),
   ],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-salesforce-to-s3.integ.ts b/test/integ/ondemand-salesforce-to-s3.integ.ts
index 83e06d9a..f509a2b1 100644
--- a/test/integ/ondemand-salesforce-to-s3.integ.ts
+++ b/test/integ/ondemand-salesforce-to-s3.integ.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Database } from '@aws-cdk/aws-glue-alpha';
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { Database } from "@aws-cdk/aws-glue-alpha";
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Filter,
   FilterCondition,
@@ -16,35 +16,39 @@ import {
   S3OutputFileType,
   SalesforceConnectorProfile,
   SalesforceSource,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce/client');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/salesforce/client",
+);
 
-const profile = new SalesforceConnectorProfile(stack, 'TestConnectorProfile', {
+const profile = new SalesforceConnectorProfile(stack, "TestConnectorProfile", {
   oAuth: {
     flow: {
       refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
+        refreshToken: secret.secretValueFromJson("refreshToken"),
         client: secret,
       },
     },
   },
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+  instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
   isSandbox: false,
 });
 
 const source = new SalesforceSource({
   profile: profile,
-  object: 'Contact',
+  object: "Contact",
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -53,24 +57,31 @@ const destination = new S3Destination({
   location: { bucket },
   formatting: {
     filePrefix: {
-      hierarchy: [S3OutputFilePrefixHierarchy.SCHEMA_VERSION, S3OutputFilePrefixHierarchy.EXECUTION_ID],
+      hierarchy: [
+        S3OutputFilePrefixHierarchy.SCHEMA_VERSION,
+        S3OutputFilePrefixHierarchy.EXECUTION_ID,
+      ],
     },
     fileType: S3OutputFileType.JSON,
   },
   catalog: {
-    database: new Database(stack, 'TestDatabase', { databaseName: 'testdb' }),
-    tablePrefix: 'test_prefix',
+    database: new Database(stack, "TestDatabase", { databaseName: "testdb" }),
+    tablePrefix: "test_prefix",
   },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
   filters: [
     Filter.when(
-      FilterCondition.timestampGreaterThanEquals({ name: 'LastModifiedDate', dataType: 'datetime' }, new Date(Date.parse('2022-02-02')))),
+      FilterCondition.timestampGreaterThanEquals(
+        { name: "LastModifiedDate", dataType: "datetime" },
+        new Date(Date.parse("2022-02-02")),
+      ),
+    ),
   ],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-sapodata-to-s3.integ.ts b/test/integ/ondemand-sapodata-to-s3.integ.ts
index 3d312357..9a9adb3d 100644
--- a/test/integ/ondemand-sapodata-to-s3.integ.ts
+++ b/test/integ/ondemand-sapodata-to-s3.integ.ts
@@ -2,43 +2,47 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack, Token } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack, Token } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
   S3Destination,
   SAPOdataConnectorProfile,
   SAPOdataSource,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/sap/basic');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/sap/basic",
+);
 
-const profile = new SAPOdataConnectorProfile(stack, 'TestConnectorProfile', {
+const profile = new SAPOdataConnectorProfile(stack, "TestConnectorProfile", {
   basicAuth: {
-    username: secret.secretValueFromJson('username').toString(),
-    password: secret.secretValueFromJson('password'),
+    username: secret.secretValueFromJson("username").toString(),
+    password: secret.secretValueFromJson("password"),
   },
-  applicationHostUrl: secret.secretValueFromJson('appHostUrl').toString(),
-  applicationServicePath: secret.secretValueFromJson('servicePath').toString(),
-  portNumber: Token.asNumber(secret.secretValueFromJson('portNumber')),
-  clientNumber: secret.secretValueFromJson('clientNumber').toString(),
-  logonLanguage: secret.secretValueFromJson('logonLanguage').toString(),
+  applicationHostUrl: secret.secretValueFromJson("appHostUrl").toString(),
+  applicationServicePath: secret.secretValueFromJson("servicePath").toString(),
+  portNumber: Token.asNumber(secret.secretValueFromJson("portNumber")),
+  clientNumber: secret.secretValueFromJson("clientNumber").toString(),
+  logonLanguage: secret.secretValueFromJson("logonLanguage").toString(),
 });
 
 const source = new SAPOdataSource({
   profile: profile,
-  object: secret.secretValueFromJson('objectName').toString(),
+  object: secret.secretValueFromJson("objectName").toString(),
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -47,10 +51,10 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/ondemand-slack-to-s3.integ.ts b/test/integ/ondemand-slack-to-s3.integ.ts
index c9e4a19d..02044de3 100644
--- a/test/integ/ondemand-slack-to-s3.integ.ts
+++ b/test/integ/ondemand-slack-to-s3.integ.ts
@@ -2,38 +2,38 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
   S3Destination,
   SlackConnectorProfile,
   SlackSource,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/slack');
+const secret = Secret.fromSecretNameV2(stack, "TestSecret", "appflow/slack");
 
-const profile = new SlackConnectorProfile(stack, 'TestConnectorProfile', {
+const profile = new SlackConnectorProfile(stack, "TestConnectorProfile", {
   oAuth: {
-    accessToken: secret.secretValueFromJson('accessToken'),
+    accessToken: secret.secretValueFromJson("accessToken"),
   },
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+  instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
 });
 
 const source = new SlackSource({
   profile: profile,
-  object: secret.secretValueFromJson('conversation').toString(),
+  object: secret.secretValueFromJson("conversation").toString(),
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -42,10 +42,10 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-new OnDemandFlow(stack, 'OnDemandFlow', {
+new OnDemandFlow(stack, "OnDemandFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
 });
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/onevent-salesforce-to-eventbridge.integ.ts b/test/integ/onevent-salesforce-to-eventbridge.integ.ts
index 8955f801..f77cc68b 100644
--- a/test/integ/onevent-salesforce-to-eventbridge.integ.ts
+++ b/test/integ/onevent-salesforce-to-eventbridge.integ.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   EventBridgeDestination,
   SalesforceSource,
@@ -12,50 +12,54 @@ import {
   Mapping,
   OnEventFlow,
   SalesforceConnectorProfile,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce/client');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/salesforce/client",
+);
 
-const profile = new SalesforceConnectorProfile(stack, 'TestConnectorProfile', {
+const profile = new SalesforceConnectorProfile(stack, "TestConnectorProfile", {
   oAuth: {
     flow: {
       refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
+        refreshToken: secret.secretValueFromJson("refreshToken"),
         client: secret,
       },
     },
   },
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+  instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
   isSandbox: false,
 });
 
 const source = new SalesforceSource({
   profile: profile,
-  object: 'AccountChangeEvent',
+  object: "AccountChangeEvent",
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
 const destination = new EventBridgeDestination({
-  partnerBus: EventSources.salesforceEventSource('test'),
+  partnerBus: EventSources.salesforceEventSource("test"),
   errorHandling: { errorLocation: { bucket } },
 });
 
-const flow = new OnEventFlow(stack, 'EventFlow', {
+const flow = new OnEventFlow(stack, "EventFlow", {
   source: source,
   destination: destination,
   mappings: [Mapping.mapAll()],
 });
 
-flow.onRunStarted('captureOnRunStarted');
+flow.onRunStarted("captureOnRunStarted");
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.assets.json b/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.assets.json
index 279cc304..041f4971 100644
--- a/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.assets.json
+++ b/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.assets.json
@@ -53,15 +53,15 @@
         }
       }
     },
-    "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e": {
+    "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f": {
       "source": {
-        "path": "asset.09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.lambda",
+        "path": "asset.3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.lambda",
         "packaging": "zip"
       },
       "destinations": {
         "current_account-current_region": {
           "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
-          "objectKey": "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.zip",
+          "objectKey": "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.zip",
           "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
         }
       }
@@ -79,7 +79,7 @@
         }
       }
     },
-    "ebd6fc4cce953d7795f95b638d70af66539864f33bbc9aff2b944150699528ad": {
+    "2a51eba8e5d99179baf1d3729daf334e9f32934d98f23eafa6afca3edc2a0152": {
       "source": {
         "path": "TestStack.template.json",
         "packaging": "file"
@@ -87,7 +87,7 @@
       "destinations": {
         "current_account-current_region": {
           "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
-          "objectKey": "ebd6fc4cce953d7795f95b638d70af66539864f33bbc9aff2b944150699528ad.json",
+          "objectKey": "2a51eba8e5d99179baf1d3729daf334e9f32934d98f23eafa6afca3edc2a0152.json",
           "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
         }
       }
diff --git a/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.template.json b/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.template.json
index 87e4e463..604c2c1b 100644
--- a/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.template.json
+++ b/test/integ/onschedule-s3-to-salesforce.integ.snapshot/TestStack.template.json
@@ -713,7 +713,7 @@
      "S3Bucket": {
       "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}"
      },
-     "S3Key": "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.zip"
+     "S3Key": "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.zip"
     },
     "Description": "src/core/flows/flow-time-updater/flow-time-updater.lambda.ts",
     "Environment": {
diff --git a/test/integ/onschedule-s3-to-salesforce.integ.ts b/test/integ/onschedule-s3-to-salesforce.integ.ts
index f3c5c986..5d53e1c4 100644
--- a/test/integ/onschedule-s3-to-salesforce.integ.ts
+++ b/test/integ/onschedule-s3-to-salesforce.integ.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, Duration, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Schedule } from 'aws-cdk-lib/aws-events';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { BucketDeployment, Source } from 'aws-cdk-lib/aws-s3-deployment';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, Duration, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Schedule } from "aws-cdk-lib/aws-events";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { BucketDeployment, Source } from "aws-cdk-lib/aws-s3-deployment";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   SalesforceDestination,
   S3Source,
@@ -21,74 +21,84 @@ import {
   WriteOperation,
   SalesforceConnectorProfile,
   FlowStatus,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack');
+const stack = new Stack(app, "TestStack");
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
 
-const deployment = new BucketDeployment(stack, 'TestDeployment', {
-  sources: [Source.jsonData('init.json', { Name: 'name' })],
+const deployment = new BucketDeployment(stack, "TestDeployment", {
+  sources: [Source.jsonData("init.json", { Name: "name" })],
   destinationBucket: bucket,
-  destinationKeyPrefix: 'account',
+  destinationKeyPrefix: "account",
 });
 
 const source = new S3Source({
   bucket: bucket,
-  prefix: 'account',
+  prefix: "account",
   format: {
     type: S3InputFileType.JSON,
   },
 });
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce/client');
+const secret = Secret.fromSecretNameV2(
+  stack,
+  "TestSecret",
+  "appflow/salesforce/client",
+);
 
-const profile = new SalesforceConnectorProfile(stack, 'TestConnectorProfile', {
+const profile = new SalesforceConnectorProfile(stack, "TestConnectorProfile", {
   oAuth: {
     flow: {
       refreshTokenGrant: {
-        refreshToken: secret.secretValueFromJson('refreshToken'),
+        refreshToken: secret.secretValueFromJson("refreshToken"),
         client: secret,
       },
     },
   },
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+  instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
   isSandbox: false,
 });
 
 const destination = new SalesforceDestination({
   profile: profile,
-  object: 'Account',
+  object: "Account",
   operation: WriteOperation.insert(),
 });
 
-const flow = new OnScheduleFlow(stack, 'OnScheduleFlow', {
+const flow = new OnScheduleFlow(stack, "OnScheduleFlow", {
   source: source,
   destination: destination,
-  mappings: [Mapping.map({ name: 'Name', dataType: 'string' }, { name: 'Name', dataType: 'string' })],
-  transforms: [
-    Transform.mask({ name: 'Name' }, '*'),
+  mappings: [
+    Mapping.map(
+      { name: "Name", dataType: "string" },
+      { name: "Name", dataType: "string" },
+    ),
   ],
+  transforms: [Transform.mask({ name: "Name" }, "*")],
   validations: [
-    Validation.when(ValidationCondition.isNull('Name'), ValidationAction.ignoreRecord()),
+    Validation.when(
+      ValidationCondition.isNull("Name"),
+      ValidationAction.ignoreRecord(),
+    ),
   ],
   schedule: Schedule.rate(Duration.minutes(10)),
   pullConfig: { mode: DataPullMode.INCREMENTAL },
   scheduleProperties: {
-    startTime: new Date(Date.parse('2024-01-01')),
+    startTime: new Date(Date.parse("2024-01-01")),
   },
   status: FlowStatus.ACTIVE,
 });
 
 flow.node.addDependency(deployment);
-flow.onRunCompleted('captureOnRunCompleted');
-flow.onDeactivated('captureOnDeactivated');
+flow.onRunCompleted("captureOnRunCompleted");
+flow.onDeactivated("captureOnDeactivated");
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.assets.json b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.assets.json
index 74b0d9bc..7773578e 100644
--- a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.assets.json
+++ b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.assets.json
@@ -15,15 +15,15 @@
         }
       }
     },
-    "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e": {
+    "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f": {
       "source": {
-        "path": "asset.09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.lambda",
+        "path": "asset.3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.lambda",
         "packaging": "zip"
       },
       "destinations": {
         "current_account-eu-west-2": {
           "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-eu-west-2",
-          "objectKey": "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.zip",
+          "objectKey": "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.zip",
           "region": "eu-west-2",
           "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-eu-west-2"
         }
@@ -43,7 +43,7 @@
         }
       }
     },
-    "fc4e6e3859fcdf797a04d136a8dea8fa73fd3a3e0871e51c73f6f83dff5df248": {
+    "21d180fd822bbbc94fc63309eb06971458d4c665770012193a63ccd475955953": {
       "source": {
         "path": "TestStack.template.json",
         "packaging": "file"
@@ -51,7 +51,7 @@
       "destinations": {
         "current_account-eu-west-2": {
           "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-eu-west-2",
-          "objectKey": "fc4e6e3859fcdf797a04d136a8dea8fa73fd3a3e0871e51c73f6f83dff5df248.json",
+          "objectKey": "21d180fd822bbbc94fc63309eb06971458d4c665770012193a63ccd475955953.json",
           "region": "eu-west-2",
           "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-eu-west-2"
         }
diff --git a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.template.json b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.template.json
index 6d735eef..ee658ae8 100644
--- a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.template.json
+++ b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.snapshot/TestStack.template.json
@@ -476,7 +476,7 @@
      "S3Bucket": {
       "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-eu-west-2"
      },
-     "S3Key": "09980565ff6ed9cefb55de3d97d64d0413b487a9fa49a8a08a3716e6717a299e.zip"
+     "S3Key": "3d8e27d488be48c03663849f78d10bccd12d62c87af6b9bbf55731095cc2a07f.zip"
     },
     "Description": "src/core/flows/flow-time-updater/flow-time-updater.lambda.ts",
     "Environment": {
diff --git a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.ts b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.ts
index 18c4f990..c2039c6c 100644
--- a/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.ts
+++ b/test/integ/onschedule-salesforce-marketing-cloud-to-s3.integ.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
-import { Schedule } from 'aws-cdk-lib/aws-events';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
+import { Schedule } from "aws-cdk-lib/aws-events";
+import { Bucket } from "aws-cdk-lib/aws-s3";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   DataPullMode,
   Mapping,
@@ -18,42 +18,46 @@ import {
   Validation,
   ValidationAction,
   ValidationCondition,
-} from '../../src';
+} from "../../src";
 
 const app = new App({
   treeMetadata: false,
 });
 
-const stack = new Stack(app, 'TestStack', {
+const stack = new Stack(app, "TestStack", {
   env: {
-    region: 'eu-west-2',
+    region: "eu-west-2",
   },
 });
 
-const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'sfmc/secret');
+const secret = Secret.fromSecretNameV2(stack, "TestSecret", "sfmc/secret");
 
-const profile = new SalesforceMarketingCloudConnectorProfile(stack, 'TestConnector', {
-  instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
-  oAuth: {
-    flow: {
-      clientCredentials: {
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+const profile = new SalesforceMarketingCloudConnectorProfile(
+  stack,
+  "TestConnector",
+  {
+    instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
+    oAuth: {
+      flow: {
+        clientCredentials: {
+          clientId: secret.secretValueFromJson("clientId"),
+          clientSecret: secret.secretValueFromJson("clientSecret"),
+        },
+      },
+      endpoints: {
+        token: secret.secretValueFromJson("tokenUrl").toString(),
       },
-    },
-    endpoints: {
-      token: secret.secretValueFromJson('tokenUrl').toString(),
     },
   },
-});
+);
 
 const source = new SalesforceMarketingCloudSource({
   profile: profile,
   apiVersion: SalesforceMarketingCloudApiVersions.V1,
-  object: 'Email',
+  object: "Email",
 });
 
-const bucket = new Bucket(stack, 'TestBucket', {
+const bucket = new Bucket(stack, "TestBucket", {
   autoDeleteObjects: true,
   removalPolicy: RemovalPolicy.DESTROY,
 });
@@ -62,25 +66,29 @@ const destination = new S3Destination({
   location: { bucket },
 });
 
-const flow = new OnScheduleFlow(stack, 'OnScheduleFlow', {
+const flow = new OnScheduleFlow(stack, "OnScheduleFlow", {
   source: source,
   destination: destination,
   mappings: [
-    Mapping.map({ name: 'Name', dataType: 'String' }, { name: 'Name', dataType: 'string' }),
-  ],
-  transforms: [
-    Transform.mask({ name: 'Name' }, '*'),
+    Mapping.map(
+      { name: "Name", dataType: "String" },
+      { name: "Name", dataType: "string" },
+    ),
   ],
+  transforms: [Transform.mask({ name: "Name" }, "*")],
   validations: [
-    Validation.when(ValidationCondition.isNull('Name'), ValidationAction.ignoreRecord()),
+    Validation.when(
+      ValidationCondition.isNull("Name"),
+      ValidationAction.ignoreRecord(),
+    ),
   ],
-  schedule: Schedule.cron({ hour: '1', minute: '1' }),
+  schedule: Schedule.cron({ hour: "1", minute: "1" }),
   pullConfig: { mode: DataPullMode.INCREMENTAL },
   scheduleProperties: {
-    startTime: new Date(Date.parse('2024-01-01')),
+    startTime: new Date(Date.parse("2024-01-01")),
   },
 });
 
-flow.onRunStarted('OnRunStarted');
+flow.onRunStarted("OnRunStarted");
 
-app.synth();
\ No newline at end of file
+app.synth();
diff --git a/test/mailchimp/profile.test.ts b/test/mailchimp/profile.test.ts
index ac475459..383ba894 100644
--- a/test/mailchimp/profile.test.ts
+++ b/test/mailchimp/profile.test.ts
@@ -2,45 +2,49 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { MailchimpConnectorProfile } from '../../src';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { MailchimpConnectorProfile } from "../../src";
 
-describe('MailchimpConnectorProfileProps', () => {
-
-  test('API Key profile with credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("MailchimpConnectorProfileProps", () => {
+  test("API Key profile with credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new MailchimpConnectorProfile(stack, 'TestProfile', {
-      apiKey: SecretValue.unsafePlainText('apiKey'),
-      instanceUrl: SecretValue.unsafePlainText('instanceUrl').toString(),
+    new MailchimpConnectorProfile(stack, "TestProfile", {
+      apiKey: SecretValue.unsafePlainText("apiKey"),
+      instanceUrl: SecretValue.unsafePlainText("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorLabel: 'Mailchimp',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'CUSTOM',
-            Custom: {
-              CredentialsMap: {
-                api_key: 'apiKey',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorLabel: "Mailchimp",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "CUSTOM",
+              Custom: {
+                CredentialsMap: {
+                  api_key: "apiKey",
+                },
+                CustomAuthenticationType: "api_key",
               },
-              CustomAuthenticationType: 'api_key',
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            ProfileProperties: {
-              instanceUrl: 'instanceUrl',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              ProfileProperties: {
+                instanceUrl: "instanceUrl",
+              },
             },
           },
         },
       },
-    });
+    );
   });
 });
diff --git a/test/mailchimp/source.test.ts b/test/mailchimp/source.test.ts
index a9bcbe10..8fafa47c 100644
--- a/test/mailchimp/source.test.ts
+++ b/test/mailchimp/source.test.ts
@@ -2,8 +2,8 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Stack } from "aws-cdk-lib";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   MailchimpConnectorProfile,
   MailchimpSource,
@@ -12,59 +12,80 @@ import {
   OnDemandFlow,
   S3Destination,
   Mapping,
-} from '../../src';
+} from "../../src";
 
-describe('MailchimpSource', () => {
-
-  test('Source with connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("MailchimpSource", () => {
+  test("Source with connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MailchimpSource({
-      profile: MailchimpConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: MailchimpConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       apiVersion: MailchimpApiVersion.V3,
-      object: 'campaigns',
+      object: "campaigns",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const expectedConnectorType = MailchimpConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source with connector Arn', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source with connector Arn", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MailchimpSource({
-      profile: MailchimpConnectorProfile.fromConnectionProfileArn(stack, 'TestProfile', 'arn:aws:appflow:region:account-id:connectorprofile/TestProfile'),
+      profile: MailchimpConnectorProfile.fromConnectionProfileArn(
+        stack,
+        "TestProfile",
+        "arn:aws:appflow:region:account-id:connectorprofile/TestProfile",
+      ),
       apiVersion: MailchimpApiVersion.V3,
-      object: 'campaigns',
+      object: "campaigns",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const expectedConnectorType = MailchimpConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
-
-
 });
diff --git a/test/marketo/profile.test.ts b/test/marketo/profile.test.ts
index e27b2f7f..51f0929f 100644
--- a/test/marketo/profile.test.ts
+++ b/test/marketo/profile.test.ts
@@ -2,200 +2,208 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import {
-  MarketoConnectorProfile, MarketoInstanceUrlBuilder,
-} from '../../src';
+import { MarketoConnectorProfile, MarketoInstanceUrlBuilder } from "../../src";
 
-describe('MarketoConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("MarketoConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new MarketoConnectorProfile(stack, 'TestProfile', {
+    new MarketoConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           clientCredentials: {
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
-      instanceUrl: MarketoInstanceUrlBuilder.buildFromAccount('marketoAccount'),
+      instanceUrl: MarketoInstanceUrlBuilder.buildFromAccount("marketoAccount"),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Marketo',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Marketo: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Marketo",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Marketo: {
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+            },
           },
-        },
-        ConnectorProfileProperties: {
-          Marketo: {
-            InstanceUrl: 'https://marketoAccount.mktorest.com',
+          ConnectorProfileProperties: {
+            Marketo: {
+              InstanceUrl: "https://marketoAccount.mktorest.com",
+            },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new MarketoConnectorProfile(stack, 'TestProfile', {
+    new MarketoConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           clientCredentials: {
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Marketo',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Marketo: {
-            AccessToken: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Marketo",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Marketo: {
+              AccessToken: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:accessToken::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientId: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientId::}}',
+              },
+              ClientId: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientId::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientSecret: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientSecret::}}',
+              },
+              ClientSecret: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientSecret::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          Marketo: {
-            InstanceUrl: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:instanceUrl::}}',
+          ConnectorProfileProperties: {
+            Marketo: {
+              InstanceUrl: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:instanceUrl::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
         },
       },
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new MarketoConnectorProfile(stack, 'TestProfile', {
+    new MarketoConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           clientCredentials: {
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
       Properties: {
-        ConnectionMode: 'Public',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'Marketo',
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Marketo",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             Marketo: {
               AccessToken: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:accessToken::}}',
+                    ":SecretString:accessToken::}}",
                   ],
                 ],
               },
               ClientId: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientId::}}',
+                    ":SecretString:clientId::}}",
                   ],
                 ],
               },
               ClientSecret: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientSecret::}}',
+                    ":SecretString:clientSecret::}}",
                   ],
                 ],
               },
@@ -204,14 +212,14 @@ describe('MarketoConnectorProfile', () => {
           ConnectorProfileProperties: {
             Marketo: {
               InstanceUrl: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:instanceUrl::}}',
+                    ":SecretString:instanceUrl::}}",
                   ],
                 ],
               },
@@ -219,16 +227,10 @@ describe('MarketoConnectorProfile', () => {
           },
         },
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      DependsOn: [
-        'TestKey4CACAF33',
-      ],
+      DependsOn: ["TestKey4CACAF33"],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/marketo/source.test.ts b/test/marketo/source.test.ts
index 6abefb0d..90a064df 100644
--- a/test/marketo/source.test.ts
+++ b/test/marketo/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,80 +14,95 @@ import {
   MarketoSource,
   OnDemandFlow,
   S3Destination,
-} from '../../src';
+} from "../../src";
 
-describe('MarketoSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("MarketoSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MarketoSource({
-      profile: MarketoConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: MarketoConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const expectedConnectorType = MarketoConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MarketoSource({
-      profile: MarketoConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: MarketoConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       SourceFlowConfig: {
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'Marketo',
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "Marketo",
         SourceConnectorProperties: {
           Marketo: {
-            Object: 'dummy-object',
+            Object: "dummy-object",
           },
         },
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const profile = new MarketoConnectorProfile(stack, 'TestProfile', {
+    const profile = new MarketoConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           clientCredentials: {
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
       },
-      instanceUrl: MarketoInstanceUrlBuilder.buildFromAccount('marketoAccount'),
+      instanceUrl: MarketoInstanceUrlBuilder.buildFromAccount("marketoAccount"),
     });
 
     const source = new MarketoSource({
       profile: profile,
-      object: 'dummy-object',
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -95,44 +110,43 @@ describe('MarketoSource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Marketo',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "Marketo",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           Marketo: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+            AccessToken: "accessToken",
+            ClientId: "clientId",
+            ClientSecret: "clientSecret",
           },
         },
         ConnectorProfileProperties: {
           Marketo: {
-            InstanceUrl: 'https://marketoAccount.mktorest.com',
+            InstanceUrl: "https://marketoAccount.mktorest.com",
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         SourceFlowConfig: {
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'Marketo',
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "Marketo",
           SourceConnectorProperties: {
             Marketo: {
-              Object: 'dummy-object',
+              Object: "dummy-object",
             },
           },
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/microsoftsharepointonline/profile.test.ts b/test/microsoftsharepointonline/profile.test.ts
index ed86e963..55659422 100644
--- a/test/microsoftsharepointonline/profile.test.ts
+++ b/test/microsoftsharepointonline/profile.test.ts
@@ -2,251 +2,260 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import {
-  MicrosoftSharepointOnlineConnectorProfile,
-} from '../../src';
+import { MicrosoftSharepointOnlineConnectorProfile } from "../../src";
 
-describe('MicrosoftSharepointOnlineConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("MicrosoftSharepointOnlineConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new MicrosoftSharepointOnlineConnectorProfile(stack, 'TestProfile', {
+    new MicrosoftSharepointOnlineConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
+            clientId: SecretValue.unsafePlainText("clientId"),
+            clientSecret: SecretValue.unsafePlainText("clientSecret"),
           },
         },
         endpoints: {
-          token: 'https://login.microsoftonline.com/common/oauth2/v2.0/token',
+          token: "https://login.microsoftonline.com/common/oauth2/v2.0/token",
         },
       },
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'MicrosoftSharePointOnline',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'OAUTH2',
-            Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "MicrosoftSharePointOnline",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "OAUTH2",
+              Oauth2: {
+                AccessToken: "accessToken",
+                ClientId: "clientId",
+                ClientSecret: "clientSecret",
+                RefreshToken: "refreshToken",
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://login.microsoftonline.com/common/oauth2/v2.0/token',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              OAuth2Properties: {
+                OAuth2GrantType: "AUTHORIZATION_CODE",
+                TokenUrl:
+                  "https://login.microsoftonline.com/common/oauth2/v2.0/token",
+              },
             },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new MicrosoftSharepointOnlineConnectorProfile(stack, 'TestProfile', {
+    new MicrosoftSharepointOnlineConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
         endpoints: {
-          token: secret.secretValueFromJson('tokenUrl').toString(),
+          token: secret.secretValueFromJson("tokenUrl").toString(),
         },
       },
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'MicrosoftSharePointOnline',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          CustomConnector: {
-            AuthenticationType: 'OAUTH2',
-            Oauth2: {
-              AccessToken: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "MicrosoftSharePointOnline",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            CustomConnector: {
+              AuthenticationType: "OAUTH2",
+              Oauth2: {
+                AccessToken: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:accessToken::}}",
+                    ],
                   ],
-                ],
-              },
-              ClientId: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:clientId::}}',
+                },
+                ClientId: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:clientId::}}",
+                    ],
                   ],
-                ],
-              },
-              ClientSecret: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:clientSecret::}}',
+                },
+                ClientSecret: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:clientSecret::}}",
+                    ],
                   ],
-                ],
-              },
-              RefreshToken: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:refreshToken::}}',
+                },
+                RefreshToken: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:refreshToken::}}",
+                    ],
                   ],
-                ],
+                },
               },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          CustomConnector: {
-            OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: {
-                'Fn::Join': [
-                  '',
-                  [
-                    '{{resolve:secretsmanager:',
-                    {
-                      Ref: 'TestSecret16AF87B1',
-                    },
-                    ':SecretString:tokenUrl::}}',
+          ConnectorProfileProperties: {
+            CustomConnector: {
+              OAuth2Properties: {
+                OAuth2GrantType: "AUTHORIZATION_CODE",
+                TokenUrl: {
+                  "Fn::Join": [
+                    "",
+                    [
+                      "{{resolve:secretsmanager:",
+                      {
+                        Ref: "TestSecret16AF87B1",
+                      },
+                      ":SecretString:tokenUrl::}}",
+                    ],
                   ],
-                ],
+                },
               },
             },
           },
         },
       },
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new MicrosoftSharepointOnlineConnectorProfile(stack, 'TestProfile', {
+    new MicrosoftSharepointOnlineConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
-            clientId: secret.secretValueFromJson('clientId'),
-            clientSecret: secret.secretValueFromJson('clientSecret'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
+            clientId: secret.secretValueFromJson("clientId"),
+            clientSecret: secret.secretValueFromJson("clientSecret"),
           },
         },
         endpoints: {
-          token: secret.secretValueFromJson('tokenUrl').toString(),
+          token: secret.secretValueFromJson("tokenUrl").toString(),
         },
       },
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
       Properties: {
-        ConnectionMode: 'Public',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'CustomConnector',
-        ConnectorLabel: 'MicrosoftSharePointOnline',
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "CustomConnector",
+        ConnectorLabel: "MicrosoftSharePointOnline",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             CustomConnector: {
-              AuthenticationType: 'OAUTH2',
+              AuthenticationType: "OAUTH2",
               Oauth2: {
                 AccessToken: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:accessToken::}}',
+                      ":SecretString:accessToken::}}",
                     ],
                   ],
                 },
                 ClientId: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:clientId::}}',
+                      ":SecretString:clientId::}}",
                     ],
                   ],
                 },
                 ClientSecret: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:clientSecret::}}',
+                      ":SecretString:clientSecret::}}",
                     ],
                   ],
                 },
                 RefreshToken: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:refreshToken::}}',
+                      ":SecretString:refreshToken::}}",
                     ],
                   ],
                 },
@@ -256,16 +265,16 @@ describe('MicrosoftSharepointOnlineConnectorProfile', () => {
           ConnectorProfileProperties: {
             CustomConnector: {
               OAuth2Properties: {
-                OAuth2GrantType: 'AUTHORIZATION_CODE',
+                OAuth2GrantType: "AUTHORIZATION_CODE",
                 TokenUrl: {
-                  'Fn::Join': [
-                    '',
+                  "Fn::Join": [
+                    "",
                     [
-                      '{{resolve:secretsmanager:',
+                      "{{resolve:secretsmanager:",
                       {
-                        Ref: 'TestSecret16AF87B1',
+                        Ref: "TestSecret16AF87B1",
                       },
-                      ':SecretString:tokenUrl::}}',
+                      ":SecretString:tokenUrl::}}",
                     ],
                   ],
                 },
@@ -274,16 +283,10 @@ describe('MicrosoftSharepointOnlineConnectorProfile', () => {
           },
         },
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      DependsOn: [
-        'TestKey4CACAF33',
-      ],
+      DependsOn: ["TestKey4CACAF33"],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/microsoftsharepointonline/source.test.ts b/test/microsoftsharepointonline/source.test.ts
index 790f83ea..b0dd4975 100644
--- a/test/microsoftsharepointonline/source.test.ts
+++ b/test/microsoftsharepointonline/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,72 +14,96 @@ import {
   MicrosoftSharepointOnlineSource,
   OnDemandFlow,
   S3Destination,
-} from '../../src';
+} from "../../src";
 
-describe('MicrosoftSharepointOnlineSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("MicrosoftSharepointOnlineSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MicrosoftSharepointOnlineSource({
-      profile: MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile:
+        MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileName(
+          stack,
+          "TestProfile",
+          "dummy-profile",
+        ),
       object: {
-        site: 'sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5',
-        entities: ['drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE'],
+        site: "sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5",
+        entities: [
+          "drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE",
+        ],
       },
       apiVersion: MicrosoftSharepointOnlineApiVersion.V1,
     });
 
-    const expectedConnectorType = MicrosoftSharepointOnlineConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    const expectedConnectorType =
+      MicrosoftSharepointOnlineConnectorType.instance;
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new MicrosoftSharepointOnlineSource({
-      profile: MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile:
+        MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileName(
+          stack,
+          "TestProfile",
+          "dummy-profile",
+        ),
       object: {
-        site: 'sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5',
-        entities: ['drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE'],
+        site: "sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5",
+        entities: [
+          "drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE",
+        ],
       },
       apiVersion: MicrosoftSharepointOnlineApiVersion.V1,
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ApiVersion: 'v1.0',
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'CustomConnector',
+        ApiVersion: "v1.0",
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "CustomConnector",
         SourceConnectorProperties: {
           CustomConnector: {
-            EntityName: 'sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5',
+            EntityName:
+              "sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5",
             CustomProperties: {
-              subEntities: '["drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE"]',
+              subEntities:
+                '["drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE"]',
             },
           },
         },
@@ -87,57 +111,63 @@ describe('MicrosoftSharepointOnlineSource', () => {
       Tasks: [
         {
           ConnectorOperator: {
-            CustomConnector: 'NO_OP',
+            CustomConnector: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const profile = new MicrosoftSharepointOnlineConnectorProfile(stack, 'TestProfile', {
-      oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
-        flow: {
-          refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
-            clientId: SecretValue.unsafePlainText('clientId'),
-            clientSecret: SecretValue.unsafePlainText('clientSecret'),
+    const profile = new MicrosoftSharepointOnlineConnectorProfile(
+      stack,
+      "TestProfile",
+      {
+        oAuth: {
+          accessToken: SecretValue.unsafePlainText("accessToken"),
+          flow: {
+            refreshTokenGrant: {
+              refreshToken: SecretValue.unsafePlainText("refreshToken"),
+              clientId: SecretValue.unsafePlainText("clientId"),
+              clientSecret: SecretValue.unsafePlainText("clientSecret"),
+            },
+          },
+          endpoints: {
+            token: "https://login.microsoftonline.com/common/oauth2/v2.0/token",
           },
-        },
-        endpoints: {
-          token: 'https://login.microsoftonline.com/common/oauth2/v2.0/token',
         },
       },
-    });
+    );
 
     const source = new MicrosoftSharepointOnlineSource({
       profile: profile,
       object: {
-        site: 'sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5',
-        entities: ['drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE'],
+        site: "sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5",
+        entities: [
+          "drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE",
+        ],
       },
       apiVersion: MicrosoftSharepointOnlineApiVersion.V1,
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -145,58 +175,61 @@ describe('MicrosoftSharepointOnlineSource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'CustomConnector',
-      ConnectorLabel: 'MicrosoftSharePointOnline',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "CustomConnector",
+      ConnectorLabel: "MicrosoftSharePointOnline",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           CustomConnector: {
-            AuthenticationType: 'OAUTH2',
+            AuthenticationType: "OAUTH2",
             Oauth2: {
-              AccessToken: 'accessToken',
-              ClientId: 'clientId',
-              ClientSecret: 'clientSecret',
-              RefreshToken: 'refreshToken',
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+              RefreshToken: "refreshToken",
             },
           },
         },
         ConnectorProfileProperties: {
           CustomConnector: {
             OAuth2Properties: {
-              OAuth2GrantType: 'AUTHORIZATION_CODE',
-              TokenUrl: 'https://login.microsoftonline.com/common/oauth2/v2.0/token',
+              OAuth2GrantType: "AUTHORIZATION_CODE",
+              TokenUrl:
+                "https://login.microsoftonline.com/common/oauth2/v2.0/token",
             },
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         DestinationFlowConfigList: [
           {
-            ConnectorType: 'S3',
+            ConnectorType: "S3",
             DestinationConnectorProperties: {
               S3: {
                 BucketName: {
-                  Ref: 'TestBucket560B80BC',
+                  Ref: "TestBucket560B80BC",
                 },
               },
             },
           },
         ],
-        FlowName: 'TestStackTestFlow32CDAF42',
+        FlowName: "TestStackTestFlow32CDAF42",
         SourceFlowConfig: {
-          ApiVersion: 'v1.0',
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'CustomConnector',
+          ApiVersion: "v1.0",
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "CustomConnector",
           SourceConnectorProperties: {
             CustomConnector: {
-              EntityName: 'sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5',
+              EntityName:
+                "sites/dummysite.sharepoint.com,3f42g340-bc23-4a31-b7e5-722e57c39cb8,5bbc39fb-2b17-423b-a007-40ca508389a5",
               CustomProperties: {
-                subEntities: '["drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE"]',
+                subEntities:
+                  '["drives/b!fcPDltwTLSougEJuDFjE?U5qHuXbkzlvSaA5oNoMW4tB0y6mebcx9m-ckwA9KtKE"]',
               },
             },
           },
@@ -204,26 +237,26 @@ describe('MicrosoftSharepointOnlineSource', () => {
         Tasks: [
           {
             ConnectorOperator: {
-              CustomConnector: 'NO_OP',
+              CustomConnector: "NO_OP",
             },
             SourceFields: [],
             TaskProperties: [
               {
-                Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-                Value: '[]',
+                Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+                Value: "[]",
               },
             ],
-            TaskType: 'Map_all',
+            TaskType: "Map_all",
           },
         ],
         TriggerConfig: {
-          TriggerType: 'OnDemand',
+          TriggerType: "OnDemand",
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
diff --git a/test/s3/destination.test.ts b/test/s3/destination.test.ts
index 1da6d7ac..d72407af 100644
--- a/test/s3/destination.test.ts
+++ b/test/s3/destination.test.ts
@@ -2,10 +2,10 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Database } from '@aws-cdk/aws-glue-alpha';
-import { Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Database } from "@aws-cdk/aws-glue-alpha";
+import { Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   OnDemandFlow,
   S3Destination,
@@ -15,21 +15,21 @@ import {
   S3OutputAggregationType,
   S3OutputFileType,
   S3OutputFilePrefixHierarchy,
-  S3OutputFilePrefixFormat, S3OutputFilePrefixType,
-} from '../../src';
+  S3OutputFilePrefixFormat,
+  S3OutputFilePrefixType,
+} from "../../src";
 
-describe('S3Destination', () => {
+describe("S3Destination", () => {
+  test("Destination", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-  test('Destination', () => {
-    const stack = new Stack(undefined, 'TestStack');
-
-    const bucket = new Bucket(stack, 'TestBucket', {
-      bucketName: 'test-bucket',
+    const bucket = new Bucket(stack, "TestBucket", {
+      bucketName: "test-bucket",
     });
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'prefix',
+      prefix: "prefix",
     });
 
     const destination = new S3Destination({
@@ -49,34 +49,44 @@ describe('S3Destination', () => {
         preserveSourceDataTypes: true,
       },
       catalog: {
-        database: new Database(stack, 'TestDatabase', { databaseName: 'testdb' }),
-        tablePrefix: 'db_prefix',
+        database: new Database(stack, "TestDatabase", {
+          databaseName: "testdb",
+        }),
+        tablePrefix: "db_prefix",
       },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const expectedConnectorType = S3ConnectorType.instance;
-    expect(destination.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(destination.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(destination.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(destination.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(destination.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(destination.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(destination.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(destination.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Flow destination template is valid', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Flow destination template is valid", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const bucket = new Bucket(stack, 'TestBucket', {
-      bucketName: 'test-bucket',
+    const bucket = new Bucket(stack, "TestBucket", {
+      bucketName: "test-bucket",
     });
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'prefix',
+      prefix: "prefix",
     });
 
     const destination = new S3Destination({
@@ -96,38 +106,37 @@ describe('S3Destination', () => {
         preserveSourceDataTypes: true,
       },
       catalog: {
-        database: new Database(stack, 'TestDatabase', { databaseName: 'testdb' }),
-        tablePrefix: 'db_prefix',
+        database: new Database(stack, "TestDatabase", {
+          databaseName: "testdb",
+        }),
+        tablePrefix: "db_prefix",
       },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const template = Template.fromStack(stack);
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
               S3OutputFormatConfig: {
                 AggregationConfig: {
-                  AggregationType: 'None',
+                  AggregationType: "None",
                 },
-                FileType: 'PARQUET',
+                FileType: "PARQUET",
                 PrefixConfig: {
-                  PathPrefixHierarchy: [
-                    'SCHEMA_VERSION',
-                    'EXECUTION_ID',
-                  ],
-                  PrefixType: 'FILENAME',
+                  PathPrefixHierarchy: ["SCHEMA_VERSION", "EXECUTION_ID"],
+                  PrefixType: "FILENAME",
                 },
                 PreserveSourceDataTyping: true,
               },
@@ -137,62 +146,42 @@ describe('S3Destination', () => {
       ],
       MetadataCatalogConfig: {
         GlueDataCatalog: {
-          TablePrefix: 'db_prefix',
+          TablePrefix: "db_prefix",
         },
       },
     });
   });
 
-  test('Only known S3OutputAggregationType specified', () => {
-    const expectedTypes = [
-      'None',
-      'SingleFile',
-    ];
+  test("Only known S3OutputAggregationType specified", () => {
+    const expectedTypes = ["None", "SingleFile"];
     const actualTypes = Object.values(S3OutputAggregationType);
 
     expect(actualTypes).toEqual(expectedTypes);
   });
 
-  test('Only known S3OutputFileType specified', () => {
-    const expectedTypes = [
-      'CSV',
-      'JSON',
-      'PARQUET',
-    ];
+  test("Only known S3OutputFileType specified", () => {
+    const expectedTypes = ["CSV", "JSON", "PARQUET"];
     const actualTypes = Object.values(S3OutputFileType);
 
     expect(actualTypes).toEqual(expectedTypes);
   });
 
-  test('Only known S3OutputFilePrefixHierarchy specified', () => {
-    const expectedTypes = [
-      'EXECUTION_ID',
-      'SCHEMA_VERSION',
-    ];
+  test("Only known S3OutputFilePrefixHierarchy specified", () => {
+    const expectedTypes = ["EXECUTION_ID", "SCHEMA_VERSION"];
     const actualTypes = Object.values(S3OutputFilePrefixHierarchy);
 
     expect(actualTypes).toEqual(expectedTypes);
   });
 
-  test('Only known S3OutputFilePrefixFormat specified', () => {
-    const expectedTypes = [
-      'DAY',
-      'HOUR',
-      'MINUTE',
-      'MONTH',
-      'YEAR',
-    ];
+  test("Only known S3OutputFilePrefixFormat specified", () => {
+    const expectedTypes = ["DAY", "HOUR", "MINUTE", "MONTH", "YEAR"];
     const actualTypes = Object.values(S3OutputFilePrefixFormat);
 
     expect(actualTypes).toEqual(expectedTypes);
   });
 
-  test('Only known S3OutputFilePrefixType specified', () => {
-    const expectedTypes = [
-      'FILENAME',
-      'PATH',
-      'PATH_AND_FILE',
-    ];
+  test("Only known S3OutputFilePrefixType specified", () => {
+    const expectedTypes = ["FILENAME", "PATH", "PATH_AND_FILE"];
     const actualTypes = Object.values(S3OutputFilePrefixType);
 
     expect(actualTypes).toEqual(expectedTypes);
diff --git a/test/s3/s3.test.ts b/test/s3/s3.test.ts
index a4d63029..5d398c0b 100644
--- a/test/s3/s3.test.ts
+++ b/test/s3/s3.test.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Database } from '@aws-cdk/aws-glue-alpha';
-import { Stack } from 'aws-cdk-lib';
-import { Template, Match } from 'aws-cdk-lib/assertions';
-import { Role } from 'aws-cdk-lib/aws-iam';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Database } from "@aws-cdk/aws-glue-alpha";
+import { Stack } from "aws-cdk-lib";
+import { Template, Match } from "aws-cdk-lib/assertions";
+import { Role } from "aws-cdk-lib/aws-iam";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   Mapping,
   OnDemandFlow,
@@ -17,25 +17,25 @@ import {
   S3Source,
   S3OutputFilePrefixFormat,
   S3OutputFilePrefixHierarchy,
-} from '../../src';
+} from "../../src";
 
-describe('S3 Flow tests', () => {
-  test('Source and Destination with a bucket', () => {
+describe("S3 Flow tests", () => {
+  test("Source and Destination with a bucket", () => {
     const stack = new Stack(undefined, undefined);
-    const bucket = new Bucket(stack, 'TestBucket', {
-      bucketName: 'test-bucket',
+    const bucket = new Bucket(stack, "TestBucket", {
+      bucketName: "test-bucket",
     });
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'prefix',
+      prefix: "prefix",
     });
 
     const destination = new S3Destination({
       location: { bucket },
     });
 
-    new OnDemandFlow(stack, 'testFlow', {
+    new OnDemandFlow(stack, "testFlow", {
       source: source,
       destination,
       mappings: [Mapping.mapAll()],
@@ -43,63 +43,63 @@ describe('S3 Flow tests', () => {
 
     const template = Template.fromStack(stack);
 
-    template.resourceCountIs('AWS::S3::Bucket', 1);
-    template.resourceCountIs('AWS::AppFlow::Flow', 1);
+    template.resourceCountIs("AWS::S3::Bucket", 1);
+    template.resourceCountIs("AWS::AppFlow::Flow", 1);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'testFlow',
+      FlowName: "testFlow",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: 'prefix',
+            BucketPrefix: "prefix",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Destination with complex formatting ', () => {
+  test("Destination with complex formatting ", () => {
     const stack = new Stack(undefined, undefined);
 
-    const bucket = Bucket.fromBucketName(stack, 'TestBucket', 'test-bucket');
+    const bucket = Bucket.fromBucketName(stack, "TestBucket", "test-bucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'source-prefix',
+      prefix: "source-prefix",
       format: {
         type: S3InputFileType.JSON,
       },
@@ -120,78 +120,78 @@ describe('S3 Flow tests', () => {
       },
     });
 
-    new OnDemandFlow(stack, 'testFlow', {
+    new OnDemandFlow(stack, "testFlow", {
       source: source,
       destination,
-      mappings: [Mapping.mapAll({ exclude: ['field1', 'field2'] })],
+      mappings: [Mapping.mapAll({ exclude: ["field1", "field2"] })],
     });
 
     const template = Template.fromStack(stack);
 
-    template.resourceCountIs('AWS::S3::Bucket', 0);
-    template.resourceCountIs('AWS::AppFlow::Flow', 1);
+    template.resourceCountIs("AWS::S3::Bucket", 0);
+    template.resourceCountIs("AWS::AppFlow::Flow", 1);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
-              BucketName: 'test-bucket',
+              BucketName: "test-bucket",
               S3OutputFormatConfig: {
                 AggregationConfig: {
-                  AggregationType: 'SingleFile',
+                  AggregationType: "SingleFile",
                   TargetFileSize: 1024,
                 },
-                FileType: 'CSV',
+                FileType: "CSV",
                 PrefixConfig: {
-                  PathPrefixHierarchy: ['SCHEMA_VERSION'],
-                  PrefixFormat: 'HOUR',
+                  PathPrefixHierarchy: ["SCHEMA_VERSION"],
+                  PrefixFormat: "HOUR",
                 },
               },
             },
           },
         },
       ],
-      FlowName: 'testFlow',
+      FlowName: "testFlow",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
-            BucketName: 'test-bucket',
-            BucketPrefix: 'source-prefix',
+            BucketName: "test-bucket",
+            BucketPrefix: "source-prefix",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
               Value: '["field1","field2"]',
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Destination with catalog', () => {
+  test("Destination with catalog", () => {
     const stack = new Stack(undefined, undefined);
 
-    const bucket = Bucket.fromBucketName(stack, 'TestBucket', 'test-bucket');
+    const bucket = Bucket.fromBucketName(stack, "TestBucket", "test-bucket");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'source-prefix',
+      prefix: "source-prefix",
       format: {
         type: S3InputFileType.JSON,
       },
@@ -200,31 +200,31 @@ describe('S3 Flow tests', () => {
     const destination = new S3Destination({
       location: { bucket: bucket },
       catalog: {
-        database: new Database(stack, 'TestDb', {
-          databaseName: 'testdb',
+        database: new Database(stack, "TestDb", {
+          databaseName: "testdb",
         }),
-        tablePrefix: 'tablePrefix',
+        tablePrefix: "tablePrefix",
       },
     });
 
-    new OnDemandFlow(stack, 'testFlow', {
+    new OnDemandFlow(stack, "testFlow", {
       source: source,
       destination,
-      mappings: [Mapping.mapAll({ exclude: ['field1', 'field2'] })],
+      mappings: [Mapping.mapAll({ exclude: ["field1", "field2"] })],
     });
 
     const template = Template.fromStack(stack);
 
-    template.resourceCountIs('AWS::S3::Bucket', 0);
+    template.resourceCountIs("AWS::S3::Bucket", 0);
 
-    template.resourceCountIs('AWS::AppFlow::Flow', 1);
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.resourceCountIs("AWS::AppFlow::Flow", 1);
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
-              BucketName: 'test-bucket',
+              BucketName: "test-bucket",
             },
           },
         },
@@ -232,145 +232,145 @@ describe('S3 Flow tests', () => {
       MetadataCatalogConfig: {
         GlueDataCatalog: {
           DatabaseName: {
-            Ref: 'TestDb6EF03243',
+            Ref: "TestDb6EF03243",
           },
           RoleArn: {
-            'Fn::GetAtt': ['testFlowGlueAccessRole34DC638A', 'Arn'],
+            "Fn::GetAtt": ["testFlowGlueAccessRole34DC638A", "Arn"],
           },
-          TablePrefix: 'tablePrefix',
+          TablePrefix: "tablePrefix",
         },
       },
-      FlowName: 'testFlow',
+      FlowName: "testFlow",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
-            BucketName: 'test-bucket',
-            BucketPrefix: 'source-prefix',
+            BucketName: "test-bucket",
+            BucketPrefix: "source-prefix",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
               Value: '["field1","field2"]',
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
 
-    template.resourceCountIs('AWS::IAM::Role', 1);
-    template.hasResourceProperties('AWS::IAM::Role', {
+    template.resourceCountIs("AWS::IAM::Role", 1);
+    template.hasResourceProperties("AWS::IAM::Role", {
       AssumeRolePolicyDocument: {
         Statement: [
           {
-            Action: 'sts:AssumeRole',
-            Effect: 'Allow',
+            Action: "sts:AssumeRole",
+            Effect: "Allow",
             Principal: {
-              Service: 'appflow.amazonaws.com',
+              Service: "appflow.amazonaws.com",
             },
           },
         ],
       },
     });
 
-    template.resourceCountIs('AWS::IAM::Policy', 1);
-    template.hasResourceProperties('AWS::IAM::Policy', {
+    template.resourceCountIs("AWS::IAM::Policy", 1);
+    template.hasResourceProperties("AWS::IAM::Policy", {
       PolicyDocument: {
         Statement: [
           {
             Action: Match.arrayEquals([
-              'glue:BatchCreatePartition',
-              'glue:CreatePartitionIndex',
-              'glue:DeleteDatabase',
-              'glue:GetTableVersions',
-              'glue:GetPartitions',
-              'glue:BatchDeletePartition',
-              'glue:DeleteTableVersion',
-              'glue:UpdateTable',
-              'glue:DeleteTable',
-              'glue:DeletePartitionIndex',
-              'glue:GetTableVersion',
-              'glue:CreatePartition',
-              'glue:UntagResource',
-              'glue:UpdatePartition',
-              'glue:TagResource',
-              'glue:UpdateDatabase',
-              'glue:CreateTable',
-              'glue:BatchUpdatePartition',
-              'glue:GetTables',
-              'glue:BatchGetPartition',
-              'glue:GetDatabases',
-              'glue:GetPartitionIndexes',
-              'glue:GetTable',
-              'glue:GetDatabase',
-              'glue:GetPartition',
-              'glue:CreateDatabase',
-              'glue:BatchDeleteTableVersion',
-              'glue:BatchDeleteTable',
-              'glue:DeletePartition',
+              "glue:BatchCreatePartition",
+              "glue:CreatePartitionIndex",
+              "glue:DeleteDatabase",
+              "glue:GetTableVersions",
+              "glue:GetPartitions",
+              "glue:BatchDeletePartition",
+              "glue:DeleteTableVersion",
+              "glue:UpdateTable",
+              "glue:DeleteTable",
+              "glue:DeletePartitionIndex",
+              "glue:GetTableVersion",
+              "glue:CreatePartition",
+              "glue:UntagResource",
+              "glue:UpdatePartition",
+              "glue:TagResource",
+              "glue:UpdateDatabase",
+              "glue:CreateTable",
+              "glue:BatchUpdatePartition",
+              "glue:GetTables",
+              "glue:BatchGetPartition",
+              "glue:GetDatabases",
+              "glue:GetPartitionIndexes",
+              "glue:GetTable",
+              "glue:GetDatabase",
+              "glue:GetPartition",
+              "glue:CreateDatabase",
+              "glue:BatchDeleteTableVersion",
+              "glue:BatchDeleteTable",
+              "glue:DeletePartition",
             ]),
-            Effect: 'Allow',
+            Effect: "Allow",
             Resource: Match.arrayEquals([
               {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    'arn:',
+                    "arn:",
                     {
-                      Ref: 'AWS::Partition',
+                      Ref: "AWS::Partition",
                     },
-                    ':glue:',
-                    { Ref: 'AWS::Region' },
-                    ':',
-                    { Ref: 'AWS::AccountId' },
-                    ':catalog',
+                    ":glue:",
+                    { Ref: "AWS::Region" },
+                    ":",
+                    { Ref: "AWS::AccountId" },
+                    ":catalog",
                   ],
                 ],
               },
               {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    'arn:',
+                    "arn:",
                     {
-                      Ref: 'AWS::Partition',
+                      Ref: "AWS::Partition",
                     },
-                    ':glue:',
-                    { Ref: 'AWS::Region' },
-                    ':',
-                    { Ref: 'AWS::AccountId' },
-                    ':database/',
-                    { Ref: 'TestDb6EF03243' },
+                    ":glue:",
+                    { Ref: "AWS::Region" },
+                    ":",
+                    { Ref: "AWS::AccountId" },
+                    ":database/",
+                    { Ref: "TestDb6EF03243" },
                   ],
                 ],
               },
               {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    'arn:',
+                    "arn:",
                     {
-                      Ref: 'AWS::Partition',
+                      Ref: "AWS::Partition",
                     },
-                    ':glue:',
-                    { Ref: 'AWS::Region' },
-                    ':',
-                    { Ref: 'AWS::AccountId' },
-                    ':table/',
-                    { Ref: 'TestDb6EF03243' },
-                    '/tablePrefix*',
+                    ":glue:",
+                    { Ref: "AWS::Region" },
+                    ":",
+                    { Ref: "AWS::AccountId" },
+                    ":table/",
+                    { Ref: "TestDb6EF03243" },
+                    "/tablePrefix*",
                   ],
                 ],
               },
@@ -380,27 +380,27 @@ describe('S3 Flow tests', () => {
       },
     });
 
-    template.resourceCountIs('AWS::Glue::Database', 1);
+    template.resourceCountIs("AWS::Glue::Database", 1);
   });
 
-  test('Destination with catalog with custom role and imported values', () => {
+  test("Destination with catalog with custom role and imported values", () => {
     const stack = new Stack(undefined, undefined);
 
-    const bucket = Bucket.fromBucketName(stack, 'TestBucket', 'test-bucket');
+    const bucket = Bucket.fromBucketName(stack, "TestBucket", "test-bucket");
     const database = Database.fromDatabaseArn(
       stack,
-      'TestDb',
+      "TestDb",
       stack.formatArn({
-        service: 'glue',
-        resource: 'database',
-        resourceName: 'test-db',
+        service: "glue",
+        resource: "database",
+        resourceName: "test-db",
       }),
     );
-    const role = Role.fromRoleName(stack, 'TestRole', 'test-role');
+    const role = Role.fromRoleName(stack, "TestRole", "test-role");
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'source-prefix',
+      prefix: "source-prefix",
       format: {
         type: S3InputFileType.JSON,
       },
@@ -411,79 +411,79 @@ describe('S3 Flow tests', () => {
       catalog: {
         role,
         database,
-        tablePrefix: 'tablePrefix',
+        tablePrefix: "tablePrefix",
       },
     });
 
-    new OnDemandFlow(stack, 'testFlow', {
+    new OnDemandFlow(stack, "testFlow", {
       source: source,
       destination,
-      mappings: [Mapping.mapAll({ exclude: ['field1', 'field2'] })],
+      mappings: [Mapping.mapAll({ exclude: ["field1", "field2"] })],
     });
 
     const template = Template.fromStack(stack);
 
-    template.resourceCountIs('AWS::S3::Bucket', 0);
-    template.resourceCountIs('AWS::AppFlow::Flow', 1);
-    template.resourceCountIs('AWS::IAM::Role', 0);
-    template.resourceCountIs('AWS::Glue::Database', 0);
+    template.resourceCountIs("AWS::S3::Bucket", 0);
+    template.resourceCountIs("AWS::AppFlow::Flow", 1);
+    template.resourceCountIs("AWS::IAM::Role", 0);
+    template.resourceCountIs("AWS::Glue::Database", 0);
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
-              BucketName: 'test-bucket',
+              BucketName: "test-bucket",
             },
           },
         },
       ],
       MetadataCatalogConfig: {
         GlueDataCatalog: {
-          DatabaseName: 'test-db',
+          DatabaseName: "test-db",
           RoleArn: {
-            'Fn::Join': [
-              '',
+            "Fn::Join": [
+              "",
               [
-                'arn:',
-                { Ref: 'AWS::Partition' },
-                ':iam::',
-                { Ref: 'AWS::AccountId' },
-                ':role/test-role',
+                "arn:",
+                { Ref: "AWS::Partition" },
+                ":iam::",
+                { Ref: "AWS::AccountId" },
+                ":role/test-role",
               ],
             ],
           },
-          TablePrefix: 'tablePrefix',
+          TablePrefix: "tablePrefix",
         },
       },
-      FlowName: 'testFlow',
+      FlowName: "testFlow",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
-            BucketName: 'test-bucket',
-            BucketPrefix: 'source-prefix',
+            BucketName: "test-bucket",
+            BucketPrefix: "source-prefix",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
               Value: '["field1","field2"]',
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
diff --git a/test/s3/source.test.ts b/test/s3/source.test.ts
index aa1ac185..91e24f0e 100644
--- a/test/s3/source.test.ts
+++ b/test/s3/source.test.ts
@@ -2,27 +2,29 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 import {
   OnDemandFlow,
   S3Destination,
-  Mapping, S3Source, S3InputFileType, S3ConnectorType,
-} from '../../src';
-
-describe('S3Source', () => {
-
-  test('Source', () => {
-    const stack = new Stack(undefined, 'TestStack');
-
-    const bucket = new Bucket(stack, 'TestBucket', {
-      bucketName: 'test-bucket',
+  Mapping,
+  S3Source,
+  S3InputFileType,
+  S3ConnectorType,
+} from "../../src";
+
+describe("S3Source", () => {
+  test("Source", () => {
+    const stack = new Stack(undefined, "TestStack");
+
+    const bucket = new Bucket(stack, "TestBucket", {
+      bucketName: "test-bucket",
     });
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'prefix',
+      prefix: "prefix",
       format: {
         type: S3InputFileType.CSV,
       },
@@ -34,30 +36,37 @@ describe('S3Source', () => {
       },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-
     const expectedConnectorType = S3ConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Flow source template is valid', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Flow source template is valid", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const bucket = new Bucket(stack, 'TestBucket', {
-      bucketName: 'test-bucket',
+    const bucket = new Bucket(stack, "TestBucket", {
+      bucketName: "test-bucket",
     });
 
     const source = new S3Source({
       bucket: bucket,
-      prefix: 'prefix',
+      prefix: "prefix",
       format: {
         type: S3InputFileType.CSV,
       },
@@ -69,24 +78,24 @@ describe('S3Source', () => {
       },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const template = Template.fromStack(stack);
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: 'prefix',
+            BucketPrefix: "prefix",
             S3InputFormatConfig: {
-              S3InputFileType: 'CSV',
+              S3InputFileType: "CSV",
             },
           },
         },
@@ -94,11 +103,8 @@ describe('S3Source', () => {
     });
   });
 
-  test('Only known S3InputFileType specified', () => {
-    const expectedTypes = [
-      'CSV',
-      'JSON',
-    ];
+  test("Only known S3InputFileType specified", () => {
+    const expectedTypes = ["CSV", "JSON"];
     const actualTypes = Object.values(S3InputFileType);
 
     expect(actualTypes).toEqual(expectedTypes);
diff --git a/test/salesforce/destination.test.ts b/test/salesforce/destination.test.ts
index f02b5d8d..173ae021 100644
--- a/test/salesforce/destination.test.ts
+++ b/test/salesforce/destination.test.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
@@ -17,75 +17,90 @@ import {
   SalesforceDataTransferApi,
   SalesforceDestination,
   WriteOperation,
-} from '../../src';
+} from "../../src";
 
-describe('SalesforceDestination', () => {
-
-  test('Destination with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("SalesforceDestination", () => {
+  test("Destination with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const destination = new SalesforceDestination({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'Account',
+      profile: SalesforceConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "Account",
       operation: WriteOperation.insert(),
     });
 
     const expectedConnectorType = SalesforceConnectorType.instance;
-    expect(destination.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(destination.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(destination.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(destination.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(destination.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(destination.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(destination.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(destination.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Destination in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Destination in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const s3Bucket = new Bucket(stack, 'TestBucket', {});
+    const s3Bucket = new Bucket(stack, "TestBucket", {});
     const source = new S3Source({
       bucket: s3Bucket,
-      prefix: '',
+      prefix: "",
       format: {
         type: S3InputFileType.JSON,
       },
     });
 
     const destination = new SalesforceDestination({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: SalesforceConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       dataTransferApi: SalesforceDataTransferApi.REST_SYNC,
-      object: 'Account',
+      object: "Account",
       operation: WriteOperation.insert(),
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorProfileName: 'dummy-profile',
-          ConnectorType: 'Salesforce',
+          ConnectorProfileName: "dummy-profile",
+          ConnectorType: "Salesforce",
           DestinationConnectorProperties: {
             Salesforce: {
-              DataTransferApi: 'REST_SYNC',
-              Object: 'Account',
-              WriteOperationType: 'INSERT',
+              DataTransferApi: "REST_SYNC",
+              Object: "Account",
+              WriteOperationType: "INSERT",
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: '',
+            BucketPrefix: "",
             S3InputFormatConfig: {
-              S3InputFileType: 'JSON',
+              S3InputFileType: "JSON",
             },
           },
         },
@@ -93,46 +108,49 @@ describe('SalesforceDestination', () => {
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Destination for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Destination for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce/client');
-    const profile = new SalesforceConnectorProfile(stack, 'TestProfile', {
+    const secret = Secret.fromSecretNameV2(
+      stack,
+      "TestSecret",
+      "appflow/salesforce/client",
+    );
+    const profile = new SalesforceConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
             client: secret,
           },
         },
       },
-      instanceUrl: 'https://instance-id.develop.my.salesforce.com',
+      instanceUrl: "https://instance-id.develop.my.salesforce.com",
     });
 
-
-    const s3Bucket = new Bucket(stack, 'TestBucket', {});
+    const s3Bucket = new Bucket(stack, "TestBucket", {});
     const source = new S3Source({
       bucket: s3Bucket,
-      prefix: '',
+      prefix: "",
       format: {
         type: S3InputFileType.JSON,
       },
@@ -141,81 +159,81 @@ describe('SalesforceDestination', () => {
     const destination = new SalesforceDestination({
       profile: profile,
       dataTransferApi: SalesforceDataTransferApi.REST_SYNC,
-      object: 'Account',
+      object: "Account",
       operation: WriteOperation.insert(),
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const template = Template.fromStack(stack);
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           Salesforce: {
-            AccessToken: 'accessToken',
+            AccessToken: "accessToken",
             ClientCredentialsArn: {
-              'Fn::Join': [
-                '',
+              "Fn::Join": [
+                "",
                 [
-                  'arn:',
+                  "arn:",
                   {
-                    Ref: 'AWS::Partition',
+                    Ref: "AWS::Partition",
                   },
-                  ':secretsmanager:',
+                  ":secretsmanager:",
                   {
-                    Ref: 'AWS::Region',
+                    Ref: "AWS::Region",
                   },
-                  ':',
+                  ":",
                   {
-                    Ref: 'AWS::AccountId',
+                    Ref: "AWS::AccountId",
                   },
-                  ':secret:appflow/salesforce/client',
+                  ":secret:appflow/salesforce/client",
                 ],
               ],
             },
-            RefreshToken: 'refreshToken',
+            RefreshToken: "refreshToken",
           },
         },
         ConnectorProfileProperties: {
           Salesforce: {
-            InstanceUrl: 'https://instance-id.develop.my.salesforce.com',
+            InstanceUrl: "https://instance-id.develop.my.salesforce.com",
           },
         },
       },
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Salesforce',
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "Salesforce",
     });
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'Salesforce',
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "Salesforce",
           DestinationConnectorProperties: {
             Salesforce: {
-              DataTransferApi: 'REST_SYNC',
-              Object: 'Account',
-              WriteOperationType: 'INSERT',
+              DataTransferApi: "REST_SYNC",
+              Object: "Account",
+              WriteOperationType: "INSERT",
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ConnectorType: 'S3',
+        ConnectorType: "S3",
         SourceConnectorProperties: {
           S3: {
             BucketName: {
-              Ref: 'TestBucket560B80BC',
+              Ref: "TestBucket560B80BC",
             },
-            BucketPrefix: '',
+            BucketPrefix: "",
             S3InputFormatConfig: {
-              S3InputFileType: 'JSON',
+              S3InputFileType: "JSON",
             },
           },
         },
@@ -223,20 +241,20 @@ describe('SalesforceDestination', () => {
       Tasks: [
         {
           ConnectorOperator: {
-            S3: 'NO_OP',
+            S3: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
diff --git a/test/salesforce/profile.test.ts b/test/salesforce/profile.test.ts
index d4c47be9..245065ec 100644
--- a/test/salesforce/profile.test.ts
+++ b/test/salesforce/profile.test.ts
@@ -2,184 +2,191 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import { SalesforceConnectorProfile } from '../../src';
+import { SalesforceConnectorProfile } from "../../src";
 
-describe('SalesforceConnectorProfileProps', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("SalesforceConnectorProfileProps", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const clientSecret = new Secret(stack, 'TestSecret');
+    const clientSecret = new Secret(stack, "TestSecret");
 
-    new SalesforceConnectorProfile(stack, 'TestProfile', {
+    new SalesforceConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
             client: clientSecret,
           },
         },
       },
-      instanceUrl: 'https://instance-id.develop.my.salesforce.com',
+      instanceUrl: "https://instance-id.develop.my.salesforce.com",
     });
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Salesforce',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Salesforce: {
-            AccessToken: 'accessToken',
-            ClientCredentialsArn: {
-              Ref: 'TestSecret16AF87B1',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Salesforce",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Salesforce: {
+              AccessToken: "accessToken",
+              ClientCredentialsArn: {
+                Ref: "TestSecret16AF87B1",
+              },
+              RefreshToken: "refreshToken",
             },
-            RefreshToken: 'refreshToken',
           },
-        },
-        ConnectorProfileProperties: {
-          Salesforce: {
-            InstanceUrl: 'https://instance-id.develop.my.salesforce.com',
+          ConnectorProfileProperties: {
+            Salesforce: {
+              InstanceUrl: "https://instance-id.develop.my.salesforce.com",
+            },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new SalesforceConnectorProfile(stack, 'TestProfile', {
+    new SalesforceConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
             client: secret,
           },
         },
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Salesforce: {
-            AccessToken: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Salesforce: {
+              AccessToken: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:accessToken::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientCredentialsArn: {
-              Ref: 'TestSecret16AF87B1',
-            },
-            RefreshToken: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:refreshToken::}}',
+              },
+              ClientCredentialsArn: {
+                Ref: "TestSecret16AF87B1",
+              },
+              RefreshToken: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:refreshToken::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          Salesforce: {
-            InstanceUrl: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:instanceUrl::}}',
+          ConnectorProfileProperties: {
+            Salesforce: {
+              InstanceUrl: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:instanceUrl::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
         },
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Salesforce",
       },
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Salesforce',
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new SalesforceConnectorProfile(stack, 'TestProfile', {
+    new SalesforceConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
+        accessToken: secret.secretValueFromJson("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: secret.secretValueFromJson('refreshToken'),
+            refreshToken: secret.secretValueFromJson("refreshToken"),
             client: secret,
           },
         },
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
-      DependsOn: [
-        'TestKey4CACAF33',
-        'TestSecret16AF87B1',
-      ],
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
+      DependsOn: ["TestKey4CACAF33", "TestSecret16AF87B1"],
       Properties: {
-        ConnectionMode: 'Public',
+        ConnectionMode: "Public",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             Salesforce: {
               AccessToken: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:accessToken::}}',
+                    ":SecretString:accessToken::}}",
                   ],
                 ],
               },
               ClientCredentialsArn: {
-                Ref: 'TestSecret16AF87B1',
+                Ref: "TestSecret16AF87B1",
               },
               RefreshToken: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:refreshToken::}}',
+                    ":SecretString:refreshToken::}}",
                   ],
                 ],
               },
@@ -188,31 +195,27 @@ describe('SalesforceConnectorProfileProps', () => {
           ConnectorProfileProperties: {
             Salesforce: {
               InstanceUrl: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:instanceUrl::}}',
+                    ":SecretString:instanceUrl::}}",
                   ],
                 ],
               },
             },
           },
         },
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'Salesforce',
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Salesforce",
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      Type: 'AWS::AppFlow::ConnectorProfile',
+      Type: "AWS::AppFlow::ConnectorProfile",
     });
   });
-
 });
diff --git a/test/salesforce/source.test.ts b/test/salesforce/source.test.ts
index 59a6a415..525a8546 100644
--- a/test/salesforce/source.test.ts
+++ b/test/salesforce/source.test.ts
@@ -2,11 +2,11 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 import {
   Mapping,
   OnDemandFlow,
@@ -15,217 +15,236 @@ import {
   SalesforceDataTransferApi,
   SalesforceSource,
   SalesforceConnectorType,
-} from '../../src';
+} from "../../src";
 
-describe('SalesforceSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("SalesforceSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new SalesforceSource({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: SalesforceConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       dataTransferApi: SalesforceDataTransferApi.REST_SYNC,
       enableDynamicFieldUpdate: true,
-      apiVersion: '1',
+      apiVersion: "1",
       includeDeletedRecords: true,
-      object: 'Account',
+      object: "Account",
     });
 
     const expectedConnectorType = SalesforceConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new SalesforceSource({
-      profile: SalesforceConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
+      profile: SalesforceConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
       dataTransferApi: SalesforceDataTransferApi.REST_SYNC,
       enableDynamicFieldUpdate: true,
-      apiVersion: '1',
+      apiVersion: "1",
       includeDeletedRecords: true,
-      object: 'Account',
+      object: "Account",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ApiVersion: '1',
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'Salesforce',
+        ApiVersion: "1",
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "Salesforce",
         SourceConnectorProperties: {
           Salesforce: {
-            DataTransferApi: 'REST_SYNC',
+            DataTransferApi: "REST_SYNC",
             EnableDynamicFieldUpdate: true,
             IncludeDeletedRecords: true,
-            Object: 'Account',
+            Object: "Account",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            Salesforce: 'NO_OP',
+            Salesforce: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const secret = Secret.fromSecretNameV2(stack, 'TestSecret', 'appflow/salesforce/client');
-    const profile = new SalesforceConnectorProfile(stack, 'TestProfile', {
+    const secret = Secret.fromSecretNameV2(
+      stack,
+      "TestSecret",
+      "appflow/salesforce/client",
+    );
+    const profile = new SalesforceConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
         flow: {
           refreshTokenGrant: {
-            refreshToken: SecretValue.unsafePlainText('refreshToken'),
+            refreshToken: SecretValue.unsafePlainText("refreshToken"),
             client: secret,
           },
         },
       },
-      instanceUrl: 'https://instance-id.develop.my.salesforce.com',
+      instanceUrl: "https://instance-id.develop.my.salesforce.com",
     });
 
     const source = new SalesforceSource({
       profile: profile,
       dataTransferApi: SalesforceDataTransferApi.REST_SYNC,
       enableDynamicFieldUpdate: true,
-      apiVersion: '1',
+      apiVersion: "1",
       includeDeletedRecords: true,
-      object: 'Account',
+      object: "Account",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
     const template = Template.fromStack(stack);
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           Salesforce: {
-            AccessToken: 'accessToken',
+            AccessToken: "accessToken",
             ClientCredentialsArn: {
-              'Fn::Join': [
-                '',
+              "Fn::Join": [
+                "",
                 [
-                  'arn:',
+                  "arn:",
                   {
-                    Ref: 'AWS::Partition',
+                    Ref: "AWS::Partition",
                   },
-                  ':secretsmanager:',
+                  ":secretsmanager:",
                   {
-                    Ref: 'AWS::Region',
+                    Ref: "AWS::Region",
                   },
-                  ':',
+                  ":",
                   {
-                    Ref: 'AWS::AccountId',
+                    Ref: "AWS::AccountId",
                   },
-                  ':secret:appflow/salesforce/client',
+                  ":secret:appflow/salesforce/client",
                 ],
               ],
             },
-            RefreshToken: 'refreshToken',
+            RefreshToken: "refreshToken",
           },
         },
         ConnectorProfileProperties: {
           Salesforce: {
-            InstanceUrl: 'https://instance-id.develop.my.salesforce.com',
+            InstanceUrl: "https://instance-id.develop.my.salesforce.com",
           },
         },
       },
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Salesforce',
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "Salesforce",
     });
 
-    template.hasResourceProperties('AWS::AppFlow::Flow', {
+    template.hasResourceProperties("AWS::AppFlow::Flow", {
       DestinationFlowConfigList: [
         {
-          ConnectorType: 'S3',
+          ConnectorType: "S3",
           DestinationConnectorProperties: {
             S3: {
               BucketName: {
-                Ref: 'TestBucket560B80BC',
+                Ref: "TestBucket560B80BC",
               },
             },
           },
         },
       ],
-      FlowName: 'TestStackTestFlow32CDAF42',
+      FlowName: "TestStackTestFlow32CDAF42",
       SourceFlowConfig: {
-        ApiVersion: '1',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'Salesforce',
+        ApiVersion: "1",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Salesforce",
         SourceConnectorProperties: {
           Salesforce: {
-            DataTransferApi: 'REST_SYNC',
+            DataTransferApi: "REST_SYNC",
             EnableDynamicFieldUpdate: true,
             IncludeDeletedRecords: true,
-            Object: 'Account',
+            Object: "Account",
           },
         },
       },
       Tasks: [
         {
           ConnectorOperator: {
-            Salesforce: 'NO_OP',
+            Salesforce: "NO_OP",
           },
           SourceFields: [],
           TaskProperties: [
             {
-              Key: 'EXCLUDE_SOURCE_FIELDS_LIST',
-              Value: '[]',
+              Key: "EXCLUDE_SOURCE_FIELDS_LIST",
+              Value: "[]",
             },
           ],
-          TaskType: 'Map_all',
+          TaskType: "Map_all",
         },
       ],
       TriggerConfig: {
-        TriggerType: 'OnDemand',
+        TriggerType: "OnDemand",
       },
     });
   });
diff --git a/test/slack/profile.test.ts b/test/slack/profile.test.ts
index 42571eae..55f6cf51 100644
--- a/test/slack/profile.test.ts
+++ b/test/slack/profile.test.ts
@@ -2,188 +2,196 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import {
-  SlackConnectorProfile, SlackInstanceUrlBuilder,
-} from '../../src';
+import { SlackConnectorProfile, SlackInstanceUrlBuilder } from "../../src";
 
-describe('SlackConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("SlackConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new SlackConnectorProfile(stack, 'TestProfile', {
+    new SlackConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
-        clientId: SecretValue.unsafePlainText('clientId'),
-        clientSecret: SecretValue.unsafePlainText('clientSecret'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
+        clientId: SecretValue.unsafePlainText("clientId"),
+        clientSecret: SecretValue.unsafePlainText("clientSecret"),
       },
-      instanceUrl: SlackInstanceUrlBuilder.buildFromWorkspace('slackWorkspace'),
+      instanceUrl: SlackInstanceUrlBuilder.buildFromWorkspace("slackWorkspace"),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Slack',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Slack: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Slack",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Slack: {
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+            },
           },
-        },
-        ConnectorProfileProperties: {
-          Slack: {
-            InstanceUrl: 'https://slackWorkspace.slack.com',
+          ConnectorProfileProperties: {
+            Slack: {
+              InstanceUrl: "https://slackWorkspace.slack.com",
+            },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new SlackConnectorProfile(stack, 'TestProfile', {
+    new SlackConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+        accessToken: secret.secretValueFromJson("accessToken"),
+        clientId: secret.secretValueFromJson("clientId"),
+        clientSecret: secret.secretValueFromJson("clientSecret"),
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Slack',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Slack: {
-            AccessToken: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Slack",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Slack: {
+              AccessToken: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:accessToken::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientId: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientId::}}',
+              },
+              ClientId: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientId::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientSecret: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientSecret::}}',
+              },
+              ClientSecret: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientSecret::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          Slack: {
-            InstanceUrl: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:instanceUrl::}}',
+          ConnectorProfileProperties: {
+            Slack: {
+              InstanceUrl: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:instanceUrl::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
         },
       },
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new SlackConnectorProfile(stack, 'TestProfile', {
+    new SlackConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+        accessToken: secret.secretValueFromJson("accessToken"),
+        clientId: secret.secretValueFromJson("clientId"),
+        clientSecret: secret.secretValueFromJson("clientSecret"),
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
       Properties: {
-        ConnectionMode: 'Public',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'Slack',
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Slack",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             Slack: {
               AccessToken: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:accessToken::}}',
+                    ":SecretString:accessToken::}}",
                   ],
                 ],
               },
               ClientId: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientId::}}',
+                    ":SecretString:clientId::}}",
                   ],
                 ],
               },
               ClientSecret: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientSecret::}}',
+                    ":SecretString:clientSecret::}}",
                   ],
                 ],
               },
@@ -192,14 +200,14 @@ describe('SlackConnectorProfile', () => {
           ConnectorProfileProperties: {
             Slack: {
               InstanceUrl: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:instanceUrl::}}',
+                    ":SecretString:instanceUrl::}}",
                   ],
                 ],
               },
@@ -207,16 +215,10 @@ describe('SlackConnectorProfile', () => {
           },
         },
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      DependsOn: [
-        'TestKey4CACAF33',
-      ],
+      DependsOn: ["TestKey4CACAF33"],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/slack/source.test.ts b/test/slack/source.test.ts
index 28162f82..e54bf46e 100644
--- a/test/slack/source.test.ts
+++ b/test/slack/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,76 +14,91 @@ import {
   OnDemandFlow,
   S3Destination,
   SlackConnectorType,
-} from '../../src';
+} from "../../src";
 
-describe('SlackSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("SlackSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new SlackSource({
-      profile: SlackConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: SlackConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const expectedConnectorType = SlackConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new SlackSource({
-      profile: SlackConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: SlackConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       SourceFlowConfig: {
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'Slack',
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "Slack",
         SourceConnectorProperties: {
           Slack: {
-            Object: 'dummy-object',
+            Object: "dummy-object",
           },
         },
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const profile = new SlackConnectorProfile(stack, 'TestProfile', {
+    const profile = new SlackConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
-        clientId: SecretValue.unsafePlainText('clientId'),
-        clientSecret: SecretValue.unsafePlainText('clientSecret'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
+        clientId: SecretValue.unsafePlainText("clientId"),
+        clientSecret: SecretValue.unsafePlainText("clientSecret"),
       },
-      instanceUrl: SlackInstanceUrlBuilder.buildFromWorkspace('slackWorkspace'),
+      instanceUrl: SlackInstanceUrlBuilder.buildFromWorkspace("slackWorkspace"),
     });
 
     const source = new SlackSource({
       profile: profile,
-      object: 'dummy-object',
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -91,44 +106,43 @@ describe('SlackSource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Slack',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "Slack",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           Slack: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+            AccessToken: "accessToken",
+            ClientId: "clientId",
+            ClientSecret: "clientSecret",
           },
         },
         ConnectorProfileProperties: {
           Slack: {
-            InstanceUrl: 'https://slackWorkspace.slack.com',
+            InstanceUrl: "https://slackWorkspace.slack.com",
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         SourceFlowConfig: {
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'Slack',
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "Slack",
           SourceConnectorProperties: {
             Slack: {
-              Object: 'dummy-object',
+              Object: "dummy-object",
             },
           },
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/zendesk/profile.test.ts b/test/zendesk/profile.test.ts
index c2051955..199a6c69 100644
--- a/test/zendesk/profile.test.ts
+++ b/test/zendesk/profile.test.ts
@@ -2,188 +2,196 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Key } from 'aws-cdk-lib/aws-kms';
-import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Key } from "aws-cdk-lib/aws-kms";
+import { Secret } from "aws-cdk-lib/aws-secretsmanager";
 
-import {
-  ZendeskConnectorProfile, ZendeskInstanceUrlBuilder,
-} from '../../src';
+import { ZendeskConnectorProfile, ZendeskInstanceUrlBuilder } from "../../src";
 
-describe('ZendeskConnectorProfile', () => {
-
-  test('OAuth2 profile with direct client credentials exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+describe("ZendeskConnectorProfile", () => {
+  test("OAuth2 profile with direct client credentials exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    new ZendeskConnectorProfile(stack, 'TestProfile', {
+    new ZendeskConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
-        clientId: SecretValue.unsafePlainText('clientId'),
-        clientSecret: SecretValue.unsafePlainText('clientSecret'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
+        clientId: SecretValue.unsafePlainText("clientId"),
+        clientSecret: SecretValue.unsafePlainText("clientSecret"),
       },
-      instanceUrl: ZendeskInstanceUrlBuilder.buildFromAccount('zendeskAccount'),
+      instanceUrl: ZendeskInstanceUrlBuilder.buildFromAccount("zendeskAccount"),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Zendesk',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Zendesk: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Zendesk",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Zendesk: {
+              AccessToken: "accessToken",
+              ClientId: "clientId",
+              ClientSecret: "clientSecret",
+            },
           },
-        },
-        ConnectorProfileProperties: {
-          Zendesk: {
-            InstanceUrl: 'https://zendeskAccount.zendesk.com',
+          ConnectorProfileProperties: {
+            Zendesk: {
+              InstanceUrl: "https://zendeskAccount.zendesk.com",
+            },
           },
         },
       },
-    });
+    );
   });
 
-  test('OAuth2 profile with client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
+  test("OAuth2 profile with client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new ZendeskConnectorProfile(stack, 'TestProfile', {
+    new ZendeskConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+        accessToken: secret.secretValueFromJson("accessToken"),
+        clientId: secret.secretValueFromJson("clientId"),
+        clientSecret: secret.secretValueFromJson("clientSecret"),
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Zendesk',
-      ConnectorProfileConfig: {
-        ConnectorProfileCredentials: {
-          Zendesk: {
-            AccessToken: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:accessToken::}}',
+    Template.fromStack(stack).hasResourceProperties(
+      "AWS::AppFlow::ConnectorProfile",
+      {
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Zendesk",
+        ConnectorProfileConfig: {
+          ConnectorProfileCredentials: {
+            Zendesk: {
+              AccessToken: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:accessToken::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientId: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientId::}}',
+              },
+              ClientId: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientId::}}",
+                  ],
                 ],
-              ],
-            },
-            ClientSecret: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:clientSecret::}}',
+              },
+              ClientSecret: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:clientSecret::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
-        },
-        ConnectorProfileProperties: {
-          Zendesk: {
-            InstanceUrl: {
-              'Fn::Join': [
-                '',
-                [
-                  '{{resolve:secretsmanager:',
-                  {
-                    Ref: 'TestSecret16AF87B1',
-                  },
-                  ':SecretString:instanceUrl::}}',
+          ConnectorProfileProperties: {
+            Zendesk: {
+              InstanceUrl: {
+                "Fn::Join": [
+                  "",
+                  [
+                    "{{resolve:secretsmanager:",
+                    {
+                      Ref: "TestSecret16AF87B1",
+                    },
+                    ":SecretString:instanceUrl::}}",
+                  ],
                 ],
-              ],
+              },
             },
           },
         },
       },
-    });
+    );
   });
 
+  test("OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack", () => {
+    const stack = new Stack(undefined, "TestStack", {
+      env: { account: "12345678", region: "dummy" },
+    });
 
-  test('OAuth2 profile with a dedicated KMS key and client credentials as secret elements exists in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack', { env: { account: '12345678', region: 'dummy' } });
-
-    const key = new Key(stack, 'TestKey');
+    const key = new Key(stack, "TestKey");
 
-    const secret = new Secret(stack, 'TestSecret');
+    const secret = new Secret(stack, "TestSecret");
 
-    new ZendeskConnectorProfile(stack, 'TestProfile', {
+    new ZendeskConnectorProfile(stack, "TestProfile", {
       key: key,
       oAuth: {
-        accessToken: secret.secretValueFromJson('accessToken'),
-        clientId: secret.secretValueFromJson('clientId'),
-        clientSecret: secret.secretValueFromJson('clientSecret'),
+        accessToken: secret.secretValueFromJson("accessToken"),
+        clientId: secret.secretValueFromJson("clientId"),
+        clientSecret: secret.secretValueFromJson("clientSecret"),
       },
-      instanceUrl: secret.secretValueFromJson('instanceUrl').toString(),
+      instanceUrl: secret.secretValueFromJson("instanceUrl").toString(),
     });
 
-    Template.fromStack(stack).hasResource('AWS::AppFlow::ConnectorProfile', {
+    Template.fromStack(stack).hasResource("AWS::AppFlow::ConnectorProfile", {
       Properties: {
-        ConnectionMode: 'Public',
-        ConnectorProfileName: 'TestProfile',
-        ConnectorType: 'Zendesk',
+        ConnectionMode: "Public",
+        ConnectorProfileName: "TestProfile",
+        ConnectorType: "Zendesk",
         ConnectorProfileConfig: {
           ConnectorProfileCredentials: {
             Zendesk: {
               AccessToken: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:accessToken::}}',
+                    ":SecretString:accessToken::}}",
                   ],
                 ],
               },
               ClientId: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientId::}}',
+                    ":SecretString:clientId::}}",
                   ],
                 ],
               },
               ClientSecret: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:clientSecret::}}',
+                    ":SecretString:clientSecret::}}",
                   ],
                 ],
               },
@@ -192,14 +200,14 @@ describe('ZendeskConnectorProfile', () => {
           ConnectorProfileProperties: {
             Zendesk: {
               InstanceUrl: {
-                'Fn::Join': [
-                  '',
+                "Fn::Join": [
+                  "",
                   [
-                    '{{resolve:secretsmanager:',
+                    "{{resolve:secretsmanager:",
                     {
-                      Ref: 'TestSecret16AF87B1',
+                      Ref: "TestSecret16AF87B1",
                     },
-                    ':SecretString:instanceUrl::}}',
+                    ":SecretString:instanceUrl::}}",
                   ],
                 ],
               },
@@ -207,16 +215,10 @@ describe('ZendeskConnectorProfile', () => {
           },
         },
         KMSArn: {
-          'Fn::GetAtt': [
-            'TestKey4CACAF33',
-            'Arn',
-          ],
+          "Fn::GetAtt": ["TestKey4CACAF33", "Arn"],
         },
       },
-      DependsOn: [
-        'TestKey4CACAF33',
-      ],
+      DependsOn: ["TestKey4CACAF33"],
     });
   });
-
-});
\ No newline at end of file
+});
diff --git a/test/zendesk/source.test.ts b/test/zendesk/source.test.ts
index 4db58c31..4f626061 100644
--- a/test/zendesk/source.test.ts
+++ b/test/zendesk/source.test.ts
@@ -2,9 +2,9 @@
 Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 SPDX-License-Identifier: Apache-2.0
 */
-import { SecretValue, Stack } from 'aws-cdk-lib';
-import { Template } from 'aws-cdk-lib/assertions';
-import { Bucket } from 'aws-cdk-lib/aws-s3';
+import { SecretValue, Stack } from "aws-cdk-lib";
+import { Template } from "aws-cdk-lib/assertions";
+import { Bucket } from "aws-cdk-lib/aws-s3";
 
 import {
   Mapping,
@@ -14,76 +14,91 @@ import {
   OnDemandFlow,
   S3Destination,
   ZendeskConnectorType,
-} from '../../src';
+} from "../../src";
 
-describe('ZendeskSource', () => {
-
-  test('Source with only connector name', () => {
-    const stack = new Stack(undefined, 'TestStack');
+describe("ZendeskSource", () => {
+  test("Source with only connector name", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new ZendeskSource({
-      profile: ZendeskConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: ZendeskConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const expectedConnectorType = ZendeskConnectorType.instance;
-    expect(source.connectorType.asProfileConnectorLabel).toEqual(expectedConnectorType.asProfileConnectorLabel);
-    expect(source.connectorType.asProfileConnectorType).toEqual(expectedConnectorType.asProfileConnectorType);
-    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(expectedConnectorType.asTaskConnectorOperatorOrigin);
-    expect(source.connectorType.isCustom).toEqual(expectedConnectorType.isCustom);
+    expect(source.connectorType.asProfileConnectorLabel).toEqual(
+      expectedConnectorType.asProfileConnectorLabel,
+    );
+    expect(source.connectorType.asProfileConnectorType).toEqual(
+      expectedConnectorType.asProfileConnectorType,
+    );
+    expect(source.connectorType.asTaskConnectorOperatorOrigin).toEqual(
+      expectedConnectorType.asTaskConnectorOperatorOrigin,
+    );
+    expect(source.connectorType.isCustom).toEqual(
+      expectedConnectorType.isCustom,
+    );
   });
 
-  test('Source in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
     const source = new ZendeskSource({
-      profile: ZendeskConnectorProfile.fromConnectionProfileName(stack, 'TestProfile', 'dummy-profile'),
-      object: 'dummy-object',
+      profile: ZendeskConnectorProfile.fromConnectionProfileName(
+        stack,
+        "TestProfile",
+        "dummy-profile",
+      ),
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
     });
 
-    Template.fromStack(stack).hasResourceProperties('AWS::AppFlow::Flow', {
+    Template.fromStack(stack).hasResourceProperties("AWS::AppFlow::Flow", {
       SourceFlowConfig: {
-        ConnectorProfileName: 'dummy-profile',
-        ConnectorType: 'Zendesk',
+        ConnectorProfileName: "dummy-profile",
+        ConnectorType: "Zendesk",
         SourceConnectorProperties: {
           Zendesk: {
-            Object: 'dummy-object',
+            Object: "dummy-object",
           },
         },
       },
     });
   });
 
-  test('Source for dummy-profile in a Flow is in the stack', () => {
-    const stack = new Stack(undefined, 'TestStack');
+  test("Source for dummy-profile in a Flow is in the stack", () => {
+    const stack = new Stack(undefined, "TestStack");
 
-    const profile = new ZendeskConnectorProfile(stack, 'TestProfile', {
+    const profile = new ZendeskConnectorProfile(stack, "TestProfile", {
       oAuth: {
-        accessToken: SecretValue.unsafePlainText('accessToken'),
-        clientId: SecretValue.unsafePlainText('clientId'),
-        clientSecret: SecretValue.unsafePlainText('clientSecret'),
+        accessToken: SecretValue.unsafePlainText("accessToken"),
+        clientId: SecretValue.unsafePlainText("clientId"),
+        clientSecret: SecretValue.unsafePlainText("clientSecret"),
       },
-      instanceUrl: ZendeskInstanceUrlBuilder.buildFromAccount('zendeskAccount'),
+      instanceUrl: ZendeskInstanceUrlBuilder.buildFromAccount("zendeskAccount"),
     });
 
     const source = new ZendeskSource({
       profile: profile,
-      object: 'dummy-object',
+      object: "dummy-object",
     });
 
     const destination = new S3Destination({
-      location: { bucket: new Bucket(stack, 'TestBucket') },
+      location: { bucket: new Bucket(stack, "TestBucket") },
     });
 
-    new OnDemandFlow(stack, 'TestFlow', {
+    new OnDemandFlow(stack, "TestFlow", {
       source: source,
       destination: destination,
       mappings: [Mapping.mapAll()],
@@ -91,44 +106,43 @@ describe('ZendeskSource', () => {
 
     const template = Template.fromStack(stack);
 
-    template.hasResourceProperties('AWS::AppFlow::ConnectorProfile', {
-      ConnectionMode: 'Public',
-      ConnectorProfileName: 'TestProfile',
-      ConnectorType: 'Zendesk',
+    template.hasResourceProperties("AWS::AppFlow::ConnectorProfile", {
+      ConnectionMode: "Public",
+      ConnectorProfileName: "TestProfile",
+      ConnectorType: "Zendesk",
       ConnectorProfileConfig: {
         ConnectorProfileCredentials: {
           Zendesk: {
-            AccessToken: 'accessToken',
-            ClientId: 'clientId',
-            ClientSecret: 'clientSecret',
+            AccessToken: "accessToken",
+            ClientId: "clientId",
+            ClientSecret: "clientSecret",
           },
         },
         ConnectorProfileProperties: {
           Zendesk: {
-            InstanceUrl: 'https://zendeskAccount.zendesk.com',
+            InstanceUrl: "https://zendeskAccount.zendesk.com",
           },
         },
       },
     });
 
-    template.hasResource('AWS::AppFlow::Flow', {
+    template.hasResource("AWS::AppFlow::Flow", {
       Properties: {
         SourceFlowConfig: {
-          ConnectorProfileName: 'TestProfile',
-          ConnectorType: 'Zendesk',
+          ConnectorProfileName: "TestProfile",
+          ConnectorType: "Zendesk",
           SourceConnectorProperties: {
             Zendesk: {
-              Object: 'dummy-object',
+              Object: "dummy-object",
             },
           },
         },
       },
       DependsOn: [
-        'TestBucketPolicyBA12ED38',
-        'TestBucket560B80BC',
-        'TestProfile45C36389',
+        "TestBucketPolicyBA12ED38",
+        "TestBucket560B80BC",
+        "TestProfile45C36389",
       ],
     });
   });
-
-});
\ No newline at end of file
+});