Skip to content

Commit d5701d5

Browse files
authored
fix(icons): align table block icon and 12-unit icon stroke with the emcn family (#6708)
The table/table_v2 blocks and the table trigger used a local lucide-shaped TableIcon (stroke 2.0, full-bleed 24 viewBox, 3x3 grid) while every other table surface used emcn's Table. Consolidate onto the emcn icon and drop the local copy. Nested tool-call rows in Chat applied no color class, so a non-brand block icon inherited body text instead of --text-icon. redo/undo/zoom-in/zoom-out draw 0.85 stroke on a 12-unit viewBox, rendering 0.992px at a 14px box against the family's 0.904px. 0.775 restores parity.
1 parent 9664e7e commit d5701d5

18 files changed

Lines changed: 37 additions & 84 deletions

File tree

apps/docs/components/icons.tsx

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -7538,26 +7538,6 @@ export function BedrockIcon(props: SVGProps<SVGSVGElement>) {
75387538
)
75397539
}
75407540

7541-
export function TableIcon(props: SVGProps<SVGSVGElement>) {
7542-
return (
7543-
<svg
7544-
xmlns='http://www.w3.org/2000/svg'
7545-
viewBox='0 0 24 24'
7546-
fill='none'
7547-
stroke='currentColor'
7548-
strokeWidth={2}
7549-
strokeLinecap='round'
7550-
strokeLinejoin='round'
7551-
{...props}
7552-
>
7553-
<rect width='18' height='18' x='3' y='3' rx='2' />
7554-
<path d='M3 9h18' />
7555-
<path d='M3 15h18' />
7556-
<path d='M9 3v18' />
7557-
<path d='M15 3v18' />
7558-
</svg>
7559-
)
7560-
}
75617541
export function ReductoIcon(props: SVGProps<SVGSVGElement>) {
75627542
return (
75637543
<svg

apps/docs/components/ui/icon-mapping.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// Maps block types to their icon component references
44

55
import type { ComponentType, SVGProps } from 'react'
6-
import { Library, Rocket } from '@sim/emcn/icons'
6+
import { Library, Rocket, Table } from '@sim/emcn/icons'
77
import {
88
A2AIcon,
99
AgentMailIcon,
@@ -225,7 +225,6 @@ import {
225225
StagehandIcon,
226226
StripeIcon,
227227
SupabaseIcon,
228-
TableIcon,
229228
TailscaleIcon,
230229
TavilyIcon,
231230
TelegramIcon,
@@ -518,7 +517,7 @@ export const blockTypeToIconMap: Record<string, IconComponent> = {
518517
stt: STTIcon,
519518
stt_v2: STTIcon,
520519
supabase: SupabaseIcon,
521-
table: TableIcon,
520+
table: Table,
522521
tailscale: TailscaleIcon,
523522
tavily: TavilyIcon,
524523
telegram: TelegramIcon,

apps/sim/app/(landing)/components/features/components/build-callout/components/workflow-showcase/showcase-data.ts

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
1-
import {
2-
AgentIcon,
3-
AnthropicIcon,
4-
GmailIcon,
5-
LinearIcon,
6-
SlackIcon,
7-
TableIcon,
8-
} from '@/components/icons'
1+
import { Table as TableIcon } from '@sim/emcn/icons'
2+
import { AgentIcon, AnthropicIcon, GmailIcon, LinearIcon, SlackIcon } from '@/components/icons'
93
import type { BlockDef } from '@/app/(landing)/components/hero/components/hero-visual/workflow-data'
104

115
/**

apps/sim/app/(landing)/components/hero/components/hero-platform-loop/stage-data.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { AgentIcon, CodeIcon, SlackIcon, StartIcon, TableIcon } from '@/components/icons'
1+
import { Table as TableIcon } from '@sim/emcn/icons'
2+
import { AgentIcon, CodeIcon, SlackIcon, StartIcon } from '@/components/icons'
23
import type { BlockDef } from '@/app/(landing)/components/hero/components/hero-visual/workflow-data'
34
import { BLOCK_WIDTH } from '@/app/(landing)/components/hero/components/hero-visual/workflow-data'
45

apps/sim/app/(landing)/enterprise/components/enterprise-platform-loop/stage-data.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { AgentIcon, ConditionalIcon, MailIcon, StartIcon, TableIcon } from '@/components/icons'
1+
import { Table as TableIcon } from '@sim/emcn/icons'
2+
import { AgentIcon, ConditionalIcon, MailIcon, StartIcon } from '@/components/icons'
23
import type { BlockDef } from '@/app/(landing)/components/hero/components/hero-visual/workflow-data'
34

45
/**

apps/sim/app/(landing)/solutions/compliance/components/compliance-hero-loop.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
'use client'
22

3-
import { AgentIcon, ConditionalIcon, ScheduleIcon, SlackIcon, TableIcon } from '@/components/icons'
3+
import { Table as TableIcon } from '@sim/emcn/icons'
4+
import { AgentIcon, ConditionalIcon, ScheduleIcon, SlackIcon } from '@/components/icons'
45
import { EnterprisePlatformLoop } from '@/app/(landing)/enterprise/components/enterprise-platform-loop'
56
import type { EnterpriseLoopContent } from '@/app/(landing)/enterprise/components/enterprise-platform-loop/stage-data'
67

apps/sim/app/(landing)/solutions/finance/components/finance-hero-loop.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
'use client'
22

3-
import { AgentIcon, ConditionalIcon, MailIcon, StartIcon, TableIcon } from '@/components/icons'
3+
import { Table as TableIcon } from '@sim/emcn/icons'
4+
import { AgentIcon, ConditionalIcon, MailIcon, StartIcon } from '@/components/icons'
45
import { EnterprisePlatformLoop } from '@/app/(landing)/enterprise/components/enterprise-platform-loop'
56
import type { EnterpriseLoopContent } from '@/app/(landing)/enterprise/components/enterprise-platform-loop/stage-data'
67

apps/sim/app/(landing)/workflows/components/workflows-editor-loop.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,7 @@
11
'use client'
22

3-
import {
4-
AgentIcon,
5-
ConditionalIcon,
6-
JiraIcon,
7-
SlackIcon,
8-
StartIcon,
9-
TableIcon,
10-
} from '@/components/icons'
3+
import { Table as TableIcon } from '@sim/emcn/icons'
4+
import { AgentIcon, ConditionalIcon, JiraIcon, SlackIcon, StartIcon } from '@/components/icons'
115
import { EditorLoop, type EditorLoopContent } from '@/app/(landing)/components/shared/editor-loop'
126

137
/**

apps/sim/app/workspace/[workspaceId]/home/components/message-content/components/agent-group/tool-call-item.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,10 @@ export function ToolCallItem({
238238
return (
239239
<div className='flex items-center gap-[6px] pl-6'>
240240
{BlockIcon && (
241-
<BlockIcon className='size-[14px] flex-shrink-0' style={getBareIconStyle(BlockIcon)} />
241+
<BlockIcon
242+
className='size-[14px] flex-shrink-0 text-[var(--text-icon)]'
243+
style={getBareIconStyle(BlockIcon)}
244+
/>
242245
)}
243246
{isExecuting ? (
244247
<ShimmerText className='text-[13px] [--shimmer-rest:var(--text-secondary)]'>

apps/sim/blocks/blocks/table.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1+
import { Table } from '@sim/emcn/icons'
12
import { toError } from '@sim/utils/errors'
2-
import { TableIcon } from '@/components/icons'
33
import { TABLE_LIMITS } from '@/lib/table/constants'
44
import { filterRulesToFilter, sortRulesToSort } from '@/lib/table/query-builder/converters'
55
import type { BlockConfig } from '@/blocks/types'
@@ -201,7 +201,7 @@ export const TableBlock: BlockConfig<TableQueryResponse> = {
201201
docsLink: 'https://docs.sim.ai/integrations/table',
202202
category: 'blocks',
203203
bgColor: '#10B981',
204-
icon: TableIcon,
204+
icon: Table,
205205
canvasPresentation: {
206206
defaultTitle: 'Table',
207207
/*

0 commit comments

Comments
 (0)