@fluid-topics/ft-reader-metadata 1.3.51 → 1.3.53
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.
|
@@ -153,7 +153,7 @@ Also for action icons.`,c.colorGray200),contentGlobalSubtle:r.extend("--ftds-con
|
|
|
153
153
|
</${ar(this.element)}>
|
|
154
154
|
`:ir`
|
|
155
155
|
<slot part="text" class="ftds-typography ftds-typography--${this.variant}"></slot>
|
|
156
|
-
`}};qe.styles=[...Ss];Cs([(0,Ra.property)()],qe.prototype,"element",void 0);Cs([(0,Ra.property)()],qe.prototype,"variant",void 0);(0,Ia.customElement)("ft-typography")(he);(0,Ia.customElement)("ftds-typography")(qe);var Es=b($()),yt=b(I()),gr={distance:yt.FtCssVariableFactory.create("--ft-tooltip-distance","","SIZE","4px"),color:yt.FtCssVariableFactory.create("--ft-tooltip-color","","COLOR","#FFFFFF"),backgroundColor:yt.FtCssVariableFactory.create("--ft-tooltip-background-color","","COLOR","#666666"),zIndex:yt.FtCssVariableFactory.create("--ft-tooltip-z-index","","NUMBER","100"),borderRadiusS:yt.FtCssVariableFactory.
|
|
156
|
+
`}};qe.styles=[...Ss];Cs([(0,Ra.property)()],qe.prototype,"element",void 0);Cs([(0,Ra.property)()],qe.prototype,"variant",void 0);(0,Ia.customElement)("ft-typography")(he);(0,Ia.customElement)("ftds-typography")(qe);var Es=b($()),yt=b(I()),gr={distance:yt.FtCssVariableFactory.create("--ft-tooltip-distance","","SIZE","4px"),color:yt.FtCssVariableFactory.create("--ft-tooltip-color","","COLOR","#FFFFFF"),backgroundColor:yt.FtCssVariableFactory.create("--ft-tooltip-background-color","","COLOR","#666666"),zIndex:yt.FtCssVariableFactory.create("--ft-tooltip-z-index","","NUMBER","100"),borderRadiusS:yt.FtCssVariableFactory.extend("--ft-tooltip-border-radius","",yt.designSystemVariables.borderRadiusS),maxWidth:yt.FtCssVariableFactory.create("--ft-tooltip-max-width","","SIZE","150px")},As=Es.css`
|
|
157
157
|
.ft-tooltip--container {
|
|
158
158
|
display: block;
|
|
159
159
|
}
|
|
@@ -1599,7 +1599,7 @@ Also for action icons.`,c.colorGray200),contentGlobalSubtle:r.extend("--ftds-con
|
|
|
1599
1599
|
<slot></slot>
|
|
1600
1600
|
</ft-typography>
|
|
1601
1601
|
</div>
|
|
1602
|
-
`}};$t.elementDefinitions={"ft-typography":he};$t.styles=Ud;(0,ho.customElement)("ft-floating-menu")(Ut);(0,ho.customElement)("ftds-floating-menu")($r);(0,ho.customElement)("ft-floating-menu-item")(Le);(0,ho.customElement)("ft-floating-menu-label")($t);var yo=b(I());function Tu(t){var e;return((e=(0,yo.accessResult)(t))===null||e===void 0?void 0:e.openMode)===$o.EXTERNAL}function _i(t){return Tu(t)?(0,yo.accessResult)(t).originUrl:(0,yo.accessResultUrl)(t)}var Zd=b(zd());var Pi=hn.build("designedReaderMapMetadata");var Kd=b(I());var mo=b($()),Ft=b(X()),Ne=b(I());var rt=b(I());var Wd=b(I()),Ru={setTranslationDestinationLanguage:(t,e)=>{t.translation.destinationLanguage=e.payload},setTranslationSourceLanguage:(t,e)=>{t.translation.sourceLanguage=e.payload},setTranslationProfileId:(t,e)=>{t.translation.profileId=e.payload},setTranslationLoading:(t,e)=>{t.translation.isLoading=e.payload},setTranslationError:(t,e)=>{t.translation.isError=e.payload},setTopicsRating:(t,e)=>{for(let o in e.payload)t.topicsRating[o]=e.payload[o]}},Gd=t=>Wd.FtReduxStore.get({name:"ft-reader-"+t,initialState:{mapId:void 0,renderedTopics:[],visibleTopics:[],map:void 0,toc:void 0,pagesToc:void 0,paginationConfiguration:void 0,currentPage:void 0,scrollTarget:void 0,configuration:void 0,searchInDocumentQuery:void 0,relatives:void 0,mapRating:void 0,topicsRating:{},translation:{sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}},reducers:Ru});var ki=class{constructor(e,o){this.mapId=e,this.paginatedToc=o,this.nodeByTocId={},this.nodeByUrl={},this.duplicatedPrettyUrls=new Set,this.pages=[],this.pageByTocId={}}build(){return{paginationConfiguration:this.paginatedToc.configuration,toc:this.convertNodes(this.paginatedToc.paginatedToc,1),pagesToc:this.extractPagesToc(this.paginatedToc.paginatedToc,1),nodeByTocId:this.nodeByTocId,nodeByUrl:this.nodeByUrl,duplicatedPrettyUrls:this.duplicatedPrettyUrls,pages:this.pages,pageByTocId:this.pageByTocId,translationError:this.paginatedToc.translationError}}extractPagesToc(e,o,n){return e.flatMap(a=>{var i;return a.pageConfiguration&&this.registerPage(this.buildPage(a,n)),a.tocId==null?this.extractPagesToc(a.children,o,n):[{tocId:a.tocId,title:(i=a.title)!==null&&i!==void 0?i:"",untranslatedTitle:a.untranslatedTitle,depth:o,children:this.extractPagesToc(a.children,o+1,a.tocId)}]})}convertNodes(e,o,n){return e.flatMap(a=>{var i,s,l;if(a.tocId==null)return[...this.convertSectionNodes((i=a.pageToc)!==null&&i!==void 0?i:[],o,a.tocId),...this.convertNodes(a.children,o,a.tocId)];let p=(s=a.prettyUrl)===null||s===void 0?void 0:s.replace(/^\//,""),u={tocId:a.tocId,contentId:a.contentId,title:a.title,untranslatedTitle:a.untranslatedTitle,hasRating:a.hasRating,origin:a.origin,prettyUrl:p,depth:o,parentTocId:n,children:[]};this.register(u);let h=this.convertSectionNodes((l=a.pageToc)!==null&&l!==void 0?l:[],o+1,a.tocId),y=this.convertNodes(a.children,o+1,u.tocId);return u.children=[...h,...y],[u]})}convertSectionNodes(e,o,n){return e.flatMap(a=>{var i;let s=(i=a.prettyUrl)===null||i===void 0?void 0:i.replace(/^\//,""),l={...a,prettyUrl:s,depth:o,parentTocId:n,children:[]};return this.register(l),l.children=this.convertSectionNodes(a.children,o+1,a.tocId),[l]})}buildPage(e,o){var n,a,i,s,l,p;let u={number:this.pages.length+1,title:(n=e.title)!==null&&n!==void 0?n:"",untranslatedTitle:e.untranslatedTitle,rootTocId:(a=e.tocId)!==null&&a!==void 0?a:"root",toc:((i=e.pageToc)!==null&&i!==void 0?i:[]).map(g=>this.nodeByTocId[g.tocId]),topics:[],hiddenTopics:[],breadcrumb:o?this.buildBreadcrumb(this.nodeByTocId[o]):[]},h=(g,x)=>(x?u.topics:u.hiddenTopics).push(g),y=(l=(s=e.pageConfiguration)===null||s===void 0?void 0:s.parentsVisibility)!==null&&l!==void 0?l:[];return u.breadcrumb.forEach((g,x)=>{h(g,y[x])}),e.tocId&&h(e.tocId,e.pageConfiguration.isVisible),u.topics.push(...this.tocIds((p=e.pageToc)!==null&&p!==void 0?p:[])),u}registerPage(e){for(let o of[...e.topics,...e.hiddenTopics])this.pageByTocId[o]||(this.pageByTocId[o]=e);this.pages.push(e)}tocIds(e){return e.flatMap(o=>[o.tocId,...this.tocIds(o.children)])}buildBreadcrumb(e){let o=[e.tocId];for(;e?.parentTocId;)o.unshift(e.parentTocId),e=this.nodeByTocId[e.parentTocId];return o}register(e){e.prettyUrl&&(this.nodeByUrl[e.prettyUrl]==null?this.nodeByUrl[e.prettyUrl]=e:this.duplicatedPrettyUrls.add(e.prettyUrl)),this.nodeByUrl[`${this.mapId}/${e.tocId}`]=e,this.nodeByTocId[e.tocId]=e}},Ln=class{convertPaginatedToc(e,o){return new ki(e,o).build()}};var Nn=class extends Se{get mapId(){return this._mapId}set mapId(e){e!==this._mapId&&this.clear(),this._mapId=e}constructor(e,o,n){super(!1,o),this.converter=e,this._mapId=n,this.initCache()}async withMapId(e){return this._mapId?e(this._mapId):void 0}initCache(){this.cache.register("configuration",()=>this.api.getReaderConfiguration()),this.cache.register("map",()=>this.withMapId(e=>this.fetchMap(e))),this.cache.register("enrichedToc",()=>this.withMapId(e=>this.fetchPages(e).then(o=>this.converter.convertPaginatedToc(e,o)))),this.cache.register("ratingSummary",()=>{var e,o;return xt((o=(e=T.getState().session)===null||e===void 0?void 0:e.profile.roles)!==null&&o!==void 0?o:[],"RATING_USER")?this.withMapId(a=>this.fetchMapRating(a)):Promise.resolve()})}clear(){this.cache.clearMatching(e=>e!=="configuration")}makeCacheKey(e,o){return e+(o?"-destinationLanguage-"+o?.destinationLanguage:"")}getMap(e){return this.cache.get(this.makeCacheKey("map",e),()=>this.fetchMap(this.mapId,e))}getMapNow(e){return this.cache.getNow(this.makeCacheKey("map",e))}getConfiguration(){return this.cache.get("configuration")}clearConfiguration(){this.cache.clear("configuration")}getEnrichedToc(e){return this.cache.get(this.makeCacheKey("enrichedToc",e),()=>this.fetchPages(this.mapId,e).then(o=>this.converter.convertPaginatedToc(this.mapId,o)))}getEnrichedTocNow(e){return this.cache.getNow(this.makeCacheKey("enrichedToc",e))}async getPaginationConfiguration(){return(await this.getEnrichedToc()).paginationConfiguration}async getToc(e){return(await this.getEnrichedToc(e)).toc}async getPagesToc(e){return(await this.getEnrichedToc(e)).pagesToc}async getTranslationError(e){return(await this.getEnrichedToc(e)).translationError}async getTocNode(e,o){return(await this.getEnrichedToc(o)).nodeByTocId[e]}getTocNodeNow(e,o){var n;return(n=this.getEnrichedTocNow(o))===null||n===void 0?void 0:n.nodeByTocId[e]}getTocNodeNowByUrl(e,o){var n,a;let i=this.getMapNow(o);return i?.prettyUrl==e||`${i?.id}/root`===e?(n=this.getEnrichedTocNow(o))===null||n===void 0?void 0:n.toc[0]:(a=this.getEnrichedTocNow(o))===null||a===void 0?void 0:a.nodeByUrl[e]}async getPage(e,o){let n=await this.getEnrichedToc(o);return n.pages[e-1]||n.pages[0]}async getPageByTocId(e,o){let n=await this.getEnrichedToc(o);return n.pageByTocId[e]||n.pages[0]}getTopicInfo(e){return this.cache.get("topic-"+e.tocId,()=>this.fetchTopicMetadata(e))}getTopicContent(e){return this.cache.get("topic-content-"+e.tocId,()=>this.fetchTopicHTMLContent(e))}getTranslatedTopicContent(e,o){return this.cache.get(this.makeCacheKey("translated-topic-content-"+e.tocId,o),()=>this.fetchTranslatedTopicHTMLContent(e,o))}getAttachments(){return this.cache.get("map-attachments",()=>this.fetchAttachments())}clearMapAttachments(){this.cache.clear("map-attachments")}getRelativesForDocument(e,o){return this.cache.get("document-relatives-"+e+"-"+o.join("-"),()=>this.fetchRelativesForDocument(e,o))}getRelativesForTopicInMap(e,o,n){return this.cache.get("topic-relatives-"+[e,o,...n].join("-"),()=>this.fetchRelativesForTopicInMap(e,o,n))}getAttachmentDownloadLink(e){return this.makeAbsolute(`${this.api.endpoints.khub.maps.mapId(this.mapId).attachments.attachmentId(e).content}?download=true&locationValue=reader`)}getLink(e,o,n){let a=this.getNavigationData(e,o,n),i=this.getReaderLinkPrefix()+(a.prettyUrl?a.prettyUrl:`${a.mapId}/${a.tocId}`),s=new URL(i,this.api.tenantBaseUrl);return a.page!=null&&s.searchParams.set("page",`${a.page}`),a.prettyUrlDuplicated&&s.searchParams.set("tocId",a.tocId),a.section!=null&&s.searchParams.set("section",a.section),s.href}getNavigationData(e,o,n,a){var i,s;e=e||"root";let l=this.getEnrichedTocNow(a),p=l?.pageByTocId[e],u=l?.nodeByTocId[e],h=u?.prettyUrl;return{mapId:this.mapId,tocId:e,topicTitle:(i=u?.title)!==null&&i!==void 0?i:"",untranslatedTopicTitle:u?.untranslatedTitle,page:o&&p&&p.number!==o?o:void 0,prettyUrl:h?.replace(/^r\//,""),prettyUrlDuplicated:(s=l?.duplicatedPrettyUrls.has(h??""))!==null&&s!==void 0?s:!1,section:n}}async getAccurateNavigationData(e,o,n,a){return await this.getEnrichedToc(a),this.getNavigationData(e,o,n,a)}getRatingSummary(){return this.cache.get("ratingSummary")}reloadRating(){return this.cache.clear("ratingSummary"),this.getRatingSummary()}getMapRating(){return this.getRatingSummary().then(e=>e?.publication)}getTopicRating(e){return this.getRatingSummary().then(o=>{var n;return o?{type:o.topics.type,rating:(n=o.topics)===null||n===void 0?void 0:n.ratings.find(a=>a.tocId===e)}:void 0})}rateMap(e,o){return this.makeRateMapRequest(e,o).then(()=>this.clearRatingIfNecessary())}unrateMap(){return this.makeUnrateMapRequest().then(()=>this.clearRatingIfNecessary())}sendMapFeedback(e,o){return this.makeMapFeedbackRequest(e,o)}rateTopic(e,o,n){return this.makeRateTopicRequest(e,o,n).then(()=>this.clearRatingIfNecessary())}unrateTopic(e){return this.makeUnrateTopicRequest(e).then(()=>this.clearRatingIfNecessary())}async clearRatingIfNecessary(){let e=T.getState().session;e?.sessionAuthenticated&&this.cache.clear("ratingSummary")}sendTopicFeedback(e,o,n){return this.makeTopicFeedbackRequest(e,o,n)}fontsStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.fonts)}themeStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.theme)}buildBreadcrumb(e,o){let n=this.getTocNodeNow(e,o),a=[{tocId:n.tocId,title:n.title,untranslatedTitle:n.untranslatedTitle}],i=this.getTocNodeNow(n.parentTocId,o);for(;i;)a.unshift({tocId:i.tocId,title:i.title,untranslatedTitle:i.untranslatedTitle}),i=this.getTocNodeNow(i.parentTocId,o);return a}isFeatureAccessible(e,{session:o}){var n;if(!this.isFeatureAvailable(e))return!1;switch(e){case ut.FEEDBACK:return xt(o??[],V.FEEDBACK_USER);case ut.RATING:return xt(o??[],V.RATING_USER);case ut.PRINT:return xt(o??[],V.PRINT_USER);case ut.BOOKMARK:return!!o?.sessionAuthenticated;case ut.COLLECTIONS:return xt(o??[],V.COLLECTION_USER);case ut.PERSONAL_BOOKS:return xt(o??[],V.PERSONAL_BOOK_USER)&&!(!((n=this.getMapNow())===null||n===void 0)&&n.pbkConfidential);default:return!1}}makeAbsolute(e){return this.api.makeAbsolute(e)}};var _n=class t extends Nn{static async build(e){return new t(new Ln,void 0,e)}clear(){super.clear(),this.fingerprint=void 0}async fetchMap(e,o){let n=await this.api.getMap(e,o);return this.fingerprint=n.fingerprint,n}fetchMapRating(e){return this.api.getMapRating(e)}async fetchPages(e,o){return await this.getMap(o),this.api.getPages(e,this.fingerprint,o)}fetchTopicHTMLContent(e){return this.api.getTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint)}fetchTranslatedTopicHTMLContent(e,o){return this.api.getTranslatedTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint,o)}fetchTopicMetadata(e){return this.api.getTopic(this.mapId,e.contentId,this.fingerprint)}fetchAttachments(){return this.api.getMapAttachments(this.mapId).catch(()=>[])}fetchRelativesForDocument(e,o){let n={query:"",paging:{page:1,perPage:-1},scope:"DOCUMENTS",metadataFilters:[{key:e,valueFilter:{negative:!1,values:o}}],sort:[],facets:[]};return this.api.search(n)}fetchRelativesForTopicInMap(e,o,n){let a={query:"",paging:{page:1,perPage:1},scope:"ALL_TOPICS",metadataFilters:[{key:o,valueFilter:{negative:!1,values:n}},{key:"ft:publicationId",valueFilter:{negative:!1,values:[e]}}],sort:[],facets:[]};return this.api.search(a)}makeMapFeedbackRequest(e,o){return this.api.sendMapFeedback(this.mapId,e,o)}makeRateMapRequest(e,o){return this.api.rateMap(this.mapId,e,o)}makeRateTopicRequest(e,o,n){return this.api.rateTopic(this.mapId,e,o,n)}makeTopicFeedbackRequest(e,o,n){return this.api.sendTopicFeedback(this.mapId,e,o,n)}makeUnrateMapRequest(){return this.api.unrateMap(this.mapId)}makeUnrateTopicRequest(e){return this.api.unrateTopic(this.mapId,e)}getReaderLinkPrefix(){return"r/"}isFeatureAvailable(e){return!0}};var Pn=class t{static build(e,o){return new t(Gd(e.trim()||"context"),o??_n.build)}loaded(){return(0,rt.waitUntil)(()=>this._loaded)}constructor(e,o,n){this.store=e,this.clusteringHelperProvider=n,this.metadataForSwitchToRelatives=new Set,this._loaded=!1,this.loadDebouncer=new rt.Debouncer(10),this.initService(o)}async initService(e){return this.service=await e(),this.service.mapId=this.store.getState().mapId,this.reload()}async setMapId(e){e!==this.store.getState().mapId&&(this.store.actions.mapId(e),this.service&&(this.service.mapId=e),await this.reload())}setRenderedTopics(e){this.store.actions.renderedTopics(e)}setVisibleTopics(e){this.store.actions.visibleTopics(e)}async awaitService(){return(0,rt.waitFor)(()=>this.service)}async navigateToTopic(e,o,n){await this.loaded();let a=await this.awaitService(),i=await(n!=null?a.getPage(n,this.getTranslationSettings()):a.getPageByTocId(e??"root",this.getTranslationSettings()));this.store.actions.currentPage(i);let s=this.resolveValidNonRootTocId(e,i);this.store.actions.scrollTarget({tocId:s,section:o}),this.store.getState().visibleTopics[0]!==s&&this.store.actions.visibleTopics([])}resolveValidNonRootTocId(e,o){var n,a,i;let s=(n=e==="root"?void 0:e)!==null&&n!==void 0?n:o.rootTocId;return o.topics.includes(s)?s:(i=(a=o.topics[0])!==null&&a!==void 0?a:o.hiddenTopics[0])!==null&&i!==void 0?i:"root"}async navigateToPage(e){await this.loaded();let n=await(await this.awaitService()).getPage(e,this.getTranslationSettings());this.store.actions.currentPage(n)}scrollDone(){this.store.actions.scrollTarget({})}async load(){var e;!((e=this.service)===null||e===void 0)&&e.mapId&&this.store.getState().map==null&&await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}clear(){var e;this._loaded=!1,this.store.actions.configuration(void 0),this.store.actions.map(void 0),this.store.actions.toc(void 0),this.store.actions.pagesToc(void 0),this.store.actions.currentPage(void 0),this.store.actions.searchInDocumentQuery(""),this.store.actions.relatives(void 0),this.store.actions.renderedTopics([]),this.store.actions.visibleTopics([]),this.store.actions.translation({sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}),this.store.actions.mapRating(void 0),(e=this.service)===null||e===void 0||e.clear(),this.clusteringHelper=void 0}reload(){return this.clear(),this.load()}async fetchData(e){var o,n,a,i,s;try{e&&this.setTranslationLoading(!0);let l=p=>{throw e&&this.setTranslationError(!0),p};await Promise.all([this.loadConfiguration(),(o=this.service)===null||o===void 0?void 0:o.getMap(e).then(p=>this.store.actions.map(p)).catch(l),(n=this.service)===null||n===void 0?void 0:n.getToc(e).then(p=>this.store.actions.toc(p)).catch(l),(a=this.service)===null||a===void 0?void 0:a.getPagesToc(e).then(p=>this.store.actions.pagesToc(p)).catch(l),(i=this.service)===null||i===void 0?void 0:i.getPaginationConfiguration().then(p=>this.store.actions.paginationConfiguration(p)).catch(l),(s=this.service)===null||s===void 0?void 0:s.getTranslationError(e).then(p=>this.setTranslationError(p))]),this.metadataForSwitchToRelatives.size>0&&this.fetchRelatives(),this._loaded=!0,e&&this.setTranslationLoading(!1)}catch(l){this.errorHandler&&!(l instanceof rt.CanceledPromiseError)&&this.errorHandler(l)}}loadConfiguration(){var e;return(e=this.service)===null||e===void 0?void 0:e.getConfiguration().then(o=>this.store.actions.configuration(o))}reloadConfiguration(){var e;return(e=this.service)===null||e===void 0||e.clearConfiguration(),this.loadConfiguration()}fetchRelatives(){var e,o;let n=(e=this.store.getState().map)===null||e===void 0?void 0:e.metadata.filter(a=>{var i;return a.key==((i=this.store.getState().configuration)===null||i===void 0?void 0:i.relativePivotMetadata)}).flatMap(a=>a.values);n!==void 0&&n.length>0?(o=this.service)===null||o===void 0||o.getRelativesForDocument(this.store.getState().configuration.relativePivotMetadata,n).then(a=>{let i=a.results.flatMap(s=>s.entries);this.store.actions.relatives(i),this.updateClusteringHelper()}):this.updateClusteringHelper()}updateClusteringHelper(){this.clusteringHelper=this.createClusteringHelper(),this.clusteringHelper&&this.store.dispatchEvent(new Event(Wt.clusteringHelperCreated))}createClusteringHelper(){var e,o;if(this.clusteringHelperProvider)return this.clusteringHelperProvider();let n=this.store.getState().relatives;if(n){let a=n.find(s=>{var l;return((l=s.map)===null||l===void 0?void 0:l.mapId)==this.store.getState().mapId}),i=(o=(e=T.getState().metadataConfiguration)===null||e===void 0?void 0:e.descriptors)!==null&&o!==void 0?o:[];return new rt.ClusteringHelper(n,a,this.metadataForSwitchToRelatives,i)}}async navigateToRelativeTopicIfFound(e){var o,n,a;await this.loaded();let i=await(0,rt.waitFor)(()=>{var u;return(u=this.store.getState().configuration)===null||u===void 0?void 0:u.relativeTopicPivotMetadata}),s=this.store.getState().mapId,p=await(await this.awaitService()).getRelativesForTopicInMap(s,i,[e]);if(!((a=(n=(o=p?.results)===null||o===void 0?void 0:o[0])===null||n===void 0?void 0:n.entries)===null||a===void 0)&&a[0]){let u=p.results[0].entries[0].topic.tocId;return await this.navigateToTopic(u),!0}else return await this.navigateToTopic("root"),!1}setSearchInDocumentQuery(e){this.store.actions.searchInDocumentQuery(e)}async setTranslationDestinationLanguage(e){this.store.actions.setTranslationDestinationLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationSourceLanguage(e){this.store.actions.setTranslationSourceLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationProfileId(e){this.store.actions.setTranslationProfileId(e)}async setTranslationLoading(e){this.store.actions.setTranslationLoading(e)}async setTranslationError(e){this.store.actions.setTranslationError(e)}getTranslationSettings(){var e;let o=this.store.getState();return o.translation.profileId&&o.translation.destinationLanguage?{profileId:o.translation.profileId,destinationLanguage:o.translation.destinationLanguage.code,sourceLanguage:(e=o.map)===null||e===void 0?void 0:e.lang}:void 0}async fetchMapRating(){var e;this.store.actions.mapRating(await((e=this.service)===null||e===void 0?void 0:e.getMapRating()))}async fetchTopicRating(e){var o;let n=await((o=this.service)===null||o===void 0?void 0:o.getTopicRating(e));n&&this.store.actions.setTopicsRating({[e]:n})}registerMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.add(e),this.store.getState().relatives==null?this.fetchRelatives():this.updateClusteringHelper()}unregisterMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.delete(e),this.updateClusteringHelper()}getAccurateNavigationData(e,o,n){return this.service.getAccurateNavigationData(e,o?.number,n?.section,this.getTranslationSettings())}buildBreadcrumb(e){var o;return(o=this.service)===null||o===void 0?void 0:o.buildBreadcrumb(e,this.getTranslationSettings())}fetchTopicContent(e){var o,n;let a=this.getTranslationSettings();return a?(o=this.service)===null||o===void 0?void 0:o.getTranslatedTopicContent(e,a).then(i=>(i.isTranslationError&&this.setTranslationError(!0),i.content)):(n=this.service)===null||n===void 0?void 0:n.getTopicContent(e)}getTocNode(e){return this.service.getTocNode(e,this.getTranslationSettings())}getPage(e){return this.service.getPage(e,this.getTranslationSettings())}onMapAttachmentsUpdate(){var e;(e=this.service)===null||e===void 0||e.clearMapAttachments(),this.store.dispatchEvent(new Event(Wt.mapAttachmentsUpdate))}};var jd=b($());var Vd=jd.css`
|
|
1602
|
+
`}};$t.elementDefinitions={"ft-typography":he};$t.styles=Ud;(0,ho.customElement)("ft-floating-menu")(Ut);(0,ho.customElement)("ftds-floating-menu")($r);(0,ho.customElement)("ft-floating-menu-item")(Le);(0,ho.customElement)("ft-floating-menu-label")($t);var yo=b(I());function Tu(t){var e;return((e=(0,yo.accessResult)(t))===null||e===void 0?void 0:e.openMode)===$o.EXTERNAL}function _i(t){return Tu(t)?(0,yo.accessResult)(t).originUrl:(0,yo.accessResultUrl)(t)}var Zd=b(zd());var Pi=hn.build("designedReaderMapMetadata");var Kd=b(I());var mo=b($()),Ft=b(X()),Ne=b(I());var rt=b(I());var Wd=b(I()),Ru={setTranslationDestinationLanguage:(t,e)=>{t.translation.destinationLanguage=e.payload},setTranslationSourceLanguage:(t,e)=>{t.translation.sourceLanguage=e.payload},setTranslationProfileId:(t,e)=>{t.translation.profileId=e.payload},setTranslationLoading:(t,e)=>{t.translation.isLoading=e.payload},setTranslationError:(t,e)=>{t.translation.isError=e.payload},setTopicsRating:(t,e)=>{for(let o in e.payload)t.topicsRating[o]=e.payload[o]},setLinkPreviewDialogId:(t,e)=>{t.linkPreviewDialogId=e.payload}},Gd=t=>Wd.FtReduxStore.get({name:"ft-reader-"+t,initialState:{mapId:void 0,renderedTopics:[],visibleTopics:[],map:void 0,toc:void 0,pagesToc:void 0,paginationConfiguration:void 0,currentPage:void 0,scrollTarget:void 0,configuration:void 0,searchInDocumentQuery:void 0,relatives:void 0,mapRating:void 0,topicsRating:{},translation:{sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1},linkPreviewDialogId:void 0},reducers:Ru});var ki=class{constructor(e,o){this.mapId=e,this.paginatedToc=o,this.nodeByTocId={},this.nodeByUrl={},this.duplicatedPrettyUrls=new Set,this.pages=[],this.pageByTocId={}}build(){return{paginationConfiguration:this.paginatedToc.configuration,toc:this.convertNodes(this.paginatedToc.paginatedToc,1),pagesToc:this.extractPagesToc(this.paginatedToc.paginatedToc,1),nodeByTocId:this.nodeByTocId,nodeByUrl:this.nodeByUrl,duplicatedPrettyUrls:this.duplicatedPrettyUrls,pages:this.pages,pageByTocId:this.pageByTocId,translationError:this.paginatedToc.translationError}}extractPagesToc(e,o,n){return e.flatMap(a=>{var i;return a.pageConfiguration&&this.registerPage(this.buildPage(a,n)),a.tocId==null?this.extractPagesToc(a.children,o,n):[{tocId:a.tocId,title:(i=a.title)!==null&&i!==void 0?i:"",untranslatedTitle:a.untranslatedTitle,depth:o,children:this.extractPagesToc(a.children,o+1,a.tocId)}]})}convertNodes(e,o,n){return e.flatMap(a=>{var i,s,l;if(a.tocId==null)return[...this.convertSectionNodes((i=a.pageToc)!==null&&i!==void 0?i:[],o,a.tocId),...this.convertNodes(a.children,o,a.tocId)];let p=(s=a.prettyUrl)===null||s===void 0?void 0:s.replace(/^\//,""),u={tocId:a.tocId,contentId:a.contentId,title:a.title,untranslatedTitle:a.untranslatedTitle,hasRating:a.hasRating,origin:a.origin,prettyUrl:p,depth:o,parentTocId:n,children:[]};this.register(u);let h=this.convertSectionNodes((l=a.pageToc)!==null&&l!==void 0?l:[],o+1,a.tocId),y=this.convertNodes(a.children,o+1,u.tocId);return u.children=[...h,...y],[u]})}convertSectionNodes(e,o,n){return e.flatMap(a=>{var i;let s=(i=a.prettyUrl)===null||i===void 0?void 0:i.replace(/^\//,""),l={...a,prettyUrl:s,depth:o,parentTocId:n,children:[]};return this.register(l),l.children=this.convertSectionNodes(a.children,o+1,a.tocId),[l]})}buildPage(e,o){var n,a,i,s,l,p;let u={number:this.pages.length+1,title:(n=e.title)!==null&&n!==void 0?n:"",untranslatedTitle:e.untranslatedTitle,rootTocId:(a=e.tocId)!==null&&a!==void 0?a:"root",toc:((i=e.pageToc)!==null&&i!==void 0?i:[]).map(g=>this.nodeByTocId[g.tocId]),topics:[],hiddenTopics:[],breadcrumb:o?this.buildBreadcrumb(this.nodeByTocId[o]):[]},h=(g,x)=>(x?u.topics:u.hiddenTopics).push(g),y=(l=(s=e.pageConfiguration)===null||s===void 0?void 0:s.parentsVisibility)!==null&&l!==void 0?l:[];return u.breadcrumb.forEach((g,x)=>{h(g,y[x])}),e.tocId&&h(e.tocId,e.pageConfiguration.isVisible),u.topics.push(...this.tocIds((p=e.pageToc)!==null&&p!==void 0?p:[])),u}registerPage(e){for(let o of[...e.topics,...e.hiddenTopics])this.pageByTocId[o]||(this.pageByTocId[o]=e);this.pages.push(e)}tocIds(e){return e.flatMap(o=>[o.tocId,...this.tocIds(o.children)])}buildBreadcrumb(e){let o=[e.tocId];for(;e?.parentTocId;)o.unshift(e.parentTocId),e=this.nodeByTocId[e.parentTocId];return o}register(e){e.prettyUrl&&(this.nodeByUrl[e.prettyUrl]==null?this.nodeByUrl[e.prettyUrl]=e:this.duplicatedPrettyUrls.add(e.prettyUrl)),this.nodeByUrl[`${this.mapId}/${e.tocId}`]=e,this.nodeByTocId[e.tocId]=e}},Ln=class{convertPaginatedToc(e,o){return new ki(e,o).build()}};var Nn=class extends Se{get mapId(){return this._mapId}set mapId(e){e!==this._mapId&&this.clear(),this._mapId=e}constructor(e,o,n){super(!1,o),this.converter=e,this._mapId=n,this.initCache()}async withMapId(e){return this._mapId?e(this._mapId):void 0}initCache(){this.cache.register("configuration",()=>this.api.getReaderConfiguration()),this.cache.register("map",()=>this.withMapId(e=>this.fetchMap(e))),this.cache.register("enrichedToc",()=>this.withMapId(e=>this.fetchPages(e).then(o=>this.converter.convertPaginatedToc(e,o)))),this.cache.register("ratingSummary",()=>{var e,o;return xt((o=(e=T.getState().session)===null||e===void 0?void 0:e.profile.roles)!==null&&o!==void 0?o:[],"RATING_USER")?this.withMapId(a=>this.fetchMapRating(a)):Promise.resolve()})}clear(){this.cache.clearMatching(e=>e!=="configuration")}makeCacheKey(e,o){return e+(o?"-destinationLanguage-"+o?.destinationLanguage:"")}getMap(e){return this.cache.get(this.makeCacheKey("map",e),()=>this.fetchMap(this.mapId,e))}getMapNow(e){return this.cache.getNow(this.makeCacheKey("map",e))}getConfiguration(){return this.cache.get("configuration")}clearConfiguration(){this.cache.clear("configuration")}getEnrichedToc(e){return this.cache.get(this.makeCacheKey("enrichedToc",e),()=>this.fetchPages(this.mapId,e).then(o=>this.converter.convertPaginatedToc(this.mapId,o)))}getEnrichedTocNow(e){return this.cache.getNow(this.makeCacheKey("enrichedToc",e))}async getPaginationConfiguration(){return(await this.getEnrichedToc()).paginationConfiguration}async getToc(e){return(await this.getEnrichedToc(e)).toc}async getPagesToc(e){return(await this.getEnrichedToc(e)).pagesToc}async getTranslationError(e){return(await this.getEnrichedToc(e)).translationError}async getTocNode(e,o){return(await this.getEnrichedToc(o)).nodeByTocId[e]}getTocNodeNow(e,o){var n;return(n=this.getEnrichedTocNow(o))===null||n===void 0?void 0:n.nodeByTocId[e]}getTocNodeNowByUrl(e,o){var n,a;let i=this.getMapNow(o);return i?.prettyUrl==e||`${i?.id}/root`===e?(n=this.getEnrichedTocNow(o))===null||n===void 0?void 0:n.toc[0]:(a=this.getEnrichedTocNow(o))===null||a===void 0?void 0:a.nodeByUrl[e]}async getPage(e,o){let n=await this.getEnrichedToc(o);return n.pages[e-1]||n.pages[0]}async getPageByTocId(e,o){let n=await this.getEnrichedToc(o);return n.pageByTocId[e]||n.pages[0]}getTopicInfo(e){return this.cache.get("topic-"+e.tocId,()=>this.fetchTopicMetadata(e))}getTopicContent(e){return this.cache.get("topic-content-"+e.tocId,()=>this.fetchTopicHTMLContent(e))}getTranslatedTopicContent(e,o){return this.cache.get(this.makeCacheKey("translated-topic-content-"+e.tocId,o),()=>this.fetchTranslatedTopicHTMLContent(e,o))}getAttachments(){return this.cache.get("map-attachments",()=>this.fetchAttachments())}clearMapAttachments(){this.cache.clear("map-attachments")}getRelativesForDocument(e,o){return this.cache.get("document-relatives-"+e+"-"+o.join("-"),()=>this.fetchRelativesForDocument(e,o))}getRelativesForTopicInMap(e,o,n){return this.cache.get("topic-relatives-"+[e,o,...n].join("-"),()=>this.fetchRelativesForTopicInMap(e,o,n))}getAttachmentDownloadLink(e){return this.makeAbsolute(`${this.api.endpoints.khub.maps.mapId(this.mapId).attachments.attachmentId(e).content}?download=true&locationValue=reader`)}getLink(e,o,n){let a=this.getNavigationData(e,o,n),i=this.getReaderLinkPrefix()+(a.prettyUrl?a.prettyUrl:`${a.mapId}/${a.tocId}`),s=new URL(i,this.api.tenantBaseUrl);return a.page!=null&&s.searchParams.set("page",`${a.page}`),a.prettyUrlDuplicated&&s.searchParams.set("tocId",a.tocId),a.section!=null&&s.searchParams.set("section",a.section),s.href}getNavigationData(e,o,n,a){var i,s;e=e||"root";let l=this.getEnrichedTocNow(a),p=l?.pageByTocId[e],u=l?.nodeByTocId[e],h=u?.prettyUrl;return{mapId:this.mapId,tocId:e,topicTitle:(i=u?.title)!==null&&i!==void 0?i:"",untranslatedTopicTitle:u?.untranslatedTitle,page:o&&p&&p.number!==o?o:void 0,prettyUrl:h?.replace(/^r\//,""),prettyUrlDuplicated:(s=l?.duplicatedPrettyUrls.has(h??""))!==null&&s!==void 0?s:!1,section:n}}async getAccurateNavigationData(e,o,n,a){return await this.getEnrichedToc(a),this.getNavigationData(e,o,n,a)}getRatingSummary(){return this.cache.get("ratingSummary")}reloadRating(){return this.cache.clear("ratingSummary"),this.getRatingSummary()}getMapRating(){return this.getRatingSummary().then(e=>e?.publication)}getTopicRating(e){return this.getRatingSummary().then(o=>{var n;return o?{type:o.topics.type,rating:(n=o.topics)===null||n===void 0?void 0:n.ratings.find(a=>a.tocId===e)}:void 0})}rateMap(e,o){return this.makeRateMapRequest(e,o).then(()=>this.clearRatingIfNecessary())}unrateMap(){return this.makeUnrateMapRequest().then(()=>this.clearRatingIfNecessary())}sendMapFeedback(e,o){return this.makeMapFeedbackRequest(e,o)}rateTopic(e,o,n){return this.makeRateTopicRequest(e,o,n).then(()=>this.clearRatingIfNecessary())}unrateTopic(e){return this.makeUnrateTopicRequest(e).then(()=>this.clearRatingIfNecessary())}async clearRatingIfNecessary(){let e=T.getState().session;e?.sessionAuthenticated&&this.cache.clear("ratingSummary")}sendTopicFeedback(e,o,n){return this.makeTopicFeedbackRequest(e,o,n)}fontsStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.fonts)}themeStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.theme)}buildBreadcrumb(e,o){let n=this.getTocNodeNow(e,o),a=[{tocId:n.tocId,title:n.title,untranslatedTitle:n.untranslatedTitle}],i=this.getTocNodeNow(n.parentTocId,o);for(;i;)a.unshift({tocId:i.tocId,title:i.title,untranslatedTitle:i.untranslatedTitle}),i=this.getTocNodeNow(i.parentTocId,o);return a}isFeatureAccessible(e,{session:o}){var n;if(!this.isFeatureAvailable(e))return!1;switch(e){case ut.FEEDBACK:return xt(o??[],V.FEEDBACK_USER);case ut.RATING:return xt(o??[],V.RATING_USER);case ut.PRINT:return xt(o??[],V.PRINT_USER);case ut.BOOKMARK:return!!o?.sessionAuthenticated;case ut.COLLECTIONS:return xt(o??[],V.COLLECTION_USER);case ut.PERSONAL_BOOKS:return xt(o??[],V.PERSONAL_BOOK_USER)&&!(!((n=this.getMapNow())===null||n===void 0)&&n.pbkConfidential);default:return!1}}makeAbsolute(e){return this.api.makeAbsolute(e)}};var _n=class t extends Nn{static async build(e){return new t(new Ln,void 0,e)}clear(){super.clear(),this.fingerprint=void 0}async fetchMap(e,o){let n=await this.api.getMap(e,o);return this.fingerprint=n.fingerprint,n}fetchMapRating(e){return this.api.getMapRating(e)}async fetchPages(e,o){return await this.getMap(o),this.api.getPages(e,this.fingerprint,o)}fetchTopicHTMLContent(e){return this.api.getTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint)}fetchTranslatedTopicHTMLContent(e,o){return this.api.getTranslatedTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint,o)}fetchTopicMetadata(e){return this.api.getTopic(this.mapId,e.contentId,this.fingerprint)}fetchAttachments(){return this.api.getMapAttachments(this.mapId).catch(()=>[])}fetchRelativesForDocument(e,o){let n={query:"",paging:{page:1,perPage:-1},scope:"DOCUMENTS",metadataFilters:[{key:e,valueFilter:{negative:!1,values:o}}],sort:[],facets:[]};return this.api.search(n)}fetchRelativesForTopicInMap(e,o,n){let a={query:"",paging:{page:1,perPage:1},scope:"ALL_TOPICS",metadataFilters:[{key:o,valueFilter:{negative:!1,values:n}},{key:"ft:publicationId",valueFilter:{negative:!1,values:[e]}}],sort:[],facets:[]};return this.api.search(a)}makeMapFeedbackRequest(e,o){return this.api.sendMapFeedback(this.mapId,e,o)}makeRateMapRequest(e,o){return this.api.rateMap(this.mapId,e,o)}makeRateTopicRequest(e,o,n){return this.api.rateTopic(this.mapId,e,o,n)}makeTopicFeedbackRequest(e,o,n){return this.api.sendTopicFeedback(this.mapId,e,o,n)}makeUnrateMapRequest(){return this.api.unrateMap(this.mapId)}makeUnrateTopicRequest(e){return this.api.unrateTopic(this.mapId,e)}getReaderLinkPrefix(){return"r/"}isFeatureAvailable(e){return!0}};var Pn=class t{static build(e,o){return new t(Gd(e.trim()||"context"),o??_n.build)}loaded(){return(0,rt.waitUntil)(()=>this._loaded)}constructor(e,o,n){this.store=e,this.clusteringHelperProvider=n,this.metadataForSwitchToRelatives=new Set,this._loaded=!1,this.loadDebouncer=new rt.Debouncer(10),this.initService(o)}async initService(e){return this.service=await e(),this.service.mapId=this.store.getState().mapId,this.reload()}async setMapId(e){e!==this.store.getState().mapId&&(this.store.actions.mapId(e),this.service&&(this.service.mapId=e),await this.reload())}setRenderedTopics(e){this.store.actions.renderedTopics(e)}setVisibleTopics(e){this.store.actions.visibleTopics(e)}async awaitService(){return(0,rt.waitFor)(()=>this.service)}async navigateToTopic(e,o,n){await this.loaded();let a=await this.awaitService(),i=await(n!=null?a.getPage(n,this.getTranslationSettings()):a.getPageByTocId(e??"root",this.getTranslationSettings()));this.store.actions.currentPage(i);let s=this.resolveValidNonRootTocId(e,i);this.store.actions.scrollTarget({tocId:s,section:o}),this.store.getState().visibleTopics[0]!==s&&this.store.actions.visibleTopics([])}resolveValidNonRootTocId(e,o){var n,a,i;let s=(n=e==="root"?void 0:e)!==null&&n!==void 0?n:o.rootTocId;return o.topics.includes(s)?s:(i=(a=o.topics[0])!==null&&a!==void 0?a:o.hiddenTopics[0])!==null&&i!==void 0?i:"root"}async navigateToPage(e){await this.loaded();let n=await(await this.awaitService()).getPage(e,this.getTranslationSettings());this.store.actions.currentPage(n)}scrollDone(){this.store.actions.scrollTarget({})}async load(){var e;!((e=this.service)===null||e===void 0)&&e.mapId&&this.store.getState().map==null&&await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}clear(){var e;this._loaded=!1,this.store.actions.configuration(void 0),this.store.actions.map(void 0),this.store.actions.toc(void 0),this.store.actions.pagesToc(void 0),this.store.actions.currentPage(void 0),this.store.actions.searchInDocumentQuery(""),this.store.actions.relatives(void 0),this.store.actions.renderedTopics([]),this.store.actions.visibleTopics([]),this.store.actions.translation({sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}),this.store.actions.mapRating(void 0),(e=this.service)===null||e===void 0||e.clear(),this.clusteringHelper=void 0}reload(){return this.clear(),this.load()}async fetchData(e){var o,n,a,i,s;try{e&&this.setTranslationLoading(!0);let l=p=>{throw e&&this.setTranslationError(!0),p};await Promise.all([this.loadConfiguration(),(o=this.service)===null||o===void 0?void 0:o.getMap(e).then(p=>this.store.actions.map(p)).catch(l),(n=this.service)===null||n===void 0?void 0:n.getToc(e).then(p=>this.store.actions.toc(p)).catch(l),(a=this.service)===null||a===void 0?void 0:a.getPagesToc(e).then(p=>this.store.actions.pagesToc(p)).catch(l),(i=this.service)===null||i===void 0?void 0:i.getPaginationConfiguration().then(p=>this.store.actions.paginationConfiguration(p)).catch(l),(s=this.service)===null||s===void 0?void 0:s.getTranslationError(e).then(p=>this.setTranslationError(p))]),this.metadataForSwitchToRelatives.size>0&&this.fetchRelatives(),this._loaded=!0,e&&this.setTranslationLoading(!1)}catch(l){this.errorHandler&&!(l instanceof rt.CanceledPromiseError)&&this.errorHandler(l)}}loadConfiguration(){var e;return(e=this.service)===null||e===void 0?void 0:e.getConfiguration().then(o=>this.store.actions.configuration(o))}reloadConfiguration(){var e;return(e=this.service)===null||e===void 0||e.clearConfiguration(),this.loadConfiguration()}fetchRelatives(){var e,o;let n=(e=this.store.getState().map)===null||e===void 0?void 0:e.metadata.filter(a=>{var i;return a.key==((i=this.store.getState().configuration)===null||i===void 0?void 0:i.relativePivotMetadata)}).flatMap(a=>a.values);n!==void 0&&n.length>0?(o=this.service)===null||o===void 0||o.getRelativesForDocument(this.store.getState().configuration.relativePivotMetadata,n).then(a=>{let i=a.results.flatMap(s=>s.entries);this.store.actions.relatives(i),this.updateClusteringHelper()}):this.updateClusteringHelper()}updateClusteringHelper(){this.clusteringHelper=this.createClusteringHelper(),this.clusteringHelper&&this.store.dispatchEvent(new Event(Wt.clusteringHelperCreated))}createClusteringHelper(){var e,o;if(this.clusteringHelperProvider)return this.clusteringHelperProvider();let n=this.store.getState().relatives;if(n){let a=n.find(s=>{var l;return((l=s.map)===null||l===void 0?void 0:l.mapId)==this.store.getState().mapId}),i=(o=(e=T.getState().metadataConfiguration)===null||e===void 0?void 0:e.descriptors)!==null&&o!==void 0?o:[];return new rt.ClusteringHelper(n,a,this.metadataForSwitchToRelatives,i)}}async navigateToRelativeTopicIfFound(e){var o,n,a;await this.loaded();let i=await(0,rt.waitFor)(()=>{var u;return(u=this.store.getState().configuration)===null||u===void 0?void 0:u.relativeTopicPivotMetadata}),s=this.store.getState().mapId,p=await(await this.awaitService()).getRelativesForTopicInMap(s,i,[e]);if(!((a=(n=(o=p?.results)===null||o===void 0?void 0:o[0])===null||n===void 0?void 0:n.entries)===null||a===void 0)&&a[0]){let u=p.results[0].entries[0].topic.tocId;return await this.navigateToTopic(u),!0}else return await this.navigateToTopic("root"),!1}setSearchInDocumentQuery(e){this.store.actions.searchInDocumentQuery(e)}async setTranslationDestinationLanguage(e){this.store.actions.setTranslationDestinationLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationSourceLanguage(e){this.store.actions.setTranslationSourceLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationProfileId(e){this.store.actions.setTranslationProfileId(e)}async setTranslationLoading(e){this.store.actions.setTranslationLoading(e)}async setTranslationError(e){this.store.actions.setTranslationError(e)}getTranslationSettings(){var e;let o=this.store.getState();return o.translation.profileId&&o.translation.destinationLanguage?{profileId:o.translation.profileId,destinationLanguage:o.translation.destinationLanguage.code,sourceLanguage:(e=o.map)===null||e===void 0?void 0:e.lang}:void 0}setLinkPreviewDialogId(e){this.store.actions.setLinkPreviewDialogId(e)}async fetchMapRating(){var e;this.store.actions.mapRating(await((e=this.service)===null||e===void 0?void 0:e.getMapRating()))}async fetchTopicRating(e){var o;let n=await((o=this.service)===null||o===void 0?void 0:o.getTopicRating(e));n&&this.store.actions.setTopicsRating({[e]:n})}registerMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.add(e),this.store.getState().relatives==null?this.fetchRelatives():this.updateClusteringHelper()}unregisterMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.delete(e),this.updateClusteringHelper()}getAccurateNavigationData(e,o,n){return this.service.getAccurateNavigationData(e,o?.number,n?.section,this.getTranslationSettings())}buildBreadcrumb(e){var o;return(o=this.service)===null||o===void 0?void 0:o.buildBreadcrumb(e,this.getTranslationSettings())}fetchTopicContent(e){var o,n;let a=this.getTranslationSettings();return a?(o=this.service)===null||o===void 0?void 0:o.getTranslatedTopicContent(e,a).then(i=>(i.isTranslationError&&this.setTranslationError(!0),i.content)):(n=this.service)===null||n===void 0?void 0:n.getTopicContent(e)}getTocNode(e){return this.service.getTocNode(e,this.getTranslationSettings())}getPage(e){return this.service.getPage(e,this.getTranslationSettings())}onMapAttachmentsUpdate(){var e;(e=this.service)===null||e===void 0||e.clearMapAttachments(),this.store.dispatchEvent(new Event(Wt.mapAttachmentsUpdate))}};var jd=b($());var Vd=jd.css`
|
|
1603
1603
|
`;var kn=class extends CustomEvent{constructor(e,o){super("ft-reader-map-loaded",{detail:{map:e,toc:o}})}},Dn=class extends CustomEvent{constructor(e,o){super("ft-reader-visible-topics-change",{detail:{visibleTopics:o}})}},Mn=class extends CustomEvent{constructor(e){super("ft-reader-navigation-done",{detail:e})}},Bn=class extends CustomEvent{constructor(e){super("ft-reader-load-error",{detail:e})}},Un=class extends Event{constructor(){super("ft-reader-map-not-found")}},$n=class extends Event{constructor(){super("ft-reader-map-unauthorized")}},Fn=class extends Event{constructor(){super("ft-reader-map-forbidden")}},Hn=class extends Event{constructor(){super("ft-reader-topic-relative-not-found",{bubbles:!0,composed:!0})}};var zn=class{constructor(e){this.stateManager=e}searchInDocument(e){this.stateManager.setSearchInDocumentQuery(e??"")}};var _e=function(t,e,o,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,o):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,o,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,o,i):s(e,o))||i);return a>3&&i&&Object.defineProperty(e,o,i),i},Iu=t=>e=>+(e??"NaN")>0?+e:t,pe=class extends Ne.FtLitElementRedux{constructor(){super(),this.visibleTopics=[],this.updateConfiguration=()=>{this.stateManager.reloadConfiguration()},this.scrollToTargetDebouncer=new Ne.Debouncer(5),this.navigationDebouncer=new Ne.Debouncer(10),this.mapLoadedEventDebouncer=new Ne.Debouncer(50),this.addStore(T)}render(){return mo.html`
|
|
1604
1604
|
${this.importStyleIfNeeded()}
|
|
1605
1605
|
<slot @register-ft-reader-component=${this.registerComponent}></slot>
|
|
@@ -233,7 +233,7 @@ Also for action icons.`,c.colorGray200),contentGlobalSubtle:o.extend("--ftds-con
|
|
|
233
233
|
</${Br(this.element)}>
|
|
234
234
|
`:$r`
|
|
235
235
|
<slot part="text" class="ftds-typography ftds-typography--${this.variant}"></slot>
|
|
236
|
-
`}};et.styles=[...Bd];$d([b()],et.prototype,"element",void 0);$d([b()],et.prototype,"variant",void 0);Y("ft-typography")(Ce);Y("ftds-typography")(et);var Kr={distance:o.create("--ft-tooltip-distance","","SIZE","4px"),color:o.create("--ft-tooltip-color","","COLOR","#FFFFFF"),backgroundColor:o.create("--ft-tooltip-background-color","","COLOR","#666666"),zIndex:o.create("--ft-tooltip-z-index","","NUMBER","100"),borderRadiusS:o.
|
|
236
|
+
`}};et.styles=[...Bd];$d([b()],et.prototype,"element",void 0);$d([b()],et.prototype,"variant",void 0);Y("ft-typography")(Ce);Y("ftds-typography")(et);var Kr={distance:o.create("--ft-tooltip-distance","","SIZE","4px"),color:o.create("--ft-tooltip-color","","COLOR","#FFFFFF"),backgroundColor:o.create("--ft-tooltip-background-color","","COLOR","#666666"),zIndex:o.create("--ft-tooltip-z-index","","NUMBER","100"),borderRadiusS:o.extend("--ft-tooltip-border-radius","",F.borderRadiusS),maxWidth:o.create("--ft-tooltip-max-width","","SIZE","150px")},Ud=L`
|
|
237
237
|
.ft-tooltip--container {
|
|
238
238
|
display: block;
|
|
239
239
|
}
|
|
@@ -1679,7 +1679,7 @@ Also for action icons.`,c.colorGray200),contentGlobalSubtle:o.extend("--ftds-con
|
|
|
1679
1679
|
<slot></slot>
|
|
1680
1680
|
</ft-typography>
|
|
1681
1681
|
</div>
|
|
1682
|
-
`}};zt.elementDefinitions={"ft-typography":Ce};zt.styles=bp;Y("ft-floating-menu")(Ht);Y("ftds-floating-menu")(Qr);Y("ft-floating-menu-item")(De);Y("ft-floating-menu-label")(zt);function xh(t){var e;return((e=gr(t))===null||e===void 0?void 0:e.openMode)===zn.EXTERNAL}function Xs(t){return xh(t)?gr(t).originUrl:aa(t)}var Js=ii.build("designedReaderMapMetadata");var Sh={setTranslationDestinationLanguage:(t,e)=>{t.translation.destinationLanguage=e.payload},setTranslationSourceLanguage:(t,e)=>{t.translation.sourceLanguage=e.payload},setTranslationProfileId:(t,e)=>{t.translation.profileId=e.payload},setTranslationLoading:(t,e)=>{t.translation.isLoading=e.payload},setTranslationError:(t,e)=>{t.translation.isError=e.payload},setTopicsRating:(t,e)=>{for(let r in e.payload)t.topicsRating[r]=e.payload[r]}},vp=t=>Et.get({name:"ft-reader-"+t,initialState:{mapId:void 0,renderedTopics:[],visibleTopics:[],map:void 0,toc:void 0,pagesToc:void 0,paginationConfiguration:void 0,currentPage:void 0,scrollTarget:void 0,configuration:void 0,searchInDocumentQuery:void 0,relatives:void 0,mapRating:void 0,topicsRating:{},translation:{sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}},reducers:Sh});var Qs=class{constructor(e,r){this.mapId=e,this.paginatedToc=r,this.nodeByTocId={},this.nodeByUrl={},this.duplicatedPrettyUrls=new Set,this.pages=[],this.pageByTocId={}}build(){return{paginationConfiguration:this.paginatedToc.configuration,toc:this.convertNodes(this.paginatedToc.paginatedToc,1),pagesToc:this.extractPagesToc(this.paginatedToc.paginatedToc,1),nodeByTocId:this.nodeByTocId,nodeByUrl:this.nodeByUrl,duplicatedPrettyUrls:this.duplicatedPrettyUrls,pages:this.pages,pageByTocId:this.pageByTocId,translationError:this.paginatedToc.translationError}}extractPagesToc(e,r,n){return e.flatMap(i=>{var a;return i.pageConfiguration&&this.registerPage(this.buildPage(i,n)),i.tocId==null?this.extractPagesToc(i.children,r,n):[{tocId:i.tocId,title:(a=i.title)!==null&&a!==void 0?a:"",untranslatedTitle:i.untranslatedTitle,depth:r,children:this.extractPagesToc(i.children,r+1,i.tocId)}]})}convertNodes(e,r,n){return e.flatMap(i=>{var a,s,l;if(i.tocId==null)return[...this.convertSectionNodes((a=i.pageToc)!==null&&a!==void 0?a:[],r,i.tocId),...this.convertNodes(i.children,r,i.tocId)];let d=(s=i.prettyUrl)===null||s===void 0?void 0:s.replace(/^\//,""),p={tocId:i.tocId,contentId:i.contentId,title:i.title,untranslatedTitle:i.untranslatedTitle,hasRating:i.hasRating,origin:i.origin,prettyUrl:d,depth:r,parentTocId:n,children:[]};this.register(p);let h=this.convertSectionNodes((l=i.pageToc)!==null&&l!==void 0?l:[],r+1,i.tocId),f=this.convertNodes(i.children,r+1,p.tocId);return p.children=[...h,...f],[p]})}convertSectionNodes(e,r,n){return e.flatMap(i=>{var a;let s=(a=i.prettyUrl)===null||a===void 0?void 0:a.replace(/^\//,""),l={...i,prettyUrl:s,depth:r,parentTocId:n,children:[]};return this.register(l),l.children=this.convertSectionNodes(i.children,r+1,i.tocId),[l]})}buildPage(e,r){var n,i,a,s,l,d;let p={number:this.pages.length+1,title:(n=e.title)!==null&&n!==void 0?n:"",untranslatedTitle:e.untranslatedTitle,rootTocId:(i=e.tocId)!==null&&i!==void 0?i:"root",toc:((a=e.pageToc)!==null&&a!==void 0?a:[]).map(m=>this.nodeByTocId[m.tocId]),topics:[],hiddenTopics:[],breadcrumb:r?this.buildBreadcrumb(this.nodeByTocId[r]):[]},h=(m,x)=>(x?p.topics:p.hiddenTopics).push(m),f=(l=(s=e.pageConfiguration)===null||s===void 0?void 0:s.parentsVisibility)!==null&&l!==void 0?l:[];return p.breadcrumb.forEach((m,x)=>{h(m,f[x])}),e.tocId&&h(e.tocId,e.pageConfiguration.isVisible),p.topics.push(...this.tocIds((d=e.pageToc)!==null&&d!==void 0?d:[])),p}registerPage(e){for(let r of[...e.topics,...e.hiddenTopics])this.pageByTocId[r]||(this.pageByTocId[r]=e);this.pages.push(e)}tocIds(e){return e.flatMap(r=>[r.tocId,...this.tocIds(r.children)])}buildBreadcrumb(e){let r=[e.tocId];for(;e?.parentTocId;)r.unshift(e.parentTocId),e=this.nodeByTocId[e.parentTocId];return r}register(e){e.prettyUrl&&(this.nodeByUrl[e.prettyUrl]==null?this.nodeByUrl[e.prettyUrl]=e:this.duplicatedPrettyUrls.add(e.prettyUrl)),this.nodeByUrl[`${this.mapId}/${e.tocId}`]=e,this.nodeByTocId[e.tocId]=e}},mi=class{convertPaginatedToc(e,r){return new Qs(e,r).build()}};var yi=class extends Ae{get mapId(){return this._mapId}set mapId(e){e!==this._mapId&&this.clear(),this._mapId=e}constructor(e,r,n){super(!1,r),this.converter=e,this._mapId=n,this.initCache()}async withMapId(e){return this._mapId?e(this._mapId):void 0}initCache(){this.cache.register("configuration",()=>this.api.getReaderConfiguration()),this.cache.register("map",()=>this.withMapId(e=>this.fetchMap(e))),this.cache.register("enrichedToc",()=>this.withMapId(e=>this.fetchPages(e).then(r=>this.converter.convertPaginatedToc(e,r)))),this.cache.register("ratingSummary",()=>{var e,r;return wt((r=(e=N.getState().session)===null||e===void 0?void 0:e.profile.roles)!==null&&r!==void 0?r:[],"RATING_USER")?this.withMapId(i=>this.fetchMapRating(i)):Promise.resolve()})}clear(){this.cache.clearMatching(e=>e!=="configuration")}makeCacheKey(e,r){return e+(r?"-destinationLanguage-"+r?.destinationLanguage:"")}getMap(e){return this.cache.get(this.makeCacheKey("map",e),()=>this.fetchMap(this.mapId,e))}getMapNow(e){return this.cache.getNow(this.makeCacheKey("map",e))}getConfiguration(){return this.cache.get("configuration")}clearConfiguration(){this.cache.clear("configuration")}getEnrichedToc(e){return this.cache.get(this.makeCacheKey("enrichedToc",e),()=>this.fetchPages(this.mapId,e).then(r=>this.converter.convertPaginatedToc(this.mapId,r)))}getEnrichedTocNow(e){return this.cache.getNow(this.makeCacheKey("enrichedToc",e))}async getPaginationConfiguration(){return(await this.getEnrichedToc()).paginationConfiguration}async getToc(e){return(await this.getEnrichedToc(e)).toc}async getPagesToc(e){return(await this.getEnrichedToc(e)).pagesToc}async getTranslationError(e){return(await this.getEnrichedToc(e)).translationError}async getTocNode(e,r){return(await this.getEnrichedToc(r)).nodeByTocId[e]}getTocNodeNow(e,r){var n;return(n=this.getEnrichedTocNow(r))===null||n===void 0?void 0:n.nodeByTocId[e]}getTocNodeNowByUrl(e,r){var n,i;let a=this.getMapNow(r);return a?.prettyUrl==e||`${a?.id}/root`===e?(n=this.getEnrichedTocNow(r))===null||n===void 0?void 0:n.toc[0]:(i=this.getEnrichedTocNow(r))===null||i===void 0?void 0:i.nodeByUrl[e]}async getPage(e,r){let n=await this.getEnrichedToc(r);return n.pages[e-1]||n.pages[0]}async getPageByTocId(e,r){let n=await this.getEnrichedToc(r);return n.pageByTocId[e]||n.pages[0]}getTopicInfo(e){return this.cache.get("topic-"+e.tocId,()=>this.fetchTopicMetadata(e))}getTopicContent(e){return this.cache.get("topic-content-"+e.tocId,()=>this.fetchTopicHTMLContent(e))}getTranslatedTopicContent(e,r){return this.cache.get(this.makeCacheKey("translated-topic-content-"+e.tocId,r),()=>this.fetchTranslatedTopicHTMLContent(e,r))}getAttachments(){return this.cache.get("map-attachments",()=>this.fetchAttachments())}clearMapAttachments(){this.cache.clear("map-attachments")}getRelativesForDocument(e,r){return this.cache.get("document-relatives-"+e+"-"+r.join("-"),()=>this.fetchRelativesForDocument(e,r))}getRelativesForTopicInMap(e,r,n){return this.cache.get("topic-relatives-"+[e,r,...n].join("-"),()=>this.fetchRelativesForTopicInMap(e,r,n))}getAttachmentDownloadLink(e){return this.makeAbsolute(`${this.api.endpoints.khub.maps.mapId(this.mapId).attachments.attachmentId(e).content}?download=true&locationValue=reader`)}getLink(e,r,n){let i=this.getNavigationData(e,r,n),a=this.getReaderLinkPrefix()+(i.prettyUrl?i.prettyUrl:`${i.mapId}/${i.tocId}`),s=new URL(a,this.api.tenantBaseUrl);return i.page!=null&&s.searchParams.set("page",`${i.page}`),i.prettyUrlDuplicated&&s.searchParams.set("tocId",i.tocId),i.section!=null&&s.searchParams.set("section",i.section),s.href}getNavigationData(e,r,n,i){var a,s;e=e||"root";let l=this.getEnrichedTocNow(i),d=l?.pageByTocId[e],p=l?.nodeByTocId[e],h=p?.prettyUrl;return{mapId:this.mapId,tocId:e,topicTitle:(a=p?.title)!==null&&a!==void 0?a:"",untranslatedTopicTitle:p?.untranslatedTitle,page:r&&d&&d.number!==r?r:void 0,prettyUrl:h?.replace(/^r\//,""),prettyUrlDuplicated:(s=l?.duplicatedPrettyUrls.has(h??""))!==null&&s!==void 0?s:!1,section:n}}async getAccurateNavigationData(e,r,n,i){return await this.getEnrichedToc(i),this.getNavigationData(e,r,n,i)}getRatingSummary(){return this.cache.get("ratingSummary")}reloadRating(){return this.cache.clear("ratingSummary"),this.getRatingSummary()}getMapRating(){return this.getRatingSummary().then(e=>e?.publication)}getTopicRating(e){return this.getRatingSummary().then(r=>{var n;return r?{type:r.topics.type,rating:(n=r.topics)===null||n===void 0?void 0:n.ratings.find(i=>i.tocId===e)}:void 0})}rateMap(e,r){return this.makeRateMapRequest(e,r).then(()=>this.clearRatingIfNecessary())}unrateMap(){return this.makeUnrateMapRequest().then(()=>this.clearRatingIfNecessary())}sendMapFeedback(e,r){return this.makeMapFeedbackRequest(e,r)}rateTopic(e,r,n){return this.makeRateTopicRequest(e,r,n).then(()=>this.clearRatingIfNecessary())}unrateTopic(e){return this.makeUnrateTopicRequest(e).then(()=>this.clearRatingIfNecessary())}async clearRatingIfNecessary(){let e=N.getState().session;e?.sessionAuthenticated&&this.cache.clear("ratingSummary")}sendTopicFeedback(e,r,n){return this.makeTopicFeedbackRequest(e,r,n)}fontsStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.fonts)}themeStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.theme)}buildBreadcrumb(e,r){let n=this.getTocNodeNow(e,r),i=[{tocId:n.tocId,title:n.title,untranslatedTitle:n.untranslatedTitle}],a=this.getTocNodeNow(n.parentTocId,r);for(;a;)i.unshift({tocId:a.tocId,title:a.title,untranslatedTitle:a.untranslatedTitle}),a=this.getTocNodeNow(a.parentTocId,r);return i}isFeatureAccessible(e,{session:r}){var n;if(!this.isFeatureAvailable(e))return!1;switch(e){case At.FEEDBACK:return wt(r??[],re.FEEDBACK_USER);case At.RATING:return wt(r??[],re.RATING_USER);case At.PRINT:return wt(r??[],re.PRINT_USER);case At.BOOKMARK:return!!r?.sessionAuthenticated;case At.COLLECTIONS:return wt(r??[],re.COLLECTION_USER);case At.PERSONAL_BOOKS:return wt(r??[],re.PERSONAL_BOOK_USER)&&!(!((n=this.getMapNow())===null||n===void 0)&&n.pbkConfidential);default:return!1}}makeAbsolute(e){return this.api.makeAbsolute(e)}};var gi=class t extends yi{static async build(e){return new t(new mi,void 0,e)}clear(){super.clear(),this.fingerprint=void 0}async fetchMap(e,r){let n=await this.api.getMap(e,r);return this.fingerprint=n.fingerprint,n}fetchMapRating(e){return this.api.getMapRating(e)}async fetchPages(e,r){return await this.getMap(r),this.api.getPages(e,this.fingerprint,r)}fetchTopicHTMLContent(e){return this.api.getTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint)}fetchTranslatedTopicHTMLContent(e,r){return this.api.getTranslatedTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint,r)}fetchTopicMetadata(e){return this.api.getTopic(this.mapId,e.contentId,this.fingerprint)}fetchAttachments(){return this.api.getMapAttachments(this.mapId).catch(()=>[])}fetchRelativesForDocument(e,r){let n={query:"",paging:{page:1,perPage:-1},scope:"DOCUMENTS",metadataFilters:[{key:e,valueFilter:{negative:!1,values:r}}],sort:[],facets:[]};return this.api.search(n)}fetchRelativesForTopicInMap(e,r,n){let i={query:"",paging:{page:1,perPage:1},scope:"ALL_TOPICS",metadataFilters:[{key:r,valueFilter:{negative:!1,values:n}},{key:"ft:publicationId",valueFilter:{negative:!1,values:[e]}}],sort:[],facets:[]};return this.api.search(i)}makeMapFeedbackRequest(e,r){return this.api.sendMapFeedback(this.mapId,e,r)}makeRateMapRequest(e,r){return this.api.rateMap(this.mapId,e,r)}makeRateTopicRequest(e,r,n){return this.api.rateTopic(this.mapId,e,r,n)}makeTopicFeedbackRequest(e,r,n){return this.api.sendTopicFeedback(this.mapId,e,r,n)}makeUnrateMapRequest(){return this.api.unrateMap(this.mapId)}makeUnrateTopicRequest(e){return this.api.unrateTopic(this.mapId,e)}getReaderLinkPrefix(){return"r/"}isFeatureAvailable(e){return!0}};var bi=class t{static build(e,r){return new t(vp(e.trim()||"context"),r??gi.build)}loaded(){return Qi(()=>this._loaded)}constructor(e,r,n){this.store=e,this.clusteringHelperProvider=n,this.metadataForSwitchToRelatives=new Set,this._loaded=!1,this.loadDebouncer=new he(10),this.initService(r)}async initService(e){return this.service=await e(),this.service.mapId=this.store.getState().mapId,this.reload()}async setMapId(e){e!==this.store.getState().mapId&&(this.store.actions.mapId(e),this.service&&(this.service.mapId=e),await this.reload())}setRenderedTopics(e){this.store.actions.renderedTopics(e)}setVisibleTopics(e){this.store.actions.visibleTopics(e)}async awaitService(){return lo(()=>this.service)}async navigateToTopic(e,r,n){await this.loaded();let i=await this.awaitService(),a=await(n!=null?i.getPage(n,this.getTranslationSettings()):i.getPageByTocId(e??"root",this.getTranslationSettings()));this.store.actions.currentPage(a);let s=this.resolveValidNonRootTocId(e,a);this.store.actions.scrollTarget({tocId:s,section:r}),this.store.getState().visibleTopics[0]!==s&&this.store.actions.visibleTopics([])}resolveValidNonRootTocId(e,r){var n,i,a;let s=(n=e==="root"?void 0:e)!==null&&n!==void 0?n:r.rootTocId;return r.topics.includes(s)?s:(a=(i=r.topics[0])!==null&&i!==void 0?i:r.hiddenTopics[0])!==null&&a!==void 0?a:"root"}async navigateToPage(e){await this.loaded();let n=await(await this.awaitService()).getPage(e,this.getTranslationSettings());this.store.actions.currentPage(n)}scrollDone(){this.store.actions.scrollTarget({})}async load(){var e;!((e=this.service)===null||e===void 0)&&e.mapId&&this.store.getState().map==null&&await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}clear(){var e;this._loaded=!1,this.store.actions.configuration(void 0),this.store.actions.map(void 0),this.store.actions.toc(void 0),this.store.actions.pagesToc(void 0),this.store.actions.currentPage(void 0),this.store.actions.searchInDocumentQuery(""),this.store.actions.relatives(void 0),this.store.actions.renderedTopics([]),this.store.actions.visibleTopics([]),this.store.actions.translation({sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}),this.store.actions.mapRating(void 0),(e=this.service)===null||e===void 0||e.clear(),this.clusteringHelper=void 0}reload(){return this.clear(),this.load()}async fetchData(e){var r,n,i,a,s;try{e&&this.setTranslationLoading(!0);let l=d=>{throw e&&this.setTranslationError(!0),d};await Promise.all([this.loadConfiguration(),(r=this.service)===null||r===void 0?void 0:r.getMap(e).then(d=>this.store.actions.map(d)).catch(l),(n=this.service)===null||n===void 0?void 0:n.getToc(e).then(d=>this.store.actions.toc(d)).catch(l),(i=this.service)===null||i===void 0?void 0:i.getPagesToc(e).then(d=>this.store.actions.pagesToc(d)).catch(l),(a=this.service)===null||a===void 0?void 0:a.getPaginationConfiguration().then(d=>this.store.actions.paginationConfiguration(d)).catch(l),(s=this.service)===null||s===void 0?void 0:s.getTranslationError(e).then(d=>this.setTranslationError(d))]),this.metadataForSwitchToRelatives.size>0&&this.fetchRelatives(),this._loaded=!0,e&&this.setTranslationLoading(!1)}catch(l){this.errorHandler&&!(l instanceof ht)&&this.errorHandler(l)}}loadConfiguration(){var e;return(e=this.service)===null||e===void 0?void 0:e.getConfiguration().then(r=>this.store.actions.configuration(r))}reloadConfiguration(){var e;return(e=this.service)===null||e===void 0||e.clearConfiguration(),this.loadConfiguration()}fetchRelatives(){var e,r;let n=(e=this.store.getState().map)===null||e===void 0?void 0:e.metadata.filter(i=>{var a;return i.key==((a=this.store.getState().configuration)===null||a===void 0?void 0:a.relativePivotMetadata)}).flatMap(i=>i.values);n!==void 0&&n.length>0?(r=this.service)===null||r===void 0||r.getRelativesForDocument(this.store.getState().configuration.relativePivotMetadata,n).then(i=>{let a=i.results.flatMap(s=>s.entries);this.store.actions.relatives(a),this.updateClusteringHelper()}):this.updateClusteringHelper()}updateClusteringHelper(){this.clusteringHelper=this.createClusteringHelper(),this.clusteringHelper&&this.store.dispatchEvent(new Event(ar.clusteringHelperCreated))}createClusteringHelper(){var e,r;if(this.clusteringHelperProvider)return this.clusteringHelperProvider();let n=this.store.getState().relatives;if(n){let i=n.find(s=>{var l;return((l=s.map)===null||l===void 0?void 0:l.mapId)==this.store.getState().mapId}),a=(r=(e=N.getState().metadataConfiguration)===null||e===void 0?void 0:e.descriptors)!==null&&r!==void 0?r:[];return new qt(n,i,this.metadataForSwitchToRelatives,a)}}async navigateToRelativeTopicIfFound(e){var r,n,i;await this.loaded();let a=await lo(()=>{var p;return(p=this.store.getState().configuration)===null||p===void 0?void 0:p.relativeTopicPivotMetadata}),s=this.store.getState().mapId,d=await(await this.awaitService()).getRelativesForTopicInMap(s,a,[e]);if(!((i=(n=(r=d?.results)===null||r===void 0?void 0:r[0])===null||n===void 0?void 0:n.entries)===null||i===void 0)&&i[0]){let p=d.results[0].entries[0].topic.tocId;return await this.navigateToTopic(p),!0}else return await this.navigateToTopic("root"),!1}setSearchInDocumentQuery(e){this.store.actions.searchInDocumentQuery(e)}async setTranslationDestinationLanguage(e){this.store.actions.setTranslationDestinationLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationSourceLanguage(e){this.store.actions.setTranslationSourceLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationProfileId(e){this.store.actions.setTranslationProfileId(e)}async setTranslationLoading(e){this.store.actions.setTranslationLoading(e)}async setTranslationError(e){this.store.actions.setTranslationError(e)}getTranslationSettings(){var e;let r=this.store.getState();return r.translation.profileId&&r.translation.destinationLanguage?{profileId:r.translation.profileId,destinationLanguage:r.translation.destinationLanguage.code,sourceLanguage:(e=r.map)===null||e===void 0?void 0:e.lang}:void 0}async fetchMapRating(){var e;this.store.actions.mapRating(await((e=this.service)===null||e===void 0?void 0:e.getMapRating()))}async fetchTopicRating(e){var r;let n=await((r=this.service)===null||r===void 0?void 0:r.getTopicRating(e));n&&this.store.actions.setTopicsRating({[e]:n})}registerMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.add(e),this.store.getState().relatives==null?this.fetchRelatives():this.updateClusteringHelper()}unregisterMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.delete(e),this.updateClusteringHelper()}getAccurateNavigationData(e,r,n){return this.service.getAccurateNavigationData(e,r?.number,n?.section,this.getTranslationSettings())}buildBreadcrumb(e){var r;return(r=this.service)===null||r===void 0?void 0:r.buildBreadcrumb(e,this.getTranslationSettings())}fetchTopicContent(e){var r,n;let i=this.getTranslationSettings();return i?(r=this.service)===null||r===void 0?void 0:r.getTranslatedTopicContent(e,i).then(a=>(a.isTranslationError&&this.setTranslationError(!0),a.content)):(n=this.service)===null||n===void 0?void 0:n.getTopicContent(e)}getTocNode(e){return this.service.getTocNode(e,this.getTranslationSettings())}getPage(e){return this.service.getPage(e,this.getTranslationSettings())}onMapAttachmentsUpdate(){var e;(e=this.service)===null||e===void 0||e.clearMapAttachments(),this.store.dispatchEvent(new Event(ar.mapAttachmentsUpdate))}};var xp=L`
|
|
1682
|
+
`}};zt.elementDefinitions={"ft-typography":Ce};zt.styles=bp;Y("ft-floating-menu")(Ht);Y("ftds-floating-menu")(Qr);Y("ft-floating-menu-item")(De);Y("ft-floating-menu-label")(zt);function xh(t){var e;return((e=gr(t))===null||e===void 0?void 0:e.openMode)===zn.EXTERNAL}function Xs(t){return xh(t)?gr(t).originUrl:aa(t)}var Js=ii.build("designedReaderMapMetadata");var Sh={setTranslationDestinationLanguage:(t,e)=>{t.translation.destinationLanguage=e.payload},setTranslationSourceLanguage:(t,e)=>{t.translation.sourceLanguage=e.payload},setTranslationProfileId:(t,e)=>{t.translation.profileId=e.payload},setTranslationLoading:(t,e)=>{t.translation.isLoading=e.payload},setTranslationError:(t,e)=>{t.translation.isError=e.payload},setTopicsRating:(t,e)=>{for(let r in e.payload)t.topicsRating[r]=e.payload[r]},setLinkPreviewDialogId:(t,e)=>{t.linkPreviewDialogId=e.payload}},vp=t=>Et.get({name:"ft-reader-"+t,initialState:{mapId:void 0,renderedTopics:[],visibleTopics:[],map:void 0,toc:void 0,pagesToc:void 0,paginationConfiguration:void 0,currentPage:void 0,scrollTarget:void 0,configuration:void 0,searchInDocumentQuery:void 0,relatives:void 0,mapRating:void 0,topicsRating:{},translation:{sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1},linkPreviewDialogId:void 0},reducers:Sh});var Qs=class{constructor(e,r){this.mapId=e,this.paginatedToc=r,this.nodeByTocId={},this.nodeByUrl={},this.duplicatedPrettyUrls=new Set,this.pages=[],this.pageByTocId={}}build(){return{paginationConfiguration:this.paginatedToc.configuration,toc:this.convertNodes(this.paginatedToc.paginatedToc,1),pagesToc:this.extractPagesToc(this.paginatedToc.paginatedToc,1),nodeByTocId:this.nodeByTocId,nodeByUrl:this.nodeByUrl,duplicatedPrettyUrls:this.duplicatedPrettyUrls,pages:this.pages,pageByTocId:this.pageByTocId,translationError:this.paginatedToc.translationError}}extractPagesToc(e,r,n){return e.flatMap(i=>{var a;return i.pageConfiguration&&this.registerPage(this.buildPage(i,n)),i.tocId==null?this.extractPagesToc(i.children,r,n):[{tocId:i.tocId,title:(a=i.title)!==null&&a!==void 0?a:"",untranslatedTitle:i.untranslatedTitle,depth:r,children:this.extractPagesToc(i.children,r+1,i.tocId)}]})}convertNodes(e,r,n){return e.flatMap(i=>{var a,s,l;if(i.tocId==null)return[...this.convertSectionNodes((a=i.pageToc)!==null&&a!==void 0?a:[],r,i.tocId),...this.convertNodes(i.children,r,i.tocId)];let d=(s=i.prettyUrl)===null||s===void 0?void 0:s.replace(/^\//,""),p={tocId:i.tocId,contentId:i.contentId,title:i.title,untranslatedTitle:i.untranslatedTitle,hasRating:i.hasRating,origin:i.origin,prettyUrl:d,depth:r,parentTocId:n,children:[]};this.register(p);let h=this.convertSectionNodes((l=i.pageToc)!==null&&l!==void 0?l:[],r+1,i.tocId),f=this.convertNodes(i.children,r+1,p.tocId);return p.children=[...h,...f],[p]})}convertSectionNodes(e,r,n){return e.flatMap(i=>{var a;let s=(a=i.prettyUrl)===null||a===void 0?void 0:a.replace(/^\//,""),l={...i,prettyUrl:s,depth:r,parentTocId:n,children:[]};return this.register(l),l.children=this.convertSectionNodes(i.children,r+1,i.tocId),[l]})}buildPage(e,r){var n,i,a,s,l,d;let p={number:this.pages.length+1,title:(n=e.title)!==null&&n!==void 0?n:"",untranslatedTitle:e.untranslatedTitle,rootTocId:(i=e.tocId)!==null&&i!==void 0?i:"root",toc:((a=e.pageToc)!==null&&a!==void 0?a:[]).map(m=>this.nodeByTocId[m.tocId]),topics:[],hiddenTopics:[],breadcrumb:r?this.buildBreadcrumb(this.nodeByTocId[r]):[]},h=(m,x)=>(x?p.topics:p.hiddenTopics).push(m),f=(l=(s=e.pageConfiguration)===null||s===void 0?void 0:s.parentsVisibility)!==null&&l!==void 0?l:[];return p.breadcrumb.forEach((m,x)=>{h(m,f[x])}),e.tocId&&h(e.tocId,e.pageConfiguration.isVisible),p.topics.push(...this.tocIds((d=e.pageToc)!==null&&d!==void 0?d:[])),p}registerPage(e){for(let r of[...e.topics,...e.hiddenTopics])this.pageByTocId[r]||(this.pageByTocId[r]=e);this.pages.push(e)}tocIds(e){return e.flatMap(r=>[r.tocId,...this.tocIds(r.children)])}buildBreadcrumb(e){let r=[e.tocId];for(;e?.parentTocId;)r.unshift(e.parentTocId),e=this.nodeByTocId[e.parentTocId];return r}register(e){e.prettyUrl&&(this.nodeByUrl[e.prettyUrl]==null?this.nodeByUrl[e.prettyUrl]=e:this.duplicatedPrettyUrls.add(e.prettyUrl)),this.nodeByUrl[`${this.mapId}/${e.tocId}`]=e,this.nodeByTocId[e.tocId]=e}},mi=class{convertPaginatedToc(e,r){return new Qs(e,r).build()}};var yi=class extends Ae{get mapId(){return this._mapId}set mapId(e){e!==this._mapId&&this.clear(),this._mapId=e}constructor(e,r,n){super(!1,r),this.converter=e,this._mapId=n,this.initCache()}async withMapId(e){return this._mapId?e(this._mapId):void 0}initCache(){this.cache.register("configuration",()=>this.api.getReaderConfiguration()),this.cache.register("map",()=>this.withMapId(e=>this.fetchMap(e))),this.cache.register("enrichedToc",()=>this.withMapId(e=>this.fetchPages(e).then(r=>this.converter.convertPaginatedToc(e,r)))),this.cache.register("ratingSummary",()=>{var e,r;return wt((r=(e=N.getState().session)===null||e===void 0?void 0:e.profile.roles)!==null&&r!==void 0?r:[],"RATING_USER")?this.withMapId(i=>this.fetchMapRating(i)):Promise.resolve()})}clear(){this.cache.clearMatching(e=>e!=="configuration")}makeCacheKey(e,r){return e+(r?"-destinationLanguage-"+r?.destinationLanguage:"")}getMap(e){return this.cache.get(this.makeCacheKey("map",e),()=>this.fetchMap(this.mapId,e))}getMapNow(e){return this.cache.getNow(this.makeCacheKey("map",e))}getConfiguration(){return this.cache.get("configuration")}clearConfiguration(){this.cache.clear("configuration")}getEnrichedToc(e){return this.cache.get(this.makeCacheKey("enrichedToc",e),()=>this.fetchPages(this.mapId,e).then(r=>this.converter.convertPaginatedToc(this.mapId,r)))}getEnrichedTocNow(e){return this.cache.getNow(this.makeCacheKey("enrichedToc",e))}async getPaginationConfiguration(){return(await this.getEnrichedToc()).paginationConfiguration}async getToc(e){return(await this.getEnrichedToc(e)).toc}async getPagesToc(e){return(await this.getEnrichedToc(e)).pagesToc}async getTranslationError(e){return(await this.getEnrichedToc(e)).translationError}async getTocNode(e,r){return(await this.getEnrichedToc(r)).nodeByTocId[e]}getTocNodeNow(e,r){var n;return(n=this.getEnrichedTocNow(r))===null||n===void 0?void 0:n.nodeByTocId[e]}getTocNodeNowByUrl(e,r){var n,i;let a=this.getMapNow(r);return a?.prettyUrl==e||`${a?.id}/root`===e?(n=this.getEnrichedTocNow(r))===null||n===void 0?void 0:n.toc[0]:(i=this.getEnrichedTocNow(r))===null||i===void 0?void 0:i.nodeByUrl[e]}async getPage(e,r){let n=await this.getEnrichedToc(r);return n.pages[e-1]||n.pages[0]}async getPageByTocId(e,r){let n=await this.getEnrichedToc(r);return n.pageByTocId[e]||n.pages[0]}getTopicInfo(e){return this.cache.get("topic-"+e.tocId,()=>this.fetchTopicMetadata(e))}getTopicContent(e){return this.cache.get("topic-content-"+e.tocId,()=>this.fetchTopicHTMLContent(e))}getTranslatedTopicContent(e,r){return this.cache.get(this.makeCacheKey("translated-topic-content-"+e.tocId,r),()=>this.fetchTranslatedTopicHTMLContent(e,r))}getAttachments(){return this.cache.get("map-attachments",()=>this.fetchAttachments())}clearMapAttachments(){this.cache.clear("map-attachments")}getRelativesForDocument(e,r){return this.cache.get("document-relatives-"+e+"-"+r.join("-"),()=>this.fetchRelativesForDocument(e,r))}getRelativesForTopicInMap(e,r,n){return this.cache.get("topic-relatives-"+[e,r,...n].join("-"),()=>this.fetchRelativesForTopicInMap(e,r,n))}getAttachmentDownloadLink(e){return this.makeAbsolute(`${this.api.endpoints.khub.maps.mapId(this.mapId).attachments.attachmentId(e).content}?download=true&locationValue=reader`)}getLink(e,r,n){let i=this.getNavigationData(e,r,n),a=this.getReaderLinkPrefix()+(i.prettyUrl?i.prettyUrl:`${i.mapId}/${i.tocId}`),s=new URL(a,this.api.tenantBaseUrl);return i.page!=null&&s.searchParams.set("page",`${i.page}`),i.prettyUrlDuplicated&&s.searchParams.set("tocId",i.tocId),i.section!=null&&s.searchParams.set("section",i.section),s.href}getNavigationData(e,r,n,i){var a,s;e=e||"root";let l=this.getEnrichedTocNow(i),d=l?.pageByTocId[e],p=l?.nodeByTocId[e],h=p?.prettyUrl;return{mapId:this.mapId,tocId:e,topicTitle:(a=p?.title)!==null&&a!==void 0?a:"",untranslatedTopicTitle:p?.untranslatedTitle,page:r&&d&&d.number!==r?r:void 0,prettyUrl:h?.replace(/^r\//,""),prettyUrlDuplicated:(s=l?.duplicatedPrettyUrls.has(h??""))!==null&&s!==void 0?s:!1,section:n}}async getAccurateNavigationData(e,r,n,i){return await this.getEnrichedToc(i),this.getNavigationData(e,r,n,i)}getRatingSummary(){return this.cache.get("ratingSummary")}reloadRating(){return this.cache.clear("ratingSummary"),this.getRatingSummary()}getMapRating(){return this.getRatingSummary().then(e=>e?.publication)}getTopicRating(e){return this.getRatingSummary().then(r=>{var n;return r?{type:r.topics.type,rating:(n=r.topics)===null||n===void 0?void 0:n.ratings.find(i=>i.tocId===e)}:void 0})}rateMap(e,r){return this.makeRateMapRequest(e,r).then(()=>this.clearRatingIfNecessary())}unrateMap(){return this.makeUnrateMapRequest().then(()=>this.clearRatingIfNecessary())}sendMapFeedback(e,r){return this.makeMapFeedbackRequest(e,r)}rateTopic(e,r,n){return this.makeRateTopicRequest(e,r,n).then(()=>this.clearRatingIfNecessary())}unrateTopic(e){return this.makeUnrateTopicRequest(e).then(()=>this.clearRatingIfNecessary())}async clearRatingIfNecessary(){let e=N.getState().session;e?.sessionAuthenticated&&this.cache.clear("ratingSummary")}sendTopicFeedback(e,r,n){return this.makeTopicFeedbackRequest(e,r,n)}fontsStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.fonts)}themeStylesheet(){return this.api.makeAbsolute(this.api.endpoints.stylesheets.theme)}buildBreadcrumb(e,r){let n=this.getTocNodeNow(e,r),i=[{tocId:n.tocId,title:n.title,untranslatedTitle:n.untranslatedTitle}],a=this.getTocNodeNow(n.parentTocId,r);for(;a;)i.unshift({tocId:a.tocId,title:a.title,untranslatedTitle:a.untranslatedTitle}),a=this.getTocNodeNow(a.parentTocId,r);return i}isFeatureAccessible(e,{session:r}){var n;if(!this.isFeatureAvailable(e))return!1;switch(e){case At.FEEDBACK:return wt(r??[],re.FEEDBACK_USER);case At.RATING:return wt(r??[],re.RATING_USER);case At.PRINT:return wt(r??[],re.PRINT_USER);case At.BOOKMARK:return!!r?.sessionAuthenticated;case At.COLLECTIONS:return wt(r??[],re.COLLECTION_USER);case At.PERSONAL_BOOKS:return wt(r??[],re.PERSONAL_BOOK_USER)&&!(!((n=this.getMapNow())===null||n===void 0)&&n.pbkConfidential);default:return!1}}makeAbsolute(e){return this.api.makeAbsolute(e)}};var gi=class t extends yi{static async build(e){return new t(new mi,void 0,e)}clear(){super.clear(),this.fingerprint=void 0}async fetchMap(e,r){let n=await this.api.getMap(e,r);return this.fingerprint=n.fingerprint,n}fetchMapRating(e){return this.api.getMapRating(e)}async fetchPages(e,r){return await this.getMap(r),this.api.getPages(e,this.fingerprint,r)}fetchTopicHTMLContent(e){return this.api.getTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint)}fetchTranslatedTopicHTMLContent(e,r){return this.api.getTranslatedTopicHTMLContent(this.mapId,e.contentId,"DESIGNED_READER",this.fingerprint,r)}fetchTopicMetadata(e){return this.api.getTopic(this.mapId,e.contentId,this.fingerprint)}fetchAttachments(){return this.api.getMapAttachments(this.mapId).catch(()=>[])}fetchRelativesForDocument(e,r){let n={query:"",paging:{page:1,perPage:-1},scope:"DOCUMENTS",metadataFilters:[{key:e,valueFilter:{negative:!1,values:r}}],sort:[],facets:[]};return this.api.search(n)}fetchRelativesForTopicInMap(e,r,n){let i={query:"",paging:{page:1,perPage:1},scope:"ALL_TOPICS",metadataFilters:[{key:r,valueFilter:{negative:!1,values:n}},{key:"ft:publicationId",valueFilter:{negative:!1,values:[e]}}],sort:[],facets:[]};return this.api.search(i)}makeMapFeedbackRequest(e,r){return this.api.sendMapFeedback(this.mapId,e,r)}makeRateMapRequest(e,r){return this.api.rateMap(this.mapId,e,r)}makeRateTopicRequest(e,r,n){return this.api.rateTopic(this.mapId,e,r,n)}makeTopicFeedbackRequest(e,r,n){return this.api.sendTopicFeedback(this.mapId,e,r,n)}makeUnrateMapRequest(){return this.api.unrateMap(this.mapId)}makeUnrateTopicRequest(e){return this.api.unrateTopic(this.mapId,e)}getReaderLinkPrefix(){return"r/"}isFeatureAvailable(e){return!0}};var bi=class t{static build(e,r){return new t(vp(e.trim()||"context"),r??gi.build)}loaded(){return Qi(()=>this._loaded)}constructor(e,r,n){this.store=e,this.clusteringHelperProvider=n,this.metadataForSwitchToRelatives=new Set,this._loaded=!1,this.loadDebouncer=new he(10),this.initService(r)}async initService(e){return this.service=await e(),this.service.mapId=this.store.getState().mapId,this.reload()}async setMapId(e){e!==this.store.getState().mapId&&(this.store.actions.mapId(e),this.service&&(this.service.mapId=e),await this.reload())}setRenderedTopics(e){this.store.actions.renderedTopics(e)}setVisibleTopics(e){this.store.actions.visibleTopics(e)}async awaitService(){return lo(()=>this.service)}async navigateToTopic(e,r,n){await this.loaded();let i=await this.awaitService(),a=await(n!=null?i.getPage(n,this.getTranslationSettings()):i.getPageByTocId(e??"root",this.getTranslationSettings()));this.store.actions.currentPage(a);let s=this.resolveValidNonRootTocId(e,a);this.store.actions.scrollTarget({tocId:s,section:r}),this.store.getState().visibleTopics[0]!==s&&this.store.actions.visibleTopics([])}resolveValidNonRootTocId(e,r){var n,i,a;let s=(n=e==="root"?void 0:e)!==null&&n!==void 0?n:r.rootTocId;return r.topics.includes(s)?s:(a=(i=r.topics[0])!==null&&i!==void 0?i:r.hiddenTopics[0])!==null&&a!==void 0?a:"root"}async navigateToPage(e){await this.loaded();let n=await(await this.awaitService()).getPage(e,this.getTranslationSettings());this.store.actions.currentPage(n)}scrollDone(){this.store.actions.scrollTarget({})}async load(){var e;!((e=this.service)===null||e===void 0)&&e.mapId&&this.store.getState().map==null&&await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}clear(){var e;this._loaded=!1,this.store.actions.configuration(void 0),this.store.actions.map(void 0),this.store.actions.toc(void 0),this.store.actions.pagesToc(void 0),this.store.actions.currentPage(void 0),this.store.actions.searchInDocumentQuery(""),this.store.actions.relatives(void 0),this.store.actions.renderedTopics([]),this.store.actions.visibleTopics([]),this.store.actions.translation({sourceLanguage:void 0,destinationLanguage:void 0,profileId:void 0,isLoading:!1,isError:!1}),this.store.actions.mapRating(void 0),(e=this.service)===null||e===void 0||e.clear(),this.clusteringHelper=void 0}reload(){return this.clear(),this.load()}async fetchData(e){var r,n,i,a,s;try{e&&this.setTranslationLoading(!0);let l=d=>{throw e&&this.setTranslationError(!0),d};await Promise.all([this.loadConfiguration(),(r=this.service)===null||r===void 0?void 0:r.getMap(e).then(d=>this.store.actions.map(d)).catch(l),(n=this.service)===null||n===void 0?void 0:n.getToc(e).then(d=>this.store.actions.toc(d)).catch(l),(i=this.service)===null||i===void 0?void 0:i.getPagesToc(e).then(d=>this.store.actions.pagesToc(d)).catch(l),(a=this.service)===null||a===void 0?void 0:a.getPaginationConfiguration().then(d=>this.store.actions.paginationConfiguration(d)).catch(l),(s=this.service)===null||s===void 0?void 0:s.getTranslationError(e).then(d=>this.setTranslationError(d))]),this.metadataForSwitchToRelatives.size>0&&this.fetchRelatives(),this._loaded=!0,e&&this.setTranslationLoading(!1)}catch(l){this.errorHandler&&!(l instanceof ht)&&this.errorHandler(l)}}loadConfiguration(){var e;return(e=this.service)===null||e===void 0?void 0:e.getConfiguration().then(r=>this.store.actions.configuration(r))}reloadConfiguration(){var e;return(e=this.service)===null||e===void 0||e.clearConfiguration(),this.loadConfiguration()}fetchRelatives(){var e,r;let n=(e=this.store.getState().map)===null||e===void 0?void 0:e.metadata.filter(i=>{var a;return i.key==((a=this.store.getState().configuration)===null||a===void 0?void 0:a.relativePivotMetadata)}).flatMap(i=>i.values);n!==void 0&&n.length>0?(r=this.service)===null||r===void 0||r.getRelativesForDocument(this.store.getState().configuration.relativePivotMetadata,n).then(i=>{let a=i.results.flatMap(s=>s.entries);this.store.actions.relatives(a),this.updateClusteringHelper()}):this.updateClusteringHelper()}updateClusteringHelper(){this.clusteringHelper=this.createClusteringHelper(),this.clusteringHelper&&this.store.dispatchEvent(new Event(ar.clusteringHelperCreated))}createClusteringHelper(){var e,r;if(this.clusteringHelperProvider)return this.clusteringHelperProvider();let n=this.store.getState().relatives;if(n){let i=n.find(s=>{var l;return((l=s.map)===null||l===void 0?void 0:l.mapId)==this.store.getState().mapId}),a=(r=(e=N.getState().metadataConfiguration)===null||e===void 0?void 0:e.descriptors)!==null&&r!==void 0?r:[];return new qt(n,i,this.metadataForSwitchToRelatives,a)}}async navigateToRelativeTopicIfFound(e){var r,n,i;await this.loaded();let a=await lo(()=>{var p;return(p=this.store.getState().configuration)===null||p===void 0?void 0:p.relativeTopicPivotMetadata}),s=this.store.getState().mapId,d=await(await this.awaitService()).getRelativesForTopicInMap(s,a,[e]);if(!((i=(n=(r=d?.results)===null||r===void 0?void 0:r[0])===null||n===void 0?void 0:n.entries)===null||i===void 0)&&i[0]){let p=d.results[0].entries[0].topic.tocId;return await this.navigateToTopic(p),!0}else return await this.navigateToTopic("root"),!1}setSearchInDocumentQuery(e){this.store.actions.searchInDocumentQuery(e)}async setTranslationDestinationLanguage(e){this.store.actions.setTranslationDestinationLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationSourceLanguage(e){this.store.actions.setTranslationSourceLanguage(e),await this.loadDebouncer.run(()=>this.fetchData(this.getTranslationSettings()))}async setTranslationProfileId(e){this.store.actions.setTranslationProfileId(e)}async setTranslationLoading(e){this.store.actions.setTranslationLoading(e)}async setTranslationError(e){this.store.actions.setTranslationError(e)}getTranslationSettings(){var e;let r=this.store.getState();return r.translation.profileId&&r.translation.destinationLanguage?{profileId:r.translation.profileId,destinationLanguage:r.translation.destinationLanguage.code,sourceLanguage:(e=r.map)===null||e===void 0?void 0:e.lang}:void 0}setLinkPreviewDialogId(e){this.store.actions.setLinkPreviewDialogId(e)}async fetchMapRating(){var e;this.store.actions.mapRating(await((e=this.service)===null||e===void 0?void 0:e.getMapRating()))}async fetchTopicRating(e){var r;let n=await((r=this.service)===null||r===void 0?void 0:r.getTopicRating(e));n&&this.store.actions.setTopicsRating({[e]:n})}registerMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.add(e),this.store.getState().relatives==null?this.fetchRelatives():this.updateClusteringHelper()}unregisterMetadataForSwitchToRelatives(e){this.metadataForSwitchToRelatives.delete(e),this.updateClusteringHelper()}getAccurateNavigationData(e,r,n){return this.service.getAccurateNavigationData(e,r?.number,n?.section,this.getTranslationSettings())}buildBreadcrumb(e){var r;return(r=this.service)===null||r===void 0?void 0:r.buildBreadcrumb(e,this.getTranslationSettings())}fetchTopicContent(e){var r,n;let i=this.getTranslationSettings();return i?(r=this.service)===null||r===void 0?void 0:r.getTranslatedTopicContent(e,i).then(a=>(a.isTranslationError&&this.setTranslationError(!0),a.content)):(n=this.service)===null||n===void 0?void 0:n.getTopicContent(e)}getTocNode(e){return this.service.getTocNode(e,this.getTranslationSettings())}getPage(e){return this.service.getPage(e,this.getTranslationSettings())}onMapAttachmentsUpdate(){var e;(e=this.service)===null||e===void 0||e.clearMapAttachments(),this.store.dispatchEvent(new Event(ar.mapAttachmentsUpdate))}};var xp=L`
|
|
1683
1683
|
`;var vi=class extends CustomEvent{constructor(e,r){super("ft-reader-map-loaded",{detail:{map:e,toc:r}})}},xi=class extends CustomEvent{constructor(e,r){super("ft-reader-visible-topics-change",{detail:{visibleTopics:r}})}},Si=class extends CustomEvent{constructor(e){super("ft-reader-navigation-done",{detail:e})}},Ci=class extends CustomEvent{constructor(e){super("ft-reader-load-error",{detail:e})}},Oi=class extends Event{constructor(){super("ft-reader-map-not-found")}},Ei=class extends Event{constructor(){super("ft-reader-map-unauthorized")}},wi=class extends Event{constructor(){super("ft-reader-map-forbidden")}},Ai=class extends Event{constructor(){super("ft-reader-topic-relative-not-found",{bubbles:!0,composed:!0})}};var Ri=class{constructor(e){this.stateManager=e}searchInDocument(e){this.stateManager.setSearchInDocumentQuery(e??"")}};var Be=function(t,e,r,n){var i=arguments.length,a=i<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")a=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(a=(i<3?s(a):i>3?s(e,r,a):s(e,r))||a);return i>3&&a&&Object.defineProperty(e,r,a),a},Ch=t=>e=>+(e??"NaN")>0?+e:t,ve=class extends Ct{constructor(){super(),this.visibleTopics=[],this.updateConfiguration=()=>{this.stateManager.reloadConfiguration()},this.scrollToTargetDebouncer=new he(5),this.navigationDebouncer=new he(10),this.mapLoadedEventDebouncer=new he(50),this.addStore(N)}render(){return M`
|
|
1684
1684
|
${this.importStyleIfNeeded()}
|
|
1685
1685
|
<slot @register-ft-reader-component=${this.registerComponent}></slot>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluid-topics/ft-reader-metadata",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.53",
|
|
4
4
|
"description": "Metadata for integrated reader",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Lit"
|
|
@@ -19,16 +19,16 @@
|
|
|
19
19
|
"url": "ssh://git@scm.mrs.antidot.net:2222/fluidtopics/ft-web-components.git"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@fluid-topics/ft-chip": "1.3.
|
|
23
|
-
"@fluid-topics/ft-floating-menu": "1.3.
|
|
24
|
-
"@fluid-topics/ft-reader-context": "1.3.
|
|
25
|
-
"@fluid-topics/ft-ripple": "1.3.
|
|
26
|
-
"@fluid-topics/ft-tooltip": "1.3.
|
|
27
|
-
"@fluid-topics/ft-wc-utils": "1.3.
|
|
22
|
+
"@fluid-topics/ft-chip": "1.3.53",
|
|
23
|
+
"@fluid-topics/ft-floating-menu": "1.3.53",
|
|
24
|
+
"@fluid-topics/ft-reader-context": "1.3.53",
|
|
25
|
+
"@fluid-topics/ft-ripple": "1.3.53",
|
|
26
|
+
"@fluid-topics/ft-tooltip": "1.3.53",
|
|
27
|
+
"@fluid-topics/ft-wc-utils": "1.3.53",
|
|
28
28
|
"lit": "3.1.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@fluid-topics/ft-wc-test-utils": "1.3.
|
|
31
|
+
"@fluid-topics/ft-wc-test-utils": "1.3.53"
|
|
32
32
|
},
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "1eb4ee8a448ded2e0d54517a08200d0109c0722e"
|
|
34
34
|
}
|