- Mantine theme with component extensions (Badge, Card, Paper, Button, etc.) - CSS custom properties for design tokens (--inspector-* vars) - Dark/light mode support with auto detection - 12 atoms: StatusIndicator, AnnotationBadge, CapabilityItem, LogEntry, ProgressDisplay, ContentViewer, ListChangedIndicator, CopyButton, ConnectionToggle, TransportBadge, InlineError, MessageBubble - 25 molecules: ServerCard, AddServerMenu, SchemaForm, ToolListItem, ToolDetailPanel, ResultPanel, ResourceListItem, ResourcePreviewPanel, ResourceTemplateInput, PromptArgumentsForm, PromptMessagesDisplay, LogControls, TaskCard, HistoryEntry, ServerInfoContent, ServerSettingsForm, RootsTable, SamplingRequestPanel, ElicitationFormPanel, ElicitationUrlPanel, InlineSamplingRequest, InlineElicitationRequest, PendingClientRequests, ImportServerJsonPanel, ExperimentalFeaturesPanel - Exclude storybook-static from version control - Exclude .stories.tsx from app tsconfig (Storybook-only modules) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
22 lines
608 B
TypeScript
22 lines
608 B
TypeScript
import { Paper } from '@mantine/core';
|
|
|
|
export const ThemePaper = Paper.extend({
|
|
classNames: (_theme, props) => {
|
|
if (props.variant === 'code') return { root: 'paper-code' };
|
|
return {};
|
|
},
|
|
styles: (_theme, props) => {
|
|
if (props.variant === 'code') {
|
|
return {
|
|
root: {
|
|
padding: 'var(--mantine-spacing-md)',
|
|
backgroundColor: 'var(--inspector-surface-code)',
|
|
fontFamily: 'var(--mantine-font-family-monospace)',
|
|
fontSize: 'var(--mantine-font-size-sm)',
|
|
overflow: 'auto',
|
|
},
|
|
};
|
|
}
|
|
return { root: {} };
|
|
},
|
|
});
|