@nulib/clover 4.3.1 → 4.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 (276) hide show
  1. package/dist/components/Items/Item.mjs +30 -21
  2. package/dist/components/Items/Items.mjs +3 -1
  3. package/dist/components/Items/PagerLayout.mjs +1 -0
  4. package/dist/components/Map/MapView.mjs +7 -6
  5. package/dist/components/Panel/PanelToggle.mjs +3 -1
  6. package/dist/index.d.mts +26 -3
  7. package/dist/index.mjs +2 -1
  8. package/dist/map/index.d.mts +6 -0
  9. package/dist/react/hooks.mjs +3 -1
  10. package/dist/styles/core.css +1 -1
  11. package/dist/styles/default.css +1 -1
  12. package/dist/styles.css +1 -1
  13. package/dist/templates/document/Document.mjs +2 -3
  14. package/dist/templates/document/Sheets.mjs +30 -0
  15. package/dist/templates/index.d.mts +433 -0
  16. package/dist/templates/index.mjs +19 -2
  17. package/dist/templates/shared/LightboxView.mjs +7 -5
  18. package/dist/templates/shared/PanelPane.mjs +27 -13
  19. package/dist/templates.css +1 -1
  20. package/dist/ui/Button.mjs +3 -1
  21. package/dist/web-components/{About-j3O9cA3r.mjs → About-DgBOPS3N.mjs} +1 -1
  22. package/dist/web-components/{AnnotationItems-U0WmWGOh.mjs → AnnotationItems-CBEb7Cew.mjs} +1 -1
  23. package/dist/web-components/{AnnotationMenu-C1fAWWYy.mjs → AnnotationMenu-DiQyu45i.mjs} +1 -1
  24. package/dist/web-components/{AnnotationState-C9UhGpsr.mjs → AnnotationState-DemGGP7N.mjs} +1 -1
  25. package/dist/web-components/{Annotations-BtJ4IVmy.mjs → Annotations-CDVyd69_.mjs} +1 -1
  26. package/dist/web-components/{Annotations-YcFbQRJx.mjs → Annotations-oXpa3fvs.mjs} +1 -1
  27. package/dist/web-components/{Body-Ccxmucbr.mjs → Body-BNLhtQi3.mjs} +1 -1
  28. package/dist/web-components/{BodyAlert-BBSStCpI.mjs → BodyAlert-B0AblEtp.mjs} +1 -1
  29. package/dist/web-components/Button-0dU8Owcz.mjs +1 -0
  30. package/dist/web-components/{Camera-DSk-YFpW.mjs → Camera-BS8iIH74.mjs} +1 -1
  31. package/dist/web-components/{Canvas2DBackend-CYAJ-W6-.mjs → Canvas2DBackend-U4BLi8EN.mjs} +1 -1
  32. package/dist/web-components/{CanvasView-BAJ6OYvn.mjs → CanvasView-DeM04pm-.mjs} +2 -2
  33. package/dist/web-components/{CaptionDetails-Dg9Y11o_.mjs → CaptionDetails-CtRzBSwh.mjs} +1 -1
  34. package/dist/web-components/{ChaptersMenu-i4bFwR8c.mjs → ChaptersMenu-DJRfJSwC.mjs} +1 -1
  35. package/dist/web-components/{Chevron-BnlK9F4K.mjs → Chevron-BJFhP5wm.mjs} +1 -1
  36. package/dist/web-components/{ChoiceMenu-YXA7Ku8M.mjs → ChoiceMenu-Cfjnk3NG.mjs} +1 -1
  37. package/dist/web-components/{Collection-DgSFQbN-.mjs → Collection-C2ji8AVd.mjs} +1 -1
  38. package/dist/web-components/{CollectionSelect-PUcTh3Uv.mjs → CollectionSelect-CSTSqjG3.mjs} +1 -1
  39. package/dist/web-components/{Connected-B_caNIrW.mjs → Connected-B42WdjMx.mjs} +1 -1
  40. package/dist/web-components/{Connected-YgL5BWf5.mjs → Connected-C-Ars8eC.mjs} +1 -1
  41. package/dist/web-components/{Connected-XhRc6yaA.mjs → Connected-D2y_qBDh.mjs} +1 -1
  42. package/dist/web-components/{Contents-CoC4TK6G.mjs → Contents-BLbU9Qvc.mjs} +1 -1
  43. package/dist/web-components/{ControlMenu-CYfLg3Ok.mjs → ControlMenu-CJtszzgx.mjs} +1 -1
  44. package/dist/web-components/ControlsFade-Pye8AyCz.mjs +1 -0
  45. package/dist/web-components/{CountMenu-C7XawAoa.mjs → CountMenu-3-t8974M.mjs} +1 -1
  46. package/dist/web-components/Cue-eTms5gbr.mjs +1 -0
  47. package/dist/web-components/Document-CkKoLQ51.mjs +1 -0
  48. package/dist/web-components/{DomLayers-Bbrulm6v.mjs → DomLayers-DDRNVemT.mjs} +1 -1
  49. package/dist/web-components/{Download-CfRPt74Y.mjs → Download-VPFf23Kw.mjs} +1 -1
  50. package/dist/web-components/{EntryBodies-Bz8hyAUW.mjs → EntryBodies-CKgmBQCk.mjs} +1 -1
  51. package/dist/web-components/{EntryThumbnail-R9h0AXcu.mjs → EntryThumbnail-CgukpUtr.mjs} +1 -1
  52. package/dist/web-components/{FieldPill-DFIdy-hn.mjs → FieldPill-M9u0eLtz.mjs} +1 -1
  53. package/dist/web-components/{FrameAnimation-DFDuFwwt.mjs → FrameAnimation-C2EFrQl0.mjs} +1 -1
  54. package/dist/web-components/{Gallery-BrYWLufL.mjs → Gallery-mqXXjGtK.mjs} +1 -1
  55. package/dist/web-components/{HideToggle-geO9QfFR.mjs → HideToggle-HVrk9D6t.mjs} +1 -1
  56. package/dist/web-components/{ImageControls-B9PhCHqi.mjs → ImageControls-BsGWsB_S.mjs} +1 -1
  57. package/dist/web-components/Items-BoFm0Hlx.mjs +1 -0
  58. package/dist/web-components/{Label-S7o8PlWU.mjs → Label-GTBsGDCC.mjs} +1 -1
  59. package/dist/web-components/{LanguageChoice-URJJAdah.mjs → LanguageChoice-BEiskuVG.mjs} +1 -1
  60. package/dist/web-components/LightboxView-Daz0RCee.mjs +1 -0
  61. package/dist/web-components/{ListEnd-B0wGr87o.mjs → ListEnd-BPSaqeEg.mjs} +1 -1
  62. package/dist/web-components/{Loaded-Do53YvYw.mjs → Loaded-vg9q9y73.mjs} +1 -1
  63. package/dist/web-components/{LoadedCanvas-BrtGPpSm.mjs → LoadedCanvas-BtNg_QnI.mjs} +1 -1
  64. package/dist/web-components/LoadedMap-D9Z3zl12.mjs +1 -0
  65. package/dist/web-components/{Loading-Du3wn1EM.mjs → Loading-DnCFXiNy.mjs} +1 -1
  66. package/dist/web-components/{Map-B6LVO0gx.mjs → Map-CIGzy4XB.mjs} +1 -1
  67. package/dist/web-components/MapView-CExlNO5E.mjs +3 -0
  68. package/dist/web-components/{Markup-DACv7sRg.mjs → Markup-Csh1bNkq.mjs} +1 -1
  69. package/dist/web-components/{MediaBody-CcuO5IZT.mjs → MediaBody-CRJFBpMk.mjs} +1 -1
  70. package/dist/web-components/{MediaBody-DGd2uFfK.mjs → MediaBody-CeEWPIDp.mjs} +1 -1
  71. package/dist/web-components/{NavDate-DRKmjc54.mjs → NavDate-qoFXy3Ou.mjs} +1 -1
  72. package/dist/web-components/{Navigator-CA8zB6CU.mjs → Navigator-9n2yLQdc.mjs} +1 -1
  73. package/dist/web-components/{Pager-DWp6u3iv.mjs → Pager-4rZjWBna.mjs} +1 -1
  74. package/dist/web-components/PagerLayout-l6UNSoQ1.mjs +1 -0
  75. package/dist/web-components/{Panel-CzUDNn8M.mjs → Panel-ikILE92M.mjs} +1 -1
  76. package/dist/web-components/PanelPart-VPAwSoQZ.mjs +1 -0
  77. package/dist/web-components/PanelToggle-0K2YTp6k.mjs +1 -0
  78. package/dist/web-components/{PartOfManifest-Ct-I8Ofm.mjs → PartOfManifest-ZUGZW86B.mjs} +1 -1
  79. package/dist/web-components/{Pending-f1heQNo7.mjs → Pending-lpHOVvqE.mjs} +1 -1
  80. package/dist/web-components/{PlaceBox-_an9ya_W.mjs → PlaceBox-D73C--SU.mjs} +1 -1
  81. package/dist/web-components/{Placeholder-D4-VCxeD.mjs → Placeholder-ChFeaw7a.mjs} +1 -1
  82. package/dist/web-components/{Position-DA4rzRiy.mjs → Position-C2Hm7tJZ.mjs} +1 -1
  83. package/dist/web-components/{Primitives-DU_VhdO2.mjs → Primitives-CBRreXtS.mjs} +1 -1
  84. package/dist/web-components/{Provider-Dl_t_qEC.mjs → Provider-HPVBNZPr.mjs} +1 -1
  85. package/dist/web-components/{ReadMore-BpA8Dex8.mjs → ReadMore-DsthjUIZ.mjs} +1 -1
  86. package/dist/web-components/{Root-DixSZV9Y.mjs → Root-BJwk-F1e.mjs} +1 -1
  87. package/dist/web-components/Scene-DC7ofvsK.mjs +1 -0
  88. package/dist/web-components/{SceneView-BJNlboix.mjs → SceneView-C53yZtMZ.mjs} +1 -1
  89. package/dist/web-components/{Search-CvpKzlYP.mjs → Search-Cd0xLU3y.mjs} +1 -1
  90. package/dist/web-components/{Sections-BhfcUyaf.mjs → Sections-Cf3JDxnz.mjs} +1 -1
  91. package/dist/web-components/{SeekMarks-BfOrFnvQ.mjs → SeekMarks-DNHLgUaX.mjs} +1 -1
  92. package/dist/web-components/{StandaloneItems-CoiceHd8.mjs → StandaloneItems-DEchYe7Y.mjs} +1 -1
  93. package/dist/web-components/{Status-B4327UOL.mjs → Status-DLZANUzF.mjs} +1 -1
  94. package/dist/web-components/{Steps-ACdXJZrV.mjs → Steps-BigQvWNW.mjs} +1 -1
  95. package/dist/web-components/{TargetItems-D1bLKA_B.mjs → TargetItems-DzNzoEeh.mjs} +1 -1
  96. package/dist/web-components/Timeline--uq4-_TD.mjs +1 -0
  97. package/dist/web-components/{Tip-BatwzZZo.mjs → Tip-CoSRaKjm.mjs} +1 -1
  98. package/dist/web-components/{Transcript-B1nh9UJK.mjs → Transcript-Dex719tP.mjs} +1 -1
  99. package/dist/web-components/{Transport-DKb3XTMA.mjs → Transport-BV0Rg5Ym.mjs} +1 -1
  100. package/dist/web-components/{Transport-BsjGGbFJ.mjs → Transport-CHkvmPbN.mjs} +1 -1
  101. package/dist/web-components/{annotation-collection-CtxYL-V3.mjs → annotation-collection-DwJ2R8tG.mjs} +1 -1
  102. package/dist/web-components/{annotation-name-KQ4wAi8-.mjs → annotation-name-2rUtUYsN.mjs} +1 -1
  103. package/dist/web-components/{annotations-content-XVgQ5me7.mjs → annotations-content-fTNYRgN_.mjs} +1 -1
  104. package/dist/web-components/{body-CbYkzpmQ.mjs → body-qFClz6nF.mjs} +1 -1
  105. package/dist/web-components/{canvas-Du31_Dru.mjs → canvas-DqmG6v1g.mjs} +1 -1
  106. package/dist/web-components/{cloverEngine-CuRCXZNZ.mjs → cloverEngine-BBfVDNbE.mjs} +1 -1
  107. package/dist/web-components/{content-state-reader-DLlBY4Ox.mjs → content-state-reader-DYXL5lFa.mjs} +1 -1
  108. package/dist/web-components/{controlGlyphs-ClH59vLg.mjs → controlGlyphs-DqZmaT9n.mjs} +1 -1
  109. package/dist/web-components/{controls-smixEi0i.mjs → controls-BvC6zo32.mjs} +1 -1
  110. package/dist/web-components/custom-elements.json +22 -0
  111. package/dist/web-components/{downloads-BqkNwsM0.mjs → downloads-CFz0RnMz.mjs} +1 -1
  112. package/dist/web-components/{dragToClose-2joCF413.mjs → dragToClose-wFiErDub.mjs} +1 -1
  113. package/dist/web-components/{engine-DNTgJBST.mjs → engine-B0W3FXuQ.mjs} +1 -1
  114. package/dist/web-components/{engines-BpFZX2dO.mjs → engines-DVRUnyFv.mjs} +1 -1
  115. package/dist/web-components/{fetchManifest-B-poGgag.mjs → fetchManifest-f8gYlPDK.mjs} +1 -1
  116. package/dist/web-components/{fromManifest-Dw3BwjHM.mjs → fromManifest-BmpOsc5g.mjs} +1 -1
  117. package/dist/web-components/{glyphs-VoJVEqLE.mjs → glyphs-oAgi4Au0.mjs} +1 -1
  118. package/dist/web-components/{hooks-Syt1XLVX.mjs → hooks-uer3ZRx7.mjs} +1 -1
  119. package/dist/web-components/{image-layers-ryUJ_0bq.mjs → image-layers-CndzdWOW.mjs} +1 -1
  120. package/dist/web-components/{imageService-DBU_Xks1.mjs → imageService-DTp1mc0F.mjs} +1 -1
  121. package/dist/web-components/index-BkADsP3U.mjs +1 -0
  122. package/dist/web-components/index.d.mts +3 -0
  123. package/dist/web-components/index.mjs +1 -1
  124. package/dist/web-components/items-BWG13qDG.mjs +1 -0
  125. package/dist/web-components/{items-BQPvL5D6.mjs → items-SD92pRMN.mjs} +1 -1
  126. package/dist/web-components/label-Bw9SwLh8.mjs +1 -0
  127. package/dist/web-components/{layout-MzMKFa5I.mjs → layout-DrVnUBcm.mjs} +1 -1
  128. package/dist/web-components/{link-BUQQE9P2.mjs → link-CEfxl5hU.mjs} +1 -1
  129. package/dist/web-components/logo-Dzr2M4F7.mjs +1 -0
  130. package/dist/web-components/{models-wl-5vW2i.mjs → models-B-kri8Ov.mjs} +1 -1
  131. package/dist/web-components/{nodes-CmOpA3s7.mjs → nodes-BKoxD-el.mjs} +1 -1
  132. package/dist/web-components/{overlayImage-tb9-Md51.mjs → overlayImage-Dp8CjA_L.mjs} +1 -1
  133. package/dist/web-components/{panel-BPVyAugu.mjs → panel-ldBDfuIV.mjs} +1 -1
  134. package/dist/web-components/part-dr-d1XPo.mjs +1 -0
  135. package/dist/web-components/{playerSurface-BxxMV-va.mjs → playerSurface-CLWTmyt1.mjs} +1 -1
  136. package/dist/web-components/{pointer-BqgxBJ82.mjs → pointer-IZcH8rZy.mjs} +1 -1
  137. package/dist/web-components/{provider-B9oAQG-u.mjs → provider-D24Pm3a1.mjs} +1 -1
  138. package/dist/web-components/{range-regions-BFB1374L.mjs → range-regions-9vY5ikPm.mjs} +1 -1
  139. package/dist/web-components/{read-more-oWPk0OLi.mjs → read-more-CoOeWZOF.mjs} +1 -1
  140. package/dist/web-components/{readingLanguages-BigCi6rZ.mjs → readingLanguages-Bd4MD2DP.mjs} +1 -1
  141. package/dist/web-components/{rendererSurface-B_OOhxzA.mjs → rendererSurface-Ox625xUL.mjs} +2 -2
  142. package/dist/web-components/{renderers-CBupZj8Z.mjs → renderers-BXcv_AqV.mjs} +1 -1
  143. package/dist/web-components/{resource-B6uUsU6D.mjs → resource-DmK-8hJ-.mjs} +1 -1
  144. package/dist/web-components/{save-file-BaIrLp1V.mjs → save-file-Dj3MRR7Y.mjs} +1 -1
  145. package/dist/web-components/{search-DaGpvTki.mjs → search-C9OyY1qk.mjs} +1 -1
  146. package/dist/web-components/{shared-D2RadIoz.mjs → shared-BmkV0s_d.mjs} +1 -1
  147. package/dist/web-components/{show-link-Cxylys81.mjs → show-link-4mlfdoeo.mjs} +1 -1
  148. package/dist/web-components/{sizedImage-DchqGFdt.mjs → sizedImage-COfCkv_8.mjs} +1 -1
  149. package/dist/web-components/{split-oaEIep3T.mjs → split-Ci426kxC.mjs} +1 -1
  150. package/dist/web-components/{status-CfCgO5OB.mjs → status-CzasXLV8.mjs} +1 -1
  151. package/dist/web-components/styles-On1ck1Ob.mjs +1 -0
  152. package/dist/web-components/three.mjs +1 -1
  153. package/dist/web-components/{thumbnail-D83GaQ8C.mjs → thumbnail-ByuoouMG.mjs} +1 -1
  154. package/dist/web-components/{tip-CMEBtCil.mjs → tip-CQEGLOst.mjs} +1 -1
  155. package/dist/web-components/toggle-Dro_EmUU.mjs +1 -0
  156. package/dist/web-components/{useContainerName-fp0-n_9x.mjs → useContainerName-CUP-TlA5.mjs} +1 -1
  157. package/dist/web-components/{useControlsVisibility-BYZlgiAt.mjs → useControlsVisibility-DeI3NHWp.mjs} +1 -1
  158. package/dist/web-components/{useNearViewport-DMqMdvue.mjs → useNearViewport-yyUYq47j.mjs} +1 -1
  159. package/dist/web-components/{useScrollTrack-BHuPAWxB.mjs → useScrollTrack-CcFLYR4o.mjs} +1 -1
  160. package/dist/web-components/viewer/AnnotationItems-ByWBkMRd.mjs +1 -0
  161. package/dist/web-components/viewer/{AnnotationMenu-BO18q_Ze.mjs → AnnotationMenu-C-9tbH4G.mjs} +1 -1
  162. package/dist/web-components/viewer/AnnotationState-CV4g-WUB.mjs +1 -0
  163. package/dist/web-components/viewer/{Annotations-C46kSUA6.mjs → Annotations-CJRF_IwO.mjs} +1 -1
  164. package/dist/web-components/viewer/{Annotations-DEKa_9xz.mjs → Annotations-t1K8U5Kp.mjs} +2 -2
  165. package/dist/web-components/viewer/{Canvas2DBackend-DHSI3dKr.mjs → Canvas2DBackend-DPDF0a8D.mjs} +1 -1
  166. package/dist/web-components/viewer/CaptionDetails-xzvdqP5N.mjs +1 -0
  167. package/dist/web-components/viewer/{ChaptersMenu-CIwIM2Pb.mjs → ChaptersMenu-D7b9t6bm.mjs} +1 -1
  168. package/dist/web-components/viewer/ChoiceMenu-f2774ZaY.mjs +1 -0
  169. package/dist/web-components/viewer/Collection-D1E6A8es.mjs +1 -0
  170. package/dist/web-components/viewer/{Connected-Bbk8M5rE.mjs → Connected-BLeqNIOf.mjs} +1 -1
  171. package/dist/web-components/viewer/{Connected-DAOMKtJR.mjs → Connected-DfqFYcTn.mjs} +1 -1
  172. package/dist/web-components/viewer/{Contents-BnRBx3rc.mjs → Contents-DvmP8OGy.mjs} +1 -1
  173. package/dist/web-components/viewer/{ControlMenu-Co6yBttc.mjs → ControlMenu-DIfN3xYJ.mjs} +1 -1
  174. package/dist/web-components/viewer/ControlsFade-sckPhZ4x.mjs +1 -0
  175. package/dist/web-components/viewer/{CountMenu-lu21fO_7.mjs → CountMenu-BQVCtVfu.mjs} +1 -1
  176. package/dist/web-components/viewer/Cue-DQ8q-fgb.mjs +1 -0
  177. package/dist/web-components/viewer/Document-B-nJpfDh.mjs +1 -0
  178. package/dist/web-components/viewer/{DomLayers-BjxGaZkt.mjs → DomLayers-CD56oMcR.mjs} +1 -1
  179. package/dist/web-components/viewer/{Download-DhMD4AJt.mjs → Download-DAOzY3Nu.mjs} +1 -1
  180. package/dist/web-components/viewer/{EntryBodies-DL5UolEz.mjs → EntryBodies-0A0uyEwC.mjs} +1 -1
  181. package/dist/web-components/viewer/{EntryThumbnail-CJisDcni.mjs → EntryThumbnail-fBaBZJGd.mjs} +1 -1
  182. package/dist/web-components/viewer/{FieldPill-DAk6zxxD.mjs → FieldPill-BQcDb4xM.mjs} +1 -1
  183. package/dist/web-components/viewer/{FrameAnimation-DGMuFNdW.mjs → FrameAnimation-kba5V4Vk.mjs} +1 -1
  184. package/dist/web-components/viewer/{Gallery-CbHhyWlF.mjs → Gallery-_0dEBq2w.mjs} +1 -1
  185. package/dist/web-components/viewer/HideToggle-D8c_7URN.mjs +1 -0
  186. package/dist/web-components/viewer/{ImageControls-BDx7C1q5.mjs → ImageControls-C_C0LSj7.mjs} +1 -1
  187. package/dist/web-components/viewer/{LanguageChoice-BM9xZr_D.mjs → LanguageChoice-0UWQ5V-y.mjs} +1 -1
  188. package/dist/web-components/viewer/LightboxView-Dnlf7m8l.mjs +1 -0
  189. package/dist/web-components/viewer/ListEnd-B2hnHrcl.mjs +1 -0
  190. package/dist/web-components/viewer/MapView-Cr3RiB1K.mjs +3 -0
  191. package/dist/web-components/viewer/{MediaBody-BokgnTO-.mjs → MediaBody-4ZFKNnr3.mjs} +1 -1
  192. package/dist/web-components/viewer/{MediaBody-DPOcyiYH.mjs → MediaBody-xjpo27Vw.mjs} +1 -1
  193. package/dist/web-components/viewer/{NavDate-B6rCV-Cd.mjs → NavDate-Dz5eW2XY.mjs} +1 -1
  194. package/dist/web-components/viewer/{Navigator-CjgUcgKY.mjs → Navigator-DNZcaADs.mjs} +1 -1
  195. package/dist/web-components/viewer/PagerLayout-PYWFPFSJ.mjs +1 -0
  196. package/dist/web-components/viewer/PanelPart-Bd0JqUwF.mjs +1 -0
  197. package/dist/web-components/viewer/{PartOfManifest-B0TYADTv.mjs → PartOfManifest-BHpVLJOn.mjs} +1 -1
  198. package/dist/web-components/viewer/{PlaceBox-Cjdjg-_9.mjs → PlaceBox-Bh9V3RLS.mjs} +1 -1
  199. package/dist/web-components/viewer/{Placeholder-MYLjXbiF.mjs → Placeholder-CLITKdu6.mjs} +1 -1
  200. package/dist/web-components/viewer/{Search-CyRrBHsr.mjs → Search-C0B5Jh9V.mjs} +1 -1
  201. package/dist/web-components/viewer/{SeekMarks-1WSjARP5.mjs → SeekMarks-B8cuyVgz.mjs} +1 -1
  202. package/dist/web-components/viewer/StandaloneItems-Cu0aBqAo.mjs +1 -0
  203. package/dist/web-components/viewer/Steps-DqszSHcR.mjs +1 -0
  204. package/dist/web-components/viewer/{TargetItems-BpmZEVMS.mjs → TargetItems-DN8ebfbK.mjs} +1 -1
  205. package/dist/web-components/viewer/{Transcript-CE4BsnWd.mjs → Transcript-D3mKmdQY.mjs} +1 -1
  206. package/dist/web-components/viewer/Transport-9f_lhebG.mjs +1 -0
  207. package/dist/web-components/viewer/{Transport-1ROUkfsf.mjs → Transport-BudReE7Y.mjs} +1 -1
  208. package/dist/web-components/viewer/{annotation-collection-vM0aeJgP.mjs → annotation-collection-Drwfws4R.mjs} +1 -1
  209. package/dist/web-components/viewer/{annotation-name-kjUrGbhg.mjs → annotation-name-Bp2GHdpi.mjs} +1 -1
  210. package/dist/web-components/viewer/{annotations-content-CysDLy4t.mjs → annotations-content-Ci-orrao.mjs} +1 -1
  211. package/dist/web-components/viewer/{cloverEngine-S8GEd-YZ.mjs → cloverEngine-BmUppb5Y.mjs} +2 -2
  212. package/dist/web-components/viewer/{content-state-reader-BTZKS9Hq.mjs → content-state-reader-B9u1vc3t.mjs} +1 -1
  213. package/dist/web-components/viewer/{dragToClose-Bt4QtVSO.mjs → dragToClose-C9KwbQpA.mjs} +1 -1
  214. package/dist/web-components/viewer/{fetchManifest-D4aIqcDV.mjs → fetchManifest-gl9fyg7D.mjs} +1 -1
  215. package/dist/web-components/viewer/{host-ClJe-BX1.mjs → host-D3tVEhAD.mjs} +1 -1
  216. package/dist/web-components/viewer/image-layers-DSehEFmU.mjs +1 -0
  217. package/dist/web-components/viewer/index.mjs +1 -1
  218. package/dist/web-components/viewer/{link-CU71f0wU.mjs → link-BYKFtAno.mjs} +1 -1
  219. package/dist/web-components/viewer/overlayImage-CdgpMutd.mjs +1 -0
  220. package/dist/web-components/viewer/range-regions-CEM4sQKi.mjs +1 -0
  221. package/dist/web-components/viewer/{renderers-2BgvLkI0.mjs → renderers-BiDrFLxn.mjs} +1 -1
  222. package/dist/web-components/viewer/{save-file-BW7D7oYG.mjs → save-file-CzYUFJNg.mjs} +1 -1
  223. package/dist/web-components/viewer/{search-DBMO82DV.mjs → search-Dr6AQ3Lb.mjs} +1 -1
  224. package/dist/web-components/viewer/styles-DvZTMHkr.mjs +1 -0
  225. package/dist/web-components/viewer/{useControlsVisibility-DSSIzst5.mjs → useControlsVisibility-CP5m7oBd.mjs} +1 -1
  226. package/dist/web-components/viewer/viewer-DaG51iO3.mjs +29 -0
  227. package/dist/web-components/viewer/{vtt-Dk5bwDVQ.mjs → vtt-CDqR3lHn.mjs} +1 -1
  228. package/dist/web-components/viewer-DeAUI9Fi.mjs +1 -0
  229. package/dist/web-components/{vtt-9Ui3h60h.mjs → vtt-DHZRkZ_P.mjs} +1 -1
  230. package/package.json +1 -1
  231. package/dist/templates/shared/useLazyPanelPane.mjs +0 -16
  232. package/dist/web-components/Button-Bphsp8rv.mjs +0 -1
  233. package/dist/web-components/ControlsFade-BcGL7yUH.mjs +0 -1
  234. package/dist/web-components/Cue-DZJ5TBKU.mjs +0 -1
  235. package/dist/web-components/Document-DZDYR2Tk.mjs +0 -1
  236. package/dist/web-components/Items-C7wjylgH.mjs +0 -1
  237. package/dist/web-components/LightboxView-65ROPr0_.mjs +0 -1
  238. package/dist/web-components/LoadedMap-C06TIgvf.mjs +0 -1
  239. package/dist/web-components/MapView-CzV3y5iI.mjs +0 -3
  240. package/dist/web-components/PagerLayout-DHRpcI8x.mjs +0 -1
  241. package/dist/web-components/PanelPart-DKb9dXm6.mjs +0 -1
  242. package/dist/web-components/PanelToggle-D5sx5FP9.mjs +0 -1
  243. package/dist/web-components/Scene-CSaXgBNr.mjs +0 -1
  244. package/dist/web-components/Timeline-DY8LpnOG.mjs +0 -1
  245. package/dist/web-components/index-DGXCFoHu.mjs +0 -1
  246. package/dist/web-components/items-TIbaHoB8.mjs +0 -1
  247. package/dist/web-components/label-Bd-QYEXn.mjs +0 -1
  248. package/dist/web-components/logo-Cn820OoX.mjs +0 -1
  249. package/dist/web-components/part-DeZI8Hmp.mjs +0 -1
  250. package/dist/web-components/styles-DZIDbHxL.mjs +0 -1
  251. package/dist/web-components/toggle-3NncfBSZ.mjs +0 -1
  252. package/dist/web-components/useLazyPanelPane-DXYGGS7f.mjs +0 -1
  253. package/dist/web-components/viewer/AnnotationItems-B5Vs0dYi.mjs +0 -1
  254. package/dist/web-components/viewer/AnnotationState-ZPmnCpbZ.mjs +0 -1
  255. package/dist/web-components/viewer/CaptionDetails-BVCqV9NT.mjs +0 -1
  256. package/dist/web-components/viewer/ChoiceMenu-Ww7lcPnq.mjs +0 -1
  257. package/dist/web-components/viewer/Collection-DCYM9eE6.mjs +0 -1
  258. package/dist/web-components/viewer/ControlsFade-pOQ5VQ5i.mjs +0 -1
  259. package/dist/web-components/viewer/Cue-oaiVO9ZO.mjs +0 -1
  260. package/dist/web-components/viewer/Document-ByBRhL68.mjs +0 -1
  261. package/dist/web-components/viewer/HideToggle-C6B9B2Bo.mjs +0 -1
  262. package/dist/web-components/viewer/LightboxView-RrioB0CN.mjs +0 -1
  263. package/dist/web-components/viewer/ListEnd-8vdKw6Py.mjs +0 -1
  264. package/dist/web-components/viewer/MapView-G3yj-Bjd.mjs +0 -3
  265. package/dist/web-components/viewer/PagerLayout-LZmC6VpV.mjs +0 -1
  266. package/dist/web-components/viewer/PanelPart-Cw1G5W4b.mjs +0 -1
  267. package/dist/web-components/viewer/StandaloneItems-CQrzTSPC.mjs +0 -1
  268. package/dist/web-components/viewer/Steps-Bd42-eq7.mjs +0 -1
  269. package/dist/web-components/viewer/Transport-g0_Cjy0f.mjs +0 -1
  270. package/dist/web-components/viewer/image-layers-DGa5HJt8.mjs +0 -1
  271. package/dist/web-components/viewer/overlayImage-D9GHzMmm.mjs +0 -1
  272. package/dist/web-components/viewer/range-regions-CiceyEuu.mjs +0 -1
  273. package/dist/web-components/viewer/styles-DogZyfVz.mjs +0 -1
  274. package/dist/web-components/viewer/useLazyPanelPane-_6IY7cV5.mjs +0 -1
  275. package/dist/web-components/viewer/viewer-ClQD1LNQ.mjs +0 -29
  276. package/dist/web-components/viewer-DLfZQmZs.mjs +0 -1
