Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
19eca70
generic multi step auth form
lovincyrus Dec 8, 2025
8207347
inital s3 and azure
lovincyrus Dec 8, 2025
6069771
multi step form renderer
lovincyrus Dec 8, 2025
a44e1b6
exclude name from connector form
lovincyrus Dec 8, 2025
622e74a
reset
lovincyrus Dec 8, 2025
bc49185
bump specs
lovincyrus Dec 8, 2025
cc30bbc
gate multi step configs buttno
lovincyrus Dec 8, 2025
d3b3aed
clean up
lovincyrus Dec 8, 2025
6f7550e
remove unused
lovincyrus Dec 8, 2025
cd9f1eb
lint, prettier
lovincyrus Dec 9, 2025
d8afec0
separate the long constant
lovincyrus Dec 9, 2025
799be75
copy changes
lovincyrus Dec 9, 2025
4baa7eb
clean up s3 connector form
lovincyrus Dec 9, 2025
248efd0
fix multi step connector preview
lovincyrus Dec 9, 2025
3db45ee
fix excluded keys of s3
lovincyrus Dec 9, 2025
adec80b
spacing between preview and help
lovincyrus Dec 9, 2025
edc5601
reorg
lovincyrus Dec 9, 2025
725c7f6
fix azure schema
lovincyrus Dec 9, 2025
f9d4fe8
use public instead of skip in gcs
lovincyrus Dec 9, 2025
e64e75b
public option for object storage connectors
lovincyrus Dec 9, 2025
42cc2e4
unblock public in s3
lovincyrus Dec 9, 2025
883924b
gate save anyway on multi step connector submission
lovincyrus Dec 9, 2025
e98ac7b
import your data right data panel
lovincyrus Dec 9, 2025
1ea7077
import data copy for model step 2
lovincyrus Dec 9, 2025
3a1b34d
gate save anyway on step 2 when import data
lovincyrus Dec 9, 2025
40f14b0
gcs source in yup schema
lovincyrus Dec 9, 2025
e90cd94
dynamic validaton for multi step connectors
lovincyrus Dec 9, 2025
2b885c6
add comments to the fallback schema
lovincyrus Dec 9, 2025
e210dc2
azure and s3 e2e
lovincyrus Dec 9, 2025
d8176fe
update default auth method for azure
lovincyrus Dec 9, 2025
677c0d4
hide save anyway when advacning to the model step for multi step
lovincyrus Dec 9, 2025
4ee86dc
fix e2e
lovincyrus Dec 9, 2025
54c8bac
centralize multi step auth method state to the store
lovincyrus Dec 9, 2025
afad36e
clean up save anyway logic
lovincyrus Dec 9, 2025
eac6185
save anyway e2e
lovincyrus Dec 9, 2025
57091b4
isMultiStepConnectorDisabled
lovincyrus Dec 9, 2025
fb9b3de
reorg public option
lovincyrus Dec 9, 2025
7e9a606
colocate button labels
lovincyrus Dec 9, 2025
ba3f52b
fixes
lovincyrus Dec 9, 2025
1a6f8cc
use onsubmit to fix validation flicker rerender
lovincyrus Dec 11, 2025
b47b774
fix submission for already connected?
lovincyrus Dec 11, 2025
d5e5f68
s3 naming
lovincyrus Dec 12, 2025
754a428
json schema config
lovincyrus Dec 15, 2025
04bcf78
json schema form renderer
lovincyrus Dec 16, 2025
fc5e547
missing placeholder texts
lovincyrus Dec 16, 2025
36e5048
prettier
lovincyrus Dec 16, 2025
86d38c4
fix field spacing
lovincyrus Dec 16, 2025
7896601
individual schemas
lovincyrus Dec 17, 2025
cfe8a37
templates reorg
lovincyrus Dec 17, 2025
0584149
schema driven
lovincyrus Dec 17, 2025
978f093
Revert "schema driven"
lovincyrus Dec 17, 2025
f09c0e6
re-add aws_role_arn
lovincyrus Dec 18, 2025
e3c5a7b
fix auth method revalidation
lovincyrus Dec 18, 2025
8abef71
fix e2e
lovincyrus Dec 18, 2025
aa5248d
fix selected auth method remnant
lovincyrus Dec 18, 2025
c4f0f60
fix continue submission
lovincyrus Dec 18, 2025
cb8bf02
fix lingering save anyway after submission for public option
lovincyrus Dec 18, 2025
c204a2a
clear input fields on auth method change
lovincyrus Dec 18, 2025
827d5ff
explicit group fields
lovincyrus Dec 19, 2025
093fc48
reduce markup dup in the renderer
lovincyrus Dec 19, 2025
6d3e4c8
relocate utils
lovincyrus Dec 19, 2025
49f5c27
lint
lovincyrus Dec 19, 2025
ff3bb9e
move renderer
lovincyrus Dec 19, 2025
d2123ce
extract connector flow into a wrapper
lovincyrus Dec 19, 2025
daaa5d1
initial multi step connector
lovincyrus Dec 22, 2025
90abab4
gcs e2e render source step
lovincyrus Dec 22, 2025
ab5a9cc
preserves auth selection e2e
lovincyrus Dec 22, 2025
776e23c
e2e for public auth option
lovincyrus Dec 22, 2025
7f28ba7
import direction
lovincyrus Dec 23, 2025
ff8997d
fix find radio enum key fallback
lovincyrus Dec 23, 2025
cb2dd8a
remove deadcode
lovincyrus Dec 23, 2025
cd6dc91
schemasafe init
lovincyrus Dec 23, 2025
07f9de7
remova source schema
lovincyrus Dec 23, 2025
83da386
Revert "remova source schema"
lovincyrus Dec 23, 2025
9e5e3f1
Revert "schemasafe init"
lovincyrus Dec 23, 2025
05728a2
rename schema field
lovincyrus Dec 23, 2025
040778b
validation from json schema
lovincyrus Dec 23, 2025
7b37e57
rely on json schema
lovincyrus Dec 23, 2025
a1ef92e
wip
lovincyrus Dec 23, 2025
7065134
remove unused yupschema, lint
lovincyrus Dec 23, 2025
231380a
enforce pattern, error message pattern and format
lovincyrus Dec 23, 2025
cf7ed2d
error message to azure and gcs
lovincyrus Dec 23, 2025
79218fa
lint
lovincyrus Dec 23, 2025
e32e0ab
placeholder
lovincyrus Dec 23, 2025
b5c3b79
schemasafe init
lovincyrus Dec 25, 2025
65b6d58
optional fields will not block form submission, purge during schemasafe
lovincyrus Dec 25, 2025
9ab4fba
revert azure path pattern
lovincyrus Dec 25, 2025
4a248c6
prettier
lovincyrus Dec 25, 2025
9c0b298
reorg normalizeErrors import path
lovincyrus Dec 25, 2025
966672a
prettier
lovincyrus Dec 25, 2025
ecfb079
fix ts
lovincyrus Dec 25, 2025
04b4c2e
rename to ConnectorForm
lovincyrus Jan 5, 2026
507297b
feedback
lovincyrus Jan 5, 2026
cf4bbd1
reset azure form e2e
lovincyrus Jan 5, 2026
a87c609
move form
lovincyrus Jan 5, 2026
3be9e01
fix bindings
lovincyrus Jan 5, 2026
2292fe4
lint, prettier
lovincyrus Jan 6, 2026
db93190
fix e2e
lovincyrus Jan 6, 2026
8ea6ad6
feedback
lovincyrus Jan 6, 2026
c4d3391
add save anyway reactive
lovincyrus Jan 8, 2026
0829ae2
test for hidden save anyway after hmac e2e
lovincyrus Jan 8, 2026
6650560
loosen gcs model name validation
lovincyrus Jan 8, 2026
6bced81
purge auth_method
lovincyrus Jan 8, 2026
a047887
reset connector form when transitioning to model step
lovincyrus Jan 8, 2026
7b89307
types
lovincyrus Jan 8, 2026
8a33891
loosen model name patterns
lovincyrus Jan 8, 2026
5981918
support create_secrets_from_connectors
lovincyrus Jan 8, 2026
72e2801
lint
lovincyrus Jan 8, 2026
9b67d0c
fix model preview content
lovincyrus Jan 9, 2026
9ce6016
reset connector form
lovincyrus Jan 9, 2026
e874526
clear connector config on back
lovincyrus Jan 9, 2026
527728a
fix reset calls
lovincyrus Jan 9, 2026
6bec148
prettier
lovincyrus Jan 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 6 additions & 4 deletions runtime/drivers/azure/azure.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,14 @@ var spec = drivers.Spec{
Secret: true,
},
{
Key: "azure_storage_connection_string",
Type: drivers.StringPropertyType,
Secret: true,
Key: "azure_storage_connection_string",
Type: drivers.StringPropertyType,
DisplayName: "Azure Connection String",
Description: "Azure connection string for storage account",
Placeholder: "Paste your Azure connection string here",
Secret: true,
},
},
// Important: Any edits to the below properties must be accompanied by changes to the client-side form validation schemas.
SourceProperties: []*drivers.PropertySpec{
{
Key: "path",
Expand Down
16 changes: 16 additions & 0 deletions runtime/drivers/duckdb/duckdb.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,14 @@ var spec = drivers.Spec{
Description: "Query to run on DuckDB.",
Placeholder: "select * from table;",
},
{
Key: "create_secrets_from_connectors",
Type: drivers.StringPropertyType,
Required: false,
DisplayName: "Create secrets from connectors",
Description: "Comma-separated connector names to create temporary secrets before executing the SQL.",
NoPrompt: true,
},
},
ImplementsOLAP: true,
}
Expand Down Expand Up @@ -130,6 +138,14 @@ var motherduckSpec = drivers.Spec{
Description: "Query to extract data from MotherDuck.",
Placeholder: "select * from table;",
},
{
Key: "create_secrets_from_connectors",
Type: drivers.StringPropertyType,
Required: false,
DisplayName: "Create secrets from connectors",
Description: "Comma-separated connector names to create temporary secrets before executing the SQL.",
NoPrompt: true,
},
},
ImplementsOLAP: true,
}
Expand Down
20 changes: 14 additions & 6 deletions runtime/drivers/s3/s3.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,22 @@ var spec = drivers.Spec{
DocsURL: "https://docs.rilldata.com/build/connectors/data-source/s3",
ConfigProperties: []*drivers.PropertySpec{
{
Key: "aws_access_key_id",
Type: drivers.StringPropertyType,
Secret: true,
Key: "aws_access_key_id",
Type: drivers.StringPropertyType,
DisplayName: "AWS access key ID",
Description: "AWS access key ID for explicit credentials",
Placeholder: "Enter your AWS access key ID",
Secret: true,
Required: true,
},
{
Key: "aws_secret_access_key",
Type: drivers.StringPropertyType,
Secret: true,
Key: "aws_secret_access_key",
Type: drivers.StringPropertyType,
DisplayName: "AWS secret access key",
Description: "AWS secret access key for explicit credentials",
Placeholder: "Enter your AWS secret access key",
Secret: true,
Required: true,
},
{
Key: "region",
Expand Down
1 change: 1 addition & 0 deletions web-common/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
"@connectrpc/connect": "^1.4.0",
"@connectrpc/connect-web": "^1.4.0",
"@dagrejs/dagre": "^1.1.3",
"@exodus/schemasafe": "^1.3.0",
"@floating-ui/dom": "^1.7.4",
"@replit/codemirror-indentation-markers": "^6.5.3",
"@storybook/addon-actions": "^7.6.17",
Expand Down
14 changes: 14 additions & 0 deletions web-common/src/features/entity-management/name-utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,22 @@ export function getName(name: string, others: string[]): string {
const set = new Set(others.map((other) => other.toLowerCase()));

let result = name;
const incrementableSuffix = /(.+)_([0-9]+)$/;

while (set.has(result.toLowerCase())) {
// Special-case for "s3": don't roll over to "s4", append suffix instead.
if (name.toLowerCase() === "s3") {
const match = incrementableSuffix.exec(result);
if (match) {
const base = match[1];
const number = Number.parseInt(match[2], 10) + 1;
result = `${base}_${number}`;
continue;
}
result = `${name}_1`;
continue;
}

result = INCREMENT.exec(result)?.[1]
? result.replace(INCREMENT, (m) => (+m + 1).toString())
: `${result}_1`;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@
import type { ConnectorType } from "./types";
import { dsnSchema, getYupSchema } from "./yupSchemas";
import Checkbox from "@rilldata/web-common/components/forms/Checkbox.svelte";
import { isEmpty, normalizeErrors } from "./utils";
import { normalizeErrors } from "../../templates/error-utils";
import { isEmpty } from "./utils";
import {
CONNECTOR_TYPE_OPTIONS,
CONNECTION_TAB_OPTIONS,
Expand Down
Loading
Loading