@nulib/clover 4.5.2 → 4.5.4
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.
- package/dist/components/Annotations/Annotations.mjs +1 -1
- package/dist/components/Canvas/AnnotationState.mjs +1 -1
- package/dist/components/Canvas/CanvasView.mjs +4 -1
- package/dist/components/Canvas/Connected.mjs +3 -1
- package/dist/components/Canvas/layout.mjs +10 -3
- package/dist/components/Canvas/media/MediaBody.mjs +11 -1
- package/dist/components/Canvas/media/useCaptionTracks.mjs +3 -3
- package/dist/components/Panel/Panel.mjs +1 -1
- package/dist/components/Transcript/Transcript.mjs +12 -5
- package/dist/core/annotation-sets.mjs +5 -4
- package/dist/core/clover.mjs +2 -1
- package/dist/core/language-choice.mjs +1 -9
- package/dist/core/search-service.mjs +0 -2
- package/dist/core/search-set-id.mjs +5 -0
- package/dist/core/search.mjs +1 -1
- package/dist/i18n/languages.mjs +7 -0
- package/dist/index.d.mts +8 -4
- package/dist/index.mjs +2 -1
- package/dist/react/readingLanguages.mjs +2 -2
- package/dist/styles/core.css +1 -1
- package/dist/styles/default.css +1 -1
- package/dist/styles.css +1 -1
- package/dist/templates.css +1 -1
- package/dist/web-components/{About-CQxtgS3v.mjs → About-DCeIMPXs.mjs} +1 -1
- package/dist/web-components/AnnotationItems-vokjqFpJ.mjs +1 -0
- package/dist/web-components/{AnnotationMenu-Byf1nA-O.mjs → AnnotationMenu-n8wZulkI.mjs} +1 -1
- package/dist/web-components/AnnotationState-DJSkyiw0.mjs +1 -0
- package/dist/web-components/{Annotations-BznHfXJT.mjs → Annotations-CgPEcwft.mjs} +1 -1
- package/dist/web-components/{Annotations-0gzRTwNG.mjs → Annotations-D2Iy6k3X.mjs} +2 -2
- package/dist/web-components/{Body-Do9PiELy.mjs → Body-h5ykt3jO.mjs} +1 -1
- package/dist/web-components/{BodyAlert-CpsyVtYl.mjs → BodyAlert-COFJjxVV.mjs} +1 -1
- package/dist/web-components/{Button-DqfkGSl5.mjs → Button-CgTdpmNf.mjs} +1 -1
- package/dist/web-components/{Camera-bs3W3OK0.mjs → Camera-i2fafLIh.mjs} +1 -1
- package/dist/web-components/{Canvas2DBackend-9VTWQiW6.mjs → Canvas2DBackend-C2AYDVCI.mjs} +1 -1
- package/dist/web-components/{CanvasView-m9ooNUhD.mjs → CanvasView-uvJ5kDYN.mjs} +2 -2
- package/dist/web-components/{CaptionDetails-yyxvF-_h.mjs → CaptionDetails-m7amd8MS.mjs} +1 -1
- package/dist/web-components/{ChaptersMenu-DCyICayx.mjs → ChaptersMenu-6dDzuI0m.mjs} +1 -1
- package/dist/web-components/{Chevron-DpLzbCaE.mjs → Chevron-DVax9RTn.mjs} +1 -1
- package/dist/web-components/{ChoiceMenu-_z-WmYj6.mjs → ChoiceMenu-DH4n5jdL.mjs} +1 -1
- package/dist/web-components/Collection-CCjFTuVG.mjs +1 -0
- package/dist/web-components/{CollectionSelect-vO2qCVbK.mjs → CollectionSelect-0wNC970P.mjs} +1 -1
- package/dist/web-components/Connected-CGF0cSzv.mjs +1 -0
- package/dist/web-components/{Connected-wXkAqvjL.mjs → Connected-Cr4h-tHh.mjs} +1 -1
- package/dist/web-components/{Connected-DdmRznGj.mjs → Connected-CssvezHA.mjs} +1 -1
- package/dist/web-components/{Contents-Bfmghfq-.mjs → Contents-Cs7_X8jD.mjs} +1 -1
- package/dist/web-components/{ControlMenu-BaBwqPBx.mjs → ControlMenu-J-gMDza-.mjs} +1 -1
- package/dist/web-components/ControlsFade-BDjMo25i.mjs +1 -0
- package/dist/web-components/{CountMenu-mvPiRqfS.mjs → CountMenu--Z7rGivu.mjs} +1 -1
- package/dist/web-components/Cue-BzhK_KTz.mjs +1 -0
- package/dist/web-components/Document-D5r6QJ9F.mjs +1 -0
- package/dist/web-components/{DomLayers-B4wyEylP.mjs → DomLayers-6wCUT5ap.mjs} +1 -1
- package/dist/web-components/{Download-DPJ0jEM8.mjs → Download-Cff-mZmi.mjs} +1 -1
- package/dist/web-components/{EntryBodies-BeD_WacH.mjs → EntryBodies-D2OorCCX.mjs} +1 -1
- package/dist/web-components/{EntryThumbnail-Cs_9m02f.mjs → EntryThumbnail-iY1cnsAP.mjs} +1 -1
- package/dist/web-components/{FieldPill-3OFVRLOg.mjs → FieldPill-Swznzuhd.mjs} +1 -1
- package/dist/web-components/FrameAnimation-CjHUil6t.mjs +1 -0
- package/dist/web-components/{Gallery-Bt8ZE7KN.mjs → Gallery-CCKnJzQY.mjs} +1 -1
- package/dist/web-components/{GlobeGlyph-BcR00ptO.mjs → GlobeGlyph-D_ZaGUO8.mjs} +1 -1
- package/dist/web-components/{HideToggle-CzoPlLH7.mjs → HideToggle-D_n5lwkp.mjs} +1 -1
- package/dist/web-components/{ImageControls-6aS0WiPB.mjs → ImageControls-Dk8F5lUA.mjs} +1 -1
- package/dist/web-components/{Items-Cylhcqm3.mjs → Items-CbO0GqAH.mjs} +1 -1
- package/dist/web-components/Label-jKQGRD5d.mjs +1 -0
- package/dist/web-components/{LanguageChoice-I2zbqR8s.mjs → LanguageChoice-e7MGPRCd.mjs} +1 -1
- package/dist/web-components/{LanguageMenu-D7wMhxR_.mjs → LanguageMenu-BsWzKg__.mjs} +1 -1
- package/dist/web-components/{LightboxView-P-bt35KW.mjs → LightboxView-BjJ20ylQ.mjs} +1 -1
- package/dist/web-components/{ListEnd-Ch79vv6H.mjs → ListEnd-BXjH6six.mjs} +1 -1
- package/dist/web-components/{Loaded-nfW9JcE1.mjs → Loaded-CL-mpRHG.mjs} +1 -1
- package/dist/web-components/LoadedCanvas-juLvz5vu.mjs +1 -0
- package/dist/web-components/LoadedMap-CowAds3f.mjs +1 -0
- package/dist/web-components/{Loading-27_CRfmr.mjs → Loading-DGPqbYw2.mjs} +1 -1
- package/dist/web-components/{Map-VBS7o7LM.mjs → Map-0ImX0W-q.mjs} +1 -1
- package/dist/web-components/MapView-B-etTZqp.mjs +3 -0
- package/dist/web-components/{Markup-zy52Xoel.mjs → Markup-D5v_pfK-.mjs} +1 -1
- package/dist/web-components/{MediaBody-CMOc8TAG.mjs → MediaBody-BBu6nfi8.mjs} +1 -1
- package/dist/web-components/MediaBody-CU6BHhYo.mjs +1 -0
- package/dist/web-components/{NavDate-Hjz-ZUV8.mjs → NavDate-CJkis3CR.mjs} +1 -1
- package/dist/web-components/{Navigator-B-vYs2Cu.mjs → Navigator-CHoyJlHU.mjs} +1 -1
- package/dist/web-components/{Pager-DtwQLNol.mjs → Pager-CObS0xYo.mjs} +1 -1
- package/dist/web-components/PagerLayout-DEwXb6TF.mjs +1 -0
- package/dist/web-components/{Panel-DrIRuV4y.mjs → Panel-CyP3eeQ5.mjs} +1 -1
- package/dist/web-components/PanelPart-DzeT8Atv.mjs +1 -0
- package/dist/web-components/{PanelToggle-CXt2QzGI.mjs → PanelToggle-CxkqIgxi.mjs} +1 -1
- package/dist/web-components/{PartOfManifest-D5WYs-Kh.mjs → PartOfManifest-Cn_HgJ7I.mjs} +1 -1
- package/dist/web-components/{Pending-DRm1E_06.mjs → Pending-DI4VIePO.mjs} +1 -1
- package/dist/web-components/{PlaceBox-tTnsemz1.mjs → PlaceBox-CHl0X25c.mjs} +1 -1
- package/dist/web-components/{Placeholder-B8Y0k5OK.mjs → Placeholder-Cg3ByN0S.mjs} +1 -1
- package/dist/web-components/{Position-bBjejirV.mjs → Position-DMsgzBqP.mjs} +1 -1
- package/dist/web-components/Primitives-7dLlwNwr.mjs +1 -0
- package/dist/web-components/Provider-YGHeWGVP.mjs +1 -0
- package/dist/web-components/{ReadMore-EjrUmbD0.mjs → ReadMore-D80et8BG.mjs} +1 -1
- package/dist/web-components/Root-CUaKZDXj.mjs +1 -0
- package/dist/web-components/Scene-B9X0CUW5.mjs +1 -0
- package/dist/web-components/{SceneView-B38QNUQr.mjs → SceneView-CunAaAoN.mjs} +1 -1
- package/dist/web-components/{Search-D5f3L4Mi.mjs → Search-C3LFmKil.mjs} +1 -1
- package/dist/web-components/{Sections-kRJ1okE8.mjs → Sections-BT3WtluQ.mjs} +1 -1
- package/dist/web-components/{SeekMarks-DqKFHbLX.mjs → SeekMarks-DazilTox.mjs} +1 -1
- package/dist/web-components/StandaloneItems-8zvqQ2eQ.mjs +1 -0
- package/dist/web-components/{Status-CjtyBONJ.mjs → Status-CvunwdwM.mjs} +1 -1
- package/dist/web-components/{Steps-BEkT1NQg.mjs → Steps-Cw27EFcs.mjs} +1 -1
- package/dist/web-components/{TargetItems-Itkqt2Tb.mjs → TargetItems-_jmvEEEp.mjs} +1 -1
- package/dist/web-components/Timeline-CKGsgOW4.mjs +1 -0
- package/dist/web-components/{Tip-ByWHicZ5.mjs → Tip-DxvfQm-l.mjs} +1 -1
- package/dist/web-components/Transcript-C7pTS92q.mjs +1 -0
- package/dist/web-components/{Transport-C1bwJBQM.mjs → Transport-K0u9YhmA.mjs} +1 -1
- package/dist/web-components/{Transport-DXc48Ck8.mjs → Transport-hORVpyCc.mjs} +1 -1
- package/dist/web-components/{annotation-collection-x1YCBmx8.mjs → annotation-collection-y13MLLGX.mjs} +1 -1
- package/dist/web-components/{annotation-name-dLmSFXbG.mjs → annotation-name-U_Yiz_CP.mjs} +1 -1
- package/dist/web-components/{annotations-content-C0p3XB-1.mjs → annotations-content-B6PtnG5P.mjs} +1 -1
- package/dist/web-components/{body-DhIi0tSa.mjs → body-Eiq36Gou.mjs} +1 -1
- package/dist/web-components/{canvas-BMBhMAO5.mjs → canvas-CDjBaQ75.mjs} +1 -1
- package/dist/web-components/{cloverEngine-CgwMyPTV.mjs → cloverEngine-65MawacL.mjs} +1 -1
- package/dist/web-components/{content-state-reader-DYl2djp5.mjs → content-state-reader-CY-uQUXA.mjs} +1 -1
- package/dist/web-components/{controlGlyphs-CAs5NitM.mjs → controlGlyphs-BI3qUN6D.mjs} +1 -1
- package/dist/web-components/{controls-BFETnZ7b.mjs → controls-Cc5LuT8p.mjs} +1 -1
- package/dist/web-components/{downloads-Dxku671h.mjs → downloads-Pq5Aedpe.mjs} +1 -1
- package/dist/web-components/{dragToClose-BJ07Mayh.mjs → dragToClose-DBlTMmyC.mjs} +1 -1
- package/dist/web-components/{engine-zjivMDZQ.mjs → engine-BHQWLVxn.mjs} +1 -1
- package/dist/web-components/{engines-DdvyIGhW.mjs → engines-BnPu5Ggs.mjs} +1 -1
- package/dist/web-components/{fetchManifest-J64cuwEZ.mjs → fetchManifest-BKGaZzDw.mjs} +1 -1
- package/dist/web-components/{fromManifest-BByCRrb9.mjs → fromManifest-qxJrEfn6.mjs} +1 -1
- package/dist/web-components/{glyphs-3j_wsdG0.mjs → glyphs-PlEEwLrB.mjs} +1 -1
- package/dist/web-components/{hooks-uHKfYuKB.mjs → hooks--n9dMuHb.mjs} +1 -1
- package/dist/web-components/image-layers-BLqN0BKU.mjs +1 -0
- package/dist/web-components/{image-service-content-BzLp6nth.mjs → image-service-content-DHDgPYBV.mjs} +1 -1
- package/dist/web-components/{imageService-BIVE0K1I.mjs → imageService-DfXP25SW.mjs} +1 -1
- package/dist/web-components/{index-CjNkvvfl.mjs → index-BjpZQ9J-.mjs} +1 -1
- package/dist/web-components/index.mjs +1 -1
- package/dist/web-components/{items-DDv9RUBA.mjs → items-BwKkJEOS.mjs} +1 -1
- package/dist/web-components/items-Hk3_LJmo.mjs +1 -0
- package/dist/web-components/label-CGhzU3ki.mjs +1 -0
- package/dist/web-components/layout-DbMbjpx4.mjs +1 -0
- package/dist/web-components/{link-BiM9KdpG.mjs → link-BIc77IY3.mjs} +1 -1
- package/dist/web-components/logo-BV7vGA6L.mjs +1 -0
- package/dist/web-components/{models-CObUKgMl.mjs → models-BXBEOLKe.mjs} +1 -1
- package/dist/web-components/{nodes-BJ4P1NTa.mjs → nodes-BWN5jzoG.mjs} +1 -1
- package/dist/web-components/{overlayImage-lYLaIThc.mjs → overlayImage-jvgcflf8.mjs} +1 -1
- package/dist/web-components/{panel-CoYAVlbj.mjs → panel-BW39vvfB.mjs} +1 -1
- package/dist/web-components/part-C9K_lQE1.mjs +1 -0
- package/dist/web-components/{playerSurface-DuHYLLBb.mjs → playerSurface-PBbBGoj5.mjs} +1 -1
- package/dist/web-components/{pointer--iHWeLVV.mjs → pointer-DsqyiOIC.mjs} +1 -1
- package/dist/web-components/{provider-DcsevgMJ.mjs → provider-Dg6Gi5Ft.mjs} +1 -1
- package/dist/web-components/{range-regions-Bnyl9SWk.mjs → range-regions-BmSXWBAS.mjs} +1 -1
- package/dist/web-components/{read-more-C9PqroD1.mjs → read-more-BstyFDUC.mjs} +1 -1
- package/dist/web-components/readingLanguages-BY2NUfQE.mjs +1 -0
- package/dist/web-components/{rendererSurface-BAvGJcFy.mjs → rendererSurface-AGFetq7k.mjs} +2 -2
- package/dist/web-components/{renderers-DGfMWk93.mjs → renderers-BjtPgVnV.mjs} +1 -1
- package/dist/web-components/{resource-Dt6dILeb.mjs → resource-i359_a15.mjs} +1 -1
- package/dist/web-components/{save-file-DzI4VfDl.mjs → save-file-nlQm0Sup.mjs} +1 -1
- package/dist/web-components/{search-DLXYDW3B.mjs → search-BPTt1eUz.mjs} +1 -1
- package/dist/web-components/shared-Cqxks7jF.mjs +1 -0
- package/dist/web-components/{show-link-DRW4U86r.mjs → show-link-DwefC5LJ.mjs} +1 -1
- package/dist/web-components/{sizedImage-Bb488in6.mjs → sizedImage-BBoqi5ZU.mjs} +1 -1
- package/dist/web-components/{split-BSvilwgY.mjs → split-DqzkMVr3.mjs} +1 -1
- package/dist/web-components/{status-DCylOE_H.mjs → status-BSpwZ8rO.mjs} +1 -1
- package/dist/web-components/{styles-Cm1KSkd5.mjs → styles-C9QeBpjd.mjs} +1 -1
- package/dist/web-components/three.mjs +1 -1
- package/dist/web-components/{thumbnail-IWjwr85c.mjs → thumbnail-Ckf6EotT.mjs} +1 -1
- package/dist/web-components/{tip-XxruPb74.mjs → tip-DTTyG5KI.mjs} +1 -1
- package/dist/web-components/{toggle-Bm06TZio.mjs → toggle-DAC1XODI.mjs} +1 -1
- package/dist/web-components/{useContainerName-jjktq7OB.mjs → useContainerName-D_XCWIWP.mjs} +1 -1
- package/dist/web-components/{useControlsVisibility-K1HUKs93.mjs → useControlsVisibility-CIjHTnaa.mjs} +1 -1
- package/dist/web-components/{useNearViewport-DpYbV4NQ.mjs → useNearViewport-B5E-oZb_.mjs} +1 -1
- package/dist/web-components/{useScrollTrack-Cy6z-b7G.mjs → useScrollTrack-C2xSfGF6.mjs} +1 -1
- package/dist/web-components/viewer/{AnnotationItems-BnihkLNH.mjs → AnnotationItems-B16qAKiN.mjs} +1 -1
- package/dist/web-components/viewer/{AnnotationMenu-Dha0gE5m.mjs → AnnotationMenu-DgJSq4fy.mjs} +1 -1
- package/dist/web-components/viewer/AnnotationState-YuVCBM29.mjs +1 -0
- package/dist/web-components/viewer/{Annotations-CW-BFATW.mjs → Annotations-Cq5fXZrj.mjs} +1 -1
- package/dist/web-components/viewer/{Annotations-DuWIPFH3.mjs → Annotations-DYkHWOeR.mjs} +2 -2
- package/dist/web-components/viewer/{Canvas2DBackend-mmhuXqdi.mjs → Canvas2DBackend-DvKFoHuh.mjs} +1 -1
- package/dist/web-components/viewer/{CaptionDetails-DA6_oiQF.mjs → CaptionDetails-DxTKPbOM.mjs} +1 -1
- package/dist/web-components/viewer/{ChaptersMenu-C2WL8jFt.mjs → ChaptersMenu-BC3qFrhN.mjs} +1 -1
- package/dist/web-components/viewer/{ChoiceMenu-QB_5keQb.mjs → ChoiceMenu-DXBx-fGv.mjs} +1 -1
- package/dist/web-components/viewer/{Collection-D5a6WYZI.mjs → Collection-CeCEHMv-.mjs} +1 -1
- package/dist/web-components/viewer/{Connected-Di1-LIOg.mjs → Connected-CEraiqd1.mjs} +1 -1
- package/dist/web-components/viewer/{Connected-C1NtY97-.mjs → Connected-DakTdEny.mjs} +1 -1
- package/dist/web-components/viewer/{Contents-BzTwcDZy.mjs → Contents-DOuB3pTB.mjs} +1 -1
- package/dist/web-components/viewer/{ControlMenu-CxmfQ8Cm.mjs → ControlMenu-CBb7ZoP6.mjs} +1 -1
- package/dist/web-components/viewer/ControlsFade-WJ98Wqju.mjs +1 -0
- package/dist/web-components/viewer/{CountMenu-CgQWpBDd.mjs → CountMenu-WadMuI5T.mjs} +1 -1
- package/dist/web-components/viewer/Cue-BF5ZjVa8.mjs +1 -0
- package/dist/web-components/viewer/{Document-DId3Ww6w.mjs → Document-DfRQ7S0l.mjs} +1 -1
- package/dist/web-components/viewer/{DomLayers-D6T0qkEm.mjs → DomLayers-uwjfbBsp.mjs} +1 -1
- package/dist/web-components/viewer/{Download-Cj4jZnPF.mjs → Download-C1nPhWlq.mjs} +1 -1
- package/dist/web-components/viewer/{EntryBodies-JslI0mKb.mjs → EntryBodies-EWZ8rnB_.mjs} +1 -1
- package/dist/web-components/viewer/{EntryThumbnail-CHc7jDuf.mjs → EntryThumbnail-BGpml8t4.mjs} +1 -1
- package/dist/web-components/viewer/{FieldPill-CeO1-KpF.mjs → FieldPill-KWuDZTXX.mjs} +1 -1
- package/dist/web-components/viewer/{FrameAnimation-CCXxhEGY.mjs → FrameAnimation-ChvHbIgp.mjs} +1 -1
- package/dist/web-components/viewer/{Gallery-CLw13i4w.mjs → Gallery-DAal6sgL.mjs} +1 -1
- package/dist/web-components/viewer/{GlobeGlyph-XyW874Xa.mjs → GlobeGlyph-ByDERN9z.mjs} +1 -1
- package/dist/web-components/viewer/{HideToggle-CbduRY6y.mjs → HideToggle-C-gM8Mk8.mjs} +1 -1
- package/dist/web-components/viewer/{ImageControls-BlpTLXbh.mjs → ImageControls-B2aR8D82.mjs} +1 -1
- package/dist/web-components/viewer/{LanguageChoice-D26bb87S.mjs → LanguageChoice-CbcBytbo.mjs} +1 -1
- package/dist/web-components/viewer/{LanguageMenu-ECLF6mSI.mjs → LanguageMenu-D_tV0uO9.mjs} +1 -1
- package/dist/web-components/viewer/{LightboxView-CFvsyP57.mjs → LightboxView-C_Ofd0zk.mjs} +1 -1
- package/dist/web-components/viewer/{ListEnd-BbZ0cF34.mjs → ListEnd-DN2oUjyx.mjs} +1 -1
- package/dist/web-components/viewer/{MapView-DJ0uaPAX.mjs → MapView-C0qrLqaP.mjs} +2 -2
- package/dist/web-components/viewer/MediaBody-CfnBYVg-.mjs +1 -0
- package/dist/web-components/viewer/{MediaBody-BgBDbfHg.mjs → MediaBody-CnKOjrdE.mjs} +1 -1
- package/dist/web-components/viewer/{NavDate-1vpKxZK1.mjs → NavDate-NJcjaWOv.mjs} +1 -1
- package/dist/web-components/viewer/{Navigator-CSlUlVI-.mjs → Navigator-DRRodGLA.mjs} +1 -1
- package/dist/web-components/viewer/{PagerLayout-CeqR69iN.mjs → PagerLayout-Dgbs71Hu.mjs} +1 -1
- package/dist/web-components/viewer/PanelPart-BibD4mAY.mjs +1 -0
- package/dist/web-components/viewer/{PartOfManifest-BBTld3mZ.mjs → PartOfManifest-f8ZMHngG.mjs} +1 -1
- package/dist/web-components/viewer/{PlaceBox-jyu7a0on.mjs → PlaceBox-CamClgeV.mjs} +1 -1
- package/dist/web-components/viewer/{Placeholder-CedWZbsU.mjs → Placeholder-D7t4rsFp.mjs} +1 -1
- package/dist/web-components/viewer/{Search-D_hveAZH.mjs → Search-CednujgR.mjs} +1 -1
- package/dist/web-components/viewer/{SeekMarks-YIQFWYfI.mjs → SeekMarks-gvJ2UZoh.mjs} +1 -1
- package/dist/web-components/viewer/{StandaloneItems-DcLGj-VV.mjs → StandaloneItems-DkquLq5p.mjs} +1 -1
- package/dist/web-components/viewer/{Steps-BLXeVvHo.mjs → Steps-CFmYNpo3.mjs} +1 -1
- package/dist/web-components/viewer/{TargetItems-BNor7HFs.mjs → TargetItems-CfLAMuj8.mjs} +1 -1
- package/dist/web-components/viewer/Transcript-_eA-Dm0M.mjs +1 -0
- package/dist/web-components/viewer/{Transport-DFssphP9.mjs → Transport-5jVVRct0.mjs} +1 -1
- package/dist/web-components/viewer/{Transport-C_pFOBzJ.mjs → Transport-B4K4XAF-.mjs} +1 -1
- package/dist/web-components/viewer/{annotation-collection-BLtyEjru.mjs → annotation-collection-DBuApZiI.mjs} +1 -1
- package/dist/web-components/viewer/{annotation-name-mRcTA1c1.mjs → annotation-name-C-CMfd6g.mjs} +1 -1
- package/dist/web-components/viewer/{annotations-content-DBQgx1j7.mjs → annotations-content-D8UWdcFt.mjs} +1 -1
- package/dist/web-components/viewer/{cloverEngine-BF_4X8lm.mjs → cloverEngine-CKfaQ-Wc.mjs} +1 -1
- package/dist/web-components/viewer/{content-state-reader-Bmd-lwNd.mjs → content-state-reader-BvfAdXET.mjs} +1 -1
- package/dist/web-components/viewer/{dragToClose-aeU6bjg0.mjs → dragToClose-DDJ3XwRu.mjs} +1 -1
- package/dist/web-components/viewer/{fetchManifest-D3mfpSBh.mjs → fetchManifest-pVcLruTs.mjs} +1 -1
- package/dist/web-components/viewer/{host-DKJIdeDV.mjs → host-BbYrtAtM.mjs} +1 -1
- package/dist/web-components/viewer/{image-layers-CwutsuDL.mjs → image-layers-D0QWXFeZ.mjs} +1 -1
- package/dist/web-components/viewer/{image-service-content-DUG6BXnh.mjs → image-service-content-ClTuuZ5p.mjs} +1 -1
- package/dist/web-components/viewer/index.mjs +1 -1
- package/dist/web-components/viewer/{link-BUSPRbyE.mjs → link-CE5biAiK.mjs} +1 -1
- package/dist/web-components/viewer/{overlayImage-D8N9rwQF.mjs → overlayImage-ykHbPvnH.mjs} +1 -1
- package/dist/web-components/viewer/{range-regions-D4lx-cRg.mjs → range-regions-DD-NwcwE.mjs} +1 -1
- package/dist/web-components/viewer/{renderers-CFKRycnu.mjs → renderers-N8qGiR4Q.mjs} +1 -1
- package/dist/web-components/viewer/{save-file-D8fcn3qy.mjs → save-file-Bczd1gGN.mjs} +1 -1
- package/dist/web-components/viewer/{search-CXoMviyv.mjs → search--UfJW1mN.mjs} +1 -1
- package/dist/web-components/viewer/{styles-BjjJM8OS.mjs → styles-LW5XsRcK.mjs} +1 -1
- package/dist/web-components/viewer/{useControlsVisibility-nGLR8EFY.mjs → useControlsVisibility-B1Ag1zm_.mjs} +1 -1
- package/dist/web-components/viewer/viewer-DL8dyfj_.mjs +29 -0
- package/dist/web-components/viewer/{vtt-CMfIBDAL.mjs → vtt-U7j7H25c.mjs} +1 -1
- package/dist/web-components/{viewer-FSKFHjRd.mjs → viewer-CkXVnqu5.mjs} +1 -1
- package/dist/web-components/{vtt-COiqtr-4.mjs → vtt-Di31JcWg.mjs} +1 -1
- package/package.json +1 -1
- package/dist/web-components/AnnotationItems-CcK8lOdr.mjs +0 -1
- package/dist/web-components/AnnotationState-idcYZf3N.mjs +0 -1
- package/dist/web-components/Collection-Kwdu1S-6.mjs +0 -1
- package/dist/web-components/Connected-1kdGMIWC.mjs +0 -1
- package/dist/web-components/ControlsFade-BJe8pU1f.mjs +0 -1
- package/dist/web-components/Cue-DKACn0J1.mjs +0 -1
- package/dist/web-components/Document-CPD-9KDe.mjs +0 -1
- package/dist/web-components/FrameAnimation-2B6rRU4W.mjs +0 -1
- package/dist/web-components/Label-DHHchol3.mjs +0 -1
- package/dist/web-components/LoadedCanvas-Bfrvk-Yt.mjs +0 -1
- package/dist/web-components/LoadedMap-BaakosFd.mjs +0 -1
- package/dist/web-components/MapView-D-RJ69f2.mjs +0 -3
- package/dist/web-components/MediaBody-Bh8301OV.mjs +0 -1
- package/dist/web-components/PagerLayout-D10GPTRD.mjs +0 -1
- package/dist/web-components/PanelPart-xW94FuNJ.mjs +0 -1
- package/dist/web-components/Primitives-PRo4k-fb.mjs +0 -1
- package/dist/web-components/Provider-CrpDmnzZ.mjs +0 -1
- package/dist/web-components/Root-DK9ssTa2.mjs +0 -1
- package/dist/web-components/Scene-DYbvcQXW.mjs +0 -1
- package/dist/web-components/StandaloneItems-C2e9PPxg.mjs +0 -1
- package/dist/web-components/Timeline-g0fwghKo.mjs +0 -1
- package/dist/web-components/Transcript-CsQ9bYfS.mjs +0 -1
- package/dist/web-components/image-layers-BCWDCZEA.mjs +0 -1
- package/dist/web-components/items-Bc1JPQjI.mjs +0 -1
- package/dist/web-components/label-CS0CGhZ5.mjs +0 -1
- package/dist/web-components/layout-CdBuqKxn.mjs +0 -1
- package/dist/web-components/logo-CFz7_HVm.mjs +0 -1
- package/dist/web-components/part-cbvAb44O.mjs +0 -1
- package/dist/web-components/readingLanguages-BB0nHlI0.mjs +0 -1
- package/dist/web-components/shared-DJyYaNgB.mjs +0 -1
- package/dist/web-components/viewer/AnnotationState-fj1N93ri.mjs +0 -1
- package/dist/web-components/viewer/ControlsFade-BVpQ-3q7.mjs +0 -1
- package/dist/web-components/viewer/Cue-DuP2wssL.mjs +0 -1
- package/dist/web-components/viewer/MediaBody-CSzkjuJn.mjs +0 -1
- package/dist/web-components/viewer/PanelPart-BCQo2YZ-.mjs +0 -1
- package/dist/web-components/viewer/Transcript-Crl3zPhV.mjs +0 -1
- package/dist/web-components/viewer/viewer-4EayGlH3.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 "../../
|
|
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 ??
|
|
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(
|
|
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
|
|
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
|
|
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
|
|
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 (!
|
|
85
|
+
if (!startLanguage) return;
|
|
79
86
|
const index = tracks.findIndex(
|
|
80
|
-
(option) => option.language && option.language !== "none" && sameLanguage(option.language,
|
|
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
|
-
}, [
|
|
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-
|
|
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
|
-
|
|
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
|
-
|
|
243
|
-
CONTENTS_SET_ID,
|
|
244
|
+
...ALWAYS_UNLISTED,
|
|
244
245
|
...drawnHidden.filter((id) => !hidden.includes(id))
|
|
245
246
|
];
|
|
246
247
|
unlistedOf.set(drawnHidden, { hidden, ids });
|
package/dist/core/clover.mjs
CHANGED
|
@@ -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
|
|
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
|
};
|
package/dist/core/search.mjs
CHANGED
|
@@ -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;
|
package/dist/i18n/languages.mjs
CHANGED
|
@@ -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
|
};
|
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
|
|
1196
|
-
* own OCR
|
|
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
|
|
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
|
|
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");
|