Skip to main content

@medplum/core

Enumerations

Classes

Interfaces

Type aliases

ProfileResource

Ƭ ProfileResource: Patient | Practitioner | RelatedPerson

Defined in

packages/core/src/utils.ts:16

Variables

COMPONENT_SEPARATOR

Const COMPONENT_SEPARATOR: "^"

Defined in

packages/core/src/hl7.ts:5


DEFAULT_SEARCH_COUNT

Const DEFAULT_SEARCH_COUNT: 20

Defined in

packages/core/src/search.ts:1


FIELD_SEPARATOR

Const FIELD_SEPARATOR: "|"

Defined in

packages/core/src/hl7.ts:4


SEGMENT_SEPARATOR

Const SEGMENT_SEPARATOR: "\r"

Defined in

packages/core/src/hl7.ts:3


accessDenied

Const accessDenied: OperationOutcome

Defined in

packages/core/src/outcomes.ts:80


allOk

Const allOk: OperationOutcome

Defined in

packages/core/src/outcomes.ts:10


created

Const created: OperationOutcome

Defined in

packages/core/src/outcomes.ts:24


gone

Const gone: OperationOutcome

Defined in

packages/core/src/outcomes.ts:66


notFound

Const notFound: OperationOutcome

Defined in

packages/core/src/outcomes.ts:52


notModified

Const notModified: OperationOutcome

Defined in

packages/core/src/outcomes.ts:38

Functions

arrayBufferToBase64

arrayBufferToBase64(arrayBuffer): string

Converts an ArrayBuffer to a base-64 encoded string.

Parameters

NameTypeDescription
arrayBufferArrayBufferThe input array buffer.

Returns

string

The base-64 encoded string.

Defined in

packages/core/src/utils.ts:440


arrayBufferToHex

arrayBufferToHex(arrayBuffer): string

Converts an ArrayBuffer to hex string. See: https://stackoverflow.com/a/55200387

Parameters

NameTypeDescription
arrayBufferArrayBufferThe input array buffer.

Returns

string

The resulting hex string.

Defined in

packages/core/src/utils.ts:426


assertOk

assertOk<T>(outcome, resource): asserts resource is T

Asserts that the operation completed successfully and that the resource is defined.

Type parameters

Name
T

Parameters

NameTypeDescription
outcomeOperationOutcomeThe operation outcome.
resourceundefined | TThe resource that may or may not have been returned.

Returns

asserts resource is T

Defined in

packages/core/src/outcomes.ts:145


badRequest

badRequest(details, expression?): OperationOutcome

Parameters

NameType
detailsstring
expression?string

Returns

OperationOutcome

Defined in

packages/core/src/outcomes.ts:94


buildTypeName

buildTypeName(components): string

Parameters

NameType
componentsstring[]

Returns

string

Defined in

packages/core/src/types.ts:234


calculateAge

calculateAge(birthDateStr, endDateStr?): Object

Calculates the age in years from the birth date.

Parameters

NameTypeDescription
birthDateStrstringThe birth date or start date in ISO-8601 format YYYY-MM-DD.
endDateStr?stringOptional end date in ISO-8601 format YYYY-MM-DD. Default value is today.

Returns

Object

The age in years, months, and days.

NameType
daysnumber
monthsnumber
yearsnumber

Defined in

packages/core/src/utils.ts:170


calculateAgeString

calculateAgeString(birthDateStr, endDateStr?): string | undefined

Calculates the age string for display using the age appropriate units. If the age is greater than or equal to 2 years, then the age is displayed in years. If the age is greater than or equal to 1 month, then the age is displayed in months. Otherwise, the age is displayed in days.

Parameters

NameTypeDescription
birthDateStrstringThe birth date or start date in ISO-8601 format YYYY-MM-DD.
endDateStr?stringOptional end date in ISO-8601 format YYYY-MM-DD. Default value is today.

Returns

string | undefined

The age string.

Defined in

packages/core/src/utils.ts:212


capitalize

capitalize(word): string

Parameters

NameType
wordstring

Returns

string

Defined in

packages/core/src/utils.ts:449


createReference

createReference<T>(resource): Reference<T>

Creates a reference resource.

Type parameters

NameType
Textends Resource

Parameters

NameTypeDescription
resourceTThe FHIR reesource.

Returns

Reference<T>

A reference resource.

Defined in

