@fluid-topics/ft-reader-topic-content 1.1.37 → 1.1.39

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.
@@ -75,13 +75,13 @@
75
75
  </i>
76
76
  `}get textContent(){var t,e;return null!==(e=null===(t=this.slottedContent)||void 0===t?void 0:t.assignedNodes().map((t=>t.textContent)).join("").trim())&&void 0!==e?e:""}update(t){super.update(t),["value","variant"].some((e=>t.has(e)))&&this.resolveIcon()}resolveIcon(){var t,e;let s=this.value||this.textContent;switch(this.variant){case j.file_format:this.resolvedIcon=null!==(t=m[s.replace("-","_").toUpperCase()])&&void 0!==t?t:s;break;case j.material:this.resolvedIcon=this.value||i.nothing;break;default:this.resolvedIcon=null!==(e=f[s.replace("-","_").toUpperCase()])&&void 0!==e?e:s}}firstUpdated(t){super.firstUpdated(t),setTimeout((()=>this.resolveIcon()))}}O.elementDefinitions={},O.styles=k,I([s.property()],O.prototype,"variant",void 0),I([s.property()],O.prototype,"value",void 0),I([s.state()],O.prototype,"resolvedIcon",void 0),I([s.query("slot")],O.prototype,"slottedContent",void 0),e.customElement("ft-icon")(O);const S=i.css`
77
77
  `,$=i.css`
78
- `,M=e.FtReduxStore.get({name:"ft-app-info",reducers:{},initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],metadataConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0}});class U{static build(t){const{baseUrl:e,apiIntegrationIdentifier:i}=M.getState(),s=null!=t?t:i;if(e&&s&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(e,s,!0)}static get(t){var e;return null!=t?U.build(t):null!==(e=U.API)&&void 0!==e?e:U.API=U.build()}static await(t){return new Promise((e=>{let i=U.get(t);if(i)e(i);else{const s=M.subscribe((()=>{i=U.get(t),i&&(s(),e(i))}))}}))}}var N;const A=Symbol("clearAfterUnitTest");class T{constructor(t){this.messageContextProvider=t,this.defaultMessages={},this.cache=new e.CacheRegistry,this.listeners={},this.currentUiLocale="",this[N]=()=>{this.defaultMessages={},this.cache=new e.CacheRegistry,this.listeners={}},this.currentUiLocale=M.getState().uiLocale,M.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=M.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const e=t.name.toLowerCase();this.cache.setFinal(e,t),this.notify(e)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,i){var s;if(t=t.toLowerCase(),Object.keys(i).length>0){const o={...null!==(s=this.defaultMessages[t])&&void 0!==s?s:{},...i};e.deepEqual(this.defaultMessages[t],o)||(this.defaultMessages[t]=o,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,i,...s){var o,n,a;t=t.toLowerCase(),this.fetchContext(t);const r=null!==(n=null===(o=this.cache.getNow(t))||void 0===o?void 0:o.messages)&&void 0!==n?n:{};return new e.ParametrizedLabelResolver(null!==(a=this.defaultMessages[t])&&void 0!==a?a:{},r).resolve(i,...s)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,e){var i;return t=t.toLowerCase(),this.listeners[t]=null!==(i=this.listeners[t])&&void 0!==i?i:new Set,this.listeners[t].add(e),()=>{var i;return null===(i=this.listeners[t])||void 0===i?void 0:i.delete(e)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>e.delay(0).then((()=>t())).catch((()=>null)))))}}N=A,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new T((async(t,e)=>(await U.await()).getFluidTopicsMessageContext(t,e)))),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new T((async(t,e)=>(await U.await()).getCustomMessageContext(t,e))));const L=window.FluidTopicsI18nService,B=window.FluidTopicsCustomI18nService;var z=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class P extends e.FtLitElement{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>U.get(),this.cache=new e.CacheRegistry,this.cleanSessionDebouncer=new e.Debouncer}render(){return i.html`
78
+ `,M=e.FtReduxStore.get({name:"ft-app-info",reducers:{},initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],metadataConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0}});class U{static build(t){const{baseUrl:e,apiIntegrationIdentifier:i}=M.getState(),s=null!=t?t:i;if(e&&s&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(e,s,!0)}static get(t){var e;return null!=t?U.build(t):null!==(e=U.API)&&void 0!==e?e:U.API=U.build()}static await(t){return new Promise((e=>{let i=U.get(t);if(i)e(i);else{const s=M.subscribe((()=>{i=U.get(t),i&&(s(),e(i))}))}}))}}class N{constructor(t=!0,i){var s;this.overrideApi=i;let o=this.constructor;o.commonCache=null!==(s=o.commonCache)&&void 0!==s?s:new e.CacheRegistry,this.cache=t?o.commonCache:new e.CacheRegistry}get api(){var t;return null!==(t=this.overrideApi)&&void 0!==t?t:U.get()}get awaitApi(){var t;return null!==(t=this.overrideApi)&&void 0!==t?t:U.await()}clearCache(){this.cache.clearAll()}}var A;const T=Symbol("clearAfterUnitTest");class L extends N{constructor(t){super(),this.messageContextProvider=t,this.defaultMessages={},this.listeners={},this.currentUiLocale="",this[A]=()=>{this.defaultMessages={},this.cache=new e.CacheRegistry,this.listeners={}},this.currentUiLocale=M.getState().uiLocale,M.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=M.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const e=t.name.toLowerCase();this.cache.setFinal(e,t),this.notify(e)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,i){var s;if(t=t.toLowerCase(),Object.keys(i).length>0){const o={...null!==(s=this.defaultMessages[t])&&void 0!==s?s:{},...i};e.deepEqual(this.defaultMessages[t],o)||(this.defaultMessages[t]=o,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,i,...s){var o,n,a;t=t.toLowerCase(),this.fetchContext(t);const r=null!==(n=null===(o=this.cache.getNow(t))||void 0===o?void 0:o.messages)&&void 0!==n?n:{};return new e.ParametrizedLabelResolver(null!==(a=this.defaultMessages[t])&&void 0!==a?a:{},r).resolve(i,...s)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,e){var i;return t=t.toLowerCase(),this.listeners[t]=null!==(i=this.listeners[t])&&void 0!==i?i:new Set,this.listeners[t].add(e),()=>{var i;return null===(i=this.listeners[t])||void 0===i?void 0:i.delete(e)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>e.delay(0).then((()=>t())).catch((()=>null)))))}}A=T,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new class extends L{constructor(){super((async(t,e)=>(await this.awaitApi).getFluidTopicsMessageContext(t,e)))}}),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new class extends L{constructor(){super((async(t,e)=>(await this.awaitApi).getCustomMessageContext(t,e)))}});const B=window.FluidTopicsI18nService,z=window.FluidTopicsCustomI18nService;var P=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class R extends e.FtLitElement{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>U.get(),this.cache=new e.CacheRegistry,this.cleanSessionDebouncer=new e.Debouncer}render(){return i.html`
79
79
  <slot></slot>
