@smile-cdr/fhirts 1.4.9 → 2.0.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 (322) hide show
  1. package/.github/workflows/npm-publish.yml +4 -0
  2. package/.github/workflows/pr-build.yml +31 -0
  3. package/.nycrc +7 -0
  4. package/CHANGELOG.md +14 -0
  5. package/GETTINGSTARTED.md +51 -0
  6. package/dist/FHIR-R3.d.ts +1 -1
  7. package/dist/FHIR-R4/classes/account.d.ts +1 -1
  8. package/dist/FHIR-R4/classes/activityDefinition.d.ts +1 -1
  9. package/dist/FHIR-R4/classes/adverseEvent.d.ts +1 -1
  10. package/dist/FHIR-R4/classes/allergyIntolerance.d.ts +1 -1
  11. package/dist/FHIR-R4/classes/appointment.d.ts +1 -1
  12. package/dist/FHIR-R4/classes/appointmentResponse.d.ts +1 -1
  13. package/dist/FHIR-R4/classes/auditEvent.d.ts +1 -1
  14. package/dist/FHIR-R4/classes/base64Binary.d.ts +1 -1
  15. package/dist/FHIR-R4/classes/baseResource.d.ts +1 -0
  16. package/dist/FHIR-R4/classes/baseResource.js +4 -0
  17. package/dist/FHIR-R4/classes/binary.d.ts +1 -1
  18. package/dist/FHIR-R4/classes/biologicallyDerivedProduct.d.ts +1 -1
  19. package/dist/FHIR-R4/classes/bodyStructure.d.ts +1 -1
  20. package/dist/FHIR-R4/classes/bundle.d.ts +1 -1
  21. package/dist/FHIR-R4/classes/canonical.d.ts +1 -1
  22. package/dist/FHIR-R4/classes/capabilityStatement.d.ts +1 -1
  23. package/dist/FHIR-R4/classes/capabilityStatementResource.d.ts +2 -2
  24. package/dist/FHIR-R4/classes/carePlan.d.ts +1 -1
  25. package/dist/FHIR-R4/classes/careTeam.d.ts +1 -1
  26. package/dist/FHIR-R4/classes/catalogEntry.d.ts +1 -1
  27. package/dist/FHIR-R4/classes/chargeItem.d.ts +1 -1
  28. package/dist/FHIR-R4/classes/chargeItemDefinition.d.ts +1 -1
  29. package/dist/FHIR-R4/classes/claim.d.ts +1 -1
  30. package/dist/FHIR-R4/classes/claimResponse.d.ts +1 -1
  31. package/dist/FHIR-R4/classes/clinicalImpression.d.ts +1 -1
  32. package/dist/FHIR-R4/classes/code.d.ts +1 -1
  33. package/dist/FHIR-R4/classes/codeSystem.d.ts +1 -1
  34. package/dist/FHIR-R4/classes/communication.d.ts +1 -1
  35. package/dist/FHIR-R4/classes/communicationRequest.d.ts +1 -1
  36. package/dist/FHIR-R4/classes/compartmentDefinition.d.ts +1 -1
  37. package/dist/FHIR-R4/classes/compartmentDefinitionResource.d.ts +2 -13
  38. package/dist/FHIR-R4/classes/composition.d.ts +1 -1
  39. package/dist/FHIR-R4/classes/conceptMap.d.ts +1 -1
  40. package/dist/FHIR-R4/classes/condition.d.ts +1 -1
  41. package/dist/FHIR-R4/classes/consent.d.ts +1 -1
  42. package/dist/FHIR-R4/classes/contract.d.ts +1 -1
  43. package/dist/FHIR-R4/classes/coverage.d.ts +1 -1
  44. package/dist/FHIR-R4/classes/coverageEligibilityRequest.d.ts +1 -1
  45. package/dist/FHIR-R4/classes/coverageEligibilityResponse.d.ts +1 -1
  46. package/dist/FHIR-R4/classes/date.d.ts +1 -1
  47. package/dist/FHIR-R4/classes/dateTime.d.ts +1 -1
  48. package/dist/FHIR-R4/classes/decimal.d.ts +1 -1
  49. package/dist/FHIR-R4/classes/detectedIssue.d.ts +1 -1
  50. package/dist/FHIR-R4/classes/device.d.ts +1 -1
  51. package/dist/FHIR-R4/classes/deviceDefinition.d.ts +1 -1
  52. package/dist/FHIR-R4/classes/deviceMetric.d.ts +1 -1
  53. package/dist/FHIR-R4/classes/deviceRequest.d.ts +1 -1
  54. package/dist/FHIR-R4/classes/deviceUseStatement.d.ts +1 -1
  55. package/dist/FHIR-R4/classes/diagnosticReport.d.ts +1 -1
  56. package/dist/FHIR-R4/classes/documentManifest.d.ts +1 -1
  57. package/dist/FHIR-R4/classes/documentReference.d.ts +1 -1
  58. package/dist/FHIR-R4/classes/encounter.d.ts +1 -1
  59. package/dist/FHIR-R4/classes/endpoint.d.ts +1 -1
  60. package/dist/FHIR-R4/classes/enrollmentRequest.d.ts +1 -1
  61. package/dist/FHIR-R4/classes/enrollmentResponse.d.ts +1 -1
  62. package/dist/FHIR-R4/classes/episodeOfCare.d.ts +1 -1
  63. package/dist/FHIR-R4/classes/eventDefinition.d.ts +1 -1
  64. package/dist/FHIR-R4/classes/evidence.d.ts +1 -1
  65. package/dist/FHIR-R4/classes/evidenceVariable.d.ts +1 -1
  66. package/dist/FHIR-R4/classes/exampleScenario.d.ts +1 -1
  67. package/dist/FHIR-R4/classes/exampleScenarioInstance.d.ts +3 -14
  68. package/dist/FHIR-R4/classes/exampleScenarioVersion.d.ts +2 -2
  69. package/dist/FHIR-R4/classes/explanationOfBenefit.d.ts +1 -1
  70. package/dist/FHIR-R4/classes/familyMemberHistory.d.ts +1 -1
  71. package/dist/FHIR-R4/classes/flag.d.ts +1 -1
  72. package/dist/FHIR-R4/classes/goal.d.ts +1 -1
  73. package/dist/FHIR-R4/classes/graphDefinition.d.ts +3 -2
  74. package/dist/FHIR-R4/classes/group.d.ts +1 -1
  75. package/dist/FHIR-R4/classes/guidanceResponse.d.ts +1 -1
  76. package/dist/FHIR-R4/classes/healthcareService.d.ts +1 -1
  77. package/dist/FHIR-R4/classes/id.d.ts +1 -1
  78. package/dist/FHIR-R4/classes/imagingStudy.d.ts +1 -1
  79. package/dist/FHIR-R4/classes/immunization.d.ts +1 -1
  80. package/dist/FHIR-R4/classes/immunizationEvaluation.d.ts +1 -1
  81. package/dist/FHIR-R4/classes/immunizationRecommendation.d.ts +1 -1
  82. package/dist/FHIR-R4/classes/implementationGuide.d.ts +1 -1
  83. package/dist/FHIR-R4/classes/implementationGuideGlobal.d.ts +2 -2
  84. package/dist/FHIR-R4/classes/instant.d.ts +1 -1
  85. package/dist/FHIR-R4/classes/insurancePlan.d.ts +1 -1
  86. package/dist/FHIR-R4/classes/integer.d.ts +1 -1
  87. package/dist/FHIR-R4/classes/invoice.d.ts +1 -1
  88. package/dist/FHIR-R4/classes/library.d.ts +1 -1
  89. package/dist/FHIR-R4/classes/linkage.d.ts +1 -1
  90. package/dist/FHIR-R4/classes/list.d.ts +1 -1
  91. package/dist/FHIR-R4/classes/location.d.ts +1 -1
  92. package/dist/FHIR-R4/classes/markdown.d.ts +1 -1
  93. package/dist/FHIR-R4/classes/measure.d.ts +1 -1
  94. package/dist/FHIR-R4/classes/measureReport.d.ts +1 -1
  95. package/dist/FHIR-R4/classes/media.d.ts +1 -1
  96. package/dist/FHIR-R4/classes/medication.d.ts +1 -1
  97. package/dist/FHIR-R4/classes/medicationAdministration.d.ts +1 -1
  98. package/dist/FHIR-R4/classes/medicationDispense.d.ts +1 -1
  99. package/dist/FHIR-R4/classes/medicationKnowledge.d.ts +1 -1
  100. package/dist/FHIR-R4/classes/medicationRequest.d.ts +1 -1
  101. package/dist/FHIR-R4/classes/medicationStatement.d.ts +1 -1
  102. package/dist/FHIR-R4/classes/messageDefinition.d.ts +1 -1
  103. package/dist/FHIR-R4/classes/messageDefinitionFocus.d.ts +2 -2
  104. package/dist/FHIR-R4/classes/messageHeader.d.ts +1 -1
  105. package/dist/FHIR-R4/classes/modelBoolean.d.ts +1 -1
  106. package/dist/FHIR-R4/classes/modelString.d.ts +1 -1
  107. package/dist/FHIR-R4/classes/molecularSequence.d.ts +1 -1
  108. package/dist/FHIR-R4/classes/namingSystem.d.ts +1 -1
  109. package/dist/FHIR-R4/classes/nutritionOrder.d.ts +1 -1
  110. package/dist/FHIR-R4/classes/observation.d.ts +1 -1
  111. package/dist/FHIR-R4/classes/observationDefinition.d.ts +1 -1
  112. package/dist/FHIR-R4/classes/operationDefinition.d.ts +3 -2
  113. package/dist/FHIR-R4/classes/operationOutcome.d.ts +1 -1
  114. package/dist/FHIR-R4/classes/organization.d.ts +1 -1
  115. package/dist/FHIR-R4/classes/organizationAffiliation.d.ts +1 -1
  116. package/dist/FHIR-R4/classes/parameters.d.ts +1 -1
  117. package/dist/FHIR-R4/classes/parametersParameter.d.ts +2 -2
  118. package/dist/FHIR-R4/classes/patient.d.ts +1 -1
  119. package/dist/FHIR-R4/classes/paymentNotice.d.ts +1 -1
  120. package/dist/FHIR-R4/classes/paymentReconciliation.d.ts +1 -1
  121. package/dist/FHIR-R4/classes/person.d.ts +1 -1
  122. package/dist/FHIR-R4/classes/planDefinition.d.ts +1 -1
  123. package/dist/FHIR-R4/classes/positiveInt.d.ts +1 -1
  124. package/dist/FHIR-R4/classes/practitioner.d.ts +1 -1
  125. package/dist/FHIR-R4/classes/practitionerRole.d.ts +1 -1
  126. package/dist/FHIR-R4/classes/procedure.d.ts +1 -1
  127. package/dist/FHIR-R4/classes/provenance.d.ts +1 -1
  128. package/dist/FHIR-R4/classes/questionnaire.d.ts +3 -2
  129. package/dist/FHIR-R4/classes/questionnaireResponse.d.ts +1 -1
  130. package/dist/FHIR-R4/classes/relatedPerson.d.ts +1 -1
  131. package/dist/FHIR-R4/classes/requestGroup.d.ts +1 -1
  132. package/dist/FHIR-R4/classes/researchDefinition.d.ts +1 -1
  133. package/dist/FHIR-R4/classes/researchElementDefinition.d.ts +1 -1
  134. package/dist/FHIR-R4/classes/researchStudy.d.ts +1 -1
  135. package/dist/FHIR-R4/classes/researchSubject.d.ts +1 -1
  136. package/dist/FHIR-R4/classes/resource.d.ts +127 -19
  137. package/dist/FHIR-R4/classes/resource.js +0 -4
  138. package/dist/FHIR-R4/classes/resourceList.d.ts +1 -2
  139. package/dist/FHIR-R4/classes/resourceList.js +0 -4
  140. package/dist/FHIR-R4/classes/riskAssessment.d.ts +1 -1
  141. package/dist/FHIR-R4/classes/schedule.d.ts +1 -1
  142. package/dist/FHIR-R4/classes/searchParameter.d.ts +6 -5
  143. package/dist/FHIR-R4/classes/serviceRequest.d.ts +1 -1
  144. package/dist/FHIR-R4/classes/slot.d.ts +1 -1
  145. package/dist/FHIR-R4/classes/specimen.d.ts +1 -1
  146. package/dist/FHIR-R4/classes/specimenDefinition.d.ts +1 -1
  147. package/dist/FHIR-R4/classes/structureDefinition.d.ts +1 -1
  148. package/dist/FHIR-R4/classes/structureMap.d.ts +1 -1
  149. package/dist/FHIR-R4/classes/subscription.d.ts +1 -1
  150. package/dist/FHIR-R4/classes/substance.d.ts +1 -1
  151. package/dist/FHIR-R4/classes/supplyDelivery.d.ts +1 -1
  152. package/dist/FHIR-R4/classes/supplyRequest.d.ts +1 -1
  153. package/dist/FHIR-R4/classes/task.d.ts +1 -1
  154. package/dist/FHIR-R4/classes/terminologyCapabilities.d.ts +1 -1
  155. package/dist/FHIR-R4/classes/testReport.d.ts +1 -1
  156. package/dist/FHIR-R4/classes/testScript.d.ts +1 -1
  157. package/dist/FHIR-R4/classes/time.d.ts +1 -1
  158. package/dist/FHIR-R4/classes/unsignedInt.d.ts +1 -1
  159. package/dist/FHIR-R4/classes/uri.d.ts +1 -1
  160. package/dist/FHIR-R4/classes/url.d.ts +1 -1
  161. package/dist/FHIR-R4/classes/valueSet.d.ts +1 -1
  162. package/dist/FHIR-R4/classes/verificationResult.d.ts +1 -1
  163. package/dist/FHIR-R4/classes/visionPrescription.d.ts +1 -1
  164. package/dist/FHIR-R4/classes/xhtml.d.ts +1 -1
  165. package/dist/index.d.ts +3 -1
  166. package/dist/index.js +5 -1
  167. package/dist/library/BundleUtilities/BundleUtilities.d.ts +10 -0
  168. package/dist/library/BundleUtilities/BundleUtilities.js +16 -0
  169. package/dist/library/BundleUtilities/BundleUtilities.spec.d.ts +1 -0
  170. package/dist/library/BundleUtilities/BundleUtilities.spec.js +26 -0
  171. package/dist/library/ResourceUtilities/ResourceUtilities.d.ts +35 -0
  172. package/dist/library/ResourceUtilities/ResourceUtilities.js +51 -0
  173. package/dist/library/ResourceUtilities/ResourceUtilities.spec.d.ts +1 -0
  174. package/dist/library/ResourceUtilities/ResourceUtilities.spec.js +180 -0
  175. package/package.json +13 -2
  176. package/spec/support/jasmine.json +10 -0
  177. package/src/FHIR-R4/classes/account.ts +1 -1
  178. package/src/FHIR-R4/classes/activityDefinition.ts +1 -1
  179. package/src/FHIR-R4/classes/adverseEvent.ts +1 -1
  180. package/src/FHIR-R4/classes/allergyIntolerance.ts +1 -1
  181. package/src/FHIR-R4/classes/appointment.ts +1 -1
  182. package/src/FHIR-R4/classes/appointmentResponse.ts +1 -1
  183. package/src/FHIR-R4/classes/auditEvent.ts +1 -1
  184. package/src/FHIR-R4/classes/baseResource.ts +24 -0
  185. package/src/FHIR-R4/classes/basic.ts +1 -1
  186. package/src/FHIR-R4/classes/binary.ts +1 -1
  187. package/src/FHIR-R4/classes/biologicallyDerivedProduct.ts +1 -1
  188. package/src/FHIR-R4/classes/bodyStructure.ts +1 -1
  189. package/src/FHIR-R4/classes/bundle.ts +1 -1
  190. package/src/FHIR-R4/classes/capabilityStatement.ts +1 -1
  191. package/src/FHIR-R4/classes/capabilityStatementResource.ts +3 -2
  192. package/src/FHIR-R4/classes/carePlan.ts +1 -1
  193. package/src/FHIR-R4/classes/careTeam.ts +1 -1
  194. package/src/FHIR-R4/classes/catalogEntry.ts +1 -1
  195. package/src/FHIR-R4/classes/chargeItem.ts +1 -1
  196. package/src/FHIR-R4/classes/chargeItemDefinition.ts +1 -1
  197. package/src/FHIR-R4/classes/claim.ts +1 -1
  198. package/src/FHIR-R4/classes/claimResponse.ts +1 -1
  199. package/src/FHIR-R4/classes/clinicalImpression.ts +1 -1
  200. package/src/FHIR-R4/classes/codeSystem.ts +1 -1
  201. package/src/FHIR-R4/classes/communication.ts +1 -1
  202. package/src/FHIR-R4/classes/communicationRequest.ts +1 -1
  203. package/src/FHIR-R4/classes/compartmentDefinition.ts +1 -1
  204. package/src/FHIR-R4/classes/compartmentDefinitionResource.ts +3 -2
  205. package/src/FHIR-R4/classes/composition.ts +1 -1
  206. package/src/FHIR-R4/classes/conceptMap.ts +1 -1
  207. package/src/FHIR-R4/classes/condition.ts +1 -1
  208. package/src/FHIR-R4/classes/consent.ts +1 -1
  209. package/src/FHIR-R4/classes/contract.ts +1 -1
  210. package/src/FHIR-R4/classes/coverage.ts +1 -1
  211. package/src/FHIR-R4/classes/coverageEligibilityRequest.ts +1 -1
  212. package/src/FHIR-R4/classes/coverageEligibilityResponse.ts +1 -1
  213. package/src/FHIR-R4/classes/detectedIssue.ts +1 -1
  214. package/src/FHIR-R4/classes/device.ts +1 -1
  215. package/src/FHIR-R4/classes/deviceDefinition.ts +1 -1
  216. package/src/FHIR-R4/classes/deviceMetric.ts +1 -1
  217. package/src/FHIR-R4/classes/deviceRequest.ts +1 -1
  218. package/src/FHIR-R4/classes/deviceUseStatement.ts +1 -1
  219. package/src/FHIR-R4/classes/diagnosticReport.ts +1 -1
  220. package/src/FHIR-R4/classes/documentManifest.ts +1 -1
  221. package/src/FHIR-R4/classes/documentReference.ts +1 -1
  222. package/src/FHIR-R4/classes/encounter.ts +1 -1
  223. package/src/FHIR-R4/classes/endpoint.ts +1 -1
  224. package/src/FHIR-R4/classes/enrollmentRequest.ts +1 -1
  225. package/src/FHIR-R4/classes/enrollmentResponse.ts +1 -1
  226. package/src/FHIR-R4/classes/episodeOfCare.ts +1 -1
  227. package/src/FHIR-R4/classes/eventDefinition.ts +1 -1
  228. package/src/FHIR-R4/classes/evidence.ts +1 -1
  229. package/src/FHIR-R4/classes/evidenceVariable.ts +1 -1
  230. package/src/FHIR-R4/classes/exampleScenario.ts +1 -1
  231. package/src/FHIR-R4/classes/exampleScenarioInstance.ts +4 -3
  232. package/src/FHIR-R4/classes/exampleScenarioVersion.ts +3 -3
  233. package/src/FHIR-R4/classes/explanationOfBenefit.ts +1 -1
  234. package/src/FHIR-R4/classes/familyMemberHistory.ts +1 -1
  235. package/src/FHIR-R4/classes/flag.ts +1 -1
  236. package/src/FHIR-R4/classes/goal.ts +1 -1
  237. package/src/FHIR-R4/classes/graphDefinition.ts +4 -3
  238. package/src/FHIR-R4/classes/group.ts +1 -1
  239. package/src/FHIR-R4/classes/guidanceResponse.ts +1 -1
  240. package/src/FHIR-R4/classes/healthcareService.ts +1 -1
  241. package/src/FHIR-R4/classes/imagingStudy.ts +1 -1
  242. package/src/FHIR-R4/classes/immunization.ts +1 -1
  243. package/src/FHIR-R4/classes/immunizationEvaluation.ts +1 -1
  244. package/src/FHIR-R4/classes/immunizationRecommendation.ts +1 -1
  245. package/src/FHIR-R4/classes/implementationGuide.ts +1 -1
  246. package/src/FHIR-R4/classes/implementationGuideGlobal.ts +3 -2
  247. package/src/FHIR-R4/classes/insurancePlan.ts +1 -1
  248. package/src/FHIR-R4/classes/invoice.ts +1 -1
  249. package/src/FHIR-R4/classes/library.ts +1 -1
  250. package/src/FHIR-R4/classes/linkage.ts +1 -1
  251. package/src/FHIR-R4/classes/list.ts +1 -1
  252. package/src/FHIR-R4/classes/location.ts +1 -1
  253. package/src/FHIR-R4/classes/measure.ts +1 -1
  254. package/src/FHIR-R4/classes/measureReport.ts +1 -1
  255. package/src/FHIR-R4/classes/media.ts +1 -1
  256. package/src/FHIR-R4/classes/medication.ts +1 -1
  257. package/src/FHIR-R4/classes/medicationAdministration.ts +1 -1
  258. package/src/FHIR-R4/classes/medicationDispense.ts +1 -1
  259. package/src/FHIR-R4/classes/medicationKnowledge.ts +1 -1
  260. package/src/FHIR-R4/classes/medicationRequest.ts +1 -1
  261. package/src/FHIR-R4/classes/medicationStatement.ts +1 -1
  262. package/src/FHIR-R4/classes/messageDefinition.ts +2 -2
  263. package/src/FHIR-R4/classes/messageDefinitionFocus.ts +3 -2
  264. package/src/FHIR-R4/classes/messageHeader.ts +1 -1
  265. package/src/FHIR-R4/classes/molecularSequence.ts +1 -1
  266. package/src/FHIR-R4/classes/namingSystem.ts +1 -1
  267. package/src/FHIR-R4/classes/nutritionOrder.ts +1 -1
  268. package/src/FHIR-R4/classes/observation.ts +1 -1
  269. package/src/FHIR-R4/classes/observationDefinition.ts +1 -1
  270. package/src/FHIR-R4/classes/operationDefinition.ts +4 -3
  271. package/src/FHIR-R4/classes/operationOutcome.ts +1 -1
  272. package/src/FHIR-R4/classes/organization.ts +1 -1
  273. package/src/FHIR-R4/classes/organizationAffiliation.ts +1 -1
  274. package/src/FHIR-R4/classes/parameters.ts +1 -1
  275. package/src/FHIR-R4/classes/parametersParameter.ts +3 -3
  276. package/src/FHIR-R4/classes/patient.ts +1 -1
  277. package/src/FHIR-R4/classes/paymentNotice.ts +1 -1
  278. package/src/FHIR-R4/classes/paymentReconciliation.ts +1 -1
  279. package/src/FHIR-R4/classes/person.ts +1 -1
  280. package/src/FHIR-R4/classes/planDefinition.ts +1 -1
  281. package/src/FHIR-R4/classes/practitioner.ts +1 -1
  282. package/src/FHIR-R4/classes/practitionerRole.ts +1 -1
  283. package/src/FHIR-R4/classes/procedure.ts +1 -1
  284. package/src/FHIR-R4/classes/provenance.ts +1 -1
  285. package/src/FHIR-R4/classes/questionnaire.ts +4 -3
  286. package/src/FHIR-R4/classes/questionnaireResponse.ts +1 -1
  287. package/src/FHIR-R4/classes/reference.ts +1 -1
  288. package/src/FHIR-R4/classes/relatedPerson.ts +1 -1
  289. package/src/FHIR-R4/classes/requestGroup.ts +1 -1
  290. package/src/FHIR-R4/classes/researchDefinition.ts +1 -1
  291. package/src/FHIR-R4/classes/researchElementDefinition.ts +1 -1
  292. package/src/FHIR-R4/classes/researchStudy.ts +1 -1
  293. package/src/FHIR-R4/classes/researchSubject.ts +1 -1
  294. package/src/FHIR-R4/classes/resource.ts +128 -19
  295. package/src/FHIR-R4/classes/resourceList.ts +1 -2
  296. package/src/FHIR-R4/classes/riskAssessment.ts +1 -1
  297. package/src/FHIR-R4/classes/schedule.ts +1 -1
  298. package/src/FHIR-R4/classes/searchParameter.ts +7 -6
  299. package/src/FHIR-R4/classes/serviceRequest.ts +1 -1
  300. package/src/FHIR-R4/classes/slot.ts +1 -1
  301. package/src/FHIR-R4/classes/specimen.ts +1 -1
  302. package/src/FHIR-R4/classes/specimenDefinition.ts +1 -1
  303. package/src/FHIR-R4/classes/structureDefinition.ts +1 -1
  304. package/src/FHIR-R4/classes/structureMap.ts +1 -1
  305. package/src/FHIR-R4/classes/subscription.ts +1 -1
  306. package/src/FHIR-R4/classes/substance.ts +1 -1
  307. package/src/FHIR-R4/classes/supplyDelivery.ts +1 -1
  308. package/src/FHIR-R4/classes/supplyRequest.ts +1 -1
  309. package/src/FHIR-R4/classes/task.ts +1 -1
  310. package/src/FHIR-R4/classes/terminologyCapabilities.ts +1 -1
  311. package/src/FHIR-R4/classes/testReport.ts +1 -1
  312. package/src/FHIR-R4/classes/testScript.ts +1 -1
  313. package/src/FHIR-R4/classes/valueSet.ts +1 -1
  314. package/src/FHIR-R4/classes/verificationResult.ts +1 -1
  315. package/src/FHIR-R4/classes/visionPrescription.ts +1 -1
  316. package/src/index.ts +3 -1
  317. package/src/library/BundleUtilities/BundleUtilities.spec.ts +29 -0
  318. package/src/library/BundleUtilities/BundleUtilities.ts +16 -0
  319. package/src/library/ResourceUtilities/ResourceUtilities.spec.ts +230 -0
  320. package/src/library/ResourceUtilities/ResourceUtilities.ts +52 -0
  321. package/src/test-resources/Bundle-R4.json +27472 -0
  322. package/src/test-resources/Patient-R4.json +125 -0
