@medplum/core
Enumerations
Classes
- LRUCache
- MedplumClient
- PrefixOperatorAtom
- InfixOperatorAtom
- ParserBuilder
- Parser
- Tokenizer
- FhirFilterComparison
- FhirFilterNegation
- FhirFilterConnective
- Hl7Context
- Hl7Message
- Hl7Segment
- Hl7Field
- OperationOutcomeError
- ReadablePromise
- FhirSchemaValidator
- ClientStorage
- MemoryStorage
Interfaces
- MedplumClientOptions
- FetchLike
- CreatePdfFunction
- BaseLoginRequest
- EmailPasswordLoginRequest
- NewUserRequest
- NewProjectRequest
- NewPatientRequest
- GoogleCredentialResponse
- GoogleLoginRequest
- LoginAuthenticationResponse
- LoginProfileResponse
- LoginScopeResponse
- LoginState
- TokenResponse
- BotEvent
- InviteBody
- PatchOperation
- MailAddress
- MailAttachment
- MailOptions
- MedplumInfraConfig
- AtomContext
- Atom
- PrefixParselet
- InfixParselet
- Marker
- Token
- TokenizerOptions
- AddressFormatOptions
- HumanNameFormatOptions
- SearchParameterDetails
- SearchRequest
- Filter
- SortRule
- IncludeTarget
- TypedValue
- IndexedStructureDefinition
- TypeSchema
Type Aliases
QueryTypes
Ƭ QueryTypes: URLSearchParams
| string
[][] | Record
<string
, any
> | string
| undefined
QueryTypes defines the different ways to specify FHIR search parameters.
Can be any valid input to the URLSearchParams() constructor.
TypeScript definitions for URLSearchParams do not match runtime behavior. The official spec only accepts string values. Web browsers and Node.js automatically coerce values to strings. See: https://github.com/microsoft/TypeScript/issues/32951
Defined in
packages/core/src/client.ts:247
FhirFilterExpression
Ƭ FhirFilterExpression: FhirFilterComparison
| FhirFilterNegation
| FhirFilterConnective
The FhirFilterExpression type is the base type of all filter expressions.
Defined in
packages/core/src/filter/types.ts:8
ProfileResource
Ƭ ProfileResource: Patient
| Practitioner
| RelatedPerson
Defined in
packages/core/src/utils.ts:24
ResourceWithCode
Ƭ ResourceWithCode: Resource
& Code
Defined in
packages/core/src/utils.ts:32
Variables
publicResourceTypes
• Const
publicResourceTypes: string
[]
Public resource types are in the "public" project. They are available to all users.
Defined in
packages/core/src/access.ts:9
protectedResourceTypes
• Const
protectedResourceTypes: string
[]
Protected resource types are in the "medplum" project. Reading and writing is limited to the system account.
Defined in
packages/core/src/access.ts:22
projectAdminResourceTypes
• Const
projectAdminResourceTypes: string
[]
Project admin resource types are special resources that are only accessible to project administrators.
Defined in
packages/core/src/access.ts:28
MEDPLUM_VERSION
• Const
MEDPLUM_VERSION: string
Defined in
packages/core/src/client.ts:52
allOk
• Const
allOk: OperationOutcome
Defined in
packages/core/src/outcomes.ts:13
created
• Const
created: OperationOutcome
Defined in
packages/core/src/outcomes.ts:27
notModified
• Const
notModified: OperationOutcome
Defined in
packages/core/src/outcomes.ts:41
notFound
• Const
notFound: OperationOutcome
Defined in
packages/core/src/outcomes.ts:55
unauthorized
• Const
unauthorized: OperationOutcome
Defined in
packages/core/src/outcomes.ts:69
forbidden
• Const
forbidden: OperationOutcome
Defined in
packages/core/src/outcomes.ts:83
gone
• Const
gone: OperationOutcome
Defined in
packages/core/src/outcomes.ts:97
tooManyRequests
• Const
tooManyRequests: OperationOutcome
Defined in
packages/core/src/outcomes.ts:111
DEFAULT_SEARCH_COUNT
• Const
DEFAULT_SEARCH_COUNT: 20
Defined in
packages/core/src/search/search.ts:5
globalSchema
• Const
globalSchema: IndexedStructureDefinition
Global schema singleton.
Defined in
packages/core/src/types.ts:471
Functions
canReadResourceType
▸ canReadResourceType(accessPolicy
, resourceType
): boolean
Determines if the current user can read the specified resource type.
Parameters
Name | Type | Description |
---|---|---|
accessPolicy | AccessPolicy | The access policy. |
resourceType | "Observation" | "Patient" | "Practitioner" | "RelatedPerson" | "AccessPolicy" | "Account" | "ActivityDefinition" | "AdverseEvent" | "AllergyIntolerance" | "Appointment" | "AppointmentResponse" | "AsyncJob" | "AuditEvent" | "Basic" | "Binary" | "BiologicallyDerivedProduct" | "BodyStructure" | "Bot" | "BulkDataExport" | "Bundle" | "CapabilityStatement" | "CarePlan" | "CareTeam" | "CatalogEntry" | "ChargeItem" | "ChargeItemDefinition" | "Claim" | "ClaimResponse" | "ClientApplication" | "ClinicalImpression" | "CodeSystem" | "Communication" | "CommunicationRequest" | "CompartmentDefinition" | "Composition" | "ConceptMap" | "Condition" | "Consent" | "Contract" | "Coverage" | "CoverageEligibilityRequest" | "CoverageEligibilityResponse" | "DetectedIssue" | "Device" | "DeviceDefinition" | "DeviceMetric" | "DeviceRequest" | "DeviceUseStatement" | "DiagnosticReport" | "DocumentManifest" | "DocumentReference" | "DomainConfiguration" | "EffectEvidenceSynthesis" | "Encounter" | "Endpoint" | "EnrollmentRequest" | "EnrollmentResponse" | "EpisodeOfCare" | "EventDefinition" | "Evidence" | "EvidenceVariable" | "ExampleScenario" | "ExplanationOfBenefit" | "FamilyMemberHistory" | "Flag" | "Goal" | "GraphDefinition" | "Group" | "GuidanceResponse" | "HealthcareService" | "ImagingStudy" | "Immunization" | "ImmunizationEvaluation" | "ImmunizationRecommendation" | "ImplementationGuide" | "InsurancePlan" | "Invoice" | "JsonWebKey" | "Library" | "Linkage" | "List" | "Location" | "Login" | "Measure" | "MeasureReport" | "Media" | "Medication" | "MedicationAdministration" | "MedicationDispense" | "MedicationKnowledge" | "MedicationRequest" | "MedicationStatement" | "MedicinalProduct" | "MedicinalProductAuthorization" | "MedicinalProductContraindication" | "MedicinalProductIndication" | "MedicinalProductIngredient" | "MedicinalProductInteraction" | "MedicinalProductManufactured" | "MedicinalProductPackaged" | "MedicinalProductPharmaceutical" | "MedicinalProductUndesirableEffect" | "MessageDefinition" | "MessageHeader" | "MolecularSequence" | "NamingSystem" | "NutritionOrder" | "ObservationDefinition" | "OperationDefinition" | "OperationOutcome" | "Organization" | "OrganizationAffiliation" | "Parameters" | "PasswordChangeRequest" | "PaymentNotice" | "PaymentReconciliation" | "Person" | "PlanDefinition" | "PractitionerRole" | "Procedure" | "Project" | "ProjectMembership" | "Provenance" | "Questionnaire" | "QuestionnaireResponse" | "RequestGroup" | "ResearchDefinition" | "ResearchElementDefinition" | "ResearchStudy" | "ResearchSubject" | "RiskAssessment" | "RiskEvidenceSynthesis" | "Schedule" | "SearchParameter" | "ServiceRequest" | "Slot" | "SmartAppLaunch" | "Specimen" | "SpecimenDefinition" | "StructureDefinition" | "StructureMap" | "Subscription" | "Substance" | "SubstanceNucleicAcid" | "SubstancePolymer" | "SubstanceProtein" | "SubstanceReferenceInformation" | "SubstanceSourceMaterial" | "SubstanceSpecification" | "SupplyDelivery" | "SupplyRequest" | "Task" | "TerminologyCapabilities" | "TestReport" | "TestScript" | "User" | "UserConfiguration" | "ValueSet" | "VerificationResult" | "VisionPrescription" | The resource type. |
Returns
boolean
True if the current user can read the specified resource type.
Defined in
packages/core/src/access.ts:36
canWriteResourceType
▸ canWriteResourceType(accessPolicy
, resourceType
): boolean
Determines if the current user can write the specified resource type. This is a preliminary check before evaluating a write operation in depth. If a user cannot write a resource type at all, then don't bother looking up previous versions.
Parameters
Name | Type | Description |
---|---|---|
accessPolicy | AccessPolicy | The access policy. |
resourceType | "Observation" | "Patient" | "Practitioner" | "RelatedPerson" | "AccessPolicy" | "Account" | "ActivityDefinition" | "AdverseEvent" | "AllergyIntolerance" | "Appointment" | "AppointmentResponse" | "AsyncJob" | "AuditEvent" | "Basic" | "Binary" | "BiologicallyDerivedProduct" | "BodyStructure" | "Bot" | "BulkDataExport" | "Bundle" | "CapabilityStatement" | "CarePlan" | "CareTeam" | "CatalogEntry" | "ChargeItem" | "ChargeItemDefinition" | "Claim" | "ClaimResponse" | "ClientApplication" | "ClinicalImpression" | "CodeSystem" | "Communication" | "CommunicationRequest" | "CompartmentDefinition" | "Composition" | "ConceptMap" | "Condition" | "Consent" | "Contract" | "Coverage" | "CoverageEligibilityRequest" | "CoverageEligibilityResponse" | "DetectedIssue" | "Device" | "DeviceDefinition" | "DeviceMetric" | "DeviceRequest" | "DeviceUseStatement" | "DiagnosticReport" | "DocumentManifest" | "DocumentReference" | "DomainConfiguration" | "EffectEvidenceSynthesis" | "Encounter" | "Endpoint" | "EnrollmentRequest" | "EnrollmentResponse" | "EpisodeOfCare" | "EventDefinition" | "Evidence" | "EvidenceVariable" | "ExampleScenario" | "ExplanationOfBenefit" | "FamilyMemberHistory" | "Flag" | "Goal" | "GraphDefinition" | "Group" | "GuidanceResponse" | "HealthcareService" | "ImagingStudy" | "Immunization" | "ImmunizationEvaluation" | "ImmunizationRecommendation" | "ImplementationGuide" | "InsurancePlan" | "Invoice" | "JsonWebKey" | "Library" | "Linkage" | "List" | "Location" | "Login" | "Measure" | "MeasureReport" | "Media" | "Medication" | "MedicationAdministration" | "MedicationDispense" | "MedicationKnowledge" | "MedicationRequest" | "MedicationStatement" | "MedicinalProduct" | "MedicinalProductAuthorization" | "MedicinalProductContraindication" | "MedicinalProductIndication" | "MedicinalProductIngredient" | "MedicinalProductInteraction" | "MedicinalProductManufactured" | "MedicinalProductPackaged" | "MedicinalProductPharmaceutical" | "MedicinalProductUndesirableEffect" | "MessageDefinition" | "MessageHeader" | "MolecularSequence" | "NamingSystem" | "NutritionOrder" | "ObservationDefinition" | "OperationDefinition" | "OperationOutcome" | "Organization" | "OrganizationAffiliation" | "Parameters" | "PasswordChangeRequest" | "PaymentNotice" | "PaymentReconciliation" | "Person" | "PlanDefinition" | "PractitionerRole" | "Procedure" | "Project" | "ProjectMembership" | "Provenance" | "Questionnaire" | "QuestionnaireResponse" | "RequestGroup" | "ResearchDefinition" | "ResearchElementDefinition" | "ResearchStudy" | "ResearchSubject" | "RiskAssessment" | "RiskEvidenceSynthesis" | "Schedule" | "SearchParameter" | "ServiceRequest" | "Slot" | "SmartAppLaunch" | "Specimen" | "SpecimenDefinition" | "StructureDefinition" | "StructureMap" | "Subscription" | "Substance" | "SubstanceNucleicAcid" | "SubstancePolymer" | "SubstanceProtein" | "SubstanceReferenceInformation" | "SubstanceSourceMaterial" | "SubstanceSpecification" | "SupplyDelivery" | "SupplyRequest" | "Task" | "TerminologyCapabilities" | "TestReport" | "TestScript" | "User" | "UserConfiguration" | "ValueSet" | "VerificationResult" | "VisionPrescription" | The resource type. |
Returns
boolean
True if the current user can write the specified resource type.
Defined in
packages/core/src/access.ts:55
canWriteResource
▸ canWriteResource(accessPolicy
, resource
): boolean
Determines if the current user can write the specified resource. This is a more in-depth check after building the candidate result of a write operation.
Parameters
Name | Type | Description |
---|---|---|
accessPolicy | AccessPolicy | The access policy. |
resource | Resource | The resource. |
Returns
boolean
True if the current user can write the specified resource type.
Defined in
packages/core/src/access.ts:79
matchesAccessPolicy
▸ matchesAccessPolicy(accessPolicy
, resource
, readonlyMode
): boolean
Returns true if the resource satisfies the current access policy.
Parameters
Name | Type | Description |
---|---|---|
accessPolicy | AccessPolicy | The access policy. |
resource | Resource | The resource. |
readonlyMode | boolean | True if the resource is being read. |
Returns
boolean
True if the resource matches the access policy.
Defined in
packages/core/src/access.ts:94
decodeBase64
▸ decodeBase64(data
): string
Decodes a base64 string. Handles both browser and Node environments.
Parameters
Name | Type | Description |
---|---|---|
data | string | The base-64 encoded input string. |
Returns
string
The decoded string.
Defined in
packages/core/src/base64.ts:7
encodeBase64
▸ encodeBase64(data
): string
Encodes a base64 string. Handles both browser and Node environments.
Parameters
Name | Type | Description |
---|---|---|
data | string | The unencoded input string. |
Returns
string
The base-64 encoded string.
Defined in
packages/core/src/base64.ts:23
convertToTransactionBundle
▸ convertToTransactionBundle(bundle
): Bundle
Takes a bundle and creates a Transaction Type bundle
Parameters
Name | Type | Description |
---|---|---|
bundle | Bundle <Resource > | The Bundle object that we'll receive from the search query |
Returns
Bundle
transaction type bundle
Defined in
packages/core/src/bundle.ts:13
parseMappingLanguage
▸ parseMappingLanguage(input
): StructureMap
Parses a FHIR Mapping Language document into an AST.
Parameters
Name | Type | Description |
---|---|---|
input | string | The FHIR Mapping Language document to parse. |
Returns
StructureMap
The AST representing the document.
Defined in
packages/core/src/fhirmapper/parse.ts:369
parseFilterParameter
▸ parseFilterParameter(input
): FhirFilterExpression
Parses a FHIR _filter parameter expression into an AST.
Parameters
Name | Type | Description |
---|---|---|
input | string | The FHIR _filter parameter expression. |
Returns
The AST representing the filters.
Defined in
packages/core/src/filter/parse.ts:101
formatAddress
▸ formatAddress(address
, options?
): string
Formats a FHIR Address as a string.
Parameters
Name | Type | Description |
---|---|---|
address | Address | The address to format. |
options? | AddressFormatOptions | Optional address format options. |
Returns
string
The formatted address string.
Defined in
packages/core/src/format.ts:35
formatHumanName
▸ formatHumanName(name
, options?
): string
Formats a FHIR HumanName as a string.
Parameters
Name | Type | Description |
---|---|---|
name | HumanName | The name to format. |
options? | HumanNameFormatOptions | Optional name format options. |
Returns
string
The formatted name string.
Defined in
packages/core/src/format.ts:69
formatGivenName
▸ formatGivenName(name
): string
Formats the given name portion of a FHIR HumanName element.
Parameters
Name | Type | Description |
---|---|---|
name | HumanName | The name to format. |
Returns
string
The formatted given name string.
Defined in
packages/core/src/format.ts:100
formatFamilyName
▸ formatFamilyName(name
): string
Formats the family name portion of a FHIR HumanName element.
Parameters
Name | Type | Description |
---|---|---|
name | HumanName | The name to format. |
Returns
string
The formatted family name string.
Defined in
packages/core/src/format.ts:113
isValidDate
▸ isValidDate(date
): boolean
Returns true if the given date object is a valid date. Dates can be invalid if created by parsing an invalid string.
Parameters
Name | Type | Description |
---|---|---|
date | Date | A date object. |
Returns
boolean
Returns true if the date is a valid date.
Defined in
packages/core/src/format.ts:123
formatDate
▸ formatDate(date
, locales?
, options?
): string
Formats a FHIR date string as a human readable string. Handles missing values and invalid dates.
Parameters
Name | Type | Description |
---|---|---|
date | undefined | string | The date to format. |
locales? | LocalesArgument | Optional locales. |
options? | DateTimeFormatOptions | Optional date format options. |
Returns
string
The formatted date string.
Defined in
packages/core/src/format.ts:135
formatTime
▸ formatTime(time
, locales?
, options?
): string
Formats a FHIR time string as a human readable string. Handles missing values and invalid dates.
Parameters
Name | Type | Description |
---|---|---|
time | undefined | string | The date to format. |
locales? | LocalesArgument | Optional locales. |
options? | DateTimeFormatOptions | Optional time format options. |
Returns
string
The formatted time string.
Defined in
packages/core/src/format.ts:159
formatDateTime
▸ formatDateTime(dateTime
, locales?
, options?
): string
Formats a FHIR dateTime string as a human readable string. Handles missing values and invalid dates.
Parameters
Name | Type | Description |
---|---|---|
dateTime | undefined | string | The dateTime to format. |
locales? | LocalesArgument | Optional locales. |
options? | DateTimeFormatOptions | Optional dateTime format options. |
Returns
string
The formatted dateTime string.
Defined in
packages/core/src/format.ts:182
formatPeriod
▸ formatPeriod(period
, locales?
, options?
): string
Formats a FHIR Period as a human readable string.
Parameters
Name | Type | Description |
---|---|---|
period | undefined | Period | The period to format. |
locales? | LocalesArgument | Optional locales. |
options? | DateTimeFormatOptions | Optional period format options. |
Returns
string
The formatted period string.
Defined in
packages/core/src/format.ts:204
formatTiming
▸ formatTiming(timing
): string
Formats a FHIR Timing as a human readable string.
Parameters
Name | Type | Description |
---|---|---|
timing | undefined | Timing | The timing to format. |
Returns
string
The formatted timing string.
Defined in
packages/core/src/format.ts:250
formatRange
▸ formatRange(range
, precision?
, exclusive?
): string
Returns a human-readable string for a FHIR Range datatype, taking into account one-sided ranges
Parameters
Name | Type | Default value | Description |
---|---|---|---|
range | undefined | Range | undefined | A FHIR Range element |
precision? | number | undefined | Number of decimal places to display in the rendered quantity values |
exclusive | boolean | false | If true, one-sided ranges will be rendered with the '>' or '<' bounds rather than '>=' or '<=' |
Returns
string
A human-readable string representation of the Range
Defined in
packages/core/src/format.ts:301
formatQuantity
▸ formatQuantity(quantity
, precision?
): string
Returns a human-readable string for a FHIR Quantity datatype, taking into account units and comparators
Parameters
Name | Type | Description |
---|---|---|
quantity | undefined | Quantity | A FHIR Quantity element |
precision? | number | Number of decimal places to display in the rendered quantity values |
Returns
string
A human-readable string representation of the Quantity
Defined in
packages/core/src/format.ts:343
formatMoney
▸ formatMoney(money
): string
Parameters
Name | Type |
---|---|
money | undefined | Money |
Returns
string
Defined in
packages/core/src/format.ts:373
formatCodeableConcept
▸ formatCodeableConcept(codeableConcept
): string
Formats a CodeableConcept element as a string.
Parameters
Name | Type | Description |
---|---|---|
codeableConcept | undefined | CodeableConcept | A FHIR CodeableConcept element |
Returns
string
The codeable concept as a string.
Defined in
packages/core/src/format.ts:390
formatCoding
▸ formatCoding(coding
): string
Formats a Coding element as a string.
Parameters
Name | Type | Description |
---|---|---|
coding | undefined | Coding | A FHIR Coding element |
Returns
string
The coding as a string.
Defined in
packages/core/src/format.ts:408
formatObservationValue
▸ formatObservationValue(obs
): string
Formats a FHIR Observation resource value as a string.
Parameters
Name | Type | Description |
---|---|---|
obs | undefined | Observation | ObservationComponent | A FHIR Observation resource. |
Returns
string
A human-readable string representation of the Observation.
Defined in
packages/core/src/format.ts:417
parseHl7Date
▸ parseHl7Date(hl7Date
, options?
): string
| undefined
Returns a formatted string representing the date in ISO-8601 format.
Parameters
Name | Type | Description |
---|---|---|
hl7Date | undefined | string | Date string. |
options? | Hl7DateParseOptions | Optional configuration Object |
Returns
string
| undefined
The date in ISO-8601 format.
Defined in
packages/core/src/hl7.ts:273
parseJWTPayload
▸ parseJWTPayload(token
): Record
<string
, number
| string
>
Parses the JWT payload.
Parameters
Name | Type | Description |
---|---|---|
token | string | JWT token. |
Returns
Record
<string
, number
| string
>
Collection of key value claims in the JWT payload.
Defined in
packages/core/src/jwt.ts:25
accepted
▸ accepted(location
): OperationOutcome
Parameters
Name | Type |
---|---|
location | string |
Returns
OperationOutcome
Defined in
packages/core/src/outcomes.ts:125
badRequest
▸ badRequest(details
, expression?
): OperationOutcome
Parameters
Name | Type |
---|---|
details | string |
expression? | string |
Returns
OperationOutcome
Defined in
packages/core/src/outcomes.ts:142
validationError
▸ validationError(details
): OperationOutcome
Parameters
Name | Type |
---|---|
details | string |
Returns
OperationOutcome
Defined in
packages/core/src/outcomes.ts:158
serverError
▸ serverError(err
): OperationOutcome
Parameters
Name | Type |
---|---|
err | Error |
Returns
OperationOutcome
Defined in
packages/core/src/outcomes.ts:173
isOperationOutcome
▸ isOperationOutcome(value
): value is OperationOutcome
Parameters
Name | Type |
---|---|
value | unknown |
Returns
value is OperationOutcome
Defined in
packages/core/src/outcomes.ts:189
isOk
▸ isOk(outcome
): boolean
Parameters
Name | Type |
---|---|
outcome | OperationOutcome |
Returns
boolean
Defined in
packages/core/src/outcomes.ts:193
isAccepted
▸ isAccepted(outcome
): boolean
Parameters
Name | Type |
---|---|
outcome | OperationOutcome |
Returns
boolean
Defined in
packages/core/src/outcomes.ts:199
isNotFound
▸ isNotFound(outcome
): boolean
Parameters
Name | Type |
---|---|
outcome | OperationOutcome |
Returns
boolean
Defined in
packages/core/src/outcomes.ts:203
isGone
▸ isGone(outcome
): boolean
Parameters
Name | Type |
---|---|
outcome | OperationOutcome |
Returns
boolean
Defined in
packages/core/src/outcomes.ts:207
getStatus
▸ getStatus(outcome
): number
Parameters
Name | Type |
---|---|
outcome | OperationOutcome |
Returns
number
Defined in
packages/core/src/outcomes.ts:211
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
Name | Type | Description |
---|---|---|
outcome | OperationOutcome | The operation outcome. |
resource | undefined | T | The resource that may or may not have been returned. |
Returns
asserts resource is T
Defined in
packages/core/src/outcomes.ts:240
normalizeOperationOutcome
▸ normalizeOperationOutcome(error
): OperationOutcome
Normalizes an error object into an OperationOutcome.
Parameters
Name | Type | Description |
---|---|---|
error | unknown | The error value which could be a string, Error, OperationOutcome, or other unknown type. |
Returns
OperationOutcome
The normalized OperationOutcome.
Defined in
packages/core/src/outcomes.ts:261
normalizeErrorString
▸ normalizeErrorString(error
): string
Normalizes an error object into a displayable error string.
Parameters
Name | Type | Description |
---|---|---|
error | unknown | The error value which could be a string, Error, OperationOutcome, or other unknown type. |
Returns
string
A display string for the error.
Defined in
packages/core/src/outcomes.ts:276
operationOutcomeToString
▸ operationOutcomeToString(outcome
): string
Returns a string represenation of the operation outcome.
Parameters
Name | Type | Description |
---|---|---|
outcome | OperationOutcome | The operation outcome. |
Returns
string
The string representation of the operation outcome.
Defined in
packages/core/src/outcomes.ts:297
operationOutcomeIssueToString
▸ operationOutcomeIssueToString(issue
): string
Returns a string represenation of the operation outcome issue.
Parameters
Name | Type | Description |
---|---|---|
issue | OperationOutcomeIssue | The operation outcome issue. |
Returns
string
The string representation of the operation outcome issue.
Defined in
packages/core/src/outcomes.ts:307
isResourceType
▸ isResourceType(resourceType
): boolean
Returns true if the given string is a valid FHIR resource type.
isResourceType('Patient'); // true
isResourceType('XYZ'); // false
Note that this depends on globalSchema, which is populated by the StructureDefinition loader.
In a server context, you can load all schema definitions:
import { indexStructureDefinitionBundle } from '@medplum/core';
import { readJson } from '@medplum/definitions';
import { Bundle } from '@medplum/fhirtypes';
indexStructureDefinitionBundle(readJson('fhir/r4/profiles-resources.json') as Bundle);
In a client context, you can load the schema definitions using MedplumClient:
import { MedplumClient } from '@medplum/core';
const medplum = new MedplumClient();
await medplum.requestSchema('Patient');
Parameters
Name | Type | Description |
---|---|---|
resourceType | string | The candidate resource type string. |
Returns
boolean
True if the resource type is a valid FHIR resource type.
Defined in
packages/core/src/schema.ts:83
validateResourceType
▸ validateResourceType(resourceType
): void
Validates that the given string is a valid FHIR resource type. On success, silently returns void. On failure, throws an OperationOutcomeError.
validateResourceType('Patient'); // nothing
validateResourceType('XYZ'); // throws OperationOutcomeError
Note that this depends on globalSchema, which is populated by the StructureDefinition loader.
In a server context, you can load all schema definitions:
import { indexStructureDefinitionBundle } from '@medplum/core';
import { readJson } from '@medplum/definitions';
import { Bundle } from '@medplum/fhirtypes';
indexStructureDefinitionBundle(readJson('fhir/r4/profiles-resources.json') as Bundle);
In a client context, you can load the schema definitions using MedplumClient:
import { MedplumClient } from '@medplum/core';
const medplum = new MedplumClient();
await medplum.requestSchema('Patient');
Parameters
Name | Type | Description |
---|---|---|
resourceType | string | The candidate resource type string. |
Returns
void
Defined in
packages/core/src/schema.ts:124
validateResource
▸ validateResource<T
>(resource
): void
Validates a candidate FHIR resource object. On success, silently returns void. On failure, throws an OperationOutcomeError with issues for each violation.
validateResource({ resourceType: 'Patient' }); // nothing
validateResource({ resourceType: 'XYZ' }); // throws OperationOutcomeError
Note that this depends on globalSchema, which is populated by the StructureDefinition loader.
In a server context, you can load all schema definitions:
import { indexStructureDefinitionBundle } from '@medplum/core';
import { readJson } from '@medplum/definitions';
import { Bundle } from '@medplum/fhirtypes';
indexStructureDefinitionBundle(readJson('fhir/r4/profiles-resources.json') as Bundle);
In a client context, you can load the schema definitions using MedplumClient:
import { MedplumClient } from '@medplum/core';
const medplum = new MedplumClient();
await medplum.requestSchema('Patient');
Type parameters
Name | Type |
---|---|
T | extends Resource |
Parameters
Name | Type | Description |
---|---|---|
resource | T | The candidate resource. |
Returns
void
Defined in
packages/core/src/schema.ts:165
checkForNull
▸ checkForNull(value
, path
, issues
): void
Recursively checks for null values in an object.
Note that "null" is a special value in JSON that is not allowed in FHIR.
Parameters
Name | Type | Description |
---|---|---|
value | unknown | Input value of any type. |
path | string | Path string to the value for OperationOutcome. |
issues | OperationOutcomeIssue [] | Output list of issues. |
Returns
void
Defined in
packages/core/src/schema.ts:440
createStructureIssue
▸ createStructureIssue(expression
, details
): OperationOutcomeIssue
Parameters
Name | Type |
---|---|
expression | string |
details | string |
Returns
OperationOutcomeIssue
Defined in
packages/core/src/schema.ts:466
getSearchParameterDetails
▸ getSearchParameterDetails(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
Name | Type | Description |
---|---|---|
resourceType | string | The root resource type. |
searchParam | SearchParameter | The search parameter. |
Returns
The search parameter type details.
Defined in
packages/core/src/search/details.ts:38
getExpressionForResourceType
▸ getExpressionForResourceType(resourceType
, expression
): string
| undefined
Parameters
Name | Type |
---|---|
resourceType | string |
expression | string |
Returns
string
| undefined
Defined in
packages/core/src/search/details.ts:150
matchesSearchRequest
▸ matchesSearchRequest(resource
, searchRequest
): boolean
Determines if the resource matches the search request.
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The resource that was created or updated. |
searchRequest | SearchRequest <Resource > | The subscription criteria as a search request. |
Returns
boolean
True if the resource satisfies the search request.
Defined in
packages/core/src/search/match.ts:13
parseSearchRequest
▸ parseSearchRequest<T
>(resourceType
, query
): SearchRequest
<T
>
Parses a search URL into a search request.
Type parameters
Name | Type |
---|---|
T | extends Resource = Resource |
Parameters
Name | Type | Description |
---|---|---|
resourceType | T ["resourceType" ] | The FHIR resource type. |
query | Record <string , undefined | string | string []> | The collection of query string parameters. |
Returns
A parsed SearchRequest.
Defined in
packages/core/src/search/search.ts:127
parseSearchUrl
▸ parseSearchUrl<T
>(url
): SearchRequest
<T
>
Parses a search URL into a search request.
Type parameters
Name | Type |
---|---|
T | extends Resource = Resource |
Parameters
Name | Type | Description |
---|---|---|
url | URL | The search URL. |
Returns
A parsed SearchRequest.
Defined in
packages/core/src/search/search.ts:149
parseSearchDefinition
▸ parseSearchDefinition<T
>(url
): SearchRequest
<T
>
Parses a URL string into a SearchRequest.
Type parameters
Name | Type |
---|---|
T | extends Resource = Resource |
Parameters
Name | Type | Description |
---|---|---|
url | string | The URL to parse. |
Returns
Parsed search definition.
Defined in
packages/core/src/search/search.ts:159
parseCriteriaAsSearchRequest
▸ parseCriteriaAsSearchRequest(criteria
): SearchRequest
Parses a FHIR criteria string into a SearchRequest. FHIR criteria strings are found on resources such as Subscription.
Parameters
Name | Type | Description |
---|---|---|
criteria | string | The FHIR criteria string. |
Returns
Parsed search definition.
Defined in
packages/core/src/search/search.ts:169
formatSearchQuery
▸ formatSearchQuery(definition
): string
Formats a search definition object into a query string. Note: The return value does not include the resource type.
Parameters
Name | Type | Description |
---|---|---|
definition | SearchRequest <Resource > | The search definition. |
Returns
string
Formatted URL.
Defined in
packages/core/src/search/search.ts:426
streamToBuffer
▸ streamToBuffer(stream
): Promise
<Buffer
>
Reads data from a Readable stream and returns a Promise that resolves with a Buffer containing all the data.
Parameters
Name | Type | Description |
---|---|---|
stream | Readable | The Readable stream to read from. |
Returns
Promise
<Buffer
>
A Promise that resolves with a Buffer containing all the data from the Readable stream.
Defined in
packages/core/src/sftp.ts:8
indexStructureDefinitionBundle
▸ indexStructureDefinitionBundle(bundle
): void
Indexes a bundle of StructureDefinitions for faster lookup.
See
IndexedStructureDefinition for more details on indexed StructureDefinitions.
Parameters
Name | Type | Description |
---|---|---|
bundle | Bundle <Resource > | A FHIR bundle StructureDefinition resources. |
Returns
void
Defined in
packages/core/src/types.ts:140
indexStructureDefinition
▸ indexStructureDefinition(structureDefinition
): void
Indexes a StructureDefinition for fast lookup.
See
IndexedStructureDefinition for more details on indexed StructureDefinitions.
Parameters
Name | Type | Description |
---|---|---|
structureDefinition | StructureDefinition | The original StructureDefinition. |
Returns
void
Defined in
packages/core/src/types.ts:154
indexSearchParameterBundle
▸ indexSearchParameterBundle(bundle
): void
Indexes a bundle of SearchParameter resources for faster lookup.
See
IndexedStructureDefinition for more details on indexed StructureDefinitions.
Parameters
Name | Type | Description |
---|---|---|
bundle | Bundle <SearchParameter > | A FHIR bundle SearchParameter resources. |
Returns
void
Defined in
packages/core/src/types.ts:237
indexSearchParameter
▸ indexSearchParameter(searchParam
): void
Indexes a SearchParameter resource for fast lookup. Indexes by SearchParameter.code, which is the query string parameter name.
See
IndexedStructureDefinition for more details on indexed StructureDefinitions.
Parameters
Name | Type | Description |
---|---|---|
searchParam | SearchParameter | The SearchParameter resource. |
Returns
void
Defined in
packages/core/src/types.ts:252
getElementDefinitionTypeName
▸ getElementDefinitionTypeName(elementDefinition
): string
Returns the type name for an ElementDefinition.
Parameters
Name | Type | Description |
---|---|---|
elementDefinition | ElementDefinition | The element definition. |
Returns
string
The Medplum type name.
Defined in
packages/core/src/types.ts:319
buildTypeName
▸ buildTypeName(components
): string
Parameters
Name | Type |
---|---|
components | string [] |
Returns
string
Defined in
packages/core/src/types.ts:326
isResourceTypeSchema
▸ isResourceTypeSchema(typeSchema
): boolean
Returns true if the type schema is a non-abstract FHIR resource.
Parameters
Name | Type | Description |
---|---|---|
typeSchema | TypeSchema | The type schema to check. |
Returns
boolean
True if the type schema is a non-abstract FHIR resource.
Defined in
packages/core/src/types.ts:338
getResourceTypes
▸ getResourceTypes(): ResourceType
[]
Returns an array of all resource types. Note that this is based on globalSchema, and will only return resource types that are currently in memory.
Returns
ResourceType
[]
An array of all resource types.
Defined in
packages/core/src/types.ts:353
getResourceTypeSchema
▸ getResourceTypeSchema(resourceType
): TypeSchema
Returns the type schema for the resource type.
Parameters
Name | Type | Description |
---|---|---|
resourceType | string | The resource type. |
Returns
The type schema for the resource type.
Defined in
packages/core/src/types.ts:368
getSearchParameters
▸ getSearchParameters(resourceType
): Record
<string
, SearchParameter
> | undefined
Returns the search parameters for the resource type indexed by search code.
Parameters
Name | Type | Description |
---|---|---|
resourceType | string | The resource type. |
Returns
Record
<string
, SearchParameter
> | undefined
The search parameters for the resource type indexed by search code.
Defined in
packages/core/src/types.ts:377
getPropertyDisplayName
▸ getPropertyDisplayName(path
): string
Returns a human friendly display name for a FHIR element definition path.
Parameters
Name | Type | Description |
---|---|---|
path | string | The FHIR element definition path. |
Returns
string
The best guess of the display name.
Defined in
packages/core/src/types.ts:386
getElementDefinition
▸ getElementDefinition(typeName
, propertyName
): ElementDefinition
| undefined
Returns an element definition by type and property name. Handles content references.
Parameters
Name | Type | Description |
---|---|---|
typeName | string | The type name. |
propertyName | string | The property name. |
Returns
ElementDefinition
| undefined
The element definition if found.
Defined in
packages/core/src/types.ts:423
isResource
▸ isResource<T
>(value
): value is T
Typeguard to validate that an object is a FHIR resource
Type parameters
Name | Type |
---|---|
T | extends Resource = Resource |
Parameters
Name | Type | Description |
---|---|---|
value | undefined | null | string | T | Reference <T > | The object to check |
Returns
value is T
True if the input is of type 'object' and contains property 'resourceType'
Defined in
packages/core/src/types.ts:451
isReference
▸ isReference<T
>(value
): value is Reference<T> & Object
Typeguard to validate that an object is a FHIR resource
Type parameters
Name | Type |
---|---|
T | extends Resource |
Parameters
Name | Type | Description |
---|---|---|
value | undefined | null | string | T | Reference <T > | The object to check |
Returns
value is Reference<T> & Object
True if the input is of type 'object' and contains property 'reference'
Defined in
packages/core/src/types.ts:462
loadDataTypes
▸ loadDataTypes(bundle
): void
Parameters
Name | Type |
---|---|
bundle | Bundle <StructureDefinition > |
Returns
void
Defined in
packages/core/src/typeschema/types.ts:73
experimentalValidateResource
▸ experimentalValidateResource(resource
, profile?
): void
Parameters
Name | Type |
---|---|
resource | Resource |
profile? | StructureDefinition |
Returns
void
Defined in
packages/core/src/typeschema/validation.ts:65
createReference
▸ createReference<T
>(resource
): Reference
<T
>
Creates a reference resource.
Type parameters
Name | Type |
---|---|
T | extends Resource |
Parameters
Name | Type | Description |
---|---|---|
resource | T | The FHIR reesource. |
Returns
Reference
<T
>
A reference resource.
Defined in
packages/core/src/utils.ts:39
getReferenceString
▸ getReferenceString(resource
): string
Returns a reference string for a resource.
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The FHIR resource. |
Returns
string
A reference string of the form resourceType/id.
Defined in
packages/core/src/utils.ts:50
resolveId
▸ resolveId(reference
): string
| undefined
Returns the ID portion of a reference.
Parameters
Name | Type | Description |
---|---|---|
reference | undefined | Reference <Resource > | A FHIR reference. |
Returns
string
| undefined
The ID portion of a reference.
Defined in
packages/core/src/utils.ts:59
isProfileResource
▸ isProfileResource(resource
): resource is ProfileResource
Returns true if the resource is a "ProfileResource".
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The FHIR resource. |
Returns
resource is ProfileResource
True if the resource is a "ProfileResource".
Defined in
packages/core/src/utils.ts:68
getDisplayString
▸ getDisplayString(resource
): string
Returns a display string for the resource.
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The input resource. |
Returns
string
Human friendly display string.
Defined in
packages/core/src/utils.ts:81
getImageSrc
▸ getImageSrc(resource
): string
| undefined
Returns an image URL for the resource, if one is available.
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The input resource. |
Returns
string
| undefined
The image URL for the resource or undefined.
Defined in
packages/core/src/utils.ts:141
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
Name | Type | Description |
---|---|---|
date | undefined | string | The 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:179
calculateAge
▸ calculateAge(birthDateStr
, endDateStr?
): Object
Calculates the age in years from the birth date.
Parameters
Name | Type | Description |
---|---|---|
birthDateStr | string | The birth date or start date in ISO-8601 format YYYY-MM-DD. |
endDateStr? | string | Optional end date in ISO-8601 format YYYY-MM-DD. Default value is today. |
Returns
Object
The age in years, months, and days.
Name | Type |
---|---|
years | number |
months | number |
days | number |
Defined in
packages/core/src/utils.ts:189
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
Name | Type | Description |
---|---|---|
birthDateStr | string | The birth date or start date in ISO-8601 format YYYY-MM-DD. |
endDateStr? | string | Optional 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:231
getQuestionnaireAnswers
▸ getQuestionnaireAnswers(response
): Record
<string
, QuestionnaireResponseItemAnswer
>
Returns all questionnaire answers as a map by link ID.
Parameters
Name | Type | Description |
---|---|---|
response | QuestionnaireResponse | The questionnaire response resource. |
Returns
Record
<string
, QuestionnaireResponseItemAnswer
>
Questionnaire answers mapped by link ID.
Defined in
packages/core/src/utils.ts:247
getIdentifier
▸ getIdentifier(resource
, system
): string
| undefined
Returns the resource identifier for the given system.
If multiple identifiers exist with the same system, the first one is returned.
If the system is not found, then returns undefined.
Parameters
Name | Type | Description |
---|---|---|
resource | Resource | The resource to check. |
system | string | The identifier system. |
Returns
string
| undefined
The identifier value if found; otherwise undefined.
Defined in
packages/core/src/utils.ts:284
getExtensionValue
▸ getExtensionValue(resource
, ...urls
): string
| undefined
Returns an extension value by extension URLs.
Parameters
Name | Type | Description |
---|---|---|
resource | any | The base resource. |
...urls | string [] | 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:304
getExtension
▸ getExtension(resource
, ...urls
): Extension
| undefined
Returns an extension by extension URLs.
Parameters
Name | Type | Description |
---|---|---|
resource | any | The base resource. |
...urls | string [] | Array of extension URLs. Each entry represents a nested extension. |
Returns
Extension
| undefined
The extension object if found; undefined otherwise.
Defined in
packages/core/src/utils.ts:322
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
Name | Type | Description |
---|---|---|
value | any | The input value. |
pretty? | boolean | Optional flag to pretty-print the JSON. |
Returns
string
The resulting JSON string.
Defined in
packages/core/src/utils.ts:343
isEmpty
▸ isEmpty(v
): boolean
Returns true if the value is empty (null, undefined, empty string, or empty object).
Parameters
Name | Type | Description |
---|---|---|
v | any | Any value. |
Returns
boolean
True if the value is an empty string or an empty object.
Defined in
packages/core/src/utils.ts:373
deepEquals
▸ deepEquals(object1
, object2
, path?
): boolean
Resource equality. Ignores meta.versionId and meta.lastUpdated.
Parameters
Name | Type | Description |
---|---|---|
object1 | unknown | The first object. |
object2 | unknown | The second object. |
path? | string | Optional path string. |
Returns
boolean
True if the objects are equal.
Defined in
packages/core/src/utils.ts:389
deepIncludes
▸ deepIncludes(value
, pattern
): boolean
Checks if object2 includes all fields and values of object1. It doesn't matter if object2 has extra fields.
Parameters
Name | Type | Description |
---|---|---|
value | any | The object to test if contained in pattern. |
pattern | any | The object to test against. |
Returns
boolean
True if pattern includes all fields and values of value.
Defined in
packages/core/src/utils.ts:456
deepClone
▸ deepClone<T
>(input
): T
Creates a deep clone of the input value.
Limitations:
- Only supports JSON primitives and arrays.
- Does not support Functions, lambdas, etc.
- Does not support circular references.
See: https://web.dev/structured-clone/ See: https://stackoverflow.com/questions/40488190/how-is-structured-clone-algorithm-different-from-deep-copy
Type parameters
Name |
---|
T |
Parameters
Name | Type | Description |
---|---|---|
input | T | The input to clone. |
Returns
T
A deep clone of the input.
Defined in
packages/core/src/utils.ts:498
isUUID
▸ isUUID(input
): boolean
Returns true if the input string is a UUID.
Parameters
Name | Type | Description |
---|---|---|
input | string | The input string. |
Returns
boolean
True if the input string matches the UUID format.
Defined in
packages/core/src/utils.ts:507
isObject
▸ isObject(obj
): obj is Record<string, unknown>
Returns true if the input is an object.
Parameters
Name | Type | Description |
---|---|---|
obj | unknown | The candidate object. |
Returns
obj is Record<string, unknown>
True if the input is a non-null non-undefined object.
Defined in
packages/core/src/utils.ts:516
isStringArray
▸ isStringArray(arr
): arr is string[]
Returns true if the input array is an array of strings.
Parameters
Name | Type | Description |
---|---|---|
arr | any [] | Input array. |
Returns
arr is string[]
True if the input array is an array of strings.
Defined in
packages/core/src/utils.ts:525
arrayBufferToHex
▸ arrayBufferToHex(arrayBuffer
): string
Converts an ArrayBuffer to hex string. See: https://stackoverflow.com/a/55200387
Parameters
Name | Type | Description |
---|---|---|
arrayBuffer | ArrayBuffer | The input array buffer. |
Returns
string
The resulting hex string.
Defined in
packages/core/src/utils.ts:542
arrayBufferToBase64
▸ arrayBufferToBase64(arrayBuffer
): string
Converts an ArrayBuffer to a base-64 encoded string.
Parameters
Name | Type | Description |
---|---|---|
arrayBuffer | ArrayBuffer | The input array buffer. |
Returns
string
The base-64 encoded string.
Defined in
packages/core/src/utils.ts:556
capitalize
▸ capitalize(word
): string
Parameters
Name | Type |
---|---|
word | string |
Returns
string
Defined in
packages/core/src/utils.ts:565
isLowerCase
▸ isLowerCase(c
): boolean
Parameters
Name | Type |
---|---|
c | string |
Returns
boolean
Defined in
packages/core/src/utils.ts:569
getCodeBySystem
▸ getCodeBySystem(concept
, system
): string
| undefined
Tries to find a code string for a given system within a given codeable concept.
Parameters
Name | Type | Description |
---|---|---|
concept | CodeableConcept | The codeable concept. |
system | string | The system string. |
Returns
string
| undefined
The code if found; otherwise undefined.
Defined in
packages/core/src/utils.ts:579
setCodeBySystem
▸ setCodeBySystem(concept
, system
, code
): void
Sets a code for a given system within a given codeable concept.
Parameters
Name | Type | Description |
---|---|---|
concept | CodeableConcept | The codeable concept. |
system | string | The system string. |
code | string | The code value. |
Returns
void
Defined in
packages/core/src/utils.ts:589
findObservationInterval
▸ findObservationInterval(definition
, patient
, value
, category?
): ObservationDefinitionQualifiedInterval
| undefined
Tries to find an observation interval for the given patient and value.
Parameters
Name | Type | Description |
---|---|---|
definition | ObservationDefinition | The observation definition. |
patient | Patient | The patient. |
value | number | The observation value. |
category? | "reference" | "critical" | "absolute" | Optional interval category restriction. |
Returns
ObservationDefinitionQualifiedInterval
| undefined
The observation interval if found; otherwise undefined.
Defined in
packages/core/src/utils.ts:609
findObservationReferenceRange
▸ findObservationReferenceRange(definition
, patient
, names
): ObservationDefinitionQualifiedInterval
| undefined
Tries to find an observation reference range for the given patient and condition names.
Parameters
Name | Type | Description |
---|---|---|
definition | ObservationDefinition | The observation definition. |
patient | Patient | The patient. |
names | string [] | The condition names. |
Returns
ObservationDefinitionQualifiedInterval
| undefined
The observation interval if found; otherwise undefined.
Defined in
packages/core/src/utils.ts:630
matchesRange
▸ matchesRange(value
, range
, precision?
): boolean
Returns true if the value is in the range accounting for precision.
Parameters
Name | Type | Description |
---|---|---|
value | number | The numeric value. |
range | Range | The numeric range. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the value is within the range.
Defined in
packages/core/src/utils.ts:695
preciseRound
▸ preciseRound(a
, precision
): number
Returns the input number rounded to the specified number of digits.
Parameters
Name | Type | Description |
---|---|---|
a | number | The input number. |
precision | number | The precision in number of digits. |
Returns
number
The number rounded to the specified number of digits.
Defined in
packages/core/src/utils.ts:708
preciseEquals
▸ preciseEquals(a
, b
, precision?
): boolean
Returns true if the two numbers are equal to the given precision.
Parameters
Name | Type | Description |
---|---|---|
a | number | The first number. |
b | number | The second number. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the two numbers are equal to the given precision.
Defined in
packages/core/src/utils.ts:719
preciseLessThan
▸ preciseLessThan(a
, b
, precision?
): boolean
Returns true if the first number is less than the second number to the given precision.
Parameters
Name | Type | Description |
---|---|---|
a | number | The first number. |
b | number | The second number. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the first number is less than the second number to the given precision.
Defined in
packages/core/src/utils.ts:730
preciseGreaterThan
▸ preciseGreaterThan(a
, b
, precision?
): boolean
Returns true if the first number is greater than the second number to the given precision.
Parameters
Name | Type | Description |
---|---|---|
a | number | The first number. |
b | number | The second number. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the first number is greater than the second number to the given precision.
Defined in
packages/core/src/utils.ts:741
preciseLessThanOrEquals
▸ preciseLessThanOrEquals(a
, b
, precision?
): boolean
Returns true if the first number is less than or equal to the second number to the given precision.
Parameters
Name | Type | Description |
---|---|---|
a | number | The first number. |
b | number | The second number. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the first number is less than or equal to the second number to the given precision.
Defined in
packages/core/src/utils.ts:752
preciseGreaterThanOrEquals
▸ preciseGreaterThanOrEquals(a
, b
, precision?
): boolean
Returns true if the first number is greater than or equal to the second number to the given precision.
Parameters
Name | Type | Description |
---|---|---|
a | number | The first number. |
b | number | The second number. |
precision? | number | Optional precision in number of digits. |
Returns
boolean
True if the first number is greater than or equal to the second number to the given precision.
Defined in
packages/core/src/utils.ts:763
findResourceByCode
▸ findResourceByCode(resources
, code
, system
): ResourceWithCode
| undefined
Finds the first resource in the input array that matches the specified code and system.
Parameters
Name | Type | Description |
---|---|---|
resources | ResourceWithCode [] | The array of resources to search. |
code | string | CodeableConcept | The code to search for. |
system | string | The system to search for. |
Returns
ResourceWithCode
| undefined
The first resource in the input array that matches the specified code and system, or undefined if no such resource is found.
Defined in
packages/core/src/utils.ts:788