@fluid-topics/ft-search-context 2.0.30 → 2.0.31

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.
@@ -3,7 +3,7 @@
3
3
  `;var Fe=C(L()),Sr=C(re());var je;(function(t){t.CLUSTERED_SEARCH="CLUSTERED_SEARCH"})(je||(je={}));var P=C(L());var Rr=C(L()),Ms={setRequest:(t,e)=>{t.request=e.payload}},_r=t=>Rr.FtReduxStore.get({name:"ft-search-"+t,initialState:{request:{query:"",clusterSortCriterions:[],metadataFilters:[],facets:[],sort:[],sortId:void 0,paging:{page:1,perPage:20},keywordMatch:void 0},liveQuery:"",paging:void 0,facets:void 0,spellcheck:void 0,locales:[],results:void 0,announcements:void 0,suggestResults:void 0,configuration:void 0},reducers:Ms});var Ls=C(Mr(),1);var Dr;(function(t){t.black="black",t.green="green",t.blue="blue",t.purple="purple",t.red="red",t.orange="orange",t.yellow="yellow"})(Dr||(Dr={}));var Lr;(function(t){t.OFFICIAL="OFFICIAL",t.PERSONAL="PERSONAL",t.SHARED="SHARED"})(Lr||(Lr={}));var Pr;(function(t){t.STRUCTURED_DOCUMENT="STRUCTURED_DOCUMENT",t.UNSTRUCTURED_DOCUMENT="UNSTRUCTURED_DOCUMENT",t.SHARED_PERSONAL_BOOK="SHARED_PERSONAL_BOOK",t.PERSONAL_BOOK="PERSONAL_BOOK",t.ATTACHMENT="ATTACHMENT",t.RESOURCE="RESOURCE",t.HTML_PACKAGE="HTML_PACKAGE"})(Pr||(Pr={}));var se;(function(t){t.STRUCTURED_DOCUMENT="STRUCTURED_DOCUMENT",t.UNSTRUCTURED_DOCUMENT="UNSTRUCTURED_DOCUMENT",t.SHARED_PERSONAL_BOOK="SHARED_PERSONAL_BOOK",t.PERSONAL_BOOK="PERSONAL_BOOK",t.ATTACHMENT="ATTACHMENT",t.RESOURCE="RESOURCE",t.HTML_PACKAGE="HTML_PACKAGE"})(se||(se={}));var kr;(function(t){t.LAST_WEEK="LAST_WEEK",t.LAST_MONTH="LAST_MONTH",t.LAST_QUARTER="LAST_QUARTER",t.LAST_YEAR="LAST_YEAR"})(kr||(kr={}));var Nr;(function(t){t.VALUE="VALUE",t.DATE="DATE",t.RANGE="RANGE"})(Nr||(Nr={}));var Ur;(function(t){t.OFFICIAL="OFFICIAL",t.AI="AI"})(Ur||(Ur={}));var pe;(function(t){t.BOOKMARK__CREATE="BOOKMARK__CREATE",t.BOOKMARK__DELETE="BOOKMARK__DELETE",t.CASE_DEFLECTION__START="CASE_DEFLECTION__START",t.CASE_DEFLECTION__OPEN_TICKET="CASE_DEFLECTION__OPEN_TICKET",t.CASE_DEFLECTION__RATE="CASE_DEFLECTION__RATE",t.CHATBOT__RATE="CHATBOT__RATE",t.COLLECTION__CREATE="COLLECTION__CREATE",t.COLLECTION__UPDATE="COLLECTION__UPDATE",t.COLLECTION__DELETE="COLLECTION__DELETE",t.CUSTOM_EVENT__TRIGGER="CUSTOM_EVENT__TRIGGER",t.DOCUMENT__ON_DEMAND_TRANSLATE="DOCUMENT__ON_DEMAND_TRANSLATE",t.DOCUMENT__DOWNLOAD="DOCUMENT__DOWNLOAD",t.DOCUMENT__PRINT="DOCUMENT__PRINT",t.DOCUMENT__PROCESS="DOCUMENT__PROCESS",t.DOCUMENT__RATE="DOCUMENT__RATE",t.DOCUMENT__SEARCH="DOCUMENT__SEARCH",t.DOCUMENT__START_DISPLAY="DOCUMENT__START_DISPLAY",t.DOCUMENT__UNRATE="DOCUMENT__UNRATE",t.FEEDBACK__SEND="FEEDBACK__SEND",t.AI__COMPLETED_QUERY="AI__COMPLETED_QUERY",t.AI__RATE="AI__RATE",t.AI_CASE_DEFLECTION__START="AI_CASE_DEFLECTION__START",t.AI_CASE_DEFLECTION__OPEN_TICKET="AI_CASE_DEFLECTION__OPEN_TICKET",t.KHUB__PROCESS="KHUB__PROCESS",t.KHUB__SEARCH="KHUB__SEARCH",t.LABELS__DOWNLOAD="LABELS__DOWNLOAD",t.LINK__SHARE="LINK__SHARE",t.PAGE__DISPLAY="PAGE__DISPLAY",t.PERSONAL_BOOK__CREATE="PERSONAL_BOOK__CREATE",t.PERSONAL_BOOK__DELETE="PERSONAL_BOOK__DELETE",t.PERSONAL_BOOK__UPDATE="PERSONAL_BOOK__UPDATE",t.PERSONAL_TOPIC__CREATE="PERSONAL_TOPIC__CREATE",t.PERSONAL_TOPIC__UPDATE="PERSONAL_TOPIC__UPDATE",t.PERSONAL_TOPIC__DELETE="PERSONAL_TOPIC__DELETE",t.SAVED_SEARCH__CREATE="SAVED_SEARCH__CREATE",t.SAVED_SEARCH__DELETE="SAVED_SEARCH__DELETE",t.SAVED_SEARCH__UPDATE="SAVED_SEARCH__UPDATE",t.SEARCH_PAGE__SELECT="SEARCH_PAGE__SELECT",t.SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU="SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU",t.TOPIC__AI_TRANSLATE="TOPIC__AI_TRANSLATE",t.TOPIC__RATE="TOPIC__RATE",t.TOPIC__START_DISPLAY="TOPIC__START_DISPLAY",t.TOPIC__UNRATE="TOPIC__UNRATE",t.USER__LOGIN="USER__LOGIN",t.USER__LOGOUT="USER__LOGOUT",t.HEARTBEAT="HEARTBEAT"})(pe||(pe={}));var Fr;(function(t){t.STANDARD="STANDARD",t.STRUCTURAL="STRUCTURAL"})(Fr||(Fr={}));var jr;(function(t){t.THIRD_PARTY="THIRD_PARTY",t.OFF_THE_GRID="OFF_THE_GRID",t.CONTENT_PACKAGER="CONTENT_PACKAGER",t.PAGES="PAGES",t.DESIGNED_READER="DESIGNED_READER"})(jr||(jr={}));var Br;(function(t){t.HOMEPAGE="HOMEPAGE",t.CUSTOM="CUSTOM",t.HEADER="HEADER",t.READER="READER",t.TOPIC_TEMPLATE="TOPIC_TEMPLATE",t.SEARCH="SEARCH",t.SEARCH_RESULT="SEARCH_RESULT",t.SEARCH_ANNOUNCEMENT="SEARCH_ANNOUNCEMENT",t.LINK_PREVIEW="LINK_PREVIEW",t.UD_VIEWER="UD_VIEWER",t.ASSET_VIEWER="ASSET_VIEWER"})(Br||(Br={}));var qr;(function(t){t.CLASSIC="CLASSIC",t.CUSTOM="CUSTOM",t.DESIGNER="DESIGNER"})(qr||(qr={}));var Hr;(function(t){t.AND="AND",t.OR="OR",t.MONOVALUED="MONOVALUED"})(Hr||(Hr={}));var Vr;(function(t){t.NONE="NONE",t.ALPHABET="ALPHABET",t.VERSION="VERSION"})(Vr||(Vr={}));var Kr;(function(t){t.STARS="STARS",t.LIKE="LIKE",t.DICHOTOMOUS="DICHOTOMOUS",t.NO_RATING="NO_RATING"})(Kr||(Kr={}));var Gr;(function(t){t.LAST_WEEK="LAST_WEEK",t.LAST_MONTH="LAST_MONTH",t.LAST_QUARTER="LAST_QUARTER",t.LAST_YEAR="LAST_YEAR",t.CUSTOM="CUSTOM"})(Gr||(Gr={}));var tt;(function(t){t.OPTIONAL="OPTIONAL",t.MANDATORY="MANDATORY"})(tt||(tt={}));var zr;(function(t){t.ASC="ASC",t.DESC="DESC"})(zr||(zr={}));var $r;(function(t){t.ALPHA="ALPHA",t.NATURAL="NATURAL"})($r||($r={}));var Oe;(function(t){t.EVERYWHERE="EVERYWHERE",t.TITLE_ONLY="TITLE_ONLY",t.NONE="NONE"})(Oe||(Oe={}));var Wr;(function(t){t.ARTICLE="ARTICLE",t.BOOK="BOOK",t.SHARED_BOOK="SHARED_BOOK",t.HTML_PACKAGE="HTML_PACKAGE"})(Wr||(Wr={}));var Qr;(function(t){t.FLUIDTOPICS="FLUIDTOPICS",t.EXTERNAL="EXTERNAL"})(Qr||(Qr={}));var Xr;(function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC",t.PERSONAL_BOOK="PERSONAL_BOOK",t.SHARED_BOOK="SHARED_BOOK",t.HTML_PACKAGE="HTML_PACKAGE"})(Xr||(Xr={}));var Yr;(function(t){t.LAST_WEEK="LAST_WEEK",t.LAST_MONTH="LAST_MONTH",t.LAST_QUARTER="LAST_QUARTER",t.LAST_YEAR="LAST_YEAR"})(Yr||(Yr={}));var Y;(function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC",t.HTML_PACKAGE="HTML_PACKAGE",t.HTML_PACKAGE_PAGE="HTML_PACKAGE_PAGE"})(Y||(Y={}));var xe;(function(t){t.DEFAULT="DEFAULT",t.DOCUMENTS="DOCUMENTS",t.ALL_TOPICS="ALL_TOPICS",t.TOPICS_AND_UNSTRUCTURED_DOCUMENTS="TOPICS_AND_UNSTRUCTURED_DOCUMENTS"})(xe||(xe={}));var Jr;(function(t){t.PLAIN_TEXT="PLAIN_TEXT",t.LOCALIZED_OFFICIAL="LOCALIZED_OFFICIAL",t.LOCALIZED_CUSTOM="LOCALIZED_CUSTOM"})(Jr||(Jr={}));var D;(function(t){t.PERSONAL_BOOK_USER="PERSONAL_BOOK_USER",t.PERSONAL_BOOK_SHARE_USER="PERSONAL_BOOK_SHARE_USER",t.HTML_EXPORT_USER="HTML_EXPORT_USER",t.PDF_EXPORT_USER="PDF_EXPORT_USER",t.SAVED_SEARCH_USER="SAVED_SEARCH_USER",t.COLLECTION_USER="COLLECTION_USER",t.OFFLINE_USER="OFFLINE_USER",t.ANALYTICS_USER="ANALYTICS_USER",t.BETA_USER="BETA_USER",t.DEBUG_USER="DEBUG_USER",t.PRINT_USER="PRINT_USER",t.RATING_USER="RATING_USER",t.FEEDBACK_USER="FEEDBACK_USER",t.GENERATIVE_AI_USER="GENERATIVE_AI_USER",t.GENERATIVE_AI_EXPORT_USER="GENERATIVE_AI_EXPORT_USER",t.CONTENT_PUBLISHER="CONTENT_PUBLISHER",t.BEHAVIOR_DATA_USER="BEHAVIOR_DATA_USER",t.ANNOUNCEMENT_ADMIN="ANNOUNCEMENT_ADMIN",t.KHUB_ADMIN="KHUB_ADMIN",t.USERS_ADMIN="USERS_ADMIN",t.PORTAL_ADMIN="PORTAL_ADMIN",t.ADMIN="ADMIN"})(D||(D={}));var z;(function(t){t.SEARCHES="SEARCHES",t.BOOKMARKS="BOOKMARKS",t.BOOKS="BOOKS",t.COLLECTIONS="COLLECTIONS"})(z||(z={}));var Zr;(function(t){t.UNAUTHENTICATED="UNAUTHENTICATED",t.USER_INCOMPLETE="USER_INCOMPLETE",t.MFA_REQUIRED="MFA_REQUIRED",t.AUTHENTICATED="AUTHENTICATED"})(Zr||(Zr={}));var en;(function(t){t.VALID="VALID",t.INVALID="INVALID"})(en||(en={}));var tn;(function(t){t.INACCURATE="INACCURATE",t.INCOMPLETE="INCOMPLETE",t.OFF_TOPIC="OFF_TOPIC",t.IRRELEVANT_SOURCES="IRRELEVANT_SOURCES",t.SUMMARY="SUMMARY",t.SEMANTIC_SEARCH="SEMANTIC_SEARCH",t.CHATBOT_INSTRUCTIONS="CHATBOT_INSTRUCTIONS",t.OTHER="OTHER"})(tn||(tn={}));var rn;(function(t){t.INACCURATE="INACCURATE",t.INCOMPLETE="INCOMPLETE",t.OFF_TOPIC="OFF_TOPIC",t.IRRELEVANT_SOURCES="IRRELEVANT_SOURCES",t.SLOW="SLOW",t.OTHER="OTHER"})(rn||(rn={}));var nn;(function(t){t.JSON="JSON",t.TEXT="TEXT"})(nn||(nn={}));var sn;(function(t){t.JSON="JSON",t.TEXT="TEXT"})(sn||(sn={}));var an;(function(t){t.USER="USER",t.ASSISTANT="ASSISTANT"})(an||(an={}));var on;(function(t){t.TEXT="TEXT",t.HTML="HTML"})(on||(on={}));var un;(function(t){t.HTML="HTML",t.MARKDOWN="MARKDOWN"})(un||(un={}));var cn;(function(t){t.MAP="MAP",t.UNSTRUCTURED_DOCUMENT="UNSTRUCTURED_DOCUMENT"})(cn||(cn={}));var Ds={[D.PERSONAL_BOOK_SHARE_USER]:[D.PERSONAL_BOOK_USER],[D.HTML_EXPORT_USER]:[D.PERSONAL_BOOK_USER],[D.PDF_EXPORT_USER]:[D.PERSONAL_BOOK_USER],[D.KHUB_ADMIN]:[D.CONTENT_PUBLISHER],[D.ADMIN]:[D.KHUB_ADMIN,D.USERS_ADMIN,D.PORTAL_ADMIN,D.BEHAVIOR_DATA_USER],[D.GENERATIVE_AI_EXPORT_USER]:[D.GENERATIVE_AI_USER]};function ln(t,e){return t===e||(Ds[t]??[]).some(r=>ln(r,e))}function dn(t,e){return t==null?!1:(Array.isArray(t)?t:Array.isArray(t.roles)?t.roles:Array.isArray(t.profile?.roles)?t.profile.roles:[]).some(n=>ln(n,e))}var ar=C(re());var fn=C(re(),1);function hn(t,e){return(0,fn.property)({type:Object,converter:{fromAttribute:r=>{if(r==null)return Be(t);try{return JSON.parse(r)}catch{return Be(t)}},toAttribute:r=>JSON.stringify(r)},hasChanged:qe,...e??{}})}function Ps(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;let r,n,s;if(Array.isArray(t)){if(r=t.length,r!=e.length)return!1;for(n=r;n--!==0;)if(!rt(t[n],e[n]))return!1;return!0}if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(n of t.entries())if(!e.has(n[0]))return!1;for(n of t.entries())if(!rt(n[1],e.get(n[0])))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(n of t.entries())if(!e.has(n[0]))return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();let i=a=>Object.keys(a).filter(o=>a[o]!=null);if(s=i(t),r=s.length,r!==i(e).length)return!1;for(n=r;n--!==0;)if(!Object.prototype.hasOwnProperty.call(e,s[n]))return!1;for(n=r;n--!==0;){let a=s[n];if(!rt(t[a],e[a]))return!1}return!0}return t!==t&&e!==e||t==null&&e==null}function rt(t,e){try{return Ps(t,e)}catch{return!1}}function qe(t,e){return!rt(t,e)}function Be(t){return typeof window.structuredClone=="function"?structuredClone(t):t!=null?JSON.parse(JSON.stringify(t)):t}function nt(t,e){let r=n=>n[t]===!0;return n=>{if(r(n))return n;let s=e(n);return s[t]=!0,s}}var pn=C(re(),1);var Nt=t=>{let e=t??{};return(r,n)=>{var s;let i={hasChanged:qe,attribute:!1,...e};(0,pn.property)(i)(r,n);let a=r.constructor;a.reduxProperties=new Map(a.reduxProperties),a.reduxProperties.set(n,{selector:(s=e.selector)!==null&&s!==void 0?s:(o=>o[n]),store:e.store})}};var st=class{constructor(){this.queue=[]}add(e,r=!1){r&&this.clear(e.type),this.queue.push(e)}consume(e){let r=this.queue.find(n=>n.type===e);return r&&(this.queue=this.queue.filter(n=>n!==r)),r}clear(e){typeof e=="string"?this.queue=this.queue.filter(r=>r.type!==e):this.queue=this.queue.filter(r=>!e.test(r.type))}};var me=C(re(),1);var it=class{constructor(e=0){this.timeout=e,this.callbacks=[]}run(e,r){return this.callbacks=[e],this.debounce(r)}queue(e,r){return this.callbacks.push(e),this.debounce(r)}cancel(){this.clearTimeout(),this.resolvePromise&&this.resolvePromise(!1),this.clearPromise()}debounce(e){return this.promise==null&&(this.promise=new Promise((r,n)=>{this.resolvePromise=r,this.rejectPromise=n})),this.clearTimeout(),this._debounce=window.setTimeout(()=>this.runCallbacks(),e??this.timeout),this.promise}async runCallbacks(){var e,r;let n=[...this.callbacks];this.callbacks=[];let s=(e=this.rejectPromise)!==null&&e!==void 0?e:(()=>null),i=(r=this.resolvePromise)!==null&&r!==void 0?r:(()=>null);this.clearPromise();for(let a of n)try{await a()}catch(o){s(o);return}i(!0)}clearTimeout(){this._debounce!=null&&window.clearTimeout(this._debounce)}clearPromise(){this.promise=void 0,this.resolvePromise=void 0,this.rejectPromise=void 0}};var yn=C(Ce(),1);var at=globalThis,ks=at.ShadowRoot&&(at.ShadyCSS===void 0||at.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;var mn=(t,e)=>{if(ks)t.adoptedStyleSheets=e.map((r=>r instanceof CSSStyleSheet?r:r.styleSheet));else for(let r of e){let n=document.createElement("style"),s=at.litNonce;s!==void 0&&n.setAttribute("nonce",s),n.textContent=r.cssText,t.appendChild(n)}};var ot=class extends yn.LitElement{get scopedRegistryConstructor(){return this.constructor}createRenderRoot(){let e=this.scopedRegistryConstructor;e.elementDefinitions&&!e.registry&&(e.registry=new CustomElementRegistry,e.defineScopedElements(e.elementDefinitions));let r={...e.shadowRootOptions,customElements:e.registry},n=this.renderOptions.creationScope=this.attachShadow(r);return mn(n,e.elementStyles),n}static canDefineScopedElement(e){return!!this.registry&&!this.registry.get(e)}static defineScopedElements(e){Object.entries(e).forEach(([r,n])=>this.defineScopedElement(r,n))}static defineScopedElement(e,r){this.canDefineScopedElement(e)&&this.registry.define(e,r)}canDefineScopedElement(e){return this.scopedRegistryConstructor.canDefineScopedElement(e)}defineScopedElements(e){this.scopedRegistryConstructor.defineScopedElements(e)}defineScopedElement(e,r){this.scopedRegistryConstructor.defineScopedElement(e,r)}};function vn(t,e,...r){var n;let s=t.querySelector(e);for(let i of r)s=(n=s?.shadowRoot)===null||n===void 0?void 0:n.querySelector(i);return s}var _e=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},An,gn=Symbol("constructorPrototype"),Sn=Symbol("constructorName"),En=Symbol("exportpartsDebouncer"),bn=Symbol("dynamicDependenciesLoaded"),Re=class t extends CustomEvent{constructor(){super(t.eventName,{bubbles:!0})}};Re.eventName="exportparts-updated";var J=class extends ot{constructor(){super(),this.useAdoptedStyleSheets=!0,this.adoptedCustomStyleSheet=new CSSStyleSheet,this[An]=new it(5),this.scheduleExportpartsUpdate=()=>{var e,r,n;(!((e=this.exportpartsPrefix)===null||e===void 0)&&e.trim()||(n=(r=this.exportpartsPrefixes)===null||r===void 0?void 0:r.length)!==null&&n!==void 0&&n)&&this[En].run(()=>{var s,i;!((s=this.exportpartsPrefix)===null||s===void 0)&&s.trim()?this.setExportpartsAttribute([this.exportpartsPrefix]):this.exportpartsPrefixes!=null&&((i=this.exportpartsPrefixes)===null||i===void 0?void 0:i.length)>0&&this.setExportpartsAttribute(this.exportpartsPrefixes)})},this[Sn]=this.constructor.name,this[gn]=this.constructor.prototype}adoptedCallback(){this.constructor.name!==this[Sn]&&Object.setPrototypeOf(this,this[gn])}connectedCallback(){var e;super.connectedCallback();try{this.shadowRoot&&!this.shadowRoot.adoptedStyleSheets.includes(this.adoptedCustomStyleSheet)&&(this.shadowRoot.adoptedStyleSheets=[...this.shadowRoot.adoptedStyleSheets,this.adoptedCustomStyleSheet]),this.useAdoptedStyleSheets=!0}catch(n){this.useAdoptedStyleSheets=!1,console.error("Cannot use adopted stylesheets",n)}let r=this.constructor;r[bn]||(r[bn]=!0,this.importDynamicDependencies()),(e=this.shadowRoot)===null||e===void 0||e.addEventListener(Re.eventName,this.scheduleExportpartsUpdate)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.shadowRoot)===null||e===void 0||e.removeEventListener(Re.eventName,this.scheduleExportpartsUpdate)}importDynamicDependencies(){}updated(e){super.updated(e),this.updateComplete.then(()=>{this.contentAvailableCallback(e),this.focusElementToFocus(e),this.applyCustomStylesheet(e),this.scheduleExportpartsUpdate(),e.has("exportparts")&&this.dispatchEvent(new Re)})}contentAvailableCallback(e){}focusElementToFocus(e){if(e.has("elementToFocus")&&this.elementToFocus!=null){let{element:r,selector:n,shadowPath:s}=this.elementToFocus;if(n!=null){let i=[...s??[],n];r=vn(this.shadowRoot,...i)}r?.focus(),window.FluidTopicsA11yHints.isKeyboardNavigation||r?.blur(),this.elementToFocus=void 0}}applyCustomStylesheet(e){var r,n,s;if(((n=(r=this.shadowRoot)===null||r===void 0?void 0:r.querySelectorAll(".ft-lit-element--custom-stylesheet"))!==null&&n!==void 0?n:[]).forEach(i=>i.remove()),this.useAdoptedStyleSheets){if(e.has("customStylesheet"))try{this.adoptedCustomStyleSheet.replaceSync((s=this.customStylesheet)!==null&&s!==void 0?s:"")}catch(i){console.error(i,this.customStylesheet),this.useAdoptedStyleSheets=!1}}else if(this.customStylesheet){let i=document.createElement("style");i.classList.add("ft-lit-element--custom-stylesheet"),i.innerHTML=this.customStylesheet,this.shadowRoot.append(i)}}setExportpartsAttribute(e){var r,n,s,i,a,o;let c=p=>p!=null&&p.trim().length>0,l=e.filter(c).map(p=>p.trim());if(l.length===0){this.exportparts=void 0;return}let d=new Set;for(let p of(n=(r=this.shadowRoot)===null||r===void 0?void 0:r.querySelectorAll("[part],[exportparts]"))!==null&&n!==void 0?n:[]){let v=(i=(s=p.getAttribute("part"))===null||s===void 0?void 0:s.split(" "))!==null&&i!==void 0?i:[],m=(o=(a=p.getAttribute("exportparts"))===null||a===void 0?void 0:a.split(",").map(b=>b.split(":")[1]))!==null&&o!==void 0?o:[],y=[...v,...m].filter(c).map(b=>b.trim());for(let b of y)d.add(b)}if(d.size===0){this.exportparts=void 0;return}let h=[...d.values()].flatMap(p=>l.map(v=>`${p}:${v}--${p}`));this.exportparts=[...this.part,...h].join(", ")}};An=En;_e([(0,me.property)()],J.prototype,"exportpartsPrefix",void 0);_e([hn([])],J.prototype,"exportpartsPrefixes",void 0);_e([(0,me.property)({reflect:!0})],J.prototype,"exportparts",void 0);_e([(0,me.property)()],J.prototype,"customStylesheet",void 0);_e([(0,me.property)()],J.prototype,"elementToFocus",void 0);_e([(0,me.state)()],J.prototype,"useAdoptedStyleSheets",void 0);function ut(t){var e;return(e=t?.isFtReduxStore)!==null&&e!==void 0?e:!1}var He=Symbol("internalReduxEventsUnsubscribers"),ie=Symbol("internalStoresUnsubscribers"),ye=Symbol("internalStores"),Ns=nt(Symbol("withRedux"),function(t){var e,r,n;class s extends t{constructor(){super(...arguments),this[e]=new Map,this[r]=new Map,this[n]=new Map}get reduxConstructor(){return this.constructor}willUpdate(a){super.willUpdate(a),[...this.reduxConstructor.reduxReactiveProperties].some(o=>a.has(o))&&this.updateFromStores()}getUnnamedStore(){if(this[ye].size>1)throw new Error("Cannot resolve unnamed store when multiple stores are configured.");return[...this[ye].values()][0]}getStore(a){return a==null?this.getUnnamedStore():this[ye].get(a)}addStore(a,o){var c;o=(c=o??a.name)!==null&&c!==void 0?c:"default-store",this.unsubscribeFromStore(o),this[ye].set(o,a),this.subscribeToStore(o,a),this.updateFromStores()}removeStore(a){let o=typeof a=="string"?a:a.name;this.unsubscribeFromStore(o),this[ye].delete(o)}setupStores(){this.unsubscribeFromStores(),this[ye].forEach((a,o)=>this.subscribeToStore(o,a)),this.updateFromStores()}updateFromStores(){this.reduxConstructor.reduxProperties.forEach((a,o)=>{let c=this.constructor.getPropertyOptions(o);if(!c?.attribute||!this.hasAttribute(typeof c?.attribute=="string"?c.attribute:o)){let l=this.getStore(a.store);l&&(a.store?this[ie].has(a.store):this[ie].size>0)&&(this[o]=a.selector(l.getState(),this))}})}subscribeToStore(a,o){var c;this[ie].set(a,o.subscribe(()=>this.updateFromStores())),this[He].set(a,[]),ut(o)&&o.eventBus&&((c=this.reduxConstructor.reduxEventListeners)===null||c===void 0||c.forEach((l,d)=>{if(typeof this[d]=="function"&&(!l.store||o.name===l.store)){let h=p=>this[d](p);o.addEventListener(l.eventName,h),this[He].get(a).push(()=>o.removeEventListener(l.eventName,h))}})),this.onStoreAvailable(a)}unsubscribeFromStores(){this[ie].forEach((a,o)=>this.unsubscribeFromStore(o))}unsubscribeFromStore(a){var o;this[ie].has(a)&&this[ie].get(a)(),this[ie].delete(a),(o=this[He].get(a))===null||o===void 0||o.forEach(c=>c()),this[He].delete(a)}onStoreAvailable(a){}connectedCallback(){super.connectedCallback(),this.setupStores()}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeFromStores()}}return e=ie,r=ye,n=He,s.reduxProperties=new Map,s.reduxReactiveProperties=new Set,s.reduxEventListeners=new Map,s}),Tn=class extends Ns(J){};function $(t){for(var e=arguments.length,r=Array(e>1?e-1:0),n=1;n<e;n++)r[n-1]=arguments[n];if(0)var s,i;throw Error("[Immer] minified error nr: "+t+(r.length?" "+r.map((function(a){return"'"+a+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function te(t){return!!t&&!!t[_]}function X(t){var e;return!!t&&((function(r){if(!r||typeof r!="object")return!1;var n=Object.getPrototypeOf(r);if(n===null)return!0;var s=Object.hasOwnProperty.call(n,"constructor")&&n.constructor;return s===Object||typeof s=="function"&&Function.toString.call(s)===Ks})(t)||Array.isArray(t)||!!t[In]||!!(!((e=t.constructor)===null||e===void 0)&&e[In])||Gt(t)||zt(t))}function ve(t,e,r){r===void 0&&(r=!1),De(t)===0?(r?Object.keys:Me)(t).forEach((function(n){r&&typeof n=="symbol"||e(n,t[n],t)})):t.forEach((function(n,s){return e(s,n,t)}))}function De(t){var e=t[_];return e?e.i>3?e.i-4:e.i:Array.isArray(t)?1:Gt(t)?2:zt(t)?3:0}function Ie(t,e){return De(t)===2?t.has(e):Object.prototype.hasOwnProperty.call(t,e)}function Us(t,e){return De(t)===2?t.get(e):t[e]}function Mn(t,e,r){var n=De(t);n===2?t.set(e,r):n===3?t.add(r):t[e]=r}function Dn(t,e){return t===e?t!==0||1/t==1/e:t!=t&&e!=e}function Gt(t){return Hs&&t instanceof Map}function zt(t){return Vs&&t instanceof Set}function ae(t){return t.o||t.t}function $t(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var e=kn(t);delete e[_];for(var r=Me(e),n=0;n<r.length;n++){var s=r[n],i=e[s];i.writable===!1&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(e[s]={configurable:!0,writable:!0,enumerable:i.enumerable,value:t[s]})}return Object.create(Object.getPrototypeOf(t),e)}function Wt(t,e){return e===void 0&&(e=!1),Qt(t)||te(t)||!X(t)||(De(t)>1&&(t.set=t.add=t.clear=t.delete=Fs),Object.freeze(t),e&&ve(t,(function(r,n){return Wt(n,!0)}),!0)),t}function Fs(){$(2)}function Qt(t){return t==null||typeof t!="object"||Object.isFrozen(t)}function Z(t){var e=Kt[t];return e||$(18,t),e}function js(t,e){Kt[t]||(Kt[t]=e)}function qt(){return Ke}function Ut(t,e){e&&(Z("Patches"),t.u=[],t.s=[],t.v=e)}function ct(t){Ht(t),t.p.forEach(Bs),t.p=null}function Ht(t){t===Ke&&(Ke=t.l)}function Cn(t){return Ke={p:[],l:Ke,h:t,m:!0,_:0}}function Bs(t){var e=t[_];e.i===0||e.i===1?e.j():e.g=!0}function Ft(t,e){e._=e.p.length;var r=e.p[0],n=t!==void 0&&t!==r;return e.h.O||Z("ES5").S(e,t,n),n?(r[_].P&&(ct(e),$(4)),X(t)&&(t=lt(e,t),e.l||dt(e,t)),e.u&&Z("Patches").M(r[_].t,t,e.u,e.s)):t=lt(e,r,[]),ct(e),e.u&&e.v(e.u,e.s),t!==Pn?t:void 0}function lt(t,e,r){if(Qt(e))return e;var n=e[_];if(!n)return ve(e,(function(o,c){return wn(t,n,e,o,c,r)}),!0),e;if(n.A!==t)return e;if(!n.P)return dt(t,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var s=n.i===4||n.i===5?n.o=$t(n.k):n.o,i=s,a=!1;n.i===3&&(i=new Set(s),s.clear(),a=!0),ve(i,(function(o,c){return wn(t,n,s,o,c,r,a)})),dt(t,s,!1),r&&t.u&&Z("Patches").N(n,r,t.u,t.s)}return n.o}function wn(t,e,r,n,s,i,a){if(te(s)){var o=lt(t,s,i&&e&&e.i!==3&&!Ie(e.R,n)?i.concat(n):void 0);if(Mn(r,n,o),!te(o))return;t.m=!1}else a&&r.add(s);if(X(s)&&!Qt(s)){if(!t.h.D&&t._<1)return;lt(t,s),e&&e.A.l||dt(t,s)}}function dt(t,e,r){r===void 0&&(r=!1),!t.l&&t.h.D&&t.m&&Wt(e,r)}function jt(t,e){var r=t[_];return(r?ae(r):t)[e]}function On(t,e){if(e in t)for(var r=Object.getPrototypeOf(t);r;){var n=Object.getOwnPropertyDescriptor(r,e);if(n)return n;r=Object.getPrototypeOf(r)}}function oe(t){t.P||(t.P=!0,t.l&&oe(t.l))}function Bt(t){t.o||(t.o=$t(t.t))}function Vt(t,e,r){var n=Gt(e)?Z("MapSet").F(e,r):zt(e)?Z("MapSet").T(e,r):t.O?(function(s,i){var a=Array.isArray(s),o={i:a?1:0,A:i?i.A:qt(),P:!1,I:!1,R:{},l:i,t:s,k:null,o:null,j:null,C:!1},c=o,l=Ge;a&&(c=[o],l=Ve);var d=Proxy.revocable(c,l),h=d.revoke,p=d.proxy;return o.k=p,o.j=h,p})(e,r):Z("ES5").J(e,r);return(r?r.A:qt()).p.push(n),n}function qs(t){return te(t)||$(22,t),(function e(r){if(!X(r))return r;var n,s=r[_],i=De(r);if(s){if(!s.P&&(s.i<4||!Z("ES5").K(s)))return s.t;s.I=!0,n=xn(r,i),s.I=!1}else n=xn(r,i);return ve(n,(function(a,o){s&&Us(s.t,a)===o||Mn(n,a,e(o))})),i===3?new Set(n):n})(t)}function xn(t,e){switch(e){case 2:return new Map(t);case 3:return Array.from(t)}return $t(t)}function Ln(){function t(a,o){var c=i[a];return c?c.enumerable=o:i[a]=c={configurable:!0,enumerable:o,get:function(){var l=this[_];return Ge.get(l,a)},set:function(l){var d=this[_];Ge.set(d,a,l)}},c}function e(a){for(var o=a.length-1;o>=0;o--){var c=a[o][_];if(!c.P)switch(c.i){case 5:n(c)&&oe(c);break;case 4:r(c)&&oe(c)}}}function r(a){for(var o=a.t,c=a.k,l=Me(c),d=l.length-1;d>=0;d--){var h=l[d];if(h!==_){var p=o[h];if(p===void 0&&!Ie(o,h))return!0;var v=c[h],m=v&&v[_];if(m?m.t!==p:!Dn(v,p))return!0}}var y=!!o[_];return l.length!==Me(o).length+(y?0:1)}function n(a){var o=a.k;if(o.length!==a.t.length)return!0;var c=Object.getOwnPropertyDescriptor(o,o.length-1);if(c&&!c.get)return!0;for(var l=0;l<o.length;l++)if(!o.hasOwnProperty(l))return!0;return!1}function s(a){a.g&&$(3,JSON.stringify(ae(a)))}var i={};js("ES5",{J:function(a,o){var c=Array.isArray(a),l=(function(h,p){if(h){for(var v=Array(p.length),m=0;m<p.length;m++)Object.defineProperty(v,""+m,t(m,!0));return v}var y=kn(p);delete y[_];for(var b=Me(y),A=0;A<b.length;A++){var E=b[A];y[E]=t(E,h||!!y[E].enumerable)}return Object.create(Object.getPrototypeOf(p),y)})(c,a),d={i:c?5:4,A:o?o.A:qt(),P:!1,I:!1,R:{},l:o,t:a,k:l,o:null,g:!1,C:!1};return Object.defineProperty(l,_,{value:d,writable:!0}),l},S:function(a,o,c){c?te(o)&&o[_].A===a&&e(a.p):(a.u&&(function l(d){if(d&&typeof d=="object"){var h=d[_];if(h){var p=h.t,v=h.k,m=h.R,y=h.i;if(y===4)ve(v,(function(w){w!==_&&(p[w]!==void 0||Ie(p,w)?m[w]||l(v[w]):(m[w]=!0,oe(h)))})),ve(p,(function(w){v[w]!==void 0||Ie(v,w)||(m[w]=!1,oe(h))}));else if(y===5){if(n(h)&&(oe(h),m.length=!0),v.length<p.length)for(var b=v.length;b<p.length;b++)m[b]=!1;else for(var A=p.length;A<v.length;A++)m[A]=!0;for(var E=Math.min(v.length,p.length),x=0;x<E;x++)v.hasOwnProperty(x)||(m[x]=!0),m[x]===void 0&&l(v[x])}}}})(a.p[0]),e(a.p))},K:function(a){return a.i===4?r(a):n(a)}})}var Rn,Ke,Xt=typeof Symbol<"u"&&typeof Symbol("x")=="symbol",Hs=typeof Map<"u",Vs=typeof Set<"u",_n=typeof Proxy<"u"&&Proxy.revocable!==void 0&&typeof Reflect<"u",Pn=Xt?Symbol.for("immer-nothing"):((Rn={})["immer-nothing"]=!0,Rn),In=Xt?Symbol.for("immer-draftable"):"__$immer_draftable",_=Xt?Symbol.for("immer-state"):"__$immer_state";var Ks=""+Object.prototype.constructor,Me=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,kn=Object.getOwnPropertyDescriptors||function(t){var e={};return Me(t).forEach((function(r){e[r]=Object.getOwnPropertyDescriptor(t,r)})),e},Kt={},Ge={get:function(t,e){if(e===_)return t;var r=ae(t);if(!Ie(r,e))return(function(s,i,a){var o,c=On(i,a);return c?"value"in c?c.value:(o=c.get)===null||o===void 0?void 0:o.call(s.k):void 0})(t,r,e);var n=r[e];return t.I||!X(n)?n:n===jt(t.t,e)?(Bt(t),t.o[e]=Vt(t.A.h,n,t)):n},has:function(t,e){return e in ae(t)},ownKeys:function(t){return Reflect.ownKeys(ae(t))},set:function(t,e,r){var n=On(ae(t),e);if(n?.set)return n.set.call(t.k,r),!0;if(!t.P){var s=jt(ae(t),e),i=s?.[_];if(i&&i.t===r)return t.o[e]=r,t.R[e]=!1,!0;if(Dn(r,s)&&(r!==void 0||Ie(t.t,e)))return!0;Bt(t),oe(t)}return t.o[e]===r&&(r!==void 0||e in t.o)||Number.isNaN(r)&&Number.isNaN(t.o[e])||(t.o[e]=r,t.R[e]=!0),!0},deleteProperty:function(t,e){return jt(t.t,e)!==void 0||e in t.t?(t.R[e]=!1,Bt(t),oe(t)):delete t.R[e],t.o&&delete t.o[e],!0},getOwnPropertyDescriptor:function(t,e){var r=ae(t),n=Reflect.getOwnPropertyDescriptor(r,e);return n&&{writable:!0,configurable:t.i!==1||e!=="length",enumerable:n.enumerable,value:r[e]}},defineProperty:function(){$(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){$(12)}},Ve={};ve(Ge,(function(t,e){Ve[t]=function(){return arguments[0]=arguments[0][0],e.apply(this,arguments)}})),Ve.deleteProperty=function(t,e){return Ve.set.call(this,t,e,void 0)},Ve.set=function(t,e,r){return Ge.set.call(this,t[0],e,r,t[0])};var Gs=(function(){function t(r){var n=this;this.O=_n,this.D=!0,this.produce=function(s,i,a){if(typeof s=="function"&&typeof i!="function"){var o=i;i=s;var c=n;return function(y){var b=this;y===void 0&&(y=o);for(var A=arguments.length,E=Array(A>1?A-1:0),x=1;x<A;x++)E[x-1]=arguments[x];return c.produce(y,(function(w){var N;return(N=i).call.apply(N,[b,w].concat(E))}))}}var l;if(typeof i!="function"&&$(6),a!==void 0&&typeof a!="function"&&$(7),X(s)){var d=Cn(n),h=Vt(n,s,void 0),p=!0;try{l=i(h),p=!1}finally{p?ct(d):Ht(d)}return typeof Promise<"u"&&l instanceof Promise?l.then((function(y){return Ut(d,a),Ft(y,d)}),(function(y){throw ct(d),y})):(Ut(d,a),Ft(l,d))}if(!s||typeof s!="object"){if((l=i(s))===void 0&&(l=s),l===Pn&&(l=void 0),n.D&&Wt(l,!0),a){var v=[],m=[];Z("Patches").M(s,l,v,m),a(v,m)}return l}$(21,s)},this.produceWithPatches=function(s,i){if(typeof s=="function")return function(l){for(var d=arguments.length,h=Array(d>1?d-1:0),p=1;p<d;p++)h[p-1]=arguments[p];return n.produceWithPatches(l,(function(v){return s.apply(void 0,[v].concat(h))}))};var a,o,c=n.produce(s,i,(function(l,d){a=l,o=d}));return typeof Promise<"u"&&c instanceof Promise?c.then((function(l){return[l,a,o]})):[c,a,o]},typeof r?.useProxies=="boolean"&&this.setUseProxies(r.useProxies),typeof r?.autoFreeze=="boolean"&&this.setAutoFreeze(r.autoFreeze)}var e=t.prototype;return e.createDraft=function(r){X(r)||$(8),te(r)&&(r=qs(r));var n=Cn(this),s=Vt(this,r,void 0);return s[_].C=!0,Ht(n),s},e.finishDraft=function(r,n){var s=r&&r[_],i=s.A;return Ut(i,n),Ft(void 0,i)},e.setAutoFreeze=function(r){this.D=r},e.setUseProxies=function(r){r&&!_n&&$(20),this.O=r},e.applyPatches=function(r,n){var s;for(s=n.length-1;s>=0;s--){var i=n[s];if(i.path.length===0&&i.op==="replace"){r=i.value;break}}s>-1&&(n=n.slice(s+1));var a=Z("Patches").$;return te(r)?a(r,n):this.produce(r,(function(o){return a(o,n)}))},t})(),V=new Gs,zs=V.produce,Ea=V.produceWithPatches.bind(V),Ta=V.setAutoFreeze.bind(V),Ca=V.setUseProxies.bind(V),wa=V.applyPatches.bind(V),Oa=V.createDraft.bind(V),xa=V.finishDraft.bind(V),ft=zs;function ge(t){"@babel/helpers - typeof";return ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ge(t)}function Nn(t,e){if(ge(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(ge(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function Un(t){var e=Nn(t,"string");return ge(e)=="symbol"?e:e+""}function Fn(t,e,r){return(e=Un(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function jn(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(s){return Object.getOwnPropertyDescriptor(t,s).enumerable})),r.push.apply(r,n)}return r}function Yt(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?jn(Object(r),!0).forEach(function(n){Fn(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):jn(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function F(t){return"Minified Redux error #"+t+"; visit https://redux.js.org/Errors?code="+t+" for the full message or use the non-minified dev environment for full errors. "}var Bn=(function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"})(),Jt=function(){return Math.random().toString(36).substring(7).split("").join(".")},ht={INIT:"@@redux/INIT"+Jt(),REPLACE:"@@redux/REPLACE"+Jt(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+Jt()}};function $s(t){if(typeof t!="object"||t===null)return!1;for(var e=t;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function Zt(t,e,r){var n;if(typeof e=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(F(0));if(typeof e=="function"&&typeof r>"u"&&(r=e,e=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(F(1));return r(Zt)(t,e)}if(typeof t!="function")throw new Error(F(2));var s=t,i=e,a=[],o=a,c=!1;function l(){o===a&&(o=a.slice())}function d(){if(c)throw new Error(F(3));return i}function h(y){if(typeof y!="function")throw new Error(F(4));if(c)throw new Error(F(5));var b=!0;return l(),o.push(y),function(){if(b){if(c)throw new Error(F(6));b=!1,l();var E=o.indexOf(y);o.splice(E,1),a=null}}}function p(y){if(!$s(y))throw new Error(F(7));if(typeof y.type>"u")throw new Error(F(8));if(c)throw new Error(F(9));try{c=!0,i=s(i,y)}finally{c=!1}for(var b=a=o,A=0;A<b.length;A++){var E=b[A];E()}return y}function v(y){if(typeof y!="function")throw new Error(F(10));s=y,p({type:ht.REPLACE})}function m(){var y,b=h;return y={subscribe:function(E){if(typeof E!="object"||E===null)throw new Error(F(11));function x(){E.next&&E.next(d())}x();var w=b(x);return{unsubscribe:w}}},y[Bn]=function(){return this},y}return p({type:ht.INIT}),n={dispatch:p,subscribe:h,getState:d,replaceReducer:v},n[Bn]=m,n}function Ws(t){Object.keys(t).forEach(function(e){var r=t[e],n=r(void 0,{type:ht.INIT});if(typeof n>"u")throw new Error(F(12));if(typeof r(void 0,{type:ht.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(F(13))})}function qn(t){for(var e=Object.keys(t),r={},n=0;n<e.length;n++){var s=e[n];typeof t[s]=="function"&&(r[s]=t[s])}var i=Object.keys(r),a,o;try{Ws(r)}catch(c){o=c}return function(l,d){if(l===void 0&&(l={}),o)throw o;if(0)var h;for(var p=!1,v={},m=0;m<i.length;m++){var y=i[m],b=r[y],A=l[y],E=b(A,d);if(typeof E>"u"){var x=d&&d.type;throw new Error(F(14))}v[y]=E,p=p||E!==A}return p=p||i.length!==Object.keys(l).length,p?v:l}}function Le(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return e.length===0?function(n){return n}:e.length===1?e[0]:e.reduce(function(n,s){return function(){return n(s.apply(void 0,arguments))}})}function Hn(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(n){return function(){var s=n.apply(void 0,arguments),i=function(){throw new Error(F(15))},a={getState:s.getState,dispatch:function(){return i.apply(void 0,arguments)}},o=e.map(function(c){return c(a)});return i=Le.apply(void 0,o)(s.dispatch),Yt(Yt({},s),{},{dispatch:i})}}}function Vn(t){var e=function(n){var s=n.dispatch,i=n.getState;return function(a){return function(o){return typeof o=="function"?o(s,i,t):a(o)}}};return e}var Kn=Vn();Kn.withExtraArgument=Vn;var er=Kn;var Qn=(function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,s){n.__proto__=s}||function(n,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(n[i]=s[i])},t(e,r)};return function(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}})(),Qs=function(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,s,i,a;return a={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(l){return function(d){return c([l,d])}}function c(l){if(n)throw new TypeError("Generator is already executing.");for(;r;)try{if(n=1,s&&(i=l[0]&2?s.return:l[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,l[1])).done)return i;switch(s=0,i&&(l=[l[0]&2,i.value]),l[0]){case 0:case 1:i=l;break;case 4:return r.label++,{value:l[1],done:!1};case 5:r.label++,s=l[1],l=[0];continue;case 7:l=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(l[0]===6||l[0]===2)){r=0;continue}if(l[0]===3&&(!i||l[1]>i[0]&&l[1]<i[3])){r.label=l[1];break}if(l[0]===6&&r.label<i[1]){r.label=i[1],i=l;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(l);break}i[2]&&r.ops.pop(),r.trys.pop();continue}l=e.call(t,r)}catch(d){l=[6,d],s=0}finally{n=i=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}},Pe=function(t,e){for(var r=0,n=e.length,s=t.length;r<n;r++,s++)t[s]=e[r];return t},Xs=Object.defineProperty,Ys=Object.defineProperties,Js=Object.getOwnPropertyDescriptors,Gn=Object.getOwnPropertySymbols,Zs=Object.prototype.hasOwnProperty,ei=Object.prototype.propertyIsEnumerable,zn=function(t,e,r){return e in t?Xs(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r},ue=function(t,e){for(var r in e||(e={}))Zs.call(e,r)&&zn(t,r,e[r]);if(Gn)for(var n=0,s=Gn(e);n<s.length;n++){var r=s[n];ei.call(e,r)&&zn(t,r,e[r])}return t},tr=function(t,e){return Ys(t,Js(e))},ti=function(t,e,r){return new Promise(function(n,s){var i=function(c){try{o(r.next(c))}catch(l){s(l)}},a=function(c){try{o(r.throw(c))}catch(l){s(l)}},o=function(c){return c.done?n(c.value):Promise.resolve(c.value).then(i,a)};o((r=r.apply(t,e)).next())})};var ri=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Le:Le.apply(null,arguments)},Ga=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION__?window.__REDUX_DEVTOOLS_EXTENSION__:function(){return function(t){return t}};function ni(t){if(typeof t!="object"||t===null)return!1;var e=Object.getPrototypeOf(t);if(e===null)return!0;for(var r=e;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return e===r}function ce(t,e){function r(){for(var n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if(e){var i=e.apply(void 0,n);if(!i)throw new Error("prepareAction did not return an object");return ue(ue({type:t,payload:i.payload},"meta"in i&&{meta:i.meta}),"error"in i&&{error:i.error})}return{type:t,payload:n[0]}}return r.toString=function(){return""+t},r.type=t,r.match=function(n){return n.type===t},r}var si=(function(t){Qn(e,t);function e(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];var s=t.apply(this,r)||this;return Object.setPrototypeOf(s,e.prototype),s}return Object.defineProperty(e,Symbol.species,{get:function(){return e},enumerable:!1,configurable:!0}),e.prototype.concat=function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return t.prototype.concat.apply(this,r)},e.prototype.prepend=function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return r.length===1&&Array.isArray(r[0])?new(e.bind.apply(e,Pe([void 0],r[0].concat(this)))):new(e.bind.apply(e,Pe([void 0],r.concat(this))))},e})(Array),ii=(function(t){Qn(e,t);function e(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];var s=t.apply(this,r)||this;return Object.setPrototypeOf(s,e.prototype),s}return Object.defineProperty(e,Symbol.species,{get:function(){return e},enumerable:!1,configurable:!0}),e.prototype.concat=function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return t.prototype.concat.apply(this,r)},e.prototype.prepend=function(){for(var r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];return r.length===1&&Array.isArray(r[0])?new(e.bind.apply(e,Pe([void 0],r[0].concat(this)))):new(e.bind.apply(e,Pe([void 0],r.concat(this))))},e})(Array);function sr(t){return X(t)?ft(t,function(){}):t}function ai(t){return typeof t=="boolean"}function oi(){return function(e){return ui(e)}}function ui(t){t===void 0&&(t={});var e=t.thunk,r=e===void 0?!0:e,n=t.immutableCheck,s=n===void 0?!0:n,i=t.serializableCheck,a=i===void 0?!0:i,o=t.actionCreatorCheck,c=o===void 0?!0:o,l=new si;if(r&&(ai(r)?l.push(er):l.push(er.withExtraArgument(r.extraArgument))),0){if(s)var d;if(a)var h;if(c)var p}return l}var rr=!0;function Xn(t){var e=oi(),r=t||{},n=r.reducer,s=n===void 0?void 0:n,i=r.middleware,a=i===void 0?e():i,o=r.devTools,c=o===void 0?!0:o,l=r.preloadedState,d=l===void 0?void 0:l,h=r.enhancers,p=h===void 0?void 0:h,v;if(typeof s=="function")v=s;else if(ni(s))v=qn(s);else throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');var m=a;if(typeof m=="function"&&(m=m(e),!rr&&!Array.isArray(m)))throw new Error("when using a middleware builder function, an array of middleware must be returned");if(!rr&&m.some(function(w){return typeof w!="function"}))throw new Error("each middleware provided to configureStore must be a function");var y=Hn.apply(void 0,m),b=Le;c&&(b=ri(ue({trace:!rr},typeof c=="object"&&c)));var A=new ii(y),E=A;Array.isArray(p)?E=Pe([y],p):typeof p=="function"&&(E=p(A));var x=b.apply(void 0,E);return Zt(v,d,x)}function Yn(t){var e={},r=[],n,s={addCase:function(i,a){var o=typeof i=="string"?i:i.type;if(!o)throw new Error("`builder.addCase` cannot be called with an empty action type");if(o in e)throw new Error("`builder.addCase` cannot be called with two reducers for the same action type");return e[o]=a,s},addMatcher:function(i,a){return r.push({matcher:i,reducer:a}),s},addDefaultCase:function(i){return n=i,s}};return t(s),[e,r,n]}function ci(t){return typeof t=="function"}function li(t,e,r,n){r===void 0&&(r=[]);var s=typeof e=="function"?Yn(e):[e,r,n],i=s[0],a=s[1],o=s[2],c;if(ci(t))c=function(){return sr(t())};else{var l=sr(t);c=function(){return l}}function d(h,p){h===void 0&&(h=c());var v=Pe([i[p.type]],a.filter(function(m){var y=m.matcher;return y(p)}).map(function(m){var y=m.reducer;return y}));return v.filter(function(m){return!!m}).length===0&&(v=[o]),v.reduce(function(m,y){if(y)if(te(m)){var b=m,A=y(b,p);return A===void 0?m:A}else{if(X(m))return ft(m,function(E){return y(E,p)});var A=y(m,p);if(A===void 0){if(m===null)return m;throw Error("A case reducer on a non-draftable value must not return undefined")}return A}return m},h)}return d.getInitialState=c,d}function di(t,e){return t+"/"+e}function Jn(t){var e=t.name;if(!e)throw new Error("`name` is a required option for createSlice");typeof process<"u";var r=typeof t.initialState=="function"?t.initialState:sr(t.initialState),n=t.reducers||{},s=Object.keys(n),i={},a={},o={};s.forEach(function(d){var h=n[d],p=di(e,d),v,m;"reducer"in h?(v=h.reducer,m=h.prepare):v=h,i[d]=v,a[p]=v,o[d]=m?ce(p,m):ce(p)});function c(){var d=typeof t.extraReducers=="function"?Yn(t.extraReducers):[t.extraReducers],h=d[0],p=h===void 0?{}:h,v=d[1],m=v===void 0?[]:v,y=d[2],b=y===void 0?void 0:y,A=ue(ue({},p),a);return li(r,function(E){for(var x in A)E.addCase(x,A[x]);for(var w=0,N=m;w<N.length;w++){var Q=N[w];E.addMatcher(Q.matcher,Q.reducer)}b&&E.addDefaultCase(b)})}var l;return{name:e,reducer:function(d,h){return l||(l=c()),l(d,h)},actions:o,caseReducers:i,getInitialState:function(){return l||(l=c()),l.getInitialState()}}}var fi="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",hi=function(t){t===void 0&&(t=21);for(var e="",r=t;r--;)e+=fi[Math.random()*64|0];return e},pi=["name","message","stack","code"],nr=(function(){function t(e,r){this.payload=e,this.meta=r}return t})(),$n=(function(){function t(e,r){this.payload=e,this.meta=r}return t})(),mi=function(t){if(typeof t=="object"&&t!==null){for(var e={},r=0,n=pi;r<n.length;r++){var s=n[r];typeof t[s]=="string"&&(e[s]=t[s])}return e}return{message:String(t)}},Qa=(function(){function t(e,r,n){var s=ce(e+"/fulfilled",function(d,h,p,v){return{payload:d,meta:tr(ue({},v||{}),{arg:p,requestId:h,requestStatus:"fulfilled"})}}),i=ce(e+"/pending",function(d,h,p){return{payload:void 0,meta:tr(ue({},p||{}),{arg:h,requestId:d,requestStatus:"pending"})}}),a=ce(e+"/rejected",function(d,h,p,v,m){return{payload:v,error:(n&&n.serializeError||mi)(d||"Rejected"),meta:tr(ue({},m||{}),{arg:p,requestId:h,rejectedWithValue:!!v,requestStatus:"rejected",aborted:d?.name==="AbortError",condition:d?.name==="ConditionError"})}}),o=!1,c=typeof AbortController<"u"?AbortController:(function(){function d(){this.signal={aborted:!1,addEventListener:function(){},dispatchEvent:function(){return!1},onabort:function(){},removeEventListener:function(){},reason:void 0,throwIfAborted:function(){}}}return d.prototype.abort=function(){},d})();function l(d){return function(h,p,v){var m=n?.idGenerator?n.idGenerator(d):hi(),y=new c,b,A=!1;function E(w){b=w,y.abort()}var x=(function(){return ti(this,null,function(){var w,N,Q,de,H,fe,Te;return Qs(this,function(u){switch(u.label){case 0:return u.trys.push([0,4,,5]),de=(w=n?.condition)==null?void 0:w.call(n,d,{getState:p,extra:v}),vi(de)?[4,de]:[3,2];case 1:de=u.sent(),u.label=2;case 2:if(de===!1||y.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};return A=!0,H=new Promise(function(f,S){return y.signal.addEventListener("abort",function(){return S({name:"AbortError",message:b||"Aborted"})})}),h(i(m,d,(N=n?.getPendingMeta)==null?void 0:N.call(n,{requestId:m,arg:d},{getState:p,extra:v}))),[4,Promise.race([H,Promise.resolve(r(d,{dispatch:h,getState:p,extra:v,requestId:m,signal:y.signal,abort:E,rejectWithValue:function(f,S){return new nr(f,S)},fulfillWithValue:function(f,S){return new $n(f,S)}})).then(function(f){if(f instanceof nr)throw f;return f instanceof $n?s(f.payload,m,d,f.meta):s(f,m,d)})])];case 3:return Q=u.sent(),[3,5];case 4:return fe=u.sent(),Q=fe instanceof nr?a(null,m,d,fe.payload,fe.meta):a(fe,m,d),[3,5];case 5:return Te=n&&!n.dispatchConditionRejection&&a.match(Q)&&Q.meta.condition,Te||h(Q),[2,Q]}})})})();return Object.assign(x,{abort:E,requestId:m,arg:d,unwrap:function(){return x.then(yi)}})}}return Object.assign(l,{pending:i,rejected:a,fulfilled:s,typePrefix:e})}return t.withTypes=function(){return t},t})();function yi(t){if(t.meta&&t.meta.rejectedWithValue)throw t.payload;if(t.error)throw t.error;return t.payload}function vi(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}var Zn="listener",es="completed",ts="cancelled",Xa="task-"+ts,Ya="task-"+es,Ja=Zn+"-"+ts,Za=Zn+"-"+es;var ir="listenerMiddleware";var eo=ce(ir+"/add"),to=ce(ir+"/removeAll"),ro=ce(ir+"/remove");var Wn,no=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:typeof global<"u"?global:globalThis):function(t){return(Wn||(Wn=Promise.resolve())).then(t).catch(function(e){return setTimeout(function(){throw e},0)})},gi=function(t){return function(e){setTimeout(e,t)}},so=typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:gi(10);Ln();var Si=nt(Symbol("withEventBus"),function(t,e){return class extends t{constructor(){super(...arguments),this.eventBus=e??document.createElement("span")}addEventListener(r,n,s){this.eventBus.addEventListener(r,n,s)}dispatchEvent(r){return this.eventBus.dispatchEvent(r)}removeEventListener(r,n,s){this.eventBus.removeEventListener(r,n,s)}}}),pt=class extends Si(Object){};window.ftReduxStores||(window.ftReduxStores={});var rs=class t extends pt{static get(e){var r;let n=typeof e=="string"?e:e.name,s=typeof e=="string"?void 0:e,i=window.ftReduxStores[n];if(ut(i))return i;if(s==null)return;let a=Jn({...s,reducers:(r=s.reducers)!==null&&r!==void 0?r:{}}),o=Xn({reducer:(c,l)=>{if(l.type==="CLEAR_FT_REDUX_STORE"){let d=Be(a.getInitialState());for(let h of l.keeping)d[h]=(c??d)[h];return d}else if(typeof l.type=="string"&&l.type.startsWith("DEFAULT_VALUE_SETTER__"))return{...c,...l.overwrites};return a.reducer(c,l)}});return window.ftReduxStores[s.name]=new t(a,o,s.eventBus)}constructor(e,r,n){super(),this.reduxSlice=e,this.reduxStore=r,this.isFtReduxStore=!0,this.commands=new st;let s=i=>i!=null?JSON.parse(JSON.stringify(i)):i;this.actions=new Proxy(this.reduxSlice.actions,{get:(i,a,o)=>{let c=a,l=i[c];return l?(...d)=>{let h=l(...d.map(s));return this.reduxStore.dispatch(h),h}:d=>{this.setState({[c]:s(d)})}}}),this.eventBus=n??this.eventBus}clear(){this.reduxStore.dispatch({type:"CLEAR_FT_REDUX_STORE",keeping:[]})}clearKeeping(...e){this.reduxStore.dispatch({type:"CLEAR_FT_REDUX_STORE",keeping:e})}setState(e){this.reduxStore.dispatch({type:"DEFAULT_VALUE_SETTER__"+Object.keys(e).join("_"),overwrites:e})}get dispatch(){throw new Error("Don't use this method, actions are automatically dispatched when called.")}[Symbol.observable](){return this.reduxStore[Symbol.observable]()}getState(){return this.reduxStore.getState()}replaceReducer(e){throw new Error("Not implemented yet.")}subscribe(e){return this.reduxStore.subscribe(e)}get name(){return this.reduxSlice.name}get reducer(){return this.reduxSlice.reducer}get caseReducers(){return this.reduxSlice.caseReducers}getInitialState(){return this.reduxSlice.getInitialState()}};var mt=class{static format(e,r,n,s,i){return window.moment?window.moment(e).locale(r).format(this.getMomentDateFormat(n,s,!!i)):this.getIntlDateTime(e,r,n,s,!!i)}static getMomentDateFormat(e,r,n){return n?"LT":e?r?"lll":"ll":r?"L LT":"L"}static getIntlDateTime(e,r,n,s,i){let a=typeof e=="string"?new Date(e):e,o=new Intl.DateTimeFormat(r,{dateStyle:n?"medium":"short"}).format(a),c=new Intl.DateTimeFormat(r,{timeStyle:"short"}).format(a);return i?c:s?`${o} ${c}`:o}static getTimezoneAsString(){let e=n=>String(Math.floor(n)).padStart(2,"0"),r=new Date().getTimezoneOffset();return`${r<0?"+":"-"}${e(Math.abs(r)/60)}:${e(Math.abs(r)%60)}`}};var yt=C(L()),bi="ft-app-info",ke=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:e})}};ke.eventName="authentication-change";var ze=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:e})}};ze.eventName="ui-locale-changed";var Ai={session:(t,e)=>{(0,yt.deepEqual)(t.session,e.payload)||(t.session=e.payload,setTimeout(()=>g.dispatchEvent(new ke(e.payload)),0))}},g=yt.FtReduxStore.get({name:bi,reducers:Ai,initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,apiIntegrationAppVersion:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],availableContentLocales:[],defaultLocales:void 0,searchInAllLanguagesAllowed:!1,searchLanguageSetsUiLanguage:!1,uiLanguageSetsSearchLanguage:!1,uiLanguageSetsReaderLanguage:!1,metadataConfiguration:void 0,privacyPolicyConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0,openExternalDocumentInNewTab:!1,navigatorOnline:!0,forcedOffline:!1,authenticationRequired:!1}});var ns=C(L()),vt=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},Lo=(0,ns.applyMixinOnce)(Symbol("withDateFormat"),function(t){class e extends t{constructor(...n){super(n),this.useLongDateFormat=!1,this.useDateTimeFormat=!1,this.metadataDescriptors=[],this.uiLocale="en-US",this.addStore(g)}dateFormatOptionsChanged(n){return n.has("metadataDescriptors")||n.has("useLongDateFormat")||n.has("useDateTimeFormat")||n.has("uiLocale")}getDateFormatter(n){var s,i;return((i=(s=this.metadataDescriptors.find(o=>o.key===n))===null||s===void 0?void 0:s.date)!==null&&i!==void 0?i:!1)?o=>mt.format(o,this.uiLocale,this.useLongDateFormat,this.useDateTimeFormat):void 0}}return vt([(0,ar.property)({type:Boolean})],e.prototype,"useLongDateFormat",void 0),vt([(0,ar.property)({type:Boolean})],e.prototype,"useDateTimeFormat",void 0),vt([Nt({store:g.name,selector:r=>{var n,s;return(s=(n=r.metadataConfiguration)===null||n===void 0?void 0:n.descriptors)!==null&&s!==void 0?s:[]}})],e.prototype,"metadataDescriptors",void 0),vt([Nt({store:g.name})],e.prototype,"uiLocale",void 0),e});var Et=C(L());var or=C(L());var Se=class t{static get(e){let{baseUrl:r,apiIntegrationIdentifier:n}=g.getState(),s=e??n;if(r&&s&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(r,s,!0)}static await(e){return new Promise(r=>{let n=t.get(e);if(n)r(n);else{let s=g.subscribe(()=>{n=t.get(e),n&&(s(),r(n))})}})}};var Ne=class{constructor(e){this.overrideApi=e}get api(){var e;return(e=this.overrideApi)!==null&&e!==void 0?e:Se.get()}get awaitApi(){return this.overrideApi?Promise.resolve(this.overrideApi):Se.await()}};var j=class extends Ne{constructor(e=!0,r){var n;super(r),this.sortObjectFields=(i,a)=>typeof a!="object"||a==null||Array.isArray(a)?a:Object.fromEntries(Object.entries(a).sort(([o],[c])=>o.localeCompare(c)));let s=this.constructor;s.commonCache=(n=s.commonCache)!==null&&n!==void 0?n:new or.CacheRegistry,this.cache=e?s.commonCache:new or.CacheRegistry}clearCache(){this.cache.clearAll()}hash(e){return String(Array.from(JSON.stringify(e,this.sortObjectFields)).reduce((r,n)=>0|31*r+n.charCodeAt(0),0))}};var gt=class extends j{async listMySearches(){let{session:e}=g.getState();return dn(e,D.SAVED_SEARCH_USER)?this.cache.get("my-searches",async()=>(await this.awaitApi).listMySearches(e.profile.userId),300*1e3):[]}};var St=class extends j{async listMyBookmarks(){let e=g.getState().session;return e?.sessionAuthenticated?this.cache.get("my-bookmarks",async()=>(await this.awaitApi).listMyBookmarks(e.profile.userId),300*1e3):[]}};var bt=class extends j{constructor(){super(...arguments),this.CACHE_DURATION=180*1e3}async getUserAssetCount(e){if(this.isAuthenticated())return this.cache.get(`user-asset-count-${e}`,async()=>(await this.awaitApi).get(`/internal/api/webapp/user/assets/count/${e}`),this.CACHE_DURATION)}async getUserBookmarkCountByMap(e){if(this.isAuthenticated())return this.cache.get(`user-bookmark-count-by-map-${e}`,async()=>(await this.awaitApi).get(`/internal/api/webapp/user/assets/count/BOOKMARKS/${e}`),this.CACHE_DURATION)}isAuthenticated(){let e=g.getState().session;return!!e?.sessionAuthenticated}};var At=class extends j{constructor(){super(...arguments),this.CACHE_DURATION=180*1e3}async getUserAssetLabels(){return this.isAuthenticated()?this.cache.get("user-asset-labels",async()=>(await this.awaitApi).get("/internal/api/webapp/user/assets/labels"),this.CACHE_DURATION):[]}isAuthenticated(){let e=g.getState().session;return!!e?.sessionAuthenticated}};var Ei="ft-user-assets",Ti={setAssetCount:(t,e)=>{let{userAssetType:r,count:n}=e.payload.assetCount;t.assetCounts.allAsset[r]=n},clearAssetCount:t=>{Object.values(z).forEach(e=>{t.assetCounts.allAsset[e]=void 0})},setBookmarkCountByMap:(t,e)=>{let r=e.payload.mapId;t.assetCounts.bookmarkByMap[r]=e.payload.count},clearBookmarkCountByMap:t=>{t.assetCounts.bookmarkByMap={}},addAsset:(t,e)=>{let{assetType:r,mapId:n,asset:s}=e.payload;cr(t,r,[...ur(t,r),s]),ss(t,r,1,n),is(t,s)},editAsset:(t,e)=>{let{assetType:r,asset:n}=e.payload;cr(t,r,ur(t,r).map(s=>s.id===n.id?n:s)),is(t,n)},removeAsset:(t,e)=>{let{assetType:r,mapId:n,assetId:s}=e.payload;cr(t,r,ur(t,r).filter(i=>i.id!==s)),ss(t,r,-1,n)}},as={[z.SEARCHES]:"savedSearches",[z.BOOKMARKS]:"bookmarks",[z.BOOKS]:void 0,[z.COLLECTIONS]:void 0},ur=(t,e)=>{var r;let n=as[e];return n?(r=t[n])!==null&&r!==void 0?r:[]:[]},cr=(t,e,r)=>{let n=as[e];n&&(t[n]=r)},ss=(t,e,r,n)=>{let s=t.assetCounts.allAsset[e];if(s!==void 0&&(t.assetCounts.allAsset[e]=Math.max(0,s+r),e===z.BOOKMARKS&&n)){let i=t.assetCounts.bookmarkByMap[n];t.assetCounts.bookmarkByMap[n]=Math.max(0,i+r)}},is=(t,e)=>{let r=t.assetLabels.map(s=>s.title),n=e.labels.filter(s=>!r.includes(s)).map(s=>({title:s}));t.assetLabels.push(...n)},K=Et.FtReduxStore.get({name:Ei,reducers:Ti,initialState:{savedSearches:void 0,bookmarks:void 0,assetCounts:{allAsset:Object.fromEntries(Object.values(z).map(t=>[t,void 0])),bookmarkByMap:{}},assetLabels:[]}}),lr=class{constructor(e=new bt,r=new At){this.assetCountsService=e,this.assetLabelsService=r,this.currentSession=g.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new St,this.savedSearchesService=new gt,g.subscribe(()=>this.reloadWhenUserSessionChanges())}reloadWhenUserSessionChanges(){var e;let{session:r}=g.getState();(0,Et.deepEqual)((e=this.currentSession)===null||e===void 0?void 0:e.profile,r?.profile)||(this.currentSession=r,this.clearMySearches(),this.reloadBookmarks(),this.clearUserAssetCounts(),this.reloadAssetLabels())}clearUserAssetCounts(){this.assetCountsService.clearCache(),K.actions.clearAssetCount(),K.actions.clearBookmarkCountByMap()}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();let e=await this.savedSearchesService.listMySearches();K.actions.savedSearches(e)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async reloadAssetLabels(){this.assetLabelsService.clearCache();let e=await this.assetLabelsService.getUserAssetLabels();K.actions.assetLabels(e)}async loadAssetCount(e){let r=await this.assetCountsService.getUserAssetCount(e);r&&K.actions.setAssetCount({assetCount:r})}async loadBookmarkByMapId(e){let r=await this.assetCountsService.getUserBookmarkCountByMap(e);r&&K.actions.setBookmarkCountByMap({count:r.count,mapId:e})}async reloadAssetCount(e){this.assetCountsService.clearCache();let r=Object.keys(K.getState().assetCounts.bookmarkByMap).length!==0;e===z.BOOKMARKS&&r&&K.actions.clearBookmarkCountByMap(),K.getState().assetCounts.allAsset[e]!==void 0&&await this.loadAssetCount(e)}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var e;if(this.bookmarksAreUsed){let r=!((e=this.currentSession)===null||e===void 0)&&e.sessionAuthenticated?await this.bookmarksService.listMyBookmarks():void 0;K.actions.bookmarks(r)}}},dr=new lr;window.FluidTopicsUserAssetsActions==null&&(window.FluidTopicsUserAssetsActions=dr);var fr=class{addCommand(e,r=!1){g.commands.add(e,r)}consumeCommand(e){return g.commands.consume(e)}};window.FluidTopicsAppInfoStoreService=new fr;var W=C(L());var os,Ue=class extends CustomEvent{constructor(e){super("ft-i18n-context-loaded",{detail:e})}},Ci=Symbol("clearAfterUnitTest"),Tt=class extends(0,W.withEventBus)(j){constructor(e){super(),this.messageContextProvider=e,this.defaultMessages={},this.listeners={},this.currentUiLocale="",this[os]=()=>{this.defaultMessages={},this.cache=new W.CacheRegistry,this.listeners={}},this.currentUiLocale=g.getState().uiLocale,g.subscribe(()=>this.clearWhenUiLocaleChanges())}clearWhenUiLocaleChanges(){let{uiLocale:e}=g.getState();this.currentUiLocale!==e&&(this.currentUiLocale=e,this.cache.clearAll(),this.notifyAll())}addContext(e){let r=e.name.toLowerCase();this.cache.setFinal(r,e),this.notify(r)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(e,r){var n;if(e=e.toLowerCase(),r&&Object.keys(r).length>0){let s={...(n=this.defaultMessages[e])!==null&&n!==void 0?n:{},...r};(0,W.deepEqual)(this.defaultMessages[e],s)||(this.defaultMessages[e]=s,await this.notify(e))}return this.fetchContext(e)}resolveContext(e){var r,n;return this.fetchContext(e),(n=(r=this.cache.getNow(e))===null||r===void 0?void 0:r.messages)!==null&&n!==void 0?n:{}}resolveRawMessage(e,r){let n=e.toLowerCase();return this.resolveContext(n)[r]}resolveMessage(e,r,...n){var s;let i=e.toLowerCase(),a=this.resolveContext(i);return new W.ParametrizedLabelResolver((s=this.defaultMessages[i])!==null&&s!==void 0?s:{},a).resolve(r,...n)}async fetchContext(e){let r=!this.cache.has(e),n;try{n=await this.cache.get(e,()=>this.messageContextProvider(this.currentUiLocale,e)),r&&await this.notify(e)}catch(s){!(s instanceof W.CanceledPromiseError)&&r&&console.error(s)}return n}subscribe(e,r){var n;return e=e.toLowerCase(),this.listeners[e]=(n=this.listeners[e])!==null&&n!==void 0?n:new Set,this.listeners[e].add(r),()=>{var s;return(s=this.listeners[e])===null||s===void 0?void 0:s.delete(r)}}async notifyAll(){let e=Object.keys(this.listeners);document.body.dispatchEvent(new Ue({loadedContexts:e})),this.dispatchEvent(new Ue({loadedContexts:e})),await Promise.all(e.map(r=>this.notify(r,!1)))}async notify(e,r=!0){r&&(document.body.dispatchEvent(new Ue({loadedContexts:[e]})),this.dispatchEvent(new Ue({loadedContexts:[e]}))),this.listeners[e]!=null&&await Promise.all([...this.listeners[e].values()].map(n=>(0,W.delay)(0).then(()=>n()).catch(()=>null)))}};os=Ci;window.FluidTopicsI18nService==null&&(window.FluidTopicsI18nService=new class extends Tt{constructor(){super(async(t,e)=>(await this.awaitApi).getFluidTopicsMessageContext(t,e))}});window.FluidTopicsCustomI18nService==null&&(window.FluidTopicsCustomI18nService=new class extends Tt{constructor(){super(async(t,e)=>(await this.awaitApi).getCustomMessageContext(t,e))}});var us=window.FluidTopicsI18nService,pu=window.FluidTopicsCustomI18nService;var cs=C(L()),hr=class{highlightHtml(e,r,n){(0,cs.highlightHtml)(e,r,n)}};window.FluidTopicsHighlightHtmlService=new hr;var ls=C(L());var pr=class{isDate(e){var r,n,s,i;return(i=(s=((n=(r=g.getState().metadataConfiguration)===null||r===void 0?void 0:r.descriptors)!==null&&n!==void 0?n:[]).find(o=>o.key===e))===null||s===void 0?void 0:s.date)!==null&&i!==void 0?i:!1}format(e,r){var n,s,i,a;if(e==null)return"";try{return ls.DateFormatter.format(e,(n=r?.locale)!==null&&n!==void 0?n:g.getState().uiLocale,(s=r?.longFormat)!==null&&s!==void 0?s:!1,(i=r?.withTime)!==null&&i!==void 0?i:!1,(a=r?.onlyTime)!==null&&a!==void 0?a:!1)}catch(o){throw console.error(`Date ${JSON.stringify(e)} is not valid`,o),o}}};window.FluidTopicsDateService=new pr;var ds=C(L());var $e=class{static get(e,r){var n,s;let i=g.getState(),{lang:a,region:o}=(s=(n=i.defaultLocales)===null||n===void 0?void 0:n.defaultContentLocale)!==null&&s!==void 0?s:{lang:"en",region:"US"};return new ds.SearchPlaceConverter(i.baseUrl,e??20,i.searchInAllLanguagesAllowed,r??`${a}-${o}`)}};var Ct=class extends j{async sendDocumentStartDisplayEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.start_display event")}async sendTopicStartDisplayEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send topic.start_display event")}async sendKhubSearchEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send khub.search event")}async sendDocumentSearchEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.search event")}async sendSearchPageSelectEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send search_page.select event")}async sendSearchResultOpenContextMenuEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send search_result.open_context_menu event")}async sendDocumentOnDemandTranslateEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.on_demand_translate event")}async sendTopicAiTranslateEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send topic.ai_translate event")}convertMapToAnalyticsDocument(e){let r;switch(e.editorialType){case"BOOK":r="STRUCTURED_DOCUMENT";break;case"SHARED_BOOK":r="SHARED_PERSONAL_BOOK";break;case"ARTICLE":r="RESOURCE";break;case"HTML_PACKAGE":r="HTML_PACKAGE";break;default:throw new TypeError("Unknown editorial type for map : "+e.editorialType)}return{id:e.id,title:e.title,type:r,metadata:e.metadata}}sortEventArrays(e){let r=Object.entries(e).map(([n,s])=>Array.isArray(s)?[n,s.map(i=>typeof i=="object"&&i!=null&&!Array.isArray(i)?this.sortEventArrays(i):i).sort((i,a)=>typeof i=="object"&&i!==null&&"key"in i?i.key.localeCompare(a.key):typeof i=="string"&&typeof a=="string"?i.localeCompare(a):String(i).localeCompare(String(a)))]:typeof s=="object"&&s!==null?[n,this.sortEventArrays(s)]:[n,s]);return Object.fromEntries(r)}sendEvents(e,r){let n="anything not undefined";return this.cache.get("analytics-event-"+this.hash(e),async()=>(await this.awaitApi).sendEvents(e).then(()=>n).catch(s=>(console.info(r),console.debug(s),n)),1e3)}};var mr=class{urlToSearchRequest(e){return $e.get().parse(e)}searchRequestToUrl(e){return $e.get().serialize(e)}};window.FluidTopicsUrlService=new mr;var le=C(L());var be=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:{currentItem:e}})}};be.eventName="change";var yr=class{itemName(e){return`fluid-topics-history-item-${e}`}get(e){let r=sessionStorage.getItem(this.itemName(e));return r?JSON.parse(r):void 0}set(e,r){sessionStorage.setItem(this.itemName(e),JSON.stringify(r))}},fs=new yr;var wt=class t extends le.WithEventBus{static build(){return new t(window.history,fs,()=>window.location,!1)}constructor(e,r,n,s){var i,a;super(),this.history=e,this.historyStorage=r,this.windowLocation=n,this.states=[],this.realPushState=e.pushState,this.realReplaceState=e.replaceState,this.initialIndex=(a=(i=e.state)===null||i===void 0?void 0:i.index)!==null&&a!==void 0?a:e.length-1,this.currentIndex=this.initialIndex,this.setCurrentState(this.buildCurrentState()),this.installProxies(),this.initEventListeners(),this.initData(s)}setCurrentState(e,r=!1){let n=r&&this.currentIndex===e.index-1;this.currentState={...this.buildCurrentState(),...e},this.currentIndex=this.currentState.index,this.states[this.currentIndex]=this.currentState,n&&(this.states=this.states.slice(0,this.currentIndex+1)),this.historyStorage.set(this.currentIndex,this.currentState),(0,le.deepEqual)(this.currentState,this.history.state)||this.realReplaceState.apply(this.history,[this.currentState,this.currentState.title,window.location.href]),setTimeout(()=>this.dispatchEvent(new be(this.currentItem())),0)}installProxies(){let e=r=>(n,s,[i,a,o])=>{let c=r(),l={...c===this.currentIndex?this.currentState:void 0,...i,index:c,href:typeof o=="string"?o:(o??this.windowLocation()).href};n.apply(s,[l,a,o]),this.setCurrentState(l,!0)};this.history.pushState=new Proxy(this.history.pushState,{apply:e(()=>this.currentIndex+1)}),this.history.replaceState=new Proxy(this.history.replaceState,{apply:e(()=>this.currentIndex)})}initEventListeners(){window.addEventListener("popstate",e=>this.setCurrentState(e.state)),document.querySelector("title")==null&&document.head.append(document.createElement("title")),new MutationObserver(()=>this.updateCurrentState({title:document.title})).observe(document.querySelector("title"),{subtree:!0,characterData:!0,childList:!0})}initData(e){for(let r=this.history.length-1;r>=0;r--)e?this.states[r]=this.historyStorage.get(r):setTimeout(()=>this.states[r]=this.historyStorage.get(r),this.history.length-r)}updateCurrentState(e){var r;let n={...this.buildCurrentState(),...e,index:this.currentIndex,title:(r=e?.title)!==null&&r!==void 0?r:this.currentState.title};this.setCurrentState(n)}addHistoryChangeListener(e){this.addEventListener(be.eventName,e)}removeHistoryChangeListener(e){this.removeEventListener(be.eventName,e)}currentItem(){return(0,le.deepCopy)(this.currentState)}back(){let e=this.previousDifferentMajorPosition();e>=0?this.history.go(e-this.currentIndex):this.currentIndex!==this.initialIndex?this.history.go(this.initialIndex-this.currentIndex):this.history.back()}backwardItem(){return(0,le.deepCopy)(this.states[this.previousDifferentMajorPosition()])}previousDifferentMajorPosition(){let e=this.currentIndex>0?this.currentIndex-1:0;for(;e>0&&!this.isDifferentMajorState(e);)e--;return e}forward(){let e=this.nextMajorPosition();e&&e<this.states.length?this.history.go(e-this.currentIndex):this.history.forward()}forwardItem(){let e=this.nextMajorPosition();if(e)return(0,le.deepCopy)(this.states[e])}nextMajorPosition(){let e=this.currentIndex;if(!(e>=this.states.length)){do e++;while(e<this.states.length&&!this.isDifferentMajorState(e));return this.getHigherPositionInTheSameState(e)}}getHigherPositionInTheSameState(e){var r;let n=(r=this.states[e])===null||r===void 0?void 0:r.majorStateId;if(!n)return e;let s=e,i=e+1;for(;this.states.length>i&&!this.isDifferentMajorState(i,n);)this.hasState(i)&&(s=i),i++;return s}buildCurrentState(){var e,r;return{...this.history.state,index:this.currentIndex,href:this.windowLocation().href,title:(r=(e=this.history.state)===null||e===void 0?void 0:e.title)!==null&&r!==void 0?r:document.title}}hasState(e){return this.states[e]!=null}isDifferentMajorState(e,r){var n;if(!this.hasState(e))return!1;let s=r??this.currentState.majorStateId,i=(n=this.states[e])===null||n===void 0?void 0:n.majorStateId;return i==null||i!=s}};window.FluidTopicsInternalHistoryService==null&&(window.FluidTopicsInternalHistoryService=wt.build(),window.FluidTopicsHistoryService={currentItem:()=>window.FluidTopicsInternalHistoryService.currentItem(),back:()=>window.FluidTopicsInternalHistoryService.back(),forward:()=>window.FluidTopicsInternalHistoryService.forward(),backwardItem:()=>window.FluidTopicsInternalHistoryService.backwardItem(),forwardItem:()=>window.FluidTopicsInternalHistoryService.forwardItem(),addHistoryChangeListener:t=>window.FluidTopicsInternalHistoryService.addHistoryChangeListener(t),removeHistoryChangeListener:t=>window.FluidTopicsInternalHistoryService.removeHistoryChangeListener(t)});var hs=C(Ce());var ps=hs.css`
