@openhi/types 0.0.59 → 0.0.60

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 (714) hide show
  1. package/lib/esm/auth/index.js +2 -0
  2. package/lib/esm/auth/jwt-claims.js +2 -0
  3. package/lib/esm/control/constants.js +60 -0
  4. package/lib/esm/control/index.js +10 -0
  5. package/lib/esm/control/membership.js +16 -0
  6. package/lib/esm/control/role.js +14 -0
  7. package/lib/esm/control/roleassignment.js +17 -0
  8. package/lib/esm/control/tenant.js +37 -0
  9. package/lib/esm/control/user.js +41 -0
  10. package/lib/esm/control/workspace.js +38 -0
  11. package/lib/esm/data/account.js +28 -0
  12. package/lib/esm/data/account_coverage.js +15 -0
  13. package/lib/esm/data/account_guarantor.js +17 -0
  14. package/lib/esm/data/activitydefinition.js +79 -0
  15. package/lib/esm/data/activitydefinition_dynamicvalue.js +15 -0
  16. package/lib/esm/data/activitydefinition_participant.js +16 -0
  17. package/lib/esm/data/address.js +23 -0
  18. package/lib/esm/data/adverseevent.js +35 -0
  19. package/lib/esm/data/adverseevent_suspectentity.js +16 -0
  20. package/lib/esm/data/adverseevent_suspectentity_causality.js +18 -0
  21. package/lib/esm/data/age.js +17 -0
  22. package/lib/esm/data/allergyintolerance.js +39 -0
  23. package/lib/esm/data/allergyintolerance_reaction.js +22 -0
  24. package/lib/esm/data/annotation.js +16 -0
  25. package/lib/esm/data/appointment.js +38 -0
  26. package/lib/esm/data/appointment_participant.js +21 -0
  27. package/lib/esm/data/appointmentresponse.js +22 -0
  28. package/lib/esm/data/attachment.js +19 -0
  29. package/lib/esm/data/auditevent.js +28 -0
  30. package/lib/esm/data/auditevent_agent.js +27 -0
  31. package/lib/esm/data/auditevent_agent_network.js +15 -0
  32. package/lib/esm/data/auditevent_entity.js +24 -0
  33. package/lib/esm/data/auditevent_entity_detail.js +15 -0
  34. package/lib/esm/data/auditevent_source.js +17 -0
  35. package/lib/esm/data/backboneelement.js +12 -0
  36. package/lib/esm/data/base64binary.js +5 -0
  37. package/lib/esm/data/basic.js +18 -0
  38. package/lib/esm/data/binary.js +14 -0
  39. package/lib/esm/data/biologicallyderivedproduct.js +31 -0
  40. package/lib/esm/data/biologicallyderivedproduct_collection.js +18 -0
  41. package/lib/esm/data/biologicallyderivedproduct_manipulation.js +16 -0
  42. package/lib/esm/data/biologicallyderivedproduct_processing.js +20 -0
  43. package/lib/esm/data/biologicallyderivedproduct_storage.js +18 -0
  44. package/lib/esm/data/bodystructure.js +22 -0
  45. package/lib/esm/data/bundle.js +22 -0
  46. package/lib/esm/data/bundle_entry.js +23 -0
  47. package/lib/esm/data/bundle_entry_request.js +19 -0
  48. package/lib/esm/data/bundle_entry_response.js +18 -0
  49. package/lib/esm/data/bundle_entry_search.js +15 -0
  50. package/lib/esm/data/bundle_link.js +14 -0
  51. package/lib/esm/data/canonical.js +5 -0
  52. package/lib/esm/data/capabilitystatement.js +45 -0
  53. package/lib/esm/data/capabilitystatement_document.js +16 -0
  54. package/lib/esm/data/capabilitystatement_implementation.js +16 -0
  55. package/lib/esm/data/capabilitystatement_messaging.js +20 -0
  56. package/lib/esm/data/capabilitystatement_messaging_endpoint.js +15 -0
  57. package/lib/esm/data/capabilitystatement_messaging_supportedmessage.js +15 -0
  58. package/lib/esm/data/capabilitystatement_rest.js +30 -0
  59. package/lib/esm/data/capabilitystatement_rest_interaction.js +15 -0
  60. package/lib/esm/data/capabilitystatement_rest_resource.js +39 -0
  61. package/lib/esm/data/capabilitystatement_rest_resource_interaction.js +15 -0
  62. package/lib/esm/data/capabilitystatement_rest_resource_operation.js +15 -0
  63. package/lib/esm/data/capabilitystatement_rest_resource_searchparam.js +17 -0
  64. package/lib/esm/data/capabilitystatement_rest_security.js +16 -0
  65. package/lib/esm/data/capabilitystatement_software.js +15 -0
  66. package/lib/esm/data/careplan.js +40 -0
  67. package/lib/esm/data/careplan_activity.js +21 -0
  68. package/lib/esm/data/careplan_activity_detail.js +38 -0
  69. package/lib/esm/data/careteam.js +31 -0
  70. package/lib/esm/data/careteam_participant.js +19 -0
  71. package/lib/esm/data/catalogentry.js +29 -0
  72. package/lib/esm/data/catalogentry_relatedentry.js +16 -0
  73. package/lib/esm/data/chargeitem.js +49 -0
  74. package/lib/esm/data/chargeitem_performer.js +16 -0
  75. package/lib/esm/data/chargeitemdefinition.js +46 -0
  76. package/lib/esm/data/chargeitemdefinition_applicability.js +15 -0
  77. package/lib/esm/data/chargeitemdefinition_propertygroup.js +18 -0
  78. package/lib/esm/data/chargeitemdefinition_propertygroup_pricecomponent.js +19 -0
  79. package/lib/esm/data/claim.js +52 -0
  80. package/lib/esm/data/claim_accident.js +19 -0
  81. package/lib/esm/data/claim_careteam.js +19 -0
  82. package/lib/esm/data/claim_diagnosis.js +20 -0
  83. package/lib/esm/data/claim_insurance.js +21 -0
  84. package/lib/esm/data/claim_item.js +43 -0
  85. package/lib/esm/data/claim_item_detail.js +29 -0
  86. package/lib/esm/data/claim_item_detail_subdetail.js +27 -0
  87. package/lib/esm/data/claim_payee.js +16 -0
  88. package/lib/esm/data/claim_procedure.js +20 -0
  89. package/lib/esm/data/claim_related.js +18 -0
  90. package/lib/esm/data/claim_supportinginfo.js +28 -0
  91. package/lib/esm/data/claimresponse.js +51 -0
  92. package/lib/esm/data/claimresponse_additem.js +41 -0
  93. package/lib/esm/data/claimresponse_additem_detail.js +26 -0
  94. package/lib/esm/data/claimresponse_additem_detail_subdetail.js +24 -0
  95. package/lib/esm/data/claimresponse_error.js +17 -0
  96. package/lib/esm/data/claimresponse_insurance.js +18 -0
  97. package/lib/esm/data/claimresponse_item.js +18 -0
  98. package/lib/esm/data/claimresponse_item_adjudication.js +18 -0
  99. package/lib/esm/data/claimresponse_item_detail.js +18 -0
  100. package/lib/esm/data/claimresponse_item_detail_subdetail.js +16 -0
  101. package/lib/esm/data/claimresponse_payment.js +21 -0
  102. package/lib/esm/data/claimresponse_processnote.js +18 -0
  103. package/lib/esm/data/claimresponse_total.js +16 -0
  104. package/lib/esm/data/clinicalimpression.js +39 -0
  105. package/lib/esm/data/clinicalimpression_finding.js +17 -0
  106. package/lib/esm/data/clinicalimpression_investigation.js +16 -0
  107. package/lib/esm/data/code.js +5 -0
  108. package/lib/esm/data/codeableconcept.js +14 -0
  109. package/lib/esm/data/codesystem.js +44 -0
  110. package/lib/esm/data/codesystem_concept.js +20 -0
  111. package/lib/esm/data/codesystem_concept_designation.js +16 -0
  112. package/lib/esm/data/codesystem_concept_property.js +21 -0
  113. package/lib/esm/data/codesystem_filter.js +17 -0
  114. package/lib/esm/data/codesystem_property.js +17 -0
  115. package/lib/esm/data/coding.js +16 -0
  116. package/lib/esm/data/communication.js +39 -0
  117. package/lib/esm/data/communication_payload.js +17 -0
  118. package/lib/esm/data/communicationrequest.js +40 -0
  119. package/lib/esm/data/communicationrequest_payload.js +17 -0
  120. package/lib/esm/data/compartmentdefinition.js +28 -0
  121. package/lib/esm/data/compartmentdefinition_resource.js +16 -0
  122. package/lib/esm/data/composition.js +33 -0
  123. package/lib/esm/data/composition_attester.js +17 -0
  124. package/lib/esm/data/composition_event.js +18 -0
  125. package/lib/esm/data/composition_relatesto.js +18 -0
  126. package/lib/esm/data/composition_section.js +26 -0
  127. package/lib/esm/data/conceptmap.js +36 -0
  128. package/lib/esm/data/conceptmap_group.js +20 -0
  129. package/lib/esm/data/conceptmap_group_element.js +16 -0
  130. package/lib/esm/data/conceptmap_group_element_target.js +20 -0
  131. package/lib/esm/data/conceptmap_group_element_target_dependson.js +16 -0
  132. package/lib/esm/data/conceptmap_group_unmapped.js +17 -0
  133. package/lib/esm/data/condition.js +44 -0
  134. package/lib/esm/data/condition_evidence.js +16 -0
  135. package/lib/esm/data/condition_stage.js +17 -0
  136. package/lib/esm/data/consent.js +32 -0
  137. package/lib/esm/data/consent_policy.js +14 -0
  138. package/lib/esm/data/consent_provision.js +29 -0
  139. package/lib/esm/data/consent_provision_actor.js +16 -0
  140. package/lib/esm/data/consent_provision_data.js +16 -0
  141. package/lib/esm/data/consent_verification.js +16 -0
  142. package/lib/esm/data/constants.js +6889 -0
  143. package/lib/esm/data/contactdetail.js +14 -0
  144. package/lib/esm/data/contactpoint.js +18 -0
  145. package/lib/esm/data/contract.js +57 -0
  146. package/lib/esm/data/contract_contentdefinition.js +21 -0
  147. package/lib/esm/data/contract_friendly.js +16 -0
  148. package/lib/esm/data/contract_legal.js +16 -0
  149. package/lib/esm/data/contract_rule.js +16 -0
  150. package/lib/esm/data/contract_signer.js +18 -0
  151. package/lib/esm/data/contract_term.js +33 -0
  152. package/lib/esm/data/contract_term_action.js +41 -0
  153. package/lib/esm/data/contract_term_action_subject.js +16 -0
  154. package/lib/esm/data/contract_term_asset.js +34 -0
  155. package/lib/esm/data/contract_term_asset_context.js +17 -0
  156. package/lib/esm/data/contract_term_asset_valueditem.js +32 -0
  157. package/lib/esm/data/contract_term_offer.js +27 -0
  158. package/lib/esm/data/contract_term_offer_answer.js +28 -0
  159. package/lib/esm/data/contract_term_offer_party.js +16 -0
  160. package/lib/esm/data/contract_term_securitylabel.js +17 -0
  161. package/lib/esm/data/contributor.js +16 -0
  162. package/lib/esm/data/count.js +17 -0
  163. package/lib/esm/data/coverage.js +34 -0
  164. package/lib/esm/data/coverage_class.js +16 -0
  165. package/lib/esm/data/coverage_costtobeneficiary.js +20 -0
  166. package/lib/esm/data/coverage_costtobeneficiary_exception.js +16 -0
  167. package/lib/esm/data/coverageeligibilityrequest.js +35 -0
  168. package/lib/esm/data/coverageeligibilityrequest_insurance.js +16 -0
  169. package/lib/esm/data/coverageeligibilityrequest_item.js +29 -0
  170. package/lib/esm/data/coverageeligibilityrequest_item_diagnosis.js +16 -0
  171. package/lib/esm/data/coverageeligibilityrequest_supportinginfo.js +16 -0
  172. package/lib/esm/data/coverageeligibilityresponse.js +33 -0
  173. package/lib/esm/data/coverageeligibilityresponse_error.js +14 -0
  174. package/lib/esm/data/coverageeligibilityresponse_insurance.js +19 -0
  175. package/lib/esm/data/coverageeligibilityresponse_insurance_item.js +31 -0
  176. package/lib/esm/data/coverageeligibilityresponse_insurance_item_benefit.js +21 -0
  177. package/lib/esm/data/datarequirement.js +26 -0
  178. package/lib/esm/data/datarequirement_codefilter.js +16 -0
  179. package/lib/esm/data/datarequirement_datefilter.js +18 -0
  180. package/lib/esm/data/datarequirement_sort.js +14 -0
  181. package/lib/esm/data/date.js +5 -0
  182. package/lib/esm/data/datetime.js +5 -0
  183. package/lib/esm/data/definition.js +39 -0
  184. package/lib/esm/data/detectedissue.js +30 -0
  185. package/lib/esm/data/detectedissue_evidence.js +16 -0
  186. package/lib/esm/data/detectedissue_mitigation.js +17 -0
  187. package/lib/esm/data/device.js +47 -0
  188. package/lib/esm/data/device_devicename.js +15 -0
  189. package/lib/esm/data/device_property.js +17 -0
  190. package/lib/esm/data/device_specialization.js +15 -0
  191. package/lib/esm/data/device_udicarrier.js +19 -0
  192. package/lib/esm/data/device_version.js +17 -0
  193. package/lib/esm/data/devicedefinition.js +49 -0
  194. package/lib/esm/data/devicedefinition_capability.js +15 -0
  195. package/lib/esm/data/devicedefinition_devicename.js +15 -0
  196. package/lib/esm/data/devicedefinition_material.js +16 -0
  197. package/lib/esm/data/devicedefinition_property.js +17 -0
  198. package/lib/esm/data/devicedefinition_specialization.js +14 -0
  199. package/lib/esm/data/devicedefinition_udideviceidentifier.js +15 -0
  200. package/lib/esm/data/devicemetric.js +26 -0
  201. package/lib/esm/data/devicemetric_calibration.js +16 -0
  202. package/lib/esm/data/devicerequest.js +45 -0
  203. package/lib/esm/data/devicerequest_parameter.js +20 -0
  204. package/lib/esm/data/deviceusestatement.js +32 -0
  205. package/lib/esm/data/diagnosticreport.js +36 -0
  206. package/lib/esm/data/diagnosticreport_media.js +15 -0
  207. package/lib/esm/data/distance.js +17 -0
  208. package/lib/esm/data/documentmanifest.js +27 -0
  209. package/lib/esm/data/documentmanifest_related.js +16 -0
  210. package/lib/esm/data/documentreference.js +33 -0
  211. package/lib/esm/data/documentreference_content.js +16 -0
  212. package/lib/esm/data/documentreference_context.js +22 -0
  213. package/lib/esm/data/documentreference_relatesto.js +16 -0
  214. package/lib/esm/data/domainresource.js +15 -0
  215. package/lib/esm/data/dosage.js +31 -0
  216. package/lib/esm/data/dosage_doseandrate.js +21 -0
  217. package/lib/esm/data/duration.js +17 -0
  218. package/lib/esm/data/effectevidencesynthesis.js +60 -0
  219. package/lib/esm/data/effectevidencesynthesis_certainty.js +20 -0
  220. package/lib/esm/data/effectevidencesynthesis_certainty_certaintysubcomponent.js +17 -0
  221. package/lib/esm/data/effectevidencesynthesis_effectestimate.js +22 -0
  222. package/lib/esm/data/effectevidencesynthesis_effectestimate_precisionestimate.js +17 -0
  223. package/lib/esm/data/effectevidencesynthesis_resultsbyexposure.js +19 -0
  224. package/lib/esm/data/effectevidencesynthesis_samplesize.js +15 -0
  225. package/lib/esm/data/element.js +11 -0
  226. package/lib/esm/data/elementdefinition.js +248 -0
  227. package/lib/esm/data/elementdefinition_base.js +14 -0
  228. package/lib/esm/data/elementdefinition_binding.js +15 -0
  229. package/lib/esm/data/elementdefinition_constraint.js +19 -0
  230. package/lib/esm/data/elementdefinition_example.js +93 -0
  231. package/lib/esm/data/elementdefinition_mapping.js +15 -0
  232. package/lib/esm/data/elementdefinition_slicing.js +19 -0
  233. package/lib/esm/data/elementdefinition_slicing_discriminator.js +14 -0
  234. package/lib/esm/data/elementdefinition_type.js +17 -0
  235. package/lib/esm/data/encounter.js +46 -0
  236. package/lib/esm/data/encounter_classhistory.js +16 -0
  237. package/lib/esm/data/encounter_diagnosis.js +17 -0
  238. package/lib/esm/data/encounter_hospitalization.js +24 -0
  239. package/lib/esm/data/encounter_location.js +20 -0
  240. package/lib/esm/data/encounter_participant.js +18 -0
  241. package/lib/esm/data/encounter_statushistory.js +16 -0
  242. package/lib/esm/data/endpoint.js +28 -0
  243. package/lib/esm/data/enrollmentrequest.js +20 -0
  244. package/lib/esm/data/enrollmentresponse.js +21 -0
  245. package/lib/esm/data/episodeofcare.js +29 -0
  246. package/lib/esm/data/episodeofcare_diagnosis.js +17 -0
  247. package/lib/esm/data/episodeofcare_statushistory.js +16 -0
  248. package/lib/esm/data/event.js +38 -0
  249. package/lib/esm/data/event_performer.js +15 -0
  250. package/lib/esm/data/eventdefinition.js +48 -0
  251. package/lib/esm/data/evidence.js +47 -0
  252. package/lib/esm/data/evidencevariable.js +46 -0
  253. package/lib/esm/data/evidencevariable_characteristic.js +37 -0
  254. package/lib/esm/data/examplescenario.js +35 -0
  255. package/lib/esm/data/examplescenario_actor.js +17 -0
  256. package/lib/esm/data/examplescenario_instance.js +23 -0
  257. package/lib/esm/data/examplescenario_instance_containedinstance.js +14 -0
  258. package/lib/esm/data/examplescenario_instance_version.js +14 -0
  259. package/lib/esm/data/examplescenario_process.js +18 -0
  260. package/lib/esm/data/examplescenario_process_step.js +21 -0
  261. package/lib/esm/data/examplescenario_process_step_alternative.js +16 -0
  262. package/lib/esm/data/examplescenario_process_step_operation.js +23 -0
  263. package/lib/esm/data/explanationofbenefit.js +80 -0
  264. package/lib/esm/data/explanationofbenefit_accident.js +19 -0
  265. package/lib/esm/data/explanationofbenefit_additem.js +43 -0
  266. package/lib/esm/data/explanationofbenefit_additem_detail.js +30 -0
  267. package/lib/esm/data/explanationofbenefit_additem_detail_subdetail.js +26 -0
  268. package/lib/esm/data/explanationofbenefit_benefitbalance.js +24 -0
  269. package/lib/esm/data/explanationofbenefit_benefitbalance_financial.js +20 -0
  270. package/lib/esm/data/explanationofbenefit_careteam.js +19 -0
  271. package/lib/esm/data/explanationofbenefit_diagnosis.js +20 -0
  272. package/lib/esm/data/explanationofbenefit_insurance.js +16 -0
  273. package/lib/esm/data/explanationofbenefit_item.js +48 -0
  274. package/lib/esm/data/explanationofbenefit_item_adjudication.js +18 -0
  275. package/lib/esm/data/explanationofbenefit_item_detail.js +36 -0
  276. package/lib/esm/data/explanationofbenefit_item_detail_subdetail.js +32 -0
  277. package/lib/esm/data/explanationofbenefit_payee.js +16 -0
  278. package/lib/esm/data/explanationofbenefit_payment.js +21 -0
  279. package/lib/esm/data/explanationofbenefit_procedure.js +20 -0
  280. package/lib/esm/data/explanationofbenefit_processnote.js +18 -0
  281. package/lib/esm/data/explanationofbenefit_related.js +18 -0
  282. package/lib/esm/data/explanationofbenefit_supportinginfo.js +29 -0
  283. package/lib/esm/data/explanationofbenefit_total.js +16 -0
  284. package/lib/esm/data/expression.js +17 -0
  285. package/lib/esm/data/extension.js +92 -0
  286. package/lib/esm/data/extensions/openhi/preferred-pronouns.js +32 -0
  287. package/lib/esm/data/extensions/openhi/resource-instance-name.js +32 -0
  288. package/lib/esm/data/familymemberhistory.js +45 -0
  289. package/lib/esm/data/familymemberhistory_condition.js +25 -0
  290. package/lib/esm/data/fivews.js +38 -0
  291. package/lib/esm/data/flag.js +23 -0
  292. package/lib/esm/data/goal.js +33 -0
  293. package/lib/esm/data/goal_target.js +27 -0
  294. package/lib/esm/data/graphdefinition.js +30 -0
  295. package/lib/esm/data/graphdefinition_link.js +19 -0
  296. package/lib/esm/data/graphdefinition_link_target.js +22 -0
  297. package/lib/esm/data/graphdefinition_link_target_compartment.js +18 -0
  298. package/lib/esm/data/group.js +26 -0
  299. package/lib/esm/data/group_characteristic.js +25 -0
  300. package/lib/esm/data/group_member.js +17 -0
  301. package/lib/esm/data/guidanceresponse.js +33 -0
  302. package/lib/esm/data/healthcareservice.js +42 -0
  303. package/lib/esm/data/healthcareservice_availabletime.js +17 -0
  304. package/lib/esm/data/healthcareservice_eligibility.js +15 -0
  305. package/lib/esm/data/healthcareservice_notavailable.js +15 -0
  306. package/lib/esm/data/humanname.js +20 -0
  307. package/lib/esm/data/id.js +5 -0
  308. package/lib/esm/data/identifier.js +21 -0
  309. package/lib/esm/data/imagingstudy.js +37 -0
  310. package/lib/esm/data/imagingstudy_series.js +28 -0
  311. package/lib/esm/data/imagingstudy_series_instance.js +17 -0
  312. package/lib/esm/data/imagingstudy_series_performer.js +16 -0
  313. package/lib/esm/data/immunization.js +49 -0
  314. package/lib/esm/data/immunization_education.js +16 -0
  315. package/lib/esm/data/immunization_performer.js +16 -0
  316. package/lib/esm/data/immunization_protocolapplied.js +21 -0
  317. package/lib/esm/data/immunization_reaction.js +16 -0
  318. package/lib/esm/data/immunizationevaluation.js +29 -0
  319. package/lib/esm/data/immunizationrecommendation.js +18 -0
  320. package/lib/esm/data/immunizationrecommendation_recommendation.js +31 -0
  321. package/lib/esm/data/immunizationrecommendation_recommendation_datecriterion.js +15 -0
  322. package/lib/esm/data/implementationguide.js +38 -0
  323. package/lib/esm/data/implementationguide_definition.js +22 -0
  324. package/lib/esm/data/implementationguide_definition_grouping.js +14 -0
  325. package/lib/esm/data/implementationguide_definition_page.js +19 -0
  326. package/lib/esm/data/implementationguide_definition_parameter.js +15 -0
  327. package/lib/esm/data/implementationguide_definition_resource.js +21 -0
  328. package/lib/esm/data/implementationguide_definition_template.js +15 -0
  329. package/lib/esm/data/implementationguide_dependson.js +15 -0
  330. package/lib/esm/data/implementationguide_global.js +15 -0
  331. package/lib/esm/data/implementationguide_manifest.js +19 -0
  332. package/lib/esm/data/implementationguide_manifest_page.js +15 -0
  333. package/lib/esm/data/implementationguide_manifest_resource.js +17 -0
  334. package/lib/esm/data/index.js +689 -0
  335. package/lib/esm/data/instant.js +5 -0
  336. package/lib/esm/data/insuranceplan.js +32 -0
  337. package/lib/esm/data/insuranceplan_contact.js +20 -0
  338. package/lib/esm/data/insuranceplan_coverage.js +18 -0
  339. package/lib/esm/data/insuranceplan_coverage_benefit.js +17 -0
  340. package/lib/esm/data/insuranceplan_coverage_benefit_limit.js +16 -0
  341. package/lib/esm/data/insuranceplan_plan.js +23 -0
  342. package/lib/esm/data/insuranceplan_plan_generalcost.js +18 -0
  343. package/lib/esm/data/insuranceplan_plan_specificcost.js +16 -0
  344. package/lib/esm/data/insuranceplan_plan_specificcost_benefit.js +16 -0
  345. package/lib/esm/data/insuranceplan_plan_specificcost_benefit_cost.js +18 -0
  346. package/lib/esm/data/invoice.js +37 -0
  347. package/lib/esm/data/invoice_lineitem.js +19 -0
  348. package/lib/esm/data/invoice_lineitem_pricecomponent.js +19 -0
  349. package/lib/esm/data/invoice_participant.js +16 -0
  350. package/lib/esm/data/library.js +53 -0
  351. package/lib/esm/data/linkage.js +15 -0
  352. package/lib/esm/data/linkage_item.js +16 -0
  353. package/lib/esm/data/list.js +29 -0
  354. package/lib/esm/data/list_entry.js +18 -0
  355. package/lib/esm/data/location.js +36 -0
  356. package/lib/esm/data/location_hoursofoperation.js +17 -0
  357. package/lib/esm/data/location_position.js +15 -0
  358. package/lib/esm/data/markdown.js +5 -0
  359. package/lib/esm/data/marketingstatus.js +19 -0
  360. package/lib/esm/data/measure.js +62 -0
  361. package/lib/esm/data/measure_group.js +19 -0
  362. package/lib/esm/data/measure_group_population.js +17 -0
  363. package/lib/esm/data/measure_group_stratifier.js +19 -0
  364. package/lib/esm/data/measure_group_stratifier_component.js +17 -0
  365. package/lib/esm/data/measure_supplementaldata.js +18 -0
  366. package/lib/esm/data/measurereport.js +27 -0
  367. package/lib/esm/data/measurereport_group.js +20 -0
  368. package/lib/esm/data/measurereport_group_population.js +17 -0
  369. package/lib/esm/data/measurereport_group_stratifier.js +16 -0
  370. package/lib/esm/data/measurereport_group_stratifier_stratum.js +24 -0
  371. package/lib/esm/data/measurereport_group_stratifier_stratum_component.js +15 -0
  372. package/lib/esm/data/measurereport_group_stratifier_stratum_population.js +17 -0
  373. package/lib/esm/data/media.js +40 -0
  374. package/lib/esm/data/medication.js +25 -0
  375. package/lib/esm/data/medication_batch.js +14 -0
  376. package/lib/esm/data/medication_ingredient.js +19 -0
  377. package/lib/esm/data/medicationadministration.js +39 -0
  378. package/lib/esm/data/medicationadministration_dosage.js +22 -0
  379. package/lib/esm/data/medicationadministration_performer.js +16 -0
  380. package/lib/esm/data/medicationdispense.js +45 -0
  381. package/lib/esm/data/medicationdispense_performer.js +16 -0
  382. package/lib/esm/data/medicationdispense_substitution.js +18 -0
  383. package/lib/esm/data/medicationknowledge.js +57 -0
  384. package/lib/esm/data/medicationknowledge_administrationguidelines.js +24 -0
  385. package/lib/esm/data/medicationknowledge_administrationguidelines_dosage.js +16 -0
  386. package/lib/esm/data/medicationknowledge_administrationguidelines_patientcharacteristics.js +17 -0
  387. package/lib/esm/data/medicationknowledge_cost.js +17 -0
  388. package/lib/esm/data/medicationknowledge_drugcharacteristic.js +19 -0
  389. package/lib/esm/data/medicationknowledge_ingredient.js +19 -0
  390. package/lib/esm/data/medicationknowledge_kinetics.js +17 -0
  391. package/lib/esm/data/medicationknowledge_medicineclassification.js +15 -0
  392. package/lib/esm/data/medicationknowledge_monitoringprogram.js +15 -0
  393. package/lib/esm/data/medicationknowledge_monograph.js +16 -0
  394. package/lib/esm/data/medicationknowledge_packaging.js +16 -0
  395. package/lib/esm/data/medicationknowledge_regulatory.js +22 -0
  396. package/lib/esm/data/medicationknowledge_regulatory_maxdispense.js +16 -0
  397. package/lib/esm/data/medicationknowledge_regulatory_schedule.js +14 -0
  398. package/lib/esm/data/medicationknowledge_regulatory_substitution.js +15 -0
  399. package/lib/esm/data/medicationknowledge_relatedmedicationknowledge.js +16 -0
  400. package/lib/esm/data/medicationrequest.js +52 -0
  401. package/lib/esm/data/medicationrequest_dispenserequest.js +24 -0
  402. package/lib/esm/data/medicationrequest_dispenserequest_initialfill.js +16 -0
  403. package/lib/esm/data/medicationrequest_substitution.js +16 -0
  404. package/lib/esm/data/medicationstatement.js +36 -0
  405. package/lib/esm/data/medicinalproduct.js +42 -0
  406. package/lib/esm/data/medicinalproduct_manufacturingbusinessoperation.js +21 -0
  407. package/lib/esm/data/medicinalproduct_name.js +19 -0
  408. package/lib/esm/data/medicinalproduct_name_countrylanguage.js +16 -0
  409. package/lib/esm/data/medicinalproduct_name_namepart.js +15 -0
  410. package/lib/esm/data/medicinalproduct_specialdesignation.js +23 -0
  411. package/lib/esm/data/medicinalproductauthorization.js +34 -0
  412. package/lib/esm/data/medicinalproductauthorization_jurisdictionalauthorization.js +20 -0
  413. package/lib/esm/data/medicinalproductauthorization_procedure.js +22 -0
  414. package/lib/esm/data/medicinalproductcontraindication.js +23 -0
  415. package/lib/esm/data/medicinalproductcontraindication_othertherapy.js +17 -0
  416. package/lib/esm/data/medicinalproductindication.js +26 -0
  417. package/lib/esm/data/medicinalproductindication_othertherapy.js +17 -0
  418. package/lib/esm/data/medicinalproductingredient.js +23 -0
  419. package/lib/esm/data/medicinalproductingredient_specifiedsubstance.js +20 -0
  420. package/lib/esm/data/medicinalproductingredient_specifiedsubstance_strength.js +24 -0
  421. package/lib/esm/data/medicinalproductingredient_specifiedsubstance_strength_referencestrength.js +19 -0
  422. package/lib/esm/data/medicinalproductingredient_substance.js +18 -0
  423. package/lib/esm/data/medicinalproductinteraction.js +22 -0
  424. package/lib/esm/data/medicinalproductinteraction_interactant.js +16 -0
  425. package/lib/esm/data/medicinalproductmanufactured.js +21 -0
  426. package/lib/esm/data/medicinalproductpackaged.js +27 -0
  427. package/lib/esm/data/medicinalproductpackaged_batchidentifier.js +15 -0
  428. package/lib/esm/data/medicinalproductpackaged_packageitem.js +32 -0
  429. package/lib/esm/data/medicinalproductpharmaceutical.js +24 -0
  430. package/lib/esm/data/medicinalproductpharmaceutical_characteristics.js +15 -0
  431. package/lib/esm/data/medicinalproductpharmaceutical_routeofadministration.js +26 -0
  432. package/lib/esm/data/medicinalproductpharmaceutical_routeofadministration_targetspecies.js +18 -0
  433. package/lib/esm/data/medicinalproductpharmaceutical_routeofadministration_targetspecies_withdrawalperiod.js +17 -0
  434. package/lib/esm/data/medicinalproductundesirableeffect.js +18 -0
  435. package/lib/esm/data/messagedefinition.js +45 -0
  436. package/lib/esm/data/messagedefinition_allowedresponse.js +14 -0
  437. package/lib/esm/data/messagedefinition_focus.js +17 -0
  438. package/lib/esm/data/messageheader.js +28 -0
  439. package/lib/esm/data/messageheader_destination.js +17 -0
  440. package/lib/esm/data/messageheader_response.js +17 -0
  441. package/lib/esm/data/messageheader_source.js +18 -0
  442. package/lib/esm/data/meta.js +18 -0
  443. package/lib/esm/data/metadataresource.js +25 -0
  444. package/lib/esm/data/molecularsequence.js +37 -0
  445. package/lib/esm/data/molecularsequence_quality.js +31 -0
  446. package/lib/esm/data/molecularsequence_quality_roc.js +19 -0
  447. package/lib/esm/data/molecularsequence_referenceseq.js +24 -0
  448. package/lib/esm/data/molecularsequence_repository.js +19 -0
  449. package/lib/esm/data/molecularsequence_structurevariant.js +20 -0
  450. package/lib/esm/data/molecularsequence_structurevariant_inner.js +14 -0
  451. package/lib/esm/data/molecularsequence_structurevariant_outer.js +14 -0
  452. package/lib/esm/data/molecularsequence_variant.js +19 -0
  453. package/lib/esm/data/money.js +13 -0
  454. package/lib/esm/data/namingsystem.js +28 -0
  455. package/lib/esm/data/namingsystem_uniqueid.js +19 -0
  456. package/lib/esm/data/narrative.js +14 -0
  457. package/lib/esm/data/nutritionorder.js +35 -0
  458. package/lib/esm/data/nutritionorder_enteralformula.js +26 -0
  459. package/lib/esm/data/nutritionorder_enteralformula_administration.js +19 -0
  460. package/lib/esm/data/nutritionorder_oraldiet.js +22 -0
  461. package/lib/esm/data/nutritionorder_oraldiet_nutrient.js +16 -0
  462. package/lib/esm/data/nutritionorder_oraldiet_texture.js +15 -0
  463. package/lib/esm/data/nutritionorder_supplement.js +20 -0
  464. package/lib/esm/data/observation.js +60 -0
  465. package/lib/esm/data/observation_component.js +34 -0
  466. package/lib/esm/data/observation_referencerange.js +21 -0
  467. package/lib/esm/data/observationdefinition.js +31 -0
  468. package/lib/esm/data/observationdefinition_qualifiedinterval.js +23 -0
  469. package/lib/esm/data/observationdefinition_quantitativedetails.js +17 -0
  470. package/lib/esm/data/oid.js +5 -0
  471. package/lib/esm/data/operationdefinition.js +42 -0
  472. package/lib/esm/data/operationdefinition_overload.js +14 -0
  473. package/lib/esm/data/operationdefinition_parameter.js +28 -0
  474. package/lib/esm/data/operationdefinition_parameter_binding.js +15 -0
  475. package/lib/esm/data/operationdefinition_parameter_referencedfrom.js +14 -0
  476. package/lib/esm/data/operationoutcome.js +12 -0
  477. package/lib/esm/data/operationoutcome_issue.js +20 -0
  478. package/lib/esm/data/organization-role.js +66 -0
  479. package/lib/esm/data/organization.js +26 -0
  480. package/lib/esm/data/organization_contact.js +20 -0
  481. package/lib/esm/data/organizationaffiliation.js +27 -0
  482. package/lib/esm/data/parameterdefinition.js +19 -0
  483. package/lib/esm/data/parameters.js +12 -0
  484. package/lib/esm/data/parameters_parameter.js +97 -0
  485. package/lib/esm/data/patient.js +39 -0
  486. package/lib/esm/data/patient_communication.js +15 -0
  487. package/lib/esm/data/patient_contact.js +26 -0
  488. package/lib/esm/data/patient_link.js +16 -0
  489. package/lib/esm/data/paymentnotice.js +27 -0
  490. package/lib/esm/data/paymentreconciliation.js +33 -0
  491. package/lib/esm/data/paymentreconciliation_detail.js +26 -0
  492. package/lib/esm/data/paymentreconciliation_processnote.js +15 -0
  493. package/lib/esm/data/period.js +13 -0
  494. package/lib/esm/data/person.js +28 -0
  495. package/lib/esm/data/person_link.js +16 -0
  496. package/lib/esm/data/plandefinition.js +52 -0
  497. package/lib/esm/data/plandefinition_action.js +65 -0
  498. package/lib/esm/data/plandefinition_action_condition.js +16 -0
  499. package/lib/esm/data/plandefinition_action_dynamicvalue.js +15 -0
  500. package/lib/esm/data/plandefinition_action_participant.js +16 -0
  501. package/lib/esm/data/plandefinition_action_relatedaction.js +19 -0
  502. package/lib/esm/data/plandefinition_goal.js +22 -0
  503. package/lib/esm/data/plandefinition_goal_target.js +21 -0
  504. package/lib/esm/data/population.js +19 -0
  505. package/lib/esm/data/practitioner.js +28 -0
  506. package/lib/esm/data/practitioner_qualification.js +20 -0
  507. package/lib/esm/data/practitionerrole.js +31 -0
  508. package/lib/esm/data/practitionerrole_availabletime.js +17 -0
  509. package/lib/esm/data/practitionerrole_notavailable.js +15 -0
  510. package/lib/esm/data/procedure.js +52 -0
  511. package/lib/esm/data/procedure_focaldevice.js +16 -0
  512. package/lib/esm/data/procedure_performer.js +17 -0
  513. package/lib/esm/data/prodcharacteristic.js +26 -0
  514. package/lib/esm/data/productshelflife.js +19 -0
  515. package/lib/esm/data/provenance.js +27 -0
  516. package/lib/esm/data/provenance_agent.js +18 -0
  517. package/lib/esm/data/provenance_entity.js +18 -0
  518. package/lib/esm/data/quantity.js +17 -0
  519. package/lib/esm/data/questionnaire.js +40 -0
  520. package/lib/esm/data/questionnaire_item.js +33 -0
  521. package/lib/esm/data/questionnaire_item_answeroption.js +21 -0
  522. package/lib/esm/data/questionnaire_item_enablewhen.js +28 -0
  523. package/lib/esm/data/questionnaire_item_initial.js +28 -0
  524. package/lib/esm/data/questionnaireresponse.js +25 -0
  525. package/lib/esm/data/questionnaireresponse_item.js +18 -0
  526. package/lib/esm/data/questionnaireresponse_item_answer.js +30 -0
  527. package/lib/esm/data/range.js +14 -0
  528. package/lib/esm/data/ratio.js +14 -0
  529. package/lib/esm/data/reference.js +16 -0
  530. package/lib/esm/data/relatedartifact.js +20 -0
  531. package/lib/esm/data/relatedperson.js +32 -0
  532. package/lib/esm/data/relatedperson_communication.js +15 -0
  533. package/lib/esm/data/request.js +44 -0
  534. package/lib/esm/data/requestgroup.js +34 -0
  535. package/lib/esm/data/requestgroup_action.js +49 -0
  536. package/lib/esm/data/requestgroup_action_condition.js +16 -0
  537. package/lib/esm/data/requestgroup_action_relatedaction.js +19 -0
  538. package/lib/esm/data/researchdefinition.js +53 -0
  539. package/lib/esm/data/researchelementdefinition.js +53 -0
  540. package/lib/esm/data/researchelementdefinition_characteristic.js +41 -0
  541. package/lib/esm/data/researchstudy.js +44 -0
  542. package/lib/esm/data/researchstudy_arm.js +16 -0
  543. package/lib/esm/data/researchstudy_objective.js +15 -0
  544. package/lib/esm/data/researchsubject.js +22 -0
  545. package/lib/esm/data/resource.js +13 -0
  546. package/lib/esm/data/riskassessment.js +35 -0
  547. package/lib/esm/data/riskassessment_prediction.js +23 -0
  548. package/lib/esm/data/riskevidencesynthesis.js +53 -0
  549. package/lib/esm/data/riskevidencesynthesis_certainty.js +20 -0
  550. package/lib/esm/data/riskevidencesynthesis_certainty_certaintysubcomponent.js +17 -0
  551. package/lib/esm/data/riskevidencesynthesis_riskestimate.js +23 -0
  552. package/lib/esm/data/riskevidencesynthesis_riskestimate_precisionestimate.js +17 -0
  553. package/lib/esm/data/riskevidencesynthesis_samplesize.js +15 -0
  554. package/lib/esm/data/sampleddata.js +19 -0
  555. package/lib/esm/data/schedule.js +22 -0
  556. package/lib/esm/data/searchparameter.js +41 -0
  557. package/lib/esm/data/searchparameter_component.js +14 -0
  558. package/lib/esm/data/servicerequest.js +58 -0
  559. package/lib/esm/data/signature.js +20 -0
  560. package/lib/esm/data/slot.js +25 -0
  561. package/lib/esm/data/specimen.js +31 -0
  562. package/lib/esm/data/specimen_collection.js +26 -0
  563. package/lib/esm/data/specimen_container.js +23 -0
  564. package/lib/esm/data/specimen_processing.js +20 -0
  565. package/lib/esm/data/specimendefinition.js +19 -0
  566. package/lib/esm/data/specimendefinition_typetested.js +25 -0
  567. package/lib/esm/data/specimendefinition_typetested_container.js +26 -0
  568. package/lib/esm/data/specimendefinition_typetested_container_additive.js +16 -0
  569. package/lib/esm/data/specimendefinition_typetested_handling.js +19 -0
  570. package/lib/esm/data/structuredefinition.js +47 -0
  571. package/lib/esm/data/structuredefinition_context.js +15 -0
  572. package/lib/esm/data/structuredefinition_differential.js +14 -0
  573. package/lib/esm/data/structuredefinition_mapping.js +16 -0
  574. package/lib/esm/data/structuredefinition_snapshot.js +14 -0
  575. package/lib/esm/data/structuremap.js +35 -0
  576. package/lib/esm/data/structuremap_group.js +21 -0
  577. package/lib/esm/data/structuremap_group_input.js +17 -0
  578. package/lib/esm/data/structuremap_group_rule.js +21 -0
  579. package/lib/esm/data/structuremap_group_rule_dependent.js +14 -0
  580. package/lib/esm/data/structuremap_group_rule_source.js +104 -0
  581. package/lib/esm/data/structuremap_group_rule_target.js +22 -0
  582. package/lib/esm/data/structuremap_group_rule_target_parameter.js +17 -0
  583. package/lib/esm/data/structuremap_structure.js +17 -0
  584. package/lib/esm/data/subscription.js +20 -0
  585. package/lib/esm/data/subscription_channel.js +17 -0
  586. package/lib/esm/data/substance.js +22 -0
  587. package/lib/esm/data/substance_ingredient.js +18 -0
  588. package/lib/esm/data/substance_instance.js +17 -0
  589. package/lib/esm/data/substanceamount.js +22 -0
  590. package/lib/esm/data/substanceamount_referencerange.js +14 -0
  591. package/lib/esm/data/substancenucleicacid.js +17 -0
  592. package/lib/esm/data/substancenucleicacid_subunit.js +24 -0
  593. package/lib/esm/data/substancenucleicacid_subunit_linkage.js +17 -0
  594. package/lib/esm/data/substancenucleicacid_subunit_sugar.js +16 -0
  595. package/lib/esm/data/substancepolymer.js +19 -0
  596. package/lib/esm/data/substancepolymer_monomerset.js +18 -0
  597. package/lib/esm/data/substancepolymer_monomerset_startingmaterial.js +18 -0
  598. package/lib/esm/data/substancepolymer_repeat.js +18 -0
  599. package/lib/esm/data/substancepolymer_repeat_repeatunit.js +25 -0
  600. package/lib/esm/data/substancepolymer_repeat_repeatunit_degreeofpolymerisation.js +16 -0
  601. package/lib/esm/data/substancepolymer_repeat_repeatunit_structuralrepresentation.js +17 -0
  602. package/lib/esm/data/substanceprotein.js +16 -0
  603. package/lib/esm/data/substanceprotein_subunit.js +22 -0
  604. package/lib/esm/data/substancereferenceinformation.js +23 -0
  605. package/lib/esm/data/substancereferenceinformation_classification.js +18 -0
  606. package/lib/esm/data/substancereferenceinformation_gene.js +17 -0
  607. package/lib/esm/data/substancereferenceinformation_geneelement.js +18 -0
  608. package/lib/esm/data/substancereferenceinformation_target.js +27 -0
  609. package/lib/esm/data/substancesourcematerial.js +32 -0
  610. package/lib/esm/data/substancesourcematerial_fractiondescription.js +15 -0
  611. package/lib/esm/data/substancesourcematerial_organism.js +24 -0
  612. package/lib/esm/data/substancesourcematerial_organism_author.js +15 -0
  613. package/lib/esm/data/substancesourcematerial_organism_hybrid.js +18 -0
  614. package/lib/esm/data/substancesourcematerial_organism_organismgeneral.js +17 -0
  615. package/lib/esm/data/substancesourcematerial_partdescription.js +15 -0
  616. package/lib/esm/data/substancespecification.js +43 -0
  617. package/lib/esm/data/substancespecification_code.js +19 -0
  618. package/lib/esm/data/substancespecification_moiety.js +23 -0
  619. package/lib/esm/data/substancespecification_name.js +26 -0
  620. package/lib/esm/data/substancespecification_name_official.js +16 -0
  621. package/lib/esm/data/substancespecification_property.js +22 -0
  622. package/lib/esm/data/substancespecification_relationship.js +28 -0
  623. package/lib/esm/data/substancespecification_structure.js +27 -0
  624. package/lib/esm/data/substancespecification_structure_isotope.js +21 -0
  625. package/lib/esm/data/substancespecification_structure_isotope_molecularweight.js +17 -0
  626. package/lib/esm/data/substancespecification_structure_representation.js +17 -0
  627. package/lib/esm/data/summary-paths.js +3395 -0
  628. package/lib/esm/data/summary-types.js +4 -0
  629. package/lib/esm/data/supplydelivery.js +30 -0
  630. package/lib/esm/data/supplydelivery_supplieditem.js +18 -0
  631. package/lib/esm/data/supplyrequest.js +36 -0
  632. package/lib/esm/data/supplyrequest_parameter.js +20 -0
  633. package/lib/esm/data/task.js +50 -0
  634. package/lib/esm/data/task_input.js +94 -0
  635. package/lib/esm/data/task_output.js +94 -0
  636. package/lib/esm/data/task_restriction.js +17 -0
  637. package/lib/esm/data/terminologycapabilities.js +45 -0
  638. package/lib/esm/data/terminologycapabilities_closure.js +13 -0
  639. package/lib/esm/data/terminologycapabilities_codesystem.js +16 -0
  640. package/lib/esm/data/terminologycapabilities_codesystem_version.js +21 -0
  641. package/lib/esm/data/terminologycapabilities_codesystem_version_filter.js +14 -0
  642. package/lib/esm/data/terminologycapabilities_expansion.js +20 -0
  643. package/lib/esm/data/terminologycapabilities_expansion_parameter.js +14 -0
  644. package/lib/esm/data/terminologycapabilities_implementation.js +14 -0
  645. package/lib/esm/data/terminologycapabilities_software.js +14 -0
  646. package/lib/esm/data/terminologycapabilities_translation.js +13 -0
  647. package/lib/esm/data/terminologycapabilities_validatecode.js +13 -0
  648. package/lib/esm/data/testreport.js +29 -0
  649. package/lib/esm/data/testreport_participant.js +16 -0
  650. package/lib/esm/data/testreport_setup.js +14 -0
  651. package/lib/esm/data/testreport_setup_action.js +16 -0
  652. package/lib/esm/data/testreport_setup_action_assert.js +16 -0
  653. package/lib/esm/data/testreport_setup_action_operation.js +16 -0
  654. package/lib/esm/data/testreport_teardown.js +14 -0
  655. package/lib/esm/data/testreport_teardown_action.js +14 -0
  656. package/lib/esm/data/testreport_test.js +16 -0
  657. package/lib/esm/data/testreport_test_action.js +16 -0
  658. package/lib/esm/data/testscript.js +48 -0
  659. package/lib/esm/data/testscript_destination.js +15 -0
  660. package/lib/esm/data/testscript_fixture.js +16 -0
  661. package/lib/esm/data/testscript_metadata.js +16 -0
  662. package/lib/esm/data/testscript_metadata_capability.js +19 -0
  663. package/lib/esm/data/testscript_metadata_link.js +14 -0
  664. package/lib/esm/data/testscript_origin.js +15 -0
  665. package/lib/esm/data/testscript_setup.js +14 -0
  666. package/lib/esm/data/testscript_setup_action.js +16 -0
  667. package/lib/esm/data/testscript_setup_action_assert.js +35 -0
  668. package/lib/esm/data/testscript_setup_action_operation.js +34 -0
  669. package/lib/esm/data/testscript_setup_action_operation_requestheader.js +14 -0
  670. package/lib/esm/data/testscript_teardown.js +14 -0
  671. package/lib/esm/data/testscript_teardown_action.js +14 -0
  672. package/lib/esm/data/testscript_test.js +16 -0
  673. package/lib/esm/data/testscript_test_action.js +16 -0
  674. package/lib/esm/data/testscript_variable.js +20 -0
  675. package/lib/esm/data/time.js +5 -0
  676. package/lib/esm/data/timing.js +17 -0
  677. package/lib/esm/data/timing_repeat.js +32 -0
  678. package/lib/esm/data/triggerdefinition.js +24 -0
  679. package/lib/esm/data/uri.js +5 -0
  680. package/lib/esm/data/url.js +5 -0
  681. package/lib/esm/data/usagecontext.js +21 -0
  682. package/lib/esm/data/uuid.js +5 -0
  683. package/lib/esm/data/valueset.js +35 -0
  684. package/lib/esm/data/valueset_compose.js +17 -0
  685. package/lib/esm/data/valueset_compose_include.js +19 -0
  686. package/lib/esm/data/valueset_compose_include_concept.js +18 -0
  687. package/lib/esm/data/valueset_compose_include_concept_designation.js +16 -0
  688. package/lib/esm/data/valueset_compose_include_filter.js +16 -0
  689. package/lib/esm/data/valueset_expansion.js +20 -0
  690. package/lib/esm/data/valueset_expansion_contains.js +23 -0
  691. package/lib/esm/data/valueset_expansion_parameter.js +20 -0
  692. package/lib/esm/data/verificationresult.js +31 -0
  693. package/lib/esm/data/verificationresult_attestation.js +23 -0
  694. package/lib/esm/data/verificationresult_primarysource.js +21 -0
  695. package/lib/esm/data/verificationresult_validator.js +17 -0
  696. package/lib/esm/data/visionprescription.js +22 -0
  697. package/lib/esm/data/visionprescription_lensspecification.js +31 -0
  698. package/lib/esm/data/visionprescription_lensspecification_prism.js +15 -0
  699. package/lib/esm/data/xhtml.js +5 -0
  700. package/lib/esm/extensions/index.js +3 -0
  701. package/lib/esm/extensions/on-site-medical/appointment-series.js +153 -0
  702. package/lib/esm/extensions/on-site-medical/index.js +11 -0
  703. package/lib/esm/extensions/on-site-medical/supply-request-deliver-for.js +12 -0
  704. package/lib/esm/extensions/on-site-medical/supply-request-encounter.js +45 -0
  705. package/lib/esm/extensions/openhi/index.js +2 -0
  706. package/lib/esm/extensions/openhi/linked-data-identity.js +65 -0
  707. package/lib/esm/index.js +20 -0
  708. package/lib/esm/sort-key/extract-sort-key.js +165 -0
  709. package/lib/esm/sort-key/index.js +3 -0
  710. package/lib/esm/sort-key/label-paths.js +166 -0
  711. package/lib/esm/summary/display-label.js +22 -0
  712. package/lib/esm/summary/extract-summary.js +173 -0
  713. package/lib/esm/summary/index.js +3 -0
  714. package/package.json +18 -1
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Pure projection of a FHIR R4 resource into its summary JSON — the
3
+ * GSI-friendly shape defined by ADR 2026-04-17-02 and the generated
4
+ * `SUMMARY_PATHS` table (issue #812).
5
+ *
6
+ * Consumed by the write path in #814; no I/O, no DynamoDB access here.
7
+ *
8
+ * Threshold defaults come from the #811 size benchmark across every R4
9
+ * example resource. Both thresholds are warn-only — the guard is a
10
+ * diagnostic signal, never a reason to reject a store operation.
11
+ */
12
+ import { DISPLAY_LABEL_EXTENSION_URL } from "./display-label";
13
+ import { SUMMARY_PATHS } from "../data/summary-paths";
14
+ /** Summary exceeds the clinical-path p99; worth looking at if it's a pattern. */
15
+ export const DEFAULT_SUMMARY_WARN_BYTES = 4 * 1024;
16
+ /** Summary is outside any measured distribution; almost certainly inline attachment or unpacked Bundle. */
17
+ export const DEFAULT_SUMMARY_ERROR_BYTES = 8 * 1024;
18
+ export function extractSummary(resource, options = {}) {
19
+ const { resourceType, id } = resource;
20
+ const logger = options.logger ?? console;
21
+ const warnBytes = options.warnThresholdBytes ?? DEFAULT_SUMMARY_WARN_BYTES;
22
+ const errorBytes = options.errorThresholdBytes ?? DEFAULT_SUMMARY_ERROR_BYTES;
23
+ const result = { resourceType };
24
+ if (id !== undefined)
25
+ result.id = id;
26
+ const meta = resource.meta;
27
+ if (meta && typeof meta === "object") {
28
+ const projectedMeta = {};
29
+ if (meta.lastUpdated !== undefined) {
30
+ projectedMeta.lastUpdated = meta.lastUpdated;
31
+ }
32
+ if (meta.versionId !== undefined) {
33
+ projectedMeta.versionId = meta.versionId;
34
+ }
35
+ if (Object.keys(projectedMeta).length > 0) {
36
+ result.meta = projectedMeta;
37
+ }
38
+ }
39
+ // `displayLabel` on the summary is backed by the HL7
40
+ // `resource-instance-name` extension on the full resource. Reading it
41
+ // inline rather than through `getDisplayLabel` avoids a second import
42
+ // in the hot path — the URL check is the only thing that matters.
43
+ // Omitted from the output when absent so the summary stays minimal.
44
+ const displayLabel = readDisplayLabel(resource);
45
+ if (displayLabel !== undefined)
46
+ result.displayLabel = displayLabel;
47
+ const paths = SUMMARY_PATHS[resourceType];
48
+ if (paths && paths.length > 0) {
49
+ // `id` and `meta` are handled above with bespoke rules (meta is projected
50
+ // to just lastUpdated / versionId, not the whole Meta datatype).
51
+ const applicable = paths.filter((p) => p !== "id" && p !== "meta");
52
+ applyPaths(resource, result, applicable);
53
+ }
54
+ const bytes = utf8ByteLength(JSON.stringify(result));
55
+ if (bytes > errorBytes) {
56
+ logger.error("extractSummary: summary exceeds error threshold", {
57
+ resourceType,
58
+ id,
59
+ bytes,
60
+ thresholdBytes: errorBytes,
61
+ });
62
+ }
63
+ else if (bytes > warnBytes) {
64
+ logger.warn("extractSummary: summary exceeds warn threshold", {
65
+ resourceType,
66
+ id,
67
+ bytes,
68
+ thresholdBytes: warnBytes,
69
+ });
70
+ }
71
+ return result;
72
+ }
73
+ function applyPaths(source, target, paths) {
74
+ const groups = groupByHead(paths);
75
+ for (const [head, groupPaths] of groups) {
76
+ if (head.endsWith("[x]")) {
77
+ applyChoicePath(source, target, head);
78
+ continue;
79
+ }
80
+ const value = source[head];
81
+ if (value === undefined || value === null)
82
+ continue;
83
+ const children = [];
84
+ for (const p of groupPaths) {
85
+ if (p === head)
86
+ continue;
87
+ children.push(p.slice(head.length + 1));
88
+ }
89
+ if (children.length === 0) {
90
+ target[head] = shallowCopy(value);
91
+ continue;
92
+ }
93
+ if (Array.isArray(value)) {
94
+ const projected = [];
95
+ for (const el of value) {
96
+ if (el && typeof el === "object" && !Array.isArray(el)) {
97
+ const sub = {};
98
+ applyPaths(el, sub, children);
99
+ if (Object.keys(sub).length > 0)
100
+ projected.push(sub);
101
+ }
102
+ }
103
+ if (projected.length > 0)
104
+ target[head] = projected;
105
+ continue;
106
+ }
107
+ if (typeof value === "object") {
108
+ const sub = {};
109
+ applyPaths(value, sub, children);
110
+ if (Object.keys(sub).length > 0)
111
+ target[head] = sub;
112
+ }
113
+ }
114
+ }
115
+ function applyChoicePath(source, target, segment) {
116
+ const prefix = segment.slice(0, -"[x]".length);
117
+ for (const key of Object.keys(source)) {
118
+ if (!key.startsWith(prefix) || key.length <= prefix.length)
119
+ continue;
120
+ const nextCharCode = key.charCodeAt(prefix.length);
121
+ // Concrete FHIR variants are always `<prefix><CapitalizedType>`, e.g.
122
+ // `valueQuantity`, `effectiveDateTime`. Require an uppercase ASCII
123
+ // character immediately after the prefix to avoid false-positive
124
+ // matches against unrelated fields that happen to share the prefix.
125
+ if (nextCharCode < 65 || nextCharCode > 90)
126
+ continue;
127
+ const value = source[key];
128
+ if (value === undefined)
129
+ continue;
130
+ target[key] = shallowCopy(value);
131
+ }
132
+ }
133
+ function groupByHead(paths) {
134
+ const groups = new Map();
135
+ for (const p of paths) {
136
+ const dot = p.indexOf(".");
137
+ const head = dot === -1 ? p : p.slice(0, dot);
138
+ let bucket = groups.get(head);
139
+ if (!bucket) {
140
+ bucket = [];
141
+ groups.set(head, bucket);
142
+ }
143
+ bucket.push(p);
144
+ }
145
+ return groups;
146
+ }
147
+ function shallowCopy(value) {
148
+ if (Array.isArray(value))
149
+ return value.slice();
150
+ if (value !== null && typeof value === "object") {
151
+ return { ...value };
152
+ }
153
+ return value;
154
+ }
155
+ function utf8ByteLength(s) {
156
+ return new TextEncoder().encode(s).length;
157
+ }
158
+ function readDisplayLabel(resource) {
159
+ const ext = resource.extension;
160
+ if (!Array.isArray(ext))
161
+ return undefined;
162
+ for (const e of ext) {
163
+ if (e !== null &&
164
+ typeof e === "object" &&
165
+ e.url === DISPLAY_LABEL_EXTENSION_URL) {
166
+ const v = e.valueString;
167
+ if (typeof v === "string")
168
+ return v;
169
+ }
170
+ }
171
+ return undefined;
172
+ }
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC1zdW1tYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N1bW1hcnkvZXh0cmFjdC1zdW1tYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7O0dBVUc7QUFDSCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHdEQsaUZBQWlGO0FBQ2pGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7QUFFbkQsMkdBQTJHO0FBQzNHLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7QUEyRXBELE1BQU0sVUFBVSxjQUFjLENBQzVCLFFBQTBCLEVBQzFCLFVBQWlDLEVBQUU7SUFFbkMsTUFBTSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsR0FBRyxRQUFRLENBQUM7SUFDdEMsTUFBTSxNQUFNLEdBQXlCLE9BQU8sQ0FBQyxNQUFNLElBQUksT0FBTyxDQUFDO0lBQy9ELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSwwQkFBMEIsQ0FBQztJQUMzRSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsbUJBQW1CLElBQUksMkJBQTJCLENBQUM7SUFFOUUsTUFBTSxNQUFNLEdBQWdCLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDN0MsSUFBSSxFQUFFLEtBQUssU0FBUztRQUFFLE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBRXJDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDM0IsSUFBSSxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDckMsTUFBTSxhQUFhLEdBQWlELEVBQUUsQ0FBQztRQUN2RSxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUyxF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Q0FBQyxLQUFLLFFBQVE7Z0JBQUUsT0FBTyxDQUFDLENBQUM7UUFDdEMsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBQdXJlIHByb2plY3Rpb24gb2YgYSBGSElSIFI0IHJlc291cmNlIGludG8gaXRzIHN1bW1hcnkgSlNPTiDigJQgdGhlXG4gKiBHU0ktZnJpZW5kbHkgc2hhcGUgZGVmaW5lZCBieSBBRFIgMjAyNi0wNC0xNy0wMiBhbmQgdGhlIGdlbmVyYXRlZFxuICogYFNVTU1BUllfUEFUSFNgIHRhYmxlIChpc3N1ZSAjODEyKS5cbiAqXG4gKiBDb25zdW1lZCBieSB0aGUgd3JpdGUgcGF0aCBpbiAjODE0OyBubyBJL08sIG5vIER5bmFtb0RCIGFjY2VzcyBoZXJlLlxuICpcbiAqIFRocmVzaG9sZCBkZWZhdWx0cyBjb21lIGZyb20gdGhlICM4MTEgc2l6ZSBiZW5jaG1hcmsgYWNyb3NzIGV2ZXJ5IFI0XG4gKiBleGFtcGxlIHJlc291cmNlLiBCb3RoIHRocmVzaG9sZHMgYXJlIHdhcm4tb25seSDigJQgdGhlIGd1YXJkIGlzIGFcbiAqIGRpYWdub3N0aWMgc2lnbmFsLCBuZXZlciBhIHJlYXNvbiB0byByZWplY3QgYSBzdG9yZSBvcGVyYXRpb24uXG4gKi9cbmltcG9ydCB7IERJU1BMQVlfTEFCRUxfRVhURU5TSU9OX1VSTCB9IGZyb20gXCIuL2Rpc3BsYXktbGFiZWxcIjtcbmltcG9ydCB7IFNVTU1BUllfUEFUSFMgfSBmcm9tIFwiLi4vZGF0YS9zdW1tYXJ5LXBhdGhzXCI7XG5pbXBvcnQgdHlwZSB7IFJlc291cmNlU3VtbWFyeUJ5VHlwZSB9IGZyb20gXCIuLi9kYXRhL3N1bW1hcnktdHlwZXNcIjtcblxuLyoqIFN1bW1hcnkgZXhjZWVkcyB0aGUgY2xpbmljYWwtcGF0aCBwOTk7IHdvcnRoIGxvb2tpbmcgYXQgaWYgaXQncyBhIHBhdHRlcm4uICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9TVU1NQVJZX1dBUk5fQllURVMgPSA0ICogMTAyNDtcblxuLyoqIFN1bW1hcnkgaXMgb3V0c2lkZSBhbnkgbWVhc3VyZWQgZGlzdHJpYnV0aW9uOyBhbG1vc3QgY2VydGFpbmx5IGlubGluZSBhdHRhY2htZW50IG9yIHVucGFja2VkIEJ1bmRsZS4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NVTU1BUllfRVJST1JfQllURVMgPSA4ICogMTAyNDtcblxuZXhwb3J0IGludGVyZmFjZSBTdW1tYXJ5SnNvbiB7XG4gIHJlc291cmNlVHlwZTogc3RyaW5nO1xuICBpZD86IHN0cmluZztcbiAgbWV0YT86IHtcbiAgICBsYXN0VXBkYXRlZD86IHN0cmluZztcbiAgICB2ZXJzaW9uSWQ/OiBzdHJpbmc7XG4gIH07XG4gIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbi8qKlxuICogTmFycm93IHJldHVybiB0eXBlIGZvciBgZXh0cmFjdFN1bW1hcnlgLiBXaGVuIHRoZSBjYWxsZXIgc3VwcGxpZXMgYVxuICogcmVzb3VyY2Ugd2hvc2UgYHJlc291cmNlVHlwZWAgaXMga25vd24gYXQgY29tcGlsZSB0aW1lICh3aGljaCBpcyB0aGVcbiAqIHVzdWFsIGNhc2Ug4oCUIGV2ZXJ5IGdlbmVyYXRlZCBGSElSIGludGVyZmFjZSBwaW5zIGByZXNvdXJjZVR5cGVgIHRvIGFcbiAqIHN0cmluZyBsaXRlcmFsKSwgdGhlIHJldHVybiB0eXBlIHJlc29sdmVzIHRvIHRoZSBtYXRjaGluZ1xuICogYHtSZXNvdXJjZX1TdW1tYXJ5YCBmcm9tIGBkYXRhL3N1bW1hcnktdHlwZXMudHNgLiBXaGVuIHRoZSBjYWxsZXJcbiAqIHN1cHBsaWVzIGEgYEZoaXJSZXNvdXJjZUxpa2VgIHdpdGggYSB3aWRlIGByZXNvdXJjZVR5cGU6IHN0cmluZ2AsIG9yXG4gKiBhIGxpdGVyYWwgdGhhdCBkb2Vzbid0IGNvcnJlc3BvbmQgdG8gYSBrbm93biByZXNvdXJjZSwgdGhlIHJldHVybiB0eXBlXG4gKiBmYWxscyB0aHJvdWdoIHRvIGBTdW1tYXJ5SnNvbmAuXG4gKi9cbmV4cG9ydCB0eXBlIFN1bW1hcnlGb3I8UiBleHRlbmRzIHN0cmluZz4gPSBSIGV4dGVuZHMga2V5b2YgUmVzb3VyY2VTdW1tYXJ5QnlUeXBlXG4gID8gUmVzb3VyY2VTdW1tYXJ5QnlUeXBlW1JdXG4gIDogU3VtbWFyeUpzb247XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmhpclJlc291cmNlTGlrZSB7XG4gIHJlc291cmNlVHlwZTogc3RyaW5nO1xuICBpZD86IHN0cmluZztcbiAgbWV0YT86IHtcbiAgICBsYXN0VXBkYXRlZD86IHN0cmluZztcbiAgICB2ZXJzaW9uSWQ/OiBzdHJpbmc7XG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbiAgfTtcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRyYWN0U3VtbWFyeUxvZ2dlciB7XG4gIHdhcm4oLi4uYXJnczogdW5rbm93bltdKTogdm9pZDtcbiAgZXJyb3IoLi4uYXJnczogdW5rbm93bltdKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRyYWN0U3VtbWFyeU9wdGlvbnMge1xuICAvKiogU29mdCAoaW5mbykgd2FybiB0aHJlc2hvbGQgaW4gVVRGLTggYnl0ZXMuIERlZmF1bHRzIHRvIDQgS2lCLiAqL1xuICB3YXJuVGhyZXNob2xkQnl0ZXM/OiBudW1iZXI7XG4gIC8qKiBIYXJkIChlcnJvcikgd2FybiB0aHJlc2hvbGQgaW4gVVRGLTggYnl0ZXMuIERlZmF1bHRzIHRvIDggS2lCLiAqL1xuICBlcnJvclRocmVzaG9sZEJ5dGVzPzogbnVtYmVyO1xuICAvKiogTG9nZ2VyIGZvciBzaXplLWd1YXJkIHdhcm5pbmdzLiBEZWZhdWx0cyB0byBgY29uc29sZWAuICovXG4gIGxvZ2dlcj86IEV4dHJhY3RTdW1tYXJ5TG9nZ2VyO1xufVxuXG4vKipcbiAqIFByb2plY3RzIGByZXNvdXJjZWAgaW50byBpdHMgc3VtbWFyeSBKU09OIHVzaW5nIGBTVU1NQVJZX1BBVEhTYC5cbiAqXG4gKiBBbHdheXMgZW1pdHMgYHJlc291cmNlVHlwZWAsIGBpZGAgKGlmIHByZXNlbnQpLCBhbmRcbiAqIGBtZXRhLntsYXN0VXBkYXRlZCx2ZXJzaW9uSWR9YCAoaWYgcHJlc2VudCkuIFRoZW4sIGZvciBldmVyeSBwYXRoIGluXG4gKiBgU1VNTUFSWV9QQVRIU1tyZXNvdXJjZVR5cGVdYDpcbiAqICAgLSBTaW1wbGUgcGF0aHMgKGBuYW1lYCkgY29weSB0aGUgd2hvbGUgdmFsdWUgKGFycmF5cyBzaGFsbG93LWNvcGllZCkuXG4gKiAgIC0gRG90dGVkIHBhdGhzIChgY29tcG9uZW50LmNvZGVgKSBwcm9qZWN0IHRoZSBuYW1lZCBzdWItZmllbGQgb2YgZWFjaFxuICogICAgIGVsZW1lbnQgb2YgdGhlIGNvbnRhaW5lcjsgaWYgYW55IHN1Yi1wYXRocyBhcmUgbGlzdGVkIGZvciBhXG4gKiAgICAgY29udGFpbmVyLCBvbmx5IHRob3NlIHN1Yi1maWVsZHMgYXJlIGNvcGllZCAobm90IHRoZSB3aG9sZSBlbGVtZW50KS5cbiAqICAgLSBgW3hdYCBjaG9pY2UtdHlwZSBwYXRocyAoYHZhbHVlW3hdYCkgbWF0Y2ggd2hpY2hldmVyIGNvbmNyZXRlXG4gKiAgICAgdmFyaWFudCAoYHZhbHVlUXVhbnRpdHlgLCBgdmFsdWVTdHJpbmdgLCDigKYpIGlzIHByZXNlbnQuXG4gKlxuICogTWlzc2luZyBmaWVsZHMgYXJlIG9taXR0ZWQg4oCUIG5vIG51bGxzLlxuICpcbiAqIElmIHRoZSBzZXJpYWxpemVkIHN1bW1hcnkgZXhjZWVkcyBgd2FyblRocmVzaG9sZEJ5dGVzYCAvXG4gKiBgZXJyb3JUaHJlc2hvbGRCeXRlc2AsIGEgd2FybiAvIGVycm9yIGlzIGxvZ2dlZCB3aXRoIGB7IHJlc291cmNlVHlwZSxcbiAqIGlkLCBieXRlcyB9YC4gVGhlIHN1bW1hcnkgaXMgYWx3YXlzIHJldHVybmVkOyB0aGUgc2l6ZSBndWFyZCBuZXZlclxuICogcmVqZWN0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RTdW1tYXJ5PFQgZXh0ZW5kcyBGaGlyUmVzb3VyY2VMaWtlPihcbiAgcmVzb3VyY2U6IFQsXG4gIG9wdGlvbnM/OiBFeHRyYWN0U3VtbWFyeU9wdGlvbnMsXG4pOiBTdW1tYXJ5Rm9yPFRbXCJyZXNvdXJjZVR5cGVcIl0+O1xuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RTdW1tYXJ5KFxuICByZXNvdXJjZTogRmhpclJlc291cmNlTGlrZSxcbiAgb3B0aW9uczogRXh0cmFjdFN1bW1hcnlPcHRpb25zID0ge30sXG4pOiBTdW1tYXJ5SnNvbiB7XG4gIGNvbnN0IHsgcmVzb3VyY2VUeXBlLCBpZCB9ID0gcmVzb3VyY2U7XG4gIGNvbnN0IGxvZ2dlcjogRXh0cmFjdFN1bW1hcnlMb2dnZXIgPSBvcHRpb25zLmxvZ2dlciA/PyBjb25zb2xlO1xuICBjb25zdCB3YXJuQnl0ZXMgPSBvcHRpb25zLndhcm5UaHJlc2hvbGRCeXRlcyA/PyBERUZBVUxUX1NVTU1BUllfV0FSTl9CWVRFUztcbiAgY29uc3QgZXJyb3JCeXRlcyA9IG9wdGlvbnMuZXJyb3JUaHJlc2hvbGRCeXRlcyA/PyBERUZBVUxUX1NVTU1BUllfRVJST1JfQllURVM7XG5cbiAgY29uc3QgcmVzdWx0OiBTdW1tYXJ5SnNvbiA9IHsgcmVzb3VyY2VUeXBlIH07XG4gIGlmIChpZCAhPT0gdW5kZWZpbmVkKSByZXN1bHQuaWQgPSBpZDtcblxuICBjb25zdCBtZXRhID0gcmVzb3VyY2UubWV0YTtcbiAgaWYgKG1ldGEgJiYgdHlwZW9mIG1ldGEgPT09IFwib2JqZWN0XCIpIHtcbiAgICBjb25zdCBwcm9qZWN0ZWRNZXRhOiB7IGxhc3RVcGRhdGVkPzogc3RyaW5nOyB2ZXJzaW9uSWQ/OiBzdHJpbmcgfSA9IHt9O1xuICAgIGlmIChtZXRhLmxhc3RVcGRhdGVkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHByb2plY3RlZE1ldGEubGFzdFVwZGF0ZWQgPSBtZXRhLmxhc3RVcGRhdGVkO1xuICAgIH1cbiAgICBpZiAobWV0YS52ZXJzaW9uSWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcHJvamVjdGVkTWV0YS52ZXJzaW9uSWQgPSBtZXRhLnZlcnNpb25JZDtcbiAgICB9XG4gICAgaWYgKE9iamVjdC5rZXlzKHByb2plY3RlZE1ldGEpLmxlbmd0aCA+IDApIHtcbiAgICAgIHJlc3VsdC5tZXRhID0gcHJvamVjdGVkTWV0YTtcbiAgICB9XG4gIH1cblxuICAvLyBgZGlzcGxheUxhYmVsYCBvbiB0aGUgc3VtbWFyeSBpcyBiYWNrZWQgYnkgdGhlIEhMN1xuICAvLyBgcmVzb3VyY2UtaW5zdGFuY2UtbmFtZWAgZXh0ZW5zaW9uIG9uIHRoZSBmdWxsIHJlc291cmNlLiBSZWFkaW5nIGl0XG4gIC8vIGlubGluZSByYXRoZXIgdGhhbiB0aHJvdWdoIGBnZXREaXNwbGF5TGFiZWxgIGF2b2lkcyBhIHNlY29uZCBpbXBvcnRcbiAgLy8gaW4gdGhlIGhvdCBwYXRoIOKAlCB0aGUgVVJMIGNoZWNrIGlzIHRoZSBvbmx5IHRoaW5nIHRoYXQgbWF0dGVycy5cbiAgLy8gT21pdHRlZCBmcm9tIHRoZSBvdXRwdXQgd2hlbiBhYnNlbnQgc28gdGhlIHN1bW1hcnkgc3RheXMgbWluaW1hbC5cbiAgY29uc3QgZGlzcGxheUxhYmVsID0gcmVhZERpc3BsYXlMYWJlbChyZXNvdXJjZSk7XG4gIGlmIChkaXNwbGF5TGFiZWwgIT09IHVuZGVmaW5lZCkgcmVzdWx0LmRpc3BsYXlMYWJlbCA9IGRpc3BsYXlMYWJlbDtcblxuICBjb25zdCBwYXRocyA9IFNVTU1BUllfUEFUSFNbcmVzb3VyY2VUeXBlXTtcbiAgaWYgKHBhdGhzICYmIHBhdGhzLmxlbmd0aCA+IDApIHtcbiAgICAvLyBgaWRgIGFuZCBgbWV0YWAgYXJlIGhhbmRsZWQgYWJvdmUgd2l0aCBiZXNwb2tlIHJ1bGVzIChtZXRhIGlzIHByb2plY3RlZFxuICAgIC8vIHRvIGp1c3QgbGFzdFVwZGF0ZWQgLyB2ZXJzaW9uSWQsIG5vdCB0aGUgd2hvbGUgTWV0YSBkYXRhdHlwZSkuXG4gICAgY29uc3QgYXBwbGljYWJsZSA9IHBhdGhzLmZpbHRlcigocCkgPT4gcCAhPT0gXCJpZFwiICYmIHAgIT09IFwibWV0YVwiKTtcbiAgICBhcHBseVBhdGhzKFxuICAgICAgcmVzb3VyY2UgYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICAgIHJlc3VsdCBhcyB1bmtub3duIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICAgYXBwbGljYWJsZSxcbiAgICApO1xuICB9XG5cbiAgY29uc3QgYnl0ZXMgPSB1dGY4Qnl0ZUxlbmd0aChKU09OLnN0cmluZ2lmeShyZXN1bHQpKTtcbiAgaWYgKGJ5dGVzID4gZXJyb3JCeXRlcykge1xuICAgIGxvZ2dlci5lcnJvcihcImV4dHJhY3RTdW1tYXJ5OiBzdW1tYXJ5IGV4Y2VlZHMgZXJyb3IgdGhyZXNob2xkXCIsIHtcbiAgICAgIHJlc291cmNlVHlwZSxcbiAgICAgIGlkLFxuICAgICAgYnl0ZXMsXG4gICAgICB0aHJlc2hvbGRCeXRlczogZXJyb3JCeXRlcyxcbiAgICB9KTtcbiAgfSBlbHNlIGlmIChieXRlcyA+IHdhcm5CeXRlcykge1xuICAgIGxvZ2dlci53YXJuKFwiZXh0cmFjdFN1bW1hcnk6IHN1bW1hcnkgZXhjZWVkcyB3YXJuIHRocmVzaG9sZFwiLCB7XG4gICAgICByZXNvdXJjZVR5cGUsXG4gICAgICBpZCxcbiAgICAgIGJ5dGVzLFxuICAgICAgdGhyZXNob2xkQnl0ZXM6IHdhcm5CeXRlcyxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmZ1bmN0aW9uIGFwcGx5UGF0aHMoXG4gIHNvdXJjZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIHRhcmdldDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIHBhdGhzOiByZWFkb25seSBzdHJpbmdbXSxcbik6IHZvaWQge1xuICBjb25zdCBncm91cHMgPSBncm91cEJ5SGVhZChwYXRocyk7XG4gIGZvciAoY29uc3QgW2hlYWQsIGdyb3VwUGF0aHNdIG9mIGdyb3Vwcykge1xuICAgIGlmIChoZWFkLmVuZHNXaXRoKFwiW3hdXCIpKSB7XG4gICAgICBhcHBseUNob2ljZVBhdGgoc291cmNlLCB0YXJnZXQsIGhlYWQpO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBzb3VyY2VbaGVhZF07XG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwpIGNvbnRpbnVlO1xuXG4gICAgY29uc3QgY2hpbGRyZW46IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChjb25zdCBwIG9mIGdyb3VwUGF0aHMpIHtcbiAgICAgIGlmIChwID09PSBoZWFkKSBjb250aW51ZTtcbiAgICAgIGNoaWxkcmVuLnB1c2gocC5zbGljZShoZWFkLmxlbmd0aCArIDEpKTtcbiAgICB9XG5cbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID09PSAwKSB7XG4gICAgICB0YXJnZXRbaGVhZF0gPSBzaGFsbG93Q29weSh2YWx1ZSk7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIGNvbnN0IHByb2plY3RlZDogdW5rbm93bltdID0gW107XG4gICAgICBmb3IgKGNvbnN0IGVsIG9mIHZhbHVlKSB7XG4gICAgICAgIGlmIChlbCAmJiB0eXBlb2YgZWwgPT09IFwib2JqZWN0XCIgJiYgIUFycmF5LmlzQXJyYXkoZWwpKSB7XG4gICAgICAgICAgY29uc3Qgc3ViOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICAgICAgICAgIGFwcGx5UGF0aHMoZWwgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIHN1YiwgY2hpbGRyZW4pO1xuICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhzdWIpLmxlbmd0aCA+IDApIHByb2plY3RlZC5wdXNoKHN1Yik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChwcm9qZWN0ZWQubGVuZ3RoID4gMCkgdGFyZ2V0W2hlYWRdID0gcHJvamVjdGVkO1xuICAgICAgY29udGludWU7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIikge1xuICAgICAgY29uc3Qgc3ViOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICAgICAgYXBwbHlQYXRocyh2YWx1ZSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgc3ViLCBjaGlsZHJlbik7XG4gICAgICBpZiAoT2JqZWN0LmtleXMoc3ViKS5sZW5ndGggPiAwKSB0YXJnZXRbaGVhZF0gPSBzdWI7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGFwcGx5Q2hvaWNlUGF0aChcbiAgc291cmNlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgdGFyZ2V0OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgc2VnbWVudDogc3RyaW5nLFxuKTogdm9pZCB7XG4gIGNvbnN0IHByZWZpeCA9IHNlZ21lbnQuc2xpY2UoMCwgLVwiW3hdXCIubGVuZ3RoKTtcbiAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoc291cmNlKSkge1xuICAgIGlmICgha2V5LnN0YXJ0c1dpdGgocHJlZml4KSB8fCBrZXkubGVuZ3RoIDw9IHByZWZpeC5sZW5ndGgpIGNvbnRpbnVlO1xuICAgIGNvbnN0IG5leHRDaGFyQ29kZSA9IGtleS5jaGFyQ29kZUF0KHByZWZpeC5sZW5ndGgpO1xuICAgIC8vIENvbmNyZXRlIEZISVIgdmFyaWFudHMgYXJlIGFsd2F5cyBgPHByZWZpeD48Q2FwaXRhbGl6ZWRUeXBlPmAsIGUuZy5cbiAgICAvLyBgdmFsdWVRdWFudGl0eWAsIGBlZmZlY3RpdmVEYXRlVGltZWAuIFJlcXVpcmUgYW4gdXBwZXJjYXNlIEFTQ0lJXG4gICAgLy8gY2hhcmFjdGVyIGltbWVkaWF0ZWx5IGFmdGVyIHRoZSBwcmVmaXggdG8gYXZvaWQgZmFsc2UtcG9zaXRpdmVcbiAgICAvLyBtYXRjaGVzIGFnYWluc3QgdW5yZWxhdGVkIGZpZWxkcyB0aGF0IGhhcHBlbiB0byBzaGFyZSB0aGUgcHJlZml4LlxuICAgIGlmIChuZXh0Q2hhckNvZGUgPCA2NSB8fCBuZXh0Q2hhckNvZGUgPiA5MCkgY29udGludWU7XG4gICAgY29uc3QgdmFsdWUgPSBzb3VyY2Vba2V5XTtcbiAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgY29udGludWU7XG4gICAgdGFyZ2V0W2tleV0gPSBzaGFsbG93Q29weSh2YWx1ZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ3JvdXBCeUhlYWQocGF0aHM6IHJlYWRvbmx5IHN0cmluZ1tdKTogTWFwPHN0cmluZywgc3RyaW5nW10+IHtcbiAgY29uc3QgZ3JvdXBzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZ1tdPigpO1xuICBmb3IgKGNvbnN0IHAgb2YgcGF0aHMpIHtcbiAgICBjb25zdCBkb3QgPSBwLmluZGV4T2YoXCIuXCIpO1xuICAgIGNvbnN0IGhlYWQgPSBkb3QgPT09IC0xID8gcCA6IHAuc2xpY2UoMCwgZG90KTtcbiAgICBsZXQgYnVja2V0ID0gZ3JvdXBzLmdldChoZWFkKTtcbiAgICBpZiAoIWJ1Y2tldCkge1xuICAgICAgYnVja2V0ID0gW107XG4gICAgICBncm91cHMuc2V0KGhlYWQsIGJ1Y2tldCk7XG4gICAgfVxuICAgIGJ1Y2tldC5wdXNoKHApO1xuICB9XG4gIHJldHVybiBncm91cHM7XG59XG5cbmZ1bmN0aW9uIHNoYWxsb3dDb3B5KHZhbHVlOiB1bmtub3duKTogdW5rbm93biB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkgcmV0dXJuIHZhbHVlLnNsaWNlKCk7XG4gIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4geyAuLi4odmFsdWUgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIH07XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuXG5mdW5jdGlvbiB1dGY4Qnl0ZUxlbmd0aChzOiBzdHJpbmcpOiBudW1iZXIge1xuICByZXR1cm4gbmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKHMpLmxlbmd0aDtcbn1cblxuZnVuY3Rpb24gcmVhZERpc3BsYXlMYWJlbChyZXNvdXJjZTogRmhpclJlc291cmNlTGlrZSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGV4dCA9IHJlc291cmNlLmV4dGVuc2lvbjtcbiAgaWYgKCFBcnJheS5pc0FycmF5KGV4dCkpIHJldHVybiB1bmRlZmluZWQ7XG4gIGZvciAoY29uc3QgZSBvZiBleHQpIHtcbiAgICBpZiAoXG4gICAgICBlICE9PSBudWxsICYmXG4gICAgICB0eXBlb2YgZSA9PT0gXCJvYmplY3RcIiAmJlxuICAgICAgKGUgYXMgeyB1cmw/OiB1bmtub3duIH0pLnVybCA9PT0gRElTUExBWV9MQUJFTF9FWFRFTlNJT05fVVJMXG4gICAgKSB7XG4gICAgICBjb25zdCB2ID0gKGUgYXMgeyB2YWx1ZVN0cmluZz86IHVua25vd24gfSkudmFsdWVTdHJpbmc7XG4gICAgICBpZiAodHlwZW9mIHYgPT09IFwic3RyaW5nXCIpIHJldHVybiB2O1xuICAgIH1cbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from "./display-label";
2
+ export * from "./extract-summary";
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3VtbWFyeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9kaXNwbGF5LWxhYmVsXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leHRyYWN0LXN1bW1hcnlcIjtcbiJdfQ==
package/package.json CHANGED
@@ -39,8 +39,25 @@
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "version": "0.0.59",
42
+ "version": "0.0.60",
43
43
  "types": "lib/index.d.ts",
44
+ "sideEffects": false,
45
+ "module": "lib/esm/index.js",
46
+ "exports": {
47
+ ".": {
48
+ "types": "./lib/index.d.ts",
49
+ "module": "./lib/esm/index.js",
50
+ "require": "./lib/index.js",
51
+ "default": "./lib/index.js"
52
+ },
53
+ "./data": {
54
+ "types": "./lib/data/index.d.ts",
55
+ "module": "./lib/esm/data/index.js",
56
+ "require": "./lib/data/index.js",
57
+ "default": "./lib/data/index.js"
58
+ },
59
+ "./package.json": "./package.json"
60
+ },
44
61
  "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"pnpm exec projen\".",
45
62
  "scripts": {
46
63
  "build": "projen build",