Skip to main content
Glama
preview.tsx2.14 kB
import { MantineProvider, createTheme, useMantineColorScheme } from '@mantine/core'; import '@mantine/core/styles.css'; import '@mantine/spotlight/styles.css'; import { MockClient } from '@medplum/mock'; import { MedplumProvider } from '@medplum/react-hooks'; import { DARK_MODE_EVENT_NAME } from '@vueless/storybook-dark-mode'; import { FC, useEffect } from 'react'; import { BrowserRouter } from 'react-router'; import { addons } from 'storybook/preview-api'; import { createGlobalTimer } from '../src/stories/MockDateWrapper.utils'; export const parameters = { layout: 'fullscreen', actions: { argTypesRegex: '^on[A-Z].*' }, viewMode: 'docs', controls: { matchers: { color: /(background|color)$/i, date: /Date$/, }, }, docs: { codePanel: true, }, }; const medplumDefaultTheme = createTheme({ headings: { sizes: { h1: { fontSize: '1.125rem', fontWeight: '500', lineHeight: '2.0', }, }, }, fontSizes: { xs: '0.6875rem', sm: '0.875rem', md: '0.875rem', lg: '1.0rem', xl: '1.125rem', }, }); // wrap initialization of MockClient and initial page navigation // so that resources created in MockFetchClient#initMockRepo have // consistent timestamps between storybook runs const clock = createGlobalTimer(); const medplum = new MockClient(); medplum.get('/').then(() => { clock.restore(); }); function ColorSchemeWrapper({ children }: { children: React.ReactNode }) { const { setColorScheme } = useMantineColorScheme(); useEffect(() => { const channel = addons.getChannel(); channel.on(DARK_MODE_EVENT_NAME, (darkMode: boolean) => { setColorScheme(darkMode ? 'dark' : 'light'); }); }, []); return <>{children}</>; } export const decorators = [ (Story: FC) => ( <BrowserRouter> <MedplumProvider medplum={medplum}> <Story /> </MedplumProvider> </BrowserRouter> ), (Story: FC) => ( <ColorSchemeWrapper> <Story /> </ColorSchemeWrapper> ), (Story: FC) => ( <MantineProvider theme={medplumDefaultTheme}> <Story /> </MantineProvider> ), ];

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/medplum/medplum'

If you have feedback or need assistance with the MCP directory API, please join our Discord server