diff --git a/sim/app/w/[id]/components/workflow-block/components/sub-block/components/credential-selector/credential-selector.tsx b/sim/app/w/[id]/components/workflow-block/components/sub-block/components/credential-selector/credential-selector.tsx
index 377605436d..2d07397b3b 100644
--- a/sim/app/w/[id]/components/workflow-block/components/sub-block/components/credential-selector/credential-selector.tsx
+++ b/sim/app/w/[id]/components/workflow-block/components/sub-block/components/credential-selector/credential-selector.tsx
@@ -197,24 +197,21 @@ export function CredentialSelector({
variant="outline"
role="combobox"
aria-expanded={open}
- className="w-full justify-between"
+ className="w-full justify-between relative"
disabled={disabled}
>
- {selectedCredential ? (
-
- {getProviderIcon(provider)}
- {selectedCredential.name}
-
- ) : (
-
- {getProviderIcon(provider)}
- {label}
-
- )}
-
+
+ {getProviderIcon(provider)}
+ {selectedCredential ? (
+ {selectedCredential.name}
+ ) : (
+ {label}
+ )}
+
+
-
+
diff --git a/sim/app/w/[id]/components/workflow-block/components/sub-block/components/dropdown.tsx b/sim/app/w/[id]/components/workflow-block/components/sub-block/components/dropdown.tsx
index 0c315d3614..5e3bbda7c3 100644
--- a/sim/app/w/[id]/components/workflow-block/components/sub-block/components/dropdown.tsx
+++ b/sim/app/w/[id]/components/workflow-block/components/sub-block/components/dropdown.tsx
@@ -1,4 +1,4 @@
-import { useMemo } from 'react'
+import { useEffect, useMemo } from 'react'
import {
Select,
SelectContent,
@@ -55,6 +55,13 @@ export function Dropdown({ options, defaultValue, blockId, subBlockId }: Dropdow
return undefined
}, [value, defaultValue, evaluatedOptions])
+ // Set initial default value if current value is null/undefined
+ useEffect(() => {
+ if ((value === null || value === undefined) && effectiveValue !== undefined) {
+ setValue(effectiveValue)
+ }
+ }, [value, effectiveValue, setValue])
+
// Handle the case where evaluatedOptions changes and the current selection is no longer valid
const isValueInOptions = useMemo(() => {
if (!effectiveValue || evaluatedOptions.length === 0) return false