packages/core/src/utils.ts:23


createSchema

createSchema(): IndexedStructureDefinition

Creates a new empty IndexedStructureDefinition.

Returns

IndexedStructureDefinition

The empty IndexedStructureDefinition.

Defined in

packages/core/src/types.ts:121


createTypeSchema

createTypeSchema(typeName, description): TypeSchema

Parameters

NameType
typeNamestring
descriptionundefined | string

Returns

TypeSchema

Defined in

packages/core/src/types.ts:125


deepEquals

deepEquals(object1, object2, path?): boolean

Resource equality. Ignores meta.versionId and meta.lastUpdated.

Parameters

NameTypeDescription
object1unknownThe first object.
object2unknownThe second object.
path?string-

Returns

boolean

True if the objects are equal.

Defined in

packages/core/src/utils.ts:326


formatAddress

formatAddress(address, options?): string

Parameters

NameType
addressAddress
options?AddressFormatOptions

Returns

string

Defined in

packages/core/src/format.ts:15


formatFamilyName

formatFamilyName(name): string

Parameters

NameType
nameHumanName

Returns

string

Defined in

packages/core/src/format.ts:75


formatGivenName

formatGivenName(name): string

Parameters

NameType
nameHumanName

Returns

string

Defined in

packages/core/src/format.ts:67


formatHumanName

formatHumanName(name, options?): string

Parameters

NameType
nameHumanName
options?HumanNameFormatOptions

Returns

string

Defined in

packages/core/src/format.ts:41


formatSearchQuery

formatSearchQuery(definition): string

Formats a search definition object into a query string. Note: The return value does not include the resource type.

Parameters

NameTypeDescription
definitionSearchRequestThe search definition.

Returns

string

Formatted URL.

Defined in

packages/core/src/search.ts:196


getDateProperty

getDateProperty(date): Date | undefined

Returns a Date property as a Date. When working with JSON objects, Dates are often serialized as ISO-8601 strings. When that happens, we need to safely convert to a proper Date object.

Parameters

NameTypeDescription
dateundefined | stringThe date property value, which could be a string or a Date object.

Returns

Date | undefined

A Date object.

Defined in

packages/core/src/utils.ts:160


getDisplayString

getDisplayString(resource): string

Returns a display string for the resource.

Parameters

NameTypeDescription
resourceResourceThe input resource.

Returns

string

Human friendly display string.

Defined in

packages/core/src/utils.ts:65


getExpressionForResourceType

getExpressionForResourceType(resourceType, expression): string | undefined

Parameters

NameType
resourceTypestring
expressionstring

Returns

string | undefined

Defined in

packages/core/src/searchparams.ts:126


getExtensionValue

getExtensionValue(resource, ...urls): string | undefined

Returns an extension value by extension URLs.

Parameters

NameTypeDescription
resourceResourceThe base resource.
...urlsstring[]Array of extension URLs. Each entry represents a nested extension.

Returns

string | undefined

The extension value if found; undefined otherwise.

Defined in

packages/core/src/utils.ts:261


getImageSrc

getImageSrc(resource): string | undefined

Returns an image URL for the resource, if one is available.

Parameters

NameTypeDescription
resourceResourceThe input resource.

Returns

string | undefined

The image URL for the resource or undefined.

Defined in

packages/core/src/utils.ts:125


getPropertyDisplayName

getPropertyDisplayName(property): string

Parameters

NameType
propertyElementDefinition

Returns

string

Defined in

packages/core/src/types.ts:238


getQuestionnaireAnswers

getQuestionnaireAnswers(response): Record<string, QuestionnaireResponseItemAnswer>

Returns all questionnaire answers as a map by link ID.

Parameters

NameTypeDescription
responseQuestionnaireResponseThe questionnaire response resource.

Returns

Record<string, QuestionnaireResponseItemAnswer>

Questionnaire answers mapped by link ID.

Defined in

packages/core/src/utils.ts:228


getReferenceString

getReferenceString(resource): string

Returns a reference string for a resource.

Parameters

NameTypeDescription
resourceResourceThe FHIR resource.

Returns

string

A reference string of the form resourceType/id.

Defined in

packages/core/src/utils.ts:34


getSearchParameterDetails

getSearchParameterDetails(structureDefinitions, resourceType, searchParam): SearchParameterDetails

Returns the type details of a SearchParameter.