80
- `}update(t){super.update(t),t.has("baseUrl")&&(M.actions.baseUrl(this.baseUrl),window.fluidTopicsBaseUrl=this.baseUrl),t.has("apiIntegrationIdentifier")&&M.actions.apiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&M.actions.uiLocale(this.uiLocale),t.has("metadataConfiguration")&&M.actions.metadataConfiguration(this.metadataConfiguration),t.has("noCustom")&&M.actions.noCustom(this.noCustom),t.has("editorMode")&&M.actions.editorMode(this.editorMode),t.has("noCustomComponent")&&M.actions.noCustomComponent(this.noCustomComponent),t.has("session")&&M.actions.session(this.session),t.has("availableUiLocales")&&M.actions.availableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>L.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){!this.withManualResources&&this.apiProvider()&&(null==this.session&&this.updateSession(),null==this.availableUiLocales&&this.updateUiLocales(),null==this.metadataConfiguration&&this.updateMetadataConfiguration())}async updateSession(){this.session=await this.cache.get("session",(async()=>{const t=await this.apiProvider().getCurrentSession();return t.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),t.idleTimeoutInMillis),t}))}async updateUiLocales(){this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>this.apiProvider().getAvailableUiLocales()))}async updateMetadataConfiguration(){this.metadataConfiguration=await this.cache.get("metadataConfiguration",(()=>this.apiProvider().getMetadataConfiguration()))}}P.elementDefinitions={},P.styles=$,z([s.property()],P.prototype,"baseUrl",void 0),z([s.property()],P.prototype,"apiIntegrationIdentifier",void 0),z([s.property()],P.prototype,"uiLocale",void 0),z([e.jsonProperty(null)],P.prototype,"availableUiLocales",void 0),z([e.jsonProperty(null)],P.prototype,"metadataConfiguration",void 0),z([s.property({type:Boolean})],P.prototype,"editorMode",void 0),z([s.property({type:Boolean})],P.prototype,"noCustom",void 0),z([s.property({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],P.prototype,"noCustomComponent",void 0),z([s.property({type:Boolean})],P.prototype,"withManualResources",void 0),z([e.jsonProperty([])],P.prototype,"messageContexts",void 0),z([e.jsonProperty(void 0)],P.prototype,"session",void 0),z([s.property({type:Object})],P.prototype,"apiProvider",void 0);class R{async listMySearches(){var t;return(null===(t=M.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await U.await()).listMySearches(M.getState().session.profile.userId):[]}}const _=new e.CacheRegistry;class E{async listMyBookmarks(){return _.get("bookmarks",(async()=>(await U.await()).listMyBookmarks(M.getState().session.profile.userId)))}clearCache(){_.clear("bookmarks")}}const K=e.FtReduxStore.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});new class{constructor(){this.currentSession=M.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new E,M.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:i}=M.getState();e.deepEqual(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==i?void 0:i.profile)||(this.currentSession=i,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){K.actions.savedSearches(void 0)}clearMyBookmarks(){K.actions.bookmarks(void 0)}async reloadMySearches(){const t=new R,e=await t.listMySearches();K.actions.savedSearches(e)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const e=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;K.actions.bookmarks(e)}}},e.customElement("ft-app-context")(P);var G=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};const W=Symbol("i18nAttributes"),D=Symbol("i18nProperties"),q=Symbol("i18nUnsubs");function F(t){var e;class i extends t{constructor(){super(...arguments),this.useCustomMessageContexts=!1,this[e]=new Map}get i18nService(){return this.useCustomMessageContexts?B:L}i18n(t,e,...i){var s;if("string"==typeof t)return this.i18nService.resolveMessage(t,e,...i);const o=null!==(s=t.args)&&void 0!==s?s:t.argsProvider?t.argsProvider(this):[];return this.i18nService.resolveMessage(t.context,t.key,...o)}onI18nUpdate(t){var e,i;null===(e=this[W])||void 0===e||e.forEach(((e,i)=>{var s;const o=this.getI18nAttributeValue(i);(null===(s=null==o?void 0:o.context)||void 0===s?void 0:s.toLowerCase())===t.toLowerCase()&&this.updateI18nAttributeMessage(i,o,e)})),null===(i=this[D])||void 0===i||i.forEach(((e,i)=>{e.context.toLowerCase()===t.toLowerCase()&&(this[i]=this.i18n(e))})),setTimeout((()=>this.requestUpdate()),0)}updateI18nAttributeMessage(t,e,i){this[t]={...e,message:this.i18n({context:e.context,key:e.key,...i})}}update(t){var e,i;super.update(t),null===(e=this[W])||void 0===e||e.forEach(((e,i)=>{const s=this.getI18nAttributeValue(i);(null==s?void 0:s.context)&&s.key&&(t.has(i)||null!=e.argsProvider)&&(t.has(i)&&this.addI18nContext(s.context),this.updateI18nAttributeMessage(i,s,e))})),null===(i=this[D])||void 0===i||i.forEach(((t,e)=>{null!=t.argsProvider&&(this[e]=this.i18n(t))}))}getI18nAttributeValue(t){return this[t]}connectedCallback(){var t,e,i,s;super.connectedCallback(),new Set([...null!==(e=null===(t=this[D])||void 0===t?void 0:t.values())&&void 0!==e?e:[],...[...null!==(s=null===(i=this[W])||void 0===i?void 0:i.keys())&&void 0!==s?s:[]].map((t=>this.getI18nAttributeValue(t)))].map((t=>null==t?void 0:t.context))).forEach((t=>t&&this.addI18nMessages(t)))}addI18nMessages(t,e){t=t.toLowerCase(),this[q].has(t)||this[q].set(t,this.i18nService.subscribe(t,(()=>this.onI18nUpdate(t)))),this.i18nService.prepareContext(t,null!=e?e:{})}addI18nContext(t,e){this.addI18nMessages("string"==typeof t?t:t.name,e)}disconnectedCallback(){super.disconnectedCallback(),this[q].forEach((t=>t())),this[q].clear()}}return e=q,G([s.property({type:Boolean})],i.prototype,"useCustomMessageContexts",void 0),i}class Q extends(F(e.FtLitElement)){}class V extends(F(e.FtLitElementRedux)){}var Z=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class H extends V{constructor(){super(),this.editorMode=!1,this.addStore(M)}render(){return this.key&&this.context?i.html`
80
+ `}update(t){super.update(t),t.has("baseUrl")&&(M.actions.baseUrl(this.baseUrl),window.fluidTopicsBaseUrl=this.baseUrl),t.has("apiIntegrationIdentifier")&&M.actions.apiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&M.actions.uiLocale(this.uiLocale),t.has("metadataConfiguration")&&M.actions.metadataConfiguration(this.metadataConfiguration),t.has("noCustom")&&M.actions.noCustom(this.noCustom),t.has("editorMode")&&M.actions.editorMode(this.editorMode),t.has("noCustomComponent")&&M.actions.noCustomComponent(this.noCustomComponent),t.has("session")&&M.actions.session(this.session),t.has("availableUiLocales")&&M.actions.availableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>B.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){!this.withManualResources&&this.apiProvider()&&(null==this.session&&this.updateSession(),null==this.availableUiLocales&&this.updateUiLocales(),null==this.metadataConfiguration&&this.updateMetadataConfiguration())}async updateSession(){this.session=await this.cache.get("session",(async()=>{const t=await this.apiProvider().getCurrentSession();return t.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),t.idleTimeoutInMillis),t}))}async updateUiLocales(){this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>this.apiProvider().getAvailableUiLocales()))}async updateMetadataConfiguration(){this.metadataConfiguration=await this.cache.get("metadataConfiguration",(()=>this.apiProvider().getMetadataConfiguration()))}}R.elementDefinitions={},R.styles=$,P([s.property()],R.prototype,"baseUrl",void 0),P([s.property()],R.prototype,"apiIntegrationIdentifier",void 0),P([s.property()],R.prototype,"uiLocale",void 0),P([e.jsonProperty(null)],R.prototype,"availableUiLocales",void 0),P([e.jsonProperty(null)],R.prototype,"metadataConfiguration",void 0),P([s.property({type:Boolean})],R.prototype,"editorMode",void 0),P([s.property({type:Boolean})],R.prototype,"noCustom",void 0),P([s.property({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],R.prototype,"noCustomComponent",void 0),P([s.property({type:Boolean})],R.prototype,"withManualResources",void 0),P([e.jsonProperty([])],R.prototype,"messageContexts",void 0),P([e.jsonProperty(void 0)],R.prototype,"session",void 0),P([s.property({type:Object})],R.prototype,"apiProvider",void 0);class _ extends N{async listMySearches(){let t=M.getState().session;return(null==t?void 0:t.sessionAuthenticated)?this.cache.get("my-searches",(async()=>(await this.awaitApi).listMySearches(t.profile.userId)),3e5):[]}}class E extends N{async listMyBookmarks(){let t=M.getState().session;return(null==t?void 0:t.sessionAuthenticated)?this.cache.get("my-bookmarks",(async()=>(await this.awaitApi).listMyBookmarks(t.profile.userId)),3e5):[]}}const K=e.FtReduxStore.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});new class{constructor(){this.currentSession=M.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new E,this.savedSearchesService=new _,M.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:i}=M.getState();e.deepEqual(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==i?void 0:i.profile)||(this.currentSession=i,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){this.savedSearchesService.clearCache(),K.actions.savedSearches(void 0)}clearMyBookmarks(){this.bookmarksService.clearCache(),K.actions.bookmarks(void 0)}async reloadMySearches(){this.savedSearchesService.clearCache();const t=await this.savedSearchesService.listMySearches();K.actions.savedSearches(t)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const e=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;K.actions.bookmarks(e)}}},e.customElement("ft-app-context")(R);var G=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};const W=Symbol("i18nAttributes"),D=Symbol("i18nProperties"),q=Symbol("i18nUnsubs");function F(t){var e;class i extends t{constructor(){super(...arguments),this.useCustomMessageContexts=!1,this[e]=new Map}get i18nService(){return this.useCustomMessageContexts?z:B}i18n(t,e,...i){var s;if("string"==typeof t)return this.i18nService.resolveMessage(t,e,...i);const o=null!==(s=t.args)&&void 0!==s?s:t.argsProvider?t.argsProvider(this):[];return this.i18nService.resolveMessage(t.context,t.key,...o)}onI18nUpdate(t){var e,i;null===(e=this[W])||void 0===e||e.forEach(((e,i)=>{var s;const o=this.getI18nAttributeValue(i);(null===(s=null==o?void 0:o.context)||void 0===s?void 0:s.toLowerCase())===t.toLowerCase()&&this.updateI18nAttributeMessage(i,o,e)})),null===(i=this[D])||void 0===i||i.forEach(((e,i)=>{e.context.toLowerCase()===t.toLowerCase()&&(this[i]=this.i18n(e))})),setTimeout((()=>this.requestUpdate()),0)}updateI18nAttributeMessage(t,e,i){this[t]={...e,message:this.i18n({context:e.context,key:e.key,...i})}}update(t){var e,i;super.update(t),null===(e=this[W])||void 0===e||e.forEach(((e,i)=>{const s=this.getI18nAttributeValue(i);(null==s?void 0:s.context)&&s.key&&(t.has(i)||null!=e.argsProvider)&&(t.has(i)&&this.addI18nContext(s.context),this.updateI18nAttributeMessage(i,s,e))})),null===(i=this[D])||void 0===i||i.forEach(((t,e)=>{null!=t.argsProvider&&(this[e]=this.i18n(t))}))}getI18nAttributeValue(t){return this[t]}connectedCallback(){var t,e,i,s;super.connectedCallback(),new Set([...null!==(e=null===(t=this[D])||void 0===t?void 0:t.values())&&void 0!==e?e:[],...[...null!==(s=null===(i=this[W])||void 0===i?void 0:i.keys())&&void 0!==s?s:[]].map((t=>this.getI18nAttributeValue(t)))].map((t=>null==t?void 0:t.context))).forEach((t=>t&&this.addI18nMessages(t)))}addI18nMessages(t,e){t=t.toLowerCase(),this[q].has(t)||this[q].set(t,this.i18nService.subscribe(t,(()=>this.onI18nUpdate(t)))),this.i18nService.prepareContext(t,null!=e?e:{})}addI18nContext(t,e){this.addI18nMessages("string"==typeof t?t:t.name,e)}disconnectedCallback(){super.disconnectedCallback(),this[q].forEach((t=>t())),this[q].clear()}}return e=q,G([s.property({type:Boolean})],i.prototype,"useCustomMessageContexts",void 0),i}class Q extends(F(e.FtLitElement)){}class V extends(F(e.FtLitElementRedux)){}var Z=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class H extends V{constructor(){super(),this.editorMode=!1,this.addStore(M)}render(){return this.key&&this.context?i.html`
81
81
  <span class="ft-i18n">
82
82
  ${this.i18n(this.context,this.key,...Array.isArray(this.args)?this.args:[])}
83
83
  </span>
84
- `:this.editorMode?"Select a context and a label key.":i.nothing}update(t){var e;super.update(t),["context","key","defaultMessage"].some((e=>t.has(e)))&&this.context&&this.key&&this.addI18nMessages(this.context,{[this.key]:null!==(e=this.defaultMessage)&&void 0!==e?e:""})}}H.elementDefinitions={},H.styles=S,Z([e.redux()],H.prototype,"editorMode",void 0),Z([s.property()],H.prototype,"context",void 0),Z([s.property()],H.prototype,"key",void 0),Z([e.jsonProperty([])],H.prototype,"args",void 0),Z([s.property()],H.prototype,"defaultMessage",void 0);class J{static build(t){return new J(t)}static fromGwt(t){return new J(t)}constructor(t){this.name=t,this.properties=new Proxy({},{get:(t,e)=>{const i=e;return t=>({context:this.name,key:i,args:"function"==typeof t?void 0:t,argsProvider:"function"==typeof t?t:void 0})}}),this.messages=new Proxy({},{get:(t,e)=>(...t)=>L.resolveMessage(this.name,e,...t)})}}e.customElement("ft-i18n")(H);const X=J.build("designedReaderTopicContent");var Y=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class tt extends p{constructor(){super(...arguments),this.contentPreprocessor=t=>t,this.onContentAvailable=()=>null}render(){var t,e;return this.map&&(this.error||this.content)?i.html`
84
+ `:this.editorMode?"Select a context and a label key.":i.nothing}update(t){var e;super.update(t),["context","key","defaultMessage"].some((e=>t.has(e)))&&this.context&&this.key&&this.addI18nMessages(this.context,{[this.key]:null!==(e=this.defaultMessage)&&void 0!==e?e:""})}}H.elementDefinitions={},H.styles=S,Z([e.redux()],H.prototype,"editorMode",void 0),Z([s.property()],H.prototype,"context",void 0),Z([s.property()],H.prototype,"key",void 0),Z([e.jsonProperty([])],H.prototype,"args",void 0),Z([s.property()],H.prototype,"defaultMessage",void 0);class J{static build(t){return new J(t)}static fromGwt(t){return new J(t)}constructor(t){this.name=t,this.properties=new Proxy({},{get:(t,e)=>{const i=e;return t=>({context:this.name,key:i,args:"function"==typeof t?void 0:t,argsProvider:"function"==typeof t?t:void 0})}}),this.messages=new Proxy({},{get:(t,e)=>(...t)=>B.resolveMessage(this.name,e,...t)})}}e.customElement("ft-i18n")(H);const X=J.build("designedReaderTopicContent");var Y=function(t,e,i,s){for(var o,n=arguments.length,a=n<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s,r=t.length-1;r>=0;r--)(o=t[r])&&(a=(n<3?o(a):n>3?o(e,i,a):o(e,i))||a);return n>3&&a&&Object.defineProperty(e,i,a),a};class tt extends p{constructor(){super(...arguments),this.contentPreprocessor=t=>t,this.onContentAvailable=()=>null}render(){var t,e;return this.map&&(this.error||this.content)?i.html`
85
85
  <style>
