@medplum/core 0.2.1 → 0.4.1

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/README.md +32 -26
  2. package/dist/cjs/index.js +1818 -0
  3. package/dist/cjs/index.js.map +1 -0
  4. package/dist/cjs/index.min.js +16 -0
  5. package/dist/cjs/index.min.js.map +1 -0
  6. package/dist/esm/index.js +1769 -0
  7. package/dist/esm/index.js.map +1 -0
  8. package/dist/esm/index.min.js +16 -0
  9. package/dist/esm/index.min.js.map +1 -0
  10. package/dist/{cache.d.ts → types/cache.d.ts} +2 -3
  11. package/dist/types/client.d.ts +230 -0
  12. package/dist/{crypto.d.ts → types/crypto.d.ts} +0 -0
  13. package/dist/{eventtarget.d.ts → types/eventtarget.d.ts} +3 -3
  14. package/dist/{format.d.ts → types/format.d.ts} +1 -1
  15. package/dist/{index.d.ts → types/index.d.ts} +0 -2
  16. package/dist/types/jwt.d.ts +5 -0
  17. package/dist/{outcomes.d.ts → types/outcomes.d.ts} +7 -2
  18. package/dist/{search.d.ts → types/search.d.ts} +4 -0
  19. package/dist/{searchparams.d.ts → types/searchparams.d.ts} +1 -1
  20. package/dist/{storage.d.ts → types/storage.d.ts} +2 -2
  21. package/dist/{types.d.ts → types/types.d.ts} +18 -4
  22. package/dist/{utils.d.ts → types/utils.d.ts} +7 -1
  23. package/package.json +14 -9
  24. package/dist/cache.js +0 -36
  25. package/dist/cache.js.map +0 -1
  26. package/dist/client.d.ts +0 -233
  27. package/dist/client.js +0 -541
  28. package/dist/client.js.map +0 -1
  29. package/dist/crypto.js +0 -33
  30. package/dist/crypto.js.map +0 -1
  31. package/dist/eventtarget.js +0 -38
  32. package/dist/eventtarget.js.map +0 -1
  33. package/dist/fhir/AccessPolicy.d.ts +0 -75
  34. package/dist/fhir/AccessPolicy.js +0 -7
  35. package/dist/fhir/AccessPolicy.js.map +0 -1
  36. package/dist/fhir/Account.d.ts +0 -247
  37. package/dist/fhir/Account.js +0 -7
  38. package/dist/fhir/Account.js.map +0 -1
  39. package/dist/fhir/ActivityDefinition.d.ts +0 -500
  40. package/dist/fhir/ActivityDefinition.js +0 -7
  41. package/dist/fhir/ActivityDefinition.js.map +0 -1
  42. package/dist/fhir/Address.d.ts +0 -75
  43. package/dist/fhir/Address.js +0 -7
  44. package/dist/fhir/Address.js.map +0 -1
  45. package/dist/fhir/AdverseEvent.d.ts +0 -303
  46. package/dist/fhir/AdverseEvent.js +0 -7
  47. package/dist/fhir/AdverseEvent.js.map +0 -1
  48. package/dist/fhir/Age.d.ts +0 -47
  49. package/dist/fhir/Age.js +0 -7
  50. package/dist/fhir/Age.js.map +0 -1
  51. package/dist/fhir/AllergyIntolerance.d.ts +0 -283
  52. package/dist/fhir/AllergyIntolerance.js +0 -7
  53. package/dist/fhir/AllergyIntolerance.js.map +0 -1
  54. package/dist/fhir/Annotation.d.ts +0 -42
  55. package/dist/fhir/Annotation.js +0 -7
  56. package/dist/fhir/Annotation.js.map +0 -1
  57. package/dist/fhir/Appointment.d.ts +0 -284
  58. package/dist/fhir/Appointment.js +0 -7
  59. package/dist/fhir/Appointment.js.map +0 -1
  60. package/dist/fhir/AppointmentResponse.d.ts +0 -131
  61. package/dist/fhir/AppointmentResponse.js +0 -7
  62. package/dist/fhir/AppointmentResponse.js.map +0 -1
  63. package/dist/fhir/Attachment.d.ts +0 -58
  64. package/dist/fhir/Attachment.js +0 -7
  65. package/dist/fhir/Attachment.js.map +0 -1
  66. package/dist/fhir/AuditEvent.d.ts +0 -458
  67. package/dist/fhir/AuditEvent.js +0 -7
  68. package/dist/fhir/AuditEvent.js.map +0 -1
  69. package/dist/fhir/Basic.d.ts +0 -110
  70. package/dist/fhir/Basic.js +0 -7
  71. package/dist/fhir/Basic.js.map +0 -1
  72. package/dist/fhir/Binary.d.ts +0 -59
  73. package/dist/fhir/Binary.js +0 -7
  74. package/dist/fhir/Binary.js.map +0 -1
  75. package/dist/fhir/BiologicallyDerivedProduct.d.ts +0 -358
  76. package/dist/fhir/BiologicallyDerivedProduct.js +0 -7
  77. package/dist/fhir/BiologicallyDerivedProduct.js.map +0 -1
  78. package/dist/fhir/BodyStructure.d.ts +0 -119
  79. package/dist/fhir/BodyStructure.js +0 -7
  80. package/dist/fhir/BodyStructure.js.map +0 -1
  81. package/dist/fhir/Bot.d.ts +0 -49
  82. package/dist/fhir/Bot.js +0 -7
  83. package/dist/fhir/Bot.js.map +0 -1
  84. package/dist/fhir/Bundle.d.ts +0 -379
  85. package/dist/fhir/Bundle.js +0 -7
  86. package/dist/fhir/Bundle.js.map +0 -1
  87. package/dist/fhir/CapabilityStatement.d.ts +0 -1044
  88. package/dist/fhir/CapabilityStatement.js +0 -7
  89. package/dist/fhir/CapabilityStatement.js.map +0 -1
  90. package/dist/fhir/CarePlan.d.ts +0 -446
  91. package/dist/fhir/CarePlan.js +0 -7
  92. package/dist/fhir/CarePlan.js.map +0 -1
  93. package/dist/fhir/CareTeam.d.ts +0 -211
  94. package/dist/fhir/CareTeam.js +0 -7
  95. package/dist/fhir/CareTeam.js.map +0 -1
  96. package/dist/fhir/CatalogEntry.d.ts +0 -195
  97. package/dist/fhir/CatalogEntry.js +0 -7
  98. package/dist/fhir/CatalogEntry.js.map +0 -1
  99. package/dist/fhir/ChargeItem.d.ts +0 -287
  100. package/dist/fhir/ChargeItem.js +0 -7
  101. package/dist/fhir/ChargeItem.js.map +0 -1
  102. package/dist/fhir/ChargeItemDefinition.d.ts +0 -401
  103. package/dist/fhir/ChargeItemDefinition.js +0 -7
  104. package/dist/fhir/ChargeItemDefinition.js.map +0 -1
  105. package/dist/fhir/Claim.d.ts +0 -1092
  106. package/dist/fhir/Claim.js +0 -7
  107. package/dist/fhir/Claim.js.map +0 -1
  108. package/dist/fhir/ClaimResponse.d.ts +0 -1040
  109. package/dist/fhir/ClaimResponse.js +0 -7
  110. package/dist/fhir/ClaimResponse.js.map +0 -1
  111. package/dist/fhir/ClientApplication.d.ts +0 -46
  112. package/dist/fhir/ClientApplication.js +0 -7
  113. package/dist/fhir/ClientApplication.js.map +0 -1
  114. package/dist/fhir/ClinicalImpression.d.ts +0 -306
  115. package/dist/fhir/ClinicalImpression.js +0 -7
  116. package/dist/fhir/ClinicalImpression.js.map +0 -1
  117. package/dist/fhir/CodeSystem.d.ts +0 -541
  118. package/dist/fhir/CodeSystem.js +0 -7
  119. package/dist/fhir/CodeSystem.js.map +0 -1
  120. package/dist/fhir/CodeableConcept.d.ts +0 -33
  121. package/dist/fhir/CodeableConcept.js +0 -7
  122. package/dist/fhir/CodeableConcept.js.map +0 -1
  123. package/dist/fhir/Coding.d.ts +0 -50
  124. package/dist/fhir/Coding.js +0 -7
  125. package/dist/fhir/Coding.js.map +0 -1
  126. package/dist/fhir/Communication.d.ts +0 -264
  127. package/dist/fhir/Communication.js +0 -7
  128. package/dist/fhir/Communication.js.map +0 -1
  129. package/dist/fhir/CommunicationRequest.d.ts +0 -261
  130. package/dist/fhir/CommunicationRequest.js +0 -7
  131. package/dist/fhir/CommunicationRequest.js.map +0 -1
  132. package/dist/fhir/CompartmentDefinition.d.ts +0 -217
  133. package/dist/fhir/CompartmentDefinition.js +0 -7
  134. package/dist/fhir/CompartmentDefinition.js.map +0 -1
  135. package/dist/fhir/Composition.d.ts +0 -429
  136. package/dist/fhir/Composition.js +0 -7
  137. package/dist/fhir/Composition.js.map +0 -1
  138. package/dist/fhir/ConceptMap.d.ts +0 -518
  139. package/dist/fhir/ConceptMap.js +0 -7
  140. package/dist/fhir/ConceptMap.js.map +0 -1
  141. package/dist/fhir/Condition.d.ts +0 -326
  142. package/dist/fhir/Condition.js +0 -7
  143. package/dist/fhir/Condition.js.map +0 -1
  144. package/dist/fhir/Consent.d.ts +0 -460
  145. package/dist/fhir/Consent.js +0 -7
  146. package/dist/fhir/Consent.js.map +0 -1
  147. package/dist/fhir/ContactDetail.d.ts +0 -31
  148. package/dist/fhir/ContactDetail.js +0 -7
  149. package/dist/fhir/ContactDetail.js.map +0 -1
  150. package/dist/fhir/ContactPoint.d.ts +0 -47
  151. package/dist/fhir/ContactPoint.js +0 -7
  152. package/dist/fhir/ContactPoint.js.map +0 -1
  153. package/dist/fhir/Contract.d.ts +0 -1452
  154. package/dist/fhir/Contract.js +0 -7
  155. package/dist/fhir/Contract.js.map +0 -1
  156. package/dist/fhir/Contributor.d.ts +0 -37
  157. package/dist/fhir/Contributor.js +0 -7
  158. package/dist/fhir/Contributor.js.map +0 -1
  159. package/dist/fhir/Count.d.ts +0 -49
  160. package/dist/fhir/Count.js +0 -7
  161. package/dist/fhir/Count.js.map +0 -1
  162. package/dist/fhir/Coverage.d.ts +0 -327
  163. package/dist/fhir/Coverage.js +0 -7
  164. package/dist/fhir/Coverage.js.map +0 -1
  165. package/dist/fhir/CoverageEligibilityRequest.d.ts +0 -404
  166. package/dist/fhir/CoverageEligibilityRequest.js +0 -7
  167. package/dist/fhir/CoverageEligibilityRequest.js.map +0 -1
  168. package/dist/fhir/CoverageEligibilityResponse.d.ts +0 -434
  169. package/dist/fhir/CoverageEligibilityResponse.js +0 -7
  170. package/dist/fhir/CoverageEligibilityResponse.js.map +0 -1
  171. package/dist/fhir/DataRequirement.d.ts +0 -239
  172. package/dist/fhir/DataRequirement.js +0 -7
  173. package/dist/fhir/DataRequirement.js.map +0 -1
  174. package/dist/fhir/DetectedIssue.d.ts +0 -252
  175. package/dist/fhir/DetectedIssue.js +0 -7
  176. package/dist/fhir/DetectedIssue.js.map +0 -1
  177. package/dist/fhir/Device.d.ts +0 -493
  178. package/dist/fhir/Device.js +0 -7
  179. package/dist/fhir/Device.js.map +0 -1
  180. package/dist/fhir/DeviceDefinition.d.ts +0 -486
  181. package/dist/fhir/DeviceDefinition.js +0 -7
  182. package/dist/fhir/DeviceDefinition.js.map +0 -1
  183. package/dist/fhir/DeviceMetric.d.ts +0 -199
  184. package/dist/fhir/DeviceMetric.js +0 -7
  185. package/dist/fhir/DeviceMetric.js.map +0 -1
  186. package/dist/fhir/DeviceRequest.d.ts +0 -296
  187. package/dist/fhir/DeviceRequest.js +0 -7
  188. package/dist/fhir/DeviceRequest.js.map +0 -1
  189. package/dist/fhir/DeviceUseStatement.d.ts +0 -168
  190. package/dist/fhir/DeviceUseStatement.js +0 -7
  191. package/dist/fhir/DeviceUseStatement.js.map +0 -1
  192. package/dist/fhir/DiagnosticReport.d.ts +0 -254
  193. package/dist/fhir/DiagnosticReport.js +0 -7
  194. package/dist/fhir/DiagnosticReport.js.map +0 -1
  195. package/dist/fhir/Distance.d.ts +0 -47
  196. package/dist/fhir/Distance.js +0 -7
  197. package/dist/fhir/Distance.js.map +0 -1
  198. package/dist/fhir/DocumentManifest.d.ts +0 -196
  199. package/dist/fhir/DocumentManifest.js +0 -7
  200. package/dist/fhir/DocumentManifest.js.map +0 -1
  201. package/dist/fhir/DocumentReference.d.ts +0 -349
  202. package/dist/fhir/DocumentReference.js +0 -7
  203. package/dist/fhir/DocumentReference.js.map +0 -1
  204. package/dist/fhir/Dosage.d.ts +0 -152
  205. package/dist/fhir/Dosage.js +0 -7
  206. package/dist/fhir/Dosage.js.map +0 -1
  207. package/dist/fhir/Duration.d.ts +0 -46
  208. package/dist/fhir/Duration.js +0 -7
  209. package/dist/fhir/Duration.js.map +0 -1
  210. package/dist/fhir/EffectEvidenceSynthesis.d.ts +0 -591
  211. package/dist/fhir/EffectEvidenceSynthesis.js +0 -7
  212. package/dist/fhir/EffectEvidenceSynthesis.js.map +0 -1
  213. package/dist/fhir/Element.d.ts +0 -21
  214. package/dist/fhir/Element.js +0 -7
  215. package/dist/fhir/Element.js.map +0 -1
  216. package/dist/fhir/ElementDefinition.d.ts +0 -2701
  217. package/dist/fhir/ElementDefinition.js +0 -7
  218. package/dist/fhir/ElementDefinition.js.map +0 -1
  219. package/dist/fhir/Encounter.d.ts +0 -558
  220. package/dist/fhir/Encounter.js +0 -7
  221. package/dist/fhir/Encounter.js.map +0 -1
  222. package/dist/fhir/Endpoint.d.ts +0 -140
  223. package/dist/fhir/Endpoint.js +0 -7
  224. package/dist/fhir/Endpoint.js.map +0 -1
  225. package/dist/fhir/EnrollmentRequest.d.ts +0 -113
  226. package/dist/fhir/EnrollmentRequest.js +0 -7
  227. package/dist/fhir/EnrollmentRequest.js.map +0 -1
  228. package/dist/fhir/EnrollmentResponse.d.ts +0 -117
  229. package/dist/fhir/EnrollmentResponse.js +0 -7
  230. package/dist/fhir/EnrollmentResponse.js.map +0 -1
  231. package/dist/fhir/EpisodeOfCare.d.ts +0 -246
  232. package/dist/fhir/EpisodeOfCare.js +0 -7
  233. package/dist/fhir/EpisodeOfCare.js.map +0 -1
  234. package/dist/fhir/EventDefinition.d.ts +0 -253
  235. package/dist/fhir/EventDefinition.js +0 -7
  236. package/dist/fhir/EventDefinition.js.map +0 -1
  237. package/dist/fhir/Evidence.d.ts +0 -252
  238. package/dist/fhir/Evidence.js +0 -7
  239. package/dist/fhir/Evidence.js.map +0 -1
  240. package/dist/fhir/EvidenceVariable.d.ts +0 -370
  241. package/dist/fhir/EvidenceVariable.js +0 -7
  242. package/dist/fhir/EvidenceVariable.js.map +0 -1
  243. package/dist/fhir/ExampleScenario.d.ts +0 -628
  244. package/dist/fhir/ExampleScenario.js +0 -7
  245. package/dist/fhir/ExampleScenario.js.map +0 -1
  246. package/dist/fhir/ExplanationOfBenefit.d.ts +0 -1841
  247. package/dist/fhir/ExplanationOfBenefit.js +0 -7
  248. package/dist/fhir/ExplanationOfBenefit.js.map +0 -1
  249. package/dist/fhir/Expression.d.ts +0 -45
  250. package/dist/fhir/Expression.js +0 -7
  251. package/dist/fhir/Expression.js.map +0 -1
  252. package/dist/fhir/Extension.d.ts +0 -306
  253. package/dist/fhir/Extension.js +0 -7
  254. package/dist/fhir/Extension.js.map +0 -1
  255. package/dist/fhir/FamilyMemberHistory.d.ts +0 -306
  256. package/dist/fhir/FamilyMemberHistory.js +0 -7
  257. package/dist/fhir/FamilyMemberHistory.js.map +0 -1
  258. package/dist/fhir/Flag.d.ts +0 -132
  259. package/dist/fhir/Flag.js +0 -7
  260. package/dist/fhir/Flag.js.map +0 -1
  261. package/dist/fhir/Goal.d.ts +0 -299
  262. package/dist/fhir/Goal.js +0 -7
  263. package/dist/fhir/Goal.js.map +0 -1
  264. package/dist/fhir/GraphDefinition.d.ts +0 -350
  265. package/dist/fhir/GraphDefinition.js +0 -7
  266. package/dist/fhir/GraphDefinition.js.map +0 -1
  267. package/dist/fhir/Group.d.ts +0 -271
  268. package/dist/fhir/Group.js +0 -7
  269. package/dist/fhir/Group.js.map +0 -1
  270. package/dist/fhir/GuidanceResponse.d.ts +0 -196
  271. package/dist/fhir/GuidanceResponse.js +0 -7
  272. package/dist/fhir/GuidanceResponse.js.map +0 -1
  273. package/dist/fhir/HealthcareService.d.ts +0 -356
  274. package/dist/fhir/HealthcareService.js +0 -7
  275. package/dist/fhir/HealthcareService.js.map +0 -1
  276. package/dist/fhir/HumanName.d.ts +0 -58
  277. package/dist/fhir/HumanName.js +0 -7
  278. package/dist/fhir/HumanName.js.map +0 -1
  279. package/dist/fhir/Identifier.d.ts +0 -53
  280. package/dist/fhir/Identifier.js +0 -7
  281. package/dist/fhir/Identifier.js.map +0 -1
  282. package/dist/fhir/ImagingStudy.d.ts +0 -407
  283. package/dist/fhir/ImagingStudy.js +0 -7
  284. package/dist/fhir/ImagingStudy.js.map +0 -1
  285. package/dist/fhir/Immunization.d.ts +0 -444
  286. package/dist/fhir/Immunization.js +0 -7
  287. package/dist/fhir/Immunization.js.map +0 -1
  288. package/dist/fhir/ImmunizationEvaluation.d.ts +0 -149
  289. package/dist/fhir/ImmunizationEvaluation.js +0 -7
  290. package/dist/fhir/ImmunizationEvaluation.js.map +0 -1
  291. package/dist/fhir/ImmunizationRecommendation.d.ts +0 -254
  292. package/dist/fhir/ImmunizationRecommendation.js +0 -7
  293. package/dist/fhir/ImmunizationRecommendation.js.map +0 -1
  294. package/dist/fhir/ImplementationGuide.d.ts +0 -824
  295. package/dist/fhir/ImplementationGuide.js +0 -7
  296. package/dist/fhir/ImplementationGuide.js.map +0 -1
  297. package/dist/fhir/InsurancePlan.d.ts +0 -624
  298. package/dist/fhir/InsurancePlan.js +0 -7
  299. package/dist/fhir/InsurancePlan.js.map +0 -1
  300. package/dist/fhir/Invoice.d.ts +0 -346
  301. package/dist/fhir/Invoice.js +0 -7
  302. package/dist/fhir/Invoice.js.map +0 -1
  303. package/dist/fhir/JsonWebKey.d.ts +0 -99
  304. package/dist/fhir/JsonWebKey.js +0 -7
  305. package/dist/fhir/JsonWebKey.js.map +0 -1
  306. package/dist/fhir/Library.d.ts +0 -277
  307. package/dist/fhir/Library.js +0 -7
  308. package/dist/fhir/Library.js.map +0 -1
  309. package/dist/fhir/Linkage.d.ts +0 -146
  310. package/dist/fhir/Linkage.js +0 -7
  311. package/dist/fhir/Linkage.js.map +0 -1
  312. package/dist/fhir/List.d.ts +0 -200
  313. package/dist/fhir/List.js +0 -7
  314. package/dist/fhir/List.js.map +0 -1
  315. package/dist/fhir/Location.d.ts +0 -277
  316. package/dist/fhir/Location.js +0 -7
  317. package/dist/fhir/Location.js.map +0 -1
  318. package/dist/fhir/Login.d.ts +0 -119
  319. package/dist/fhir/Login.js +0 -7
  320. package/dist/fhir/Login.js.map +0 -1
  321. package/dist/fhir/MarketingStatus.d.ts +0 -82
  322. package/dist/fhir/MarketingStatus.js +0 -7
  323. package/dist/fhir/MarketingStatus.js.map +0 -1
  324. package/dist/fhir/Measure.d.ts +0 -620
  325. package/dist/fhir/Measure.js +0 -7
  326. package/dist/fhir/Measure.js.map +0 -1
  327. package/dist/fhir/MeasureReport.d.ts +0 -463
  328. package/dist/fhir/MeasureReport.js +0 -7
  329. package/dist/fhir/MeasureReport.js.map +0 -1
  330. package/dist/fhir/Media.d.ts +0 -205
  331. package/dist/fhir/Media.js +0 -7
  332. package/dist/fhir/Media.js.map +0 -1
  333. package/dist/fhir/Medication.d.ts +0 -230
  334. package/dist/fhir/Medication.js +0 -7
  335. package/dist/fhir/Medication.js.map +0 -1
  336. package/dist/fhir/MedicationAdministration.d.ts +0 -352
  337. package/dist/fhir/MedicationAdministration.js +0 -7
  338. package/dist/fhir/MedicationAdministration.js.map +0 -1
  339. package/dist/fhir/MedicationDispense.d.ts +0 -343
  340. package/dist/fhir/MedicationDispense.js +0 -7
  341. package/dist/fhir/MedicationDispense.js.map +0 -1
  342. package/dist/fhir/MedicationKnowledge.d.ts +0 -992
  343. package/dist/fhir/MedicationKnowledge.js +0 -7
  344. package/dist/fhir/MedicationKnowledge.js.map +0 -1
  345. package/dist/fhir/MedicationRequest.d.ts +0 -481
  346. package/dist/fhir/MedicationRequest.js +0 -7
  347. package/dist/fhir/MedicationRequest.js.map +0 -1
  348. package/dist/fhir/MedicationStatement.d.ts +0 -228
  349. package/dist/fhir/MedicationStatement.js +0 -7
  350. package/dist/fhir/MedicationStatement.js.map +0 -1
  351. package/dist/fhir/MedicinalProduct.d.ts +0 -453
  352. package/dist/fhir/MedicinalProduct.js +0 -7
  353. package/dist/fhir/MedicinalProduct.js.map +0 -1
  354. package/dist/fhir/MedicinalProductAuthorization.d.ts +0 -271
  355. package/dist/fhir/MedicinalProductAuthorization.js +0 -7
  356. package/dist/fhir/MedicinalProductAuthorization.js.map +0 -1
  357. package/dist/fhir/MedicinalProductContraindication.d.ts +0 -170
  358. package/dist/fhir/MedicinalProductContraindication.js +0 -7
  359. package/dist/fhir/MedicinalProductContraindication.js.map +0 -1
  360. package/dist/fhir/MedicinalProductIndication.d.ts +0 -179
  361. package/dist/fhir/MedicinalProductIndication.js +0 -7
  362. package/dist/fhir/MedicinalProductIndication.js.map +0 -1
  363. package/dist/fhir/MedicinalProductIngredient.d.ts +0 -336
  364. package/dist/fhir/MedicinalProductIngredient.js +0 -7
  365. package/dist/fhir/MedicinalProductIngredient.js.map +0 -1
  366. package/dist/fhir/MedicinalProductInteraction.d.ts +0 -158
  367. package/dist/fhir/MedicinalProductInteraction.js +0 -7
  368. package/dist/fhir/MedicinalProductInteraction.js.map +0 -1
  369. package/dist/fhir/MedicinalProductManufactured.d.ts +0 -113
  370. package/dist/fhir/MedicinalProductManufactured.js +0 -7
  371. package/dist/fhir/MedicinalProductManufactured.js.map +0 -1
  372. package/dist/fhir/MedicinalProductPackaged.d.ts +0 -259
  373. package/dist/fhir/MedicinalProductPackaged.js +0 -7
  374. package/dist/fhir/MedicinalProductPackaged.js.map +0 -1
  375. package/dist/fhir/MedicinalProductPharmaceutical.d.ts +0 -331
  376. package/dist/fhir/MedicinalProductPharmaceutical.js +0 -7
  377. package/dist/fhir/MedicinalProductPharmaceutical.js.map +0 -1
  378. package/dist/fhir/MedicinalProductUndesirableEffect.d.ts +0 -101
  379. package/dist/fhir/MedicinalProductUndesirableEffect.js +0 -7
  380. package/dist/fhir/MedicinalProductUndesirableEffect.js.map +0 -1
  381. package/dist/fhir/MessageDefinition.d.ts +0 -330
  382. package/dist/fhir/MessageDefinition.js +0 -7
  383. package/dist/fhir/MessageDefinition.js.map +0 -1
  384. package/dist/fhir/MessageHeader.d.ts +0 -323
  385. package/dist/fhir/MessageHeader.js +0 -7
  386. package/dist/fhir/MessageHeader.js.map +0 -1
  387. package/dist/fhir/Meta.d.ts +0 -75
  388. package/dist/fhir/Meta.js +0 -7
  389. package/dist/fhir/Meta.js.map +0 -1
  390. package/dist/fhir/MolecularSequence.d.ts +0 -760
  391. package/dist/fhir/MolecularSequence.js +0 -7
  392. package/dist/fhir/MolecularSequence.js.map +0 -1
  393. package/dist/fhir/Money.d.ts +0 -29
  394. package/dist/fhir/Money.js +0 -7
  395. package/dist/fhir/Money.js.map +0 -1
  396. package/dist/fhir/NamingSystem.d.ts +0 -218
  397. package/dist/fhir/NamingSystem.js +0 -7
  398. package/dist/fhir/NamingSystem.js.map +0 -1
  399. package/dist/fhir/Narrative.d.ts +0 -32
  400. package/dist/fhir/Narrative.js +0 -7
  401. package/dist/fhir/Narrative.js.map +0 -1
  402. package/dist/fhir/NutritionOrder.d.ts +0 -566
  403. package/dist/fhir/NutritionOrder.js +0 -7
  404. package/dist/fhir/NutritionOrder.js.map +0 -1
  405. package/dist/fhir/Observation.d.ts +0 -520
  406. package/dist/fhir/Observation.js +0 -7
  407. package/dist/fhir/Observation.js.map +0 -1
  408. package/dist/fhir/ObservationDefinition.d.ts +0 -278
  409. package/dist/fhir/ObservationDefinition.js +0 -7
  410. package/dist/fhir/ObservationDefinition.js.map +0 -1
  411. package/dist/fhir/OperationDefinition.d.ts +0 -468
  412. package/dist/fhir/OperationDefinition.js +0 -7
  413. package/dist/fhir/OperationDefinition.js.map +0 -1
  414. package/dist/fhir/OperationOutcome.d.ts +0 -160
  415. package/dist/fhir/OperationOutcome.js +0 -7
  416. package/dist/fhir/OperationOutcome.js.map +0 -1
  417. package/dist/fhir/Organization.d.ts +0 -184
  418. package/dist/fhir/Organization.js +0 -7
  419. package/dist/fhir/Organization.js.map +0 -1
  420. package/dist/fhir/OrganizationAffiliation.d.ts +0 -145
  421. package/dist/fhir/OrganizationAffiliation.js +0 -7
  422. package/dist/fhir/OrganizationAffiliation.js.map +0 -1
  423. package/dist/fhir/ParameterDefinition.d.ts +0 -57
  424. package/dist/fhir/ParameterDefinition.js +0 -7
  425. package/dist/fhir/ParameterDefinition.js.map +0 -1
  426. package/dist/fhir/Parameters.d.ts +0 -319
  427. package/dist/fhir/Parameters.js +0 -7
  428. package/dist/fhir/Parameters.js.map +0 -1
  429. package/dist/fhir/PasswordChangeRequest.d.ts +0 -51
  430. package/dist/fhir/PasswordChangeRequest.js +0 -7
  431. package/dist/fhir/PasswordChangeRequest.js.map +0 -1
  432. package/dist/fhir/Patient.d.ts +0 -342
  433. package/dist/fhir/Patient.js +0 -7
  434. package/dist/fhir/Patient.js.map +0 -1
  435. package/dist/fhir/PaymentNotice.d.ts +0 -135
  436. package/dist/fhir/PaymentNotice.js +0 -7
  437. package/dist/fhir/PaymentNotice.js.map +0 -1
  438. package/dist/fhir/PaymentReconciliation.d.ts +0 -280
  439. package/dist/fhir/PaymentReconciliation.js +0 -7
  440. package/dist/fhir/PaymentReconciliation.js.map +0 -1
  441. package/dist/fhir/Period.d.ts +0 -32
  442. package/dist/fhir/Period.js +0 -7
  443. package/dist/fhir/Period.js.map +0 -1
  444. package/dist/fhir/Person.d.ts +0 -175
  445. package/dist/fhir/Person.js +0 -7
  446. package/dist/fhir/Person.js.map +0 -1
  447. package/dist/fhir/PlanDefinition.d.ts +0 -837
  448. package/dist/fhir/PlanDefinition.js +0 -7
  449. package/dist/fhir/PlanDefinition.js.map +0 -1
  450. package/dist/fhir/Population.d.ts +0 -62
  451. package/dist/fhir/Population.js +0 -7
  452. package/dist/fhir/Population.js.map +0 -1
  453. package/dist/fhir/Practitioner.d.ts +0 -191
  454. package/dist/fhir/Practitioner.js +0 -7
  455. package/dist/fhir/Practitioner.js.map +0 -1
  456. package/dist/fhir/PractitionerRole.d.ts +0 -259
  457. package/dist/fhir/PractitionerRole.js +0 -7
  458. package/dist/fhir/PractitionerRole.js.map +0 -1
  459. package/dist/fhir/Procedure.d.ts +0 -372
  460. package/dist/fhir/Procedure.js +0 -7
  461. package/dist/fhir/Procedure.js.map +0 -1
  462. package/dist/fhir/ProdCharacteristic.d.ts +0 -112
  463. package/dist/fhir/ProdCharacteristic.js +0 -7
  464. package/dist/fhir/ProdCharacteristic.js.map +0 -1
  465. package/dist/fhir/ProductShelfLife.d.ts +0 -70
  466. package/dist/fhir/ProductShelfLife.js +0 -7
  467. package/dist/fhir/ProductShelfLife.js.map +0 -1
  468. package/dist/fhir/Project.d.ts +0 -43
  469. package/dist/fhir/Project.js +0 -7
  470. package/dist/fhir/Project.js.map +0 -1
  471. package/dist/fhir/ProjectMembership.d.ts +0 -66
  472. package/dist/fhir/ProjectMembership.js +0 -7
  473. package/dist/fhir/ProjectMembership.js.map +0 -1
  474. package/dist/fhir/Provenance.d.ts +0 -258
  475. package/dist/fhir/Provenance.js +0 -7
  476. package/dist/fhir/Provenance.js.map +0 -1
  477. package/dist/fhir/Quantity.d.ts +0 -46
  478. package/dist/fhir/Quantity.js +0 -7
  479. package/dist/fhir/Quantity.js.map +0 -1
  480. package/dist/fhir/Questionnaire.d.ts +0 -603
  481. package/dist/fhir/Questionnaire.js +0 -7
  482. package/dist/fhir/Questionnaire.js.map +0 -1
  483. package/dist/fhir/QuestionnaireResponse.d.ts +0 -313
  484. package/dist/fhir/QuestionnaireResponse.js +0 -7
  485. package/dist/fhir/QuestionnaireResponse.js.map +0 -1
  486. package/dist/fhir/Range.d.ts +0 -30
  487. package/dist/fhir/Range.js +0 -7
  488. package/dist/fhir/Range.js.map +0 -1
  489. package/dist/fhir/Ratio.d.ts +0 -30
  490. package/dist/fhir/Ratio.js +0 -7
  491. package/dist/fhir/Ratio.js.map +0 -1
  492. package/dist/fhir/Reference.d.ts +0 -67
  493. package/dist/fhir/Reference.js +0 -7
  494. package/dist/fhir/Reference.js.map +0 -1
  495. package/dist/fhir/RefreshToken.d.ts +0 -45
  496. package/dist/fhir/RefreshToken.js +0 -7
  497. package/dist/fhir/RefreshToken.js.map +0 -1
  498. package/dist/fhir/RelatedArtifact.d.ts +0 -57
  499. package/dist/fhir/RelatedArtifact.js +0 -7
  500. package/dist/fhir/RelatedArtifact.js.map +0 -1
  501. package/dist/fhir/RelatedPerson.d.ts +0 -190
  502. package/dist/fhir/RelatedPerson.js +0 -7
  503. package/dist/fhir/RelatedPerson.js.map +0 -1
  504. package/dist/fhir/RequestGroup.d.ts +0 -434
  505. package/dist/fhir/RequestGroup.js +0 -7
  506. package/dist/fhir/RequestGroup.js.map +0 -1
  507. package/dist/fhir/ResearchDefinition.d.ts +0 -291
  508. package/dist/fhir/ResearchDefinition.js +0 -7
  509. package/dist/fhir/ResearchDefinition.js.map +0 -1
  510. package/dist/fhir/ResearchElementDefinition.d.ts +0 -431
  511. package/dist/fhir/ResearchElementDefinition.js +0 -7
  512. package/dist/fhir/ResearchElementDefinition.js.map +0 -1
  513. package/dist/fhir/ResearchStudy.d.ts +0 -318
  514. package/dist/fhir/ResearchStudy.js +0 -7
  515. package/dist/fhir/ResearchStudy.js.map +0 -1
  516. package/dist/fhir/ResearchSubject.d.ts +0 -119
  517. package/dist/fhir/ResearchSubject.js +0 -7
  518. package/dist/fhir/ResearchSubject.js.map +0 -1
  519. package/dist/fhir/Resource.d.ts +0 -156
  520. package/dist/fhir/Resource.js +0 -7
  521. package/dist/fhir/Resource.js.map +0 -1
  522. package/dist/fhir/RiskAssessment.d.ts +0 -246
  523. package/dist/fhir/RiskAssessment.js +0 -7
  524. package/dist/fhir/RiskAssessment.js.map +0 -1
  525. package/dist/fhir/RiskEvidenceSynthesis.d.ts +0 -530
  526. package/dist/fhir/RiskEvidenceSynthesis.js +0 -7
  527. package/dist/fhir/RiskEvidenceSynthesis.js.map +0 -1
  528. package/dist/fhir/SampledData.d.ts +0 -62
  529. package/dist/fhir/SampledData.js +0 -7
  530. package/dist/fhir/SampledData.js.map +0 -1
  531. package/dist/fhir/Schedule.d.ts +0 -129
  532. package/dist/fhir/Schedule.js +0 -7
  533. package/dist/fhir/Schedule.js.map +0 -1
  534. package/dist/fhir/SearchParameter.d.ts +0 -277
  535. package/dist/fhir/SearchParameter.js +0 -7
  536. package/dist/fhir/SearchParameter.js.map +0 -1
  537. package/dist/fhir/ServiceRequest.d.ts +0 -309
  538. package/dist/fhir/ServiceRequest.js +0 -7
  539. package/dist/fhir/ServiceRequest.js.map +0 -1
  540. package/dist/fhir/Signature.d.ts +0 -71
  541. package/dist/fhir/Signature.js +0 -7
  542. package/dist/fhir/Signature.js.map +0 -1
  543. package/dist/fhir/Slot.d.ts +0 -134
  544. package/dist/fhir/Slot.js +0 -7
  545. package/dist/fhir/Slot.js.map +0 -1
  546. package/dist/fhir/Specimen.d.ts +0 -366
  547. package/dist/fhir/Specimen.js +0 -7
  548. package/dist/fhir/Specimen.js.map +0 -1
  549. package/dist/fhir/SpecimenDefinition.d.ts +0 -363
  550. package/dist/fhir/SpecimenDefinition.js +0 -7
  551. package/dist/fhir/SpecimenDefinition.js.map +0 -1
  552. package/dist/fhir/StructureDefinition.d.ts +0 -438
  553. package/dist/fhir/StructureDefinition.js +0 -7
  554. package/dist/fhir/StructureDefinition.js.map +0 -1
  555. package/dist/fhir/StructureMap.d.ts +0 -904
  556. package/dist/fhir/StructureMap.js +0 -7
  557. package/dist/fhir/StructureMap.js.map +0 -1
  558. package/dist/fhir/Subscription.d.ts +0 -172
  559. package/dist/fhir/Subscription.js +0 -7
  560. package/dist/fhir/Subscription.js.map +0 -1
  561. package/dist/fhir/Substance.d.ts +0 -213
  562. package/dist/fhir/Substance.js +0 -7
  563. package/dist/fhir/Substance.js.map +0 -1
  564. package/dist/fhir/SubstanceAmount.d.ts +0 -115
  565. package/dist/fhir/SubstanceAmount.js +0 -7
  566. package/dist/fhir/SubstanceAmount.js.map +0 -1
  567. package/dist/fhir/SubstanceNucleicAcid.d.ts +0 -309
  568. package/dist/fhir/SubstanceNucleicAcid.js +0 -7
  569. package/dist/fhir/SubstanceNucleicAcid.js.map +0 -1
  570. package/dist/fhir/SubstancePolymer.d.ts +0 -405
  571. package/dist/fhir/SubstancePolymer.js +0 -7
  572. package/dist/fhir/SubstancePolymer.js.map +0 -1
  573. package/dist/fhir/SubstanceProtein.d.ts +0 -218
  574. package/dist/fhir/SubstanceProtein.js +0 -7
  575. package/dist/fhir/SubstanceProtein.js.map +0 -1
  576. package/dist/fhir/SubstanceReferenceInformation.d.ts +0 -330
  577. package/dist/fhir/SubstanceReferenceInformation.js +0 -7
  578. package/dist/fhir/SubstanceReferenceInformation.js.map +0 -1
  579. package/dist/fhir/SubstanceSourceMaterial.d.ts +0 -521
  580. package/dist/fhir/SubstanceSourceMaterial.js +0 -7
  581. package/dist/fhir/SubstanceSourceMaterial.js.map +0 -1
  582. package/dist/fhir/SubstanceSpecification.d.ts +0 -827
  583. package/dist/fhir/SubstanceSpecification.js +0 -7
  584. package/dist/fhir/SubstanceSpecification.js.map +0 -1
  585. package/dist/fhir/SupplyDelivery.d.ts +0 -205
  586. package/dist/fhir/SupplyDelivery.js +0 -7
  587. package/dist/fhir/SupplyDelivery.js.map +0 -1
  588. package/dist/fhir/SupplyRequest.d.ts +0 -237
  589. package/dist/fhir/SupplyRequest.js +0 -7
  590. package/dist/fhir/SupplyRequest.js.map +0 -1
  591. package/dist/fhir/Task.d.ts +0 -807
  592. package/dist/fhir/Task.js +0 -7
  593. package/dist/fhir/Task.js.map +0 -1
  594. package/dist/fhir/TerminologyCapabilities.d.ts +0 -716
  595. package/dist/fhir/TerminologyCapabilities.js +0 -7
  596. package/dist/fhir/TerminologyCapabilities.js.map +0 -1
  597. package/dist/fhir/TestReport.d.ts +0 -549
  598. package/dist/fhir/TestReport.js +0 -7
  599. package/dist/fhir/TestReport.js.map +0 -1
  600. package/dist/fhir/TestScript.d.ts +0 -1184
  601. package/dist/fhir/TestScript.js +0 -7
  602. package/dist/fhir/TestScript.js.map +0 -1
  603. package/dist/fhir/Timing.d.ts +0 -178
  604. package/dist/fhir/Timing.js +0 -7
  605. package/dist/fhir/Timing.js.map +0 -1
  606. package/dist/fhir/TriggerDefinition.d.ts +0 -65
  607. package/dist/fhir/TriggerDefinition.js +0 -7
  608. package/dist/fhir/TriggerDefinition.js.map +0 -1
  609. package/dist/fhir/UsageContext.d.ts +0 -61
  610. package/dist/fhir/UsageContext.js +0 -7
  611. package/dist/fhir/UsageContext.js.map +0 -1
  612. package/dist/fhir/User.d.ts +0 -45
  613. package/dist/fhir/User.js +0 -7
  614. package/dist/fhir/User.js.map +0 -1
  615. package/dist/fhir/ValueSet.d.ts +0 -725
  616. package/dist/fhir/ValueSet.js +0 -7
  617. package/dist/fhir/ValueSet.js.map +0 -1
  618. package/dist/fhir/VerificationResult.d.ts +0 -340
  619. package/dist/fhir/VerificationResult.js +0 -7
  620. package/dist/fhir/VerificationResult.js.map +0 -1
  621. package/dist/fhir/VisionPrescription.d.ts +0 -264
  622. package/dist/fhir/VisionPrescription.js +0 -7
  623. package/dist/fhir/VisionPrescription.js.map +0 -1
  624. package/dist/fhir/index.d.ts +0 -196
  625. package/dist/fhir/index.js +0 -213
  626. package/dist/fhir/index.js.map +0 -1
  627. package/dist/fhirpath/functions.d.ts +0 -6
  628. package/dist/fhirpath/functions.js +0 -349
  629. package/dist/fhirpath/functions.js.map +0 -1
  630. package/dist/fhirpath/index.d.ts +0 -2
  631. package/dist/fhirpath/index.js +0 -15
  632. package/dist/fhirpath/index.js.map +0 -1
  633. package/dist/fhirpath/parse.d.ts +0 -10
  634. package/dist/fhirpath/parse.js +0 -266
  635. package/dist/fhirpath/parse.js.map +0 -1
  636. package/dist/fhirpath/tokenize.d.ts +0 -13
  637. package/dist/fhirpath/tokenize.js +0 -39
  638. package/dist/fhirpath/tokenize.js.map +0 -1
  639. package/dist/fhirpath/utils.d.ts +0 -13
  640. package/dist/fhirpath/utils.js +0 -34
  641. package/dist/fhirpath/utils.js.map +0 -1
  642. package/dist/format.js +0 -56
  643. package/dist/format.js.map +0 -1
  644. package/dist/index.js +0 -22
  645. package/dist/index.js.map +0 -1
  646. package/dist/jwt.d.ts +0 -5
  647. package/dist/jwt.js +0 -28
  648. package/dist/jwt.js.map +0 -1
  649. package/dist/outcomes.js +0 -140
  650. package/dist/outcomes.js.map +0 -1
  651. package/dist/search.js +0 -120
  652. package/dist/search.js.map +0 -1
  653. package/dist/searchparams.js +0 -129
  654. package/dist/searchparams.js.map +0 -1
  655. package/dist/storage.js +0 -90
  656. package/dist/storage.js.map +0 -1
  657. package/dist/types.js +0 -171
  658. package/dist/types.js.map +0 -1
  659. package/dist/utils.js +0 -234
  660. package/dist/utils.js.map +0 -1