The SearchParameter resource has a "type" parameter, but that is missing some critical information.

For example: 1) The "date" type includes "date", "datetime", and "period". 2) The "token" type includes enums and booleans. 3) Arrays/multiple values are not reflected at all.

Parameters

NameTypeDescription
structureDefinitionsIndexedStructureDefinitionCollection of StructureDefinition resources indexed by name.
resourceTypestringThe root resource type.
searchParamSearchParameterThe search parameter.

Returns

SearchParameterDetails

The search parameter type details.

Defined in

packages/core/src/searchparams.ts:38


getStatus

getStatus(outcome): number

Parameters

NameType
outcomeOperationOutcome

Returns

number

Defined in

packages/core/src/outcomes.ts:122


indexSearchParameter

indexSearchParameter(schema, searchParam): void

Indexes a SearchParameter resource for fast lookup. Indexes by SearchParameter.code, which is the query string parameter name.

Parameters

NameTypeDescription
schemaIndexedStructureDefinitionThe output IndexedStructureDefinition.
searchParamSearchParameterThe SearchParameter resource.

Returns

void

Defined in

packages/core/src/types.ts:215


indexStructureDefinition

indexStructureDefinition(schema, structureDefinition): void

Indexes a StructureDefinition for fast lookup. See comments on IndexedStructureDefinition for more details.

Parameters

NameTypeDescription
schemaIndexedStructureDefinitionThe output IndexedStructureDefinition.
structureDefinitionStructureDefinitionThe original StructureDefinition.

Returns

void

Defined in

packages/core/src/types.ts:147


isGone

isGone(outcome): boolean

Parameters

NameType
outcomeOperationOutcome

Returns

boolean

Defined in

packages/core/src/outcomes.ts:118


isLowerCase

isLowerCase(c): boolean

Parameters

NameType
cstring

Returns

boolean

Defined in

packages/core/src/utils.ts:453


isNotFound

isNotFound(outcome): boolean

Parameters

NameType
outcomeOperationOutcome

Returns

boolean

Defined in

packages/core/src/outcomes.ts:114


isObject

isObject(obj): obj is Record<string, unknown>

Returns true if the input is an object.

Parameters

NameType
objunknown

Returns

obj is Record<string, unknown>

True if the input is a non-null non-undefined object.

Defined in

packages/core/src/utils.ts:400


isOk

isOk(outcome): boolean

Parameters

NameType
outcomeOperationOutcome

Returns

boolean

Defined in

packages/core/src/outcomes.ts:110


isProfileResource

isProfileResource(resource): boolean

Returns true if the resource is a "ProfileResource".

Parameters

NameTypeDescription
resourceResourceThe FHIR resource.

Returns

boolean

True if the resource is a "ProfileResource".

Defined in

packages/core/src/utils.ts:52


isStringArray

isStringArray(arr): arr is string[]

Returns true if the input array is an array of strings.

Parameters

NameTypeDescription
arrany[]Input array.

Returns

arr is string[]

True if the input array is an array of strings.

Defined in

packages/core/src/utils.ts:409


isUUID

isUUID(input): boolean

Returns true if the input string is a UUID.

Parameters

NameTypeDescription
inputstringThe input string.

Returns

boolean

True if the input string matches the UUID format.

Defined in

packages/core/src/utils.ts:391


parseSearchDefinition

parseSearchDefinition(url): SearchRequest

Parses a URL into a SearchRequest.

See the FHIR search spec: http://hl7.org/fhir/r4/search.html

Parameters

NameTypeDescription
urlstringThe URL to parse.

Returns

SearchRequest

Parsed search definition.

Defined in

packages/core/src/search.ts:90


resolveId

resolveId(reference): string | undefined

Returns the ID portion of a reference.

Parameters

NameTypeDescription
referenceundefined | Reference<Resource>A FHIR reference.

Returns

string | undefined

The ID portion of a reference.

Defined in

packages/core/src/utils.ts:43


stringify

stringify(value, pretty?): string

FHIR JSON stringify. Removes properties with empty string values. Removes objects with zero properties. See: https://www.hl7.org/fhir/json.html

Parameters

NameTypeDescription
valueanyThe input value.
pretty?booleanOptional flag to pretty-print the JSON.

Returns

string

The resulting JSON string.

Defined in

packages/core/src/utils.ts:282