@smile-cdr/fhirts 2.2.8 → 2.4.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 (660) hide show
  1. package/.claude/settings.local.json +12 -0
  2. package/.github/workflows/npm-publish.yml +12 -6
  3. package/.github/workflows/pr-build.yml +7 -3
  4. package/.prettierignore +22 -0
  5. package/.prettierrc +10 -0
  6. package/CHANGELOG.md +4 -0
  7. package/GETTINGSTARTED.md +57 -15
  8. package/dist/FHIR-DSTU2.js +1 -1
  9. package/dist/FHIR-R3.js +3 -1
  10. package/dist/FHIR-R4/classes/account.d.ts +2 -1
  11. package/dist/FHIR-R4/classes/account.js +3 -2
  12. package/dist/FHIR-R4/classes/activityDefinition.d.ts +2 -1
  13. package/dist/FHIR-R4/classes/activityDefinition.js +3 -2
  14. package/dist/FHIR-R4/classes/address.js +1 -1
  15. package/dist/FHIR-R4/classes/adverseEvent.d.ts +2 -1
  16. package/dist/FHIR-R4/classes/adverseEvent.js +3 -2
  17. package/dist/FHIR-R4/classes/age.js +1 -1
  18. package/dist/FHIR-R4/classes/allergyIntolerance.d.ts +2 -1
  19. package/dist/FHIR-R4/classes/allergyIntolerance.js +3 -2
  20. package/dist/FHIR-R4/classes/allergyIntoleranceReaction.js +1 -1
  21. package/dist/FHIR-R4/classes/appointment.d.ts +2 -1
  22. package/dist/FHIR-R4/classes/appointment.js +3 -2
  23. package/dist/FHIR-R4/classes/appointmentParticipant.js +1 -1
  24. package/dist/FHIR-R4/classes/appointmentResponse.d.ts +2 -1
  25. package/dist/FHIR-R4/classes/appointmentResponse.js +2 -1
  26. package/dist/FHIR-R4/classes/auditEvent.d.ts +2 -1
  27. package/dist/FHIR-R4/classes/auditEvent.js +3 -2
  28. package/dist/FHIR-R4/classes/auditEventNetwork.js +1 -1
  29. package/dist/FHIR-R4/classes/basic.d.ts +2 -1
  30. package/dist/FHIR-R4/classes/basic.js +2 -1
  31. package/dist/FHIR-R4/classes/biologicallyDerivedProduct.d.ts +2 -1
  32. package/dist/FHIR-R4/classes/biologicallyDerivedProduct.js +3 -2
  33. package/dist/FHIR-R4/classes/biologicallyDerivedProductStorage.js +1 -1
  34. package/dist/FHIR-R4/classes/bodyStructure.d.ts +2 -1
  35. package/dist/FHIR-R4/classes/bodyStructure.js +2 -1
  36. package/dist/FHIR-R4/classes/bundle.js +1 -1
  37. package/dist/FHIR-R4/classes/capabilityStatement.d.ts +2 -1
  38. package/dist/FHIR-R4/classes/capabilityStatement.js +3 -2
  39. package/dist/FHIR-R4/classes/capabilityStatementDocument.js +1 -1
  40. package/dist/FHIR-R4/classes/capabilityStatementInteraction.js +1 -1
  41. package/dist/FHIR-R4/classes/capabilityStatementInteraction1.js +1 -1
  42. package/dist/FHIR-R4/classes/capabilityStatementResource.js +1 -1
  43. package/dist/FHIR-R4/classes/capabilityStatementRest.js +1 -1
  44. package/dist/FHIR-R4/classes/capabilityStatementSearchParam.js +1 -1
  45. package/dist/FHIR-R4/classes/capabilityStatementSupportedMessage.js +1 -1
  46. package/dist/FHIR-R4/classes/carePlan.d.ts +2 -1
  47. package/dist/FHIR-R4/classes/carePlan.js +2 -1
  48. package/dist/FHIR-R4/classes/carePlanDetail.js +1 -1
  49. package/dist/FHIR-R4/classes/careTeam.d.ts +2 -1
  50. package/dist/FHIR-R4/classes/careTeam.js +3 -2
  51. package/dist/FHIR-R4/classes/catalogEntry.d.ts +2 -1
  52. package/dist/FHIR-R4/classes/catalogEntry.js +3 -2
  53. package/dist/FHIR-R4/classes/catalogEntryRelatedEntry.js +1 -1
  54. package/dist/FHIR-R4/classes/chargeItem.d.ts +2 -1
  55. package/dist/FHIR-R4/classes/chargeItem.js +3 -2
  56. package/dist/FHIR-R4/classes/chargeItemDefinition.d.ts +2 -1
  57. package/dist/FHIR-R4/classes/chargeItemDefinition.js +3 -2
  58. package/dist/FHIR-R4/classes/claim.d.ts +2 -1
  59. package/dist/FHIR-R4/classes/claim.js +3 -2
  60. package/dist/FHIR-R4/classes/claimResponse.d.ts +2 -1
  61. package/dist/FHIR-R4/classes/claimResponse.js +2 -1
  62. package/dist/FHIR-R4/classes/claimResponseProcessNote.js +1 -1
  63. package/dist/FHIR-R4/classes/clinicalImpression.d.ts +2 -1
  64. package/dist/FHIR-R4/classes/clinicalImpression.js +2 -1
  65. package/dist/FHIR-R4/classes/codeSystem.d.ts +2 -1
  66. package/dist/FHIR-R4/classes/codeSystem.js +3 -2
  67. package/dist/FHIR-R4/classes/codeSystemProperty.js +1 -1
  68. package/dist/FHIR-R4/classes/communication.d.ts +2 -1
  69. package/dist/FHIR-R4/classes/communication.js +2 -1
  70. package/dist/FHIR-R4/classes/communicationRequest.d.ts +2 -1
  71. package/dist/FHIR-R4/classes/communicationRequest.js +2 -1
  72. package/dist/FHIR-R4/classes/compartmentDefinition.d.ts +2 -1
  73. package/dist/FHIR-R4/classes/compartmentDefinition.js +3 -2
  74. package/dist/FHIR-R4/classes/composition.d.ts +2 -1
  75. package/dist/FHIR-R4/classes/composition.js +3 -2
  76. package/dist/FHIR-R4/classes/compositionAttester.js +1 -1
  77. package/dist/FHIR-R4/classes/conceptMap.d.ts +2 -1
  78. package/dist/FHIR-R4/classes/conceptMap.js +3 -2
  79. package/dist/FHIR-R4/classes/conceptMapTarget.js +1 -1
  80. package/dist/FHIR-R4/classes/conceptMapUnmapped.js +1 -1
  81. package/dist/FHIR-R4/classes/condition.d.ts +2 -1
  82. package/dist/FHIR-R4/classes/condition.js +2 -1
  83. package/dist/FHIR-R4/classes/consent.d.ts +2 -1
  84. package/dist/FHIR-R4/classes/consent.js +3 -2
  85. package/dist/FHIR-R4/classes/consentData.js +1 -1
  86. package/dist/FHIR-R4/classes/consentProvision.js +1 -1
  87. package/dist/FHIR-R4/classes/contactPoint.js +1 -1
  88. package/dist/FHIR-R4/classes/contract.d.ts +2 -1
  89. package/dist/FHIR-R4/classes/contract.js +2 -1
  90. package/dist/FHIR-R4/classes/contributor.js +1 -1
  91. package/dist/FHIR-R4/classes/count.js +1 -1
  92. package/dist/FHIR-R4/classes/coverage.d.ts +2 -1
  93. package/dist/FHIR-R4/classes/coverage.js +2 -1
  94. package/dist/FHIR-R4/classes/coverageEligibilityRequest.d.ts +2 -1
  95. package/dist/FHIR-R4/classes/coverageEligibilityRequest.js +2 -1
  96. package/dist/FHIR-R4/classes/coverageEligibilityResponse.d.ts +2 -1
  97. package/dist/FHIR-R4/classes/coverageEligibilityResponse.js +3 -2
  98. package/dist/FHIR-R4/classes/dataRequirementSort.js +1 -1
  99. package/dist/FHIR-R4/classes/detectedIssue.d.ts +2 -1
  100. package/dist/FHIR-R4/classes/detectedIssue.js +3 -2
  101. package/dist/FHIR-R4/classes/device.d.ts +2 -1
  102. package/dist/FHIR-R4/classes/device.js +3 -2
  103. package/dist/FHIR-R4/classes/deviceDefinition.d.ts +2 -1
  104. package/dist/FHIR-R4/classes/deviceDefinition.js +2 -1
  105. package/dist/FHIR-R4/classes/deviceDefinitionDeviceName.js +1 -1
  106. package/dist/FHIR-R4/classes/deviceDeviceName.js +1 -1
  107. package/dist/FHIR-R4/classes/deviceMetric.d.ts +2 -1
  108. package/dist/FHIR-R4/classes/deviceMetric.js +3 -2
  109. package/dist/FHIR-R4/classes/deviceMetricCalibration.js +1 -1
  110. package/dist/FHIR-R4/classes/deviceRequest.d.ts +2 -1
  111. package/dist/FHIR-R4/classes/deviceRequest.js +2 -1
  112. package/dist/FHIR-R4/classes/deviceUdiCarrier.js +1 -1
  113. package/dist/FHIR-R4/classes/deviceUseStatement.d.ts +2 -1
  114. package/dist/FHIR-R4/classes/deviceUseStatement.js +3 -2
  115. package/dist/FHIR-R4/classes/diagnosticReport.d.ts +2 -1
  116. package/dist/FHIR-R4/classes/diagnosticReport.js +3 -2
  117. package/dist/FHIR-R4/classes/distance.js +1 -1
  118. package/dist/FHIR-R4/classes/documentManifest.d.ts +2 -1
  119. package/dist/FHIR-R4/classes/documentManifest.js +3 -2
  120. package/dist/FHIR-R4/classes/documentReference.d.ts +2 -1
  121. package/dist/FHIR-R4/classes/documentReference.js +3 -2
  122. package/dist/FHIR-R4/classes/documentReferenceRelatesTo.js +1 -1
  123. package/dist/FHIR-R4/classes/domainResource.d.ts +4 -0
  124. package/dist/FHIR-R4/classes/domainResource.js +6 -0
  125. package/dist/FHIR-R4/classes/duration.js +1 -1
  126. package/dist/FHIR-R4/classes/effectEvidenceSynthesis.d.ts +2 -1
  127. package/dist/FHIR-R4/classes/effectEvidenceSynthesis.js +3 -2
  128. package/dist/FHIR-R4/classes/effectEvidenceSynthesisResultsByExposure.js +1 -1
  129. package/dist/FHIR-R4/classes/elementDefinitionBinding.js +1 -1
  130. package/dist/FHIR-R4/classes/elementDefinitionConstraint.js +1 -1
  131. package/dist/FHIR-R4/classes/elementDefinitionDiscriminator.js +1 -1
  132. package/dist/FHIR-R4/classes/elementDefinitionSlicing.js +1 -1
  133. package/dist/FHIR-R4/classes/elementDefinitionType.js +1 -1
  134. package/dist/FHIR-R4/classes/encounter.d.ts +2 -1
  135. package/dist/FHIR-R4/classes/encounter.js +3 -2
  136. package/dist/FHIR-R4/classes/encounterLocation.js +1 -1
  137. package/dist/FHIR-R4/classes/encounterStatusHistory.js +1 -1
  138. package/dist/FHIR-R4/classes/endpoint.d.ts +2 -1
  139. package/dist/FHIR-R4/classes/endpoint.js +3 -2
  140. package/dist/FHIR-R4/classes/enrollmentRequest.d.ts +2 -1
  141. package/dist/FHIR-R4/classes/enrollmentRequest.js +2 -1
  142. package/dist/FHIR-R4/classes/enrollmentResponse.d.ts +2 -1
  143. package/dist/FHIR-R4/classes/enrollmentResponse.js +3 -2
  144. package/dist/FHIR-R4/classes/episodeOfCare.d.ts +2 -1
  145. package/dist/FHIR-R4/classes/episodeOfCare.js +3 -2
  146. package/dist/FHIR-R4/classes/episodeOfCareStatusHistory.js +1 -1
  147. package/dist/FHIR-R4/classes/eventDefinition.d.ts +2 -1
  148. package/dist/FHIR-R4/classes/eventDefinition.js +3 -2
  149. package/dist/FHIR-R4/classes/evidence.d.ts +2 -1
  150. package/dist/FHIR-R4/classes/evidence.js +3 -2
  151. package/dist/FHIR-R4/classes/evidenceVariable.d.ts +2 -1
  152. package/dist/FHIR-R4/classes/evidenceVariable.js +3 -2
  153. package/dist/FHIR-R4/classes/evidenceVariableCharacteristic.js +1 -1
  154. package/dist/FHIR-R4/classes/exampleScenario.d.ts +2 -1
  155. package/dist/FHIR-R4/classes/exampleScenario.js +3 -2
  156. package/dist/FHIR-R4/classes/exampleScenarioActor.js +1 -1
  157. package/dist/FHIR-R4/classes/exampleScenarioInstance.d.ts +2 -1
  158. package/dist/FHIR-R4/classes/exampleScenarioInstance.js +2 -1
  159. package/dist/FHIR-R4/classes/explanationOfBenefit.d.ts +2 -1
  160. package/dist/FHIR-R4/classes/explanationOfBenefit.js +3 -2
  161. package/dist/FHIR-R4/classes/explanationOfBenefitProcessNote.js +1 -1
  162. package/dist/FHIR-R4/classes/expression.js +1 -1
  163. package/dist/FHIR-R4/classes/familyMemberHistory.d.ts +2 -1
  164. package/dist/FHIR-R4/classes/familyMemberHistory.js +3 -2
  165. package/dist/FHIR-R4/classes/flag.d.ts +2 -1
  166. package/dist/FHIR-R4/classes/flag.js +3 -2
  167. package/dist/FHIR-R4/classes/goal.d.ts +2 -1
  168. package/dist/FHIR-R4/classes/goal.js +3 -2
  169. package/dist/FHIR-R4/classes/graphDefinition.d.ts +2 -1
  170. package/dist/FHIR-R4/classes/graphDefinition.js +3 -2
  171. package/dist/FHIR-R4/classes/graphDefinitionCompartment.js +1 -1
  172. package/dist/FHIR-R4/classes/group.d.ts +2 -1
  173. package/dist/FHIR-R4/classes/group.js +3 -2
  174. package/dist/FHIR-R4/classes/guidanceResponse.d.ts +2 -1
  175. package/dist/FHIR-R4/classes/guidanceResponse.js +3 -2
  176. package/dist/FHIR-R4/classes/healthcareService.d.ts +2 -1
  177. package/dist/FHIR-R4/classes/healthcareService.js +2 -1
  178. package/dist/FHIR-R4/classes/humanName.js +1 -1
  179. package/dist/FHIR-R4/classes/identifier.js +1 -1
  180. package/dist/FHIR-R4/classes/imagingStudy.d.ts +2 -1
  181. package/dist/FHIR-R4/classes/imagingStudy.js +3 -2
  182. package/dist/FHIR-R4/classes/immunization.d.ts +2 -1
  183. package/dist/FHIR-R4/classes/immunization.js +2 -1
  184. package/dist/FHIR-R4/classes/immunizationEvaluation.d.ts +2 -1
  185. package/dist/FHIR-R4/classes/immunizationEvaluation.js +2 -1
  186. package/dist/FHIR-R4/classes/immunizationRecommendation.d.ts +2 -1
  187. package/dist/FHIR-R4/classes/immunizationRecommendation.js +2 -1
  188. package/dist/FHIR-R4/classes/implementationGuide.d.ts +2 -1
  189. package/dist/FHIR-R4/classes/implementationGuide.js +3 -2
  190. package/dist/FHIR-R4/classes/implementationGuidePage.js +1 -1
  191. package/dist/FHIR-R4/classes/implementationGuideParameter.js +1 -1
  192. package/dist/FHIR-R4/classes/insurancePlan.d.ts +2 -1
  193. package/dist/FHIR-R4/classes/insurancePlan.js +3 -2
  194. package/dist/FHIR-R4/classes/invoice.d.ts +2 -1
  195. package/dist/FHIR-R4/classes/invoice.js +3 -2
  196. package/dist/FHIR-R4/classes/invoicePriceComponent.js +1 -1
  197. package/dist/FHIR-R4/classes/library.d.ts +2 -1
  198. package/dist/FHIR-R4/classes/library.js +3 -2
  199. package/dist/FHIR-R4/classes/linkage.d.ts +2 -1
  200. package/dist/FHIR-R4/classes/linkage.js +2 -1
  201. package/dist/FHIR-R4/classes/linkageItem.js +1 -1
  202. package/dist/FHIR-R4/classes/list.d.ts +2 -1
  203. package/dist/FHIR-R4/classes/list.js +3 -2
  204. package/dist/FHIR-R4/classes/location.d.ts +2 -1
  205. package/dist/FHIR-R4/classes/location.js +3 -2
  206. package/dist/FHIR-R4/classes/measure.d.ts +2 -1
  207. package/dist/FHIR-R4/classes/measure.js +3 -2
  208. package/dist/FHIR-R4/classes/measureReport.d.ts +2 -1
  209. package/dist/FHIR-R4/classes/measureReport.js +3 -2
  210. package/dist/FHIR-R4/classes/media.d.ts +2 -1
  211. package/dist/FHIR-R4/classes/media.js +2 -1
  212. package/dist/FHIR-R4/classes/medication.d.ts +2 -1
  213. package/dist/FHIR-R4/classes/medication.js +2 -1
  214. package/dist/FHIR-R4/classes/medicationAdministration.d.ts +2 -1
  215. package/dist/FHIR-R4/classes/medicationAdministration.js +2 -1
  216. package/dist/FHIR-R4/classes/medicationDispense.d.ts +2 -1
  217. package/dist/FHIR-R4/classes/medicationDispense.js +2 -1
  218. package/dist/FHIR-R4/classes/medicationKnowledge.d.ts +2 -1
  219. package/dist/FHIR-R4/classes/medicationKnowledge.js +2 -1
  220. package/dist/FHIR-R4/classes/medicationRequest.d.ts +2 -1
  221. package/dist/FHIR-R4/classes/medicationRequest.js +2 -1
  222. package/dist/FHIR-R4/classes/medicationStatement.d.ts +2 -1
  223. package/dist/FHIR-R4/classes/medicationStatement.js +2 -1
  224. package/dist/FHIR-R4/classes/medicinalProduct.d.ts +2 -1
  225. package/dist/FHIR-R4/classes/medicinalProduct.js +2 -1
  226. package/dist/FHIR-R4/classes/medicinalProductAuthorization.d.ts +2 -1
  227. package/dist/FHIR-R4/classes/medicinalProductAuthorization.js +2 -1
  228. package/dist/FHIR-R4/classes/medicinalProductContraindication.d.ts +2 -1
  229. package/dist/FHIR-R4/classes/medicinalProductContraindication.js +2 -1
  230. package/dist/FHIR-R4/classes/medicinalProductIndication.d.ts +2 -1
  231. package/dist/FHIR-R4/classes/medicinalProductIndication.js +2 -1
  232. package/dist/FHIR-R4/classes/medicinalProductIngredient.d.ts +2 -1
  233. package/dist/FHIR-R4/classes/medicinalProductIngredient.js +2 -1
  234. package/dist/FHIR-R4/classes/medicinalProductInteraction.d.ts +2 -1
  235. package/dist/FHIR-R4/classes/medicinalProductInteraction.js +2 -1
  236. package/dist/FHIR-R4/classes/medicinalProductManufactured.d.ts +2 -1
  237. package/dist/FHIR-R4/classes/medicinalProductManufactured.js +2 -1
  238. package/dist/FHIR-R4/classes/medicinalProductPackaged.d.ts +2 -1
  239. package/dist/FHIR-R4/classes/medicinalProductPackaged.js +2 -1
  240. package/dist/FHIR-R4/classes/medicinalProductPharmaceutical.d.ts +2 -1
  241. package/dist/FHIR-R4/classes/medicinalProductPharmaceutical.js +2 -1
  242. package/dist/FHIR-R4/classes/medicinalProductUndesirableEffect.d.ts +2 -1
  243. package/dist/FHIR-R4/classes/medicinalProductUndesirableEffect.js +2 -1
  244. package/dist/FHIR-R4/classes/messageDefinition.d.ts +2 -1
  245. package/dist/FHIR-R4/classes/messageDefinition.js +3 -2
  246. package/dist/FHIR-R4/classes/messageHeader.d.ts +2 -1
  247. package/dist/FHIR-R4/classes/messageHeader.js +2 -1
  248. package/dist/FHIR-R4/classes/messageHeaderResponse.js +1 -1
  249. package/dist/FHIR-R4/classes/molecularSequence.d.ts +2 -1
  250. package/dist/FHIR-R4/classes/molecularSequence.js +3 -2
  251. package/dist/FHIR-R4/classes/molecularSequenceQuality.js +1 -1
  252. package/dist/FHIR-R4/classes/molecularSequenceReferenceSeq.js +1 -1
  253. package/dist/FHIR-R4/classes/molecularSequenceRepository.js +1 -1
  254. package/dist/FHIR-R4/classes/namingSystem.d.ts +2 -1
  255. package/dist/FHIR-R4/classes/namingSystem.js +3 -2
  256. package/dist/FHIR-R4/classes/namingSystemUniqueId.js +1 -1
  257. package/dist/FHIR-R4/classes/narrative.js +1 -1
  258. package/dist/FHIR-R4/classes/nutritionOrder.d.ts +2 -1
  259. package/dist/FHIR-R4/classes/nutritionOrder.js +2 -1
  260. package/dist/FHIR-R4/classes/observation.d.ts +2 -1
  261. package/dist/FHIR-R4/classes/observation.js +3 -2
  262. package/dist/FHIR-R4/classes/observationDefinition.d.ts +2 -1
  263. package/dist/FHIR-R4/classes/observationDefinition.js +2 -1
  264. package/dist/FHIR-R4/classes/observationDefinitionQualifiedInterval.js +1 -1
  265. package/dist/FHIR-R4/classes/operationDefinition.d.ts +2 -1
  266. package/dist/FHIR-R4/classes/operationDefinition.js +3 -2
  267. package/dist/FHIR-R4/classes/operationDefinitionBinding.js +1 -1
  268. package/dist/FHIR-R4/classes/operationDefinitionParameter.js +1 -1
  269. package/dist/FHIR-R4/classes/operationOutcome.d.ts +2 -1
  270. package/dist/FHIR-R4/classes/operationOutcome.js +13 -1
  271. package/dist/FHIR-R4/classes/organization.d.ts +2 -1
  272. package/dist/FHIR-R4/classes/organization.js +2 -1
  273. package/dist/FHIR-R4/classes/organizationAffiliation.d.ts +2 -1
  274. package/dist/FHIR-R4/classes/organizationAffiliation.js +2 -1
  275. package/dist/FHIR-R4/classes/patient.d.ts +2 -1
  276. package/dist/FHIR-R4/classes/patient.js +3 -2
  277. package/dist/FHIR-R4/classes/patientContact.js +1 -1
  278. package/dist/FHIR-R4/classes/patientLink.js +1 -1
  279. package/dist/FHIR-R4/classes/paymentNotice.d.ts +2 -1
  280. package/dist/FHIR-R4/classes/paymentNotice.js +2 -1
  281. package/dist/FHIR-R4/classes/paymentReconciliation.d.ts +2 -1
  282. package/dist/FHIR-R4/classes/paymentReconciliation.js +3 -2
  283. package/dist/FHIR-R4/classes/paymentReconciliationProcessNote.js +1 -1
  284. package/dist/FHIR-R4/classes/person.d.ts +2 -1
  285. package/dist/FHIR-R4/classes/person.js +3 -2
  286. package/dist/FHIR-R4/classes/personLink.js +1 -1
  287. package/dist/FHIR-R4/classes/planDefinition.d.ts +2 -1
  288. package/dist/FHIR-R4/classes/planDefinition.js +3 -2
  289. package/dist/FHIR-R4/classes/planDefinitionAction.js +1 -1
  290. package/dist/FHIR-R4/classes/planDefinitionCondition.js +1 -1
  291. package/dist/FHIR-R4/classes/planDefinitionParticipant.js +1 -1
  292. package/dist/FHIR-R4/classes/planDefinitionRelatedAction.js +1 -1
  293. package/dist/FHIR-R4/classes/practitioner.d.ts +2 -1
  294. package/dist/FHIR-R4/classes/practitioner.js +3 -2
  295. package/dist/FHIR-R4/classes/practitionerRole.d.ts +2 -1
  296. package/dist/FHIR-R4/classes/practitionerRole.js +2 -1
  297. package/dist/FHIR-R4/classes/procedure.d.ts +2 -1
  298. package/dist/FHIR-R4/classes/procedure.js +2 -1
  299. package/dist/FHIR-R4/classes/provenance.d.ts +2 -1
  300. package/dist/FHIR-R4/classes/provenance.js +2 -1
  301. package/dist/FHIR-R4/classes/provenanceEntity.js +1 -1
  302. package/dist/FHIR-R4/classes/quantity.js +1 -1
  303. package/dist/FHIR-R4/classes/questionnaire.d.ts +2 -1
  304. package/dist/FHIR-R4/classes/questionnaire.js +3 -2
  305. package/dist/FHIR-R4/classes/questionnaireEnableWhen.js +1 -1
  306. package/dist/FHIR-R4/classes/questionnaireItem.js +1 -1
  307. package/dist/FHIR-R4/classes/questionnaireResponse.d.ts +2 -1
  308. package/dist/FHIR-R4/classes/questionnaireResponse.js +3 -2
  309. package/dist/FHIR-R4/classes/relatedArtifact.js +1 -1
  310. package/dist/FHIR-R4/classes/relatedPerson.d.ts +2 -1
  311. package/dist/FHIR-R4/classes/relatedPerson.js +3 -2
  312. package/dist/FHIR-R4/classes/requestGroup.d.ts +2 -1
  313. package/dist/FHIR-R4/classes/requestGroup.js +2 -1
  314. package/dist/FHIR-R4/classes/researchDefinition.d.ts +2 -1
  315. package/dist/FHIR-R4/classes/researchDefinition.js +3 -2
  316. package/dist/FHIR-R4/classes/researchElementDefinition.d.ts +2 -1
  317. package/dist/FHIR-R4/classes/researchElementDefinition.js +3 -2
  318. package/dist/FHIR-R4/classes/researchElementDefinitionCharacteristic.js +1 -1
  319. package/dist/FHIR-R4/classes/researchStudy.d.ts +2 -1
  320. package/dist/FHIR-R4/classes/researchStudy.js +3 -2
  321. package/dist/FHIR-R4/classes/researchSubject.d.ts +2 -1
  322. package/dist/FHIR-R4/classes/researchSubject.js +3 -2
  323. package/dist/FHIR-R4/classes/riskAssessment.d.ts +2 -1
  324. package/dist/FHIR-R4/classes/riskAssessment.js +2 -1
  325. package/dist/FHIR-R4/classes/riskEvidenceSynthesis.d.ts +2 -1
  326. package/dist/FHIR-R4/classes/riskEvidenceSynthesis.js +3 -2
  327. package/dist/FHIR-R4/classes/schedule.d.ts +2 -1
  328. package/dist/FHIR-R4/classes/schedule.js +2 -1
  329. package/dist/FHIR-R4/classes/searchParameter.d.ts +2 -1
  330. package/dist/FHIR-R4/classes/searchParameter.js +3 -2
  331. package/dist/FHIR-R4/classes/serviceRequest.d.ts +2 -1
  332. package/dist/FHIR-R4/classes/serviceRequest.js +2 -1
  333. package/dist/FHIR-R4/classes/slot.d.ts +2 -1
  334. package/dist/FHIR-R4/classes/slot.js +3 -2
  335. package/dist/FHIR-R4/classes/specimen.d.ts +2 -1
  336. package/dist/FHIR-R4/classes/specimen.js +3 -2
  337. package/dist/FHIR-R4/classes/specimenDefinition.d.ts +2 -1
  338. package/dist/FHIR-R4/classes/specimenDefinition.js +2 -1
  339. package/dist/FHIR-R4/classes/specimenDefinitionTypeTested.js +1 -1
  340. package/dist/FHIR-R4/classes/structureDefinition.d.ts +2 -1
  341. package/dist/FHIR-R4/classes/structureDefinition.js +3 -2
  342. package/dist/FHIR-R4/classes/structureDefinitionContext.js +1 -1
  343. package/dist/FHIR-R4/classes/structureMap.d.ts +2 -1
  344. package/dist/FHIR-R4/classes/structureMap.js +3 -2
  345. package/dist/FHIR-R4/classes/structureMapGroup.js +1 -1
  346. package/dist/FHIR-R4/classes/structureMapInput.js +1 -1
  347. package/dist/FHIR-R4/classes/structureMapSource.js +1 -1
  348. package/dist/FHIR-R4/classes/structureMapStructure.js +1 -1
  349. package/dist/FHIR-R4/classes/structureMapTarget.js +1 -1
  350. package/dist/FHIR-R4/classes/subscription.d.ts +2 -1
  351. package/dist/FHIR-R4/classes/subscription.js +3 -2
  352. package/dist/FHIR-R4/classes/subscriptionChannel.js +1 -1
  353. package/dist/FHIR-R4/classes/substance.d.ts +2 -1
  354. package/dist/FHIR-R4/classes/substance.js +3 -2
  355. package/dist/FHIR-R4/classes/substanceNucleicAcid.d.ts +2 -1
  356. package/dist/FHIR-R4/classes/substanceNucleicAcid.js +2 -1
  357. package/dist/FHIR-R4/classes/substancePolymer.d.ts +2 -1
  358. package/dist/FHIR-R4/classes/substancePolymer.js +2 -1
  359. package/dist/FHIR-R4/classes/substanceProtein.d.ts +2 -1
  360. package/dist/FHIR-R4/classes/substanceProtein.js +2 -1
  361. package/dist/FHIR-R4/classes/substanceReferenceInformation.d.ts +2 -1
  362. package/dist/FHIR-R4/classes/substanceReferenceInformation.js +2 -1
  363. package/dist/FHIR-R4/classes/substanceSourceMaterial.d.ts +2 -1
  364. package/dist/FHIR-R4/classes/substanceSourceMaterial.js +2 -1
  365. package/dist/FHIR-R4/classes/substanceSpecification.d.ts +2 -1
  366. package/dist/FHIR-R4/classes/substanceSpecification.js +2 -1
  367. package/dist/FHIR-R4/classes/supplyDelivery.d.ts +2 -1
  368. package/dist/FHIR-R4/classes/supplyDelivery.js +3 -2
  369. package/dist/FHIR-R4/classes/supplyRequest.d.ts +2 -1
  370. package/dist/FHIR-R4/classes/supplyRequest.js +3 -2
  371. package/dist/FHIR-R4/classes/task.d.ts +2 -1
  372. package/dist/FHIR-R4/classes/task.js +3 -2
  373. package/dist/FHIR-R4/classes/terminologyCapabilities.d.ts +2 -1
  374. package/dist/FHIR-R4/classes/terminologyCapabilities.js +3 -2
  375. package/dist/FHIR-R4/classes/testReport.d.ts +2 -1
  376. package/dist/FHIR-R4/classes/testReport.js +3 -2
  377. package/dist/FHIR-R4/classes/testReportAssert.js +1 -1
  378. package/dist/FHIR-R4/classes/testReportOperation.js +1 -1
  379. package/dist/FHIR-R4/classes/testReportParticipant.js +1 -1
  380. package/dist/FHIR-R4/classes/testScript.d.ts +2 -1
  381. package/dist/FHIR-R4/classes/testScript.js +3 -2
  382. package/dist/FHIR-R4/classes/testScriptAssert.js +1 -1
  383. package/dist/FHIR-R4/classes/testScriptOperation.js +1 -1
  384. package/dist/FHIR-R4/classes/timingRepeat.js +1 -1
  385. package/dist/FHIR-R4/classes/triggerDefinition.js +1 -1
  386. package/dist/FHIR-R4/classes/valueSet.d.ts +2 -1
  387. package/dist/FHIR-R4/classes/valueSet.js +3 -2
  388. package/dist/FHIR-R4/classes/valueSetFilter.js +1 -1
  389. package/dist/FHIR-R4/classes/verificationResult.d.ts +2 -1
  390. package/dist/FHIR-R4/classes/verificationResult.js +2 -1
  391. package/dist/FHIR-R4/classes/visionPrescription.d.ts +2 -1
  392. package/dist/FHIR-R4/classes/visionPrescription.js +2 -1
  393. package/dist/FHIR-R4/classes/visionPrescriptionLensSpecification.js +1 -1
  394. package/dist/FHIR-R4/classes/visionPrescriptionPrism.js +1 -1
  395. package/dist/FHIR-R4/interfaces/IAccount.js +1 -1
  396. package/dist/FHIR-R4/interfaces/IActivityDefinition.js +1 -1
  397. package/dist/FHIR-R4/interfaces/IAdverseEvent.js +1 -1
  398. package/dist/FHIR-R4/interfaces/IAllergyIntolerance.js +1 -1
  399. package/dist/FHIR-R4/interfaces/IAppointment.js +1 -1
  400. package/dist/FHIR-R4/interfaces/IAuditEvent.js +1 -1
  401. package/dist/FHIR-R4/interfaces/IBiologicallyDerivedProduct.js +1 -1
  402. package/dist/FHIR-R4/interfaces/IBundle.js +1 -1
  403. package/dist/FHIR-R4/interfaces/ICapabilityStatement.js +1 -1
  404. package/dist/FHIR-R4/interfaces/ICareTeam.js +1 -1
  405. package/dist/FHIR-R4/interfaces/ICatalogEntry.js +1 -1
  406. package/dist/FHIR-R4/interfaces/IChargeItem.js +1 -1
  407. package/dist/FHIR-R4/interfaces/IChargeItemDefinition.js +1 -1
  408. package/dist/FHIR-R4/interfaces/IClaim.js +1 -1
  409. package/dist/FHIR-R4/interfaces/ICodeSystem.js +1 -1
  410. package/dist/FHIR-R4/interfaces/ICompartmentDefinition.js +1 -1
  411. package/dist/FHIR-R4/interfaces/IComposition.js +1 -1
  412. package/dist/FHIR-R4/interfaces/IConceptMap.js +1 -1
  413. package/dist/FHIR-R4/interfaces/IConsent.js +1 -1
  414. package/dist/FHIR-R4/interfaces/ICoverageEligibilityResponse.js +1 -1
  415. package/dist/FHIR-R4/interfaces/IDetectedIssue.js +1 -1
  416. package/dist/FHIR-R4/interfaces/IDevice.js +1 -1
  417. package/dist/FHIR-R4/interfaces/IDeviceMetric.js +1 -1
  418. package/dist/FHIR-R4/interfaces/IDeviceUseStatement.js +1 -1
  419. package/dist/FHIR-R4/interfaces/IDiagnosticReport.js +1 -1
  420. package/dist/FHIR-R4/interfaces/IDocumentManifest.js +1 -1
  421. package/dist/FHIR-R4/interfaces/IDocumentReference.js +1 -1
  422. package/dist/FHIR-R4/interfaces/IEffectEvidenceSynthesis.js +1 -1
  423. package/dist/FHIR-R4/interfaces/IEncounter.js +1 -1
  424. package/dist/FHIR-R4/interfaces/IEndpoint.js +1 -1
  425. package/dist/FHIR-R4/interfaces/IEnrollmentResponse.js +1 -1
  426. package/dist/FHIR-R4/interfaces/IEpisodeOfCare.js +1 -1
  427. package/dist/FHIR-R4/interfaces/IEventDefinition.js +1 -1
  428. package/dist/FHIR-R4/interfaces/IEvidence.js +1 -1
  429. package/dist/FHIR-R4/interfaces/IEvidenceVariable.js +1 -1
  430. package/dist/FHIR-R4/interfaces/IExampleScenario.js +1 -1
  431. package/dist/FHIR-R4/interfaces/IExplanationOfBenefit.js +1 -1
  432. package/dist/FHIR-R4/interfaces/IFamilyMemberHistory.js +1 -1
  433. package/dist/FHIR-R4/interfaces/IFlag.js +1 -1
  434. package/dist/FHIR-R4/interfaces/IGoal.js +1 -1
  435. package/dist/FHIR-R4/interfaces/IGraphDefinition.js +1 -1
  436. package/dist/FHIR-R4/interfaces/IGroup.js +1 -1
  437. package/dist/FHIR-R4/interfaces/IGuidanceResponse.js +1 -1
  438. package/dist/FHIR-R4/interfaces/IImagingStudy.js +1 -1
  439. package/dist/FHIR-R4/interfaces/IImplementationGuide.js +1 -1
  440. package/dist/FHIR-R4/interfaces/IInsurancePlan.js +1 -1
  441. package/dist/FHIR-R4/interfaces/IInvoice.js +1 -1
  442. package/dist/FHIR-R4/interfaces/ILibrary.js +1 -1
  443. package/dist/FHIR-R4/interfaces/IList.js +1 -1
  444. package/dist/FHIR-R4/interfaces/ILocation.js +1 -1
  445. package/dist/FHIR-R4/interfaces/IMeasure.js +1 -1
  446. package/dist/FHIR-R4/interfaces/IMeasureReport.js +1 -1
  447. package/dist/FHIR-R4/interfaces/IMessageDefinition.js +1 -1
  448. package/dist/FHIR-R4/interfaces/IMolecularSequence.js +1 -1
  449. package/dist/FHIR-R4/interfaces/INamingSystem.js +1 -1
  450. package/dist/FHIR-R4/interfaces/IObservation.js +1 -1
  451. package/dist/FHIR-R4/interfaces/IOperationDefinition.js +1 -1
  452. package/dist/FHIR-R4/interfaces/IPatient.js +1 -1
  453. package/dist/FHIR-R4/interfaces/IPaymentReconciliation.js +1 -1
  454. package/dist/FHIR-R4/interfaces/IPerson.js +1 -1
  455. package/dist/FHIR-R4/interfaces/IPlanDefinition.js +1 -1
  456. package/dist/FHIR-R4/interfaces/IPractitioner.js +1 -1
  457. package/dist/FHIR-R4/interfaces/IQuestionnaire.js +1 -1
  458. package/dist/FHIR-R4/interfaces/IQuestionnaireResponse.js +1 -1
  459. package/dist/FHIR-R4/interfaces/IRelatedPerson.js +1 -1
  460. package/dist/FHIR-R4/interfaces/IResearchDefinition.js +1 -1
  461. package/dist/FHIR-R4/interfaces/IResearchElementDefinition.js +1 -1
  462. package/dist/FHIR-R4/interfaces/IResearchStudy.js +1 -1
  463. package/dist/FHIR-R4/interfaces/IResearchSubject.js +1 -1
  464. package/dist/FHIR-R4/interfaces/IRiskEvidenceSynthesis.js +1 -1
  465. package/dist/FHIR-R4/interfaces/ISearchParameter.js +1 -1
  466. package/dist/FHIR-R4/interfaces/ISlot.js +1 -1
  467. package/dist/FHIR-R4/interfaces/ISpecimen.js +1 -1
  468. package/dist/FHIR-R4/interfaces/IStructureDefinition.js +1 -1
  469. package/dist/FHIR-R4/interfaces/IStructureMap.js +1 -1
  470. package/dist/FHIR-R4/interfaces/ISubscription.js +1 -1
  471. package/dist/FHIR-R4/interfaces/ISubstance.js +1 -1
  472. package/dist/FHIR-R4/interfaces/ISupplyDelivery.js +1 -1
  473. package/dist/FHIR-R4/interfaces/ISupplyRequest.js +1 -1
  474. package/dist/FHIR-R4/interfaces/ITask.js +1 -1
  475. package/dist/FHIR-R4/interfaces/ITerminologyCapabilities.js +1 -1
  476. package/dist/FHIR-R4/interfaces/ITestReport.js +1 -1
  477. package/dist/FHIR-R4/interfaces/ITestScript.js +1 -1
  478. package/dist/FHIR-R4/interfaces/IValueSet.js +1 -1
  479. package/dist/FHIR-R5/fHIRJSONRESOURCE.d.ts +172 -0
  480. package/dist/FHIR-R5/fHIRJSONRESOURCE.js +2 -0
  481. package/dist/FHIR-R5/openApiSchemaUpdated.d.ts +172 -0
  482. package/dist/FHIR-R5/openApiSchemaUpdated.js +2 -0
  483. package/dist/index.d.ts +1 -1
  484. package/dist/index.js +39 -6
  485. package/dist/library/BundleUtils/BundleUtils.d.ts +11 -5
  486. package/dist/library/BundleUtils/BundleUtils.js +23 -5
  487. package/dist/library/BundleUtils/BundleUtils.spec.js +24 -24
  488. package/dist/library/PatchUtils/PatchUtils.d.ts +1 -1
  489. package/dist/library/PatchUtils/PatchUtils.js +31 -31
  490. package/dist/library/PatchUtils/PatchUtils.spec.js +159 -124
  491. package/dist/library/QueryBuilder/QueryBuilder.d.ts +1 -1
  492. package/dist/library/QueryBuilder/QueryBuilder.js +25 -17
  493. package/dist/library/QueryBuilder/QueryBuilder.spec.js +44 -43
  494. package/dist/library/ResourceUtils/ResourceUtils.d.ts +15 -7
  495. package/dist/library/ResourceUtils/ResourceUtils.js +19 -11
  496. package/dist/library/ResourceUtils/ResourceUtils.spec.js +120 -109
  497. package/dist/library/constants.js +2 -2
  498. package/dist/library/dataTypes.d.ts +6 -6
  499. package/eslint.config.mjs +69 -0
  500. package/package.json +21 -7
  501. package/src/FHIR-DSTU2.ts +1 -1
  502. package/src/FHIR-R3.ts +3 -1
  503. package/src/FHIR-R4/classes/account.ts +2 -1
  504. package/src/FHIR-R4/classes/activityDefinition.ts +2 -1
  505. package/src/FHIR-R4/classes/adverseEvent.ts +2 -1
  506. package/src/FHIR-R4/classes/allergyIntolerance.ts +2 -1
  507. package/src/FHIR-R4/classes/appointment.ts +2 -1
  508. package/src/FHIR-R4/classes/appointmentResponse.ts +2 -1
  509. package/src/FHIR-R4/classes/auditEvent.ts +2 -1
  510. package/src/FHIR-R4/classes/basic.ts +2 -1
  511. package/src/FHIR-R4/classes/biologicallyDerivedProduct.ts +2 -1
  512. package/src/FHIR-R4/classes/bodyStructure.ts +2 -1
  513. package/src/FHIR-R4/classes/capabilityStatement.ts +2 -1
  514. package/src/FHIR-R4/classes/carePlan.ts +2 -1
  515. package/src/FHIR-R4/classes/careTeam.ts +2 -1
  516. package/src/FHIR-R4/classes/catalogEntry.ts +2 -1
  517. package/src/FHIR-R4/classes/chargeItem.ts +2 -1
  518. package/src/FHIR-R4/classes/chargeItemDefinition.ts +2 -1
  519. package/src/FHIR-R4/classes/claim.ts +2 -1
  520. package/src/FHIR-R4/classes/claimResponse.ts +2 -1
  521. package/src/FHIR-R4/classes/clinicalImpression.ts +2 -1
  522. package/src/FHIR-R4/classes/codeSystem.ts +2 -1
  523. package/src/FHIR-R4/classes/communication.ts +2 -1
  524. package/src/FHIR-R4/classes/communicationRequest.ts +2 -1
  525. package/src/FHIR-R4/classes/compartmentDefinition.ts +2 -1
  526. package/src/FHIR-R4/classes/composition.ts +2 -1
  527. package/src/FHIR-R4/classes/conceptMap.ts +2 -1
  528. package/src/FHIR-R4/classes/condition.ts +2 -1
  529. package/src/FHIR-R4/classes/consent.ts +2 -1
  530. package/src/FHIR-R4/classes/contract.ts +2 -1
  531. package/src/FHIR-R4/classes/coverage.ts +2 -1
  532. package/src/FHIR-R4/classes/coverageEligibilityRequest.ts +2 -1
  533. package/src/FHIR-R4/classes/coverageEligibilityResponse.ts +2 -1
  534. package/src/FHIR-R4/classes/detectedIssue.ts +2 -1
  535. package/src/FHIR-R4/classes/device.ts +2 -1
  536. package/src/FHIR-R4/classes/deviceDefinition.ts +2 -1
  537. package/src/FHIR-R4/classes/deviceMetric.ts +2 -1
  538. package/src/FHIR-R4/classes/deviceRequest.ts +2 -1
  539. package/src/FHIR-R4/classes/deviceUseStatement.ts +2 -1
  540. package/src/FHIR-R4/classes/diagnosticReport.ts +2 -1
  541. package/src/FHIR-R4/classes/documentManifest.ts +2 -1
  542. package/src/FHIR-R4/classes/documentReference.ts +2 -1
  543. package/src/FHIR-R4/classes/domainResource.ts +5 -0
  544. package/src/FHIR-R4/classes/effectEvidenceSynthesis.ts +2 -1
  545. package/src/FHIR-R4/classes/encounter.ts +2 -1
  546. package/src/FHIR-R4/classes/endpoint.ts +2 -1
  547. package/src/FHIR-R4/classes/enrollmentRequest.ts +2 -1
  548. package/src/FHIR-R4/classes/enrollmentResponse.ts +2 -1
  549. package/src/FHIR-R4/classes/episodeOfCare.ts +2 -1
  550. package/src/FHIR-R4/classes/eventDefinition.ts +2 -1
  551. package/src/FHIR-R4/classes/evidence.ts +2 -1
  552. package/src/FHIR-R4/classes/evidenceVariable.ts +2 -1
  553. package/src/FHIR-R4/classes/exampleScenario.ts +2 -1
  554. package/src/FHIR-R4/classes/exampleScenarioInstance.ts +2 -1
  555. package/src/FHIR-R4/classes/explanationOfBenefit.ts +2 -1
  556. package/src/FHIR-R4/classes/familyMemberHistory.ts +2 -1
  557. package/src/FHIR-R4/classes/flag.ts +2 -1
  558. package/src/FHIR-R4/classes/goal.ts +2 -1
  559. package/src/FHIR-R4/classes/graphDefinition.ts +2 -1
  560. package/src/FHIR-R4/classes/group.ts +2 -1
  561. package/src/FHIR-R4/classes/guidanceResponse.ts +2 -1
  562. package/src/FHIR-R4/classes/healthcareService.ts +2 -1
  563. package/src/FHIR-R4/classes/imagingStudy.ts +2 -1
  564. package/src/FHIR-R4/classes/immunization.ts +2 -1
  565. package/src/FHIR-R4/classes/immunizationEvaluation.ts +2 -1
  566. package/src/FHIR-R4/classes/immunizationRecommendation.ts +2 -1
  567. package/src/FHIR-R4/classes/implementationGuide.ts +2 -1
  568. package/src/FHIR-R4/classes/insurancePlan.ts +2 -1
  569. package/src/FHIR-R4/classes/invoice.ts +2 -1
  570. package/src/FHIR-R4/classes/library.ts +2 -1
  571. package/src/FHIR-R4/classes/linkage.ts +2 -1
  572. package/src/FHIR-R4/classes/list.ts +2 -1
  573. package/src/FHIR-R4/classes/location.ts +2 -1
  574. package/src/FHIR-R4/classes/measure.ts +2 -1
  575. package/src/FHIR-R4/classes/measureReport.ts +2 -1
  576. package/src/FHIR-R4/classes/media.ts +2 -1
  577. package/src/FHIR-R4/classes/medication.ts +2 -1
  578. package/src/FHIR-R4/classes/medicationAdministration.ts +2 -1
  579. package/src/FHIR-R4/classes/medicationDispense.ts +2 -1
  580. package/src/FHIR-R4/classes/medicationKnowledge.ts +2 -1
  581. package/src/FHIR-R4/classes/medicationRequest.ts +2 -1
  582. package/src/FHIR-R4/classes/medicationStatement.ts +2 -1
  583. package/src/FHIR-R4/classes/medicinalProduct.ts +2 -1
  584. package/src/FHIR-R4/classes/medicinalProductAuthorization.ts +2 -1
  585. package/src/FHIR-R4/classes/medicinalProductContraindication.ts +2 -1
  586. package/src/FHIR-R4/classes/medicinalProductIndication.ts +2 -1
  587. package/src/FHIR-R4/classes/medicinalProductIngredient.ts +2 -1
  588. package/src/FHIR-R4/classes/medicinalProductInteraction.ts +2 -1
  589. package/src/FHIR-R4/classes/medicinalProductManufactured.ts +2 -1
  590. package/src/FHIR-R4/classes/medicinalProductPackaged.ts +2 -1
  591. package/src/FHIR-R4/classes/medicinalProductPharmaceutical.ts +2 -1
  592. package/src/FHIR-R4/classes/medicinalProductUndesirableEffect.ts +2 -1
  593. package/src/FHIR-R4/classes/messageDefinition.ts +2 -1
  594. package/src/FHIR-R4/classes/messageHeader.ts +2 -1
  595. package/src/FHIR-R4/classes/molecularSequence.ts +2 -1
  596. package/src/FHIR-R4/classes/namingSystem.ts +2 -1
  597. package/src/FHIR-R4/classes/nutritionOrder.ts +2 -1
  598. package/src/FHIR-R4/classes/observation.ts +2 -1
  599. package/src/FHIR-R4/classes/observationDefinition.ts +2 -1
  600. package/src/FHIR-R4/classes/operationDefinition.ts +2 -1
  601. package/src/FHIR-R4/classes/operationOutcome.ts +2 -1
  602. package/src/FHIR-R4/classes/organization.ts +2 -1
  603. package/src/FHIR-R4/classes/organizationAffiliation.ts +2 -1
  604. package/src/FHIR-R4/classes/patient.ts +2 -1
  605. package/src/FHIR-R4/classes/paymentNotice.ts +2 -1
  606. package/src/FHIR-R4/classes/paymentReconciliation.ts +2 -1
  607. package/src/FHIR-R4/classes/person.ts +2 -1
  608. package/src/FHIR-R4/classes/planDefinition.ts +2 -1
  609. package/src/FHIR-R4/classes/practitioner.ts +2 -1
  610. package/src/FHIR-R4/classes/practitionerRole.ts +2 -1
  611. package/src/FHIR-R4/classes/procedure.ts +2 -1
  612. package/src/FHIR-R4/classes/provenance.ts +2 -1
  613. package/src/FHIR-R4/classes/questionnaire.ts +2 -1
  614. package/src/FHIR-R4/classes/questionnaireResponse.ts +2 -1
  615. package/src/FHIR-R4/classes/relatedPerson.ts +2 -1
  616. package/src/FHIR-R4/classes/requestGroup.ts +2 -1
  617. package/src/FHIR-R4/classes/researchDefinition.ts +2 -1
  618. package/src/FHIR-R4/classes/researchElementDefinition.ts +2 -1
  619. package/src/FHIR-R4/classes/researchStudy.ts +2 -1
  620. package/src/FHIR-R4/classes/researchSubject.ts +2 -1
  621. package/src/FHIR-R4/classes/riskAssessment.ts +2 -1
  622. package/src/FHIR-R4/classes/riskEvidenceSynthesis.ts +2 -1
  623. package/src/FHIR-R4/classes/schedule.ts +2 -1
  624. package/src/FHIR-R4/classes/searchParameter.ts +2 -1
  625. package/src/FHIR-R4/classes/serviceRequest.ts +2 -1
  626. package/src/FHIR-R4/classes/slot.ts +2 -1
  627. package/src/FHIR-R4/classes/specimen.ts +2 -1
  628. package/src/FHIR-R4/classes/specimenDefinition.ts +2 -1
  629. package/src/FHIR-R4/classes/structureDefinition.ts +2 -1
  630. package/src/FHIR-R4/classes/structureMap.ts +2 -1
  631. package/src/FHIR-R4/classes/subscription.ts +2 -1
  632. package/src/FHIR-R4/classes/substance.ts +2 -1
  633. package/src/FHIR-R4/classes/substanceNucleicAcid.ts +2 -1
  634. package/src/FHIR-R4/classes/substancePolymer.ts +2 -1
  635. package/src/FHIR-R4/classes/substanceProtein.ts +2 -1
  636. package/src/FHIR-R4/classes/substanceReferenceInformation.ts +2 -1
  637. package/src/FHIR-R4/classes/substanceSourceMaterial.ts +2 -1
  638. package/src/FHIR-R4/classes/substanceSpecification.ts +2 -1
  639. package/src/FHIR-R4/classes/supplyDelivery.ts +2 -1
  640. package/src/FHIR-R4/classes/supplyRequest.ts +2 -1
  641. package/src/FHIR-R4/classes/task.ts +2 -1
  642. package/src/FHIR-R4/classes/terminologyCapabilities.ts +2 -1
  643. package/src/FHIR-R4/classes/testReport.ts +2 -1
  644. package/src/FHIR-R4/classes/testScript.ts +2 -1
  645. package/src/FHIR-R4/classes/valueSet.ts +2 -1
  646. package/src/FHIR-R4/classes/verificationResult.ts +2 -1
  647. package/src/FHIR-R4/classes/visionPrescription.ts +2 -1
  648. package/src/index.ts +12 -1
  649. package/src/library/BundleUtils/BundleUtils.spec.ts +26 -39
  650. package/src/library/BundleUtils/BundleUtils.ts +43 -29
  651. package/src/library/PatchUtils/PatchUtils.spec.ts +173 -129
  652. package/src/library/PatchUtils/PatchUtils.ts +39 -52
  653. package/src/library/QueryBuilder/QueryBuilder.spec.ts +54 -51
  654. package/src/library/QueryBuilder/QueryBuilder.ts +41 -31
  655. package/src/library/ResourceUtils/ResourceUtils.spec.ts +140 -159
  656. package/src/library/ResourceUtils/ResourceUtils.ts +37 -27
  657. package/src/library/constants.ts +17 -17
  658. package/src/library/dataTypes.ts +7 -7
  659. package/src/test-resources/CareTeam-R4-contained.json +81 -0
  660. package/tsconfig.json +25 -2
