@medplum/react 5.1.6 → 5.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +9 -8
- package/dist/cjs/index.cjs.map +4 -4
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.css.map +4 -4
- package/dist/cjs/index.d.ts +250 -3
- package/dist/esm/index.css +1 -1
- package/dist/esm/index.css.map +4 -4
- package/dist/esm/index.d.ts +250 -3
- package/dist/esm/index.mjs +9 -8
- package/dist/esm/index.mjs.map +4 -4
- package/package.json +23 -31
package/dist/cjs/index.d.ts
CHANGED
|
@@ -36,6 +36,7 @@ import type { ErrorInfo } from 'react';
|
|
|
36
36
|
import type { ExtendedInternalSchemaElement } from '@medplum/core';
|
|
37
37
|
import type { ExtractResource } from '@medplum/fhirtypes';
|
|
38
38
|
import type { Filter } from '@medplum/core';
|
|
39
|
+
import { ForwardRefExoticComponent } from 'react';
|
|
39
40
|
import { getPreferredPharmaciesFromPatient } from '@medplum/core';
|
|
40
41
|
import type { HumanName } from '@medplum/fhirtypes';
|
|
41
42
|
import type { HumanNameFormatOptions } from '@medplum/core';
|
|
@@ -83,6 +84,7 @@ import type { QuestionnaireResponseItemAnswer } from '@medplum/fhirtypes';
|
|
|
83
84
|
import type { Range as Range_2 } from '@medplum/fhirtypes';
|
|
84
85
|
import type { Ratio } from '@medplum/fhirtypes';
|
|
85
86
|
import type { ReactNode } from 'react';
|
|
87
|
+
import { RefAttributes } from 'react';
|
|
86
88
|
import type { Reference } from '@medplum/fhirtypes';
|
|
87
89
|
import { removePreferredPharmacyFromPatient } from '@medplum/core';
|
|
88
90
|
import type { RequestGroup } from '@medplum/fhirtypes';
|
|
@@ -226,6 +228,9 @@ export declare function addYearToDateFilter(definition: SearchRequest, field: st
|
|
|
226
228
|
*/
|
|
227
229
|
export declare function addYesterdayFilter(definition: SearchRequest, field: string): SearchRequest;
|
|
228
230
|
|
|
231
|
+
/** Allergies section — searches for AllergyIntolerance resources. */
|
|
232
|
+
export declare const AllergiesSection: PatientSummarySectionConfig;
|
|
233
|
+
|
|
229
234
|
export declare function AnnotationInput(props: AnnotationInputProps): JSX.Element;
|
|
230
235
|
|
|
231
236
|
export declare interface AnnotationInputProps extends ComplexTypeInputProps<Annotation> {
|
|
@@ -520,6 +525,8 @@ export declare interface CodingInputProps extends Omit<ValueSetAutocompleteProps
|
|
|
520
525
|
readonly response?: QuestionnaireResponseItem;
|
|
521
526
|
}
|
|
522
527
|
|
|
528
|
+
export declare function codingToValueSetElement(coding: Coding): ValueSetExpansionContains;
|
|
529
|
+
|
|
523
530
|
export declare type Command<T = string> = {
|
|
524
531
|
command: string;
|
|
525
532
|
value?: T;
|
|
@@ -570,6 +577,23 @@ export declare function convertIsoToLocal(isoString: string | undefined): string
|
|
|
570
577
|
*/
|
|
571
578
|
export declare function convertLocalToIso(localString: string | undefined): string;
|
|
572
579
|
|
|
580
|
+
/**
|
|
581
|
+
* Labs section — searches for both ServiceRequest and DiagnosticReport resources.
|
|
582
|
+
* Accepts an optional `onRequestLabs` callback via closure.
|
|
583
|
+
* @param onRequestLabs - Optional callback invoked when the user requests labs.
|
|
584
|
+
* @returns A section config for labs.
|
|
585
|
+
*/
|
|
586
|
+
export declare function createLabsSection(onRequestLabs?: () => void): PatientSummarySectionConfig;
|
|
587
|
+
|
|
588
|
+
/**
|
|
589
|
+
* Pharmacies section — no FHIR searches; the Pharmacies component resolves its own data
|
|
590
|
+
* from patient extensions.
|
|
591
|
+
* Accepts an optional `pharmacyDialogComponent` via closure.
|
|
592
|
+
* @param pharmacyDialogComponent - Optional component for the pharmacy search dialog.
|
|
593
|
+
* @returns A section config for pharmacies.
|
|
594
|
+
*/
|
|
595
|
+
export declare function createPharmaciesSection(pharmacyDialogComponent?: ComponentType<PharmacyDialogBaseProps>): PatientSummarySectionConfig;
|
|
596
|
+
|
|
573
597
|
export { createPreferredPharmacyExtension }
|
|
574
598
|
|
|
575
599
|
/**
|
|
@@ -598,6 +622,12 @@ export declare interface DateTimeInputProps extends PrimitiveTypeInputProps {
|
|
|
598
622
|
readonly onChange?: (value: string) => void;
|
|
599
623
|
}
|
|
600
624
|
|
|
625
|
+
/**
|
|
626
|
+
* Default item component for resource autocomplete inputs.
|
|
627
|
+
* Displays the resource avatar, display name, and birth date or ID.
|
|
628
|
+
*/
|
|
629
|
+
export declare const DefaultResourceItemComponent: ForwardRefExoticComponent<AsyncAutocompleteOption<Resource> & RefAttributes<HTMLDivElement>>;
|
|
630
|
+
|
|
601
631
|
export declare function DefaultResourceTimeline(props: DefaultResourceTimelineProps): JSX.Element;
|
|
602
632
|
|
|
603
633
|
export declare interface DefaultResourceTimelineProps extends Pick<ResourceTimelineProps<Resource>, 'getMenu'> {
|
|
@@ -612,6 +642,9 @@ export declare interface DefaultResourceTimelineProps extends Pick<ResourceTimel
|
|
|
612
642
|
*/
|
|
613
643
|
export declare function deleteFilter(definition: SearchRequest, index: number): SearchRequest;
|
|
614
644
|
|
|
645
|
+
/** Demographics section — no FHIR searches, renders patient info items directly. */
|
|
646
|
+
export declare const DemographicsSection: PatientSummarySectionConfig;
|
|
647
|
+
|
|
615
648
|
export declare function DescriptionList(props: DescriptionListProps): JSX.Element;
|
|
616
649
|
|
|
617
650
|
export declare function DescriptionListEntry(props: DescriptionListEntryProps): JSX.Element;
|
|
@@ -664,6 +697,13 @@ export declare interface EncounterTimelineProps extends Pick<ResourceTimelinePro
|
|
|
664
697
|
readonly encounter: Encounter | Reference<Encounter>;
|
|
665
698
|
}
|
|
666
699
|
|
|
700
|
+
export declare interface EPrescribingIFrameOptions {
|
|
701
|
+
readonly patientId?: string;
|
|
702
|
+
readonly onPatientSyncSuccess?: () => void;
|
|
703
|
+
readonly onIframeSuccess?: (url: string) => void;
|
|
704
|
+
readonly onError?: (err: unknown) => void;
|
|
705
|
+
}
|
|
706
|
+
|
|
667
707
|
/**
|
|
668
708
|
* ErrorBoundary is a React component that handles errors in its child components.
|
|
669
709
|
* See: https://reactjs.org/docs/error-boundaries.html
|
|
@@ -729,6 +769,20 @@ export declare interface FhirPathTableProps {
|
|
|
729
769
|
readonly onBulk?: (ids: string[]) => void;
|
|
730
770
|
}
|
|
731
771
|
|
|
772
|
+
/** Descriptor for a single FHIR search that a section needs. */
|
|
773
|
+
export declare interface FhirSearchDescriptor {
|
|
774
|
+
/** Unique key used to access this search's results via `SectionResults[key]`. */
|
|
775
|
+
readonly key: string;
|
|
776
|
+
readonly resourceType: ResourceType;
|
|
777
|
+
/** Which search param references the patient. Defaults to 'subject'. Examples: 'patient', 'beneficiary'. */
|
|
778
|
+
readonly patientParam?: string;
|
|
779
|
+
/**
|
|
780
|
+
* Additional search params — same format as the 2nd arg to medplum.searchResources().
|
|
781
|
+
* When using a string, do not include _count or _sort; they are appended automatically.
|
|
782
|
+
*/
|
|
783
|
+
readonly query?: QueryTypes;
|
|
784
|
+
}
|
|
785
|
+
|
|
732
786
|
export declare function Form(props: FormProps): JSX.Element;
|
|
733
787
|
|
|
734
788
|
export declare interface FormProps {
|
|
@@ -759,6 +813,14 @@ export declare interface FormSectionProps {
|
|
|
759
813
|
*/
|
|
760
814
|
export declare function getAppName(): string;
|
|
761
815
|
|
|
816
|
+
/**
|
|
817
|
+
* Returns the default set of sections, matching the original hardcoded PatientSummary layout.
|
|
818
|
+
* The `onRequestLabs` callback is threaded through to the Labs section.
|
|
819
|
+
* @param onRequestLabs - Optional callback invoked when the user requests labs.
|
|
820
|
+
* @returns The default array of section configs.
|
|
821
|
+
*/
|
|
822
|
+
export declare function getDefaultSections(onRequestLabs?: () => void): PatientSummarySectionConfig[];
|
|
823
|
+
|
|
762
824
|
export declare function getErrorsForInput(outcome: OperationOutcome | undefined, expression: string | undefined): string | undefined;
|
|
763
825
|
|
|
764
826
|
/**
|
|
@@ -895,6 +957,9 @@ export declare interface InfoBarValueProps {
|
|
|
895
957
|
*/
|
|
896
958
|
export declare function initRecaptcha(siteKey: string): void;
|
|
897
959
|
|
|
960
|
+
/** Insurance section — searches for Coverage resources. */
|
|
961
|
+
export declare const InsuranceSection: PatientSummarySectionConfig;
|
|
962
|
+
|
|
898
963
|
export declare type IntervalGroup = {
|
|
899
964
|
id: string;
|
|
900
965
|
filters: Record<string, any>;
|
|
@@ -947,6 +1012,9 @@ export declare function isSupportedProfileStructureDefinition(profile?: Structur
|
|
|
947
1012
|
*/
|
|
948
1013
|
export declare function killEvent(e: Event | SyntheticEvent): void;
|
|
949
1014
|
|
|
1015
|
+
/** Default Labs section constant (no onRequestLabs callback). */
|
|
1016
|
+
export declare const LabsSection: PatientSummarySectionConfig;
|
|
1017
|
+
|
|
950
1018
|
export declare function LinkTabs(props: LinkTabsProps): JSX.Element;
|
|
951
1019
|
|
|
952
1020
|
export declare interface LinkTabsProps extends Omit<TabsProps, 'value' | 'onChange'> {
|
|
@@ -970,6 +1038,9 @@ export declare interface MeasureReportDisplayProps {
|
|
|
970
1038
|
readonly measureReport: MeasureReport | Reference<MeasureReport>;
|
|
971
1039
|
}
|
|
972
1040
|
|
|
1041
|
+
/** Medications section — searches for MedicationRequest resources. */
|
|
1042
|
+
export declare const MedicationsSection: PatientSummarySectionConfig;
|
|
1043
|
+
|
|
973
1044
|
export declare interface MedplumContext {
|
|
974
1045
|
medplum: MedplumClient;
|
|
975
1046
|
navigate: MedplumNavigateFunction;
|
|
@@ -1033,6 +1104,29 @@ export declare interface MoneyInputProps extends ComplexTypeInputProps<Money> {
|
|
|
1033
1104
|
readonly placeholder?: string;
|
|
1034
1105
|
}
|
|
1035
1106
|
|
|
1107
|
+
export declare function MultiResourceInput<T extends Resource = Resource>(props: MultiResourceInputProps<T>): JSX.Element | null;
|
|
1108
|
+
|
|
1109
|
+
export declare interface MultiResourceInputProps<T extends Resource = Resource> {
|
|
1110
|
+
readonly resourceType: T['resourceType'];
|
|
1111
|
+
readonly name: string;
|
|
1112
|
+
/**
|
|
1113
|
+
* Initial selected values. Each entry may be a full resource or a reference that will be
|
|
1114
|
+
* resolved on mount. Treated as uncontrolled — changes after mount are ignored.
|
|
1115
|
+
*/
|
|
1116
|
+
readonly defaultValue?: (T | Reference<T>)[];
|
|
1117
|
+
readonly searchCriteria?: Record<string, string>;
|
|
1118
|
+
readonly placeholder?: string;
|
|
1119
|
+
readonly required?: boolean;
|
|
1120
|
+
readonly itemComponent?: (props: AsyncAutocompleteOption<T>) => JSX.Element | ReactNode;
|
|
1121
|
+
/** Called whenever the selection changes. Receives the full array of selected resources. */
|
|
1122
|
+
readonly onChange?: (value: T[]) => void;
|
|
1123
|
+
readonly disabled?: boolean;
|
|
1124
|
+
readonly label?: AsyncAutocompleteProps<T>['label'];
|
|
1125
|
+
readonly error?: AsyncAutocompleteProps<T>['error'];
|
|
1126
|
+
/** Maximum number of resources that can be selected. Defaults to uncapped. */
|
|
1127
|
+
readonly maxValues?: number;
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1036
1130
|
export declare function Navbar(props: NavbarProps): JSX.Element;
|
|
1037
1131
|
|
|
1038
1132
|
export declare interface NavbarLink {
|
|
@@ -1150,6 +1244,13 @@ export declare interface ParticipantFilterProps {
|
|
|
1150
1244
|
|
|
1151
1245
|
export { PATIENT_PREFERRED_PHARMACY_URL }
|
|
1152
1246
|
|
|
1247
|
+
export declare function PatientAccountsForm(props: PatientAccountsFormProps): JSX.Element;
|
|
1248
|
+
|
|
1249
|
+
export declare interface PatientAccountsFormProps {
|
|
1250
|
+
readonly patient: Patient;
|
|
1251
|
+
readonly onSaved?: () => void;
|
|
1252
|
+
}
|
|
1253
|
+
|
|
1153
1254
|
export declare function PatientExportForm(props: PatientExportFormProps): JSX.Element;
|
|
1154
1255
|
|
|
1155
1256
|
export declare interface PatientExportFormProps {
|
|
@@ -1164,11 +1265,34 @@ export declare interface PatientHeaderProps {
|
|
|
1164
1265
|
|
|
1165
1266
|
export declare function PatientSummary(props: PatientSummaryProps): JSX.Element | null;
|
|
1166
1267
|
|
|
1268
|
+
export declare interface PatientSummaryData {
|
|
1269
|
+
/** One SectionResults map per section, indexed to match the sections array. */
|
|
1270
|
+
readonly sectionData: SectionResults[];
|
|
1271
|
+
readonly loading: boolean;
|
|
1272
|
+
readonly error: Error | undefined;
|
|
1273
|
+
}
|
|
1274
|
+
|
|
1167
1275
|
export declare interface PatientSummaryProps {
|
|
1168
1276
|
readonly patient: Patient | Reference<Patient>;
|
|
1169
1277
|
readonly onClickResource?: (resource: Resource) => void;
|
|
1170
1278
|
readonly onRequestLabs?: () => void;
|
|
1171
|
-
readonly
|
|
1279
|
+
readonly sections?: PatientSummarySectionConfig[];
|
|
1280
|
+
}
|
|
1281
|
+
|
|
1282
|
+
/**
|
|
1283
|
+
* Configuration for a single section in the PatientSummary.
|
|
1284
|
+
* The `searches` field is an array to support sections like Labs which need multiple resource types.
|
|
1285
|
+
*/
|
|
1286
|
+
export declare interface PatientSummarySectionConfig {
|
|
1287
|
+
readonly key: string;
|
|
1288
|
+
readonly title: string;
|
|
1289
|
+
readonly searches?: FhirSearchDescriptor[];
|
|
1290
|
+
/**
|
|
1291
|
+
* React component that renders this section.
|
|
1292
|
+
* Using ComponentType (rather than a render-prop function) ensures React treats it as a real
|
|
1293
|
+
* component, so hooks inside custom sections work correctly.
|
|
1294
|
+
*/
|
|
1295
|
+
readonly component: ComponentType<SectionRenderContext>;
|
|
1172
1296
|
}
|
|
1173
1297
|
|
|
1174
1298
|
export declare function PatientTimeline(props: PatientTimelineProps): JSX.Element;
|
|
@@ -1186,6 +1310,9 @@ export declare interface PharmaciesProps {
|
|
|
1186
1310
|
readonly pharmacyDialogComponent?: ComponentType<PharmacyDialogBaseProps>;
|
|
1187
1311
|
}
|
|
1188
1312
|
|
|
1313
|
+
/** Default Pharmacies section constant (no pharmacy dialog component). */
|
|
1314
|
+
export declare const PharmaciesSection: PatientSummarySectionConfig;
|
|
1315
|
+
|
|
1189
1316
|
export { PHARMACY_PREFERENCE_TYPE_SYSTEM }
|
|
1190
1317
|
|
|
1191
1318
|
export { PHARMACY_TYPE_PREFERRED }
|
|
@@ -1238,6 +1365,9 @@ export declare interface PrimitiveTypeInputProps {
|
|
|
1238
1365
|
readonly disabled?: boolean;
|
|
1239
1366
|
}
|
|
1240
1367
|
|
|
1368
|
+
/** Problem List section — searches for Condition resources. */
|
|
1369
|
+
export declare const ProblemListSection: PatientSummarySectionConfig;
|
|
1370
|
+
|
|
1241
1371
|
export declare function QuantityDisplay(props: QuantityDisplayProps): JSX.Element | null;
|
|
1242
1372
|
|
|
1243
1373
|
export declare interface QuantityDisplayProps {
|
|
@@ -1586,8 +1716,15 @@ export declare interface ResourceHistoryTableProps {
|
|
|
1586
1716
|
readonly id?: string;
|
|
1587
1717
|
}
|
|
1588
1718
|
|
|
1719
|
+
/**
|
|
1720
|
+
* @param props - The props for the ResourceInput component.
|
|
1721
|
+
* @returns The ResourceInput component.
|
|
1722
|
+
*/
|
|
1589
1723
|
export declare function ResourceInput<T extends Resource = Resource>(props: ResourceInputProps<T>): JSX.Element | null;
|
|
1590
1724
|
|
|
1725
|
+
/**
|
|
1726
|
+
* @deprecated Use MultiResourceInput instead, which supports multiple default and selected values.
|
|
1727
|
+
*/
|
|
1591
1728
|
export declare interface ResourceInputProps<T extends Resource = Resource> {
|
|
1592
1729
|
readonly resourceType: T['resourceType'];
|
|
1593
1730
|
readonly name: string;
|
|
@@ -1786,8 +1923,20 @@ export declare class SearchLoadEvent extends Event {
|
|
|
1786
1923
|
|
|
1787
1924
|
export declare type SearchOptions = {
|
|
1788
1925
|
debounceMs?: number;
|
|
1926
|
+
enabled?: boolean;
|
|
1789
1927
|
};
|
|
1790
1928
|
|
|
1929
|
+
/** Context passed to every section's component. */
|
|
1930
|
+
export declare interface SectionRenderContext {
|
|
1931
|
+
readonly patient: Patient;
|
|
1932
|
+
readonly onClickResource?: (resource: Resource) => void;
|
|
1933
|
+
/** Named results for each search in the section's `searches` array, keyed by `FhirSearchDescriptor.key`. */
|
|
1934
|
+
readonly results: SectionResults;
|
|
1935
|
+
}
|
|
1936
|
+
|
|
1937
|
+
/** Named map of FHIR results for a section: `results[searchKey]` returns the Resource[] for that search. */
|
|
1938
|
+
export declare type SectionResults = Record<string, Resource[]>;
|
|
1939
|
+
|
|
1791
1940
|
/**
|
|
1792
1941
|
* Sends a structured command to the iframe using postMessage.
|
|
1793
1942
|
*
|
|
@@ -1853,6 +2002,9 @@ export declare function setQuestionnaireItemReferenceTargetTypes(item: Questionn
|
|
|
1853
2002
|
*/
|
|
1854
2003
|
export declare function setSort(definition: SearchRequest, sort: string, desc?: boolean): SearchRequest;
|
|
1855
2004
|
|
|
2005
|
+
/** Sexual Orientation section — searches for Observation resources by LOINC 76690-7. */
|
|
2006
|
+
export declare const SexualOrientationSection: PatientSummarySectionConfig;
|
|
2007
|
+
|
|
1856
2008
|
export declare function SignatureInput(props: SignatureInputProps): JSX.Element;
|
|
1857
2009
|
|
|
1858
2010
|
export declare interface SignatureInputProps extends PaperProps {
|
|
@@ -1912,6 +2064,9 @@ export declare interface SmartSearchResponse {
|
|
|
1912
2064
|
};
|
|
1913
2065
|
}
|
|
1914
2066
|
|
|
2067
|
+
/** Smoking Status section — searches for Observation resources by LOINC 72166-2. */
|
|
2068
|
+
export declare const SmokingStatusSection: PatientSummarySectionConfig;
|
|
2069
|
+
|
|
1915
2070
|
/**
|
|
1916
2071
|
* Sorts an array of resources in place by meta.lastUpdated ascending.
|
|
1917
2072
|
* @param resources - Array of resources.
|
|
@@ -1935,6 +2090,44 @@ export declare function SubmitButton(props: ButtonProps): JSX.Element;
|
|
|
1935
2090
|
|
|
1936
2091
|
export declare type SubmitButtonProps = Omit<ButtonProps, 'type' | 'loading'>;
|
|
1937
2092
|
|
|
2093
|
+
export declare interface SummaryResourceListOptions {
|
|
2094
|
+
/** Unique key for React reconciliation. */
|
|
2095
|
+
readonly key: string;
|
|
2096
|
+
/** Section title displayed in the collapsible header. */
|
|
2097
|
+
readonly title: string;
|
|
2098
|
+
/** FHIR search configuration. */
|
|
2099
|
+
readonly search: {
|
|
2100
|
+
readonly resourceType: ResourceType;
|
|
2101
|
+
/** Which search param references the patient. Defaults to 'subject'. */
|
|
2102
|
+
readonly patientParam?: string;
|
|
2103
|
+
/** Additional search params. */
|
|
2104
|
+
readonly query?: Record<string, string | number | boolean | undefined>;
|
|
2105
|
+
};
|
|
2106
|
+
/** Override the default display string for each resource. */
|
|
2107
|
+
readonly getDisplayString?: (resource: Resource) => string;
|
|
2108
|
+
/** Return a status badge config, or undefined to show no badge. */
|
|
2109
|
+
readonly getStatus?: (resource: Resource) => {
|
|
2110
|
+
label: string;
|
|
2111
|
+
color: string;
|
|
2112
|
+
} | undefined;
|
|
2113
|
+
/** Return secondary text (shown dimmed below the primary text). */
|
|
2114
|
+
readonly getSecondaryText?: (resource: Resource) => string | undefined;
|
|
2115
|
+
/** Filter resources before display. */
|
|
2116
|
+
readonly filter?: (resource: Resource) => boolean;
|
|
2117
|
+
/** Sort resources before display. */
|
|
2118
|
+
readonly sort?: (a: Resource, b: Resource) => number;
|
|
2119
|
+
/** Callback for the "+" add button. If omitted, no add button is shown. */
|
|
2120
|
+
readonly onAdd?: () => void;
|
|
2121
|
+
}
|
|
2122
|
+
|
|
2123
|
+
/**
|
|
2124
|
+
* Creates a `PatientSummarySectionConfig` that renders a list of resources
|
|
2125
|
+
* using the same visual pattern as built-in sections (CollapsibleSection + SummaryItem + StatusBadge).
|
|
2126
|
+
* @param options - Configuration for the resource list section.
|
|
2127
|
+
* @returns A section config that renders a generic resource list.
|
|
2128
|
+
*/
|
|
2129
|
+
export declare function summaryResourceListSection(options: SummaryResourceListOptions): PatientSummarySectionConfig;
|
|
2130
|
+
|
|
1938
2131
|
export declare type SupportedProfileStructureDefinition = StructureDefinition & {
|
|
1939
2132
|
url: NonNullable<StructureDefinition['url']>;
|
|
1940
2133
|
name: NonNullable<StructureDefinition['name']>;
|
|
@@ -1966,7 +2159,7 @@ export declare function ThreadInbox(props: ThreadInboxProps): JSX.Element;
|
|
|
1966
2159
|
* @param threadId - The id of the thread to select.
|
|
1967
2160
|
* @param subject - The default subject when creating a new thread.
|
|
1968
2161
|
* @param showPatientSummary - Whether to show the patient summary.
|
|
1969
|
-
* @param
|
|
2162
|
+
* @param sections - Optional sections configuration for the patient summary.
|
|
1970
2163
|
* @param onNew - A function to handle a new thread.
|
|
1971
2164
|
* @param getThreadUri - A function to build thread URIs.
|
|
1972
2165
|
* @param onChange - A function to handle search changes.
|
|
@@ -1978,7 +2171,7 @@ export declare interface ThreadInboxProps {
|
|
|
1978
2171
|
readonly threadId: string | undefined;
|
|
1979
2172
|
readonly subject?: Reference<Patient> | Patient;
|
|
1980
2173
|
readonly showPatientSummary?: boolean;
|
|
1981
|
-
readonly
|
|
2174
|
+
readonly sections?: PatientSummarySectionConfig[];
|
|
1982
2175
|
readonly onNew: (message: Communication) => void;
|
|
1983
2176
|
readonly getThreadUri: (topic: Communication) => string;
|
|
1984
2177
|
readonly onChange: (search: SearchRequest) => void;
|
|
@@ -2025,6 +2218,23 @@ export declare function typedValueToResponseItem(item: QuestionnaireItem, value:
|
|
|
2025
2218
|
|
|
2026
2219
|
export declare const useCachedBinaryUrl: (binaryUrl: string | undefined) => string | undefined;
|
|
2027
2220
|
|
|
2221
|
+
/**
|
|
2222
|
+
* Generic React hook that syncs a patient to an e-prescribing system and
|
|
2223
|
+
* returns the iframe URL.
|
|
2224
|
+
*
|
|
2225
|
+
* Executes the patient-sync bot first (if patientId is provided), then
|
|
2226
|
+
* the iframe bot to obtain the prescribing UI URL.
|
|
2227
|
+
*
|
|
2228
|
+
* Uses an effect cleanup flag so React 18 Strict Mode double-mount does not
|
|
2229
|
+
* trigger duplicate bot executions.
|
|
2230
|
+
*
|
|
2231
|
+
* @param syncBotIdentifier - Bot identifier for the patient sync bot.
|
|
2232
|
+
* @param iframeBotIdentifier - Bot identifier for the iframe URL bot.
|
|
2233
|
+
* @param options - Configuration and callback options.
|
|
2234
|
+
* @returns The e-prescribing iframe URL, or undefined while loading.
|
|
2235
|
+
*/
|
|
2236
|
+
export declare function useEPrescribingIFrame(syncBotIdentifier: Identifier, iframeBotIdentifier: Identifier, options: EPrescribingIFrameOptions): string | undefined;
|
|
2237
|
+
|
|
2028
2238
|
/**
|
|
2029
2239
|
* Returns the MedplumClient instance.
|
|
2030
2240
|
* This is a shortcut for useMedplumContext().medplum.
|
|
@@ -2069,6 +2279,38 @@ export declare interface UseNotificationCountOptions {
|
|
|
2069
2279
|
readonly subscriptionCriteria: string;
|
|
2070
2280
|
}
|
|
2071
2281
|
|
|
2282
|
+
/**
|
|
2283
|
+
* Hook that collects all FHIR searches from section configs, deduplicates them,
|
|
2284
|
+
* executes them in parallel, and routes results back to each section.
|
|
2285
|
+
* Uses Promise.allSettled so a single failing search does not block all sections —
|
|
2286
|
+
* sections whose searches fail gracefully receive empty arrays.
|
|
2287
|
+
* @param patient - The patient or patient reference to fetch data for.
|
|
2288
|
+
* @param sections - The section configs defining which searches to execute.
|
|
2289
|
+
* @returns Section data, loading state, and any error.
|
|
2290
|
+
*/
|
|
2291
|
+
export declare function usePatientSummaryData(patient: Patient | Reference<Patient>, sections: {
|
|
2292
|
+
readonly key: string;
|
|
2293
|
+
readonly searches?: FhirSearchDescriptor[];
|
|
2294
|
+
}[]): PatientSummaryData;
|
|
2295
|
+
|
|
2296
|
+
/**
|
|
2297
|
+
* Generic React hook that provides pharmacy search and add-to-favorites
|
|
2298
|
+
* functionality for any e-prescribing integration.
|
|
2299
|
+
*
|
|
2300
|
+
* Encapsulates calls to a search-pharmacy bot and an add-patient-pharmacy bot,
|
|
2301
|
+
* and can be composed with the generic `PharmacyDialog` component from `@medplum/react`.
|
|
2302
|
+
*
|
|
2303
|
+
* @param searchBotIdentifier - Bot identifier for the pharmacy search bot.
|
|
2304
|
+
* @param addPharmacyBotIdentifier - Bot identifier for the add-patient-pharmacy bot.
|
|
2305
|
+
* @returns An object with `searchPharmacies` and `addToFavorites` callbacks.
|
|
2306
|
+
*/
|
|
2307
|
+
export declare function usePharmacySearch(searchBotIdentifier: Identifier, addPharmacyBotIdentifier: Identifier): UsePharmacySearchReturn;
|
|
2308
|
+
|
|
2309
|
+
export declare interface UsePharmacySearchReturn {
|
|
2310
|
+
searchPharmacies: (params: PharmacySearchParams) => Promise<Organization[]>;
|
|
2311
|
+
addToFavorites: (params: AddFavoriteParams) => Promise<AddPharmacyResponse>;
|
|
2312
|
+
}
|
|
2313
|
+
|
|
2072
2314
|
/**
|
|
2073
2315
|
* React Hook to keep track of the passed-in value from the previous render of the containing component.
|
|
2074
2316
|
* @param value - The value to track.
|
|
@@ -2199,4 +2441,9 @@ export declare interface ValueSetAutocompleteProps extends Omit<AsyncAutocomplet
|
|
|
2199
2441
|
readonly withHelpText?: boolean;
|
|
2200
2442
|
}
|
|
2201
2443
|
|
|
2444
|
+
export declare function valueSetElementToCoding(element: ValueSetExpansionContains): Coding;
|
|
2445
|
+
|
|
2446
|
+
/** Vitals section — searches for Observation resources with category vital-signs. */
|
|
2447
|
+
export declare const VitalsSection: PatientSummarySectionConfig;
|
|
2448
|
+
|
|
2202
2449
|
export { }
|
package/dist/esm/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.AppShell_main{flex:1;background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6));overflow-x:auto}.Header_logoButton{padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:var(--mantine-primary-color-light-hover)}}.Header_user{padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:var(--mantine-primary-color-light-hover)}&[data-active]{background-color:var(--mantine-primary-color-light-hover)}}.Header_userName{font-weight:500;line-height:1px;margin-right:3px;@media (max-width: $mantine-breakpoint-xs){display:none}}.HeaderSearchInput_searchInput{input{width:220px;transition:width .1s ease-in-out}input:focus{width:400px}@media(max-width:800px){input{width:150px}input:focus{width:150px}}}.Navbar_navbar{padding:0;transition-property:width}.Navbar_logoButton{display:flex;align-items:center;justify-content:center;width:fit-content;height:fit-content;padding:8px 7px;border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}>*{display:block}}.Navbar_menuTitle{height:40px;margin:0;padding-left:10px;display:flex;align-items:flex-end;padding-bottom:8px;box-sizing:border-box;font-size:var(--mantine-font-size-xs);line-height:1;white-space:nowrap;overflow:hidden;color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-gray-6));opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}}.Navbar_menuTitle:empty,.Navbar_menuTitle:blank{display:none}.Navbar_link{width:100%;height:36px;border-radius:var(--mantine-radius-sm);font-weight:450;display:flex;align-items:center;justify-content:start;padding:0 var(--mantine-spacing-xs);color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));outline:none;overflow:hidden;text-overflow:ellipsis;text-decoration:none;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8));text-decoration:none}& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));stroke-width:2;width:18px;height:18px;min-width:18px;max-width:18px}&[data-active]{&,&:hover{background-color:light-dark(var(--mantine-color-gray-1),var(--mantine-color-dark-6));color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-5));& svg.tabler-icon{color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-6))}}.Navbar_dismissButton{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));& svg.tabler-icon{color:inherit}&:hover{color:light-dark(var(--mantine-color-gray-9),var(--mantine-color-gray-0))}}}}.Navbar_link:focus-visible{outline:none}.Navbar_linkLabel{margin-left:8px;white-space:nowrap;opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}}.Navbar_iconWrapper{position:relative;display:flex;align-items:center;justify-content:center}.Navbar_alertDot{position:absolute;bottom:-2px;left:13px;width:8px;height:8px;border-radius:50%;background-color:var(--mantine-color-red-6);pointer-events:none}.Navbar_linkCount{margin-left:auto;font-size:var(--mantine-font-size-xs);font-weight:500;color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-dark-3));white-space:nowrap;opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}&[data-alert]{color:var(--mantine-color-white);background-color:var(--mantine-color-red-6);font-weight:600;font-size:10px;min-width:18px;height:18px;line-height:18px;text-align:center;border-radius:9px;padding:0 5px}}.Navbar_dismissButton{display:none;margin-left:auto;align-items:center;justify-content:center;padding:4px;border-radius:4px;cursor:pointer}.Navbar_link:hover .Navbar_dismissButton{display:flex}.Navbar_link .Navbar_dismissButton{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));& svg.tabler-icon{color:inherit}&:hover{color:light-dark(var(--mantine-color-gray-9),var(--mantine-color-gray-0))}}.Navbar_addBookmarkLink{margin-top:40px;color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0))}}.Navbar_toggleButton{width:38px;height:36px;border-radius:var(--mantine-radius-sm);display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .1s ease;cursor:ew-resize;& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));stroke-width:2;width:18px;height:18px;min-width:18px;max-width:18px}&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}}.Navbar_divider{border-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4))}.Spotlight_actionSection[data-position=left]{margin-inline-end:var(--mantine-spacing-xs)}.Spotlight_actionSection[data-position=right]{margin-inline-start:var(--mantine-spacing-xs)}.Spotlight_action:where(:not([data-selected])):hover,.Spotlight_action:where(:not([data-selected])):active{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}.Spotlight_action:where([data-selected]){background-color:light-dark(var(--mantine-color-gray-1),var(--mantine-color-dark-6));color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-5))}.Spotlight_action:where([data-selected]) .Spotlight_actionDescription{color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-gray-5))}.Spotlight_actionsGroup{gap:4px;margin-top:4px;padding-top:var(--mantine-spacing-md)}.Spotlight_actionsGroup:first-child{margin-top:0;padding-top:calc(var(--mantine-spacing-md) - 2px)}.Spotlight_actionsGroup:not(:first-child){border-top:calc(.0625rem * var(--mantine-scale)) solid light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4))}.Spotlight_actionsGroup:before{padding-bottom:2px}.Spotlight_actionsList{padding-top:2px}.Spotlight_content{box-shadow:light-dark(0 .5rem 2rem rgba(0,0,0,.15),0 .5rem 2rem rgba(0,0,0,.5))}.DescriptionList_root{display:grid;grid-template-columns:30% 70%;margin:0;>dt,>dd{padding:var(--mantine-spacing-xs);border-top:.1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-dark-4));margin:0}>dt:first-of-type,>dd:first-of-type{border-top:0}}.DescriptionList_compact{grid-template-columns:auto 1fr;>dt,>dd{border:0;padding:0}>dt{padding-right:var(--mantine-spacing-xs)}>dd{padding-left:var(--mantine-spacing-xs)}>dt:last-of-type,>dd:last-of-type{padding-bottom:var(--mantine-spacing-xs)}}.Container_root{@media(max-width:800px){padding-left:4px;padding-right:4px}}.Panel_paper{margin:var(--mantine-spacing-xl) auto;padding:var(--mantine-spacing-md);@media(max-width:800px){padding:8px}& img{width:100%;max-width:100%}& video{width:100%;max-width:100%}}.Panel_fill{padding:0}.ChooseProfileForm_option{border-radius:var(--mantine-radius-sm);padding:8px 12px;cursor:pointer;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6));.ChooseProfileForm_iconBox{color:light-dark(var(--mantine-color-black),var(--mantine-color-white))}}}.ChooseProfileForm_iconBox{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--mantine-radius-sm);background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-dark-2))}.FormSection_dimmed{color:var(--mantine-color-dimmed)}.FormSection_preserveBreaks{white-space:pre-wrap}.ResourceArrayInput_indented{margin-top:.5rem;border-left:3px solid var(--mantine-color-gray-4);padding:.5rem 0 .5rem .5rem}.BackboneElementInput_nested{padding-left:var(--mantine-spacing-md);padding-top:var(--mantine-spacing-md);padding-bottom:var(--mantine-spacing-sm)}.CalendarInput_table{width:350px;& th{font-weight:400;font-size:11px;padding:8px;text-align:center}& td{padding:2px 4px}& td button{width:44px;height:44px;color:theme.colors[theme.primaryColor][5];font-size:16px;font-weight:500;text-align:center;padding:0;background-color:theme.colors[theme.primaryColor][0];border:0;border-radius:50px;cursor:pointer}& td button:hover{background-color:theme.colors[theme.primaryColor][1]}& td button:disabled{background-color:transparen;cursor:defaul;color:var(--mantine-color-gray-4);font-weight:400}}.BaseChat_chatPaper{height:100%;display:flex;flex-direction:column;overflow:hidden}.BaseChat_chatTitle{background-color:light-dark(var(--mantine-color-blue-7),var(--mantine-color-blue-8));color:light-dark(var(--mantine-color-white),var(--mantine-color-gray-3));font-size:var(--mantine-font-size-sm);font-weight:500;padding:var(--mantine-spacing-sm);user-select:none}.BaseChat_chatBody{background-color:var(--mantine-color-body);flex:1;min-height:0;position:relative}.BaseChat_chatScrollArea{padding:var(--mantine-spacing-xs)}.BaseChat_chatInputContainer{background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));flex-shrink:0;padding:6px 8px;position:relative}.BaseChat_chatBubbleOuterWrap{max-width:75%;padding-bottom:10px}.BaseChat_chatBubbleRightAlignedInnerWrap{display:flex;flex-direction:row-reverse}.BaseChat_chatBubbleLeftAlignedInnerWrap{display:flex;flex-direction:row}.BaseChat_chatBubble{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-blue-7));border-radius:var(--mantine-radius-lg);padding:var(--mantine-spacing-sm);min-width:40px;color:light-dark(var(--mantine-color-dark),var(--mantine-color-gray-2));& p{margin-top:.25rem;margin-bottom:.25rem}& pre{max-width:280px;overflow:auto}}.BaseChat_chatBubbleNameRight{text-align:right}.BaseChat_chatPendingFile{position:absolute;bottom:100%;left:0;right:0;background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));border-top:1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-dark-3));padding:4px 8px}.BaseChat_chatBubbleAttachmentWithText{margin-top:6px}.BaseChat_chatBubbleAttachmentIcon{flex-shrink:0;display:flex;align-items:center}.BaseChat_chatBubbleMenu{align-self:center}.ChatModal_iconContainer{position:fixed;bottom:.5rem;right:.5rem;z-index:100px}.ChatModal_icon{background-color:light-dark(var(--mantine-color-white),var(--mantine-color-dark-7));box-shadow:0 .2rem .4rem #0000000d,0 .2rem .4rem #0000001a}.ChatModal_chatModalContainer{position:fixed;bottom:3rem;right:.5rem;z-index:100px;width:400px;height:450px;max-height:450px;overflow:hidden;border-radius:var(--mantine-radius-md);box-shadow:0 .2rem .4rem #0000000d,0 .2rem .4rem #0000001a}.ChatListItem_content{word-wrap:break-word;overflow-wrap:break-word;white-space:normal;word-break:break-word}.ChatListItem_contentContainer:hover{background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-9))}.ChatListItem_contentContainer{transition:all .2s ease;cursor:pointer;border:1px solid transparent;text-decoration:none;color:light-dark(var(--mantine-color-dark-9),var(--mantine-color-gray-0))}.ChatListItem_contentContainer.ChatListItem_selected{background:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-9))}.ParticipantFilter_participantItem{padding:4px 0}.ParticipantFilter_participantItem:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-gray-9));border-radius:var(--mantine-radius-sm)}.CollapsibleSection_root{position:relative}.CollapsibleSection_header{width:100%;cursor:default}.CollapsibleSection_chevron{transition:transform .2s ease;cursor:pointer}.CollapsibleSection_chevron[data-collapsed]{transform:rotate(-90deg)}.CollapsibleSection_title{cursor:pointer}.CollapsibleSection_addButton{position:absolute;right:0;top:0;stroke-width:1}.SummaryItem_gradient{position:absolute;right:28px;top:0;bottom:0;width:48px;z-index:1;opacity:0;pointer-events:none;transition:opacity .2s}[data-mantine-color-scheme=dark] .SummaryItem_gradient{background:linear-gradient(to right,transparent,var(--mantine-color-dark-8))}[data-mantine-color-scheme=light] .SummaryItem_gradient{background:linear-gradient(to right,transparent,var(--mantine-color-white))}.SummaryItem_container{position:absolute;right:0;top:0;bottom:0;width:28px;z-index:2;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}[data-mantine-color-scheme=dark] .SummaryItem_container{background:var(--mantine-color-dark-8)}[data-mantine-color-scheme=light] .SummaryItem_container{background:var(--mantine-color-white)}.SummaryItem_chevron{position:static;margin:0;padding:0;transition:opacity .2s;opacity:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.SummaryItem_item:hover .SummaryItem_gradient,.SummaryItem_item:hover .SummaryItem_container{opacity:1;pointer-events:auto}.SummaryItem_item{position:relative;max-width:100%;cursor:pointer}.SummaryItem_itemText{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.PatientSummary_panel{height:100%}[data-mantine-color-scheme=dark] .PatientSummary_panel{background-color:var(--mantine-color-dark-8)}[data-mantine-color-scheme=light] .PatientSummary_panel{background-color:var(--mantine-color-white)}.PatientSummary_patientSummaryBadge{cursor:pointer}.PatientSummary_patientSummaryAddButton{opacity:0;transition:opacity .2s;position:absolute;right:0;top:0;transform:none;stroke-width:1}.PatientSummary_patientSummaryHeader{width:100%;cursor:default}.PatientSummary_patientSummaryHeader .mantine-ActionIcon-root,.PatientSummary_patientSummaryHeader .mantine-Text-root{cursor:pointer;margin:0}.PatientSummary_patientSummaryCollapseIcon{transition:transform .2s}.PatientSummary_patientSummaryCollapseIcon.PatientSummary_collapsed{transform:rotate(-90deg)}.NoteDisplay_noteBody{font-size:var(--mantine-font-size-sm)}.NoteDisplay_noteCite{font-size:var(--mantine-font-size-xs);margin-block-start:3}.NoteDisplay_noteRoot{padding:5px}.DiagnosticReportDisplay_table{border:.1px solid var(--mantine-color-gray-5);border-collapse:collapse;& td,th{border:.1px solid var(--mantine-color-gray-5);padding:4px}}.DiagnosticReportDisplay_criticalRow{background:light-dark(var(--mantine-color-red-1),var(--mantine-color-red-7));border:.1px solid var(--mantine-color-red-5);color:var(--mantine-color-red-5);font-weight:500;& td{border:.1px solid var(--mantine-color-red-5)}}.DiagnosticReportDisplay_noteBody{font-size:var(--mantine-font-size-sm)}.DiagnosticReportDisplay_noteCite{font-size:var(--mantine-font-size-xs);margin-block-start:3}.DiagnosticReportDisplay_noteRoot{padding:5px}.ThreadInbox_container{height:100%;display:flex;flex-direction:column;overflow:hidden;flex:1}.ThreadInbox_rightBorder{border-right:1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-gray-8))}.ResourceDiffRow_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiffRow_added{color:var(--mantine-color-green-7)}.ResourceDiffTable_root{border-collapse:collapse;width:100%;& tr{border-top:.1px solid var(--mantine-color-gray-3)}& th,td{padding:var(--mantine-spacing-sm) var(--mantine-spacing-sm);vertical-align:top;word-wrap:break-word;overflow-wrap:anywhere;white-space:normal;min-width:100px}}.ResourceDiffTable_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiffTable_added{color:var(--mantine-color-green-7)}.Timeline_item{white-space:pre-wrap}.Timeline_itemPadding{padding:0 16px 16px}.ResourceTimeline_pinnedComment{background-color:var(--mantine-color-blue-0)}.SearchControl_root{max-width:100%;overflow:auto;text-align:left;margin-bottom:20px}.SearchControl_table{cursor:pointer}.SearchControl_tr{&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6))}}.SearchControl_th{padding:0!important}.SearchControl_control{width:100%;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6))}}.SearchControl_icon{width:21px;height:21px;border-radius:21px}.InfoBar_root{display:flex;flex-direction:row;align-items:center;padding:8px 10px}.InfoBar_entry{display:inline-block;margin:5px 20px 5px 5px}.InfoBar_key{color:var(--mantine-color-gray-6);text-transform:uppercase;font-size:var(--mantine-font-size-xs);white-space:nowrap}.InfoBar_value{font-size:var(--mantine-font-size-md);font-weight:600;margin-left:0;white-space:nowrap}.LinkTabs_list{white-space:nowrap;flex-wrap:nowrap}.LinkTabs_link{color:var(--mantine-color-text);line-height:1;text-decoration:none;&:hover{text-decoration:none}}.PharmacyDialog_pharmacyItem{border:1px solid var(--mantine-color-gray-3);border-radius:var(--mantine-radius-sm);cursor:pointer;transition:border-color .2s,box-shadow .2s}.PharmacyDialog_pharmacyItem:hover{border-color:var(--mantine-color-blue-4)}.PharmacyDialog_pharmacyItemSelected{border:2px solid var(--mantine-color-blue-6);border-radius:var(--mantine-radius-sm);cursor:pointer}.PlanDefinitionBuilder_section{position:relative;padding:6px 0 16px;transition:all .1}.PlanDefinitionBuilder_hovering{border:1.5px solid var(--mantine-color-blue-5)}.PlanDefinitionBuilder_editing{border:1.5px solid var(--mantine-color-gray-1);border-left:4px solid var(--mantine-color-blue-5)}.QuestionnaireBuilder_section{position:relative;margin:4px 4px 8px;padding:6px 12px 16px 6px;border:1.5px solid var(--mantine-color-gray-1);border-radius:var(--mantine-radius-sm);transition:all .1}.QuestionnaireBuilder_hovering{border:1.5px solid var(--mantine-color-blue-5)}.QuestionnaireBuilder_editing{border:1.5px solid var(--mantine-color-gray-1);border-left:4px solid var(--mantine-color-blue-5);min-height:100px}.QuestionnaireBuilder_questionBody{max-width:600px}.QuestionnaireBuilder_topActions{position:absolute;right:32px;top:1px;padding:4px;color:var(--mantine-color-gray-5);font-size:var(--mantine-font-size-xs)}.QuestionnaireBuilder_bottomActions{position:absolute;right:4px;bottom:0;--text-fz: var(--mantine-font-size-xs);& a{margin-left:8px}}.QuestionnaireBuilder_movementActions{position:absolute;right:8px;top:0;padding-top:8px;font-size:var(--mantine-font-size-xs);& a{margin-left:8px}}.QuestionnaireBuilder_movementIcons{color:var(--mantine-color-gray-5)}.QuestionnaireBuilder_columnAlignment{display:flex;flex-direction:column}.QuestionnaireBuilder_linkIdInput{width:100px;margin-bottom:4px}.QuestionnaireBuilder_typeSelect{width:100px}.QuestionnaireBuilder_preserveBreaks{white-space:pre-wrap}.ReferenceRangeEditor_section{position:relative;margin:4px 4px 8px;padding:6px 12px 16px 6px;border:1.5px solid var(--mantine-color-gray-3);border-radius:var(--mantine-radius-sm);transition:all .1}.ResourceBlame_container{overflow-x:auto}.ResourceBlame_root{border:.1px solid var(--mantine-color-gray-3);border-collapse:collapse;border-radius:var(--mantine-radius-sm);border-spacing:0;font-size:var(--mantine-font-size-xs);width:100%;& td{padding:2px 4px 0;vertical-align:top;white-space:nowrap}}.ResourceBlame_startRow{border-top:.1px solid var(--mantine-color-gray-3);white-space:nowrap}.ResourceBlame_normalRow{border-top:0;white-space:nowrap}.ResourceBlame_author{line-height:10px}.ResourceBlame_dateTime{border-right:.1px solid var(--mantine-color-gray-3);line-height:10px;text-align:right}.ResourceBlame_lineNumber{background-color:var(--mantine-color-gray-1);border:0;color:var(--mantine-color-gray-5);font-family:var(--mantine-font-family-monospace);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);text-align:right}.ResourceBlame_line{font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.ResourceBlame_pre{margin:0}.ResourceDiff_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiff_added{color:var(--mantine-color-green-7)}.ResourceForm_splitButton{border-top-right-radius:0;border-bottom-right-radius:0}.ResourceForm_menuControl{border-top-left-radius:0;border-bottom-left-radius:0;border:0;border-left:rem(1px) solid var(--mantine-color-body)}.Scheduler_container{display:flex;min-height:400px}.Scheduler_info{min-width:300px;padding:20px;border-right:1px solid var(--mantine-color-gray-3)}.Scheduler_selection{min-width:300px;padding:20px}
|
|
1
|
+
.AppShell_main{flex:1;background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6));overflow-x:auto}.Header_logoButton{padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:var(--mantine-primary-color-light-hover)}}.Header_user{padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:var(--mantine-primary-color-light-hover)}&[data-active]{background-color:var(--mantine-primary-color-light-hover)}}.Header_userName{font-weight:500;line-height:1px;margin-right:3px;@media (max-width: $mantine-breakpoint-xs){display:none}}.HeaderSearchInput_searchInput{input{width:220px;transition:width .1s ease-in-out}input:focus{width:400px}@media(max-width:800px){input{width:150px}input:focus{width:150px}}}.Navbar_navbar{padding:0;transition-property:width}.Navbar_logoButton{display:flex;align-items:center;justify-content:center;width:fit-content;height:fit-content;padding:8px 7px;border-radius:var(--mantine-radius-sm);transition:background-color .1s ease;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}>*{display:block}}.Navbar_menuTitle{height:40px;margin:0;padding-left:10px;display:flex;align-items:flex-end;padding-bottom:8px;box-sizing:border-box;font-size:var(--mantine-font-size-xs);line-height:1;white-space:nowrap;overflow:hidden;color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-gray-6));opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}}.Navbar_menuTitle:empty,.Navbar_menuTitle:blank{display:none}.Navbar_link{width:100%;height:36px;border-radius:var(--mantine-radius-sm);font-weight:450;display:flex;align-items:center;justify-content:start;padding:0 var(--mantine-spacing-xs);color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));outline:none;overflow:hidden;text-overflow:ellipsis;text-decoration:none;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8));text-decoration:none}& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));stroke-width:2;width:18px;height:18px;min-width:18px;max-width:18px}&[data-active]{&,&:hover{background-color:light-dark(var(--mantine-color-gray-1),var(--mantine-color-dark-6));color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-5));& svg.tabler-icon{color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-6))}}.Navbar_dismissButton{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));& svg.tabler-icon{color:inherit}&:hover{color:light-dark(var(--mantine-color-gray-9),var(--mantine-color-gray-0))}}}}.Navbar_link:focus-visible{outline:none}.Navbar_linkLabel{margin-left:8px;white-space:nowrap;opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}}.Navbar_iconWrapper{position:relative;display:flex;align-items:center;justify-content:center}.Navbar_alertDot{position:absolute;bottom:-2px;left:13px;width:8px;height:8px;border-radius:50%;background-color:var(--mantine-color-red-6);pointer-events:none}.Navbar_linkCount{margin-left:auto;font-size:var(--mantine-font-size-xs);font-weight:500;color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-dark-3));white-space:nowrap;opacity:0;transition:opacity .15s ease;&[data-opened]{opacity:1}&[data-alert]{color:var(--mantine-color-white);background-color:var(--mantine-color-red-6);font-weight:600;font-size:10px;min-width:18px;height:18px;line-height:18px;text-align:center;border-radius:9px;padding:0 5px}}.Navbar_dismissButton{display:none;margin-left:auto;align-items:center;justify-content:center;padding:4px;border-radius:4px;cursor:pointer}.Navbar_link:hover .Navbar_dismissButton{display:flex}.Navbar_link .Navbar_dismissButton{color:light-dark(var(--mantine-color-gray-5),var(--mantine-color-dark-3));& svg.tabler-icon{color:inherit}&:hover{color:light-dark(var(--mantine-color-gray-9),var(--mantine-color-gray-0))}}.Navbar_addBookmarkLink{margin-top:40px;color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0))}}.Navbar_toggleButton{width:38px;height:36px;border-radius:var(--mantine-radius-sm);display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .1s ease;cursor:ew-resize;& svg.tabler-icon{color:light-dark(var(--mantine-color-gray-7),var(--mantine-color-dark-0));stroke-width:2;width:18px;height:18px;min-width:18px;max-width:18px}&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}}.Navbar_divider{border-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4))}.Spotlight_actionSection[data-position=left]{margin-inline-end:var(--mantine-spacing-xs)}.Spotlight_actionSection[data-position=right]{margin-inline-start:var(--mantine-spacing-xs)}.Spotlight_action:where(:not([data-selected])):hover,.Spotlight_action:where(:not([data-selected])):active{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-8))}.Spotlight_action:where([data-selected]){background-color:light-dark(var(--mantine-color-gray-1),var(--mantine-color-dark-6));color:light-dark(var(--mantine-primary-color-light-color),var(--mantine-primary-color-5))}.Spotlight_action:where([data-selected]) .Spotlight_actionDescription{color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-gray-5))}.Spotlight_actionsGroup{gap:4px;margin-top:4px;padding-top:var(--mantine-spacing-md)}.Spotlight_actionsGroup:first-child{margin-top:0;padding-top:calc(var(--mantine-spacing-md) - 2px)}.Spotlight_actionsGroup:not(:first-child){border-top:calc(.0625rem * var(--mantine-scale)) solid light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4))}.Spotlight_actionsGroup:before{padding-bottom:2px}.Spotlight_actionsList{padding-top:2px}.Spotlight_content{box-shadow:light-dark(0 .5rem 2rem rgba(0,0,0,.15),0 .5rem 2rem rgba(0,0,0,.5))}.DescriptionList_root{display:grid;grid-template-columns:30% 70%;margin:0;>dt,>dd{padding:var(--mantine-spacing-xs);border-top:.1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-dark-4));margin:0}>dt:first-of-type,>dd:first-of-type{border-top:0}}.DescriptionList_compact{grid-template-columns:auto 1fr;>dt,>dd{border:0;padding:0}>dt{padding-right:var(--mantine-spacing-xs)}>dd{padding-left:var(--mantine-spacing-xs)}>dt:last-of-type,>dd:last-of-type{padding-bottom:var(--mantine-spacing-xs)}}.Container_root{@media(max-width:800px){padding-left:4px;padding-right:4px}}.Panel_paper{margin:var(--mantine-spacing-xl) auto;padding:var(--mantine-spacing-md);@media(max-width:800px){padding:8px}& img{width:100%;max-width:100%}& video{width:100%;max-width:100%}}.Panel_fill{padding:0}.ChooseProfileForm_option{border-radius:var(--mantine-radius-sm);padding:8px 12px;cursor:pointer;&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6));.ChooseProfileForm_iconBox{color:light-dark(var(--mantine-color-black),var(--mantine-color-white))}}}.ChooseProfileForm_iconBox{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--mantine-radius-sm);background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));color:light-dark(var(--mantine-color-gray-6),var(--mantine-color-dark-2))}.FormSection_dimmed{color:var(--mantine-color-dimmed)}.FormSection_preserveBreaks{white-space:pre-wrap}.ResourceArrayInput_indented{margin-top:.5rem;border-left:3px solid var(--mantine-color-gray-4);padding:.5rem 0 .5rem .5rem}.BackboneElementInput_nested{padding-left:var(--mantine-spacing-md);padding-top:var(--mantine-spacing-md);padding-bottom:var(--mantine-spacing-sm)}.CalendarInput_table{width:350px;& th{font-weight:400;font-size:11px;padding:8px;text-align:center}& td{padding:2px 4px}& td button{width:44px;height:44px;color:theme.colors[theme.primaryColor][5];font-size:16px;font-weight:500;text-align:center;padding:0;background-color:theme.colors[theme.primaryColor][0];border:0;border-radius:50px;cursor:pointer}& td button:hover{background-color:theme.colors[theme.primaryColor][1]}& td button:disabled{background-color:transparen;cursor:defaul;color:var(--mantine-color-gray-4);font-weight:400}}.BaseChat_chatPaper{height:100%;display:flex;flex-direction:column;overflow:hidden}.BaseChat_chatTitle{background-color:light-dark(var(--mantine-color-blue-7),var(--mantine-color-blue-8));color:light-dark(var(--mantine-color-white),var(--mantine-color-gray-3));font-size:var(--mantine-font-size-sm);font-weight:500;padding:var(--mantine-spacing-sm);user-select:none}.BaseChat_chatBody{background-color:var(--mantine-color-body);flex:1;min-height:0;position:relative}.BaseChat_chatScrollArea{padding:var(--mantine-spacing-xs)}.BaseChat_chatInputContainer{background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));flex-shrink:0;padding:6px 8px;position:relative}.BaseChat_chatBubbleOuterWrap{max-width:75%;padding-bottom:10px}.BaseChat_chatBubbleRightAlignedInnerWrap{display:flex;flex-direction:row-reverse}.BaseChat_chatBubbleLeftAlignedInnerWrap{display:flex;flex-direction:row}.BaseChat_chatBubble{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-blue-7));border-radius:var(--mantine-radius-lg);padding:var(--mantine-spacing-sm);min-width:40px;color:light-dark(var(--mantine-color-dark),var(--mantine-color-gray-2));& p{margin-top:.25rem;margin-bottom:.25rem}& pre{max-width:280px;overflow:auto}}.BaseChat_chatBubbleNameRight{text-align:right}.BaseChat_chatPendingFile{position:absolute;bottom:100%;left:0;right:0;background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-4));border-top:1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-dark-3));padding:4px 8px}.BaseChat_chatBubbleAttachmentWithText{margin-top:6px}.BaseChat_chatBubbleAttachmentIcon{flex-shrink:0;display:flex;align-items:center}.BaseChat_chatBubbleMenu{align-self:center}.ChatModal_iconContainer{position:fixed;bottom:.5rem;right:.5rem;z-index:100px}.ChatModal_icon{background-color:light-dark(var(--mantine-color-white),var(--mantine-color-dark-7));box-shadow:0 .2rem .4rem #0000000d,0 .2rem .4rem #0000001a}.ChatModal_chatModalContainer{position:fixed;bottom:3rem;right:.5rem;z-index:100px;width:400px;height:450px;max-height:450px;overflow:hidden;border-radius:var(--mantine-radius-md);box-shadow:0 .2rem .4rem #0000000d,0 .2rem .4rem #0000001a}.ChatListItem_content{word-wrap:break-word;overflow-wrap:break-word;white-space:normal;word-break:break-word}.ChatListItem_contentContainer:hover{background-color:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-9))}.ChatListItem_contentContainer{transition:all .2s ease;cursor:pointer;border:1px solid transparent;text-decoration:none;color:light-dark(var(--mantine-color-dark-9),var(--mantine-color-gray-0))}.ChatListItem_contentContainer.ChatListItem_selected{background:light-dark(var(--mantine-color-gray-2),var(--mantine-color-dark-9))}.ParticipantFilter_participantItem{padding:4px 0}.ParticipantFilter_participantItem:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-gray-9));border-radius:var(--mantine-radius-sm)}.PatientSummary_panel{height:100%}[data-mantine-color-scheme=dark] .PatientSummary_panel{background-color:var(--mantine-color-dark-8)}[data-mantine-color-scheme=light] .PatientSummary_panel{background-color:var(--mantine-color-white)}.PatientSummary_patientSummaryBadge{cursor:pointer}.PatientSummary_patientSummaryAddButton{opacity:0;transition:opacity .2s;position:absolute;right:0;top:0;transform:none;stroke-width:1}.PatientSummary_patientSummaryHeader{width:100%;cursor:default}.PatientSummary_patientSummaryHeader .mantine-ActionIcon-root,.PatientSummary_patientSummaryHeader .mantine-Text-root{cursor:pointer;margin:0}.PatientSummary_patientSummaryCollapseIcon{transition:transform .2s}.PatientSummary_patientSummaryCollapseIcon.PatientSummary_collapsed{transform:rotate(-90deg)}.CollapsibleSection_root{position:relative}.CollapsibleSection_header{width:100%;cursor:default}.CollapsibleSection_chevron{transition:transform .2s ease;cursor:pointer}.CollapsibleSection_chevron[data-collapsed]{transform:rotate(-90deg)}.CollapsibleSection_title{cursor:pointer}.CollapsibleSection_addButton{position:absolute;right:0;top:0;stroke-width:1}.SummaryItem_gradient{position:absolute;right:28px;top:0;bottom:0;width:48px;z-index:1;opacity:0;pointer-events:none;transition:opacity .2s}[data-mantine-color-scheme=dark] .SummaryItem_gradient{background:linear-gradient(to right,transparent,var(--mantine-color-dark-8))}[data-mantine-color-scheme=light] .SummaryItem_gradient{background:linear-gradient(to right,transparent,var(--mantine-color-white))}.SummaryItem_container{position:absolute;right:0;top:0;bottom:0;width:28px;z-index:2;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}[data-mantine-color-scheme=dark] .SummaryItem_container{background:var(--mantine-color-dark-8)}[data-mantine-color-scheme=light] .SummaryItem_container{background:var(--mantine-color-white)}.SummaryItem_chevron{position:static;margin:0;padding:0;transition:opacity .2s;opacity:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.SummaryItem_item:hover .SummaryItem_gradient,.SummaryItem_item:hover .SummaryItem_container{opacity:1;pointer-events:auto}.SummaryItem_item{position:relative;max-width:100%;cursor:pointer}.SummaryItem_itemText{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.NoteDisplay_noteBody{font-size:var(--mantine-font-size-sm)}.NoteDisplay_noteCite{font-size:var(--mantine-font-size-xs);margin-block-start:3}.NoteDisplay_noteRoot{padding:5px}.DiagnosticReportDisplay_table{border:.1px solid var(--mantine-color-gray-5);border-collapse:collapse;& td,th{border:.1px solid var(--mantine-color-gray-5);padding:4px}}.DiagnosticReportDisplay_criticalRow{background:light-dark(var(--mantine-color-red-1),var(--mantine-color-red-7));border:.1px solid var(--mantine-color-red-5);color:var(--mantine-color-red-5);font-weight:500;& td{border:.1px solid var(--mantine-color-red-5)}}.DiagnosticReportDisplay_noteBody{font-size:var(--mantine-font-size-sm)}.DiagnosticReportDisplay_noteCite{font-size:var(--mantine-font-size-xs);margin-block-start:3}.DiagnosticReportDisplay_noteRoot{padding:5px}.ThreadInbox_container{height:100%;display:flex;flex-direction:column;overflow:hidden;flex:1}.ThreadInbox_rightBorder{border-right:1px solid light-dark(var(--mantine-color-gray-3),var(--mantine-color-gray-8))}.ResourceDiffRow_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiffRow_added{color:var(--mantine-color-green-7)}.ResourceDiffTable_root{border-collapse:collapse;width:100%;& tr{border-top:.1px solid var(--mantine-color-gray-3)}& th,td{padding:var(--mantine-spacing-sm) var(--mantine-spacing-sm);vertical-align:top;word-wrap:break-word;overflow-wrap:anywhere;white-space:normal;min-width:100px}}.ResourceDiffTable_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiffTable_added{color:var(--mantine-color-green-7)}.Timeline_item{white-space:pre-wrap}.Timeline_itemPadding{padding:0 16px 16px}.ResourceTimeline_pinnedComment{background-color:var(--mantine-color-blue-0)}.SearchControl_root{max-width:100%;overflow:auto;text-align:left;margin-bottom:20px}.SearchControl_table{cursor:pointer}.SearchControl_tr{&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6))}}.SearchControl_th{padding:0!important}.SearchControl_control{width:100%;padding:var(--mantine-spacing-xs) var(--mantine-spacing-md);&:hover{background-color:light-dark(var(--mantine-color-gray-0),var(--mantine-color-dark-6))}}.SearchControl_icon{width:21px;height:21px;border-radius:21px}.InfoBar_root{display:flex;flex-direction:row;align-items:center;padding:8px 10px}.InfoBar_entry{display:inline-block;margin:5px 20px 5px 5px}.InfoBar_key{color:var(--mantine-color-gray-6);text-transform:uppercase;font-size:var(--mantine-font-size-xs);white-space:nowrap}.InfoBar_value{font-size:var(--mantine-font-size-md);font-weight:600;margin-left:0;white-space:nowrap}.LinkTabs_list{white-space:nowrap;flex-wrap:nowrap}.LinkTabs_link{color:var(--mantine-color-text);line-height:1;text-decoration:none;&:hover{text-decoration:none}}.PharmacyDialog_pharmacyItem{border:1px solid var(--mantine-color-gray-3);border-radius:var(--mantine-radius-sm);cursor:pointer;transition:border-color .2s,box-shadow .2s}.PharmacyDialog_pharmacyItem:hover{border-color:var(--mantine-color-blue-4)}.PharmacyDialog_pharmacyItemSelected{border:2px solid var(--mantine-color-blue-6);border-radius:var(--mantine-radius-sm);cursor:pointer}.PlanDefinitionBuilder_section{position:relative;padding:6px 0 16px;transition:all .1}.PlanDefinitionBuilder_hovering{border:1.5px solid var(--mantine-color-blue-5)}.PlanDefinitionBuilder_editing{border:1.5px solid var(--mantine-color-gray-1);border-left:4px solid var(--mantine-color-blue-5)}.QuestionnaireBuilder_section{position:relative;margin:4px 4px 8px;padding:6px 12px 16px 6px;border:1.5px solid var(--mantine-color-gray-1);border-radius:var(--mantine-radius-sm);transition:all .1}.QuestionnaireBuilder_hovering{border:1.5px solid var(--mantine-color-blue-5)}.QuestionnaireBuilder_editing{border:1.5px solid var(--mantine-color-gray-1);border-left:4px solid var(--mantine-color-blue-5);min-height:100px}.QuestionnaireBuilder_questionBody{max-width:600px}.QuestionnaireBuilder_topActions{position:absolute;right:32px;top:1px;padding:4px;color:var(--mantine-color-gray-5);font-size:var(--mantine-font-size-xs)}.QuestionnaireBuilder_bottomActions{position:absolute;right:4px;bottom:0;--text-fz: var(--mantine-font-size-xs);& a{margin-left:8px}}.QuestionnaireBuilder_movementActions{position:absolute;right:8px;top:0;padding-top:8px;font-size:var(--mantine-font-size-xs);& a{margin-left:8px}}.QuestionnaireBuilder_movementIcons{color:var(--mantine-color-gray-5)}.QuestionnaireBuilder_columnAlignment{display:flex;flex-direction:column}.QuestionnaireBuilder_linkIdInput{width:100px;margin-bottom:4px}.QuestionnaireBuilder_typeSelect{width:100px}.QuestionnaireBuilder_preserveBreaks{white-space:pre-wrap}.ReferenceRangeEditor_section{position:relative;margin:4px 4px 8px;padding:6px 12px 16px 6px;border:1.5px solid var(--mantine-color-gray-3);border-radius:var(--mantine-radius-sm);transition:all .1}.ResourceBlame_container{overflow-x:auto}.ResourceBlame_root{border:.1px solid var(--mantine-color-gray-3);border-collapse:collapse;border-radius:var(--mantine-radius-sm);border-spacing:0;font-size:var(--mantine-font-size-xs);width:100%;& td{padding:2px 4px 0;vertical-align:top;white-space:nowrap}}.ResourceBlame_startRow{border-top:.1px solid var(--mantine-color-gray-3);white-space:nowrap}.ResourceBlame_normalRow{border-top:0;white-space:nowrap}.ResourceBlame_author{line-height:10px}.ResourceBlame_dateTime{border-right:.1px solid var(--mantine-color-gray-3);line-height:10px;text-align:right}.ResourceBlame_lineNumber{background-color:var(--mantine-color-gray-1);border:0;color:var(--mantine-color-gray-5);font-family:var(--mantine-font-family-monospace);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm);text-align:right}.ResourceBlame_line{font-family:var(--mantine-font-family-monospace);font-size:var(--mantine-font-size-xs);padding:var(--mantine-spacing-xs) var(--mantine-spacing-sm)}.ResourceBlame_pre{margin:0}.ResourceDiff_removed{color:var(--mantine-color-red-7);text-decoration:line-through}.ResourceDiff_added{color:var(--mantine-color-green-7)}.ResourceForm_splitButton{border-top-right-radius:0;border-bottom-right-radius:0}.ResourceForm_menuControl{border-top-left-radius:0;border-bottom-left-radius:0;border:0;border-left:rem(1px) solid var(--mantine-color-body)}.Scheduler_container{display:flex;min-height:400px}.Scheduler_info{min-width:300px;padding:20px;border-right:1px solid var(--mantine-color-gray-3)}.Scheduler_selection{min-width:300px;padding:20px}
|
|
2
2
|
/*# sourceMappingURL=index.css.map */
|