4
4
  `;var ys=C(Ce()),G=C(re()),Ee=C(L());var Ae=C(L());function ms(t,e){let{authenticationRequired:r,session:n}=g.getState();return r&&!n?.sessionAuthenticated?Promise.resolve(e):t()}var Ot=class extends Ne{async updateUiLocale(e){return(await this.awaitApi).updateUiLocale(e)}};var vr=class t extends Ae.FtStateManager{static build(e){return new t(g,e)}constructor(e,r){super(),this.store=e,this.cache=new Ae.CacheRegistry,this.withManualResources=!0,this.localesConfiguration=null,this.userLocaleService=new Ot,this.cleanSessionDebouncer=new Ae.Debouncer,this.reloadDebouncer=new Ae.Debouncer(500),this.apiProvider=r??(()=>Se.get())}setWithManualResources(e){this.withManualResources=e,this.updateIfNeeded()}async initService(){this.store.addEventListener(ke.eventName,this.reloadConfiguration)}async updateIfNeeded(){this.apiProvider()&&(this.withManualResources||(this.store.getState().session==null&&this.updateSession(),this.store.getState().metadataConfiguration==null&&this.updateMetadataConfiguration()),this.localesConfiguration==null&&this.updateLocalesConfiguration(),(this.store.getState().availableContentLocales==null||this.store.getState().availableContentLocales.length==0)&&this.updateAvailableContentLocales())}async updateSession(){let e=await this.cache.get("session",async()=>{let r=await this.apiProvider().getCurrentSession();return r.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run(()=>{this.cache.clear("session"),this.setSession(void 0)},r.idleTimeoutInMillis),r});this.setSession(e)}async updateMetadataConfiguration(){this.setMetadataConfiguration(await this.cache.get("metadataConfiguration",()=>this.apiProvider().getMetadataConfiguration()))}async updateLocalesConfiguration(){this.setLocalesConfiguration(await this.cache.get("localesConfiguration",()=>this.apiProvider().getLocalesConfiguration()))}async updateAvailableContentLocales(){var e;let r=await this.cache.get("availableContentLocales",()=>ms(()=>this.apiProvider().getAvailableSearchLocales(),{contentLocales:[]}));this.setAvailableContentLocales((e=r.contentLocales)!==null&&e!==void 0?e:[])}reloadConfiguration(){var e;(e=this.cache)===null||e===void 0||e.clear("availableContentLocales"),typeof this.updateAvailableContentLocales=="function"&&this.updateAvailableContentLocales()}setBaseUrl(e){this.store.actions.baseUrl(e),window.fluidTopicsBaseUrl=e}setApiIntegrationIdentifier(e){this.store.actions.apiIntegrationIdentifier(e)}setApiIntegrationAppVersion(e){this.store.actions.apiIntegrationAppVersion(e)}setUiLocale(e){this.store.actions.uiLocale(e)}setLocalesConfiguration(e){var r,n,s,i,a;this.localesConfiguration=e,this.store.actions.defaultLocales(this.localesConfiguration.defaultLocales),this.store.actions.availableUiLocales((r=this.localesConfiguration.availableUiLocales)!==null&&r!==void 0?r:[]),this.store.actions.searchInAllLanguagesAllowed((n=this.localesConfiguration.allLanguagesAllowed)!==null&&n!==void 0?n:!1),this.store.actions.searchLanguageSetsUiLanguage((s=this.localesConfiguration.searchLanguageSetsUiLanguage)!==null&&s!==void 0?s:!1),this.store.actions.uiLanguageSetsSearchLanguage((i=this.localesConfiguration.uiLanguageSetsSearchLanguage)!==null&&i!==void 0?i:!1),this.store.actions.uiLanguageSetsReaderLanguage((a=this.localesConfiguration.uiLanguageSetsReaderLanguage)!==null&&a!==void 0?a:!1),setTimeout(()=>this.updateIfNeeded())}setAvailableContentLocales(e){this.store.actions.availableContentLocales(e),setTimeout(()=>this.updateIfNeeded())}stopReloadDebouncer(){this.reloadDebouncer.cancel()}requestUiLocaleUpdate(e){this.userLocaleService.updateUiLocale({uiLocale:e}).then(r=>{r.uiLocaleChanged&&(this.reloadDebouncer.run(()=>window.location.reload()),this.store.dispatchEvent(new ze(r)))}).catch(()=>{})}setMetadataConfiguration(e){this.store.actions.metadataConfiguration(e),setTimeout(()=>this.updateIfNeeded())}setNoCustom(e){this.store.actions.noCustom(e)}setEditorMode(e){this.store.actions.editorMode(e)}setNoCustomComponent(e){this.store.actions.noCustomComponent(e)}setSession(e){this.store.actions.session(e),setTimeout(()=>this.updateIfNeeded())}setOpenExternalDocumentInNewTab(e){this.store.actions.openExternalDocumentInNewTab(e)}setNavigatorOnline(e){this.store.actions.navigatorOnline(e)}setForcedOffline(e){this.store.actions.forcedOffline(e)}setAuthenticationRequired(e){this.store.actions.authenticationRequired(e)}},We=vr.build();var B=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},M=class extends Ee.FtLitElementRedux{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.apiIntegrationAppVersion="ft-integration-app-version",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.openExternalDocumentInNewTab=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.navigatorOnline=!1,this.forcedOffline=!1,this.authenticationRequired=!1,this.messageContexts=[],this.stateManager=We}render(){return ys.html`