86
86
  @import "${null===(t=this.map)||void 0===t?void 0:t.contentStyles.topicStylesheetUrl}";
87
87
  </style>
@@ -76,7 +76,7 @@ let be=class extends $t{constructor(){super(...arguments),this.renderOptions={ho
76
76
  * @license
77
77
  * Copyright 2019 Google LLC
78
78
  * SPDX-License-Identifier: BSD-3-Clause
79
- */class Ee extends be{createRenderRoot(){const t=this.constructor;t.elementDefinitions&&!t.registry&&(t.registry=new CustomElementRegistry,Object.entries(t.elementDefinitions).forEach((([e,o])=>t.registry.define(e,o))));const e={...t.shadowRootOptions,customElements:t.registry},o=this.renderOptions.creationScope=this.attachShadow(e);return((t,e)=>{Ce?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const o=document.createElement("style"),r=Se.litNonce;void 0!==r&&o.setAttribute("nonce",r),o.textContent=e.cssText,t.appendChild(o)}))})(o,t.elementStyles),o}}var Re,Ue=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};const Ie=Symbol("constructorPrototype"),ke=Symbol("constructorName"),We=Symbol("exportpartsDebouncer");class Le extends Ee{constructor(){super(),this[Re]=new i(5),this[ke]=this.constructor.name,this[Ie]=this.constructor.prototype}adoptedCallback(){this.constructor.name!==this[ke]&&Object.setPrototypeOf(this,this[Ie])}updated(t){super.updated(t),this.updateComplete.then((()=>{this.contentAvailableCallback(t),this.scheduleExportpartsUpdate()}))}contentAvailableCallback(t){var e,o;if((null!==(o=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelectorAll(".ft-lit-element--custom-stylesheet"))&&void 0!==o?o:[]).forEach((t=>t.remove())),this.customStylesheet){const t=document.createElement("style");t.classList.add("ft-lit-element--custom-stylesheet"),t.innerHTML=this.customStylesheet,this.shadowRoot.append(t)}}scheduleExportpartsUpdate(){var t,e,o;((null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())||null!==(o=null===(e=this.exportpartsPrefixes)||void 0===e?void 0:e.length)&&void 0!==o&&o)&&this[We].run((()=>{var t,e;(null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())?this.setExportpartsAttribute([this.exportpartsPrefix]):null!=this.exportpartsPrefixes&&(null===(e=this.exportpartsPrefixes)||void 0===e?void 0:e.length)>0&&this.setExportpartsAttribute(this.exportpartsPrefixes)}))}setExportpartsAttribute(t){var e,o,r,i,n,a;const s=t=>null!=t&&t.trim().length>0,c=t.filter(s).map((t=>t.trim()));if(0===c.length)return void this.removeAttribute("exportparts");const l=new Set;for(let t of null!==(o=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelectorAll("[part],[exportparts]"))&&void 0!==o?o:[]){const e=null!==(i=null===(r=t.getAttribute("part"))||void 0===r?void 0:r.split(" "))&&void 0!==i?i:[],o=null!==(a=null===(n=t.getAttribute("exportparts"))||void 0===n?void 0:n.split(",").map((t=>t.split(":")[1])))&&void 0!==a?a:[];new Array(...e,...o).filter(s).map((t=>t.trim())).forEach((t=>l.add(t)))}if(0===l.size)return void this.removeAttribute("exportparts");const f=[...l.values()].flatMap((t=>c.map((e=>`${t}:${e}--${t}`))));this.setAttribute("exportparts",[...this.part,...f].join(", "))}}Re=We,Ue([U()],Le.prototype,"exportpartsPrefix",void 0),Ue([A([])],Le.prototype,"exportpartsPrefixes",void 0),Ue([U()],Le.prototype,"customStylesheet",void 0);class Ke{constructor(t,e=!0,o=[],r=5e3){this.ctx=t,this.iframes=e,this.exclude=o,this.iframesTimeout=r}static matches(t,e){const o="string"==typeof e?[e]:e,r=t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;if(r){let e=!1;return o.every((o=>!r.call(t,o)||(e=!0,!1))),e}return!1}getContexts(){let t,e=[];return t=void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[],t.forEach((t=>{const o=e.filter((e=>e.contains(t))).length>0;-1!==e.indexOf(t)||o||e.push(t)})),e}getIframeContents(t,e,o=(()=>{})){let r;try{const e=t.contentWindow;if(r=e.document,!e||!r)throw new Error("iframe inaccessible")}catch(t){o()}r&&e(r)}isIframeBlank(t){const e="about:blank",o=t.getAttribute("src").trim();return t.contentWindow.location.href===e&&o!==e&&o}observeIframeLoad(t,e,o){let r=!1,i=null;const n=()=>{if(!r){r=!0,clearTimeout(i);try{this.isIframeBlank(t)||(t.removeEventListener("load",n),this.getIframeContents(t,e,o))}catch(t){o()}}};t.addEventListener("load",n),i=setTimeout(n,this.iframesTimeout)}onIframeReady(t,e,o){try{"complete"===t.contentWindow.document.readyState?this.isIframeBlank(t)?this.observeIframeLoad(t,e,o):this.getIframeContents(t,e,o):this.observeIframeLoad(t,e,o)}catch(t){o()}}waitForIframes(t,e){let o=0;this.forEachIframe(t,(()=>!0),(t=>{o++,this.waitForIframes(t.querySelector("html"),(()=>{--o||e()}))}),(t=>{t||e()}))}forEachIframe(t,e,o,r=(()=>{})){let i=t.querySelectorAll("iframe"),n=i.length,a=0;i=Array.prototype.slice.call(i);const s=()=>{--n<=0&&r(a)};n||s(),i.forEach((t=>{Ke.matches(t,this.exclude)?s():this.onIframeReady(t,(r=>{e(t)&&(a++,o(r)),s()}),s)}))}createIterator(t,e,o){return document.createNodeIterator(t,e,o,!1)}createInstanceOnIframe(t){return new Ke(t.querySelector("html"),this.iframes)}compareNodeIframe(t,e,o){if(t.compareDocumentPosition(o)&Node.DOCUMENT_POSITION_PRECEDING){if(null===e)return!0;if(e.compareDocumentPosition(o)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}getIteratorNode(t){const e=t.previousNode();let o;return o=(null===e||t.nextNode())&&t.nextNode(),{prevNode:e,node:o}}checkIframeFilter(t,e,o,r){let i=!1,n=!1;return r.forEach(((t,e)=>{t.val===o&&(i=e,n=t.handled)})),this.compareNodeIframe(t,e,o)?(!1!==i||n?!1===i||n||(r[i].handled=!0):r.push({val:o,handled:!0}),!0):(!1===i&&r.push({val:o,handled:!1}),!1)}handleOpenIframes(t,e,o,r){t.forEach((t=>{t.handled||this.getIframeContents(t.val,(t=>{this.createInstanceOnIframe(t).forEachNode(e,o,r)}))}))}iterateThroughNodes(t,e,o,r,i){const n=this.createIterator(e,t,r);let a,s,c=[],l=[],f=()=>(({prevNode:s,node:a}=this.getIteratorNode(n)),a);for(;f();)this.iframes&&this.forEachIframe(e,(t=>this.checkIframeFilter(a,s,t,c)),(e=>{this.createInstanceOnIframe(e).forEachNode(t,(t=>l.push(t)),r)})),l.push(a);l.forEach((t=>{o(t)})),this.iframes&&this.handleOpenIframes(c,t,o,r),i()}forEachNode(t,e,o,r=(()=>{})){const i=this.getContexts();let n=i.length;n||r(),i.forEach((i=>{const a=()=>{this.iterateThroughNodes(t,i,e,o,(()=>{--n<=0&&r()}))};this.iframes?this.waitForIframes(i,a):a()}))}}const Ae=function(t){const e=new class{constructor(t){this.ctx=t,this.ie=!1;const e=window.navigator.userAgent;(e.indexOf("MSIE")>-1||e.indexOf("Trident")>-1)&&(this.ie=!0)}set opt(t){this._opt=Object.assign({},{element:"",className:"",exclude:[],iframes:!1,iframesTimeout:5e3,separateWordSearch:!0,diacritics:!0,synonyms:{},accuracy:"partially",acrossElements:!1,caseSensitive:!1,ignoreJoiners:!1,ignoreGroups:0,ignorePunctuation:[],wildcards:"disabled",each:()=>{},noMatch:()=>{},filter:()=>!0,done:()=>{},debug:!1,log:window.console},t)}get opt(){return this._opt}get iterator(){return new Ke(this.ctx,this.opt.iframes,this.opt.exclude,this.opt.iframesTimeout)}log(t,e="debug"){const o=this.opt.log;this.opt.debug&&"object"==typeof o&&"function"==typeof o[e]&&o[e](`mark.js: ${t}`)}escapeStr(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}createRegExp(t){return"disabled"!==this.opt.wildcards&&(t=this.setupWildcardsRegExp(t)),t=this.escapeStr(t),Object.keys(this.opt.synonyms).length&&(t=this.createSynonymsRegExp(t)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.setupIgnoreJoinersRegExp(t)),this.opt.diacritics&&(t=this.createDiacriticsRegExp(t)),t=this.createMergedBlanksRegExp(t),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.createJoinersRegExp(t)),"disabled"!==this.opt.wildcards&&(t=this.createWildcardsRegExp(t)),this.createAccuracyRegExp(t)}createSynonymsRegExp(t){const e=this.opt.synonyms,o=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(let i in e)if(e.hasOwnProperty(i)){const n=e[i],a="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(i):this.escapeStr(i),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(n):this.escapeStr(n);""!==a&&""!==s&&(t=t.replace(new RegExp(`(${this.escapeStr(a)}|${this.escapeStr(s)})`,`gm${o}`),r+`(${this.processSynomyms(a)}|`+`${this.processSynomyms(s)})`+r))}return t}processSynomyms(t){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.setupIgnoreJoinersRegExp(t)),t}setupWildcardsRegExp(t){return(t=t.replace(/(?:\\)*\?/g,(t=>"\\"===t.charAt(0)?"?":""))).replace(/(?:\\)*\*/g,(t=>"\\"===t.charAt(0)?"*":""))}createWildcardsRegExp(t){let e="withSpaces"===this.opt.wildcards;return t.replace(/\u0001/g,e?"[\\S\\s]?":"\\S?").replace(/\u0002/g,e?"[\\S\\s]*?":"\\S*")}setupIgnoreJoinersRegExp(t){return t.replace(/[^(|)\\]/g,((t,e,o)=>{let r=o.charAt(e+1);return/[(|)\\]/.test(r)||""===r?t:t+"\0"}))}createJoinersRegExp(t){let e=[];const o=this.opt.ignorePunctuation;return Array.isArray(o)&&o.length&&e.push(this.escapeStr(o.join(""))),this.opt.ignoreJoiners&&e.push("\\u00ad\\u200b\\u200c\\u200d"),e.length?t.split(/\u0000+/).join(`[${e.join("")}]*`):t}createDiacriticsRegExp(t){const e=this.opt.caseSensitive?"":"i",o=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"];let r=[];return t.split("").forEach((i=>{o.every((o=>{if(-1!==o.indexOf(i)){if(r.indexOf(o)>-1)return!1;t=t.replace(new RegExp(`[${o}]`,`gm${e}`),`[${o}]`),r.push(o)}return!0}))})),t}createMergedBlanksRegExp(t){return t.replace(/[\s]+/gim,"[\\s]+")}createAccuracyRegExp(t){let e=this.opt.accuracy,o="string"==typeof e?e:e.value,r="string"==typeof e?[]:e.limiters,i="";switch(r.forEach((t=>{i+=`|${this.escapeStr(t)}`})),o){case"partially":default:return`()(${t})`;case"complementary":return i="\\s"+(i||this.escapeStr("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿")),`()([^${i}]*${t}[^${i}]*)`;case"exactly":return`(^|\\s${i})(${t})(?=$|\\s${i})`}}getSeparatedKeywords(t){let e=[];return t.forEach((t=>{this.opt.separateWordSearch?t.split(" ").forEach((t=>{t.trim()&&-1===e.indexOf(t)&&e.push(t)})):t.trim()&&-1===e.indexOf(t)&&e.push(t)})),{keywords:e.sort(((t,e)=>e.length-t.length)),length:e.length}}isNumeric(t){return Number(parseFloat(t))==t}checkRanges(t){if(!Array.isArray(t)||"[object Object]"!==Object.prototype.toString.call(t[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(t),[];const e=[];let o=0;return t.sort(((t,e)=>t.start-e.start)).forEach((t=>{let{start:r,end:i,valid:n}=this.callNoMatchOnInvalidRanges(t,o);n&&(t.start=r,t.length=i-r,e.push(t),o=i)})),e}callNoMatchOnInvalidRanges(t,e){let o,r,i=!1;return t&&void 0!==t.start?(o=parseInt(t.start,10),r=o+parseInt(t.length,10),this.isNumeric(t.start)&&this.isNumeric(t.length)&&r-e>0&&r-o>0?i=!0:(this.log(`Ignoring invalid or overlapping range: ${JSON.stringify(t)}`),this.opt.noMatch(t))):(this.log(`Ignoring invalid range: ${JSON.stringify(t)}`),this.opt.noMatch(t)),{start:o,end:r,valid:i}}checkWhitespaceRanges(t,e,o){let r,i=!0,n=o.length,a=e-n,s=parseInt(t.start,10)-a;return s=s>n?n:s,r=s+parseInt(t.length,10),r>n&&(r=n,this.log(`End range automatically set to the max value of ${n}`)),s<0||r-s<0||s>n||r>n?(i=!1,this.log(`Invalid range: ${JSON.stringify(t)}`),this.opt.noMatch(t)):""===o.substring(s,r).replace(/\s+/g,"")&&(i=!1,this.log("Skipping whitespace only range: "+JSON.stringify(t)),this.opt.noMatch(t)),{start:s,end:r,valid:i}}getTextNodes(t){let e="",o=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,(t=>{o.push({start:e.length,end:(e+=t.textContent).length,node:t})}),(t=>this.matchesExclude(t.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT),(()=>{t({value:e,nodes:o})}))}matchesExclude(t){return Ke.matches(t,this.opt.exclude.concat(["script","style","title","head","html"]))}wrapRangeInTextNode(t,e,o){const r=this.opt.element?this.opt.element:"mark",i=t.splitText(e),n=i.splitText(o-e);let a=document.createElement(r);return a.setAttribute("data-markjs","true"),this.opt.className&&a.setAttribute("class",this.opt.className),a.textContent=i.textContent,i.parentNode.replaceChild(a,i),n}wrapRangeInMappedTextNode(t,e,o,r,i){t.nodes.every(((n,a)=>{const s=t.nodes[a+1];if(void 0===s||s.start>e){if(!r(n.node))return!1;const s=e-n.start,c=(o>n.end?n.end:o)-n.start,l=t.value.substr(0,n.start),f=t.value.substr(c+n.start);if(n.node=this.wrapRangeInTextNode(n.node,s,c),t.value=l+f,t.nodes.forEach(((e,o)=>{o>=a&&(t.nodes[o].start>0&&o!==a&&(t.nodes[o].start-=c),t.nodes[o].end-=c)})),o-=c,i(n.node.previousSibling,n.start),!(o>n.end))return!1;e=n.end}return!0}))}wrapMatches(t,e,o,r,i){const n=0===e?0:e+1;this.getTextNodes((e=>{e.nodes.forEach((e=>{let i;for(e=e.node;null!==(i=t.exec(e.textContent))&&""!==i[n];){if(!o(i[n],e))continue;let a=i.index;if(0!==n)for(let t=1;t<n;t++)a+=i[t].length;e=this.wrapRangeInTextNode(e,a,a+i[n].length),r(e.previousSibling),t.lastIndex=0}})),i()}))}wrapMatchesAcrossElements(t,e,o,r,i){const n=0===e?0:e+1;this.getTextNodes((e=>{let a;for(;null!==(a=t.exec(e.value))&&""!==a[n];){let i=a.index;if(0!==n)for(let t=1;t<n;t++)i+=a[t].length;const s=i+a[n].length;this.wrapRangeInMappedTextNode(e,i,s,(t=>o(a[n],t)),((e,o)=>{t.lastIndex=o,r(e)}))}i()}))}wrapRangeFromIndex(t,e,o,r){this.getTextNodes((i=>{const n=i.value.length;t.forEach(((t,r)=>{let{start:a,end:s,valid:c}=this.checkWhitespaceRanges(t,n,i.value);c&&this.wrapRangeInMappedTextNode(i,a,s,(o=>e(o,t,i.value.substring(a,s),r)),(e=>{o(e,t)}))})),r()}))}unwrapMatches(t){const e=t.parentNode;let o=document.createDocumentFragment();for(;t.firstChild;)o.appendChild(t.removeChild(t.firstChild));e.replaceChild(o,t),this.ie?this.normalizeTextNode(e):e.normalize()}normalizeTextNode(t){if(t){if(3===t.nodeType)for(;t.nextSibling&&3===t.nextSibling.nodeType;)t.nodeValue+=t.nextSibling.nodeValue,t.parentNode.removeChild(t.nextSibling);else this.normalizeTextNode(t.firstChild);this.normalizeTextNode(t.nextSibling)}}markRegExp(t,e){this.opt=e,this.log(`Searching with expression "${t}"`);let o=0,r="wrapMatches";this.opt.acrossElements&&(r="wrapMatchesAcrossElements"),this[r](t,this.opt.ignoreGroups,((t,e)=>this.opt.filter(e,t,o)),(t=>{o++,this.opt.each(t)}),(()=>{0===o&&this.opt.noMatch(t),this.opt.done(o)}))}mark(t,e){this.opt=e;let o=0,r="wrapMatches";const{keywords:i,length:n}=this.getSeparatedKeywords("string"==typeof t?[t]:t),a=this.opt.caseSensitive?"":"i",s=t=>{let e=new RegExp(this.createRegExp(t),`gm${a}`),c=0;this.log(`Searching with expression "${e}"`),this[r](e,1,((e,r)=>this.opt.filter(r,t,o,c)),(t=>{c++,o++,this.opt.each(t)}),(()=>{0===c&&this.opt.noMatch(t),i[n-1]===t?this.opt.done(o):s(i[i.indexOf(t)+1])}))};this.opt.acrossElements&&(r="wrapMatchesAcrossElements"),0===n?this.opt.done(o):s(i[0])}markRanges(t,e){this.opt=e;let o=0,r=this.checkRanges(t);r&&r.length?(this.log("Starting to mark with the following ranges: "+JSON.stringify(r)),this.wrapRangeFromIndex(r,((t,e,o,r)=>this.opt.filter(t,e,o,r)),((t,e)=>{o++,this.opt.each(t,e)}),(()=>{this.opt.done(o)}))):this.opt.done(o)}unmark(t){this.opt=t;let e=this.opt.element?this.opt.element:"*";e+="[data-markjs]",this.opt.className&&(e+=`.${this.opt.className}`),this.log(`Removal selector "${e}"`),this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT,(t=>{this.unwrapMatches(t)}),(t=>{const o=Ke.matches(t,e),r=this.matchesExclude(t);return!o||r?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),this.opt.done)}}(t);return this.mark=(t,o)=>(e.mark(t,o),this),this.markRegExp=(t,o)=>(e.markRegExp(t,o),this),this.markRanges=(t,o)=>(e.markRanges(t,o),this),this.unmark=t=>(e.unmark(t),this),this},je=Oe.create("--ft-utils-highlight-html-background-color","","COLOR","#FFF26E"),$e=Ot`
79
+ */class Ee extends be{createRenderRoot(){const t=this.constructor;t.elementDefinitions&&!t.registry&&(t.registry=new CustomElementRegistry,Object.entries(t.elementDefinitions).forEach((([e,o])=>t.registry.define(e,o))));const e={...t.shadowRootOptions,customElements:t.registry},o=this.renderOptions.creationScope=this.attachShadow(e);return((t,e)=>{Ce?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const o=document.createElement("style"),r=Se.litNonce;void 0!==r&&o.setAttribute("nonce",r),o.textContent=e.cssText,t.appendChild(o)}))})(o,t.elementStyles),o}}var Re,Ue=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};const Ie=Symbol("constructorPrototype"),ke=Symbol("constructorName"),We=Symbol("exportpartsDebouncer");class Le extends Ee{constructor(){super(),this[Re]=new i(5),this[ke]=this.constructor.name,this[Ie]=this.constructor.prototype}adoptedCallback(){this.constructor.name!==this[ke]&&Object.setPrototypeOf(this,this[Ie])}updated(t){super.updated(t),this.updateComplete.then((()=>{this.contentAvailableCallback(t),this.insertCustomStylesheet(),this.scheduleExportpartsUpdate()}))}contentAvailableCallback(t){}insertCustomStylesheet(){var t,e;if((null!==(e=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelectorAll(".ft-lit-element--custom-stylesheet"))&&void 0!==e?e:[]).forEach((t=>t.remove())),this.customStylesheet){const t=document.createElement("style");t.classList.add("ft-lit-element--custom-stylesheet"),t.innerHTML=this.customStylesheet,this.shadowRoot.append(t)}}scheduleExportpartsUpdate(){var t,e,o;((null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())||null!==(o=null===(e=this.exportpartsPrefixes)||void 0===e?void 0:e.length)&&void 0!==o&&o)&&this[We].run((()=>{var t,e;(null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())?this.setExportpartsAttribute([this.exportpartsPrefix]):null!=this.exportpartsPrefixes&&(null===(e=this.exportpartsPrefixes)||void 0===e?void 0:e.length)>0&&this.setExportpartsAttribute(this.exportpartsPrefixes)}))}setExportpartsAttribute(t){var e,o,r,i,n,a;const s=t=>null!=t&&t.trim().length>0,c=t.filter(s).map((t=>t.trim()));if(0===c.length)return void this.removeAttribute("exportparts");const l=new Set;for(let t of null!==(o=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelectorAll("[part],[exportparts]"))&&void 0!==o?o:[]){const e=null!==(i=null===(r=t.getAttribute("part"))||void 0===r?void 0:r.split(" "))&&void 0!==i?i:[],o=null!==(a=null===(n=t.getAttribute("exportparts"))||void 0===n?void 0:n.split(",").map((t=>t.split(":")[1])))&&void 0!==a?a:[];new Array(...e,...o).filter(s).map((t=>t.trim())).forEach((t=>l.add(t)))}if(0===l.size)return void this.removeAttribute("exportparts");const f=[...l.values()].flatMap((t=>c.map((e=>`${t}:${e}--${t}`))));this.setAttribute("exportparts",[...this.part,...f].join(", "))}}Re=We,Ue([U()],Le.prototype,"exportpartsPrefix",void 0),Ue([A([])],Le.prototype,"exportpartsPrefixes",void 0),Ue([U()],Le.prototype,"customStylesheet",void 0);class Ke{constructor(t,e=!0,o=[],r=5e3){this.ctx=t,this.iframes=e,this.exclude=o,this.iframesTimeout=r}static matches(t,e){const o="string"==typeof e?[e]:e,r=t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;if(r){let e=!1;return o.every((o=>!r.call(t,o)||(e=!0,!1))),e}return!1}getContexts(){let t,e=[];return t=void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[],t.forEach((t=>{const o=e.filter((e=>e.contains(t))).length>0;-1!==e.indexOf(t)||o||e.push(t)})),e}getIframeContents(t,e,o=(()=>{})){let r;try{const e=t.contentWindow;if(r=e.document,!e||!r)throw new Error("iframe inaccessible")}catch(t){o()}r&&e(r)}isIframeBlank(t){const e="about:blank",o=t.getAttribute("src").trim();return t.contentWindow.location.href===e&&o!==e&&o}observeIframeLoad(t,e,o){let r=!1,i=null;const n=()=>{if(!r){r=!0,clearTimeout(i);try{this.isIframeBlank(t)||(t.removeEventListener("load",n),this.getIframeContents(t,e,o))}catch(t){o()}}};t.addEventListener("load",n),i=setTimeout(n,this.iframesTimeout)}onIframeReady(t,e,o){try{"complete"===t.contentWindow.document.readyState?this.isIframeBlank(t)?this.observeIframeLoad(t,e,o):this.getIframeContents(t,e,o):this.observeIframeLoad(t,e,o)}catch(t){o()}}waitForIframes(t,e){let o=0;this.forEachIframe(t,(()=>!0),(t=>{o++,this.waitForIframes(t.querySelector("html"),(()=>{--o||e()}))}),(t=>{t||e()}))}forEachIframe(t,e,o,r=(()=>{})){let i=t.querySelectorAll("iframe"),n=i.length,a=0;i=Array.prototype.slice.call(i);const s=()=>{--n<=0&&r(a)};n||s(),i.forEach((t=>{Ke.matches(t,this.exclude)?s():this.onIframeReady(t,(r=>{e(t)&&(a++,o(r)),s()}),s)}))}createIterator(t,e,o){return document.createNodeIterator(t,e,o,!1)}createInstanceOnIframe(t){return new Ke(t.querySelector("html"),this.iframes)}compareNodeIframe(t,e,o){if(t.compareDocumentPosition(o)&Node.DOCUMENT_POSITION_PRECEDING){if(null===e)return!0;if(e.compareDocumentPosition(o)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}getIteratorNode(t){const e=t.previousNode();let o;return o=(null===e||t.nextNode())&&t.nextNode(),{prevNode:e,node:o}}checkIframeFilter(t,e,o,r){let i=!1,n=!1;return r.forEach(((t,e)=>{t.val===o&&(i=e,n=t.handled)})),this.compareNodeIframe(t,e,o)?(!1!==i||n?!1===i||n||(r[i].handled=!0):r.push({val:o,handled:!0}),!0):(!1===i&&r.push({val:o,handled:!1}),!1)}handleOpenIframes(t,e,o,r){t.forEach((t=>{t.handled||this.getIframeContents(t.val,(t=>{this.createInstanceOnIframe(t).forEachNode(e,o,r)}))}))}iterateThroughNodes(t,e,o,r,i){const n=this.createIterator(e,t,r);let a,s,c=[],l=[],f=()=>(({prevNode:s,node:a}=this.getIteratorNode(n)),a);for(;f();)this.iframes&&this.forEachIframe(e,(t=>this.checkIframeFilter(a,s,t,c)),(e=>{this.createInstanceOnIframe(e).forEachNode(t,(t=>l.push(t)),r)})),l.push(a);l.forEach((t=>{o(t)})),this.iframes&&this.handleOpenIframes(c,t,o,r),i()}forEachNode(t,e,o,r=(()=>{})){const i=this.getContexts();let n=i.length;n||r(),i.forEach((i=>{const a=()=>{this.iterateThroughNodes(t,i,e,o,(()=>{--n<=0&&r()}))};this.iframes?this.waitForIframes(i,a):a()}))}}const Ae=function(t){const e=new class{constructor(t){this.ctx=t,this.ie=!1;const e=window.navigator.userAgent;(e.indexOf("MSIE")>-1||e.indexOf("Trident")>-1)&&(this.ie=!0)}set opt(t){this._opt=Object.assign({},{element:"",className:"",exclude:[],iframes:!1,iframesTimeout:5e3,separateWordSearch:!0,diacritics:!0,synonyms:{},accuracy:"partially",acrossElements:!1,caseSensitive:!1,ignoreJoiners:!1,ignoreGroups:0,ignorePunctuation:[],wildcards:"disabled",each:()=>{},noMatch:()=>{},filter:()=>!0,done:()=>{},debug:!1,log:window.console},t)}get opt(){return this._opt}get iterator(){return new Ke(this.ctx,this.opt.iframes,this.opt.exclude,this.opt.iframesTimeout)}log(t,e="debug"){const o=this.opt.log;this.opt.debug&&"object"==typeof o&&"function"==typeof o[e]&&o[e](`mark.js: ${t}`)}escapeStr(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}createRegExp(t){return"disabled"!==this.opt.wildcards&&(t=this.setupWildcardsRegExp(t)),t=this.escapeStr(t),Object.keys(this.opt.synonyms).length&&(t=this.createSynonymsRegExp(t)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.setupIgnoreJoinersRegExp(t)),this.opt.diacritics&&(t=this.createDiacriticsRegExp(t)),t=this.createMergedBlanksRegExp(t),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.createJoinersRegExp(t)),"disabled"!==this.opt.wildcards&&(t=this.createWildcardsRegExp(t)),this.createAccuracyRegExp(t)}createSynonymsRegExp(t){const e=this.opt.synonyms,o=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(let i in e)if(e.hasOwnProperty(i)){const n=e[i],a="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(i):this.escapeStr(i),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(n):this.escapeStr(n);""!==a&&""!==s&&(t=t.replace(new RegExp(`(${this.escapeStr(a)}|${this.escapeStr(s)})`,`gm${o}`),r+`(${this.processSynomyms(a)}|`+`${this.processSynomyms(s)})`+r))}return t}processSynomyms(t){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(t=this.setupIgnoreJoinersRegExp(t)),t}setupWildcardsRegExp(t){return(t=t.replace(/(?:\\)*\?/g,(t=>"\\"===t.charAt(0)?"?":""))).replace(/(?:\\)*\*/g,(t=>"\\"===t.charAt(0)?"*":""))}createWildcardsRegExp(t){let e="withSpaces"===this.opt.wildcards;return t.replace(/\u0001/g,e?"[\\S\\s]?":"\\S?").replace(/\u0002/g,e?"[\\S\\s]*?":"\\S*")}setupIgnoreJoinersRegExp(t){return t.replace(/[^(|)\\]/g,((t,e,o)=>{let r=o.charAt(e+1);return/[(|)\\]/.test(r)||""===r?t:t+"\0"}))}createJoinersRegExp(t){let e=[];const o=this.opt.ignorePunctuation;return Array.isArray(o)&&o.length&&e.push(this.escapeStr(o.join(""))),this.opt.ignoreJoiners&&e.push("\\u00ad\\u200b\\u200c\\u200d"),e.length?t.split(/\u0000+/).join(`[${e.join("")}]*`):t}createDiacriticsRegExp(t){const e=this.opt.caseSensitive?"":"i",o=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"];let r=[];return t.split("").forEach((i=>{o.every((o=>{if(-1!==o.indexOf(i)){if(r.indexOf(o)>-1)return!1;t=t.replace(new RegExp(`[${o}]`,`gm${e}`),`[${o}]`),r.push(o)}return!0}))})),t}createMergedBlanksRegExp(t){return t.replace(/[\s]+/gim,"[\\s]+")}createAccuracyRegExp(t){let e=this.opt.accuracy,o="string"==typeof e?e:e.value,r="string"==typeof e?[]:e.limiters,i="";switch(r.forEach((t=>{i+=`|${this.escapeStr(t)}`})),o){case"partially":default:return`()(${t})`;case"complementary":return i="\\s"+(i||this.escapeStr("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿")),`()([^${i}]*${t}[^${i}]*)`;case"exactly":return`(^|\\s${i})(${t})(?=$|\\s${i})`}}getSeparatedKeywords(t){let e=[];return t.forEach((t=>{this.opt.separateWordSearch?t.split(" ").forEach((t=>{t.trim()&&-1===e.indexOf(t)&&e.push(t)})):t.trim()&&-1===e.indexOf(t)&&e.push(t)})),{keywords:e.sort(((t,e)=>e.length-t.length)),length:e.length}}isNumeric(t){return Number(parseFloat(t))==t}checkRanges(t){if(!Array.isArray(t)||"[object Object]"!==Object.prototype.toString.call(t[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(t),[];const e=[];let o=0;return t.sort(((t,e)=>t.start-e.start)).forEach((t=>{let{start:r,end:i,valid:n}=this.callNoMatchOnInvalidRanges(t,o);n&&(t.start=r,t.length=i-r,e.push(t),o=i)})),e}callNoMatchOnInvalidRanges(t,e){let o,r,i=!1;return t&&void 0!==t.start?(o=parseInt(t.start,10),r=o+parseInt(t.length,10),this.isNumeric(t.start)&&this.isNumeric(t.length)&&r-e>0&&r-o>0?i=!0:(this.log(`Ignoring invalid or overlapping range: ${JSON.stringify(t)}`),this.opt.noMatch(t))):(this.log(`Ignoring invalid range: ${JSON.stringify(t)}`),this.opt.noMatch(t)),{start:o,end:r,valid:i}}checkWhitespaceRanges(t,e,o){let r,i=!0,n=o.length,a=e-n,s=parseInt(t.start,10)-a;return s=s>n?n:s,r=s+parseInt(t.length,10),r>n&&(r=n,this.log(`End range automatically set to the max value of ${n}`)),s<0||r-s<0||s>n||r>n?(i=!1,this.log(`Invalid range: ${JSON.stringify(t)}`),this.opt.noMatch(t)):""===o.substring(s,r).replace(/\s+/g,"")&&(i=!1,this.log("Skipping whitespace only range: "+JSON.stringify(t)),this.opt.noMatch(t)),{start:s,end:r,valid:i}}getTextNodes(t){let e="",o=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,(t=>{o.push({start:e.length,end:(e+=t.textContent).length,node:t})}),(t=>this.matchesExclude(t.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT),(()=>{t({value:e,nodes:o})}))}matchesExclude(t){return Ke.matches(t,this.opt.exclude.concat(["script","style","title","head","html"]))}wrapRangeInTextNode(t,e,o){const r=this.opt.element?this.opt.element:"mark",i=t.splitText(e),n=i.splitText(o-e);let a=document.createElement(r);return a.setAttribute("data-markjs","true"),this.opt.className&&a.setAttribute("class",this.opt.className),a.textContent=i.textContent,i.parentNode.replaceChild(a,i),n}wrapRangeInMappedTextNode(t,e,o,r,i){t.nodes.every(((n,a)=>{const s=t.nodes[a+1];if(void 0===s||s.start>e){if(!r(n.node))return!1;const s=e-n.start,c=(o>n.end?n.end:o)-n.start,l=t.value.substr(0,n.start),f=t.value.substr(c+n.start);if(n.node=this.wrapRangeInTextNode(n.node,s,c),t.value=l+f,t.nodes.forEach(((e,o)=>{o>=a&&(t.nodes[o].start>0&&o!==a&&(t.nodes[o].start-=c),t.nodes[o].end-=c)})),o-=c,i(n.node.previousSibling,n.start),!(o>n.end))return!1;e=n.end}return!0}))}wrapMatches(t,e,o,r,i){const n=0===e?0:e+1;this.getTextNodes((e=>{e.nodes.forEach((e=>{let i;for(e=e.node;null!==(i=t.exec(e.textContent))&&""!==i[n];){if(!o(i[n],e))continue;let a=i.index;if(0!==n)for(let t=1;t<n;t++)a+=i[t].length;e=this.wrapRangeInTextNode(e,a,a+i[n].length),r(e.previousSibling),t.lastIndex=0}})),i()}))}wrapMatchesAcrossElements(t,e,o,r,i){const n=0===e?0:e+1;this.getTextNodes((e=>{let a;for(;null!==(a=t.exec(e.value))&&""!==a[n];){let i=a.index;if(0!==n)for(let t=1;t<n;t++)i+=a[t].length;const s=i+a[n].length;this.wrapRangeInMappedTextNode(e,i,s,(t=>o(a[n],t)),((e,o)=>{t.lastIndex=o,r(e)}))}i()}))}wrapRangeFromIndex(t,e,o,r){this.getTextNodes((i=>{const n=i.value.length;t.forEach(((t,r)=>{let{start:a,end:s,valid:c}=this.checkWhitespaceRanges(t,n,i.value);c&&this.wrapRangeInMappedTextNode(i,a,s,(o=>e(o,t,i.value.substring(a,s),r)),(e=>{o(e,t)}))})),r()}))}unwrapMatches(t){const e=t.parentNode;let o=document.createDocumentFragment();for(;t.firstChild;)o.appendChild(t.removeChild(t.firstChild));e.replaceChild(o,t),this.ie?this.normalizeTextNode(e):e.normalize()}normalizeTextNode(t){if(t){if(3===t.nodeType)for(;t.nextSibling&&3===t.nextSibling.nodeType;)t.nodeValue+=t.nextSibling.nodeValue,t.parentNode.removeChild(t.nextSibling);else this.normalizeTextNode(t.firstChild);this.normalizeTextNode(t.nextSibling)}}markRegExp(t,e){this.opt=e,this.log(`Searching with expression "${t}"`);let o=0,r="wrapMatches";this.opt.acrossElements&&(r="wrapMatchesAcrossElements"),this[r](t,this.opt.ignoreGroups,((t,e)=>this.opt.filter(e,t,o)),(t=>{o++,this.opt.each(t)}),(()=>{0===o&&this.opt.noMatch(t),this.opt.done(o)}))}mark(t,e){this.opt=e;let o=0,r="wrapMatches";const{keywords:i,length:n}=this.getSeparatedKeywords("string"==typeof t?[t]:t),a=this.opt.caseSensitive?"":"i",s=t=>{let e=new RegExp(this.createRegExp(t),`gm${a}`),c=0;this.log(`Searching with expression "${e}"`),this[r](e,1,((e,r)=>this.opt.filter(r,t,o,c)),(t=>{c++,o++,this.opt.each(t)}),(()=>{0===c&&this.opt.noMatch(t),i[n-1]===t?this.opt.done(o):s(i[i.indexOf(t)+1])}))};this.opt.acrossElements&&(r="wrapMatchesAcrossElements"),0===n?this.opt.done(o):s(i[0])}markRanges(t,e){this.opt=e;let o=0,r=this.checkRanges(t);r&&r.length?(this.log("Starting to mark with the following ranges: "+JSON.stringify(r)),this.wrapRangeFromIndex(r,((t,e,o,r)=>this.opt.filter(t,e,o,r)),((t,e)=>{o++,this.opt.each(t,e)}),(()=>{this.opt.done(o)}))):this.opt.done(o)}unmark(t){this.opt=t;let e=this.opt.element?this.opt.element:"*";e+="[data-markjs]",this.opt.className&&(e+=`.${this.opt.className}`),this.log(`Removal selector "${e}"`),this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT,(t=>{this.unwrapMatches(t)}),(t=>{const o=Ke.matches(t,e),r=this.matchesExclude(t);return!o||r?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),this.opt.done)}}(t);return this.mark=(t,o)=>(e.mark(t,o),this),this.markRegExp=(t,o)=>(e.markRegExp(t,o),this),this.markRanges=(t,o)=>(e.markRanges(t,o),this),this.unmark=t=>(e.unmark(t),this),this},je=Oe.create("--ft-utils-highlight-html-background-color","","COLOR","#FFF26E"),$e=Ot`
80
80
  .highlight-html-match {
81
81
  background: ${je};
82
82
  }
@@ -199,13 +199,13 @@ let be=class extends $t{constructor(){super(...arguments),this.renderOptions={ho
199
199
  </i>
200
200
  `}get textContent(){var t,e;return null!==(e=null===(t=this.slottedContent)||void 0===t?void 0:t.assignedNodes().map((t=>t.textContent)).join("").trim())&&void 0!==e?e:""}update(t){super.update(t),["value","variant"].some((e=>t.has(e)))&&this.resolveIcon()}resolveIcon(){var t,e;let o=this.value||this.textContent;switch(this.variant){case li.file_format:this.resolvedIcon=null!==(t=oi[o.replace("-","_").toUpperCase()])&&void 0!==t?t:o;break;case li.material:this.resolvedIcon=this.value||ie;break;default:this.resolvedIcon=null!==(e=ei[o.replace("-","_").toUpperCase()])&&void 0!==e?e:o}}firstUpdated(t){super.firstUpdated(t),setTimeout((()=>this.resolveIcon()))}}hi.elementDefinitions={},hi.styles=ci,fi([U()],hi.prototype,"variant",void 0),fi([U()],hi.prototype,"value",void 0),fi([I()],hi.prototype,"resolvedIcon",void 0),fi([W("slot")],hi.prototype,"slottedContent",void 0),K("ft-icon")(hi);const ui=Ot`
201
201
  `,pi=Ot`
202
- `,di=Pr.get({name:"ft-app-info",reducers:{},initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],metadataConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0}});class yi{static build(t){const{baseUrl:e,apiIntegrationIdentifier:o}=di.getState(),r=null!=t?t:o;if(e&&r&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(e,r,!0)}static get(t){var e;return null!=t?yi.build(t):null!==(e=yi.API)&&void 0!==e?e:yi.API=yi.build()}static await(t){return new Promise((e=>{let o=yi.get(t);if(o)e(o);else{const r=di.subscribe((()=>{o=yi.get(t),o&&(r(),e(o))}))}}))}}var gi;const bi=Symbol("clearAfterUnitTest");class mi{constructor(t){this.messageContextProvider=t,this.defaultMessages={},this.cache=new r,this.listeners={},this.currentUiLocale="",this[gi]=()=>{this.defaultMessages={},this.cache=new r,this.listeners={}},this.currentUiLocale=di.getState().uiLocale,di.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=di.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const e=t.name.toLowerCase();this.cache.setFinal(e,t),this.notify(e)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,e){var o;if(t=t.toLowerCase(),Object.keys(e).length>0){const r={...null!==(o=this.defaultMessages[t])&&void 0!==o?o:{},...e};L(this.defaultMessages[t],r)||(this.defaultMessages[t]=r,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,e,...o){var r,i,n;t=t.toLowerCase(),this.fetchContext(t);const a=null!==(i=null===(r=this.cache.getNow(t))||void 0===r?void 0:r.messages)&&void 0!==i?i:{};return new Ze(null!==(n=this.defaultMessages[t])&&void 0!==n?n:{},a).resolve(e,...o)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,e){var o;return t=t.toLowerCase(),this.listeners[t]=null!==(o=this.listeners[t])&&void 0!==o?o:new Set,this.listeners[t].add(e),()=>{var o;return null===(o=this.listeners[t])||void 0===o?void 0:o.delete(e)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>{return(e=0,new Promise((t=>setTimeout(t,e)))).then((()=>t())).catch((()=>null));var e})))}}gi=bi,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new mi((async(t,e)=>(await yi.await()).getFluidTopicsMessageContext(t,e)))),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new mi((async(t,e)=>(await yi.await()).getCustomMessageContext(t,e))));const vi=window.FluidTopicsI18nService,Oi=window.FluidTopicsCustomI18nService;var xi=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class Ni extends Le{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>yi.get(),this.cache=new r,this.cleanSessionDebouncer=new i}render(){return oe`
202
+ `,di=Pr.get({name:"ft-app-info",reducers:{},initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],metadataConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0}});class yi{static build(t){const{baseUrl:e,apiIntegrationIdentifier:o}=di.getState(),r=null!=t?t:o;if(e&&r&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(e,r,!0)}static get(t){var e;return null!=t?yi.build(t):null!==(e=yi.API)&&void 0!==e?e:yi.API=yi.build()}static await(t){return new Promise((e=>{let o=yi.get(t);if(o)e(o);else{const r=di.subscribe((()=>{o=yi.get(t),o&&(r(),e(o))}))}}))}}class gi{constructor(t=!0,e){var o;this.overrideApi=e;let i=this.constructor;i.commonCache=null!==(o=i.commonCache)&&void 0!==o?o:new r,this.cache=t?i.commonCache:new r}get api(){var t;return null!==(t=this.overrideApi)&&void 0!==t?t:yi.get()}get awaitApi(){var t;return null!==(t=this.overrideApi)&&void 0!==t?t:yi.await()}clearCache(){this.cache.clearAll()}}var bi;const mi=Symbol("clearAfterUnitTest");class vi extends gi{constructor(t){super(),this.messageContextProvider=t,this.defaultMessages={},this.listeners={},this.currentUiLocale="",this[bi]=()=>{this.defaultMessages={},this.cache=new r,this.listeners={}},this.currentUiLocale=di.getState().uiLocale,di.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=di.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const e=t.name.toLowerCase();this.cache.setFinal(e,t),this.notify(e)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,e){var o;if(t=t.toLowerCase(),Object.keys(e).length>0){const r={...null!==(o=this.defaultMessages[t])&&void 0!==o?o:{},...e};L(this.defaultMessages[t],r)||(this.defaultMessages[t]=r,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,e,...o){var r,i,n;t=t.toLowerCase(),this.fetchContext(t);const a=null!==(i=null===(r=this.cache.getNow(t))||void 0===r?void 0:r.messages)&&void 0!==i?i:{};return new Ze(null!==(n=this.defaultMessages[t])&&void 0!==n?n:{},a).resolve(e,...o)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,e){var o;return t=t.toLowerCase(),this.listeners[t]=null!==(o=this.listeners[t])&&void 0!==o?o:new Set,this.listeners[t].add(e),()=>{var o;return null===(o=this.listeners[t])||void 0===o?void 0:o.delete(e)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>{return(e=0,new Promise((t=>setTimeout(t,e)))).then((()=>t())).catch((()=>null));var e})))}}bi=mi,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new class extends vi{constructor(){super((async(t,e)=>(await this.awaitApi).getFluidTopicsMessageContext(t,e)))}}),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new class extends vi{constructor(){super((async(t,e)=>(await this.awaitApi).getCustomMessageContext(t,e)))}});const Oi=window.FluidTopicsI18nService,xi=window.FluidTopicsCustomI18nService;var Ni=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class wi extends Le{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>yi.get(),this.cache=new r,this.cleanSessionDebouncer=new i}render(){return oe`
203
203
  <slot></slot>
204
- `}update(t){super.update(t),t.has("baseUrl")&&(di.actions.baseUrl(this.baseUrl),window.fluidTopicsBaseUrl=this.baseUrl),t.has("apiIntegrationIdentifier")&&di.actions.apiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&di.actions.uiLocale(this.uiLocale),t.has("metadataConfiguration")&&di.actions.metadataConfiguration(this.metadataConfiguration),t.has("noCustom")&&di.actions.noCustom(this.noCustom),t.has("editorMode")&&di.actions.editorMode(this.editorMode),t.has("noCustomComponent")&&di.actions.noCustomComponent(this.noCustomComponent),t.has("session")&&di.actions.session(this.session),t.has("availableUiLocales")&&di.actions.availableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>vi.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){!this.withManualResources&&this.apiProvider()&&(null==this.session&&this.updateSession(),null==this.availableUiLocales&&this.updateUiLocales(),null==this.metadataConfiguration&&this.updateMetadataConfiguration())}async updateSession(){this.session=await this.cache.get("session",(async()=>{const t=await this.apiProvider().getCurrentSession();return t.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),t.idleTimeoutInMillis),t}))}async updateUiLocales(){this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>this.apiProvider().getAvailableUiLocales()))}async updateMetadataConfiguration(){this.metadataConfiguration=await this.cache.get("metadataConfiguration",(()=>this.apiProvider().getMetadataConfiguration()))}}Ni.elementDefinitions={},Ni.styles=pi,xi([U()],Ni.prototype,"baseUrl",void 0),xi([U()],Ni.prototype,"apiIntegrationIdentifier",void 0),xi([U()],Ni.prototype,"uiLocale",void 0),xi([A(null)],Ni.prototype,"availableUiLocales",void 0),xi([A(null)],Ni.prototype,"metadataConfiguration",void 0),xi([U({type:Boolean})],Ni.prototype,"editorMode",void 0),xi([U({type:Boolean})],Ni.prototype,"noCustom",void 0),xi([U({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],Ni.prototype,"noCustomComponent",void 0),xi([U({type:Boolean})],Ni.prototype,"withManualResources",void 0),xi([A([])],Ni.prototype,"messageContexts",void 0),xi([A(void 0)],Ni.prototype,"session",void 0),xi([U({type:Object})],Ni.prototype,"apiProvider",void 0);class wi{async listMySearches(){var t;return(null===(t=di.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await yi.await()).listMySearches(di.getState().session.profile.userId):[]}}const Si=new r;class Ci{async listMyBookmarks(){return Si.get("bookmarks",(async()=>(await yi.await()).listMyBookmarks(di.getState().session.profile.userId)))}clearCache(){Si.clear("bookmarks")}}const Ei=Pr.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});new class{constructor(){this.currentSession=di.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new Ci,di.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:e}=di.getState();L(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==e?void 0:e.profile)||(this.currentSession=e,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){Ei.actions.savedSearches(void 0)}clearMyBookmarks(){Ei.actions.bookmarks(void 0)}async reloadMySearches(){const t=new wi,e=await t.listMySearches();Ei.actions.savedSearches(e)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const e=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;Ei.actions.bookmarks(e)}}},K("ft-app-context")(Ni);var Ri=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};const Ui=Symbol("i18nAttributes"),Ii=Symbol("i18nProperties"),ki=Symbol("i18nUnsubs");function Wi(t){var e;class o extends t{constructor(){super(...arguments),this.useCustomMessageContexts=!1,this[e]=new Map}get i18nService(){return this.useCustomMessageContexts?Oi:vi}i18n(t,e,...o){var r;if("string"==typeof t)return this.i18nService.resolveMessage(t,e,...o);const i=null!==(r=t.args)&&void 0!==r?r:t.argsProvider?t.argsProvider(this):[];return this.i18nService.resolveMessage(t.context,t.key,...i)}onI18nUpdate(t){var e,o;null===(e=this[Ui])||void 0===e||e.forEach(((e,o)=>{var r;const i=this.getI18nAttributeValue(o);(null===(r=null==i?void 0:i.context)||void 0===r?void 0:r.toLowerCase())===t.toLowerCase()&&this.updateI18nAttributeMessage(o,i,e)})),null===(o=this[Ii])||void 0===o||o.forEach(((e,o)=>{e.context.toLowerCase()===t.toLowerCase()&&(this[o]=this.i18n(e))})),setTimeout((()=>this.requestUpdate()),0)}updateI18nAttributeMessage(t,e,o){this[t]={...e,message:this.i18n({context:e.context,key:e.key,...o})}}update(t){var e,o;super.update(t),null===(e=this[Ui])||void 0===e||e.forEach(((e,o)=>{const r=this.getI18nAttributeValue(o);(null==r?void 0:r.context)&&r.key&&(t.has(o)||null!=e.argsProvider)&&(t.has(o)&&this.addI18nContext(r.context),this.updateI18nAttributeMessage(o,r,e))})),null===(o=this[Ii])||void 0===o||o.forEach(((t,e)=>{null!=t.argsProvider&&(this[e]=this.i18n(t))}))}getI18nAttributeValue(t){return this[t]}connectedCallback(){var t,e,o,r;super.connectedCallback(),new Set([...null!==(e=null===(t=this[Ii])||void 0===t?void 0:t.values())&&void 0!==e?e:[],...[...null!==(r=null===(o=this[Ui])||void 0===o?void 0:o.keys())&&void 0!==r?r:[]].map((t=>this.getI18nAttributeValue(t)))].map((t=>null==t?void 0:t.context))).forEach((t=>t&&this.addI18nMessages(t)))}addI18nMessages(t,e){t=t.toLowerCase(),this[ki].has(t)||this[ki].set(t,this.i18nService.subscribe(t,(()=>this.onI18nUpdate(t)))),this.i18nService.prepareContext(t,null!=e?e:{})}addI18nContext(t,e){this.addI18nMessages("string"==typeof t?t:t.name,e)}disconnectedCallback(){super.disconnectedCallback(),this[ki].forEach((t=>t())),this[ki].clear()}}return e=ki,Ri([U({type:Boolean})],o.prototype,"useCustomMessageContexts",void 0),o}class Li extends(Wi(Le)){}class Ki extends(Wi(qe)){}var Ai=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class ji extends Ki{constructor(){super(),this.editorMode=!1,this.addStore(di)}render(){return this.key&&this.context?oe`
204
+ `}update(t){super.update(t),t.has("baseUrl")&&(di.actions.baseUrl(this.baseUrl),window.fluidTopicsBaseUrl=this.baseUrl),t.has("apiIntegrationIdentifier")&&di.actions.apiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&di.actions.uiLocale(this.uiLocale),t.has("metadataConfiguration")&&di.actions.metadataConfiguration(this.metadataConfiguration),t.has("noCustom")&&di.actions.noCustom(this.noCustom),t.has("editorMode")&&di.actions.editorMode(this.editorMode),t.has("noCustomComponent")&&di.actions.noCustomComponent(this.noCustomComponent),t.has("session")&&di.actions.session(this.session),t.has("availableUiLocales")&&di.actions.availableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>Oi.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){!this.withManualResources&&this.apiProvider()&&(null==this.session&&this.updateSession(),null==this.availableUiLocales&&this.updateUiLocales(),null==this.metadataConfiguration&&this.updateMetadataConfiguration())}async updateSession(){this.session=await this.cache.get("session",(async()=>{const t=await this.apiProvider().getCurrentSession();return t.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),t.idleTimeoutInMillis),t}))}async updateUiLocales(){this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>this.apiProvider().getAvailableUiLocales()))}async updateMetadataConfiguration(){this.metadataConfiguration=await this.cache.get("metadataConfiguration",(()=>this.apiProvider().getMetadataConfiguration()))}}wi.elementDefinitions={},wi.styles=pi,Ni([U()],wi.prototype,"baseUrl",void 0),Ni([U()],wi.prototype,"apiIntegrationIdentifier",void 0),Ni([U()],wi.prototype,"uiLocale",void 0),Ni([A(null)],wi.prototype,"availableUiLocales",void 0),Ni([A(null)],wi.prototype,"metadataConfiguration",void 0),Ni([U({type:Boolean})],wi.prototype,"editorMode",void 0),Ni([U({type:Boolean})],wi.prototype,"noCustom",void 0),Ni([U({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],wi.prototype,"noCustomComponent",void 0),Ni([U({type:Boolean})],wi.prototype,"withManualResources",void 0),Ni([A([])],wi.prototype,"messageContexts",void 0),Ni([A(void 0)],wi.prototype,"session",void 0),Ni([U({type:Object})],wi.prototype,"apiProvider",void 0);class Si extends gi{async listMySearches(){let t=di.getState().session;return(null==t?void 0:t.sessionAuthenticated)?this.cache.get("my-searches",(async()=>(await this.awaitApi).listMySearches(t.profile.userId)),3e5):[]}}class Ci extends gi{async listMyBookmarks(){let t=di.getState().session;return(null==t?void 0:t.sessionAuthenticated)?this.cache.get("my-bookmarks",(async()=>(await this.awaitApi).listMyBookmarks(t.profile.userId)),3e5):[]}}const Ei=Pr.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});new class{constructor(){this.currentSession=di.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new Ci,this.savedSearchesService=new Si,di.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:e}=di.getState();L(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==e?void 0:e.profile)||(this.currentSession=e,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){this.savedSearchesService.clearCache(),Ei.actions.savedSearches(void 0)}clearMyBookmarks(){this.bookmarksService.clearCache(),Ei.actions.bookmarks(void 0)}async reloadMySearches(){this.savedSearchesService.clearCache();const t=await this.savedSearchesService.listMySearches();Ei.actions.savedSearches(t)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const e=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;Ei.actions.bookmarks(e)}}},K("ft-app-context")(wi);var Ri=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};const Ui=Symbol("i18nAttributes"),Ii=Symbol("i18nProperties"),ki=Symbol("i18nUnsubs");function Wi(t){var e;class o extends t{constructor(){super(...arguments),this.useCustomMessageContexts=!1,this[e]=new Map}get i18nService(){return this.useCustomMessageContexts?xi:Oi}i18n(t,e,...o){var r;if("string"==typeof t)return this.i18nService.resolveMessage(t,e,...o);const i=null!==(r=t.args)&&void 0!==r?r:t.argsProvider?t.argsProvider(this):[];return this.i18nService.resolveMessage(t.context,t.key,...i)}onI18nUpdate(t){var e,o;null===(e=this[Ui])||void 0===e||e.forEach(((e,o)=>{var r;const i=this.getI18nAttributeValue(o);(null===(r=null==i?void 0:i.context)||void 0===r?void 0:r.toLowerCase())===t.toLowerCase()&&this.updateI18nAttributeMessage(o,i,e)})),null===(o=this[Ii])||void 0===o||o.forEach(((e,o)=>{e.context.toLowerCase()===t.toLowerCase()&&(this[o]=this.i18n(e))})),setTimeout((()=>this.requestUpdate()),0)}updateI18nAttributeMessage(t,e,o){this[t]={...e,message:this.i18n({context:e.context,key:e.key,...o})}}update(t){var e,o;super.update(t),null===(e=this[Ui])||void 0===e||e.forEach(((e,o)=>{const r=this.getI18nAttributeValue(o);(null==r?void 0:r.context)&&r.key&&(t.has(o)||null!=e.argsProvider)&&(t.has(o)&&this.addI18nContext(r.context),this.updateI18nAttributeMessage(o,r,e))})),null===(o=this[Ii])||void 0===o||o.forEach(((t,e)=>{null!=t.argsProvider&&(this[e]=this.i18n(t))}))}getI18nAttributeValue(t){return this[t]}connectedCallback(){var t,e,o,r;super.connectedCallback(),new Set([...null!==(e=null===(t=this[Ii])||void 0===t?void 0:t.values())&&void 0!==e?e:[],...[...null!==(r=null===(o=this[Ui])||void 0===o?void 0:o.keys())&&void 0!==r?r:[]].map((t=>this.getI18nAttributeValue(t)))].map((t=>null==t?void 0:t.context))).forEach((t=>t&&this.addI18nMessages(t)))}addI18nMessages(t,e){t=t.toLowerCase(),this[ki].has(t)||this[ki].set(t,this.i18nService.subscribe(t,(()=>this.onI18nUpdate(t)))),this.i18nService.prepareContext(t,null!=e?e:{})}addI18nContext(t,e){this.addI18nMessages("string"==typeof t?t:t.name,e)}disconnectedCallback(){super.disconnectedCallback(),this[ki].forEach((t=>t())),this[ki].clear()}}return e=ki,Ri([U({type:Boolean})],o.prototype,"useCustomMessageContexts",void 0),o}class Li extends(Wi(Le)){}class Ki extends(Wi(qe)){}var Ai=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class ji extends Ki{constructor(){super(),this.editorMode=!1,this.addStore(di)}render(){return this.key&&this.context?oe`
205
205
  <span class="ft-i18n">
206
206
  ${this.i18n(this.context,this.key,...Array.isArray(this.args)?this.args:[])}
207
207
  </span>
208
- `:this.editorMode?"Select a context and a label key.":ie}update(t){var e;super.update(t),["context","key","defaultMessage"].some((e=>t.has(e)))&&this.context&&this.key&&this.addI18nMessages(this.context,{[this.key]:null!==(e=this.defaultMessage)&&void 0!==e?e:""})}}ji.elementDefinitions={},ji.styles=ui,Ai([Pe()],ji.prototype,"editorMode",void 0),Ai([U()],ji.prototype,"context",void 0),Ai([U()],ji.prototype,"key",void 0),Ai([A([])],ji.prototype,"args",void 0),Ai([U()],ji.prototype,"defaultMessage",void 0);class $i{static build(t){return new $i(t)}static fromGwt(t){return new $i(t)}constructor(t){this.name=t,this.properties=new Proxy({},{get:(t,e)=>{const o=e;return t=>({context:this.name,key:o,args:"function"==typeof t?void 0:t,argsProvider:"function"==typeof t?t:void 0})}}),this.messages=new Proxy({},{get:(t,e)=>(...t)=>vi.resolveMessage(this.name,e,...t)})}}K("ft-i18n")(ji);const Mi=$i.build("designedReaderTopicContent");var Zi=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class Pi extends Yr{constructor(){super(...arguments),this.contentPreprocessor=t=>t,this.onContentAvailable=()=>null}render(){var t,e;return this.map&&(this.error||this.content)?oe`
208
+ `:this.editorMode?"Select a context and a label key.":ie}update(t){var e;super.update(t),["context","key","defaultMessage"].some((e=>t.has(e)))&&this.context&&this.key&&this.addI18nMessages(this.context,{[this.key]:null!==(e=this.defaultMessage)&&void 0!==e?e:""})}}ji.elementDefinitions={},ji.styles=ui,Ai([Pe()],ji.prototype,"editorMode",void 0),Ai([U()],ji.prototype,"context",void 0),Ai([U()],ji.prototype,"key",void 0),Ai([A([])],ji.prototype,"args",void 0),Ai([U()],ji.prototype,"defaultMessage",void 0);class $i{static build(t){return new $i(t)}static fromGwt(t){return new $i(t)}constructor(t){this.name=t,this.properties=new Proxy({},{get:(t,e)=>{const o=e;return t=>({context:this.name,key:o,args:"function"==typeof t?void 0:t,argsProvider:"function"==typeof t?t:void 0})}}),this.messages=new Proxy({},{get:(t,e)=>(...t)=>Oi.resolveMessage(this.name,e,...t)})}}K("ft-i18n")(ji);const Mi=$i.build("designedReaderTopicContent");var Zi=function(t,e,o,r){for(var i,n=arguments.length,a=n<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,o):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(e,o,a):i(e,o))||a);return n>3&&a&&Object.defineProperty(e,o,a),a};class Pi extends Yr{constructor(){super(...arguments),this.contentPreprocessor=t=>t,this.onContentAvailable=()=>null}render(){var t,e;return this.map&&(this.error||this.content)?oe`
209
209
  <style>
210
210
  @import "${null===(t=this.map)||void 0===t?void 0:t.contentStyles.topicStylesheetUrl}";
211
211
  </style>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluid-topics/ft-reader-topic-content",
3
- "version": "1.1.37",
3
+ "version": "1.1.39",
4
4
  "description": "Content of a topic in integrated reader.",
5
5
  "keywords": [
6
6
  "Lit"
@@ -19,14 +19,14 @@
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.1.37",
23
- "@fluid-topics/ft-i18n": "1.1.37",
24
- "@fluid-topics/ft-reader-context": "1.1.37",
25
- "@fluid-topics/ft-reader-topic-context": "1.1.37",
26
- "@fluid-topics/ft-tooltip": "1.1.37",
27
- "@fluid-topics/ft-wc-utils": "1.1.37",
28
- "@fluid-topics/public-api": "1.0.59",
22
+ "@fluid-topics/ft-chip": "1.1.39",
23
+ "@fluid-topics/ft-i18n": "1.1.39",
24
+ "@fluid-topics/ft-reader-context": "1.1.39",
25
+ "@fluid-topics/ft-reader-topic-context": "1.1.39",
26
+ "@fluid-topics/ft-tooltip": "1.1.39",
27
+ "@fluid-topics/ft-wc-utils": "1.1.39",
28
+ "@fluid-topics/public-api": "1.0.60",
29
29
  "lit": "3.1.0"
30
30
  },
31
- "gitHead": "a2f1f35da13aa0735c3765b8149fc7564593a7ed"
31
+ "gitHead": "a9b7f979a6e94b58571a61de90a4b2655800690d"
32
32
  }