@medplum/core 0.5.2 → 0.9.0

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.
Files changed (50) hide show
  1. package/dist/cjs/index.js +819 -60
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/index.min.js +1 -1
  4. package/dist/cjs/index.min.js.map +1 -1
  5. package/dist/esm/index.js +817 -61
  6. package/dist/esm/index.js.map +1 -1
  7. package/dist/esm/index.min.js +1 -1
  8. package/dist/esm/index.min.js.map +1 -1
  9. package/dist/types/client.d.ts +427 -13
  10. package/dist/types/fix-ro-iddentifiers.d.ts +0 -0
  11. package/dist/types/index.d.ts +1 -0
  12. package/dist/types/repo.d.ts +116 -0
  13. package/dist/types/search.d.ts +9 -12
  14. package/dist/types/utils.d.ts +21 -0
  15. package/docs/.nojekyll +1 -0
  16. package/docs/assets/highlight.css +92 -0
  17. package/docs/assets/icons.css +1043 -0
  18. package/docs/assets/icons.png +0 -0
  19. package/docs/assets/icons@2x.png +0 -0
  20. package/docs/assets/main.js +52 -0
  21. package/docs/assets/search.js +1 -0
  22. package/docs/assets/style.css +1414 -0
  23. package/docs/assets/widgets.png +0 -0
  24. package/docs/assets/widgets@2x.png +0 -0
  25. package/docs/classes/LegacyRepositoryClient.html +71 -0
  26. package/docs/classes/MedplumClient.html +324 -0
  27. package/docs/classes/OperationOutcomeError.html +6 -0
  28. package/docs/enums/Operator.html +5 -0
  29. package/docs/enums/PropertyType.html +5 -0
  30. package/docs/enums/SearchParameterType.html +1 -0
  31. package/docs/index.html +89 -0
  32. package/docs/interfaces/AddressFormatOptions.html +1 -0
  33. package/docs/interfaces/FetchLike.html +1 -0
  34. package/docs/interfaces/Filter.html +1 -0
  35. package/docs/interfaces/GoogleCredentialResponse.html +1 -0
  36. package/docs/interfaces/HumanNameFormatOptions.html +1 -0
  37. package/docs/interfaces/IndexedStructureDefinition.html +19 -0
  38. package/docs/interfaces/LoginAuthenticationResponse.html +1 -0
  39. package/docs/interfaces/LoginProfileResponse.html +1 -0
  40. package/docs/interfaces/LoginScopeResponse.html +1 -0
  41. package/docs/interfaces/LoginState.html +1 -0
  42. package/docs/interfaces/MedplumClientOptions.html +33 -0
  43. package/docs/interfaces/RegisterRequest.html +1 -0
  44. package/docs/interfaces/SearchParameterDetails.html +1 -0
  45. package/docs/interfaces/SearchRequest.html +1 -0
  46. package/docs/interfaces/SortRule.html +1 -0
  47. package/docs/interfaces/TokenResponse.html +1 -0
  48. package/docs/interfaces/TypeSchema.html +10 -0
  49. package/docs/modules.html +138 -0
  50. package/package.json +3 -2
