@fluid-topics/ft-search-context 1.1.11 → 1.1.12

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.
@@ -2,6 +2,6 @@
2
2
  `,r={setRequest:(t,s)=>{t.request=s.payload},setRequestQuery:(t,s)=>{t.request.query=s.payload},setRequestContentLocale:(t,s)=>{t.request.contentLocale=s.payload},setPageSize:(t,s)=>{t.request.paging.perPage=s.payload},setPageNumber:(t,s)=>{t.request.paging.page=s.payload},setRequestSort:(t,s)=>{t.request.sort=s.payload},setRequestFilters:(t,s)=>{t.request.filters=s.payload},setRequestFacets:(t,s)=>{t.request.facets=s.payload},setRequestVirtualField:(t,s)=>{t.request.virtualField=s.payload},setRequestScope:(t,s)=>{t.request.scope=s.payload},setResults:(t,s)=>{t.results=s.payload},setFacets:(t,s)=>{t.facets=s.payload},setSpellcheck:(t,s)=>{t.spellcheck=s.payload},setLocales:(t,s)=>{t.locales=s.payload},setPaging:(t,s)=>{t.paging=s.payload},setLiveQuery:(t,s)=>{t.liveQuery=s.payload},setSuggestResults:(t,s)=>{t.suggestResults=s.payload}};var o,a,h,c,u,l,d,f,v,w,y,E,S,p;!function(t){!function(s){var i={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(i.arrayBuffer)var e=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],n=ArrayBuffer.isView||function(t){return t&&e.indexOf(Object.prototype.toString.call(t))>-1};function r(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function o(t){return"string"!=typeof t&&(t=String(t)),t}function a(t){var s={next:function(){var s=t.shift();return{done:void 0===s,value:s}}};return i.iterable&&(s[Symbol.iterator]=function(){return s}),s}function h(t){this.map={},t instanceof h?t.forEach((function(t,s){this.append(s,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(s){this.append(s,t[s])}),this)}function c(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function u(t){return new Promise((function(s,i){t.onload=function(){s(t.result)},t.onerror=function(){i(t.error)}}))}function l(t){var s=new FileReader,i=u(s);return s.readAsArrayBuffer(t),i}function d(t){if(t.slice)return t.slice(0);var s=new Uint8Array(t.byteLength);return s.set(new Uint8Array(t)),s.buffer}function f(){return this.bodyUsed=!1,this._initBody=function(t){var s;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:i.blob&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:i.formData&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:i.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():i.arrayBuffer&&i.blob&&((s=t)&&DataView.prototype.isPrototypeOf(s))?(this._bodyArrayBuffer=d(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):i.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(t)||n(t))?this._bodyArrayBuffer=d(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):i.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i.blob&&(this.blob=function(){var t=c(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?c(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(l)}),this.text=function(){var t,s,i,e=c(this);if(e)return e;if(this._bodyBlob)return t=this._bodyBlob,s=new FileReader,i=u(s),s.readAsText(t),i;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var s=new Uint8Array(t),i=new Array(s.length),e=0;e<s.length;e++)i[e]=String.fromCharCode(s[e]);return i.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},i.formData&&(this.formData=function(){return this.text().then(y)}),this.json=function(){return this.text().then(JSON.parse)},this}h.prototype.append=function(t,s){t=r(t),s=o(s);var i=this.map[t];this.map[t]=i?i+", "+s:s},h.prototype.delete=function(t){delete this.map[r(t)]},h.prototype.get=function(t){return t=r(t),this.has(t)?this.map[t]:null},h.prototype.has=function(t){return this.map.hasOwnProperty(r(t))},h.prototype.set=function(t,s){this.map[r(t)]=o(s)},h.prototype.forEach=function(t,s){for(var i in this.map)this.map.hasOwnProperty(i)&&t.call(s,this.map[i],i,this)},h.prototype.keys=function(){var t=[];return this.forEach((function(s,i){t.push(i)})),a(t)},h.prototype.values=function(){var t=[];return this.forEach((function(s){t.push(s)})),a(t)},h.prototype.entries=function(){var t=[];return this.forEach((function(s,i){t.push([i,s])})),a(t)},i.iterable&&(h.prototype[Symbol.iterator]=h.prototype.entries);var v=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function w(t,s){var i,e,n=(s=s||{}).body;if(t instanceof w){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,s.headers||(this.headers=new h(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,n||null==t._bodyInit||(n=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=s.credentials||this.credentials||"same-origin",!s.headers&&this.headers||(this.headers=new h(s.headers)),this.method=(i=s.method||this.method||"GET",e=i.toUpperCase(),v.indexOf(e)>-1?e:i),this.mode=s.mode||this.mode||null,this.signal=s.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(n)}function y(t){var s=new FormData;return t.trim().split("&").forEach((function(t){if(t){var i=t.split("="),e=i.shift().replace(/\+/g," "),n=i.join("=").replace(/\+/g," ");s.append(decodeURIComponent(e),decodeURIComponent(n))}})),s}function E(t,s){s||(s={}),this.type="default",this.status=void 0===s.status?200:s.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in s?s.statusText:"OK",this.headers=new h(s.headers),this.url=s.url||"",this._initBody(t)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},f.call(w.prototype),f.call(E.prototype),E.prototype.clone=function(){return new E(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},E.error=function(){var t=new E(null,{status:0,statusText:""});return t.type="error",t};var S=[301,302,303,307,308];E.redirect=function(t,s){if(-1===S.indexOf(s))throw new RangeError("Invalid status code");return new E(null,{status:s,headers:{location:t}})},s.DOMException=t.DOMException;try{new s.DOMException}catch(t){s.DOMException=function(t,s){this.message=t,this.name=s;var i=Error(t);this.stack=i.stack},s.DOMException.prototype=Object.create(Error.prototype),s.DOMException.prototype.constructor=s.DOMException}function p(t,e){return new Promise((function(n,r){var o=new w(t,e);if(o.signal&&o.signal.aborted)return r(new s.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function c(){a.abort()}a.onload=function(){var t,s,i={status:a.status,statusText:a.statusText,headers:(t=a.getAllResponseHeaders()||"",s=new h,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var i=t.split(":"),e=i.shift().trim();if(e){var n=i.join(":").trim();s.append(e,n)}})),s)};i.url="responseURL"in a?a.responseURL:i.headers.get("X-Request-URL");var e="response"in a?a.response:a.responseText;n(new E(e,i))},a.onerror=function(){r(new TypeError("Network request failed"))},a.ontimeout=function(){r(new TypeError("Network request failed"))},a.onabort=function(){r(new s.DOMException("Aborted","AbortError"))},a.open(o.method,o.url,!0),"include"===o.credentials?a.withCredentials=!0:"omit"===o.credentials&&(a.withCredentials=!1),"responseType"in a&&i.blob&&(a.responseType="blob"),o.headers.forEach((function(t,s){a.setRequestHeader(s,t)})),o.signal&&(o.signal.addEventListener("abort",c),a.onreadystatechange=function(){4===a.readyState&&o.signal.removeEventListener("abort",c)}),a.send(void 0===o._bodyInit?null:o._bodyInit)}))}p.polyfill=!0,t.fetch||(t.fetch=p,t.Headers=h,t.Request=w,t.Response=E),s.Headers=h,s.Request=w,s.Response=E,s.fetch=p,Object.defineProperty(s,"t",{value:!0})}({})}("undefined"!=typeof self?self:void 0),function(t){t.black="black",t.green="green",t.blue="blue",t.purple="purple",t.red="red",t.orange="orange",t.yellow="yellow"}(o||(o={})),function(t){t.OFFICIAL="OFFICIAL",t.PERSONAL="PERSONAL",t.SHARED="SHARED"}(a||(a={})),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"}(h||(h={})),function(t){t.STARS="STARS",t.LIKE="LIKE",t.DICHOTOMOUS="DICHOTOMOUS",t.NO_RATING="NO_RATING"}(c||(c={})),function(t){t.LAST_WEEK="LAST_WEEK",t.LAST_MONTH="LAST_MONTH",t.LAST_YEAR="LAST_YEAR",t.CUSTOM="CUSTOM"}(u||(u={})),function(t){t.ASC="ASC",t.DESC="DESC"}(l||(l={})),function(t){t.ALPHA="ALPHA",t.NATURAL="NATURAL"}(d||(d={})),function(t){t.EVERYWHERE="EVERYWHERE",t.TITLE_ONLY="TITLE_ONLY",t.NONE="NONE"}(f||(f={})),function(t){t.ARTICLE="ARTICLE",t.BOOK="BOOK",t.SHARED_BOOK="SHARED_BOOK"}(v||(v={})),function(t){t.FLUIDTOPICS="FLUIDTOPICS",t.EXTERNAL="EXTERNAL"}(w||(w={})),function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC",t.PERSONAL_BOOK="PERSONAL_BOOK",t.SHARED_BOOK="SHARED_BOOK"}(y||(y={})),function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC"}(E||(E={})),function(t){t.DEFAULT="DEFAULT",t.DOCUMENTS="DOCUMENTS",t.ALL_TOPICS="ALL_TOPICS"}(S||(S={})),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.CONTENT_PUBLISHER="CONTENT_PUBLISHER",t.KHUB_ADMIN="KHUB_ADMIN",t.USERS_ADMIN="USERS_ADMIN",t.PORTAL_ADMIN="PORTAL_ADMIN",t.ADMIN="ADMIN",t.DEVELOPER="DEVELOPER"}(p||(p={})),p.PERSONAL_BOOK_SHARE_USER,p.PERSONAL_BOOK_USER,p.HTML_EXPORT_USER,p.PERSONAL_BOOK_USER,p.PDF_EXPORT_USER,p.PERSONAL_BOOK_USER,p.KHUB_ADMIN,p.CONTENT_PUBLISHER,p.ADMIN,p.KHUB_ADMIN,p.USERS_ADMIN,p.PORTAL_ADMIN,p.DEVELOPER,p.BETA_USER,p.DEBUG_USER;const b=i.css`
3
3
  `,m=s.FtReduxStore.get({name:"ft-app-info",reducers:{setBaseUrl:(t,s)=>{t.baseUrl=s.payload},setApiIntegrationIdentifier:(t,s)=>{t.apiIntegrationIdentifier=s.payload},setUiLocale:(t,s)=>{t.uiLocale=s.payload},setAvailableUiLocales:(t,s)=>{t.availableUiLocales=s.payload},setEditorMode:(t,s)=>{t.editorMode=s.payload},setNoCustom:(t,s)=>{t.noCustom=s.payload},setNoCustomComponent:(t,s)=>{t.noCustomComponent=s.payload},setSession:(t,s)=>{t.session=s.payload}},initialState:{uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],editorMode:!1,noCustom:!1,noCustomComponent:!1}});class A{static build(t){const{baseUrl:s,apiIntegrationIdentifier:i}=m.getState(),e=null!=t?t:i;if(s&&e&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(s,e,!0)}static get(t){var s;return null!=t?A.build(t):null!==(s=A.API)&&void 0!==s?s:A.API=A.build()}static await(t){return new Promise((s=>{let i=A.get(t);if(i)s(i);else{const e=m.subscribe((()=>{i=A.get(t),i&&(e(),s(i))}))}}))}}var g;const R=Symbol("clearAfterUnitTest");class T{constructor(t){this.messageContextProvider=t,this.defaultMessages={},this.cache=new s.CacheRegistry,this.listeners={},this.currentUiLocale="",this[g]=()=>{this.defaultMessages={},this.cache=new s.CacheRegistry,this.listeners={}},this.currentUiLocale=m.getState().uiLocale,m.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=m.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const s=t.name.toLowerCase();this.cache.setFinal(s,t),this.notify(s)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,i){var e;if(t=t.toLowerCase(),Object.keys(i).length>0){const n={...null!==(e=this.defaultMessages[t])&&void 0!==e?e:{},...i};s.deepEqual(this.defaultMessages[t],n)||(this.defaultMessages[t]=n,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,i,...e){var n,r,o;t=t.toLowerCase(),this.fetchContext(t);const a=null!==(r=null===(n=this.cache.getNow(t))||void 0===n?void 0:n.messages)&&void 0!==r?r:{};return new s.ParametrizedLabelResolver(null!==(o=this.defaultMessages[t])&&void 0!==o?o:{},a).resolve(i,...e)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,s){var i;return t=t.toLowerCase(),this.listeners[t]=null!==(i=this.listeners[t])&&void 0!==i?i:new Set,this.listeners[t].add(s),()=>{var i;return null===(i=this.listeners[t])||void 0===i?void 0:i.delete(s)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>s.delay(0).then((()=>t())).catch((()=>null)))))}}g=R,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new T((async(t,s)=>(await A.await()).getFluidTopicsMessageContext(t,s)))),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new T((async(t,s)=>(await A.await()).getCustomMessageContext(t,s))));const O=window.FluidTopicsI18nService;var U=function(t,s,i,e){for(var n,r=arguments.length,o=r<3?s:null===e?e=Object.getOwnPropertyDescriptor(s,i):e,a=t.length-1;a>=0;a--)(n=t[a])&&(o=(r<3?n(o):r>3?n(s,i,o):n(s,i))||o);return r>3&&o&&Object.defineProperty(s,i,o),o};class C extends s.FtLitElement{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.availableUiLocales=[],this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>A.get(),this.cache=new s.CacheRegistry,this.cleanSessionDebouncer=new s.Debouncer}render(){return i.html`
4
4
  <slot></slot>
5
- `}update(t){super.update(t),t.has("baseUrl")&&m.actions.setBaseUrl(this.baseUrl),t.has("apiIntegrationIdentifier")&&m.actions.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&m.actions.setUiLocale(this.uiLocale),t.has("noCustom")&&m.actions.setNoCustom(this.noCustom),t.has("editorMode")&&m.actions.setEditorMode(this.editorMode),t.has("noCustomComponent")&&m.actions.setNoCustomComponent(this.noCustomComponent),t.has("session")&&m.actions.setSession(this.session),t.has("availableUiLocales")&&m.actions.setAvailableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>O.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){const t=this.apiProvider();!this.withManualResources&&t&&(null==this.session&&(this.session=await this.cache.get("session",(async()=>{const s=await t.getCurrentSession();return s.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),s.idleTimeoutInMillis),s}))),null==this.availableUiLocales&&(this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>t.getAvailableUiLocales()))))}}C.elementDefinitions={},C.styles=b,U([e.property()],C.prototype,"baseUrl",void 0),U([e.property()],C.prototype,"apiIntegrationIdentifier",void 0),U([e.property()],C.prototype,"uiLocale",void 0),U([s.jsonProperty([])],C.prototype,"availableUiLocales",void 0),U([e.property({type:Boolean})],C.prototype,"editorMode",void 0),U([e.property({type:Boolean})],C.prototype,"noCustom",void 0),U([e.property({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],C.prototype,"noCustomComponent",void 0),U([e.property({type:Boolean})],C.prototype,"withManualResources",void 0),U([s.jsonProperty([])],C.prototype,"messageContexts",void 0),U([s.jsonProperty(void 0)],C.prototype,"session",void 0),U([e.property({type:Object})],C.prototype,"apiProvider",void 0);class L{async listMySearches(){var t;return(null===(t=m.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await A.await()).listMySearches(m.getState().session.profile.userId):[]}}const I=new s.CacheRegistry;class P{async listMyBookmarks(){return I.get("bookmarks",(async()=>(await A.await()).listMyBookmarks(m.getState().session.profile.userId)))}clearCache(){I.clear("bookmarks")}}const D=s.FtReduxStore.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});const _=new class{constructor(){this.currentSession=m.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new P,m.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:i}=m.getState();s.deepEqual(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==i?void 0:i.profile)||(this.currentSession=i,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){D.actions.savedSearches(void 0)}clearMyBookmarks(){D.actions.bookmarks(void 0)}async reloadMySearches(){const t=new L,s=await t.listMySearches();D.actions.savedSearches(s)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const s=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;D.actions.bookmarks(s)}}};s.customElement("ft-app-context")(C);class N{static async build(){return new N(await A.await())}constructor(t){this.api=t,this.cache=new s.CacheRegistry,this.cache.registerFinal("available-locales",(()=>this.api.getAvailableSearchLocales()))}async launchSearch(t){return this.api.search(t)}async launchSuggest(t){return this.api.getSuggestions(t)}async getAvailableSearchLocales(){return this.cache.get("available-locales")}}const B=t=>t.request.virtualField===f.TITLE_ONLY&&t.request.scope===S.DOCUMENTS;class M extends Event{constructor(){super(M.eventName)}}M.eventName="search-context-clear-all-filters";class F{static build(t){return new F((t=>s.FtReduxStore.get({name:"ft-search-"+t,initialState:{request:{query:"",filters:[],facets:[],sort:[],paging:{page:1,perPage:20}},liveQuery:""},reducers:r}))(t.trim()||"context"),N.build)}constructor(t,i){this.store=t,this.serviceProvider=i,this.ignoreEmptyQuery=!1,this.searchDebouncer=new s.Debouncer(100),this.suggestDebouncer=new s.Debouncer(300)}async initService(){return this.service=await this.serviceProvider(),this.store.actions.setLocales((await this.service.getAvailableSearchLocales()).contentLocales),this.launchSearch()}async awaitService(){for(;null==this.service;)await s.delay(5);return this.service}setQuery(t){this.store.actions.setRequestQuery(t),this.store.actions.setLiveQuery(t),this.store.actions.setPageNumber(1),this.launchSearch()}setContentLocale(t){let s=this.store.getState().locales,i=this.store.getState().request.contentLocale;if(t!=i){if(s){const e=t=>s.some((s=>s.lang==t));e(t)||(t=e(i)?i:s[0].lang)}this.store.actions.setRequestContentLocale(t),this.store.actions.setPageNumber(1),this.store.actions.setRequestFilters([]),this.launchSearch()}return t}setPageSize(t){this.store.actions.setPageSize(t),this.launchSearch()}setPageNumber(t){this.store.actions.setPageNumber(t),this.launchSearch()}setSort(t){this.store.actions.setRequestSort(t),this.store.actions.setPageNumber(1),this.launchSearch()}setFilters(t){const s=t.filter((t=>t.values.length>0));this.store.actions.setRequestFilters(s),this.store.actions.setPageNumber(1),s.forEach((t=>{this.facetIds.includes(t.key)||(this.facetIds=[...this.facetIds,t.key])})),this.launchSearch()}setSearchInDocumentTitlesOnly(t){t?(this.store.actions.setRequestVirtualField(f.TITLE_ONLY),this.store.actions.setRequestScope(S.DOCUMENTS)):(this.store.actions.setRequestVirtualField(f.EVERYWHERE),this.store.actions.setRequestScope(S.DEFAULT)),this.launchSearch()}get searchInDocumentTitlesOnly(){return B(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.eventBus.dispatchEvent(new M)}addFacet(t){this.facetIds=[...this.facetIds,t],this.launchSearch()}replaceFacet(t,s){let i=this.facetIds.filter((s=>s!=t));s&&i.push(s),this.facetIds=i,this.launchSearch()}get facetIds(){return this.store.getState().request.facets.map((t=>t.id))}set facetIds(t){let s=[...new Set(t)].map((t=>({id:t})));this.store.actions.setRequestFacets(s)}setFilter(t,s){let i=this.store.getState().request.filters,e={key:t,values:s,negative:!1},n=[...i.filter((s=>s.key!==t)),e];this.setFilters(n)}setLiveQuery(t){this.store.actions.setLiveQuery(t),this.launchSuggest()}setRequest(t){this.store.actions.setRequest(t),this.store.actions.setLiveQuery(t.query),this.store.actions.setPageNumber(1),this.launchSearch()}setScope(t){this.store.actions.setRequestScope(t),this.launchSearch()}setIgnoreEmptyQuery(t){this.ignoreEmptyQuery=t,this.launchSearch()}async launchSearch(){return await this.awaitService(),this.searchDebouncer.run((()=>this.fetchSearchData()))}async launchSuggest(){await this.awaitService(),this.suggestDebouncer.run((()=>this.fetchSuggestData()))}async fetchSearchData(){var t,i;try{null===(t=this.cancelableSearch)||void 0===t||t.cancel();let e=this.store.getState().request;if(this.store.actions.setPaging(void 0),this.ignoreEmptyQuery&&0==e.query.length)this.store.actions.setResults(void 0),this.store.actions.setFacets(void 0),this.store.actions.setSpellcheck(void 0);else{this.cancelableSearch=s.cancelable(this.service.launchSearch(e));const t=await this.cancelableSearch;if(t.paging.currentPage<=1)this.store.actions.setResults(t.results),this.store.actions.setFacets(t.facets),this.store.actions.setSpellcheck(t.spellcheck);else{let s=(null!==(i=this.store.getState().results)&&void 0!==i?i:[]).concat(t.results);this.store.actions.setResults(s)}this.store.actions.setPaging(t.paging)}}catch(t){t instanceof s.CanceledPromiseError||!this.errorHandler||this.errorHandler(t)}}async fetchSuggestData(){var t;try{const i=this.store.getState(),e=i.request,n={input:i.liveQuery,filters:e.filters,sort:e.sort,contentLocale:e.contentLocale,scope:e.scope};null===(t=this.cancelableSuggest)||void 0===t||t.cancel(),this.cancelableSuggest=s.cancelable(this.service.launchSuggest(n));let r=await this.cancelableSuggest;this.store.actions.setSuggestResults(r.suggestions)}catch(t){t instanceof s.CanceledPromiseError||!this.errorHandler||this.errorHandler(t)}}clear(){this.store.clear()}}var x=function(t,s,i,e){for(var n,r=arguments.length,o=r<3?s:null===e?e=Object.getOwnPropertyDescriptor(s,i):e,a=t.length-1;a>=0;a--)(n=t[a])&&(o=(r<3?n(o):r>3?n(s,i,o):n(s,i))||o);return r>3&&o&&Object.defineProperty(s,i,o),o};class k extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}}const j=Symbol("registerInterval");class q extends(function(t){var s;class i extends t{constructor(){super(...arguments),this[s]=0}setSearchStateManager(t){this.clearStateManager(),this.stateManager=t,this.addStore(t.store,"search")}clearStateManager(){this.stateManager&&(this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[j]=window.setInterval((()=>this.tryToRegisterToContext()),50)}tryToRegisterToContext(){null!=this.stateManager?window.clearInterval(this[j]):this.dispatchEvent(new k)}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return s=j,x([e.state()],i.prototype,"stateManager",void 0),i}(s.FtLitElementRedux)){}var H=function(t,s,i,e){for(var n,r=arguments.length,o=r<3?s:null===e?e=Object.getOwnPropertyDescriptor(s,i):e,a=t.length-1;a>=0;a--)(n=t[a])&&(o=(r<3?n(o):r>3?n(s,i,o):n(s,i))||o);return r>3&&o&&Object.defineProperty(s,i,o),o};class G extends CustomEvent{constructor(t){super("ft-search-load-error",{detail:t})}}class K extends CustomEvent{constructor(t){super("ft-search-request-change",{detail:t})}}class Q extends CustomEvent{constructor(t,s,i){super("ft-search-results-change",{detail:{request:t,paging:s,spellcheck:i}})}}class z extends s.FtLitElementRedux{get stateManager(){return null==this._stateManager&&(this._stateManager=F.build(this.id||(""+Math.round(999e3*Math.random())).padStart(6,"0")),this._stateManager.errorHandler=t=>this.handleLoadError(t),this.addStore(this.stateManager.store,"search")),this._stateManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.filters=[],this.sort=[],this.addStore(m)}render(){return i.html`
5
+ `}update(t){super.update(t),t.has("baseUrl")&&m.actions.setBaseUrl(this.baseUrl),t.has("apiIntegrationIdentifier")&&m.actions.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&m.actions.setUiLocale(this.uiLocale),t.has("noCustom")&&m.actions.setNoCustom(this.noCustom),t.has("editorMode")&&m.actions.setEditorMode(this.editorMode),t.has("noCustomComponent")&&m.actions.setNoCustomComponent(this.noCustomComponent),t.has("session")&&m.actions.setSession(this.session),t.has("availableUiLocales")&&m.actions.setAvailableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>O.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){const t=this.apiProvider();!this.withManualResources&&t&&(null==this.session&&(this.session=await this.cache.get("session",(async()=>{const s=await t.getCurrentSession();return s.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),s.idleTimeoutInMillis),s}))),null==this.availableUiLocales&&(this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>t.getAvailableUiLocales()))))}}C.elementDefinitions={},C.styles=b,U([e.property()],C.prototype,"baseUrl",void 0),U([e.property()],C.prototype,"apiIntegrationIdentifier",void 0),U([e.property()],C.prototype,"uiLocale",void 0),U([s.jsonProperty([])],C.prototype,"availableUiLocales",void 0),U([e.property({type:Boolean})],C.prototype,"editorMode",void 0),U([e.property({type:Boolean})],C.prototype,"noCustom",void 0),U([e.property({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],C.prototype,"noCustomComponent",void 0),U([e.property({type:Boolean})],C.prototype,"withManualResources",void 0),U([s.jsonProperty([])],C.prototype,"messageContexts",void 0),U([s.jsonProperty(void 0)],C.prototype,"session",void 0),U([e.property({type:Object})],C.prototype,"apiProvider",void 0);class L{async listMySearches(){var t;return(null===(t=m.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await A.await()).listMySearches(m.getState().session.profile.userId):[]}}const I=new s.CacheRegistry;class P{async listMyBookmarks(){return I.get("bookmarks",(async()=>(await A.await()).listMyBookmarks(m.getState().session.profile.userId)))}clearCache(){I.clear("bookmarks")}}const D=s.FtReduxStore.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});const _=new class{constructor(){this.currentSession=m.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new P,m.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:i}=m.getState();s.deepEqual(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==i?void 0:i.profile)||(this.currentSession=i,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){D.actions.savedSearches(void 0)}clearMyBookmarks(){D.actions.bookmarks(void 0)}async reloadMySearches(){const t=new L,s=await t.listMySearches();D.actions.savedSearches(s)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const s=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;D.actions.bookmarks(s)}}};s.customElement("ft-app-context")(C);class N{static async build(){return new N(await A.await())}constructor(t){this.api=t,this.cache=new s.CacheRegistry,this.cache.registerFinal("available-locales",(()=>this.api.getAvailableSearchLocales()))}async launchSearch(t){return this.api.search(t)}async launchSuggest(t){return this.api.getSuggestions(t)}async getAvailableSearchLocales(){return this.cache.get("available-locales")}}const B=t=>t.request.virtualField===f.TITLE_ONLY&&t.request.scope===S.DOCUMENTS;class M extends Event{constructor(){super(M.eventName)}}M.eventName="search-context-clear-all-filters";class F{static build(t){return new F((t=>s.FtReduxStore.get({name:"ft-search-"+t,initialState:{request:{query:"",filters:[],facets:[],sort:[],paging:{page:1,perPage:20}},liveQuery:""},reducers:r}))(t.trim()||"context"),N.build)}constructor(t,i){this.store=t,this.serviceProvider=i,this.ignoreEmptyQuery=!1,this.searchDebouncer=new s.Debouncer(100),this.suggestDebouncer=new s.Debouncer(300)}async initService(){return this.service=await this.serviceProvider(),this.store.actions.setLocales((await this.service.getAvailableSearchLocales()).contentLocales),this.launchSearch()}async awaitService(){return s.waitFor((()=>this.service))}setQuery(t){this.store.actions.setRequestQuery(t),this.store.actions.setLiveQuery(t),this.store.actions.setPageNumber(1),this.launchSearch()}setContentLocale(t){let s=this.store.getState().locales,i=this.store.getState().request.contentLocale;if(t!=i){if(s){const e=t=>s.some((s=>s.lang==t));e(t)||(t=e(i)?i:s[0].lang)}this.store.actions.setRequestContentLocale(t),this.store.actions.setPageNumber(1),this.store.actions.setRequestFilters([]),this.launchSearch()}return t}setPageSize(t){this.store.actions.setPageSize(t),this.launchSearch()}setPageNumber(t){this.store.actions.setPageNumber(t),this.launchSearch()}setSort(t){this.store.actions.setRequestSort(t),this.store.actions.setPageNumber(1),this.launchSearch()}setFilters(t){const s=t.filter((t=>t.values.length>0));this.store.actions.setRequestFilters(s),this.store.actions.setPageNumber(1),s.forEach((t=>{this.facetIds.includes(t.key)||(this.facetIds=[...this.facetIds,t.key])})),this.launchSearch()}setSearchInDocumentTitlesOnly(t){t?(this.store.actions.setRequestVirtualField(f.TITLE_ONLY),this.store.actions.setRequestScope(S.DOCUMENTS)):(this.store.actions.setRequestVirtualField(f.EVERYWHERE),this.store.actions.setRequestScope(S.DEFAULT)),this.launchSearch()}get searchInDocumentTitlesOnly(){return B(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.eventBus.dispatchEvent(new M)}addFacet(t){this.facetIds=[...this.facetIds,t],this.launchSearch()}replaceFacet(t,s){let i=this.facetIds.filter((s=>s!=t));s&&i.push(s),this.facetIds=i,this.launchSearch()}get facetIds(){return this.store.getState().request.facets.map((t=>t.id))}set facetIds(t){let s=[...new Set(t)].map((t=>({id:t})));this.store.actions.setRequestFacets(s)}setFilter(t,s){let i=this.store.getState().request.filters,e={key:t,values:s,negative:!1},n=[...i.filter((s=>s.key!==t)),e];this.setFilters(n)}setLiveQuery(t){this.store.actions.setLiveQuery(t),this.launchSuggest()}setRequest(t){this.store.actions.setRequest(t),this.store.actions.setLiveQuery(t.query),this.store.actions.setPageNumber(1),this.launchSearch()}setScope(t){this.store.actions.setRequestScope(t),this.launchSearch()}setIgnoreEmptyQuery(t){this.ignoreEmptyQuery=t,this.launchSearch()}async launchSearch(){return await this.awaitService(),this.searchDebouncer.run((()=>this.fetchSearchData()))}async launchSuggest(){await this.awaitService(),this.suggestDebouncer.run((()=>this.fetchSuggestData()))}async fetchSearchData(){var t,i;try{null===(t=this.cancelableSearch)||void 0===t||t.cancel();let e=this.store.getState().request;if(this.store.actions.setPaging(void 0),this.ignoreEmptyQuery&&0==e.query.length)this.store.actions.setResults(void 0),this.store.actions.setFacets(void 0),this.store.actions.setSpellcheck(void 0);else{this.cancelableSearch=s.cancelable(this.service.launchSearch(e));const t=await this.cancelableSearch;if(t.paging.currentPage<=1)this.store.actions.setResults(t.results),this.store.actions.setFacets(t.facets),this.store.actions.setSpellcheck(t.spellcheck);else{let s=(null!==(i=this.store.getState().results)&&void 0!==i?i:[]).concat(t.results);this.store.actions.setResults(s)}this.store.actions.setPaging(t.paging)}}catch(t){t instanceof s.CanceledPromiseError||!this.errorHandler||this.errorHandler(t)}}async fetchSuggestData(){var t;try{const i=this.store.getState(),e=i.request,n={input:i.liveQuery,filters:e.filters,sort:e.sort,contentLocale:e.contentLocale,scope:e.scope};null===(t=this.cancelableSuggest)||void 0===t||t.cancel(),this.cancelableSuggest=s.cancelable(this.service.launchSuggest(n));let r=await this.cancelableSuggest;this.store.actions.setSuggestResults(r.suggestions)}catch(t){t instanceof s.CanceledPromiseError||!this.errorHandler||this.errorHandler(t)}}clear(){this.store.clear()}}var x=function(t,s,i,e){for(var n,r=arguments.length,o=r<3?s:null===e?e=Object.getOwnPropertyDescriptor(s,i):e,a=t.length-1;a>=0;a--)(n=t[a])&&(o=(r<3?n(o):r>3?n(s,i,o):n(s,i))||o);return r>3&&o&&Object.defineProperty(s,i,o),o};class k extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}}const j=Symbol("registerInterval");class q extends(function(t){var s;class i extends t{constructor(){super(...arguments),this[s]=0}setSearchStateManager(t){this.clearStateManager(),this.stateManager=t,this.addStore(t.store,"search")}clearStateManager(){this.stateManager&&(this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[j]=window.setInterval((()=>this.tryToRegisterToContext()),50)}tryToRegisterToContext(){null!=this.stateManager?window.clearInterval(this[j]):this.dispatchEvent(new k)}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return s=j,x([e.state()],i.prototype,"stateManager",void 0),i}(s.FtLitElementRedux)){}var H=function(t,s,i,e){for(var n,r=arguments.length,o=r<3?s:null===e?e=Object.getOwnPropertyDescriptor(s,i):e,a=t.length-1;a>=0;a--)(n=t[a])&&(o=(r<3?n(o):r>3?n(s,i,o):n(s,i))||o);return r>3&&o&&Object.defineProperty(s,i,o),o};class G extends CustomEvent{constructor(t){super("ft-search-load-error",{detail:t})}}class K extends CustomEvent{constructor(t){super("ft-search-request-change",{detail:t})}}class Q extends CustomEvent{constructor(t,s,i){super("ft-search-results-change",{detail:{request:t,paging:s,spellcheck:i}})}}class z extends s.FtLitElementRedux{get stateManager(){return null==this._stateManager&&(this._stateManager=F.build(this.id||(""+Math.round(999e3*Math.random())).padStart(6,"0")),this._stateManager.errorHandler=t=>this.handleLoadError(t),this.addStore(this.stateManager.store,"search")),this._stateManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.filters=[],this.sort=[],this.addStore(m)}render(){return i.html`
6
6
  <slot @register-ft-search-component=${this.registerComponent}></slot>
