@nulib/clover 4.5.1 → 4.5.3

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 (269) hide show
  1. package/dist/components/Annotations/Annotations.mjs +1 -1
  2. package/dist/components/Canvas/AnnotationState.mjs +1 -1
  3. package/dist/components/Canvas/CanvasView.mjs +4 -1
  4. package/dist/components/Canvas/Connected.mjs +3 -1
  5. package/dist/components/Canvas/layout.mjs +10 -3
  6. package/dist/components/Canvas/media/MediaBody.mjs +11 -1
  7. package/dist/components/Canvas/media/useCaptionTracks.mjs +3 -3
  8. package/dist/components/Panel/Panel.mjs +1 -1
  9. package/dist/components/Transcript/Transcript.mjs +12 -5
  10. package/dist/core/annotation-sets.mjs +5 -4
  11. package/dist/core/clover.mjs +2 -1
  12. package/dist/core/language-choice.mjs +1 -9
  13. package/dist/core/search-service.mjs +0 -2
  14. package/dist/core/search-set-id.mjs +5 -0
  15. package/dist/core/search.mjs +1 -1
  16. package/dist/i18n/languages.mjs +7 -0
  17. package/dist/i18n/locales/index.mjs +1 -0
  18. package/dist/i18n/locales/it.json.mjs +5 -0
  19. package/dist/index.d.mts +8 -4
  20. package/dist/index.mjs +2 -1
  21. package/dist/react/readingLanguages.mjs +2 -2
  22. package/dist/web-components/{About-BMlEaTqj.mjs → About-D6-2erVc.mjs} +1 -1
  23. package/dist/web-components/AnnotationItems-CIkOffAz.mjs +1 -0
  24. package/dist/web-components/{AnnotationMenu-9pQOKEMb.mjs → AnnotationMenu-CpmOOZSw.mjs} +1 -1
  25. package/dist/web-components/AnnotationState-rP65BFoy.mjs +1 -0
  26. package/dist/web-components/{Annotations-BmETEgUn.mjs → Annotations-BbF7fB0c.mjs} +2 -2
  27. package/dist/web-components/{Annotations-B5WD596p.mjs → Annotations-DXDYF1z6.mjs} +1 -1
  28. package/dist/web-components/{Body-BgCsKpGr.mjs → Body-BLgps2qs.mjs} +1 -1
  29. package/dist/web-components/{BodyAlert-Dt_medBN.mjs → BodyAlert-D8amNUza.mjs} +1 -1
  30. package/dist/web-components/{Button-DW1Y9SI4.mjs → Button-Df2xqhjb.mjs} +1 -1
  31. package/dist/web-components/{Camera-Cj_vOD9V.mjs → Camera-DyctUMDb.mjs} +1 -1
  32. package/dist/web-components/{Canvas2DBackend-BjCgV8Gn.mjs → Canvas2DBackend-BohnzWV_.mjs} +1 -1
  33. package/dist/web-components/{CanvasView-fCOQzA_R.mjs → CanvasView-DuEcewJX.mjs} +2 -2
  34. package/dist/web-components/{CaptionDetails-Z5FFvEp8.mjs → CaptionDetails-DGopB_9i.mjs} +1 -1
  35. package/dist/web-components/{ChaptersMenu-b80HFV28.mjs → ChaptersMenu-BSuB-sDa.mjs} +1 -1
  36. package/dist/web-components/{Chevron-D9HTNAaC.mjs → Chevron-CTE_mdQa.mjs} +1 -1
  37. package/dist/web-components/{ChoiceMenu-CXtI293_.mjs → ChoiceMenu-LpoBtxRi.mjs} +1 -1
  38. package/dist/web-components/Collection-C9g74Zou.mjs +1 -0
  39. package/dist/web-components/{CollectionSelect-Boc7wy9j.mjs → CollectionSelect-oErXB7fT.mjs} +1 -1
  40. package/dist/web-components/Connected-C5ueafsa.mjs +1 -0
  41. package/dist/web-components/{Connected-CNlmumRT.mjs → Connected-CrMsTcn1.mjs} +1 -1
  42. package/dist/web-components/{Connected-DXm_z3q9.mjs → Connected-DqY8Kec2.mjs} +1 -1
  43. package/dist/web-components/{Contents-N3FNf9QU.mjs → Contents-Di8FSh_b.mjs} +1 -1
  44. package/dist/web-components/{ControlMenu-DLJsVZnm.mjs → ControlMenu-C-zQ9oPn.mjs} +1 -1
  45. package/dist/web-components/ControlsFade-GyxZwI9F.mjs +1 -0
  46. package/dist/web-components/{CountMenu-DyBK1e4z.mjs → CountMenu-BcKdKTEB.mjs} +1 -1
  47. package/dist/web-components/Cue-D_oQ83As.mjs +1 -0
  48. package/dist/web-components/{Document-CZ3qHszc.mjs → Document-BbisuG24.mjs} +1 -1
  49. package/dist/web-components/{DomLayers-BwlLZSRc.mjs → DomLayers-B9Y4vNFa.mjs} +1 -1
  50. package/dist/web-components/{Download-WldBPDxr.mjs → Download-BGFJAVpA.mjs} +1 -1
  51. package/dist/web-components/{EntryBodies-BwWEgZ1_.mjs → EntryBodies-DlDUg-Gu.mjs} +1 -1
  52. package/dist/web-components/{EntryThumbnail-C56uAnMQ.mjs → EntryThumbnail-D6XLLir5.mjs} +1 -1
  53. package/dist/web-components/{FieldPill-C1UAftNo.mjs → FieldPill-02KIY_Y4.mjs} +1 -1
  54. package/dist/web-components/FrameAnimation-MKkeUTOH.mjs +1 -0
  55. package/dist/web-components/{Gallery-h9AR15s0.mjs → Gallery-6Qzqvcv_.mjs} +1 -1
  56. package/dist/web-components/{GlobeGlyph-CnvS-FYu.mjs → GlobeGlyph-BmFi9JtV.mjs} +1 -1
  57. package/dist/web-components/{HideToggle-D-r79OIC.mjs → HideToggle-CAv-kfC1.mjs} +1 -1
  58. package/dist/web-components/{ImageControls-CdcicjR7.mjs → ImageControls-CRcmd4b2.mjs} +1 -1
  59. package/dist/web-components/{Items-CVvtjq7r.mjs → Items-Ds-e9Eyf.mjs} +1 -1
  60. package/dist/web-components/Label-Cpra0FrM.mjs +1 -0
  61. package/dist/web-components/{LanguageChoice-BJd_RsYq.mjs → LanguageChoice-Dpeqy8MY.mjs} +1 -1
  62. package/dist/web-components/{LanguageMenu-BsnzmKwN.mjs → LanguageMenu-SpIkvYBa.mjs} +1 -1
  63. package/dist/web-components/{LightboxView-DReKv-Dd.mjs → LightboxView-DMkj1LvO.mjs} +1 -1
  64. package/dist/web-components/{ListEnd-DwtNoi_1.mjs → ListEnd-BFoQg8rY.mjs} +1 -1
  65. package/dist/web-components/{Loaded-BPOKsLbO.mjs → Loaded-DnsDfNFg.mjs} +1 -1
  66. package/dist/web-components/LoadedCanvas-BFGjJhrh.mjs +1 -0
  67. package/dist/web-components/LoadedMap-j4QH_66E.mjs +1 -0
  68. package/dist/web-components/{Loading-C5mJstXv.mjs → Loading-dSW4jDLD.mjs} +1 -1
  69. package/dist/web-components/{Map-Drj3FcfB.mjs → Map-Cd_AOIN4.mjs} +1 -1
  70. package/dist/web-components/MapView-B40l7gAe.mjs +3 -0
  71. package/dist/web-components/{Markup-DgJRP5fa.mjs → Markup-DeqLouIX.mjs} +1 -1
  72. package/dist/web-components/{MediaBody-BEWLYzRU.mjs → MediaBody-BEfKVXnO.mjs} +1 -1
  73. package/dist/web-components/MediaBody-BYpzToEG.mjs +1 -0
  74. package/dist/web-components/{NavDate-rtQNHF_X.mjs → NavDate-DMEP6FTB.mjs} +1 -1
  75. package/dist/web-components/{Navigator-Byl5hEjY.mjs → Navigator-DpGBDATH.mjs} +1 -1
  76. package/dist/web-components/{Pager-DkTHvyHN.mjs → Pager-CT_IO74t.mjs} +1 -1
  77. package/dist/web-components/PagerLayout-CekSHs07.mjs +1 -0
  78. package/dist/web-components/{Panel-C6gKilND.mjs → Panel-B-aM6U6j.mjs} +1 -1
  79. package/dist/web-components/PanelPart-Cy6RKMKg.mjs +1 -0
  80. package/dist/web-components/{PanelToggle-DqoE9niZ.mjs → PanelToggle-SiKMe81c.mjs} +1 -1
  81. package/dist/web-components/{PartOfManifest-ydDwjNTt.mjs → PartOfManifest-BZfNUV9Y.mjs} +1 -1
  82. package/dist/web-components/{Pending-DWJWng2S.mjs → Pending-DFQ-z9Ro.mjs} +1 -1
  83. package/dist/web-components/{PlaceBox-DB54T8Pe.mjs → PlaceBox-DJoAtlZV.mjs} +1 -1
  84. package/dist/web-components/{Placeholder-DJg1rjuD.mjs → Placeholder-DOkhqnyy.mjs} +1 -1
  85. package/dist/web-components/{Position-BHc5qoff.mjs → Position-BCp1rGp-.mjs} +1 -1
  86. package/dist/web-components/Primitives-CGYSfsyH.mjs +1 -0
  87. package/dist/web-components/Provider-CQfzN4fP.mjs +1 -0
  88. package/dist/web-components/{ReadMore-Dv-gInr5.mjs → ReadMore-B4n9NPIe.mjs} +1 -1
  89. package/dist/web-components/Root-CllKSTdU.mjs +1 -0
  90. package/dist/web-components/Scene-9utR214N.mjs +1 -0
  91. package/dist/web-components/{SceneView-CekvA-s4.mjs → SceneView-y9xHTzAA.mjs} +1 -1
  92. package/dist/web-components/{Search-Dp2mguRJ.mjs → Search-BCLtrEjA.mjs} +1 -1
  93. package/dist/web-components/{Sections-DURsiaS-.mjs → Sections-DNxLZGU4.mjs} +1 -1
  94. package/dist/web-components/{SeekMarks-DT6hra-w.mjs → SeekMarks-BU_O0AOH.mjs} +1 -1
  95. package/dist/web-components/StandaloneItems-CCNj3XOb.mjs +1 -0
  96. package/dist/web-components/{Status-pDPG5ab1.mjs → Status-DypafiXv.mjs} +1 -1
  97. package/dist/web-components/{Steps-DCyGkbOP.mjs → Steps-DjiWU7bg.mjs} +1 -1
  98. package/dist/web-components/{TargetItems-Be6A1gcy.mjs → TargetItems-TWAJTD2g.mjs} +1 -1
  99. package/dist/web-components/Timeline-gAKgbQzO.mjs +1 -0
  100. package/dist/web-components/{Tip-Bsd8bCx9.mjs → Tip-Bwom9zEV.mjs} +1 -1
  101. package/dist/web-components/Transcript--vBLc-bm.mjs +1 -0
  102. package/dist/web-components/{Transport-DUGGwa-G.mjs → Transport-D2GLXWso.mjs} +1 -1
  103. package/dist/web-components/{Transport-DOzVY_IU.mjs → Transport-DzHS5xf9.mjs} +1 -1
  104. package/dist/web-components/{annotation-collection-DGCbF6YN.mjs → annotation-collection-CfT3_8lE.mjs} +1 -1
  105. package/dist/web-components/{annotation-name-DFdgSllS.mjs → annotation-name-DWykwcvV.mjs} +1 -1
  106. package/dist/web-components/{annotations-content-CwUfqHPh.mjs → annotations-content-BxnR6Ol_.mjs} +1 -1
  107. package/dist/web-components/{body-C3LAo8pl.mjs → body-D2lLp-_i.mjs} +1 -1
  108. package/dist/web-components/{canvas-BUmbx6sa.mjs → canvas-C1zYXA82.mjs} +1 -1
  109. package/dist/web-components/{cloverEngine-gT8L7Xi7.mjs → cloverEngine-BekBSdRP.mjs} +1 -1
  110. package/dist/web-components/{content-state-reader-B3GmJui6.mjs → content-state-reader-B0mwxi4T.mjs} +1 -1
  111. package/dist/web-components/{controlGlyphs-BC2tLOYb.mjs → controlGlyphs-D5HFCXlT.mjs} +1 -1
  112. package/dist/web-components/{controls-n8BSf19H.mjs → controls-dFx_fh9i.mjs} +1 -1
  113. package/dist/web-components/{downloads-CurHNK9M.mjs → downloads-nfG5kjYD.mjs} +1 -1
  114. package/dist/web-components/{dragToClose-Cbxkgv9j.mjs → dragToClose-DgIUXpps.mjs} +1 -1
  115. package/dist/web-components/{engine-C51pr0Wa.mjs → engine-DglNftB2.mjs} +1 -1
  116. package/dist/web-components/{engines-CZzpPjXO.mjs → engines-BAFGCoxE.mjs} +1 -1
  117. package/dist/web-components/{fetchManifest-Crn4VJ56.mjs → fetchManifest-BKI0qGVv.mjs} +1 -1
  118. package/dist/web-components/{fromManifest-Ci0vEX5i.mjs → fromManifest-C5nalgfi.mjs} +1 -1
  119. package/dist/web-components/{glyphs-BcLY9GG7.mjs → glyphs-CWPIJUEF.mjs} +1 -1
  120. package/dist/web-components/{hooks-C9BeaqLZ.mjs → hooks-c4C0d8Ry.mjs} +1 -1
  121. package/dist/web-components/image-layers-lOJ8D76-.mjs +1 -0
  122. package/dist/web-components/{image-service-content-BAmoCFAH.mjs → image-service-content-BkZw1Sl2.mjs} +1 -1
  123. package/dist/web-components/{imageService-DXS2KuSL.mjs → imageService-BKnzCn1O.mjs} +1 -1
  124. package/dist/web-components/{index-BxhBBH2G.mjs → index-CFaRqFfI.mjs} +1 -1
  125. package/dist/web-components/index.mjs +1 -1
  126. package/dist/web-components/it-UWaPOPDN.mjs +1 -0
  127. package/dist/web-components/{items-CPW7LZpT.mjs → items-D3pRZ8EY.mjs} +1 -1
  128. package/dist/web-components/items-DBsB5oKJ.mjs +1 -0
  129. package/dist/web-components/label-OfSCfbCa.mjs +1 -0
  130. package/dist/web-components/layout-BEIFutbD.mjs +1 -0
  131. package/dist/web-components/{link-DI1Gv9P_.mjs → link-BMOL3_MA.mjs} +1 -1
  132. package/dist/web-components/logo-D_-IBdMI.mjs +1 -0
  133. package/dist/web-components/{models-DtSFB57l.mjs → models-DXibAYkS.mjs} +1 -1
  134. package/dist/web-components/{nodes-BEUmRfuQ.mjs → nodes-Ke3BYqGx.mjs} +1 -1
  135. package/dist/web-components/{overlayImage-BOqTHR8E.mjs → overlayImage-BOZbpzDp.mjs} +1 -1
  136. package/dist/web-components/{panel-Cd5S9Ezy.mjs → panel-BXSSqIe-.mjs} +1 -1
  137. package/dist/web-components/part-C_Sul6zp.mjs +1 -0
  138. package/dist/web-components/{playerSurface-QGjBv9Yq.mjs → playerSurface-XdHpct6f.mjs} +1 -1
  139. package/dist/web-components/{pointer-BLFSppkR.mjs → pointer-BClo-CPd.mjs} +1 -1
  140. package/dist/web-components/{provider-BMZpItBJ.mjs → provider-IGs6v4A9.mjs} +1 -1
  141. package/dist/web-components/{range-regions-DX9sTrBU.mjs → range-regions-0YBp-gfK.mjs} +1 -1
  142. package/dist/web-components/{read-more-DSnuyAMI.mjs → read-more-CMUQMZhj.mjs} +1 -1
  143. package/dist/web-components/readingLanguages-DTnVTeV8.mjs +1 -0
  144. package/dist/web-components/{rendererSurface-Clg0MuAj.mjs → rendererSurface-I5YJoQ7I.mjs} +2 -2
  145. package/dist/web-components/{renderers-DnnMGnA9.mjs → renderers-D_037_ll.mjs} +1 -1
  146. package/dist/web-components/{resource-BxbCXGtG.mjs → resource-DTzCu0WW.mjs} +1 -1
  147. package/dist/web-components/{save-file-CuRpXpO7.mjs → save-file-VUpEe1fa.mjs} +1 -1
  148. package/dist/web-components/{search-B8ycnAKR.mjs → search-DsQUysUb.mjs} +1 -1
  149. package/dist/web-components/shared-D7rQBuil.mjs +1 -0
  150. package/dist/web-components/{show-link-BOEKHpcs.mjs → show-link-KGyTdKrM.mjs} +1 -1
  151. package/dist/web-components/{sizedImage-BNlShxVG.mjs → sizedImage-8w7_lBq5.mjs} +1 -1
  152. package/dist/web-components/{split-BwdAJ7v3.mjs → split-asxy07Kf.mjs} +1 -1
  153. package/dist/web-components/{status-DwwUoyYG.mjs → status-q8B0YfI1.mjs} +1 -1
  154. package/dist/web-components/{styles-C51FhQQr.mjs → styles-BBr4khzS.mjs} +1 -1
  155. package/dist/web-components/three.mjs +1 -1
  156. package/dist/web-components/{thumbnail-Bx8UP6ak.mjs → thumbnail-C6dlxSWz.mjs} +1 -1
  157. package/dist/web-components/{tip-DNLMHjGA.mjs → tip-BCLkWyVA.mjs} +1 -1
  158. package/dist/web-components/{toggle-D-vRsWQx.mjs → toggle-malcKiRW.mjs} +1 -1
  159. package/dist/web-components/{useContainerName-CAlWJohz.mjs → useContainerName-DKh6i3of.mjs} +1 -1
  160. package/dist/web-components/{useControlsVisibility-IAlNQKAy.mjs → useControlsVisibility-CgMmG20q.mjs} +1 -1
  161. package/dist/web-components/{useNearViewport-B8E_rit4.mjs → useNearViewport-Dugkqmff.mjs} +1 -1
  162. package/dist/web-components/{useScrollTrack-D7S-3b7o.mjs → useScrollTrack-Dec6Inyg.mjs} +1 -1
  163. package/dist/web-components/viewer/{AnnotationItems-DLBXufXN.mjs → AnnotationItems-DtyuKgul.mjs} +1 -1
  164. package/dist/web-components/viewer/{AnnotationMenu-VQICxqCw.mjs → AnnotationMenu-IErpogy9.mjs} +1 -1
  165. package/dist/web-components/viewer/AnnotationState-71ZkOuvY.mjs +1 -0
  166. package/dist/web-components/viewer/{Annotations-DHKvpN_g.mjs → Annotations-CWOZws4G.mjs} +1 -1
  167. package/dist/web-components/viewer/{Annotations-DE9evpU8.mjs → Annotations-QJwY12vU.mjs} +2 -2
  168. package/dist/web-components/viewer/{Canvas2DBackend-CRMajv3c.mjs → Canvas2DBackend-Dq1sGS3s.mjs} +1 -1
  169. package/dist/web-components/viewer/{CaptionDetails-B13rxFZq.mjs → CaptionDetails-CGDOCrYs.mjs} +1 -1
  170. package/dist/web-components/viewer/{ChaptersMenu-IAVcnwMF.mjs → ChaptersMenu-BVGIw8cd.mjs} +1 -1
  171. package/dist/web-components/viewer/{ChoiceMenu-CORn4IQ7.mjs → ChoiceMenu-DXtx4HdB.mjs} +1 -1
  172. package/dist/web-components/viewer/{Collection-CefKVGoo.mjs → Collection-ClhhirAW.mjs} +1 -1
  173. package/dist/web-components/viewer/{Connected-BwhumfiG.mjs → Connected-CTSiKTNf.mjs} +1 -1
  174. package/dist/web-components/viewer/{Connected-KiqCyCyf.mjs → Connected-DOY-Naeg.mjs} +1 -1
  175. package/dist/web-components/viewer/{Contents-DLGRh2XL.mjs → Contents-BWsN1JK-.mjs} +1 -1
  176. package/dist/web-components/viewer/{ControlMenu-DBSEW19Y.mjs → ControlMenu-DEOKCAsD.mjs} +1 -1
  177. package/dist/web-components/viewer/ControlsFade-F3WXrtje.mjs +1 -0
  178. package/dist/web-components/viewer/{CountMenu-C8_qWHK5.mjs → CountMenu-DvClBof9.mjs} +1 -1
  179. package/dist/web-components/viewer/{Cue-BwJDU9Vs.mjs → Cue-BmxIDuL5.mjs} +1 -1
  180. package/dist/web-components/viewer/{Document-CbMXbIZ9.mjs → Document-BX3ESBmL.mjs} +1 -1
  181. package/dist/web-components/viewer/{DomLayers-ByxbcmL1.mjs → DomLayers-DeNnWuMM.mjs} +1 -1
  182. package/dist/web-components/viewer/{Download-3rtn7gLF.mjs → Download-CyynSx61.mjs} +1 -1
  183. package/dist/web-components/viewer/{EntryBodies-BP12ovq7.mjs → EntryBodies-DZ_mD7uB.mjs} +1 -1
  184. package/dist/web-components/viewer/{EntryThumbnail-DpP82iU_.mjs → EntryThumbnail-K38dGhwP.mjs} +1 -1
  185. package/dist/web-components/viewer/{FieldPill-BSdPIm-Q.mjs → FieldPill-C_UF6ZAh.mjs} +1 -1
  186. package/dist/web-components/viewer/{FrameAnimation-DpoTQ3xX.mjs → FrameAnimation-cGSaR2q-.mjs} +1 -1
  187. package/dist/web-components/viewer/{Gallery-BtJZKRID.mjs → Gallery-CL9OUWFf.mjs} +1 -1
  188. package/dist/web-components/viewer/{GlobeGlyph-CI64v0-v.mjs → GlobeGlyph-BLPZZjDR.mjs} +1 -1
  189. package/dist/web-components/viewer/{HideToggle-CmpZYjui.mjs → HideToggle-ByatgBzX.mjs} +1 -1
  190. package/dist/web-components/viewer/{ImageControls-Da6YHXjJ.mjs → ImageControls-CoN01GaN.mjs} +1 -1
  191. package/dist/web-components/viewer/{LanguageChoice-CbS8ksEM.mjs → LanguageChoice-DVkqSRBi.mjs} +1 -1
  192. package/dist/web-components/viewer/{LanguageMenu-l2Me1RBQ.mjs → LanguageMenu-xvEnwzMZ.mjs} +1 -1
  193. package/dist/web-components/viewer/{LightboxView-BCDkk6yf.mjs → LightboxView-DLmclO17.mjs} +1 -1
  194. package/dist/web-components/viewer/{ListEnd-DFpeNm-y.mjs → ListEnd-J_WwUmjV.mjs} +1 -1
  195. package/dist/web-components/viewer/{MapView-DG-ZUI7R.mjs → MapView-BiBxplDX.mjs} +2 -2
  196. package/dist/web-components/viewer/MediaBody-CJhnYYL6.mjs +1 -0
  197. package/dist/web-components/viewer/{NavDate-DpToOfYG.mjs → NavDate-nxOEjrO5.mjs} +1 -1
  198. package/dist/web-components/viewer/{Navigator-UVu84RyI.mjs → Navigator-D3QlehK7.mjs} +1 -1
  199. package/dist/web-components/viewer/{PagerLayout-C3HEM9Ev.mjs → PagerLayout-B1-XIw-e.mjs} +1 -1
  200. package/dist/web-components/viewer/PanelPart-DyW5_Rra.mjs +1 -0
  201. package/dist/web-components/viewer/{PartOfManifest-CAG-54_j.mjs → PartOfManifest-CAC-bqDX.mjs} +1 -1
  202. package/dist/web-components/viewer/{PlaceBox-4kYT5bX0.mjs → PlaceBox-DZ_AsY_9.mjs} +1 -1
  203. package/dist/web-components/viewer/{Placeholder-BGtNqkT3.mjs → Placeholder-jLk6YqAj.mjs} +1 -1
  204. package/dist/web-components/viewer/{Search-lYKOtFBO.mjs → Search-D0XXCwfk.mjs} +1 -1
  205. package/dist/web-components/viewer/{SeekMarks-By4ZSK6u.mjs → SeekMarks-kqF4_JDD.mjs} +1 -1
  206. package/dist/web-components/viewer/{StandaloneItems-NfsSxROI.mjs → StandaloneItems-CoAZl3YR.mjs} +1 -1
  207. package/dist/web-components/viewer/{Steps-BOB1n3WM.mjs → Steps-DnVqL2EH.mjs} +1 -1
  208. package/dist/web-components/viewer/{TargetItems-vP03hWU8.mjs → TargetItems-ChlLcJoo.mjs} +1 -1
  209. package/dist/web-components/viewer/Transcript-wlRKtwQN.mjs +1 -0
  210. package/dist/web-components/viewer/{Transport-Qi3YTaFs.mjs → Transport-CFrec6tm.mjs} +1 -1
  211. package/dist/web-components/viewer/{Transport-B-GTF-rz.mjs → Transport-vP9xA_Gx.mjs} +1 -1
  212. package/dist/web-components/viewer/{annotation-collection-CqFki-7M.mjs → annotation-collection-q7AP__6I.mjs} +1 -1
  213. package/dist/web-components/viewer/{annotation-name-z-zyEc1-.mjs → annotation-name-RHoJtWTY.mjs} +1 -1
  214. package/dist/web-components/viewer/{annotations-content-xp-O7sy-.mjs → annotations-content-DKou29yn.mjs} +1 -1
  215. package/dist/web-components/viewer/{cloverEngine-BSk-sfvP.mjs → cloverEngine-CfvCtg8k.mjs} +1 -1
  216. package/dist/web-components/viewer/{content-state-reader-DL-mMGZi.mjs → content-state-reader-CIcgEINi.mjs} +1 -1
  217. package/dist/web-components/viewer/{dragToClose-vevhuGlo.mjs → dragToClose-Dh893LvI.mjs} +1 -1
  218. package/dist/web-components/viewer/{fetchManifest-C-_la_Ym.mjs → fetchManifest-DiKVgogv.mjs} +1 -1
  219. package/dist/web-components/viewer/{host-DHOefZ2L.mjs → host-DvNUWiOC.mjs} +1 -1
  220. package/dist/web-components/viewer/{image-layers-qNcOTmq3.mjs → image-layers-D85mcQg9.mjs} +1 -1
  221. package/dist/web-components/viewer/{image-service-content-D63obMOY.mjs → image-service-content-DEUyaFeu.mjs} +1 -1
  222. package/dist/web-components/viewer/index.mjs +1 -1
  223. package/dist/web-components/viewer/{link-BZAbKwFF.mjs → link-CnK2NYvI.mjs} +1 -1
  224. package/dist/web-components/viewer/{overlayImage-oEpv2EvC.mjs → overlayImage-R9Zezo4z.mjs} +1 -1
  225. package/dist/web-components/viewer/{range-regions-YtOKXMW8.mjs → range-regions-05LyjCp-.mjs} +1 -1
  226. package/dist/web-components/viewer/{renderers-BdXu40PJ.mjs → renderers-CCCV00W7.mjs} +1 -1
  227. package/dist/web-components/viewer/{save-file-Cktvr4HF.mjs → save-file-CfJs-YGx.mjs} +1 -1
  228. package/dist/web-components/viewer/{search-CSjEe4Yv.mjs → search-C1ilZs9L.mjs} +1 -1
  229. package/dist/web-components/viewer/{useControlsVisibility-CBeiyfcO.mjs → useControlsVisibility-ClXlo1D0.mjs} +1 -1
  230. package/dist/web-components/viewer/viewer-CnLcEv1Z.mjs +29 -0
  231. package/dist/web-components/viewer/{vtt-BRwEspJw.mjs → vtt-BHvZVfxa.mjs} +1 -1
  232. package/dist/web-components/{viewer-BomG9B8d.mjs → viewer-Ct2JoYxV.mjs} +1 -1
  233. package/dist/web-components/{vtt-Cx6_Tym1.mjs → vtt-Dd_mIfSs.mjs} +1 -1
  234. package/package.json +1 -1
  235. package/dist/web-components/AnnotationItems-DNur2mn_.mjs +0 -1
  236. package/dist/web-components/AnnotationState-BVDRV-1B.mjs +0 -1
  237. package/dist/web-components/Collection-CASEkwgi.mjs +0 -1
  238. package/dist/web-components/Connected-Biw2I6Po.mjs +0 -1
  239. package/dist/web-components/ControlsFade-DcPvrXFf.mjs +0 -1
  240. package/dist/web-components/Cue-CrnTNjnn.mjs +0 -1
  241. package/dist/web-components/FrameAnimation-BpHvVjI3.mjs +0 -1
  242. package/dist/web-components/Label-CvbxytPx.mjs +0 -1
  243. package/dist/web-components/LoadedCanvas-HQwMz-9o.mjs +0 -1
  244. package/dist/web-components/LoadedMap-Totn9tyS.mjs +0 -1
  245. package/dist/web-components/MapView-Bf4alyhB.mjs +0 -3
  246. package/dist/web-components/MediaBody-1FBP2j7l.mjs +0 -1
  247. package/dist/web-components/PagerLayout-C6kl1hk2.mjs +0 -1
  248. package/dist/web-components/PanelPart-B_2EB7jQ.mjs +0 -1
  249. package/dist/web-components/Primitives-Ea4kfG9I.mjs +0 -1
  250. package/dist/web-components/Provider-D9_x7agY.mjs +0 -1
  251. package/dist/web-components/Root-Cju5jUFL.mjs +0 -1
  252. package/dist/web-components/Scene-B6doLHT0.mjs +0 -1
  253. package/dist/web-components/StandaloneItems-aPSHNgk2.mjs +0 -1
  254. package/dist/web-components/Timeline-Cj9cCYCA.mjs +0 -1
  255. package/dist/web-components/Transcript-bQaRVoI_.mjs +0 -1
  256. package/dist/web-components/image-layers-zWauwKEw.mjs +0 -1
  257. package/dist/web-components/items-DUZSfcSf.mjs +0 -1
  258. package/dist/web-components/label-BswVRwfJ.mjs +0 -1
  259. package/dist/web-components/layout-NPxKIp1S.mjs +0 -1
  260. package/dist/web-components/logo-Ccv2scvi.mjs +0 -1
  261. package/dist/web-components/part-C7WLTw20.mjs +0 -1
  262. package/dist/web-components/readingLanguages-C83aK9na.mjs +0 -1
  263. package/dist/web-components/shared-CzlxExGR.mjs +0 -1
  264. package/dist/web-components/viewer/AnnotationState-Blwq33RX.mjs +0 -1
  265. package/dist/web-components/viewer/ControlsFade-CQ-g8cVb.mjs +0 -1
  266. package/dist/web-components/viewer/MediaBody-byvlUB_B.mjs +0 -1
  267. package/dist/web-components/viewer/PanelPart-7DmaKxVo.mjs +0 -1
  268. package/dist/web-components/viewer/Transcript-CCn5yqeZ.mjs +0 -1
  269. package/dist/web-components/viewer/viewer-B7xAOtQD.mjs +0 -29