5
5
  <slot></slot>
6
- `}connectedCallback(){super.connectedCallback(),this.stateManager.initService()}disconnectedCallback(){super.disconnectedCallback()}update(e){var r;super.update(e),e.has("baseUrl")&&this.stateManager.setBaseUrl(this.baseUrl),e.has("apiIntegrationIdentifier")&&this.stateManager.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),e.has("apiIntegrationAppVersion")&&this.stateManager.setApiIntegrationAppVersion(this.apiIntegrationAppVersion),e.has("uiLocale")&&this.stateManager.setUiLocale(this.uiLocale),e.has("metadataConfiguration")&&this.stateManager.setMetadataConfiguration(this.metadataConfiguration),e.has("noCustom")&&this.stateManager.setNoCustom(this.noCustom),e.has("editorMode")&&this.stateManager.setEditorMode(this.editorMode),e.has("noCustomComponent")&&this.stateManager.setNoCustomComponent(this.noCustomComponent),e.has("session")&&this.stateManager.setSession(this.session),e.has("messageContexts")&&this.messageContexts!=null&&this.messageContexts.forEach(n=>us.addContext(n)),e.has("openExternalDocumentInNewTab")&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("navigatorOnline")&&this.stateManager.setNavigatorOnline(this.navigatorOnline),e.has("forcedOffline")&&this.stateManager.setForcedOffline(this.forcedOffline),e.has("authenticationRequired")&&this.stateManager.setAuthenticationRequired(this.authenticationRequired),e.has("withManualResources")&&((r=this.stateManager)===null||r===void 0||r.setWithManualResources(this.withManualResources)),setTimeout(()=>this.stateManager.updateIfNeeded())}};M.elementDefinitions={};M.styles=ps;B([(0,G.property)()],M.prototype,"baseUrl",void 0);B([(0,G.property)()],M.prototype,"apiIntegrationIdentifier",void 0);B([(0,G.property)()],M.prototype,"apiIntegrationAppVersion",void 0);B([(0,G.property)()],M.prototype,"uiLocale",void 0);B([(0,Ee.jsonProperty)(null)],M.prototype,"availableUiLocales",void 0);B([(0,Ee.jsonProperty)(null)],M.prototype,"metadataConfiguration",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"editorMode",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"noCustom",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"openExternalDocumentInNewTab",void 0);B([(0,G.property)({converter:{fromAttribute(t){return t==="false"?!1:t==="true"||(t??!1)}}})],M.prototype,"noCustomComponent",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"withManualResources",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"navigatorOnline",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"forcedOffline",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"authenticationRequired",void 0);B([(0,Ee.jsonProperty)([])],M.prototype,"messageContexts",void 0);B([(0,Ee.jsonProperty)(void 0)],M.prototype,"session",void 0);var gs=C(L());var vs={"ft-app-context":M};(0,gs.customElements)(vs);var xt=class extends j{constructor(e){super(!0,e),this.cache.registerFinal("search-configuration",async()=>(await this.awaitApi).getSearchConfiguration())}async launchSearch(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters),facets:[...e.facets].sort((n,s)=>n.id.localeCompare(s.id))};return this.cache.get("search-"+this.hash(r),async()=>(await this.awaitApi).search(e),120*1e3)}async launchSuggest(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters)};return this.cache.get("suggest-"+this.hash(r),async()=>(await this.awaitApi).getSuggestions(e),120*1e3)}async getAvailableSearchLocales(){return this.cache.get("available-locales",async()=>(await this.awaitApi).getAvailableSearchLocales())}async getConfiguration(){return this.cache.get("search-configuration")}sortFilters(e){return e.map(r=>r.valueFilter==null?r:{...r,valueFilter:{...r.valueFilter,values:[...r.valueFilter.values].sort((n,s)=>n.localeCompare(s))}}).sort((r,n)=>r.key.localeCompare(n.key))}};var Rt=class extends CustomEvent{constructor(e){super("ft-search-load-error",{detail:e})}},_t=class extends CustomEvent{constructor(e){super("ft-search-request-change",{detail:e})}},It=class extends CustomEvent{constructor(e,r,n){super("ft-search-results-change",{detail:{request:e,paging:r,spellcheck:n}})}},Qe=class t extends Event{constructor(){super(t.eventName)}};Qe.eventName="search-context-clear-all-filters";var wi=t=>t.request.virtualField===Oe.TITLE_ONLY&&t.request.scope===xe.DOCUMENTS,Oi=t=>t.request.keywordMatch==tt.MANDATORY,Xe=class t extends P.FtStateManager{static build(e,r){return new t(_r(e.trim()||"context"),r)}constructor(e,r){super(),this.store=e,this.ignoreEmptyQuery=!1,this.canUpdateUiLocale=!1,this.openExternalDocumentInNewTab=!1,this.onNewNeededRequest=n=>{n==je.CLUSTERED_SEARCH&&this.launchSearch(this.buildSearchRequest(this.store.getState()))},this.localesDebouncer=new P.Debouncer(10),this.searchDebouncer=new P.Debouncer(100),this.launchSearch=n=>this.searchDebouncer.run(()=>this.fetchSearchData(n??this.buildSearchRequest(this.store.getState()))),this.buildSearchRequest=n=>({...n.request,facets:this.facetIds.map(s=>({id:s}))}),this.suggestDebouncer=new P.Debouncer(1e3),this.launchSuggest=n=>this.suggestDebouncer.run(()=>this.fetchSuggestData(n??this.buildSuggestRequest(this.store.getState()))),this.buildSuggestRequest=n=>{var s;return{input:n.liveQuery,metadataFilters:n.request.metadataFilters,sort:(s=n.request.sort)!==null&&s!==void 0?s:[],sortId:n.request.sortId,contentLocale:n.request.contentLocale,scope:n.request.scope,keywordMatch:n.request.keywordMatch}},this.service=r??new xt,this.service.cache.addEventListener("clear-cache",n=>{n.detail.clearedKeys.includes("available-locales")&&this.updateLocales()}),this.searchWatcher=(0,P.watch)(e,this.buildSearchRequest,this.launchSearch),this.suggestWatcher=(0,P.watch)(e,this.buildSuggestRequest,this.launchSuggest)}async initService(){return this.updateLocales(),this.service.getConfiguration().then(e=>{this.store.actions.configuration(e),this.setSortId(this.store.getState().request.sortId)}),this.launchSearch()}updateSearchRequest(e,r=!1){let n=(0,P.deepCopy)(this.store.getState().request);delete n.changedByConfiguration,this.store.actions.setRequest({...n,paging:{perPage:n.paging.perPage,page:r?1:n.paging.page},...e})}setQuery(e){this.updateSearchRequest({query:e},!0),this.setLiveQuery(e)}setContentLocale(e){var r,n;let s=(r=this.store.getState().locales)!==null&&r!==void 0?r:[],i=this.store.getState().request.contentLocale;if(e!=i){if(s.length>0){let a=o=>s.some(c=>c.lang==o);a(e)||(e=a(i)?i:s[0].lang)}this.updateSearchRequest({contentLocale:e,metadataFilters:[]},!0),this.canUpdateUiLocale&&(!((n=We.localesConfiguration)===null||n===void 0)&&n.searchLanguageSetsUiLanguage)&&e&&We.requestUiLocaleUpdate(e)}return e}forceContentLocale(e){this.updateSearchRequest({contentLocale:e})}setPageSize(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,perPage:isNaN(e)?20:(0,P.minmax)(1,e,1e3)}})}setPageNumber(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,page:isNaN(e)?1:Math.max(1,e)}})}get sortOptions(){var e,r;return(r=(e=this.store.getState().configuration)===null||e===void 0?void 0:e.sortOptions)!==null&&r!==void 0?r:[]}setSort(e){this.updateSearchRequest({sort:e},!0)}setSortId(e,r=!1){var n;let s=r?{changedByConfiguration:!0}:{};if(e==null||this.sortOptions.length==0)return this.updateSearchRequest({sortId:e,...s},!0),e;let i=(n=this.sortOptions.find(a=>a.id==e))!==null&&n!==void 0?n:this.sortOptions[0];return this.updateSearchRequest({sortId:i.id,...s},!0),i.id}setFilters(e){let r=e.filter(n=>!n.valueFilter||n.valueFilter.values.length>0);this.updateSearchRequest({metadataFilters:r},!0)}setClusterSortCriterion(e){this.updateSearchRequest({clusterSortCriterions:e})}setSearchInDocumentTitlesOnly(e){e?this.updateSearchRequest({virtualField:Oe.TITLE_ONLY,scope:xe.DOCUMENTS},!0):this.updateSearchRequest({virtualField:Oe.EVERYWHERE,scope:xe.DEFAULT},!0)}setKeywordMatch(e){this.updateSearchRequest({keywordMatch:e},!0)}setVirtualField(e){this.updateSearchRequest({virtualField:e},!0)}get searchInDocumentTitlesOnly(){return wi(this.store.getState())}get keywordMatch(){return Oi(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.dispatchEvent(new Qe)}addFacet(e){this.facetIds=[...this.facetIds,e]}replaceFacet(e,r){let n=this.facetIds.filter(s=>s!=e);r&&n.push(r),this.facetIds=n}get facetIds(){var e;let r=this.store.getState().request;return[...new Set([...r.facets.map(n=>n.id),...((e=r.metadataFilters)!==null&&e!==void 0?e:[]).map(n=>n.key)])]}set facetIds(e){let n=[...new Set(e)].map(s=>({id:s}));this.updateSearchRequest({facets:n})}setFilter(e,r){this.setValueFilter(e,r)}setValueFilter(e,r){let n=this.store.getState().request.metadataFilters,s={key:e,valueFilter:{values:r,negative:!1}},i=[...n.filter(a=>!a.valueFilter),...n.filter(a=>a.valueFilter&&a.key!==s.key),s];this.setFilters(i)}setDateFilter(e,r){let n=this.store.getState().request.metadataFilters,s={key:e,dateFilter:{type:r}},i=[...n.filter(a=>!a.dateFilter),...n.filter(a=>a.dateFilter&&a.key!==s.key),s];this.setFilters(i)}removeDateFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(s=>!s.dateFilter),...r.filter(s=>s.dateFilter&&s.key!==e)];this.setFilters(n)}setRangeFilter(e,r,n){let s=this.store.getState().request.metadataFilters,i={key:e,rangeFilter:{from:r,to:n}},a=[...s.filter(o=>!o.rangeFilter),...s.filter(o=>o.rangeFilter&&o.key!==i.key),i];this.setFilters(a)}removeRangeFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(s=>!s.rangeFilter),...r.filter(s=>s.rangeFilter&&s.key!==e)];this.setFilters(n)}setLiveQuery(e){this.store.actions.liveQuery(e)}setRequest(e){this.updateSearchRequest({...e,facets:this.store.getState().request.facets},!0),this.setLiveQuery(e.query)}setScope(e){this.updateSearchRequest({scope:e})}setOtherQueryParams(e){this.updateSearchRequest({otherQueryParams:e})}setIgnoreEmptyQuery(e){this.ignoreEmptyQuery=e}setOpenExternalDocumentInNewTab(e){this.openExternalDocumentInNewTab=e}setCanUpdateUiLocale(e){this.canUpdateUiLocale=e}updateLocales(){return this.localesDebouncer.run(async()=>this.store.actions.locales((await this.service.getAvailableSearchLocales()).contentLocales))}async fetchSearchData(e){var r,n,s,i,a;if((r=this.cancelableSearch)===null||r===void 0||r.cancel(),!!this.isRequestNeeded(je.CLUSTERED_SEARCH))try{if(this.store.actions.paging(void 0),this.ignoreEmptyQuery&&e.query.length==0)this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0);else{!((n=this.store.getState().results)===null||n===void 0)&&n.length||this.store.actions.results(void 0),this.cancelableSearch=(0,P.cancelable)(this.service.launchSearch(e));let o=await this.cancelableSearch;if(this.store.actions.announcements(o.announcements),o.paging.currentPage<=1)this.store.actions.results(o.results),this.store.actions.facets(o.facets),this.store.actions.spellcheck(o.spellcheck);else{let c=((s=this.store.getState().results)!==null&&s!==void 0?s:[]).concat(o.results);this.store.actions.results(c),this.store.commands.clear(/^focus-result-/),this.store.commands.add({type:`focus-result-${(o.paging.currentPage-1)*((i=e.paging.perPage)!==null&&i!==void 0?i:20)+1}`})}this.store.actions.paging(o.paging)}}catch(o){o instanceof P.CanceledPromiseError||(console.error(o),(a=this.errorHandler)===null||a===void 0||a.call(this,o))}}async fetchSuggestData(e){var r;try{if((r=this.cancelableSuggest)===null||r===void 0||r.cancel(),e.input.length!=0&&e.input.length<3)return;this.cancelableSuggest=(0,P.cancelable)(this.service.launchSuggest(e));let n=await this.cancelableSuggest;this.store.actions.suggestResults(n.suggestions)}catch(n){!(n instanceof P.CanceledPromiseError)&&this.errorHandler&&this.errorHandler(n)}}clear(){this.store.clear()}clearResults(){this.store.actions.paging(void 0),this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0)}};var Ss=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},br=class extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}},bs=Symbol("registerInterval"),gr=Symbol("registerAttempts"),xi=40,Ri=(0,Fe.applyMixinOnce)(Symbol("toFtSearchComponent"),function(t){class e extends t{constructor(){super(...arguments),this.neededSearchRequests=[]}willUpdate(n){var s,i,a;super.willUpdate(n),n.has("neededSearchRequests")&&((s=this.stateManager)===null||s===void 0||s.unregisterComponent(this,(i=n.get("neededSearchRequests"))!==null&&i!==void 0?i:[]),(a=this.stateManager)===null||a===void 0||a.registerComponent(this,this.neededSearchRequests))}setSearchStateManager(n){this.clearStateManager(),this.stateManager=n,this.stateManager.registerComponent(this,this.neededSearchRequests),this.addStore(n.store,"search")}clearStateManager(){this.stateManager&&(this.stateManager.unregisterComponent(this,this.neededSearchRequests),this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[gr]=0,this.tryToRegisterToContext(),this[bs]=window.setInterval(()=>this.tryToRegisterToContext(),50)}tryToRegisterToContext(){this.stateManager!=null||this[gr]>xi?window.clearInterval(this[bs]):(this[gr]++,this.dispatchEvent(new br))}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return Ss([(0,Sr.state)()],e.prototype,"stateManager",void 0),Ss([(0,Sr.state)({hasChanged:Fe.hasChanged})],e.prototype,"neededSearchRequests",void 0),e}),As=class extends Ri(Fe.FtLitElementRedux){};var Pt=C(L());function Mt(t){return t.filter(e=>e.key==="ft:lastEdition").filter(e=>!e.valueFilter).map(e=>e.dateFilter?e.dateFilter.type:"CUSTOM").shift()}function Dt(t){var e,r;return t.dateFilter?{key:t.key,type:"DATE",dateValue:t.dateFilter.type}:t.rangeFilter?{key:t.key,type:"RANGE",from:t.rangeFilter.from,to:t.rangeFilter.to}:{key:t.key,values:(e=t.valueFilter)===null||e===void 0?void 0:e.values,negative:(r=t.valueFilter)===null||r===void 0?void 0:r.negative}}var Lt=class{constructor(e,r){this.store=e,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.enableAnalyticsEvents=!0,this.appName=void 0,this.appVersion=void 0,this.document=void 0,this.sendEvent=n=>{if(!this.canSendEvent()||!n)return;let s=this.store.getState().request;this.document==null?this.sendKhubSearchEvent(s,n):this.sendDocumentSearchEvent(s,n)},this.eventsService=r??new Ct,this.resultsWatcher=(0,Pt.watch)(e,n=>n.results,this.sendEvent)}setEnableAnalyticsEvents(e){this.enableAnalyticsEvents=e}setAppName(e){this.appName=e}setAppVersion(e){this.appVersion=e}setDocumentSearch(e){this.document=e}setDocumentSearchFromMap(e){this.setDocumentSearch(this.eventsService.convertMapToAnalyticsDocument(e))}initAppInfo(){let{apiIntegrationIdentifier:e,apiIntegrationAppVersion:r}=g.getState();this.setAppName(e??"unknown"),this.setAppVersion(r??"unknown")}canSendEvent(){if(this.appName==null||this.appVersion==null)return console.debug("ft-search-context.eventManager is not initialized. No events will be sent!"),!1;let{editorMode:e}=g.getState();return this.enableAnalyticsEvents&&!e}sendKhubSearchEvent(e,r){let n={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.KHUB__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:r.length},searchQuery:{terms:e.query,searchType:e.virtualField,lastUpdate:Mt(e.metadataFilters),facets:e.metadataFilters.map(s=>Dt(s))}};this.eventsService.sendKhubSearchEvent(n)}sendDocumentSearchEvent(e,r){if(e.metadataFilters.find(s=>{var i;return s.key==="ft:publicationId"&&((i=s.valueFilter)===null||i===void 0?void 0:i.values[0])===this.document.id})!==void 0){let s={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.DOCUMENT__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:r.length},searchQuery:{terms:e.query},document:this.document};this.eventsService.sendDocumentSearchEvent(s)}}sendResultClickedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,s;e.type==Y.TOPIC&&(s={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.SEARCH_PAGE__SELECT,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Mt(n.metadataFilters),facets:n.metadataFilters.map(a=>Dt(a))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:s},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchPageSelectEvent(i)}sendResultContextMenuOpenedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,s;e.type==Y.TOPIC&&(s={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Mt(n.metadataFilters),facets:n.metadataFilters.map(a=>Dt(a))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:s},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchResultOpenContextMenuEvent(i)}convertDocument(e){switch(e.type){case Y.MAP:return{id:e.map.mapId,title:e.map.title,type:se.STRUCTURED_DOCUMENT,metadata:e.map.metadata};case Y.TOPIC:return{id:e.topic.mapId,title:e.topic.mapTitle,type:se.STRUCTURED_DOCUMENT,metadata:e.topic.metadata};case Y.DOCUMENT:return{id:e.document.documentId,title:e.document.title,type:se.UNSTRUCTURED_DOCUMENT,metadata:e.document.metadata,mimeType:e.document.mimeType};case Y.HTML_PACKAGE:return{id:e.htmlPackage.packageId,title:e.htmlPackage.title,type:se.HTML_PACKAGE,metadata:e.htmlPackage.metadata};case Y.HTML_PACKAGE_PAGE:return{id:e.htmlPackagePage.packageId,title:e.htmlPackagePage.title,type:se.HTML_PACKAGE,metadata:e.htmlPackagePage.metadata};default:throw new TypeError("Unknown type "+e.type)}}convertExternalLink(e){var r;return(r=(0,Pt.accessResult)(e))===null||r===void 0?void 0:r.originUrl}};var k=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},R=class extends q.FtLitElementRedux{get stateManager(){if(this._stateManager==null){let e=this.searchServiceProvider?this.searchServiceProvider():void 0;this._stateManager=Xe.build(this.id||(""+Math.round(Math.random()*999e3)).padStart(6,"0"),e),this._stateManager.errorHandler=r=>this.handleLoadError(r),this.addStore(this.stateManager.store,"search")}return this._stateManager}get eventManager(){return this._eventManager==null&&(this._eventManager=new Lt(this.stateManager.store)),this._eventManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.filters=[],this.sort=[],this.otherQueryParams={},this._appIntegrationInfoReady=!1,this.addStore(g)}render(){return Es.html`
6
+ `}connectedCallback(){super.connectedCallback(),this.stateManager.initService()}disconnectedCallback(){super.disconnectedCallback()}update(e){var r;super.update(e),e.has("baseUrl")&&this.stateManager.setBaseUrl(this.baseUrl),e.has("apiIntegrationIdentifier")&&this.stateManager.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),e.has("apiIntegrationAppVersion")&&this.stateManager.setApiIntegrationAppVersion(this.apiIntegrationAppVersion),e.has("uiLocale")&&this.stateManager.setUiLocale(this.uiLocale),e.has("metadataConfiguration")&&this.stateManager.setMetadataConfiguration(this.metadataConfiguration),e.has("noCustom")&&this.stateManager.setNoCustom(this.noCustom),e.has("editorMode")&&this.stateManager.setEditorMode(this.editorMode),e.has("noCustomComponent")&&this.stateManager.setNoCustomComponent(this.noCustomComponent),e.has("session")&&this.stateManager.setSession(this.session),e.has("messageContexts")&&this.messageContexts!=null&&this.messageContexts.forEach(n=>us.addContext(n)),e.has("openExternalDocumentInNewTab")&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("navigatorOnline")&&this.stateManager.setNavigatorOnline(this.navigatorOnline),e.has("forcedOffline")&&this.stateManager.setForcedOffline(this.forcedOffline),e.has("authenticationRequired")&&this.stateManager.setAuthenticationRequired(this.authenticationRequired),e.has("withManualResources")&&((r=this.stateManager)===null||r===void 0||r.setWithManualResources(this.withManualResources)),setTimeout(()=>this.stateManager.updateIfNeeded())}};M.elementDefinitions={};M.styles=ps;B([(0,G.property)()],M.prototype,"baseUrl",void 0);B([(0,G.property)()],M.prototype,"apiIntegrationIdentifier",void 0);B([(0,G.property)()],M.prototype,"apiIntegrationAppVersion",void 0);B([(0,G.property)()],M.prototype,"uiLocale",void 0);B([(0,Ee.jsonProperty)(null)],M.prototype,"availableUiLocales",void 0);B([(0,Ee.jsonProperty)(null)],M.prototype,"metadataConfiguration",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"editorMode",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"noCustom",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"openExternalDocumentInNewTab",void 0);B([(0,G.property)({converter:{fromAttribute(t){return t==="false"?!1:t==="true"||(t??!1)}}})],M.prototype,"noCustomComponent",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"withManualResources",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"navigatorOnline",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"forcedOffline",void 0);B([(0,G.property)({type:Boolean})],M.prototype,"authenticationRequired",void 0);B([(0,Ee.jsonProperty)([])],M.prototype,"messageContexts",void 0);B([(0,Ee.jsonProperty)(void 0)],M.prototype,"session",void 0);var gs=C(L());var vs={"ft-app-context":M};(0,gs.customElements)(vs);var xt=class extends j{constructor(e){super(!0,e),this.cache.registerFinal("search-configuration",async()=>(await this.awaitApi).getSearchConfiguration())}async launchSearch(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters),facets:[...e.facets].sort((n,s)=>n.id.localeCompare(s.id))};return this.cache.get("search-"+this.hash(r),async()=>(await this.awaitApi).search(e),120*1e3)}async launchSuggest(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters)};return this.cache.get("suggest-"+this.hash(r),async()=>(await this.awaitApi).getSuggestions(e),120*1e3)}async getAvailableSearchLocales(){return this.cache.get("available-locales",async()=>(await this.awaitApi).getAvailableSearchLocales())}async getConfiguration(){return this.cache.get("search-configuration")}sortFilters(e){return e.map(r=>r.valueFilter==null?r:{...r,valueFilter:{...r.valueFilter,values:[...r.valueFilter.values].sort((n,s)=>n.localeCompare(s))}}).sort((r,n)=>r.key.localeCompare(n.key))}};var Rt=class extends CustomEvent{constructor(e){super("ft-search-load-error",{detail:e})}},_t=class extends CustomEvent{constructor(e){super("ft-search-request-change",{detail:e})}},It=class extends CustomEvent{constructor(e,r,n){super("ft-search-results-change",{detail:{request:e,paging:r,spellcheck:n}})}},Qe=class t extends Event{constructor(){super(t.eventName)}};Qe.eventName="search-context-clear-all-filters";var wi=t=>t.request.virtualField===Oe.TITLE_ONLY&&t.request.scope===xe.DOCUMENTS,Oi=t=>t.request.keywordMatch==tt.MANDATORY,Xe=class t extends P.FtStateManager{static build(e,r){return new t(_r(e.trim()||"context"),r)}constructor(e,r){super(),this.store=e,this.ignoreEmptyQuery=!1,this.canUpdateUiLocale=!1,this.openExternalDocumentInNewTab=!1,this.onNewNeededRequest=n=>{n==je.CLUSTERED_SEARCH&&this.launchSearch(this.buildSearchRequest(this.store.getState()))},this.localesDebouncer=new P.Debouncer(10),this.searchDebouncer=new P.Debouncer(100),this.launchSearch=n=>this.searchDebouncer.run(()=>this.fetchSearchData(n??this.buildSearchRequest(this.store.getState()))),this.buildSearchRequest=n=>({...n.request,facets:this.facetIds.map(s=>({id:s}))}),this.suggestDebouncer=new P.Debouncer(1e3),this.launchSuggest=n=>this.suggestDebouncer.run(()=>this.fetchSuggestData(n??this.buildSuggestRequest(this.store.getState()))),this.buildSuggestRequest=n=>{var s;return{input:n.liveQuery,metadataFilters:n.request.metadataFilters,sort:(s=n.request.sort)!==null&&s!==void 0?s:[],sortId:n.request.sortId,contentLocale:n.request.contentLocale,scope:n.request.scope,keywordMatch:n.request.keywordMatch}},this.service=r??new xt,this.service.cache.addEventListener("clear-cache",n=>{n.detail.clearedKeys.includes("available-locales")&&this.updateLocales()}),this.searchWatcher=(0,P.watch)(e,this.buildSearchRequest,this.launchSearch),this.suggestWatcher=(0,P.watch)(e,this.buildSuggestRequest,this.launchSuggest)}async initService(){return this.updateLocales(),this.service.getConfiguration().then(e=>{this.store.actions.configuration(e),this.setSortId(this.store.getState().request.sortId)}),this.launchSearch()}updateSearchRequest(e,r=!1){let n=(0,P.deepCopy)(this.store.getState().request);delete n.changedByConfiguration,this.store.actions.setRequest({...n,paging:{perPage:n.paging.perPage,page:r?1:n.paging.page},...e})}setQuery(e){this.updateSearchRequest({query:e},!0),this.setLiveQuery(e)}setContentLocale(e){var r,n;let s=(r=this.store.getState().locales)!==null&&r!==void 0?r:[],i=this.store.getState().request.contentLocale;if(e!=i){if(s.length>0){let a=o=>s.some(c=>c.lang==o);a(e)||(e=a(i)?i:s[0].lang)}this.updateSearchRequest({contentLocale:e,metadataFilters:[]},!0),this.canUpdateUiLocale&&(!((n=We.localesConfiguration)===null||n===void 0)&&n.searchLanguageSetsUiLanguage)&&e&&We.requestUiLocaleUpdate(e)}return e}forceContentLocale(e){this.updateSearchRequest({contentLocale:e})}setPageSize(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,perPage:isNaN(e)?20:(0,P.minmax)(1,e,1e3)}})}setPageNumber(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,page:isNaN(e)?1:Math.max(1,e)}})}get sortOptions(){var e,r;return(r=(e=this.store.getState().configuration)===null||e===void 0?void 0:e.sortOptions)!==null&&r!==void 0?r:[]}setSort(e){this.updateSearchRequest({sort:e},!0)}setSortId(e,r=!1){var n;let s=r?{changedByConfiguration:!0}:{};if(e==null||this.sortOptions.length==0)return this.updateSearchRequest({sortId:e,...s},!0),e;let i=(n=this.sortOptions.find(a=>a.id==e))!==null&&n!==void 0?n:this.sortOptions[0];return this.updateSearchRequest({sortId:i.id,...s},!0),i.id}setFilters(e){let r=e.filter(n=>!n.valueFilter||n.valueFilter.values.length>0);this.updateSearchRequest({metadataFilters:r},!0)}setClusterSortCriterion(e){this.updateSearchRequest({clusterSortCriterions:e})}setSearchInDocumentTitlesOnly(e){e?this.updateSearchRequest({virtualField:Oe.TITLE_ONLY,scope:xe.DOCUMENTS},!0):this.updateSearchRequest({virtualField:Oe.EVERYWHERE,scope:xe.DEFAULT},!0)}setKeywordMatch(e){this.updateSearchRequest({keywordMatch:e},!0)}setVirtualField(e){this.updateSearchRequest({virtualField:e},!0)}get searchInDocumentTitlesOnly(){return wi(this.store.getState())}get keywordMatch(){return Oi(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.dispatchEvent(new Qe)}addFacet(e){this.facetIds=[...this.facetIds,e]}replaceFacet(e,r){let n=this.facetIds.filter(s=>s!=e);r&&n.push(r),this.facetIds=n}get facetIds(){var e;let r=this.store.getState().request;return[...new Set([...r.facets.map(n=>n.id),...((e=r.metadataFilters)!==null&&e!==void 0?e:[]).map(n=>n.key)])]}set facetIds(e){let n=[...new Set(e)].map(s=>({id:s}));this.updateSearchRequest({facets:n})}setFilter(e,r){this.setValueFilter(e,r)}setValueFilter(e,r){let n=this.store.getState().request.metadataFilters,s={key:e,valueFilter:{values:r,negative:!1}},i=[...n.filter(a=>!a.valueFilter),...n.filter(a=>a.valueFilter&&a.key!==s.key),s];this.setFilters(i)}setDateFilter(e,r){let n=this.store.getState().request.metadataFilters,s={key:e,dateFilter:{type:r}},i=[...n.filter(a=>!a.dateFilter),...n.filter(a=>a.dateFilter&&a.key!==s.key),s];this.setFilters(i)}removeDateFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(s=>!s.dateFilter),...r.filter(s=>s.dateFilter&&s.key!==e)];this.setFilters(n)}setRangeFilter(e,r,n){let s=this.store.getState().request.metadataFilters,i={key:e,rangeFilter:{from:r,to:n}},a=[...s.filter(o=>!o.rangeFilter),...s.filter(o=>o.rangeFilter&&o.key!==i.key),i];this.setFilters(a)}removeRangeFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(s=>!s.rangeFilter),...r.filter(s=>s.rangeFilter&&s.key!==e)];this.setFilters(n)}setLiveQuery(e){this.store.actions.liveQuery(e)}setRequest(e){this.updateSearchRequest({...e,facets:this.store.getState().request.facets},!0),this.setLiveQuery(e.query)}setScope(e){this.updateSearchRequest({scope:e})}setOtherQueryParams(e){this.updateSearchRequest({otherQueryParams:e})}setIgnoreEmptyQuery(e){this.ignoreEmptyQuery=e}setOpenExternalDocumentInNewTab(e){this.openExternalDocumentInNewTab=e}setCanUpdateUiLocale(e){this.canUpdateUiLocale=e}updateLocales(){return this.localesDebouncer.run(async()=>this.store.actions.locales((await this.service.getAvailableSearchLocales()).contentLocales))}async fetchSearchData(e){var r,n,s,i,a;if((r=this.cancelableSearch)===null||r===void 0||r.cancel(),!!this.isRequestNeeded(je.CLUSTERED_SEARCH))try{if(this.store.actions.paging(void 0),this.ignoreEmptyQuery&&e.query.length==0)this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0);else{!((n=this.store.getState().results)===null||n===void 0)&&n.length||this.store.actions.results(void 0),this.cancelableSearch=(0,P.cancelable)(this.service.launchSearch(e));let o=await this.cancelableSearch;if(this.store.actions.announcements(o.announcements),o.paging.currentPage<=1)this.store.actions.results(o.results),this.store.actions.facets(o.facets),this.store.actions.spellcheck(o.spellcheck);else{let c=((s=this.store.getState().results)!==null&&s!==void 0?s:[]).concat(o.results);this.store.actions.results(c),this.store.commands.clear(/^focus-result-/),this.store.commands.add({type:`focus-result-${(o.paging.currentPage-1)*((i=e.paging.perPage)!==null&&i!==void 0?i:20)+1}`})}this.store.actions.paging(o.paging)}}catch(o){o instanceof P.CanceledPromiseError||(console.error(o),(a=this.errorHandler)===null||a===void 0||a.call(this,o))}}async fetchSuggestData(e){var r;try{if((r=this.cancelableSuggest)===null||r===void 0||r.cancel(),e.input.length!=0&&e.input.length<3)return;this.cancelableSuggest=(0,P.cancelable)(this.service.launchSuggest(e));let n=await this.cancelableSuggest;this.store.actions.suggestResults(n.suggestions)}catch(n){!(n instanceof P.CanceledPromiseError)&&this.errorHandler&&this.errorHandler(n)}}clear(){this.store.clear()}clearResults(){this.store.actions.paging(void 0),this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0)}};var Ss=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},br=class extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}},bs=Symbol("registerInterval"),gr=Symbol("registerAttempts"),xi=40,Ri=(0,Fe.applyMixinOnce)(Symbol("toFtSearchComponent"),function(t){class e extends t{constructor(){super(...arguments),this.neededSearchRequests=[]}willUpdate(n){var s,i,a;super.willUpdate(n),n.has("neededSearchRequests")&&((s=this.stateManager)===null||s===void 0||s.unregisterComponent(this,(i=n.get("neededSearchRequests"))!==null&&i!==void 0?i:[]),(a=this.stateManager)===null||a===void 0||a.registerComponent(this,this.neededSearchRequests))}setSearchStateManager(n){this.clearStateManager(),this.stateManager=n,this.stateManager.registerComponent(this,this.neededSearchRequests),this.addStore(n.store,"search")}clearStateManager(){this.stateManager&&(this.stateManager.unregisterComponent(this,this.neededSearchRequests),this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[gr]=0,this.tryToRegisterToContext(),this[bs]=window.setInterval(()=>this.tryToRegisterToContext(),50)}tryToRegisterToContext(){this.stateManager!=null||this[gr]>xi?window.clearInterval(this[bs]):(this[gr]++,this.dispatchEvent(new br))}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return Ss([(0,Sr.state)()],e.prototype,"stateManager",void 0),Ss([(0,Sr.state)({hasChanged:Fe.hasChanged})],e.prototype,"neededSearchRequests",void 0),e}),As=class extends Ri(Fe.FtLitElementRedux){};var Pt=C(L());function Mt(t){return t.filter(e=>e.key==="ft:lastEdition").filter(e=>!e.valueFilter).map(e=>e.dateFilter?e.dateFilter.type:"CUSTOM").shift()}function Dt(t){var e,r;return t.dateFilter?{key:t.key,type:"DATE",dateValue:t.dateFilter.type}:t.rangeFilter?{key:t.key,type:"RANGE",from:t.rangeFilter.from,to:t.rangeFilter.to}:{key:t.key,values:(e=t.valueFilter)===null||e===void 0?void 0:e.values,negative:(r=t.valueFilter)===null||r===void 0?void 0:r.negative}}var Lt=class{constructor(e,r){this.store=e,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.enableAnalyticsEvents=!0,this.appName=void 0,this.appVersion=void 0,this.document=void 0,this.sendEvent=([n,s])=>{if(!this.canSendEvent()||!n)return;let i=this.store.getState().request;this.document==null?this.sendKhubSearchEvent(i,n,s):this.sendDocumentSearchEvent(i,n,s)},this.eventsService=r??new Ct,this.resultsWatcher=(0,Pt.watch)(e,n=>[n.results,n.paging],this.sendEvent)}setEnableAnalyticsEvents(e){this.enableAnalyticsEvents=e}setAppName(e){this.appName=e}setAppVersion(e){this.appVersion=e}setDocumentSearch(e){this.document=e}setDocumentSearchFromMap(e){this.setDocumentSearch(this.eventsService.convertMapToAnalyticsDocument(e))}initAppInfo(){let{apiIntegrationIdentifier:e,apiIntegrationAppVersion:r}=g.getState();this.setAppName(e??"unknown"),this.setAppVersion(r??"unknown")}canSendEvent(){if(this.appName==null||this.appVersion==null)return console.debug("ft-search-context.eventManager is not initialized. No events will be sent!"),!1;let{editorMode:e}=g.getState();return this.enableAnalyticsEvents&&!e}sendKhubSearchEvent(e,r,n){let s={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.KHUB__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:n?n.totalClustersCount:r.length},searchQuery:{terms:e.query,searchType:e.virtualField,lastUpdate:Mt(e.metadataFilters),facets:e.metadataFilters.map(i=>Dt(i))}};this.eventsService.sendKhubSearchEvent(s)}sendDocumentSearchEvent(e,r,n){if(e.metadataFilters.find(i=>{var a;return i.key==="ft:publicationId"&&((a=i.valueFilter)===null||a===void 0?void 0:a.values[0])===this.document.id})!==void 0){let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.DOCUMENT__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:n?n.totalClustersCount:r.length},searchQuery:{terms:e.query},document:this.document};this.eventsService.sendDocumentSearchEvent(i)}}sendResultClickedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,s;e.type==Y.TOPIC&&(s={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.SEARCH_PAGE__SELECT,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Mt(n.metadataFilters),facets:n.metadataFilters.map(a=>Dt(a))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:s},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchPageSelectEvent(i)}sendResultContextMenuOpenedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,s;e.type==Y.TOPIC&&(s={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pe.SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Mt(n.metadataFilters),facets:n.metadataFilters.map(a=>Dt(a))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:s},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchResultOpenContextMenuEvent(i)}convertDocument(e){switch(e.type){case Y.MAP:return{id:e.map.mapId,title:e.map.title,type:se.STRUCTURED_DOCUMENT,metadata:e.map.metadata};case Y.TOPIC:return{id:e.topic.mapId,title:e.topic.mapTitle,type:se.STRUCTURED_DOCUMENT,metadata:e.topic.metadata};case Y.DOCUMENT:return{id:e.document.documentId,title:e.document.title,type:se.UNSTRUCTURED_DOCUMENT,metadata:e.document.metadata,mimeType:e.document.mimeType};case Y.HTML_PACKAGE:return{id:e.htmlPackage.packageId,title:e.htmlPackage.title,type:se.HTML_PACKAGE,metadata:e.htmlPackage.metadata};case Y.HTML_PACKAGE_PAGE:return{id:e.htmlPackagePage.packageId,title:e.htmlPackagePage.title,type:se.HTML_PACKAGE,metadata:e.htmlPackagePage.metadata};default:throw new TypeError("Unknown type "+e.type)}}convertExternalLink(e){var r;return(r=(0,Pt.accessResult)(e))===null||r===void 0?void 0:r.originUrl}};var k=function(t,e,r,n){var s=arguments.length,i=s<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var o=t.length-1;o>=0;o--)(a=t[o])&&(i=(s<3?a(i):s>3?a(e,r,i):a(e,r))||i);return s>3&&i&&Object.defineProperty(e,r,i),i},R=class extends q.FtLitElementRedux{get stateManager(){if(this._stateManager==null){let e=this.searchServiceProvider?this.searchServiceProvider():void 0;this._stateManager=Xe.build(this.id||(""+Math.round(Math.random()*999e3)).padStart(6,"0"),e),this._stateManager.errorHandler=r=>this.handleLoadError(r),this.addStore(this.stateManager.store,"search")}return this._stateManager}get eventManager(){return this._eventManager==null&&(this._eventManager=new Lt(this.stateManager.store)),this._eventManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.filters=[],this.sort=[],this.otherQueryParams={},this._appIntegrationInfoReady=!1,this.addStore(g)}render(){return Es.html`
7
7
  <slot @register-ft-search-component=${this.registerComponent} @ft-search-result-click=${this.onResultClicked}