7
7
  `}update(t){super.update(t),t.has("query")&&void 0!==this.query&&this.stateManager.setQuery(this.query),t.has("contentLocale")&&void 0!==this.contentLocale&&this.stateManager.setContentLocale(this.contentLocale),t.has("session")&&this.session&&this.stateManager.initService(),t.has("filters")&&void 0!==this.filters&&this.stateManager.setFilters(this.filters),t.has("sort")&&void 0!==this.sort&&this.stateManager.setSort(this.sort),t.has("pageSize")&&void 0!==this.pageSize&&this.stateManager.setPageSize(this.pageSize),t.has("searchInDocumentTitlesOnly")&&void 0!==this.searchInDocumentTitlesOnly&&this.stateManager.setSearchInDocumentTitlesOnly(this.searchInDocumentTitlesOnly),t.has("scope")&&void 0!==this.scope&&this.stateManager.setScope(this.scope),t.has("ignoreEmptyQuery")&&void 0!==this.ignoreEmptyQuery&&this.stateManager.setIgnoreEmptyQuery(this.ignoreEmptyQuery)}connectedCallback(){super.connectedCallback(),this.stateManager.setQuery(this.query),this.stateManager.setContentLocale(this.contentLocale),this.stateManager.setFilters(this.filters),this.stateManager.setPageSize(this.pageSize),this.stateManager.setSort(this.sort)}contentAvailableCallback(t){super.contentAvailableCallback(t),t.has("request")&&this.request&&this.dispatchEvent(new K(this.request)),t.has("paging")&&void 0!==this.paging&&this.dispatchEvent(new Q(this.request,this.paging,this.autocorrect))}registerComponent(t){t.stopPropagation();const s=t.composedPath()[0];this.register(s)}register(t){t.setSearchStateManager(this.stateManager)}handleLoadError(t){this.dispatchEvent(new G(t))}reloadSavedSearches(){_.clearMySearches()}clear(){this.stateManager.clear()}}z.elementDefinitions={},z.styles=n,H([e.property()],z.prototype,"query",void 0),H([e.property()],z.prototype,"contentLocale",void 0),H([e.property({type:Number})],z.prototype,"pageSize",void 0),H([e.property({type:Boolean})],z.prototype,"searchInDocumentTitlesOnly",void 0),H([e.property()],z.prototype,"scope",void 0),H([e.property({type:Boolean})],z.prototype,"ignoreEmptyQuery",void 0),H([s.jsonProperty([])],z.prototype,"filters",void 0),H([s.jsonProperty([])],z.prototype,"sort",void 0),H([s.redux({store:"search"})],z.prototype,"request",void 0),H([s.redux({store:"search"})],z.prototype,"paging",void 0),H([s.redux({store:"search",selector:t=>t.spellcheck})],z.prototype,"autocorrect",void 0),H([s.redux({store:m.name})],z.prototype,"session",void 0),s.customElement("ft-search-context")(z),t.ClearAllFiltersEvent=M,t.FtSearchContext=z,t.FtSearchContextCssVariables={},t.FtSearchStateManager=F,t.LoadErrorEvent=G,t.SearchRequestChangeEvent=K,t.SearchResultsChangeEvent=Q,t.searchInDocumentTitlesOnlySelector=B,t.styles=n}({},ftGlobals.wcUtils,ftGlobals.lit,ftGlobals.litDecorators);
@@ -12,28 +12,28 @@
12
12
  * subject to an additional IP rights grant found at
13
13
  * http://polymer.github.io/PATENTS.txt
14
14
  */
15
- if(!ShadowRoot.prototype.createElement){const t=window.HTMLElement,o=window.customElements.define,e=window.customElements.get,r=window.customElements,i=new WeakMap,n=new WeakMap,a=new WeakMap,s=new WeakMap;let c;window.CustomElementRegistry=class{constructor(){this._definitionsByTag=new Map,this._definitionsByClass=new Map,this._whenDefinedPromises=new Map,this._awaitingUpgrade=new Map}define(t,i){if(t=t.toLowerCase(),void 0!==this._getDefinition(t))throw new DOMException(`Failed to execute 'define' on 'CustomElementRegistry': the name "${t}" has already been used with this registry`);if(void 0!==this._definitionsByClass.get(i))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': this constructor has already been used with this registry");const s=i.prototype.attributeChangedCallback,c=new Set(i.observedAttributes||[]);u(i,c,s);const l={elementClass:i,connectedCallback:i.prototype.connectedCallback,disconnectedCallback:i.prototype.disconnectedCallback,adoptedCallback:i.prototype.adoptedCallback,attributeChangedCallback:s,formAssociated:i.formAssociated,formAssociatedCallback:i.prototype.formAssociatedCallback,formDisabledCallback:i.prototype.formDisabledCallback,formResetCallback:i.prototype.formResetCallback,formStateRestoreCallback:i.prototype.formStateRestoreCallback,observedAttributes:c};this._definitionsByTag.set(t,l),this._definitionsByClass.set(i,l);let f=e.call(r,t);f||(f=h(t),o.call(r,t,f)),this===window.customElements&&(a.set(i,l),l.standInClass=f);const d=this._awaitingUpgrade.get(t);if(d){this._awaitingUpgrade.delete(t);for(const t of d)n.delete(t),p(t,l,!0)}const y=this._whenDefinedPromises.get(t);return void 0!==y&&(y.resolve(i),this._whenDefinedPromises.delete(t)),i}upgrade(){b.push(this),r.upgrade.apply(r,arguments),b.pop()}get(t){const o=this._definitionsByTag.get(t);return o?.elementClass}_getDefinition(t){return this._definitionsByTag.get(t)}whenDefined(t){const o=this._getDefinition(t);if(void 0!==o)return Promise.resolve(o.elementClass);let e=this._whenDefinedPromises.get(t);return void 0===e&&(e={},e.promise=new Promise((t=>e.resolve=t)),this._whenDefinedPromises.set(t,e)),e.promise}_upgradeWhenDefined(t,o,e){let r=this._awaitingUpgrade.get(o);r||this._awaitingUpgrade.set(o,r=new Set),e?r.add(t):r.delete(t)}},window.HTMLElement=function(){let o=c;if(o)return c=void 0,o;const e=a.get(this.constructor);if(!e)throw new TypeError("Illegal constructor (custom element class must be registered with global customElements registry to be newable)");return o=Reflect.construct(t,[],e.standInClass),Object.setPrototypeOf(o,this.constructor.prototype),i.set(o,e),o},window.HTMLElement.prototype=t.prototype;const l=t=>t===document||t instanceof ShadowRoot,f=t=>{let o=t.getRootNode();if(!l(o)){const t=b[b.length-1];if(t instanceof CustomElementRegistry)return t;o=t.getRootNode(),l(o)||(o=s.get(o)?.getRootNode()||document)}return o.customElements},h=o=>class{static get formAssociated(){return!0}constructor(){const e=Reflect.construct(t,[],this.constructor);Object.setPrototypeOf(e,HTMLElement.prototype);const r=f(e)||window.customElements,i=r._getDefinition(o);return i?p(e,i):n.set(e,r),e}connectedCallback(){const t=i.get(this);t?t.connectedCallback&&t.connectedCallback.apply(this,arguments):n.get(this)._upgradeWhenDefined(this,o,!0)}disconnectedCallback(){const t=i.get(this);t?t.disconnectedCallback&&t.disconnectedCallback.apply(this,arguments):n.get(this)._upgradeWhenDefined(this,o,!1)}adoptedCallback(){const t=i.get(this);t?.adoptedCallback?.apply(this,arguments)}formAssociatedCallback(){const t=i.get(this);t&&t.formAssociated&&t?.formAssociatedCallback?.apply(this,arguments)}formDisabledCallback(){const t=i.get(this);t?.formAssociated&&t?.formDisabledCallback?.apply(this,arguments)}formResetCallback(){const t=i.get(this);t?.formAssociated&&t?.formResetCallback?.apply(this,arguments)}formStateRestoreCallback(){const t=i.get(this);t?.formAssociated&&t?.formStateRestoreCallback?.apply(this,arguments)}},u=(t,o,e)=>{if(0===o.size||void 0===e)return;const r=t.prototype.setAttribute;r&&(t.prototype.setAttribute=function(t,i){const n=t.toLowerCase();if(o.has(n)){const t=this.getAttribute(n);r.call(this,n,i),e.call(this,n,t,i)}else r.call(this,n,i)});const i=t.prototype.removeAttribute;i&&(t.prototype.removeAttribute=function(t){const r=t.toLowerCase();if(o.has(r)){const t=this.getAttribute(r);i.call(this,r),e.call(this,r,t,null)}else i.call(this,r)});const n=t.prototype.toggleAttribute;n&&(t.prototype.toggleAttribute=function(t,r){const i=t.toLowerCase();if(o.has(i)){const t=this.getAttribute(i);n.call(this,i,r);const o=this.getAttribute(i);e.call(this,i,t,o)}else n.call(this,i,r)})},d=o=>{const e=Object.getPrototypeOf(o);if(e!==window.HTMLElement)return e===t?Object.setPrototypeOf(o,window.HTMLElement):d(e)},p=(t,o,e=!1)=>{Object.setPrototypeOf(t,o.elementClass.prototype),i.set(t,o),c=t;try{new o.elementClass}catch(t){d(o.elementClass),new o.elementClass}o.attributeChangedCallback&&o.observedAttributes.forEach((e=>{t.hasAttribute(e)&&o.attributeChangedCallback.call(t,e,null,t.getAttribute(e))})),e&&o.connectedCallback&&t.isConnected&&o.connectedCallback.call(t)},y=Element.prototype.attachShadow;Element.prototype.attachShadow=function(t){const o=y.apply(this,arguments);return t.customElements&&(o.customElements=t.customElements),o};let b=[document];const g=(t,o,e=void 0)=>{const r=(e?Object.getPrototypeOf(e):t.prototype)[o];t.prototype[o]=function(){b.push(this);const t=r.apply(e||this,arguments);return void 0!==t&&s.set(t,this),b.pop(),t}};g(ShadowRoot,"createElement",document),g(ShadowRoot,"importNode",document),g(Element,"insertAdjacentHTML");const m=(t,o)=>{const e=Object.getOwnPropertyDescriptor(t.prototype,o);Object.defineProperty(t.prototype,o,{...e,set(t){b.push(this),e.set.call(this,t),b.pop()}})};if(m(Element,"innerHTML"),m(ShadowRoot,"innerHTML"),Object.defineProperty(window,"customElements",{value:new CustomElementRegistry,configurable:!0,writable:!0}),window.ElementInternals&&window.ElementInternals.prototype.setFormValue){const t=new WeakMap,o=HTMLElement.prototype.attachInternals,e=["setFormValue","setValidity","checkValidity","reportValidity"];HTMLElement.prototype.attachInternals=function(...e){const r=o.call(this,...e);return t.set(r,this),r},e.forEach((o=>{const e=window.ElementInternals.prototype,r=e[o];e[o]=function(...o){const e=t.get(this);if(!0===i.get(e).formAssociated)return r?.call(this,...o);throw new DOMException(`Failed to execute ${r} on 'ElementInternals': The target element is not a form-associated custom element.`)}}));class r extends Array{constructor(t){super(...t),this._elements=t}get value(){return this._elements.find((t=>!0===t.checked))?.value||""}}class n{constructor(t){const o=new Map;t.forEach(((t,e)=>{const r=t.getAttribute("name"),i=o.get(r)||[];this[+e]=t,i.push(t),o.set(r,i)})),this.length=t.length,o.forEach(((t,o)=>{t&&(1===t.length?this[o]=t[0]:this[o]=new r(t))}))}namedItem(t){return this[t]}}const a=Object.getOwnPropertyDescriptor(HTMLFormElement.prototype,"elements");Object.defineProperty(HTMLFormElement.prototype,"elements",{get:function(){const t=a.get.call(this,[]),o=[];for(const e of t){const t=i.get(e);t&&!0!==t.formAssociated||o.push(e)}return new n(o)}})}}try{window.customElements.define("custom-element",null)}catch(Co){const t=window.customElements.define;window.customElements.define=(o,e,r)=>{if(null!==e)try{t.bind(window.customElements)(o,e,r)}catch(t){console.info(o,e,r,t)}}}class o extends Error{constructor(t,o,e){super(t),this.canceledPromiseResult=o,this.canceledPromiseError=e}}class e extends Promise{constructor(t){super(((e,r)=>t((t=>{this.isCanceled?r(new o("Promise has been canceled",t)):e(t)}),(t=>{this.isCanceled?r(new o("Promise has been canceled",void 0,t)):r(t)})))),this.isCanceled=!1}cancel(){this.isCanceled=!0}}const r=t=>new e(((o,e)=>t.then(o).catch(e)));class i{constructor(){this.loaders={},this.content={},this.clearTimeouts={},this.finalContent=new Set}register(t,o){this.loaders[t]=o,this.finalContent.delete(t)}registerFinal(t,o){this.loaders[t]=o,this.finalContent.add(t)}clearAll(){for(let t in this.content)this.clear(t)}clear(t){this.finalContent.has(t)||this.forceClear(t)}forceClear(t){this.clearClearTimeout(t),this.content[t]instanceof e&&this.content[t].cancel(),delete this.content[t]}clearClearTimeout(t){null!=this.clearTimeouts[t]&&(window.clearTimeout(this.clearTimeouts[t]),delete this.clearTimeouts[t])}set(t,o){this.forceClear(t),this.register(t,(async()=>o)),this.content[t]=o}setFinal(t,o){this.forceClear(t),this.registerFinal(t,(async()=>o)),this.content[t]=o}async get(t,o,e){if(void 0===this.content[t]){if(null==(o=null!=o?o:this.loaders[t]))throw new Error("Unknown cache key "+t);const i=r(o());return this.content[t]=i,i.then((o=>(this.content[t]=o,null!=e&&(this.clearClearTimeout(t),this.clearTimeouts[t]=window.setTimeout((()=>this.clear(t)),e)),o)))}if(this.content[t]instanceof Error)throw this.content[t];return this.content[t]}isResolvedValue(t){return!(null==t||t instanceof Promise||t instanceof Error)}getNow(t){if(this.isResolvedValue(this.content[t]))return this.content[t]}has(t){return null!=this.content[t]}resolvedKeys(){return Object.keys(this.content).filter((t=>this.isResolvedValue(this.content[t])))}resolvedValues(){return Object.values(this.content).filter((t=>this.isResolvedValue(t)))}keys(){return Object.keys(this.content)}values(){return Object.values(this.content)}}
15
+ if(!ShadowRoot.prototype.createElement){const t=window.HTMLElement,o=window.customElements.define,e=window.customElements.get,r=window.customElements,i=new WeakMap,n=new WeakMap,a=new WeakMap,s=new WeakMap;let c;window.CustomElementRegistry=class{constructor(){this._definitionsByTag=new Map,this._definitionsByClass=new Map,this._whenDefinedPromises=new Map,this._awaitingUpgrade=new Map}define(t,i){if(t=t.toLowerCase(),void 0!==this._getDefinition(t))throw new DOMException(`Failed to execute 'define' on 'CustomElementRegistry': the name "${t}" has already been used with this registry`);if(void 0!==this._definitionsByClass.get(i))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': this constructor has already been used with this registry");const s=i.prototype.attributeChangedCallback,c=new Set(i.observedAttributes||[]);u(i,c,s);const l={elementClass:i,connectedCallback:i.prototype.connectedCallback,disconnectedCallback:i.prototype.disconnectedCallback,adoptedCallback:i.prototype.adoptedCallback,attributeChangedCallback:s,formAssociated:i.formAssociated,formAssociatedCallback:i.prototype.formAssociatedCallback,formDisabledCallback:i.prototype.formDisabledCallback,formResetCallback:i.prototype.formResetCallback,formStateRestoreCallback:i.prototype.formStateRestoreCallback,observedAttributes:c};this._definitionsByTag.set(t,l),this._definitionsByClass.set(i,l);let f=e.call(r,t);f||(f=h(t),o.call(r,t,f)),this===window.customElements&&(a.set(i,l),l.standInClass=f);const d=this._awaitingUpgrade.get(t);if(d){this._awaitingUpgrade.delete(t);for(const t of d)n.delete(t),p(t,l,!0)}const y=this._whenDefinedPromises.get(t);return void 0!==y&&(y.resolve(i),this._whenDefinedPromises.delete(t)),i}upgrade(){b.push(this),r.upgrade.apply(r,arguments),b.pop()}get(t){const o=this._definitionsByTag.get(t);return o?.elementClass}_getDefinition(t){return this._definitionsByTag.get(t)}whenDefined(t){const o=this._getDefinition(t);if(void 0!==o)return Promise.resolve(o.elementClass);let e=this._whenDefinedPromises.get(t);return void 0===e&&(e={},e.promise=new Promise((t=>e.resolve=t)),this._whenDefinedPromises.set(t,e)),e.promise}_upgradeWhenDefined(t,o,e){let r=this._awaitingUpgrade.get(o);r||this._awaitingUpgrade.set(o,r=new Set),e?r.add(t):r.delete(t)}},window.HTMLElement=function(){let o=c;if(o)return c=void 0,o;const e=a.get(this.constructor);if(!e)throw new TypeError("Illegal constructor (custom element class must be registered with global customElements registry to be newable)");return o=Reflect.construct(t,[],e.standInClass),Object.setPrototypeOf(o,this.constructor.prototype),i.set(o,e),o},window.HTMLElement.prototype=t.prototype;const l=t=>t===document||t instanceof ShadowRoot,f=t=>{let o=t.getRootNode();if(!l(o)){const t=b[b.length-1];if(t instanceof CustomElementRegistry)return t;o=t.getRootNode(),l(o)||(o=s.get(o)?.getRootNode()||document)}return o.customElements},h=o=>class{static get formAssociated(){return!0}constructor(){const e=Reflect.construct(t,[],this.constructor);Object.setPrototypeOf(e,HTMLElement.prototype);const r=f(e)||window.customElements,i=r._getDefinition(o);return i?p(e,i):n.set(e,r),e}connectedCallback(){const t=i.get(this);t?t.connectedCallback&&t.connectedCallback.apply(this,arguments):n.get(this)._upgradeWhenDefined(this,o,!0)}disconnectedCallback(){const t=i.get(this);t?t.disconnectedCallback&&t.disconnectedCallback.apply(this,arguments):n.get(this)._upgradeWhenDefined(this,o,!1)}adoptedCallback(){const t=i.get(this);t?.adoptedCallback?.apply(this,arguments)}formAssociatedCallback(){const t=i.get(this);t&&t.formAssociated&&t?.formAssociatedCallback?.apply(this,arguments)}formDisabledCallback(){const t=i.get(this);t?.formAssociated&&t?.formDisabledCallback?.apply(this,arguments)}formResetCallback(){const t=i.get(this);t?.formAssociated&&t?.formResetCallback?.apply(this,arguments)}formStateRestoreCallback(){const t=i.get(this);t?.formAssociated&&t?.formStateRestoreCallback?.apply(this,arguments)}},u=(t,o,e)=>{if(0===o.size||void 0===e)return;const r=t.prototype.setAttribute;r&&(t.prototype.setAttribute=function(t,i){const n=t.toLowerCase();if(o.has(n)){const t=this.getAttribute(n);r.call(this,n,i),e.call(this,n,t,i)}else r.call(this,n,i)});const i=t.prototype.removeAttribute;i&&(t.prototype.removeAttribute=function(t){const r=t.toLowerCase();if(o.has(r)){const t=this.getAttribute(r);i.call(this,r),e.call(this,r,t,null)}else i.call(this,r)});const n=t.prototype.toggleAttribute;n&&(t.prototype.toggleAttribute=function(t,r){const i=t.toLowerCase();if(o.has(i)){const t=this.getAttribute(i);n.call(this,i,r);const o=this.getAttribute(i);e.call(this,i,t,o)}else n.call(this,i,r)})},d=o=>{const e=Object.getPrototypeOf(o);if(e!==window.HTMLElement)return e===t?Object.setPrototypeOf(o,window.HTMLElement):d(e)},p=(t,o,e=!1)=>{Object.setPrototypeOf(t,o.elementClass.prototype),i.set(t,o),c=t;try{new o.elementClass}catch(t){d(o.elementClass),new o.elementClass}o.attributeChangedCallback&&o.observedAttributes.forEach((e=>{t.hasAttribute(e)&&o.attributeChangedCallback.call(t,e,null,t.getAttribute(e))})),e&&o.connectedCallback&&t.isConnected&&o.connectedCallback.call(t)},y=Element.prototype.attachShadow;Element.prototype.attachShadow=function(t){const o=y.apply(this,arguments);return t.customElements&&(o.customElements=t.customElements),o};let b=[document];const g=(t,o,e=void 0)=>{const r=(e?Object.getPrototypeOf(e):t.prototype)[o];t.prototype[o]=function(){b.push(this);const t=r.apply(e||this,arguments);return void 0!==t&&s.set(t,this),b.pop(),t}};g(ShadowRoot,"createElement",document),g(ShadowRoot,"importNode",document),g(Element,"insertAdjacentHTML");const m=(t,o)=>{const e=Object.getOwnPropertyDescriptor(t.prototype,o);Object.defineProperty(t.prototype,o,{...e,set(t){b.push(this),e.set.call(this,t),b.pop()}})};if(m(Element,"innerHTML"),m(ShadowRoot,"innerHTML"),Object.defineProperty(window,"customElements",{value:new CustomElementRegistry,configurable:!0,writable:!0}),window.ElementInternals&&window.ElementInternals.prototype.setFormValue){const t=new WeakMap,o=HTMLElement.prototype.attachInternals,e=["setFormValue","setValidity","checkValidity","reportValidity"];HTMLElement.prototype.attachInternals=function(...e){const r=o.call(this,...e);return t.set(r,this),r},e.forEach((o=>{const e=window.ElementInternals.prototype,r=e[o];e[o]=function(...o){const e=t.get(this);if(!0===i.get(e).formAssociated)return r?.call(this,...o);throw new DOMException(`Failed to execute ${r} on 'ElementInternals': The target element is not a form-associated custom element.`)}}));class r extends Array{constructor(t){super(...t),this._elements=t}get value(){return this._elements.find((t=>!0===t.checked))?.value||""}}class n{constructor(t){const o=new Map;t.forEach(((t,e)=>{const r=t.getAttribute("name"),i=o.get(r)||[];this[+e]=t,i.push(t),o.set(r,i)})),this.length=t.length,o.forEach(((t,o)=>{t&&(1===t.length?this[o]=t[0]:this[o]=new r(t))}))}namedItem(t){return this[t]}}const a=Object.getOwnPropertyDescriptor(HTMLFormElement.prototype,"elements");Object.defineProperty(HTMLFormElement.prototype,"elements",{get:function(){const t=a.get.call(this,[]),o=[];for(const e of t){const t=i.get(e);t&&!0!==t.formAssociated||o.push(e)}return new n(o)}})}}try{window.customElements.define("custom-element",null)}catch(Co){const t=window.customElements.define;window.customElements.define=(o,e,r)=>{if(null!==e)try{t.bind(window.customElements)(o,e,r)}catch(t){console.info(o,e,r,t)}}}class o extends Error{constructor(t,o,e){super(t),this.canceledPromiseResult=o,this.canceledPromiseError=e}}class e extends Promise{constructor(t){super(((e,r)=>t((t=>{this.isCanceled?r(new o("Promise has been canceled",t)):e(t)}),(t=>{this.isCanceled?r(new o("Promise has been canceled",void 0,t)):r(t)})))),this.isCanceled=!1}cancel(){this.isCanceled=!0}}const r=t=>new e(((o,e)=>t.then(o).catch(e)));class i{constructor(){this.loaders={},this.content={},this.clearTimeouts={},this.finalContent=new Set}register(t,o){this.loaders[t]=o,this.finalContent.delete(t)}registerFinal(t,o){this.loaders[t]=o,this.finalContent.add(t)}clearAll(){for(let t in this.content)this.clear(t)}clear(t){this.finalContent.has(t)||this.forceClear(t)}forceClear(t){this.clearClearTimeout(t),this.content[t]instanceof e&&this.content[t].cancel(),delete this.content[t]}clearClearTimeout(t){null!=this.clearTimeouts[t]&&(window.clearTimeout(this.clearTimeouts[t]),delete this.clearTimeouts[t])}set(t,o){this.forceClear(t),this.register(t,(async()=>o)),this.content[t]=o}setFinal(t,o){this.forceClear(t),this.registerFinal(t,(async()=>o)),this.content[t]=o}async get(t,o,e){if(void 0===this.content[t]){if(null==(o=null!=o?o:this.loaders[t]))throw new Error("Unknown cache key "+t);const i=r(o());return this.content[t]=i,i.then((o=>(this.content[t]=o,null!=e&&(this.clearClearTimeout(t),this.clearTimeouts[t]=window.setTimeout((()=>this.clear(t)),e)),o)))}if(this.content[t]instanceof Error)throw this.content[t];return this.content[t]}isResolvedValue(t){return!(null==t||t instanceof Promise||t instanceof Error)}getNow(t){if(this.isResolvedValue(this.content[t]))return this.content[t]}has(t){return null!=this.content[t]}resolvedKeys(){return Object.keys(this.content).filter((t=>this.isResolvedValue(this.content[t])))}resolvedValues(){return Object.values(this.content).filter((t=>this.isResolvedValue(t)))}keys(){return Object.keys(this.content)}values(){return Object.values(this.content)}}class n{constructor(t=0){this.timeout=t,this.callbacks=[]}run(t,o){return this.callbacks=[t],this.debounce(o)}queue(t,o){return this.callbacks.push(t),this.debounce(o)}cancel(){this.clearTimeout(),this.resolvePromise&&this.resolvePromise(!1),this.clearPromise()}debounce(t){return null==this.promise&&(this.promise=new Promise(((t,o)=>{this.resolvePromise=t,this.rejectPromise=o}))),this.clearTimeout(),this._debounce=window.setTimeout((()=>this.runCallbacks()),null!=t?t:this.timeout),this.promise}async runCallbacks(){var t,o;const e=[...this.callbacks];this.callbacks=[];const r=null!==(t=this.rejectPromise)&&void 0!==t?t:()=>null,i=null!==(o=this.resolvePromise)&&void 0!==o?o:()=>null;this.clearPromise();for(let t of e)try{await t()}catch(t){return void r(t)}i(!0)}clearTimeout(){null!=this._debounce&&window.clearTimeout(this._debounce)}clearPromise(){this.promise=void 0,this.resolvePromise=void 0,this.rejectPromise=void 0}}
16
16
  /**
17
17
  * @license
18
18
  * Copyright 2019 Google LLC
19
19
  * SPDX-License-Identifier: BSD-3-Clause
20
- */const n=globalThis,a=n.ShadowRoot&&(void 0===n.ShadyCSS||n.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,s=Symbol(),c=new WeakMap;const l=t=>new class{constructor(t,o,e){if(this._$cssResult$=!0,e!==s)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=o}get styleSheet(){let t=this.o;const o=this.t;if(a&&void 0===t){const e=void 0!==o&&1===o.length;e&&(t=c.get(o)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&c.set(o,t))}return t}toString(){return this.cssText}}("string"==typeof t?t:t+"",void 0,s),f=a?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let o="";for(const e of t.cssRules)o+=e.cssText;return l(o)})(t):t
20
+ */const a=globalThis,s=a.ShadowRoot&&(void 0===a.ShadyCSS||a.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,c=Symbol(),l=new WeakMap;const f=t=>new class{constructor(t,o,e){if(this._$cssResult$=!0,e!==c)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=o}get styleSheet(){let t=this.o;const o=this.t;if(s&&void 0===t){const e=void 0!==o&&1===o.length;e&&(t=l.get(o)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&l.set(o,t))}return t}toString(){return this.cssText}}("string"==typeof t?t:t+"",void 0,c),h=s?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let o="";for(const e of t.cssRules)o+=e.cssText;return f(o)})(t):t
21
21
  /**
22
22
  * @license
23
23
  * Copyright 2017 Google LLC
24
24
  * SPDX-License-Identifier: BSD-3-Clause
25
- */,{is:h,defineProperty:u,getOwnPropertyDescriptor:d,getOwnPropertyNames:p,getOwnPropertySymbols:y,getPrototypeOf:b}=Object,g=globalThis,m=g.trustedTypes,v=m?m.emptyScript:"",O=g.reactiveElementPolyfillSupport,w=(t,o)=>t,N={toAttribute(t,o){switch(o){case Boolean:t=t?v:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,o){let e=t;switch(o){case Boolean:e=null!==t;break;case Number:e=null===t?null:Number(t);break;case Object:case Array:try{e=JSON.parse(t)}catch(t){e=null}}return e}},S=(t,o)=>!h(t,o),E={attribute:!0,type:String,converter:N,reflect:!1,hasChanged:S};Symbol.metadata??=Symbol("metadata"),g.litPropertyMetadata??=new WeakMap;let C=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,o=E){if(o.state&&(o.attribute=!1),this._$Ei(),this.elementProperties.set(t,o),!o.noAccessor){const e=Symbol(),r=this.getPropertyDescriptor(t,e,o);void 0!==r&&u(this.prototype,t,r)}}static getPropertyDescriptor(t,o,e){const{get:r,set:i}=d(this.prototype,t)??{get(){return this[o]},set(t){this[o]=t}};return{get(){return r?.call(this)},set(o){const n=r?.call(this);i.call(this,o),this.requestUpdate(t,n,e)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??E}static _$Ei(){if(this.hasOwnProperty(w("elementProperties")))return;const t=b(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(w("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(w("properties"))){const t=this.properties,o=[...p(t),...y(t)];for(const e of o)this.createProperty(e,t[e])}const t=this[Symbol.metadata];if(null!==t){const o=litPropertyMetadata.get(t);if(void 0!==o)for(const[t,e]of o)this.elementProperties.set(t,e)}this._$Eh=new Map;for(const[t,o]of this.elementProperties){const e=this._$Eu(t,o);void 0!==e&&this._$Eh.set(e,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const o=[];if(Array.isArray(t)){const e=new Set(t.flat(1/0).reverse());for(const t of e)o.unshift(f(t))}else void 0!==t&&o.push(f(t));return o}static _$Eu(t,o){const e=o.attribute;return!1===e?void 0:"string"==typeof e?e:"string"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$Eg=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$ES(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$E_??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$E_?.delete(t)}_$ES(){const t=new Map,o=this.constructor.elementProperties;for(const e of o.keys())this.hasOwnProperty(e)&&(t.set(e,this[e]),delete this[e]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((t,o)=>{if(a)t.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement("style"),r=n.litNonce;void 0!==r&&o.setAttribute("nonce",r),o.textContent=e.cssText,t.appendChild(o)}})(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$E_?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$E_?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,o,e){this._$AK(t,e)}_$EO(t,o){const e=this.constructor.elementProperties.get(t),r=this.constructor._$Eu(t,e);if(void 0!==r&&!0===e.reflect){const i=(void 0!==e.converter?.toAttribute?e.converter:N).toAttribute(o,e.type);this._$Em=t,null==i?this.removeAttribute(r):this.setAttribute(r,i),this._$Em=null}}_$AK(t,o){const e=this.constructor,r=e._$Eh.get(t);if(void 0!==r&&this._$Em!==r){const t=e.getPropertyOptions(r),i="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:N;this._$Em=r,this[r]=i.fromAttribute(o,t.type),this._$Em=null}}requestUpdate(t,o,e,r=!1,i){if(void 0!==t){if(e??=this.constructor.getPropertyOptions(t),!(e.hasChanged??S)(r?i:this[t],o))return;this.C(t,o,e)}!1===this.isUpdatePending&&(this._$Eg=this._$EP())}C(t,o,e){this._$AL.has(t)||this._$AL.set(t,o),!0===e.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$EP(){this.isUpdatePending=!0;try{await this._$Eg}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,o]of this._$Ep)this[t]=o;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[o,e]of t)!0!==e.wrapped||this._$AL.has(o)||void 0===this[o]||this.C(o,this[o],e)}let t=!1;const o=this._$AL;try{t=this.shouldUpdate(o),t?(this.willUpdate(o),this._$E_?.forEach((t=>t.hostUpdate?.())),this.update(o)):this._$ET()}catch(o){throw t=!1,this._$ET(),o}t&&this._$AE(o)}willUpdate(t){}_$AE(t){this._$E_?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$ET(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Eg}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach((t=>this._$EO(t,this[t]))),this._$ET()}updated(t){}firstUpdated(t){}};C.elementStyles=[],C.shadowRootOptions={mode:"open"},C[w("elementProperties")]=new Map,C[w("finalized")]=new Map,O?.({ReactiveElement:C}),(g.reactiveElementVersions??=[]).push("2.0.2");
25
+ */,{is:u,defineProperty:d,getOwnPropertyDescriptor:p,getOwnPropertyNames:y,getOwnPropertySymbols:b,getPrototypeOf:g}=Object,m=globalThis,v=m.trustedTypes,O=v?v.emptyScript:"",w=m.reactiveElementPolyfillSupport,N=(t,o)=>t,S={toAttribute(t,o){switch(o){case Boolean:t=t?O:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,o){let e=t;switch(o){case Boolean:e=null!==t;break;case Number:e=null===t?null:Number(t);break;case Object:case Array:try{e=JSON.parse(t)}catch(t){e=null}}return e}},E=(t,o)=>!u(t,o),C={attribute:!0,type:String,converter:S,reflect:!1,hasChanged:E};Symbol.metadata??=Symbol("metadata"),m.litPropertyMetadata??=new WeakMap;let R=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,o=C){if(o.state&&(o.attribute=!1),this._$Ei(),this.elementProperties.set(t,o),!o.noAccessor){const e=Symbol(),r=this.getPropertyDescriptor(t,e,o);void 0!==r&&d(this.prototype,t,r)}}static getPropertyDescriptor(t,o,e){const{get:r,set:i}=p(this.prototype,t)??{get(){return this[o]},set(t){this[o]=t}};return{get(){return r?.call(this)},set(o){const n=r?.call(this);i.call(this,o),this.requestUpdate(t,n,e)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??C}static _$Ei(){if(this.hasOwnProperty(N("elementProperties")))return;const t=g(this);t.finalize(),void 0!==t.l&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(N("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(N("properties"))){const t=this.properties,o=[...y(t),...b(t)];for(const e of o)this.createProperty(e,t[e])}const t=this[Symbol.metadata];if(null!==t){const o=litPropertyMetadata.get(t);if(void 0!==o)for(const[t,e]of o)this.elementProperties.set(t,e)}this._$Eh=new Map;for(const[t,o]of this.elementProperties){const e=this._$Eu(t,o);void 0!==e&&this._$Eh.set(e,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const o=[];if(Array.isArray(t)){const e=new Set(t.flat(1/0).reverse());for(const t of e)o.unshift(h(t))}else void 0!==t&&o.push(h(t));return o}static _$Eu(t,o){const e=o.attribute;return!1===e?void 0:"string"==typeof e?e:"string"==typeof t?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$Eg=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$ES(),this.requestUpdate(),this.constructor.l?.forEach((t=>t(this)))}addController(t){(this._$E_??=new Set).add(t),void 0!==this.renderRoot&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$E_?.delete(t)}_$ES(){const t=new Map,o=this.constructor.elementProperties;for(const e of o.keys())this.hasOwnProperty(e)&&(t.set(e,this[e]),delete this[e]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((t,o)=>{if(s)t.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement("style"),r=a.litNonce;void 0!==r&&o.setAttribute("nonce",r),o.textContent=e.cssText,t.appendChild(o)}})(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$E_?.forEach((t=>t.hostConnected?.()))}enableUpdating(t){}disconnectedCallback(){this._$E_?.forEach((t=>t.hostDisconnected?.()))}attributeChangedCallback(t,o,e){this._$AK(t,e)}_$EO(t,o){const e=this.constructor.elementProperties.get(t),r=this.constructor._$Eu(t,e);if(void 0!==r&&!0===e.reflect){const i=(void 0!==e.converter?.toAttribute?e.converter:S).toAttribute(o,e.type);this._$Em=t,null==i?this.removeAttribute(r):this.setAttribute(r,i),this._$Em=null}}_$AK(t,o){const e=this.constructor,r=e._$Eh.get(t);if(void 0!==r&&this._$Em!==r){const t=e.getPropertyOptions(r),i="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==t.converter?.fromAttribute?t.converter:S;this._$Em=r,this[r]=i.fromAttribute(o,t.type),this._$Em=null}}requestUpdate(t,o,e,r=!1,i){if(void 0!==t){if(e??=this.constructor.getPropertyOptions(t),!(e.hasChanged??E)(r?i:this[t],o))return;this.C(t,o,e)}!1===this.isUpdatePending&&(this._$Eg=this._$EP())}C(t,o,e){this._$AL.has(t)||this._$AL.set(t,o),!0===e.reflect&&this._$Em!==t&&(this._$Ej??=new Set).add(t)}async _$EP(){this.isUpdatePending=!0;try{await this._$Eg}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[t,o]of this._$Ep)this[t]=o;this._$Ep=void 0}const t=this.constructor.elementProperties;if(t.size>0)for(const[o,e]of t)!0!==e.wrapped||this._$AL.has(o)||void 0===this[o]||this.C(o,this[o],e)}let t=!1;const o=this._$AL;try{t=this.shouldUpdate(o),t?(this.willUpdate(o),this._$E_?.forEach((t=>t.hostUpdate?.())),this.update(o)):this._$ET()}catch(o){throw t=!1,this._$ET(),o}t&&this._$AE(o)}willUpdate(t){}_$AE(t){this._$E_?.forEach((t=>t.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$ET(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Eg}shouldUpdate(t){return!0}update(t){this._$Ej&&=this._$Ej.forEach((t=>this._$EO(t,this[t]))),this._$ET()}updated(t){}firstUpdated(t){}};R.elementStyles=[],R.shadowRootOptions={mode:"open"},R[N("elementProperties")]=new Map,R[N("finalized")]=new Map,w?.({ReactiveElement:R}),(m.reactiveElementVersions??=[]).push("2.0.2");
26
26
  /**
27
27
  * @license
28
28
  * Copyright 2017 Google LLC
29
29
  * SPDX-License-Identifier: BSD-3-Clause
30
30
  */
31
- const R={attribute:!0,type:String,converter:N,reflect:!1,hasChanged:S},x=(t=R,o,e)=>{const{kind:r,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(void 0===n&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,t),"accessor"===r){const{name:r}=e;return{set(e){const i=o.get.call(this);o.set.call(this,e),this.requestUpdate(r,i,t)},init(o){return void 0!==o&&this.C(r,void 0,t),o}}}if("setter"===r){const{name:r}=e;return function(e){const i=this[r];o.call(this,e),this.requestUpdate(r,i,t)}}throw Error("Unsupported decorator location: "+r)};function U(t){return(o,e)=>"object"==typeof e?x(t,o,e):((t,o,e)=>{const r=o.hasOwnProperty(e);return o.constructor.createProperty(e,r?{...t,wrapped:!0}:t),r?Object.getOwnPropertyDescriptor(o,e):void 0})(t,o,e)
31
+ const x={attribute:!0,type:String,converter:S,reflect:!1,hasChanged:E},U=(t=x,o,e)=>{const{kind:r,metadata:i}=e;let n=globalThis.litPropertyMetadata.get(i);if(void 0===n&&globalThis.litPropertyMetadata.set(i,n=new Map),n.set(e.name,t),"accessor"===r){const{name:r}=e;return{set(e){const i=o.get.call(this);o.set.call(this,e),this.requestUpdate(r,i,t)},init(o){return void 0!==o&&this.C(r,void 0,t),o}}}if("setter"===r){const{name:r}=e;return function(e){const i=this[r];o.call(this,e),this.requestUpdate(r,i,t)}}throw Error("Unsupported decorator location: "+r)};function I(t){return(o,e)=>"object"==typeof e?U(t,o,e):((t,o,e)=>{const r=o.hasOwnProperty(e);return o.constructor.createProperty(e,r?{...t,wrapped:!0}:t),r?Object.getOwnPropertyDescriptor(o,e):void 0})(t,o,e)
32
32
  /**
33
33
  * @license
34
34
  * Copyright 2017 Google LLC
35
35
  * SPDX-License-Identifier: BSD-3-Clause
36
- */}function I(t){return U({...t,state:!0,attribute:!1})}class L{constructor(t=0){this.timeout=t,this.callbacks=[]}run(t,o){return this.callbacks=[t],this.debounce(o)}queue(t,o){return this.callbacks.push(t),this.debounce(o)}cancel(){this.clearTimeout(),this.resolvePromise&&this.resolvePromise(!1),this.clearPromise()}debounce(t){return null==this.promise&&(this.promise=new Promise(((t,o)=>{this.resolvePromise=t,this.rejectPromise=o}))),this.clearTimeout(),this._debounce=window.setTimeout((()=>this.runCallbacks()),null!=t?t:this.timeout),this.promise}async runCallbacks(){var t,o;const e=[...this.callbacks];this.callbacks=[];const r=null!==(t=this.rejectPromise)&&void 0!==t?t:()=>null,i=null!==(o=this.resolvePromise)&&void 0!==o?o:()=>null;this.clearPromise();for(let t of e)try{await t()}catch(t){return void r(t)}i(!0)}clearTimeout(){null!=this._debounce&&window.clearTimeout(this._debounce)}clearPromise(){this.promise=void 0,this.resolvePromise=void 0,this.rejectPromise=void 0}}const A=t=>new Promise((o=>setTimeout(o,t)));function k(t,o){try{return function(t,o){if(t===o)return!0;if(t&&o&&"object"==typeof t&&"object"==typeof o){if(t.constructor!==o.constructor)return!1;var e,r,i;if(Array.isArray(t)){if((e=t.length)!=o.length)return!1;for(r=e;0!=r--;)if(!k(t[r],o[r]))return!1;return!0}if(t instanceof Map&&o instanceof Map){if(t.size!==o.size)return!1;for(r of t.entries())if(!o.has(r[0]))return!1;for(r of t.entries())if(!k(r[1],o.get(r[0])))return!1;return!0}if(t instanceof Set&&o instanceof Set){if(t.size!==o.size)return!1;for(r of t.entries())if(!o.has(r[0]))return!1;return!0}if(t.constructor===RegExp)return t.source===o.source&&t.flags===o.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===o.valueOf();if((e=(i=Object.keys(t)).length)!==Object.keys(o).length)return!1;for(r=e;0!=r--;)if(!Object.prototype.hasOwnProperty.call(o,i[r]))return!1;for(r=e;0!=r--;){var n=i[r];if(!k(t[n],o[n]))return!1}return!0}return t!=t&&o!=o}(t,o)}catch(t){return!1}}const W=t=>o=>{window.customElements.get(t)||window.customElements.define(t,o)};function K(t,o){const e=()=>JSON.parse(JSON.stringify(t));return U({type:Object,converter:{fromAttribute:t=>{if(null==t)return e();try{return JSON.parse(t)}catch{return e()}},toAttribute:t=>JSON.stringify(t)},hasChanged:(t,o)=>!k(t,o),...null!=o?o:{}})}
36
+ */}function L(t){return I({...t,state:!0,attribute:!1})}const A=t=>new Promise((o=>setTimeout(o,t)));function k(t,o){try{return function(t,o){if(t===o)return!0;if(t&&o&&"object"==typeof t&&"object"==typeof o){if(t.constructor!==o.constructor)return!1;var e,r,i;if(Array.isArray(t)){if((e=t.length)!=o.length)return!1;for(r=e;0!=r--;)if(!k(t[r],o[r]))return!1;return!0}if(t instanceof Map&&o instanceof Map){if(t.size!==o.size)return!1;for(r of t.entries())if(!o.has(r[0]))return!1;for(r of t.entries())if(!k(r[1],o.get(r[0])))return!1;return!0}if(t instanceof Set&&o instanceof Set){if(t.size!==o.size)return!1;for(r of t.entries())if(!o.has(r[0]))return!1;return!0}if(t.constructor===RegExp)return t.source===o.source&&t.flags===o.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===o.valueOf();if((e=(i=Object.keys(t)).length)!==Object.keys(o).length)return!1;for(r=e;0!=r--;)if(!Object.prototype.hasOwnProperty.call(o,i[r]))return!1;for(r=e;0!=r--;){var n=i[r];if(!k(t[n],o[n]))return!1}return!0}return t!=t&&o!=o}(t,o)}catch(t){return!1}}const W=t=>o=>{window.customElements.get(t)||window.customElements.define(t,o)};function K(t,o){const e=()=>JSON.parse(JSON.stringify(t));return I({type:Object,converter:{fromAttribute:t=>{if(null==t)return e();try{return JSON.parse(t)}catch{return e()}},toAttribute:t=>JSON.stringify(t)},hasChanged:(t,o)=>!k(t,o),...null!=o?o:{}})}
37
37
  /**
38
38
  * @license
39
39
  * Copyright 2017 Google LLC
@@ -67,7 +67,7 @@ let mo=class extends Pt{constructor(){super(...arguments),this.renderOptions={ho
67
67
  * Copyright 2019 Google LLC
68
68
  * SPDX-License-Identifier: BSD-3-Clause
69
69
  */
70
- const Eo=window,Co=Eo.ShadowRoot&&(void 0===Eo.ShadyCSS||Eo.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;class Ro extends mo{createRenderRoot(){const t=this.constructor;t.elementDefinitions&&!t.registry&&(t.registry=new CustomElementRegistry,Object.entries(t.elementDefinitions).forEach((([o,e])=>t.registry.define(o,e))));const o={...t.shadowRootOptions,customElements:t.registry},e=this.renderOptions.creationScope=this.attachShadow(o);return((t,o)=>{Co?t.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):o.forEach((o=>{const e=document.createElement("style"),r=Eo.litNonce;void 0!==r&&e.setAttribute("nonce",r),e.textContent=o.cssText,t.appendChild(e)}))})(e,t.elementStyles),e}}var xo,Uo=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};const Io=Symbol("constructorPrototype"),Lo=Symbol("constructorName"),Ao=Symbol("exportpartsDebouncer");class ko extends Ro{constructor(){super(),this[xo]=new L(5),this[Lo]=this.constructor.name,this[Io]=this.constructor.prototype}adoptedCallback(){this.constructor.name!==this[Lo]&&Object.setPrototypeOf(this,this[Io])}updated(t){super.updated(t),setTimeout((()=>{this.contentAvailableCallback(t),this.scheduleExportpartsUpdate()}),0)}contentAvailableCallback(t){var o,e;if((null!==(e=null===(o=this.shadowRoot)||void 0===o?void 0:o.querySelectorAll(".ft-lit-element--custom-stylesheet"))&&void 0!==e?e:[]).forEach((t=>t.remove())),this.customStylesheet){const t=document.createElement("style");t.classList.add("ft-lit-element--custom-stylesheet"),t.innerHTML=this.customStylesheet,this.shadowRoot.append(t)}}scheduleExportpartsUpdate(){this[Ao].run((()=>{var t;(null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())?this.setExportpartsAttribute([this.exportpartsPrefix]):null!=this.exportpartsPrefixes&&this.exportpartsPrefixes.length>0&&this.setExportpartsAttribute(this.exportpartsPrefixes)}))}setExportpartsAttribute(t){var o,e,r,i,n,a;const s=t=>null!=t&&t.trim().length>0,c=t.filter(s).map((t=>t.trim()));if(0===c.length)return void this.removeAttribute("exportparts");const l=new Set;for(let t of null!==(e=null===(o=this.shadowRoot)||void 0===o?void 0:o.querySelectorAll("[part],[exportparts]"))&&void 0!==e?e:[]){const o=null!==(i=null===(r=t.getAttribute("part"))||void 0===r?void 0:r.split(" "))&&void 0!==i?i:[],e=null!==(a=null===(n=t.getAttribute("exportparts"))||void 0===n?void 0:n.split(",").map((t=>t.split(":")[1])))&&void 0!==a?a:[];new Array(...o,...e).filter(s).map((t=>t.trim())).forEach((t=>l.add(t)))}if(0===l.size)return void this.removeAttribute("exportparts");const f=[...l.values()].flatMap((t=>c.map((o=>`${t}:${o}--${t}`))));this.setAttribute("exportparts",[...this.part,...f].join(", "))}}xo=Ao,Uo([U()],ko.prototype,"exportpartsPrefix",void 0),Uo([K([])],ko.prototype,"exportpartsPrefixes",void 0),Uo([U()],ko.prototype,"customStylesheet",void 0);const Wo=wo.create("--ft-utils-highlight-html-background-color","","COLOR","#FFF26E");Ot`
70
+ const Eo=window,Co=Eo.ShadowRoot&&(void 0===Eo.ShadyCSS||Eo.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype;class Ro extends mo{createRenderRoot(){const t=this.constructor;t.elementDefinitions&&!t.registry&&(t.registry=new CustomElementRegistry,Object.entries(t.elementDefinitions).forEach((([o,e])=>t.registry.define(o,e))));const o={...t.shadowRootOptions,customElements:t.registry},e=this.renderOptions.creationScope=this.attachShadow(o);return((t,o)=>{Co?t.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):o.forEach((o=>{const e=document.createElement("style"),r=Eo.litNonce;void 0!==r&&e.setAttribute("nonce",r),e.textContent=o.cssText,t.appendChild(e)}))})(e,t.elementStyles),e}}var xo,Uo=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};const Io=Symbol("constructorPrototype"),Lo=Symbol("constructorName"),Ao=Symbol("exportpartsDebouncer");class ko extends Ro{constructor(){super(),this[xo]=new n(5),this[Lo]=this.constructor.name,this[Io]=this.constructor.prototype}adoptedCallback(){this.constructor.name!==this[Lo]&&Object.setPrototypeOf(this,this[Io])}updated(t){super.updated(t),setTimeout((()=>{this.contentAvailableCallback(t),this.scheduleExportpartsUpdate()}),0)}contentAvailableCallback(t){var o,e;if((null!==(e=null===(o=this.shadowRoot)||void 0===o?void 0:o.querySelectorAll(".ft-lit-element--custom-stylesheet"))&&void 0!==e?e:[]).forEach((t=>t.remove())),this.customStylesheet){const t=document.createElement("style");t.classList.add("ft-lit-element--custom-stylesheet"),t.innerHTML=this.customStylesheet,this.shadowRoot.append(t)}}scheduleExportpartsUpdate(){this[Ao].run((()=>{var t;(null===(t=this.exportpartsPrefix)||void 0===t?void 0:t.trim())?this.setExportpartsAttribute([this.exportpartsPrefix]):null!=this.exportpartsPrefixes&&this.exportpartsPrefixes.length>0&&this.setExportpartsAttribute(this.exportpartsPrefixes)}))}setExportpartsAttribute(t){var o,e,r,i,n,a;const s=t=>null!=t&&t.trim().length>0,c=t.filter(s).map((t=>t.trim()));if(0===c.length)return void this.removeAttribute("exportparts");const l=new Set;for(let t of null!==(e=null===(o=this.shadowRoot)||void 0===o?void 0:o.querySelectorAll("[part],[exportparts]"))&&void 0!==e?e:[]){const o=null!==(i=null===(r=t.getAttribute("part"))||void 0===r?void 0:r.split(" "))&&void 0!==i?i:[],e=null!==(a=null===(n=t.getAttribute("exportparts"))||void 0===n?void 0:n.split(",").map((t=>t.split(":")[1])))&&void 0!==a?a:[];new Array(...o,...e).filter(s).map((t=>t.trim())).forEach((t=>l.add(t)))}if(0===l.size)return void this.removeAttribute("exportparts");const f=[...l.values()].flatMap((t=>c.map((o=>`${t}:${o}--${t}`))));this.setAttribute("exportparts",[...this.part,...f].join(", "))}}xo=Ao,Uo([I()],ko.prototype,"exportpartsPrefix",void 0),Uo([K([])],ko.prototype,"exportpartsPrefixes",void 0),Uo([I()],ko.prototype,"customStylesheet",void 0);const Wo=wo.create("--ft-utils-highlight-html-background-color","","COLOR","#FFF26E");Ot`
71
71
  .highlight-html-match {
72
72
  background: ${Wo};
73
73
  }
@@ -103,10 +103,10 @@ const Eo=window,Co=Eo.ShadowRoot&&(void 0===Eo.ShadyCSS||Eo.ShadyCSS.nativeShado
103
103
  display: inline-block;
104
104
  width: 0;
105
105
  }
106
- `;class Ko{constructor(t,o){this.defaultLabels=t,this.labels=o}resolve(t,...o){var e,r;t=this.resolvePluralKey(t,o);let i=null!==(r=null!==(e=this.labels[t])&&void 0!==e?e:this.defaultLabels[t])&&void 0!==r?r:"";return o.forEach(((t,o)=>i=i.replace(new RegExp(`\\{${o}([^}]*)\\}`,"g"),((o,e)=>this.formatValue(t,e))))),i}resolvePluralKey(t,o){for(let e of o)if("number"==typeof e){const o=`${String(t)}[\\=${e}]`;if(o in this.labels||o in this.defaultLabels)return o}return t}formatValue(t,o){return t instanceof Date?this.formatDate(t,o):null!=t?t:""}formatDate(t,o){const e=e=>(null==o?void 0:o.includes("date"))?t.toLocaleDateString(e):(null==o?void 0:o.includes("time"))?t.toLocaleTimeString(e):t.toLocaleString(e);try{return e(document.documentElement.lang)}catch(t){return e()}}}const jo=t=>{const o=null!=t?t:{};return(t,e)=>{var r;const i={hasChanged:(t,o)=>!k(t,o),attribute:!1,...o};U(i)(t,e);const n=t.constructor;n.reduxProperties=new Map(n.reduxProperties),n.reduxProperties.set(e,{selector:null!==(r=o.selector)&&void 0!==r?r:t=>t[e],store:o.store})}};class Po{constructor(){this.queue=[]}add(t,o=!1){o&&(this.queue=this.queue.filter((o=>o.type!==t.type))),this.queue.push(t)}consume(t){const o=this.queue.find((o=>o.type===t));return o&&(this.queue=this.queue.filter((t=>t!==o))),o}}function Mo(t){var o;return null!==(o=null==t?void 0:t.isFtReduxStore)&&void 0!==o&&o}var Fo,Zo,To;const _o=Symbol("internalReduxEventsUnsubscribers"),Bo=Symbol("internalStoresUnsubscribers"),Do=Symbol("internalStores");class $o extends ko{constructor(){super(...arguments),this[Fo]=new Map,this[Zo]=new Map,this[To]=[]}get reduxConstructor(){return this.constructor}update(t){super.update(t),[...this.reduxConstructor.reduxReactiveProperties].some((o=>t.has(o)))&&this.updateFromStores()}getUnnamedStore(){if(this[Do].size>1)throw new Error("Cannot resolve unnamed store when multiple stores are configured.");return[...this[Do].values()][0]}getStore(t){return null==t?this.getUnnamedStore():this[Do].get(t)}addStore(t,o){var e;o=null!==(e=null!=o?o:Mo(t)?t.name:void 0)&&void 0!==e?e:"default-store",this.unsubscribeFromStore(o),this.setupStore(o,t)}removeStore(t){const o="string"==typeof t?t:t.name;this.unsubscribeFromStore(o),this[Do].delete(o)}setupStore(t,o){this[Do].set(t,o),this.subscribeToStore(t,o),this.updateFromStores()}setupStores(){this.unsubscribeFromStores(),this[Do].forEach(((t,o)=>this.subscribeToStore(o,t))),this.updateFromStores()}updateFromStores(){this.reduxConstructor.reduxProperties.forEach(((t,o)=>{const e=this.constructor.getPropertyOptions(o);if(!(null==e?void 0:e.attribute)||!this.hasAttribute("string"==typeof(null==e?void 0:e.attribute)?e.attribute:o)){const e=this.getStore(t.store);e&&(t.store?this[Bo].has(t.store):this[Bo].size>0)&&(this[o]=t.selector(e.getState(),this))}}))}subscribeToStore(t,o){var e;this[Bo].set(t,o.subscribe((()=>this.updateFromStores()))),Mo(o)&&o.eventBus&&(null===(e=this.reduxConstructor.reduxEventListeners)||void 0===e||e.forEach(((t,e)=>{if("function"==typeof this[e]&&(!t.store||o.name===t.store)){const r=t=>this[e](t);o.eventBus.addEventListener(t.eventName,r),this[_o].push((()=>o.eventBus.removeEventListener(t.eventName,r)))}}))),this.onStoreAvailable(t)}unsubscribeFromStores(){this[Bo].forEach(((t,o)=>this.unsubscribeFromStore(o))),this[_o].forEach((t=>t())),this[_o]=[]}unsubscribeFromStore(t){this[Bo].has(t)&&this[Bo].get(t)(),this[Bo].delete(t)}onStoreAvailable(t){}connectedCallback(){super.connectedCallback(),this.setupStores()}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeFromStores()}}function zo(t){for(var o=arguments.length,e=Array(o>1?o-1:0),r=1;r<o;r++)e[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+t+(e.length?" "+e.map((function(t){return"'"+t+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Go(t){return!!t&&!!t[ke]}function Ho(t){var o;return!!t&&(function(t){if(!t||"object"!=typeof t)return!1;var o=Object.getPrototypeOf(t);if(null===o)return!0;var e=Object.hasOwnProperty.call(o,"constructor")&&o.constructor;return e===Object||"function"==typeof e&&Function.toString.call(e)===We}(t)||Array.isArray(t)||!!t[Ae]||!!(null===(o=t.constructor)||void 0===o?void 0:o[Ae])||Qo(t)||te(t))}function qo(t,o,e){void 0===e&&(e=!1),0===Yo(t)?(e?Object.keys:Ke)(t).forEach((function(r){e&&"symbol"==typeof r||o(r,t[r],t)})):t.forEach((function(e,r){return o(r,e,t)}))}function Yo(t){var o=t[ke];return o?o.i>3?o.i-4:o.i:Array.isArray(t)?1:Qo(t)?2:te(t)?3:0}function Vo(t,o){return 2===Yo(t)?t.has(o):Object.prototype.hasOwnProperty.call(t,o)}function Jo(t,o,e){var r=Yo(t);2===r?t.set(o,e):3===r?t.add(e):t[o]=e}function Xo(t,o){return t===o?0!==t||1/t==1/o:t!=t&&o!=o}function Qo(t){return xe&&t instanceof Map}function te(t){return Ue&&t instanceof Set}function oe(t){return t.o||t.t}function ee(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var o=je(t);delete o[ke];for(var e=Ke(o),r=0;r<e.length;r++){var i=e[r],n=o[i];!1===n.writable&&(n.writable=!0,n.configurable=!0),(n.get||n.set)&&(o[i]={configurable:!0,writable:!0,enumerable:n.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),o)}function re(t,o){return void 0===o&&(o=!1),ne(t)||Go(t)||!Ho(t)||(Yo(t)>1&&(t.set=t.add=t.clear=t.delete=ie),Object.freeze(t),o&&qo(t,(function(t,o){return re(o,!0)}),!0)),t}function ie(){zo(2)}function ne(t){return null==t||"object"!=typeof t||Object.isFrozen(t)}function ae(t){var o=Pe[t];return o||zo(18,t),o}function se(){return Ce}function ce(t,o){o&&(ae("Patches"),t.u=[],t.s=[],t.v=o)}function le(t){fe(t),t.p.forEach(ue),t.p=null}function fe(t){t===Ce&&(Ce=t.l)}function he(t){return Ce={p:[],l:Ce,h:t,m:!0,_:0}}function ue(t){var o=t[ke];0===o.i||1===o.i?o.j():o.g=!0}function de(t,o){o._=o.p.length;var e=o.p[0],r=void 0!==t&&t!==e;return o.h.O||ae("ES5").S(o,t,r),r?(e[ke].P&&(le(o),zo(4)),Ho(t)&&(t=pe(o,t),o.l||be(o,t)),o.u&&ae("Patches").M(e[ke].t,t,o.u,o.s)):t=pe(o,e,[]),le(o),o.u&&o.v(o.u,o.s),t!==Le?t:void 0}function pe(t,o,e){if(ne(o))return o;var r=o[ke];if(!r)return qo(o,(function(i,n){return ye(t,r,o,i,n,e)}),!0),o;if(r.A!==t)return o;if(!r.P)return be(t,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var i=4===r.i||5===r.i?r.o=ee(r.k):r.o,n=i,a=!1;3===r.i&&(n=new Set(i),i.clear(),a=!0),qo(n,(function(o,n){return ye(t,r,i,o,n,e,a)})),be(t,i,!1),e&&t.u&&ae("Patches").N(r,e,t.u,t.s)}return r.o}function ye(t,o,e,r,i,n,a){if(Go(i)){var s=pe(t,i,n&&o&&3!==o.i&&!Vo(o.R,r)?n.concat(r):void 0);if(Jo(e,r,s),!Go(s))return;t.m=!1}else a&&e.add(i);if(Ho(i)&&!ne(i)){if(!t.h.D&&t._<1)return;pe(t,i),o&&o.A.l||be(t,i)}}function be(t,o,e){void 0===e&&(e=!1),!t.l&&t.h.D&&t.m&&re(o,e)}function ge(t,o){var e=t[ke];return(e?oe(e):t)[o]}function me(t,o){if(o in t)for(var e=Object.getPrototypeOf(t);e;){var r=Object.getOwnPropertyDescriptor(e,o);if(r)return r;e=Object.getPrototypeOf(e)}}function ve(t){t.P||(t.P=!0,t.l&&ve(t.l))}function Oe(t){t.o||(t.o=ee(t.t))}function we(t,o,e){var r=Qo(o)?ae("MapSet").F(o,e):te(o)?ae("MapSet").T(o,e):t.O?function(t,o){var e=Array.isArray(t),r={i:e?1:0,A:o?o.A:se(),P:!1,I:!1,R:{},l:o,t,k:null,o:null,j:null,C:!1},i=r,n=Me;e&&(i=[r],n=Fe);var a=Proxy.revocable(i,n),s=a.revoke,c=a.proxy;return r.k=c,r.j=s,c}(o,e):ae("ES5").J(o,e);return(e?e.A:se()).p.push(r),r}function Ne(t){return Go(t)||zo(22,t),function t(o){if(!Ho(o))return o;var e,r=o[ke],i=Yo(o);if(r){if(!r.P&&(r.i<4||!ae("ES5").K(r)))return r.t;r.I=!0,e=Se(o,i),r.I=!1}else e=Se(o,i);return qo(e,(function(o,i){r&&function(t,o){return 2===Yo(t)?t.get(o):t[o]}(r.t,o)===i||Jo(e,o,t(i))})),3===i?new Set(e):e}(t)}function Se(t,o){switch(o){case 2:return new Map(t);case 3:return Array.from(t)}return ee(t)}Fo=Bo,Zo=Do,To=_o,$o.reduxProperties=new Map,$o.reduxReactiveProperties=new Set,$o.reduxEventListeners=new Map;var Ee,Ce,Re="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),xe="undefined"!=typeof Map,Ue="undefined"!=typeof Set,Ie="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,Le=Re?Symbol.for("immer-nothing"):((Ee={})["immer-nothing"]=!0,Ee),Ae=Re?Symbol.for("immer-draftable"):"__$immer_draftable",ke=Re?Symbol.for("immer-state"):"__$immer_state",We=""+Object.prototype.constructor,Ke="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,je=Object.getOwnPropertyDescriptors||function(t){var o={};return Ke(t).forEach((function(e){o[e]=Object.getOwnPropertyDescriptor(t,e)})),o},Pe={},Me={get:function(t,o){if(o===ke)return t;var e=oe(t);if(!Vo(e,o))return function(t,o,e){var r,i=me(o,e);return i?"value"in i?i.value:null===(r=i.get)||void 0===r?void 0:r.call(t.k):void 0}(t,e,o);var r=e[o];return t.I||!Ho(r)?r:r===ge(t.t,o)?(Oe(t),t.o[o]=we(t.A.h,r,t)):r},has:function(t,o){return o in oe(t)},ownKeys:function(t){return Reflect.ownKeys(oe(t))},set:function(t,o,e){var r=me(oe(t),o);if(null==r?void 0:r.set)return r.set.call(t.k,e),!0;if(!t.P){var i=ge(oe(t),o),n=null==i?void 0:i[ke];if(n&&n.t===e)return t.o[o]=e,t.R[o]=!1,!0;if(Xo(e,i)&&(void 0!==e||Vo(t.t,o)))return!0;Oe(t),ve(t)}return t.o[o]===e&&(void 0!==e||o in t.o)||Number.isNaN(e)&&Number.isNaN(t.o[o])||(t.o[o]=e,t.R[o]=!0),!0},deleteProperty:function(t,o){return void 0!==ge(t.t,o)||o in t.t?(t.R[o]=!1,Oe(t),ve(t)):delete t.R[o],t.o&&delete t.o[o],!0},getOwnPropertyDescriptor:function(t,o){var e=oe(t),r=Reflect.getOwnPropertyDescriptor(e,o);return r?{writable:!0,configurable:1!==t.i||"length"!==o,enumerable:r.enumerable,value:e[o]}:r},defineProperty:function(){zo(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){zo(12)}},Fe={};qo(Me,(function(t,o){Fe[t]=function(){return arguments[0]=arguments[0][0],o.apply(this,arguments)}})),Fe.deleteProperty=function(t,o){return Fe.set.call(this,t,o,void 0)},Fe.set=function(t,o,e){return Me.set.call(this,t[0],o,e,t[0])};var Ze=function(){function t(t){var o=this;this.O=Ie,this.D=!0,this.produce=function(t,e,r){if("function"==typeof t&&"function"!=typeof e){var i=e;e=t;var n=o;return function(t){var o=this;void 0===t&&(t=i);for(var r=arguments.length,a=Array(r>1?r-1:0),s=1;s<r;s++)a[s-1]=arguments[s];return n.produce(t,(function(t){var r;return(r=e).call.apply(r,[o,t].concat(a))}))}}var a;if("function"!=typeof e&&zo(6),void 0!==r&&"function"!=typeof r&&zo(7),Ho(t)){var s=he(o),c=we(o,t,void 0),l=!0;try{a=e(c),l=!1}finally{l?le(s):fe(s)}return"undefined"!=typeof Promise&&a instanceof Promise?a.then((function(t){return ce(s,r),de(t,s)}),(function(t){throw le(s),t})):(ce(s,r),de(a,s))}if(!t||"object"!=typeof t){if(void 0===(a=e(t))&&(a=t),a===Le&&(a=void 0),o.D&&re(a,!0),r){var f=[],h=[];ae("Patches").M(t,a,f,h),r(f,h)}return a}zo(21,t)},this.produceWithPatches=function(t,e){if("function"==typeof t)return function(e){for(var r=arguments.length,i=Array(r>1?r-1:0),n=1;n<r;n++)i[n-1]=arguments[n];return o.produceWithPatches(e,(function(o){return t.apply(void 0,[o].concat(i))}))};var r,i,n=o.produce(t,e,(function(t,o){r=t,i=o}));return"undefined"!=typeof Promise&&n instanceof Promise?n.then((function(t){return[t,r,i]})):[n,r,i]},"boolean"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),"boolean"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze)}var o=t.prototype;return o.createDraft=function(t){Ho(t)||zo(8),Go(t)&&(t=Ne(t));var o=he(this),e=we(this,t,void 0);return e[ke].C=!0,fe(o),e},o.finishDraft=function(t,o){var e=(t&&t[ke]).A;return ce(e,o),de(void 0,e)},o.setAutoFreeze=function(t){this.D=t},o.setUseProxies=function(t){t&&!Ie&&zo(20),this.O=t},o.applyPatches=function(t,o){var e;for(e=o.length-1;e>=0;e--){var r=o[e];if(0===r.path.length&&"replace"===r.op){t=r.value;break}}e>-1&&(o=o.slice(e+1));var i=ae("Patches").$;return Go(t)?i(t,o):this.produce(t,(function(t){return i(t,o)}))},t}(),Te=new Ze,_e=Te.produce;function Be(t){return Be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Be(t)}function De(t){var o=function(t,o){if("object"!==Be(t)||null===t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,o||"default");if("object"!==Be(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===o?String:Number)(t)}(t,"string");return"symbol"===Be(o)?o:String(o)}function $e(t,o,e){return(o=De(o))in t?Object.defineProperty(t,o,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[o]=e,t}function ze(t,o){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);o&&(r=r.filter((function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable}))),e.push.apply(e,r)}return e}function Ge(t){for(var o=1;o<arguments.length;o++){var e=null!=arguments[o]?arguments[o]:{};o%2?ze(Object(e),!0).forEach((function(o){$e(t,o,e[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):ze(Object(e)).forEach((function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(e,o))}))}return t}function He(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. "}Te.produceWithPatches.bind(Te),Te.setAutoFreeze.bind(Te),Te.setUseProxies.bind(Te),Te.applyPatches.bind(Te),Te.createDraft.bind(Te),Te.finishDraft.bind(Te);var qe="function"==typeof Symbol&&Symbol.observable||"@@observable",Ye=function(){return Math.random().toString(36).substring(7).split("").join(".")},Ve={INIT:"@@redux/INIT"+Ye(),REPLACE:"@@redux/REPLACE"+Ye(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+Ye()}};function Je(t,o,e){var r;if("function"==typeof o&&"function"==typeof e||"function"==typeof e&&"function"==typeof arguments[3])throw new Error(He(0));if("function"==typeof o&&void 0===e&&(e=o,o=void 0),void 0!==e){if("function"!=typeof e)throw new Error(He(1));return e(Je)(t,o)}if("function"!=typeof t)throw new Error(He(2));var i=t,n=o,a=[],s=a,c=!1;function l(){s===a&&(s=a.slice())}function f(){if(c)throw new Error(He(3));return n}function h(t){if("function"!=typeof t)throw new Error(He(4));if(c)throw new Error(He(5));var o=!0;return l(),s.push(t),function(){if(o){if(c)throw new Error(He(6));o=!1,l();var e=s.indexOf(t);s.splice(e,1),a=null}}}function u(t){if(!function(t){if("object"!=typeof t||null===t)return!1;for(var o=t;null!==Object.getPrototypeOf(o);)o=Object.getPrototypeOf(o);return Object.getPrototypeOf(t)===o}(t))throw new Error(He(7));if(void 0===t.type)throw new Error(He(8));if(c)throw new Error(He(9));try{c=!0,n=i(n,t)}finally{c=!1}for(var o=a=s,e=0;e<o.length;e++){(0,o[e])()}return t}return u({type:Ve.INIT}),(r={dispatch:u,subscribe:h,getState:f,replaceReducer:function(t){if("function"!=typeof t)throw new Error(He(10));i=t,u({type:Ve.REPLACE})}})[qe]=function(){var t,o=h;return(t={subscribe:function(t){if("object"!=typeof t||null===t)throw new Error(He(11));function e(){t.next&&t.next(f())}return e(),{unsubscribe:o(e)}}})[qe]=function(){return this},t},r}function Xe(t){for(var o=Object.keys(t),e={},r=0;r<o.length;r++){var i=o[r];"function"==typeof t[i]&&(e[i]=t[i])}var n,a=Object.keys(e);try{!function(t){Object.keys(t).forEach((function(o){var e=t[o];if(void 0===e(void 0,{type:Ve.INIT}))throw new Error(He(12));if(void 0===e(void 0,{type:Ve.PROBE_UNKNOWN_ACTION()}))throw new Error(He(13))}))}(e)}catch(t){n=t}return function(t,o){if(void 0===t&&(t={}),n)throw n;for(var r=!1,i={},s=0;s<a.length;s++){var c=a[s],l=e[c],f=t[c],h=l(f,o);if(void 0===h)throw o&&o.type,new Error(He(14));i[c]=h,r=r||h!==f}return(r=r||a.length!==Object.keys(t).length)?i:t}}function Qe(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];return 0===o.length?function(t){return t}:1===o.length?o[0]:o.reduce((function(t,o){return function(){return t(o.apply(void 0,arguments))}}))}function tr(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];return function(t){return function(){var e=t.apply(void 0,arguments),r=function(){throw new Error(He(15))},i={getState:e.getState,dispatch:function(){return r.apply(void 0,arguments)}},n=o.map((function(t){return t(i)}));return r=Qe.apply(void 0,n)(e.dispatch),Ge(Ge({},e),{},{dispatch:r})}}}function or(t){return function(o){var e=o.dispatch,r=o.getState;return function(o){return function(i){return"function"==typeof i?i(e,r,t):o(i)}}}}var er=or();er.withExtraArgument=or;var rr,ir=er,nr=(rr=function(t,o){return rr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},rr(t,o)},function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function e(){this.constructor=t}rr(t,o),t.prototype=null===o?Object.create(o):(e.prototype=o.prototype,new e)}),ar=function(t,o){var e,r,i,n,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return n={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(n[Symbol.iterator]=function(){return this}),n;function s(n){return function(s){return function(n){if(e)throw new TypeError("Generator is already executing.");for(;a;)try{if(e=1,r&&(i=2&n[0]?r.return:n[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,n[1])).done)return i;switch(r=0,i&&(n=[2&n[0],i.value]),n[0]){case 0:case 1:i=n;break;case 4:return a.label++,{value:n[1],done:!1};case 5:a.label++,r=n[1],n=[0];continue;case 7:n=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==n[0]&&2!==n[0])){a=0;continue}if(3===n[0]&&(!i||n[1]>i[0]&&n[1]<i[3])){a.label=n[1];break}if(6===n[0]&&a.label<i[1]){a.label=i[1],i=n;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(n);break}i[2]&&a.ops.pop(),a.trys.pop();continue}n=o.call(t,a)}catch(t){n=[6,t],r=0}finally{e=i=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}([n,s])}}},sr=function(t,o){for(var e=0,r=o.length,i=t.length;e<r;e++,i++)t[i]=o[e];return t},cr=Object.defineProperty,lr=Object.defineProperties,fr=Object.getOwnPropertyDescriptors,hr=Object.getOwnPropertySymbols,ur=Object.prototype.hasOwnProperty,dr=Object.prototype.propertyIsEnumerable,pr=function(t,o,e){return o in t?cr(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e},yr=function(t,o){for(var e in o||(o={}))ur.call(o,e)&&pr(t,e,o[e]);if(hr)for(var r=0,i=hr(o);r<i.length;r++){e=i[r];dr.call(o,e)&&pr(t,e,o[e])}return t},br=function(t,o){return lr(t,fr(o))},gr="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?Qe:Qe.apply(null,arguments)};var mr=function(t){function o(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var i=t.apply(this,e)||this;return Object.setPrototypeOf(i,o.prototype),i}return nr(o,t),Object.defineProperty(o,Symbol.species,{get:function(){return o},enumerable:!1,configurable:!0}),o.prototype.concat=function(){for(var o=[],e=0;e<arguments.length;e++)o[e]=arguments[e];return t.prototype.concat.apply(this,o)},o.prototype.prepend=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return 1===t.length&&Array.isArray(t[0])?new(o.bind.apply(o,sr([void 0],t[0].concat(this)))):new(o.bind.apply(o,sr([void 0],t.concat(this))))},o}(Array),vr=function(t){function o(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var i=t.apply(this,e)||this;return Object.setPrototypeOf(i,o.prototype),i}return nr(o,t),Object.defineProperty(o,Symbol.species,{get:function(){return o},enumerable:!1,configurable:!0}),o.prototype.concat=function(){for(var o=[],e=0;e<arguments.length;e++)o[e]=arguments[e];return t.prototype.concat.apply(this,o)},o.prototype.prepend=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return 1===t.length&&Array.isArray(t[0])?new(o.bind.apply(o,sr([void 0],t[0].concat(this)))):new(o.bind.apply(o,sr([void 0],t.concat(this))))},o}(Array);function Or(t){return Ho(t)?_e(t,(function(){})):t}function wr(){return function(t){return function(t){void 0===t&&(t={});var o=t.thunk,e=void 0===o||o;t.immutableCheck,t.serializableCheck;var r=new mr;e&&(!function(t){return"boolean"==typeof t}(e)?r.push(ir.withExtraArgument(e.extraArgument)):r.push(ir));return r}(t)}}function Nr(t){var o,e=wr(),r=t||{},i=r.reducer,n=void 0===i?void 0:i,a=r.middleware,s=void 0===a?e():a,c=r.devTools,l=void 0===c||c,f=r.preloadedState,h=void 0===f?void 0:f,u=r.enhancers,d=void 0===u?void 0:u;if("function"==typeof n)o=n;else{if(!function(t){if("object"!=typeof t||null===t)return!1;var o=Object.getPrototypeOf(t);if(null===o)return!0;for(var e=o;null!==Object.getPrototypeOf(e);)e=Object.getPrototypeOf(e);return o===e}(n))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');o=Xe(n)}var p=s;"function"==typeof p&&(p=p(e));var y=tr.apply(void 0,p),b=Qe;l&&(b=gr(yr({trace:!1},"object"==typeof l&&l)));var g=new vr(y),m=g;return Array.isArray(d)?m=sr([y],d):"function"==typeof d&&(m=d(g)),Je(o,h,b.apply(void 0,m))}function Sr(t,o){function e(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];if(o){var i=o.apply(void 0,e);if(!i)throw new Error("prepareAction did not return an object");return yr(yr({type:t,payload:i.payload},"meta"in i&&{meta:i.meta}),"error"in i&&{error:i.error})}return{type:t,payload:e[0]}}return e.toString=function(){return""+t},e.type=t,e.match=function(o){return o.type===t},e}function Er(t){var o,e={},r=[],i={addCase:function(t,o){var r="string"==typeof t?t:t.type;if(r in e)throw new Error("addCase cannot be called with two reducers for the same action type");return e[r]=o,i},addMatcher:function(t,o){return r.push({matcher:t,reducer:o}),i},addDefaultCase:function(t){return o=t,i}};return t(i),[e,r,o]}function Cr(t){var o=t.name;if(!o)throw new Error("`name` is a required option for createSlice");var e,r="function"==typeof t.initialState?t.initialState:Or(t.initialState),i=t.reducers||{},n=Object.keys(i),a={},s={},c={};function l(){var o="function"==typeof t.extraReducers?Er(t.extraReducers):[t.extraReducers],e=o[0],i=void 0===e?{}:e,n=o[1],a=void 0===n?[]:n,c=o[2],l=void 0===c?void 0:c,f=yr(yr({},i),s);return function(t,o,e,r){void 0===e&&(e=[]);var i,n="function"==typeof o?Er(o):[o,e,r],a=n[0],s=n[1],c=n[2];if(function(t){return"function"==typeof t}(t))i=function(){return Or(t())};else{var l=Or(t);i=function(){return l}}function f(t,o){void 0===t&&(t=i());var e=sr([a[o.type]],s.filter((function(t){return(0,t.matcher)(o)})).map((function(t){return t.reducer})));return 0===e.filter((function(t){return!!t})).length&&(e=[c]),e.reduce((function(t,e){if(e){var r;if(Go(t))return void 0===(r=e(t,o))?t:r;if(Ho(t))return _e(t,(function(t){return e(t,o)}));if(void 0===(r=e(t,o))){if(null===t)return t;throw Error("A case reducer on a non-draftable value must not return undefined")}return r}return t}),t)}return f.getInitialState=i,f}(r,(function(t){for(var o in f)t.addCase(o,f[o]);for(var e=0,r=a;e<r.length;e++){var i=r[e];t.addMatcher(i.matcher,i.reducer)}l&&t.addDefaultCase(l)}))}return n.forEach((function(t){var e,r,n=i[t],l=o+"/"+t;"reducer"in n?(e=n.reducer,r=n.prepare):e=n,a[t]=e,s[l]=e,c[t]=r?Sr(l,r):Sr(l)})),{name:o,reducer:function(t,o){return e||(e=l()),e(t,o)},actions:c,caseReducers:a,getInitialState:function(){return e||(e=l()),e.getInitialState()}}}var Rr=["name","message","stack","code"],xr=function(t,o){this.payload=t,this.meta=o},Ur=function(t,o){this.payload=t,this.meta=o},Ir=function(t){if("object"==typeof t&&null!==t){for(var o={},e=0,r=Rr;e<r.length;e++){var i=r[e];"string"==typeof t[i]&&(o[i]=t[i])}return o}return{message:String(t)}};function Lr(t){if(t.meta&&t.meta.rejectedWithValue)throw t.payload;if(t.error)throw t.error;return t.payload}!function(){function t(t,o,e){var r=Sr(t+"/fulfilled",(function(t,o,e,r){return{payload:t,meta:br(yr({},r||{}),{arg:e,requestId:o,requestStatus:"fulfilled"})}})),i=Sr(t+"/pending",(function(t,o,e){return{payload:void 0,meta:br(yr({},e||{}),{arg:o,requestId:t,requestStatus:"pending"})}})),n=Sr(t+"/rejected",(function(t,o,r,i,n){return{payload:i,error:(e&&e.serializeError||Ir)(t||"Rejected"),meta:br(yr({},n||{}),{arg:r,requestId:o,rejectedWithValue:!!i,requestStatus:"rejected",aborted:"AbortError"===(null==t?void 0:t.name),condition:"ConditionError"===(null==t?void 0:t.name)})}})),a="undefined"!=typeof AbortController?AbortController:function(){function t(){this.signal={aborted:!1,addEventListener:function(){},dispatchEvent:function(){return!1},onabort:function(){},removeEventListener:function(){},reason:void 0,throwIfAborted:function(){}}}return t.prototype.abort=function(){},t}();return Object.assign((function(t){return function(s,c,l){var f,h=(null==e?void 0:e.idGenerator)?e.idGenerator(t):function(t){void 0===t&&(t=21);for(var o="",e=t;e--;)o+="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW"[64*Math.random()|0];return o}(),u=new a;function d(t){f=t,u.abort()}var p=function(){return a=this,p=null,y=function(){var a,p,y,b,g,m;return ar(this,(function(v){switch(v.label){case 0:return v.trys.push([0,4,,5]),b=null==(a=null==e?void 0:e.condition)?void 0:a.call(e,t,{getState:c,extra:l}),null===(O=b)||"object"!=typeof O||"function"!=typeof O.then?[3,2]:[4,b];case 1:b=v.sent(),v.label=2;case 2:if(!1===b||u.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};return g=new Promise((function(t,o){return u.signal.addEventListener("abort",(function(){return o({name:"AbortError",message:f||"Aborted"})}))})),s(i(h,t,null==(p=null==e?void 0:e.getPendingMeta)?void 0:p.call(e,{requestId:h,arg:t},{getState:c,extra:l}))),[4,Promise.race([g,Promise.resolve(o(t,{dispatch:s,getState:c,extra:l,requestId:h,signal:u.signal,abort:d,rejectWithValue:function(t,o){return new xr(t,o)},fulfillWithValue:function(t,o){return new Ur(t,o)}})).then((function(o){if(o instanceof xr)throw o;return o instanceof Ur?r(o.payload,h,t,o.meta):r(o,h,t)}))])];case 3:return y=v.sent(),[3,5];case 4:return m=v.sent(),y=m instanceof xr?n(null,h,t,m.payload,m.meta):n(m,h,t),[3,5];case 5:return e&&!e.dispatchConditionRejection&&n.match(y)&&y.meta.condition||s(y),[2,y]}var O}))},new Promise((function(t,o){var e=function(t){try{i(y.next(t))}catch(t){o(t)}},r=function(t){try{i(y.throw(t))}catch(t){o(t)}},i=function(o){return o.done?t(o.value):Promise.resolve(o.value).then(e,r)};i((y=y.apply(a,p)).next())}));var a,p,y}();return Object.assign(p,{abort:d,requestId:h,arg:t,unwrap:function(){return p.then(Lr)}})}}),{pending:i,rejected:n,fulfilled:r,typePrefix:t})}t.withTypes=function(){return t}}();var Ar,kr,Wr="listenerMiddleware";Sr(Wr+"/add"),Sr(Wr+"/removeAll"),Sr(Wr+"/remove"),"function"==typeof queueMicrotask&&queueMicrotask.bind("undefined"!=typeof window?window:"undefined"!=typeof global?global:globalThis),function(){function t(t,o){var e=i[t];return e?e.enumerable=o:i[t]=e={configurable:!0,enumerable:o,get:function(){var o=this[ke];return Me.get(o,t)},set:function(o){var e=this[ke];Me.set(e,t,o)}},e}function o(t){for(var o=t.length-1;o>=0;o--){var i=t[o][ke];if(!i.P)switch(i.i){case 5:r(i)&&ve(i);break;case 4:e(i)&&ve(i)}}}function e(t){for(var o=t.t,e=t.k,r=Ke(e),i=r.length-1;i>=0;i--){var n=r[i];if(n!==ke){var a=o[n];if(void 0===a&&!Vo(o,n))return!0;var s=e[n],c=s&&s[ke];if(c?c.t!==a:!Xo(s,a))return!0}}var l=!!o[ke];return r.length!==Ke(o).length+(l?0:1)}function r(t){var o=t.k;if(o.length!==t.t.length)return!0;var e=Object.getOwnPropertyDescriptor(o,o.length-1);if(e&&!e.get)return!0;for(var r=0;r<o.length;r++)if(!o.hasOwnProperty(r))return!0;return!1}var i={};!function(t,o){Pe[t]||(Pe[t]=o)}("ES5",{J:function(o,e){var r=Array.isArray(o),i=function(o,e){if(o){for(var r=Array(e.length),i=0;i<e.length;i++)Object.defineProperty(r,""+i,t(i,!0));return r}var n=je(e);delete n[ke];for(var a=Ke(n),s=0;s<a.length;s++){var c=a[s];n[c]=t(c,o||!!n[c].enumerable)}return Object.create(Object.getPrototypeOf(e),n)}(r,o),n={i:r?5:4,A:e?e.A:se(),P:!1,I:!1,R:{},l:e,t:o,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,ke,{value:n,writable:!0}),i},S:function(t,e,i){i?Go(e)&&e[ke].A===t&&o(t.p):(t.u&&function t(o){if(o&&"object"==typeof o){var e=o[ke];if(e){var i=e.t,n=e.k,a=e.R,s=e.i;if(4===s)qo(n,(function(o){o!==ke&&(void 0!==i[o]||Vo(i,o)?a[o]||t(n[o]):(a[o]=!0,ve(e)))})),qo(i,(function(t){void 0!==n[t]||Vo(n,t)||(a[t]=!1,ve(e))}));else if(5===s){if(r(e)&&(ve(e),a.length=!0),n.length<i.length)for(var c=n.length;c<i.length;c++)a[c]=!1;else for(var l=i.length;l<n.length;l++)a[l]=!0;for(var f=Math.min(n.length,i.length),h=0;h<f;h++)n.hasOwnProperty(h)||(a[h]=!0),void 0===a[h]&&t(n[h])}}}}(t.p[0]),o(t.p))},K:function(t){return 4===t.i?e(t):r(t)}})}(),window.ftReduxStores||(window.ftReduxStores={});class Kr{static get(t){var o;const e="string"==typeof t?t:t.name,r="string"==typeof t?void 0:t,i=window.ftReduxStores[e];if(Mo(i))return i;if(null==r)return;const n=Cr({...r,reducers:null!==(o=r.reducers)&&void 0!==o?o:{}}),a=Nr({reducer:(t,o)=>{var e;switch(o.type){case"CLEAR_FT_REDUX_STORE":return n.getInitialState();case"DEFAULT_STATE_FIELDS_VALUES_SETTER":return{...t,...null!==(e=o.overwrites)&&void 0!==e?e:{}};default:return n.reducer(t,o)}}});return window.ftReduxStores[r.name]=new Kr(n,a)}constructor(t,o){this.reduxSlice=t,this.reduxStore=o,this.isFtReduxStore=!0,this.eventBus=document.createElement("event-bus"),this.commands=new Po,this.actions=new Proxy(this.reduxSlice.actions,{get:(t,o,e)=>{const r=o,i=t[r];return i?(...t)=>{const o=i(...t);return this.reduxStore.dispatch(o),o}:t=>{this.setState({[r]:t})}}})}clear(){this.reduxStore.dispatch({type:"CLEAR_FT_REDUX_STORE"})}setState(t){this.reduxStore.dispatch({type:"DEFAULT_STATE_FIELDS_VALUES_SETTER",overwrites:t})}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(t){throw new Error("Not implemented yet.")}subscribe(t){return this.reduxStore.subscribe(t)}get name(){return this.reduxSlice.name}get reducer(){return this.reduxSlice.reducer}get caseReducers(){return this.reduxSlice.caseReducers}getInitialState(){return this.reduxSlice.getInitialState()}}navigator.vendor&&navigator.vendor.match(/apple/i)||(null===(kr=null===(Ar=window.safari)||void 0===Ar?void 0:Ar.pushNotification)||void 0===kr||kr.toString());const jr=Ot`
106
+ `;class Ko{constructor(t,o){this.defaultLabels=t,this.labels=o}resolve(t,...o){var e,r;t=this.resolvePluralKey(t,o);let i=null!==(r=null!==(e=this.labels[t])&&void 0!==e?e:this.defaultLabels[t])&&void 0!==r?r:"";return o.forEach(((t,o)=>i=i.replace(new RegExp(`\\{${o}([^}]*)\\}`,"g"),((o,e)=>this.formatValue(t,e))))),i}resolvePluralKey(t,o){for(let e of o)if("number"==typeof e){const o=`${String(t)}[\\=${e}]`;if(o in this.labels||o in this.defaultLabels)return o}return t}formatValue(t,o){return t instanceof Date?this.formatDate(t,o):null!=t?t:""}formatDate(t,o){const e=e=>(null==o?void 0:o.includes("date"))?t.toLocaleDateString(e):(null==o?void 0:o.includes("time"))?t.toLocaleTimeString(e):t.toLocaleString(e);try{return e(document.documentElement.lang)}catch(t){return e()}}}const jo=t=>{const o=null!=t?t:{};return(t,e)=>{var r;const i={hasChanged:(t,o)=>!k(t,o),attribute:!1,...o};I(i)(t,e);const n=t.constructor;n.reduxProperties=new Map(n.reduxProperties),n.reduxProperties.set(e,{selector:null!==(r=o.selector)&&void 0!==r?r:t=>t[e],store:o.store})}};class Po{constructor(){this.queue=[]}add(t,o=!1){o&&(this.queue=this.queue.filter((o=>o.type!==t.type))),this.queue.push(t)}consume(t){const o=this.queue.find((o=>o.type===t));return o&&(this.queue=this.queue.filter((t=>t!==o))),o}}function Mo(t){var o;return null!==(o=null==t?void 0:t.isFtReduxStore)&&void 0!==o&&o}var Fo,Zo,To;const _o=Symbol("internalReduxEventsUnsubscribers"),Bo=Symbol("internalStoresUnsubscribers"),Do=Symbol("internalStores");class $o extends ko{constructor(){super(...arguments),this[Fo]=new Map,this[Zo]=new Map,this[To]=[]}get reduxConstructor(){return this.constructor}update(t){super.update(t),[...this.reduxConstructor.reduxReactiveProperties].some((o=>t.has(o)))&&this.updateFromStores()}getUnnamedStore(){if(this[Do].size>1)throw new Error("Cannot resolve unnamed store when multiple stores are configured.");return[...this[Do].values()][0]}getStore(t){return null==t?this.getUnnamedStore():this[Do].get(t)}addStore(t,o){var e;o=null!==(e=null!=o?o:Mo(t)?t.name:void 0)&&void 0!==e?e:"default-store",this.unsubscribeFromStore(o),this.setupStore(o,t)}removeStore(t){const o="string"==typeof t?t:t.name;this.unsubscribeFromStore(o),this[Do].delete(o)}setupStore(t,o){this[Do].set(t,o),this.subscribeToStore(t,o),this.updateFromStores()}setupStores(){this.unsubscribeFromStores(),this[Do].forEach(((t,o)=>this.subscribeToStore(o,t))),this.updateFromStores()}updateFromStores(){this.reduxConstructor.reduxProperties.forEach(((t,o)=>{const e=this.constructor.getPropertyOptions(o);if(!(null==e?void 0:e.attribute)||!this.hasAttribute("string"==typeof(null==e?void 0:e.attribute)?e.attribute:o)){const e=this.getStore(t.store);e&&(t.store?this[Bo].has(t.store):this[Bo].size>0)&&(this[o]=t.selector(e.getState(),this))}}))}subscribeToStore(t,o){var e;this[Bo].set(t,o.subscribe((()=>this.updateFromStores()))),Mo(o)&&o.eventBus&&(null===(e=this.reduxConstructor.reduxEventListeners)||void 0===e||e.forEach(((t,e)=>{if("function"==typeof this[e]&&(!t.store||o.name===t.store)){const r=t=>this[e](t);o.eventBus.addEventListener(t.eventName,r),this[_o].push((()=>o.eventBus.removeEventListener(t.eventName,r)))}}))),this.onStoreAvailable(t)}unsubscribeFromStores(){this[Bo].forEach(((t,o)=>this.unsubscribeFromStore(o))),this[_o].forEach((t=>t())),this[_o]=[]}unsubscribeFromStore(t){this[Bo].has(t)&&this[Bo].get(t)(),this[Bo].delete(t)}onStoreAvailable(t){}connectedCallback(){super.connectedCallback(),this.setupStores()}disconnectedCallback(){super.disconnectedCallback(),this.unsubscribeFromStores()}}function zo(t){for(var o=arguments.length,e=Array(o>1?o-1:0),r=1;r<o;r++)e[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+t+(e.length?" "+e.map((function(t){return"'"+t+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function Go(t){return!!t&&!!t[ke]}function Ho(t){var o;return!!t&&(function(t){if(!t||"object"!=typeof t)return!1;var o=Object.getPrototypeOf(t);if(null===o)return!0;var e=Object.hasOwnProperty.call(o,"constructor")&&o.constructor;return e===Object||"function"==typeof e&&Function.toString.call(e)===We}(t)||Array.isArray(t)||!!t[Ae]||!!(null===(o=t.constructor)||void 0===o?void 0:o[Ae])||Qo(t)||te(t))}function qo(t,o,e){void 0===e&&(e=!1),0===Yo(t)?(e?Object.keys:Ke)(t).forEach((function(r){e&&"symbol"==typeof r||o(r,t[r],t)})):t.forEach((function(e,r){return o(r,e,t)}))}function Yo(t){var o=t[ke];return o?o.i>3?o.i-4:o.i:Array.isArray(t)?1:Qo(t)?2:te(t)?3:0}function Vo(t,o){return 2===Yo(t)?t.has(o):Object.prototype.hasOwnProperty.call(t,o)}function Jo(t,o,e){var r=Yo(t);2===r?t.set(o,e):3===r?t.add(e):t[o]=e}function Xo(t,o){return t===o?0!==t||1/t==1/o:t!=t&&o!=o}function Qo(t){return xe&&t instanceof Map}function te(t){return Ue&&t instanceof Set}function oe(t){return t.o||t.t}function ee(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var o=je(t);delete o[ke];for(var e=Ke(o),r=0;r<e.length;r++){var i=e[r],n=o[i];!1===n.writable&&(n.writable=!0,n.configurable=!0),(n.get||n.set)&&(o[i]={configurable:!0,writable:!0,enumerable:n.enumerable,value:t[i]})}return Object.create(Object.getPrototypeOf(t),o)}function re(t,o){return void 0===o&&(o=!1),ne(t)||Go(t)||!Ho(t)||(Yo(t)>1&&(t.set=t.add=t.clear=t.delete=ie),Object.freeze(t),o&&qo(t,(function(t,o){return re(o,!0)}),!0)),t}function ie(){zo(2)}function ne(t){return null==t||"object"!=typeof t||Object.isFrozen(t)}function ae(t){var o=Pe[t];return o||zo(18,t),o}function se(){return Ce}function ce(t,o){o&&(ae("Patches"),t.u=[],t.s=[],t.v=o)}function le(t){fe(t),t.p.forEach(ue),t.p=null}function fe(t){t===Ce&&(Ce=t.l)}function he(t){return Ce={p:[],l:Ce,h:t,m:!0,_:0}}function ue(t){var o=t[ke];0===o.i||1===o.i?o.j():o.g=!0}function de(t,o){o._=o.p.length;var e=o.p[0],r=void 0!==t&&t!==e;return o.h.O||ae("ES5").S(o,t,r),r?(e[ke].P&&(le(o),zo(4)),Ho(t)&&(t=pe(o,t),o.l||be(o,t)),o.u&&ae("Patches").M(e[ke].t,t,o.u,o.s)):t=pe(o,e,[]),le(o),o.u&&o.v(o.u,o.s),t!==Le?t:void 0}function pe(t,o,e){if(ne(o))return o;var r=o[ke];if(!r)return qo(o,(function(i,n){return ye(t,r,o,i,n,e)}),!0),o;if(r.A!==t)return o;if(!r.P)return be(t,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var i=4===r.i||5===r.i?r.o=ee(r.k):r.o,n=i,a=!1;3===r.i&&(n=new Set(i),i.clear(),a=!0),qo(n,(function(o,n){return ye(t,r,i,o,n,e,a)})),be(t,i,!1),e&&t.u&&ae("Patches").N(r,e,t.u,t.s)}return r.o}function ye(t,o,e,r,i,n,a){if(Go(i)){var s=pe(t,i,n&&o&&3!==o.i&&!Vo(o.R,r)?n.concat(r):void 0);if(Jo(e,r,s),!Go(s))return;t.m=!1}else a&&e.add(i);if(Ho(i)&&!ne(i)){if(!t.h.D&&t._<1)return;pe(t,i),o&&o.A.l||be(t,i)}}function be(t,o,e){void 0===e&&(e=!1),!t.l&&t.h.D&&t.m&&re(o,e)}function ge(t,o){var e=t[ke];return(e?oe(e):t)[o]}function me(t,o){if(o in t)for(var e=Object.getPrototypeOf(t);e;){var r=Object.getOwnPropertyDescriptor(e,o);if(r)return r;e=Object.getPrototypeOf(e)}}function ve(t){t.P||(t.P=!0,t.l&&ve(t.l))}function Oe(t){t.o||(t.o=ee(t.t))}function we(t,o,e){var r=Qo(o)?ae("MapSet").F(o,e):te(o)?ae("MapSet").T(o,e):t.O?function(t,o){var e=Array.isArray(t),r={i:e?1:0,A:o?o.A:se(),P:!1,I:!1,R:{},l:o,t,k:null,o:null,j:null,C:!1},i=r,n=Me;e&&(i=[r],n=Fe);var a=Proxy.revocable(i,n),s=a.revoke,c=a.proxy;return r.k=c,r.j=s,c}(o,e):ae("ES5").J(o,e);return(e?e.A:se()).p.push(r),r}function Ne(t){return Go(t)||zo(22,t),function t(o){if(!Ho(o))return o;var e,r=o[ke],i=Yo(o);if(r){if(!r.P&&(r.i<4||!ae("ES5").K(r)))return r.t;r.I=!0,e=Se(o,i),r.I=!1}else e=Se(o,i);return qo(e,(function(o,i){r&&function(t,o){return 2===Yo(t)?t.get(o):t[o]}(r.t,o)===i||Jo(e,o,t(i))})),3===i?new Set(e):e}(t)}function Se(t,o){switch(o){case 2:return new Map(t);case 3:return Array.from(t)}return ee(t)}Fo=Bo,Zo=Do,To=_o,$o.reduxProperties=new Map,$o.reduxReactiveProperties=new Set,$o.reduxEventListeners=new Map;var Ee,Ce,Re="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),xe="undefined"!=typeof Map,Ue="undefined"!=typeof Set,Ie="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,Le=Re?Symbol.for("immer-nothing"):((Ee={})["immer-nothing"]=!0,Ee),Ae=Re?Symbol.for("immer-draftable"):"__$immer_draftable",ke=Re?Symbol.for("immer-state"):"__$immer_state",We=""+Object.prototype.constructor,Ke="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,je=Object.getOwnPropertyDescriptors||function(t){var o={};return Ke(t).forEach((function(e){o[e]=Object.getOwnPropertyDescriptor(t,e)})),o},Pe={},Me={get:function(t,o){if(o===ke)return t;var e=oe(t);if(!Vo(e,o))return function(t,o,e){var r,i=me(o,e);return i?"value"in i?i.value:null===(r=i.get)||void 0===r?void 0:r.call(t.k):void 0}(t,e,o);var r=e[o];return t.I||!Ho(r)?r:r===ge(t.t,o)?(Oe(t),t.o[o]=we(t.A.h,r,t)):r},has:function(t,o){return o in oe(t)},ownKeys:function(t){return Reflect.ownKeys(oe(t))},set:function(t,o,e){var r=me(oe(t),o);if(null==r?void 0:r.set)return r.set.call(t.k,e),!0;if(!t.P){var i=ge(oe(t),o),n=null==i?void 0:i[ke];if(n&&n.t===e)return t.o[o]=e,t.R[o]=!1,!0;if(Xo(e,i)&&(void 0!==e||Vo(t.t,o)))return!0;Oe(t),ve(t)}return t.o[o]===e&&(void 0!==e||o in t.o)||Number.isNaN(e)&&Number.isNaN(t.o[o])||(t.o[o]=e,t.R[o]=!0),!0},deleteProperty:function(t,o){return void 0!==ge(t.t,o)||o in t.t?(t.R[o]=!1,Oe(t),ve(t)):delete t.R[o],t.o&&delete t.o[o],!0},getOwnPropertyDescriptor:function(t,o){var e=oe(t),r=Reflect.getOwnPropertyDescriptor(e,o);return r?{writable:!0,configurable:1!==t.i||"length"!==o,enumerable:r.enumerable,value:e[o]}:r},defineProperty:function(){zo(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){zo(12)}},Fe={};qo(Me,(function(t,o){Fe[t]=function(){return arguments[0]=arguments[0][0],o.apply(this,arguments)}})),Fe.deleteProperty=function(t,o){return Fe.set.call(this,t,o,void 0)},Fe.set=function(t,o,e){return Me.set.call(this,t[0],o,e,t[0])};var Ze=function(){function t(t){var o=this;this.O=Ie,this.D=!0,this.produce=function(t,e,r){if("function"==typeof t&&"function"!=typeof e){var i=e;e=t;var n=o;return function(t){var o=this;void 0===t&&(t=i);for(var r=arguments.length,a=Array(r>1?r-1:0),s=1;s<r;s++)a[s-1]=arguments[s];return n.produce(t,(function(t){var r;return(r=e).call.apply(r,[o,t].concat(a))}))}}var a;if("function"!=typeof e&&zo(6),void 0!==r&&"function"!=typeof r&&zo(7),Ho(t)){var s=he(o),c=we(o,t,void 0),l=!0;try{a=e(c),l=!1}finally{l?le(s):fe(s)}return"undefined"!=typeof Promise&&a instanceof Promise?a.then((function(t){return ce(s,r),de(t,s)}),(function(t){throw le(s),t})):(ce(s,r),de(a,s))}if(!t||"object"!=typeof t){if(void 0===(a=e(t))&&(a=t),a===Le&&(a=void 0),o.D&&re(a,!0),r){var f=[],h=[];ae("Patches").M(t,a,f,h),r(f,h)}return a}zo(21,t)},this.produceWithPatches=function(t,e){if("function"==typeof t)return function(e){for(var r=arguments.length,i=Array(r>1?r-1:0),n=1;n<r;n++)i[n-1]=arguments[n];return o.produceWithPatches(e,(function(o){return t.apply(void 0,[o].concat(i))}))};var r,i,n=o.produce(t,e,(function(t,o){r=t,i=o}));return"undefined"!=typeof Promise&&n instanceof Promise?n.then((function(t){return[t,r,i]})):[n,r,i]},"boolean"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),"boolean"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze)}var o=t.prototype;return o.createDraft=function(t){Ho(t)||zo(8),Go(t)&&(t=Ne(t));var o=he(this),e=we(this,t,void 0);return e[ke].C=!0,fe(o),e},o.finishDraft=function(t,o){var e=(t&&t[ke]).A;return ce(e,o),de(void 0,e)},o.setAutoFreeze=function(t){this.D=t},o.setUseProxies=function(t){t&&!Ie&&zo(20),this.O=t},o.applyPatches=function(t,o){var e;for(e=o.length-1;e>=0;e--){var r=o[e];if(0===r.path.length&&"replace"===r.op){t=r.value;break}}e>-1&&(o=o.slice(e+1));var i=ae("Patches").$;return Go(t)?i(t,o):this.produce(t,(function(t){return i(t,o)}))},t}(),Te=new Ze,_e=Te.produce;function Be(t){return Be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Be(t)}function De(t){var o=function(t,o){if("object"!==Be(t)||null===t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var r=e.call(t,o||"default");if("object"!==Be(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===o?String:Number)(t)}(t,"string");return"symbol"===Be(o)?o:String(o)}function $e(t,o,e){return(o=De(o))in t?Object.defineProperty(t,o,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[o]=e,t}function ze(t,o){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);o&&(r=r.filter((function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable}))),e.push.apply(e,r)}return e}function Ge(t){for(var o=1;o<arguments.length;o++){var e=null!=arguments[o]?arguments[o]:{};o%2?ze(Object(e),!0).forEach((function(o){$e(t,o,e[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):ze(Object(e)).forEach((function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(e,o))}))}return t}function He(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. "}Te.produceWithPatches.bind(Te),Te.setAutoFreeze.bind(Te),Te.setUseProxies.bind(Te),Te.applyPatches.bind(Te),Te.createDraft.bind(Te),Te.finishDraft.bind(Te);var qe="function"==typeof Symbol&&Symbol.observable||"@@observable",Ye=function(){return Math.random().toString(36).substring(7).split("").join(".")},Ve={INIT:"@@redux/INIT"+Ye(),REPLACE:"@@redux/REPLACE"+Ye(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+Ye()}};function Je(t,o,e){var r;if("function"==typeof o&&"function"==typeof e||"function"==typeof e&&"function"==typeof arguments[3])throw new Error(He(0));if("function"==typeof o&&void 0===e&&(e=o,o=void 0),void 0!==e){if("function"!=typeof e)throw new Error(He(1));return e(Je)(t,o)}if("function"!=typeof t)throw new Error(He(2));var i=t,n=o,a=[],s=a,c=!1;function l(){s===a&&(s=a.slice())}function f(){if(c)throw new Error(He(3));return n}function h(t){if("function"!=typeof t)throw new Error(He(4));if(c)throw new Error(He(5));var o=!0;return l(),s.push(t),function(){if(o){if(c)throw new Error(He(6));o=!1,l();var e=s.indexOf(t);s.splice(e,1),a=null}}}function u(t){if(!function(t){if("object"!=typeof t||null===t)return!1;for(var o=t;null!==Object.getPrototypeOf(o);)o=Object.getPrototypeOf(o);return Object.getPrototypeOf(t)===o}(t))throw new Error(He(7));if(void 0===t.type)throw new Error(He(8));if(c)throw new Error(He(9));try{c=!0,n=i(n,t)}finally{c=!1}for(var o=a=s,e=0;e<o.length;e++){(0,o[e])()}return t}return u({type:Ve.INIT}),(r={dispatch:u,subscribe:h,getState:f,replaceReducer:function(t){if("function"!=typeof t)throw new Error(He(10));i=t,u({type:Ve.REPLACE})}})[qe]=function(){var t,o=h;return(t={subscribe:function(t){if("object"!=typeof t||null===t)throw new Error(He(11));function e(){t.next&&t.next(f())}return e(),{unsubscribe:o(e)}}})[qe]=function(){return this},t},r}function Xe(t){for(var o=Object.keys(t),e={},r=0;r<o.length;r++){var i=o[r];"function"==typeof t[i]&&(e[i]=t[i])}var n,a=Object.keys(e);try{!function(t){Object.keys(t).forEach((function(o){var e=t[o];if(void 0===e(void 0,{type:Ve.INIT}))throw new Error(He(12));if(void 0===e(void 0,{type:Ve.PROBE_UNKNOWN_ACTION()}))throw new Error(He(13))}))}(e)}catch(t){n=t}return function(t,o){if(void 0===t&&(t={}),n)throw n;for(var r=!1,i={},s=0;s<a.length;s++){var c=a[s],l=e[c],f=t[c],h=l(f,o);if(void 0===h)throw o&&o.type,new Error(He(14));i[c]=h,r=r||h!==f}return(r=r||a.length!==Object.keys(t).length)?i:t}}function Qe(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];return 0===o.length?function(t){return t}:1===o.length?o[0]:o.reduce((function(t,o){return function(){return t(o.apply(void 0,arguments))}}))}function tr(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];return function(t){return function(){var e=t.apply(void 0,arguments),r=function(){throw new Error(He(15))},i={getState:e.getState,dispatch:function(){return r.apply(void 0,arguments)}},n=o.map((function(t){return t(i)}));return r=Qe.apply(void 0,n)(e.dispatch),Ge(Ge({},e),{},{dispatch:r})}}}function or(t){return function(o){var e=o.dispatch,r=o.getState;return function(o){return function(i){return"function"==typeof i?i(e,r,t):o(i)}}}}var er=or();er.withExtraArgument=or;var rr,ir=er,nr=(rr=function(t,o){return rr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,o){t.__proto__=o}||function(t,o){for(var e in o)Object.prototype.hasOwnProperty.call(o,e)&&(t[e]=o[e])},rr(t,o)},function(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");function e(){this.constructor=t}rr(t,o),t.prototype=null===o?Object.create(o):(e.prototype=o.prototype,new e)}),ar=function(t,o){var e,r,i,n,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return n={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(n[Symbol.iterator]=function(){return this}),n;function s(n){return function(s){return function(n){if(e)throw new TypeError("Generator is already executing.");for(;a;)try{if(e=1,r&&(i=2&n[0]?r.return:n[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,n[1])).done)return i;switch(r=0,i&&(n=[2&n[0],i.value]),n[0]){case 0:case 1:i=n;break;case 4:return a.label++,{value:n[1],done:!1};case 5:a.label++,r=n[1],n=[0];continue;case 7:n=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==n[0]&&2!==n[0])){a=0;continue}if(3===n[0]&&(!i||n[1]>i[0]&&n[1]<i[3])){a.label=n[1];break}if(6===n[0]&&a.label<i[1]){a.label=i[1],i=n;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(n);break}i[2]&&a.ops.pop(),a.trys.pop();continue}n=o.call(t,a)}catch(t){n=[6,t],r=0}finally{e=i=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}([n,s])}}},sr=function(t,o){for(var e=0,r=o.length,i=t.length;e<r;e++,i++)t[i]=o[e];return t},cr=Object.defineProperty,lr=Object.defineProperties,fr=Object.getOwnPropertyDescriptors,hr=Object.getOwnPropertySymbols,ur=Object.prototype.hasOwnProperty,dr=Object.prototype.propertyIsEnumerable,pr=function(t,o,e){return o in t?cr(t,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[o]=e},yr=function(t,o){for(var e in o||(o={}))ur.call(o,e)&&pr(t,e,o[e]);if(hr)for(var r=0,i=hr(o);r<i.length;r++){e=i[r];dr.call(o,e)&&pr(t,e,o[e])}return t},br=function(t,o){return lr(t,fr(o))},gr="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?Qe:Qe.apply(null,arguments)};var mr=function(t){function o(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var i=t.apply(this,e)||this;return Object.setPrototypeOf(i,o.prototype),i}return nr(o,t),Object.defineProperty(o,Symbol.species,{get:function(){return o},enumerable:!1,configurable:!0}),o.prototype.concat=function(){for(var o=[],e=0;e<arguments.length;e++)o[e]=arguments[e];return t.prototype.concat.apply(this,o)},o.prototype.prepend=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return 1===t.length&&Array.isArray(t[0])?new(o.bind.apply(o,sr([void 0],t[0].concat(this)))):new(o.bind.apply(o,sr([void 0],t.concat(this))))},o}(Array),vr=function(t){function o(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var i=t.apply(this,e)||this;return Object.setPrototypeOf(i,o.prototype),i}return nr(o,t),Object.defineProperty(o,Symbol.species,{get:function(){return o},enumerable:!1,configurable:!0}),o.prototype.concat=function(){for(var o=[],e=0;e<arguments.length;e++)o[e]=arguments[e];return t.prototype.concat.apply(this,o)},o.prototype.prepend=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return 1===t.length&&Array.isArray(t[0])?new(o.bind.apply(o,sr([void 0],t[0].concat(this)))):new(o.bind.apply(o,sr([void 0],t.concat(this))))},o}(Array);function Or(t){return Ho(t)?_e(t,(function(){})):t}function wr(){return function(t){return function(t){void 0===t&&(t={});var o=t.thunk,e=void 0===o||o;t.immutableCheck,t.serializableCheck;var r=new mr;e&&(!function(t){return"boolean"==typeof t}(e)?r.push(ir.withExtraArgument(e.extraArgument)):r.push(ir));return r}(t)}}function Nr(t){var o,e=wr(),r=t||{},i=r.reducer,n=void 0===i?void 0:i,a=r.middleware,s=void 0===a?e():a,c=r.devTools,l=void 0===c||c,f=r.preloadedState,h=void 0===f?void 0:f,u=r.enhancers,d=void 0===u?void 0:u;if("function"==typeof n)o=n;else{if(!function(t){if("object"!=typeof t||null===t)return!1;var o=Object.getPrototypeOf(t);if(null===o)return!0;for(var e=o;null!==Object.getPrototypeOf(e);)e=Object.getPrototypeOf(e);return o===e}(n))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');o=Xe(n)}var p=s;"function"==typeof p&&(p=p(e));var y=tr.apply(void 0,p),b=Qe;l&&(b=gr(yr({trace:!1},"object"==typeof l&&l)));var g=new vr(y),m=g;return Array.isArray(d)?m=sr([y],d):"function"==typeof d&&(m=d(g)),Je(o,h,b.apply(void 0,m))}function Sr(t,o){function e(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];if(o){var i=o.apply(void 0,e);if(!i)throw new Error("prepareAction did not return an object");return yr(yr({type:t,payload:i.payload},"meta"in i&&{meta:i.meta}),"error"in i&&{error:i.error})}return{type:t,payload:e[0]}}return e.toString=function(){return""+t},e.type=t,e.match=function(o){return o.type===t},e}function Er(t){var o,e={},r=[],i={addCase:function(t,o){var r="string"==typeof t?t:t.type;if(r in e)throw new Error("addCase cannot be called with two reducers for the same action type");return e[r]=o,i},addMatcher:function(t,o){return r.push({matcher:t,reducer:o}),i},addDefaultCase:function(t){return o=t,i}};return t(i),[e,r,o]}function Cr(t){var o=t.name;if(!o)throw new Error("`name` is a required option for createSlice");var e,r="function"==typeof t.initialState?t.initialState:Or(t.initialState),i=t.reducers||{},n=Object.keys(i),a={},s={},c={};function l(){var o="function"==typeof t.extraReducers?Er(t.extraReducers):[t.extraReducers],e=o[0],i=void 0===e?{}:e,n=o[1],a=void 0===n?[]:n,c=o[2],l=void 0===c?void 0:c,f=yr(yr({},i),s);return function(t,o,e,r){void 0===e&&(e=[]);var i,n="function"==typeof o?Er(o):[o,e,r],a=n[0],s=n[1],c=n[2];if(function(t){return"function"==typeof t}(t))i=function(){return Or(t())};else{var l=Or(t);i=function(){return l}}function f(t,o){void 0===t&&(t=i());var e=sr([a[o.type]],s.filter((function(t){return(0,t.matcher)(o)})).map((function(t){return t.reducer})));return 0===e.filter((function(t){return!!t})).length&&(e=[c]),e.reduce((function(t,e){if(e){var r;if(Go(t))return void 0===(r=e(t,o))?t:r;if(Ho(t))return _e(t,(function(t){return e(t,o)}));if(void 0===(r=e(t,o))){if(null===t)return t;throw Error("A case reducer on a non-draftable value must not return undefined")}return r}return t}),t)}return f.getInitialState=i,f}(r,(function(t){for(var o in f)t.addCase(o,f[o]);for(var e=0,r=a;e<r.length;e++){var i=r[e];t.addMatcher(i.matcher,i.reducer)}l&&t.addDefaultCase(l)}))}return n.forEach((function(t){var e,r,n=i[t],l=o+"/"+t;"reducer"in n?(e=n.reducer,r=n.prepare):e=n,a[t]=e,s[l]=e,c[t]=r?Sr(l,r):Sr(l)})),{name:o,reducer:function(t,o){return e||(e=l()),e(t,o)},actions:c,caseReducers:a,getInitialState:function(){return e||(e=l()),e.getInitialState()}}}var Rr=["name","message","stack","code"],xr=function(t,o){this.payload=t,this.meta=o},Ur=function(t,o){this.payload=t,this.meta=o},Ir=function(t){if("object"==typeof t&&null!==t){for(var o={},e=0,r=Rr;e<r.length;e++){var i=r[e];"string"==typeof t[i]&&(o[i]=t[i])}return o}return{message:String(t)}};function Lr(t){if(t.meta&&t.meta.rejectedWithValue)throw t.payload;if(t.error)throw t.error;return t.payload}!function(){function t(t,o,e){var r=Sr(t+"/fulfilled",(function(t,o,e,r){return{payload:t,meta:br(yr({},r||{}),{arg:e,requestId:o,requestStatus:"fulfilled"})}})),i=Sr(t+"/pending",(function(t,o,e){return{payload:void 0,meta:br(yr({},e||{}),{arg:o,requestId:t,requestStatus:"pending"})}})),n=Sr(t+"/rejected",(function(t,o,r,i,n){return{payload:i,error:(e&&e.serializeError||Ir)(t||"Rejected"),meta:br(yr({},n||{}),{arg:r,requestId:o,rejectedWithValue:!!i,requestStatus:"rejected",aborted:"AbortError"===(null==t?void 0:t.name),condition:"ConditionError"===(null==t?void 0:t.name)})}})),a="undefined"!=typeof AbortController?AbortController:function(){function t(){this.signal={aborted:!1,addEventListener:function(){},dispatchEvent:function(){return!1},onabort:function(){},removeEventListener:function(){},reason:void 0,throwIfAborted:function(){}}}return t.prototype.abort=function(){},t}();return Object.assign((function(t){return function(s,c,l){var f,h=(null==e?void 0:e.idGenerator)?e.idGenerator(t):function(t){void 0===t&&(t=21);for(var o="",e=t;e--;)o+="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW"[64*Math.random()|0];return o}(),u=new a;function d(t){f=t,u.abort()}var p=function(){return a=this,p=null,y=function(){var a,p,y,b,g,m;return ar(this,(function(v){switch(v.label){case 0:return v.trys.push([0,4,,5]),b=null==(a=null==e?void 0:e.condition)?void 0:a.call(e,t,{getState:c,extra:l}),null===(O=b)||"object"!=typeof O||"function"!=typeof O.then?[3,2]:[4,b];case 1:b=v.sent(),v.label=2;case 2:if(!1===b||u.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};return g=new Promise((function(t,o){return u.signal.addEventListener("abort",(function(){return o({name:"AbortError",message:f||"Aborted"})}))})),s(i(h,t,null==(p=null==e?void 0:e.getPendingMeta)?void 0:p.call(e,{requestId:h,arg:t},{getState:c,extra:l}))),[4,Promise.race([g,Promise.resolve(o(t,{dispatch:s,getState:c,extra:l,requestId:h,signal:u.signal,abort:d,rejectWithValue:function(t,o){return new xr(t,o)},fulfillWithValue:function(t,o){return new Ur(t,o)}})).then((function(o){if(o instanceof xr)throw o;return o instanceof Ur?r(o.payload,h,t,o.meta):r(o,h,t)}))])];case 3:return y=v.sent(),[3,5];case 4:return m=v.sent(),y=m instanceof xr?n(null,h,t,m.payload,m.meta):n(m,h,t),[3,5];case 5:return e&&!e.dispatchConditionRejection&&n.match(y)&&y.meta.condition||s(y),[2,y]}var O}))},new Promise((function(t,o){var e=function(t){try{i(y.next(t))}catch(t){o(t)}},r=function(t){try{i(y.throw(t))}catch(t){o(t)}},i=function(o){return o.done?t(o.value):Promise.resolve(o.value).then(e,r)};i((y=y.apply(a,p)).next())}));var a,p,y}();return Object.assign(p,{abort:d,requestId:h,arg:t,unwrap:function(){return p.then(Lr)}})}}),{pending:i,rejected:n,fulfilled:r,typePrefix:t})}t.withTypes=function(){return t}}();var Ar,kr,Wr="listenerMiddleware";Sr(Wr+"/add"),Sr(Wr+"/removeAll"),Sr(Wr+"/remove"),"function"==typeof queueMicrotask&&queueMicrotask.bind("undefined"!=typeof window?window:"undefined"!=typeof global?global:globalThis),function(){function t(t,o){var e=i[t];return e?e.enumerable=o:i[t]=e={configurable:!0,enumerable:o,get:function(){var o=this[ke];return Me.get(o,t)},set:function(o){var e=this[ke];Me.set(e,t,o)}},e}function o(t){for(var o=t.length-1;o>=0;o--){var i=t[o][ke];if(!i.P)switch(i.i){case 5:r(i)&&ve(i);break;case 4:e(i)&&ve(i)}}}function e(t){for(var o=t.t,e=t.k,r=Ke(e),i=r.length-1;i>=0;i--){var n=r[i];if(n!==ke){var a=o[n];if(void 0===a&&!Vo(o,n))return!0;var s=e[n],c=s&&s[ke];if(c?c.t!==a:!Xo(s,a))return!0}}var l=!!o[ke];return r.length!==Ke(o).length+(l?0:1)}function r(t){var o=t.k;if(o.length!==t.t.length)return!0;var e=Object.getOwnPropertyDescriptor(o,o.length-1);if(e&&!e.get)return!0;for(var r=0;r<o.length;r++)if(!o.hasOwnProperty(r))return!0;return!1}var i={};!function(t,o){Pe[t]||(Pe[t]=o)}("ES5",{J:function(o,e){var r=Array.isArray(o),i=function(o,e){if(o){for(var r=Array(e.length),i=0;i<e.length;i++)Object.defineProperty(r,""+i,t(i,!0));return r}var n=je(e);delete n[ke];for(var a=Ke(n),s=0;s<a.length;s++){var c=a[s];n[c]=t(c,o||!!n[c].enumerable)}return Object.create(Object.getPrototypeOf(e),n)}(r,o),n={i:r?5:4,A:e?e.A:se(),P:!1,I:!1,R:{},l:e,t:o,k:i,o:null,g:!1,C:!1};return Object.defineProperty(i,ke,{value:n,writable:!0}),i},S:function(t,e,i){i?Go(e)&&e[ke].A===t&&o(t.p):(t.u&&function t(o){if(o&&"object"==typeof o){var e=o[ke];if(e){var i=e.t,n=e.k,a=e.R,s=e.i;if(4===s)qo(n,(function(o){o!==ke&&(void 0!==i[o]||Vo(i,o)?a[o]||t(n[o]):(a[o]=!0,ve(e)))})),qo(i,(function(t){void 0!==n[t]||Vo(n,t)||(a[t]=!1,ve(e))}));else if(5===s){if(r(e)&&(ve(e),a.length=!0),n.length<i.length)for(var c=n.length;c<i.length;c++)a[c]=!1;else for(var l=i.length;l<n.length;l++)a[l]=!0;for(var f=Math.min(n.length,i.length),h=0;h<f;h++)n.hasOwnProperty(h)||(a[h]=!0),void 0===a[h]&&t(n[h])}}}}(t.p[0]),o(t.p))},K:function(t){return 4===t.i?e(t):r(t)}})}(),window.ftReduxStores||(window.ftReduxStores={});class Kr{static get(t){var o;const e="string"==typeof t?t:t.name,r="string"==typeof t?void 0:t,i=window.ftReduxStores[e];if(Mo(i))return i;if(null==r)return;const n=Cr({...r,reducers:null!==(o=r.reducers)&&void 0!==o?o:{}}),a=Nr({reducer:(t,o)=>{var e;switch(o.type){case"CLEAR_FT_REDUX_STORE":return n.getInitialState();case"DEFAULT_STATE_FIELDS_VALUES_SETTER":return{...t,...null!==(e=o.overwrites)&&void 0!==e?e:{}};default:return n.reducer(t,o)}}});return window.ftReduxStores[r.name]=new Kr(n,a)}constructor(t,o){this.reduxSlice=t,this.reduxStore=o,this.isFtReduxStore=!0,this.eventBus=document.createElement("event-bus"),this.commands=new Po,this.actions=new Proxy(this.reduxSlice.actions,{get:(t,o,e)=>{const r=o,i=t[r];return i?(...t)=>{const o=i(...t);return this.reduxStore.dispatch(o),o}:t=>{this.setState({[r]:t})}}})}clear(){this.reduxStore.dispatch({type:"CLEAR_FT_REDUX_STORE"})}setState(t){this.reduxStore.dispatch({type:"DEFAULT_STATE_FIELDS_VALUES_SETTER",overwrites:t})}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(t){throw new Error("Not implemented yet.")}subscribe(t){return this.reduxStore.subscribe(t)}get name(){return this.reduxSlice.name}get reducer(){return this.reduxSlice.reducer}get caseReducers(){return this.reduxSlice.caseReducers}getInitialState(){return this.reduxSlice.getInitialState()}}navigator.vendor&&navigator.vendor.match(/apple/i)||(null===(kr=null===(Ar=window.safari)||void 0===Ar?void 0:Ar.pushNotification)||void 0===kr||kr.toString());const jr=Ot`
107
107
  `,Pr={setRequest:(t,o)=>{t.request=o.payload},setRequestQuery:(t,o)=>{t.request.query=o.payload},setRequestContentLocale:(t,o)=>{t.request.contentLocale=o.payload},setPageSize:(t,o)=>{t.request.paging.perPage=o.payload},setPageNumber:(t,o)=>{t.request.paging.page=o.payload},setRequestSort:(t,o)=>{t.request.sort=o.payload},setRequestFilters:(t,o)=>{t.request.filters=o.payload},setRequestFacets:(t,o)=>{t.request.facets=o.payload},setRequestVirtualField:(t,o)=>{t.request.virtualField=o.payload},setRequestScope:(t,o)=>{t.request.scope=o.payload},setResults:(t,o)=>{t.results=o.payload},setFacets:(t,o)=>{t.facets=o.payload},setSpellcheck:(t,o)=>{t.spellcheck=o.payload},setLocales:(t,o)=>{t.locales=o.payload},setPaging:(t,o)=>{t.paging=o.payload},setLiveQuery:(t,o)=>{t.liveQuery=o.payload},setSuggestResults:(t,o)=>{t.suggestResults=o.payload}};var Mr,Fr,Zr,Tr,_r,Br,Dr,$r,zr,Gr,Hr,qr,Yr,Vr;!function(t){!function(o){var e={searchParams:"URLSearchParams"in t,iterable:"Symbol"in t&&"iterator"in Symbol,blob:"FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(t){return!1}}(),formData:"FormData"in t,arrayBuffer:"ArrayBuffer"in t};if(e.arrayBuffer)var r=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],i=ArrayBuffer.isView||function(t){return t&&r.indexOf(Object.prototype.toString.call(t))>-1};function n(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function a(t){return"string"!=typeof t&&(t=String(t)),t}function s(t){var o={next:function(){var o=t.shift();return{done:void 0===o,value:o}}};return e.iterable&&(o[Symbol.iterator]=function(){return o}),o}function c(t){this.map={},t instanceof c?t.forEach((function(t,o){this.append(o,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(o){this.append(o,t[o])}),this)}function l(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function f(t){return new Promise((function(o,e){t.onload=function(){o(t.result)},t.onerror=function(){e(t.error)}}))}function h(t){var o=new FileReader,e=f(o);return o.readAsArrayBuffer(t),e}function u(t){if(t.slice)return t.slice(0);var o=new Uint8Array(t.byteLength);return o.set(new Uint8Array(t)),o.buffer}function d(){return this.bodyUsed=!1,this._initBody=function(t){var o;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:e.blob&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:e.formData&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():e.arrayBuffer&&e.blob&&((o=t)&&DataView.prototype.isPrototypeOf(o))?(this._bodyArrayBuffer=u(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):e.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(t)||i(t))?this._bodyArrayBuffer=u(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):e.searchParams&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},e.blob&&(this.blob=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?l(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(h)}),this.text=function(){var t=l(this);if(t)return t;if(this._bodyBlob)return function(t){var o=new FileReader,e=f(o);return o.readAsText(t),e}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var o=new Uint8Array(t),e=new Array(o.length),r=0;r<o.length;r++)e[r]=String.fromCharCode(o[r]);return e.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},e.formData&&(this.formData=function(){return this.text().then(b)}),this.json=function(){return this.text().then(JSON.parse)},this}c.prototype.append=function(t,o){t=n(t),o=a(o);var e=this.map[t];this.map[t]=e?e+", "+o:o},c.prototype.delete=function(t){delete this.map[n(t)]},c.prototype.get=function(t){return t=n(t),this.has(t)?this.map[t]:null},c.prototype.has=function(t){return this.map.hasOwnProperty(n(t))},c.prototype.set=function(t,o){this.map[n(t)]=a(o)},c.prototype.forEach=function(t,o){for(var e in this.map)this.map.hasOwnProperty(e)&&t.call(o,this.map[e],e,this)},c.prototype.keys=function(){var t=[];return this.forEach((function(o,e){t.push(e)})),s(t)},c.prototype.values=function(){var t=[];return this.forEach((function(o){t.push(o)})),s(t)},c.prototype.entries=function(){var t=[];return this.forEach((function(o,e){t.push([e,o])})),s(t)},e.iterable&&(c.prototype[Symbol.iterator]=c.prototype.entries);var p=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function y(t,o){var e,r,i=(o=o||{}).body;if(t instanceof y){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,o.headers||(this.headers=new c(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,i||null==t._bodyInit||(i=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=o.credentials||this.credentials||"same-origin",!o.headers&&this.headers||(this.headers=new c(o.headers)),this.method=(e=o.method||this.method||"GET",r=e.toUpperCase(),p.indexOf(r)>-1?r:e),this.mode=o.mode||this.mode||null,this.signal=o.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function b(t){var o=new FormData;return t.trim().split("&").forEach((function(t){if(t){var e=t.split("="),r=e.shift().replace(/\+/g," "),i=e.join("=").replace(/\+/g," ");o.append(decodeURIComponent(r),decodeURIComponent(i))}})),o}function g(t,o){o||(o={}),this.type="default",this.status=void 0===o.status?200:o.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in o?o.statusText:"OK",this.headers=new c(o.headers),this.url=o.url||"",this._initBody(t)}y.prototype.clone=function(){return new y(this,{body:this._bodyInit})},d.call(y.prototype),d.call(g.prototype),g.prototype.clone=function(){return new g(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new c(this.headers),url:this.url})},g.error=function(){var t=new g(null,{status:0,statusText:""});return t.type="error",t};var m=[301,302,303,307,308];g.redirect=function(t,o){if(-1===m.indexOf(o))throw new RangeError("Invalid status code");return new g(null,{status:o,headers:{location:t}})},o.DOMException=t.DOMException;try{new o.DOMException}catch(t){o.DOMException=function(t,o){this.message=t,this.name=o;var e=Error(t);this.stack=e.stack},o.DOMException.prototype=Object.create(Error.prototype),o.DOMException.prototype.constructor=o.DOMException}function v(t,r){return new Promise((function(i,n){var a=new y(t,r);if(a.signal&&a.signal.aborted)return n(new o.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function l(){s.abort()}s.onload=function(){var t,o,e={status:s.status,statusText:s.statusText,headers:(t=s.getAllResponseHeaders()||"",o=new c,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var e=t.split(":"),r=e.shift().trim();if(r){var i=e.join(":").trim();o.append(r,i)}})),o)};e.url="responseURL"in s?s.responseURL:e.headers.get("X-Request-URL");var r="response"in s?s.response:s.responseText;i(new g(r,e))},s.onerror=function(){n(new TypeError("Network request failed"))},s.ontimeout=function(){n(new TypeError("Network request failed"))},s.onabort=function(){n(new o.DOMException("Aborted","AbortError"))},s.open(a.method,a.url,!0),"include"===a.credentials?s.withCredentials=!0:"omit"===a.credentials&&(s.withCredentials=!1),"responseType"in s&&e.blob&&(s.responseType="blob"),a.headers.forEach((function(t,o){s.setRequestHeader(o,t)})),a.signal&&(a.signal.addEventListener("abort",l),s.onreadystatechange=function(){4===s.readyState&&a.signal.removeEventListener("abort",l)}),s.send(void 0===a._bodyInit?null:a._bodyInit)}))}v.polyfill=!0,t.fetch||(t.fetch=v,t.Headers=c,t.Request=y,t.Response=g),o.Headers=c,o.Request=y,o.Response=g,o.fetch=v,Object.defineProperty(o,"U",{value:!0})}({})}("undefined"!=typeof self?self:void 0),function(t){t.black="black",t.green="green",t.blue="blue",t.purple="purple",t.red="red",t.orange="orange",t.yellow="yellow"}(Mr||(Mr={})),function(t){t.OFFICIAL="OFFICIAL",t.PERSONAL="PERSONAL",t.SHARED="SHARED"}(Fr||(Fr={})),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"}(Zr||(Zr={})),function(t){t.STARS="STARS",t.LIKE="LIKE",t.DICHOTOMOUS="DICHOTOMOUS",t.NO_RATING="NO_RATING"}(Tr||(Tr={})),function(t){t.LAST_WEEK="LAST_WEEK",t.LAST_MONTH="LAST_MONTH",t.LAST_YEAR="LAST_YEAR",t.CUSTOM="CUSTOM"}(_r||(_r={})),function(t){t.ASC="ASC",t.DESC="DESC"}(Br||(Br={})),function(t){t.ALPHA="ALPHA",t.NATURAL="NATURAL"}(Dr||(Dr={})),function(t){t.EVERYWHERE="EVERYWHERE",t.TITLE_ONLY="TITLE_ONLY",t.NONE="NONE"}($r||($r={})),function(t){t.ARTICLE="ARTICLE",t.BOOK="BOOK",t.SHARED_BOOK="SHARED_BOOK"}(zr||(zr={})),function(t){t.FLUIDTOPICS="FLUIDTOPICS",t.EXTERNAL="EXTERNAL"}(Gr||(Gr={})),function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC",t.PERSONAL_BOOK="PERSONAL_BOOK",t.SHARED_BOOK="SHARED_BOOK"}(Hr||(Hr={})),function(t){t.MAP="MAP",t.DOCUMENT="DOCUMENT",t.TOPIC="TOPIC"}(qr||(qr={})),function(t){t.DEFAULT="DEFAULT",t.DOCUMENTS="DOCUMENTS",t.ALL_TOPICS="ALL_TOPICS"}(Yr||(Yr={})),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.CONTENT_PUBLISHER="CONTENT_PUBLISHER",t.KHUB_ADMIN="KHUB_ADMIN",t.USERS_ADMIN="USERS_ADMIN",t.PORTAL_ADMIN="PORTAL_ADMIN",t.ADMIN="ADMIN",t.DEVELOPER="DEVELOPER"}(Vr||(Vr={})),Vr.PERSONAL_BOOK_SHARE_USER,Vr.PERSONAL_BOOK_USER,Vr.HTML_EXPORT_USER,Vr.PERSONAL_BOOK_USER,Vr.PDF_EXPORT_USER,Vr.PERSONAL_BOOK_USER,Vr.KHUB_ADMIN,Vr.CONTENT_PUBLISHER,Vr.ADMIN,Vr.KHUB_ADMIN,Vr.USERS_ADMIN,Vr.PORTAL_ADMIN,Vr.DEVELOPER,Vr.BETA_USER,Vr.DEBUG_USER;const Jr=Ot`
108
- `,Xr=Kr.get({name:"ft-app-info",reducers:{setBaseUrl:(t,o)=>{t.baseUrl=o.payload},setApiIntegrationIdentifier:(t,o)=>{t.apiIntegrationIdentifier=o.payload},setUiLocale:(t,o)=>{t.uiLocale=o.payload},setAvailableUiLocales:(t,o)=>{t.availableUiLocales=o.payload},setEditorMode:(t,o)=>{t.editorMode=o.payload},setNoCustom:(t,o)=>{t.noCustom=o.payload},setNoCustomComponent:(t,o)=>{t.noCustomComponent=o.payload},setSession:(t,o)=>{t.session=o.payload}},initialState:{uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],editorMode:!1,noCustom:!1,noCustomComponent:!1}});class Qr{static build(t){const{baseUrl:o,apiIntegrationIdentifier:e}=Xr.getState(),r=null!=t?t:e;if(o&&r&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(o,r,!0)}static get(t){var o;return null!=t?Qr.build(t):null!==(o=Qr.API)&&void 0!==o?o:Qr.API=Qr.build()}static await(t){return new Promise((o=>{let e=Qr.get(t);if(e)o(e);else{const r=Xr.subscribe((()=>{e=Qr.get(t),e&&(r(),o(e))}))}}))}}var ti;const oi=Symbol("clearAfterUnitTest");class ei{constructor(t){this.messageContextProvider=t,this.defaultMessages={},this.cache=new i,this.listeners={},this.currentUiLocale="",this[ti]=()=>{this.defaultMessages={},this.cache=new i,this.listeners={}},this.currentUiLocale=Xr.getState().uiLocale,Xr.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=Xr.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const o=t.name.toLowerCase();this.cache.setFinal(o,t),this.notify(o)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,o){var e;if(t=t.toLowerCase(),Object.keys(o).length>0){const r={...null!==(e=this.defaultMessages[t])&&void 0!==e?e:{},...o};k(this.defaultMessages[t],r)||(this.defaultMessages[t]=r,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,o,...e){var r,i,n;t=t.toLowerCase(),this.fetchContext(t);const a=null!==(i=null===(r=this.cache.getNow(t))||void 0===r?void 0:r.messages)&&void 0!==i?i:{};return new Ko(null!==(n=this.defaultMessages[t])&&void 0!==n?n:{},a).resolve(o,...e)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,o){var e;return t=t.toLowerCase(),this.listeners[t]=null!==(e=this.listeners[t])&&void 0!==e?e:new Set,this.listeners[t].add(o),()=>{var e;return null===(e=this.listeners[t])||void 0===e?void 0:e.delete(o)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>A(0).then((()=>t())).catch((()=>null)))))}}ti=oi,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new ei((async(t,o)=>(await Qr.await()).getFluidTopicsMessageContext(t,o)))),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new ei((async(t,o)=>(await Qr.await()).getCustomMessageContext(t,o))));const ri=window.FluidTopicsI18nService;var ii=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class ni extends ko{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.availableUiLocales=[],this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>Qr.get(),this.cache=new i,this.cleanSessionDebouncer=new L}render(){return eo`
108
+ `,Xr=Kr.get({name:"ft-app-info",reducers:{setBaseUrl:(t,o)=>{t.baseUrl=o.payload},setApiIntegrationIdentifier:(t,o)=>{t.apiIntegrationIdentifier=o.payload},setUiLocale:(t,o)=>{t.uiLocale=o.payload},setAvailableUiLocales:(t,o)=>{t.availableUiLocales=o.payload},setEditorMode:(t,o)=>{t.editorMode=o.payload},setNoCustom:(t,o)=>{t.noCustom=o.payload},setNoCustomComponent:(t,o)=>{t.noCustomComponent=o.payload},setSession:(t,o)=>{t.session=o.payload}},initialState:{uiLocale:document.documentElement.lang||"en-US",availableUiLocales:[],editorMode:!1,noCustom:!1,noCustomComponent:!1}});class Qr{static build(t){const{baseUrl:o,apiIntegrationIdentifier:e}=Xr.getState(),r=null!=t?t:e;if(o&&r&&window.fluidtopics)return new window.fluidtopics.FluidTopicsApi(o,r,!0)}static get(t){var o;return null!=t?Qr.build(t):null!==(o=Qr.API)&&void 0!==o?o:Qr.API=Qr.build()}static await(t){return new Promise((o=>{let e=Qr.get(t);if(e)o(e);else{const r=Xr.subscribe((()=>{e=Qr.get(t),e&&(r(),o(e))}))}}))}}var ti;const oi=Symbol("clearAfterUnitTest");class ei{constructor(t){this.messageContextProvider=t,this.defaultMessages={},this.cache=new i,this.listeners={},this.currentUiLocale="",this[ti]=()=>{this.defaultMessages={},this.cache=new i,this.listeners={}},this.currentUiLocale=Xr.getState().uiLocale,Xr.subscribe((()=>this.clearWhenUiLocaleChanges()))}clearWhenUiLocaleChanges(){const{uiLocale:t}=Xr.getState();this.currentUiLocale!==t&&(this.currentUiLocale=t,this.cache.clearAll(),this.notifyAll())}addContext(t){const o=t.name.toLowerCase();this.cache.setFinal(o,t),this.notify(o)}getAllContexts(){return this.cache.resolvedValues()}async prepareContext(t,o){var e;if(t=t.toLowerCase(),Object.keys(o).length>0){const r={...null!==(e=this.defaultMessages[t])&&void 0!==e?e:{},...o};k(this.defaultMessages[t],r)||(this.defaultMessages[t]=r,await this.notify(t))}await this.fetchContext(t)}resolveMessage(t,o,...e){var r,i,n;t=t.toLowerCase(),this.fetchContext(t);const a=null!==(i=null===(r=this.cache.getNow(t))||void 0===r?void 0:r.messages)&&void 0!==i?i:{};return new Ko(null!==(n=this.defaultMessages[t])&&void 0!==n?n:{},a).resolve(o,...e)}async fetchContext(t){if(!this.cache.has(t))try{await this.cache.get(t,(()=>this.messageContextProvider(this.currentUiLocale,t))),await this.notify(t)}catch(t){console.error(t)}}subscribe(t,o){var e;return t=t.toLowerCase(),this.listeners[t]=null!==(e=this.listeners[t])&&void 0!==e?e:new Set,this.listeners[t].add(o),()=>{var e;return null===(e=this.listeners[t])||void 0===e?void 0:e.delete(o)}}async notifyAll(){await Promise.all(Object.keys(this.listeners).map((t=>this.notify(t))))}async notify(t){null!=this.listeners[t]&&await Promise.all([...this.listeners[t].values()].map((t=>A(0).then((()=>t())).catch((()=>null)))))}}ti=oi,null==window.FluidTopicsI18nService&&(window.FluidTopicsI18nService=new ei((async(t,o)=>(await Qr.await()).getFluidTopicsMessageContext(t,o)))),null==window.FluidTopicsCustomI18nService&&(window.FluidTopicsCustomI18nService=new ei((async(t,o)=>(await Qr.await()).getCustomMessageContext(t,o))));const ri=window.FluidTopicsI18nService;var ii=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class ni extends ko{constructor(){super(...arguments),this.apiIntegrationIdentifier="ft-integration",this.uiLocale="en-US",this.availableUiLocales=[],this.editorMode=!1,this.noCustom=!1,this.noCustomComponent=!1,this.withManualResources=!1,this.messageContexts=[],this.apiProvider=()=>Qr.get(),this.cache=new i,this.cleanSessionDebouncer=new n}render(){return eo`
109
109
  <slot></slot>
110
- `}update(t){super.update(t),t.has("baseUrl")&&Xr.actions.setBaseUrl(this.baseUrl),t.has("apiIntegrationIdentifier")&&Xr.actions.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&Xr.actions.setUiLocale(this.uiLocale),t.has("noCustom")&&Xr.actions.setNoCustom(this.noCustom),t.has("editorMode")&&Xr.actions.setEditorMode(this.editorMode),t.has("noCustomComponent")&&Xr.actions.setNoCustomComponent(this.noCustomComponent),t.has("session")&&Xr.actions.setSession(this.session),t.has("availableUiLocales")&&Xr.actions.setAvailableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>ri.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){const t=this.apiProvider();!this.withManualResources&&t&&(null==this.session&&(this.session=await this.cache.get("session",(async()=>{const o=await t.getCurrentSession();return o.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),o.idleTimeoutInMillis),o}))),null==this.availableUiLocales&&(this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>t.getAvailableUiLocales()))))}}ni.elementDefinitions={},ni.styles=Jr,ii([U()],ni.prototype,"baseUrl",void 0),ii([U()],ni.prototype,"apiIntegrationIdentifier",void 0),ii([U()],ni.prototype,"uiLocale",void 0),ii([K([])],ni.prototype,"availableUiLocales",void 0),ii([U({type:Boolean})],ni.prototype,"editorMode",void 0),ii([U({type:Boolean})],ni.prototype,"noCustom",void 0),ii([U({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],ni.prototype,"noCustomComponent",void 0),ii([U({type:Boolean})],ni.prototype,"withManualResources",void 0),ii([K([])],ni.prototype,"messageContexts",void 0),ii([K(void 0)],ni.prototype,"session",void 0),ii([U({type:Object})],ni.prototype,"apiProvider",void 0);class ai{async listMySearches(){var t;return(null===(t=Xr.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await Qr.await()).listMySearches(Xr.getState().session.profile.userId):[]}}const si=new i;class ci{async listMyBookmarks(){return si.get("bookmarks",(async()=>(await Qr.await()).listMyBookmarks(Xr.getState().session.profile.userId)))}clearCache(){si.clear("bookmarks")}}const li=Kr.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});const fi=new class{constructor(){this.currentSession=Xr.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new ci,Xr.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:o}=Xr.getState();k(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==o?void 0:o.profile)||(this.currentSession=o,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){li.actions.savedSearches(void 0)}clearMyBookmarks(){li.actions.bookmarks(void 0)}async reloadMySearches(){const t=new ai,o=await t.listMySearches();li.actions.savedSearches(o)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const o=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;li.actions.bookmarks(o)}}};W("ft-app-context")(ni);class hi{static async build(){return new hi(await Qr.await())}constructor(t){this.api=t,this.cache=new i,this.cache.registerFinal("available-locales",(()=>this.api.getAvailableSearchLocales()))}async launchSearch(t){return this.api.search(t)}async launchSuggest(t){return this.api.getSuggestions(t)}async getAvailableSearchLocales(){return this.cache.get("available-locales")}}const ui=t=>t.request.virtualField===$r.TITLE_ONLY&&t.request.scope===Yr.DOCUMENTS;class di extends Event{constructor(){super(di.eventName)}}di.eventName="search-context-clear-all-filters";class pi{static build(t){return new pi((t=>Kr.get({name:"ft-search-"+t,initialState:{request:{query:"",filters:[],facets:[],sort:[],paging:{page:1,perPage:20}},liveQuery:""},reducers:Pr}))(t.trim()||"context"),hi.build)}constructor(t,o){this.store=t,this.serviceProvider=o,this.ignoreEmptyQuery=!1,this.searchDebouncer=new L(100),this.suggestDebouncer=new L(300)}async initService(){return this.service=await this.serviceProvider(),this.store.actions.setLocales((await this.service.getAvailableSearchLocales()).contentLocales),this.launchSearch()}async awaitService(){for(;null==this.service;)await A(5);return this.service}setQuery(t){this.store.actions.setRequestQuery(t),this.store.actions.setLiveQuery(t),this.store.actions.setPageNumber(1),this.launchSearch()}setContentLocale(t){let o=this.store.getState().locales,e=this.store.getState().request.contentLocale;if(t!=e){if(o){const r=t=>o.some((o=>o.lang==t));r(t)||(t=r(e)?e:o[0].lang)}this.store.actions.setRequestContentLocale(t),this.store.actions.setPageNumber(1),this.store.actions.setRequestFilters([]),this.launchSearch()}return t}setPageSize(t){this.store.actions.setPageSize(t),this.launchSearch()}setPageNumber(t){this.store.actions.setPageNumber(t),this.launchSearch()}setSort(t){this.store.actions.setRequestSort(t),this.store.actions.setPageNumber(1),this.launchSearch()}setFilters(t){const o=t.filter((t=>t.values.length>0));this.store.actions.setRequestFilters(o),this.store.actions.setPageNumber(1),o.forEach((t=>{this.facetIds.includes(t.key)||(this.facetIds=[...this.facetIds,t.key])})),this.launchSearch()}setSearchInDocumentTitlesOnly(t){t?(this.store.actions.setRequestVirtualField($r.TITLE_ONLY),this.store.actions.setRequestScope(Yr.DOCUMENTS)):(this.store.actions.setRequestVirtualField($r.EVERYWHERE),this.store.actions.setRequestScope(Yr.DEFAULT)),this.launchSearch()}get searchInDocumentTitlesOnly(){return ui(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.eventBus.dispatchEvent(new di)}addFacet(t){this.facetIds=[...this.facetIds,t],this.launchSearch()}replaceFacet(t,o){let e=this.facetIds.filter((o=>o!=t));o&&e.push(o),this.facetIds=e,this.launchSearch()}get facetIds(){return this.store.getState().request.facets.map((t=>t.id))}set facetIds(t){let o=[...new Set(t)].map((t=>({id:t})));this.store.actions.setRequestFacets(o)}setFilter(t,o){let e=this.store.getState().request.filters,r={key:t,values:o,negative:!1},i=[...e.filter((o=>o.key!==t)),r];this.setFilters(i)}setLiveQuery(t){this.store.actions.setLiveQuery(t),this.launchSuggest()}setRequest(t){this.store.actions.setRequest(t),this.store.actions.setLiveQuery(t.query),this.store.actions.setPageNumber(1),this.launchSearch()}setScope(t){this.store.actions.setRequestScope(t),this.launchSearch()}setIgnoreEmptyQuery(t){this.ignoreEmptyQuery=t,this.launchSearch()}async launchSearch(){return await this.awaitService(),this.searchDebouncer.run((()=>this.fetchSearchData()))}async launchSuggest(){await this.awaitService(),this.suggestDebouncer.run((()=>this.fetchSuggestData()))}async fetchSearchData(){var t,e;try{null===(t=this.cancelableSearch)||void 0===t||t.cancel();let o=this.store.getState().request;if(this.store.actions.setPaging(void 0),this.ignoreEmptyQuery&&0==o.query.length)this.store.actions.setResults(void 0),this.store.actions.setFacets(void 0),this.store.actions.setSpellcheck(void 0);else{this.cancelableSearch=r(this.service.launchSearch(o));const t=await this.cancelableSearch;if(t.paging.currentPage<=1)this.store.actions.setResults(t.results),this.store.actions.setFacets(t.facets),this.store.actions.setSpellcheck(t.spellcheck);else{let o=(null!==(e=this.store.getState().results)&&void 0!==e?e:[]).concat(t.results);this.store.actions.setResults(o)}this.store.actions.setPaging(t.paging)}}catch(t){t instanceof o||!this.errorHandler||this.errorHandler(t)}}async fetchSuggestData(){var t;try{const o=this.store.getState(),e=o.request,i={input:o.liveQuery,filters:e.filters,sort:e.sort,contentLocale:e.contentLocale,scope:e.scope};null===(t=this.cancelableSuggest)||void 0===t||t.cancel(),this.cancelableSuggest=r(this.service.launchSuggest(i));let n=await this.cancelableSuggest;this.store.actions.setSuggestResults(n.suggestions)}catch(t){t instanceof o||!this.errorHandler||this.errorHandler(t)}}clear(){this.store.clear()}}var yi=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class bi extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}}const gi=Symbol("registerInterval");class mi extends(function(t){var o;class e extends t{constructor(){super(...arguments),this[o]=0}setSearchStateManager(t){this.clearStateManager(),this.stateManager=t,this.addStore(t.store,"search")}clearStateManager(){this.stateManager&&(this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[gi]=window.setInterval((()=>this.tryToRegisterToContext()),50)}tryToRegisterToContext(){null!=this.stateManager?window.clearInterval(this[gi]):this.dispatchEvent(new bi)}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return o=gi,yi([I()],e.prototype,"stateManager",void 0),e}($o)){}var vi=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class Oi extends CustomEvent{constructor(t){super("ft-search-load-error",{detail:t})}}class wi extends CustomEvent{constructor(t){super("ft-search-request-change",{detail:t})}}class Ni extends CustomEvent{constructor(t,o,e){super("ft-search-results-change",{detail:{request:t,paging:o,spellcheck:e}})}}class Si extends $o{get stateManager(){return null==this._stateManager&&(this._stateManager=pi.build(this.id||(""+Math.round(999e3*Math.random())).padStart(6,"0")),this._stateManager.errorHandler=t=>this.handleLoadError(t),this.addStore(this.stateManager.store,"search")),this._stateManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.filters=[],this.sort=[],this.addStore(Xr)}render(){return eo`
110
+ `}update(t){super.update(t),t.has("baseUrl")&&Xr.actions.setBaseUrl(this.baseUrl),t.has("apiIntegrationIdentifier")&&Xr.actions.setApiIntegrationIdentifier(this.apiIntegrationIdentifier),t.has("uiLocale")&&Xr.actions.setUiLocale(this.uiLocale),t.has("noCustom")&&Xr.actions.setNoCustom(this.noCustom),t.has("editorMode")&&Xr.actions.setEditorMode(this.editorMode),t.has("noCustomComponent")&&Xr.actions.setNoCustomComponent(this.noCustomComponent),t.has("session")&&Xr.actions.setSession(this.session),t.has("availableUiLocales")&&Xr.actions.setAvailableUiLocales(Array.isArray(this.availableUiLocales)?this.availableUiLocales:[]),t.has("messageContexts")&&null!=this.messageContexts&&this.messageContexts.forEach((t=>ri.addContext(t))),setTimeout((()=>this.updateIfNeeded()))}async updateIfNeeded(){const t=this.apiProvider();!this.withManualResources&&t&&(null==this.session&&(this.session=await this.cache.get("session",(async()=>{const o=await t.getCurrentSession();return o.idleTimeoutInMillis>0&&this.cleanSessionDebouncer.run((()=>{this.cache.clear("session"),this.session=void 0}),o.idleTimeoutInMillis),o}))),null==this.availableUiLocales&&(this.availableUiLocales=await this.cache.get("availableUiLocales",(()=>t.getAvailableUiLocales()))))}}ni.elementDefinitions={},ni.styles=Jr,ii([I()],ni.prototype,"baseUrl",void 0),ii([I()],ni.prototype,"apiIntegrationIdentifier",void 0),ii([I()],ni.prototype,"uiLocale",void 0),ii([K([])],ni.prototype,"availableUiLocales",void 0),ii([I({type:Boolean})],ni.prototype,"editorMode",void 0),ii([I({type:Boolean})],ni.prototype,"noCustom",void 0),ii([I({converter:{fromAttribute:t=>"false"!==t&&("true"===t||null!=t&&t)}})],ni.prototype,"noCustomComponent",void 0),ii([I({type:Boolean})],ni.prototype,"withManualResources",void 0),ii([K([])],ni.prototype,"messageContexts",void 0),ii([K(void 0)],ni.prototype,"session",void 0),ii([I({type:Object})],ni.prototype,"apiProvider",void 0);class ai{async listMySearches(){var t;return(null===(t=Xr.getState().session)||void 0===t?void 0:t.sessionAuthenticated)?(await Qr.await()).listMySearches(Xr.getState().session.profile.userId):[]}}const si=new i;class ci{async listMyBookmarks(){return si.get("bookmarks",(async()=>(await Qr.await()).listMyBookmarks(Xr.getState().session.profile.userId)))}clearCache(){si.clear("bookmarks")}}const li=Kr.get({name:"ft-user-assets",initialState:{savedSearches:void 0,bookmarks:void 0}});const fi=new class{constructor(){this.currentSession=Xr.getState().session,this.bookmarksAreUsed=!1,this.bookmarksService=new ci,Xr.subscribe((()=>this.reloadWhenUserSessionChanges()))}reloadWhenUserSessionChanges(){var t;const{session:o}=Xr.getState();k(null===(t=this.currentSession)||void 0===t?void 0:t.profile,null==o?void 0:o.profile)||(this.currentSession=o,this.clearMySearches(),this.reloadBookmarks())}clear(){this.clearMySearches(),this.clearMyBookmarks()}clearMySearches(){li.actions.savedSearches(void 0)}clearMyBookmarks(){li.actions.bookmarks(void 0)}async reloadMySearches(){const t=new ai,o=await t.listMySearches();li.actions.savedSearches(o)}async reloadBookmarks(){this.bookmarksService.clearCache(),await this.updateBookmarksIfUsed()}async registerBookmarkComponent(){this.bookmarksAreUsed=!0,await this.updateBookmarksIfUsed()}async updateBookmarksIfUsed(){var t;if(this.bookmarksAreUsed){const o=(null===(t=this.currentSession)||void 0===t?void 0:t.sessionAuthenticated)?await this.bookmarksService.listMyBookmarks():void 0;li.actions.bookmarks(o)}}};W("ft-app-context")(ni);class hi{static async build(){return new hi(await Qr.await())}constructor(t){this.api=t,this.cache=new i,this.cache.registerFinal("available-locales",(()=>this.api.getAvailableSearchLocales()))}async launchSearch(t){return this.api.search(t)}async launchSuggest(t){return this.api.getSuggestions(t)}async getAvailableSearchLocales(){return this.cache.get("available-locales")}}const ui=t=>t.request.virtualField===$r.TITLE_ONLY&&t.request.scope===Yr.DOCUMENTS;class di extends Event{constructor(){super(di.eventName)}}di.eventName="search-context-clear-all-filters";class pi{static build(t){return new pi((t=>Kr.get({name:"ft-search-"+t,initialState:{request:{query:"",filters:[],facets:[],sort:[],paging:{page:1,perPage:20}},liveQuery:""},reducers:Pr}))(t.trim()||"context"),hi.build)}constructor(t,o){this.store=t,this.serviceProvider=o,this.ignoreEmptyQuery=!1,this.searchDebouncer=new n(100),this.suggestDebouncer=new n(300)}async initService(){return this.service=await this.serviceProvider(),this.store.actions.setLocales((await this.service.getAvailableSearchLocales()).contentLocales),this.launchSearch()}async awaitService(){return async function(t,o=5){let e=await t();for(;null==e;)await A(o),e=await t();return e}((()=>this.service))}setQuery(t){this.store.actions.setRequestQuery(t),this.store.actions.setLiveQuery(t),this.store.actions.setPageNumber(1),this.launchSearch()}setContentLocale(t){let o=this.store.getState().locales,e=this.store.getState().request.contentLocale;if(t!=e){if(o){const r=t=>o.some((o=>o.lang==t));r(t)||(t=r(e)?e:o[0].lang)}this.store.actions.setRequestContentLocale(t),this.store.actions.setPageNumber(1),this.store.actions.setRequestFilters([]),this.launchSearch()}return t}setPageSize(t){this.store.actions.setPageSize(t),this.launchSearch()}setPageNumber(t){this.store.actions.setPageNumber(t),this.launchSearch()}setSort(t){this.store.actions.setRequestSort(t),this.store.actions.setPageNumber(1),this.launchSearch()}setFilters(t){const o=t.filter((t=>t.values.length>0));this.store.actions.setRequestFilters(o),this.store.actions.setPageNumber(1),o.forEach((t=>{this.facetIds.includes(t.key)||(this.facetIds=[...this.facetIds,t.key])})),this.launchSearch()}setSearchInDocumentTitlesOnly(t){t?(this.store.actions.setRequestVirtualField($r.TITLE_ONLY),this.store.actions.setRequestScope(Yr.DOCUMENTS)):(this.store.actions.setRequestVirtualField($r.EVERYWHERE),this.store.actions.setRequestScope(Yr.DEFAULT)),this.launchSearch()}get searchInDocumentTitlesOnly(){return ui(this.store.getState())}clearAllFilters(){this.setFilters([]),this.store.eventBus.dispatchEvent(new di)}addFacet(t){this.facetIds=[...this.facetIds,t],this.launchSearch()}replaceFacet(t,o){let e=this.facetIds.filter((o=>o!=t));o&&e.push(o),this.facetIds=e,this.launchSearch()}get facetIds(){return this.store.getState().request.facets.map((t=>t.id))}set facetIds(t){let o=[...new Set(t)].map((t=>({id:t})));this.store.actions.setRequestFacets(o)}setFilter(t,o){let e=this.store.getState().request.filters,r={key:t,values:o,negative:!1},i=[...e.filter((o=>o.key!==t)),r];this.setFilters(i)}setLiveQuery(t){this.store.actions.setLiveQuery(t),this.launchSuggest()}setRequest(t){this.store.actions.setRequest(t),this.store.actions.setLiveQuery(t.query),this.store.actions.setPageNumber(1),this.launchSearch()}setScope(t){this.store.actions.setRequestScope(t),this.launchSearch()}setIgnoreEmptyQuery(t){this.ignoreEmptyQuery=t,this.launchSearch()}async launchSearch(){return await this.awaitService(),this.searchDebouncer.run((()=>this.fetchSearchData()))}async launchSuggest(){await this.awaitService(),this.suggestDebouncer.run((()=>this.fetchSuggestData()))}async fetchSearchData(){var t,e;try{null===(t=this.cancelableSearch)||void 0===t||t.cancel();let o=this.store.getState().request;if(this.store.actions.setPaging(void 0),this.ignoreEmptyQuery&&0==o.query.length)this.store.actions.setResults(void 0),this.store.actions.setFacets(void 0),this.store.actions.setSpellcheck(void 0);else{this.cancelableSearch=r(this.service.launchSearch(o));const t=await this.cancelableSearch;if(t.paging.currentPage<=1)this.store.actions.setResults(t.results),this.store.actions.setFacets(t.facets),this.store.actions.setSpellcheck(t.spellcheck);else{let o=(null!==(e=this.store.getState().results)&&void 0!==e?e:[]).concat(t.results);this.store.actions.setResults(o)}this.store.actions.setPaging(t.paging)}}catch(t){t instanceof o||!this.errorHandler||this.errorHandler(t)}}async fetchSuggestData(){var t;try{const o=this.store.getState(),e=o.request,i={input:o.liveQuery,filters:e.filters,sort:e.sort,contentLocale:e.contentLocale,scope:e.scope};null===(t=this.cancelableSuggest)||void 0===t||t.cancel(),this.cancelableSuggest=r(this.service.launchSuggest(i));let n=await this.cancelableSuggest;this.store.actions.setSuggestResults(n.suggestions)}catch(t){t instanceof o||!this.errorHandler||this.errorHandler(t)}}clear(){this.store.clear()}}var yi=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class bi extends Event{constructor(){super("register-ft-search-component",{bubbles:!0,composed:!0})}}const gi=Symbol("registerInterval");class mi extends(function(t){var o;class e extends t{constructor(){super(...arguments),this[o]=0}setSearchStateManager(t){this.clearStateManager(),this.stateManager=t,this.addStore(t.store,"search")}clearStateManager(){this.stateManager&&(this.removeStore(this.stateManager.store),this.stateManager=void 0)}connectedCallback(){super.connectedCallback(),this[gi]=window.setInterval((()=>this.tryToRegisterToContext()),50)}tryToRegisterToContext(){null!=this.stateManager?window.clearInterval(this[gi]):this.dispatchEvent(new bi)}disconnectedCallback(){super.disconnectedCallback(),this.clearStateManager()}}return o=gi,yi([L()],e.prototype,"stateManager",void 0),e}($o)){}var vi=function(t,o,e,r){for(var i,n=arguments.length,a=n<3?o:null===r?r=Object.getOwnPropertyDescriptor(o,e):r,s=t.length-1;s>=0;s--)(i=t[s])&&(a=(n<3?i(a):n>3?i(o,e,a):i(o,e))||a);return n>3&&a&&Object.defineProperty(o,e,a),a};class Oi extends CustomEvent{constructor(t){super("ft-search-load-error",{detail:t})}}class wi extends CustomEvent{constructor(t){super("ft-search-request-change",{detail:t})}}class Ni extends CustomEvent{constructor(t,o,e){super("ft-search-results-change",{detail:{request:t,paging:o,spellcheck:e}})}}class Si extends $o{get stateManager(){return null==this._stateManager&&(this._stateManager=pi.build(this.id||(""+Math.round(999e3*Math.random())).padStart(6,"0")),this._stateManager.errorHandler=t=>this.handleLoadError(t),this.addStore(this.stateManager.store,"search")),this._stateManager}constructor(){super(),this.query="",this.pageSize=20,this.searchInDocumentTitlesOnly=!1,this.ignoreEmptyQuery=!1,this.filters=[],this.sort=[],this.addStore(Xr)}render(){return eo`
111
111
  <slot @register-ft-search-component=${this.registerComponent}></slot>
112
- `}update(t){super.update(t),t.has("query")&&void 0!==this.query&&this.stateManager.setQuery(this.query),t.has("contentLocale")&&void 0!==this.contentLocale&&this.stateManager.setContentLocale(this.contentLocale),t.has("session")&&this.session&&this.stateManager.initService(),t.has("filters")&&void 0!==this.filters&&this.stateManager.setFilters(this.filters),t.has("sort")&&void 0!==this.sort&&this.stateManager.setSort(this.sort),t.has("pageSize")&&void 0!==this.pageSize&&this.stateManager.setPageSize(this.pageSize),t.has("searchInDocumentTitlesOnly")&&void 0!==this.searchInDocumentTitlesOnly&&this.stateManager.setSearchInDocumentTitlesOnly(this.searchInDocumentTitlesOnly),t.has("scope")&&void 0!==this.scope&&this.stateManager.setScope(this.scope),t.has("ignoreEmptyQuery")&&void 0!==this.ignoreEmptyQuery&&this.stateManager.setIgnoreEmptyQuery(this.ignoreEmptyQuery)}connectedCallback(){super.connectedCallback(),this.stateManager.setQuery(this.query),this.stateManager.setContentLocale(this.contentLocale),this.stateManager.setFilters(this.filters),this.stateManager.setPageSize(this.pageSize),this.stateManager.setSort(this.sort)}contentAvailableCallback(t){super.contentAvailableCallback(t),t.has("request")&&this.request&&this.dispatchEvent(new wi(this.request)),t.has("paging")&&void 0!==this.paging&&this.dispatchEvent(new Ni(this.request,this.paging,this.autocorrect))}registerComponent(t){t.stopPropagation();const o=t.composedPath()[0];this.register(o)}register(t){t.setSearchStateManager(this.stateManager)}handleLoadError(t){this.dispatchEvent(new Oi(t))}reloadSavedSearches(){fi.clearMySearches()}clear(){this.stateManager.clear()}}Si.elementDefinitions={},Si.styles=jr,vi([U()],Si.prototype,"query",void 0),vi([U()],Si.prototype,"contentLocale",void 0),vi([U({type:Number})],Si.prototype,"pageSize",void 0),vi([U({type:Boolean})],Si.prototype,"searchInDocumentTitlesOnly",void 0),vi([U()],Si.prototype,"scope",void 0),vi([U({type:Boolean})],Si.prototype,"ignoreEmptyQuery",void 0),vi([K([])],Si.prototype,"filters",void 0),vi([K([])],Si.prototype,"sort",void 0),vi([jo({store:"search"})],Si.prototype,"request",void 0),vi([jo({store:"search"})],Si.prototype,"paging",void 0),vi([jo({store:"search",selector:t=>t.spellcheck})],Si.prototype,"autocorrect",void 0),vi([jo({store:Xr.name})],Si.prototype,"session",void 0),W("ft-search-context")(Si),t.ClearAllFiltersEvent=di,t.FtSearchContext=Si,t.FtSearchContextCssVariables={},t.FtSearchStateManager=pi,t.LoadErrorEvent=Oi,t.SearchRequestChangeEvent=wi,t.SearchResultsChangeEvent=Ni,t.searchInDocumentTitlesOnlySelector=ui,t.styles=jr}({});
112
+ `}update(t){super.update(t),t.has("query")&&void 0!==this.query&&this.stateManager.setQuery(this.query),t.has("contentLocale")&&void 0!==this.contentLocale&&this.stateManager.setContentLocale(this.contentLocale),t.has("session")&&this.session&&this.stateManager.initService(),t.has("filters")&&void 0!==this.filters&&this.stateManager.setFilters(this.filters),t.has("sort")&&void 0!==this.sort&&this.stateManager.setSort(this.sort),t.has("pageSize")&&void 0!==this.pageSize&&this.stateManager.setPageSize(this.pageSize),t.has("searchInDocumentTitlesOnly")&&void 0!==this.searchInDocumentTitlesOnly&&this.stateManager.setSearchInDocumentTitlesOnly(this.searchInDocumentTitlesOnly),t.has("scope")&&void 0!==this.scope&&this.stateManager.setScope(this.scope),t.has("ignoreEmptyQuery")&&void 0!==this.ignoreEmptyQuery&&this.stateManager.setIgnoreEmptyQuery(this.ignoreEmptyQuery)}connectedCallback(){super.connectedCallback(),this.stateManager.setQuery(this.query),this.stateManager.setContentLocale(this.contentLocale),this.stateManager.setFilters(this.filters),this.stateManager.setPageSize(this.pageSize),this.stateManager.setSort(this.sort)}contentAvailableCallback(t){super.contentAvailableCallback(t),t.has("request")&&this.request&&this.dispatchEvent(new wi(this.request)),t.has("paging")&&void 0!==this.paging&&this.dispatchEvent(new Ni(this.request,this.paging,this.autocorrect))}registerComponent(t){t.stopPropagation();const o=t.composedPath()[0];this.register(o)}register(t){t.setSearchStateManager(this.stateManager)}handleLoadError(t){this.dispatchEvent(new Oi(t))}reloadSavedSearches(){fi.clearMySearches()}clear(){this.stateManager.clear()}}Si.elementDefinitions={},Si.styles=jr,vi([I()],Si.prototype,"query",void 0),vi([I()],Si.prototype,"contentLocale",void 0),vi([I({type:Number})],Si.prototype,"pageSize",void 0),vi([I({type:Boolean})],Si.prototype,"searchInDocumentTitlesOnly",void 0),vi([I()],Si.prototype,"scope",void 0),vi([I({type:Boolean})],Si.prototype,"ignoreEmptyQuery",void 0),vi([K([])],Si.prototype,"filters",void 0),vi([K([])],Si.prototype,"sort",void 0),vi([jo({store:"search"})],Si.prototype,"request",void 0),vi([jo({store:"search"})],Si.prototype,"paging",void 0),vi([jo({store:"search",selector:t=>t.spellcheck})],Si.prototype,"autocorrect",void 0),vi([jo({store:Xr.name})],Si.prototype,"session",void 0),W("ft-search-context")(Si),t.ClearAllFiltersEvent=di,t.FtSearchContext=Si,t.FtSearchContextCssVariables={},t.FtSearchStateManager=pi,t.LoadErrorEvent=Oi,t.SearchRequestChangeEvent=wi,t.SearchResultsChangeEvent=Ni,t.searchInDocumentTitlesOnlySelector=ui,t.styles=jr}({});
@@ -1,4 +1,4 @@
1
- import { cancelable, CanceledPromiseError, Debouncer, delay } from "@fluid-topics/ft-wc-utils";
1
+ import { cancelable, CanceledPromiseError, Debouncer, waitFor } from "@fluid-topics/ft-wc-utils";
2
2
  import { createSearchPageStore } from "./redux";
3
3
  import { FtSearchScope, FtVirtualField } from "@fluid-topics/public-api";
4
4
  import { FtSearchService } from "./utils/FtSearchService";
@@ -28,10 +28,7 @@ export class FtSearchStateManager {
28
28
  return this.launchSearch();
29
29
  }
30
30
  async awaitService() {
31
- while (this.service == null) {
32
- await delay(5);
33
- }
34
- return this.service;
31
+ return waitFor(() => this.service);
35
32
  }
36
33
  setQuery(query) {
37
34
  this.store.actions.setRequestQuery(query);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluid-topics/ft-search-context",
3
- "version": "1.1.11",
3
+ "version": "1.1.12",
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": "1.1.11",
23
- "@fluid-topics/ft-wc-utils": "1.1.11",
22
+ "@fluid-topics/ft-app-context": "1.1.12",
23
+ "@fluid-topics/ft-wc-utils": "1.1.12",
24
24
  "lit": "3.1.0"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@fluid-topics/public-api": "1.0.52"
28
28
  },
29
- "gitHead": "077ec0dd3948ed41aa130d5a4cdc3d77f0dd2e6c"
29
+ "gitHead": "81a42d69a8e10526af88b3c220eff325cbc33c3c"
30
30
  }