diff --git a/web/app/components/base/chat/chat-with-history/inputs-form/__tests__/content.spec.tsx b/web/app/components/base/chat/chat-with-history/inputs-form/__tests__/content.spec.tsx
index c1a0f3e294..6081024490 100644
--- a/web/app/components/base/chat/chat-with-history/inputs-form/__tests__/content.spec.tsx
+++ b/web/app/components/base/chat/chat-with-history/inputs-form/__tests__/content.spec.tsx
@@ -248,6 +248,19 @@ describe('InputsFormContent', () => {
expect(mockSetCurrentConversationInputs).toHaveBeenCalledWith(expect.objectContaining({ sel: 'A' }))
})
+ it('renders select dropdown above the settings dialog layer', async () => {
+ const user = userEvent.setup()
+ const context = createMockContext({
+ inputsForms: [{ variable: 'sel', type: InputVarType.select, label: 'Sel', options: ['A', 'B'], default: 'B' }],
+ currentConversationInputs: {},
+ })
+
+ renderWithContext(, context)
+ await user.click(screen.getByText('B'))
+
+ expect(screen.getByText('A').closest('.z-\\[60\\]')).not.toBeNull()
+ })
+
it('handles select input with existing value (value not in options -> shows placeholder)', () => {
const context = createMockContext({
inputsForms: [{ variable: 'sel', type: InputVarType.select, label: 'Sel', options: ['A'], default: undefined }],
diff --git a/web/app/components/base/chat/chat-with-history/inputs-form/content.tsx b/web/app/components/base/chat/chat-with-history/inputs-form/content.tsx
index 127cf2c252..4baa46744d 100644
--- a/web/app/components/base/chat/chat-with-history/inputs-form/content.tsx
+++ b/web/app/components/base/chat/chat-with-history/inputs-form/content.tsx
@@ -86,7 +86,7 @@ const InputsFormContent = ({ showTip }: Props) => {
)}
{form.type === InputVarType.select && (
({ value: option, name: option }))}
onSelect={item => handleFormChange(form.variable, item.value as string)}
diff --git a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx
index 526fca2061..f682752645 100644
--- a/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx
+++ b/web/app/components/base/chat/embedded-chatbot/inputs-form/__tests__/content.spec.tsx
@@ -200,6 +200,17 @@ describe('InputsFormContent', () => {
expect(mockContextValue.handleNewConversationInputsChange).toHaveBeenCalled()
})
+ it('should render select dropdown above the settings dialog layer', async () => {
+ render()
+ const selectTrigger = screen.getAllByText(/Select Label/i).find(el => el.tagName === 'SPAN')
+ if (!selectTrigger)
+ throw new Error('Select trigger not found')
+
+ await user.click(selectTrigger)
+
+ expect(screen.getByText('Option 1').closest('.z-\\[60\\]')).not.toBeNull()
+ })
+
it('should handle single file upload change', async () => {
render()
const uploadButtons = screen.getAllByText('Upload')
diff --git a/web/app/components/base/chat/embedded-chatbot/inputs-form/content.tsx b/web/app/components/base/chat/embedded-chatbot/inputs-form/content.tsx
index 2ce40480c3..733e3b1101 100644
--- a/web/app/components/base/chat/embedded-chatbot/inputs-form/content.tsx
+++ b/web/app/components/base/chat/embedded-chatbot/inputs-form/content.tsx
@@ -86,7 +86,7 @@ const InputsFormContent = ({ showTip }: Props) => {
)}
{form.type === InputVarType.select && (
({ value: option, name: option }))}
onSelect={item => handleFormChange(form.variable, item.value as string)}