@@ -31,7 +31,7 @@ export class BiologicallyDerivedProduct {
31
31
  /**
32
32
  * This is a BiologicallyDerivedProduct resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'BiologicallyDerivedProduct';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -28,7 +28,7 @@ export class BodyStructure {
28
28
  /**
29
29
  * This is a BodyStructure resource
30
30
  */
31
- resourceType: string;
31
+ resourceType: 'BodyStructure';
32
32
  /**
33
33
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
34
34
  */
@@ -24,7 +24,7 @@ export class Bundle {
24
24
  /**
25
25
  * This is a Bundle resource
26
26
  */
27
- resourceType: string;
27
+ resourceType: 'Bundle';
28
28
  /**
29
29
  * A persistent identifier for the bundle that won't change as a bundle is copied from server to server.
30
30
  */
@@ -35,7 +35,7 @@ export class CapabilityStatement {
35
35
  /**
36
36
  * This is a CapabilityStatement resource
37
37
  */
38
- resourceType: string;
38
+ resourceType: 'CapabilityStatement';
39
39
  /**
40
40
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
41
41
  */
@@ -16,12 +16,13 @@ import { CapabilityStatementSearchParam } from './capabilityStatementSearchParam
16
16
  import { Code } from './code';
17
17
  import { Extension } from './extension';
18
18
  import { Markdown } from './markdown';
19
+ import { ResourceList } from './resourceList';
19
20
 
20
21
 
21
22
  /**
22
23
  * A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server for a particular version of FHIR that may be used as a statement of actual server functionality or a statement of required or desired server implementation.
23
24
  */
24
- export class CapabilityStatementResource {
25
+ export class CapabilityStatementResource {
25
26
  /**
26
27
  * Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
27
28
  */
@@ -37,7 +38,7 @@ export class CapabilityStatementResource {
37
38
  /**
38
39
  * A type of resource exposed via the restful class.
39
40
  */
40
- type?: Code;
41
+ type: ResourceList;
41
42
  /**
42
43
  * A specification of the profile that describes the solution's overall support for the resource, including any constraints on cardinality, bindings, lengths or other limitations. See further discussion in [Using Profiles](profiling.html#profile-uses).
43
44
  */
@@ -32,7 +32,7 @@ export class CarePlan {
32
32
  /**
33
33
  * This is a CarePlan resource
34
34
  */
35
- resourceType: string;
35
+ resourceType: 'CarePlan';
36
36
  /**
37
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
38
38
  */
@@ -31,7 +31,7 @@ export class CareTeam {
31
31
  /**
32
32
  * This is a CareTeam resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'CareTeam';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -30,7 +30,7 @@ export class CatalogEntry {
30
30
  /**
31
31
  * This is a CatalogEntry resource
32
32
  */
33
- resourceType: string;
33
+ resourceType: 'CatalogEntry';
34
34
  /**
35
35
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
36
36
  */
@@ -36,7 +36,7 @@ export class ChargeItem {
36
36
  /**
37
37
  * This is a ChargeItem resource
38
38
  */
39
- resourceType: string;
39
+ resourceType: 'ChargeItem';
40
40
  /**
41
41
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
42
42
  */
@@ -35,7 +35,7 @@ export class ChargeItemDefinition {
35
35
  /**
36
36
  * This is a ChargeItemDefinition resource
37
37
  */
38
- resourceType: string;
38
+ resourceType: 'ChargeItemDefinition';
39
39
  /**
40
40
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
41
41
  */
@@ -39,7 +39,7 @@ export class Claim {
39
39
  /**
40
40
  * This is a Claim resource
41
41
  */
42
- resourceType: string;
42
+ resourceType: 'Claim';
43
43
  /**
44
44
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
45
45
  */
@@ -38,7 +38,7 @@ export class ClaimResponse {
38
38
  /**
39
39
  * This is a ClaimResponse resource
40
40
  */
41
- resourceType: string;
41
+ resourceType: 'ClaimResponse';
42
42
  /**
43
43
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
44
44
  */
@@ -32,7 +32,7 @@ export class ClinicalImpression {
32
32
  /**
33
33
  * This is a ClinicalImpression resource
34
34
  */
35
- resourceType: string;
35
+ resourceType: 'ClinicalImpression';
36
36
  /**
37
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
38
38
  */
@@ -35,7 +35,7 @@ export class CodeSystem {
35
35
  /**
36
36
  * This is a CodeSystem resource
37
37
  */
38
- resourceType: string;
38
+ resourceType: 'CodeSystem';
39
39
  /**
40
40
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
41
41
  */
@@ -31,7 +31,7 @@ export class Communication {
31
31
  /**
32
32
  * This is a Communication resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'Communication';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -31,7 +31,7 @@ export class CommunicationRequest {
31
31
  /**
32
32
  * This is a CommunicationRequest resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'CommunicationRequest';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -29,7 +29,7 @@ export class CompartmentDefinition {
29
29
  /**
30
30
  * This is a CompartmentDefinition resource
31
31
  */
32
- resourceType: string;
32
+ resourceType: 'CompartmentDefinition';
33
33
  /**
34
34
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
35
35
  */
@@ -11,12 +11,13 @@
11
11
  */
12
12
  import { Code } from './code';
13
13
  import { Extension } from './extension';
14
+ import { ResourceList } from './resourceList';
14
15
 
15
16
 
16
17
  /**
17
18
  * A compartment definition that defines how resources are accessed on a server.
18
19
  */
19
- export class CompartmentDefinitionResource {
20
+ export class CompartmentDefinitionResource {
20
21
  /**
21
22
  * Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
22
23
  */
@@ -32,7 +33,7 @@ export class CompartmentDefinitionResource {
32
33
  /**
33
34
  * The name of a resource supported by the server.
34
35
  */
35
- code?: Code;
36
+ code: ResourceList;
36
37
  /**
37
38
  * The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.
38
39
  */
@@ -32,7 +32,7 @@ export class Composition {
32
32
  /**
33
33
  * This is a Composition resource
34
34
  */
35
- resourceType: string;
35
+ resourceType: 'Composition';
36
36
  /**
37
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
38
38
  */
@@ -31,7 +31,7 @@ export class ConceptMap {
31
31
  /**
32
32
  * This is a ConceptMap resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'ConceptMap';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -34,7 +34,7 @@ export class Condition {
34
34
  /**
35
35
  * This is a Condition resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'Condition';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -32,7 +32,7 @@ export class Consent {
32
32
  /**
33
33
  * This is a Consent resource
34
34
  */
35
- resourceType: string;
35
+ resourceType: 'Consent';
36
36
  /**
37
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
38
38
  */
@@ -36,7 +36,7 @@ export class Contract {
36
36
  /**
37
37
  * This is a Contract resource
38
38
  */
39
- resourceType: string;
39
+ resourceType: 'Contract';
40
40
  /**
41
41
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
42
42
  */
@@ -31,7 +31,7 @@ export class Coverage {
31
31
  /**
32
32
  * This is a Coverage resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'Coverage';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -32,7 +32,7 @@ export class CoverageEligibilityRequest {
32
32
  /**
33
33
  * This is a CoverageEligibilityRequest resource
34
34
  */
35
- resourceType: string;
35
+ resourceType: 'CoverageEligibilityRequest';
36
36
  /**
37
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
38
38
  */
@@ -31,7 +31,7 @@ export class CoverageEligibilityResponse {
31
31
  /**
32
32
  * This is a CoverageEligibilityResponse resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'CoverageEligibilityResponse';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -30,7 +30,7 @@ export class DetectedIssue {
30
30
  /**
31
31
  * This is a DetectedIssue resource
32
32
  */
33
- resourceType: string;
33
+ resourceType: 'DetectedIssue';
34
34
  /**
35
35
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
36
36
  */
@@ -35,7 +35,7 @@ export class Device {
35
35
  /**
36
36
  * This is a Device resource
37
37
  */
38
- resourceType: string;
38
+ resourceType: 'Device';
39
39
  /**
40
40
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
41
41
  */
@@ -38,7 +38,7 @@ export class DeviceDefinition {
38
38
  /**
39
39
  * This is a DeviceDefinition resource
40
40
  */
41
- resourceType: string;
41
+ resourceType: 'DeviceDefinition';
42
42
  /**
43
43
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
44
44
  */
@@ -29,7 +29,7 @@ export class DeviceMetric {
29
29
  /**
30
30
  * This is a DeviceMetric resource
31
31
  */
32
- resourceType: string;
32
+ resourceType: 'DeviceMetric';
33
33
  /**
34
34
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
35
35
  */
@@ -33,7 +33,7 @@ export class DeviceRequest {
33
33
  /**
34
34
  * This is a DeviceRequest resource
35
35
  */
36
- resourceType: string;
36
+ resourceType: 'DeviceRequest';
37
37
  /**
38
38
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
39
39
  */
@@ -31,7 +31,7 @@ export class DeviceUseStatement {
31
31
  /**
32
32
  * This is a DeviceUseStatement resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'DeviceUseStatement';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -31,7 +31,7 @@ export class DiagnosticReport {
31
31
  /**
32
32
  * This is a DiagnosticReport resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'DiagnosticReport';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -29,7 +29,7 @@ export class DocumentManifest {
29
29
  /**
30
30
  * This is a DocumentManifest resource
31
31
  */
32
- resourceType: string;
32
+ resourceType: 'DocumentManifest';
33
33
  /**
34
34
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
35
35
  */
@@ -31,7 +31,7 @@ export class DocumentReference {
31
31
  /**
32
32
  * This is a DocumentReference resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'DocumentReference';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -36,7 +36,7 @@ export class Encounter {
36
36
  /**
37
37
  * This is a Encounter resource
38
38
  */
39
- resourceType: string;
39
+ resourceType: 'Encounter';
40
40
  /**
41
41
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
42
42
  */
@@ -31,7 +31,7 @@ export class Endpoint {
31
31
  /**
32
32
  * This is a Endpoint resource
33
33
  */
34
- resourceType: string;
34
+ resourceType: 'Endpoint';
35
35
  /**
36
36
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
37
  */
@@ -27,7 +27,7 @@ export class EnrollmentRequest {
27
27
  /**
28
28
  * This is a EnrollmentRequest resource
29
29
  */
30
- resourceType: string;
30
+ resourceType: 'EnrollmentRequest';
31
31
  /**
32
32
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
33
33
  */
@@ -27,7 +27,7 @@ export class EnrollmentResponse {
27
27
  /**
28
28
  * This is a EnrollmentResponse resource
29
29
  */
30
- resourceType: string;
30
+ resourceType: 'EnrollmentResponse';
31
31
  /**
32
32
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
33
33
  */
@@ -30,7 +30,7 @@ export class EpisodeOfCare {
30
30
  /**
31
31
  * This is a EpisodeOfCare resource
32
32
  */
33
- resourceType: string;
33
+ resourceType: 'EpisodeOfCare';
34
34
  /**
35
35
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
36
36
  */
@@ -34,7 +34,7 @@ export class EventDefinition {
34
34
  /**
35
35
  * This is a EventDefinition resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'EventDefinition';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -34,7 +34,7 @@ export class Evidence {
34
34
  /**
35
35
  * This is a Evidence resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'Evidence';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -34,7 +34,7 @@ export class EvidenceVariable {
34
34
  /**
35
35
  * This is a EvidenceVariable resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'EvidenceVariable';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -34,7 +34,7 @@ export class ExampleScenario {
34
34
  /**
35
35
  * This is a ExampleScenario resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'ExampleScenario';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -14,12 +14,13 @@ import { ExampleScenarioContainedInstance } from './exampleScenarioContainedInst
14
14
  import { ExampleScenarioVersion } from './exampleScenarioVersion';
15
15
  import { Extension } from './extension';
16
16
  import { Markdown } from './markdown';
17
+ import { ResourceList } from './resourceList';
17
18
 
18
19
 
19
20
  /**
20
21
  * Example of workflow instance.
21
22
  */
22
- export class ExampleScenarioInstance {
23
+ export class ExampleScenarioInstance {
23
24
  /**
24
25
  * Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
25
26
  */
@@ -35,11 +36,11 @@ export class ExampleScenarioInstance {
35
36
  /**
36
37
  * The id of the resource for referencing.
37
38
  */
38
- resourceId?: string;
39
+ resourceId: string;
39
40
  /**
40
41
  * The type of the resource.
41
42
  */
42
- resourceType?: Code;
43
+ resourceType: ResourceList;
43
44
  /**
44
45
  * A short name for the resource instance.
45
46
  */
@@ -16,7 +16,7 @@ import { Markdown } from './markdown';
16
16
  /**
17
17
  * Example of workflow instance.
18
18
  */
19
- export class ExampleScenarioVersion {
19
+ export class ExampleScenarioVersion {
20
20
  /**
21
21
  * Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
22
22
  */
@@ -32,9 +32,9 @@ export class ExampleScenarioVersion {
32
32
  /**
33
33
  * The identifier of a specific version of a resource.
34
34
  */
35
- versionId?: string;
35
+ versionId: string;
36
36
  /**
37
37
  * The description of the resource version.
38
38
  */
39
- description?: Markdown;
39
+ description: Markdown;
40
40
  }
@@ -46,7 +46,7 @@ export class ExplanationOfBenefit {
46
46
  /**
47
47
  * This is a ExplanationOfBenefit resource
48
48
  */
49
- resourceType: string;
49
+ resourceType: 'ExplanationOfBenefit';
50
50
  /**
51
51
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
52
52
  */
@@ -34,7 +34,7 @@ export class FamilyMemberHistory {
34
34
  /**
35
35
  * This is a FamilyMemberHistory resource
36
36
  */
37
- resourceType: string;
37
+ resourceType: 'FamilyMemberHistory';
38
38
  /**
39
39
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
40
40
  */
@@ -28,7 +28,7 @@ export class Flag {
28
28
  /**
29
29
  * This is a Flag resource
30
30
  */
31
- resourceType: string;
31
+ resourceType: 'Flag';
32
32
  /**
33
33
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
34
34
  */
@@ -29,7 +29,7 @@ export class Goal {
29
29
  /**
30
30
  * This is a Goal resource
31
31
  */
32
- resourceType: string;
32
+ resourceType: 'Goal';
33
33
  /**
34
34
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
35
35
  */
@@ -20,6 +20,7 @@ import { Id } from './id';
20
20
  import { Markdown } from './markdown';
21
21
  import { Meta } from './meta';
22
22
  import { Narrative } from './narrative';
23
+ import { ResourceList } from './resourceList';
23
24
  import { Uri } from './uri';
24
25
  import { UsageContext } from './usageContext';
25
26
 
@@ -27,11 +28,11 @@ import { UsageContext } from './usageContext';
27
28
  /**
28
29
  * A formal computable definition of a graph of resources - that is, a coherent set of resources that form a graph by following references. The Graph Definition resource defines a set and makes rules about the set.
29
30
  */
30
- export class GraphDefinition {
31
+ export class GraphDefinition {
31
32
  /**
32
33
  * This is a GraphDefinition resource
33
34
  */
34
- resourceType: string;
35
+ resourceType: 'GraphDefinition';
35
36
  /**
36
37
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
37
38
  */
@@ -111,7 +112,7 @@ export class GraphDefinition {
111
112
  /**
112
113
  * The type of FHIR resource at which instances of this graph start.
113
114
  */
114
- start?: Code;
115
+ start: ResourceList;
115
116
  /**
116
117
  * The profile that describes the use of the base resource.
117
118
  */
@@ -30,7 +30,7 @@ export class Group {
30
30
  /**
31
31
  * This is a Group resource
32
32
  */
33
- resourceType: string;
33
+ resourceType: 'Group';
34
34
  /**
35
35
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
36
36
  */
@@ -30,7 +30,7 @@ export class GuidanceResponse {
30
30
  /**
31
31
  * This is a GuidanceResponse resource
32
32
  */
33
- resourceType: string;
33
+ resourceType: 'GuidanceResponse';
34
34
  /**
35
35
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
36
36
  */
@@ -33,7 +33,7 @@ export class HealthcareService {
33
33
  /**
34
34
  * This is a HealthcareService resource
35
35
  */
36
- resourceType: string;
36
+ resourceType: 'HealthcareService';
37
37
  /**
38
38
  * The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
39
39
  */