package/dist/types.js DELETED
@@ -1,171 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPropertyDisplayName = exports.buildTypeName = exports.indexStructureDefinition = exports.PropertyType = void 0;
4
- const utils_1 = require("./utils");
5
- /**
6
- * List of property types.
7
- * http://www.hl7.org/fhir/valueset-defined-types.html
8
- * The list here includes additions found from StructureDefinition resources.
9
- */
10
- var PropertyType;
11
- (function (PropertyType) {
12
- PropertyType["Address"] = "Address";
13
- PropertyType["Age"] = "Age";
14
- PropertyType["Annotation"] = "Annotation";
15
- PropertyType["Attachment"] = "Attachment";
16
- PropertyType["BackboneElement"] = "BackboneElement";
17
- PropertyType["CodeableConcept"] = "CodeableConcept";
18
- PropertyType["Coding"] = "Coding";
19
- PropertyType["ContactDetail"] = "ContactDetail";
20
- PropertyType["ContactPoint"] = "ContactPoint";
21
- PropertyType["Contributor"] = "Contributor";
22
- PropertyType["Count"] = "Count";
23
- PropertyType["DataRequirement"] = "DataRequirement";
24
- PropertyType["Distance"] = "Distance";
25
- PropertyType["Dosage"] = "Dosage";
26
- PropertyType["Duration"] = "Duration";
27
- PropertyType["Expression"] = "Expression";
28
- PropertyType["Extension"] = "Extension";
29
- PropertyType["HumanName"] = "HumanName";
30
- PropertyType["Identifier"] = "Identifier";
31
- PropertyType["MarketingStatus"] = "MarketingStatus";
32
- PropertyType["Meta"] = "Meta";
33
- PropertyType["Money"] = "Money";
34
- PropertyType["Narrative"] = "Narrative";
35
- PropertyType["ParameterDefinition"] = "ParameterDefinition";
36
- PropertyType["Period"] = "Period";
37
- PropertyType["Population"] = "Population";
38
- PropertyType["ProdCharacteristic"] = "ProdCharacteristic";
39
- PropertyType["ProductShelfLife"] = "ProductShelfLife";
40
- PropertyType["Quantity"] = "Quantity";
41
- PropertyType["Range"] = "Range";
42
- PropertyType["Ratio"] = "Ratio";
43
- PropertyType["Reference"] = "Reference";
44
- PropertyType["RelatedArtifact"] = "RelatedArtifact";
45
- PropertyType["Resource"] = "Resource";
46
- PropertyType["SampledData"] = "SampledData";
47
- PropertyType["Signature"] = "Signature";
48
- PropertyType["SubstanceAmount"] = "SubstanceAmount";
49
- PropertyType["SystemString"] = "http://hl7.org/fhirpath/System.String";
50
- PropertyType["Timing"] = "Timing";
51
- PropertyType["TriggerDefinition"] = "TriggerDefinition";
52
- PropertyType["UsageContext"] = "UsageContext";
53
- PropertyType["base64Binary"] = "base64Binary";
54
- PropertyType["boolean"] = "boolean";
55
- PropertyType["canonical"] = "canonical";
56
- PropertyType["code"] = "code";
57
- PropertyType["date"] = "date";
58
- PropertyType["dateTime"] = "dateTime";
59
- PropertyType["decimal"] = "decimal";
60
- PropertyType["id"] = "id";
61
- PropertyType["instant"] = "instant";
62
- PropertyType["integer"] = "integer";
63
- PropertyType["markdown"] = "markdown";
64
- PropertyType["oid"] = "oid";
65
- PropertyType["positiveInt"] = "positiveInt";
66
- PropertyType["string"] = "string";
67
- PropertyType["time"] = "time";
68
- PropertyType["unsignedInt"] = "unsignedInt";
69
- PropertyType["uri"] = "uri";
70
- PropertyType["url"] = "url";
71
- PropertyType["uuid"] = "uuid";
72
- })(PropertyType = exports.PropertyType || (exports.PropertyType = {}));
73
- /**
74
- * Indexes a StructureDefinition for fast lookup.
75
- * See comments on IndexedStructureDefinition for more details.
76
- * @param structureDefinition The original StructureDefinition.
77
- * @return An indexed IndexedStructureDefinition.
78
- */
79
- function indexStructureDefinition(structureDefinition, output) {
80
- var _a;
81
- const typeName = structureDefinition.name;
82
- if (!typeName) {
83
- throw new Error('Invalid StructureDefinition');
84
- }
85
- if (!output) {
86
- output = {
87
- types: {}
88
- };
89
- }
90
- output.types[typeName] = {
91
- display: typeName,
92
- description: structureDefinition.description,
93
- properties: {}
94
- };
95
- const elements = (_a = structureDefinition.snapshot) === null || _a === void 0 ? void 0 : _a.element;
96
- if (elements) {
97
- // Filter out any elements missing path or type
98
- const filtered = elements.filter(e => e.path !== typeName && e.path); // && e.type && e.type.length > 0);
99
- // First pass, build types
100
- filtered.forEach(element => indexType(output, element));
101
- // Second pass, build properties
102
- filtered.forEach(element => indexProperty(output, element));
103
- }
104
- return output;
105
- }
106
- exports.indexStructureDefinition = indexStructureDefinition;
107
- /**
108
- * Indexes TypeSchema from an ElementDefinition.
109
- * In the common case, there will be many ElementDefinition instances per TypeSchema.
110
- * Only the first occurrence is saved.
111
- * @param output The work-in-progress IndexedStructureDefinition.
112
- * @param element The input ElementDefinition.
113
- */
114
- function indexType(output, element) {
115
- var _a, _b;
116
- const path = element.path;
117
- const typeCode = (_b = (_a = element.type) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.code;
118
- if (typeCode !== 'Element' && typeCode !== 'BackboneElement') {
119
- return;
120
- }
121
- const parts = path.split('.');
122
- const typeName = buildTypeName(parts);
123
- if (!(typeName in output.types)) {
124
- output.types[typeName] = {
125
- display: typeName,
126
- description: element.definition,
127
- parentType: buildTypeName(parts.slice(0, parts.length - 1)),
128
- properties: {}
129
- };
130
- }
131
- }
132
- /**
133
- * Indexes PropertySchema from an ElementDefinition.
134
- * @param output The work-in-progress IndexedStructureDefinition.
135
- * @param element The input ElementDefinition.
136
- */
137
- function indexProperty(output, element) {
138
- const path = element.path;
139
- const parts = path.split('.');
140
- if (parts.length === 1) {
141
- return;
142
- }
143
- const typeName = buildTypeName(parts.slice(0, parts.length - 1));
144
- const typeSchema = output.types[typeName];
145
- const key = parts[parts.length - 1];
146
- typeSchema.properties[key] = element;
147
- }
148
- function buildTypeName(components) {
149
- return components.map(utils_1.capitalize).join('');
150
- }
151
- exports.buildTypeName = buildTypeName;
152
- function getPropertyDisplayName(property) {
153
- // Get the property name, which is the remainder after the last period
154
- // For example, for path "Patient.birthDate"
155
- // the property name is "birthDate"
156
- const propertyName = property.path.split('.').pop();
157
- // Split by capital letters
158
- // Capitalize the first letter of each word
159
- // Join together with spaces in between
160
- // Then normalize whitespace to single space character
161
- // For example, for property name "birthDate",
162
- // the display name is "Birth Date".
163
- return propertyName
164
- .split(/(?=[A-Z])/)
165
- .map(utils_1.capitalize)
166
- .join(' ')
167
- .replace('_', ' ')
168
- .replace(/\s+/g, ' ');
169
- }
170
- exports.getPropertyDisplayName = getPropertyDisplayName;
171
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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","sourcesContent":["import { ElementDefinition, SearchParameter, StructureDefinition } from './fhir';\nimport { capitalize } from './utils';\n\n/**\n * List of property types.\n * http://www.hl7.org/fhir/valueset-defined-types.html\n * The list here includes additions found from StructureDefinition resources.\n */\nexport enum PropertyType {\n Address = 'Address',\n Age = 'Age',\n Annotation = 'Annotation',\n Attachment = 'Attachment',\n BackboneElement = 'BackboneElement',\n CodeableConcept = 'CodeableConcept',\n Coding = 'Coding',\n ContactDetail = 'ContactDetail',\n ContactPoint = 'ContactPoint',\n Contributor = 'Contributor',\n Count = 'Count',\n DataRequirement = 'DataRequirement',\n Distance = 'Distance',\n Dosage = 'Dosage',\n Duration = 'Duration',\n Expression = 'Expression',\n Extension = 'Extension',\n HumanName = 'HumanName',\n Identifier = 'Identifier',\n MarketingStatus = 'MarketingStatus',\n Meta = 'Meta',\n Money = 'Money',\n Narrative = 'Narrative',\n ParameterDefinition = 'ParameterDefinition',\n Period = 'Period',\n Population = 'Population',\n ProdCharacteristic = 'ProdCharacteristic',\n ProductShelfLife = 'ProductShelfLife',\n Quantity = 'Quantity',\n Range = 'Range',\n Ratio = 'Ratio',\n Reference = 'Reference',\n RelatedArtifact = 'RelatedArtifact',\n Resource = 'Resource',\n SampledData = 'SampledData',\n Signature = 'Signature',\n SubstanceAmount = 'SubstanceAmount',\n SystemString = 'http://hl7.org/fhirpath/System.String',\n Timing = 'Timing',\n TriggerDefinition = 'TriggerDefinition',\n UsageContext = 'UsageContext',\n base64Binary = 'base64Binary',\n boolean = 'boolean',\n canonical = 'canonical',\n code = 'code',\n date = 'date',\n dateTime = 'dateTime',\n decimal = 'decimal',\n id = 'id',\n instant = 'instant',\n integer = 'integer',\n markdown = 'markdown',\n oid = 'oid',\n positiveInt = 'positiveInt',\n string = 'string',\n time = 'time',\n unsignedInt = 'unsignedInt',\n uri = 'uri',\n url = 'url',\n uuid = 'uuid',\n}\n\n/**\n * An IndexedStructureDefinition is a lookup-optimized version of a StructureDefinition.\n *\n * StructureDefinition resources contain schema information for other resource types.\n * These schemas can be used to automatically generate user interface elements for\n * resources.\n *\n * However, a StructureDefinition resource is not optimized for realtime lookups. All\n * resource types, sub types, and property definitions are stored in a flat array of\n * ElementDefinition objects. Therefore, to lookup the schema for a property (i.e., \"Patient.name\")\n * requires a linear scan of all ElementDefinition objects\n *\n * A StructureDefinition resource contains information about one or more types.\n * For example, the \"Patient\" StructureDefinition includes \"Patient\", \"Patient_Contact\",\n * \"Patient_Communication\", and \"Patient_Link\". This is inefficient.\n *\n * Instead, we create an indexed version of the StructureDefinition, called IndexedStructureDefinition.\n * In an IndexedStructureDefinition, retrieving a property definition is a hashtable lookup.\n *\n * The hierarchy is:\n * IndexedStructureDefinition - top level for one resource type\n * TypeSchema - one per resource type and all contained BackboneElements\n * PropertySchema - one per property/field\n */\nexport interface IndexedStructureDefinition {\n types: { [resourceType: string]: TypeSchema };\n}\n\n/**\n * An indexed TypeSchema.\n *\n * Example: The IndexedStructureDefinition for \"Patient\" would include the following TypeSchemas:\n * 1) Patient\n * 2) Patient_Contact\n * 3) Patient_Communication\n * 4) Patient_Link\n */\nexport interface TypeSchema {\n display: string;\n properties: { [name: string]: ElementDefinition };\n searchParams?: SearchParameter[];\n description?: string;\n parentType?: string;\n}\n\n/**\n * Indexes a StructureDefinition for fast lookup.\n * See comments on IndexedStructureDefinition for more details.\n * @param structureDefinition The original StructureDefinition.\n * @return An indexed IndexedStructureDefinition.\n */\nexport function indexStructureDefinition(structureDefinition: StructureDefinition, output?: IndexedStructureDefinition): IndexedStructureDefinition {\n const typeName = structureDefinition.name;\n if (!typeName) {\n throw new Error('Invalid StructureDefinition');\n }\n\n if (!output) {\n output = {\n types: {}\n } as IndexedStructureDefinition;\n }\n\n output.types[typeName] = {\n display: typeName,\n description: structureDefinition.description,\n properties: {}\n };\n\n const elements = structureDefinition.snapshot?.element;\n if (elements) {\n // Filter out any elements missing path or type\n const filtered = elements.filter(e => e.path !== typeName && e.path);// && e.type && e.type.length > 0);\n\n // First pass, build types\n filtered.forEach(element => indexType(output as IndexedStructureDefinition, element));\n\n // Second pass, build properties\n filtered.forEach(element => indexProperty(output as IndexedStructureDefinition, element));\n }\n\n return output;\n}\n\n/**\n * Indexes TypeSchema from an ElementDefinition.\n * In the common case, there will be many ElementDefinition instances per TypeSchema.\n * Only the first occurrence is saved.\n * @param output The work-in-progress IndexedStructureDefinition.\n * @param element The input ElementDefinition.\n */\nfunction indexType(output: IndexedStructureDefinition, element: ElementDefinition): void {\n const path = element.path as string;\n const typeCode = element.type?.[0]?.code;\n if (typeCode !== 'Element' && typeCode !== 'BackboneElement') {\n return;\n }\n const parts = path.split('.');\n const typeName = buildTypeName(parts);\n if (!(typeName in output.types)) {\n output.types[typeName] = {\n display: typeName,\n description: element.definition,\n parentType: buildTypeName(parts.slice(0, parts.length - 1)),\n properties: {}\n };\n }\n}\n\n/**\n * Indexes PropertySchema from an ElementDefinition.\n * @param output The work-in-progress IndexedStructureDefinition.\n * @param element The input ElementDefinition.\n */\nfunction indexProperty(output: IndexedStructureDefinition, element: ElementDefinition): void {\n const path = element.path as string;\n const parts = path.split('.');\n if (parts.length === 1) {\n return;\n }\n const typeName = buildTypeName(parts.slice(0, parts.length - 1));\n const typeSchema = output.types[typeName];\n const key = parts[parts.length - 1];\n typeSchema.properties[key] = element;\n}\n\nexport function buildTypeName(components: string[]): string {\n return components.map(capitalize).join('');\n}\n\nexport function getPropertyDisplayName(property: ElementDefinition): string {\n // Get the property name, which is the remainder after the last period\n // For example, for path \"Patient.birthDate\"\n // the property name is \"birthDate\"\n const propertyName = (property.path as string).split('.').pop() as string;\n\n // Split by capital letters\n // Capitalize the first letter of each word\n // Join together with spaces in between\n // Then normalize whitespace to single space character\n // For example, for property name \"birthDate\",\n // the display name is \"Birth Date\".\n return propertyName\n .split(/(?=[A-Z])/)\n .map(capitalize)\n .join(' ')\n .replace('_', ' ')\n .replace(/\\s+/g, ' ');\n}\n"]}
package/dist/utils.js DELETED
@@ -1,234 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isLowerCase = exports.capitalize = exports.arrayBufferToBase64 = exports.arrayBufferToHex = exports.deepEquals = exports.stringify = exports.getDateProperty = exports.getImageSrc = exports.getDisplayString = exports.isProfileResource = exports.getReferenceString = exports.createReference = void 0;
4
- const format_1 = require("./format");
5
- /**
6
- * Creates a reference resource.
7
- * @param resource The FHIR reesource.
8
- * @returns A reference resource.
9
- */
10
- function createReference(resource) {
11
- const reference = getReferenceString(resource);
12
- const display = getDisplayString(resource);
13
- return (display === reference) ? { reference } : { reference, display };
14
- }
15
- exports.createReference = createReference;
16
- /**
17
- * Returns a reference string for a resource.
18
- * @param resource The FHIR resource.
19
- * @returns A reference string of the form resourceType/id.
20
- */
21
- function getReferenceString(resource) {
22
- return resource.resourceType + '/' + resource.id;
23
- }
24
- exports.getReferenceString = getReferenceString;
25
- /**
26
- * Returns true if the resource is a "ProfileResource".
27
- * @param resource The FHIR resource.
28
- * @returns True if the resource is a "ProfileResource".
29
- */
30
- function isProfileResource(resource) {
31
- return resource.resourceType === 'Patient' ||
32
- resource.resourceType === 'Practitioner' ||
33
- resource.resourceType === 'RelatedPerson';
34
- }
35
- exports.isProfileResource = isProfileResource;
36
- /**
37
- * Returns a display string for the resource.
38
- * @param resource The input resource.
39
- * @return Human friendly display string.
40
- */
41
- function getDisplayString(resource) {
42
- if (isProfileResource(resource)) {
43
- const profileName = getProfileResourceDisplayString(resource);
44
- if (profileName) {
45
- return profileName;
46
- }
47
- }
48
- if (resource.resourceType === 'Device') {
49
- const deviceName = getDeviceDisplayString(resource);
50
- if (deviceName) {
51
- return deviceName;
52
- }
53
- }
54
- const simpleName = resource.name;
55
- if (simpleName && typeof simpleName === 'string') {
56
- return simpleName;
57
- }
58
- return getReferenceString(resource);
59
- }
60
- exports.getDisplayString = getDisplayString;
61
- /**
62
- * Returns a display string for a profile resource if one is found.
63
- * @param resource The profile resource.
64
- * @returns The display name if one is found.
65
- */
66
- function getProfileResourceDisplayString(resource) {
67
- const names = resource.name;
68
- if (names && names.length > 0) {
69
- return (0, format_1.formatHumanName)(names[0]);
70
- }
71
- return undefined;
72
- }
73
- /**
74
- * Returns a display string for a device resource if one is found.
75
- * @param device The device resource.
76
- * @returns The display name if one is found.
77
- */
78
- function getDeviceDisplayString(device) {
79
- const names = device.deviceName;
80
- if (names && names.length > 0) {
81
- return names[0].name;
82
- }
83
- return undefined;
84
- }
85
- /**
86
- * Returns an image URL for the resource, if one is available.
87
- * @param resource The input resource.
88
- * @returns The image URL for the resource or undefined.
89
- */
90
- function getImageSrc(resource) {
91
- if (isProfileResource(resource)) {
92
- const photos = resource.photo;
93
- if (photos) {
94
- for (const photo of photos) {
95
- if (photo.url && photo.contentType && photo.contentType.startsWith('image/')) {
96
- return photo.url;
97
- }
98
- }
99
- }
100
- }
101
- return undefined;
102
- }
103
- exports.getImageSrc = getImageSrc;
104
- /**
105
- * Returns a Date property as a Date.
106
- * When working with JSON objects, Dates are often serialized as ISO-8601 strings.
107
- * When that happens, we need to safely convert to a proper Date object.
108
- * @param date The date property value, which could be a string or a Date object.
109
- * @returns A Date object.
110
- */
111
- function getDateProperty(date) {
112
- return date ? new Date(date) : undefined;
113
- }
114
- exports.getDateProperty = getDateProperty;
115
- /**
116
- * FHIR JSON stringify.
117
- * Removes properties with empty string values.
118
- * Removes objects with zero properties.
119
- * See: https://www.hl7.org/fhir/json.html
120
- * @param value The input value.
121
- * @param pretty Optional flag to pretty-print the JSON.
122
- * @returns The resulting JSON string.
123
- */
124
- function stringify(value, pretty) {
125
- return JSON.stringify(value, stringifyReplacer, pretty ? 2 : undefined);
126
- }
127
- exports.stringify = stringify;
128
- /**
129
- * Evaluates JSON key/value pairs for FHIR JSON stringify.
130
- * Removes properties with empty string values.
131
- * Removes objects with zero properties.
132
- * Replaces any key/value pair of key "__key" with value undefined.
133
- * This function can be used as the 2nd argument to stringify to remove __key properties.
134
- * We add __key properties to array elements to improve React render performance.
135
- * @param {string} k Property key.
136
- * @param {*} v Property value.
137
- */
138
- function stringifyReplacer(k, v) {
139
- return (k === '__key' || isEmpty(v)) ? undefined : v;
140
- }
141
- /**
142
- * Returns true if the value is empty (null, undefined, empty string, or empty object).
143
- * @param v Any value.
144
- * @returns True if the value is an empty string or an empty object.
145
- */
146
- function isEmpty(v) {
147
- if (v === null || v === undefined) {
148
- return true;
149
- }
150
- const t = typeof v;
151
- return (t === 'string' && v === '') || (t === 'object' && Object.keys(v).length === 0);
152
- }
153
- /**
154
- * Resource equality.
155
- * Ignores meta.versionId and meta.lastUpdated.
156
- * See: https://dmitripavlutin.com/how-to-compare-objects-in-javascript/#4-deep-equality
157
- * @param object1 The first object.
158
- * @param object2 The second object.
159
- * @returns True if the objects are equal.
160
- */
161
- function deepEquals(object1, object2, path) {
162
- let keys1 = Object.keys(object1);
163
- let keys2 = Object.keys(object2);
164
- if (path === 'meta') {
165
- keys1 = keys1.filter(k => k !== 'versionId' && k !== 'lastUpdated');
166
- keys2 = keys2.filter(k => k !== 'versionId' && k !== 'lastUpdated');
167
- }
168
- if (keys1.length !== keys2.length) {
169
- return false;
170
- }
171
- for (const key of keys1) {
172
- const val1 = object1[key];
173
- const val2 = object2[key];
174
- if (isObject(val1) && isObject(val2)) {
175
- if (!deepEquals(val1, val2, key)) {
176
- return false;
177
- }
178
- }
179
- else {
180
- if (val1 !== val2) {
181
- return false;
182
- }
183
- }
184
- }
185
- return true;
186
- }
187
- exports.deepEquals = deepEquals;
188
- function isObject(object) {
189
- return object !== null && typeof object === 'object';
190
- }
191
- // Precompute hex octets
192
- // See: https://stackoverflow.com/a/55200387
193
- const byteToHex = [];
194
- for (let n = 0; n < 256; n++) {
195
- byteToHex.push(n.toString(16).padStart(2, '0'));
196
- }
197
- /**
198
- * Converts an ArrayBuffer to hex string.
199
- * See: https://stackoverflow.com/a/55200387
200
- * @param arrayBuffer The input array buffer.
201
- * @returns The resulting hex string.
202
- */
203
- function arrayBufferToHex(arrayBuffer) {
204
- const bytes = new Uint8Array(arrayBuffer);
205
- const result = new Array(bytes.length);
206
- for (let i = 0; i < bytes.length; i++) {
207
- result[i] = byteToHex[bytes[i]];
208
- }
209
- return result.join('');
210
- }
211
- exports.arrayBufferToHex = arrayBufferToHex;
212
- /**
213
- * Converts an ArrayBuffer to a base-64 encoded string.
214
- * @param arrayBuffer The input array buffer.
215
- * @returns The base-64 encoded string.
216
- */
217
- function arrayBufferToBase64(arrayBuffer) {
218
- const bytes = new Uint8Array(arrayBuffer);
219
- const result = [];
220
- for (let i = 0; i < bytes.length; i++) {
221
- result[i] = String.fromCharCode(bytes[i]);
222
- }
223
- return window.btoa(result.join(''));
224
- }
225
- exports.arrayBufferToBase64 = arrayBufferToBase64;
226
- function capitalize(word) {
227
- return word.charAt(0).toUpperCase() + word.substr(1);
228
- }
229
- exports.capitalize = capitalize;
230
- function isLowerCase(c) {
231
- return c === c.toLowerCase();
232
- }
233
- exports.isLowerCase = isLowerCase;
234
- //# sourceMappingURL=utils.js.map
package/dist/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { Device, Patient, Practitioner, Reference, RelatedPerson, Resource } from './fhir';\nimport { formatHumanName } from './format';\n\nexport type ProfileResource = Patient | Practitioner | RelatedPerson;\n\n/**\n * Creates a reference resource.\n * @param resource The FHIR reesource.\n * @returns A reference resource.\n */\nexport function createReference<T extends Resource>(resource: T): Reference<T> {\n const reference = getReferenceString(resource);\n const display = getDisplayString(resource);\n return (display === reference) ? { reference } : { reference, display };\n}\n\n/**\n * Returns a reference string for a resource.\n * @param resource The FHIR resource.\n * @returns A reference string of the form resourceType/id.\n */\nexport function getReferenceString(resource: Resource): string {\n return resource.resourceType + '/' + resource.id;\n}\n\n/**\n * Returns true if the resource is a \"ProfileResource\".\n * @param resource The FHIR resource.\n * @returns True if the resource is a \"ProfileResource\".\n */\nexport function isProfileResource(resource: Resource): boolean {\n return resource.resourceType === 'Patient' ||\n resource.resourceType === 'Practitioner' ||\n resource.resourceType === 'RelatedPerson';\n}\n\n/**\n * Returns a display string for the resource.\n * @param resource The input resource.\n * @return Human friendly display string.\n */\nexport function getDisplayString(resource: Resource): string {\n if (isProfileResource(resource)) {\n const profileName = getProfileResourceDisplayString(resource as ProfileResource);\n if (profileName) {\n return profileName;\n }\n }\n if (resource.resourceType === 'Device') {\n const deviceName = getDeviceDisplayString(resource);\n if (deviceName) {\n return deviceName;\n }\n }\n const simpleName = (resource as any).name;\n if (simpleName && typeof simpleName === 'string') {\n return simpleName;\n }\n return getReferenceString(resource);\n}\n\n/**\n * Returns a display string for a profile resource if one is found.\n * @param resource The profile resource.\n * @returns The display name if one is found.\n */\nfunction getProfileResourceDisplayString(resource: ProfileResource): string | undefined {\n const names = resource.name;\n if (names && names.length > 0) {\n return formatHumanName(names[0]);\n }\n return undefined;\n}\n\n/**\n * Returns a display string for a device resource if one is found.\n * @param device The device resource.\n * @returns The display name if one is found.\n */\nfunction getDeviceDisplayString(device: Device): string | undefined {\n const names = device.deviceName;\n if (names && names.length > 0) {\n return names[0].name;\n }\n return undefined;\n}\n\n/**\n * Returns an image URL for the resource, if one is available.\n * @param resource The input resource.\n * @returns The image URL for the resource or undefined.\n */\nexport function getImageSrc(resource: Resource): string | undefined {\n if (isProfileResource(resource)) {\n const photos = (resource as ProfileResource).photo;\n if (photos) {\n for (const photo of photos) {\n if (photo.url && photo.contentType && photo.contentType.startsWith('image/')) {\n return photo.url;\n }\n }\n }\n }\n return undefined;\n}\n\n/**\n * Returns a Date property as a Date.\n * When working with JSON objects, Dates are often serialized as ISO-8601 strings.\n * When that happens, we need to safely convert to a proper Date object.\n * @param date The date property value, which could be a string or a Date object.\n * @returns A Date object.\n */\nexport function getDateProperty(date: string | undefined): Date | undefined {\n return date ? new Date(date) : undefined;\n}\n\n/**\n * FHIR JSON stringify.\n * Removes properties with empty string values.\n * Removes objects with zero properties.\n * See: https://www.hl7.org/fhir/json.html\n * @param value The input value.\n * @param pretty Optional flag to pretty-print the JSON.\n * @returns The resulting JSON string.\n */\nexport function stringify(value: any, pretty?: boolean): string {\n return JSON.stringify(value, stringifyReplacer, pretty ? 2 : undefined);\n}\n\n/**\n * Evaluates JSON key/value pairs for FHIR JSON stringify.\n * Removes properties with empty string values.\n * Removes objects with zero properties.\n * Replaces any key/value pair of key \"__key\" with value undefined.\n * This function can be used as the 2nd argument to stringify to remove __key properties.\n * We add __key properties to array elements to improve React render performance.\n * @param {string} k Property key.\n * @param {*} v Property value.\n */\nfunction stringifyReplacer(k: string, v: any): any {\n return (k === '__key' || isEmpty(v)) ? undefined : v;\n}\n\n/**\n * Returns true if the value is empty (null, undefined, empty string, or empty object).\n * @param v Any value.\n * @returns True if the value is an empty string or an empty object.\n */\nfunction isEmpty(v: any): boolean {\n if (v === null || v === undefined) {\n return true;\n }\n const t = typeof v;\n return (t === 'string' && v === '') || (t === 'object' && Object.keys(v).length === 0);\n}\n\n/**\n * Resource equality.\n * Ignores meta.versionId and meta.lastUpdated.\n * See: https://dmitripavlutin.com/how-to-compare-objects-in-javascript/#4-deep-equality\n * @param object1 The first object.\n * @param object2 The second object.\n * @returns True if the objects are equal.\n */\nexport function deepEquals(object1: any, object2: any, path?: string): boolean {\n let keys1 = Object.keys(object1);\n let keys2 = Object.keys(object2);\n if (path === 'meta') {\n keys1 = keys1.filter(k => k !== 'versionId' && k !== 'lastUpdated');\n keys2 = keys2.filter(k => k !== 'versionId' && k !== 'lastUpdated');\n }\n if (keys1.length !== keys2.length) {\n return false;\n }\n for (const key of keys1) {\n const val1 = object1[key];\n const val2 = object2[key];\n if (isObject(val1) && isObject(val2)) {\n if (!deepEquals(val1, val2, key)) {\n return false;\n }\n } else {\n if (val1 !== val2) {\n return false;\n }\n }\n }\n return true;\n}\n\nfunction isObject(object: any): boolean {\n return object !== null && typeof object === 'object';\n}\n\n// Precompute hex octets\n// See: https://stackoverflow.com/a/55200387\nconst byteToHex: string[] = [];\nfor (let n = 0; n < 256; n++) {\n byteToHex.push(n.toString(16).padStart(2, '0'));\n}\n\n/**\n * Converts an ArrayBuffer to hex string.\n * See: https://stackoverflow.com/a/55200387\n * @param arrayBuffer The input array buffer.\n * @returns The resulting hex string.\n */\nexport function arrayBufferToHex(arrayBuffer: ArrayBuffer): string {\n const bytes = new Uint8Array(arrayBuffer);\n const result: string[] = new Array(bytes.length);\n for (let i = 0; i < bytes.length; i++) {\n result[i] = byteToHex[bytes[i]];\n }\n return result.join('');\n}\n\n/**\n * Converts an ArrayBuffer to a base-64 encoded string.\n * @param arrayBuffer The input array buffer.\n * @returns The base-64 encoded string.\n */\nexport function arrayBufferToBase64(arrayBuffer: ArrayBuffer): string {\n const bytes = new Uint8Array(arrayBuffer);\n const result: string[] = [];\n for (let i = 0; i < bytes.length; i++) {\n result[i] = String.fromCharCode(bytes[i]);\n }\n return window.btoa(result.join(''));\n}\n\nexport function capitalize(word: string): string {\n return word.charAt(0).toUpperCase() + word.substr(1);\n}\n\nexport function isLowerCase(c: string): boolean {\n return c === c.toLowerCase();\n}\n"]}