diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-types.ts b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-types.ts
index 2f235137f17..a6ea0ba2ac1 100644
--- a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-types.ts
+++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-types.ts
@@ -8,9 +8,9 @@ import { ALL_COLUMN_TYPES } from '@/lib/table/column-types'
* "+ New column" dropdown to spawn a workflow group; the resulting columns are
* stored as scalar types under the hood (none carry `'workflow'`).
*/
-export type SidebarColumnType = ColumnDefinition['type'] | 'workflow'
+type SidebarColumnType = ColumnDefinition['type'] | 'workflow'
-export interface ColumnTypeOption {
+interface ColumnTypeOption {
type: SidebarColumnType
label: string
icon: React.ComponentType<{ className?: string }>
diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/index.ts b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/index.ts
index e458001136d..0308447977f 100644
--- a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/index.ts
+++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/index.ts
@@ -1,8 +1,3 @@
export type { ColumnConfig } from './column-config-sidebar'
export { ColumnConfigSidebar } from './column-config-sidebar'
-export {
- COLUMN_TYPE_OPTIONS,
- type ColumnTypeOption,
- PLAIN_COLUMN_TYPE_OPTIONS,
- type SidebarColumnType,
-} from './column-types'
+export { COLUMN_TYPE_OPTIONS, PLAIN_COLUMN_TYPE_OPTIONS } from './column-types'
diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.test.tsx b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.test.tsx
new file mode 100644
index 00000000000..6409eb7f513
--- /dev/null
+++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.test.tsx
@@ -0,0 +1,58 @@
+/**
+ * @vitest-environment jsdom
+ */
+import { act } from 'react'
+import { createRoot, type Root } from 'react-dom/client'
+import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
+import { COLUMN_TYPE_OPTIONS } from '@/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar'
+import { ColumnDropdown } from '@/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown'
+
+let container: HTMLDivElement
+let root: Root
+
+beforeEach(() => {
+ globalThis.IS_REACT_ACT_ENVIRONMENT = true
+ container = document.createElement('div')
+ document.body.appendChild(container)
+ root = createRoot(container)
+})
+
+afterEach(() => {
+ act(() => root.unmount())
+ container.remove()
+})
+
+describe('ColumnDropdown', () => {
+ it('lists Enrichments as a regular entry after the column options', () => {
+ const onPickEnrichment = vi.fn()
+
+ act(() => {
+ root.render(
+
+ )
+ })
+ act(() => {
+ container
+ .querySelector('button')
+ ?.dispatchEvent(new MouseEvent('pointerdown', { bubbles: true, button: 0 }))
+ })
+
+ const items = [...document.body.querySelectorAll('[role="menuitem"]')]
+ expect(items.map((item) => item.textContent)).toEqual([
+ ...COLUMN_TYPE_OPTIONS.map((option) => option.label),
+ 'Enrichments',
+ ])
+ expect(document.body.querySelector('[role="separator"]')).toBeNull()
+
+ act(() => items.at(-1)?.click())
+ expect(onPickEnrichment).toHaveBeenCalledOnce()
+ })
+})
diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/new-column-dropdown/new-column-dropdown.tsx b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.tsx
similarity index 82%
rename from apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/new-column-dropdown/new-column-dropdown.tsx
rename to apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.tsx
index 2e9b21332dc..c1829b3febe 100644
--- a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/new-column-dropdown/new-column-dropdown.tsx
+++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-dropdown/column-dropdown.tsx
@@ -8,7 +8,6 @@ import {
DropdownMenu,
DropdownMenuContent,
DropdownMenuItem,
- DropdownMenuSeparator,
DropdownMenuTrigger,
Plus,
} from '@sim/emcn'
@@ -19,7 +18,7 @@ import { COLUMN_TYPE_OPTIONS } from '../column-config-sidebar'
const CELL_HEADER =
'border-[var(--border)] border-r border-b bg-[var(--bg)] px-2 py-[7px] text-left align-middle'
-interface NewColumnDropdownProps {
+interface ColumnDropdownProps {
/** `'header'` renders the page-header trigger (subtle Button); `'inline-header'` renders
* the in-table column-header `| ` trigger. Same dropdown content either way. */
trigger: 'header' | 'inline-header'
@@ -42,7 +41,7 @@ interface NewColumnDropdownProps {
* Lists every column type plus "Workflow" and "Enrichments"; picking a type
* opens the right sidebar pre-seeded.
*/
-export function NewColumnDropdown({
+export function ColumnDropdown({
trigger,
disabled,
onPickType,
@@ -50,7 +49,7 @@ export function NewColumnDropdown({
onPickEnrichment,
blocked,
onBlocked,
-}: NewColumnDropdownProps) {
+}: ColumnDropdownProps) {
const triggerButton =
trigger === 'header' ? (
|