8
8
  @ft-search-result-open-context-menu=${this.onResultContextMenuOpened}></slot>
9
9
  `}willUpdate(e){super.willUpdate(e),e.has("_appIntegrationInfoReady")&&this._appIntegrationInfoReady&&this.eventManager.initAppInfo(),e.has("query")&&this.query!==void 0&&this.stateManager.setQuery(this.query),e.has("contentLocale")&&this.contentLocale!==void 0&&this.stateManager.forceContentLocale(this.contentLocale),e.has("filters")&&this.filters!==void 0&&this.stateManager.setFilters(this.filters),e.has("sortId")&&this.stateManager.setSortId(this.sortId),e.has("sort")&&this.sort!==void 0&&this.stateManager.setSort(this.sort),e.has("pageSize")&&this.pageSize!==void 0&&this.stateManager.setPageSize(this.pageSize),e.has("searchInDocumentTitlesOnly")&&this.searchInDocumentTitlesOnly!==void 0&&this.stateManager.setSearchInDocumentTitlesOnly(this.searchInDocumentTitlesOnly),e.has("keywordMatch")&&this.stateManager.setKeywordMatch(this.keywordMatch),e.has("scope")&&this.scope!==void 0&&this.stateManager.setScope(this.scope),e.has("virtualField")&&this.virtualField!==void 0&&this.stateManager.setVirtualField(this.virtualField),e.has("ignoreEmptyQuery")&&this.ignoreEmptyQuery!==void 0&&this.stateManager.setIgnoreEmptyQuery(this.ignoreEmptyQuery),e.has("openExternalDocumentInNewTab")&&this.openExternalDocumentInNewTab!==void 0&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("otherQueryParams")&&this.otherQueryParams!==void 0&&this.stateManager.setOtherQueryParams(this.otherQueryParams),e.has("session")&&this.session!==void 0&&e.get("session")!=null&&(this.stateManager.service.clearCache(),this.stateManager.initService())}connectedCallback(){super.connectedCallback(),this.stateManager.initService(),this.stateManager.clearResults(),this.stateManager.setQuery(this.query),this.stateManager.forceContentLocale(this.contentLocale),this.stateManager.setFilters(this.filters),this.stateManager.setPageSize(this.pageSize),this.stateManager.setSort(this.sort),this.stateManager.setOtherQueryParams(this.otherQueryParams)}disconnectedCallback(){super.disconnectedCallback(),this.stateManager.clearResults()}contentAvailableCallback(e){super.contentAvailableCallback(e),e.has("request")&&this.request&&this.dispatchEvent(new _t(this.request)),e.has("paging")&&this.paging!==void 0&&this.dispatchEvent(new It(this.request,this.paging,this.spellcheckAutocorrect))}registerComponent(e){e.stopPropagation();let r=e.composedPath()[0];this.register(r)}register(e){e.setSearchStateManager(this.stateManager)}handleLoadError(e){this.dispatchEvent(new Rt(e))}reloadSavedSearches(){dr.clearMySearches()}clear(){this.stateManager.clear()}onResultClicked(e){this.eventManager.sendResultClickedEvent(e.detail.result,e.detail.rank)}onResultContextMenuOpened(e){this.eventManager.sendResultContextMenuOpenedEvent(e.detail.result,e.detail.rank)}};R.elementDefinitions={};R.styles=xr;k([(0,q.redux)({store:g.name})],R.prototype,"session",void 0);k([(0,ee.property)()],R.prototype,"query",void 0);k([(0,ee.property)()],R.prototype,"contentLocale",void 0);k([(0,q.numberProperty)()],R.prototype,"pageSize",void 0);k([(0,ee.property)({type:Boolean})],R.prototype,"searchInDocumentTitlesOnly",void 0);k([(0,ee.property)()],R.prototype,"keywordMatch",void 0);k([(0,ee.property)()],R.prototype,"scope",void 0);k([(0,ee.property)()],R.prototype,"virtualField",void 0);k([(0,ee.property)({type:Boolean})],R.prototype,"ignoreEmptyQuery",void 0);k([(0,q.redux)({store:g.name})],R.prototype,"openExternalDocumentInNewTab",void 0);k([(0,q.jsonProperty)([])],R.prototype,"filters",void 0);k([(0,ee.property)()],R.prototype,"sortId",void 0);k([(0,q.jsonProperty)([])],R.prototype,"sort",void 0);k([(0,q.jsonProperty)({})],R.prototype,"otherQueryParams",void 0);k([(0,q.redux)({store:"search"})],R.prototype,"request",void 0);k([(0,q.redux)({store:"search"})],R.prototype,"paging",void 0);k([(0,q.redux)({store:"search",selector:t=>t.spellcheck})],R.prototype,"spellcheckAutocorrect",void 0);k([(0,q.redux)({store:g.name,selector:t=>t.apiIntegrationIdentifier!==void 0&&t.apiIntegrationAppVersion!==void 0})],R.prototype,"_appIntegrationInfoReady",void 0);k([(0,ee.property)({attribute:!1})],R.prototype,"searchServiceProvider",void 0);var Ts={"ft-search-context":R};(0,Cs.customElements)(Ts);})();
@@ -86,7 +86,7 @@ Also for action icons.`,c.colorGray200),contentGlobalSubtle:o.extend("--ftds-con
86
86
  `;var Or;(function(t){t.CLUSTERED_SEARCH="CLUSTERED_SEARCH"})(Or||(Or={}));var cf={setRequest:(t,e)=>{t.request=e.payload}},Nc=t=>Ue.get({name:"ft-search-"+t,initialState:{request:{query:"",clusterSortCriterions:[],metadataFilters:[],facets:[],sort:[],sortId:void 0,paging:{page:1,perPage:20},keywordMatch:void 0},liveQuery:"",paging:void 0,facets:void 0,spellcheck:void 0,locales:[],results:void 0,announcements:void 0,suggestResults:void 0,configuration:void 0},reducers:cf});var lf="ft-app-info",Kt=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:e})}};Kt.eventName="authentication-change";var Ar=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:e})}};Ar.eventName="ui-locale-changed";var df={session:(t,e)=>{ne(t.session,e.payload)||(t.session=e.payload,setTimeout(()=>_.dispatchEvent(new Kt(e.payload)),0))}},_=Ue.get({name:lf,reducers:df,initialState:{baseUrl:void 0,apiIntegrationIdentifier:void 0,apiIntegrationAppVersion:void 0,uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],availableContentLocales:[],defaultLocales:void 0,searchInAllLanguagesAllowed:!1,searchLanguageSetsUiLanguage:!1,uiLanguageSetsSearchLanguage:!1,uiLanguageSetsReaderLanguage:!1,metadataConfiguration:void 0,privacyPolicyConfiguration:void 0,editorMode:!1,noCustom:!1,noCustomComponent:!1,session:void 0,openExternalDocumentInNewTab:!1,navigatorOnline:!0,forcedOffline:!1,authenticationRequired:!1}});var co=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},l0=Z(Symbol("withDateFormat"),function(t){class e extends t{constructor(...n){super(n),this.useLongDateFormat=!1,this.useDateTimeFormat=!1,this.metadataDescriptors=[],this.uiLocale="en-US",this.addStore(_)}dateFormatOptionsChanged(n){return n.has("metadataDescriptors")||n.has("useLongDateFormat")||n.has("useDateTimeFormat")||n.has("uiLocale")}getDateFormatter(n){var a,i;return((i=(a=this.metadataDescriptors.find(l=>l.key===n))===null||a===void 0?void 0:a.date)!==null&&i!==void 0?i:!1)?l=>mt.format(l,this.uiLocale,this.useLongDateFormat,this.useDateTimeFormat):void 0}}return co([L({type:Boolean})],e.prototype,"useLongDateFormat",void 0),co([L({type:Boolean})],e.prototype,"useDateTimeFormat",void 0),co([ve({store:_.name,selector:r=>{var n,a;return(a=(n=r.metadataConfiguration)===null||n===void 0?void 0:n.descriptors)!==null&&a!==void 0?a:[]}})],e.prototype,"metadataDescriptors",void 0),co([ve({store:_.name})],e.prototype,"uiLocale",void 0),e});var bt=class t{static get(e){let{baseUrl:r,apiIntegrationIdentifier:n}=_.getState(),a=e??n;if(r&&a&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(r,a,!0)}static await(e){return new Promise(r=>{let n=t.get(e);if(n)r(n);else{let a=_.subscribe(()=>{n=t.get(e),n&&(a(),r(n))})}})}};var qt=class{constructor(e){this.overrideApi=e}get api(){var e;return(e=this.overrideApi)!==null&&e!==void 0?e:bt.get()}get awaitApi(){return this.overrideApi?Promise.resolve(this.overrideApi):bt.await()}};var J=class extends qt{constructor(e=!0,r){var n;super(r),this.sortObjectFields=(i,s)=>typeof s!="object"||s==null||Array.isArray(s)?s:Object.fromEntries(Object.entries(s).sort(([l],[d])=>l.localeCompare(d)));let a=this.constructor;a.commonCache=(n=a.commonCache)!==null&&n!==void 0?n:new Ae,this.cache=e?a.commonCache:new Ae}clearCache(){this.cache.clearAll()}hash(e){return String(Array.from(JSON.stringify(e,this.sortObjectFields)).reduce((r,n)=>0|31*r+n.charCodeAt(0),0))}};var lo=class extends J{async listMySearches(){let{session:e}=_.getState();return Ac(e,j.SAVED_SEARCH_USER)?this.cache.get("my-searches",async()=>(await this.awaitApi).listMySearches(e.profile.userId),300*1e3):[]}};var uo=class extends J{async listMyBookmarks(){let e=_.getState().session;return e?.sessionAuthenticated?this.cache.get("my-bookmarks",async()=>(await this.awaitApi).listMyBookmarks(e.profile.userId),300*1e3):[]}};var fo=class extends J{constructor(){super(...arguments),this.CACHE_DURATION=180*1e3}async getUserAssetCount(e){if(this.isAuthenticated())return this.cache.get(`user-asset-count-${e}`,async()=>(await this.awaitApi).get(`/internal/api/webapp/user/assets/count/${e}`),this.CACHE_DURATION)}async getUserBookmarkCountByMap(e){if(this.isAuthenticated())return this.cache.get(`user-bookmark-count-by-map-${e}`,async()=>(await this.awaitApi).get(`/internal/api/webapp/user/assets/count/BOOKMARKS/${e}`),this.CACHE_DURATION)}isAuthenticated(){let e=_.getState().session;return!!e?.sessionAuthenticated}};var po=class extends J{constructor(){super(...arguments),this.CACHE_DURATION=180*1e3}async getUserAssetLabels(){return this.isAuthenticated()?this.cache.get("user-asset-labels",async()=>(await this.awaitApi).get("/internal/api/webapp/user/assets/labels"),this.CACHE_DURATION):[]}isAuthenticated(){let e=_.getState().session;return!!e?.sessionAuthenticated}};var uf="ft-user-assets",ff={setAssetCount:(t,e)=>{let{userAssetType:r,count:n}=e.payload.assetCount;t.assetCounts.allAsset[r]=n},clearAssetCount:t=>{Object.values(ye).forEach(e=>{t.assetCounts.allAsset[e]=void 0})},setBookmarkCountByMap:(t,e)=>{let r=e.payload.mapId;t.assetCounts.bookmarkByMap[r]=e.payload.count},clearBookmarkCountByMap:t=>{t.assetCounts.bookmarkByMap={}},addAsset:(t,e)=>{let{assetType:r,mapId:n,asset:a}=e.payload;Oa(t,r,[...Ca(t,r),a]),Fc(t,r,1,n),Mc(t,a)},editAsset:(t,e)=>{let{assetType:r,asset:n}=e.payload;Oa(t,r,Ca(t,r).map(a=>a.id===n.id?n:a)),Mc(t,n)},removeAsset:(t,e)=>{let{assetType:r,mapId:n,assetId:a}=e.payload;Oa(t,r,Ca(t,r).filter(i=>i.id!==a)),Fc(t,r,-1,n)}},Dc={[ye.SEARCHES]:"savedSearches",[ye.BOOKMARKS]:"bookmarks",[ye.BOOKS]:void 0,[ye.COLLECTIONS]:void 0},Ca=(t,e)=>{var r;let n=Dc[e];return n?(r=t[n])!==null&&r!==void 0?r:[]:[]},Oa=(t,e,r)=>{let n=Dc[e];n&&(t[n]=r)},Fc=(t,e,r,n)=>{let a=t.assetCounts.allAsset[e];if(a!==void 0&&(t.assetCounts.allAsset[e]=Math.max(0,a+r),e===ye.BOOKMARKS&&n)){let i=t.assetCounts.bookmarkByMap[n];t.assetCounts.bookmarkByMap[n]=Math.max(0,i+r)}},Mc=(t,e)=>{let r=t.assetLabels.map(a=>a.title),n=e.labels.filter(a=>!r.includes(a)).map(a=>({title:a}));t.assetLabels.push(...n)},se=Ue.get({name:uf,reducers:ff,initialState:{savedSearches:void 0,bookmarks:void 0,assetCounts:{allAsset:Object.fromEntries(Object.values(ye).map(t=>[t,void 0])),bookmarkByMap:{}},assetLabels:[]}}),Aa=class{constructor(e=new fo,r=new po){this.assetCountsService=e,this.assetLabelsService=r,this.currentSession=_.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new uo,this.savedSearchesService=new lo,_.subscribe(()=>this.reloadWhenUserSessionChanges())}reloadWhenUserSessionChanges(){var e;let{session:r}=_.getState();ne((e=this.currentSession)===null||e===void 0?void 0:e.profile,r?.profile)||(this.currentSession=r,this.clearMySearches(),this.reloadBookmarks(),this.clearUserAssetCounts(),this.reloadAssetLabels())}clearUserAssetCounts(){this.assetCountsService.clearCache(),se.actions.clearAssetCount(),se.actions.clearBookmarkCountByMap()}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){this.savedSearchesService.clearCache(),se.actions.savedSearches(void 0)}clearMyBookmarks(){this.bookmarksService.clearCache(),se.actions.bookmarks(void 0)}async reloadMySearches(){this.savedSearchesService.clearCache();let e=await this.savedSearchesService.listMySearches();se.actions.savedSearches(e)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async reloadAssetLabels(){this.assetLabelsService.clearCache();let e=await this.assetLabelsService.getUserAssetLabels();se.actions.assetLabels(e)}async loadAssetCount(e){let r=await this.assetCountsService.getUserAssetCount(e);r&&se.actions.setAssetCount({assetCount:r})}async loadBookmarkByMapId(e){let r=await this.assetCountsService.getUserBookmarkCountByMap(e);r&&se.actions.setBookmarkCountByMap({count:r.count,mapId:e})}async reloadAssetCount(e){this.assetCountsService.clearCache();let r=Object.keys(se.getState().assetCounts.bookmarkByMap).length!==0;e===ye.BOOKMARKS&&r&&se.actions.clearBookmarkCountByMap(),se.getState().assetCounts.allAsset[e]!==void 0&&await this.loadAssetCount(e)}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var e;if(this.bookmarksAreUsed){let r=!((e=this.currentSession)===null||e===void 0)&&e.sessionAuthenticated?await this.bookmarksService.listMyBookmarks():void 0;se.actions.bookmarks(r)}}},wa=new Aa;window.FluidTopicsUserAssetsActions==null&&(window.FluidTopicsUserAssetsActions=wa);var Ra=class{addCommand(e,r=!1){_.commands.add(e,r)}consumeCommand(e){return _.commands.consume(e)}};window.FluidTopicsAppInfoStoreService=new Ra;var Uc,Zt=class extends CustomEvent{constructor(e){super("ft-i18n-context-loaded",{detail:e})}},pf=Symbol("clearAfterUnitTest"),ho=class extends jr(J){constructor(e){super(),this.messageContextProvider=e,this.defaultMessages={},this.listeners={},this.currentUiLocale="",this[Uc]=()=>{this.defaultMessages={},this.cache=new Ae,this.listeners={}},this.currentUiLocale=_.getState().uiLocale,_.subscribe(()=>this.clearWhenUiLocaleChanges())}clearWhenUiLocaleChanges(){let{uiLocale:e}=_.getState();this.currentUiLocale!==e&&(this.currentUiLocale=e,this.cache.clearAll(),this.notifyAll())}addContext(e){let r=e.name.toLowerCase();this.cache.setFinal(r,e),this.notify(r)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(e,r){var n;if(e=e.toLowerCase(),r&&Object.keys(r).length>0){let a={...(n=this.defaultMessages[e])!==null&&n!==void 0?n:{},...r};ne(this.defaultMessages[e],a)||(this.defaultMessages[e]=a,await this.notify(e))}return this.fetchContext(e)}resolveContext(e){var r,n;return this.fetchContext(e),(n=(r=this.cache.getNow(e))===null||r===void 0?void 0:r.messages)!==null&&n!==void 0?n:{}}resolveRawMessage(e,r){let n=e.toLowerCase();return this.resolveContext(n)[r]}resolveMessage(e,r,...n){var a;let i=e.toLowerCase(),s=this.resolveContext(i);return new gr((a=this.defaultMessages[i])!==null&&a!==void 0?a:{},s).resolve(r,...n)}async fetchContext(e){let r=!this.cache.has(e),n;try{n=await this.cache.get(e,()=>this.messageContextProvider(this.currentUiLocale,e)),r&&await this.notify(e)}catch(a){!(a instanceof Oe)&&r&&console.error(a)}return n}subscribe(e,r){var n;return e=e.toLowerCase(),this.listeners[e]=(n=this.listeners[e])!==null&&n!==void 0?n:new Set,this.listeners[e].add(r),()=>{var a;return(a=this.listeners[e])===null||a===void 0?void 0:a.delete(r)}}async notifyAll(){let e=Object.keys(this.listeners);document.body.dispatchEvent(new Zt({loadedContexts:e})),this.dispatchEvent(new Zt({loadedContexts:e})),await Promise.all(e.map(r=>this.notify(r,!1)))}async notify(e,r=!0){r&&(document.body.dispatchEvent(new Zt({loadedContexts:[e]})),this.dispatchEvent(new Zt({loadedContexts:[e]}))),this.listeners[e]!=null&&await Promise.all([...this.listeners[e].values()].map(n=>Gr(0).then(()=>n()).catch(()=>null)))}};Uc=pf;window.FluidTopicsI18nService==null&&(window.FluidTopicsI18nService=new class extends ho{constructor(){super(async(t,e)=>(await this.awaitApi).getFluidTopicsMessageContext(t,e))}});window.FluidTopicsCustomI18nService==null&&(window.FluidTopicsCustomI18nService=new class extends ho{constructor(){super(async(t,e)=>(await this.awaitApi).getCustomMessageContext(t,e))}});var Bc=window.FluidTopicsI18nService,K0=window.FluidTopicsCustomI18nService;var Ia=class{highlightHtml(e,r,n){Ln(e,r,n)}};window.FluidTopicsHighlightHtmlService=new Ia;var Ta=class{isDate(e){var r,n,a,i;return(i=(a=((n=(r=_.getState().metadataConfiguration)===null||r===void 0?void 0:r.descriptors)!==null&&n!==void 0?n:[]).find(l=>l.key===e))===null||a===void 0?void 0:a.date)!==null&&i!==void 0?i:!1}format(e,r){var n,a,i,s;if(e==null)return"";try{return mt.format(e,(n=r?.locale)!==null&&n!==void 0?n:_.getState().uiLocale,(a=r?.longFormat)!==null&&a!==void 0?a:!1,(i=r?.withTime)!==null&&i!==void 0?i:!1,(s=r?.onlyTime)!==null&&s!==void 0?s:!1)}catch(l){throw console.error(`Date ${JSON.stringify(e)} is not valid`,l),l}}};window.FluidTopicsDateService=new Ta;var wr=class{static get(e,r){var n,a;let i=_.getState(),{lang:s,region:l}=(a=(n=i.defaultLocales)===null||n===void 0?void 0:n.defaultContentLocale)!==null&&a!==void 0?a:{lang:"en",region:"US"};return new Gt(i.baseUrl,e??20,i.searchInAllLanguagesAllowed,r??`${s}-${l}`)}};var mo=class extends J{async sendDocumentStartDisplayEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.start_display event")}async sendTopicStartDisplayEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send topic.start_display event")}async sendKhubSearchEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send khub.search event")}async sendDocumentSearchEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.search event")}async sendSearchPageSelectEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send search_page.select event")}async sendSearchResultOpenContextMenuEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send search_result.open_context_menu event")}async sendDocumentOnDemandTranslateEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send document.on_demand_translate event")}async sendTopicAiTranslateEvent(e){return this.sendEvents([this.sortEventArrays(e)],"Failed to send topic.ai_translate event")}convertMapToAnalyticsDocument(e){let r;switch(e.editorialType){case"BOOK":r="STRUCTURED_DOCUMENT";break;case"SHARED_BOOK":r="SHARED_PERSONAL_BOOK";break;case"ARTICLE":r="RESOURCE";break;case"HTML_PACKAGE":r="HTML_PACKAGE";break;default:throw new TypeError("Unknown editorial type for map : "+e.editorialType)}return{id:e.id,title:e.title,type:r,metadata:e.metadata}}sortEventArrays(e){let r=Object.entries(e).map(([n,a])=>Array.isArray(a)?[n,a.map(i=>typeof i=="object"&&i!=null&&!Array.isArray(i)?this.sortEventArrays(i):i).sort((i,s)=>typeof i=="object"&&i!==null&&"key"in i?i.key.localeCompare(s.key):typeof i=="string"&&typeof s=="string"?i.localeCompare(s):String(i).localeCompare(String(s)))]:typeof a=="object"&&a!==null?[n,this.sortEventArrays(a)]:[n,a]);return Object.fromEntries(r)}sendEvents(e,r){let n="anything not undefined";return this.cache.get("analytics-event-"+this.hash(e),async()=>(await this.awaitApi).sendEvents(e).then(()=>n).catch(a=>(console.info(r),console.debug(a),n)),1e3)}};var La=class{urlToSearchRequest(e){return wr.get().parse(e)}searchRequestToUrl(e){return wr.get().serialize(e)}};window.FluidTopicsUrlService=new La;var vt=class t extends CustomEvent{constructor(e){super(t.eventName,{detail:{currentItem:e}})}};vt.eventName="change";var _a=class{itemName(e){return`fluid-topics-history-item-${e}`}get(e){let r=sessionStorage.getItem(this.itemName(e));return r?JSON.parse(r):void 0}set(e,r){sessionStorage.setItem(this.itemName(e),JSON.stringify(r))}},Hc=new _a;var yo=class t extends Ne{static build(){return new t(window.history,Hc,()=>window.location,!1)}constructor(e,r,n,a){var i,s;super(),this.history=e,this.historyStorage=r,this.windowLocation=n,this.states=[],this.realPushState=e.pushState,this.realReplaceState=e.replaceState,this.initialIndex=(s=(i=e.state)===null||i===void 0?void 0:i.index)!==null&&s!==void 0?s:e.length-1,this.currentIndex=this.initialIndex,this.setCurrentState(this.buildCurrentState()),this.installProxies(),this.initEventListeners(),this.initData(a)}setCurrentState(e,r=!1){let n=r&&this.currentIndex===e.index-1;this.currentState={...this.buildCurrentState(),...e},this.currentIndex=this.currentState.index,this.states[this.currentIndex]=this.currentState,n&&(this.states=this.states.slice(0,this.currentIndex+1)),this.historyStorage.set(this.currentIndex,this.currentState),ne(this.currentState,this.history.state)||this.realReplaceState.apply(this.history,[this.currentState,this.currentState.title,window.location.href]),setTimeout(()=>this.dispatchEvent(new vt(this.currentItem())),0)}installProxies(){let e=r=>(n,a,[i,s,l])=>{let d=r(),f={...d===this.currentIndex?this.currentState:void 0,...i,index:d,href:typeof l=="string"?l:(l??this.windowLocation()).href};n.apply(a,[f,s,l]),this.setCurrentState(f,!0)};this.history.pushState=new Proxy(this.history.pushState,{apply:e(()=>this.currentIndex+1)}),this.history.replaceState=new Proxy(this.history.replaceState,{apply:e(()=>this.currentIndex)})}initEventListeners(){window.addEventListener("popstate",e=>this.setCurrentState(e.state)),document.querySelector("title")==null&&document.head.append(document.createElement("title")),new MutationObserver(()=>this.updateCurrentState({title:document.title})).observe(document.querySelector("title"),{subtree:!0,characterData:!0,childList:!0})}initData(e){for(let r=this.history.length-1;r>=0;r--)e?this.states[r]=this.historyStorage.get(r):setTimeout(()=>this.states[r]=this.historyStorage.get(r),this.history.length-r)}updateCurrentState(e){var r;let n={...this.buildCurrentState(),...e,index:this.currentIndex,title:(r=e?.title)!==null&&r!==void 0?r:this.currentState.title};this.setCurrentState(n)}addHistoryChangeListener(e){this.addEventListener(vt.eventName,e)}removeHistoryChangeListener(e){this.removeEventListener(vt.eventName,e)}currentItem(){return de(this.currentState)}back(){let e=this.previousDifferentMajorPosition();e>=0?this.history.go(e-this.currentIndex):this.currentIndex!==this.initialIndex?this.history.go(this.initialIndex-this.currentIndex):this.history.back()}backwardItem(){return de(this.states[this.previousDifferentMajorPosition()])}previousDifferentMajorPosition(){let e=this.currentIndex>0?this.currentIndex-1:0;for(;e>0&&!this.isDifferentMajorState(e);)e--;return e}forward(){let e=this.nextMajorPosition();e&&e<this.states.length?this.history.go(e-this.currentIndex):this.history.forward()}forwardItem(){let e=this.nextMajorPosition();if(e)return de(this.states[e])}nextMajorPosition(){let e=this.currentIndex;if(!(e>=this.states.length)){do e++;while(e<this.states.length&&!this.isDifferentMajorState(e));return this.getHigherPositionInTheSameState(e)}}getHigherPositionInTheSameState(e){var r;let n=(r=this.states[e])===null||r===void 0?void 0:r.majorStateId;if(!n)return e;let a=e,i=e+1;for(;this.states.length>i&&!this.isDifferentMajorState(i,n);)this.hasState(i)&&(a=i),i++;return a}buildCurrentState(){var e,r;return{...this.history.state,index:this.currentIndex,href:this.windowLocation().href,title:(r=(e=this.history.state)===null||e===void 0?void 0:e.title)!==null&&r!==void 0?r:document.title}}hasState(e){return this.states[e]!=null}isDifferentMajorState(e,r){var n;if(!this.hasState(e))return!1;let a=r??this.currentState.majorStateId,i=(n=this.states[e])===null||n===void 0?void 0:n.majorStateId;return i==null||i!=a}};window.FluidTopicsInternalHistoryService==null&&(window.FluidTopicsInternalHistoryService=yo.build(),window.FluidTopicsHistoryService={currentItem:()=>window.FluidTopicsInternalHistoryService.currentItem(),back:()=>window.FluidTopicsInternalHistoryService.back(),forward:()=>window.FluidTopicsInternalHistoryService.forward(),backwardItem:()=>window.FluidTopicsInternalHistoryService.backwardItem(),forwardItem:()=>window.FluidTopicsInternalHistoryService.forwardItem(),addHistoryChangeListener:t=>window.FluidTopicsInternalHistoryService.addHistoryChangeListener(t),removeHistoryChangeListener:t=>window.FluidTopicsInternalHistoryService.removeHistoryChangeListener(t)});var $c=z`
87
87
  `;function Wc(t,e){let{authenticationRequired:r,session:n}=_.getState();return r&&!n?.sessionAuthenticated?Promise.resolve(e):t()}var go=class extends qt{async updateUiLocale(e){return(await this.awaitApi).updateUiLocale(e)}};var ka=class t extends ft{static build(e){return new t(_,e)}constructor(e,r){super(),this.store=e,this.cache=new Ae,this.withManualResources=!0,this.localesConfiguration=null,this.userLocaleService=new go,this.cleanSessionDebouncer=new fe,this.reloadDebouncer=new fe(500),this.apiProvider=r??(()=>bt.get())}setWithManualResources(e){this.withManualResources=e,this.updateIfNeeded()}async initService(){this.store.addEventListener(Kt.eventName,this.reloadConfiguration)}async updateIfNeeded(){this.apiProvider()&&(this.withManualResources||(this.store.getState().session==null&&this.updateSession(),this.store.getState().metadataConfiguration==null&&this.updateMetadataConfiguration()),this.localesConfiguration==null&&this.updateLocalesConfiguration(),(this.store.getState().availableContentLocales==null||this.store.getState().availableContentLocales.length==0)&&this.updateAvailableContentLocales())}async updateSession(){let e=await this.cache.get("session",async()=>{let r=await this.apiProvider().getCurrentSession();return r.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run(()=>{this.cache.clear("session"),this.setSession(void 0)},r.idleTimeoutInMillis),r});this.setSession(e)}async updateMetadataConfiguration(){this.setMetadataConfiguration(await this.cache.get("metadataConfiguration",()=>this.apiProvider().getMetadataConfiguration()))}async updateLocalesConfiguration(){this.setLocalesConfiguration(await this.cache.get("localesConfiguration",()=>this.apiProvider().getLocalesConfiguration()))}async updateAvailableContentLocales(){var e;let r=await this.cache.get("availableContentLocales",()=>Wc(()=>this.apiProvider().getAvailableSearchLocales(),{contentLocales:[]}));this.setAvailableContentLocales((e=r.contentLocales)!==null&&e!==void 0?e:[])}reloadConfiguration(){var e;(e=this.cache)===null||e===void 0||e.clear("availableContentLocales"),typeof this.updateAvailableContentLocales=="function"&&this.updateAvailableContentLocales()}setBaseUrl(e){this.store.actions.baseUrl(e),window.fluidTopicsBaseUrl=e}setApiIntegrationIdentifier(e){this.store.actions.apiIntegrationIdentifier(e)}setApiIntegrationAppVersion(e){this.store.actions.apiIntegrationAppVersion(e)}setUiLocale(e){this.store.actions.uiLocale(e)}setLocalesConfiguration(e){var r,n,a,i,s;this.localesConfiguration=e,this.store.actions.defaultLocales(this.localesConfiguration.defaultLocales),this.store.actions.availableUiLocales((r=this.localesConfiguration.availableUiLocales)!==null&&r!==void 0?r:[]),this.store.actions.searchInAllLanguagesAllowed((n=this.localesConfiguration.allLanguagesAllowed)!==null&&n!==void 0?n:!1),this.store.actions.searchLanguageSetsUiLanguage((a=this.localesConfiguration.searchLanguageSetsUiLanguage)!==null&&a!==void 0?a:!1),this.store.actions.uiLanguageSetsSearchLanguage((i=this.localesConfiguration.uiLanguageSetsSearchLanguage)!==null&&i!==void 0?i:!1),this.store.actions.uiLanguageSetsReaderLanguage((s=this.localesConfiguration.uiLanguageSetsReaderLanguage)!==null&&s!==void 0?s:!1),setTimeout(()=>this.updateIfNeeded())}setAvailableContentLocales(e){this.store.actions.availableContentLocales(e),setTimeout(()=>this.updateIfNeeded())}stopReloadDebouncer(){this.reloadDebouncer.cancel()}requestUiLocaleUpdate(e){this.userLocaleService.updateUiLocale({uiLocale:e}).then(r=>{r.uiLocaleChanged&&(this.reloadDebouncer.run(()=>window.location.reload()),this.store.dispatchEvent(new Ar(r)))}).catch(()=>{})}setMetadataConfiguration(e){this.store.actions.metadataConfiguration(e),setTimeout(()=>this.updateIfNeeded())}setNoCustom(e){this.store.actions.noCustom(e)}setEditorMode(e){this.store.actions.editorMode(e)}setNoCustomComponent(e){this.store.actions.noCustomComponent(e)}setSession(e){this.store.actions.session(e),setTimeout(()=>this.updateIfNeeded())}setOpenExternalDocumentInNewTab(e){this.store.actions.openExternalDocumentInNewTab(e)}setNavigatorOnline(e){this.store.actions.navigatorOnline(e)}setForcedOffline(e){this.store.actions.forcedOffline(e)}setAuthenticationRequired(e){this.store.actions.authenticationRequired(e)}},Rr=ka.build();var X=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},G=class extends Me{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.apiIntegrationAppVersion="ft-integration-app-version",this.uiLocale="en-US",this.editorMode=!1,this.noCustom=!1,this.openExternalDocumentInNewTab=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.navigatorOnline=!1,this.forcedOffline=!1,this.authenticationRequired=!1,this.messageContexts=[],this.stateManager=Rr}render(){return Se`
88
88
  <slot></slot>
89
- `}connectedCallback(){super.connectedCallback(),this.stateManager.initService()}disconnectedCallback(){super.disconnectedCallback()}update(e){var r;super.update(e),e.has("baseUrl")&&this.stateManager.setBaseUrl(this.baseUrl),e.has("apiIntegrationIdentifier")&&this.stateManager.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),e.has("apiIntegrationAppVersion")&&this.stateManager.setApiIntegrationAppVersion(this.apiIntegrationAppVersion),e.has("uiLocale")&&this.stateManager.setUiLocale(this.uiLocale),e.has("metadataConfiguration")&&this.stateManager.setMetadataConfiguration(this.metadataConfiguration),e.has("noCustom")&&this.stateManager.setNoCustom(this.noCustom),e.has("editorMode")&&this.stateManager.setEditorMode(this.editorMode),e.has("noCustomComponent")&&this.stateManager.setNoCustomComponent(this.noCustomComponent),e.has("session")&&this.stateManager.setSession(this.session),e.has("messageContexts")&&this.messageContexts!=null&&this.messageContexts.forEach(n=>Bc.addContext(n)),e.has("openExternalDocumentInNewTab")&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("navigatorOnline")&&this.stateManager.setNavigatorOnline(this.navigatorOnline),e.has("forcedOffline")&&this.stateManager.setForcedOffline(this.forcedOffline),e.has("authenticationRequired")&&this.stateManager.setAuthenticationRequired(this.authenticationRequired),e.has("withManualResources")&&((r=this.stateManager)===null||r===void 0||r.setWithManualResources(this.withManualResources)),setTimeout(()=>this.stateManager.updateIfNeeded())}};G.elementDefinitions={};G.styles=$c;X([L()],G.prototype,"baseUrl",void 0);X([L()],G.prototype,"apiIntegrationIdentifier",void 0);X([L()],G.prototype,"apiIntegrationAppVersion",void 0);X([L()],G.prototype,"uiLocale",void 0);X([ue(null)],G.prototype,"availableUiLocales",void 0);X([ue(null)],G.prototype,"metadataConfiguration",void 0);X([L({type:Boolean})],G.prototype,"editorMode",void 0);X([L({type:Boolean})],G.prototype,"noCustom",void 0);X([L({type:Boolean})],G.prototype,"openExternalDocumentInNewTab",void 0);X([L({converter:{fromAttribute(t){return t==="false"?!1:t==="true"||(t??!1)}}})],G.prototype,"noCustomComponent",void 0);X([L({type:Boolean})],G.prototype,"withManualResources",void 0);X([L({type:Boolean})],G.prototype,"navigatorOnline",void 0);X([L({type:Boolean})],G.prototype,"forcedOffline",void 0);X([L({type:Boolean})],G.prototype,"authenticationRequired",void 0);X([ue([])],G.prototype,"messageContexts",void 0);X([ue(void 0)],G.prototype,"session",void 0);var zc={"ft-app-context":G};ar(zc);var bo=class extends J{constructor(e){super(!0,e),this.cache.registerFinal("search-configuration",async()=>(await this.awaitApi).getSearchConfiguration())}async launchSearch(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters),facets:[...e.facets].sort((n,a)=>n.id.localeCompare(a.id))};return this.cache.get("search-"+this.hash(r),async()=>(await this.awaitApi).search(e),120*1e3)}async launchSuggest(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters)};return this.cache.get("suggest-"+this.hash(r),async()=>(await this.awaitApi).getSuggestions(e),120*1e3)}async getAvailableSearchLocales(){return this.cache.get("available-locales",async()=>(await this.awaitApi).getAvailableSearchLocales())}async getConfiguration(){return this.cache.get("search-configuration")}sortFilters(e){return e.map(r=>r.valueFilter==null?r:{...r,valueFilter:{...r.valueFilter,values:[...r.valueFilter.values].sort((n,a)=>n.localeCompare(a))}}).sort((r,n)=>r.key.localeCompare(n.key))}};var vo=class extends CustomEvent{constructor(e){super("ft-search-load-error",{detail:e})}},xo=class extends CustomEvent{constructor(e){super("ft-search-request-change",{detail:e})}},So=class extends CustomEvent{constructor(e,r,n){super("ft-search-results-change",{detail:{request:e,paging:r,spellcheck:n}})}},Ir=class t extends Event{constructor(){super(t.eventName)}};Ir.eventName="search-context-clear-all-filters";var hf=t=>t.request.virtualField===ht.TITLE_ONLY&&t.request.scope===zt.DOCUMENTS,mf=t=>t.request.keywordMatch==Ze.MANDATORY,Tr=class t extends ft{static build(e,r){return new t(Nc(e.trim()||"context"),r)}constructor(e,r){super(),this.store=e,this.ignoreEmptyQuery=!1,this.canUpdateUiLocale=!1,this.openExternalDocumentInNewTab=!1,this.onNewNeededRequest=n=>{n==Or.CLUSTERED_SEARCH&&this.launchSearch(this.buildSearchRequest(this.store.getState()))},this.localesDebouncer=new fe(10),this.searchDebouncer=new fe(100),this.launchSearch=n=>this.searchDebouncer.run(()=>this.fetchSearchData(n??this.buildSearchRequest(this.store.getState()))),this.buildSearchRequest=n=>({...n.request,facets:this.facetIds.map(a=>({id:a}))}),this.suggestDebouncer=new fe(1e3),this.launchSuggest=n=>this.suggestDebouncer.run(()=>this.fetchSuggestData(n??this.buildSuggestRequest(this.store.getState()))),this.buildSuggestRequest=n=>{var a;return{input:n.liveQuery,metadataFilters:n.request.metadataFilters,sort:(a=n.request.sort)!==null&&a!==void 0?a:[],sortId:n.request.sortId,contentLocale:n.request.contentLocale,scope:n.request.scope,keywordMatch:n.request.keywordMatch}},this.service=r??new bo,this.service.cache.addEventListener("clear-cache",n=>{n.detail.clearedKeys.includes("available-locales")&&this.updateLocales()}),this.searchWatcher=Ht(e,this.buildSearchRequest,this.launchSearch),this.suggestWatcher=Ht(e,this.buildSuggestRequest,this.launchSuggest)}async initService(){return this.updateLocales(),this.service.getConfiguration().then(e=>{this.store.actions.configuration(e),this.setSortId(this.store.getState().request.sortId)}),this.launchSearch()}updateSearchRequest(e,r=!1){let n=de(this.store.getState().request);delete n.changedByConfiguration,this.store.actions.setRequest({...n,paging:{perPage:n.paging.perPage,page:r?1:n.paging.page},...e})}setQuery(e){this.updateSearchRequest({query:e},!0),this.setLiveQuery(e)}setContentLocale(e){var r,n;let a=(r=this.store.getState().locales)!==null&&r!==void 0?r:[],i=this.store.getState().request.contentLocale;if(e!=i){if(a.length>0){let s=l=>a.some(d=>d.lang==l);s(e)||(e=s(i)?i:a[0].lang)}this.updateSearchRequest({contentLocale:e,metadataFilters:[]},!0),this.canUpdateUiLocale&&(!((n=Rr.localesConfiguration)===null||n===void 0)&&n.searchLanguageSetsUiLanguage)&&e&&Rr.requestUiLocaleUpdate(e)}return e}forceContentLocale(e){this.updateSearchRequest({contentLocale:e})}setPageSize(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,perPage:isNaN(e)?20:Pe(1,e,1e3)}})}setPageNumber(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,page:isNaN(e)?1:Math.max(1,e)}})}get sortOptions(){var e,r;return(r=(e=this.store.getState().configuration)===null||e===void 0?void 0:e.sortOptions)!==null&&r!==void 0?r:[]}setSort(e){this.updateSearchRequest({sort:e},!0)}setSortId(e,r=!1){var n;let a=r?{changedByConfiguration:!0}:{};if(e==null||this.sortOptions.length==0)return this.updateSearchRequest({sortId:e,...a},!0),e;let i=(n=this.sortOptions.find(s=>s.id==e))!==null&&n!==void 0?n:this.sortOptions[0];return this.updateSearchRequest({sortId:i.id,...a},!0),i.id}setFilters(e){let r=e.filter(n=>!n.valueFilter||n.valueFilter.values.length>0);this.updateSearchRequest({metadataFilters:r},!0)}setClusterSortCriterion(e){this.updateSearchRequest({clusterSortCriterions:e})}setSearchInDocumentTitlesOnly(e){e?this.updateSearchRequest({virtualField:ht.TITLE_ONLY,scope:zt.DOCUMENTS},!0):this.updateSearchRequest({virtualField:ht.EVERYWHERE,scope:zt.DEFAULT},!0)}setKeywordMatch(e){this.updateSearchRequest({keywordMatch:e},!0)}setVirtualField(e){this.updateSearchRequest({virtualField:e},!0)}get searchInDocumentTitlesOnly(){return hf(this.store.getState())}get keywordMatch(){return mf(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.dispatchEvent(new Ir)}addFacet(e){this.facetIds=[...this.facetIds,e]}replaceFacet(e,r){let n=this.facetIds.filter(a=>a!=e);r&&n.push(r),this.facetIds=n}get facetIds(){var e;let r=this.store.getState().request;return[...new Set([...r.facets.map(n=>n.id),...((e=r.metadataFilters)!==null&&e!==void 0?e:[]).map(n=>n.key)])]}set facetIds(e){let n=[...new Set(e)].map(a=>({id:a}));this.updateSearchRequest({facets:n})}setFilter(e,r){this.setValueFilter(e,r)}setValueFilter(e,r){let n=this.store.getState().request.metadataFilters,a={key:e,valueFilter:{values:r,negative:!1}},i=[...n.filter(s=>!s.valueFilter),...n.filter(s=>s.valueFilter&&s.key!==a.key),a];this.setFilters(i)}setDateFilter(e,r){let n=this.store.getState().request.metadataFilters,a={key:e,dateFilter:{type:r}},i=[...n.filter(s=>!s.dateFilter),...n.filter(s=>s.dateFilter&&s.key!==a.key),a];this.setFilters(i)}removeDateFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(a=>!a.dateFilter),...r.filter(a=>a.dateFilter&&a.key!==e)];this.setFilters(n)}setRangeFilter(e,r,n){let a=this.store.getState().request.metadataFilters,i={key:e,rangeFilter:{from:r,to:n}},s=[...a.filter(l=>!l.rangeFilter),...a.filter(l=>l.rangeFilter&&l.key!==i.key),i];this.setFilters(s)}removeRangeFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(a=>!a.rangeFilter),...r.filter(a=>a.rangeFilter&&a.key!==e)];this.setFilters(n)}setLiveQuery(e){this.store.actions.liveQuery(e)}setRequest(e){this.updateSearchRequest({...e,facets:this.store.getState().request.facets},!0),this.setLiveQuery(e.query)}setScope(e){this.updateSearchRequest({scope:e})}setOtherQueryParams(e){this.updateSearchRequest({otherQueryParams:e})}setIgnoreEmptyQuery(e){this.ignoreEmptyQuery=e}setOpenExternalDocumentInNewTab(e){this.openExternalDocumentInNewTab=e}setCanUpdateUiLocale(e){this.canUpdateUiLocale=e}updateLocales(){return this.localesDebouncer.run(async()=>this.store.actions.locales((await this.service.getAvailableSearchLocales()).contentLocales))}async fetchSearchData(e){var r,n,a,i,s;if((r=this.cancelableSearch)===null||r===void 0||r.cancel(),!!this.isRequestNeeded(Or.CLUSTERED_SEARCH))try{if(this.store.actions.paging(void 0),this.ignoreEmptyQuery&&e.query.length==0)this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0);else{!((n=this.store.getState().results)===null||n===void 0)&&n.length||this.store.actions.results(void 0),this.cancelableSearch=At(this.service.launchSearch(e));let l=await this.cancelableSearch;if(this.store.actions.announcements(l.announcements),l.paging.currentPage<=1)this.store.actions.results(l.results),this.store.actions.facets(l.facets),this.store.actions.spellcheck(l.spellcheck);else{let d=((a=this.store.getState().results)!==null&&a!==void 0?a:[]).concat(l.results);this.store.actions.results(d),this.store.commands.clear(/^focus-result-/),this.store.commands.add({type:`focus-result-${(l.paging.currentPage-1)*((i=e.paging.perPage)!==null&&i!==void 0?i:20)+1}`})}this.store.actions.paging(l.paging)}}catch(l){l instanceof Oe||(console.error(l),(s=this.errorHandler)===null||s===void 0||s.call(this,l))}}async fetchSuggestData(e){var r;try{if((r=this.cancelableSuggest)===null||r===void 0||r.cancel(),e.input.length!=0&&e.input.length<3)return;this.cancelableSuggest=At(this.service.launchSuggest(e));let n=await this.cancelableSuggest;this.store.actions.suggestResults(n.suggestions)}catch(n){!(n instanceof Oe)&&this.errorHandler&&this.errorHandler(n)}}clear(){this.store.clear()}clearResults(){this.store.actions.paging(void 0),this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0)}};var Gc=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},Na=class extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}},jc=Symbol("registerInterval"),Pa=Symbol("registerAttempts"),yf=40,gf=Z(Symbol("toFtSearchComponent"),function(t){class e extends t{constructor(){super(...arguments),this.neededSearchRequests=[]}willUpdate(n){var a,i,s;super.willUpdate(n),n.has("neededSearchRequests")&&((a=this.stateManager)===null||a===void 0||a.unregisterComponent(this,(i=n.get("neededSearchRequests"))!==null&&i!==void 0?i:[]),(s=this.stateManager)===null||s===void 0||s.registerComponent(this,this.neededSearchRequests))}setSearchStateManager(n){this.clearStateManager(),this.stateManager=n,this.stateManager.registerComponent(this,this.neededSearchRequests),this.addStore(n.store,"search")}clearStateManager(){this.stateManager&&(this.stateManager.unregisterComponent(this,this.neededSearchRequests),this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[Pa]=0,this.tryToRegisterToContext(),this[jc]=window.setInterval(()=>this.tryToRegisterToContext(),50)}tryToRegisterToContext(){this.stateManager!=null||this[Pa]>yf?window.clearInterval(this[jc]):(this[Pa]++,this.dispatchEvent(new Na))}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return Gc([re()],e.prototype,"stateManager",void 0),Gc([re({hasChanged:ke})],e.prototype,"neededSearchRequests",void 0),e}),Vc=class extends gf(Me){};function Eo(t){return t.filter(e=>e.key==="ft:lastEdition").filter(e=>!e.valueFilter).map(e=>e.dateFilter?e.dateFilter.type:"CUSTOM").shift()}function Co(t){var e,r;return t.dateFilter?{key:t.key,type:"DATE",dateValue:t.dateFilter.type}:t.rangeFilter?{key:t.key,type:"RANGE",from:t.rangeFilter.from,to:t.rangeFilter.to}:{key:t.key,values:(e=t.valueFilter)===null||e===void 0?void 0:e.values,negative:(r=t.valueFilter)===null||r===void 0?void 0:r.negative}}var Oo=class{constructor(e,r){this.store=e,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.enableAnalyticsEvents=!0,this.appName=void 0,this.appVersion=void 0,this.document=void 0,this.sendEvent=n=>{if(!this.canSendEvent()||!n)return;let a=this.store.getState().request;this.document==null?this.sendKhubSearchEvent(a,n):this.sendDocumentSearchEvent(a,n)},this.eventsService=r??new mo,this.resultsWatcher=Ht(e,n=>n.results,this.sendEvent)}setEnableAnalyticsEvents(e){this.enableAnalyticsEvents=e}setAppName(e){this.appName=e}setAppVersion(e){this.appVersion=e}setDocumentSearch(e){this.document=e}setDocumentSearchFromMap(e){this.setDocumentSearch(this.eventsService.convertMapToAnalyticsDocument(e))}initAppInfo(){let{apiIntegrationIdentifier:e,apiIntegrationAppVersion:r}=_.getState();this.setAppName(e??"unknown"),this.setAppVersion(r??"unknown")}canSendEvent(){if(this.appName==null||this.appVersion==null)return console.debug("ft-search-context.eventManager is not initialized. No events will be sent!"),!1;let{editorMode:e}=_.getState();return this.enableAnalyticsEvents&&!e}sendKhubSearchEvent(e,r){let n={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.KHUB__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:r.length},searchQuery:{terms:e.query,searchType:e.virtualField,lastUpdate:Eo(e.metadataFilters),facets:e.metadataFilters.map(a=>Co(a))}};this.eventsService.sendKhubSearchEvent(n)}sendDocumentSearchEvent(e,r){if(e.metadataFilters.find(a=>{var i;return a.key==="ft:publicationId"&&((i=a.valueFilter)===null||i===void 0?void 0:i.values[0])===this.document.id})!==void 0){let a={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.DOCUMENT__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:r.length},searchQuery:{terms:e.query},document:this.document};this.eventsService.sendDocumentSearchEvent(a)}}sendResultClickedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,a;e.type==Le.TOPIC&&(a={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.SEARCH_PAGE__SELECT,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Eo(n.metadataFilters),facets:n.metadataFilters.map(s=>Co(s))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:a},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchPageSelectEvent(i)}sendResultContextMenuOpenedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,a;e.type==Le.TOPIC&&(a={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Eo(n.metadataFilters),facets:n.metadataFilters.map(s=>Co(s))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:a},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchResultOpenContextMenuEvent(i)}convertDocument(e){switch(e.type){case Le.MAP:return{id:e.map.mapId,title:e.map.title,type:qe.STRUCTURED_DOCUMENT,metadata:e.map.metadata};case Le.TOPIC:return{id:e.topic.mapId,title:e.topic.mapTitle,type:qe.STRUCTURED_DOCUMENT,metadata:e.topic.metadata};case Le.DOCUMENT:return{id:e.document.documentId,title:e.document.title,type:qe.UNSTRUCTURED_DOCUMENT,metadata:e.document.metadata,mimeType:e.document.mimeType};case Le.HTML_PACKAGE:return{id:e.htmlPackage.packageId,title:e.htmlPackage.title,type:qe.HTML_PACKAGE,metadata:e.htmlPackage.metadata};case Le.HTML_PACKAGE_PAGE:return{id:e.htmlPackagePage.packageId,title:e.htmlPackagePage.title,type:qe.HTML_PACKAGE,metadata:e.htmlPackagePage.metadata};default:throw new TypeError("Unknown type "+e.type)}}convertExternalLink(e){var r;return(r=cr(e))===null||r===void 0?void 0:r.originUrl}};var K=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},H=class extends Me{get stateManager(){if(this._stateManager==null){let e=this.searchServiceProvider?this.searchServiceProvider():void 0;this._stateManager=Tr.build(this.id||(""+Math.round(Math.random()*999e3)).padStart(6,"0"),e),this._stateManager.errorHandler=r=>this.handleLoadError(r),this.addStore(this.stateManager.store,"search")}return this._stateManager}get eventManager(){return this._eventManager==null&&(this._eventManager=new Oo(this.stateManager.store)),this._eventManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.filters=[],this.sort=[],this.otherQueryParams={},this._appIntegrationInfoReady=!1,this.addStore(_)}render(){return Se`
89
+ `}connectedCallback(){super.connectedCallback(),this.stateManager.initService()}disconnectedCallback(){super.disconnectedCallback()}update(e){var r;super.update(e),e.has("baseUrl")&&this.stateManager.setBaseUrl(this.baseUrl),e.has("apiIntegrationIdentifier")&&this.stateManager.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),e.has("apiIntegrationAppVersion")&&this.stateManager.setApiIntegrationAppVersion(this.apiIntegrationAppVersion),e.has("uiLocale")&&this.stateManager.setUiLocale(this.uiLocale),e.has("metadataConfiguration")&&this.stateManager.setMetadataConfiguration(this.metadataConfiguration),e.has("noCustom")&&this.stateManager.setNoCustom(this.noCustom),e.has("editorMode")&&this.stateManager.setEditorMode(this.editorMode),e.has("noCustomComponent")&&this.stateManager.setNoCustomComponent(this.noCustomComponent),e.has("session")&&this.stateManager.setSession(this.session),e.has("messageContexts")&&this.messageContexts!=null&&this.messageContexts.forEach(n=>Bc.addContext(n)),e.has("openExternalDocumentInNewTab")&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("navigatorOnline")&&this.stateManager.setNavigatorOnline(this.navigatorOnline),e.has("forcedOffline")&&this.stateManager.setForcedOffline(this.forcedOffline),e.has("authenticationRequired")&&this.stateManager.setAuthenticationRequired(this.authenticationRequired),e.has("withManualResources")&&((r=this.stateManager)===null||r===void 0||r.setWithManualResources(this.withManualResources)),setTimeout(()=>this.stateManager.updateIfNeeded())}};G.elementDefinitions={};G.styles=$c;X([L()],G.prototype,"baseUrl",void 0);X([L()],G.prototype,"apiIntegrationIdentifier",void 0);X([L()],G.prototype,"apiIntegrationAppVersion",void 0);X([L()],G.prototype,"uiLocale",void 0);X([ue(null)],G.prototype,"availableUiLocales",void 0);X([ue(null)],G.prototype,"metadataConfiguration",void 0);X([L({type:Boolean})],G.prototype,"editorMode",void 0);X([L({type:Boolean})],G.prototype,"noCustom",void 0);X([L({type:Boolean})],G.prototype,"openExternalDocumentInNewTab",void 0);X([L({converter:{fromAttribute(t){return t==="false"?!1:t==="true"||(t??!1)}}})],G.prototype,"noCustomComponent",void 0);X([L({type:Boolean})],G.prototype,"withManualResources",void 0);X([L({type:Boolean})],G.prototype,"navigatorOnline",void 0);X([L({type:Boolean})],G.prototype,"forcedOffline",void 0);X([L({type:Boolean})],G.prototype,"authenticationRequired",void 0);X([ue([])],G.prototype,"messageContexts",void 0);X([ue(void 0)],G.prototype,"session",void 0);var zc={"ft-app-context":G};ar(zc);var bo=class extends J{constructor(e){super(!0,e),this.cache.registerFinal("search-configuration",async()=>(await this.awaitApi).getSearchConfiguration())}async launchSearch(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters),facets:[...e.facets].sort((n,a)=>n.id.localeCompare(a.id))};return this.cache.get("search-"+this.hash(r),async()=>(await this.awaitApi).search(e),120*1e3)}async launchSuggest(e){let r={...e,metadataFilters:this.sortFilters(e.metadataFilters)};return this.cache.get("suggest-"+this.hash(r),async()=>(await this.awaitApi).getSuggestions(e),120*1e3)}async getAvailableSearchLocales(){return this.cache.get("available-locales",async()=>(await this.awaitApi).getAvailableSearchLocales())}async getConfiguration(){return this.cache.get("search-configuration")}sortFilters(e){return e.map(r=>r.valueFilter==null?r:{...r,valueFilter:{...r.valueFilter,values:[...r.valueFilter.values].sort((n,a)=>n.localeCompare(a))}}).sort((r,n)=>r.key.localeCompare(n.key))}};var vo=class extends CustomEvent{constructor(e){super("ft-search-load-error",{detail:e})}},xo=class extends CustomEvent{constructor(e){super("ft-search-request-change",{detail:e})}},So=class extends CustomEvent{constructor(e,r,n){super("ft-search-results-change",{detail:{request:e,paging:r,spellcheck:n}})}},Ir=class t extends Event{constructor(){super(t.eventName)}};Ir.eventName="search-context-clear-all-filters";var hf=t=>t.request.virtualField===ht.TITLE_ONLY&&t.request.scope===zt.DOCUMENTS,mf=t=>t.request.keywordMatch==Ze.MANDATORY,Tr=class t extends ft{static build(e,r){return new t(Nc(e.trim()||"context"),r)}constructor(e,r){super(),this.store=e,this.ignoreEmptyQuery=!1,this.canUpdateUiLocale=!1,this.openExternalDocumentInNewTab=!1,this.onNewNeededRequest=n=>{n==Or.CLUSTERED_SEARCH&&this.launchSearch(this.buildSearchRequest(this.store.getState()))},this.localesDebouncer=new fe(10),this.searchDebouncer=new fe(100),this.launchSearch=n=>this.searchDebouncer.run(()=>this.fetchSearchData(n??this.buildSearchRequest(this.store.getState()))),this.buildSearchRequest=n=>({...n.request,facets:this.facetIds.map(a=>({id:a}))}),this.suggestDebouncer=new fe(1e3),this.launchSuggest=n=>this.suggestDebouncer.run(()=>this.fetchSuggestData(n??this.buildSuggestRequest(this.store.getState()))),this.buildSuggestRequest=n=>{var a;return{input:n.liveQuery,metadataFilters:n.request.metadataFilters,sort:(a=n.request.sort)!==null&&a!==void 0?a:[],sortId:n.request.sortId,contentLocale:n.request.contentLocale,scope:n.request.scope,keywordMatch:n.request.keywordMatch}},this.service=r??new bo,this.service.cache.addEventListener("clear-cache",n=>{n.detail.clearedKeys.includes("available-locales")&&this.updateLocales()}),this.searchWatcher=Ht(e,this.buildSearchRequest,this.launchSearch),this.suggestWatcher=Ht(e,this.buildSuggestRequest,this.launchSuggest)}async initService(){return this.updateLocales(),this.service.getConfiguration().then(e=>{this.store.actions.configuration(e),this.setSortId(this.store.getState().request.sortId)}),this.launchSearch()}updateSearchRequest(e,r=!1){let n=de(this.store.getState().request);delete n.changedByConfiguration,this.store.actions.setRequest({...n,paging:{perPage:n.paging.perPage,page:r?1:n.paging.page},...e})}setQuery(e){this.updateSearchRequest({query:e},!0),this.setLiveQuery(e)}setContentLocale(e){var r,n;let a=(r=this.store.getState().locales)!==null&&r!==void 0?r:[],i=this.store.getState().request.contentLocale;if(e!=i){if(a.length>0){let s=l=>a.some(d=>d.lang==l);s(e)||(e=s(i)?i:a[0].lang)}this.updateSearchRequest({contentLocale:e,metadataFilters:[]},!0),this.canUpdateUiLocale&&(!((n=Rr.localesConfiguration)===null||n===void 0)&&n.searchLanguageSetsUiLanguage)&&e&&Rr.requestUiLocaleUpdate(e)}return e}forceContentLocale(e){this.updateSearchRequest({contentLocale:e})}setPageSize(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,perPage:isNaN(e)?20:Pe(1,e,1e3)}})}setPageNumber(e){let r=this.store.getState().request;this.updateSearchRequest({paging:{...r.paging,page:isNaN(e)?1:Math.max(1,e)}})}get sortOptions(){var e,r;return(r=(e=this.store.getState().configuration)===null||e===void 0?void 0:e.sortOptions)!==null&&r!==void 0?r:[]}setSort(e){this.updateSearchRequest({sort:e},!0)}setSortId(e,r=!1){var n;let a=r?{changedByConfiguration:!0}:{};if(e==null||this.sortOptions.length==0)return this.updateSearchRequest({sortId:e,...a},!0),e;let i=(n=this.sortOptions.find(s=>s.id==e))!==null&&n!==void 0?n:this.sortOptions[0];return this.updateSearchRequest({sortId:i.id,...a},!0),i.id}setFilters(e){let r=e.filter(n=>!n.valueFilter||n.valueFilter.values.length>0);this.updateSearchRequest({metadataFilters:r},!0)}setClusterSortCriterion(e){this.updateSearchRequest({clusterSortCriterions:e})}setSearchInDocumentTitlesOnly(e){e?this.updateSearchRequest({virtualField:ht.TITLE_ONLY,scope:zt.DOCUMENTS},!0):this.updateSearchRequest({virtualField:ht.EVERYWHERE,scope:zt.DEFAULT},!0)}setKeywordMatch(e){this.updateSearchRequest({keywordMatch:e},!0)}setVirtualField(e){this.updateSearchRequest({virtualField:e},!0)}get searchInDocumentTitlesOnly(){return hf(this.store.getState())}get keywordMatch(){return mf(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.dispatchEvent(new Ir)}addFacet(e){this.facetIds=[...this.facetIds,e]}replaceFacet(e,r){let n=this.facetIds.filter(a=>a!=e);r&&n.push(r),this.facetIds=n}get facetIds(){var e;let r=this.store.getState().request;return[...new Set([...r.facets.map(n=>n.id),...((e=r.metadataFilters)!==null&&e!==void 0?e:[]).map(n=>n.key)])]}set facetIds(e){let n=[...new Set(e)].map(a=>({id:a}));this.updateSearchRequest({facets:n})}setFilter(e,r){this.setValueFilter(e,r)}setValueFilter(e,r){let n=this.store.getState().request.metadataFilters,a={key:e,valueFilter:{values:r,negative:!1}},i=[...n.filter(s=>!s.valueFilter),...n.filter(s=>s.valueFilter&&s.key!==a.key),a];this.setFilters(i)}setDateFilter(e,r){let n=this.store.getState().request.metadataFilters,a={key:e,dateFilter:{type:r}},i=[...n.filter(s=>!s.dateFilter),...n.filter(s=>s.dateFilter&&s.key!==a.key),a];this.setFilters(i)}removeDateFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(a=>!a.dateFilter),...r.filter(a=>a.dateFilter&&a.key!==e)];this.setFilters(n)}setRangeFilter(e,r,n){let a=this.store.getState().request.metadataFilters,i={key:e,rangeFilter:{from:r,to:n}},s=[...a.filter(l=>!l.rangeFilter),...a.filter(l=>l.rangeFilter&&l.key!==i.key),i];this.setFilters(s)}removeRangeFilter(e){let r=this.store.getState().request.metadataFilters,n=[...r.filter(a=>!a.rangeFilter),...r.filter(a=>a.rangeFilter&&a.key!==e)];this.setFilters(n)}setLiveQuery(e){this.store.actions.liveQuery(e)}setRequest(e){this.updateSearchRequest({...e,facets:this.store.getState().request.facets},!0),this.setLiveQuery(e.query)}setScope(e){this.updateSearchRequest({scope:e})}setOtherQueryParams(e){this.updateSearchRequest({otherQueryParams:e})}setIgnoreEmptyQuery(e){this.ignoreEmptyQuery=e}setOpenExternalDocumentInNewTab(e){this.openExternalDocumentInNewTab=e}setCanUpdateUiLocale(e){this.canUpdateUiLocale=e}updateLocales(){return this.localesDebouncer.run(async()=>this.store.actions.locales((await this.service.getAvailableSearchLocales()).contentLocales))}async fetchSearchData(e){var r,n,a,i,s;if((r=this.cancelableSearch)===null||r===void 0||r.cancel(),!!this.isRequestNeeded(Or.CLUSTERED_SEARCH))try{if(this.store.actions.paging(void 0),this.ignoreEmptyQuery&&e.query.length==0)this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0);else{!((n=this.store.getState().results)===null||n===void 0)&&n.length||this.store.actions.results(void 0),this.cancelableSearch=At(this.service.launchSearch(e));let l=await this.cancelableSearch;if(this.store.actions.announcements(l.announcements),l.paging.currentPage<=1)this.store.actions.results(l.results),this.store.actions.facets(l.facets),this.store.actions.spellcheck(l.spellcheck);else{let d=((a=this.store.getState().results)!==null&&a!==void 0?a:[]).concat(l.results);this.store.actions.results(d),this.store.commands.clear(/^focus-result-/),this.store.commands.add({type:`focus-result-${(l.paging.currentPage-1)*((i=e.paging.perPage)!==null&&i!==void 0?i:20)+1}`})}this.store.actions.paging(l.paging)}}catch(l){l instanceof Oe||(console.error(l),(s=this.errorHandler)===null||s===void 0||s.call(this,l))}}async fetchSuggestData(e){var r;try{if((r=this.cancelableSuggest)===null||r===void 0||r.cancel(),e.input.length!=0&&e.input.length<3)return;this.cancelableSuggest=At(this.service.launchSuggest(e));let n=await this.cancelableSuggest;this.store.actions.suggestResults(n.suggestions)}catch(n){!(n instanceof Oe)&&this.errorHandler&&this.errorHandler(n)}}clear(){this.store.clear()}clearResults(){this.store.actions.paging(void 0),this.store.actions.results(void 0),this.store.actions.announcements(void 0),this.store.actions.facets(void 0),this.store.actions.spellcheck(void 0)}};var Gc=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},Na=class extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}},jc=Symbol("registerInterval"),Pa=Symbol("registerAttempts"),yf=40,gf=Z(Symbol("toFtSearchComponent"),function(t){class e extends t{constructor(){super(...arguments),this.neededSearchRequests=[]}willUpdate(n){var a,i,s;super.willUpdate(n),n.has("neededSearchRequests")&&((a=this.stateManager)===null||a===void 0||a.unregisterComponent(this,(i=n.get("neededSearchRequests"))!==null&&i!==void 0?i:[]),(s=this.stateManager)===null||s===void 0||s.registerComponent(this,this.neededSearchRequests))}setSearchStateManager(n){this.clearStateManager(),this.stateManager=n,this.stateManager.registerComponent(this,this.neededSearchRequests),this.addStore(n.store,"search")}clearStateManager(){this.stateManager&&(this.stateManager.unregisterComponent(this,this.neededSearchRequests),this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[Pa]=0,this.tryToRegisterToContext(),this[jc]=window.setInterval(()=>this.tryToRegisterToContext(),50)}tryToRegisterToContext(){this.stateManager!=null||this[Pa]>yf?window.clearInterval(this[jc]):(this[Pa]++,this.dispatchEvent(new Na))}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return Gc([re()],e.prototype,"stateManager",void 0),Gc([re({hasChanged:ke})],e.prototype,"neededSearchRequests",void 0),e}),Vc=class extends gf(Me){};function Eo(t){return t.filter(e=>e.key==="ft:lastEdition").filter(e=>!e.valueFilter).map(e=>e.dateFilter?e.dateFilter.type:"CUSTOM").shift()}function Co(t){var e,r;return t.dateFilter?{key:t.key,type:"DATE",dateValue:t.dateFilter.type}:t.rangeFilter?{key:t.key,type:"RANGE",from:t.rangeFilter.from,to:t.rangeFilter.to}:{key:t.key,values:(e=t.valueFilter)===null||e===void 0?void 0:e.values,negative:(r=t.valueFilter)===null||r===void 0?void 0:r.negative}}var Oo=class{constructor(e,r){this.store=e,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.enableAnalyticsEvents=!0,this.appName=void 0,this.appVersion=void 0,this.document=void 0,this.sendEvent=([n,a])=>{if(!this.canSendEvent()||!n)return;let i=this.store.getState().request;this.document==null?this.sendKhubSearchEvent(i,n,a):this.sendDocumentSearchEvent(i,n,a)},this.eventsService=r??new mo,this.resultsWatcher=Ht(e,n=>[n.results,n.paging],this.sendEvent)}setEnableAnalyticsEvents(e){this.enableAnalyticsEvents=e}setAppName(e){this.appName=e}setAppVersion(e){this.appVersion=e}setDocumentSearch(e){this.document=e}setDocumentSearchFromMap(e){this.setDocumentSearch(this.eventsService.convertMapToAnalyticsDocument(e))}initAppInfo(){let{apiIntegrationIdentifier:e,apiIntegrationAppVersion:r}=_.getState();this.setAppName(e??"unknown"),this.setAppVersion(r??"unknown")}canSendEvent(){if(this.appName==null||this.appVersion==null)return console.debug("ft-search-context.eventManager is not initialized. No events will be sent!"),!1;let{editorMode:e}=_.getState();return this.enableAnalyticsEvents&&!e}sendKhubSearchEvent(e,r,n){let a={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.KHUB__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:n?n.totalClustersCount:r.length},searchQuery:{terms:e.query,searchType:e.virtualField,lastUpdate:Eo(e.metadataFilters),facets:e.metadataFilters.map(i=>Co(i))}};this.eventsService.sendKhubSearchEvent(a)}sendDocumentSearchEvent(e,r,n){if(e.metadataFilters.find(i=>{var s;return i.key==="ft:publicationId"&&((s=i.valueFilter)===null||s===void 0?void 0:s.values[0])===this.document.id})!==void 0){let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.DOCUMENT__SEARCH,searchResponse:{autocorrect:this.store.getState().spellcheck!=null,nbResults:n?n.totalClustersCount:r.length},searchQuery:{terms:e.query},document:this.document};this.eventsService.sendDocumentSearchEvent(i)}}sendResultClickedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,a;e.type==Le.TOPIC&&(a={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.SEARCH_PAGE__SELECT,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Eo(n.metadataFilters),facets:n.metadataFilters.map(s=>Co(s))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:a},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchPageSelectEvent(i)}sendResultContextMenuOpenedEvent(e,r){if(!this.canSendEvent())return;let n=this.store.getState().request,a;e.type==Le.TOPIC&&(a={tocId:e.topic.tocId,title:e.topic.title});let i={offline:!1,appVersion:this.appVersion,appName:this.appName,name:pt.SEARCH_RESULT__OPEN_BROWSER_CONTEXT_MENU,searchQuery:{terms:n.query,searchType:n.virtualField,lastUpdate:Eo(n.metadataFilters),facets:n.metadataFilters.map(s=>Co(s))},searchResult:{rank:r,type:e.type,document:this.convertDocument(e),topic:a},externalLink:this.convertExternalLink(e)};this.eventsService.sendSearchResultOpenContextMenuEvent(i)}convertDocument(e){switch(e.type){case Le.MAP:return{id:e.map.mapId,title:e.map.title,type:qe.STRUCTURED_DOCUMENT,metadata:e.map.metadata};case Le.TOPIC:return{id:e.topic.mapId,title:e.topic.mapTitle,type:qe.STRUCTURED_DOCUMENT,metadata:e.topic.metadata};case Le.DOCUMENT:return{id:e.document.documentId,title:e.document.title,type:qe.UNSTRUCTURED_DOCUMENT,metadata:e.document.metadata,mimeType:e.document.mimeType};case Le.HTML_PACKAGE:return{id:e.htmlPackage.packageId,title:e.htmlPackage.title,type:qe.HTML_PACKAGE,metadata:e.htmlPackage.metadata};case Le.HTML_PACKAGE_PAGE:return{id:e.htmlPackagePage.packageId,title:e.htmlPackagePage.title,type:qe.HTML_PACKAGE,metadata:e.htmlPackagePage.metadata};default:throw new TypeError("Unknown type "+e.type)}}convertExternalLink(e){var r;return(r=cr(e))===null||r===void 0?void 0:r.originUrl}};var K=function(t,e,r,n){var a=arguments.length,i=a<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(i=(a<3?s(i):a>3?s(e,r,i):s(e,r))||i);return a>3&&i&&Object.defineProperty(e,r,i),i},H=class extends Me{get stateManager(){if(this._stateManager==null){let e=this.searchServiceProvider?this.searchServiceProvider():void 0;this._stateManager=Tr.build(this.id||(""+Math.round(Math.random()*999e3)).padStart(6,"0"),e),this._stateManager.errorHandler=r=>this.handleLoadError(r),this.addStore(this.stateManager.store,"search")}return this._stateManager}get eventManager(){return this._eventManager==null&&(this._eventManager=new Oo(this.stateManager.store)),this._eventManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.openExternalDocumentInNewTab=!1,this.filters=[],this.sort=[],this.otherQueryParams={},this._appIntegrationInfoReady=!1,this.addStore(_)}render(){return Se`
90
90
  <slot @register-ft-search-component=${this.registerComponent} @ft-search-result-click=${this.onResultClicked}
91
91
  @ft-search-result-open-context-menu=${this.onResultContextMenuOpened}></slot>
92
92
  `}willUpdate(e){super.willUpdate(e),e.has("_appIntegrationInfoReady")&&this._appIntegrationInfoReady&&this.eventManager.initAppInfo(),e.has("query")&&this.query!==void 0&&this.stateManager.setQuery(this.query),e.has("contentLocale")&&this.contentLocale!==void 0&&this.stateManager.forceContentLocale(this.contentLocale),e.has("filters")&&this.filters!==void 0&&this.stateManager.setFilters(this.filters),e.has("sortId")&&this.stateManager.setSortId(this.sortId),e.has("sort")&&this.sort!==void 0&&this.stateManager.setSort(this.sort),e.has("pageSize")&&this.pageSize!==void 0&&this.stateManager.setPageSize(this.pageSize),e.has("searchInDocumentTitlesOnly")&&this.searchInDocumentTitlesOnly!==void 0&&this.stateManager.setSearchInDocumentTitlesOnly(this.searchInDocumentTitlesOnly),e.has("keywordMatch")&&this.stateManager.setKeywordMatch(this.keywordMatch),e.has("scope")&&this.scope!==void 0&&this.stateManager.setScope(this.scope),e.has("virtualField")&&this.virtualField!==void 0&&this.stateManager.setVirtualField(this.virtualField),e.has("ignoreEmptyQuery")&&this.ignoreEmptyQuery!==void 0&&this.stateManager.setIgnoreEmptyQuery(this.ignoreEmptyQuery),e.has("openExternalDocumentInNewTab")&&this.openExternalDocumentInNewTab!==void 0&&this.stateManager.setOpenExternalDocumentInNewTab(this.openExternalDocumentInNewTab),e.has("otherQueryParams")&&this.otherQueryParams!==void 0&&this.stateManager.setOtherQueryParams(this.otherQueryParams),e.has("session")&&this.session!==void 0&&e.get("session")!=null&&(this.stateManager.service.clearCache(),this.stateManager.initService())}connectedCallback(){super.connectedCallback(),this.stateManager.initService(),this.stateManager.clearResults(),this.stateManager.setQuery(this.query),this.stateManager.forceContentLocale(this.contentLocale),this.stateManager.setFilters(this.filters),this.stateManager.setPageSize(this.pageSize),this.stateManager.setSort(this.sort),this.stateManager.setOtherQueryParams(this.otherQueryParams)}disconnectedCallback(){super.disconnectedCallback(),this.stateManager.clearResults()}contentAvailableCallback(e){super.contentAvailableCallback(e),e.has("request")&&this.request&&this.dispatchEvent(new xo(this.request)),e.has("paging")&&this.paging!==void 0&&this.dispatchEvent(new So(this.request,this.paging,this.spellcheckAutocorrect))}registerComponent(e){e.stopPropagation();let r=e.composedPath()[0];this.register(r)}register(e){e.setSearchStateManager(this.stateManager)}handleLoadError(e){this.dispatchEvent(new vo(e))}reloadSavedSearches(){wa.clearMySearches()}clear(){this.stateManager.clear()}onResultClicked(e){this.eventManager.sendResultClickedEvent(e.detail.result,e.detail.rank)}onResultContextMenuOpened(e){this.eventManager.sendResultContextMenuOpenedEvent(e.detail.result,e.detail.rank)}};H.elementDefinitions={};H.styles=Pc;K([ve({store:_.name})],H.prototype,"session",void 0);K([L()],H.prototype,"query",void 0);K([L()],H.prototype,"contentLocale",void 0);K([zr()],H.prototype,"pageSize",void 0);K([L({type:Boolean})],H.prototype,"searchInDocumentTitlesOnly",void 0);K([L()],H.prototype,"keywordMatch",void 0);K([L()],H.prototype,"scope",void 0);K([L()],H.prototype,"virtualField",void 0);K([L({type:Boolean})],H.prototype,"ignoreEmptyQuery",void 0);K([ve({store:_.name})],H.prototype,"openExternalDocumentInNewTab",void 0);K([ue([])],H.prototype,"filters",void 0);K([L()],H.prototype,"sortId",void 0);K([ue([])],H.prototype,"sort",void 0);K([ue({})],H.prototype,"otherQueryParams",void 0);K([ve({store:"search"})],H.prototype,"request",void 0);K([ve({store:"search"})],H.prototype,"paging",void 0);K([ve({store:"search",selector:t=>t.spellcheck})],H.prototype,"spellcheckAutocorrect",void 0);K([ve({store:_.name,selector:t=>t.apiIntegrationIdentifier!==void 0&&t.apiIntegrationAppVersion!==void 0})],H.prototype,"_appIntegrationInfoReady",void 0);K([L({attribute:!1})],H.prototype,"searchServiceProvider",void 0);var Kc={"ft-search-context":H};ar(Kc);})();
@@ -1,7 +1,7 @@
1
1
  import { FtSearchPageState } from "./model";
2
2
  import { FtReduxStore, ReduxWatcher } from "@fluid-topics/ft-wc-utils";
3
3
  import { FtSearchPageStateReducers } from "./redux";
4
- import { FtAnalyticsEventDocument, FtMap, FtSearchResultCluster, FtSearchResultClusterEntry } from "@fluid-topics/public-api";
4
+ import { FtAnalyticsEventDocument, FtMap, FtSearchResultCluster, FtSearchResultClusterEntry, FtSearchResultsPageInfo } from "@fluid-topics/public-api";
5
5
  import { FtAnalyticsEventsService } from "@fluid-topics/ft-app-context";
6
6
  export declare class FtAnalyticsSearchEventManager {
7
7
  readonly store: FtReduxStore<FtSearchPageState, FtSearchPageStateReducers>;
@@ -13,7 +13,7 @@ export declare class FtAnalyticsSearchEventManager {
13
13
  appName: string | undefined;
14
14
  appVersion: string | undefined;
15
15
  document: FtAnalyticsEventDocument | undefined;
16
- protected readonly resultsWatcher: ReduxWatcher<FtSearchPageState, FtSearchResultCluster[] | undefined>;
16
+ protected readonly resultsWatcher: ReduxWatcher<FtSearchPageState, [FtSearchResultCluster[] | undefined, FtSearchResultsPageInfo | undefined]>;
17
17
  constructor(store: FtReduxStore<FtSearchPageState, FtSearchPageStateReducers>, eventService?: FtAnalyticsEventsService);
18
18
  setEnableAnalyticsEvents(enableAnalyticsEvents: boolean): void;
19
19
  setAppName(appName: string): void;
@@ -11,20 +11,20 @@ export class FtAnalyticsSearchEventManager {
11
11
  this.appName = undefined;
12
12
  this.appVersion = undefined;
13
13
  this.document = undefined;
14
- this.sendEvent = (results) => {
14
+ this.sendEvent = ([results, paging]) => {
15
15
  if (!this.canSendEvent() || !results) {
16
16
  return;
17
17
  }
18
18
  const request = this.store.getState().request;
19
19
  if (this.document == undefined) {
20
- this.sendKhubSearchEvent(request, results);
20
+ this.sendKhubSearchEvent(request, results, paging);
21
21
  }
22
22
  else {
23
- this.sendDocumentSearchEvent(request, results);
23
+ this.sendDocumentSearchEvent(request, results, paging);
24
24
  }
25
25
  };
26
26
  this.eventsService = eventService !== null && eventService !== void 0 ? eventService : new FtAnalyticsEventsService();
27
- this.resultsWatcher = watch(store, (s) => s.results, this.sendEvent);
27
+ this.resultsWatcher = watch(store, (s) => [s.results, s.paging], this.sendEvent);
28
28
  }
29
29
  setEnableAnalyticsEvents(enableAnalyticsEvents) {
30
30
  this.enableAnalyticsEvents = enableAnalyticsEvents;
@@ -54,7 +54,7 @@ export class FtAnalyticsSearchEventManager {
54
54
  const { editorMode } = ftAppInfoStore.getState();
55
55
  return this.enableAnalyticsEvents && !editorMode;
56
56
  }
57
- sendKhubSearchEvent(request, results) {
57
+ sendKhubSearchEvent(request, results, paging) {
58
58
  const event = {
59
59
  offline: false,
60
60
  appVersion: this.appVersion,
@@ -62,7 +62,7 @@ export class FtAnalyticsSearchEventManager {
62
62
  name: FtAnalyticsEventName.KHUB__SEARCH,
63
63
  searchResponse: {
64
64
  autocorrect: this.store.getState().spellcheck != undefined,
65
- nbResults: results.length,
65
+ nbResults: paging ? paging.totalClustersCount : results.length,
66
66
  },
67
67
  searchQuery: {
68
68
  terms: request.query,
@@ -73,7 +73,7 @@ export class FtAnalyticsSearchEventManager {
73
73
  };
74
74
  this.eventsService.sendKhubSearchEvent(event);
75
75
  }
76
- sendDocumentSearchEvent(request, results) {
76
+ sendDocumentSearchEvent(request, results, paging) {
77
77
  const isRequestForThisDocument = request.metadataFilters.find((f) => {
78
78
  var _a;
79
79
  return f.key === "ft:publicationId" && ((_a = f.valueFilter) === null || _a === void 0 ? void 0 : _a.values[0]) === this.document.id;
@@ -86,7 +86,7 @@ export class FtAnalyticsSearchEventManager {
86
86
  name: FtAnalyticsEventName.DOCUMENT__SEARCH,
87
87
  searchResponse: {
88
88
  autocorrect: this.store.getState().spellcheck != undefined,
89
- nbResults: results.length,
89
+ nbResults: paging ? paging.totalClustersCount : results.length,
90
90
  },
91
91
  searchQuery: {
92
92
  terms: request.query,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluid-topics/ft-search-context",
3
- "version": "2.0.30",
3
+ "version": "2.0.31",
4
4
  "description": "Context block for integrated search components",
5
5
  "keywords": [
6
6
  "Lit"
@@ -19,12 +19,12 @@
19
19
  "url": "ssh://git@scm.mrs.antidot.net:2222/fluidtopics/ft-web-components.git"
20
20
  },
21
21
  "dependencies": {
22
- "@fluid-topics/ft-app-context": "2.0.30",
23
- "@fluid-topics/ft-wc-utils": "2.0.30",
22
+ "@fluid-topics/ft-app-context": "2.0.31",
23
+ "@fluid-topics/ft-wc-utils": "2.0.31",
24
24
  "lit": "3.1.0"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@fluid-topics/public-api": "1.0.123"
28
28
  },
29
- "gitHead": "842c87986021522cf8ebea6bf0880ea1a298b20e"
29
+ "gitHead": "01c1e8773c74a4a249a2cdfa5695b895e8e2f3e3"
30
30
  }