@@ -0,0 +1,138 @@
1
+ <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>@medplum/core</title><meta name="description" content="Documentation for @medplum/core"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script async src="assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base="."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">@medplum/core</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label><input type="checkbox" id="tsd-filter-externals" checked/><label class="tsd-widget" for="tsd-filter-externals">Externals</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><h1>@medplum/core </h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Enumerations</h3><ul class="tsd-index-list"><li class="tsd-kind-enum"><a href="enums/Operator.html" class="tsd-kind-icon">Operator</a></li><li class="tsd-kind-enum"><a href="enums/PropertyType.html" class="tsd-kind-icon">Property<wbr/>Type</a></li><li class="tsd-kind-enum"><a href="enums/SearchParameterType.html" class="tsd-kind-icon">Search<wbr/>Parameter<wbr/>Type</a></li></ul></section><section class="tsd-index-section "><h3>Classes</h3><ul class="tsd-index-list"><li class="tsd-kind-class"><a href="classes/LegacyRepositoryClient.html" class="tsd-kind-icon">Legacy<wbr/>Repository<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/MedplumClient.html" class="tsd-kind-icon">Medplum<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/OperationOutcomeError.html" class="tsd-kind-icon">Operation<wbr/>Outcome<wbr/>Error</a></li></ul></section><section class="tsd-index-section "><h3>Interfaces</h3><ul class="tsd-index-list"><li class="tsd-kind-interface"><a href="interfaces/AddressFormatOptions.html" class="tsd-kind-icon">Address<wbr/>Format<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/FetchLike.html" class="tsd-kind-icon">Fetch<wbr/>Like</a></li><li class="tsd-kind-interface"><a href="interfaces/Filter.html" class="tsd-kind-icon">Filter</a></li><li class="tsd-kind-interface"><a href="interfaces/GoogleCredentialResponse.html" class="tsd-kind-icon">Google<wbr/>Credential<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/HumanNameFormatOptions.html" class="tsd-kind-icon">Human<wbr/>Name<wbr/>Format<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/IndexedStructureDefinition.html" class="tsd-kind-icon">Indexed<wbr/>Structure<wbr/>Definition</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginAuthenticationResponse.html" class="tsd-kind-icon">Login<wbr/>Authentication<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginProfileResponse.html" class="tsd-kind-icon">Login<wbr/>Profile<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginScopeResponse.html" class="tsd-kind-icon">Login<wbr/>Scope<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginState.html" class="tsd-kind-icon">Login<wbr/>State</a></li><li class="tsd-kind-interface"><a href="interfaces/MedplumClientOptions.html" class="tsd-kind-icon">Medplum<wbr/>Client<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/RegisterRequest.html" class="tsd-kind-icon">Register<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/SearchParameterDetails.html" class="tsd-kind-icon">Search<wbr/>Parameter<wbr/>Details</a></li><li class="tsd-kind-interface"><a href="interfaces/SearchRequest.html" class="tsd-kind-icon">Search<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/SortRule.html" class="tsd-kind-icon">Sort<wbr/>Rule</a></li><li class="tsd-kind-interface"><a href="interfaces/TokenResponse.html" class="tsd-kind-icon">Token<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/TypeSchema.html" class="tsd-kind-icon">Type<wbr/>Schema</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias tsd-has-type-parameter"><a href="modules.html#LegacyRepositoryResult" class="tsd-kind-icon">Legacy<wbr/>Repository<wbr/>Result</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ProfileResource" class="tsd-kind-icon">Profile<wbr/>Resource</a></li></ul></section><section class="tsd-index-section "><h3>Variables</h3><ul class="tsd-index-list"><li class="tsd-kind-variable"><a href="modules.html#accessDenied" class="tsd-kind-icon">access<wbr/>Denied</a></li><li class="tsd-kind-variable"><a href="modules.html#allOk" class="tsd-kind-icon">all<wbr/>Ok</a></li><li class="tsd-kind-variable"><a href="modules.html#created" class="tsd-kind-icon">created</a></li><li class="tsd-kind-variable"><a href="modules.html#gone" class="tsd-kind-icon">gone</a></li><li class="tsd-kind-variable"><a href="modules.html#notFound" class="tsd-kind-icon">not<wbr/>Found</a></li><li class="tsd-kind-variable"><a href="modules.html#notModified" class="tsd-kind-icon">not<wbr/>Modified</a></li></ul></section><section class="tsd-index-section "><h3>Functions</h3><ul class="tsd-index-list"><li class="tsd-kind-function"><a href="modules.html#arrayBufferToBase64" class="tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Base64</a></li><li class="tsd-kind-function"><a href="modules.html#arrayBufferToHex" class="tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Hex</a></li><li class="tsd-kind-function tsd-has-type-parameter"><a href="modules.html#assertOk" class="tsd-kind-icon">assert<wbr/>Ok</a></li><li class="tsd-kind-function"><a href="modules.html#badRequest" class="tsd-kind-icon">bad<wbr/>Request</a></li><li class="tsd-kind-function"><a href="modules.html#buildTypeName" class="tsd-kind-icon">build<wbr/>Type<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#calculateAge" class="tsd-kind-icon">calculate<wbr/>Age</a></li><li class="tsd-kind-function"><a href="modules.html#calculateAgeString" class="tsd-kind-icon">calculate<wbr/>Age<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#capitalize" class="tsd-kind-icon">capitalize</a></li><li class="tsd-kind-function tsd-has-type-parameter"><a href="modules.html#createReference" class="tsd-kind-icon">create<wbr/>Reference</a></li><li class="tsd-kind-function"><a href="modules.html#createSchema" class="tsd-kind-icon">create<wbr/>Schema</a></li><li class="tsd-kind-function"><a href="modules.html#createTypeSchema" class="tsd-kind-icon">create<wbr/>Type<wbr/>Schema</a></li><li class="tsd-kind-function"><a href="modules.html#deepEquals" class="tsd-kind-icon">deep<wbr/>Equals</a></li><li class="tsd-kind-function"><a href="modules.html#formatAddress" class="tsd-kind-icon">format<wbr/>Address</a></li><li class="tsd-kind-function"><a href="modules.html#formatFamilyName" class="tsd-kind-icon">format<wbr/>Family<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatGivenName" class="tsd-kind-icon">format<wbr/>Given<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatHumanName" class="tsd-kind-icon">format<wbr/>Human<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatSearchQuery" class="tsd-kind-icon">format<wbr/>Search<wbr/>Query</a></li><li class="tsd-kind-function"><a href="modules.html#getDateProperty" class="tsd-kind-icon">get<wbr/>Date<wbr/>Property</a></li><li class="tsd-kind-function"><a href="modules.html#getDisplayString" class="tsd-kind-icon">get<wbr/>Display<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#getExpressionForResourceType" class="tsd-kind-icon">get<wbr/>Expression<wbr/>For<wbr/>Resource<wbr/>Type</a></li><li class="tsd-kind-function"><a href="modules.html#getImageSrc" class="tsd-kind-icon">get<wbr/>Image<wbr/>Src</a></li><li class="tsd-kind-function"><a href="modules.html#getPropertyDisplayName" class="tsd-kind-icon">get<wbr/>Property<wbr/>Display<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#getReferenceString" class="tsd-kind-icon">get<wbr/>Reference<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#getSearchParameterDetails" class="tsd-kind-icon">get<wbr/>Search<wbr/>Parameter<wbr/>Details</a></li><li class="tsd-kind-function"><a href="modules.html#getStatus" class="tsd-kind-icon">get<wbr/>Status</a></li><li class="tsd-kind-function"><a href="modules.html#indexSearchParameter" class="tsd-kind-icon">index<wbr/>Search<wbr/>Parameter</a></li><li class="tsd-kind-function"><a href="modules.html#indexStructureDefinition" class="tsd-kind-icon">index<wbr/>Structure<wbr/>Definition</a></li><li class="tsd-kind-function"><a href="modules.html#isGone" class="tsd-kind-icon">is<wbr/>Gone</a></li><li class="tsd-kind-function"><a href="modules.html#isLowerCase" class="tsd-kind-icon">is<wbr/>Lower<wbr/>Case</a></li><li class="tsd-kind-function"><a href="modules.html#isNotFound" class="tsd-kind-icon">is<wbr/>Not<wbr/>Found</a></li><li class="tsd-kind-function"><a href="modules.html#isOk" class="tsd-kind-icon">is<wbr/>Ok</a></li><li class="tsd-kind-function"><a href="modules.html#isProfileResource" class="tsd-kind-icon">is<wbr/>Profile<wbr/>Resource</a></li><li class="tsd-kind-function"><a href="modules.html#parseSearchDefinition" class="tsd-kind-icon">parse<wbr/>Search<wbr/>Definition</a></li><li class="tsd-kind-function"><a href="modules.html#resolveId" class="tsd-kind-icon">resolve<wbr/>Id</a></li><li class="tsd-kind-function"><a href="modules.html#stringify" class="tsd-kind-icon">stringify</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias tsd-has-type-parameter"><a id="LegacyRepositoryResult" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Legacy<wbr/>Repository<wbr/>Result<a href="#LegacyRepositoryResult" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Legacy<wbr/>Repository<wbr/>Result<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/repo.ts:11</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
2
+ <p>The LegacyRepositoryResult type is a tuple of operation outcome and optional resource.</p>
3
+ </div><dl class="tsd-comment-tags"><dt>deprecated</dt><dd></dd></dl></div><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>T<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="ProfileResource" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Profile<wbr/>Resource<a href="#ProfileResource" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">Profile<wbr/>Resource<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Patient</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Practitioner</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">RelatedPerson</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:4</li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Variables</h2><section class="tsd-panel tsd-member tsd-kind-variable"><a id="accessDenied" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> access<wbr/>Denied<a href="#accessDenied" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">access<wbr/>Denied<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:80</li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="allOk" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> all<wbr/>Ok<a href="#allOk" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">all<wbr/>Ok<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:10</li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="created" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> created<a href="#created" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">created<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:24</li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="gone" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> gone<a href="#gone" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">gone<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:66</li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="notFound" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> not<wbr/>Found<a href="#notFound" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">not<wbr/>Found<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:52</li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="notModified" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span class="tsd-flag ts-flagConst">Const</span> not<wbr/>Modified<a href="#notModified" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">not<wbr/>Modified<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:38</li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Functions</h2><section class="tsd-panel tsd-member tsd-kind-function"><a id="arrayBufferToBase64" class="tsd-anchor"></a><h3 class="tsd-anchor-link">array<wbr/>Buffer<wbr/>To<wbr/>Base64<a href="#arrayBufferToBase64" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Base64<span class="tsd-signature-symbol">(</span>arrayBuffer<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">ArrayBuffer</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:317</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
4
+ <p>Converts an ArrayBuffer to a base-64 encoded string.</p>
5
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>arrayBuffer: <span class="tsd-signature-type">ArrayBuffer</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
6
+ <p>The input array buffer.</p>
7
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>The base-64 encoded string.</p>
8
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="arrayBufferToHex" class="tsd-anchor"></a><h3 class="tsd-anchor-link">array<wbr/>Buffer<wbr/>To<wbr/>Hex<a href="#arrayBufferToHex" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Hex<span class="tsd-signature-symbol">(</span>arrayBuffer<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">ArrayBuffer</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:303</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
9
+ <p>Converts an ArrayBuffer to hex string.
10
+ See: <a href="https://stackoverflow.com/a/55200387">https://stackoverflow.com/a/55200387</a></p>
11
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>arrayBuffer: <span class="tsd-signature-type">ArrayBuffer</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
12
+ <p>The input array buffer.</p>
13
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>The resulting hex string.</p>
14
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function tsd-has-type-parameter"><a id="assertOk" class="tsd-anchor"></a><h3 class="tsd-anchor-link">assert<wbr/>Ok<a href="#assertOk" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function tsd-has-type-parameter"><li class="tsd-signature tsd-kind-icon">assert<wbr/>Ok<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span>outcome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span>, resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">asserts </span><span class="tsd-signature-type">resource</span><span class="tsd-signature-symbol"> is </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:145</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
15
+ <p>Asserts that the operation completed successfully and that the resource is defined.</p>
16
+ </div></div><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>T</h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>outcome: <span class="tsd-signature-type">OperationOutcome</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
17
+ <p>The operation outcome.</p>
18
+ </div></div></li><li><h5>resource: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
19
+ <p>The resource that may or may not have been returned.</p>
20
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">asserts </span><span class="tsd-signature-type">resource</span><span class="tsd-signature-symbol"> is </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="badRequest" class="tsd-anchor"></a><h3 class="tsd-anchor-link">bad<wbr/>Request<a href="#badRequest" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">bad<wbr/>Request<span class="tsd-signature-symbol">(</span>details<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, expression<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:94</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>details: <span class="tsd-signature-type">string</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> expression: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">OperationOutcome</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="buildTypeName" class="tsd-anchor"></a><h3 class="tsd-anchor-link">build<wbr/>Type<wbr/>Name<a href="#buildTypeName" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">build<wbr/>Type<wbr/>Name<span class="tsd-signature-symbol">(</span>components<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:234</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>components: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="calculateAge" class="tsd-anchor"></a><h3 class="tsd-anchor-link">calculate<wbr/>Age<a href="#calculateAge" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">calculate<wbr/>Age<span class="tsd-signature-symbol">(</span>birthDateStr<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, endDateStr<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>days<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>months<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>years<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:153</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
21
+ <p>Calculates the age in years from the birth date.</p>
22
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>birthDateStr: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
23
+ <p>The birth date or start date in ISO-8601 format YYYY-MM-DD.</p>
24
+ </div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> endDateStr: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
25
+ <p>Optional end date in ISO-8601 format YYYY-MM-DD. Default value is today.</p>
26
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">{ </span>days<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>months<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>years<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></h4><div><p>The age in years, months, and days.</p>
27
+ </div><ul class="tsd-parameters"><li class="tsd-parameter"><h5>days<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5>months<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5>years<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li></ul></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="calculateAgeString" class="tsd-anchor"></a><h3 class="tsd-anchor-link">calculate<wbr/>Age<wbr/>String<a href="#calculateAgeString" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">calculate<wbr/>Age<wbr/>String<span class="tsd-signature-symbol">(</span>birthDateStr<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, endDateStr<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:195</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
28
+ <p>Calculates the age string for display using the age appropriate units.
29
+ If the age is greater than or equal to 2 years, then the age is displayed in years.
30
+ If the age is greater than or equal to 1 month, then the age is displayed in months.
31
+ Otherwise, the age is displayed in days.</p>
32
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>birthDateStr: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
33
+ <p>The birth date or start date in ISO-8601 format YYYY-MM-DD.</p>
34
+ </div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> endDateStr: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
35
+ <p>Optional end date in ISO-8601 format YYYY-MM-DD. Default value is today.</p>
36
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4><div><p>The age string.</p>
37
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="capitalize" class="tsd-anchor"></a><h3 class="tsd-anchor-link">capitalize<a href="#capitalize" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">capitalize<span class="tsd-signature-symbol">(</span>word<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:326</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>word: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function tsd-has-type-parameter"><a id="createReference" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<wbr/>Reference<a href="#createReference" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function tsd-has-type-parameter"><li class="tsd-signature tsd-kind-icon">create<wbr/>Reference<span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Reference</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:11</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
38
+ <p>Creates a reference resource.</p>
39
+ </div></div><h4 class="tsd-type-parameters-title">Type parameters</h4><ul class="tsd-type-parameters"><li><h4>T<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span></h4></li></ul><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resource: <span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
40
+ <p>The FHIR reesource.</p>
41
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Reference</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type" data-tsd-kind="Type parameter">T</span><span class="tsd-signature-symbol">&gt;</span></h4><div><p>A reference resource.</p>
42
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="createSchema" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<wbr/>Schema<a href="#createSchema" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">create<wbr/>Schema<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:121</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
43
+ <p>Creates a new empty IndexedStructureDefinition.</p>
44
+ </div></div><h4 class="tsd-returns-title">Returns <a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a></h4><div><p>The empty IndexedStructureDefinition.</p>
45
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="createTypeSchema" class="tsd-anchor"></a><h3 class="tsd-anchor-link">create<wbr/>Type<wbr/>Schema<a href="#createTypeSchema" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">create<wbr/>Type<wbr/>Schema<span class="tsd-signature-symbol">(</span>typeName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, description<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/TypeSchema.html" class="tsd-signature-type" data-tsd-kind="Interface">TypeSchema</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:125</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>typeName: <span class="tsd-signature-type">string</span></h5></li><li><h5>description: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/TypeSchema.html" class="tsd-signature-type" data-tsd-kind="Interface">TypeSchema</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="deepEquals" class="tsd-anchor"></a><h3 class="tsd-anchor-link">deep<wbr/>Equals<a href="#deepEquals" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">deep<wbr/>Equals<span class="tsd-signature-symbol">(</span>object1<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span>, object2<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span>, path<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:260</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
46
+ <p>Resource equality.
47
+ Ignores meta.versionId and meta.lastUpdated.
48
+ See: <a href="https://dmitripavlutin.com/how-to-compare-objects-in-javascript/#4-deep-equality">https://dmitripavlutin.com/how-to-compare-objects-in-javascript/#4-deep-equality</a></p>
49
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>object1: <span class="tsd-signature-type">any</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
50
+ <p>The first object.</p>
51
+ </div></div></li><li><h5>object2: <span class="tsd-signature-type">any</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
52
+ <p>The second object.</p>
53
+ </div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> path: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><div><p>True if the objects are equal.</p>
54
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="formatAddress" class="tsd-anchor"></a><h3 class="tsd-anchor-link">format<wbr/>Address<a href="#formatAddress" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">format<wbr/>Address<span class="tsd-signature-symbol">(</span>address<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Address</span>, options<span class="tsd-signature-symbol">?: </span><a href="interfaces/AddressFormatOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AddressFormatOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/format.ts:15</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>address: <span class="tsd-signature-type">Address</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <a href="interfaces/AddressFormatOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AddressFormatOptions</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="formatFamilyName" class="tsd-anchor"></a><h3 class="tsd-anchor-link">format<wbr/>Family<wbr/>Name<a href="#formatFamilyName" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">format<wbr/>Family<wbr/>Name<span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HumanName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/format.ts:75</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>name: <span class="tsd-signature-type">HumanName</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="formatGivenName" class="tsd-anchor"></a><h3 class="tsd-anchor-link">format<wbr/>Given<wbr/>Name<a href="#formatGivenName" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">format<wbr/>Given<wbr/>Name<span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HumanName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/format.ts:67</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>name: <span class="tsd-signature-type">HumanName</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="formatHumanName" class="tsd-anchor"></a><h3 class="tsd-anchor-link">format<wbr/>Human<wbr/>Name<a href="#formatHumanName" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">format<wbr/>Human<wbr/>Name<span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HumanName</span>, options<span class="tsd-signature-symbol">?: </span><a href="interfaces/HumanNameFormatOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">HumanNameFormatOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/format.ts:41</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>name: <span class="tsd-signature-type">HumanName</span></h5></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <a href="interfaces/HumanNameFormatOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">HumanNameFormatOptions</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="formatSearchQuery" class="tsd-anchor"></a><h3 class="tsd-anchor-link">format<wbr/>Search<wbr/>Query<a href="#formatSearchQuery" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">format<wbr/>Search<wbr/>Query<span class="tsd-signature-symbol">(</span>definition<span class="tsd-signature-symbol">: </span><a href="interfaces/SearchRequest.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchRequest</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/search.ts:194</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
55
+ <p>Formats a search definition object into a query string.
56
+ Note: The return value does not include the resource type.</p>
57
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>definition: <a href="interfaces/SearchRequest.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchRequest</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
58
+ <p>The search definition.</p>
59
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>Formatted URL.</p>
60
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getDateProperty" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Date<wbr/>Property<a href="#getDateProperty" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Date<wbr/>Property<span class="tsd-signature-symbol">(</span>date<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Date</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:143</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
61
+ <p>Returns a Date property as a Date.
62
+ When working with JSON objects, Dates are often serialized as ISO-8601 strings.
63
+ When that happens, we need to safely convert to a proper Date object.</p>
64
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>date: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
65
+ <p>The date property value, which could be a string or a Date object.</p>
66
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Date</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4><div><p>A Date object.</p>
67
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getDisplayString" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Display<wbr/>String<a href="#getDisplayString" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Display<wbr/>String<span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:53</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
68
+ <p>Returns a display string for the resource.</p>
69
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resource: <span class="tsd-signature-type">Resource</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
70
+ <p>The input resource.</p>
71
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>Human friendly display string.</p>
72
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getExpressionForResourceType" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Expression<wbr/>For<wbr/>Resource<wbr/>Type<a href="#getExpressionForResourceType" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Expression<wbr/>For<wbr/>Resource<wbr/>Type<span class="tsd-signature-symbol">(</span>resourceType<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, expression<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/searchparams.ts:126</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resourceType: <span class="tsd-signature-type">string</span></h5></li><li><h5>expression: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getImageSrc" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Image<wbr/>Src<a href="#getImageSrc" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Image<wbr/>Src<span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:108</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
73
+ <p>Returns an image URL for the resource, if one is available.</p>
74
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resource: <span class="tsd-signature-type">Resource</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
75
+ <p>The input resource.</p>
76
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4><div><p>The image URL for the resource or undefined.</p>
77
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getPropertyDisplayName" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Property<wbr/>Display<wbr/>Name<a href="#getPropertyDisplayName" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Property<wbr/>Display<wbr/>Name<span class="tsd-signature-symbol">(</span>property<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">ElementDefinition</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:238</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>property: <span class="tsd-signature-type">ElementDefinition</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getReferenceString" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Reference<wbr/>String<a href="#getReferenceString" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Reference<wbr/>String<span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:22</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
78
+ <p>Returns a reference string for a resource.</p>
79
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resource: <span class="tsd-signature-type">Resource</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
80
+ <p>The FHIR resource.</p>
81
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>A reference string of the form resourceType/id.</p>
82
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getSearchParameterDetails" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Search<wbr/>Parameter<wbr/>Details<a href="#getSearchParameterDetails" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Search<wbr/>Parameter<wbr/>Details<span class="tsd-signature-symbol">(</span>structureDefinitions<span class="tsd-signature-symbol">: </span><a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a>, resourceType<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, searchParam<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">SearchParameter</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/SearchParameterDetails.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchParameterDetails</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/searchparams.ts:38</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
83
+ <p>Returns the type details of a SearchParameter.</p>
84
+ </div><div><p>The SearchParameter resource has a &quot;type&quot; parameter, but that is missing some critical information.</p>
85
+ <p>For example:</p>
86
+ <ol>
87
+ <li>The &quot;date&quot; type includes &quot;date&quot;, &quot;datetime&quot;, and &quot;period&quot;.</li>
88
+ <li>The &quot;token&quot; type includes enums and booleans.</li>
89
+ <li>Arrays/multiple values are not reflected at all.</li>
90
+ </ol>
91
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>structureDefinitions: <a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
92
+ <p>Collection of StructureDefinition resources indexed by name.</p>
93
+ </div></div></li><li><h5>resourceType: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
94
+ <p>The root resource type.</p>
95
+ </div></div></li><li><h5>searchParam: <span class="tsd-signature-type">SearchParameter</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
96
+ <p>The search parameter.</p>
97
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/SearchParameterDetails.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchParameterDetails</a></h4><div><p>The search parameter type details.</p>
98
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getStatus" class="tsd-anchor"></a><h3 class="tsd-anchor-link">get<wbr/>Status<a href="#getStatus" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Status<span class="tsd-signature-symbol">(</span>outcome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:122</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>outcome: <span class="tsd-signature-type">OperationOutcome</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="indexSearchParameter" class="tsd-anchor"></a><h3 class="tsd-anchor-link">index<wbr/>Search<wbr/>Parameter<a href="#indexSearchParameter" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">index<wbr/>Search<wbr/>Parameter<span class="tsd-signature-symbol">(</span>schema<span class="tsd-signature-symbol">: </span><a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a>, searchParam<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">SearchParameter</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:215</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
99
+ <p>Indexes a SearchParameter resource for fast lookup.
100
+ Indexes by SearchParameter.code, which is the query string parameter name.</p>
101
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>schema: <a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
102
+ <p>The output IndexedStructureDefinition.</p>
103
+ </div></div></li><li><h5>searchParam: <span class="tsd-signature-type">SearchParameter</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
104
+ <p>The SearchParameter resource.</p>
105
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="indexStructureDefinition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">index<wbr/>Structure<wbr/>Definition<a href="#indexStructureDefinition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">index<wbr/>Structure<wbr/>Definition<span class="tsd-signature-symbol">(</span>schema<span class="tsd-signature-symbol">: </span><a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a>, structureDefinition<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">StructureDefinition</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/types.ts:147</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
106
+ <p>Indexes a StructureDefinition for fast lookup.
107
+ See comments on IndexedStructureDefinition for more details.</p>
108
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>schema: <a href="interfaces/IndexedStructureDefinition.html" class="tsd-signature-type" data-tsd-kind="Interface">IndexedStructureDefinition</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
109
+ <p>The output IndexedStructureDefinition.</p>
110
+ </div></div></li><li><h5>structureDefinition: <span class="tsd-signature-type">StructureDefinition</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
111
+ <p>The original StructureDefinition.</p>
112
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="isGone" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is<wbr/>Gone<a href="#isGone" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">is<wbr/>Gone<span class="tsd-signature-symbol">(</span>outcome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:118</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>outcome: <span class="tsd-signature-type">OperationOutcome</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="isLowerCase" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is<wbr/>Lower<wbr/>Case<a href="#isLowerCase" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">is<wbr/>Lower<wbr/>Case<span class="tsd-signature-symbol">(</span>c<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:330</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>c: <span class="tsd-signature-type">string</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="isNotFound" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is<wbr/>Not<wbr/>Found<a href="#isNotFound" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">is<wbr/>Not<wbr/>Found<span class="tsd-signature-symbol">(</span>outcome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:114</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>outcome: <span class="tsd-signature-type">OperationOutcome</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="isOk" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is<wbr/>Ok<a href="#isOk" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">is<wbr/>Ok<span class="tsd-signature-symbol">(</span>outcome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">OperationOutcome</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/outcomes.ts:110</li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>outcome: <span class="tsd-signature-type">OperationOutcome</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="isProfileResource" class="tsd-anchor"></a><h3 class="tsd-anchor-link">is<wbr/>Profile<wbr/>Resource<a href="#isProfileResource" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">is<wbr/>Profile<wbr/>Resource<span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:40</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
113
+ <p>Returns true if the resource is a &quot;ProfileResource&quot;.</p>
114
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>resource: <span class="tsd-signature-type">Resource</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
115
+ <p>The FHIR resource.</p>
116
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4><div><p>True if the resource is a &quot;ProfileResource&quot;.</p>
117
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="parseSearchDefinition" class="tsd-anchor"></a><h3 class="tsd-anchor-link">parse<wbr/>Search<wbr/>Definition<a href="#parseSearchDefinition" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">parse<wbr/>Search<wbr/>Definition<span class="tsd-signature-symbol">(</span>url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/SearchRequest.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchRequest</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/search.ts:88</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
118
+ <p>Parses a URL into a SearchRequest.</p>
119
+ </div><div><p>See the FHIR search spec: <a href="http://hl7.org/fhir/r4/search.html">http://hl7.org/fhir/r4/search.html</a></p>
120
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>url: <span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
121
+ <p>The URL to parse.</p>
122
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/SearchRequest.html" class="tsd-signature-type" data-tsd-kind="Interface">SearchRequest</a></h4><div><p>Parsed search definition.</p>
123
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="resolveId" class="tsd-anchor"></a><h3 class="tsd-anchor-link">resolve<wbr/>Id<a href="#resolveId" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">resolve<wbr/>Id<span class="tsd-signature-symbol">(</span>reference<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Reference</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:31</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
124
+ <p>Returns the ID portion of a reference.</p>
125
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>reference: <span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Reference</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Resource</span><span class="tsd-signature-symbol">&gt;</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
126
+ <p>A FHIR reference.</p>
127
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4><div><p>The ID portion of a reference.</p>
128
+ </div></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="stringify" class="tsd-anchor"></a><h3 class="tsd-anchor-link">stringify<a href="#stringify" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">stringify<span class="tsd-signature-symbol">(</span>value<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span>, pretty<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in dev/medplum/packages/core/src/utils.ts:215</li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
129
+ <p>FHIR JSON stringify.
130
+ Removes properties with empty string values.
131
+ Removes objects with zero properties.
132
+ See: <a href="https://www.hl7.org/fhir/json.html">https://www.hl7.org/fhir/json.html</a></p>
133
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>value: <span class="tsd-signature-type">any</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
134
+ <p>The input value.</p>
135
+ </div></div></li><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> pretty: <span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
136
+ <p>Optional flag to pretty-print the JSON.</p>
137
+ </div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div><p>The resulting JSON string.</p>
138
+ </div></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-enum"><a href="enums/Operator.html" class="tsd-kind-icon">Operator</a></li><li class="tsd-kind-enum"><a href="enums/PropertyType.html" class="tsd-kind-icon">Property<wbr/>Type</a></li><li class="tsd-kind-enum"><a href="enums/SearchParameterType.html" class="tsd-kind-icon">Search<wbr/>Parameter<wbr/>Type</a></li><li class="tsd-kind-class"><a href="classes/LegacyRepositoryClient.html" class="tsd-kind-icon">Legacy<wbr/>Repository<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/MedplumClient.html" class="tsd-kind-icon">Medplum<wbr/>Client</a></li><li class="tsd-kind-class"><a href="classes/OperationOutcomeError.html" class="tsd-kind-icon">Operation<wbr/>Outcome<wbr/>Error</a></li><li class="tsd-kind-interface"><a href="interfaces/AddressFormatOptions.html" class="tsd-kind-icon">Address<wbr/>Format<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/FetchLike.html" class="tsd-kind-icon">Fetch<wbr/>Like</a></li><li class="tsd-kind-interface"><a href="interfaces/Filter.html" class="tsd-kind-icon">Filter</a></li><li class="tsd-kind-interface"><a href="interfaces/GoogleCredentialResponse.html" class="tsd-kind-icon">Google<wbr/>Credential<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/HumanNameFormatOptions.html" class="tsd-kind-icon">Human<wbr/>Name<wbr/>Format<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/IndexedStructureDefinition.html" class="tsd-kind-icon">Indexed<wbr/>Structure<wbr/>Definition</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginAuthenticationResponse.html" class="tsd-kind-icon">Login<wbr/>Authentication<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginProfileResponse.html" class="tsd-kind-icon">Login<wbr/>Profile<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginScopeResponse.html" class="tsd-kind-icon">Login<wbr/>Scope<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/LoginState.html" class="tsd-kind-icon">Login<wbr/>State</a></li><li class="tsd-kind-interface"><a href="interfaces/MedplumClientOptions.html" class="tsd-kind-icon">Medplum<wbr/>Client<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/RegisterRequest.html" class="tsd-kind-icon">Register<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/SearchParameterDetails.html" class="tsd-kind-icon">Search<wbr/>Parameter<wbr/>Details</a></li><li class="tsd-kind-interface"><a href="interfaces/SearchRequest.html" class="tsd-kind-icon">Search<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/SortRule.html" class="tsd-kind-icon">Sort<wbr/>Rule</a></li><li class="tsd-kind-interface"><a href="interfaces/TokenResponse.html" class="tsd-kind-icon">Token<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/TypeSchema.html" class="tsd-kind-icon">Type<wbr/>Schema</a></li><li class="tsd-kind-type-alias tsd-has-type-parameter"><a href="modules.html#LegacyRepositoryResult" class="tsd-kind-icon">Legacy<wbr/>Repository<wbr/>Result</a></li><li class="tsd-kind-type-alias"><a href="modules.html#ProfileResource" class="tsd-kind-icon">Profile<wbr/>Resource</a></li><li class="tsd-kind-variable"><a href="modules.html#accessDenied" class="tsd-kind-icon">access<wbr/>Denied</a></li><li class="tsd-kind-variable"><a href="modules.html#allOk" class="tsd-kind-icon">all<wbr/>Ok</a></li><li class="tsd-kind-variable"><a href="modules.html#created" class="tsd-kind-icon">created</a></li><li class="tsd-kind-variable"><a href="modules.html#gone" class="tsd-kind-icon">gone</a></li><li class="tsd-kind-variable"><a href="modules.html#notFound" class="tsd-kind-icon">not<wbr/>Found</a></li><li class="tsd-kind-variable"><a href="modules.html#notModified" class="tsd-kind-icon">not<wbr/>Modified</a></li><li class="tsd-kind-function"><a href="modules.html#arrayBufferToBase64" class="tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Base64</a></li><li class="tsd-kind-function"><a href="modules.html#arrayBufferToHex" class="tsd-kind-icon">array<wbr/>Buffer<wbr/>To<wbr/>Hex</a></li><li class="tsd-kind-function tsd-has-type-parameter"><a href="modules.html#assertOk" class="tsd-kind-icon">assert<wbr/>Ok</a></li><li class="tsd-kind-function"><a href="modules.html#badRequest" class="tsd-kind-icon">bad<wbr/>Request</a></li><li class="tsd-kind-function"><a href="modules.html#buildTypeName" class="tsd-kind-icon">build<wbr/>Type<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#calculateAge" class="tsd-kind-icon">calculate<wbr/>Age</a></li><li class="tsd-kind-function"><a href="modules.html#calculateAgeString" class="tsd-kind-icon">calculate<wbr/>Age<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#capitalize" class="tsd-kind-icon">capitalize</a></li><li class="tsd-kind-function tsd-has-type-parameter"><a href="modules.html#createReference" class="tsd-kind-icon">create<wbr/>Reference</a></li><li class="tsd-kind-function"><a href="modules.html#createSchema" class="tsd-kind-icon">create<wbr/>Schema</a></li><li class="tsd-kind-function"><a href="modules.html#createTypeSchema" class="tsd-kind-icon">create<wbr/>Type<wbr/>Schema</a></li><li class="tsd-kind-function"><a href="modules.html#deepEquals" class="tsd-kind-icon">deep<wbr/>Equals</a></li><li class="tsd-kind-function"><a href="modules.html#formatAddress" class="tsd-kind-icon">format<wbr/>Address</a></li><li class="tsd-kind-function"><a href="modules.html#formatFamilyName" class="tsd-kind-icon">format<wbr/>Family<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatGivenName" class="tsd-kind-icon">format<wbr/>Given<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatHumanName" class="tsd-kind-icon">format<wbr/>Human<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#formatSearchQuery" class="tsd-kind-icon">format<wbr/>Search<wbr/>Query</a></li><li class="tsd-kind-function"><a href="modules.html#getDateProperty" class="tsd-kind-icon">get<wbr/>Date<wbr/>Property</a></li><li class="tsd-kind-function"><a href="modules.html#getDisplayString" class="tsd-kind-icon">get<wbr/>Display<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#getExpressionForResourceType" class="tsd-kind-icon">get<wbr/>Expression<wbr/>For<wbr/>Resource<wbr/>Type</a></li><li class="tsd-kind-function"><a href="modules.html#getImageSrc" class="tsd-kind-icon">get<wbr/>Image<wbr/>Src</a></li><li class="tsd-kind-function"><a href="modules.html#getPropertyDisplayName" class="tsd-kind-icon">get<wbr/>Property<wbr/>Display<wbr/>Name</a></li><li class="tsd-kind-function"><a href="modules.html#getReferenceString" class="tsd-kind-icon">get<wbr/>Reference<wbr/>String</a></li><li class="tsd-kind-function"><a href="modules.html#getSearchParameterDetails" class="tsd-kind-icon">get<wbr/>Search<wbr/>Parameter<wbr/>Details</a></li><li class="tsd-kind-function"><a href="modules.html#getStatus" class="tsd-kind-icon">get<wbr/>Status</a></li><li class="tsd-kind-function"><a href="modules.html#indexSearchParameter" class="tsd-kind-icon">index<wbr/>Search<wbr/>Parameter</a></li><li class="tsd-kind-function"><a href="modules.html#indexStructureDefinition" class="tsd-kind-icon">index<wbr/>Structure<wbr/>Definition</a></li><li class="tsd-kind-function"><a href="modules.html#isGone" class="tsd-kind-icon">is<wbr/>Gone</a></li><li class="tsd-kind-function"><a href="modules.html#isLowerCase" class="tsd-kind-icon">is<wbr/>Lower<wbr/>Case</a></li><li class="tsd-kind-function"><a href="modules.html#isNotFound" class="tsd-kind-icon">is<wbr/>Not<wbr/>Found</a></li><li class="tsd-kind-function"><a href="modules.html#isOk" class="tsd-kind-icon">is<wbr/>Ok</a></li><li class="tsd-kind-function"><a href="modules.html#isProfileResource" class="tsd-kind-icon">is<wbr/>Profile<wbr/>Resource</a></li><li class="tsd-kind-function"><a href="modules.html#parseSearchDefinition" class="tsd-kind-icon">parse<wbr/>Search<wbr/>Definition</a></li><li class="tsd-kind-function"><a href="modules.html#resolveId" class="tsd-kind-icon">resolve<wbr/>Id</a></li><li class="tsd-kind-function"><a href="modules.html#stringify" class="tsd-kind-icon">stringify</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medplum/core",
3
- "version": "0.5.2",
3
+ "version": "0.9.0",
4
4
  "description": "Medplum TS/JS Library",
5
5
  "author": "Medplum <hello@medplum.com>",
6
6
  "license": "Apache-2.0",
@@ -17,7 +17,8 @@
17
17
  "test": "jest"
18
18
  },
19
19
  "devDependencies": {
20
- "@medplum/fhirtypes": "0.5.2"
20
+ "@medplum/fhirtypes": "0.9.0",
21
+ "fast-json-patch": "3.1.1"
21
22
  },
22
23
  "main": "dist/cjs/index.js",
23
24
  "module": "dist/esm/index.js",