@@ -1 +1 @@
1
- import{ai as Le,ae as Oe,a as Ie,K as $e,bb as Me,bc as ie,bd as le,T as ue,e as C,be as Re,y as v,bf as Se,C as we,A as L,f as Ae,bg as Ee,af as Pe,u as n,a7 as ze,k as de,a9 as M,v as Fe,o as Ke,$ as Ve,ag as He,b7 as qe}from"./viewer-ClQD1LNQ.mjs";import{l as De,a as Ue,p as Xe,b as je,c as Be}from"./vtt-Dk5bwDVQ.mjs";import{b as pe,s as Ge}from"../bringIntoView-CQH5ZgMM.mjs";import{C as Je}from"./Cue-oaiVO9ZO.mjs";import{F as Qe}from"./FieldPill-DAk6zxxD.mjs";import{l as We}from"../languageCode-cCpiU0b0.mjs";import"./styles-DogZyfVz.mjs";const q=40,D=s=>s.toLocaleLowerCase();function Ye(s,i){if(!i)return s;const m=D(s),f=[];let a=0;for(let p=m.indexOf(i);p>=0;p=m.indexOf(i,p+i.length))p>a&&f.push(s.slice(a,p)),f.push(n("mark",{children:s.slice(p,p+i.length)},p)),a=p+i.length;return a<s.length&&f.push(s.slice(a)),f}const R=s=>s.read==="cues"&&s.kind!=="transcript",ot=Le(function({as:i="div",follow:m=true,find:f=true,sticky:a=false,size:p="large",className:ge,...fe},ve){const{t:U,langOf:X}=Oe(),{clover:o,language:j}=Ie("Transcript"),T=$e(e=>Me(e.manifest,e.canvasId)).find(e=>ie(e).length>0||le(e).length>0),l=ue(()=>T?[...ie(T).map(e=>({...e,read:"cues"})),...le(T).map(e=>({...e,read:"text"}))]:[],[T]),[B,S]=C(0),u=l[B]??l[0],O=Re(),w=(O==null?void 0:O.chosen)??j;v(()=>{if(!w)return;const e=l.findIndex(r=>r.language&&r.language!=="none"&&Se(r.language,w));if(e<0)return;S(e);const t=l[e];R(t)&&o.captions.get()!==t.id&&o.captions.emit(t.id)},[w,l,o]),v(()=>{const e=t=>{const r=l.findIndex(d=>R(d)&&d.id===t);r>=0&&S(r)};return e(o.captions.get()),o.captions.subscribe(e)},[o,l]);const[c,G]=C([]),[me,J]=C([]);v(()=>{if(G([]),J([]),!u)return;let e=true;return(u.read==="cues"?De(u.id,o.request).then(t=>e&&G(Xe(t))):Ue(u.id,o.request).then(t=>e&&J(je(t)))).catch(()=>{}),()=>{e=false}},[u,o]);const h=we(o.media.subscribe,o.media.get,o.media.get),N=Ze(h,c),A=L(null);v(()=>{var t;if(!m||N<0||!h||h.paused)return;const e=(t=A.current)==null?void 0:t.children[N];e&&pe(e,"nearest")},[N,m,h]);const[Q,W]=C(""),g=D(Q.trim()),b=ue(()=>g?c.flatMap((e,t)=>D(e.text).includes(g)?[t]:[]):[],[c,g]),[E,he]=C({query:"",at:0}),x=E.query===g?E.at:0,P=L(null),z=L(false),[Y,be]=C({cues:[],count:q}),Z=Y.cues===c?Y.count:q,F=()=>be({cues:c,count:Z+q}),_=L(F);_.current=F;const K=typeof IntersectionObserver<"u",y=K?Math.min(c.length,Math.max(Z,N+1,(b[x]??-1)+1)):c.length,ee=L(null);v(()=>{const e=ee.current;if(!e||!K||y>=c.length)return;const t=new IntersectionObserver(r=>{r.some(d=>d.isIntersecting)&&_.current()},{root:Ge(e),rootMargin:"0px 0px 400px 0px"});return t.observe(e),()=>t.disconnect()},[K,y,c.length]);const I=b[x];v(()=>{var t;if(I===void 0)return;const e=(t=A.current)==null?void 0:t.children[I];e&&pe(e,"nearest"),z.current=false},[I,g]);const Ce=c.length>0;v(()=>{var d;const e=(d=P.current)==null?void 0:d.closest(".clover-transcript-find"),t=e==null?void 0:e.parentElement;if(!a||!e||!t||typeof ResizeObserver>"u")return;const r=new ResizeObserver(()=>t.style.setProperty("--clover-transcript-find",`${e.offsetHeight}px`));return r.observe(e),()=>{r.disconnect(),t.style.removeProperty("--clover-transcript-find")}},[a,Ce,f]);const V=Ae(),te=Ee(),ne=l.every(R)?"playerCaptions":"transcriptLabel",se=Pe(U(ne),X(ne));if(!T||!u)return null;const Te=l.filter(e=>e.read==="text").length,re=l.map(e=>{const t=We(e.language);return e.read==="cues"?t:Te>1&&t?`TXT ${t}`:"TXT"}),xe=re.map(e=>e&&re.filter(t=>t===e).length===1?e:void 0),ae=u.language&&u.language!=="none"?u.language:void 0,H=l.length>1&&!O&&n(de,{children:[se.node,n("fieldset",{...se.props,className:"clover-transcript-languages",children:l.map((e,t)=>{const r=ze(e.label,j),d=xe[t],ke=r.text||e.language||String(t+1);return n("label",{className:"clover-transcript-language",children:[n("input",{type:"radio",name:`${V}-language`,checked:t===B,onChange:()=>{S(t),R(e)&&o.captions.emit(e.id)}}),d&&n(de,{children:[n("span",{className:"clover-transcript-code",children:d})," "]}),n("span",{style:d?Fe:void 0,...M(r.text?r.lang:void 0),children:ke}),d&&r.text&&n(Ke,{label:r.text,lang:r.lang})]},e.id)})})]}),ce=(e,t=true)=>{if(h){t?qe(h,e.start):h.currentTime=e.start;return}o.goTo(T.id,{time:e.start,...t&&{autoplay:true}})},oe=e=>{const t=c[b[e]];t&&(z.current=true,he({query:g,at:e}),ce(t,false))},ye={position:b.length?x:-1,total:b.length,step:e=>oe(x+e)},k=b.length,$=g?k===0?"contentSearchResultsNone":k===1?"contentSearchResult":"contentSearchResults":null,Ne=f&&u.read==="cues"&&c.length>0&&n("div",{className:"clover-transcript-find",children:[n(Qe,{ref:P,id:`${V}-find`,value:Q,onChange:W,onSubmit:()=>{if(!k)return;const e=E.query===g&&z.current;oe(e?(x+1)%k:x)},onClear:()=>{var e;W(""),(e=P.current)==null||e.focus()},results:g?ye:null,size:p,classes:{form:"clover-transcript-find-field"}}),n("p",{className:"clover-transcript-find-status",role:"status",...M($?X($):void 0),children:$?U($,{count:k}):""})]});return n(i,{ref:ve,className:He("clover-transcript",ge),"data-sticky":a||void 0,...fe,children:[H&&(te?Ve(H,te):H),Ne,u.read==="text"?n("div",{className:"clover-transcript-body",...M(ae),children:me.map((e,t)=>n("p",{children:e},t))}):n("ol",{ref:A,className:"clover-transcript-cues",id:`${V}-cues`,...M(ae),children:c.slice(0,y).map((e,t)=>n("li",{className:"clover-transcript-cue","aria-current":t===N?"true":void 0,"data-match":g&&b.includes(t)?t===I?"current":"true":void 0,children:n("button",{type:"button",onClick:()=>ce(e),onFocus:()=>{y<c.length&&t>=y-5&&F()},children:[n(Je,{start:e.start,className:"clover-transcript-time"}),n("span",{className:"clover-transcript-text clover-cue-text",children:[e.voice&&n("span",{className:"clover-transcript-voice",children:[e.voice,":"," "]}),Ye(e.text,g)]})]})},`${e.start}-${t}`))}),u.read==="cues"&&y<c.length&&n("div",{ref:ee,className:"clover-transcript-more","aria-hidden":"true"})]})});function Ze(s,i){const[m,f]=C(-1);return v(()=>{if(!s||!i.length){f(-1);return}const a=()=>f(Be(i,s.currentTime));return a(),s.addEventListener("timeupdate",a),s.addEventListener("seeked",a),()=>{s.removeEventListener("timeupdate",a),s.removeEventListener("seeked",a)}},[s,i]),m}export{ot as Transcript};
1
+ import{ak as Le,ag as Oe,a as Ie,N as $e,bd as Me,be as ie,bf as le,T as ue,e as C,bg as Re,y as v,bh as Se,C as we,A as L,f as Ae,bi as Ee,ah as Pe,u as n,a9 as ze,k as de,ab as M,v as Fe,p as Ve,$ as He,ai as Ke,b9 as qe}from"./viewer-DaG51iO3.mjs";import{l as De,a as Ue,p as Xe,b as je,c as Be}from"./vtt-CDqR3lHn.mjs";import{b as pe,s as Ge}from"../bringIntoView-CQH5ZgMM.mjs";import{C as Je}from"./Cue-DQ8q-fgb.mjs";import{F as Qe}from"./FieldPill-BQcDb4xM.mjs";import{l as We}from"../languageCode-cCpiU0b0.mjs";import"./styles-DvZTMHkr.mjs";const q=40,D=s=>s.toLocaleLowerCase();function Ye(s,i){if(!i)return s;const h=D(s),f=[];let a=0;for(let p=h.indexOf(i);p>=0;p=h.indexOf(i,p+i.length))p>a&&f.push(s.slice(a,p)),f.push(n("mark",{children:s.slice(p,p+i.length)},p)),a=p+i.length;return a<s.length&&f.push(s.slice(a)),f}const R=s=>s.read==="cues"&&s.kind!=="transcript",ot=Le(function({as:i="div",follow:h=true,find:f=true,sticky:a=false,size:p="large",className:ge,...fe},ve){const{t:U,langOf:X}=Oe(),{clover:o,language:j}=Ie("Transcript"),T=$e(e=>Me(e.manifest,e.canvasId)).find(e=>ie(e).length>0||le(e).length>0),l=ue(()=>T?[...ie(T).map(e=>({...e,read:"cues"})),...le(T).map(e=>({...e,read:"text"}))]:[],[T]),[B,S]=C(0),u=l[B]??l[0],O=Re(),w=(O==null?void 0:O.chosen)??j;v(()=>{if(!w)return;const e=l.findIndex(r=>r.language&&r.language!=="none"&&Se(r.language,w));if(e<0)return;S(e);const t=l[e];R(t)&&o.captions.get()!==t.id&&o.captions.emit(t.id)},[w,l,o]),v(()=>{const e=t=>{const r=l.findIndex(d=>R(d)&&d.id===t);r>=0&&S(r)};return e(o.captions.get()),o.captions.subscribe(e)},[o,l]);const[c,G]=C([]),[he,J]=C([]);v(()=>{if(G([]),J([]),!u)return;let e=true;return(u.read==="cues"?De(u.id,o.request).then(t=>e&&G(Xe(t))):Ue(u.id,o.request).then(t=>e&&J(je(t)))).catch(()=>{}),()=>{e=false}},[u,o]);const m=we(o.media.subscribe,o.media.get,o.media.get),y=Ze(m,c),A=L(null);v(()=>{var t;if(!h||y<0||!m||m.paused)return;const e=(t=A.current)==null?void 0:t.children[y];e&&pe(e,"nearest")},[y,h,m]);const[Q,W]=C(""),g=D(Q.trim()),b=ue(()=>g?c.flatMap((e,t)=>D(e.text).includes(g)?[t]:[]):[],[c,g]),[E,me]=C({query:"",at:0}),x=E.query===g?E.at:0,P=L(null),z=L(false),[Y,be]=C({cues:[],count:q}),Z=Y.cues===c?Y.count:q,F=()=>be({cues:c,count:Z+q}),_=L(F);_.current=F;const V=typeof IntersectionObserver<"u",N=V?Math.min(c.length,Math.max(Z,y+1,(b[x]??-1)+1)):c.length,ee=L(null);v(()=>{const e=ee.current;if(!e||!V||N>=c.length)return;const t=new IntersectionObserver(r=>{r.some(d=>d.isIntersecting)&&_.current()},{root:Ge(e),rootMargin:"0px 0px 400px 0px"});return t.observe(e),()=>t.disconnect()},[V,N,c.length]);const I=b[x];v(()=>{var t;if(I===void 0)return;const e=(t=A.current)==null?void 0:t.children[I];e&&pe(e,"nearest"),z.current=false},[I,g]);const Ce=c.length>0;v(()=>{var d;const e=(d=P.current)==null?void 0:d.closest(".clover-transcript-find"),t=e==null?void 0:e.parentElement;if(!a||!e||!t||typeof ResizeObserver>"u")return;const r=new ResizeObserver(()=>t.style.setProperty("--clover-transcript-find",`${e.offsetHeight}px`));return r.observe(e),()=>{r.disconnect(),t.style.removeProperty("--clover-transcript-find")}},[a,Ce,f]);const H=Ae(),te=Ee(),ne=l.every(R)?"playerCaptions":"transcriptLabel",se=Pe(U(ne),X(ne));if(!T||!u)return null;const Te=l.filter(e=>e.read==="text").length,re=l.map(e=>{const t=We(e.language);return e.read==="cues"?t:Te>1&&t?`TXT ${t}`:"TXT"}),xe=re.map(e=>e&&re.filter(t=>t===e).length===1?e:void 0),ae=u.language&&u.language!=="none"?u.language:void 0,K=l.length>1&&!O&&n(de,{children:[se.node,n("fieldset",{...se.props,className:"clover-transcript-languages",children:l.map((e,t)=>{const r=ze(e.label,j),d=xe[t],ke=r.text||e.language||String(t+1);return n("label",{className:"clover-transcript-language",children:[n("input",{type:"radio",name:`${H}-language`,checked:t===B,onChange:()=>{S(t),R(e)&&o.captions.emit(e.id)}}),d&&n(de,{children:[n("span",{className:"clover-transcript-code",children:d})," "]}),n("span",{style:d?Fe:void 0,...M(r.text?r.lang:void 0),children:ke}),d&&r.text&&n(Ve,{label:r.text,lang:r.lang})]},e.id)})})]}),ce=(e,t=true)=>{if(m){t?qe(m,e.start):m.currentTime=e.start;return}o.goTo(T.id,{time:e.start,...t&&{autoplay:true}})},oe=e=>{const t=c[b[e]];t&&(z.current=true,me({query:g,at:e}),ce(t,false))},Ne={position:b.length?x:-1,total:b.length,step:e=>oe(x+e)},k=b.length,$=g?k===0?"contentSearchResultsNone":k===1?"contentSearchResult":"contentSearchResults":null,ye=f&&u.read==="cues"&&c.length>0&&n("div",{className:"clover-transcript-find",children:[n(Qe,{ref:P,id:`${H}-find`,value:Q,onChange:W,onSubmit:()=>{if(!k)return;const e=E.query===g&&z.current;oe(e?(x+1)%k:x)},onClear:()=>{var e;W(""),(e=P.current)==null||e.focus()},results:g?Ne:null,size:p,classes:{form:"clover-transcript-find-field"}}),n("p",{className:"clover-transcript-find-status",role:"status",...M($?X($):void 0),children:$?U($,{count:k}):""})]});return n(i,{ref:ve,className:Ke("clover-transcript",ge),"data-sticky":a||void 0,...fe,children:[K&&(te?He(K,te):K),ye,u.read==="text"?n("div",{className:"clover-transcript-body",...M(ae),children:he.map((e,t)=>n("p",{children:e},t))}):n("ol",{ref:A,className:"clover-transcript-cues",id:`${H}-cues`,...M(ae),children:c.slice(0,N).map((e,t)=>n("li",{className:"clover-transcript-cue","aria-current":t===y?"true":void 0,"data-match":g&&b.includes(t)?t===I?"current":"true":void 0,children:n("button",{type:"button",onClick:()=>ce(e),onFocus:()=>{N<c.length&&t>=N-5&&F()},children:[n(Je,{start:e.start,className:"clover-transcript-time"}),n("span",{className:"clover-transcript-text clover-cue-text",children:[e.voice&&n("span",{className:"clover-transcript-voice",children:[e.voice,":"," "]}),Ye(e.text,g)]})]})},`${e.start}-${t}`))}),u.read==="cues"&&N<c.length&&n("div",{ref:ee,className:"clover-transcript-more","aria-hidden":"true"})]})});function Ze(s,i){const[h,f]=C(-1);return v(()=>{if(!s||!i.length){f(-1);return}const a=()=>f(Be(i,s.currentTime));return a(),s.addEventListener("timeupdate",a),s.addEventListener("seeked",a),()=>{s.removeEventListener("timeupdate",a),s.removeEventListener("seeked",a)}},[s,i]),h}export{ot as Transcript};
@@ -0,0 +1 @@
1
+ import{b6 as Se,ag as Ee,aH as Ce,A as h,e as R,_ as Z,T as Pe,u as e,V as we,W as Fe,bW as B,p as fe,aP as ie,ab as P,a$ as Ie,ah as Oe,bY as $e,y as Me,ai as Be,k as de}from"./viewer-DaG51iO3.mjs";import{u as Re,g as Ve,a as Ae,b as pe,l as Ke,s as xe,T as D,P as De,c as Le,V as ze,d as Ue,C as _e,F as qe,e as We,E as je,f as Xe,p as Ye}from"./Transport-BudReE7Y.mjs";import{u as Ze,P as Ge,E as He}from"./EntryThumbnail-fBaBZJGd.mjs";import{l as ve}from"../languageCode-cCpiU0b0.mjs";import"./styles-DvZTMHkr.mjs";const Je=Fe(()=>import("./SeekMarks-B8cuyVgz.mjs").then(({SeekMarks:a})=>({default:a}))),Qe=".clover-canvas-transport-marks",en=a=>typeof(a==null?void 0:a.thumbnail)=="string"?{src:a.thumbnail}:Se(a==null?void 0:a.thumbnail);function me(a,i){var g;let f=-1;a.forEach((w,k)=>{w.start<=i&&(f=k)});const v=(g=a[f])==null?void 0:g.end;return v!==void 0&&i>=v?-1:f}let Y;function nn(){if(Y===void 0){if(typeof document>"u")return true;const a=document.createElement("video");a.volume=.5,Y=a.volume===.5}return Y}function tn({id:a,label:i,labelLang:f,button:v,icon:g,active:w,current:k,options:F,selected:V,onSelect:c,request:L,asMenu:I=false}){const[d,p]=R(false),T=h(null),O=h(null),$=h(null),M=h(false),b=Oe(i,f),N=F.some(r=>ve(r.language));$e(d,()=>p(false));const A=()=>{var r;p(false),(r=O.current)==null||r.focus()};return Me(()=>{if(!d)return;const r=s=>{var o,t,S;if(s instanceof KeyboardEvent){if(s.key!=="Escape")return;(o=T.current)!=null&&o.contains(document.activeElement)&&(s.preventDefault(),(t=O.current)==null||t.focus())}else if((S=T.current)!=null&&S.contains(s.target))return;p(false)};return document.addEventListener("pointerdown",r),document.addEventListener("keydown",r,true),()=>{document.removeEventListener("pointerdown",r),document.removeEventListener("keydown",r,true)}},[d]),Z(()=>{const r=$.current,s=T.current,o=s==null?void 0:s.closest(".clover-canvas-transport"),t=s==null?void 0:s.closest(".clover-canvas-media");if(!d||!r||!s||!o||!t)return;const S=()=>Ye(r,s,o,t);S();const y=new ResizeObserver(S);return y.observe(t),y.observe(o),y.observe(r),()=>y.disconnect()},[d]),e("div",{className:"clover-canvas-transport-menu",ref:T,onBlur:r=>{var o;const s=r.relatedTarget;d&&s instanceof Node&&!((o=T.current)!=null&&o.contains(s))&&p(false)},children:[e("button",{"aria-controls":a,"aria-describedby":k?`${a}-current`:void 0,"aria-expanded":d,"aria-label":i,...P(f),className:"clover-canvas-transport-button","data-active":w?"":void 0,"data-button":v,onClick:()=>p(r=>!r),ref:O,type:"button",children:[g,e(fe,{label:i})]}),k&&e("span",{hidden:true,id:`${a}-current`,...P(k.lang),children:k.label}),d&&b.node,d&&e("fieldset",{...b.props,className:Be("clover-canvas-transport-options",I&&"clover-canvas-menu"),id:a,ref:$,children:F.map((r,s)=>{const o=ve(r.language);return e("label",{className:"clover-canvas-transport-option",onPointerDown:()=>{M.current=true},children:[e("input",{checked:V===s,name:a,onChange:()=>c(s),onClick:()=>{M.current&&A()},onKeyDown:t=>{M.current=false,t.key==="Enter"&&(t.preventDefault(),c(s),A())},type:"radio"}),r.time&&e(de,{children:[e("span",{className:"clover-cue-time",children:r.time})," "]}),N&&(o?e(de,{children:[e("span",{className:"clover-canvas-transport-code",children:o})," "]}):e("span",{className:"clover-canvas-transport-code","aria-hidden":"true"})),e("span",{className:"clover-cue-text",...P(r.lang),children:r.label}),V===s&&e(He,{source:r.thumbnail,request:L,large:true})]},s)})})]})}const an=a=>a.querySelector(":scope > .clover-tip"),rn=a=>{try{return a.matches(":focus-visible")}catch{return false}},dn=({instance:a,controller:i,kind:f,captions:v,activeCaption:g,onCaptionChange:w,fullscreen:k=false,isFullscreen:F=false,video:V,chapters:c=[],highlightedChapter:L=null,onChapterHighlight:I,request:d,fill:p,marks:T=[],selectedMark:O,onMarkSelect:$,onMarkActivate:M})=>{var se,oe;const{t:b,langOf:N}=Ee(),A=Ce()||f==="video",r=h(null);Re(r);const{paused:s,currentTime:o,duration:t,buffered:S,muted:y,volume:z}=i,E=me(c,o),[U,ge]=R(-1),[G,be]=R(0),H=h(-1),_=n=>{var l;H.current!==n&&(H.current=n,ge(n),I==null||I(((l=c[n])==null?void 0:l.id)??null))},[J,Q]=R(false),[K,q]=R(false),m=K?U:J?E:-1,ee=(K||J)&&t>0,ye=Ze(en(c[m]),Ge,d),W=U>=0?U:c.findIndex(n=>n.id!==void 0&&n.id===L),ne=h(null);Z(()=>{const n=ne.current,l=n==null?void 0:n.closest(".clover-canvas"),u=n&&m>=0?an(n):null;if(!l||!u)return;const le="--clover-transport-preview-top",ce=()=>l.style.setProperty(le,`${l.getBoundingClientRect().bottom-u.getBoundingClientRect().top}px`);ce();const ue=new ResizeObserver(ce);return ue.observe(u),()=>{ue.disconnect(),l.style.removeProperty(le)}},[m]);const x=n=>{const{start:l,end:u=t}=c[n];return{left:l/t*100,width:(u-l)/t*100}},he=s?"playerPlay":"playerPause",te={label:b("playerCaptionsOff"),lang:N("playerCaptionsOff")},ke=y?"playerUnmute":"playerMute",Te=F?"imageExitFullScreen":"imageFullScreen",ae=t?o/t*100:0,j=Pe(()=>{const n=Ve(c,t);return n.length?Ae(n):void 0},[c,t]),Ne=t?S/t*100:0,X=k&&A,C=h(null),re=h(null);return Z(()=>{var u;const n=C.current;if(!n||n.isConnected)return;C.current=null;const l=document.activeElement;(!l||l===document.body)&&((u=re.current)==null||u.focus())},[v.length,c.length,X]),e("div",{className:"clover-canvas-transport","data-kind":f,"data-testid":"clover-canvas-transport",onFocus:n=>{C.current=n.target},onBlur:n=>{const l=n.target,u=n.relatedTarget;if(u instanceof Node){n.currentTarget.contains(u)||(C.current=null);return}queueMicrotask(()=>{C.current===l&&l.isConnected&&(C.current=null)})},children:[e("div",{ref:ne,className:"clover-canvas-transport-seek-area",onPointerMove:n=>{const l=n.target;if(l.closest(Qe)){q(false),_(-1);return}if(!t||l.closest(".clover-tip"))return;const u=xe(n.currentTarget,n.clientX)*t;q(true),be(Math.floor(u)),_(me(c,u))},onPointerLeave:()=>{q(false),_(-1)},style:ee?{"--clover-transport-preview":pe(m>=0?x(m).left+x(m).width/2:(K?G:o)/t*100)}:void 0,children:[$&&T.length>0&&e(we,{fallback:null,children:e(Je,{marks:T,duration:t,selected:O,onSelect:$,onActivate:M})}),e("input",{"aria-label":b("playerSeek"),lang:N("playerSeek"),"aria-valuetext":`${B(o)} / ${B(t)}${E>=0?`, ${c[E].label}`:""}`,className:"clover-canvas-transport-seek",onFocus:n=>Q(rn(n.currentTarget)),onBlur:()=>Q(false),max:t||0,min:0,onChange:n=>i.seek(Number(n.target.value)),step:"any","data-gaps":j?"":void 0,style:{"--clover-transport-progress":`${ae}%`,"--clover-transport-loaded":`${Ne}%`,...j&&{"--clover-transport-gaps":j,"--clover-transport-at":ae/100}},type:"range",value:o}),W>=0&&t>0&&e("span",{"aria-hidden":"true",className:"clover-canvas-transport-chapter-span",style:{left:pe(x(W).left),width:Ke(x(W).width)}}),ee&&e(fe,{lead:B(K?G:o),label:((se=c[m])==null?void 0:se.label)??"",lang:(oe=c[m])==null?void 0:oe.lang,image:m>=0?ye:void 0},m)]}),e("div",{className:"clover-canvas-transport-bar",ref:r,children:[e(D,{words:he,button:s?"play":"pause",shortcut:ie.play,onClick:i.toggle,buttonRef:re,children:s?e(De,{}):e(Le,{})}),e(D,{words:ke,button:"mute",shortcut:ie.mute,onClick:i.toggleMute,children:y||z===0?e(ze,{}):e(Ue,{})}),nn()&&e("input",{"aria-label":b("playerVolume"),lang:N("playerVolume"),className:"clover-canvas-transport-volume",max:1,min:0,onChange:n=>i.setVolume(Number(n.target.value)),step:.05,style:{"--clover-transport-progress":`${(y?0:z)*100}%`},type:"range",value:y?0:z}),e("span",{className:"clover-canvas-transport-status",children:[e("span",{className:"clover-canvas-transport-time",children:[e("span",{"aria-label":b("playerCurrentTime"),...P(N("playerCurrentTime")),children:B(o)}),e("span",{"aria-hidden":"true",children:" / "}),e("span",{"aria-label":b("playerDuration"),...P(N("playerDuration")),children:B(t)})]}),E>=0&&e("span",{className:"clover-canvas-transport-chapter",...P(c[E].lang),children:c[E].label})]}),(v.length>0||X||p)&&e("div",{className:"clover-canvas-transport-end",children:[v.length>0&&e(tn,{id:`${a}-captions`,label:b("playerCaptions"),labelLang:N("playerCaptions"),button:"captions",icon:e(_e,{on:g>=0}),active:g>=0,current:v[g]??te,options:[te,...v],selected:g+1,onSelect:n=>w(n-1)}),p&&e(D,{words:p.filled?"playerFit":"playerFill",button:"fill",onClick:p.onToggle,children:p.filled?e(qe,{}):e(We,{})}),X&&e(D,{words:Te,button:"fullscreen",onClick:n=>void Ie(n.currentTarget,V),children:F?e(je,{}):e(Xe,{})})]})]})]})};export{dn as T,en as a,me as c};
@@ -1 +1 @@
1
- import{ae as g,u as o,a9 as b,o as m,_ as x,a_ as f,a$ as k}from"./viewer-ClQD1LNQ.mjs";import{a as y}from"./styles-DogZyfVz.mjs";function z({words:r,button:e,shortcut:t,disabled:n,pressed:c,onClick:a,buttonRef:s,children:v}){const{t:i,langOf:h}=g(),d=i(r);return o("button",{"aria-label":d,...b(h(r)),"aria-keyshortcuts":t==null?void 0:t.keys,"aria-disabled":n||void 0,"aria-pressed":c,className:"clover-canvas-transport-button","data-button":e,onClick:a,ref:s,type:"button",children:[v,o(m,{label:d,shortcut:t})]})}function M(r){x(()=>{const e=r.current,t=e==null?void 0:e.closest(".clover-canvas");if(!e||!t)return;const n=()=>{const a=e.offsetHeight;a&&t.style.setProperty("--clover-transport-bar-height",`${a}px`)};n();const c=new ResizeObserver(n);return c.observe(e),()=>{c.disconnect(),t.style.removeProperty("--clover-transport-bar-height")}},[r])}const p=r=>`var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * ${r/100}`,q=r=>`calc(${p(r)})`,T=r=>`calc((100% - var(--clover-transport-thumb)) * ${r/100})`;function B(r){const e="var(--clover-transport-gap) / 2";return`linear-gradient(to right, ${[...r.flatMap(n=>[`#000 0 calc(${p(n)} - ${e})`,`transparent 0 calc(${p(n)} + ${e})`]),"#000 0"].join(", ")})`}function F(r,e){if(!(e>0))return[];const t=(a,s)=>Math.abs(a-s)<.05,n=[],c=a=>{a>0&&a<e&&!n.some(s=>t(s,a))&&n.push(a)};for(const a of r)c(a.start);for(const a of r)a.end!==void 0&&Number.isFinite(a.end)&&!r.some(s=>t(s.start,a.end))&&c(a.end);return n.sort((a,s)=>a-s).map(a=>a/e*100)}function H(r,e){const t=r.querySelector("input")??r,n=t.getBoundingClientRect(),c=parseFloat(getComputedStyle(t).getPropertyValue("--clover-transport-thumb"))||0,a=n.width-c;return a>0?Math.min(1,Math.max(0,(e-n.left-c/2)/a)):0}function $(r,e,t,n){const c=n.getBoundingClientRect(),a=c.height-(t.getBoundingClientRect().bottom-e.getBoundingClientRect().top);r.style.setProperty("--clover-transport-menu-above",`${a}px`),r.style.removeProperty("--clover-transport-menu-shift");const s=r.getBoundingClientRect(),v=parseFloat(getComputedStyle(t).paddingRight)||0,i=Math.max(c.left+v-s.left,Math.min(0,c.right-v-s.right));i&&r.style.setProperty("--clover-transport-menu-shift",`${i}px`)}const l={xmlns:"http://www.w3.org/2000/svg",width:16,height:16,viewBox:"0 0 512 512","aria-hidden":true,focusable:false},P=()=>o("svg",{...l,children:o("path",{d:"M133 440a35.37 35.37 0 01-17.5-4.67c-12-6.8-19.46-20-19.46-34.33V111c0-14.37 7.46-27.53 19.46-34.33a35.13 35.13 0 0135.77.45l247.85 148.36a36 36 0 010 61.11L151.23 435a35.5 35.5 0 01-18.23 5z"})}),L=()=>o("svg",{...l,children:o("path",{d:"M224 432h-80V80h80zm144 0h-80V80h80z"})}),I=()=>o("svg",{...l,children:[o("path",{d:"M232 416a23.88 23.88 0 01-14.2-4.68 8.27 8.27 0 01-.66-.51L125.76 336H56a24 24 0 01-24-24V200a24 24 0 0124-24h69.75l91.37-74.81a8.27 8.27 0 01.66-.51A24 24 0 01256 120v272a24 24 0 01-24 24z"}),o("path",{d:"M320 336a16 16 0 01-14.29-23.16c8.34-16.63 12.29-34.5 12.29-56.84s-3.95-40.21-12.29-56.84a16 16 0 0128.58-14.32C345.06 205.86 350 228.13 350 256s-4.94 50.14-15.71 71.16A16 16 0 01320 336zM368 384a16 16 0 01-13.87-24C373.85 325.75 384 292.28 384 256c0-36.28-10.15-69.75-29.87-104a16 16 0 0127.74-16C404.19 174.71 416 214.17 416 256s-11.81 81.29-34.13 120A16 16 0 01368 384z",fillOpacity:"0.85"})]}),S=()=>o("svg",{...l,children:[o("path",{d:"M232 416a23.88 23.88 0 01-14.2-4.68 8.27 8.27 0 01-.66-.51L125.76 336H56a24 24 0 01-24-24V200a24 24 0 0124-24h69.75l91.37-74.81a8.27 8.27 0 01.66-.51A24 24 0 01256 120v272a24 24 0 01-24 24z"}),o("path",{d:"M320 196l128 120M448 196L320 316",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"32"})]}),V=({on:r=false})=>o("svg",{...l,"data-on":r||void 0,className:"clover-captions-icon",children:[r?o("rect",{x:"22",y:"86",width:"468",height:"340",rx:"74",fill:"currentColor"}):o("rect",{x:"40",y:"104",width:"432",height:"304",rx:"56",fill:"none",stroke:"currentColor",strokeWidth:"36"}),o("path",{className:"clover-captions-icon-letters",d:"M228 216a48 48 0 1 0 0 80M356 216a48 48 0 1 0 0 80",fill:"none",stroke:r?"var(--clover-color-control, #1a1d1e)":"currentColor",strokeLinecap:"round",strokeWidth:"36"})]}),u=()=>o("rect",{x:"40",y:"104",width:"432",height:"304",rx:"56",fill:"none",stroke:"currentColor",strokeWidth:"36"}),R=()=>o("svg",{...l,children:[o(u,{}),o("path",{d:"M204 208l-48 48 48 48M308 208l48 48-48 48",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"36"})]}),j=()=>o("svg",{...l,children:[o(u,{}),o("path",{d:"M140 208l48 48-48 48M372 208l-48 48 48 48",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"36"})]}),W=()=>o("svg",{...l,children:o(k,{})}),O=()=>o("svg",{...l,children:o(f,{})});y(14,"components/Canvas/media/Transport",'@layer clover{.clover-canvas-transport{position:absolute;inset:auto 0 0;z-index:2;display:flex;flex-direction:column;padding:var(--clover-space-xl) var(--clover-canvas-controls-inset) var(--clover-canvas-controls-inset);--clover-controls-edge: 1;--clover-transport-thumb: 12px;--clover-transport-track: var(--clover-space-xs);-webkit-user-select:none;user-select:none;--clover-transport-menu-room: calc( 100cqb - var(--clover-canvas-controls-inset) - var(--clover-control) - var(--clover-space-s) - var(--clover-space-xs) )}.clover-canvas-transport:before{position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,#000000c7,#0009 calc(100% - var(--clover-space-xl)),#0000);pointer-events:none;content:""}.clover-canvas-transport:has([aria-expanded=true],:focus-visible,>.clover-canvas-transport-seek-area:hover){z-index:4}.clover-canvas-transport-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--clover-space-xs) var(--clover-space-s);min-width:0}.clover-canvas-transport-bar>*{flex-shrink:0}.clover-canvas-transport-bar>:is(:hover,:active,:focus-within){z-index:1}.clover-canvas-transport-bar>.clover-canvas-transport-status{display:flex;flex:1 1 0;align-items:center;gap:var(--clover-space-s);min-width:min-content}.clover-canvas-transport-end{display:flex;gap:var(--clover-space-s);margin-inline-start:auto}@container (max-width: 37.5rem){.clover-canvas-transport-bar:has([data-button=chapters])>.clover-canvas-transport-status{order:-1;flex-basis:100%}}@container (max-width: 28rem){.clover-canvas-transport-bar>.clover-canvas-transport-status{order:-1;flex-basis:100%}}.clover-canvas-transport-button svg{fill:currentColor;stroke:none}.clover-canvas-transport-button svg [stroke]{fill:none}.clover-canvas-transport-button:hover,.clover-canvas-transport-button:focus-visible{background-color:var(--clover-color-accent, #0065c3)}:where([data-high-contrast]) .clover-canvas-transport-button:is(:hover,:focus-visible){background-color:var(--clover-accent-fill)}:where([data-high-contrast]) .clover-canvas-transport-button:hover:not(:focus-visible){outline:var(--clover-accent-ring-hover);outline-offset:1px}button.clover-canvas-transport-button[aria-pressed=true]:after{content:"";position:absolute;inset-inline:var(--clover-space-s);bottom:var(--clover-space-2xs);border-bottom:2px solid;border-radius:1px}.clover-canvas-transport-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--clover-color-secondary, #fff),0 0 0 4px var(--clover-color-accent, #0065c3)}.clover-canvas-transport-seek-area{position:relative;display:flex;margin-bottom:var(--clover-space-xs);--clover-transport-gap: var(--clover-space-2xs)}.clover-canvas-transport-points,.clover-canvas-transport-marks{--clover-transport-mark: var(--clover-space-s);position:absolute;inset:0;pointer-events:none}.clover-canvas-transport-points{z-index:0}.clover-canvas-transport-seek{position:relative;z-index:1}.clover-canvas-transport-marks{z-index:2}.clover-canvas-transport-mark-point{position:absolute;top:calc(50% - var(--clover-transport-track) / 2 - var(--clover-space-s) - (var(--clover-transport-mark) + 2 * 3px) / 2);box-sizing:content-box;width:var(--clover-transport-mark);height:var(--clover-transport-mark);border:2px solid var(--clover-color-secondary, #fff);border-radius:50%;background-color:var(--clover-color-accent, #0065c3);box-shadow:0 0 0 1px var(--clover-color-primary, #1a1d1e);translate:-50% -50%}.clover-canvas-transport-mark-point:after{position:absolute;top:calc(100% + 3px);left:50%;width:3px;height:calc(var(--clover-space-s) + var(--clover-transport-track));translate:-50% 0;background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 38.2%,transparent);-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000);content:""}.clover-canvas-transport-mark-point[data-active=true]{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 3px var(--clover-color-primary, #1a1d1e)}.clover-canvas-transport-mark-group{position:absolute;top:calc(50% - var(--clover-transport-track) / 2 - var(--clover-space-l));width:var(--clover-space-l);height:var(--clover-space-l);translate:-50% 0;pointer-events:var(--clover-controls-events, auto)}.clover-canvas-transport-mark{display:block;width:100%;height:100%;margin:0;padding:0;border:none;border-radius:50%;background:none;cursor:pointer}.clover-canvas-transport-mark:focus-visible{outline:none}.clover-canvas-transport-mark-group:is(:hover,:focus-within){z-index:1}.clover-canvas-transport-mark-group>.clover-tip.clover-canvas-transport-mark-tip{text-align:start;--clover-tip-x: clamp( var(--clover-space-xs) - var(--clover-mark-x, 50cqw), -50%, 100cqw - var(--clover-space-xs) - var(--clover-mark-x, 50cqw) - 100% );display:flex;flex-direction:column;max-width:min(18rem,100cqw - 2 * var(--clover-space-xs));max-height:calc(100cqh - var(--clover-canvas-controls-inset) - var(--clover-transport-bar-height, var(--clover-control)) - var(--clover-space-xs) - var(--clover-space-l) / 2 - var(--clover-transport-track) / 2 - var(--clover-space-l) - 3 * var(--clover-space-xs));transform:translate(calc(var(--clover-tip-x) + 50%))}.clover-canvas-transport-mark-group:focus-within:not([data-tip-hidden])>.clover-tip.clover-canvas-transport-mark-tip{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.clover-canvas:has(.clover-canvas-transport-marks){--clover-transport-marks-room: calc( 2 * var(--clover-space-s) + 2 * 3px - (var(--clover-space-l) - var(--clover-space-xs)) / 2 )}.clover-canvas-transport-mark-words{min-height:0;overflow-y:auto}.clover-canvas-transport-mark-tip{--clover-color-primary-muted: var(--clover-color-secondary-alt, #c1c8cd);color:var(--clover-color-secondary-alt, #c1c8cd)}.clover-canvas-transport-mark-group .clover-canvas-transport-mark-tip>.clover-steps{flex:none;margin-top:var(--clover-space-xs)}.clover-canvas-transport input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:var(--clover-space-l);margin:0;background:transparent;cursor:pointer;touch-action:none}.clover-canvas-transport input.clover-canvas-transport-volume{width:var(--clover-space-2xl)}@container (max-width: 28rem){.clover-canvas-transport input.clover-canvas-transport-volume{width:var(--clover-space-xl)}.clover-canvas-transport-bar,.clover-canvas-transport-end{column-gap:var(--clover-space-xs)}}.clover-canvas-transport input[type=range]::-webkit-slider-runnable-track{height:var(--clover-transport-track);border-radius:var(--clover-radius, 3px);background:linear-gradient(to right,var(--clover-color-accent, #0065c3) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-loaded, 0%),var(--clover-player-track, rgb(255 255 255 / 65%)) var(--clover-transport-loaded, 0%));box-shadow:var(--clover-player-track-shadow, none)}.clover-canvas-transport input[type=range]::-moz-range-track{height:var(--clover-transport-track);border-radius:var(--clover-radius, 3px);background:linear-gradient(to right,var(--clover-color-accent, #0065c3) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-loaded, 0%),var(--clover-player-track, rgb(255 255 255 / 65%)) var(--clover-transport-loaded, 0%));box-shadow:var(--clover-player-track-shadow, none)}.clover-canvas-transport input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--clover-transport-thumb);height:var(--clover-transport-thumb);margin-top:calc((var(--clover-transport-track) - var(--clover-transport-thumb)) / 2);border:none;border-radius:var(--clover-radius-pill, 2rem);background-color:var(--clover-player-text, #fff)}.clover-canvas-transport input[type=range]::-moz-range-thumb{width:var(--clover-transport-thumb);height:var(--clover-transport-thumb);border:none;border-radius:var(--clover-radius-pill, 2rem);background-color:var(--clover-player-text, #fff)}.clover-canvas-transport input[type=range]:focus-visible{outline:none}.clover-canvas-transport input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 4px var(--clover-player-text, #fff),0 0 0 6px #0009}.clover-canvas-transport input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 4px var(--clover-player-text, #fff),0 0 0 6px #0009}.clover-canvas-transport-time{display:flex;align-items:center;gap:var(--clover-space-xs);color:var(--clover-player-text, #fff);font-size:var(--clover-text-s);font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 1px 2px rgb(0 0 0 / 90%)}.clover-canvas-transport-frames{position:relative;display:flex}button.clover-canvas-transport-time{margin:0;padding:var(--clover-space-2xs) var(--clover-space-xs);border:0;border-radius:var(--clover-radius, 3px);background:none;font:inherit;font-size:var(--clover-text-s);cursor:pointer}button.clover-canvas-transport-time:is(:hover,[aria-expanded=true]){background-color:#0006}button.clover-canvas-transport-time:focus-visible{outline:2px solid var(--clover-player-text, #fff)}.clover-canvas-transport-place{display:inline-grid;justify-items:end;font-variant-numeric:tabular-nums}.clover-canvas-transport-place>*{grid-area:1 / 1}.clover-canvas-transport-place>.clover-canvas-transport-place-room[hidden]{display:block;visibility:hidden}.clover-canvas-transport-frames>.clover-canvas-menu{right:0;bottom:calc(100% + var(--clover-space-s));left:auto;max-width:min(20rem,100cqi - 2 * var(--clover-canvas-controls-inset));max-height:min(24rem,var(--clover-transport-menu-room),var(--clover-transport-menu-above, 100cqb) - var(--clover-space-s) - var(--clover-space-xs));translate:var(--clover-transport-menu-shift, 0px) 0}.clover-canvas-transport-menu{position:relative;display:flex}.clover-canvas-transport-options{position:absolute;right:0;bottom:calc(100% + var(--clover-space-s));display:flex;flex-direction:column;box-sizing:border-box;min-width:min(11rem,100cqi - 2 * var(--clover-canvas-controls-inset));max-width:calc(100cqi - 2 * var(--clover-canvas-controls-inset));max-height:min(16rem,var(--clover-transport-menu-room),var(--clover-transport-menu-above, 100cqb) - var(--clover-space-s) - var(--clover-space-xs));translate:var(--clover-transport-menu-shift, 0px) 0;margin:0;padding:var(--clover-space-xs);border:none;border-radius:var(--clover-radius, 3px);background-color:var(--clover-player-menu-surface, #151718);color:var(--clover-player-text, #fff);overflow-y:auto}.clover-canvas-transport-option{display:flex;flex:none;align-items:center;gap:var(--clover-space-xs);min-height:var(--clover-space-l);padding:var(--clover-space-xs) var(--clover-space-s);border-radius:var(--clover-radius, 3px);font-size:var(--clover-text-s);cursor:pointer}.clover-canvas-transport-option:hover{background-color:var(--clover-player-menu-hover, #26292b)}.clover-canvas-transport-option:has(input:checked){background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 24%,transparent);font-weight:600}.clover-canvas-transport-option:has(input:focus-visible){box-shadow:inset 0 0 0 2px var(--clover-player-text, #fff)}.clover-canvas-transport-code{flex:none;min-width:var(--clover-space-l);color:color-mix(in srgb,currentColor 72%,transparent);font-size:var(--clover-text-xs);font-weight:600;line-height:1}.clover-canvas-transport-options:has(.clover-canvas-transport-code),.clover-canvas-transport-menu:has([data-button=chapters]) .clover-canvas-transport-options{min-width:min(16rem,100cqi - 2 * var(--clover-canvas-controls-inset))}.clover-canvas-transport-option:has(>.clover-entry-thumbnail){display:grid;grid-template-columns:auto minmax(0,1fr);justify-items:start;gap:var(--clover-space-2xs) var(--clover-space-s);padding-block-end:var(--clover-space-s)}.clover-canvas-transport-options.clover-canvas-menu{border-radius:var(--clover-radius, 6px);background-color:var(--clover-color-secondary, #fff);color:var(--clover-color-primary, #1a1d1e)}.clover-canvas-menu>.clover-canvas-transport-option{align-items:baseline;gap:var(--clover-space-s);font-size:inherit}.clover-canvas-menu>.clover-canvas-transport-option:hover{background-color:var(--clover-color-secondary-muted, #e6e8eb)}@media (forced-colors: none){.clover-canvas-menu>.clover-canvas-transport-option:has(input:checked){background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 8%,transparent)}}.clover-canvas-menu>.clover-canvas-transport-option:has(input:focus-visible){box-shadow:none;outline:2px solid var(--clover-color-accent, #0065c3);outline-offset:-2px}.clover-canvas-transport-option input{position:absolute;opacity:0;pointer-events:none}@media (forced-colors: active){.clover-canvas-transport button.clover-canvas-transport-button{border:1px solid ButtonText}.clover-canvas-transport input[type=range]{forced-color-adjust:none}.clover-canvas-transport input[type=range]::-webkit-slider-runnable-track{border:1px solid CanvasText;background:linear-gradient(to right,Highlight var(--clover-transport-progress, 0%),Canvas var(--clover-transport-progress, 0%));box-shadow:none}.clover-canvas-transport input[type=range]::-moz-range-track{border:1px solid CanvasText;background:linear-gradient(to right,Highlight var(--clover-transport-progress, 0%),Canvas var(--clover-transport-progress, 0%));box-shadow:none}.clover-canvas-transport input[type=range]::-webkit-slider-thumb,.clover-canvas-transport input[type=range]:focus-visible::-webkit-slider-thumb{background-color:CanvasText;box-shadow:0 0 0 2px Canvas}.clover-canvas-transport input[type=range]::-moz-range-thumb,.clover-canvas-transport input[type=range]:focus-visible::-moz-range-thumb{background-color:CanvasText;box-shadow:0 0 0 2px Canvas}.clover-canvas-transport input[type=range]:focus-visible{outline:2px solid CanvasText;outline-offset:2px}.clover-canvas-transport-button:focus-visible{outline:3px solid CanvasText;outline-offset:2px;box-shadow:none}.clover-canvas-transport-button:is([data-active],[aria-pressed=true]),.clover-canvas-transport-option:has(input:checked){background-color:Highlight;color:HighlightText}.clover-captions-icon[data-on] .clover-captions-icon-letters{stroke:ButtonFace}.clover-canvas-transport-button[data-active] .clover-captions-icon[data-on] .clover-captions-icon-letters{stroke:Highlight}}@media (prefers-reduced-motion: reduce){.clover-canvas-transport,.clover-canvas-transport-button,.clover-canvas-transport-button svg{transition:none}}.clover-canvas-transport-seek[data-gaps]{--clover-transport-disk: calc(var(--clover-transport-thumb) / 2 + 1px);-webkit-mask-image:radial-gradient(circle at calc(var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * var(--clover-transport-at, 0)) 50%,#000 var(--clover-transport-disk),transparent var(--clover-transport-disk)),var(--clover-transport-gaps);mask-image:radial-gradient(circle at calc(var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * var(--clover-transport-at, 0)) 50%,#000 var(--clover-transport-disk),transparent var(--clover-transport-disk)),var(--clover-transport-gaps)}.clover-canvas-transport-seek[data-gaps]:focus-visible{--clover-transport-disk: calc(var(--clover-transport-thumb) / 2 + 6px)}.clover-canvas-transport-chapter-span{position:absolute;z-index:1;top:50%;box-sizing:border-box;border-inline:calc(var(--clover-transport-gap) / 2) solid transparent;background-clip:padding-box;height:var(--clover-space-s);translate:0 -50%;border-radius:var(--clover-radius, 3px);background-color:var(--clover-player-text, #fff);opacity:.5;pointer-events:none}.clover-canvas-transport-seek-area>.clover-tip{left:var(--clover-transport-preview, 50%)}.clover-canvas-transport-seek-area>.clover-tip:has(>.clover-tip-image){padding:var(--clover-space-s)}.clover-canvas-transport-seek-area>.clover-tip .clover-tip-image{width:var(--clover-picture);max-height:none;margin-block-end:var(--clover-space-xs)}.clover-canvas-transport-seek-area:is(:hover,:has(>input:focus-visible)):not([data-tip-hidden])>.clover-tip{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}@media (forced-colors: active){.clover-canvas-transport-mark-point:after{position:absolute;top:calc(100% + 3px);left:50%;width:3px;height:calc(var(--clover-space-s) + var(--clover-transport-track));translate:-50% 0;background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 38.2%,transparent);content:""}.clover-canvas-transport-mark-point[data-active=true]{outline:2px solid Highlight;outline-offset:1px}.clover-canvas-transport-chapter-span{background-color:Highlight;opacity:1}}.clover-canvas-transport-status>.clover-canvas-transport-chapter{flex:1 1 auto;overflow:hidden;width:0;min-width:0;color:color-mix(in srgb,var(--clover-player-text, #fff) 85%,transparent);font-size:var(--clover-text-s);text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px rgb(0 0 0 / 90%)}}');export{V as C,O as E,j as F,P,z as T,S as V,B as a,q as b,L as c,I as d,R as e,W as f,F as g,T as l,$ as p,H as s,M as u};
1
+ import{ag as g,u as o,ab as b,p as m,_ as x,b0 as f,b1 as k}from"./viewer-DaG51iO3.mjs";import{a as y}from"./styles-DvZTMHkr.mjs";function z({words:r,button:e,shortcut:t,disabled:n,pressed:c,onClick:a,buttonRef:s,children:v}){const{t:i,langOf:h}=g(),d=i(r);return o("button",{"aria-label":d,...b(h(r)),"aria-keyshortcuts":t==null?void 0:t.keys,"aria-disabled":n||void 0,"aria-pressed":c,className:"clover-canvas-transport-button","data-button":e,onClick:a,ref:s,type:"button",children:[v,o(m,{label:d,shortcut:t})]})}function M(r){x(()=>{const e=r.current,t=e==null?void 0:e.closest(".clover-canvas");if(!e||!t)return;const n=()=>{const a=e.offsetHeight;a&&t.style.setProperty("--clover-transport-bar-height",`${a}px`)};n();const c=new ResizeObserver(n);return c.observe(e),()=>{c.disconnect(),t.style.removeProperty("--clover-transport-bar-height")}},[r])}const p=r=>`var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * ${r/100}`,q=r=>`calc(${p(r)})`,T=r=>`calc((100% - var(--clover-transport-thumb)) * ${r/100})`;function B(r){const e="var(--clover-transport-gap) / 2";return`linear-gradient(to right, ${[...r.flatMap(n=>[`#000 0 calc(${p(n)} - ${e})`,`transparent 0 calc(${p(n)} + ${e})`]),"#000 0"].join(", ")})`}function F(r,e){if(!(e>0))return[];const t=(a,s)=>Math.abs(a-s)<.05,n=[],c=a=>{a>0&&a<e&&!n.some(s=>t(s,a))&&n.push(a)};for(const a of r)c(a.start);for(const a of r)a.end!==void 0&&Number.isFinite(a.end)&&!r.some(s=>t(s.start,a.end))&&c(a.end);return n.sort((a,s)=>a-s).map(a=>a/e*100)}function H(r,e){const t=r.querySelector("input")??r,n=t.getBoundingClientRect(),c=parseFloat(getComputedStyle(t).getPropertyValue("--clover-transport-thumb"))||0,a=n.width-c;return a>0?Math.min(1,Math.max(0,(e-n.left-c/2)/a)):0}function P(r,e,t,n){const c=n.getBoundingClientRect(),a=c.height-(t.getBoundingClientRect().bottom-e.getBoundingClientRect().top);r.style.setProperty("--clover-transport-menu-above",`${a}px`),r.style.removeProperty("--clover-transport-menu-shift");const s=r.getBoundingClientRect(),v=parseFloat(getComputedStyle(t).paddingRight)||0,i=Math.max(c.left+v-s.left,Math.min(0,c.right-v-s.right));i&&r.style.setProperty("--clover-transport-menu-shift",`${i}px`)}const l={xmlns:"http://www.w3.org/2000/svg",width:16,height:16,viewBox:"0 0 512 512","aria-hidden":true,focusable:false},$=()=>o("svg",{...l,children:o("path",{d:"M133 440a35.37 35.37 0 01-17.5-4.67c-12-6.8-19.46-20-19.46-34.33V111c0-14.37 7.46-27.53 19.46-34.33a35.13 35.13 0 0135.77.45l247.85 148.36a36 36 0 010 61.11L151.23 435a35.5 35.5 0 01-18.23 5z"})}),L=()=>o("svg",{...l,children:o("path",{d:"M224 432h-80V80h80zm144 0h-80V80h80z"})}),I=()=>o("svg",{...l,children:[o("path",{d:"M232 416a23.88 23.88 0 01-14.2-4.68 8.27 8.27 0 01-.66-.51L125.76 336H56a24 24 0 01-24-24V200a24 24 0 0124-24h69.75l91.37-74.81a8.27 8.27 0 01.66-.51A24 24 0 01256 120v272a24 24 0 01-24 24z"}),o("path",{d:"M320 336a16 16 0 01-14.29-23.16c8.34-16.63 12.29-34.5 12.29-56.84s-3.95-40.21-12.29-56.84a16 16 0 0128.58-14.32C345.06 205.86 350 228.13 350 256s-4.94 50.14-15.71 71.16A16 16 0 01320 336zM368 384a16 16 0 01-13.87-24C373.85 325.75 384 292.28 384 256c0-36.28-10.15-69.75-29.87-104a16 16 0 0127.74-16C404.19 174.71 416 214.17 416 256s-11.81 81.29-34.13 120A16 16 0 01368 384z",fillOpacity:"0.85"})]}),S=()=>o("svg",{...l,children:[o("path",{d:"M232 416a23.88 23.88 0 01-14.2-4.68 8.27 8.27 0 01-.66-.51L125.76 336H56a24 24 0 01-24-24V200a24 24 0 0124-24h69.75l91.37-74.81a8.27 8.27 0 01.66-.51A24 24 0 01256 120v272a24 24 0 01-24 24z"}),o("path",{d:"M320 196l128 120M448 196L320 316",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"32"})]}),V=({on:r=false})=>o("svg",{...l,"data-on":r||void 0,className:"clover-captions-icon",children:[r?o("rect",{x:"22",y:"86",width:"468",height:"340",rx:"74",fill:"currentColor"}):o("rect",{x:"40",y:"104",width:"432",height:"304",rx:"56",fill:"none",stroke:"currentColor",strokeWidth:"36"}),o("path",{className:"clover-captions-icon-letters",d:"M228 216a48 48 0 1 0 0 80M356 216a48 48 0 1 0 0 80",fill:"none",stroke:r?"var(--clover-color-control, #1a1d1e)":"currentColor",strokeLinecap:"round",strokeWidth:"36"})]}),u=()=>o("rect",{x:"40",y:"104",width:"432",height:"304",rx:"56",fill:"none",stroke:"currentColor",strokeWidth:"36"}),R=()=>o("svg",{...l,children:[o(u,{}),o("path",{d:"M204 208l-48 48 48 48M308 208l48 48-48 48",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"36"})]}),j=()=>o("svg",{...l,children:[o(u,{}),o("path",{d:"M140 208l48 48-48 48M372 208l-48 48 48 48",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"36"})]}),W=()=>o("svg",{...l,children:o(k,{})}),O=()=>o("svg",{...l,children:o(f,{})});y(14,"components/Canvas/media/Transport",'@layer clover{.clover-canvas-transport{position:absolute;inset:auto 0 0;z-index:2;display:flex;flex-direction:column;padding:var(--clover-space-xl) var(--clover-canvas-controls-inset) var(--clover-canvas-controls-inset);--clover-controls-edge: 1;--clover-transport-thumb: 12px;--clover-transport-track: var(--clover-space-xs);-webkit-user-select:none;user-select:none;--clover-transport-menu-room: calc( 100cqb - var(--clover-canvas-controls-inset) - var(--clover-control) - var(--clover-space-s) - var(--clover-space-xs) )}.clover-canvas-transport:before{position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,#000000c7,#0009 calc(100% - var(--clover-space-xl)),#0000);pointer-events:none;content:""}.clover-canvas-transport:has([aria-expanded=true],:focus-visible,>.clover-canvas-transport-seek-area:hover){z-index:4}.clover-canvas-transport-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--clover-space-xs) var(--clover-space-s);min-width:0}.clover-canvas-transport-bar>*{flex-shrink:0}.clover-canvas-transport-bar>:is(:hover,:active,:focus-within){z-index:1}.clover-canvas-transport-bar>.clover-canvas-transport-status{display:flex;flex:1 1 0;align-items:center;gap:var(--clover-space-s);min-width:min-content}.clover-canvas-transport-end{display:flex;gap:var(--clover-space-s);margin-inline-start:auto}@container (max-width: 37.5rem){.clover-canvas-transport-bar:has([data-button=chapters])>.clover-canvas-transport-status{order:-1;flex-basis:100%}}@container (max-width: 28rem){.clover-canvas-transport-bar>.clover-canvas-transport-status{order:-1;flex-basis:100%}}.clover-canvas-transport-button svg{fill:currentColor;stroke:none}.clover-canvas-transport-button svg [stroke]{fill:none}.clover-canvas-transport-button:hover,.clover-canvas-transport-button:focus-visible{background-color:var(--clover-color-accent, #0065c3)}:where([data-high-contrast]) .clover-canvas-transport-button:is(:hover,:focus-visible){background-color:var(--clover-accent-fill)}:where([data-high-contrast]) .clover-canvas-transport-button:hover:not(:focus-visible){outline:var(--clover-accent-ring-hover);outline-offset:1px}button.clover-canvas-transport-button[aria-pressed=true]:after{content:"";position:absolute;inset-inline:var(--clover-space-s);bottom:var(--clover-space-2xs);border-bottom:2px solid;border-radius:1px}.clover-canvas-transport-button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--clover-color-secondary, #fff),0 0 0 4px var(--clover-color-accent, #0065c3)}.clover-canvas-transport-seek-area{position:relative;display:flex;margin-bottom:var(--clover-space-xs);--clover-transport-gap: var(--clover-space-2xs)}.clover-canvas-transport-points,.clover-canvas-transport-marks{--clover-transport-mark: var(--clover-space-s);position:absolute;inset:0;pointer-events:none}.clover-canvas-transport-points{z-index:0}.clover-canvas-transport-seek{position:relative;z-index:1}.clover-canvas-transport-marks{z-index:2}.clover-canvas-transport-mark-point{position:absolute;top:calc(50% - var(--clover-transport-track) / 2 - var(--clover-space-s) - (var(--clover-transport-mark) + 2 * 3px) / 2);box-sizing:content-box;width:var(--clover-transport-mark);height:var(--clover-transport-mark);border:2px solid var(--clover-color-secondary, #fff);border-radius:50%;background-color:var(--clover-color-accent, #0065c3);box-shadow:0 0 0 1px var(--clover-color-primary, #1a1d1e);translate:-50% -50%}.clover-canvas-transport-mark-point:after{position:absolute;top:calc(100% + 3px);left:50%;width:3px;height:calc(var(--clover-space-s) + var(--clover-transport-track));translate:-50% 0;background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 38.2%,transparent);-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000);content:""}.clover-canvas-transport-mark-point[data-active=true]{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 3px var(--clover-color-primary, #1a1d1e)}.clover-canvas-transport-mark-group{position:absolute;top:calc(50% - var(--clover-transport-track) / 2 - var(--clover-space-l));width:var(--clover-space-l);height:var(--clover-space-l);translate:-50% 0;pointer-events:var(--clover-controls-events, auto)}.clover-canvas-transport-mark{display:block;width:100%;height:100%;margin:0;padding:0;border:none;border-radius:50%;background:none;cursor:pointer}.clover-canvas-transport-mark:focus-visible{outline:none}.clover-canvas-transport-mark-group:is(:hover,:focus-within){z-index:1}.clover-canvas-transport-mark-group>.clover-tip.clover-canvas-transport-mark-tip{text-align:start;--clover-tip-x: clamp( var(--clover-space-xs) - var(--clover-mark-x, 50cqw), -50%, 100cqw - var(--clover-space-xs) - var(--clover-mark-x, 50cqw) - 100% );display:flex;flex-direction:column;max-width:min(18rem,100cqw - 2 * var(--clover-space-xs));max-height:calc(100cqh - var(--clover-canvas-controls-inset) - var(--clover-transport-bar-height, var(--clover-control)) - var(--clover-space-xs) - var(--clover-space-l) / 2 - var(--clover-transport-track) / 2 - var(--clover-space-l) - 3 * var(--clover-space-xs));transform:translate(calc(var(--clover-tip-x) + 50%))}.clover-canvas-transport-mark-group:focus-within:not([data-tip-hidden])>.clover-tip.clover-canvas-transport-mark-tip{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.clover-canvas:has(.clover-canvas-transport-marks){--clover-transport-marks-room: calc( 2 * var(--clover-space-s) + 2 * 3px - (var(--clover-space-l) - var(--clover-space-xs)) / 2 )}.clover-canvas-transport-mark-words{min-height:0;overflow-y:auto}.clover-canvas-transport-mark-tip{--clover-color-primary-muted: var(--clover-color-secondary-alt, #c1c8cd);color:var(--clover-color-secondary-alt, #c1c8cd)}.clover-canvas-transport-mark-group .clover-canvas-transport-mark-tip>.clover-steps{flex:none;margin-top:var(--clover-space-xs)}.clover-canvas-transport input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:var(--clover-space-l);margin:0;background:transparent;cursor:pointer;touch-action:none}.clover-canvas-transport input.clover-canvas-transport-volume{width:var(--clover-space-2xl)}@container (max-width: 28rem){.clover-canvas-transport input.clover-canvas-transport-volume{width:var(--clover-space-xl)}.clover-canvas-transport-bar,.clover-canvas-transport-end{column-gap:var(--clover-space-xs)}}.clover-canvas-transport input[type=range]::-webkit-slider-runnable-track{height:var(--clover-transport-track);border-radius:var(--clover-radius, 3px);background:linear-gradient(to right,var(--clover-color-accent, #0065c3) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-loaded, 0%),var(--clover-player-track, rgb(255 255 255 / 65%)) var(--clover-transport-loaded, 0%));box-shadow:var(--clover-player-track-shadow, none)}.clover-canvas-transport input[type=range]::-moz-range-track{height:var(--clover-transport-track);border-radius:var(--clover-radius, 3px);background:linear-gradient(to right,var(--clover-color-accent, #0065c3) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-progress, 0%),rgb(255 255 255 / 90%) var(--clover-transport-loaded, 0%),var(--clover-player-track, rgb(255 255 255 / 65%)) var(--clover-transport-loaded, 0%));box-shadow:var(--clover-player-track-shadow, none)}.clover-canvas-transport input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--clover-transport-thumb);height:var(--clover-transport-thumb);margin-top:calc((var(--clover-transport-track) - var(--clover-transport-thumb)) / 2);border:none;border-radius:var(--clover-radius-pill, 2rem);background-color:var(--clover-player-text, #fff)}.clover-canvas-transport input[type=range]::-moz-range-thumb{width:var(--clover-transport-thumb);height:var(--clover-transport-thumb);border:none;border-radius:var(--clover-radius-pill, 2rem);background-color:var(--clover-player-text, #fff)}.clover-canvas-transport input[type=range]:focus-visible{outline:none}.clover-canvas-transport input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 4px var(--clover-player-text, #fff),0 0 0 6px #0009}.clover-canvas-transport input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--clover-color-accent, #0065c3),0 0 0 4px var(--clover-player-text, #fff),0 0 0 6px #0009}.clover-canvas-transport-time{display:flex;align-items:center;gap:var(--clover-space-xs);color:var(--clover-player-text, #fff);font-size:var(--clover-text-s);font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 1px 2px rgb(0 0 0 / 90%)}.clover-canvas-transport-frames{position:relative;display:flex}button.clover-canvas-transport-time{margin:0;padding:var(--clover-space-2xs) var(--clover-space-xs);border:0;border-radius:var(--clover-radius, 3px);background:none;font:inherit;font-size:var(--clover-text-s);cursor:pointer}button.clover-canvas-transport-time:is(:hover,[aria-expanded=true]){background-color:#0006}button.clover-canvas-transport-time:focus-visible{outline:2px solid var(--clover-player-text, #fff)}.clover-canvas-transport-place{display:inline-grid;justify-items:end;font-variant-numeric:tabular-nums}.clover-canvas-transport-place>*{grid-area:1 / 1}.clover-canvas-transport-place>.clover-canvas-transport-place-room[hidden]{display:block;visibility:hidden}.clover-canvas-transport-frames>.clover-canvas-menu{right:0;bottom:calc(100% + var(--clover-space-s));left:auto;max-width:min(20rem,100cqi - 2 * var(--clover-canvas-controls-inset));max-height:min(24rem,var(--clover-transport-menu-room),var(--clover-transport-menu-above, 100cqb) - var(--clover-space-s) - var(--clover-space-xs));translate:var(--clover-transport-menu-shift, 0px) 0}.clover-canvas-transport-menu{position:relative;display:flex}.clover-canvas-transport-options{position:absolute;right:0;bottom:calc(100% + var(--clover-space-s));display:flex;flex-direction:column;box-sizing:border-box;min-width:min(11rem,100cqi - 2 * var(--clover-canvas-controls-inset));max-width:calc(100cqi - 2 * var(--clover-canvas-controls-inset));max-height:min(16rem,var(--clover-transport-menu-room),var(--clover-transport-menu-above, 100cqb) - var(--clover-space-s) - var(--clover-space-xs));translate:var(--clover-transport-menu-shift, 0px) 0;margin:0;padding:var(--clover-space-xs);border:none;border-radius:var(--clover-radius, 3px);background-color:var(--clover-player-menu-surface, #151718);color:var(--clover-player-text, #fff);overflow-y:auto}.clover-canvas-transport-option{display:flex;flex:none;align-items:center;gap:var(--clover-space-xs);min-height:var(--clover-space-l);padding:var(--clover-space-xs) var(--clover-space-s);border-radius:var(--clover-radius, 3px);font-size:var(--clover-text-s);cursor:pointer}.clover-canvas-transport-option:hover{background-color:var(--clover-player-menu-hover, #26292b)}.clover-canvas-transport-option:has(input:checked){background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 24%,transparent);font-weight:600}.clover-canvas-transport-option:has(input:focus-visible){box-shadow:inset 0 0 0 2px var(--clover-player-text, #fff)}.clover-canvas-transport-code{flex:none;min-width:var(--clover-space-l);color:color-mix(in srgb,currentColor 72%,transparent);font-size:var(--clover-text-xs);font-weight:600;line-height:1}.clover-canvas-transport-options:has(.clover-canvas-transport-code),.clover-canvas-transport-menu:has([data-button=chapters]) .clover-canvas-transport-options{min-width:min(16rem,100cqi - 2 * var(--clover-canvas-controls-inset))}.clover-canvas-transport-option:has(>.clover-entry-thumbnail){display:grid;grid-template-columns:auto minmax(0,1fr);justify-items:start;gap:var(--clover-space-2xs) var(--clover-space-s);padding-block-end:var(--clover-space-s)}.clover-canvas-transport-options.clover-canvas-menu{border-radius:var(--clover-radius, 6px);background-color:var(--clover-color-secondary, #fff);color:var(--clover-color-primary, #1a1d1e)}.clover-canvas-menu>.clover-canvas-transport-option{align-items:baseline;gap:var(--clover-space-s);font-size:inherit}.clover-canvas-menu>.clover-canvas-transport-option:hover{background-color:var(--clover-color-secondary-muted, #e6e8eb)}@media (forced-colors: none){.clover-canvas-menu>.clover-canvas-transport-option:has(input:checked){background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 8%,transparent)}}.clover-canvas-menu>.clover-canvas-transport-option:has(input:focus-visible){box-shadow:none;outline:2px solid var(--clover-color-accent, #0065c3);outline-offset:-2px}.clover-canvas-transport-option input{position:absolute;opacity:0;pointer-events:none}@media (forced-colors: active){.clover-canvas-transport button.clover-canvas-transport-button{border:1px solid ButtonText}.clover-canvas-transport input[type=range]{forced-color-adjust:none}.clover-canvas-transport input[type=range]::-webkit-slider-runnable-track{border:1px solid CanvasText;background:linear-gradient(to right,Highlight var(--clover-transport-progress, 0%),Canvas var(--clover-transport-progress, 0%));box-shadow:none}.clover-canvas-transport input[type=range]::-moz-range-track{border:1px solid CanvasText;background:linear-gradient(to right,Highlight var(--clover-transport-progress, 0%),Canvas var(--clover-transport-progress, 0%));box-shadow:none}.clover-canvas-transport input[type=range]::-webkit-slider-thumb,.clover-canvas-transport input[type=range]:focus-visible::-webkit-slider-thumb{background-color:CanvasText;box-shadow:0 0 0 2px Canvas}.clover-canvas-transport input[type=range]::-moz-range-thumb,.clover-canvas-transport input[type=range]:focus-visible::-moz-range-thumb{background-color:CanvasText;box-shadow:0 0 0 2px Canvas}.clover-canvas-transport input[type=range]:focus-visible{outline:2px solid CanvasText;outline-offset:2px}.clover-canvas-transport-button:focus-visible{outline:3px solid CanvasText;outline-offset:2px;box-shadow:none}.clover-canvas-transport-button:is([data-active],[aria-pressed=true]),.clover-canvas-transport-option:has(input:checked){background-color:Highlight;color:HighlightText}.clover-captions-icon[data-on] .clover-captions-icon-letters{stroke:ButtonFace}.clover-canvas-transport-button[data-active] .clover-captions-icon[data-on] .clover-captions-icon-letters{stroke:Highlight}}@media (prefers-reduced-motion: reduce){.clover-canvas-transport,.clover-canvas-transport-button,.clover-canvas-transport-button svg{transition:none}}.clover-canvas-transport-seek[data-gaps]{--clover-transport-disk: calc(var(--clover-transport-thumb) / 2 + 1px);-webkit-mask-image:radial-gradient(circle at calc(var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * var(--clover-transport-at, 0)) 50%,#000 var(--clover-transport-disk),transparent var(--clover-transport-disk)),var(--clover-transport-gaps);mask-image:radial-gradient(circle at calc(var(--clover-transport-thumb) / 2 + (100% - var(--clover-transport-thumb)) * var(--clover-transport-at, 0)) 50%,#000 var(--clover-transport-disk),transparent var(--clover-transport-disk)),var(--clover-transport-gaps)}.clover-canvas-transport-seek[data-gaps]:focus-visible{--clover-transport-disk: calc(var(--clover-transport-thumb) / 2 + 6px)}.clover-canvas-transport-chapter-span{position:absolute;z-index:1;top:50%;box-sizing:border-box;border-inline:calc(var(--clover-transport-gap) / 2) solid transparent;background-clip:padding-box;height:var(--clover-space-s);translate:0 -50%;border-radius:var(--clover-radius, 3px);background-color:var(--clover-player-text, #fff);opacity:.5;pointer-events:none}.clover-canvas-transport-seek-area>.clover-tip{left:var(--clover-transport-preview, 50%)}.clover-canvas-transport-seek-area>.clover-tip:has(>.clover-tip-image){padding:var(--clover-space-s)}.clover-canvas-transport-seek-area>.clover-tip .clover-tip-image{width:var(--clover-picture);max-height:none;margin-block-end:var(--clover-space-xs)}.clover-canvas-transport-seek-area:is(:hover,:has(>input:focus-visible)):not([data-tip-hidden])>.clover-tip{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}@media (forced-colors: active){.clover-canvas-transport-mark-point:after{position:absolute;top:calc(100% + 3px);left:50%;width:3px;height:calc(var(--clover-space-s) + var(--clover-transport-track));translate:-50% 0;background-color:color-mix(in srgb,var(--clover-color-accent, #0065c3) 38.2%,transparent);content:""}.clover-canvas-transport-mark-point[data-active=true]{outline:2px solid Highlight;outline-offset:1px}.clover-canvas-transport-chapter-span{background-color:Highlight;opacity:1}}.clover-canvas-transport-status>.clover-canvas-transport-chapter{flex:1 1 auto;overflow:hidden;width:0;min-width:0;color:color-mix(in srgb,var(--clover-player-text, #fff) 85%,transparent);font-size:var(--clover-text-s);text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px rgb(0 0 0 / 90%)}}');export{V as C,O as E,j as F,$ as P,z as T,S as V,B as a,q as b,L as c,I as d,R as e,W as f,F as g,T as l,P as p,H as s,M as u};
@@ -1 +1 @@
1
- import{ax as l,b_ as g,bA as u,b$ as y,bB as f}from"./viewer-ClQD1LNQ.mjs";const w=100;async function p(t,n,i){if(typeof t=="string")return await f(n,t,i);const e=t;return e!=null&&e.id&&e.type==="AnnotationPage"&&!e.items?await f(n,e.id,i):e}async function b(t,n,i){const e=String((t==null?void 0:t.type)??(t==null?void 0:t["@type"])??""),c=/AnnotationCollection/.test(e),o=c?[]:[t],r=new Set(c?[]:[t.id]);let a=c?t.first:t.next;for(;a&&o.length<w;){const s=typeof a=="string"?a:a.id;if(r.has(s??a))break;r.add(s??a);const d=await p(a,n,i);o.push(d),a=d.next}return o}async function A(t,{request:n,signal:i}={}){const e=[];for(const c of l(t)){const o=await p(c,n,i);for(const r of await b(o,n,i)){const a=await g(r),s=a.id??`added-${e.length}`,d=u(a,s);d.length&&e.push({id:s,label:y(a,r===o?c:void 0)??o.label,source:"added",entries:d})}}return e}export{A as loadAnnotationSets};
1
+ import{az as l,bZ as g,bC as u,b_ as y,bD as f}from"./viewer-DaG51iO3.mjs";const w=100;async function p(t,n,i){if(typeof t=="string")return await f(n,t,i);const e=t;return e!=null&&e.id&&e.type==="AnnotationPage"&&!e.items?await f(n,e.id,i):e}async function b(t,n,i){const e=String((t==null?void 0:t.type)??(t==null?void 0:t["@type"])??""),c=/AnnotationCollection/.test(e),o=c?[]:[t],r=new Set(c?[]:[t.id]);let a=c?t.first:t.next;for(;a&&o.length<w;){const s=typeof a=="string"?a:a.id;if(r.has(s??a))break;r.add(s??a);const d=await p(a,n,i);o.push(d),a=d.next}return o}async function A(t,{request:n,signal:i}={}){const e=[];for(const c of l(t)){const o=await p(c,n,i);for(const r of await b(o,n,i)){const a=await g(r),s=a.id??`added-${e.length}`,d=u(a,s);d.length&&e.push({id:s,label:y(a,r===o?c:void 0)??o.label,source:"added",entries:d})}}return e}export{A as loadAnnotationSets};
@@ -1 +1 @@
1
- import{a7 as d,bN as u,bO as p,bP as v,bQ as T}from"./viewer-ClQD1LNQ.mjs";const c=n=>n.language&&n.language!=="none"?n.language:"none";function b(n,e){const o=T([...new Set(n.map(c))],e);return n.find(r=>c(r)===o)}function w(n,e){const o=(t,a)=>t?{text:t,...a?{lang:a}:{}}:{},r=n.filter(t=>{var a;return(a=t.value)==null?void 0:a.trim()});if(!r.length){const t=n.find(i=>(i.image||i.place)&&i.label);if(!t)return{};const{text:a,lang:x}=d(t.label,e);return o(u(a).trim(),x)}const s=b(r,e),l=s.value,g=p(s.format,l),f=g==="markdown"?v(l):g==="html"?u(l):l,m=c(s);return o(f.trim(),m==="none"?void 0:m)}export{w as a,b};
1
+ import{a9 as d,bM as u,bN as p,bO as v,bP as T}from"./viewer-DaG51iO3.mjs";const c=n=>n.language&&n.language!=="none"?n.language:"none";function b(n,e){const o=T([...new Set(n.map(c))],e);return n.find(r=>c(r)===o)}function w(n,e){const o=(t,a)=>t?{text:t,...a?{lang:a}:{}}:{},r=n.filter(t=>{var a;return(a=t.value)==null?void 0:a.trim()});if(!r.length){const t=n.find(i=>(i.image||i.place)&&i.label);if(!t)return{};const{text:a,lang:x}=d(t.label,e);return o(u(a).trim(),x)}const s=b(r,e),l=s.value,g=p(s.format,l),f=g==="markdown"?v(l):g==="html"?u(l):l,m=c(s);return o(f.trim(),m==="none"?void 0:m)}export{w as a,b};
@@ -1 +1 @@
1
- import{loadAnnotationSets as f}from"./annotation-collection-vM0aeJgP.mjs";import{ac as i,cj as c,bt as l}from"./viewer-ClQD1LNQ.mjs";async function y(n,a){const r={id:String(n.id??""),type:/Collection/.test(String(n.type??n["@type"]))?"AnnotationCollection":"AnnotationPage",...n.label?{label:n.label}:{}},o=(await f(n,a)).map(t=>({...t,content:r})),s=o.flatMap(t=>t.entries),e=s.find(t=>a.manifestId&&i(t.annotation)===a.manifestId)??s.find(t=>i(t.annotation));if(!e)throw new c("The annotations name no Manifest");return{manifest:await l({id:i(e.annotation),type:"Manifest"},a),target:{canvasId:e.canvasId},annotationSets:o,pick:e.id}}export{y as annotationsContent};
1
+ import{loadAnnotationSets as f}from"./annotation-collection-Drwfws4R.mjs";import{ae as i,ck as c,bv as l}from"./viewer-DaG51iO3.mjs";async function y(n,a){const r={id:String(n.id??""),type:/Collection/.test(String(n.type??n["@type"]))?"AnnotationCollection":"AnnotationPage",...n.label?{label:n.label}:{}},o=(await f(n,a)).map(t=>({...t,content:r})),s=o.flatMap(t=>t.entries),e=s.find(t=>a.manifestId&&i(t.annotation)===a.manifestId)??s.find(t=>i(t.annotation));if(!e)throw new c("The annotations name no Manifest");return{manifest:await l({id:i(e.annotation),type:"Manifest"},a),target:{canvasId:e.canvasId},annotationSets:o,pick:e.id}}export{y as annotationsContent};
@@ -1,4 +1,4 @@
1
- import{c as ne,F as ae,i as se,M as ie}from"./Connected-DAOMKtJR.mjs";import{aH as ce,bJ as ue}from"./viewer-ClQD1LNQ.mjs";const le=["KHR_materials_unlit","KHR_materials_ior","KHR_materials_specular","KHR_mesh_quantization"],Z=1179937895,fe=1313821514,de=5130562;function me(e){const s=new DataView(e);if(s.getUint32(0,true)!==Z)throw new Error("This is not a GLB.");if(s.getUint32(4,true)!==2)throw new Error("Only glTF 2.0 is drawn.");let o,t;const n=Math.min(s.getUint32(8,true),e.byteLength);for(let a=12;a+8<=n;){const i=s.getUint32(a,true),l=s.getUint32(a+4,true),c=a+8;l===fe?o=JSON.parse(new TextDecoder().decode(new Uint8Array(e,c,i))):l===de&&(t=e.slice(c,c+i)),a=c+i}if(!o)throw new Error("The GLB has no JSON chunk.");return{json:o,bin:t}}async function z(e,s,o){const t=new URL(e,s).href,n=t.startsWith("data:")?await fetch(t):await ue(o,t);if(!n.ok)throw new Error(`${t} answered ${n.status}`);return n.arrayBuffer()}const $=new WeakMap;function ve(e,s,o){const t=(s==null?void 0:s.fetch)??globalThis.fetch,n=$.get(t)??new Map;$.set(t,n);const a=`${ce(s)} ${o??""} ${e}`;let i=n.get(a);return i||(i=he(e,s,o).finally(()=>n.delete(a)),n.set(a,i)),i}async function he(e,s,o){const t=await z(e,location.href,s),n=new DataView(t).getUint32(0,true)===Z,{json:a,bin:i}=n?me(t):{json:JSON.parse(new TextDecoder().decode(t))},l=(a.extensionsRequired??[]).filter(f=>!le.includes(f));if(l.length)throw new Error(`Clover's renderer cannot draw this model: it requires ${l.join(", ")}.`);const c=await Promise.all((a.buffers??[]).map((f,r)=>{if(f.uri!==void 0)return z(f.uri,e,s);if(r===0&&i)return i;throw new Error("A buffer of the model has no data.")})),u=await Promise.all((a.images??[]).map(async f=>{try{let r;if(f.bufferView!==void 0){const d=a.bufferViews[f.bufferView];r=new Blob([new Uint8Array(c[d.buffer],d.byteOffset??0,d.byteLength)],{type:f.mimeType})}else if(f.uri!==void 0)r=new Blob([await z(f.uri,e,s)],{type:f.mimeType});else return null;const m={premultiplyAlpha:"none",colorSpaceConversion:"none"};return await pe(await createImageBitmap(r,m),o,m)}catch{return null}}));return{json:a,buffers:c,images:u}}async function pe(e,s,o){const t=Math.max(e.width,e.height);if(!s||t<=s)return e;const n=s/t,a=await createImageBitmap(e,{...o,resizeWidth:Math.max(1,Math.floor(e.width*n)),resizeHeight:Math.max(1,Math.floor(e.height*n)),resizeQuality:"high"});return e.close(),a}const we={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},Ee={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},q=e=>we[e];function Te(e,s){const o=e.json.accessors[s],t=q(o.type),n=new Float32Array(o.count*t);if(o.bufferView===void 0)return n;const a=e.json.bufferViews[o.bufferView],i=Ee[o.componentType],l=a.byteStride||i*t,c=new DataView(e.buffers[a.buffer],(a.byteOffset??0)+(o.byteOffset??0)),u={5120:r=>c.getInt8(r),5121:r=>c.getUint8(r),5122:r=>c.getInt16(r,true),5123:r=>c.getUint16(r,true),5125:r=>c.getUint32(r,true),5126:r=>c.getFloat32(r,true)}[o.componentType]??(()=>0),f=o.normalized?{5120:127,5121:255,5122:32767,5123:65535}[o.componentType]:void 0;for(let r=0;r<o.count;r++)for(let m=0;m<t;m++){const d=u(r*l+m*i);n[r*t+m]=f?Math.max(d/f,-1):d}return n}const ee=()=>new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function I(e,s){const o=new Float32Array(16);for(let t=0;t<4;t++)for(let n=0;n<4;n++){let a=0;for(let i=0;i<4;i++)a+=e[i*4+n]*s[t*4+i];o[t*4+n]=a}return o}function X([e,s,o],[t,n,a,i],[l,c,u]){const f=t+t,r=n+n,m=a+a,d=t*f,M=t*r,p=t*m,w=n*r,S=n*m,y=a*m,k=i*f,L=i*r,O=i*m;return new Float32Array([(1-(w+y))*l,(M+O)*l,(p-L)*l,0,(M-O)*c,(1-(d+y))*c,(S+k)*c,0,(p+L)*u,(S-k)*u,(1-(d+w))*u,0,e,s,o,1])}const K=e=>X(e,[0,0,0,1],[1,1,1]),xe=e=>X([0,0,0],[0,0,0,1],e);function be([e,s,o]){const t=(n,a)=>{const i=a*Math.PI/180,l=Math.cos(i),c=Math.sin(i),u=ee(),[f,r]=n===0?[1,2]:n===1?[2,0]:[0,1];return u[f*4+f]=l,u[f*4+r]=c,u[r*4+f]=-c,u[r*4+r]=l,u};return I(t(2,o),I(t(1,s),t(0,e)))}function ye(e,s,o,t){const n=1/Math.tan(e/2),a=1/(o-t);return new Float32Array([n/s,0,0,0,0,n,0,0,0,0,(t+o)*a,-1,0,0,2*t*o*a,0])}function Ae(e,s){const o=c=>{const u=Math.hypot(...c)||1;return[c[0]/u,c[1]/u,c[2]/u]},t=(c,u)=>[c[1]*u[2]-c[2]*u[1],c[2]*u[0]-c[0]*u[2],c[0]*u[1]-c[1]*u[0]],n=(c,u)=>c[0]*u[0]+c[1]*u[1]+c[2]*u[2],a=o([e[0]-s[0],e[1]-s[1],e[2]-s[2]]),i=o(t([0,1,0],a)),l=t(a,i);return new Float32Array([i[0],l[0],a[0],0,i[1],l[1],a[1],0,i[2],l[2],a[2],0,-n(i,e),-n(l,e),-n(a,e),1])}function Re(e){const[s,o,t,,n,a,i,,l,c,u]=e,f=a*u-i*c,r=i*l-n*u,m=n*c-a*l,d=s*f+o*r+t*m||1;return new Float32Array([f/d,r/d,m/d,(t*c-o*u)/d,(s*u-t*l)/d,(o*l-s*c)/d,(o*i-t*a)/d,(t*n-s*i)/d,(s*a-o*n)/d])}const Me=()=>({min:[1/0,1/0,1/0],max:[-1/0,-1/0,-1/0]});function _e(e){for(let s=0;s<3;s++){let o=0;for(let t=0;t<3;t++)Math.abs(e[s*4+t])>1e-6&&o++;if(o>1)return false}return true}function Ne(e,s,o,t){const n=s.json.accessors[o];let a;if(_e(t)&&n.min&&n.max&&!n.normalized){const[l,c]=[n.min,n.max];a=Array.from({length:8},(u,f)=>[f&1?c[0]:l[0],f&2?c[1]:l[1],f&4?c[2]:l[2]]).flat()}else a=Te(s,o);const i=t;for(let l=0;l+2<a.length;l+=3){const c=a[l],u=a[l+1],f=a[l+2];for(let r=0;r<3;r++){const m=i[r]*c+i[4+r]*u+i[8+r]*f+i[12+r];m<e.min[r]&&(e.min[r]=m),m>e.max[r]&&(e.max[r]=m)}}return e}const C={normals:1,normalMap:2,unlit:4,mask:8},Y={POSITION:0,NORMAL:1,TEXCOORD_0:2,COLOR_0:3},J=["uBaseTexture","uMetalRoughTexture","uNormalTexture","uOcclusionTexture","uEmissiveTexture"],Se=`#version 300 es
1
+ import{c as ne,F as ae,i as se,M as ie}from"./Connected-DfqFYcTn.mjs";import{aJ as ce,bL as ue}from"./viewer-DaG51iO3.mjs";const le=["KHR_materials_unlit","KHR_materials_ior","KHR_materials_specular","KHR_mesh_quantization"],Z=1179937895,fe=1313821514,de=5130562;function me(e){const s=new DataView(e);if(s.getUint32(0,true)!==Z)throw new Error("This is not a GLB.");if(s.getUint32(4,true)!==2)throw new Error("Only glTF 2.0 is drawn.");let o,t;const n=Math.min(s.getUint32(8,true),e.byteLength);for(let a=12;a+8<=n;){const i=s.getUint32(a,true),l=s.getUint32(a+4,true),c=a+8;l===fe?o=JSON.parse(new TextDecoder().decode(new Uint8Array(e,c,i))):l===de&&(t=e.slice(c,c+i)),a=c+i}if(!o)throw new Error("The GLB has no JSON chunk.");return{json:o,bin:t}}async function z(e,s,o){const t=new URL(e,s).href,n=t.startsWith("data:")?await fetch(t):await ue(o,t);if(!n.ok)throw new Error(`${t} answered ${n.status}`);return n.arrayBuffer()}const $=new WeakMap;function ve(e,s,o){const t=(s==null?void 0:s.fetch)??globalThis.fetch,n=$.get(t)??new Map;$.set(t,n);const a=`${ce(s)} ${o??""} ${e}`;let i=n.get(a);return i||(i=he(e,s,o).finally(()=>n.delete(a)),n.set(a,i)),i}async function he(e,s,o){const t=await z(e,location.href,s),n=new DataView(t).getUint32(0,true)===Z,{json:a,bin:i}=n?me(t):{json:JSON.parse(new TextDecoder().decode(t))},l=(a.extensionsRequired??[]).filter(f=>!le.includes(f));if(l.length)throw new Error(`Clover's renderer cannot draw this model: it requires ${l.join(", ")}.`);const c=await Promise.all((a.buffers??[]).map((f,r)=>{if(f.uri!==void 0)return z(f.uri,e,s);if(r===0&&i)return i;throw new Error("A buffer of the model has no data.")})),u=await Promise.all((a.images??[]).map(async f=>{try{let r;if(f.bufferView!==void 0){const d=a.bufferViews[f.bufferView];r=new Blob([new Uint8Array(c[d.buffer],d.byteOffset??0,d.byteLength)],{type:f.mimeType})}else if(f.uri!==void 0)r=new Blob([await z(f.uri,e,s)],{type:f.mimeType});else return null;const m={premultiplyAlpha:"none",colorSpaceConversion:"none"};return await pe(await createImageBitmap(r,m),o,m)}catch{return null}}));return{json:a,buffers:c,images:u}}async function pe(e,s,o){const t=Math.max(e.width,e.height);if(!s||t<=s)return e;const n=s/t,a=await createImageBitmap(e,{...o,resizeWidth:Math.max(1,Math.floor(e.width*n)),resizeHeight:Math.max(1,Math.floor(e.height*n)),resizeQuality:"high"});return e.close(),a}const we={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},Ee={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},q=e=>we[e];function Te(e,s){const o=e.json.accessors[s],t=q(o.type),n=new Float32Array(o.count*t);if(o.bufferView===void 0)return n;const a=e.json.bufferViews[o.bufferView],i=Ee[o.componentType],l=a.byteStride||i*t,c=new DataView(e.buffers[a.buffer],(a.byteOffset??0)+(o.byteOffset??0)),u={5120:r=>c.getInt8(r),5121:r=>c.getUint8(r),5122:r=>c.getInt16(r,true),5123:r=>c.getUint16(r,true),5125:r=>c.getUint32(r,true),5126:r=>c.getFloat32(r,true)}[o.componentType]??(()=>0),f=o.normalized?{5120:127,5121:255,5122:32767,5123:65535}[o.componentType]:void 0;for(let r=0;r<o.count;r++)for(let m=0;m<t;m++){const d=u(r*l+m*i);n[r*t+m]=f?Math.max(d/f,-1):d}return n}const ee=()=>new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function I(e,s){const o=new Float32Array(16);for(let t=0;t<4;t++)for(let n=0;n<4;n++){let a=0;for(let i=0;i<4;i++)a+=e[i*4+n]*s[t*4+i];o[t*4+n]=a}return o}function X([e,s,o],[t,n,a,i],[l,c,u]){const f=t+t,r=n+n,m=a+a,d=t*f,M=t*r,p=t*m,w=n*r,S=n*m,y=a*m,k=i*f,B=i*r,O=i*m;return new Float32Array([(1-(w+y))*l,(M+O)*l,(p-B)*l,0,(M-O)*c,(1-(d+y))*c,(S+k)*c,0,(p+B)*u,(S-k)*u,(1-(d+w))*u,0,e,s,o,1])}const K=e=>X(e,[0,0,0,1],[1,1,1]),xe=e=>X([0,0,0],[0,0,0,1],e);function be([e,s,o]){const t=(n,a)=>{const i=a*Math.PI/180,l=Math.cos(i),c=Math.sin(i),u=ee(),[f,r]=n===0?[1,2]:n===1?[2,0]:[0,1];return u[f*4+f]=l,u[f*4+r]=c,u[r*4+f]=-c,u[r*4+r]=l,u};return I(t(2,o),I(t(1,s),t(0,e)))}function ye(e,s,o,t){const n=1/Math.tan(e/2),a=1/(o-t);return new Float32Array([n/s,0,0,0,0,n,0,0,0,0,(t+o)*a,-1,0,0,2*t*o*a,0])}function Ae(e,s){const o=c=>{const u=Math.hypot(...c)||1;return[c[0]/u,c[1]/u,c[2]/u]},t=(c,u)=>[c[1]*u[2]-c[2]*u[1],c[2]*u[0]-c[0]*u[2],c[0]*u[1]-c[1]*u[0]],n=(c,u)=>c[0]*u[0]+c[1]*u[1]+c[2]*u[2],a=o([e[0]-s[0],e[1]-s[1],e[2]-s[2]]),i=o(t([0,1,0],a)),l=t(a,i);return new Float32Array([i[0],l[0],a[0],0,i[1],l[1],a[1],0,i[2],l[2],a[2],0,-n(i,e),-n(l,e),-n(a,e),1])}function Re(e){const[s,o,t,,n,a,i,,l,c,u]=e,f=a*u-i*c,r=i*l-n*u,m=n*c-a*l,d=s*f+o*r+t*m||1;return new Float32Array([f/d,r/d,m/d,(t*c-o*u)/d,(s*u-t*l)/d,(o*l-s*c)/d,(o*i-t*a)/d,(t*n-s*i)/d,(s*a-o*n)/d])}const Me=()=>({min:[1/0,1/0,1/0],max:[-1/0,-1/0,-1/0]});function _e(e){for(let s=0;s<3;s++){let o=0;for(let t=0;t<3;t++)Math.abs(e[s*4+t])>1e-6&&o++;if(o>1)return false}return true}function Ne(e,s,o,t){const n=s.json.accessors[o];let a;if(_e(t)&&n.min&&n.max&&!n.normalized){const[l,c]=[n.min,n.max];a=Array.from({length:8},(u,f)=>[f&1?c[0]:l[0],f&2?c[1]:l[1],f&4?c[2]:l[2]]).flat()}else a=Te(s,o);const i=t;for(let l=0;l+2<a.length;l+=3){const c=a[l],u=a[l+1],f=a[l+2];for(let r=0;r<3;r++){const m=i[r]*c+i[4+r]*u+i[8+r]*f+i[12+r];m<e.min[r]&&(e.min[r]=m),m>e.max[r]&&(e.max[r]=m)}}return e}const C={normals:1,normalMap:2,unlit:4,mask:8},Y={POSITION:0,NORMAL:1,TEXCOORD_0:2,COLOR_0:3},J=["uBaseTexture","uMetalRoughTexture","uNormalTexture","uOcclusionTexture","uEmissiveTexture"],Se=`#version 300 es
2
2
  layout(location = 0) in vec3 aPosition;
3
3
  layout(location = 1) in vec3 aNormal;
4
4
  layout(location = 2) in vec2 aUv;
@@ -161,4 +161,4 @@ void main() {
161
161
  color += (diffuse * room(n) + (f0 * ab.x + ab.y) * reflected(reflect(-v, n), roughness)) * occlusion;
162
162
  color += uEmissive * texture(uEmissiveTexture, vUv).rgb;
163
163
  outColor = vec4(srgb(neutral(color)) * base.a, base.a);
164
- }`,Q=10497,Fe=9729,Ce=new Set([9984,9985,9986,9987]);function Pe(e){const s=e.createProgram();for(const[o,t]of[[e.VERTEX_SHADER,Se],[e.FRAGMENT_SHADER,Ue]]){const n=e.createShader(o);e.shaderSource(n,t),e.compileShader(n),e.attachShader(s,n),e.deleteShader(n)}if(e.linkProgram(s),!e.getProgramParameter(s,e.LINK_STATUS))throw new Error(`The 3D view's shaders would not build: ${e.getProgramInfoLog(s)}`);return s}function Ie(e){const s=Pe(e),o=r=>e.getUniformLocation(s,r),t=Object.fromEntries(["uModel","uViewProjection","uNormalMatrix","uCamera","uBaseColor","uSpecular","uMetallic","uRoughness","uNormalScale","uOcclusionStrength","uEmissive","uAlphaCutoff","uFlags",...J].map(r=>[r,o(r)]));e.useProgram(s),J.forEach((r,m)=>e.uniform1i(t[r],m));const n=[],a=[],i=[],l=Me(),c=e.createTexture();e.bindTexture(e.TEXTURE_2D,c),e.texImage2D(e.TEXTURE_2D,0,e.RGBA8,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([255,255,255,255])),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),a.push(c),e.vertexAttrib4f(Y.COLOR_0,1,1,1,1);function u(r,m){var G;const{json:d}=r,M=new Map,p=new Map,w=new Map,S=(E,T)=>{const v=`${E}|${T}`;let h=M.get(v);if(!h){const b=d.bufferViews[E];h=e.createBuffer(),e.bindBuffer(T,h),e.bufferData(T,new Uint8Array(r.buffers[b.buffer],b.byteOffset??0,b.byteLength),e.STATIC_DRAW),M.set(v,h),n.push(h)}return h},y=(E,T)=>{var F,N;const v=E?(F=d.textures)==null?void 0:F[E.index]:void 0,h=(v==null?void 0:v.source)!==void 0?r.images[v.source]:null;if(!E||!h)return null;const b=`${E.index}|${T}`;let _=p.get(b);if(!_){_=e.createTexture(),e.bindTexture(e.TEXTURE_2D,_),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,e.NONE),e.texImage2D(e.TEXTURE_2D,0,T?e.SRGB8_ALPHA8:e.RGBA8,e.RGBA,e.UNSIGNED_BYTE,h);const x=(v==null?void 0:v.sampler)!==void 0?(N=d.samplers)==null?void 0:N[v.sampler]:void 0,A=(x==null?void 0:x.minFilter)??e.LINEAR_MIPMAP_LINEAR;e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,A),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,(x==null?void 0:x.magFilter)??Fe),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,(x==null?void 0:x.wrapS)??Q),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,(x==null?void 0:x.wrapT)??Q),Ce.has(A)&&e.generateMipmap(e.TEXTURE_2D),p.set(b,_),a.push(_)}return _},k=E=>{var A,B,D,V,R,P;const T=E??-1;let v=w.get(T);if(v)return v;const h=E!==void 0?((A=d.materials)==null?void 0:A[E])??{}:{},b=h.pbrMetallicRoughness??{},_=y(h.normalTexture,false),F=Number(((D=(B=h.extensions)==null?void 0:B.KHR_materials_ior)==null?void 0:D.ior)??1.5),N=(V=h.extensions)==null?void 0:V.KHR_materials_specular,x=((F-1)/(F+1))**2;return v={base:b.baseColorFactor??[1,1,1,1],specular:((N==null?void 0:N.specularColorFactor)??[1,1,1]).map(g=>Math.min(x*g,1)*((N==null?void 0:N.specularFactor)??1)),metallic:b.metallicFactor??1,roughness:b.roughnessFactor??1,normalScale:((R=h.normalTexture)==null?void 0:R.scale)??1,occlusion:h.occlusionTexture?h.occlusionTexture.strength??1:0,emissive:h.emissiveFactor??[0,0,0],cutoff:h.alphaCutoff??.5,flags:(_?C.normalMap:0)|((P=h.extensions)!=null&&P.KHR_materials_unlit?C.unlit:0)|(h.alphaMode==="MASK"?C.mask:0),doubleSided:!!h.doubleSided,blend:h.alphaMode==="BLEND",textures:[y(b.baseColorTexture,true),y(b.metallicRoughnessTexture,false),_,y(h.occlusionTexture,false),y(h.emissiveTexture,true)]},w.set(T,v),v},L=(E,T)=>{var _,F,N,x;const v=(_=d.nodes)==null?void 0:_[E];if(!v)return;const h=I(T,v.matrix?new Float32Array(v.matrix):X(v.translation??[0,0,0],v.rotation??[0,0,0,1],v.scale??[1,1,1])),b=v.mesh!==void 0?(F=d.meshes)==null?void 0:F[v.mesh]:void 0;for(const A of(b==null?void 0:b.primitives)??[]){const B=A.attributes.POSITION;if(B===void 0)continue;const D=e.createVertexArray();e.bindVertexArray(D);let V=0;for(const[W,H]of Object.entries(Y)){const j=A.attributes[W],U=j!==void 0?(N=d.accessors)==null?void 0:N[j]:void 0;if(!U||U.bufferView===void 0||U.sparse)continue;const re=d.bufferViews[U.bufferView];e.bindBuffer(e.ARRAY_BUFFER,S(U.bufferView,e.ARRAY_BUFFER)),e.enableVertexAttribArray(H),e.vertexAttribPointer(H,q(U.type),U.componentType,!!U.normalized,re.byteStride??0,U.byteOffset??0),W==="NORMAL"&&(V|=C.normals)}const R=A.indices!==void 0?(x=d.accessors)==null?void 0:x[A.indices]:void 0;(R==null?void 0:R.bufferView)!==void 0&&e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,S(R.bufferView,e.ELEMENT_ARRAY_BUFFER)),e.bindVertexArray(null);const P=I(m,h),g=k(A.material);i.push({vao:D,mode:A.mode??e.TRIANGLES,count:R?R.count:d.accessors[B].count,...(R==null?void 0:R.bufferView)!==void 0?{index:{type:R.componentType,offset:R.byteOffset??0}}:{},model:P,normal:Re(P),mirrored:Oe(P)<0,material:{...g,flags:g.flags|V}}),Ne(l,r,B,P)}for(const A of v.children??[])L(A,h)},O=(G=d.scenes)==null?void 0:G[d.scene??0],te=(O==null?void 0:O.nodes)??(d.nodes??[]).map((E,T)=>T).filter(E=>!d.nodes.some(T=>{var v;return(v=T.children)==null?void 0:v.includes(E)})),oe=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);te.forEach(E=>L(E,oe)),i.sort((E,T)=>Number(E.material.blend)-Number(T.material.blend))}function f(r,m,d,M){e.viewport(0,0,d,M),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),e.enable(e.DEPTH_TEST),e.useProgram(s),e.uniformMatrix4fv(t.uViewProjection,false,r),e.uniform3fv(t.uCamera,m);for(const p of i){const{material:w}=p;w.doubleSided?e.disable(e.CULL_FACE):e.enable(e.CULL_FACE),e.frontFace(p.mirrored?e.CW:e.CCW),w.blend?(e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.depthMask(false)):(e.disable(e.BLEND),e.depthMask(true)),w.textures.forEach((S,y)=>{e.activeTexture(e.TEXTURE0+y),e.bindTexture(e.TEXTURE_2D,S??c)}),e.uniformMatrix4fv(t.uModel,false,p.model),e.uniformMatrix3fv(t.uNormalMatrix,false,p.normal),e.uniform4fv(t.uBaseColor,w.base),e.uniform3fv(t.uSpecular,w.specular),e.uniform1f(t.uMetallic,w.metallic),e.uniform1f(t.uRoughness,w.roughness),e.uniform1f(t.uNormalScale,w.normalScale),e.uniform1f(t.uOcclusionStrength,w.occlusion),e.uniform3fv(t.uEmissive,w.emissive),e.uniform1f(t.uAlphaCutoff,w.cutoff),e.uniform1i(t.uFlags,w.flags),e.bindVertexArray(p.vao),p.index?e.drawElements(p.mode,p.count,p.index.type,p.index.offset):e.drawArrays(p.mode,0,p.count)}e.bindVertexArray(null),e.depthMask(true)}return{add:u,bounds:()=>i.length?l:null,draw:f,dispose(){i.forEach(r=>e.deleteVertexArray(r.vao)),n.forEach(r=>e.deleteBuffer(r)),a.forEach(r=>e.deleteTexture(r)),e.deleteProgram(s),i.length=0}}}function Oe(e){return e[0]*(e[5]*e[10]-e[6]*e[9])-e[4]*(e[1]*e[10]-e[2]*e[9])+e[8]*(e[1]*e[6]-e[2]*e[5])}const Be=2;function Le({position:e,transforms:s}){let o=ee();for(const{type:t,x:n,y:a,z:i}of s){const l=t==="scale"?xe([n,a,i]):t==="translate"?K([n,a,i]):be([n,a,i]);o=I(l,o)}return I(K(e),o)}function ke(e,{onLost:s}){const o=document.createElement("canvas");o.className="clover-canvas-surface",o.setAttribute("aria-hidden","true"),o.style.cssText="position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none";const t=o.getContext("webgl2",{antialias:true,alpha:true});if(!t)throw new Error("This browser cannot draw 3D: it offers no WebGL2.");const n=u=>{u.preventDefault(),s()};o.addEventListener("webglcontextlost",n),e.prepend(o);const a=Ie(t);let i={center:[0,0,0],radius:1},l=false;const c=()=>{const u=Math.min(globalThis.devicePixelRatio||1,Be),f=Math.round(e.clientWidth*u),r=Math.round(e.clientHeight*u);!f||!r||(o.width=f,o.height=r)};return c(),{async load(u,f){const r=u.filter(se);if(!r.length){const p=[...new Set(u.map(w=>w.format??w.src))];throw new Error(u.length?`Clover draws glTF models (${ie.join(", ")}), not ${p.join(", ")}.`:"The Scene paints no model.")}const m=t.getParameter(t.MAX_TEXTURE_SIZE),d=await Promise.all(r.map(p=>ve(p.src,f,m)));if(l)return i;d.forEach((p,w)=>a.add(p,Le(r[w])));const M=a.bounds();if(M){const p=M.min.map((S,y)=>(S+M.max[y])/2),w=Math.hypot(...M.max.map((S,y)=>S-M.min[y]))/2;i={center:p,radius:w||1}}return i},draw(u){if(l||!o.width||!o.height)return;const f=ne(u,i.center),r=Math.max(i.radius/1e3,u.distance-i.radius*2),m=u.distance+i.radius*4,d=ye(ae*Math.PI/180,o.width/o.height,r,m);a.draw(I(d,Ae(f,i.center)),f,o.width,o.height)},resize:c,dispose(){var u;l||(l=true,o.removeEventListener("webglcontextlost",n),a.dispose(),(u=t.getExtension("WEBGL_lose_context"))==null||u.loseContext(),o.remove())}}}export{ke as createEngine,Le as placement};
164
+ }`,Q=10497,Fe=9729,Ce=new Set([9984,9985,9986,9987]);function Pe(e){const s=e.createProgram();for(const[o,t]of[[e.VERTEX_SHADER,Se],[e.FRAGMENT_SHADER,Ue]]){const n=e.createShader(o);e.shaderSource(n,t),e.compileShader(n),e.attachShader(s,n),e.deleteShader(n)}if(e.linkProgram(s),!e.getProgramParameter(s,e.LINK_STATUS))throw new Error(`The 3D view's shaders would not build: ${e.getProgramInfoLog(s)}`);return s}function Ie(e){const s=Pe(e),o=r=>e.getUniformLocation(s,r),t=Object.fromEntries(["uModel","uViewProjection","uNormalMatrix","uCamera","uBaseColor","uSpecular","uMetallic","uRoughness","uNormalScale","uOcclusionStrength","uEmissive","uAlphaCutoff","uFlags",...J].map(r=>[r,o(r)]));e.useProgram(s),J.forEach((r,m)=>e.uniform1i(t[r],m));const n=[],a=[],i=[],l=Me(),c=e.createTexture();e.bindTexture(e.TEXTURE_2D,c),e.texImage2D(e.TEXTURE_2D,0,e.RGBA8,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([255,255,255,255])),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),a.push(c),e.vertexAttrib4f(Y.COLOR_0,1,1,1,1);function u(r,m){var G;const{json:d}=r,M=new Map,p=new Map,w=new Map,S=(E,T)=>{const v=`${E}|${T}`;let h=M.get(v);if(!h){const b=d.bufferViews[E];h=e.createBuffer(),e.bindBuffer(T,h),e.bufferData(T,new Uint8Array(r.buffers[b.buffer],b.byteOffset??0,b.byteLength),e.STATIC_DRAW),M.set(v,h),n.push(h)}return h},y=(E,T)=>{var F,N;const v=E?(F=d.textures)==null?void 0:F[E.index]:void 0,h=(v==null?void 0:v.source)!==void 0?r.images[v.source]:null;if(!E||!h)return null;const b=`${E.index}|${T}`;let _=p.get(b);if(!_){_=e.createTexture(),e.bindTexture(e.TEXTURE_2D,_),e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL,e.NONE),e.texImage2D(e.TEXTURE_2D,0,T?e.SRGB8_ALPHA8:e.RGBA8,e.RGBA,e.UNSIGNED_BYTE,h);const x=(v==null?void 0:v.sampler)!==void 0?(N=d.samplers)==null?void 0:N[v.sampler]:void 0,A=(x==null?void 0:x.minFilter)??e.LINEAR_MIPMAP_LINEAR;e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,A),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,(x==null?void 0:x.magFilter)??Fe),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,(x==null?void 0:x.wrapS)??Q),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,(x==null?void 0:x.wrapT)??Q),Ce.has(A)&&e.generateMipmap(e.TEXTURE_2D),p.set(b,_),a.push(_)}return _},k=E=>{var A,L,D,V,R,P;const T=E??-1;let v=w.get(T);if(v)return v;const h=E!==void 0?((A=d.materials)==null?void 0:A[E])??{}:{},b=h.pbrMetallicRoughness??{},_=y(h.normalTexture,false),F=Number(((D=(L=h.extensions)==null?void 0:L.KHR_materials_ior)==null?void 0:D.ior)??1.5),N=(V=h.extensions)==null?void 0:V.KHR_materials_specular,x=((F-1)/(F+1))**2;return v={base:b.baseColorFactor??[1,1,1,1],specular:((N==null?void 0:N.specularColorFactor)??[1,1,1]).map(g=>Math.min(x*g,1)*((N==null?void 0:N.specularFactor)??1)),metallic:b.metallicFactor??1,roughness:b.roughnessFactor??1,normalScale:((R=h.normalTexture)==null?void 0:R.scale)??1,occlusion:h.occlusionTexture?h.occlusionTexture.strength??1:0,emissive:h.emissiveFactor??[0,0,0],cutoff:h.alphaCutoff??.5,flags:(_?C.normalMap:0)|((P=h.extensions)!=null&&P.KHR_materials_unlit?C.unlit:0)|(h.alphaMode==="MASK"?C.mask:0),doubleSided:!!h.doubleSided,blend:h.alphaMode==="BLEND",textures:[y(b.baseColorTexture,true),y(b.metallicRoughnessTexture,false),_,y(h.occlusionTexture,false),y(h.emissiveTexture,true)]},w.set(T,v),v},B=(E,T)=>{var _,F,N,x;const v=(_=d.nodes)==null?void 0:_[E];if(!v)return;const h=I(T,v.matrix?new Float32Array(v.matrix):X(v.translation??[0,0,0],v.rotation??[0,0,0,1],v.scale??[1,1,1])),b=v.mesh!==void 0?(F=d.meshes)==null?void 0:F[v.mesh]:void 0;for(const A of(b==null?void 0:b.primitives)??[]){const L=A.attributes.POSITION;if(L===void 0)continue;const D=e.createVertexArray();e.bindVertexArray(D);let V=0;for(const[W,H]of Object.entries(Y)){const j=A.attributes[W],U=j!==void 0?(N=d.accessors)==null?void 0:N[j]:void 0;if(!U||U.bufferView===void 0||U.sparse)continue;const re=d.bufferViews[U.bufferView];e.bindBuffer(e.ARRAY_BUFFER,S(U.bufferView,e.ARRAY_BUFFER)),e.enableVertexAttribArray(H),e.vertexAttribPointer(H,q(U.type),U.componentType,!!U.normalized,re.byteStride??0,U.byteOffset??0),W==="NORMAL"&&(V|=C.normals)}const R=A.indices!==void 0?(x=d.accessors)==null?void 0:x[A.indices]:void 0;(R==null?void 0:R.bufferView)!==void 0&&e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,S(R.bufferView,e.ELEMENT_ARRAY_BUFFER)),e.bindVertexArray(null);const P=I(m,h),g=k(A.material);i.push({vao:D,mode:A.mode??e.TRIANGLES,count:R?R.count:d.accessors[L].count,...(R==null?void 0:R.bufferView)!==void 0?{index:{type:R.componentType,offset:R.byteOffset??0}}:{},model:P,normal:Re(P),mirrored:Oe(P)<0,material:{...g,flags:g.flags|V}}),Ne(l,r,L,P)}for(const A of v.children??[])B(A,h)},O=(G=d.scenes)==null?void 0:G[d.scene??0],te=(O==null?void 0:O.nodes)??(d.nodes??[]).map((E,T)=>T).filter(E=>!d.nodes.some(T=>{var v;return(v=T.children)==null?void 0:v.includes(E)})),oe=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);te.forEach(E=>B(E,oe)),i.sort((E,T)=>Number(E.material.blend)-Number(T.material.blend))}function f(r,m,d,M){e.viewport(0,0,d,M),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),e.enable(e.DEPTH_TEST),e.useProgram(s),e.uniformMatrix4fv(t.uViewProjection,false,r),e.uniform3fv(t.uCamera,m);for(const p of i){const{material:w}=p;w.doubleSided?e.disable(e.CULL_FACE):e.enable(e.CULL_FACE),e.frontFace(p.mirrored?e.CW:e.CCW),w.blend?(e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.depthMask(false)):(e.disable(e.BLEND),e.depthMask(true)),w.textures.forEach((S,y)=>{e.activeTexture(e.TEXTURE0+y),e.bindTexture(e.TEXTURE_2D,S??c)}),e.uniformMatrix4fv(t.uModel,false,p.model),e.uniformMatrix3fv(t.uNormalMatrix,false,p.normal),e.uniform4fv(t.uBaseColor,w.base),e.uniform3fv(t.uSpecular,w.specular),e.uniform1f(t.uMetallic,w.metallic),e.uniform1f(t.uRoughness,w.roughness),e.uniform1f(t.uNormalScale,w.normalScale),e.uniform1f(t.uOcclusionStrength,w.occlusion),e.uniform3fv(t.uEmissive,w.emissive),e.uniform1f(t.uAlphaCutoff,w.cutoff),e.uniform1i(t.uFlags,w.flags),e.bindVertexArray(p.vao),p.index?e.drawElements(p.mode,p.count,p.index.type,p.index.offset):e.drawArrays(p.mode,0,p.count)}e.bindVertexArray(null),e.depthMask(true)}return{add:u,bounds:()=>i.length?l:null,draw:f,dispose(){i.forEach(r=>e.deleteVertexArray(r.vao)),n.forEach(r=>e.deleteBuffer(r)),a.forEach(r=>e.deleteTexture(r)),e.deleteProgram(s),i.length=0}}}function Oe(e){return e[0]*(e[5]*e[10]-e[6]*e[9])-e[4]*(e[1]*e[10]-e[2]*e[9])+e[8]*(e[1]*e[6]-e[2]*e[5])}const Le=2;function Be({position:e,transforms:s}){let o=ee();for(const{type:t,x:n,y:a,z:i}of s){const l=t==="scale"?xe([n,a,i]):t==="translate"?K([n,a,i]):be([n,a,i]);o=I(l,o)}return I(K(e),o)}function ke(e,{onLost:s}){const o=document.createElement("canvas");o.className="clover-canvas-surface",o.setAttribute("aria-hidden","true"),o.style.cssText="position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none";const t=o.getContext("webgl2",{antialias:true,alpha:true});if(!t)throw new Error("This browser cannot draw 3D: it offers no WebGL2.");const n=u=>{u.preventDefault(),s()};o.addEventListener("webglcontextlost",n),e.prepend(o);const a=Ie(t);let i={center:[0,0,0],radius:1},l=false;const c=()=>{const u=Math.min(globalThis.devicePixelRatio||1,Le),f=Math.round(e.clientWidth*u),r=Math.round(e.clientHeight*u);!f||!r||(o.width=f,o.height=r)};return c(),{async load(u,f){const r=u.filter(se);if(!r.length){const p=[...new Set(u.map(w=>w.format??w.src))];throw new Error(u.length?`Clover draws glTF models (${ie.join(", ")}), not ${p.join(", ")}.`:"The Scene paints no model.")}const m=t.getParameter(t.MAX_TEXTURE_SIZE),d=await Promise.all(r.map(p=>ve(p.src,f,m)));if(l)return i;d.forEach((p,w)=>a.add(p,Be(r[w])));const M=a.bounds();if(M){const p=M.min.map((S,y)=>(S+M.max[y])/2),w=Math.hypot(...M.max.map((S,y)=>S-M.min[y]))/2;i={center:p,radius:w||1}}return i},draw(u){if(l||!o.width||!o.height)return;const f=ne(u,i.center),r=Math.max(i.radius/1e3,u.distance-i.radius*2),m=u.distance+i.radius*4,d=ye(ae*Math.PI/180,o.width/o.height,r,m);a.draw(I(d,Ae(f,i.center)),f,o.width,o.height)},resize:c,dispose(){var u;l||(l=true,o.removeEventListener("webglcontextlost",n),a.dispose(),(u=t.getExtension("WEBGL_lose_context"))==null||u.loseContext(),o.remove())}}}export{ke as createEngine,Be as placement};
@@ -1 +1 @@
1
- import{ax as l,bs as g}from"./viewer-ClQD1LNQ.mjs";function b(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=e+"=".repeat((4-e.length%4)%4),o=atob(n);try{return decodeURIComponent(o)}catch{const a=Uint8Array.from(o,s=>s.charCodeAt(0));return new TextDecoder().decode(a)}}function I(t){const e=t.trim();for(const n of[()=>JSON.parse(e),()=>JSON.parse(b(e))])try{const o=n();if(o&&typeof o=="object")return o}catch{}return null}function v(t){if(!t)return;const e=Number(t.split(",")[0]);return Number.isFinite(e)?e:void 0}const u=t=>l(t==null?void 0:t.partOf).find(e=>(e==null?void 0:e.id)&&e.type==="Collection");function h(t){const e=t.type==="Annotation"?l(t.target):[t],n=e[0]?m(e[0],t):null;if(!n||e.length<2)return n;const o=typeof t.id=="string"?t.id:"content-state",a=e.flatMap((s,d)=>{var y,p,f;const i=d===0?n:m(s,t),r=(i==null?void 0:i.type)==="Manifest"?i.id:i==null?void 0:i.manifestId;return!i||!r?[]:[{id:`${o}#target-${d+1}`,manifestId:r,...((y=i.target)==null?void 0:y.canvasId)&&{canvasId:i.target.canvasId},...((p=i.target)==null?void 0:p.region)&&{region:i.target.region},...((f=i.target)==null?void 0:f.time)!==void 0&&{time:i.target.time}}]});return a.length>1?{...n,targets:{id:o,...t.label&&typeof t.label=="object"?{label:t.label}:{},items:a}}:n}function m(t,e){const n=g(t),o=typeof t=="string"?{id:n.id}:t.type==="SpecificResource"?typeof t.source=="string"?{id:t.source}:t.source??{}:t,a=o.type;if(a==="Manifest"||a==="Collection"){const c=a==="Manifest"?u(o):void 0;return c?{id:c.id,type:"Collection",manifestId:n.id}:{id:n.id,type:a}}const s=l(t.selector).find(c=>(c==null?void 0:c.type)==="PointSelector"&&c.t!=null),d={canvasId:n.id};n.rect&&(d.region=n.rect);const i=(s==null?void 0:s.t)??v(n.t);i!==void 0&&(d.time=Number(i));const r=l(o.partOf).find(c=>(c==null?void 0:c.id)&&(!c.type||c.type==="Manifest")),y=u(r),p=e.type==="Annotation"&&l(e.body).length?{id:e.id??`${n.id}#content-state`,type:"Annotation",motivation:l(e.motivation),body:e.body,target:t}:void 0,f=p?{annotation:p}:{};return y&&r?{id:y.id,type:"Collection",manifestId:r.id,target:d,...f}:r?{id:r.id,type:"Manifest",target:d,...f}:{id:n.id,type:a??"Canvas",target:d,...f}}export{I as decodeContentState,h as resolveContentState};
1
+ import{az as l,bu as g}from"./viewer-DaG51iO3.mjs";function b(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),n=e+"=".repeat((4-e.length%4)%4),o=atob(n);try{return decodeURIComponent(o)}catch{const a=Uint8Array.from(o,s=>s.charCodeAt(0));return new TextDecoder().decode(a)}}function I(t){const e=t.trim();for(const n of[()=>JSON.parse(e),()=>JSON.parse(b(e))])try{const o=n();if(o&&typeof o=="object")return o}catch{}return null}function v(t){if(!t)return;const e=Number(t.split(",")[0]);return Number.isFinite(e)?e:void 0}const u=t=>l(t==null?void 0:t.partOf).find(e=>(e==null?void 0:e.id)&&e.type==="Collection");function h(t){const e=t.type==="Annotation"?l(t.target):[t],n=e[0]?m(e[0],t):null;if(!n||e.length<2)return n;const o=typeof t.id=="string"?t.id:"content-state",a=e.flatMap((s,d)=>{var y,p,f;const i=d===0?n:m(s,t),r=(i==null?void 0:i.type)==="Manifest"?i.id:i==null?void 0:i.manifestId;return!i||!r?[]:[{id:`${o}#target-${d+1}`,manifestId:r,...((y=i.target)==null?void 0:y.canvasId)&&{canvasId:i.target.canvasId},...((p=i.target)==null?void 0:p.region)&&{region:i.target.region},...((f=i.target)==null?void 0:f.time)!==void 0&&{time:i.target.time}}]});return a.length>1?{...n,targets:{id:o,...t.label&&typeof t.label=="object"?{label:t.label}:{},items:a}}:n}function m(t,e){const n=g(t),o=typeof t=="string"?{id:n.id}:t.type==="SpecificResource"?typeof t.source=="string"?{id:t.source}:t.source??{}:t,a=o.type;if(a==="Manifest"||a==="Collection"){const c=a==="Manifest"?u(o):void 0;return c?{id:c.id,type:"Collection",manifestId:n.id}:{id:n.id,type:a}}const s=l(t.selector).find(c=>(c==null?void 0:c.type)==="PointSelector"&&c.t!=null),d={canvasId:n.id};n.rect&&(d.region=n.rect);const i=(s==null?void 0:s.t)??v(n.t);i!==void 0&&(d.time=Number(i));const r=l(o.partOf).find(c=>(c==null?void 0:c.id)&&(!c.type||c.type==="Manifest")),y=u(r),p=e.type==="Annotation"&&l(e.body).length?{id:e.id??`${n.id}#content-state`,type:"Annotation",motivation:l(e.motivation),body:e.body,target:t}:void 0,f=p?{annotation:p}:{};return y&&r?{id:y.id,type:"Collection",manifestId:r.id,target:d,...f}:r?{id:r.id,type:"Manifest",target:d,...f}:{id:n.id,type:a??"Canvas",target:d,...f}}export{I as decodeContentState,h as resolveContentState};
@@ -1 +1 @@
1
- import{bu as _}from"./viewer-ClQD1LNQ.mjs";const k=1/3,Y=.5,P=8,z="translate 240ms cubic-bezier(0.16, 1, 0.3, 1)",D=[120,_],A="cubic-bezier(0.33, 0.67, 0.67, 1)",E=new WeakMap;function O(t,n){let o=null,i="idle",a=0,S=0,s=0,d=1,e=1,c=[];const f=()=>{var r;return[t,(r=n.current.alongside)==null?void 0:r.current]},M=r=>{if(r.pointerType==="mouse"||!r.isPrimary||!n.current.enabled)return;o=r.pointerId,i="pending",a=r.clientX,S=r.clientY,s=0,d=t.getBoundingClientRect().width||1;const p=getComputedStyle(t).direction==="rtl";e=n.current.side==="end"!==p?1:-1,c=[[r.timeStamp,0]]},$=r=>{var g,v;if(r.pointerId!==o||i==="idle"||i==="scroll")return;const p=(r.clientX-a)*e,y=r.clientY-S;if(i==="pending"){if(Math.abs(y)>P&&Math.abs(y)>Math.abs(p)){i="scroll";return}if(p<P)return;i="drag",a=r.clientX,c=[[r.timeStamp,0]];try{(g=t.setPointerCapture)==null||g.call(t,r.pointerId)}catch{}u(f(),void 0,"none")}s=Math.max(0,(r.clientX-a)*e),u(f(),`${s*e}px 0`);const h=(v=n.current.scrim)==null?void 0:v.current;h&&(h.style.transition="none",h.style.opacity=String(1-s/d)),c.push([r.timeStamp,s]),c.length>5&&c.shift(),r.preventDefault()},m=r=>{var X,C,T;if(r.pointerId!==o)return;const p=i==="drag";if(i="idle",o=null,!p)return;t.addEventListener("click",b,{capture:true,once:true}),setTimeout(()=>t.removeEventListener("click",b,true),0);const[y,h]=c[0],[g,v]=c[c.length-1],I=g>y?(v-h)/(g-y):0,l=(X=n.current.scrim)==null?void 0:X.current,L=(C=window.matchMedia)==null?void 0:C.call(window,"(prefers-reduced-motion: reduce)").matches;if(s>d*k||I>Y){const x=L?0:Math.min(D[1],Math.max(D[0],2*(d-s)/Math.max(I,.001))),w=`${x}ms ${A}`;if(l&&(l.style.transition=`opacity ${w}`,l.style.opacity="0"),n.current.exits){u(f(),`${d*e}px 0`,`translate ${w}`),setTimeout(()=>n.current.onClose(),x);return}t.style.transition="none",t.style.translate="",t.style.transform=`translateX(${s*e}px)`,t.getBoundingClientRect(),t.style.transition=`transform ${w}`,t.style.transform=`var(--clover-template-out, translateX(${e*100}%))`,u([(T=n.current.alongside)==null?void 0:T.current],`${d*e}px 0`,`translate ${w}`),E.set(t,setTimeout(()=>R(t,n),x)),n.current.onClose();return}u(f(),"",L?"none":z),l&&(l.style.transition=L?"none":"opacity 240ms ease",l.style.opacity=""),setTimeout(()=>{i==="idle"&&!E.has(t)&&u(f(),void 0,"")},240)},b=r=>{r.stopPropagation(),r.preventDefault()};return t.addEventListener("pointerdown",M),t.addEventListener("pointermove",$,{passive:false}),t.addEventListener("pointerup",m),t.addEventListener("pointercancel",m),()=>{t.removeEventListener("pointerdown",M),t.removeEventListener("pointermove",$),t.removeEventListener("pointerup",m),t.removeEventListener("pointercancel",m)}}function F(t,n){E.has(t)&&!n.current.enabled||R(t,n)}function R(t,n){var i,a;clearTimeout(E.get(t)),E.delete(t),u([t,(i=n.current.alongside)==null?void 0:i.current],"",""),t.style.transform="";const o=(a=n.current.scrim)==null?void 0:a.current;o&&(o.style.opacity="",o.style.transition="")}function u(t,n,o){for(const i of t)i&&(o!==void 0&&(i.style.transition=o),n!==void 0&&(i.style.translate=n))}export{O as attach,F as reset};
1
+ import{bw as _}from"./viewer-DaG51iO3.mjs";const k=1/3,Y=.5,P=8,z="translate 240ms cubic-bezier(0.16, 1, 0.3, 1)",D=[120,_],A="cubic-bezier(0.33, 0.67, 0.67, 1)",E=new WeakMap;function O(t,n){let o=null,i="idle",a=0,S=0,s=0,d=1,e=1,c=[];const f=()=>{var r;return[t,(r=n.current.alongside)==null?void 0:r.current]},M=r=>{if(r.pointerType==="mouse"||!r.isPrimary||!n.current.enabled)return;o=r.pointerId,i="pending",a=r.clientX,S=r.clientY,s=0,d=t.getBoundingClientRect().width||1;const p=getComputedStyle(t).direction==="rtl";e=n.current.side==="end"!==p?1:-1,c=[[r.timeStamp,0]]},$=r=>{var g,v;if(r.pointerId!==o||i==="idle"||i==="scroll")return;const p=(r.clientX-a)*e,y=r.clientY-S;if(i==="pending"){if(Math.abs(y)>P&&Math.abs(y)>Math.abs(p)){i="scroll";return}if(p<P)return;i="drag",a=r.clientX,c=[[r.timeStamp,0]];try{(g=t.setPointerCapture)==null||g.call(t,r.pointerId)}catch{}u(f(),void 0,"none")}s=Math.max(0,(r.clientX-a)*e),u(f(),`${s*e}px 0`);const h=(v=n.current.scrim)==null?void 0:v.current;h&&(h.style.transition="none",h.style.opacity=String(1-s/d)),c.push([r.timeStamp,s]),c.length>5&&c.shift(),r.preventDefault()},m=r=>{var X,C,T;if(r.pointerId!==o)return;const p=i==="drag";if(i="idle",o=null,!p)return;t.addEventListener("click",b,{capture:true,once:true}),setTimeout(()=>t.removeEventListener("click",b,true),0);const[y,h]=c[0],[g,v]=c[c.length-1],I=g>y?(v-h)/(g-y):0,l=(X=n.current.scrim)==null?void 0:X.current,L=(C=window.matchMedia)==null?void 0:C.call(window,"(prefers-reduced-motion: reduce)").matches;if(s>d*k||I>Y){const x=L?0:Math.min(D[1],Math.max(D[0],2*(d-s)/Math.max(I,.001))),w=`${x}ms ${A}`;if(l&&(l.style.transition=`opacity ${w}`,l.style.opacity="0"),n.current.exits){u(f(),`${d*e}px 0`,`translate ${w}`),setTimeout(()=>n.current.onClose(),x);return}t.style.transition="none",t.style.translate="",t.style.transform=`translateX(${s*e}px)`,t.getBoundingClientRect(),t.style.transition=`transform ${w}`,t.style.transform=`var(--clover-template-out, translateX(${e*100}%))`,u([(T=n.current.alongside)==null?void 0:T.current],`${d*e}px 0`,`translate ${w}`),E.set(t,setTimeout(()=>R(t,n),x)),n.current.onClose();return}u(f(),"",L?"none":z),l&&(l.style.transition=L?"none":"opacity 240ms ease",l.style.opacity=""),setTimeout(()=>{i==="idle"&&!E.has(t)&&u(f(),void 0,"")},240)},b=r=>{r.stopPropagation(),r.preventDefault()};return t.addEventListener("pointerdown",M),t.addEventListener("pointermove",$,{passive:false}),t.addEventListener("pointerup",m),t.addEventListener("pointercancel",m),()=>{t.removeEventListener("pointerdown",M),t.removeEventListener("pointermove",$),t.removeEventListener("pointerup",m),t.removeEventListener("pointercancel",m)}}function F(t,n){E.has(t)&&!n.current.enabled||R(t,n)}function R(t,n){var i,a;clearTimeout(E.get(t)),E.delete(t),u([t,(i=n.current.alongside)==null?void 0:i.current],"",""),t.style.transform="";const o=(a=n.current.scrim)==null?void 0:a.current;o&&(o.style.opacity="",o.style.transition="")}function u(t,n,o){for(const i of t)i&&(o!==void 0&&(i.style.transition=o),n!==void 0&&(i.style.translate=n))}export{O as attach,F as reset};
@@ -1 +1 @@
1
- import{ax as h,av as x,br as m,bs as I,bt as q}from"./viewer-ClQD1LNQ.mjs";function S(e,i,n){for(const s of h(e==null?void 0:e.items))for(const o of h(s==null?void 0:s.items)){if(!x(o))continue;const l=h(o==null?void 0:o.body).flatMap(t=>(t==null?void 0:t.type)==="Choice"?h(t.items).filter((r,f)=>n?(r==null?void 0:r.id)===n:f===0):n&&(t==null?void 0:t.id)!==n?[]:[t]);for(const t of l){if((t==null?void 0:t.type)!=="Image"||!t.width||!t.height)continue;const r=m(t.service);if(!r)continue;const f=I(h(o.target)[0]).rect??{x:0,y:0,w:e.width,h:e.height},a=(i.x-f.x)/f.w,c=(i.y-f.y)/f.h,u=Math.max(0,a),M=Math.max(0,c),g=Math.min(1,a+i.w/f.w)-u,p=Math.min(1,c+i.h/f.h)-M;if(g>0&&p>0)return{service:r,region:{x:u,y:M,width:g,height:p}}}}return null}const w=new WeakMap;function k(e,i){let n=w.get(e);n||w.set(e,n=new Map);let s=n.get(i);return s||(s=q({id:i,type:"Manifest"},{request:e.request}).catch(()=>null),n.set(i,s)),s}export{k as f,S as r};
1
+ import{az as h,ax as x,bt as m,bu as I,bv as q}from"./viewer-DaG51iO3.mjs";function S(e,i,n){for(const s of h(e==null?void 0:e.items))for(const o of h(s==null?void 0:s.items)){if(!x(o))continue;const l=h(o==null?void 0:o.body).flatMap(t=>(t==null?void 0:t.type)==="Choice"?h(t.items).filter((r,f)=>n?(r==null?void 0:r.id)===n:f===0):n&&(t==null?void 0:t.id)!==n?[]:[t]);for(const t of l){if((t==null?void 0:t.type)!=="Image"||!t.width||!t.height)continue;const r=m(t.service);if(!r)continue;const f=I(h(o.target)[0]).rect??{x:0,y:0,w:e.width,h:e.height},a=(i.x-f.x)/f.w,c=(i.y-f.y)/f.h,u=Math.max(0,a),M=Math.max(0,c),g=Math.min(1,a+i.w/f.w)-u,p=Math.min(1,c+i.h/f.h)-M;if(g>0&&p>0)return{service:r,region:{x:u,y:M,width:g,height:p}}}}return null}const w=new WeakMap;function k(e,i){let n=w.get(e);n||w.set(e,n=new Map);let s=n.get(i);return s||(s=q({id:i,type:"Manifest"},{request:e.request}).catch(()=>null),n.set(i,s)),s}export{k as f,S as r};
@@ -1 +1 @@
1
- var R=Object.defineProperty;var k=(s,t,e)=>t in s?R(s,t,{enumerable:true,configurable:true,writable:true,value:e}):s[t]=e;var l=(s,t,e)=>k(s,typeof t!="symbol"?t+"":t,e);import{b as x,n as E,u as r,M as p,k as O,q as M,C as m,I as g,$ as C,x as D}from"./viewer-ClQD1LNQ.mjs";import"./styles-DogZyfVz.mjs";function N(s){return{render:function(t){E(t,s)},unmount:function(){x(s)}}}const $="clover-root",b=Symbol("roots"),A=[];class F{constructor(t){l(this,"entries",new Map);l(this,"lists",new Map);l(this,"listeners",new Map);l(this,"languages",new I(t2=>this.entries.has(t2)));this.count=t}list(t){return this.lists.get(t)??A}subscribe(t,e){let n=this.listeners.get(t);return n||this.listeners.set(t,n=new Set),n.add(e),()=>{n.delete(e)}}connect(t){var i;const e=t.kind==="part"?((i=t.element.parentElement)==null?void 0:i.closest($))??null:null,n=this.entries.get(t.element);if(n&&n.root===e)return;const o={hosted:t,key:(n==null?void 0:n.key)??++this.count.made,root:e};this.entries.set(t.element,o),n&&this.change(h(n),a=>a.filter(c=>c!==n)),this.change(h(o),a=>[...a,o]),t.needsRoot&&!e&&console.warn(`<${t.element.localName}> shows a <clover-root>'s state: put it inside one.`),t.kind!=="root"&&this.languages.draws(t.element.localName),(t.kind!=="part"||!e)&&this.languages.watch(t.element)}disconnect(t){const e=this.entries.get(t);e&&(this.entries.delete(t),this.change(h(e),n=>n.filter(o=>o!==e)))}change(t,e){var n;this.lists.set(t,e(this.list(t))),(n=this.listeners.get(t))==null||n.forEach(o=>o())}}const h=s=>s.hosted.kind==="root"?b:s.root;class I{constructor(t){l(this,"observer",null);l(this,"tags",new Set);this.isElement=t}draws(t){this.tags.add(t)}watch(t){this.observer??(this.observer=new MutationObserver(e=>{const n=[...this.tags,".clover-announcer"].join(",");for(const{target:o}of e){const i=o;i.getAttribute("lang")!==""||this.isElement(i)||i.closest(n)&&i.removeAttribute("lang")}})),this.observer.observe(t,{subtree:true,attributes:true,attributeFilter:["lang"]})}}function d(s,t){const e=M(o=>s.subscribe(t,o),[s,t]);return m(e,()=>s.list(t))}function w(s){return m(s.subscribe,s.getProps,s.getProps)}function L({registry:s}){const t=d(s,b),e=d(s,null);return r(O,{children:[t.map(n=>r(W,{entry:n,registry:s},n.key)),e.map(n=>r(S,{entry:n},n.key))]})}const v=s=>`clover-${s.key}-`,W=p(function({entry:t,registry:e}){const{hosted:n}=t,o=d(e,n.element),i=w(n),a=n.Component;return r(P,{hosted:n,props:i,children:r(g.Provider,{value:v(t),children:r(a,{hosted:n,props:i,children:o.map(c=>r(S,{entry:c},c.key))})})})}),S=p(function({entry:t}){const{hosted:e}=t,n=w(e);if(e.needsRoot&&!t.root)return null;const o=e.Component;return C(r(P,{hosted:e,props:n,children:r(g.Provider,{value:v(t),children:r(o,{hosted:e,props:n})})}),e.element)});class P extends D{constructor(){super(...arguments);l(this,"state",{failed:false})}static getDerivedStateFromError(){return{failed:true}}componentDidCatch(e,n){console.error(`<${this.props.hosted.element.localName}>:`,e)}componentDidUpdate(e){this.state.failed&&e.props!==this.props.props&&this.setState({failed:false})}render(){return this.state.failed?null:this.props.children}}const f=new WeakMap,u=Symbol.for("clover.elements");function H(s){let t=f.get(s);if(!t){const e=s;e[u]&&console.warn("Clover is loaded twice on this page: load one entry."),t=new F(e[u]??(e[u]={made:0})),f.set(s,t),N(s.createElement("div")).render(r(L,{registry:t}))}return t}export{F as Registry,H as hostOf};
1
+ var R=Object.defineProperty;var k=(s,t,e)=>t in s?R(s,t,{enumerable:true,configurable:true,writable:true,value:e}):s[t]=e;var l=(s,t,e)=>k(s,typeof t!="symbol"?t+"":t,e);import{b as x,n as E,u as r,M as p,k as O,q as M,C as m,I as g,$ as C,x as D}from"./viewer-DaG51iO3.mjs";import"./styles-DvZTMHkr.mjs";function N(s){return{render:function(t){E(t,s)},unmount:function(){x(s)}}}const $="clover-root",b=Symbol("roots"),A=[];class F{constructor(t){l(this,"entries",new Map);l(this,"lists",new Map);l(this,"listeners",new Map);l(this,"languages",new I(t2=>this.entries.has(t2)));this.count=t}list(t){return this.lists.get(t)??A}subscribe(t,e){let n=this.listeners.get(t);return n||this.listeners.set(t,n=new Set),n.add(e),()=>{n.delete(e)}}connect(t){var i;const e=t.kind==="part"?((i=t.element.parentElement)==null?void 0:i.closest($))??null:null,n=this.entries.get(t.element);if(n&&n.root===e)return;const o={hosted:t,key:(n==null?void 0:n.key)??++this.count.made,root:e};this.entries.set(t.element,o),n&&this.change(h(n),a=>a.filter(c=>c!==n)),this.change(h(o),a=>[...a,o]),t.needsRoot&&!e&&console.warn(`<${t.element.localName}> shows a <clover-root>'s state: put it inside one.`),t.kind!=="root"&&this.languages.draws(t.element.localName),(t.kind!=="part"||!e)&&this.languages.watch(t.element)}disconnect(t){const e=this.entries.get(t);e&&(this.entries.delete(t),this.change(h(e),n=>n.filter(o=>o!==e)))}change(t,e){var n;this.lists.set(t,e(this.list(t))),(n=this.listeners.get(t))==null||n.forEach(o=>o())}}const h=s=>s.hosted.kind==="root"?b:s.root;class I{constructor(t){l(this,"observer",null);l(this,"tags",new Set);this.isElement=t}draws(t){this.tags.add(t)}watch(t){this.observer??(this.observer=new MutationObserver(e=>{const n=[...this.tags,".clover-announcer"].join(",");for(const{target:o}of e){const i=o;i.getAttribute("lang")!==""||this.isElement(i)||i.closest(n)&&i.removeAttribute("lang")}})),this.observer.observe(t,{subtree:true,attributes:true,attributeFilter:["lang"]})}}function d(s,t){const e=M(o=>s.subscribe(t,o),[s,t]);return m(e,()=>s.list(t))}function w(s){return m(s.subscribe,s.getProps,s.getProps)}function L({registry:s}){const t=d(s,b),e=d(s,null);return r(O,{children:[t.map(n=>r(W,{entry:n,registry:s},n.key)),e.map(n=>r(S,{entry:n},n.key))]})}const v=s=>`clover-${s.key}-`,W=p(function({entry:t,registry:e}){const{hosted:n}=t,o=d(e,n.element),i=w(n),a=n.Component;return r(P,{hosted:n,props:i,children:r(g.Provider,{value:v(t),children:r(a,{hosted:n,props:i,children:o.map(c=>r(S,{entry:c},c.key))})})})}),S=p(function({entry:t}){const{hosted:e}=t,n=w(e);if(e.needsRoot&&!t.root)return null;const o=e.Component;return C(r(P,{hosted:e,props:n,children:r(g.Provider,{value:v(t),children:r(o,{hosted:e,props:n})})}),e.element)});class P extends D{constructor(){super(...arguments);l(this,"state",{failed:false})}static getDerivedStateFromError(){return{failed:true}}componentDidCatch(e,n){console.error(`<${this.props.hosted.element.localName}>:`,e)}componentDidUpdate(e){this.state.failed&&e.props!==this.props.props&&this.setState({failed:false})}render(){return this.state.failed?null:this.props.children}}const f=new WeakMap,u=Symbol.for("clover.elements");function H(s){let t=f.get(s);if(!t){const e=s;e[u]&&console.warn("Clover is loaded twice on this page: load one entry."),t=new F(e[u]??(e[u]={made:0})),f.set(s,t),N(s.createElement("div")).render(r(L,{registry:t}))}return t}export{F as Registry,H as hostOf};
@@ -0,0 +1 @@
1
+ import{ac as I,az as u,ax as L,bu as $,bB as P,bC as S}from"./viewer-DaG51iO3.mjs";function v(t){const c=new Map;for(const e of I(t).canvases)j(e,c);return[...c.values()]}function j(t,c){u(t.items).forEach((e,r)=>u(e==null?void 0:e.items).forEach((d,f)=>{if(!L(d))return;const a=$(u(d.target)[0]).rect??{x:0,y:0,w:Number(t.width)||0,h:Number(t.height)||0};u(d.body).forEach((s,y)=>{const w=(s==null?void 0:s.type)==="Choice";(w?u(s.items):[s]).forEach((o,x)=>{for(const n of u(o==null?void 0:o.annotations)){if(!Array.isArray(n==null?void 0:n.items)||typeof(o==null?void 0:o.id)!="string")continue;const l=n.id??`${o.id}#annotations`,p=w?{key:P(t.id,d.id,r,f,y),item:x,image:o.id}:void 0,A=S(n,l,t.id).map(b=>{const h=k(b.annotation,o),N=Math.round(a.x+h.x*(a.w/h.width)),E=Math.round(a.y+h.y*(a.h/h.height)),g=Math.round(h.w*(a.w/h.width)),C=Math.round(h.h*(a.h/h.height)),M=`${t.id}#xywh=${N},${E},${g},${C}`;return{...b,canvasId:t.id,target:$(M),annotation:{...b.annotation,target:M},...p?{layer:p}:{}}});if(!A.length)continue;let m=c.get(l);m||(m={id:l,label:n.label??o.label,source:"manifest",entries:[]},c.set(l,m)),m.entries.push(...A)}})})}))}function k(t,c){const e=Number(c.width)||1,r=Number(c.height)||1,d={x:0,y:0,w:e,h:r,width:e,height:r},f=u(t==null?void 0:t.target)[0],s=(typeof f=="object"?u(f==null?void 0:f.selector):[]).find(i=>(i==null?void 0:i.type)==="ImageApiSelector"),y=typeof(s==null?void 0:s.region)=="string"?s.region:void 0;if(y){const i=/^(pct:)?([\d.]+),([\d.]+),([\d.]+),([\d.]+)$/.exec(y);if(!i)return d;const[o,x,n,l]=i.slice(2).map(Number);return i[1]?{x:o/100*e,y:x/100*r,w:n/100*e,h:l/100*r,width:e,height:r}:{x:o,y:x,w:n,h:l,width:e,height:r}}const w=$(f).rect;return w?{...w,width:e,height:r}:d}export{v as imageLayers};
@@ -1 +1 @@
1
- import{cr as e}from"./viewer-ClQD1LNQ.mjs";export{e as initCloverI18n};
1
+ import{cr as e}from"./viewer-DaG51iO3.mjs";export{e as initCloverI18n};
@@ -1 +1 @@
1
- import{ax as n,aw as p,bs as c}from"./viewer-ClQD1LNQ.mjs";function g(r){if(n(r==null?void 0:r.motivation).includes("linking"))for(const i of p(r)){if((i==null?void 0:i.type)==="TextualBody"||typeof(i==null?void 0:i.value)=="string")continue;const t=(i==null?void 0:i.type)==="SpecificResource"?i.source:i,e=typeof t=="string"?t:t==null?void 0:t.id;if(!(typeof e!="string"||!e)){if((t==null?void 0:t.type)==="Canvas"){const s=n(t.partOf).find(f=>(f==null?void 0:f.id)&&(!f.type||f.type==="Manifest")),u=c(e).id;return{id:e,canvasId:u,...s?{manifestId:s.id}:{}}}if((t==null?void 0:t.type)==="Manifest"||(t==null?void 0:t.type)==="Collection")return{id:e,manifestId:e};if(/^https?:\/\//i.test(e))return{id:e}}}}function o(r){const i=n(r==null?void 0:r.motivation);if(!(!i.includes("tagging")&&!i.includes("identifying")))for(const t of p(r)){if((t==null?void 0:t.type)==="TextualBody"||typeof(t==null?void 0:t.value)=="string")continue;const e=(t==null?void 0:t.type)==="SpecificResource"?t.source:t,s=typeof e=="string"?e:e==null?void 0:e.id;if(typeof s=="string"&&/^https?:\/\//i.test(s))return{id:s}}}export{o as a,g as r};
1
+ import{az as n,ay as p,bu as c}from"./viewer-DaG51iO3.mjs";function g(r){if(n(r==null?void 0:r.motivation).includes("linking"))for(const i of p(r)){if((i==null?void 0:i.type)==="TextualBody"||typeof(i==null?void 0:i.value)=="string")continue;const t=(i==null?void 0:i.type)==="SpecificResource"?i.source:i,e=typeof t=="string"?t:t==null?void 0:t.id;if(!(typeof e!="string"||!e)){if((t==null?void 0:t.type)==="Canvas"){const f=n(t.partOf).find(s=>(s==null?void 0:s.id)&&(!s.type||s.type==="Manifest")),u=c(e).id;return{id:e,canvasId:u,...f?{manifestId:f.id}:{}}}if((t==null?void 0:t.type)==="Manifest"||(t==null?void 0:t.type)==="Collection")return{id:e,manifestId:e};if(/^https?:\/\//i.test(e))return{id:e}}}}function o(r){const i=n(r==null?void 0:r.motivation);if(!(!i.includes("tagging")&&!i.includes("identifying")))for(const t of p(r)){if((t==null?void 0:t.type)==="TextualBody"||typeof(t==null?void 0:t.value)=="string")continue;const e=(t==null?void 0:t.type)==="SpecificResource"?t.source:t,f=typeof e=="string"?e:e==null?void 0:e.id;if(typeof f=="string"&&/^https?:\/\//i.test(f))return{id:f}}}export{o as a,g as r};
@@ -0,0 +1 @@
1
+ import{bt as i,co as a,cp as s}from"./viewer-DaG51iO3.mjs";async function d(r,c,n){const t=typeof r.id=="string"?r.id:void 0,e=i(r.service);if(!e)return t;try{const o=await a(e,{request:n});return s(o,c)??t}catch{return t}}export{d as overlayImageUrl};
@@ -0,0 +1 @@
1
+ import{az as c,bz as l,bu as g,bA as b,ba as A}from"./viewer-DaG51iO3.mjs";const E=t=>t&&typeof t=="object"?Object.entries(t).flatMap(([i,r])=>c(r).filter(s=>typeof s=="string").map(s=>({value:s,...i!=="none"?{language:i}:{}}))):typeof t=="string"?[{value:t}]:[],a=new WeakMap;function j(t){if(!t)return null;if(a.has(t))return a.get(t);const i=[],r=new Set,s=n=>{if(!n||r.has(n.id??n))return;r.add(n.id??n);const v=typeof n.id=="string"&&!c(n.behavior).includes("no-nav"),d=E(n.label),h=c(n.items).filter(o=>(o==null?void 0:o.type)!=="Range"&&g(b(o)).id).length;let w=0;for(const o of c(n.items)){if((o==null?void 0:o.type)==="Range"){s(o);continue}const e=g(b(o));if(!e.id)continue;const u=w++;if(!v||!e.rect)continue;const{x,y:T,w:I,h:S}=e.rect,f=A(n.id,u);i.push({id:f,setId:l,canvasId:e.id,target:{id:e.id,rect:e.rect},motivation:["highlighting"],bodies:d,...h>1?{place:{index:u+1,total:h}}:{},annotation:{id:f,type:"Annotation",motivation:["highlighting"],...d.length&&{body:d.map(({value:$,language:y})=>({type:"TextualBody",value:$,...y?{language:y}:{}}))},target:`${e.id}#xywh=${x},${T},${I},${S}`}})}};c(t.structures).forEach(s);const p=i.length?{id:l,source:"contents",entries:i}:null;return a.set(t,p),p}export{j as contentsSet};
@@ -1 +1 @@
1
- import{X as f,u as r,A as u,Y as p,_ as d,k as m}from"./viewer-ClQD1LNQ.mjs";import"./styles-DogZyfVz.mjs";const v=f(null),l=new WeakMap;function y(t){let n=l.get(t);if(!n){const{render:o}=t;n={canvasId:t.canvasId,format:t.format,match:t.match,component:c=>r(A,{...c,render:o})},l.set(t,n)}return n}function h(t){if(Array.isArray(t))return t.filter(n=>typeof n=="object"&&n!==null&&typeof n.render=="function").map(y)}function A({render:t,canvases:n,bodies:o,children:c}){const a=u(null),s=p(v);return d(()=>{const e=a.current;if(!e)return;const i=t(e,{canvases:n,bodies:o,clover:s});return()=>{typeof i=="function"&&i(),e.replaceChildren()}},[t,n,o,s]),r(m,{children:[r("div",{ref:a,className:"clover-body-renderer",style:{position:"absolute",inset:0}}),c&&r("div",{className:"clover-canvas-controls",children:c})]})}export{h as toRenderers};
1
+ import{Y as f,u as r,A as u,Z as p,_ as d,k as m}from"./viewer-DaG51iO3.mjs";import"./styles-DvZTMHkr.mjs";const v=f(null),l=new WeakMap;function y(t){let n=l.get(t);if(!n){const{render:o}=t;n={canvasId:t.canvasId,format:t.format,match:t.match,component:c=>r(A,{...c,render:o})},l.set(t,n)}return n}function h(t){if(Array.isArray(t))return t.filter(n=>typeof n=="object"&&n!==null&&typeof n.render=="function").map(y)}function A({render:t,canvases:n,bodies:o,children:c}){const a=u(null),s=p(v);return d(()=>{const e=a.current;if(!e)return;const i=t(e,{canvases:n,bodies:o,clover:s});return()=>{typeof i=="function"&&i(),e.replaceChildren()}},[t,n,o,s]),r(m,{children:[r("div",{ref:a,className:"clover-body-renderer",style:{position:"absolute",inset:0}}),c&&r("div",{className:"clover-canvas-controls",children:c})]})}export{h as toRenderers};
@@ -1 +1 @@
1
- import{bJ as a}from"./viewer-ClQD1LNQ.mjs";function c(t){try{const o=new URL(t).pathname.split("/").filter(Boolean).pop();return o?decodeURIComponent(o):"download"}catch{return"download"}}async function i(t,o){try{const r=await a(o,t,{referrerPolicy:"no-referrer"});if(!r.ok)return false;const n=URL.createObjectURL(await r.blob()),e=document.createElement("a");return e.href=n,e.download=c(t),document.body.append(e),e.click(),e.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e4),true}catch{return false}}export{c as fileName,i as saveFile};
1
+ import{bL as a}from"./viewer-DaG51iO3.mjs";function c(t){try{const o=new URL(t).pathname.split("/").filter(Boolean).pop();return o?decodeURIComponent(o):"download"}catch{return"download"}}async function i(t,o){try{const r=await a(o,t,{referrerPolicy:"no-referrer"});if(!r.ok)return false;const n=URL.createObjectURL(await r.blob()),e=document.createElement("a");return e.href=n,e.download=c(t),document.body.append(e),e.click(),e.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e4),true}catch{return false}}export{c as fileName,i as saveFile};
@@ -1 +1 @@
1
- import{bB as b,ax as f,bs as x,bC as S}from"./viewer-ClQD1LNQ.mjs";const w=10;async function R(r,t,s,o,e){var n,d;const i=(n=r.get().manifest)==null?void 0:n.id;try{const{hits:c,set:u}=await A(t,s,{request:o,signal:e});if(e.aborted||((d=r.get().manifest)==null?void 0:d.id)!==i)return;r.set({search:{query:s,status:"ready",hits:c,set:u}})}catch{if(e.aborted)return;r.set({search:{query:s,status:"error",hits:[],set:null}})}}async function A(r,t,{request:s,signal:o}={}){const e=new URL(r.id);e.searchParams.set("q",t);const i=[];let n=e.toString();const d=new Set;for(;n&&i.length<w&&!d.has(n);){d.add(n);const c=await b(s,n,o);i.push(c),n=$(c)}return E(i,t)}function T(r){var e;const t=f(r)[0];if(typeof t=="string"||!t)return t;const s=t.full??t["@id"],o=(e=f(t.selector)[0])==null?void 0:e.value;return typeof o=="string"&&typeof s=="string"?`${s}#${o}`:s}function $(r){var o;const t=r.next??((o=r.within)==null?void 0:o.next),s=typeof t=="string"?t:(t==null?void 0:t.id)??(t==null?void 0:t["@id"]);return typeof s=="string"?s:null}function E(r,t){var e,i;const s=[],o=[];for(const n of r){const d=Array.isArray(n.resources),c=d?n.resources:f(n.items),u=new Map;for(const a of c){const p=a.id??a["@id"],m=d?T(a.on):f(a.target)[0],v=x(m);if(!p||!v.id)continue;const y=d?(e=a.resource)==null?void 0:e.chars:f(a.body).map(l=>l==null?void 0:l.value).find(l=>typeof l=="string"),I={id:p,setId:S,canvasId:v.id,target:v,motivation:["highlighting"],bodies:[{value:String(y??t)}],annotation:{id:p,type:"Annotation",motivation:["highlighting"],body:{type:"TextualBody",value:String(y??t)},target:m}};u.set(p,I),s.push(I)}const g=d?H(n,u):M(n,u),h=new Set(g.flatMap(a=>a.entryIds));o.push(...g);for(const a of u.values())h.has(a.id)||o.push({id:a.id,canvasId:a.canvasId,entryIds:[a.id],match:((i=a.bodies[0])==null?void 0:i.value)??t})}return{query:t,hits:o,set:{id:S,label:{none:[t]},source:"search",entries:s}}}function H(r,t){var o;const s=[];for(const e of f(r.hits)){const i=f(e.annotations).filter(n=>t.has(n));i.length&&s.push({id:i.join(" "),canvasId:t.get(i[0]).canvasId,entryIds:i,before:e.before,match:String(e.match??((o=t.get(i[0]).bodies[0])==null?void 0:o.value)??""),after:e.after})}return s}function M(r,t){var o,e;const s=[];for(const i of f(r.annotations))for(const n of f(i==null?void 0:i.items))if(f(n==null?void 0:n.motivation).includes("contextualizing"))for(const c of f(n.target)){const u=typeof(c==null?void 0:c.source)=="string"?c.source:(o=c==null?void 0:c.source)==null?void 0:o.id,g=u?t.get(u):void 0;if(!g)continue;const h=f(c.selector).find(a=>(a==null?void 0:a.type)==="TextQuoteSelector");s.push({id:`${n.id??u}#${u}`,canvasId:g.canvasId,entryIds:[g.id],before:h==null?void 0:h.prefix,match:String((h==null?void 0:h.exact)??((e=g.bodies[0])==null?void 0:e.value)??""),after:h==null?void 0:h.suffix})}return s}export{E as readResults,A as search,R as searchInto};
1
+ import{bD as b,az as f,bu as w,bE as S}from"./viewer-DaG51iO3.mjs";const x=10;async function R(r,t,s,o,e){var n,d;const i=(n=r.get().manifest)==null?void 0:n.id;try{const{hits:c,set:u}=await A(t,s,{request:o,signal:e});if(e.aborted||((d=r.get().manifest)==null?void 0:d.id)!==i)return;r.set({search:{query:s,status:"ready",hits:c,set:u}})}catch{if(e.aborted)return;r.set({search:{query:s,status:"error",hits:[],set:null}})}}async function A(r,t,{request:s,signal:o}={}){const e=new URL(r.id);e.searchParams.set("q",t);const i=[];let n=e.toString();const d=new Set;for(;n&&i.length<x&&!d.has(n);){d.add(n);const c=await b(s,n,o);i.push(c),n=T(c)}return $(i,t)}function E(r){var e;const t=f(r)[0];if(typeof t=="string"||!t)return t;const s=t.full??t["@id"],o=(e=f(t.selector)[0])==null?void 0:e.value;return typeof o=="string"&&typeof s=="string"?`${s}#${o}`:s}function T(r){var o;const t=r.next??((o=r.within)==null?void 0:o.next),s=typeof t=="string"?t:(t==null?void 0:t.id)??(t==null?void 0:t["@id"]);return typeof s=="string"?s:null}function $(r,t){var e,i;const s=[],o=[];for(const n of r){const d=Array.isArray(n.resources),c=d?n.resources:f(n.items),u=new Map;for(const a of c){const p=a.id??a["@id"],m=d?E(a.on):f(a.target)[0],v=w(m);if(!p||!v.id)continue;const y=d?(e=a.resource)==null?void 0:e.chars:f(a.body).map(l=>l==null?void 0:l.value).find(l=>typeof l=="string"),I={id:p,setId:S,canvasId:v.id,target:v,motivation:["highlighting"],bodies:[{value:String(y??t)}],annotation:{id:p,type:"Annotation",motivation:["highlighting"],body:{type:"TextualBody",value:String(y??t)},target:m}};u.set(p,I),s.push(I)}const g=d?H(n,u):M(n,u),h=new Set(g.flatMap(a=>a.entryIds));o.push(...g);for(const a of u.values())h.has(a.id)||o.push({id:a.id,canvasId:a.canvasId,entryIds:[a.id],match:((i=a.bodies[0])==null?void 0:i.value)??t})}return{query:t,hits:o,set:{id:S,label:{none:[t]},source:"search",entries:s}}}function H(r,t){var o;const s=[];for(const e of f(r.hits)){const i=f(e.annotations).filter(n=>t.has(n));i.length&&s.push({id:i.join(" "),canvasId:t.get(i[0]).canvasId,entryIds:i,before:e.before,match:String(e.match??((o=t.get(i[0]).bodies[0])==null?void 0:o.value)??""),after:e.after})}return s}function M(r,t){var o,e;const s=[];for(const i of f(r.annotations))for(const n of f(i==null?void 0:i.items))if(f(n==null?void 0:n.motivation).includes("contextualizing"))for(const c of f(n.target)){const u=typeof(c==null?void 0:c.source)=="string"?c.source:(o=c==null?void 0:c.source)==null?void 0:o.id,g=u?t.get(u):void 0;if(!g)continue;const h=f(c.selector).find(a=>(a==null?void 0:a.type)==="TextQuoteSelector");s.push({id:`${n.id??u}#${u}`,canvasId:g.canvasId,entryIds:[g.id],before:h==null?void 0:h.prefix,match:String((h==null?void 0:h.exact)??((e=g.bodies[0])==null?void 0:e.value)??""),after:h==null?void 0:h.suffix})}return s}export{$ as readResults,A as search,R as searchInto};