diff --git a/web-common/src/features/sources/modal/AddDataForm.svelte b/web-common/src/features/sources/modal/AddDataForm.svelte
index ee081dc8f34..6fd4e15213c 100644
--- a/web-common/src/features/sources/modal/AddDataForm.svelte
+++ b/web-common/src/features/sources/modal/AddDataForm.svelte
@@ -16,6 +16,7 @@
import {
CONNECTION_TAB_OPTIONS,
type ClickHouseConnectorType,
+ type GCSAuthMethod,
} from "./constants";
import { getInitialFormValuesFromProperties } from "../sourceUtils";
@@ -131,6 +132,8 @@
let clickhouseDsnForm;
let clickhouseShowSaveAnyway: boolean = false;
+ let gcsAuthMethod: GCSAuthMethod = "credentials";
+
$: isSubmitDisabled = (() => {
if (onlyDsn || connectionTab === "dsn") {
// DSN form: check required DSN properties
@@ -392,6 +395,7 @@
paramsErrors={$paramsErrors}
{onStringInputChange}
{handleFileUpload}
+ bind:gcsAuthMethod
/>
{:else}
@@ -448,33 +452,50 @@
{/if}
- {#if isMultiStepConnector && stepState.step === "connector"}
-
- {/if}
-
@@ -482,32 +503,48 @@
- {#if dsnError || paramsError || clickhouseError}
-
+ {#if dsnError || paramsError || clickhouseError}
+
+ {/if}
+
+
- {/if}
-
-
-
-
+
+ {#if isMultiStepConnector && $connectorStepStore.step === "connector"}
+
+ Already connected?
+
+ {/if}
+
+
+
+
+
diff --git a/web-common/src/features/sources/modal/GCSMultiStepForm.svelte b/web-common/src/features/sources/modal/GCSMultiStepForm.svelte
index e007489218a..b9dc9574224 100644
--- a/web-common/src/features/sources/modal/GCSMultiStepForm.svelte
+++ b/web-common/src/features/sources/modal/GCSMultiStepForm.svelte
@@ -14,7 +14,7 @@
export let onStringInputChange: (e: Event) => void;
export let handleFileUpload: (file: File) => Promise;
- let gcsAuthMethod: GCSAuthMethod = "credentials";
+ export let gcsAuthMethod: GCSAuthMethod = "credentials";
const filteredParamsProperties = properties;
diff --git a/web-common/src/features/sources/modal/NeedHelpText.svelte b/web-common/src/features/sources/modal/NeedHelpText.svelte
index d03cedd42e1..394e963a4ae 100644
--- a/web-common/src/features/sources/modal/NeedHelpText.svelte
+++ b/web-common/src/features/sources/modal/NeedHelpText.svelte
@@ -1,27 +1,45 @@
Help
-
- Need help connecting to {connector.displayName}? Check out our documentation
- for detailed instructions.
-
-
-
- How to connect to {connector.displayName}
-
-
-
+ {#if stepState.step === "connector"}
+
+ Need help connecting to {connector.displayName}? Check out our
+ documentation for detailed instructions.
+
+
+
+ How to connect to {connector.displayName}
+
+
+
+ {:else}
+
+ Check out our
+ source model documentation
+ for detailed instructions on how to customize up your data source ingestion.
+
+ {/if}
+
{#if connector.displayName === "DuckDB" || connector.displayName === "SQLite"}
diff --git a/web-common/src/features/sources/modal/constants.ts b/web-common/src/features/sources/modal/constants.ts
index 4bffc52825d..42de7223df6 100644
--- a/web-common/src/features/sources/modal/constants.ts
+++ b/web-common/src/features/sources/modal/constants.ts
@@ -17,7 +17,7 @@ export const CONNECTION_TAB_OPTIONS: { value: string; label: string }[] = [
{ value: "dsn", label: "Enter connection string" },
];
-export type GCSAuthMethod = "credentials" | "hmac";
+export type GCSAuthMethod = "credentials" | "hmac" | "public";
export const GCS_AUTH_OPTIONS: {
value: GCSAuthMethod;
@@ -37,6 +37,11 @@ export const GCS_AUTH_OPTIONS: {
description:
"Use HMAC access key and secret for S3-compatible authentication.",
},
+ {
+ value: "public",
+ label: "Public",
+ description: "Access public GCS buckets without authentication.",
+ },
];
// pre-defined order for sources