Skip to content

Commit f227b50

Browse files
committed
improvement(ui): remove loading skeletons, simplify settings, refresh icons
- Drop skeleton components across settings (admin, api-keys, byok, copilot, credentials, custom-tools, general, inbox, integrations, mcp, recently-deleted, skills, audit-logs) in favor of simpler loading states - Streamline settings.tsx, sidebar, and workspace header layouts - Replace animated copy icon with static version; add clock, files, and image-up icons - Minor cleanups across logs, chat, files, and workspace views
1 parent 7842c72 commit f227b50

92 files changed

Lines changed: 475 additions & 1748 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

apps/sim/app/(landing)/blog/[slug]/share-button.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
DropdownMenuItem,
99
DropdownMenuTrigger,
1010
} from '@/components/emcn'
11-
import { Copy } from '@/components/emcn/icons'
11+
import { Duplicate } from '@/components/emcn/icons'
1212
import { LinkedInIcon, xIcon as XIcon } from '@/components/icons'
1313

1414
interface ShareButtonProps {
@@ -52,7 +52,7 @@ export function ShareButton({ url, title }: ShareButtonProps) {
5252
</DropdownMenuTrigger>
5353
<DropdownMenuContent align='end'>
5454
<DropdownMenuItem onSelect={handleCopyLink}>
55-
<Copy className='h-4 w-4' />
55+
<Duplicate className='h-4 w-4' />
5656
{copied ? 'Copied!' : 'Copy link'}
5757
</DropdownMenuItem>
5858
<DropdownMenuItem onSelect={handleShareTwitter}>

apps/sim/app/(landing)/components/landing-preview/components/landing-preview-logs/landing-preview-logs.tsx

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

33
import { useMemo, useState } from 'react'
4-
import { Download } from 'lucide-react'
5-
import { ArrowUpDown, Badge, Library, ListFilter, Search } from '@/components/emcn'
4+
import { ArrowUpDown, Badge, Library, ListFilter, Search, Upload } from '@/components/emcn'
65
import type { BadgeProps } from '@/components/emcn/components/badge/badge'
76
import { cn } from '@/lib/core/utils/cn'
87
import { workflowBorderColor } from '@/lib/workspaces/colors'
@@ -179,7 +178,7 @@ export function LandingPreviewLogs() {
179178
</div>
180179
<div className='flex items-center gap-1'>
181180
<div className='flex cursor-default items-center rounded-md px-2 py-1 text-[var(--text-secondary)] text-caption'>
182-
<Download className='mr-1.5 h-[14px] w-[14px] text-[var(--text-icon)]' />
181+
<Upload className='mr-1.5 h-[14px] w-[14px] text-[var(--text-icon)]' />
183182
Export
184183
</div>
185184
<button

apps/sim/app/api/workspaces/[id]/route.ts

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,6 @@ import { getUserEntityPermissions } from '@/lib/workspaces/permissions/utils'
1717

1818
const patchWorkspaceSchema = z.object({
1919
name: z.string().trim().min(1).optional(),
20-
color: z
21-
.string()
22-
.regex(/^#[0-9a-fA-F]{6}$/)
23-
.optional(),
2420
logoUrl: z
2521
.string()
2622
.refine((val) => val.startsWith('/') || val.startsWith('https://'), {
@@ -130,11 +126,10 @@ export const PATCH = withRouteHandler(
130126

131127
try {
132128
const body = patchWorkspaceSchema.parse(await request.json())
133-
const { name, color, logoUrl, billedAccountUserId, allowPersonalApiKeys } = body
129+
const { name, logoUrl, billedAccountUserId, allowPersonalApiKeys } = body
134130

135131
if (
136132
name === undefined &&
137-
color === undefined &&
138133
logoUrl === undefined &&
139134
billedAccountUserId === undefined &&
140135
allowPersonalApiKeys === undefined
@@ -158,10 +153,6 @@ export const PATCH = withRouteHandler(
158153
updateData.name = name
159154
}
160155

161-
if (color !== undefined) {
162-
updateData.color = color
163-
}
164-
165156
if (logoUrl !== undefined) {
166157
updateData.logoUrl = logoUrl
167158
}
@@ -254,7 +245,6 @@ export const PATCH = withRouteHandler(
254245
metadata: {
255246
changes: {
256247
...(name !== undefined && { name: { from: existingWorkspace.name, to: name } }),
257-
...(color !== undefined && { color: { from: existingWorkspace.color, to: color } }),
258248
...(logoUrl !== undefined && {
259249
logoUrl: { from: existingWorkspace.logoUrl, to: logoUrl },
260250
}),

apps/sim/app/chat/components/message/components/file-download.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
import { useState } from 'react'
44
import { createLogger } from '@sim/logger'
55
import { sleep } from '@sim/utils/helpers'
6-
import { ArrowDown, Download, Loader2, Music } from 'lucide-react'
7-
import { Button } from '@/components/emcn'
6+
import { Loader2, Music } from 'lucide-react'
7+
import { Button, Upload } from '@/components/emcn'
88
import { DefaultFileIcon, getDocumentIcon } from '@/components/icons/document-icons'
99
import type { ChatFile } from '@/app/chat/components/message/message'
1010

@@ -128,7 +128,7 @@ export function ChatFileDownload({ file }: ChatFileDownloadProps) {
128128
{isDownloading ? (
129129
<Loader2 className='h-3.5 w-3.5 animate-spin' />
130130
) : (
131-
<ArrowDown
131+
<Upload
132132
className={`h-3.5 w-3.5 transition-opacity ${isHovered ? 'opacity-100' : 'opacity-0'}`}
133133
/>
134134
)}
@@ -178,7 +178,7 @@ export function ChatFileDownloadAll({ files }: ChatFileDownloadAllProps) {
178178
{isDownloading ? (
179179
<Loader2 className='h-3 w-3 animate-spin' strokeWidth={2} />
180180
) : (
181-
<Download className='h-3 w-3' strokeWidth={2} />
181+
<Upload className='h-3 w-3' strokeWidth={2} />
182182
)}
183183
</button>
184184
)

apps/sim/app/chat/components/message/message.tsx

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

33
import { memo, useState } from 'react'
4-
import { Check, Copy, File as FileIcon, FileText, Image as ImageIcon } from 'lucide-react'
5-
import { Tooltip } from '@/components/emcn'
4+
import { Check, File as FileIcon, FileText, Image as ImageIcon } from 'lucide-react'
5+
import { Duplicate, Tooltip } from '@/components/emcn'
66
import {
77
ChatFileDownload,
88
ChatFileDownloadAll,
@@ -214,7 +214,7 @@ export const ClientChatMessage = memo(
214214
{isCopied ? (
215215
<Check className='h-3 w-3' strokeWidth={2} />
216216
) : (
217-
<Copy className='h-3 w-3' strokeWidth={2} />
217+
<Duplicate className='h-3 w-3' />
218218
)}
219219
</button>
220220
</Tooltip.Trigger>

apps/sim/app/playground/page.tsx

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import {
2020
Code,
2121
Combobox,
2222
Connections,
23-
Copy,
2423
Cursor,
2524
DatePicker,
2625
DocumentAttachment,
@@ -999,7 +998,6 @@ export default function PlaygroundPage() {
999998
{ Icon: CardIcon, name: 'Card' },
1000999
{ Icon: ChevronDown, name: 'ChevronDown' },
10011000
{ Icon: Connections, name: 'Connections' },
1002-
{ Icon: Copy, name: 'Copy' },
10031001
{ Icon: Cursor, name: 'Cursor' },
10041002
{ Icon: DocumentAttachment, name: 'DocumentAttachment' },
10051003
{ Icon: Download, name: 'Download' },

apps/sim/app/templates/[id]/template.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ import 'streamdown/styles.css'
1919
import {
2020
Breadcrumb,
2121
Button,
22-
Copy,
2322
DropdownMenu,
2423
DropdownMenuContent,
2524
DropdownMenuItem,
2625
DropdownMenuTrigger,
26+
Duplicate,
2727
Popover,
2828
PopoverContent,
2929
PopoverItem,
@@ -755,7 +755,7 @@ export default function TemplateDetails({ isWorkspaceContext = false }: Template
755755
</PopoverTrigger>
756756
<PopoverContent align='end' side='bottom' sideOffset={8}>
757757
<PopoverItem onClick={handleCopyLink}>
758-
<Copy className='h-3 w-3' />
758+
<Duplicate className='h-3 w-3' />
759759
<span>Copy link</span>
760760
</PopoverItem>
761761
<PopoverItem onClick={handleShareToTwitter}>

apps/sim/app/workspace/[workspaceId]/components/message-actions/message-actions.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { useParams, useRouter } from 'next/navigation'
66
import {
77
Button,
88
Check,
9-
Copy,
9+
Duplicate,
1010
Modal,
1111
ModalBody,
1212
ModalContent,
@@ -177,7 +177,7 @@ export const MessageActions = memo(function MessageActions({
177177
onClick={copyToClipboard}
178178
className={BUTTON_CLASS}
179179
>
180-
{copied ? <Check className={ICON_CLASS} /> : <Copy className={ICON_CLASS} />}
180+
{copied ? <Check className={ICON_CLASS} /> : <Duplicate className={ICON_CLASS} />}
181181
</button>
182182
</Tooltip.Trigger>
183183
<Tooltip.Content side='top'>
@@ -254,7 +254,7 @@ export const MessageActions = memo(function MessageActions({
254254
{copiedRequestId ? (
255255
<Check className='h-[14px] w-[14px]' />
256256
) : (
257-
<Copy className='h-[14px] w-[14px]' />
257+
<Duplicate className='h-[14px] w-[14px]' />
258258
)}
259259
</button>
260260
</Tooltip.Trigger>

apps/sim/app/workspace/[workspaceId]/files/files.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import {
88
Columns2,
99
Combobox,
1010
type ComboboxOption,
11-
Download,
1211
DropdownMenu,
1312
DropdownMenuContent,
1413
DropdownMenuItem,
@@ -539,7 +538,7 @@ export function Files() {
539538
},
540539
{
541540
label: 'Download',
542-
icon: Download,
541+
icon: Upload,
543542
onClick: handleDownloadSelected,
544543
},
545544
{
@@ -771,7 +770,7 @@ export function Files() {
771770
: []),
772771
{
773772
label: 'Download',
774-
icon: Download,
773+
icon: Upload,
775774
onClick: handleDownloadSelected,
776775
},
777776
{
@@ -1243,7 +1242,7 @@ const FileRowContextMenu = memo(function FileRowContextMenu({
12431242
Open
12441243
</DropdownMenuItem>
12451244
<DropdownMenuItem onSelect={onDownload}>
1246-
<Download />
1245+
<Upload />
12471246
Download
12481247
</DropdownMenuItem>
12491248
{canEdit && (

apps/sim/app/workspace/[workspaceId]/home/components/mothership-view/components/resource-content/resource-content.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,8 @@ import { createLogger } from '@sim/logger'
55
import { formatDuration } from '@sim/utils/formatting'
66
import { Square } from 'lucide-react'
77
import { useRouter } from 'next/navigation'
8-
import { Button, Eye, PlayOutline, Skeleton, Tooltip } from '@/components/emcn'
8+
import { Button, Eye, PlayOutline, Skeleton, Tooltip, Upload } from '@/components/emcn'
99
import {
10-
Download,
1110
FileX,
1211
Folder as FolderIcon,
1312
Library,
@@ -404,7 +403,7 @@ function EmbeddedFileActions({ workspaceId, fileId }: EmbeddedFileActionsProps)
404403
className={RESOURCE_TAB_ICON_BUTTON_CLASS}
405404
aria-label='Download file'
406405
>
407-
<Download className={RESOURCE_TAB_ICON_CLASS} />
406+
<Upload className={RESOURCE_TAB_ICON_CLASS} />
408407
</Button>
409408
</Tooltip.Trigger>
410409
<Tooltip.Content side='bottom'>

0 commit comments

Comments
 (0)