Skip to main content
Glama
RangeInput.stories.tsx2.02 kB
// SPDX-FileCopyrightText: Copyright Orangebot, Inc. and Medplum contributors // SPDX-License-Identifier: Apache-2.0 import { buildElementsContext } from '@medplum/core'; import type { Range } from '@medplum/fhirtypes'; import type { Meta } from '@storybook/react'; import type { JSX } from 'react'; import { Document } from '../Document/Document'; import { ElementsContext } from '../ElementsInput/ElementsInput.utils'; import { maybeWrapWithContext } from '../utils/maybeWrapWithContext'; import { RangeInput } from './RangeInput'; export default { title: 'Medplum/RangeInput', component: RangeInput, } as Meta; export const Basic = (): JSX.Element => ( <Document> <RangeInput path="" name="range" defaultValue={ { low: { comparator: '>', value: 10, unit: 'mg', }, } as Range } /> </Document> ); export const Disabled = (): JSX.Element => ( <Document> <RangeInput disabled path="" name="range" defaultValue={ { low: { comparator: '>', value: 10, unit: 'mg', }, } as Range } /> </Document> ); export const PartiallyDisabled = (): JSX.Element => { const context = buildElementsContext({ parentContext: undefined, path: 'SpecimenDefinition', elements: {}, accessPolicyResource: { resourceType: 'SpecimenDefinition', readonlyFields: ['handling.temperatureRange.high'], }, }); if (!context) { return <div>Context unexpectedly undefined</div>; } return maybeWrapWithContext( ElementsContext.Provider, context, <Document> <RangeInput path="SpecimenDefinition.handling.temperatureRange" name="range" defaultValue={ { low: { comparator: '>', value: 10, unit: 'mg', }, } as Range } /> </Document> ); };

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