diff --git a/apps/sim/content/blog/v0-5/components/diff-controls-demo.tsx b/apps/sim/content/blog/v0-5/components/diff-controls-demo.tsx index 1b4cc280f..647954ae8 100644 --- a/apps/sim/content/blog/v0-5/components/diff-controls-demo.tsx +++ b/apps/sim/content/blog/v0-5/components/diff-controls-demo.tsx @@ -1,24 +1,11 @@ 'use client' -import { useEffect, useState } from 'react' +import { useState } from 'react' export function DiffControlsDemo() { - const [mounted, setMounted] = useState(false) const [rejectHover, setRejectHover] = useState(false) const [acceptHover, setAcceptHover] = useState(false) - useEffect(() => { - setMounted(true) - }, []) - - if (!mounted) { - return ( -
- ) - } - return (
Reject - {/* Slanted divider */} + {/* Slanted divider - split gray/green */}
@@ -81,20 +68,20 @@ export function DiffControlsDemo() { position: 'relative', display: 'flex', height: '100%', - cursor: 'pointer', alignItems: 'center', - border: '1px solid rgba(0,0,0,0.15)', + border: '1px solid rgba(0, 0, 0, 0.15)', backgroundColor: '#32bd7e', paddingRight: '12px', paddingLeft: '20px', fontWeight: 500, fontSize: '13px', - color: '#1b1b1b', + color: '#ffffff', clipPath: 'polygon(10px 0, 100% 0, 100% 100%, 0 100%)', borderRadius: '0 4px 4px 0', marginLeft: '-10px', - filter: acceptHover ? 'brightness(1.1)' : 'brightness(1)', - transition: 'filter 0.15s', + cursor: 'default', + filter: acceptHover ? 'brightness(1.1)' : undefined, + transition: 'background-color 150ms, border-color 150ms', }} > Accept @@ -104,11 +91,15 @@ export function DiffControlsDemo() { borderRadius: '4px', border: '1px solid rgba(255, 255, 255, 0.2)', backgroundColor: 'rgba(255, 255, 255, 0.1)', - padding: '2px 6px', + paddingLeft: '6px', + paddingRight: '6px', + paddingTop: '2px', + paddingBottom: '2px', fontWeight: 500, - fontFamily: 'sans-serif', + fontFamily: + 'ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"', fontSize: '10px', - color: '#1b1b1b', + color: '#ffffff', }} > ⇧⌘ diff --git a/apps/sim/content/blog/v0-5/index.mdx b/apps/sim/content/blog/v0-5/index.mdx index 40cb43574..491262e7c 100644 --- a/apps/sim/content/blog/v0-5/index.mdx +++ b/apps/sim/content/blog/v0-5/index.mdx @@ -63,7 +63,7 @@ The dashboard aggregates this data into queryable views: - **Trace spans**: Hierarchical view of block executions with timing waterfall - **Cost attribution**: Token usage and spend broken down by model per execution - **Error context**: Full stack traces with the block, input values, and failure reason -- **Filtering**: Query by time range, trigger type (webhook, schedule, API, manual), workflow, or status +- **Filtering**: Query by time range, trigger type, workflow, or status - **Execution snapshots**: Each run captures the workflow state at execution time—restore to see exactly what was running This level of observability is necessary when workflows handle production traffic—sending customer emails, processing payments, or making API calls on behalf of users.