@@ -1,4 +1,4 @@
1
- import { CodingKeys, IdentifierKeys } from "../dataTypes";
1
+ import { CodingKeys, IdentifierKeys } from '../dataTypes';
2
2
 
3
3
  export class ResourceUtils {
4
4
  /**
@@ -8,94 +8,103 @@ export class ResourceUtils {
8
8
  * @returns json property if it exists
9
9
  * @limitation currently just supports get for top level property on resource
10
10
  */
11
- getResourceProperty(inputJson: object, propertyName: string) {
11
+ getResourceProperty(inputJson: Record<string, any>, propertyName: string) {
12
12
  let resourcePropertyValue = null;
13
- if (inputJson.hasOwnProperty(propertyName)) {
13
+ if (Object.prototype.hasOwnProperty.call(inputJson, propertyName)) {
14
14
  resourcePropertyValue = inputJson[propertyName];
15
15
  }
16
16
  return resourcePropertyValue;
17
17
  }
18
18
 
19
19
  /**
20
+ * Get identifiers from a list filtered by property value
20
21
  *
22
+ * @template T - The identifier type to return (defaults to any for backward compatibility)
21
23
  * @param identifierList list of identifiers
22
24
  * @param propertyToCompare identifier property to compare
23
25
  * @param propertyValue value we want to compare against
24
26
  * @returns array of matches
25
27
  * @limitations currently does not work with identifier.type, identifier.period & identifier.assigner
26
28
  */
27
- getIdentifiersByProperty(
28
- identifierList: any[],
29
+ getIdentifiersByProperty<T = any>(
30
+ identifierList: any[] | null,
29
31
  propertyToCompare: IdentifierKeys,
30
32
  propertyValue: any[IdentifierKeys]
31
- ): any[] {
33
+ ): T[] {
32
34
  return identifierList?.length
33
35
  ? identifierList.filter((x) => x[propertyToCompare] === propertyValue)
34
36
  : [];
35
37
  }
36
38
 
37
39
  /**
40
+ * Get extensions from a list filtered by URL
38
41
  *
42
+ * @template T - The extension type to return (defaults to any for backward compatibility)
39
43
  * @param extensionList list of extensions
40
44
  * @param extensionUrl Extension.url to compare
41
45
  * @returns array of matches
42
46
  */
43
- getExtensionsByUrl(extensionList: any[], extensionUrl: string): any[] {
44
- return extensionList?.length
45
- ? extensionList.filter((x) => x["url"] === extensionUrl)
46
- : [];
47
+ getExtensionsByUrl<T = any>(extensionList: any[] | null, extensionUrl: string): T[] {
48
+ return extensionList?.length ? extensionList.filter((x) => x['url'] === extensionUrl) : [];
47
49
  }
48
50
 
49
51
  /**
52
+ * Get codings from a list filtered by property value
50
53
  *
54
+ * @template T - The coding type to return (defaults to any for backward compatibility)
51
55
  * @param codingList list of codings
52
56
  * @param propertyToCompare coding property to compare
53
57
  * @param propertyValue value we want to compare against string or boolean
54
58
  * @returns array of matches
55
59
  */
56
- getCodingsByProperty(
57
- codingList: any[],
60
+ getCodingsByProperty<T = any>(
61
+ codingList: any[] | null,
58
62
  propertyToCompare: CodingKeys,
59
63
  propertyValue: any[CodingKeys]
60
- ): any[] {
64
+ ): T[] {
61
65
  return codingList?.length
62
66
  ? codingList.filter((x) => x[propertyToCompare] === propertyValue)
63
67
  : [];
64
68
  }
65
69
 
66
70
  /**
71
+ * Get values at a specific path in a FHIR resource
67
72
  *
73
+ * @template T - The value type to return (defaults to any for backward compatibility)
68
74
  * @param resource resource for which path needs to be validated
69
- * @param elementPath path to validate in resource
75
+ * @param elementPath path to validate in resource (e.g., "Patient.name.given")
70
76
  * @returns array of elements found at the provided path
71
77
  */
72
- getValuesAtResourcePath(resource: any, elementPath: string): any[] {
78
+ getValuesAtResourcePath<T = any>(resource: any, elementPath: string): T[] {
73
79
  const pathSections = elementPath.split('.');
74
- if (!resource || (resource.resourceType !== pathSections[0])) return [];
80
+ if (!resource || resource.resourceType !== pathSections[0]) {
81
+ return [];
82
+ }
75
83
  return this.getValuesAtResourcePathInner(resource, pathSections);
76
84
  }
77
85
 
78
86
  private getValuesAtResourcePathInner(resource: any, pathSections: string[]): any[] {
79
- let resourcePathValue;
87
+ let resourcePathValue: any;
80
88
  for (let index = 1; index < pathSections.length; index++) {
81
- const subPaths = pathSections[index];
89
+ const subPaths: string = pathSections[index] ?? '';
82
90
  resourcePathValue = resourcePathValue ? resourcePathValue[subPaths] : resource[subPaths];
83
91
  if (resourcePathValue) {
84
92
  if (this.isPrimitive(resourcePathValue) || pathSections.length === 2) {
85
93
  return Array.isArray(resourcePathValue) ? [...resourcePathValue] : [resourcePathValue];
86
94
  } else if (Array.isArray(resourcePathValue) && resourcePathValue.length > 0) {
87
- let resultSet = [];
95
+ const resultSet = [];
88
96
  for (let subPathIndex = 0; subPathIndex < resourcePathValue.length; subPathIndex++) {
89
97
  const subPathValue = resourcePathValue[subPathIndex];
90
98
  if (this.isPrimitive(subPathValue)) {
91
99
  resultSet.push(subPathValue);
92
- }
93
- else {
94
- resultSet.push(...this.getValuesAtResourcePathInner(subPathValue, pathSections.slice(index)));
100
+ } else {
101
+ resultSet.push(
102
+ ...this.getValuesAtResourcePathInner(subPathValue, pathSections.slice(index))
103
+ );
95
104
  }
96
105
  }
97
106
  return resultSet;
98
- } else if (typeof (resourcePathValue) === 'object') {
107
+ } else if (typeof resourcePathValue === 'object') {
99
108
  return this.getValuesAtResourcePathInner(resourcePathValue, pathSections.slice(index));
100
109
  }
101
110
  } else {
@@ -106,7 +115,7 @@ export class ResourceUtils {
106
115
  }
107
116
 
108
117
  private isPrimitive(value: any) {
109
- return typeof (value) === "boolean" || typeof (value) === "string";
118
+ return typeof value === 'boolean' || typeof value === 'string';
110
119
  }
111
120
 
112
121
  /**
@@ -116,10 +125,11 @@ export class ResourceUtils {
116
125
  getAllReferencesFromResource(resource: any): string[] {
117
126
  const stringifiedResource = JSON.stringify(resource);
118
127
  const referenceJsonString = '"reference":';
119
- let references = [];
128
+ const references = [];
120
129
  let cursor = stringifiedResource.indexOf(referenceJsonString, 0);
121
130
  while (cursor > -1) {
122
- const referenceStart = stringifiedResource.indexOf(referenceJsonString, cursor) + referenceJsonString.length;
131
+ const referenceStart =
132
+ stringifiedResource.indexOf(referenceJsonString, cursor) + referenceJsonString.length;
123
133
  const referenceEnd = stringifiedResource.indexOf('"', referenceStart + 1);
124
134
  const reference = stringifiedResource.substring(referenceStart, referenceEnd);
125
135
  // this means the reference ends started reading from start again
@@ -131,4 +141,4 @@ export class ResourceUtils {
131
141
  }
132
142
  return references;
133
143
  }
134
- }
144
+ }
@@ -1,27 +1,27 @@
1
1
  export enum SORT_ORDER {
2
- ASCENDING,
3
- DESCENDING
2
+ ASCENDING,
3
+ DESCENDING,
4
4
  }
5
5
 
6
6
  export enum PATCH_DATATYPE {
7
- CODE = "valueCode",
8
- DATE = "valueDate",
9
- DATE_TIME = "valueDateTime",
10
- BOOLEAN = "valueBoolean",
11
- CODEABLE_CONCEPT = "valueCodeableConcept",
12
- CODING = "valueCoding",
13
- IDENTIFIER = "valueIdentifier",
14
- HUMAN_NAME = "valueHumanName",
15
- STRING = "valueString",
16
- ADDRESS = "valueAddress",
17
- REFERENCE = "valueReference"
7
+ CODE = 'valueCode',
8
+ DATE = 'valueDate',
9
+ DATE_TIME = 'valueDateTime',
10
+ BOOLEAN = 'valueBoolean',
11
+ CODEABLE_CONCEPT = 'valueCodeableConcept',
12
+ CODING = 'valueCoding',
13
+ IDENTIFIER = 'valueIdentifier',
14
+ HUMAN_NAME = 'valueHumanName',
15
+ STRING = 'valueString',
16
+ ADDRESS = 'valueAddress',
17
+ REFERENCE = 'valueReference',
18
18
  }
19
19
 
20
20
  export interface PatchAddValueParams {
21
- value: any;
22
- valueDataType: PATCH_DATATYPE;
21
+ value: any;
22
+ valueDataType: PATCH_DATATYPE;
23
23
  }
24
24
 
25
25
  export interface PatchAddBackboneElementParams extends PatchAddValueParams {
26
- backBoneElementProperty: string;
27
- }
26
+ backBoneElementProperty: string;
27
+ }
@@ -1,12 +1,12 @@
1
- import { fhirR5 } from "..";
2
- import * as DSTU2 from "../FHIR-DSTU2";
3
- import * as fhirR3 from "../FHIR-R3";
4
- import { Coding as r4Coding } from "../FHIR-R4/classes/coding";
5
- import { Extension as r4Extension } from "../FHIR-R4/classes/extension";
6
- import { Identifier as r4Identifier } from "../FHIR-R4/classes/identifier";
1
+ import { fhirR5 } from '..';
2
+ import * as DSTU2 from '../FHIR-DSTU2';
3
+ import * as fhirR3 from '../FHIR-R3';
4
+ import { Coding as r4Coding } from '../FHIR-R4/classes/coding';
5
+ import { Extension as r4Extension } from '../FHIR-R4/classes/extension';
6
+ import { Identifier as r4Identifier } from '../FHIR-R4/classes/identifier';
7
7
 
8
8
  export type Identifier = r4Identifier & fhirR3.Identifier & DSTU2.Identifier & fhirR5.Identifier;
9
9
  export type IdentifierKeys = keyof Identifier;
10
10
  export type Extension = r4Extension & fhirR3.Extension & DSTU2.Extension & fhirR5.Extension;
11
11
  export type Coding = r4Coding & fhirR3.Coding & DSTU2.Coding & fhirR5.Coding;
12
- export type CodingKeys = keyof Coding;
12
+ export type CodingKeys = keyof Coding;
@@ -0,0 +1,81 @@
1
+ {
2
+ "resourceType": "CareTeam",
3
+ "id": "example",
4
+ "text": {
5
+ "status": "generated",
6
+ "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Care Team</div>"
7
+ },
8
+ "contained": [
9
+ {
10
+ "resourceType": "Observation",
11
+ "id": "obs1",
12
+ "basedOn": {
13
+ "reference": "CarePlan/123"
14
+ },
15
+ "status": "registered"
16
+ }
17
+ ],
18
+ "identifier": [
19
+ {
20
+ "value": "12345"
21
+ }
22
+ ],
23
+ "status": "active",
24
+ "category": [
25
+ {
26
+ "coding": [
27
+ {
28
+ "system": "http://loinc.org",
29
+ "code": "LA27976-2",
30
+ "display": "Encounter-focused care team"
31
+ }
32
+ ]
33
+ }
34
+ ],
35
+ "name": "Peter James Charlmers Care Plan for Inpatient Encounter",
36
+ "subject": {
37
+ "reference": "Patient/example",
38
+ "display": "Peter James Chalmers"
39
+ },
40
+ "encounter": {
41
+ "reference": "Encounter/example"
42
+ },
43
+ "period": {
44
+ "end": "2013-01-01"
45
+ },
46
+ "participant": [
47
+ {
48
+ "role": [
49
+ {
50
+ "text": "responsiblePerson"
51
+ }
52
+ ],
53
+ "member": {
54
+ "reference": "Patient/example",
55
+ "display": "Peter James Chalmers"
56
+ }
57
+ },
58
+ {
59
+ "role": [
60
+ {
61
+ "text": "adviser"
62
+ }
63
+ ],
64
+ "member": {
65
+ "reference": "#pr1",
66
+ "display": "Dorothy Dietition"
67
+ },
68
+ "onBehalfOf": {
69
+ "reference": "Organization/f001"
70
+ },
71
+ "period": {
72
+ "end": "2013-01-01"
73
+ }
74
+ }
75
+ ],
76
+ "managingOrganization": [
77
+ {
78
+ "reference": "Organization/f001"
79
+ }
80
+ ]
81
+ }
package/tsconfig.json CHANGED
@@ -6,12 +6,35 @@
6
6
  "outDir": "./dist",
7
7
  "lib": [
8
8
  "es2017"
9
- ]
9
+ ],
10
+ "moduleResolution": "node",
11
+ "esModuleInterop": true,
12
+ "skipLibCheck": true,
13
+ /* Strict Type-Checking Options */
14
+ "strict": true,
15
+ "noImplicitAny": true,
16
+ "strictNullChecks": true,
17
+ "strictFunctionTypes": true,
18
+ "strictBindCallApply": true,
19
+ "strictPropertyInitialization": false, // Disabled for FHIR DTOs with optional properties
20
+ "noImplicitThis": true,
21
+ "alwaysStrict": true,
22
+ /* Additional Checks */
23
+ "noUnusedLocals": false, // Disabled due to auto-generated FHIR classes
24
+ "noUnusedParameters": false, // Disabled due to auto-generated FHIR classes
25
+ "noImplicitReturns": true,
26
+ "noFallthroughCasesInSwitch": true,
27
+ "noUncheckedIndexedAccess": true // Adds undefined to index signatures for safety
10
28
  },
11
29
  "include": [
12
30
  "src/**/*"
13
31
  ],
14
32
  "exclude": [
15
33
  "node_modules"
16
- ]
34
+ ],
35
+ "ts-node": {
36
+ "compilerOptions": {
37
+ "module": "commonjs"
38
+ }
39
+ }
17
40
  }