Skip to content

Commit c8de008

Browse files
Bill LeoutsakosBill Leoutsakos
authored andcommitted
improvement(ui): consolidate product typography
1 parent b3667e8 commit c8de008

55 files changed

Lines changed: 139 additions & 106 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/(auth)/components/auth-header.tsx‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ interface AuthHeaderProps {
1414
export function AuthHeader({ title, description }: AuthHeaderProps) {
1515
return (
1616
<div className='space-y-1 text-center'>
17-
<h1 className='text-balance text-[32px] text-[var(--text-primary)] leading-[1.2]'>{title}</h1>
17+
<h1 className='text-balance text-[var(--text-primary)] text-title-lg leading-[1.2]'>
18+
{title}
19+
</h1>
1820
{description != null && (
1921
<p className='text-[var(--text-muted)] text-base leading-[1.5]'>{description}</p>
2022
)}

‎apps/sim/app/(interfaces)/chat/components/input/input.tsx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ export const ChatInput: React.FC<{
181181
) : (
182182
<div className='flex h-full w-full flex-col items-center justify-center gap-0.5 text-[var(--text-muted)]'>
183183
<Paperclip className='size-[18px]' />
184-
<span className='max-w-[48px] truncate px-[2px] text-[9px]'>
184+
<span className='max-w-[48px] truncate px-[2px] text-micro'>
185185
{file.name.split('.').pop()}
186186
</span>
187187
</div>
@@ -214,7 +214,7 @@ export const ChatInput: React.FC<{
214214
onKeyDown={handleKeyDown}
215215
placeholder={isDragOver ? 'Drop files here...' : 'Enter a message...'}
216216
rows={1}
217-
className='m-0 h-auto min-h-[24px] w-full resize-none overflow-y-auto overflow-x-hidden border-0 bg-transparent p-1 text-[15px] text-[var(--text-primary)] leading-[24px] caret-[var(--text-primary)] outline-hidden [-ms-overflow-style:none] [scrollbar-width:none] placeholder:text-[var(--text-muted)] focus-visible:ring-0 focus-visible:ring-offset-0 [&::-webkit-scrollbar]:hidden'
217+
className='m-0 h-auto min-h-[24px] w-full resize-none overflow-y-auto overflow-x-hidden border-0 bg-transparent p-1 text-[var(--text-primary)] text-base leading-[24px] caret-[var(--text-primary)] outline-hidden [-ms-overflow-style:none] [scrollbar-width:none] placeholder:text-[var(--text-muted)] focus-visible:ring-0 focus-visible:ring-offset-0 [&::-webkit-scrollbar]:hidden'
218218
/>
219219

220220
<div className='flex items-center justify-between'>

‎apps/sim/app/(interfaces)/resume/[workflowId]/[executionId]/resume-page-client.tsx‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ function renderStructuredValuePreview(value: unknown) {
146146
className='max-h-[220px]'
147147
/>
148148
{truncated && (
149-
<p className='mt-1 text-[11px] text-[var(--text-muted)]'>
149+
<p className='mt-1 text-[var(--text-muted)] text-xs leading-[inherit]'>
150150
Value truncated for preview ({DISPLAY_VALUE_PREVIEW_MAX_CHARS.toLocaleString()} of{' '}
151151
{prettyPrinted.length.toLocaleString()} characters shown).
152152
</p>
@@ -162,7 +162,7 @@ function renderStructuredValuePreview(value: unknown) {
162162
{truncated ? `${stringValue}…` : stringValue}
163163
</div>
164164
{truncated && (
165-
<p className='mt-1 text-[11px] text-[var(--text-muted)]'>
165+
<p className='mt-1 text-[var(--text-muted)] text-xs leading-[inherit]'>
166166
Value truncated for preview ({DISPLAY_VALUE_PREVIEW_MAX_CHARS.toLocaleString()} of{' '}
167167
{String(value).length.toLocaleString()} characters shown).
168168
</p>
@@ -774,8 +774,10 @@ export default function ResumeExecutionPage({
774774
{/* Header */}
775775
<div className='mb-8 flex items-center justify-between'>
776776
<div>
777-
<h1 className='text-[20px] text-[var(--text-primary)]'>Paused Execution</h1>
778-
<p className='mt-1 text-[14px] text-[var(--text-secondary)]'>
777+
<h1 className='text-[var(--text-primary)] text-xl leading-[inherit]'>
778+
Paused Execution
779+
</h1>
780+
<p className='mt-1 text-[var(--text-secondary)] text-sm leading-[inherit]'>
779781
Select a pause point to review and resume
780782
</p>
781783
</div>

‎apps/sim/app/_styles/globals.css‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@
7171
"Noto Color Emoji";
7272

7373
--font-season: var(--font-season);
74+
--font-inter: var(--font-inter);
7475
--font-body:
7576
ui-sans-serif, -apple-system, system-ui, Segoe UI, Helvetica, Apple Color Emoji, Arial,
7677
sans-serif, Segoe UI Emoji, Segoe UI Symbol;
@@ -90,6 +91,10 @@
9091
--breakpoint-xl: 1280px;
9192
--breakpoint-2xl: 1536px;
9293

94+
--font-weight-normal: 400;
95+
--font-weight-medium: 500;
96+
--font-weight-semibold: 600;
97+
9398
--text-micro: 10px;
9499
/**
95100
* `xs` is the one size here that also exists in Tailwind's own scale, so it
@@ -101,8 +106,18 @@
101106
--text-xs--line-height: 1.5;
102107
--text-caption: 12px;
103108
--text-small: 13px;
109+
/** Adopt the imported scale without changing its rem units or default leading. */
110+
--text-sm: 0.875rem;
111+
--text-sm--line-height: calc(1.25 / 0.875);
104112
--text-base: 15px;
105113
--text-md: 16px;
114+
--text-xl: 1.25rem;
115+
--text-xl--line-height: calc(1.75 / 1.25);
116+
--text-2xl: 1.5rem;
117+
--text-2xl--line-height: calc(2 / 1.5);
118+
--text-title: 28px;
119+
--text-title-lg: 32px;
120+
--text-display: 40px;
106121

107122
/**
108123
* Hairline scale key. Overriding `spacing` rather than `width`/`height` keeps

‎apps/sim/app/cli/auth/cli-auth-view.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ export function CliAuthView() {
9696
<div className='space-y-4'>
9797
<div className='flex items-center justify-center rounded-[10px] border border-[var(--border-1)] py-5'>
9898
{/* `pl` offsets the trailing letter-space `tracking` adds after the last glyph, which would otherwise pull the code left of optical center. */}
99-
<code className='pl-[0.2em] font-mono text-[28px] text-[var(--text-primary)] leading-none tracking-[0.2em]'>
99+
<code className='pl-[0.2em] font-mono text-[var(--text-primary)] text-title leading-none tracking-[0.2em]'>
100100
{request.pairing}
101101
</code>
102102
</div>

‎apps/sim/app/f/[token]/public-file-email-auth.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ export function PublicFileEmailAuth({ token }: PublicFileEmailAuthProps) {
188188
</p>
189189
</div>
190190

191-
<div className='text-center font-light text-sm'>
191+
<div className='text-center font-normal text-sm'>
192192
<button
193193
onClick={() => {
194194
setSent(false)

‎apps/sim/app/invite/components/status-card.tsx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export function InviteStatusCard({
3838
return (
3939
<>
4040
<div className='space-y-1 text-center'>
41-
<h1 className='text-[32px] text-[var(--text-primary)] tracking-tight'>Loading</h1>
41+
<h1 className='text-[var(--text-primary)] text-title-lg tracking-tight'>Loading</h1>
4242
<p className='text-[var(--text-muted)]'>{description}</p>
4343
</div>
4444
<div className='mt-8 flex w-full items-center justify-center py-8'>
@@ -51,7 +51,7 @@ export function InviteStatusCard({
5151
return (
5252
<>
5353
<div className='space-y-1 text-center'>
54-
<h1 className='text-[32px] text-[var(--text-primary)] tracking-tight'>{title}</h1>
54+
<h1 className='text-[var(--text-primary)] text-title-lg tracking-tight'>{title}</h1>
5555
<p className='text-[var(--text-muted)]'>{description}</p>
5656
</div>
5757

‎apps/sim/app/o/[organizationId]/home/components/composer/composer.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ export function Composer({
100100
placeholder={placeholder}
101101
aria-label='Ask Sim'
102102
rows={1}
103-
className='field-sizing-content m-0 box-border min-h-[24px] w-full resize-none border-0 bg-transparent px-1 py-1 font-body text-[14px] text-[var(--text-primary)] leading-[24px] tracking-[-0.015em] outline-hidden [overflow-wrap:anywhere] placeholder:text-[var(--text-muted)] focus-visible:ring-0 focus-visible:ring-offset-0'
103+
className='field-sizing-content m-0 box-border min-h-[24px] w-full resize-none border-0 bg-transparent px-1 py-1 font-body text-[var(--text-primary)] text-sm leading-[24px] tracking-[-0.015em] outline-hidden [overflow-wrap:anywhere] placeholder:text-[var(--text-muted)] focus-visible:ring-0 focus-visible:ring-offset-0'
104104
/>
105105
</div>
106106

‎apps/sim/app/o/[organizationId]/home/organization-home.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ function OrganizationHomeContent({ userName, chatId }: OrganizationHomeProps) {
139139
<div className='min-h-0 flex-1 overflow-y-auto [scrollbar-gutter:stable_both-edges]'>
140140
{/* Asymmetric padding biases the group up so the full cluster (heading + input + steps) sits at the optical center */}
141141
<div className='flex min-h-full flex-col items-center justify-center px-6 pt-[2vh] pb-[22vh]'>
142-
<h1 className='mb-7 max-w-chat text-balance font-season text-[26px] text-[var(--text-primary)] leading-[1.15] tracking-[-0.01em] sm:text-[28px]'>
142+
<h1 className='mb-7 max-w-chat text-balance font-season text-2xl text-[var(--text-primary)] leading-[1.15] tracking-[-0.01em] sm:text-title'>
143143
What should we get done{firstName ? `, ${firstName}` : ''}?
144144
</h1>
145145
<div className='relative w-full max-w-chat'>

‎apps/sim/app/o/[organizationId]/search/search.tsx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ function SearchField({
8989
aria-label='Search your sources'
9090
autoComplete='off'
9191
spellCheck={false}
92-
className='h-full min-w-0 flex-1 bg-transparent font-body text-[14px] text-[var(--text-primary)] tracking-[-0.015em] outline-hidden placeholder:text-[var(--text-muted)] [&::-webkit-search-cancel-button]:hidden'
92+
className='h-full min-w-0 flex-1 bg-transparent font-body text-[var(--text-primary)] text-sm leading-[inherit] tracking-[-0.015em] outline-hidden placeholder:text-[var(--text-muted)] [&::-webkit-search-cancel-button]:hidden'
9393
/>
9494
<div className='flex shrink-0 items-center gap-1.5'>
9595
{voice.isSupported && (
@@ -190,7 +190,7 @@ function OrganizationSearchContent() {
190190
) : (
191191
<div className='min-h-0 flex-1 overflow-y-auto [scrollbar-gutter:stable_both-edges]'>
192192
<div className='flex min-h-full flex-col items-center justify-center px-6 pt-[2vh] pb-[22vh]'>
193-
<h1 className='mb-7 max-w-chat text-balance text-center font-season text-[26px] text-[var(--text-primary)] leading-[1.15] tracking-[-0.01em] sm:text-[28px]'>
193+
<h1 className='mb-7 max-w-chat text-balance text-center font-season text-2xl text-[var(--text-primary)] leading-[1.15] tracking-[-0.01em] sm:text-title'>
194194
Search {organization.name}
195195
</h1>
196196
<div className='w-full max-w-chat'>

0 commit comments

Comments
 (0)