UNPKG

@medplum/core

Version:

Medplum TS/JS Library

1 lines 214 kB
"use strict";var Mr=Object.defineProperty;var zo=Object.getOwnPropertyDescriptor;var Jo=Object.getOwnPropertyNames;var Ko=Object.prototype.hasOwnProperty;var Yo=(r,e)=>{for(var t in e)Mr(r,t,{get:e[t],enumerable:!0})},Zo=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Jo(e))!Ko.call(r,i)&&i!==t&&Mr(r,i,{get:()=>e[i],enumerable:!(n=zo(e,i))||n.enumerable});return r};var Xo=r=>Zo(Mr({},"__esModule",{value:!0}),r);var hl={};Yo(hl,{AccessPolicyInteraction:()=>$e,AndAtom:()=>gt,ArithemticOperatorAtom:()=>D,AsAtom:()=>de,BooleanInfixOperatorAtom:()=>R,CPT:()=>ns,ClientStorage:()=>He,ConcatAtom:()=>lt,ContainsAtom:()=>pt,ContentType:()=>w,DEFAULT_ACCEPT:()=>Co,DEFAULT_MAX_SEARCH_COUNT:()=>fc,DEFAULT_SEARCH_COUNT:()=>dc,DotAtom:()=>se,EmptySetAtom:()=>ct,EqualsAtom:()=>ft,EquivalentAtom:()=>mt,EventTarget:()=>gr,ExternalSecretSystems:()=>uu,FHIRCAST_EVENT_NAMES:()=>xr,FHIRCAST_EVENT_RESOURCES:()=>ho,FHIRCAST_EVENT_VERSION_REQUIRED:()=>Tr,FHIRCAST_RESOURCE_TYPES:()=>fo,FhirFilterComparison:()=>Lt,FhirFilterConnective:()=>Ft,FhirFilterNegation:()=>Nt,FhirPathAtom:()=>at,FhircastConnection:()=>Pt,FileBuilder:()=>Zn,FunctionAtom:()=>Z,HTTP_HL7_ORG:()=>Lr,HTTP_TERMINOLOGY_HL7_ORG:()=>ss,Hl7Context:()=>ce,Hl7Field:()=>De,Hl7Message:()=>ei,Hl7Segment:()=>Je,ICD10:()=>is,ImpliesAtom:()=>vt,InAtom:()=>dt,IndexerAtom:()=>he,InfixOperatorAtom:()=>X,IsAtom:()=>fe,LOINC:()=>es,LRUCache:()=>Ct,LiteralAtom:()=>L,LogLevel:()=>Ve,LogLevelNames:()=>$o,Logger:()=>ti,MEDPLUM_CLI_CLIENT_ID:()=>Zc,MEDPLUM_RELEASES_URL:()=>Go,MEDPLUM_VERSION:()=>Rr,MedplumClient:()=>Dt,MedplumKeyValueClient:()=>Ot,MemoryStorage:()=>br,MockAsyncClientStorage:()=>Wn,NDC:()=>os,NotEqualsAtom:()=>ht,NotEquivalentAtom:()=>yt,OAuthClientAssertionType:()=>wo,OAuthGrantType:()=>Ie,OAuthTokenAuthMethod:()=>ou,OAuthTokenType:()=>Po,OperationOutcomeError:()=>d,Operator:()=>f,OperatorPrecedence:()=>g,OrAtom:()=>xt,Parser:()=>Ut,ParserBuilder:()=>Ye,PrefixOperatorAtom:()=>Ke,PropertyType:()=>l,RXNORM:()=>rs,ReadablePromise:()=>V,ReconnectingWebSocket:()=>It,SNOMED:()=>ts,SearchParameterType:()=>W,SubscriptionEmitter:()=>ze,SubscriptionManager:()=>kt,SymbolAtom:()=>B,Tokenizer:()=>ae,TransformMapCollection:()=>Or,TypedEventTarget:()=>$,UCUM:()=>_r,UnaryOperatorAtom:()=>ut,UnionAtom:()=>we,VALID_HOSTNAME_REGEX:()=>Bi,XorAtom:()=>Tt,accepted:()=>ms,addProfileToResource:()=>Pa,allOk:()=>as,append:()=>Re,applyDefaultValuesToElement:()=>yu,applyDefaultValuesToResource:()=>mu,applyFixedOrPatternValue:()=>Mt,arrayBufferToBase64:()=>vn,arrayBufferToHex:()=>Tn,arrayify:()=>Le,assert:()=>To,assertContextVersionOptional:()=>Ln,assertOk:()=>ws,assertReleaseManifest:()=>Ho,badRequest:()=>S,booleanToTypedValue:()=>h,buildElementsContext:()=>Pr,buildTypeName:()=>zi,calculateAge:()=>it,calculateAgeString:()=>ea,canReadResourceType:()=>Nc,canWriteResource:()=>Fc,canWriteResourceType:()=>ao,capitalize:()=>O,checkForNull:()=>ri,checkIfValidMedplumVersion:()=>pl,clearReleaseCache:()=>ll,compressElement:()=>Os,concatUrls:()=>F,conceptMapTranslate:()=>zn,conflict:()=>ys,convertContainedResourcesToBundle:()=>jc,convertToTransactionBundle:()=>uo,crawlTypedValue:()=>Jt,crawlTypedValueAsync:()=>Ns,createConstraintIssue:()=>zr,createFhircastMessagePayload:()=>Sr,createOperationOutcomeIssue:()=>ue,createProcessingIssue:()=>Jr,createReference:()=>Ee,createStructureIssue:()=>v,created:()=>cs,decodeBase64:()=>Vn,deepClone:()=>pe,deepEquals:()=>re,deepIncludes:()=>Ne,encodeBase64:()=>mr,encryptSHA256:()=>Mn,ensureNoLeadingSlash:()=>Ui,ensureTrailingSlash:()=>ar,escapeHtml:()=>Ia,evalFhirPath:()=>Ae,evalFhirPathTyped:()=>P,evalSqlOnFhir:()=>ol,fetchLatestVersionString:()=>dl,fetchVersionManifest:()=>Vr,fhirPathArrayEquals:()=>pn,fhirPathArrayEquivalent:()=>Xt,fhirPathArrayNotEquals:()=>dn,fhirPathEquals:()=>Fe,fhirPathEquivalent:()=>Ci,fhirPathIs:()=>rt,fhirPathNot:()=>ln,fhirTypeToJsType:()=>Kt,findObservationInterval:()=>ha,findObservationReferenceRange:()=>ma,findObservationReferenceRanges:()=>_i,findResourceByCode:()=>Ea,flatMapFilter:()=>Oa,forbidden:()=>ls,formatAddress:()=>qi,formatCodeableConcept:()=>Ue,formatCoding:()=>Pn,formatDate:()=>Ma,formatDateTime:()=>cr,formatFamilyName:()=>Va,formatGivenName:()=>Da,formatHl7DateTime:()=>jo,formatHumanName:()=>Be,formatMoney:()=>qa,formatObservationValue:()=>$i,formatPeriod:()=>_a,formatQuantity:()=>ie,formatRange:()=>Wa,formatReferenceString:()=>Wi,formatSearchQuery:()=>Ec,formatTime:()=>ji,formatTiming:()=>Ua,generateId:()=>me,getAllDataTypes:()=>en,getAllQuestionnaireAnswers:()=>ra,getCodeBySystem:()=>rr,getDataType:()=>ee,getDateProperty:()=>Xs,getDefaultValuesForNewSliceEntry:()=>gu,getDisplayString:()=>Ai,getElementDefinition:()=>nt,getElementDefinitionFromElements:()=>Ki,getElementDefinitionTypeName:()=>$t,getExpressionForResourceType:()=>pc,getExpressionsForResourceType:()=>On,getExtension:()=>te,getExtensionValue:()=>ia,getIdentifier:()=>ki,getImageSrc:()=>Zs,getNestedProperty:()=>Se,getPathDifference:()=>ne,getPathDisplayName:()=>Ja,getPropertyDisplayName:()=>Ji,getQueryString:()=>Cn,getQuestionnaireAnswers:()=>ta,getRandomString:()=>yr,getReferenceString:()=>z,getResourceTypes:()=>Ha,getSearchParameter:()=>za,getSearchParameterDetails:()=>fr,getSearchParameters:()=>Qa,getStatus:()=>Ps,getTypedPropertyValue:()=>C,getTypedPropertyValueWithPath:()=>gi,getTypedPropertyValueWithSchema:()=>Ei,getTypedPropertyValueWithoutSchema:()=>Ri,getValueSliceName:()=>Gn,getWebSocketUrl:()=>Rn,globalSchema:()=>_,gone:()=>ps,indexDefaultSearchParameters:()=>sn,indexSearchParameter:()=>lr,indexSearchParameterBundle:()=>Ga,indexStructureDefinitionBundle:()=>Ht,inflateBaseSchema:()=>Kr,inflateElement:()=>li,initFhirPathParserBuilder:()=>qe,isAccepted:()=>vs,isCodeableConcept:()=>tr,isCoding:()=>er,isCompletedSubscriptionRequest:()=>Nn,isComplexTypeCode:()=>ir,isConflict:()=>Es,isContextVersionRequired:()=>_n,isCreated:()=>Ts,isDataTypeLoaded:()=>tn,isDateString:()=>fn,isDateTimeString:()=>be,isEmpty:()=>b,isFhirCriteriaMet:()=>vo,isFhircastResourceType:()=>mo,isGone:()=>Rs,isJwt:()=>Fn,isLowerCase:()=>da,isMedplumAccessToken:()=>Un,isNotFound:()=>bs,isObject:()=>E,isOk:()=>jt,isOperationOutcome:()=>xe,isPeriod:()=>hn,isPopulated:()=>J,isPrimitiveType:()=>Xe,isProfileLoaded:()=>nn,isProfileResource:()=>wi,isQuantity:()=>I,isQuantityEquivalent:()=>mn,isRedirect:()=>Ss,isReference:()=>H,isResource:()=>A,isResourceType:()=>rn,isResourceTypeSchema:()=>zt,isResourceWithId:()=>nr,isSliceDefinitionWithTypes:()=>$n,isString:()=>Di,isStringArray:()=>xn,isTextObject:()=>Vi,isTypedValue:()=>Za,isUUID:()=>pa,isUnauthenticated:()=>Cs,isValidDate:()=>ur,isValidHostname:()=>Ca,isValidMedplumSemver:()=>Qo,lazy:()=>En,loadDataType:()=>Qt,mapByIdentifier:()=>wa,matchDiscriminant:()=>Zt,matchesRange:()=>bn,matchesSearchRequest:()=>Rt,multipleMatches:()=>fs,normalizeArrayBufferView:()=>Sn,normalizeCreateBinaryOptions:()=>jn,normalizeCreatePdfOptions:()=>Ao,normalizeErrorString:()=>Te,normalizeOperationOutcome:()=>Ze,notFound:()=>$r,notModified:()=>us,operationOutcomeIssueToString:()=>ui,operationOutcomeToString:()=>Qr,parseFhirPath:()=>pr,parseFilterParameter:()=>Yu,parseHl7DateTime:()=>Zu,parseJWTPayload:()=>At,parseLogLevel:()=>el,parseMappingLanguage:()=>wu,parseParameter:()=>no,parseReference:()=>Js,parseSearchRequest:()=>je,parseStructureDefinition:()=>Gt,parseXFhirQuery:()=>bc,preciseEquals:()=>va,preciseGreaterThan:()=>ba,preciseGreaterThanOrEquals:()=>Fi,preciseLessThan:()=>Sa,preciseLessThanOrEquals:()=>Ni,preciseRound:()=>Ta,preconditionFailed:()=>ds,projectAdminResourceTypes:()=>so,protectedResourceTypes:()=>oo,redirect:()=>xs,removeDuplicates:()=>tt,removeProfileFromResource:()=>Aa,reorderBundle:()=>lo,resolveId:()=>le,resourceMatchesSubscriptionCriteria:()=>Kc,satisfiedAccessPolicy:()=>co,serializeFhircastSubscriptionRequest:()=>vr,serverError:()=>Hr,serverTimeout:()=>gs,setCodeBySystem:()=>fa,setIdentifier:()=>na,singleton:()=>j,singularize:()=>Ra,sleep:()=>or,sortStringArray:()=>st,splitN:()=>sr,splitSearchOnComma:()=>Et,streamToBuffer:()=>il,stringify:()=>ot,stringifyTypedValue:()=>wn,structureMapTransform:()=>Au,subsetResource:()=>Ds,toJsBoolean:()=>M,toPeriod:()=>Qs,toTypedValue:()=>T,tooManyRequests:()=>hs,tryGetDataType:()=>_e,tryGetJwtExpiration:()=>Bn,tryGetProfile:()=>on,typedValueToString:()=>ka,unauthorized:()=>ge,unauthorizedTokenAudience:()=>qt,unauthorizedTokenExpired:()=>Gr,validateFhircastSubscriptionRequest:()=>wt,validateResource:()=>Bs,validateResourceType:()=>tl,validateTypedValue:()=>Ws,validationError:()=>y,validationRegexes:()=>et,warnIfNewerVersionAvailable:()=>fl,wordWrap:()=>Wo});module.exports=Xo(hl);var Ke=class{constructor(e,t){this.operator=e,this.child=t}toString(){return`${this.operator}(${this.child.toString()})`}},X=class{constructor(e,t,n){this.operator=e,this.left=t,this.right=n}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}},Ye=class{constructor(){this.prefixParselets={};this.infixParselets={}}registerInfix(e,t){return this.infixParselets[e]=t,this}registerPrefix(e,t){return this.prefixParselets[e]=t,this}prefix(e,t,n){return this.registerPrefix(e,{parse(i,o){let s=i.consumeAndParse(t);return n(o,s)}})}infixLeft(e,t,n){return this.registerInfix(e,{parse(i,o,s){let a=i.consumeAndParse(t);return n(o,s,a)},precedence:t})}construct(e){return new Ut(e,this.prefixParselets,this.infixParselets)}},Ut=class{constructor(e,t,n){this.tokens=e,this.prefixParselets=t,this.infixParselets=n}hasMore(){return this.tokens.length>0}match(e){return this.peek()?.id!==e?!1:(this.consume(),!0)}consumeAndParse(e=1/0){let t=this.consume(),n=this.prefixParselets[t.id];if(!n)throw Error(`Parse error at "${t.value}" (line ${t.line}, column ${t.column}). No matching prefix parselet.`);let i=n.parse(this,t);for(;e>this.getPrecedence();){let o=this.consume();i=this.getInfixParselet(o).parse(this,i,o)}return i}getPrecedence(){let e=this.peek();if(!e)return 1/0;let t=this.getInfixParselet(e);return t?t.precedence:1/0}consume(e,t){if(!this.tokens.length)throw Error("Cant consume unknown more tokens.");if(e&&this.peek()?.id!==e){let n=this.peek();throw Error(`Expected ${e} but got "${n.id}" (${n.value}) at line ${n.line} column ${n.column}.`)}if(t&&this.peek()?.value!==t){let n=this.peek();throw Error(`Expected "${t}" but got "${n.value}" at line ${n.line} column ${n.column}.`)}return this.tokens.shift()}peek(){return this.tokens.length>0?this.tokens[0]:void 0}removeComments(){this.tokens=this.tokens.filter(e=>e.id!=="Comment")}getInfixParselet(e){return this.infixParselets[e.id==="Symbol"?e.value:e.id]}};var _r="http://unitsofmeasure.org",es="http://loinc.org",ts="http://snomed.info/sct",rs="http://www.nlm.nih.gov/research/umls/rxnorm",ns="http://www.ama-assn.org/go/cpt",is="http://hl7.org/fhir/sid/icd-10",os="http://hl7.org/fhir/sid/ndc",Lr="http://hl7.org",ss="http://terminology.hl7.org";var Nr="ok",Bt="created",Fr="gone",Ur="not-modified",Br="found",Wr="not-found",qr="conflict",jr="unauthorized",ii="forbidden",oi="precondition-failed",si="multiple-matches",ai="too-many-requests",Wt="accepted",ci="server-timeout",as={resourceType:"OperationOutcome",id:Nr,issue:[{severity:"information",code:"informational",details:{text:"All OK"}}]},cs={resourceType:"OperationOutcome",id:Bt,issue:[{severity:"information",code:"informational",details:{text:"Created"}}]},us={resourceType:"OperationOutcome",id:Ur,issue:[{severity:"information",code:"informational",details:{text:"Not Modified"}}]},$r={resourceType:"OperationOutcome",id:Wr,issue:[{severity:"error",code:"not-found",details:{text:"Not found"}}]},ge={resourceType:"OperationOutcome",id:jr,issue:[{severity:"error",code:"login",details:{text:"Unauthorized"}}]},Gr={...ge,issue:[...ge.issue,{severity:"error",code:"expired",details:{text:"Token expired"}}]},qt={...ge,issue:[...ge.issue,{severity:"error",code:"invalid",details:{text:"Token not issued for this audience"}}]},ls={resourceType:"OperationOutcome",id:ii,issue:[{severity:"error",code:"forbidden",details:{text:"Forbidden"}}]},ps={resourceType:"OperationOutcome",id:Fr,issue:[{severity:"error",code:"deleted",details:{text:"Gone"}}]},ds={resourceType:"OperationOutcome",id:oi,issue:[{severity:"error",code:"processing",details:{text:"Precondition Failed"}}]},fs={resourceType:"OperationOutcome",id:si,issue:[{severity:"error",code:"multiple-matches",details:{text:"Multiple resources found matching condition"}}]},hs={resourceType:"OperationOutcome",id:ai,issue:[{severity:"error",code:"throttled",details:{text:"Too Many Requests"}}]};function ms(r){return{resourceType:"OperationOutcome",id:Wt,issue:[{severity:"information",code:"informational",details:{text:"Accepted"},diagnostics:r}]}}function S(r,e){return{resourceType:"OperationOutcome",issue:[{severity:"error",code:"invalid",details:{text:r},...e?{expression:[e]}:void 0}]}}function ys(r,e){return{resourceType:"OperationOutcome",id:qr,issue:[{severity:"error",code:"conflict",details:{coding:e?[{code:e}]:void 0,text:r}}]}}function y(r){return{resourceType:"OperationOutcome",issue:[{severity:"error",code:"structure",details:{text:r}}]}}function Hr(r){return{resourceType:"OperationOutcome",issue:[{severity:"error",code:"exception",details:{text:"Internal server error"},diagnostics:r.toString()}]}}function gs(r){return{resourceType:"OperationOutcome",id:ci,issue:[{severity:"error",code:"timeout",details:{text:r??"Server timeout"}}]}}function xs(r){let e=r.toString();return{resourceType:"OperationOutcome",id:Br,issue:[{severity:"information",code:"informational",details:{coding:[{system:"urn:ietf:rfc:3986",code:e}],text:"Redirect to "+e}}]}}function xe(r){return typeof r=="object"&&r!==null&&r.resourceType==="OperationOutcome"}function jt(r){return r.id===Nr||r.id===Bt||r.id===Ur||r.id===Wt}function Ts(r){return r.id===Bt}function vs(r){return r.id===Wt}function Ss(r){return r.id===Br}function bs(r){return r.id===Wr}function Es(r){return r.id===qr}function Rs(r){return r.id===Fr}function Cs(r){return r.id===jr}function Ps(r){switch(r.id){case Nr:return 200;case Bt:return 201;case Wt:return 202;case Br:return 302;case Ur:return 304;case jr:return 401;case ii:return 403;case Wr:return 404;case qr:return 409;case Fr:return 410;case oi:case si:return 412;case ai:return 429;case ci:return 504;default:return r.issue?.[0]?.code==="exception"?500:400}}function ws(r,e){if(!jt(r)||e===void 0)throw new d(r)}var d=class extends Error{constructor(e,t){super(Qr(e)),this.outcome=e,this.cause=t}};function Ze(r){return r instanceof d?r.outcome:xe(r)?r:S(Te(r))}function Te(r){return r?typeof r=="string"?r:r instanceof Error?r.message:xe(r)?Qr(r):typeof r=="object"&&"code"in r&&typeof r.code=="string"?r.code:JSON.stringify(r):"Unknown error"}function Qr(r){let e=r.issue?.map(ui)??[];return e.length>0?e.join("; "):"Unknown error"}function ui(r){let e;return r.details?.text?r.diagnostics?e=`${r.details.text} (${r.diagnostics})`:e=r.details.text:r.diagnostics?e=r.diagnostics:e="Unknown error",r.expression?.length&&(e+=` (${r.expression.join(", ")})`),e}function ue(r,e,t,n,i){let o={severity:r,code:e,details:{text:t},expression:[n]};return i&&(o.diagnostics=JSON.stringify(i)),o}function v(r,e){return ue("error","structure",e,r)}function zr(r,e){return ue("error","invariant",`Constraint ${e.key} not met: ${e.description}`,r,{fhirpath:e.expression})}function Jr(r,e,t,n){return ue("error","processing",e,r,{...n,error:t})}var As={"http://hl7.org/fhirpath/System.String":"string"};function Os(r){let e={};return r.min!==0&&(e.min=r.min),r.max!==1&&Number.isFinite(r.max)?e.max=r.max:r.max===Number.POSITIVE_INFINITY&&(e.max=Number.MAX_SAFE_INTEGER),e.type=r.type?.map(t=>({...t,extension:void 0,code:As[t.code]??t.code})),e}function li(r,e){let t=e.max&&e.max===Number.MAX_SAFE_INTEGER?Number.POSITIVE_INFINITY:e.max;return{path:r,description:"",type:e.type??[],min:e.min??0,max:t??1,isArray:!!t&&t>1,constraints:[]}}function Kr(r){let e=Object.create(null);for(let[t,n]of Object.entries(r))e[t]={name:t,type:t,path:t,elements:Object.fromEntries(Object.entries(n.elements).map(([i,o])=>[i,li(i,o)])),constraints:[],innerTypes:[]};return e}var pi={Element:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]}}},BackboneElement:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]}}},Address:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},use:{type:[{code:"code"}]},type:{type:[{code:"code"}]},text:{type:[{code:"string"}]},line:{max:9007199254740991,type:[{code:"string"}]},city:{type:[{code:"string"}]},district:{type:[{code:"string"}]},state:{type:[{code:"string"}]},postalCode:{type:[{code:"string"}]},country:{type:[{code:"string"}]},period:{type:[{code:"Period"}]}}},Age:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},Annotation:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},"author[x]":{type:[{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Practitioner","http://hl7.org/fhir/StructureDefinition/Patient","http://hl7.org/fhir/StructureDefinition/RelatedPerson","http://hl7.org/fhir/StructureDefinition/Organization"]},{code:"string"}]},time:{type:[{code:"dateTime"}]},text:{min:1,type:[{code:"markdown"}]}}},Attachment:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},contentType:{type:[{code:"code"}]},language:{type:[{code:"code"}]},data:{type:[{code:"base64Binary"}]},url:{type:[{code:"url"}]},size:{type:[{code:"unsignedInt"}]},hash:{type:[{code:"base64Binary"}]},title:{type:[{code:"string"}]},creation:{type:[{code:"dateTime"}]}}},CodeableConcept:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},coding:{max:9007199254740991,type:[{code:"Coding"}]},text:{type:[{code:"string"}]}}},Coding:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},system:{type:[{code:"uri"}]},version:{type:[{code:"string"}]},code:{type:[{code:"code"}]},display:{type:[{code:"string"}]},userSelected:{type:[{code:"boolean"}]}}},ContactDetail:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},name:{type:[{code:"string"}]},telecom:{max:9007199254740991,type:[{code:"ContactPoint"}]}}},ContactPoint:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},system:{type:[{code:"code"}]},value:{type:[{code:"string"}]},use:{type:[{code:"code"}]},rank:{type:[{code:"positiveInt"}]},period:{type:[{code:"Period"}]}}},Contributor:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,type:[{code:"code"}]},name:{min:1,type:[{code:"string"}]},contact:{max:9007199254740991,type:[{code:"ContactDetail"}]}}},Count:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},DataRequirement:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,type:[{code:"code"}]},profile:{max:9007199254740991,type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition"]}]},"subject[x]":{type:[{code:"CodeableConcept"},{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Group"]}]},mustSupport:{max:9007199254740991,type:[{code:"string"}]},codeFilter:{max:9007199254740991,type:[{code:"DataRequirementCodeFilter"}]},dateFilter:{max:9007199254740991,type:[{code:"DataRequirementDateFilter"}]},limit:{type:[{code:"positiveInt"}]},sort:{max:9007199254740991,type:[{code:"DataRequirementSort"}]}}},DataRequirementCodeFilter:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},path:{type:[{code:"string"}]},searchParam:{type:[{code:"string"}]},valueSet:{type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/ValueSet"]}]},code:{max:9007199254740991,type:[{code:"Coding"}]}}},DataRequirementDateFilter:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},path:{type:[{code:"string"}]},searchParam:{type:[{code:"string"}]},"value[x]":{type:[{code:"dateTime"},{code:"Period"},{code:"Duration"}]}}},DataRequirementSort:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},path:{min:1,type:[{code:"string"}]},direction:{min:1,type:[{code:"code"}]}}},Distance:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},Dosage:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},sequence:{type:[{code:"integer"}]},text:{type:[{code:"string"}]},additionalInstruction:{max:9007199254740991,type:[{code:"CodeableConcept"}]},patientInstruction:{type:[{code:"string"}]},timing:{type:[{code:"Timing"}]},"asNeeded[x]":{type:[{code:"boolean"},{code:"CodeableConcept"}]},site:{type:[{code:"CodeableConcept"}]},route:{type:[{code:"CodeableConcept"}]},method:{type:[{code:"CodeableConcept"}]},doseAndRate:{max:9007199254740991,type:[{code:"DosageDoseAndRate"}]},maxDosePerPeriod:{type:[{code:"Ratio"}]},maxDosePerAdministration:{type:[{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]},maxDosePerLifetime:{type:[{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]}}},DosageDoseAndRate:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{type:[{code:"CodeableConcept"}]},"dose[x]":{type:[{code:"Range"},{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]},"rate[x]":{type:[{code:"Ratio"},{code:"Range"},{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]}}},Duration:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},ElementDefinition:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},path:{min:1,type:[{code:"string"}]},representation:{max:9007199254740991,type:[{code:"code"}]},sliceName:{type:[{code:"string"}]},sliceIsConstraining:{type:[{code:"boolean"}]},label:{type:[{code:"string"}]},code:{max:9007199254740991,type:[{code:"Coding"}]},slicing:{type:[{code:"ElementDefinitionSlicing"}]},short:{type:[{code:"string"}]},definition:{type:[{code:"markdown"}]},comment:{type:[{code:"markdown"}]},requirements:{type:[{code:"markdown"}]},alias:{max:9007199254740991,type:[{code:"string"}]},min:{type:[{code:"unsignedInt"}]},max:{type:[{code:"string"}]},base:{type:[{code:"ElementDefinitionBase"}]},contentReference:{type:[{code:"uri"}]},type:{max:9007199254740991,type:[{code:"ElementDefinitionType"}]},"defaultValue[x]":{type:[{code:"base64Binary"},{code:"boolean"},{code:"canonical"},{code:"code"},{code:"date"},{code:"dateTime"},{code:"decimal"},{code:"id"},{code:"instant"},{code:"integer"},{code:"markdown"},{code:"oid"},{code:"positiveInt"},{code:"string"},{code:"time"},{code:"unsignedInt"},{code:"uri"},{code:"url"},{code:"uuid"},{code:"Address"},{code:"Age"},{code:"Annotation"},{code:"Attachment"},{code:"CodeableConcept"},{code:"Coding"},{code:"ContactPoint"},{code:"Count"},{code:"Distance"},{code:"Duration"},{code:"HumanName"},{code:"Identifier"},{code:"Money"},{code:"Period"},{code:"Quantity"},{code:"Range"},{code:"Ratio"},{code:"Reference"},{code:"SampledData"},{code:"Signature"},{code:"Timing"},{code:"ContactDetail"},{code:"Contributor"},{code:"DataRequirement"},{code:"Expression"},{code:"ParameterDefinition"},{code:"RelatedArtifact"},{code:"TriggerDefinition"},{code:"UsageContext"},{code:"Dosage"},{code:"Meta"}]},meaningWhenMissing:{type:[{code:"markdown"}]},orderMeaning:{type:[{code:"string"}]},"fixed[x]":{type:[{code:"base64Binary"},{code:"boolean"},{code:"canonical"},{code:"code"},{code:"date"},{code:"dateTime"},{code:"decimal"},{code:"id"},{code:"instant"},{code:"integer"},{code:"markdown"},{code:"oid"},{code:"positiveInt"},{code:"string"},{code:"time"},{code:"unsignedInt"},{code:"uri"},{code:"url"},{code:"uuid"},{code:"Address"},{code:"Age"},{code:"Annotation"},{code:"Attachment"},{code:"CodeableConcept"},{code:"Coding"},{code:"ContactPoint"},{code:"Count"},{code:"Distance"},{code:"Duration"},{code:"HumanName"},{code:"Identifier"},{code:"Money"},{code:"Period"},{code:"Quantity"},{code:"Range"},{code:"Ratio"},{code:"Reference"},{code:"SampledData"},{code:"Signature"},{code:"Timing"},{code:"ContactDetail"},{code:"Contributor"},{code:"DataRequirement"},{code:"Expression"},{code:"ParameterDefinition"},{code:"RelatedArtifact"},{code:"TriggerDefinition"},{code:"UsageContext"},{code:"Dosage"},{code:"Meta"}]},"pattern[x]":{type:[{code:"base64Binary"},{code:"boolean"},{code:"canonical"},{code:"code"},{code:"date"},{code:"dateTime"},{code:"decimal"},{code:"id"},{code:"instant"},{code:"integer"},{code:"markdown"},{code:"oid"},{code:"positiveInt"},{code:"string"},{code:"time"},{code:"unsignedInt"},{code:"uri"},{code:"url"},{code:"uuid"},{code:"Address"},{code:"Age"},{code:"Annotation"},{code:"Attachment"},{code:"CodeableConcept"},{code:"Coding"},{code:"ContactPoint"},{code:"Count"},{code:"Distance"},{code:"Duration"},{code:"HumanName"},{code:"Identifier"},{code:"Money"},{code:"Period"},{code:"Quantity"},{code:"Range"},{code:"Ratio"},{code:"Reference"},{code:"SampledData"},{code:"Signature"},{code:"Timing"},{code:"ContactDetail"},{code:"Contributor"},{code:"DataRequirement"},{code:"Expression"},{code:"ParameterDefinition"},{code:"RelatedArtifact"},{code:"TriggerDefinition"},{code:"UsageContext"},{code:"Dosage"},{code:"Meta"}]},example:{max:9007199254740991,type:[{code:"ElementDefinitionExample"}]},"minValue[x]":{type:[{code:"date"},{code:"dateTime"},{code:"instant"},{code:"time"},{code:"decimal"},{code:"integer"},{code:"positiveInt"},{code:"unsignedInt"},{code:"Quantity"}]},"maxValue[x]":{type:[{code:"date"},{code:"dateTime"},{code:"instant"},{code:"time"},{code:"decimal"},{code:"integer"},{code:"positiveInt"},{code:"unsignedInt"},{code:"Quantity"}]},maxLength:{type:[{code:"integer"}]},condition:{max:9007199254740991,type:[{code:"id"}]},constraint:{max:9007199254740991,type:[{code:"ElementDefinitionConstraint"}]},mustSupport:{type:[{code:"boolean"}]},isModifier:{type:[{code:"boolean"}]},isModifierReason:{type:[{code:"string"}]},isSummary:{type:[{code:"boolean"}]},binding:{type:[{code:"ElementDefinitionBinding"}]},mapping:{max:9007199254740991,type:[{code:"ElementDefinitionMapping"}]}}},ElementDefinitionSlicingDiscriminator:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,type:[{code:"code"}]},path:{min:1,type:[{code:"string"}]}}},ElementDefinitionSlicing:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},discriminator:{max:9007199254740991,type:[{code:"ElementDefinitionSlicingDiscriminator"}]},description:{type:[{code:"string"}]},ordered:{type:[{code:"boolean"}]},rules:{min:1,type:[{code:"code"}]}}},ElementDefinitionBase:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},path:{min:1,type:[{code:"string"}]},min:{min:1,type:[{code:"unsignedInt"}]},max:{min:1,type:[{code:"string"}]}}},ElementDefinitionType:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},code:{min:1,type:[{code:"uri"}]},profile:{max:9007199254740991,type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition","http://hl7.org/fhir/StructureDefinition/ImplementationGuide"]}]},targetProfile:{max:9007199254740991,type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition","http://hl7.org/fhir/StructureDefinition/ImplementationGuide"]}]},aggregation:{max:9007199254740991,type:[{code:"code"}]},versioning:{type:[{code:"code"}]}}},ElementDefinitionExample:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},label:{min:1,type:[{code:"string"}]},"value[x]":{min:1,type:[{code:"base64Binary"},{code:"boolean"},{code:"canonical"},{code:"code"},{code:"date"},{code:"dateTime"},{code:"decimal"},{code:"id"},{code:"instant"},{code:"integer"},{code:"markdown"},{code:"oid"},{code:"positiveInt"},{code:"string"},{code:"time"},{code:"unsignedInt"},{code:"uri"},{code:"url"},{code:"uuid"},{code:"Address"},{code:"Age"},{code:"Annotation"},{code:"Attachment"},{code:"CodeableConcept"},{code:"Coding"},{code:"ContactPoint"},{code:"Count"},{code:"Distance"},{code:"Duration"},{code:"HumanName"},{code:"Identifier"},{code:"Money"},{code:"Period"},{code:"Quantity"},{code:"Range"},{code:"Ratio"},{code:"Reference"},{code:"SampledData"},{code:"Signature"},{code:"Timing"},{code:"ContactDetail"},{code:"Contributor"},{code:"DataRequirement"},{code:"Expression"},{code:"ParameterDefinition"},{code:"RelatedArtifact"},{code:"TriggerDefinition"},{code:"UsageContext"},{code:"Dosage"},{code:"Meta"}]}}},ElementDefinitionConstraint:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},key:{min:1,type:[{code:"id"}]},requirements:{type:[{code:"string"}]},severity:{min:1,type:[{code:"code"}]},human:{min:1,type:[{code:"string"}]},expression:{type:[{code:"string"}]},xpath:{type:[{code:"string"}]},source:{type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition"]}]}}},ElementDefinitionBinding:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},strength:{min:1,type:[{code:"code"}]},description:{type:[{code:"string"}]},valueSet:{type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/ValueSet"]}]}}},ElementDefinitionMapping:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},identity:{min:1,type:[{code:"id"}]},language:{type:[{code:"code"}]},map:{min:1,type:[{code:"string"}]},comment:{type:[{code:"string"}]}}},Expression:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},description:{type:[{code:"string"}]},name:{type:[{code:"id"}]},language:{min:1,type:[{code:"code"}]},expression:{type:[{code:"string"}]},reference:{type:[{code:"uri"}]}}},Extension:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},url:{min:1,type:[{code:"uri"}]},"value[x]":{type:[{code:"base64Binary"},{code:"boolean"},{code:"canonical"},{code:"code"},{code:"date"},{code:"dateTime"},{code:"decimal"},{code:"id"},{code:"instant"},{code:"integer"},{code:"markdown"},{code:"oid"},{code:"positiveInt"},{code:"string"},{code:"time"},{code:"unsignedInt"},{code:"uri"},{code:"url"},{code:"uuid"},{code:"Address"},{code:"Age"},{code:"Annotation"},{code:"Attachment"},{code:"CodeableConcept"},{code:"Coding"},{code:"ContactPoint"},{code:"Count"},{code:"Distance"},{code:"Duration"},{code:"HumanName"},{code:"Identifier"},{code:"Money"},{code:"Period"},{code:"Quantity"},{code:"Range"},{code:"Ratio"},{code:"Reference"},{code:"SampledData"},{code:"Signature"},{code:"Timing"},{code:"ContactDetail"},{code:"Contributor"},{code:"DataRequirement"},{code:"Expression"},{code:"ParameterDefinition"},{code:"RelatedArtifact"},{code:"TriggerDefinition"},{code:"UsageContext"},{code:"Dosage"},{code:"Meta"}]}}},HumanName:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},use:{type:[{code:"code"}]},text:{type:[{code:"string"}]},family:{type:[{code:"string"}]},given:{max:9007199254740991,type:[{code:"string"}]},prefix:{max:9007199254740991,type:[{code:"string"}]},suffix:{max:9007199254740991,type:[{code:"string"}]},period:{type:[{code:"Period"}]}}},Identifier:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},use:{type:[{code:"code"}]},type:{type:[{code:"CodeableConcept"}]},system:{type:[{code:"uri"}]},value:{type:[{code:"string"}]},period:{type:[{code:"Period"}]},assigner:{type:[{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Organization"]}]}}},MarketingStatus:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},country:{min:1,type:[{code:"CodeableConcept"}]},jurisdiction:{type:[{code:"CodeableConcept"}]},status:{min:1,type:[{code:"CodeableConcept"}]},dateRange:{min:1,type:[{code:"Period"}]},restoreDate:{type:[{code:"dateTime"}]}}},Meta:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},versionId:{type:[{code:"id"}]},lastUpdated:{type:[{code:"instant"}]},source:{type:[{code:"uri"}]},profile:{max:9007199254740991,type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition"]}]},security:{max:9007199254740991,type:[{code:"Coding"}]},tag:{max:9007199254740991,type:[{code:"Coding"}]},project:{type:[{code:"uri"}]},author:{type:[{code:"Reference"}]},onBehalfOf:{type:[{code:"Reference"}]},account:{type:[{code:"Reference"}]},accounts:{max:9007199254740991,type:[{code:"Reference"}]},compartment:{max:9007199254740991,type:[{code:"Reference"}]}}},Money:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},currency:{type:[{code:"code"}]}}},Narrative:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},status:{min:1,type:[{code:"code"}]},div:{min:1,type:[{code:"xhtml"}]}}},ParameterDefinition:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},name:{type:[{code:"code"}]},use:{min:1,type:[{code:"code"}]},min:{type:[{code:"integer"}]},max:{type:[{code:"string"}]},documentation:{type:[{code:"string"}]},type:{min:1,type:[{code:"code"}]},profile:{type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/StructureDefinition"]}]}}},Period:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},start:{type:[{code:"dateTime"}]},end:{type:[{code:"dateTime"}]}}},Population:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},"age[x]":{type:[{code:"Range"},{code:"CodeableConcept"}]},gender:{type:[{code:"CodeableConcept"}]},race:{type:[{code:"CodeableConcept"}]},physiologicalCondition:{type:[{code:"CodeableConcept"}]}}},ProdCharacteristic:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},height:{type:[{code:"Quantity"}]},width:{type:[{code:"Quantity"}]},depth:{type:[{code:"Quantity"}]},weight:{type:[{code:"Quantity"}]},nominalVolume:{type:[{code:"Quantity"}]},externalDiameter:{type:[{code:"Quantity"}]},shape:{type:[{code:"string"}]},color:{max:9007199254740991,type:[{code:"string"}]},imprint:{max:9007199254740991,type:[{code:"string"}]},image:{max:9007199254740991,type:[{code:"Attachment"}]},scoring:{type:[{code:"CodeableConcept"}]}}},ProductShelfLife:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},identifier:{type:[{code:"Identifier"}]},type:{min:1,type:[{code:"CodeableConcept"}]},period:{min:1,type:[{code:"Quantity"}]},specialPrecautionsForStorage:{max:9007199254740991,type:[{code:"CodeableConcept"}]}}},Quantity:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},Range:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},low:{type:[{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]},high:{type:[{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]}}},Ratio:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},numerator:{type:[{code:"Quantity"}]},denominator:{type:[{code:"Quantity"}]}}},Reference:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},reference:{type:[{code:"string"}]},type:{type:[{code:"uri"}]},identifier:{type:[{code:"Identifier"}]},display:{type:[{code:"string"}]}}},RelatedArtifact:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,type:[{code:"code"}]},label:{type:[{code:"string"}]},display:{type:[{code:"string"}]},citation:{type:[{code:"markdown"}]},url:{type:[{code:"url"}]},document:{type:[{code:"Attachment"}]},resource:{type:[{code:"canonical",targetProfile:["http://hl7.org/fhir/StructureDefinition/Resource"]}]}}},SampledData:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},origin:{min:1,type:[{code:"Quantity",profile:["http://hl7.org/fhir/StructureDefinition/SimpleQuantity"]}]},period:{min:1,type:[{code:"decimal"}]},factor:{type:[{code:"decimal"}]},lowerLimit:{type:[{code:"decimal"}]},upperLimit:{type:[{code:"decimal"}]},dimensions:{min:1,type:[{code:"positiveInt"}]},data:{type:[{code:"string"}]}}},Signature:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,max:9007199254740991,type:[{code:"Coding"}]},when:{min:1,type:[{code:"instant"}]},who:{min:1,type:[{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Practitioner","http://hl7.org/fhir/StructureDefinition/PractitionerRole","http://hl7.org/fhir/StructureDefinition/RelatedPerson","http://hl7.org/fhir/StructureDefinition/Patient","http://hl7.org/fhir/StructureDefinition/Device","http://hl7.org/fhir/StructureDefinition/Organization"]}]},onBehalfOf:{type:[{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Practitioner","http://hl7.org/fhir/StructureDefinition/PractitionerRole","http://hl7.org/fhir/StructureDefinition/RelatedPerson","http://hl7.org/fhir/StructureDefinition/Patient","http://hl7.org/fhir/StructureDefinition/Device","http://hl7.org/fhir/StructureDefinition/Organization"]}]},targetFormat:{type:[{code:"code"}]},sigFormat:{type:[{code:"code"}]},data:{type:[{code:"base64Binary"}]}}},SubstanceAmount:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},"amount[x]":{type:[{code:"Quantity"},{code:"Range"},{code:"string"}]},amountType:{type:[{code:"CodeableConcept"}]},amountText:{type:[{code:"string"}]},referenceRange:{type:[{code:"SubstanceAmountReferenceRange"}]}}},SubstanceAmountReferenceRange:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},lowLimit:{type:[{code:"Quantity"}]},highLimit:{type:[{code:"Quantity"}]}}},Timing:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},modifierExtension:{max:9007199254740991,type:[{code:"Extension"}]},event:{max:9007199254740991,type:[{code:"dateTime"}]},repeat:{type:[{code:"TimingRepeat"}]},code:{type:[{code:"CodeableConcept"}]}}},TimingRepeat:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},"bounds[x]":{type:[{code:"Duration"},{code:"Range"},{code:"Period"}]},count:{type:[{code:"positiveInt"}]},countMax:{type:[{code:"positiveInt"}]},duration:{type:[{code:"decimal"}]},durationMax:{type:[{code:"decimal"}]},durationUnit:{type:[{code:"code"}]},frequency:{type:[{code:"positiveInt"}]},frequencyMax:{type:[{code:"positiveInt"}]},period:{type:[{code:"decimal"}]},periodMax:{type:[{code:"decimal"}]},periodUnit:{type:[{code:"code"}]},dayOfWeek:{max:9007199254740991,type:[{code:"code"}]},timeOfDay:{max:9007199254740991,type:[{code:"time"}]},when:{max:9007199254740991,type:[{code:"code"}]},offset:{type:[{code:"unsignedInt"}]}}},TriggerDefinition:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},type:{min:1,type:[{code:"code"}]},name:{type:[{code:"string"}]},"timing[x]":{type:[{code:"Timing"},{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/Schedule"]},{code:"date"},{code:"dateTime"}]},data:{max:9007199254740991,type:[{code:"DataRequirement"}]},condition:{type:[{code:"Expression"}]}}},UsageContext:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},code:{min:1,type:[{code:"Coding"}]},"value[x]":{min:1,type:[{code:"CodeableConcept"},{code:"Quantity"},{code:"Range"},{code:"Reference",targetProfile:["http://hl7.org/fhir/StructureDefinition/PlanDefinition","http://hl7.org/fhir/StructureDefinition/ResearchStudy","http://hl7.org/fhir/StructureDefinition/InsurancePlan","http://hl7.org/fhir/StructureDefinition/HealthcareService","http://hl7.org/fhir/StructureDefinition/Group","http://hl7.org/fhir/StructureDefinition/Location","http://hl7.org/fhir/StructureDefinition/Organization"]}]}}},MoneyQuantity:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},SimpleQuantity:{elements:{id:{type:[{code:"string"}]},extension:{max:9007199254740991,type:[{code:"Extension"}]},value:{type:[{code:"decimal"}]},comparator:{max:0,type:[{code:"code"}]},unit:{type:[{code:"string"}]},system:{type:[{code:"uri"}]},code:{type:[{code:"code"}]}}},IdentityProvider:{elements:{authorizeUrl:{min:1,type:[{code:"string"}]},tokenUrl:{min:1,type:[{code:"string"}]},tokenAuthMethod:{type:[{code:"code"}]},userInfoUrl:{min:1,type:[{code:"string"}]},clientId:{min:1,type:[{code:"string"}]},clientSecret:{min:1,type:[{code:"string"}]},usePkce:{type:[{code:"boolean"}]},useSubject:{type:[{code:"boolean"}]}}}};function Gt(r){return new Zr(r).parse()}var ve=Kr(pi),Xr=Object.create(null),di=Object.create(null),ks={"http://hl7.org/fhir/StructureDefinition/MoneyQuantity":"MoneyQuantity","http://hl7.org/fhir/StructureDefinition/SimpleQuantity":"SimpleQuantity","http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition":"ViewDefinition"};function yi(r){let e;return e=di[r],e||(e=di[r]=Object.create(null)),e}function Ht(r){let t=(Array.isArray(r)?r:r.entry?.map(n=>n.resource)??[]).filter(n=>n?.resourceType==="StructureDefinition");sn(t);for(let n of t)Qt(n)}function Qt(r){if(!r?.name)throw new Error("Failed loading StructureDefinition from bundle");if(r.resourceType!=="StructureDefinition")return;let e=Gt(r),t=ks[r.url],n,i;t?(n=ve,i=t):r.url===`http://hl7.org/fhir/StructureDefinition/${r.type}`||r.url===`https://medplum.com/fhir/StructureDefinition/${r.type}`||r.type?.startsWith("http://")||r.type?.startsWith("https://")?(n=ve,i=r.type):(n=yi(r.url),i=r.type),n[i]=e;for(let o of e.innerTypes)o.parentType=e,n[o.name]=o;Xr[r.url]=e}function en(){return ve}function tn(r){return!!ve[r]}function _e(r,e){if(e){let t=yi(e)[r];if(t)return t}return ve[r]}function ee(r,e){let t=_e(r,e);if(!t)throw new d(S("Unknown data type: "+r));return t}function rn(r){let e=ve[r];return e&&zt(e)}function nn(r){return!!Xr[r]}function on(r){return Xr[r]}var Zr=class{constructor(e){if(!e.snapshot?.element||e.snapshot.element.length===0)throw new Error(`No snapshot defined for StructureDefinition '${e.name}'`);this.root=e.snapshot.element[0],this.elements=e.snapshot.element.slice(1),this.elementIndex=Object.create(null),this.index=0,this.resourceSchema={name:e.name,path:this.root.path,title:e.title,type:e.type,url:e.url,version:e.version,kind:e.kind,description:Ls(e),elements:{},constraints:this.parseElementDefinition(this.root).constraints,innerTypes:[],summaryProperties:new Set,mandatoryProperties:new Set},this.innerTypes=[]}parse(){let e=this.next();for(;e;){if(e.sliceName)this.parseSliceStart(e);else if(e.id?.includes(":")){if(this.slicingContext?.current){let t=Yr(e,this.slicingContext.path);this.slicingContext.current.elements[t]=this.parseElementDefinition(e)}}else{let t=this.parseElementDefinition(e);this.checkFieldEnter(e,t);let n=this.backboneContext;for(;n;){if(e.path?.startsWith(n.path+".")){n.type.elements[Yr(e,n.path)]=t;break}n=n.parent}if(!n){let i=Yr(e,this.root.path);e.isSummary&&this.resourceSchema.summaryProperties?.add(i.replace("[x]","")),t.min>0&&this.resourceSchema.mandatoryProperties?.add(i.replace("[x]","")),this.resourceSchema.elements[i]=t}this.checkFieldExit(e)}e=this.next()}return this.checkFieldExit(),this.innerTypes.length>0&&(this.resourceSchema.innerTypes=this.innerTypes),this.resourceSchema}checkFieldEnter(e,t){this.isInnerType(e)&&this.enterInnerType(e),this.slicingContext&&!Me(this.slicingContext.path,e?.path)&&(this.slicingContext=void 0),e.slicing&&!this.slicingContext&&this.enterSlice(e,t)}enterInnerType(e){for(;this.backboneContext&&!Me(this.backboneContext?.path,e.path);)this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;let t=$t(e);this.backboneContext={type:{name:t,type:t,path:e.path,title:e.label,description:e.definition,elements:{},constraints:this.parseElementDefinition(e).constraints,innerTypes:[]},path:e.path,parent:Me(this.backboneContext?.path,e.path)?this.backboneContext:this.backboneContext?.parent}}enterSlice(e,t){_s(e)&&!this.peek()?.sliceName||(t.slicing={discriminator:(e.slicing?.discriminator??[]).map(n=>{if(n.type!=="value"&&n.type!=="pattern"&&n.type!=="type")throw new Error(`Unsupported slicing discriminator type: ${n.type}`);return{path:n.path,type:n.type}}),slices:[],ordered:e.slicing?.ordered??!1,rule:e.slicing?.rules},this.slicingContext={field:t.slicing,path:e.path??""})}checkFieldExit(e=void 0){if(this.backboneContext&&!Me(this.backboneContext.path,e?.path))if(this.backboneContext.parent)do this.innerTypes.push(this.backboneContext.type),this.backboneContext=this.backboneContext.parent;while(this.backboneContext&&!Me(this.backboneContext.path,e?.path));else this.innerTypes.push(this.backboneContext.type),this.backboneContext=void 0}next(){let e=this.peek();if(e)return this.index++,e}peek(){let e=this.elements[this.index];if(e){if(this.elementIndex[e.path??""]=e,e.contentReference){let t=e.contentReference.slice(e.contentReference.indexOf("#")+1),n=this.elementIndex[t];return n?{...n,id:e.id,path:e.path,min:e.min??n.min,max:e.max??n.max,base:{path:n.base?.path??t,min:e.base?.min??n.base?.min??n.min,max:e.base?.max??n.base?.max??n.max},contentReference:e.contentReference,definition:e.definition}:void 0}return e}}isInnerType(e){let t=this.peek();return!!(Me(e?.path,t?.path)&&e.type?.some(n=>["BackboneElement","Element"].includes(n.code)))}parseSliceStart(e){if(!this.slicingContext)throw new Error(`Invalid slice start before discriminator: ${e.sliceName} (${e.id})`);this.slicingContext.current={...this.parseElementDefinition(e),name:e.sliceName??"",definition:e.definition,elements:{}},this.slicingContext.field.slices.push(this.slicingContext.current)}parseElementDefinitionType(e){return(e.type??[]).map(t=>{let n;return(t.code==="BackboneElement"||t.code==="Element")&&(n=$t(e)),n||(n=te(t,"http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type")?.valueUrl),n||(n=t.code??""),{code:n,targetProfile:t.targetProfile,profile:t.profile}})}parseElementDefinition(e){let t=hi(e.max),n=e.base?.max?hi(e.base.max):t,i={type:"ElementDefinition",value:e};return{description:e.definition||"",path:e.path||e.base?.path||"",min:e.min??0,max:t,isArray:n>1,constraints:(e.constraint??[]).map(o=>({key:o.key??"",severity:o.severity??"error",expression:o.expression??"",description:o.human??""})),type:this.parseElementDefinitionType(e),fixed:mi(C(i,"fixed[x]")),pattern:mi(C(i,"pattern[x]")),binding:e.binding}}};function Ds(r,e){if(!r)return;let t=[];for(let n of e){t.push("_"+n);let i=ve[r.resourceType].elements[n+"[x]"];i&&t.push(...i.type.map(o=>n+O(o.code)))}for(let n of Object.getOwnPropertyNames(r))!e.includes(n)&&!t.includes(n)&&!Vs.includes(n)&&Object.defineProperty(r,n,{enumerable:!1,writable:!1,value:void 0});return r.meta={...r.meta,tag:r.meta?.tag?r.meta.tag.concat(fi):[fi]},r}var fi={system:"http://hl7.org/fhir/v3/ObservationValue",code:"SUBSETTED"},Vs=["resourceType","id","meta"];function hi(r){return r==="*"?Number.POSITIVE_INFINITY:Number.parseInt(r,10)}function Yr(r,e=""){return Ms(r.path,e)}function Ms(r,e){return r?e&&r.startsWith(e)?r.substring(e.length+1):r:""}function Me(r,e){return!r||!e?!1:e.startsWith(r+".")||e===r}function mi(r){return Array.isArray(r)&&r.length>0?r[0]:b(r)?void 0:r}function _s(r){let e=r.slicing?.discriminator;return!!(r.type?.some(t=>t.code==="Extension")&&e?.length===1&&e[0].type==="value"&&e[0].path==="url")}function Ls(r){let e=r.des