@@ -25,7 +25,7 @@ import { EntryThumbnail } from "../../ui/EntryThumbnail.mjs";
25
25
  import { useLoaded } from "../../hooks/useLoaded.mjs";
26
26
  import { HideToggle } from "../../ui/HideToggle.mjs";
27
27
  import { visuallyHidden } from "../../ui/visuallyHidden.mjs";
28
- import { startingLanguage } from "../../core/language-choice.mjs";
28
+ import { startingLanguage } from "../../i18n/languages.mjs";
29
29
  import { useReadingLanguages, covers } from "../../react/readingLanguages.mjs";
30
30
  import { LanguageChoice } from "../../ui/LanguageChoice.mjs";
31
31
  import { languagesOf, inLanguage } from "./languages.mjs";
@@ -65,7 +65,7 @@ function AnnotationState({
65
65
  return quiet.length ? [...ownHiddenPages, ...quiet] : ownHiddenPages;
66
66
  }, [ownHiddenPages, ownShownPages, ownQuietPages]);
67
67
  const hiddenPages = hiddenPagesProp ?? ownPages;
68
- const unlistedPages = unlistedPagesProp ?? ownQuietPages;
68
+ const unlistedPages = unlistedPagesProp ?? NO_PAGES;
69
69
  const listed = useCallback(
70
70
  (list) => unlistedPages.length ? list.filter(
71
71
  (each) => !each.pageId || !unlistedPages.includes(each.pageId)
@@ -178,7 +178,10 @@ const CanvasBody = (props) => {
178
178
  optionsRef.current = options;
179
179
  const direction = resolveDirection(viewingDirection);
180
180
  const choices = useMemo(() => findChoices(canvases ?? []), [canvases]);
181
- const starting = useMemo(() => startingChoices(choices), [choices]);
181
+ const starting = useMemo(
182
+ () => startingChoices(choices, language),
183
+ [choices, language]
184
+ );
182
185
  const [picked, setSelections] = useState({});
183
186
  const selections = useMemo(
184
187
  () => ({ ...starting, ...picked }),
@@ -5,6 +5,7 @@ import CanvasView from "./CanvasView.mjs";
5
5
  import { useRangeChapters, applyTarget } from "./fromManifest.mjs";
6
6
  import { paintedMedia, canvasCaptions } from "./layout.mjs";
7
7
  import { selectDrawnSets, selectUnlistedSets, selectHiddenSets } from "../../core/annotation-sets.mjs";
8
+ import { searchServiceOf } from "../../core/search-service.mjs";
8
9
  import { showLink } from "../../core/show-link.mjs";
9
10
  import { chaptersOf } from "../../core/ranges.mjs";
10
11
  import { hasBehavior } from "../../core/selectors.mjs";
@@ -60,7 +61,8 @@ const ConnectedCanvas = ({
60
61
  state.manifest,
61
62
  state.addedSets,
62
63
  state.hiddenSets,
63
- state.shownSets
64
+ state.shownSets,
65
+ Boolean(searchServiceOf(state.manifest))
64
66
  )
65
67
  );
66
68
  const hiddenSets = useCloverSelector(
@@ -5,6 +5,7 @@ import { findImageServiceId } from "../../lib/renderer/sources/imageService.mjs"
5
5
  import { parseTime } from "../../lib/time.mjs";
6
6
  import { choiceKey as choiceKey$1 } from "../../core/choice-key.mjs";
7
7
  import { asArray } from "../../lib/asArray.mjs";
8
+ import { startingLanguage } from "../../i18n/languages.mjs";
8
9
  import { isHls } from "../../lib/hls.mjs";
9
10
  const TIME_BASED_CANVAS = { width: 1600, height: 900 };
10
11
  function arrangeCanvases(canvases, direction) {
@@ -65,7 +66,8 @@ function findChoices(canvases) {
65
66
  label: item.label,
66
67
  id: item.id,
67
68
  ...typeof item.type === "string" ? { type: item.type } : {},
68
- ...typeof item.format === "string" ? { format: item.format } : {}
69
+ ...typeof item.format === "string" ? { format: item.format } : {},
70
+ ...typeof asArray(item.language)[0] === "string" ? { language: asArray(item.language)[0] } : {}
69
71
  }))
70
72
  });
71
73
  }
@@ -83,10 +85,15 @@ function playsHere(item) {
83
85
  if (typeof tester.canPlayType !== "function") return true;
84
86
  return tester.canPlayType(item.format) !== "";
85
87
  }
86
- function startingChoices(groups) {
88
+ function startingChoices(groups, language) {
87
89
  const chosen = {};
88
90
  for (const group of groups) {
89
- const first = group.items.findIndex(playsHere);
91
+ const offered = group.items.filter(playsHere);
92
+ const tags = [...new Set(offered.flatMap((item) => item.language ?? []))];
93
+ const tag = tags.length > 1 ? startingLanguage(tags, language) : void 0;
94
+ const first = group.items.findIndex(
95
+ (item) => playsHere(item) && (!tag || item.language === tag)
96
+ );
90
97
  if (first > 0) chosen[group.key] = first;
91
98
  }
92
99
  return chosen;
@@ -11,6 +11,7 @@ import { hasCamera } from "../surface.mjs";
11
11
  import { useOptionalClover } from "../../../react/context.mjs";
12
12
  import { BodyUnloadable } from "../../../ui/BodyUnloadable.mjs";
13
13
  import { languageProps } from "../../../i18n/direction.mjs";
14
+ import { startingLanguage } from "../../../i18n/languages.mjs";
14
15
  import { adoptSheet } from "../../../ui/adoptSheet.mjs";
15
16
  import __clover_sheet_media from "../../../ui/sheets/media.mjs";
16
17
  const SKIP_SECONDS = 10;
@@ -100,7 +101,16 @@ const MediaBody = ({
100
101
  }),
101
102
  [media.captions, language]
102
103
  );
103
- const captions = useCaptionTracks(element, own, media.id);
104
+ const startCaption = useMemo(() => {
105
+ const tags = media.captions.flatMap((caption2) => caption2.language ?? []);
106
+ if (tags.length < 2) return 0;
107
+ const tag = startingLanguage(tags, language);
108
+ return Math.max(
109
+ 0,
110
+ media.captions.findIndex((caption2) => caption2.language === tag)
111
+ );
112
+ }, [media.captions, language]);
113
+ const captions = useCaptionTracks(element, own, media.id, startCaption);
104
114
  const { active: shown, select } = captions;
105
115
  useEffect(() => {
106
116
  if (!caption || shown < 0) return;
@@ -17,15 +17,15 @@ function inSystemPlayer(video, type) {
17
17
  const pictureInPicture = type !== "leavepictureinpicture" && (video.webkitPresentationMode === "picture-in-picture" || typeof document !== "undefined" && document.pictureInPictureElement === video);
18
18
  return fullscreen || pictureInPicture;
19
19
  }
20
- function useCaptionTracks(element, own, key) {
20
+ function useCaptionTracks(element, own, key, start = 0) {
21
21
  const ownCount = own.length;
22
- const first = ownCount ? 0 : -1;
22
+ const first = ownCount ? Math.min(Math.max(start, 0), ownCount - 1) : -1;
23
23
  const [selection, setSelection] = useState({
24
24
  choice: first,
25
25
  picked: false,
26
26
  key
27
27
  });
28
- if (selection.key !== key) {
28
+ if (selection.key !== key || !selection.picked && typeof selection.choice === "number" && selection.choice >= 0 && selection.choice !== first) {
29
29
  setSelection({ choice: first, picked: false, key });
30
30
  }
31
31
  const { choice, picked } = selection;
@@ -6,7 +6,6 @@ import { AboutActions } from "./AboutActions.mjs";
6
6
  import { InPanelContext } from "./ReadingLanguages.mjs";
7
7
  import { Tip } from "../../ui/Tip.mjs";
8
8
  import { Close } from "../Body/glyphs.mjs";
9
- import { SEARCH_SET_ID } from "../../core/search-service.mjs";
10
9
  import { usePanelSections } from "./sections.mjs";
11
10
  import { langWithin } from "../../i18n/config.mjs";
12
11
  import { languageToRead } from "../../i18n/languages.mjs";
@@ -16,6 +15,7 @@ import { useClover, useCloverSelector } from "../../react/context.mjs";
16
15
  import { Sections } from "../../ui/Sections.mjs";
17
16
  import { useContainerName } from "../../i18n/useContainerName.mjs";
18
17
  import { languageProps } from "../../i18n/direction.mjs";
18
+ import { SEARCH_SET_ID } from "../../core/search-set-id.mjs";
19
19
  const RootMap = lazy(
20
20
  () => import("../Map/MapView.mjs").then((module) => ({ default: module.RootMap }))
21
21
  );
@@ -10,7 +10,7 @@ import { loadVtt, loadText, parseVtt, paragraphsOf, cueAt } from "../../core/vtt
10
10
  import { useCloverTranslation } from "../../i18n/useCloverTranslation.mjs";
11
11
  import { join } from "../../lib/classnames.mjs";
12
12
  import { playFrom } from "../../lib/time.mjs";
13
- import { sameLanguage } from "../../i18n/languages.mjs";
13
+ import { startingLanguage, sameLanguage } from "../../i18n/languages.mjs";
14
14
  import { languageProps } from "../../i18n/direction.mjs";
15
15
  import { useClover, useCloverSelector } from "../../react/context.mjs";
16
16
  import { useReadingLanguages, covers } from "../../react/readingLanguages.mjs";
@@ -73,18 +73,25 @@ const Transcript = forwardRef(
73
73
  const [choice, setChoice] = useState(0);
74
74
  const track = tracks[choice] ?? tracks[0];
75
75
  const offered = useReadingLanguages();
76
- const rootLanguage = (offered == null ? void 0 : offered.chosen) ?? language;
76
+ const startLanguage = useMemo(() => {
77
+ const chosen = (offered == null ? void 0 : offered.chosen) ?? language;
78
+ if (chosen) return chosen;
79
+ const tags = tracks.flatMap(
80
+ (option) => option.language && option.language !== "none" ? [option.language] : []
81
+ );
82
+ return tags.length > 1 ? startingLanguage(tags) : void 0;
83
+ }, [offered == null ? void 0 : offered.chosen, language, tracks]);
77
84
  useEffect(() => {
78
- if (!rootLanguage) return;
85
+ if (!startLanguage) return;
79
86
  const index = tracks.findIndex(
80
- (option) => option.language && option.language !== "none" && sameLanguage(option.language, rootLanguage)
87
+ (option) => option.language && option.language !== "none" && sameLanguage(option.language, startLanguage)
81
88
  );
82
89
  if (index < 0) return;
83
90
  setChoice(index);
84
91
  const file = tracks[index];
85
92
  if (isCaptionTrack(file) && clover.captions.get() !== file.id)
86
93
  clover.captions.emit(file.id);
87
- }, [rootLanguage, tracks, clover]);
94
+ }, [startLanguage, tracks, clover]);
88
95
  useEffect(() => {
89
96
  const follow2 = (id2) => {
90
97
  const index = tracks.findIndex(
@@ -2,7 +2,7 @@
2
2
  import { isRegionText, parseAnnotationTarget } from "./annotations.mjs";
3
3
  import { readBodies } from "./annotation-bodies.mjs";
4
4
  import { asArray } from "../lib/asArray.mjs";
5
- import { SEARCH_SET_ID } from "./search-service.mjs";
5
+ import { SEARCH_SET_ID } from "./search-set-id.mjs";
6
6
  import { selectSequence, selectCanvas } from "./selectors.mjs";
7
7
  const CONTENTS_SET_ID = "contents";
8
8
  const regionEntryId = (rangeId, index) => `${rangeId}#region-${index + 1}`;
@@ -234,13 +234,14 @@ function selectHiddenSets(manifest, added, hidden, shown) {
234
234
  return ids;
235
235
  }
236
236
  const unlistedOf = /* @__PURE__ */ new WeakMap();
237
- function selectUnlistedSets(manifest, added, hidden, shown) {
237
+ const ALWAYS_UNLISTED = [SEARCH_SET_ID, CONTENTS_SET_ID];
238
+ function selectUnlistedSets(manifest, added, hidden, shown, searchable) {
239
+ if (!searchable) return ALWAYS_UNLISTED;
238
240
  const drawnHidden = selectHiddenSets(manifest, added, hidden, shown);
239
241
  const cached = unlistedOf.get(drawnHidden);
240
242
  if (cached && cached.hidden === hidden) return cached.ids;
241
243
  const ids = [
242
- SEARCH_SET_ID,
243
- CONTENTS_SET_ID,
244
+ ...ALWAYS_UNLISTED,
244
245
  ...drawnHidden.filter((id) => !hidden.includes(id))
245
246
  ];
246
247
  unlistedOf.set(drawnHidden, { hidden, ids });
@@ -4,8 +4,9 @@ import { buildContentState } from "./content-state.mjs";
4
4
  import { fetchResource, loadContent, loadManifest } from "./load.mjs";
5
5
  import { referencedPages, fetchPage, embedPage } from "./pages.mjs";
6
6
  import { selectSequence, selectVisibleCanvases, selectCanvas, canvasOfView, selectPosition, selectStart } from "./selectors.mjs";
7
- import { searchServiceOf, SEARCH_SET_ID } from "./search-service.mjs";
7
+ import { searchServiceOf } from "./search-service.mjs";
8
8
  import { createStore, createChannel } from "./store.mjs";
9
+ import { SEARCH_SET_ID } from "./search-set-id.mjs";
9
10
  function navigationOf(clover, position, total) {
10
11
  return {
11
12
  position,
@@ -1,12 +1,5 @@
1
1
  "use client";
2
- import { languageToRead } from "../i18n/languages.mjs";
3
2
  import { localize } from "./value.mjs";
4
- function startingLanguage(languages, language, picked) {
5
- if (picked && languages.includes(picked)) return picked;
6
- if (!languages.length) return void 0;
7
- const tag = languageToRead(languages, language);
8
- return tag === "none" ? languages[0] : tag;
9
- }
10
3
  const keysOf = (value) => value && typeof value === "object" && !Array.isArray(value) ? Object.keys(value).filter(
11
4
  (tag) => tag !== "none" && tag !== "@none" && localize({ [tag]: value[tag] }).text
12
5
  ) : [];
@@ -25,6 +18,5 @@ function descriptionLanguages(manifest) {
25
18
  return [...new Set(tags.flat())];
26
19
  }
27
20
  export {
28
- descriptionLanguages,
29
- startingLanguage
21
+ descriptionLanguages
30
22
  };
@@ -1,6 +1,5 @@
1
1
  "use client";
2
2
  import { asArray } from "../lib/asArray.mjs";
3
- const SEARCH_SET_ID = "content-search";
4
3
  const VERSION = /\/search\/([0-2])\//;
5
4
  function searchServiceOf(manifest) {
6
5
  if (!manifest) return null;
@@ -17,6 +16,5 @@ function searchServiceOf(manifest) {
17
16
  return found;
18
17
  }
19
18
  export {
20
- SEARCH_SET_ID,
21
19
  searchServiceOf
22
20
  };
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ const SEARCH_SET_ID = "content-search";
3
+ export {
4
+ SEARCH_SET_ID
5
+ };
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { parseAnnotationTarget } from "./annotations.mjs";
3
3
  import { fetchJson } from "./request.mjs";
4
- import { SEARCH_SET_ID } from "./search-service.mjs";
5
4
  import { asArray } from "../lib/asArray.mjs";
5
+ import { SEARCH_SET_ID } from "./search-set-id.mjs";
6
6
  const MAX_PAGES = 10;
7
7
  async function searchInto(store, service, query, request, signal) {
8
8
  var _a, _b;
@@ -65,6 +65,12 @@ function languageToRead(tags, language) {
65
65
  const [first, ...rest] = language ? [language] : readerLanguages();
66
66
  return closestLanguage(first, tags, rest) ?? tags[0];
67
67
  }
68
+ function startingLanguage(languages, language, picked) {
69
+ if (picked && languages.includes(picked)) return picked;
70
+ if (!languages.length) return void 0;
71
+ const tag = languageToRead(languages, language);
72
+ return tag === "none" ? languages[0] : tag;
73
+ }
68
74
  export {
69
75
  baseLanguage,
70
76
  closestLanguage,
@@ -74,5 +80,6 @@ export {
74
80
  readerLanguages,
75
81
  sameLanguage,
76
82
  scriptLanguage,
83
+ startingLanguage,
77
84
  visitorLanguages
78
85
  };
@@ -3,6 +3,7 @@ const loaders = {
3
3
  es: () => import("./es.json.mjs"),
4
4
  fi: () => import("./fi.json.mjs"),
5
5
  fr: () => import("./fr.json.mjs"),
6
+ it: () => import("./it.json.mjs"),
6
7
  ja: () => import("./ja.json.mjs"),
7
8
  nb: () => import("./nb.json.mjs"),
8
9
  nn: () => import("./nn.json.mjs"),
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ const it = JSON.parse('{"commonClose":"Chiudi","commonNext":"Successivo","commonPrevious":"Precedente","commonSearch":"Cerca","commonViewAll":"Mostra tutto","controlShortcut":"{{label}} ({{shortcut}})","contentSearchLoading":"Caricamento...","contentSearchPlaceholder":"Cerca","contentSearchResultsNone":"Nessun risultato","contentSearchResult":"1 risultato","contentSearchResults":"{{count}} risultati","contentSearchError":"Non è stato possibile completare la ricerca.","contentSearchPosition":"Risultato {{index}} di {{total}}","contentSearchClear":"Cancella la ricerca","canvasPosition":"Elemento {{index}} di {{total}}","canvasImage":"Immagine","bodyUnloadableImage":"Non è stato possibile caricare questa immagine.","bodyUnloadableVideo":"Non è stato possibile caricare questo video.","bodyUnloadableAudio":"Non è stato possibile caricare questo audio.","bodyUnloadableModel":"Non è stato possibile caricare questo modello.","canvasRoleDescription":"immagine ingrandibile","canvasKeysImage":"Usa i tasti freccia per spostare l’immagine, con Maiusc per passi più ampi, più e meno per ingrandire e ridurre, 0 per ripristinare la vista e R o Maiusc+R per ruotarla.","canvasKeysMedia":"Premi Spazio o K per riprodurre o mettere in pausa, J o L per tornare indietro o andare avanti di dieci secondi e M per disattivare o riattivare l’audio.","canvasKeysAnnotations":"Premi Esc per deselezionare l’annotazione.","sceneModel":"Modello 3D","sceneRoleDescription":"modello 3D ruotabile","sceneKeys":"Usa i tasti freccia per ruotare il modello, con Maiusc per passi più ampi, più e meno per ingrandire e ridurre, 0 per ripristinare la vista e R o Maiusc+R per ruotarlo a destra o a sinistra.","sceneRotateUp":"Ruota verso l’alto","sceneRotateDown":"Ruota verso il basso","sceneRotate":"Ruota","sceneResetView":"Ripristina la vista","statusLoading":"Caricamento…","statusError":"Non è stato possibile caricare questo contenuto.","itemsLabel":"Elementi","download":"Scarica","downloadPage":"Questa pagina","downloadAll":"Tutte le pagine","templateSidebar":"Elementi","templateSidebarToggle":"Mostra gli elementi","templateBack":"Indietro","templateBackTo":"Torna a {{label}}","collectionLabel":"Collezione","itemsScrollBack":"Mostra gli elementi precedenti","itemsScrollForward":"Mostra altri elementi","aboutRights":"Diritti","aboutDate":"Data","aboutHomepage":"Pagina iniziale","aboutSeeAlso":"Vedi anche","aboutProvider":"Fornitore","logo":"Logo","aboutManifest":"Manifest IIIF","aboutCanvas":"Canvas IIIF","aboutPartOf":"Parte di","aboutOpenManifest":"Apri il manifest completo","aboutCollection":"Collezione IIIF","readingLanguage":"Lingua","annotationsHide":"Nascondi le annotazioni","annotationsHideTip":"Nascondi","readMore":"Leggi tutto","readLess":"Mostra meno","annotationsShow":"Mostra sull’immagine","annotationsShowTime":"Mostra nella registrazione","annotationsImage":"Immagine","annotationsLanguage":"Lingua","annotationsOpenLink":"Apri il link","transcriptLabel":"Trascrizione","imageViewerOpen":"Apri il visualizzatore di immagini","imageViewerClose":"Chiudi il visualizzatore di immagini","canvasChoice":"Alternative","canvasViewerControls":"Controlli del visualizzatore","canvasExpandControls":"Espandi i controlli del visualizzatore","canvasCollapseControls":"Comprimi i controlli del visualizzatore","canvasScrollBack":"Mostra i controlli precedenti","canvasScrollForward":"Mostra altri controlli","imageFullScreen":"Schermo intero","imageExitFullScreen":"Esci da schermo intero","imageResetZoom":"Ripristina lo zoom","imageRotateLeft":"Ruota a sinistra","imageRotateRight":"Ruota a destra","imageZoomIn":"Ingrandisci","imageZoomOut":"Riduci","informationPanelTabs":"Pannello informazioni","sectionsScrollBack":"Mostra le schede precedenti","sectionsScrollForward":"Mostra altre schede","informationPanelClose":"Chiudi il pannello informazioni","informationPanelTabsAbout":"Informazioni","informationPanelTabsAnnotations":"Annotazioni","informationPanelTabsSearch":"Ricerca","informationPanelTabsContents":"Indice","contentsSectionsIn":"Sezioni di","informationPanelTabsMap":"Mappa","informationPanelTabsCollection":"Collezione","informationPanelTabsTargets":"Viste","mapUnavailable":"Non è stato possibile mostrare la mappa.","mapLabel":"Mappa","mapAttribution":"Crediti della mappa","mapPlaceUntitled":"Luogo {{number}}","mapOverlay":"Immagine georeferenziata","mapPlacesListed":"Luoghi elencati dopo la mappa: {{count}}","informationPanelToggle":"Altre informazioni","playerPlay":"Riproduci","playerPause":"Pausa","playerMute":"Disattiva l’audio","playerUnmute":"Riattiva l’audio","playerVolume":"Volume","playerSeek":"Posizione di riproduzione","playerCaptions":"Sottotitoli","playerCaptionsOff":"Disattivati","playerChapters":"Capitoli","playerFill":"Riempi il riquadro","playerFit":"Adatta al riquadro","frameRepeat":"Ripeti","playerCurrentTime":"Tempo trascorso","playerDuration":"Durata","splitHandle":"Ridimensiona i pannelli"}');
3
+ export {
4
+ it as default
5
+ };
package/dist/index.d.mts CHANGED
@@ -312,6 +312,12 @@ export declare function buildContentState({ manifestId, canvasId, type, region,
312
312
  * Everything is fetched once, with the request settings, and upgraded to Presentation 4.
313
313
  */
314
314
  export type IIIFContent = string | Record<string, unknown>;
315
+ /**
316
+ * The id of a search's hits as an annotation set, so hosts and parts can tell search
317
+ * hotspots from annotations. A module of its own, so what only needs the id (the
318
+ * annotation sets a Canvas alone reads) never loads the search service's reader with it.
319
+ */
320
+ export declare const SEARCH_SET_ID = "content-search";
315
321
  /**
316
322
  * IIIF Content Search, versions 1 and 2: finding the Manifest's service, asking it, and
317
323
  * reading the answer into hits to list and an annotation set to draw.
@@ -348,8 +354,6 @@ export interface SearchResults {
348
354
  /** The hits as an annotation set, so the Canvas draws them where they are. */
349
355
  set: AnnotationSet;
350
356
  }
351
- /** The set's id, so hosts and parts can tell search hotspots from annotations. */
352
- export declare const SEARCH_SET_ID = "content-search";
353
357
  /** The Manifest's Content Search service (2 preferred over 1), or null. */
354
358
  export declare function searchServiceOf(manifest: Manifest | null): SearchService | null;
355
359
  /**
@@ -1192,8 +1196,8 @@ export interface CloverCanvasProps {
1192
1196
  /**
1193
1197
  * AnnotationPages drawn (while not hidden) but never offered in the annotations menu,
1194
1198
  * as the Annotations list leaves them out: a search's hits, which Search lists, and a
1195
- * still Canvas's OCR, which a search finds in. Leave it out for the Canvas to keep its
1196
- * own OCR out.
1199
+ * still Canvas's OCR where a search finds in it. Leave it out for the Canvas to offer
1200
+ * its own OCR, hidden to start, as it has no search.
1197
1201
  */
1198
1202
  unlistedPages?: string[];
1199
1203
  /** The reader hid AnnotationPages from the picture (`visible` false), or showed them. */
package/dist/index.mjs CHANGED
@@ -20,7 +20,8 @@ import { Download } from "./components/Download/Download.mjs";
20
20
  import { Split, SplitHandle, SplitPane } from "./components/Split/Split.mjs";
21
21
  import { Search } from "./components/Search/Search.mjs";
22
22
  import { search } from "./core/search.mjs";
23
- import { SEARCH_SET_ID, searchServiceOf } from "./core/search-service.mjs";
23
+ import { SEARCH_SET_ID } from "./core/search-set-id.mjs";
24
+ import { searchServiceOf } from "./core/search-service.mjs";
24
25
  import { CloverMap } from "./components/Map/Map.mjs";
25
26
  import { affineTransform, boundsOf, cornersOf, georeferencesOf, navPlaceOf, readGeoreference } from "./core/geo.mjs";
26
27
  import { hasMapData } from "./core/geo-detect.mjs";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { useMemo } from "react";
3
- import { descriptionLanguages, startingLanguage } from "../core/language-choice.mjs";
4
- import { sameLanguage } from "../i18n/languages.mjs";
3
+ import { descriptionLanguages } from "../core/language-choice.mjs";
4
+ import { startingLanguage, sameLanguage } from "../i18n/languages.mjs";
5
5
  import { useClover, useCloverSelector } from "./context.mjs";
6
6
  function useReadingLanguages() {
7
7
  const { language, chooseLanguage, toggleDrawn } = useClover("About");
@@ -1 +1 @@
1
- import{e as M,y as j,u as t,z as C,P as N,X as w,a as x,Q as $,x as H,c as _,A as G,b as U,Y as T,U as V,l as k}from"./shared-CzlxExGR.mjs";import{j as B}from"./classnames-DukgfdpI.mjs";import{u as Q}from"./readingLanguages-C83aK9na.mjs";import{Thumbnail as W,Summary as R,Metadata as X,RequiredStatement as Y,Rights as E,Homepage as J,SeeAlso as Z,Id as K}from"./Primitives-Ea4kfG9I.mjs";import{u as ee}from"./downloads-CurHNK9M.mjs";import{P as te}from"./Provider-D9_x7agY.mjs";import{a as oe,t as ae}from"./heading-Cjt0f-Eu.mjs";import{L as ne}from"./Label-CvbxytPx.mjs";import{r as re}from"./dates-DR3gfcON.mjs";import"./styles-C51FhQQr.mjs";const se=C(()=>import("./LanguageChoice-BJd_RsYq.mjs").then(e=>e.b).then(e=>({default:e.LanguageChoice}))),le=e=>{var r;const s=e.closest(".clover-sections-actions"),a=(r=s==null?void 0:s.closest(".clover-sections-item"))==null?void 0:r.querySelector(".clover-sections-heading .clover-sections-label");return s&&a?{box:s,label:a}:null},ce=e=>void w.chooseInterfaceLanguage(e);function ue(){x();const{languages:e,chosen:s}=w.interfaceLanguages();return e.length>1?{languages:e,chosen:s}:null}function ie({values:e=true,interfaceLanguages:s=true}={}){const a=Q(),r=ue(),l=e?(a==null?void 0:a.languages)??[]:[],c=o=>l.some(b=>b===o||w.stringsFor(b)===o),g=[...l,...(s?(r==null?void 0:r.languages)??[]:[]).filter(o=>!c(o))];if(g.length<2)return null;const P=w.chosenLanguage,h=P&&w.stringsFor(P),L=h&&g.includes(h)&&!c(h)?h:e&&a?a.chosen:(r==null?void 0:r.chosen)??g[0];return{languages:g,chosen:L,onChange:o=>l.includes(o)&&a?a.onChange(o):ce(o)}}function me({values:e,interfaceLanguages:s}){const a=ie({values:e,interfaceLanguages:s}),{drawsToggle:r}=M("About"),l=!!a;return j(()=>l?r==null?void 0:r():void 0,[l,r]),a?t(N,{fallback:null,children:t(se,{...a,nameKey:"readingLanguage",part:"clover-about",fit:le})}):null}const de=$(false),ge=C(()=>import("./Download-WldBPDxr.mjs").then(({DownloadGroups:e})=>({default:e}))),he=C(()=>import("./NavDate-rtQNHF_X.mjs").then(e=>e.a).then(({NavDate:e})=>({default:e}))),be=C(()=>import("./PartOfManifest-ydDwjNTt.mjs"));function fe({languages:e=true,interfaceLanguages:s=true,...a}){const r=H(de);return t(ve,{...a,download:!r&&a.download!==false,choice:r?null:t(me,{values:e,interfaceLanguages:s})})}function ve({choice:e,canvasSummary:s=false,headingLevel:a=3,download:r=true,thumbnail:l=true,label:c=true,className:g,...P}){const{t:h,langOf:L}=x(),v=ee(),o=_(n=>n.manifest,Object.is,"About"),b=G(null);j(()=>{const n=b.current,i=n==null?void 0:n.querySelector(".clover-about-head");if(!n||!i||typeof ResizeObserver>"u")return;const m=new Set,d=()=>{const D=i.querySelector(".clover-about-thumbnail"),A=i.querySelector(".clover-about-label");for(const S of[D,A])S&&!m.has(S)&&(m.add(S),y.observe(S));const f=n.style;if(!D){f.removeProperty("--clover-about-label-height"),f.removeProperty("--clover-about-thumbnail-width");return}const O=`${(A==null?void 0:A.offsetHeight)??0}px`,q=`${D.offsetWidth}px`;f.getPropertyValue("--clover-about-label-height")!==O&&f.setProperty("--clover-about-label-height",O),f.getPropertyValue("--clover-about-thumbnail-width")!==q&&f.setProperty("--clover-about-thumbnail-width",q)};let p=0;const y=new ResizeObserver(()=>{cancelAnimationFrame(p),p=requestAnimationFrame(d)});return y.observe(i),d(),()=>{cancelAnimationFrame(p),y.disconnect(),n.style.removeProperty("--clover-about-label-height"),n.style.removeProperty("--clover-about-thumbnail-width")}},[c,l,o]);const z=U(),F=()=>{var m,d;const n=b.current;(d=((m=n==null?void 0:n.closest(".clover-sections-item"))==null?void 0:m.querySelector(".clover-sections-button"))??n)==null||d.focus({preventScroll:true})};if(!o)return null;const u=(n,i,m)=>{if(!i)return null;const{as:d,title:p,group:y}=ae(a,`${z}-${n}`);return t("section",{className:"clover-about-section",...y,children:[t(d,{className:"clover-about-heading",...k(L(n)),...p,children:h(n)}),m]})},I=n=>Array.isArray(o[n])?o[n].length>0:!!o[n];return t("div",{ref:b,className:B("clover-about",g),tabIndex:-1,...P,children:[e,(l||c)&&t("div",{className:"clover-about-head",children:[l&&t(W,{className:"clover-about-thumbnail",size:256,alt:c?"":void 0}),c&&t(ne,{as:oe(a),className:"clover-about-label clover-title"})]}),s&&t(R,{of:"canvas",className:"clover-about-summary"}),T(o)&&o.partOf&&t(N,{fallback:null,children:t(be,{manifest:o,headingLevel:a,onOpened:F})}),t(R,{className:"clover-about-summary"}),t(X,{className:"clover-about-metadata"}),t(Y,{className:"clover-about-metadata"}),u("aboutDate",re(o.navDate),t(N,{fallback:null,children:t(he,{value:o.navDate,className:"clover-about-date"})})),u("aboutProvider",I("provider"),t(te,{})),u("aboutRights",o.rights,t(E,{})),u("aboutHomepage",I("homepage"),t(J,{})),u("aboutSeeAlso",I("seeAlso"),t(Z,{})),u("download",r&&v.page.length+v.all.length>0,t(N,{fallback:null,children:t(ge,{page:v.page,all:v.all,headingLevel:a+1})})),u(T(o)?"aboutCanvas":"aboutManifest",!V(o)&&o.id,t(K,{}))]})}const De=Object.freeze(Object.defineProperty({__proto__:null,About:fe},Symbol.toStringTag,{value:"Module"}));export{fe as A,de as I,me as L,De as a,ie as u};
1
+ import{e as M,y as j,u as t,z as C,P as N,Y as w,a as x,Q as $,x as H,c as _,A as V,b as G,Z as T,V as k,l as B}from"./shared-D7rQBuil.mjs";import{j as Q}from"./classnames-DukgfdpI.mjs";import{u as U}from"./readingLanguages-DTnVTeV8.mjs";import{Thumbnail as W,Summary as R,Metadata as Y,RequiredStatement as Z,Rights as E,Homepage as J,SeeAlso as X,Id as K}from"./Primitives-CGYSfsyH.mjs";import{u as ee}from"./downloads-nfG5kjYD.mjs";import{P as te}from"./Provider-CQfzN4fP.mjs";import{a as oe,t as ae}from"./heading-Cjt0f-Eu.mjs";import{L as ne}from"./Label-Cpra0FrM.mjs";import{r as re}from"./dates-DR3gfcON.mjs";import"./styles-BBr4khzS.mjs";const se=C(()=>import("./LanguageChoice-Dpeqy8MY.mjs").then(e=>e.b).then(e=>({default:e.LanguageChoice}))),le=e=>{var r;const s=e.closest(".clover-sections-actions"),a=(r=s==null?void 0:s.closest(".clover-sections-item"))==null?void 0:r.querySelector(".clover-sections-heading .clover-sections-label");return s&&a?{box:s,label:a}:null},ce=e=>void w.chooseInterfaceLanguage(e);function ue(){x();const{languages:e,chosen:s}=w.interfaceLanguages();return e.length>1?{languages:e,chosen:s}:null}function ie({values:e=true,interfaceLanguages:s=true}={}){const a=U(),r=ue(),l=e?(a==null?void 0:a.languages)??[]:[],c=o=>l.some(b=>b===o||w.stringsFor(b)===o),g=[...l,...(s?(r==null?void 0:r.languages)??[]:[]).filter(o=>!c(o))];if(g.length<2)return null;const P=w.chosenLanguage,h=P&&w.stringsFor(P),L=h&&g.includes(h)&&!c(h)?h:e&&a?a.chosen:(r==null?void 0:r.chosen)??g[0];return{languages:g,chosen:L,onChange:o=>l.includes(o)&&a?a.onChange(o):ce(o)}}function me({values:e,interfaceLanguages:s}){const a=ie({values:e,interfaceLanguages:s}),{drawsToggle:r}=M("About"),l=!!a;return j(()=>l?r==null?void 0:r():void 0,[l,r]),a?t(N,{fallback:null,children:t(se,{...a,nameKey:"readingLanguage",part:"clover-about",fit:le})}):null}const de=$(false),ge=C(()=>import("./Download-BGFJAVpA.mjs").then(({DownloadGroups:e})=>({default:e}))),he=C(()=>import("./NavDate-DMEP6FTB.mjs").then(e=>e.a).then(({NavDate:e})=>({default:e}))),be=C(()=>import("./PartOfManifest-BZfNUV9Y.mjs"));function fe({languages:e=true,interfaceLanguages:s=true,...a}){const r=H(de);return t(ve,{...a,download:!r&&a.download!==false,choice:r?null:t(me,{values:e,interfaceLanguages:s})})}function ve({choice:e,canvasSummary:s=false,headingLevel:a=3,download:r=true,thumbnail:l=true,label:c=true,className:g,...P}){const{t:h,langOf:L}=x(),v=ee(),o=_(n=>n.manifest,Object.is,"About"),b=V(null);j(()=>{const n=b.current,i=n==null?void 0:n.querySelector(".clover-about-head");if(!n||!i||typeof ResizeObserver>"u")return;const m=new Set,d=()=>{const D=i.querySelector(".clover-about-thumbnail"),A=i.querySelector(".clover-about-label");for(const S of[D,A])S&&!m.has(S)&&(m.add(S),y.observe(S));const f=n.style;if(!D){f.removeProperty("--clover-about-label-height"),f.removeProperty("--clover-about-thumbnail-width");return}const O=`${(A==null?void 0:A.offsetHeight)??0}px`,q=`${D.offsetWidth}px`;f.getPropertyValue("--clover-about-label-height")!==O&&f.setProperty("--clover-about-label-height",O),f.getPropertyValue("--clover-about-thumbnail-width")!==q&&f.setProperty("--clover-about-thumbnail-width",q)};let p=0;const y=new ResizeObserver(()=>{cancelAnimationFrame(p),p=requestAnimationFrame(d)});return y.observe(i),d(),()=>{cancelAnimationFrame(p),y.disconnect(),n.style.removeProperty("--clover-about-label-height"),n.style.removeProperty("--clover-about-thumbnail-width")}},[c,l,o]);const z=G(),F=()=>{var m,d;const n=b.current;(d=((m=n==null?void 0:n.closest(".clover-sections-item"))==null?void 0:m.querySelector(".clover-sections-button"))??n)==null||d.focus({preventScroll:true})};if(!o)return null;const u=(n,i,m)=>{if(!i)return null;const{as:d,title:p,group:y}=ae(a,`${z}-${n}`);return t("section",{className:"clover-about-section",...y,children:[t(d,{className:"clover-about-heading",...B(L(n)),...p,children:h(n)}),m]})},I=n=>Array.isArray(o[n])?o[n].length>0:!!o[n];return t("div",{ref:b,className:Q("clover-about",g),tabIndex:-1,...P,children:[e,(l||c)&&t("div",{className:"clover-about-head",children:[l&&t(W,{className:"clover-about-thumbnail",size:256,alt:c?"":void 0}),c&&t(ne,{as:oe(a),className:"clover-about-label clover-title"})]}),s&&t(R,{of:"canvas",className:"clover-about-summary"}),T(o)&&o.partOf&&t(N,{fallback:null,children:t(be,{manifest:o,headingLevel:a,onOpened:F})}),t(R,{className:"clover-about-summary"}),t(Y,{className:"clover-about-metadata"}),t(Z,{className:"clover-about-metadata"}),u("aboutDate",re(o.navDate),t(N,{fallback:null,children:t(he,{value:o.navDate,className:"clover-about-date"})})),u("aboutProvider",I("provider"),t(te,{})),u("aboutRights",o.rights,t(E,{})),u("aboutHomepage",I("homepage"),t(J,{})),u("aboutSeeAlso",I("seeAlso"),t(X,{})),u("download",r&&v.page.length+v.all.length>0,t(N,{fallback:null,children:t(ge,{page:v.page,all:v.all,headingLevel:a+1})})),u(T(o)?"aboutCanvas":"aboutManifest",!k(o)&&o.id,t(K,{}))]})}const De=Object.freeze(Object.defineProperty({__proto__:null,About:fe},Symbol.toStringTag,{value:"Module"}));export{fe as A,de as I,me as L,De as a,ie as u};
@@ -0,0 +1 @@
1
+ import{e as P,c as v,ak as _,T as E,H as O,A as k,y as T,u as f,k as R,d as q,a2 as F}from"./shared-D7rQBuil.mjs";import{P as L,a as y}from"./Items-Ds-e9Eyf.mjs";import{C as B}from"./CountMenu-BcKdKTEB.mjs";import{a as D}from"./annotation-name-DWykwcvV.mjs";import{f as G,r as H}from"./fetchManifest-BKI0qGVv.mjs";import{u as K,L as V}from"./ListEnd-BFoQg8rY.mjs";function j({onSelect:o,forwardedRef:r,...c}){const{clover:l,language:e}=P("Items"),n=v(t=>t.manifest),s=v(t=>_(t.manifest,t.addedSets)),u=v(t=>t.annotationId),d=(s==null?void 0:s.pages)??z,m=(s==null?void 0:s.entries)??J,{loaded:A,more:N,reachNext:S}=K(d),x=E(()=>[...new Set(m.map(t=>O(t.annotation)).filter(t=>!!t&&t!==(n==null?void 0:n.id)))],[m,n==null?void 0:n.id]),C=U(c.layout==="pager"?Q:x),M=x.length>0,i=E(()=>{const t=d.length?new Set(d.slice(0,A).map(a=>a.id)):null;return m.filter(a=>!t||t.has(a.setId)).map(a=>{const g=O(a.annotation),p=g&&g!==(n==null?void 0:n.id)?C.get(g)??null:n;return X(a,p,e,M)})},[d,A,m,n,C,M,e]),b=Math.max((s==null?void 0:s.total)??0,i.length),I=k(null);if(T(()=>{const t=I.current;t===null||!i[t]||(I.current=null,l.selectAnnotation(i[t].id))},[l,i]),!i.length)return null;const h=i.findIndex(t=>t.id===u),w=(t,a)=>{o==null||o(t,a),l.selectAnnotation(t.id)};return c.layout==="pager"?f(L,{...c,forwardedRef:r,steps:{position:h,total:b,direction:"left-to-right",step:(a,g)=>{const p=h+a;if(!(p<0)){if(i[p])return w(i[p],g);N&&(I.current=p,S())}}},nameKey:"informationPanelTabsAnnotations",position:f(B,{position:h,total:b,list:a=>f(j,{layout:"list",forwardedRef:null,onSelect:a})})}):f(R,{children:[f(y,{...c,forwardedRef:r,items:i,selected:h,navigation:"id",language:e,request:l.request,showSummary:true,onActivate:w}),N&&f(V,{onReached:S})]})}const z=[],J=[],Q=[];function U(o){const{clover:r}=P("Items"),[c,l]=q(W);return T(()=>{if(!o.length)return;let e=true;for(const n of o)G(r,n).then(s=>{e&&s&&l(u=>u.has(n)?u:new Map(u).set(n,s))});return()=>{e=false}},[r,o]),c}const W=new Map;function X(o,r,c,l){const e=F(r,o.canvasId),n=D(o.bodies,c),s=n.text?{[n.lang??"none"]:[n.text]}:e==null?void 0:e.label,u=l?r==null?void 0:r.label:e==null?void 0:e.label,d=e&&o.target.rect?H(e,o.target.rect):void 0;return{id:o.id,label:s,summary:n.text?u:void 0,parts:[{id:o.id,type:"Canvas",label:s,resource:e??{id:o.canvasId},...d?{source:d}:{}}]}}export{j as default};
@@ -1 +1 @@
1
- import{A as I,u as a,l as y}from"./shared-CzlxExGR.mjs";import{s as H}from"./Annotations-B5WD596p.mjs";import T from"./ControlMenu-DLJsVZnm.mjs";import{C as $}from"./Cue-CrnTNjnn.mjs";import{H as z}from"./HideToggle-D-r79OIC.mjs";import{u as B}from"./useContainerName-CAlWJohz.mjs";import"./styles-C51FhQQr.mjs";const G=({id:d,triggerId:C,label:M,labelLang:k,annotations:p,hiddenPages:x=[],onPageVisibilityChange:v,selected:w,onSelect:u,onActivate:i,onClose:D})=>{const h=B(M,k),m=I(false),r=[];p.forEach((n,c)=>{var s,l;const o=r[r.length-1];o&&((s=o.page)==null?void 0:s.text)===((l=n.page)==null?void 0:l.text)?o.items.push(c):r.push({page:n.page,items:[c]})});const E=r.some(n=>!n.page);return a(T,{className:"clover-canvas-annotation-menu","data-testid":"clover-canvas-annotation-menu",id:d,onClose:D,triggerId:C,children:[E&&h.node,r.map((n,c)=>{const o=[...new Set(n.items.flatMap(t=>p[t].pageId??[]))],s=`${d}-page-${c}`,l=v&&o.length>0&&a(z,{hidden:o.every(t=>x.includes(t)),onChange:t=>v(o,!t),of:n.page?s:void 0});return a("fieldset",{...n.page?{"aria-labelledby":s}:h.props,className:"clover-canvas-menu-group clover-annotations-set",children:[n.page?a("legend",{className:"clover-canvas-menu-legend clover-annotations-set-header",children:[a("span",{className:"clover-annotations-title",id:s,...y(n.page.lang),children:n.page.text}),l]}):l&&a("div",{className:"clover-annotations-set-header",children:l}),a("div",{className:"clover-annotations-list",children:n.items.map(t=>{const e=p[t],f=H(e),g=w===e.id,N="image"in e?e.image:void 0;return a("label",{className:"clover-canvas-menu-item clover-annotations-entry","data-selected":g,onMouseEnter:()=>i(e.id),onMouseLeave:()=>i(null),onPointerDown:()=>{m.current=true},children:[a("input",{type:"radio",name:d,checked:g,onChange:()=>u(e,m.current),onClick:()=>{(g||!m.current)&&u(e)},onKeyDown:b=>{m.current=false,b.key==="Enter"&&(b.preventDefault(),u(e))},onFocus:()=>i(e.id),onBlur:()=>i(null)}),f!==void 0&&a($,{start:f,className:"clover-annotations-time"}),a("span",{className:"clover-annotations-body clover-cue-text",children:[N&&a("img",{className:"clover-annotations-image",src:N,alt:"",loading:"lazy"}),a("span",{className:"clover-annotations-text",...y(e.label?e.lang:void 0),children:e.label??String(t+1)})]})]},e.id)})})]},c)})]})};export{G as default};
1
+ import{A as I,u as a,l as y}from"./shared-D7rQBuil.mjs";import{s as H}from"./Annotations-DXDYF1z6.mjs";import T from"./ControlMenu-C-zQ9oPn.mjs";import{C as $}from"./Cue-D_oQ83As.mjs";import{H as z}from"./HideToggle-CAv-kfC1.mjs";import{u as B}from"./useContainerName-DKh6i3of.mjs";import"./styles-BBr4khzS.mjs";const G=({id:d,triggerId:C,label:M,labelLang:k,annotations:p,hiddenPages:x=[],onPageVisibilityChange:v,selected:w,onSelect:u,onActivate:i,onClose:D})=>{const h=B(M,k),m=I(false),r=[];p.forEach((n,c)=>{var s,l;const o=r[r.length-1];o&&((s=o.page)==null?void 0:s.text)===((l=n.page)==null?void 0:l.text)?o.items.push(c):r.push({page:n.page,items:[c]})});const E=r.some(n=>!n.page);return a(T,{className:"clover-canvas-annotation-menu","data-testid":"clover-canvas-annotation-menu",id:d,onClose:D,triggerId:C,children:[E&&h.node,r.map((n,c)=>{const o=[...new Set(n.items.flatMap(t=>p[t].pageId??[]))],s=`${d}-page-${c}`,l=v&&o.length>0&&a(z,{hidden:o.every(t=>x.includes(t)),onChange:t=>v(o,!t),of:n.page?s:void 0});return a("fieldset",{...n.page?{"aria-labelledby":s}:h.props,className:"clover-canvas-menu-group clover-annotations-set",children:[n.page?a("legend",{className:"clover-canvas-menu-legend clover-annotations-set-header",children:[a("span",{className:"clover-annotations-title",id:s,...y(n.page.lang),children:n.page.text}),l]}):l&&a("div",{className:"clover-annotations-set-header",children:l}),a("div",{className:"clover-annotations-list",children:n.items.map(t=>{const e=p[t],f=H(e),g=w===e.id,N="image"in e?e.image:void 0;return a("label",{className:"clover-canvas-menu-item clover-annotations-entry","data-selected":g,onMouseEnter:()=>i(e.id),onMouseLeave:()=>i(null),onPointerDown:()=>{m.current=true},children:[a("input",{type:"radio",name:d,checked:g,onChange:()=>u(e,m.current),onClick:()=>{(g||!m.current)&&u(e)},onKeyDown:b=>{m.current=false,b.key==="Enter"&&(b.preventDefault(),u(e))},onFocus:()=>i(e.id),onBlur:()=>i(null)}),f!==void 0&&a($,{start:f,className:"clover-annotations-time"}),a("span",{className:"clover-annotations-body clover-cue-text",children:[N&&a("img",{className:"clover-annotations-image",src:N,alt:"",loading:"lazy"}),a("span",{className:"clover-annotations-text",...y(e.label?e.lang:void 0),children:e.label??String(t+1)})]})]},e.id)})})]},c)})]})};export{G as default};
@@ -0,0 +1 @@
1
+ import{T as d,ad as qt,f as bt,d as C,aJ as Gt,q as k,A as l,E as Jt,y as j,_ as It,u as jt}from"./shared-D7rQBuil.mjs";import{w as zt,p as Ot,g as xt,t as Dt,A as Ut}from"./Annotations-DXDYF1z6.mjs";import{h as Xt}from"./layout-BEIFutbD.mjs";const Yt=()=>import("./svg-shape-D1K-WNrY.mjs");function Zt(w){var S;const c=d(()=>!!(w!=null&&w.some(({annotation:s})=>{var p;return(p=qt(s==null?void 0:s.target))==null?void 0:p.svg})),[w]);return((S=bt(Yt,c))==null?void 0:S.readSvgShape)??null}const M=[];function Et({given:w,annotations:c,scene:S,renderer:s,sceneVersion:p,drawn:E,media:I,mediaElement:f,showPlaceholder:F,canvasKey:z,openImages:tt,openMedia:et,host:nt,onModel:H,refind:_=0}){const{canvases:g,language:v,hiddenPages:rt,unlistedPages:yt,onPageVisibilityChange:ct,onAnnotationActive:ut,selectedAnnotation:st,animateAnnotations:ot=false,highlightedAnnotation:Ct,onAnnotationSelect:lt,onAnnotationLink:D}=w,[B,Ft]=C([]),[it,Ht]=C([]),L=rt!==void 0,dt=d(()=>{var n;if(L)return M;const t=new Map;for(const r of c){if(!r.pageId)continue;const o=!(Number((n=g==null?void 0:g[r.targetIndex])==null?void 0:n.duration)>0)&&Gt(r.annotation.motivation,qt(Array.isArray(r.annotation.target)?r.annotation.target[0]:r.annotation.target));t.set(r.pageId,(t.get(r.pageId)??true)&&o)}const e=[...t].filter(([,r])=>r).map(([r])=>r);return e.length?e:M},[L,c,g]),_t=d(()=>{const t=dt.filter(e=>!it.includes(e)&&!B.includes(e));return t.length?[...B,...t]:B},[B,it,dt]),a=rt??_t,U=yt??M,N=k(t=>U.length?t.filter(e=>!e.pageId||!U.includes(e.pageId)):t,[U]),gt=d(()=>N(c).length,[c,N]),T=k(t=>a.length?t.filter(e=>!e.pageId||!a.includes(e.pageId)):t,[a]),Q=l(ct);Q.current=ct;const R=k((t,e)=>{var n;(n=Q.current)==null||n.call(Q,t,e),!L&&(Ft(r=>{const i=r.filter(o=>!t.includes(o));return e?i:[...i,...t]}),Ht(r=>{const i=r.filter(o=>!t.includes(o));return e?[...i,...t]:i}))},[L]),ft=d(()=>zt(T(c),g),[c,T,g]),O=d(()=>{if(!(!S||!g))return(t,e,n)=>{const r=g.findIndex(Wt=>Wt.id===e),i=r===-1?n:r,o=S.placements[i];return o?Xt(g[i],o,t):null}},[S,g]),W=Zt(c),P=d(()=>s&&p>0&&E?Ot(c,O??((t,e,n)=>s.itemRectToWorld(n,t)),W,v):[],[s,c,p,E,O,W,v]),x=d(()=>T(P),[P,T]),X=d(()=>P.length||!O?P:Ot(c,O,W,v),[P,O,c,W,v]),[Bt,Lt]=C(null),[Nt,pt]=C(null),u=st!==void 0?st:Nt,A=l(null),h=l(ut);h.current=ut;const m=l(lt);m.current=lt;const Y=k(t=>{var e;Lt(t),(e=h.current)==null||e.call(h,t)},[]),Z=l(ot);Z.current=ot;const at=l(false);at.current=F;const $=l(f);$.current=f;const Pt=l(s);Pt.current=s;const q=l(null),ht=l(a);ht.current=a;const mt=l(R);mt.current=R;const V=k((t,e=true)=>{var n,r,i;if(t.pageId&&ht.current.includes(t.pageId)&&mt.current([t.pageId],true),pt(t.id),(n=h.current)==null||n.call(h,t.id),(r=m.current)==null||r.call(m,t.id),!at.current){if("start"in t){const o=$.current;if(!o)return;q.current=t.id,e?Jt(o,t.start):o.currentTime=t.start;return}if(A.current=t.id,t.track){const o=$.current;o&&xt(t,o)&&(q.current=t.id);return}(i=Pt.current)==null||i.fitAnnotation(t.world,!Z.current)}},[]),wt=l(u);wt.current=u;const b=k(()=>{var t;return wt.current?(pt(null),A.current=null,(t=m.current)==null||t.call(m,null),true):false},[]),G=l(D);G.current=D;const St=!!D,Qt=d(()=>St?t=>{var e,n;(e=nt.current)==null||e.focus({preventScroll:true}),b(),t.link&&((n=G.current)==null||n.call(G,t.link))}:void 0,[St,b,nt]),vt=l(_);j(()=>{if(!u){A.current=null;return}if(vt.current!==_&&(vt.current=_,A.current=null),A.current===u)return;const t=r=>r.find(i=>i.id===u),e=t(x),n=e??t(P);if(n){if(A.current=n.id,n.track){!e&&f&&xt(n,f);return}s==null||s.fitAnnotation(n.world,!Z.current)}},[u,x,P,f,s,_]);const y=d(()=>I?Dt(c,v):[],[I,c,v]),J=d(()=>T(y),[y,T]),Tt=d(()=>N(y.length?[...X,...y]:X),[X,y,N]);j(()=>{if(!u){q.current=null;return}if(q.current===u||!f)return;const t=J.find(e=>e.id===u);t&&(q.current=t.id,f.currentTime=t.start)},[u,J,f]);const K=l(null),[At,Rt]=C(null);j(()=>{K.current=u??null},[u]),j(()=>{const t=K.current;if(!(!t||!c.some(e=>{var n;return((n=e.annotation)==null?void 0:n.id)===t}))&&(K.current=null,!!F)){if(!I){tt(true);return}et(z),Rt(z)}},[u,c,F,I,z,tt,et]);const kt=d(()=>({menu:Tt,placed:x,timed:J,hiddenPages:a,setPagesVisible:R,listedCount:gt,comments:ft,selected:u??null,select:V,activate:Y,release:b,quietlyOpened:At}),[Tt,x,J,a,R,gt,ft,u,V,Y,b,At]);return It(()=>H(kt),[kt,H]),It(()=>()=>H(null),[H]),s&&p>0&&!F?jt(Ut,{renderer:s,placed:x,sceneVersion:p,active:Bt??Ct??u,selected:u,onActivate:Y,onSelect:V,onFollow:Qt,media:I?f:void 0}):null}export{Et as AnnotationState};
@@ -1,2 +1,2 @@
1
- import{D as lt,a as Z,e as D,c as q,s as Ct,n as Nt,o as $t,R as rt,r as At,u as o,t as V,w as Tt,B as dt,E as Et,b as ut,F as mt,T as O,d as tt,A as Ot,y as X,l as M,G as Mt,H as Bt,v as qt,k as it,f as yt}from"./shared-CzlxExGR.mjs";import{E as Pt}from"./EntryBodies-BwWEgZ1_.mjs";import{u as Rt,L as Vt}from"./ListEnd-DwtNoi_1.mjs";import{a as Ft}from"./annotation-name-DFdgSllS.mjs";import{r as Ht,a as jt}from"./link-DI1Gv9P_.mjs";import{s as Gt}from"./show-link-BOEKHpcs.mjs";import{f as Kt,r as _t}from"./fetchManifest-Crn4VJ56.mjs";import{j as ht}from"./classnames-DukgfdpI.mjs";import{b as ct,s as zt}from"./bringIntoView-CQH5ZgMM.mjs";import{a as Y}from"./heading-Cjt0f-Eu.mjs";import{C as Dt}from"./Cue-CrnTNjnn.mjs";import{E as Ut}from"./EntryThumbnail-C56uAnMQ.mjs";import{H as ft}from"./HideToggle-D-r79OIC.mjs";import{u as gt,c as vt,s as z}from"./readingLanguages-C83aK9na.mjs";import{L as pt}from"./LanguageChoice-BJd_RsYq.mjs";import"./styles-C51FhQQr.mjs";function bt(n){const s=n.bodies.filter(e=>{var u;return!e.image&&((u=e.value)==null?void 0:u.trim())}).map(e=>e.language).filter(e=>!!e&&e!=="none");return[...new Set(s)]}function xt(n){const s=n.map(bt),e=[...new Set(s.flat())];return e.length<2?[]:s.some(a=>a.length&&e.some(c=>!a.includes(c)))?e:[]}function St(n,s){if(!s)return true;const e=bt(n);return!e.length||e.includes(s)}const Wt=[],wn=lt(function({scope:s="all",renderEntry:e,headingLevel:u=3,as:a="div",className:c,...m},l){const{t:r,langOf:h}=Z(),{clover:d,language:S}=D("Annotations"),I=q(t=>Ct(t.manifest,t.addedSets)),N=q(t=>Nt(t.manifest,t.canvasId)),T=q(t=>$t(t.manifest,t.addedSets,t.hiddenSets,t.shownSets)),b=q(t=>t.annotationId),$=rt.useSyncExternalStore(d.highlight.subscribe,d.highlight.get,d.highlight.get),f=t=>{const v=Tt(I,t),x=v&&dt(v.target.t),P=d.media.get();x&&P&&N.some(F=>F.id===v.canvasId)&&Et(P,x.start),d.selectAnnotation(t)},k=q(t=>s==="all"?At(t.manifest):Wt),w=Rt(k),L=t=>t.entries.filter(v=>N.some(x=>x.id===v.canvasId)),A=I.map(t=>({set:t,entries:L(t)})).filter(({entries:t})=>t.length),C=Y(u),y={text:r("annotationsShow"),lang:h("annotationsShow")};return s==="all"?o(Zt,{ref:l,as:a,className:c,rest:m,sets:I,shown:N.map(t=>t.id),headingLevel:u,language:S,showLabel:y,hiddenSets:T,selected:b,highlighted:$,renderEntry:e,onSelect:f,onHighlight:t=>d.highlight.emit(t),onVisible:(t,v)=>t.forEach(x=>d.setSetVisible(x,v)),end:w.more&&o(Vt,{onReached:w.reachNext})}):A.length?o(a,{ref:l,className:ht("clover-annotations",c),...m,children:A.map(({set:t,entries:v})=>o(Jt,{set:t,entries:v,canvases:N,Heading:C,headingLevel:u,language:S,title:V(t.label,S),showLabel:y,hidden:T.includes(t.id),selected:b,highlighted:$,renderEntry:e,onSelect:f,onHighlight:x=>d.highlight.emit(x),onVisible:x=>d.setSetVisible(t.id,x)},t.id))}):null});function Jt({set:n,entries:s,canvases:e,Heading:u,headingLevel:a,title:c,language:m,showLabel:l,hidden:r,selected:h,highlighted:d,renderEntry:S,onSelect:I,onHighlight:N,onVisible:T}){const b=ut(),$=c.text?a+1:a,f=O(()=>xt(s),[s]),[k,w]=tt(),L=gt(),A=vt(L,f),C=A?z(f,L.chosen):z(f,(L==null?void 0:L.chosen)??m,k),y=s.filter(t=>St(t,C));return o("section",{className:"clover-annotations-set","aria-labelledby":c.text?`${b}-title`:void 0,"data-set":n.id,children:[o("div",{className:"clover-annotations-set-header",children:[c.text&&o(u,{className:"clover-annotations-title",id:`${b}-title`,...M(c.lang),children:c.text}),C&&!A&&o(pt,{languages:f,chosen:C,onChange:w,nameKey:"annotationsLanguage",part:"clover-annotations"}),o(ft,{hidden:r,onChange:t=>T(!t),of:c.text?`${b}-title`:void 0})]}),o("ol",{className:"clover-annotations-list",children:y.map((t,v)=>o(wt,{entry:t,canvas:e.find(x=>x.id===t.canvasId),index:v,headingLevel:$,language:m,showLabel:l,selected:t.id===h,highlighted:t.id===d,renderEntry:S,onSelect:I,onHighlight:N},t.id))})]})}function Qt(n,s,e){const u=new Map(s.map((c,m)=>[c.id,m])),a=new Map;for(const c of n){const m=V(c.label,e),l=m.text;let r=a.get(l);r||(r={title:m,setIds:[],byCanvas:new Map},a.set(l,r)),r.setIds.push(c.id);for(const h of c.entries){const d=r.byCanvas.get(h.canvasId)??[];d.push(h),r.byCanvas.set(h.canvasId,d)}}return[...a.entries()].map(([c,m])=>({key:c,title:m.title,setIds:m.setIds,canvases:Xt([...m.byCanvas.entries()],u).map(([l,r])=>{var h;return{canvasId:l,label:V((h=s.find(d=>d.id===l))==null?void 0:h.label,e),entries:r}})}))}function Xt(n,s){return n.every(([e])=>s.has(e))?n.sort(([e],[u])=>s.get(e)-s.get(u)):n}function Yt(n,s){const{clover:e,language:u}=D("Annotations"),a=O(()=>{const l=new Set;for(const r of n)for(const h of r.canvases){if(s.has(h.canvasId))continue;const d=Mt(h.entries[0].annotation);d&&l.add(d)}return[...l]},[n,s]),[c,m]=tt([]);return X(()=>{let l=true;return Promise.all(a.map(r=>Kt(e,r))).then(r=>l&&m(r.filter(h=>!!h))),()=>{l=false}},[e,a]),O(()=>{const l=new Map;for(const r of c){const{canvases:h}=mt(r),d=V(r.label,u);for(const S of h){const I=V(S.label,u);l.set(S.id,{canvas:S,label:h.length>1&&I.text?[d,I]:[d]})}}return{named:a.length>0,of:l}},[c,a,u])}const Zt=lt(function({as:s,className:e,rest:u,sets:a,shown:c,headingLevel:m,language:l,showLabel:r,hiddenSets:h,selected:d,highlighted:S,renderEntry:I,onSelect:N,onHighlight:T,onVisible:b,end:$},f){const k=ut(),w=q(i=>mt(i.manifest).canvases),L=O(()=>Qt(a,w,l),[a,w,l]),A=O(()=>new Map(w.map(i=>[i.id,i])),[w]),C=Yt(L,A),[y,t]=tt({}),v=gt(),x=q(i=>{var g;return(g=i.manifest)==null?void 0:g.label}),P=O(()=>V(x,l),[x,l]),F=w.length>1||C.named,G=Ot(null),nt=()=>{const i=G.current;if(!i||!i.getClientRects().length)return true;const g=zt(i)??i;return g.matches(":hover")||g.contains(document.activeElement)},Lt=c.join(`
2
- `);return X(()=>{const i=G.current;if(!i||!F||nt())return;const g=c.map(U=>i.querySelector(`[data-canvas="${CSS.escape(U)}"]`)).find(Boolean);if(!g)return;const B=g.closest(".clover-annotations-set"),H=(B==null?void 0:B.querySelector("[data-canvas]"))===g;ct(H&&B?B:g,"start")},[Lt]),X(()=>{const i=G.current;if(!i||!d||nt())return;const g=i.querySelector(`[data-entry="${CSS.escape(d)}"]`);g&&ct(g,"nearest")},[d]),L.length?o(s,{ref:i=>{G.current=i,typeof f=="function"?f(i):f&&(f.current=i)},className:ht("clover-annotations",e),"data-scope":"all",...u,children:[L.map((i,g)=>{const B=Y(m),H=i.title.text?m+1:m,U=Y(H),It=i.setIds.every(p=>h.includes(p)),K=xt(i.canvases.flatMap(p=>p.entries)),et=vt(v,K),W=et?z(K,v.chosen):z(K,(v==null?void 0:v.chosen)??l,y[i.key]);return o("section",{className:"clover-annotations-set","aria-labelledby":i.title.text?`${k}-${g}`:void 0,children:[o("div",{className:"clover-annotations-set-header",children:[i.title.text&&o(B,{className:"clover-annotations-title",id:`${k}-${g}`,...M(i.title.lang),children:i.title.text}),W&&!et&&o(pt,{languages:K,chosen:W,onChange:p=>t(J=>({...J,[i.key]:p})),nameKey:"annotationsLanguage",part:"clover-annotations"}),o(ft,{hidden:It,onChange:p=>b(i.setIds,!p),of:i.title.text?`${k}-${g}`:void 0})]}),i.canvases.map((p,J)=>{var at;const st=p.entries.filter(E=>St(E,W));if(!st.length)return null;const j=C.of.get(p.canvasId),R=j?j.label:C.named&&P.text?w.length>1&&p.label.text?[P,p.label]:[P]:[p.label],Q=F&&!!((at=R[0])!=null&&at.text),kt=F&&c.includes(p.canvasId),ot=`${k}-${g}-${J}`;return o("section",{className:"clover-annotations-canvas","data-canvas":p.canvasId,"aria-labelledby":Q?ot:void 0,"aria-current":kt?"true":void 0,children:[Q&&o(U,{className:"clover-annotations-canvas-label",id:ot,...M(R.length===1?R[0].lang:void 0),children:R.length===1?R[0].text:R.map((E,_)=>o(rt.Fragment,{children:[_>0&&", ",o("span",{...M(E.lang),children:E.text})]},_))}),o("ol",{className:"clover-annotations-list",children:st.map((E,_)=>o(wt,{entry:E,canvas:A.get(p.canvasId)??(j==null?void 0:j.canvas),index:_,headingLevel:Q?H+1:H,language:l,showLabel:r,selected:E.id===d,highlighted:E.id===S,renderEntry:I,onSelect:N,onHighlight:T},E.id))})]},p.canvasId)})]},i.key)}),$]}):null});function tn(n,s){const e=n.target.rect?void 0:n.target.svg,u=yt(nn,!!e);return O(()=>{var m,l;const a=e?(m=u==null?void 0:u.readSvgShape(e))==null?void 0:m.box:void 0,c=n.target.rect??(a?{x:a.x,y:a.y,w:a.width,h:a.height}:void 0);return!c||!s||n.bodies.some(r=>r.image)?null:_t(s,c,(l=n.layer)==null?void 0:l.image)},[n,s,e,u])}const nn=()=>import("./svg-shape-D1K-WNrY.mjs");function wt({entry:n,canvas:s,index:e,headingLevel:u,language:a,showLabel:c,selected:m,highlighted:l,renderEntry:r,onSelect:h,onHighlight:d}){const{hostLanguage:S,t:I,langOf:N}=Z(),T=sn(n,a),b=T.text?T:{text:String(e+1)},$=dt(n.target.t),f=$?{text:I("annotationsShowTime"),lang:N("annotationsShowTime")}:c,k=!f.lang&&!Bt(b.lang,S),w=b.text?`${f.text}: ${b.text}`:f.text,{clover:L}=D("Annotations"),A=tn(n,s);return o("li",{className:"clover-annotations-entry","data-entry":n.id,"data-selected":m,"data-highlighted":l,onMouseEnter:()=>d(n.id),onMouseLeave:()=>d(null),onFocus:()=>d(n.id),onBlur:()=>d(null),onClick:C=>{C.target.closest("a, button")||h(n.id)},children:[$&&o(Dt,{start:$.start,className:"clover-annotations-time"}),o(Ut,{className:"clover-annotations-thumbnail",source:A,request:L.request}),o("div",{className:"clover-annotations-body clover-cue-text",children:[r?r(n):o(Pt,{bodies:n.bodies,language:a,headingLevel:u}),o(en,{annotation:n.annotation})]}),o("button",{type:"button",className:"clover-annotations-show","aria-pressed":m,"aria-label":k?w:void 0,style:qt,onClick:()=>h(n.id),children:!k&&o(it,{children:[o("span",{...M(f.lang),children:[f.text,b.text&&":"]}),b.text&&o(it,{children:[" ",o("span",{...M(b.lang),children:b.text})]})]})})]})}function en({annotation:n}){const{clover:s}=D("Annotations"),{t:e,langOf:u}=Z(),a=O(()=>Ht(n)??jt(n),[n]);if(!a)return null;const c=e("annotationsOpenLink"),m=u("annotationsOpenLink");return!a.canvasId&&!a.manifestId?o("a",{className:"clover-annotations-link",href:a.id,target:"_blank",rel:"noopener noreferrer",...M(m),children:c}):o("button",{type:"button",className:"clover-annotations-link",...M(m),onClick:l=>{var h;const r=l.currentTarget.closest(".clover-root");Gt(s,a)&&((h=r==null?void 0:r.querySelector(".clover-canvas-viewport"))==null||h.focus({preventScroll:true}))},children:c})}function sn(n,s){const{text:e="",lang:u}=Ft(n.bodies,s);return{text:e.slice(0,120),...u?{lang:u}:{}}}export{wn as Annotations};
1
+ import{D as lt,a as Z,e as D,c as q,s as Ct,n as Nt,o as $t,R as rt,r as At,u as o,t as V,w as Tt,B as dt,E as Et,b as ut,F as mt,T as O,d as tt,A as Ot,y as X,G as z,l as M,H as Mt,I as Bt,v as qt,k as it,f as yt}from"./shared-D7rQBuil.mjs";import{E as Pt}from"./EntryBodies-DlDUg-Gu.mjs";import{u as Rt,L as Vt}from"./ListEnd-BFoQg8rY.mjs";import{a as Ft}from"./annotation-name-DWykwcvV.mjs";import{r as Ht,a as jt}from"./link-BMOL3_MA.mjs";import{s as Gt}from"./show-link-KGyTdKrM.mjs";import{f as Kt,r as _t}from"./fetchManifest-BKI0qGVv.mjs";import{j as ht}from"./classnames-DukgfdpI.mjs";import{b as ct,s as zt}from"./bringIntoView-CQH5ZgMM.mjs";import{a as Y}from"./heading-Cjt0f-Eu.mjs";import{C as Dt}from"./Cue-D_oQ83As.mjs";import{E as Ut}from"./EntryThumbnail-D6XLLir5.mjs";import{H as ft}from"./HideToggle-CAv-kfC1.mjs";import{u as gt,c as vt}from"./readingLanguages-DTnVTeV8.mjs";import{L as pt}from"./LanguageChoice-Dpeqy8MY.mjs";import"./styles-BBr4khzS.mjs";function bt(n){const s=n.bodies.filter(e=>{var u;return!e.image&&((u=e.value)==null?void 0:u.trim())}).map(e=>e.language).filter(e=>!!e&&e!=="none");return[...new Set(s)]}function xt(n){const s=n.map(bt),e=[...new Set(s.flat())];return e.length<2?[]:s.some(a=>a.length&&e.some(c=>!a.includes(c)))?e:[]}function St(n,s){if(!s)return true;const e=bt(n);return!e.length||e.includes(s)}const Wt=[],wn=lt(function({scope:s="all",renderEntry:e,headingLevel:u=3,as:a="div",className:c,...m},l){const{t:r,langOf:h}=Z(),{clover:d,language:S}=D("Annotations"),L=q(t=>Ct(t.manifest,t.addedSets)),N=q(t=>Nt(t.manifest,t.canvasId)),T=q(t=>$t(t.manifest,t.addedSets,t.hiddenSets,t.shownSets)),b=q(t=>t.annotationId),$=rt.useSyncExternalStore(d.highlight.subscribe,d.highlight.get,d.highlight.get),f=t=>{const v=Tt(L,t),x=v&&dt(v.target.t),P=d.media.get();x&&P&&N.some(F=>F.id===v.canvasId)&&Et(P,x.start),d.selectAnnotation(t)},k=q(t=>s==="all"?At(t.manifest):Wt),w=Rt(k),I=t=>t.entries.filter(v=>N.some(x=>x.id===v.canvasId)),A=L.map(t=>({set:t,entries:I(t)})).filter(({entries:t})=>t.length),C=Y(u),y={text:r("annotationsShow"),lang:h("annotationsShow")};return s==="all"?o(Zt,{ref:l,as:a,className:c,rest:m,sets:L,shown:N.map(t=>t.id),headingLevel:u,language:S,showLabel:y,hiddenSets:T,selected:b,highlighted:$,renderEntry:e,onSelect:f,onHighlight:t=>d.highlight.emit(t),onVisible:(t,v)=>t.forEach(x=>d.setSetVisible(x,v)),end:w.more&&o(Vt,{onReached:w.reachNext})}):A.length?o(a,{ref:l,className:ht("clover-annotations",c),...m,children:A.map(({set:t,entries:v})=>o(Jt,{set:t,entries:v,canvases:N,Heading:C,headingLevel:u,language:S,title:V(t.label,S),showLabel:y,hidden:T.includes(t.id),selected:b,highlighted:$,renderEntry:e,onSelect:f,onHighlight:x=>d.highlight.emit(x),onVisible:x=>d.setSetVisible(t.id,x)},t.id))}):null});function Jt({set:n,entries:s,canvases:e,Heading:u,headingLevel:a,title:c,language:m,showLabel:l,hidden:r,selected:h,highlighted:d,renderEntry:S,onSelect:L,onHighlight:N,onVisible:T}){const b=ut(),$=c.text?a+1:a,f=O(()=>xt(s),[s]),[k,w]=tt(),I=gt(),A=vt(I,f),C=A?z(f,I.chosen):z(f,(I==null?void 0:I.chosen)??m,k),y=s.filter(t=>St(t,C));return o("section",{className:"clover-annotations-set","aria-labelledby":c.text?`${b}-title`:void 0,"data-set":n.id,children:[o("div",{className:"clover-annotations-set-header",children:[c.text&&o(u,{className:"clover-annotations-title",id:`${b}-title`,...M(c.lang),children:c.text}),C&&!A&&o(pt,{languages:f,chosen:C,onChange:w,nameKey:"annotationsLanguage",part:"clover-annotations"}),o(ft,{hidden:r,onChange:t=>T(!t),of:c.text?`${b}-title`:void 0})]}),o("ol",{className:"clover-annotations-list",children:y.map((t,v)=>o(wt,{entry:t,canvas:e.find(x=>x.id===t.canvasId),index:v,headingLevel:$,language:m,showLabel:l,selected:t.id===h,highlighted:t.id===d,renderEntry:S,onSelect:L,onHighlight:N},t.id))})]})}function Qt(n,s,e){const u=new Map(s.map((c,m)=>[c.id,m])),a=new Map;for(const c of n){const m=V(c.label,e),l=m.text;let r=a.get(l);r||(r={title:m,setIds:[],byCanvas:new Map},a.set(l,r)),r.setIds.push(c.id);for(const h of c.entries){const d=r.byCanvas.get(h.canvasId)??[];d.push(h),r.byCanvas.set(h.canvasId,d)}}return[...a.entries()].map(([c,m])=>({key:c,title:m.title,setIds:m.setIds,canvases:Xt([...m.byCanvas.entries()],u).map(([l,r])=>{var h;return{canvasId:l,label:V((h=s.find(d=>d.id===l))==null?void 0:h.label,e),entries:r}})}))}function Xt(n,s){return n.every(([e])=>s.has(e))?n.sort(([e],[u])=>s.get(e)-s.get(u)):n}function Yt(n,s){const{clover:e,language:u}=D("Annotations"),a=O(()=>{const l=new Set;for(const r of n)for(const h of r.canvases){if(s.has(h.canvasId))continue;const d=Mt(h.entries[0].annotation);d&&l.add(d)}return[...l]},[n,s]),[c,m]=tt([]);return X(()=>{let l=true;return Promise.all(a.map(r=>Kt(e,r))).then(r=>l&&m(r.filter(h=>!!h))),()=>{l=false}},[e,a]),O(()=>{const l=new Map;for(const r of c){const{canvases:h}=mt(r),d=V(r.label,u);for(const S of h){const L=V(S.label,u);l.set(S.id,{canvas:S,label:h.length>1&&L.text?[d,L]:[d]})}}return{named:a.length>0,of:l}},[c,a,u])}const Zt=lt(function({as:s,className:e,rest:u,sets:a,shown:c,headingLevel:m,language:l,showLabel:r,hiddenSets:h,selected:d,highlighted:S,renderEntry:L,onSelect:N,onHighlight:T,onVisible:b,end:$},f){const k=ut(),w=q(i=>mt(i.manifest).canvases),I=O(()=>Qt(a,w,l),[a,w,l]),A=O(()=>new Map(w.map(i=>[i.id,i])),[w]),C=Yt(I,A),[y,t]=tt({}),v=gt(),x=q(i=>{var g;return(g=i.manifest)==null?void 0:g.label}),P=O(()=>V(x,l),[x,l]),F=w.length>1||C.named,G=Ot(null),nt=()=>{const i=G.current;if(!i||!i.getClientRects().length)return true;const g=zt(i)??i;return g.matches(":hover")||g.contains(document.activeElement)},It=c.join(`
2
+ `);return X(()=>{const i=G.current;if(!i||!F||nt())return;const g=c.map(U=>i.querySelector(`[data-canvas="${CSS.escape(U)}"]`)).find(Boolean);if(!g)return;const B=g.closest(".clover-annotations-set"),H=(B==null?void 0:B.querySelector("[data-canvas]"))===g;ct(H&&B?B:g,"start")},[It]),X(()=>{const i=G.current;if(!i||!d||nt())return;const g=i.querySelector(`[data-entry="${CSS.escape(d)}"]`);g&&ct(g,"nearest")},[d]),I.length?o(s,{ref:i=>{G.current=i,typeof f=="function"?f(i):f&&(f.current=i)},className:ht("clover-annotations",e),"data-scope":"all",...u,children:[I.map((i,g)=>{const B=Y(m),H=i.title.text?m+1:m,U=Y(H),Lt=i.setIds.every(p=>h.includes(p)),K=xt(i.canvases.flatMap(p=>p.entries)),et=vt(v,K),W=et?z(K,v.chosen):z(K,(v==null?void 0:v.chosen)??l,y[i.key]);return o("section",{className:"clover-annotations-set","aria-labelledby":i.title.text?`${k}-${g}`:void 0,children:[o("div",{className:"clover-annotations-set-header",children:[i.title.text&&o(B,{className:"clover-annotations-title",id:`${k}-${g}`,...M(i.title.lang),children:i.title.text}),W&&!et&&o(pt,{languages:K,chosen:W,onChange:p=>t(J=>({...J,[i.key]:p})),nameKey:"annotationsLanguage",part:"clover-annotations"}),o(ft,{hidden:Lt,onChange:p=>b(i.setIds,!p),of:i.title.text?`${k}-${g}`:void 0})]}),i.canvases.map((p,J)=>{var at;const st=p.entries.filter(E=>St(E,W));if(!st.length)return null;const j=C.of.get(p.canvasId),R=j?j.label:C.named&&P.text?w.length>1&&p.label.text?[P,p.label]:[P]:[p.label],Q=F&&!!((at=R[0])!=null&&at.text),kt=F&&c.includes(p.canvasId),ot=`${k}-${g}-${J}`;return o("section",{className:"clover-annotations-canvas","data-canvas":p.canvasId,"aria-labelledby":Q?ot:void 0,"aria-current":kt?"true":void 0,children:[Q&&o(U,{className:"clover-annotations-canvas-label",id:ot,...M(R.length===1?R[0].lang:void 0),children:R.length===1?R[0].text:R.map((E,_)=>o(rt.Fragment,{children:[_>0&&", ",o("span",{...M(E.lang),children:E.text})]},_))}),o("ol",{className:"clover-annotations-list",children:st.map((E,_)=>o(wt,{entry:E,canvas:A.get(p.canvasId)??(j==null?void 0:j.canvas),index:_,headingLevel:Q?H+1:H,language:l,showLabel:r,selected:E.id===d,highlighted:E.id===S,renderEntry:L,onSelect:N,onHighlight:T},E.id))})]},p.canvasId)})]},i.key)}),$]}):null});function tn(n,s){const e=n.target.rect?void 0:n.target.svg,u=yt(nn,!!e);return O(()=>{var m,l;const a=e?(m=u==null?void 0:u.readSvgShape(e))==null?void 0:m.box:void 0,c=n.target.rect??(a?{x:a.x,y:a.y,w:a.width,h:a.height}:void 0);return!c||!s||n.bodies.some(r=>r.image)?null:_t(s,c,(l=n.layer)==null?void 0:l.image)},[n,s,e,u])}const nn=()=>import("./svg-shape-D1K-WNrY.mjs");function wt({entry:n,canvas:s,index:e,headingLevel:u,language:a,showLabel:c,selected:m,highlighted:l,renderEntry:r,onSelect:h,onHighlight:d}){const{hostLanguage:S,t:L,langOf:N}=Z(),T=sn(n,a),b=T.text?T:{text:String(e+1)},$=dt(n.target.t),f=$?{text:L("annotationsShowTime"),lang:N("annotationsShowTime")}:c,k=!f.lang&&!Bt(b.lang,S),w=b.text?`${f.text}: ${b.text}`:f.text,{clover:I}=D("Annotations"),A=tn(n,s);return o("li",{className:"clover-annotations-entry","data-entry":n.id,"data-selected":m,"data-highlighted":l,onMouseEnter:()=>d(n.id),onMouseLeave:()=>d(null),onFocus:()=>d(n.id),onBlur:()=>d(null),onClick:C=>{C.target.closest("a, button")||h(n.id)},children:[$&&o(Dt,{start:$.start,className:"clover-annotations-time"}),o(Ut,{className:"clover-annotations-thumbnail",source:A,request:I.request}),o("div",{className:"clover-annotations-body clover-cue-text",children:[r?r(n):o(Pt,{bodies:n.bodies,language:a,headingLevel:u}),o(en,{annotation:n.annotation})]}),o("button",{type:"button",className:"clover-annotations-show","aria-pressed":m,"aria-label":k?w:void 0,style:qt,onClick:()=>h(n.id),children:!k&&o(it,{children:[o("span",{...M(f.lang),children:[f.text,b.text&&":"]}),b.text&&o(it,{children:[" ",o("span",{...M(b.lang),children:b.text})]})]})})]})}function en({annotation:n}){const{clover:s}=D("Annotations"),{t:e,langOf:u}=Z(),a=O(()=>Ht(n)??jt(n),[n]);if(!a)return null;const c=e("annotationsOpenLink"),m=u("annotationsOpenLink");return!a.canvasId&&!a.manifestId?o("a",{className:"clover-annotations-link",href:a.id,target:"_blank",rel:"noopener noreferrer",...M(m),children:c}):o("button",{type:"button",className:"clover-annotations-link",...M(m),onClick:l=>{var h;const r=l.currentTarget.closest(".clover-root");Gt(s,a)&&((h=r==null?void 0:r.querySelector(".clover-canvas-viewport"))==null||h.focus({preventScroll:true}))},children:c})}function sn(n,s){const{text:e="",lang:u}=Ft(n.bodies,s);return{text:e.slice(0,120),...u?{lang:u}:{}}}export{wn as Annotations};
@@ -1 +1 @@
1
- var Q=Object.defineProperty;var tt=(t,o,e)=>o in t?Q(t,o,{enumerable:true,configurable:true,writable:true,value:e}):t[o]=e;var B=(t,o,e)=>tt(t,typeof o!="symbol"?o+"":o,e);import{ac as N,aJ as ot,ad as D,B as W,T as et,A as L,y as j,q as K,_ as nt,$ as st,u as C,k as it,aK as rt,t as at,d as Z,l as ct,R as lt}from"./shared-CzlxExGR.mjs";import{a as ht}from"./annotation-name-DFdgSllS.mjs";import{r as ut}from"./link-DI1Gv9P_.mjs";import{T as dt}from"./Tip-Bsd8bCx9.mjs";import{c as pt}from"./Camera-Cj_vOD9V.mjs";import"./styles-C51FhQQr.mjs";const q=t=>Array.isArray(t)?t.flatMap(q):ot.includes(t==null?void 0:t.type)?q(t.items??[]):t==null?[]:[t],ft=t=>q(t).map(o=>N(o)),gt=(t,o)=>Math.abs(t.end-o.start)<.001,H=(t,o,e)=>t+(o-t)*e;function vt(t){const o=[...t].sort((e,n)=>e.start-n.start);return o.map((e,n)=>{const i=o[n+1];return e.end===1/0&&i?{...e,end:i.start}:e})}function U(t,o){let e=0,n=t.length-1,i=-1;for(;e<=n;){const d=e+n>>1;t[d].start<=o?(i=d,e=d+1):n=d-1}const r=t[i];if(!r||o>=r.end)return null;const c=t[i+1];if(!c||!gt(r,c)||!Number.isFinite(r.end))return r.world;const a=(o-r.start)/(r.end-r.start||1),[h,l]=[r.world,c.world];return{x:H(h.x,l.x,a),y:H(h.y,l.y,a),width:H(h.width,l.width,a),height:H(h.height,l.height,a)}}const G=t=>t.overlays??(t.overlays=new wt(t.host));class wt{constructor(o){B(this,"container");B(this,"overlays",new Map);B(this,"view");const e=document.createElement("div");e.className="clover-canvas-overlays",Object.assign(e.style,{position:"absolute",inset:"0",overflow:"clip",pointerEvents:"none"}),o.appendChild(e),this.container=e}add(o,e){return this.overlays.set(o,e),o.classList.add("clover-canvas-overlay"),Object.assign(o.style,{position:"absolute",top:"0",left:"0",pointerEvents:"auto"}),o.parentElement!==this.container&&this.container.appendChild(o),()=>{this.overlays.delete(o)}}move(o,e){this.overlays.has(o)&&(this.overlays.set(o,e),this.view&&this.position(...this.view,o))}position(o,e,n){this.view=[o,e];const i=o.rotation*180/Math.PI,r=Math.cos(o.rotation)>.9999,c=r?window.devicePixelRatio||1:0,a=h=>c?Math.round(h*c)/c:h;for(const[h,l]of this.overlays){if(n&&h!==n)continue;const d=pt(o,e,{x:l.x+l.width/2,y:l.y+l.height/2}),f=a(d.x-l.width*o.zoom/2),g=a(d.y-l.height*o.zoom/2),p=a(l.width*o.zoom),v=a(l.height*o.zoom);h.style.width=`${p}px`,h.style.height=`${v}px`,h.style.transform=`translate(${f}px, ${g}px)`+(i?` rotate(${i}deg)`:"");const{style:w,dataset:m}=h;if(r){w.setProperty("--clover-overlay-x",`${d.x}px`),w.setProperty("--clover-overlay-top",`${g}px`),w.setProperty("--clover-overlay-bottom",`${g+v}px`);const $=d.y>e.height/2?"above":"below";m.overlayRoom!==$&&(m.overlayRoom=$)}else w.removeProperty("--clover-overlay-x"),w.removeProperty("--clover-overlay-top"),w.removeProperty("--clover-overlay-bottom"),delete m.overlayRoom}}dispose(){this.overlays.clear(),this.container.remove()}}const mt=t=>"start"in t,St=t=>{var o,e;return mt(t)?t.start:(e=(o=t.track)==null?void 0:o[0])==null?void 0:e.start},xt=(t,o)=>!t.track||U(t.track,o)!==null;function $t(t,o){return xt(t,o.currentTime)?false:(o.currentTime=t.track[0].start,true)}function yt(t,o,e){var r,c,a;const n=ft(t==null?void 0:t.target);if(!((r=n[0])!=null&&r.rect)||!((c=n[0])!=null&&c.t))return null;const i=[];for(const h of n){const l=W((a=h.t)==null?void 0:a.replace(/^npt:/,""));if(!h.rect||!l)continue;const{x:d,y:f,w:g,h:p}=h.rect,v=o({x:d,y:f,width:g,height:p},h.id,e);v&&i.push({start:l.start,end:l.end??1/0,world:v})}return i.length?vt(i):null}function J(t,o){const{text:e,lang:n}=at(t,o);return e?{page:{text:e,...n?{lang:n}:{}}}:{}}function Kt(t,o){var n;const e=[];for(const{annotation:i,pageLabel:r,pageId:c}of t){const a=N([i==null?void 0:i.target].flat()[0]),h=W((n=a==null?void 0:a.t)==null?void 0:n.replace(/^npt:/,""));if(!h||a.rect||a.point||a.svg)continue;const{text:l,lang:d}=X(i,o);e.push({id:i.id,...l?{label:l}:{},...d?{lang:d}:{},...h,...J(r,o),...c?{pageId:c}:{}})}return e}const S=40;function Nt(t,o,e=null,n){var r;const i=[];for(const{annotation:c,targetIndex:a,pageLabel:h,pageId:l,place:d}of t){const f=N(c==null?void 0:c.target);if(!f)continue;let g=null,p;const v=yt(c,o,a);if(v){const{x:s,y:u,w:k,h:R}=f.rect;g={x:s,y:u,width:k,height:R}}else if(f.rect){const{x:s,y:u,w:k,h:R}=f.rect;g={x:s,y:u,width:k,height:R}}else if(f.point){const{x:s,y:u}=f.point;g={x:s-S/2,y:u-S/2,width:S,height:S},p={kind:"point"}}else if(f.svg&&e){const s=e(f.svg);s&&(g=s.box,p={kind:"svg",svg:s})}if(!g)continue;const w=v?v[0].world:o(g,f.id,a);if(!w)continue;const{text:m,lang:$}=X(c,n),P=ut(c),T=(r=D(c).find(s=>(s==null?void 0:s.type)==="Image"&&/^https?:\/\//i.test(s.id??"")))==null?void 0:r.id;i.push({id:c.id,label:m,...$?{lang:$}:{},world:w,...p?{shape:p}:{},...v?{track:v}:{},...P?{link:P}:{},...T?{image:T}:{},...J(h,n),...l?{pageId:l}:{},...d?{place:d}:{}})}return i}const V=({world:t})=>t.width*t.height,kt=(t,o)=>t.x>=o.x&&t.y>=o.y&&t.x+t.width<=o.x+o.width&&t.y+t.height<=o.y+o.height,y=t=>String(Math.round(t*1e3)/1e3||0);function bt(t,o){var g,p;const e=t.world,n=o.world;if(((g=o.shape)==null?void 0:g.kind)==="point"||n.x>=e.x+e.width||n.x+n.width<=e.x||n.y>=e.y+e.height||n.y+n.height<=e.y)return null;const[i,r]=[e.width,e.height],[c,a]=[n.x-e.x,n.y-e.y],h=`${y(-i/10)} ${y(-r/10)} ${y(i*1.2)} ${y(r*1.2)}`,l=`M${y(-i/10)} ${y(-r/10)}h${y(i*1.2)}v${y(r*1.2)}h${y(-i*1.2)}Z`;let d;if(((p=o.shape)==null?void 0:p.kind)==="svg"){const{box:v,shapes:w}=o.shape.svg,m=w.map(({tag:$,attributes:P})=>`<${$} ${Object.entries(P).map(([T,s])=>`${T}="${s}"`).join(" ")}/>`).join("");d=`<mask id="m"><path fill="#fff" d="${l}"/><svg x="${y(c)}" y="${y(a)}" width="${y(n.width)}" height="${y(n.height)}" viewBox="${v.x} ${v.y} ${Math.max(v.width,1)} ${Math.max(v.height,1)}" preserveAspectRatio="none" overflow="visible"><g fill="#000">${m}</g></svg></mask><path d="${l}" mask="url(#m)"/>`}else d=`<path fill-rule="evenodd" d="${l}M${y(c)} ${y(a)}h${y(n.width)}v${y(n.height)}h${y(-n.width)}Z"/>`;const f=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="${h}" preserveAspectRatio="none">${d}</svg>`;return`url("data:image/svg+xml,${encodeURIComponent(f)}")`}const qt=({renderer:t,placed:o,sceneVersion:e,active:n,selected:i,onActivate:r,onSelect:c,onFollow:a,media:h})=>{const l=et(()=>{const s=new Map;return[...o].sort((u,k)=>V(k)-V(u)).forEach((u,k)=>s.set(u,k)),s},[o]),d=o.find(s=>s.id===n),f=L(null);j(()=>{const s=o.find(u=>u.id===i&&u.track);i||(f.current=null),!(!s||!h||f.current===i)&&(f.current=i,$t(s,h))},[o,i,h]);const g=s=>{const u=l.get(s)??0;return d?s===d?o.length:u>(l.get(d)??0)&&!s.track&&!d.track&&kt(s.world,d.world)?o.length+1+u:u:u},p=L(new Map),v=L(new Map),w=L(new WeakMap),m=L({placed:o,current:d,depthOf:g});m.current={placed:o,current:d,depthOf:g};const $=K(s=>{const{placed:u,current:k,depthOf:R}=m.current,O=M=>v.current.get(M.id),x=k&&O(k)!==null?k:void 0,b=M=>{const A=p.current.get(M.id);if(!A)return;const F=O(M),I=x&&M!==x&&F!==null&&R(M)<u.length?bt({...M,world:F??M.world},{...x,world:O(x)??x.world}):null;(w.current.get(A)??"")!==(I??"")&&(w.current.set(A,I??""),I?A.style.setProperty("--clover-annotation-mask",I):A.style.removeProperty("--clover-annotation-mask"))};s&&s!==k?b(s):u.forEach(b)},[]);nt(()=>$());const P=K((s,u)=>{u?p.current.set(s,u):p.current.delete(s)},[]),T=K((s,u)=>{v.current.set(s.id,u),$(s)},[$]);return st(C(it,{children:o.map((s,u)=>C(Tt,{entry:s,name:s.label??String(u+1),lang:s.label?s.lang:void 0,depth:g(s),register:P,onMove:T,renderer:t,active:n===s.id,selected:i===s.id,onActivate:r,onSelect:c,onFollow:a,media:h},`${s.id}|${e}`))}),G(t).container)};let Mt;const _=()=>Mt??(Mt=import("./panClearOfControls-Cn2ZXsZi.mjs")),Tt=({entry:t,name:o,lang:e,depth:n,register:i,onMove:r,renderer:c,active:a,selected:h,onActivate:l,onSelect:d,onFollow:f,media:g})=>{var A,F,I;const[p,v]=Z(null),{id:w,place:m}=t,$=m&&`${m.index} / ${m.total}`,P=K(E=>{v(E),i(w,E)},[w,i]),{x:T,y:s,width:u,height:k}=t.world;j(()=>{if(!p)return;const E=G(c).add(p,{x:T,y:s,width:u,height:k});return c.invalidate(),E},[p,c,T,s,u,k]);const R=Et(p,t.track,c,g,()=>l(null),E=>r(t,E)),{link:O}=t,x=O&&!O.canvasId&&!O.manifestId?O.id:void 0,b=O&&!x&&f?()=>f(t):void 0;return C(x?"a":"button",{ref:P,...x?{href:x,target:"_blank",rel:"noopener noreferrer"}:{type:"button"},id:t.id,className:"clover-canvas-annotation",hidden:!R,"data-active":a?"true":"false","data-shape":((A=t.shape)==null?void 0:A.kind)??"rect","data-track":t.track?"":void 0,"data-link":x||b?"true":void 0,"aria-label":$?`${o} ${$}`:o,"aria-current":h?"true":void 0,...ct(e),style:{"--clover-annotation-depth":n},onMouseEnter:()=>l(t.id),onMouseLeave:()=>l(null),onFocus:()=>{l(t.id),_()},onKeyUp:E=>{if(E.key!=="Tab")return;const z=E.currentTarget;_().then(({panClearOfControls:Y})=>{document.activeElement===z&&Y(c,z)})},onBlur:()=>l(null),onKeyDown:At,onClick:E=>{E.stopPropagation(),!x&&(b?b():d(t))},children:[((F=t.shape)==null?void 0:F.kind)==="point"&&C("span",{className:"clover-canvas-annotation-point","aria-hidden":"true"}),((I=t.shape)==null?void 0:I.kind)==="svg"&&C(Ot,{svg:t.shape.svg}),C(dt,{label:o,scrolls:true,image:t.image,after:$})]})};function Et(t,o,e,n,i,r){const c=!!o&&n!==void 0,[a,h]=Z(()=>!c||(n?U(o,n.currentTime)!==null:false)),l=L(i);l.current=i;const d=L(r);return d.current=r,j(()=>{if(!o||n===void 0){h(true);return}if(!n){h(false);return}let f;const g=x=>{var A,F,I;const b=U(o,x);b&&t&&((A=e.overlays)==null||A.move(t,b)),d.current(b);const M=b!==null;if(M!==f){if(f=M,!M&&t){const E=t.matches(":hover");t.contains(document.activeElement)?(I=(F=e.overlays)==null?void 0:F.container.parentElement)==null||I.focus({preventScroll:true}):E&&l.current()}h(M)}},p=n,v=()=>typeof p.requestVideoFrameCallback=="function"&&p.videoWidth>0;let w=0,m=0;const $=(x,{mediaTime:b})=>{g(b),m=p.requestVideoFrameCallback($)},P=()=>{g(n.currentTime),w=requestAnimationFrame(P)},T=()=>{cancelAnimationFrame(w),m&&p.cancelVideoFrameCallback(m),w=m=0},s=()=>{T(),v()?m=p.requestVideoFrameCallback($):w=requestAnimationFrame(P)},u=()=>g(n.currentTime),k=()=>n.paused&&u(),R=()=>{T(),u()},O=[["play",s],["pause",R],["ended",R],["seeking",u],["seeked",u],["loadeddata",u],["timeupdate",k]];return O.forEach(([x,b])=>n.addEventListener(x,b)),u(),n.paused||s(),()=>{T(),O.forEach(([x,b])=>n.removeEventListener(x,b))}},[t,o,n,e]),a}const Ot=({svg:t})=>{const{x:o,y:e,width:n,height:i}=t.box,r=t.shapes.map(({tag:c,attributes:a},h)=>lt.createElement(c,{key:h,...a,vectorEffect:"non-scaling-stroke"}));return C("svg",{className:"clover-canvas-annotation-shape",viewBox:`${o} ${e} ${Math.max(n,1)} ${Math.max(i,1)}`,preserveAspectRatio:"none","aria-hidden":"true",focusable:"false",children:[C("g",{children:r}),C("g",{children:r}),C("g",{children:r})]})};function X(t,o){return ht(rt(t),o)}const Pt={ArrowDown:()=>32,ArrowUp:()=>-32,PageDown:t=>t.clientHeight-32,PageUp:t=>32-t.clientHeight,End:t=>t.scrollHeight,Home:t=>-t.scrollHeight};function At(t){const o=t.currentTarget.querySelector(":scope > .clover-tip"),e=Pt[t.key];if(!o||!e||t.altKey||t.ctrlKey||t.metaKey)return false;const n=e(o);return(n>0?o.scrollHeight-o.clientHeight-o.scrollTop:o.scrollTop)<1?false:(t.preventDefault(),o.scrollBy({top:n}),true)}function Ut(t,o){const e=new Map;for(const{annotation:n,targetIndex:i}of t??[]){const r=N([n==null?void 0:n.target].flat()[0]);if(r.rect||r.point||r.svg||r.t||!D(n).some(a=>typeof(a==null?void 0:a.value)=="string"||(a==null?void 0:a.type)==="Image"))continue;const c=(o==null?void 0:o.find(a=>a.id===r.id))??(r.id||o==null?void 0:o[i]);c&&e.set(c.id,[...e.get(c.id)??[],n])}return e}export{qt as A,$t as g,Nt as p,St as s,Kt as t,Ut as w};
1
+ var Q=Object.defineProperty;var tt=(t,o,e)=>o in t?Q(t,o,{enumerable:true,configurable:true,writable:true,value:e}):t[o]=e;var B=(t,o,e)=>tt(t,typeof o!="symbol"?o+"":o,e);import{ad as N,aK as ot,ae as D,B as W,T as et,A as L,y as j,q as K,_ as nt,$ as st,u as C,k as it,aL as rt,t as at,d as Z,l as ct,R as lt}from"./shared-D7rQBuil.mjs";import{a as ht}from"./annotation-name-DWykwcvV.mjs";import{r as ut}from"./link-BMOL3_MA.mjs";import{T as dt}from"./Tip-Bwom9zEV.mjs";import{c as pt}from"./Camera-DyctUMDb.mjs";import"./styles-BBr4khzS.mjs";const q=t=>Array.isArray(t)?t.flatMap(q):ot.includes(t==null?void 0:t.type)?q(t.items??[]):t==null?[]:[t],ft=t=>q(t).map(o=>N(o)),gt=(t,o)=>Math.abs(t.end-o.start)<.001,H=(t,o,e)=>t+(o-t)*e;function vt(t){const o=[...t].sort((e,n)=>e.start-n.start);return o.map((e,n)=>{const i=o[n+1];return e.end===1/0&&i?{...e,end:i.start}:e})}function U(t,o){let e=0,n=t.length-1,i=-1;for(;e<=n;){const d=e+n>>1;t[d].start<=o?(i=d,e=d+1):n=d-1}const r=t[i];if(!r||o>=r.end)return null;const c=t[i+1];if(!c||!gt(r,c)||!Number.isFinite(r.end))return r.world;const a=(o-r.start)/(r.end-r.start||1),[h,l]=[r.world,c.world];return{x:H(h.x,l.x,a),y:H(h.y,l.y,a),width:H(h.width,l.width,a),height:H(h.height,l.height,a)}}const G=t=>t.overlays??(t.overlays=new wt(t.host));class wt{constructor(o){B(this,"container");B(this,"overlays",new Map);B(this,"view");const e=document.createElement("div");e.className="clover-canvas-overlays",Object.assign(e.style,{position:"absolute",inset:"0",overflow:"clip",pointerEvents:"none"}),o.appendChild(e),this.container=e}add(o,e){return this.overlays.set(o,e),o.classList.add("clover-canvas-overlay"),Object.assign(o.style,{position:"absolute",top:"0",left:"0",pointerEvents:"auto"}),o.parentElement!==this.container&&this.container.appendChild(o),()=>{this.overlays.delete(o)}}move(o,e){this.overlays.has(o)&&(this.overlays.set(o,e),this.view&&this.position(...this.view,o))}position(o,e,n){this.view=[o,e];const i=o.rotation*180/Math.PI,r=Math.cos(o.rotation)>.9999,c=r?window.devicePixelRatio||1:0,a=h=>c?Math.round(h*c)/c:h;for(const[h,l]of this.overlays){if(n&&h!==n)continue;const d=pt(o,e,{x:l.x+l.width/2,y:l.y+l.height/2}),f=a(d.x-l.width*o.zoom/2),g=a(d.y-l.height*o.zoom/2),p=a(l.width*o.zoom),v=a(l.height*o.zoom);h.style.width=`${p}px`,h.style.height=`${v}px`,h.style.transform=`translate(${f}px, ${g}px)`+(i?` rotate(${i}deg)`:"");const{style:w,dataset:m}=h;if(r){w.setProperty("--clover-overlay-x",`${d.x}px`),w.setProperty("--clover-overlay-top",`${g}px`),w.setProperty("--clover-overlay-bottom",`${g+v}px`);const $=d.y>e.height/2?"above":"below";m.overlayRoom!==$&&(m.overlayRoom=$)}else w.removeProperty("--clover-overlay-x"),w.removeProperty("--clover-overlay-top"),w.removeProperty("--clover-overlay-bottom"),delete m.overlayRoom}}dispose(){this.overlays.clear(),this.container.remove()}}const mt=t=>"start"in t,St=t=>{var o,e;return mt(t)?t.start:(e=(o=t.track)==null?void 0:o[0])==null?void 0:e.start},xt=(t,o)=>!t.track||U(t.track,o)!==null;function $t(t,o){return xt(t,o.currentTime)?false:(o.currentTime=t.track[0].start,true)}function yt(t,o,e){var r,c,a;const n=ft(t==null?void 0:t.target);if(!((r=n[0])!=null&&r.rect)||!((c=n[0])!=null&&c.t))return null;const i=[];for(const h of n){const l=W((a=h.t)==null?void 0:a.replace(/^npt:/,""));if(!h.rect||!l)continue;const{x:d,y:f,w:g,h:p}=h.rect,v=o({x:d,y:f,width:g,height:p},h.id,e);v&&i.push({start:l.start,end:l.end??1/0,world:v})}return i.length?vt(i):null}function X(t,o){const{text:e,lang:n}=at(t,o);return e?{page:{text:e,...n?{lang:n}:{}}}:{}}function Kt(t,o){var n;const e=[];for(const{annotation:i,pageLabel:r,pageId:c}of t){const a=N([i==null?void 0:i.target].flat()[0]),h=W((n=a==null?void 0:a.t)==null?void 0:n.replace(/^npt:/,""));if(!h||a.rect||a.point||a.svg)continue;const{text:l,lang:d}=Y(i,o);e.push({id:i.id,...l?{label:l}:{},...d?{lang:d}:{},...h,...X(r,o),...c?{pageId:c}:{}})}return e}const S=40;function Nt(t,o,e=null,n){var r;const i=[];for(const{annotation:c,targetIndex:a,pageLabel:h,pageId:l,place:d}of t){const f=N(c==null?void 0:c.target);if(!f)continue;let g=null,p;const v=yt(c,o,a);if(v){const{x:s,y:u,w:k,h:R}=f.rect;g={x:s,y:u,width:k,height:R}}else if(f.rect){const{x:s,y:u,w:k,h:R}=f.rect;g={x:s,y:u,width:k,height:R}}else if(f.point){const{x:s,y:u}=f.point;g={x:s-S/2,y:u-S/2,width:S,height:S},p={kind:"point"}}else if(f.svg&&e){const s=e(f.svg);s&&(g=s.box,p={kind:"svg",svg:s})}if(!g)continue;const w=v?v[0].world:o(g,f.id,a);if(!w)continue;const{text:m,lang:$}=Y(c,n),P=ut(c),T=(r=D(c).find(s=>(s==null?void 0:s.type)==="Image"&&/^https?:\/\//i.test(s.id??"")))==null?void 0:r.id;i.push({id:c.id,label:m,...$?{lang:$}:{},world:w,...p?{shape:p}:{},...v?{track:v}:{},...P?{link:P}:{},...T?{image:T}:{},...X(h,n),...l?{pageId:l}:{},...d?{place:d}:{}})}return i}const V=({world:t})=>t.width*t.height,kt=(t,o)=>t.x>=o.x&&t.y>=o.y&&t.x+t.width<=o.x+o.width&&t.y+t.height<=o.y+o.height,y=t=>String(Math.round(t*1e3)/1e3||0);function bt(t,o){var g,p;const e=t.world,n=o.world;if(((g=o.shape)==null?void 0:g.kind)==="point"||n.x>=e.x+e.width||n.x+n.width<=e.x||n.y>=e.y+e.height||n.y+n.height<=e.y)return null;const[i,r]=[e.width,e.height],[c,a]=[n.x-e.x,n.y-e.y],h=`${y(-i/10)} ${y(-r/10)} ${y(i*1.2)} ${y(r*1.2)}`,l=`M${y(-i/10)} ${y(-r/10)}h${y(i*1.2)}v${y(r*1.2)}h${y(-i*1.2)}Z`;let d;if(((p=o.shape)==null?void 0:p.kind)==="svg"){const{box:v,shapes:w}=o.shape.svg,m=w.map(({tag:$,attributes:P})=>`<${$} ${Object.entries(P).map(([T,s])=>`${T}="${s}"`).join(" ")}/>`).join("");d=`<mask id="m"><path fill="#fff" d="${l}"/><svg x="${y(c)}" y="${y(a)}" width="${y(n.width)}" height="${y(n.height)}" viewBox="${v.x} ${v.y} ${Math.max(v.width,1)} ${Math.max(v.height,1)}" preserveAspectRatio="none" overflow="visible"><g fill="#000">${m}</g></svg></mask><path d="${l}" mask="url(#m)"/>`}else d=`<path fill-rule="evenodd" d="${l}M${y(c)} ${y(a)}h${y(n.width)}v${y(n.height)}h${y(-n.width)}Z"/>`;const f=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="${h}" preserveAspectRatio="none">${d}</svg>`;return`url("data:image/svg+xml,${encodeURIComponent(f)}")`}const qt=({renderer:t,placed:o,sceneVersion:e,active:n,selected:i,onActivate:r,onSelect:c,onFollow:a,media:h})=>{const l=et(()=>{const s=new Map;return[...o].sort((u,k)=>V(k)-V(u)).forEach((u,k)=>s.set(u,k)),s},[o]),d=o.find(s=>s.id===n),f=L(null);j(()=>{const s=o.find(u=>u.id===i&&u.track);i||(f.current=null),!(!s||!h||f.current===i)&&(f.current=i,$t(s,h))},[o,i,h]);const g=s=>{const u=l.get(s)??0;return d?s===d?o.length:u>(l.get(d)??0)&&!s.track&&!d.track&&kt(s.world,d.world)?o.length+1+u:u:u},p=L(new Map),v=L(new Map),w=L(new WeakMap),m=L({placed:o,current:d,depthOf:g});m.current={placed:o,current:d,depthOf:g};const $=K(s=>{const{placed:u,current:k,depthOf:R}=m.current,O=M=>v.current.get(M.id),x=k&&O(k)!==null?k:void 0,b=M=>{const A=p.current.get(M.id);if(!A)return;const F=O(M),I=x&&M!==x&&F!==null&&R(M)<u.length?bt({...M,world:F??M.world},{...x,world:O(x)??x.world}):null;(w.current.get(A)??"")!==(I??"")&&(w.current.set(A,I??""),I?A.style.setProperty("--clover-annotation-mask",I):A.style.removeProperty("--clover-annotation-mask"))};s&&s!==k?b(s):u.forEach(b)},[]);nt(()=>$());const P=K((s,u)=>{u?p.current.set(s,u):p.current.delete(s)},[]),T=K((s,u)=>{v.current.set(s.id,u),$(s)},[$]);return st(C(it,{children:o.map((s,u)=>C(Tt,{entry:s,name:s.label??String(u+1),lang:s.label?s.lang:void 0,depth:g(s),register:P,onMove:T,renderer:t,active:n===s.id,selected:i===s.id,onActivate:r,onSelect:c,onFollow:a,media:h},`${s.id}|${e}`))}),G(t).container)};let Mt;const _=()=>Mt??(Mt=import("./panClearOfControls-Cn2ZXsZi.mjs")),Tt=({entry:t,name:o,lang:e,depth:n,register:i,onMove:r,renderer:c,active:a,selected:h,onActivate:l,onSelect:d,onFollow:f,media:g})=>{var A,F,I;const[p,v]=Z(null),{id:w,place:m}=t,$=m&&`${m.index} / ${m.total}`,P=K(E=>{v(E),i(w,E)},[w,i]),{x:T,y:s,width:u,height:k}=t.world;j(()=>{if(!p)return;const E=G(c).add(p,{x:T,y:s,width:u,height:k});return c.invalidate(),E},[p,c,T,s,u,k]);const R=Et(p,t.track,c,g,()=>l(null),E=>r(t,E)),{link:O}=t,x=O&&!O.canvasId&&!O.manifestId?O.id:void 0,b=O&&!x&&f?()=>f(t):void 0;return C(x?"a":"button",{ref:P,...x?{href:x,target:"_blank",rel:"noopener noreferrer"}:{type:"button"},id:t.id,className:"clover-canvas-annotation",hidden:!R,"data-active":a?"true":"false","data-shape":((A=t.shape)==null?void 0:A.kind)??"rect","data-track":t.track?"":void 0,"data-link":x||b?"true":void 0,"aria-label":$?`${o} ${$}`:o,"aria-current":h?"true":void 0,...ct(e),style:{"--clover-annotation-depth":n},onMouseEnter:()=>l(t.id),onMouseLeave:()=>l(null),onFocus:()=>{l(t.id),_()},onKeyUp:E=>{if(E.key!=="Tab")return;const z=E.currentTarget;_().then(({panClearOfControls:J})=>{document.activeElement===z&&J(c,z)})},onBlur:()=>l(null),onKeyDown:At,onClick:E=>{E.stopPropagation(),!x&&(b?b():d(t))},children:[((F=t.shape)==null?void 0:F.kind)==="point"&&C("span",{className:"clover-canvas-annotation-point","aria-hidden":"true"}),((I=t.shape)==null?void 0:I.kind)==="svg"&&C(Ot,{svg:t.shape.svg}),C(dt,{label:o,scrolls:true,image:t.image,after:$})]})};function Et(t,o,e,n,i,r){const c=!!o&&n!==void 0,[a,h]=Z(()=>!c||(n?U(o,n.currentTime)!==null:false)),l=L(i);l.current=i;const d=L(r);return d.current=r,j(()=>{if(!o||n===void 0){h(true);return}if(!n){h(false);return}let f;const g=x=>{var A,F,I;const b=U(o,x);b&&t&&((A=e.overlays)==null||A.move(t,b)),d.current(b);const M=b!==null;if(M!==f){if(f=M,!M&&t){const E=t.matches(":hover");t.contains(document.activeElement)?(I=(F=e.overlays)==null?void 0:F.container.parentElement)==null||I.focus({preventScroll:true}):E&&l.current()}h(M)}},p=n,v=()=>typeof p.requestVideoFrameCallback=="function"&&p.videoWidth>0;let w=0,m=0;const $=(x,{mediaTime:b})=>{g(b),m=p.requestVideoFrameCallback($)},P=()=>{g(n.currentTime),w=requestAnimationFrame(P)},T=()=>{cancelAnimationFrame(w),m&&p.cancelVideoFrameCallback(m),w=m=0},s=()=>{T(),v()?m=p.requestVideoFrameCallback($):w=requestAnimationFrame(P)},u=()=>g(n.currentTime),k=()=>n.paused&&u(),R=()=>{T(),u()},O=[["play",s],["pause",R],["ended",R],["seeking",u],["seeked",u],["loadeddata",u],["timeupdate",k]];return O.forEach(([x,b])=>n.addEventListener(x,b)),u(),n.paused||s(),()=>{T(),O.forEach(([x,b])=>n.removeEventListener(x,b))}},[t,o,n,e]),a}const Ot=({svg:t})=>{const{x:o,y:e,width:n,height:i}=t.box,r=t.shapes.map(({tag:c,attributes:a},h)=>lt.createElement(c,{key:h,...a,vectorEffect:"non-scaling-stroke"}));return C("svg",{className:"clover-canvas-annotation-shape",viewBox:`${o} ${e} ${Math.max(n,1)} ${Math.max(i,1)}`,preserveAspectRatio:"none","aria-hidden":"true",focusable:"false",children:[C("g",{children:r}),C("g",{children:r}),C("g",{children:r})]})};function Y(t,o){return ht(rt(t),o)}const Pt={ArrowDown:()=>32,ArrowUp:()=>-32,PageDown:t=>t.clientHeight-32,PageUp:t=>32-t.clientHeight,End:t=>t.scrollHeight,Home:t=>-t.scrollHeight};function At(t){const o=t.currentTarget.querySelector(":scope > .clover-tip"),e=Pt[t.key];if(!o||!e||t.altKey||t.ctrlKey||t.metaKey)return false;const n=e(o);return(n>0?o.scrollHeight-o.clientHeight-o.scrollTop:o.scrollTop)<1?false:(t.preventDefault(),o.scrollBy({top:n}),true)}function Ut(t,o){const e=new Map;for(const{annotation:n,targetIndex:i}of t??[]){const r=N([n==null?void 0:n.target].flat()[0]);if(r.rect||r.point||r.svg||r.t||!D(n).some(a=>typeof(a==null?void 0:a.value)=="string"||(a==null?void 0:a.type)==="Image"))continue;const c=(o==null?void 0:o.find(a=>a.id===r.id))??(r.id||o==null?void 0:o[i]);c&&e.set(c.id,[...e.get(c.id)??[],n])}return e}export{qt as A,$t as g,Nt as p,St as s,Kt as t,Ut as w};
@@ -1 +1 @@
1
- import{e as g,j as h,T as k,p as B,m as T,c as j,u as e,P as p,z as v}from"./shared-CzlxExGR.mjs";import L from"./Connected-Biw2I6Po.mjs";import{r as R}from"./rendererSurface-Clg0MuAj.mjs";import{j as w}from"./classnames-DukgfdpI.mjs";import{a as x}from"./hooks-C9BeaqLZ.mjs";import{L as c}from"./Loading-C5mJstXv.mjs";const z=v(()=>import("./Connected-DXm_z3q9.mjs")),N=v(()=>import("./Connected-CNlmumRT.mjs"));function F({className:f,style:y,renderers:C,collapseControls:b,onContentStateChange:S,children:r,...n}){var u;const l=g("Body");h(l.clover,S);const o=x(),m=k(()=>B(o),[o]),s=T(C??l.renderers,{canvases:o,bodies:m}),a=s==null?void 0:s.component,i=((u=o.find(({type:t})=>t==="Scene"||t==="Timeline"))==null?void 0:u.type)??"Canvas",d=j(t=>t.status==="loading");return e("div",{"aria-busy":d,className:w("clover-body",f),"data-renderer":a?"custom":i.toLowerCase(),style:{position:"relative",height:"var(--clover-body-height, 60vh)",...y},children:[a?e(a,{canvases:o,bodies:m,children:r}):i==="Scene"?e(p,{fallback:e(c,{overlay:true}),children:e(N,{...n,children:r})}):i==="Timeline"?e(p,{fallback:e(c,{overlay:true}),children:e(z,{...n,children:r})}):e(L,{...n,collapseControls:b,surface:R,children:r}),d&&e(c,{overlay:true})]})}export{F as B};
1
+ import{e as g,j as h,T as k,p as B,m as T,c as j,u as e,P as p,z as v}from"./shared-D7rQBuil.mjs";import L from"./Connected-C5ueafsa.mjs";import{r as R}from"./rendererSurface-I5YJoQ7I.mjs";import{j as w}from"./classnames-DukgfdpI.mjs";import{a as x}from"./hooks-c4C0d8Ry.mjs";import{L as c}from"./Loading-dSW4jDLD.mjs";const z=v(()=>import("./Connected-DqY8Kec2.mjs")),N=v(()=>import("./Connected-CrMsTcn1.mjs"));function F({className:f,style:y,renderers:C,collapseControls:b,onContentStateChange:S,children:r,...n}){var u;const l=g("Body");h(l.clover,S);const o=x(),m=k(()=>B(o),[o]),s=T(C??l.renderers,{canvases:o,bodies:m}),a=s==null?void 0:s.component,i=((u=o.find(({type:t})=>t==="Scene"||t==="Timeline"))==null?void 0:u.type)??"Canvas",d=j(t=>t.status==="loading");return e("div",{"aria-busy":d,className:w("clover-body",f),"data-renderer":a?"custom":i.toLowerCase(),style:{position:"relative",height:"var(--clover-body-height, 60vh)",...y},children:[a?e(a,{canvases:o,bodies:m,children:r}):i==="Scene"?e(p,{fallback:e(c,{overlay:true}),children:e(N,{...n,children:r})}):i==="Timeline"?e(p,{fallback:e(c,{overlay:true}),children:e(z,{...n,children:r})}):e(L,{...n,collapseControls:b,surface:R,children:r}),d&&e(c,{overlay:true})]})}export{F as B};
@@ -1 +1 @@
1
- import{a as o,u as r,l}from"./shared-CzlxExGR.mjs";import{j as n}from"./classnames-DukgfdpI.mjs";function c({error:a,className:s}){const{t,langOf:e}=o();return r("div",{className:n("clover-status",s),"data-status":"error",role:"alert",children:[r("p",{...l(e("statusError")),children:t("statusError")}),r("p",{className:"clover-status-detail",lang:"en",children:a.message})]})}export{c as B};
1
+ import{a as o,u as r,l}from"./shared-D7rQBuil.mjs";import{j as n}from"./classnames-DukgfdpI.mjs";function c({error:a,className:s}){const{t,langOf:e}=o();return r("div",{className:n("clover-status",s),"data-status":"error",role:"alert",children:[r("p",{...l(e("statusError")),children:t("statusError")}),r("p",{className:"clover-status-detail",lang:"en",children:a.message})]})}export{c as B};