@uxland/primary-shell 7.11.3 → 7.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { E as i, u as e, w as r, c as t, P as n, n as o, m as l, d as c, p, f as g, o as m, e as P, q as v, g as E, j as h, a as u, l as S, v as d } from "./index-DyDitwTH.js";
1
+ import { E as i, u as e, w as r, c as t, P as n, n as o, m as l, d as c, p, f as g, o as m, e as P, q as v, g as E, j as h, a as u, l as S, v as d } from "./index-U-UQuOAE.js";
2
2
  export {
3
3
  i as EcapEventManager,
4
4
  e as PrimariaContentSwitcher,
@@ -296,7 +296,7 @@ Registered bindings:`,oe.forEach(function(ne){var de="Object";ne.implementationT
296
296
  </div>
297
297
  `,Is=class Is extends h$n{render(){return ke$1`${template$n(this)}`}};Is.styles=i$A`
298
298
  ${r$F(styles$l)}
299
- `;let PluginBusyList=Is;class PluginBusyManagerImpl{constructor(J){this.broker=J,this.busyPluginTasks=[],this.busyQuickActionTasks=[],customElements.get("plugin-busy-list")||t$j("plugin-busy-list")(PluginBusyList)}addBusyPluginTask(J){this.busyPluginTasks.some(re=>re.taskId===J.taskId)||this.busyPluginTasks.push(J)}addBusyQuickActionTask(J){this.busyQuickActionTasks.findIndex(re=>re.taskId===J.taskId)>-1||(this.busyQuickActionTasks.push(J),this.emitQuickActionBusyChanged())}removeBusyPluginTask(J){const X=this.busyPluginTasks.findIndex(re=>re.taskId===J);X>-1&&this.busyPluginTasks.splice(X,1)}removeBusyQuickActionTask(J){const X=this.busyQuickActionTasks.findIndex(re=>re.taskId===J);X>-1&&(this.busyQuickActionTasks.splice(X,1),this.emitQuickActionBusyChanged())}isAnyPluginBusy(){return this.busyPluginTasks.length>0}isAnyQuickActionBusy(){return this.busyQuickActionTasks.length>0}clearAllBusyPlugins(){this.busyPluginTasks=[]}clearAllBusyQuickActions(){this.busyQuickActionTasks=[]}getBusyPluginTasks(){return this.busyPluginTasks}emitQuickActionBusyChanged(){const J=this.isAnyQuickActionBusy();this.broker.publish(shellEvents.quickActionBusyChanged,{busy:J})}}const shellRegions={header:"header-region",headerRightActions:"header-actions-region",main:"main-region",navigationMenu:"menu-region",navigationLowerLeftMenu:"navigation-lower-left-menu",quickActions:"quick-actions-region",floating:"floating-region",communicationSidenav:"communication-sidenav-region",importData:"import-data-region"},clinicalMonitoringRegions={sidebar:"clinical-monitoring-widgets-sidebar-region",header:"clinical-monitoring-header-widgets-region",content:"clinical-monitoring-content-widgets-region"};class RegionManagerProxy{constructor(J,X,re){this.pluginInfo=J,this.regionManager=X,this.broker=re,this.regions={shell:shellRegions,clinicalMonitoring:clinicalMonitoringRegions}}registerView(J,X){return this.regionManager.registerViewWithRegion(J,`${this.pluginInfo.pluginId}::${X.id}`,X),Promise.resolve()}removeView(J,X){const re=this.regionManager.getRegion(J);return re&&re.removeView(`${this.pluginInfo.pluginId}::${X}`),Promise.resolve()}activateView(J,X){return this.regionManager.getRegion(J).activate(`${this.pluginInfo.pluginId}::${X}`),J===this.regions.shell.main&&this._notifyMainViewChanged(X),Promise.resolve()}deactivateView(J,X){return this.regionManager.getRegion(J).deactivate(`${this.pluginInfo.pluginId}::${X}`),Promise.resolve()}getRegion(J){return Promise.resolve(this.regionManager.getRegion(J))}containsView(J,X){const re=this.regionManager.getRegion(J);return Promise.resolve(re?.containsView(`${this.pluginInfo.pluginId}::${X}`))}isViewActive(J,X){const re=this.regionManager.getRegion(J);return Promise.resolve(re?.isViewActive(`${this.pluginInfo.pluginId}::${X}`))}registerQuickAction(J){return this.regionManager.registerViewWithRegion(this.regions.shell.quickActions,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}registerNavigationMenu(J){return this.regionManager.registerViewWithRegion(this.regions.shell.navigationMenu,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}registerMainView(J){return this.regionManager.registerViewWithRegion(this.regions.shell.main,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}activateMainView(J){return this.regionManager.getRegion(this.regions.shell.main).activate(`${this.pluginInfo.pluginId}::${J}`),this._notifyMainViewChanged(J),Promise.resolve()}getCurrentMainViewActive(){return this.regionManager.getRegion(this.regions.shell.main).currentActiveViews[0]?.id}_notifyMainViewChanged(J){console.log(J),this.broker.publish(shellEvents.mainViewChanged,{viewId:J})}_destroy(){this.regionManager.destroy()}}const createRegionManagerProxy=(te,J,X)=>new RegionManagerProxy(te,J,X);let token,refreshToken,tokenInitialized=!1;class TokenManagerImpl{constructor(){this.getUrlParams=()=>new URLSearchParams(window.location.search),this.initToken=()=>{if(tokenInitialized)throw new Error("Token already initialized");tokenInitialized=!0;const J=this.getUrlParams();return token=J.get("access_token")||"",refreshToken=J.get("refresh_token")||"",token},this.setInitialTokens=(J,X)=>{if(tokenInitialized)throw new Error("Token already initialized");token=J,refreshToken=X,tokenInitialized=!0},this.getToken=()=>(tokenInitialized||this.initToken(),token),this.refreshToken=async()=>{tokenInitialized||this.initToken();const J=await axios.post("/api/token/refresh",{token:refreshToken}),{access_token:X,refresh_token:re}=J.data;if(!X)throw new Error("Invalid refresh token response");return token=X,refreshToken=re,token}}}let tokenManager$1;const createTokenManager=()=>tokenManager$1||(tokenManager$1=new TokenManagerImpl,tokenManager$1);class UserManagerImpl{constructor(J){this.tokenManager=J,this.getRole=()=>{const X=this.tokenManager.getToken();if(X)try{return jwtDecode(X).access_info?.role_type}catch(re){console.error("Error decoding JWT token:",re);return}},this.isUserRoleAdministrative=()=>this.getRole()==="ADM"}}let userManager$1;const createUserManager=te=>userManager$1||(userManager$1=new UserManagerImpl(te),userManager$1);class ImportDataManagerImpl{constructor(J){this.interactionService=J,this.selectedItems={},this.currentImporterId="",this.pluginTexts={}}async import(J){this.currentImporterId=J,this.selectedItems={},this.pluginTexts={};try{const{ImportDataManagerModal:X}=await Promise.resolve().then(()=>component),{confirmed:re}=await this.interactionService.confirm(void 0,{component:X},{fullCustomization:!0}),oe=this.getConcatenatedText(),ne={accepted:re,data:re?this.selectedItems:{},text:re?oe:{raw:"",html:""}};return this.selectedItems={},this.currentImporterId="",this.pluginTexts={},ne}catch(X){throw this.selectedItems={},this.currentImporterId="",this.pluginTexts={},X}}selectItems(J){this.selectedItems[J.pluginId]=J.data,this.pluginTexts[J.pluginId]=J.text}getCurrentImporterId(){return this.currentImporterId}getConcatenatedText(){const J=[],X=[];for(const re of Object.values(this.pluginTexts))re.raw&&J.push(re.raw),re.html&&X.push(re.html);return{raw:J.join(`
299
+ `;let PluginBusyList=Is;class PluginBusyManagerImpl{constructor(J){this.broker=J,this.busyPluginTasks=[],this.busyQuickActionTasks=[],customElements.get("plugin-busy-list")||t$j("plugin-busy-list")(PluginBusyList)}addBusyPluginTask(J){this.busyPluginTasks.some(re=>re.taskId===J.taskId)||this.busyPluginTasks.push(J)}addBusyQuickActionTask(J){this.busyQuickActionTasks.findIndex(re=>re.taskId===J.taskId)>-1||(this.busyQuickActionTasks.push(J),this.emitQuickActionBusyChanged())}removeBusyPluginTask(J){const X=this.busyPluginTasks.findIndex(re=>re.taskId===J);X>-1&&this.busyPluginTasks.splice(X,1)}removeBusyQuickActionTask(J){const X=this.busyQuickActionTasks.findIndex(re=>re.taskId===J);X>-1&&(this.busyQuickActionTasks.splice(X,1),this.emitQuickActionBusyChanged())}isAnyPluginBusy(){return this.busyPluginTasks.length>0}isAnyQuickActionBusy(){return this.busyQuickActionTasks.length>0}clearAllBusyPlugins(){this.busyPluginTasks=[]}clearAllBusyQuickActions(){this.busyQuickActionTasks=[]}getBusyPluginTasks(){return this.busyPluginTasks}emitQuickActionBusyChanged(){const J=this.isAnyQuickActionBusy();this.broker.publish(shellEvents.quickActionBusyChanged,{busy:J})}}const shellRegions={header:"header-region",headerRightActions:"header-actions-region",main:"main-region",navigationMenu:"menu-region",navigationLowerLeftMenu:"navigation-lower-left-menu",quickActions:"quick-actions-region",floating:"floating-region",communicationSidenav:"communication-sidenav-region",importData:"import-data-region"},clinicalMonitoringRegions={sidebar:"clinical-monitoring-widgets-sidebar-region",header:"clinical-monitoring-header-widgets-region",content:"clinical-monitoring-content-widgets-region"};class RegionManagerProxy{constructor(J,X,re){this.pluginInfo=J,this.regionManager=X,this.broker=re,this.regions={shell:shellRegions,clinicalMonitoring:clinicalMonitoringRegions}}registerView(J,X){return this.regionManager.registerViewWithRegion(J,`${this.pluginInfo.pluginId}::${X.id}`,X),Promise.resolve()}removeView(J,X){const re=this.regionManager.getRegion(J);return re&&re.removeView(`${this.pluginInfo.pluginId}::${X}`),Promise.resolve()}activateView(J,X){return this.regionManager.getRegion(J).activate(`${this.pluginInfo.pluginId}::${X}`),J===this.regions.shell.main&&this._notifyMainViewChanged(X),Promise.resolve()}deactivateView(J,X){return this.regionManager.getRegion(J).deactivate(`${this.pluginInfo.pluginId}::${X}`),Promise.resolve()}getRegion(J){return Promise.resolve(this.regionManager.getRegion(J))}containsView(J,X){const re=this.regionManager.getRegion(J);return Promise.resolve(re?.containsView(`${this.pluginInfo.pluginId}::${X}`))}isViewActive(J,X){const re=this.regionManager.getRegion(J);return Promise.resolve(re?.isViewActive(`${this.pluginInfo.pluginId}::${X}`))}registerQuickAction(J){return this.regionManager.registerViewWithRegion(this.regions.shell.quickActions,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}registerNavigationMenu(J){return this.regionManager.registerViewWithRegion(this.regions.shell.navigationMenu,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}registerMainView(J){return this.regionManager.registerViewWithRegion(this.regions.shell.main,`${this.pluginInfo.pluginId}::${J.id}`,J),Promise.resolve()}activateMainView(J){return this.regionManager.getRegion(this.regions.shell.main).activate(`${this.pluginInfo.pluginId}::${J}`),this._notifyMainViewChanged(J),Promise.resolve()}getCurrentMainViewActive(){return this.regionManager.getRegion(this.regions.shell.main).currentActiveViews[0]?.id}_notifyMainViewChanged(J){this.broker.publish(shellEvents.mainViewChanged,{viewId:J})}_destroy(){this.regionManager.destroy()}}const createRegionManagerProxy=(te,J,X)=>new RegionManagerProxy(te,J,X);let token,refreshToken,tokenInitialized=!1;class TokenManagerImpl{constructor(){this.getUrlParams=()=>new URLSearchParams(window.location.search),this.initToken=()=>{if(tokenInitialized)throw new Error("Token already initialized");tokenInitialized=!0;const J=this.getUrlParams();return token=J.get("access_token")||"",refreshToken=J.get("refresh_token")||"",token},this.setInitialTokens=(J,X)=>{if(tokenInitialized)throw new Error("Token already initialized");token=J,refreshToken=X,tokenInitialized=!0},this.getToken=()=>(tokenInitialized||this.initToken(),token),this.refreshToken=async()=>{tokenInitialized||this.initToken();const J=await axios.post("/api/token/refresh",{token:refreshToken}),{access_token:X,refresh_token:re}=J.data;if(!X)throw new Error("Invalid refresh token response");return token=X,refreshToken=re,token}}}let tokenManager$1;const createTokenManager=()=>tokenManager$1||(tokenManager$1=new TokenManagerImpl,tokenManager$1);class UserManagerImpl{constructor(J){this.tokenManager=J,this.getRole=()=>{const X=this.tokenManager.getToken();if(X)try{return jwtDecode(X).access_info?.role_type}catch(re){console.error("Error decoding JWT token:",re);return}},this.isUserRoleAdministrative=()=>this.getRole()==="ADM"}}let userManager$1;const createUserManager=te=>userManager$1||(userManager$1=new UserManagerImpl(te),userManager$1);class ImportDataManagerImpl{constructor(J){this.interactionService=J,this.selectedItems={},this.currentImporterId="",this.pluginTexts={}}async import(J){this.currentImporterId=J,this.selectedItems={},this.pluginTexts={};try{const{ImportDataManagerModal:X}=await Promise.resolve().then(()=>component),{confirmed:re}=await this.interactionService.confirm(void 0,{component:X},{fullCustomization:!0}),oe=this.getConcatenatedText(),ne={accepted:re,data:re?this.selectedItems:{},text:re?oe:{raw:"",html:""}};return this.selectedItems={},this.currentImporterId="",this.pluginTexts={},ne}catch(X){throw this.selectedItems={},this.currentImporterId="",this.pluginTexts={},X}}selectItems(J){this.selectedItems[J.pluginId]=J.data,this.pluginTexts[J.pluginId]=J.text}getCurrentImporterId(){return this.currentImporterId}getConcatenatedText(){const J=[],X=[];for(const re of Object.values(this.pluginTexts))re.raw&&J.push(re.raw),re.html&&X.push(re.html);return{raw:J.join(`
300
300
 
301
301
  `),html:X.join("<br><br>")}}}const broker$1=createBroker(),regionManager=x$a("primaria"),PrimariaRegionHost=d$o(regionManager),tokenManager=createTokenManager(),userManager=createUserManager(tokenManager),globalStateManager=createGlobalStateManager(broker$1),pluginBusyManager=new PluginBusyManagerImpl(broker$1),interactionService=new ParimariaInteractionServiceImpl,notificationService=new PrimariaNotificationServiceImpl,ecapEventManager=createEcapEventManager(),pdfViewerManager=createPdfViewerManager(broker$1,notificationService),importDataManager=new ImportDataManagerImpl(interactionService),primariaApiFactory=te=>{const J=createRegionManagerProxy(te,regionManager,broker$1);return{pluginInfo:te,regionManager:J,httpClient:createHttpClient(tokenManager,broker$1),broker:broker$1,createLocaleManager:createLocaleManager(te.pluginId),globalStateManager,tokenManager,userManager,ecapEventManager,pluginBusyManager,interactionService,notificationService,pdfViewerManager,importDataManager}},shellApi=primariaApiFactory({pluginId:primariaShellId}),registerRequest=(te,J)=>(X,re)=>{J.bind(re).to(re).inTransientScope(),injectable()(re);const oe=te.broker.registerRequest(X,ne=>J.get(re).handle(ne));return{dispose:()=>{J.isBound(re)&&J.unbind(re),oe.dispose()}}},TYPES={primaryApi:Symbol.for("primaryApi"),store:Symbol.for("store")};function formatProdErrorMessage$1(te){return`Minified Redux error #${te}; visit https://redux.js.org/Errors?code=${te} for the full message or use the non-minified dev environment for full errors. `}var $$observable=typeof Symbol=="function"&&Symbol.observable||"@@observable",symbol_observable_default=$$observable,randomString=()=>Math.random().toString(36).substring(7).split("").join("."),ActionTypes={INIT:`@@redux/INIT${randomString()}`,REPLACE:`@@redux/REPLACE${randomString()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${randomString()}`},actionTypes_default=ActionTypes;function isPlainObject$1(te){if(typeof te!="object"||te===null)return!1;let J=te;for(;Object.getPrototypeOf(J)!==null;)J=Object.getPrototypeOf(J);return Object.getPrototypeOf(te)===J||Object.getPrototypeOf(te)===null}function createStore(te,J,X){if(typeof te!="function")throw new Error(formatProdErrorMessage$1(2));if(typeof J=="function"&&typeof X=="function"||typeof X=="function"&&typeof arguments[3]=="function")throw new Error(formatProdErrorMessage$1(0));if(typeof J=="function"&&typeof X>"u"&&(X=J,J=void 0),typeof X<"u"){if(typeof X!="function")throw new Error(formatProdErrorMessage$1(1));return X(createStore)(te,J)}let re=te,oe=J,ne=new Map,de=ne,ce=0,he=!1;function ue(){de===ne&&(de=new Map,ne.forEach((_e,ye)=>{de.set(ye,_e)}))}function pe(){if(he)throw new Error(formatProdErrorMessage$1(3));return oe}function fe(_e){if(typeof _e!="function")throw new Error(formatProdErrorMessage$1(4));if(he)throw new Error(formatProdErrorMessage$1(5));let ye=!0;ue();const Ce=ce++;return de.set(Ce,_e),function(){if(ye){if(he)throw new Error(formatProdErrorMessage$1(6));ye=!1,ue(),de.delete(Ce),ne=null}}}function be(_e){if(!isPlainObject$1(_e))throw new Error(formatProdErrorMessage$1(7));if(typeof _e.type>"u")throw new Error(formatProdErrorMessage$1(8));if(typeof _e.type!="string")throw new Error(formatProdErrorMessage$1(17));if(he)throw new Error(formatProdErrorMessage$1(9));try{he=!0,oe=re(oe,_e)}finally{he=!1}return(ne=de).forEach(Ce=>{Ce()}),_e}function ge(_e){if(typeof _e!="function")throw new Error(formatProdErrorMessage$1(10));re=_e,be({type:actionTypes_default.REPLACE})}function ve(){const _e=fe;return{subscribe(ye){if(typeof ye!="object"||ye===null)throw new Error(formatProdErrorMessage$1(11));function Ce(){const we=ye;we.next&&we.next(pe())}return Ce(),{unsubscribe:_e(Ce)}},[symbol_observable_default](){return this}}}return be({type:actionTypes_default.INIT}),{dispatch:be,subscribe:fe,getState:pe,replaceReducer:ge,[symbol_observable_default]:ve}}function assertReducerShape(te){Object.keys(te).forEach(J=>{const X=te[J];if(typeof X(void 0,{type:actionTypes_default.INIT})>"u")throw new Error(formatProdErrorMessage$1(12));if(typeof X(void 0,{type:actionTypes_default.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(formatProdErrorMessage$1(13))})}function combineReducers(te){const J=Object.keys(te),X={};for(let ne=0;ne<J.length;ne++){const de=J[ne];typeof te[de]=="function"&&(X[de]=te[de])}const re=Object.keys(X);let oe;try{assertReducerShape(X)}catch(ne){oe=ne}return function(de={},ce){if(oe)throw oe;let he=!1;const ue={};for(let pe=0;pe<re.length;pe++){const fe=re[pe],be=X[fe],ge=de[fe],ve=be(ge,ce);if(typeof ve>"u")throw ce&&ce.type,new Error(formatProdErrorMessage$1(14));ue[fe]=ve,he=he||ve!==ge}return he=he||re.length!==Object.keys(de).length,he?ue:de}}function compose(...te){return te.length===0?J=>J:te.length===1?te[0]:te.reduce((J,X)=>(...re)=>J(X(...re)))}function applyMiddleware(...te){return J=>(X,re)=>{const oe=J(X,re);let ne=()=>{throw new Error(formatProdErrorMessage$1(15))};const de={getState:oe.getState,dispatch:(he,...ue)=>ne(he,...ue)},ce=te.map(he=>he(de));return ne=compose(...ce)(oe.dispatch),{...oe,dispatch:ne}}}function isAction(te){return isPlainObject$1(te)&&"type"in te&&typeof te.type=="string"}var NOTHING=Symbol.for("immer-nothing"),DRAFTABLE=Symbol.for("immer-draftable"),DRAFT_STATE=Symbol.for("immer-state");function die(te,...J){throw new Error(`[Immer] minified error nr: ${te}. Full error at: https://bit.ly/3cXEKWf`)}var getPrototypeOf=Object.getPrototypeOf;function isDraft(te){return!!te&&!!te[DRAFT_STATE]}function isDraftable(te){return te?isPlainObject(te)||Array.isArray(te)||!!te[DRAFTABLE]||!!te.constructor?.[DRAFTABLE]||isMap(te)||isSet(te):!1}var objectCtorString=Object.prototype.constructor.toString();function isPlainObject(te){if(!te||typeof te!="object")return!1;const J=getPrototypeOf(te);if(J===null)return!0;const X=Object.hasOwnProperty.call(J,"constructor")&&J.constructor;return X===Object?!0:typeof X=="function"&&Function.toString.call(X)===objectCtorString}function each(te,J){getArchtype(te)===0?Reflect.ownKeys(te).forEach(X=>{J(X,te[X],te)}):te.forEach((X,re)=>J(re,X,te))}function getArchtype(te){const J=te[DRAFT_STATE];return J?J.type_:Array.isArray(te)?1:isMap(te)?2:isSet(te)?3:0}function has(te,J){return getArchtype(te)===2?te.has(J):Object.prototype.hasOwnProperty.call(te,J)}function set(te,J,X){const re=getArchtype(te);re===2?te.set(J,X):re===3?te.add(X):te[J]=X}function is(te,J){return te===J?te!==0||1/te===1/J:te!==te&&J!==J}function isMap(te){return te instanceof Map}function isSet(te){return te instanceof Set}function latest(te){return te.copy_||te.base_}function shallowCopy(te,J){if(isMap(te))return new Map(te);if(isSet(te))return new Set(te);if(Array.isArray(te))return Array.prototype.slice.call(te);const X=isPlainObject(te);if(J===!0||J==="class_only"&&!X){const re=Object.getOwnPropertyDescriptors(te);delete re[DRAFT_STATE];let oe=Reflect.ownKeys(re);for(let ne=0;ne<oe.length;ne++){const de=oe[ne],ce=re[de];ce.writable===!1&&(ce.writable=!0,ce.configurable=!0),(ce.get||ce.set)&&(re[de]={configurable:!0,writable:!0,enumerable:ce.enumerable,value:te[de]})}return Object.create(getPrototypeOf(te),re)}else{const re=getPrototypeOf(te);if(re!==null&&X)return{...te};const oe=Object.create(re);return Object.assign(oe,te)}}function freeze(te,J=!1){return isFrozen(te)||isDraft(te)||!isDraftable(te)||(getArchtype(te)>1&&(te.set=te.add=te.clear=te.delete=dontMutateFrozenCollections),Object.freeze(te),J&&Object.entries(te).forEach(([X,re])=>freeze(re,!0))),te}function dontMutateFrozenCollections(){die(2)}function isFrozen(te){return Object.isFrozen(te)}var plugins={};function getPlugin(te){const J=plugins[te];return J||die(0,te),J}var currentScope;function getCurrentScope(){return currentScope}function createScope(te,J){return{drafts_:[],parent_:te,immer_:J,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function usePatchesInScope(te,J){J&&(getPlugin("Patches"),te.patches_=[],te.inversePatches_=[],te.patchListener_=J)}function revokeScope(te){leaveScope(te),te.drafts_.forEach(revokeDraft),te.drafts_=null}function leaveScope(te){te===currentScope&&(currentScope=te.parent_)}function enterScope(te){return currentScope=createScope(currentScope,te)}function revokeDraft(te){const J=te[DRAFT_STATE];J.type_===0||J.type_===1?J.revoke_():J.revoked_=!0}function processResult(te,J){J.unfinalizedDrafts_=J.drafts_.length;const X=J.drafts_[0];return te!==void 0&&te!==X?(X[DRAFT_STATE].modified_&&(revokeScope(J),die(4)),isDraftable(te)&&(te=finalize(J,te),J.parent_||maybeFreeze(J,te)),J.patches_&&getPlugin("Patches").generateReplacementPatches_(X[DRAFT_STATE].base_,te,J.patches_,J.inversePatches_)):te=finalize(J,X,[]),revokeScope(J),J.patches_&&J.patchListener_(J.patches_,J.inversePatches_),te!==NOTHING?te:void 0}function finalize(te,J,X){if(isFrozen(J))return J;const re=J[DRAFT_STATE];if(!re)return each(J,(oe,ne)=>finalizeProperty(te,re,J,oe,ne,X)),J;if(re.scope_!==te)return J;if(!re.modified_)return maybeFreeze(te,re.base_,!0),re.base_;if(!re.finalized_){re.finalized_=!0,re.scope_.unfinalizedDrafts_--;const oe=re.copy_;let ne=oe,de=!1;re.type_===3&&(ne=new Set(oe),oe.clear(),de=!0),each(ne,(ce,he)=>finalizeProperty(te,re,oe,ce,he,X,de)),maybeFreeze(te,oe,!1),X&&te.patches_&&getPlugin("Patches").generatePatches_(re,X,te.patches_,te.inversePatches_)}return re.copy_}function finalizeProperty(te,J,X,re,oe,ne,de){if(isDraft(oe)){const ce=ne&&J&&J.type_!==3&&!has(J.assigned_,re)?ne.concat(re):void 0,he=finalize(te,oe,ce);if(set(X,re,he),isDraft(he))te.canAutoFreeze_=!1;else return}else de&&X.add(oe);if(isDraftable(oe)&&!isFrozen(oe)){if(!te.immer_.autoFreeze_&&te.unfinalizedDrafts_<1)return;finalize(te,oe),(!J||!J.scope_.parent_)&&typeof re!="symbol"&&Object.prototype.propertyIsEnumerable.call(X,re)&&maybeFreeze(te,oe)}}function maybeFreeze(te,J,X=!1){!te.parent_&&te.immer_.autoFreeze_&&te.canAutoFreeze_&&freeze(J,X)}function createProxyProxy(te,J){const X=Array.isArray(te),re={type_:X?1:0,scope_:J?J.scope_:getCurrentScope(),modified_:!1,finalized_:!1,assigned_:{},parent_:J,base_:te,draft_:null,copy_:null,revoke_:null,isManual_:!1};let oe=re,ne=objectTraps;X&&(oe=[re],ne=arrayTraps);const{revoke:de,proxy:ce}=Proxy.revocable(oe,ne);return re.draft_=ce,re.revoke_=de,ce}var objectTraps={get(te,J){if(J===DRAFT_STATE)return te;const X=latest(te);if(!has(X,J))return readPropFromProto(te,X,J);const re=X[J];return te.finalized_||!isDraftable(re)?re:re===peek(te.base_,J)?(prepareCopy(te),te.copy_[J]=createProxy(re,te)):re},has(te,J){return J in latest(te)},ownKeys(te){return Reflect.ownKeys(latest(te))},set(te,J,X){const re=getDescriptorFromProto(latest(te),J);if(re?.set)return re.set.call(te.draft_,X),!0;if(!te.modified_){const oe=peek(latest(te),J),ne=oe?.[DRAFT_STATE];if(ne&&ne.base_===X)return te.copy_[J]=X,te.assigned_[J]=!1,!0;if(is(X,oe)&&(X!==void 0||has(te.base_,J)))return!0;prepareCopy(te),markChanged(te)}return te.copy_[J]===X&&(X!==void 0||J in te.copy_)||Number.isNaN(X)&&Number.isNaN(te.copy_[J])||(te.copy_[J]=X,te.assigned_[J]=!0),!0},deleteProperty(te,J){return peek(te.base_,J)!==void 0||J in te.base_?(te.assigned_[J]=!1,prepareCopy(te),markChanged(te)):delete te.assigned_[J],te.copy_&&delete te.copy_[J],!0},getOwnPropertyDescriptor(te,J){const X=latest(te),re=Reflect.getOwnPropertyDescriptor(X,J);return re&&{writable:!0,configurable:te.type_!==1||J!=="length",enumerable:re.enumerable,value:X[J]}},defineProperty(){die(11)},getPrototypeOf(te){return getPrototypeOf(te.base_)},setPrototypeOf(){die(12)}},arrayTraps={};each(objectTraps,(te,J)=>{arrayTraps[te]=function(){return arguments[0]=arguments[0][0],J.apply(this,arguments)}}),arrayTraps.deleteProperty=function(te,J){return arrayTraps.set.call(this,te,J,void 0)},arrayTraps.set=function(te,J,X){return objectTraps.set.call(this,te[0],J,X,te[0])};function peek(te,J){const X=te[DRAFT_STATE];return(X?latest(X):te)[J]}function readPropFromProto(te,J,X){const re=getDescriptorFromProto(J,X);return re?"value"in re?re.value:re.get?.call(te.draft_):void 0}function getDescriptorFromProto(te,J){if(!(J in te))return;let X=getPrototypeOf(te);for(;X;){const re=Object.getOwnPropertyDescriptor(X,J);if(re)return re;X=getPrototypeOf(X)}}function markChanged(te){te.modified_||(te.modified_=!0,te.parent_&&markChanged(te.parent_))}function prepareCopy(te){te.copy_||(te.copy_=shallowCopy(te.base_,te.scope_.immer_.useStrictShallowCopy_))}var Immer2=class{constructor(te){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(J,X,re)=>{if(typeof J=="function"&&typeof X!="function"){const ne=X;X=J;const de=this;return function(he=ne,...ue){return de.produce(he,pe=>X.call(this,pe,...ue))}}typeof X!="function"&&die(6),re!==void 0&&typeof re!="function"&&die(7);let oe;if(isDraftable(J)){const ne=enterScope(this),de=createProxy(J,void 0);let ce=!0;try{oe=X(de),ce=!1}finally{ce?revokeScope(ne):leaveScope(ne)}return usePatchesInScope(ne,re),processResult(oe,ne)}else if(!J||typeof J!="object"){if(oe=X(J),oe===void 0&&(oe=J),oe===NOTHING&&(oe=void 0),this.autoFreeze_&&freeze(oe,!0),re){const ne=[],de=[];getPlugin("Patches").generateReplacementPatches_(J,oe,ne,de),re(ne,de)}return oe}else die(1,J)},this.produceWithPatches=(J,X)=>{if(typeof J=="function")return(de,...ce)=>this.produceWithPatches(de,he=>J(he,...ce));let re,oe;return[this.produce(J,X,(de,ce)=>{re=de,oe=ce}),re,oe]},typeof te?.autoFreeze=="boolean"&&this.setAutoFreeze(te.autoFreeze),typeof te?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(te.useStrictShallowCopy)}createDraft(te){isDraftable(te)||die(8),isDraft(te)&&(te=current(te));const J=enterScope(this),X=createProxy(te,void 0);return X[DRAFT_STATE].isManual_=!0,leaveScope(J),X}finishDraft(te,J){const X=te&&te[DRAFT_STATE];(!X||!X.isManual_)&&die(9);const{scope_:re}=X;return usePatchesInScope(re,J),processResult(void 0,re)}setAutoFreeze(te){this.autoFreeze_=te}setUseStrictShallowCopy(te){this.useStrictShallowCopy_=te}applyPatches(te,J){let X;for(X=J.length-1;X>=0;X--){const oe=J[X];if(oe.path.length===0&&oe.op==="replace"){te=oe.value;break}}X>-1&&(J=J.slice(X+1));const re=getPlugin("Patches").applyPatches_;return isDraft(te)?re(te,J):this.produce(te,oe=>re(oe,J))}};function createProxy(te,J){const X=isMap(te)?getPlugin("MapSet").proxyMap_(te,J):isSet(te)?getPlugin("MapSet").proxySet_(te,J):createProxyProxy(te,J);return(J?J.scope_:getCurrentScope()).drafts_.push(X),X}function current(te){return isDraft(te)||die(10,te),currentImpl(te)}function currentImpl(te){if(!isDraftable(te)||isFrozen(te))return te;const J=te[DRAFT_STATE];let X;if(J){if(!J.modified_)return J.base_;J.finalized_=!0,X=shallowCopy(te,J.scope_.immer_.useStrictShallowCopy_)}else X=shallowCopy(te,!0);return each(X,(re,oe)=>{set(X,re,currentImpl(oe))}),J&&(J.finalized_=!1),X}var immer=new Immer2,produce=immer.produce;immer.produceWithPatches.bind(immer),immer.setAutoFreeze.bind(immer),immer.setUseStrictShallowCopy.bind(immer),immer.applyPatches.bind(immer),immer.createDraft.bind(immer),immer.finishDraft.bind(immer);function assertIsFunction(te,J=`expected a function, instead received ${typeof te}`){if(typeof te!="function")throw new TypeError(J)}function assertIsObject(te,J=`expected an object, instead received ${typeof te}`){if(typeof te!="object")throw new TypeError(J)}function assertIsArrayOfFunctions(te,J="expected all items to be functions, instead received the following types: "){if(!te.every(X=>typeof X=="function")){const X=te.map(re=>typeof re=="function"?`function ${re.name||"unnamed"}()`:typeof re).join(", ");throw new TypeError(`${J}[${X}]`)}}var ensureIsArray=te=>Array.isArray(te)?te:[te];function getDependencies(te){const J=Array.isArray(te[0])?te[0]:te;return assertIsArrayOfFunctions(J,"createSelector expects all input-selectors to be functions, but received the following types: "),J}function collectInputSelectorResults(te,J){const X=[],{length:re}=te;for(let oe=0;oe<re;oe++)X.push(te[oe].apply(null,J));return X}var StrongRef=class{constructor(te){this.value=te}deref(){return this.value}},Ref=typeof WeakRef<"u"?WeakRef:StrongRef,UNTERMINATED=0,TERMINATED=1;function createCacheNode(){return{s:UNTERMINATED,v:void 0,o:null,p:null}}function weakMapMemoize(te,J={}){let X=createCacheNode();const{resultEqualityCheck:re}=J;let oe,ne=0;function de(){let ce=X;const{length:he}=arguments;for(let fe=0,be=he;fe<be;fe++){const ge=arguments[fe];if(typeof ge=="function"||typeof ge=="object"&&ge!==null){let ve=ce.o;ve===null&&(ce.o=ve=new WeakMap);const me=ve.get(ge);me===void 0?(ce=createCacheNode(),ve.set(ge,ce)):ce=me}else{let ve=ce.p;ve===null&&(ce.p=ve=new Map);const me=ve.get(ge);me===void 0?(ce=createCacheNode(),ve.set(ge,ce)):ce=me}}const ue=ce;let pe;if(ce.s===TERMINATED)pe=ce.v;else if(pe=te.apply(null,arguments),ne++,re){const fe=oe?.deref?.()??oe;fe!=null&&re(fe,pe)&&(pe=fe,ne!==0&&ne--),oe=typeof pe=="object"&&pe!==null||typeof pe=="function"?new Ref(pe):pe}return ue.s=TERMINATED,ue.v=pe,pe}return de.clearCache=()=>{X=createCacheNode(),de.resetResultsCount()},de.resultsCount=()=>ne,de.resetResultsCount=()=>{ne=0},de}function createSelectorCreator(te,...J){const X=typeof te=="function"?{memoize:te,memoizeOptions:J}:te,re=(...oe)=>{let ne=0,de=0,ce,he={},ue=oe.pop();typeof ue=="object"&&(he=ue,ue=oe.pop()),assertIsFunction(ue,`createSelector expects an output function after the inputs, but received: [${typeof ue}]`);const pe={...X,...he},{memoize:fe,memoizeOptions:be=[],argsMemoize:ge=weakMapMemoize,argsMemoizeOptions:ve=[]}=pe,me=ensureIsArray(be),_e=ensureIsArray(ve),ye=getDependencies(oe),Ce=fe(function(){return ne++,ue.apply(null,arguments)},...me),Se=ge(function(){de++;const Ae=collectInputSelectorResults(ye,arguments);return ce=Ce.apply(null,Ae),ce},..._e);return Object.assign(Se,{resultFunc:ue,memoizedResultFunc:Ce,dependencies:ye,dependencyRecomputations:()=>de,resetDependencyRecomputations:()=>{de=0},lastResult:()=>ce,recomputations:()=>ne,resetRecomputations:()=>{ne=0},memoize:fe,argsMemoize:ge})};return Object.assign(re,{withTypes:()=>re}),re}var createSelector=createSelectorCreator(weakMapMemoize),createStructuredSelector=Object.assign((te,J=createSelector)=>{assertIsObject(te,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof te}`);const X=Object.keys(te),re=X.map(ne=>te[ne]);return J(re,(...ne)=>ne.reduce((de,ce,he)=>(de[X[he]]=ce,de),{}))},{withTypes:()=>createStructuredSelector});function createThunkMiddleware(te){return({dispatch:X,getState:re})=>oe=>ne=>typeof ne=="function"?ne(X,re,te):oe(ne)}var thunk=createThunkMiddleware(),withExtraArgument=createThunkMiddleware,composeWithDevTools=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?compose:compose.apply(null,arguments)};function createAction(te,J){function X(...re){if(J){let oe=J(...re);if(!oe)throw new Error(formatProdErrorMessage(0));return{type:te,payload:oe.payload,..."meta"in oe&&{meta:oe.meta},..."error"in oe&&{error:oe.error}}}return{type:te,payload:re[0]}}return X.toString=()=>`${te}`,X.type=te,X.match=re=>isAction(re)&&re.type===te,X}var Tuple=class Ts extends Array{constructor(...J){super(...J),Object.setPrototypeOf(this,Ts.prototype)}static get[Symbol.species](){return Ts}concat(...J){return super.concat.apply(this,J)}prepend(...J){return J.length===1&&Array.isArray(J[0])?new Ts(...J[0].concat(this)):new Ts(...J.concat(this))}};function freezeDraftable(te){return isDraftable(te)?produce(te,()=>{}):te}function getOrInsertComputed(te,J,X){return te.has(J)?te.get(J):te.set(J,X(J)).get(J)}function isBoolean(te){return typeof te=="boolean"}var buildGetDefaultMiddleware=()=>function(J){const{thunk:X=!0,immutableCheck:re=!0,serializableCheck:oe=!0,actionCreatorCheck:ne=!0}=J??{};let de=new Tuple;return X&&(isBoolean(X)?de.push(thunk):de.push(withExtraArgument(X.extraArgument))),de},SHOULD_AUTOBATCH="RTK_autoBatch",createQueueWithTimer=te=>J=>{setTimeout(J,te)},autoBatchEnhancer=(te={type:"raf"})=>J=>(...X)=>{const re=J(...X);let oe=!0,ne=!1,de=!1;const ce=new Set,he=te.type==="tick"?queueMicrotask:te.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:createQueueWithTimer(10):te.type==="callback"?te.queueNotification:createQueueWithTimer(te.timeout),ue=()=>{de=!1,ne&&(ne=!1,ce.forEach(pe=>pe()))};return Object.assign({},re,{subscribe(pe){const fe=()=>oe&&pe(),be=re.subscribe(fe);return ce.add(pe),()=>{be(),ce.delete(pe)}},dispatch(pe){try{return oe=!pe?.meta?.[SHOULD_AUTOBATCH],ne=!oe,ne&&(de||(de=!0,he(ue))),re.dispatch(pe)}finally{oe=!0}}})},buildGetDefaultEnhancers=te=>function(X){const{autoBatch:re=!0}=X??{};let oe=new Tuple(te);return re&&oe.push(autoBatchEnhancer(typeof re=="object"?re:void 0)),oe};function configureStore(te){const J=buildGetDefaultMiddleware(),{reducer:X=void 0,middleware:re,devTools:oe=!0,preloadedState:ne=void 0,enhancers:de=void 0}=te||{};let ce;if(typeof X=="function")ce=X;else if(isPlainObject$1(X))ce=combineReducers(X);else throw new Error(formatProdErrorMessage(1));let he;typeof re=="function"?he=re(J):he=J();let ue=compose;oe&&(ue=composeWithDevTools({trace:!1,...typeof oe=="object"&&oe}));const pe=applyMiddleware(...he),fe=buildGetDefaultEnhancers(pe);let be=typeof de=="function"?de(fe):fe();const ge=ue(...be);return createStore(ce,ne,ge)}function executeReducerBuilderCallback(te){const J={},X=[];let re;const oe={addCase(ne,de){const ce=typeof ne=="string"?ne:ne.type;if(!ce)throw new Error(formatProdErrorMessage(28));if(ce in J)throw new Error(formatProdErrorMessage(29));return J[ce]=de,oe},addMatcher(ne,de){return X.push({matcher:ne,reducer:de}),oe},addDefaultCase(ne){return re=ne,oe}};return te(oe),[J,X,re]}function isStateFunction(te){return typeof te=="function"}function createReducer(te,J){let[X,re,oe]=executeReducerBuilderCallback(J),ne;if(isStateFunction(te))ne=()=>freezeDraftable(te());else{const ce=freezeDraftable(te);ne=()=>ce}function de(ce=ne(),he){let ue=[X[he.type],...re.filter(({matcher:pe})=>pe(he)).map(({reducer:pe})=>pe)];return ue.filter(pe=>!!pe).length===0&&(ue=[oe]),ue.reduce((pe,fe)=>{if(fe)if(isDraft(pe)){const ge=fe(pe,he);return ge===void 0?pe:ge}else{if(isDraftable(pe))return produce(pe,be=>fe(be,he));{const be=fe(pe,he);if(be===void 0){if(pe===null)return pe;throw Error("A case reducer on a non-draftable value must not return undefined")}return be}}return pe},ce)}return de.getInitialState=ne,de}var asyncThunkSymbol=Symbol.for("rtk-slice-createasyncthunk");function getType(te,J){return`${te}/${J}`}function buildCreateSlice({creators:te}={}){const J=te?.asyncThunk?.[asyncThunkSymbol];return function(re){const{name:oe,reducerPath:ne=oe}=re;if(!oe)throw new Error(formatProdErrorMessage(11));const de=(typeof re.reducers=="function"?re.reducers(buildReducerCreators()):re.reducers)||{},ce=Object.keys(de),he={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},ue={addCase(Ce,Se){const we=typeof Ce=="string"?Ce:Ce.type;if(!we)throw new Error(formatProdErrorMessage(12));if(we in he.sliceCaseReducersByType)throw new Error(formatProdErrorMessage(13));return he.sliceCaseReducersByType[we]=Se,ue},addMatcher(Ce,Se){return he.sliceMatchers.push({matcher:Ce,reducer:Se}),ue},exposeAction(Ce,Se){return he.actionCreators[Ce]=Se,ue},exposeCaseReducer(Ce,Se){return he.sliceCaseReducersByName[Ce]=Se,ue}};ce.forEach(Ce=>{const Se=de[Ce],we={reducerName:Ce,type:getType(oe,Ce),createNotation:typeof re.reducers=="function"};isAsyncThunkSliceReducerDefinition(Se)?handleThunkCaseReducerDefinition(we,Se,ue,J):handleNormalReducerDefinition(we,Se,ue)});function pe(){const[Ce={},Se=[],we=void 0]=typeof re.extraReducers=="function"?executeReducerBuilderCallback(re.extraReducers):[re.extraReducers],Ae={...Ce,...he.sliceCaseReducersByType};return createReducer(re.initialState,Le=>{for(let qe in Ae)Le.addCase(qe,Ae[qe]);for(let qe of he.sliceMatchers)Le.addMatcher(qe.matcher,qe.reducer);for(let qe of Se)Le.addMatcher(qe.matcher,qe.reducer);we&&Le.addDefaultCase(we)})}const fe=Ce=>Ce,be=new Map;let ge;function ve(Ce,Se){return ge||(ge=pe()),ge(Ce,Se)}function me(){return ge||(ge=pe()),ge.getInitialState()}function _e(Ce,Se=!1){function we(Le){let qe=Le[Ce];return typeof qe>"u"&&Se&&(qe=me()),qe}function Ae(Le=fe){const qe=getOrInsertComputed(be,Se,()=>new WeakMap);return getOrInsertComputed(qe,Le,()=>{const Me={};for(const[He,Pe]of Object.entries(re.selectors??{}))Me[He]=wrapSelector(Pe,Le,me,Se);return Me})}return{reducerPath:Ce,getSelectors:Ae,get selectors(){return Ae(we)},selectSlice:we}}const ye={name:oe,reducer:ve,actions:he.actionCreators,caseReducers:he.sliceCaseReducersByName,getInitialState:me,..._e(ne),injectInto(Ce,{reducerPath:Se,...we}={}){const Ae=Se??ne;return Ce.inject({reducerPath:Ae,reducer:ve},we),{...ye,..._e(Ae,!0)}}};return ye}}function wrapSelector(te,J,X,re){function oe(ne,...de){let ce=J(ne);return typeof ce>"u"&&re&&(ce=X()),te(ce,...de)}return oe.unwrapped=te,oe}var createSlice=buildCreateSlice();function buildReducerCreators(){function te(J,X){return{_reducerDefinitionType:"asyncThunk",payloadCreator:J,...X}}return te.withTypes=()=>te,{reducer(J){return Object.assign({[J.name](...X){return J(...X)}}[J.name],{_reducerDefinitionType:"reducer"})},preparedReducer(J,X){return{_reducerDefinitionType:"reducerWithPrepare",prepare:J,reducer:X}},asyncThunk:te}}function handleNormalReducerDefinition({type:te,reducerName:J,createNotation:X},re,oe){let ne,de;if("reducer"in re){if(X&&!isCaseReducerWithPrepareDefinition(re))throw new Error(formatProdErrorMessage(17));ne=re.reducer,de=re.prepare}else ne=re;oe.addCase(te,ne).exposeCaseReducer(J,ne).exposeAction(J,de?createAction(te,de):createAction(te))}function isAsyncThunkSliceReducerDefinition(te){return te._reducerDefinitionType==="asyncThunk"}function isCaseReducerWithPrepareDefinition(te){return te._reducerDefinitionType==="reducerWithPrepare"}function handleThunkCaseReducerDefinition({type:te,reducerName:J},X,re,oe){if(!oe)throw new Error(formatProdErrorMessage(18));const{payloadCreator:ne,fulfilled:de,pending:ce,rejected:he,settled:ue,options:pe}=X,fe=oe(te,ne,pe);re.exposeAction(J,fe),de&&re.addCase(fe.fulfilled,de),ce&&re.addCase(fe.pending,ce),he&&re.addCase(fe.rejected,he),ue&&re.addMatcher(fe.settled,ue),re.exposeCaseReducer(J,{fulfilled:de||noop,pending:ce||noop,rejected:he||noop,settled:ue||noop})}function noop(){}function formatProdErrorMessage(te){return`Minified Redux Toolkit error #${te}; visit https://redux-toolkit.js.org/Errors?code=${te} for the full message or use the non-minified dev environment for full errors. `}const addItemsToCollection=(te,J,X,re,oe)=>te[J]?{...te,[J]:{...te[J],items:[...te[J]?.items||[],...X]}}:{...te,[J]:{id:J,items:X,componentFactory:re,searchPredicate:oe}},addItemToCollection=(te,J,X,re)=>addItemsToCollection(te,J,[X],re);function addActivityHistoryItemReducer(te,J){const{id:X,item:re,componentFactory:oe}=J.payload;te.collections=addItemToCollection(te.collections,X,re,oe)}function addActivityHistoryItemsReducer(te,J){const{id:X,items:re,componentFactory:oe,searchPredicate:ne}=J.payload;return{...te,collections:addItemsToCollection(te.collections,X,re,oe,ne)}}const removeItemFromCollection=(te,J,X)=>{if(!te[J]?.items)return te;const re=te[J]?.items??[];return{...te,[J]:{...te[J],items:re.filter(oe=>oe.id!==X)}}};function removeActivityHistoryItemReducer(te,J){const{id:X,itemId:re}=J.payload;te.collections=removeItemFromCollection(te.collections,X,re)}const updateItemInCollection=(te,J,X)=>{if(!te[J]?.items)return te;const re=te[J]?.items??[];return{...te,[J]:{...te[J],items:re.map(oe=>oe.id===X.id?X:oe)}}};function updateActivityHistoryItemReducer(te,J){const{id:X,item:re}=J.payload;te.collections=updateItemInCollection(te.collections,X,re)}function addBusyHistoryItemReducer(te,J){te.busy.push(J.payload)}function removeBusyHistoryItemReducer(te,J){te.busy=te.busy.filter(X=>X!==J.payload)}function addErrorHistoryItemReducer(te,J){te.error.push(J.payload)}function removeErrorHistoryItemReducer(te,J){te.error=te.error.filter(X=>X.entityId!==J.payload)}const activityHistoryCollectionsSlice=createSlice({name:"activity-history-collections",initialState:{busy:[],error:[],collections:{}},reducers:{addBusyHistoryItem:addBusyHistoryItemReducer,removeBusyHistoryItem:removeBusyHistoryItemReducer,addActivityHistoryItem:addActivityHistoryItemReducer,updateActivityHistoryItem:updateActivityHistoryItemReducer,addActivityHistoryItems:addActivityHistoryItemsReducer,addErrorHistoryItem:addErrorHistoryItemReducer,removeErrorHistoryItem:removeErrorHistoryItemReducer,removeActivityHistoryItem:removeActivityHistoryItemReducer}});function setSearchStringReducer(te,J){te.searchString=J.payload}class Spec{and(J){return new AndSpec(this,J)}or(J){return new OrSpec(this,J)}not(){return new NotSpec(this)}}class AndSpec extends Spec{constructor(J,X){super(),this.left=J,this.right=X}isSatisfiedBy(J){return this.left.isSatisfiedBy(J)&&this.right.isSatisfiedBy(J)}}class OrSpec extends Spec{constructor(J,X){super(),this.left=J,this.right=X}isSatisfiedBy(J){return this.left.isSatisfiedBy(J)||this.right.isSatisfiedBy(J)}}class NotSpec extends Spec{constructor(J){super(),this.spec=J}isSatisfiedBy(J){return!this.spec.isSatisfiedBy(J)}}let shellApiRef=null;const setShellApiForOwnSpec=te=>{shellApiRef=te};class OwnSpec extends Spec{constructor(J){super(),this.context=J}isSatisfiedBy(J){if(!shellApiRef)return!1;try{const X=shellApiRef.globalStateManager.getData("userInfo");return J?.professional?.id===X?.userId}catch{return!1}}}class RelevantSpec extends Spec{constructor(J){super(),this.context=J}isSatisfiedBy(J){return J?.relevant??!1}}var ActivityHistoryFilterType=(te=>(te.Switch="switch",te.Checkbox="checkbox",te.Dropdown="dropdown",te))(ActivityHistoryFilterType||{});const isCommonFilterGroup=te=>te.id==="common",isDiagnosticFilter=te=>te.id===diagnosticsfilterId,isCustomFilter=te=>!isCommonFilterGroup(te)&&!isDiagnosticFilter(te)&&!isUpFilter(te),isUpFilter=te=>te.id===upFilterId,diagnosticsfilterId="history-diagnostics",relevantFilterId="history-relevant",ownFilterId="history-own",upFilterId="history-up",commonFilters=[{id:"common",title:"Comuns",filters:[{id:relevantFilterId,title:"Veure rellevants",spec:RelevantSpec,enabled:!1,type:ActivityHistoryFilterType.Switch},{id:ownFilterId,title:"Veure meus",spec:OwnSpec,enabled:!1,type:ActivityHistoryFilterType.Switch}]}];function setCommonFilterValueReducer(te,J){te.filters=te.filters.map(X=>X.id==="common"?{...X,filters:X.filters.map(re=>re.id===J.payload.id?{...re,enabled:J.payload.enabled}:re)}:X)}function addCustomFiltersReducer(te,J){te.filters.some(re=>re.id===J.payload.id)||(te.filters=[...te.filters,J.payload])}function setCustomFilterGroupValueReducer(te,J){te.filters=te.filters.map(X=>X.id===J.payload.id?{...X,enabled:J.payload.enabled}:X)}function setCustomFilterValueReducer(te,J){te.filters=te.filters.map(X=>X.id===J.payload.filterGroupId?{...X,filters:X.filters.map(re=>re.id===J.payload.filterId?re.singleOption?setSingleOptionFilterValue(re,J.payload.enabled):setMultipleOptionsFilterValue(re,J.payload):re)}:X)}const setMultipleOptionsFilterValue=(te,J)=>{const{optionId:X,enabled:re}=J;return te.enabledValues?.some(oe=>oe===X)&&re?te:X==null?{...te,enabledValues:[]}:{...te,enabledValues:re?[...te.enabledValues||[],X]:te.enabledValues.filter(oe=>oe!==X)}},setSingleOptionFilterValue=(te,J)=>({...te,enabled:J,enabledValues:J?[!0]:[]});function addDiagnosticFiltersReducer(te,J){const X=te.filters.findIndex(isDiagnosticFilter);if(X===-1)te.filters.push(J.payload);else{const re=te.filters[X],oe=[...re.values,...J.payload.values.filter(ne=>!re.values.some(de=>de.value===ne.value))];te.filters[X]={...re,values:oe}}}function setDiagnosticFilterValuesReducer(te,J){te.filters=[...te.filters].map(X=>isDiagnosticFilter(X)?{...X,enabledValues:J.payload}:X)}function addUpFiltersReducer(te,J){const X=te.filters.findIndex(isUpFilter);if(X===-1)te.filters.push(J.payload);else{const re=te.filters[X],oe=[...re.values,...J.payload.values.filter(ne=>!re.values.some(de=>de.value===ne.value))];te.filters[X]={...re,values:oe}}}function setUpFilterValuesReducer(te,J){te.filters=[...te.filters].map(X=>isUpFilter(X)?{...X,enabledValues:J.payload}:X)}function resetFiltersReducer(te,J){te.filters=te.filters.map(X=>X.id!=="common"&&X.id!=="history-diagnostics"&&X.id!=="history-up"?{...X,filters:X.filters.map(re=>re.singleOption?{...re,enabled:!1}:{...re,enabled:!0,enabledValues:[]})}:X.id==="history-diagnostics"||X.id==="history-up"?{...X,enabledValues:[]}:X.id==="common"?commonFilters[0]:X)}function setCustomFilterAllValuesReducer(te,J){te.filters=te.filters.map(X=>X.id===J.payload.filterGroupId?{...X,filters:X.filters.map(re=>re.id===J.payload.filterId?{...re,enabledValues:J.payload.values}:re)}:X)}const activityHistoryFiltersSlice=createSlice({name:"activity-history-filters",initialState:{searchString:"",filters:[...commonFilters]},reducers:{setSearchString:setSearchStringReducer,setCommonFilterValue:setCommonFilterValueReducer,addCustomFilters:addCustomFiltersReducer,setCustomFilterGroupValue:setCustomFilterGroupValueReducer,setCustomFilterValue:setCustomFilterValueReducer,setCustomFilterAllValues:setCustomFilterAllValuesReducer,addDiagnosticFilters:addDiagnosticFiltersReducer,setDiagnosticFilterValues:setDiagnosticFilterValuesReducer,addUpFilters:addUpFiltersReducer,setUpFilterValues:setUpFilterValuesReducer,resetFilters:resetFiltersReducer}}),store=configureStore({reducer:{activityHistoryCollections:activityHistoryCollectionsSlice.reducer,activityHistoryFilters:activityHistoryFiltersSlice.reducer},devTools:{name:"activity-history"},middleware:te=>te({serializableCheck:!1})});store.dispatch,store.getState;const container=new Container,{lazyInject}=getDecorators(container),bindDeps=te=>{container.bind(TYPES.primaryApi).toConstantValue(te),container.bind(TYPES.store).toConstantValue(store)},unbindDeps=()=>{container.unbind(TYPES.primaryApi),container.unbind(TYPES.store)};var __getOwnPropDesc$k=Object.getOwnPropertyDescriptor,__decorateClass$u=(te,J,X,re)=>{for(var oe=re>1?void 0:re?__getOwnPropDesc$k(J,X):J,ne=te.length-1,de;ne>=0;ne--)(de=te[ne])&&(oe=de(oe)||oe);return oe},__decorateParam$5=(te,J)=>(X,re)=>J(X,re,te);let StoreBaseHandler=class{constructor(te){this.store=te}};StoreBaseHandler=__decorateClass$u([injectable(),__decorateParam$5(0,inject(TYPES.store))],StoreBaseHandler);let ApiBaseHandler=class{constructor(te){this.api=te}};ApiBaseHandler=__decorateClass$u([injectable(),__decorateParam$5(0,inject(TYPES.primaryApi))],ApiBaseHandler);let BaseHandler=class{constructor(te,J){this.store=te,this.api=J}};BaseHandler=__decorateClass$u([injectable(),__decorateParam$5(0,inject(TYPES.store)),__decorateParam$5(1,inject(TYPES.primaryApi))],BaseHandler);class AddCustomFiltersCommand{constructor(J){this.payload=J}}const{addBusyHistoryItem,removeBusyHistoryItem}=activityHistoryCollectionsSlice.actions,{addErrorHistoryItem,removeErrorHistoryItem}=activityHistoryCollectionsSlice.actions,validateAddAsyncCommand=(te,J)=>{if(te.entityId!==te.filters.id)throw new Error("entityId and filters.id must be the same");if(!te.filters.title)throw new Error("filters.title is required");if(!te.asyncDataProvider)throw new Error("asyncDataProvider is required");if(!te.componentFactory)throw new Error("componentFactory is required");if(!te.errorMessage)throw new Error("errorMessage is required for failure asyncDataProviders")};class InjectAsyncHistoryItemsHandler extends BaseHandler{async handle(J){this.store.dispatch(addBusyHistoryItem(J.entityId));try{const X=await J.asyncDataProvider();validateAddAsyncCommand(J,X),this.api.broker.send("add_history_items_request",{entityId:J.entityId,entityDescription:J.entityDescription,items:X,componentFactory:J.componentFactory,searchPredicate:J.searchPredicate}),J.filters&&this.api.broker.send(new AddCustomFiltersCommand(J.filters))}catch(X){this.store.dispatch(addErrorHistoryItem({entityId:J.entityId,message:J.errorMessage||X.message,entityDescription:J.entityDescription}))}finally{this.store.dispatch(removeBusyHistoryItem(J.entityId))}}}let request$l;const bootstrapInjectAsyncHistoryItems=te=>{request$l=te.registerRequest("inject_async_history_items_request",InjectAsyncHistoryItemsHandler)},teardownInjectAsyncHistoryItems=()=>{request$l?.dispose()},isString=te=>typeof te=="string"&&te.trim()!=="",isValidDateString=te=>{if(typeof te!="string"||te.trim()==="")return!1;const J=new Date(te);return J instanceof Date&&!Number.isNaN(J.getTime())},isValidBasicActivityHistoryItem=te=>te&&isString(te.id)&&isValidDateString(te.date),ensureAreValidBasicActivityHistoryItems=te=>{if(!te.every(isValidBasicActivityHistoryItem))throw console.error("Invalid activity history items",te),new Error("Invalid activity history items");return te},notifyInvalidItem=te=>{console.error("Invalid history item",te)},validateAndFilterBasicItems=te=>{const J=[];for(const X of te)isValidBasicActivityHistoryItem(X)?J.push(X):notifyInvalidItem(X);return J},handleAddDiagnosticsFilter=(te,J)=>{const X=te.flatMap(re=>re.diagnostics??[]).filter(re=>typeof re.codi=="string"&&re.codi.trim()!=="").filter((re,oe,ne)=>oe===ne.findIndex(de=>de.codi===re.codi));if(X.length>0){const re={id:diagnosticsfilterId,title:"Diagnòstics",values:mapArrayToLabelValue(X,"descripcio","codi"),enabledValues:[]};J.dispatch(activityHistoryFiltersSlice.actions.addDiagnosticFilters(re))}},getUpFilter=te=>{const J=te.flatMap(X=>X.up??[]).filter(X=>X?.id?.trim()).filter((X,re,oe)=>re===oe.findIndex(ne=>ne.id===X.id));if(J.length>0)return{id:upFilterId,title:"UP",values:mapArrayToLabelValue(J,"description","id"),enabledValues:[]}},handleAddUpFilter=(te,J)=>{const X=getUpFilter(te);X&&J.dispatch(activityHistoryFiltersSlice.actions.addUpFilters(X))},{addActivityHistoryItem}=activityHistoryCollectionsSlice.actions;class AddHistoryItemHandler extends StoreBaseHandler{async handle(J){try{ensureAreValidBasicActivityHistoryItems([J.item]),handleAddDiagnosticsFilter([J.item],this.store),handleAddUpFilter([J.item],this.store),this.store.dispatch(addActivityHistoryItem({id:J.entityId,item:J.item}))}catch(X){console.log(X.message)}}}let request$k;const bootstrapAddHistoryItem=te=>{request$k=te.registerRequest("add_history_item_request",AddHistoryItemHandler)},teardownAddHistoryItem=()=>{request$k?.dispose()};let pluginLocaleManager;const initializeLocalization=async te=>{pluginLocaleManager=await te.createLocaleManager(locales)},translate=te=>pluginLocaleManager?pluginLocaleManager.translate(te):te,locales={ca:{"activity-history":{activityHistory:"Històric d’activitat",search:"Cercar",groupedView:"Visió agrupada",maximize:"Ampliar",deleted:"Eliminat",goToDate:"Anar a data",busyEntriesLoading:"Carregant totes les entrades",noResults:"Sense resultats. Modifica la cerca",noData:{title:"Sense dades",description:"No existeix informació per a mostrar"},isGrouping:"Creant agrupacions i preparant les dades...",searchBarResults:"Resultats per",actions:{cronogram:"Cronograma",exportPdf:"Exportar PDF",moreOptions:"Més opcions",entryLegend:"Llegenda entrades",maximizeButton:"Botó maximitzar",menuButton:"Botó menu"},modal:{selectExportOption:"Tria una opció d'exportació",allActivityHistory:"Tot l’històric d’activitat",onlyAppliedFilters:"Només amb filtres aplicats",selectDateRange:"En el cas que sigui necessari, selecciona un rang de dates",helpText:"Sense seleccionar data, s'aplicarà la de la primera entrada. Sense seleccionar data de fi, s'aplicarà la de l'última entrada.",startDate:"Data Inici",endDate:"Data Fi",cancel:"Cancel·lar",export:"Exportar"},filters:{filters:"Filtres",searchFilter:"Cercar filtre",ownFilters:"Els meus",rellevantFilters:"Rellevants",episode:"Episodi",dates:"Dates",diagnoses:"Diagnòstics",clinicalCourseType:"Tipus Curs Clínic",selected:"seleccionats",applyFilters:"Aplicar filtres",deleted:"Eliminats"},tooltips:{subjective:"Subjectiu",UPconfidenciality:"Confidencialitat: per a la meva UP"},grouped:{clinicalCourses:"Cursos clínics",activities:"Activitats",variablees:"Variables",prescriptions:"Prescripcions"},chipHeader:{selection:"Selecció:",without:"Sense",cleanFilters:"Netejar filtres"},error:{general:{title:"Hi ha hagut un problema durant la càrrega de contingut. Actualitza la pàgina o torna-ho a provar més tard.",refresh:"Actualitzar pàgina",noInfo:"No hi ha informació disponible."},partial:{title:"Hi ha hagut un problema i no s'ha pogut carregar les notes de tipus",refresh:"Actualitzar",limit:"Límit de clicks superat"},title:"Error en la càrrega",viewDetails:"Veure detalls",imageAlt:"Imatge d'error",errorToRefresh:"Error en l'acció d'actualitzar la pàgina"}}}},styles$k=".wrapper{display:flex;flex-direction:column;align-items:center;gap:24px;width:484px;height:auto}.wrapper .content-options{display:flex;flex-direction:column;align-items:center;gap:16px}.wrapper .selector-options{display:flex;flex-direction:row;gap:16px}.wrapper .content-date{display:flex;flex-direction:column;align-items:center;gap:16px;height:124px}.wrapper .datepicker-canvas{display:flex;flex-direction:row;justify-content:center;align-content:center;gap:16px}.wrapper .actions{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:16px}dss-datepicker{width:234px;height:48px;border-radius:var(--dss-radius-sm);border:var(--dss-border-width-sm);padding:var(--dss-spacing-sm);gap:var(--dss-spacing-xs);color:var(--color-neutral-100)}",template$m=te=>{const{arrayElements:J,text:X}=te;return ke$1`
302
302
  <div class="wrapper">
@@ -6981,7 +6981,7 @@ ${te.searchString?.length>1?ke$1`
6981
6981
 
6982
6982
 
6983
6983
  <button @click=${J=>this.getPDFS()}>GET PDFs</button>
6984
- `}sendPdfToViewer(){const J=this.shadowRoot?.getElementById("pdfName")?.value,re={url:this.shadowRoot?.getElementById("url")?.value};shellApi.pdfViewerManager.add(J,re)}getPDFS(){const J=shellApi.pdfViewerManager.getPdfs();return console.log(J),J}goToLinkOnEcap(){const J=this.shadowRoot?.getElementById("eventType")?.value,X=this.shadowRoot?.getElementById("accio")?.value,re=this.shadowRoot?.getElementById("parameterName")?.value,oe=this.shadowRoot?.getElementById("parameterValue")?.value;shellApi.ecapEventManager.publish(J,X,{[re]:oe})}};zs.styles=i$A`
6984
+ `}sendPdfToViewer(){const J=this.shadowRoot?.getElementById("pdfName")?.value,re={url:this.shadowRoot?.getElementById("url")?.value};shellApi.pdfViewerManager.add(J,re)}getPDFS(){return shellApi.pdfViewerManager.getPdfs()}goToLinkOnEcap(){const J=this.shadowRoot?.getElementById("eventType")?.value,X=this.shadowRoot?.getElementById("accio")?.value,re=this.shadowRoot?.getElementById("parameterName")?.value,oe=this.shadowRoot?.getElementById("parameterValue")?.value;shellApi.ecapEventManager.publish(J,X,{[re]:oe})}};zs.styles=i$A`
6985
6985
  `;let PocEventsEcap=zs;const template$6=te=>ke$1`
6986
6986
  ${te.visitId?ke$1`<dss-button @click=${te.finalizeVisitHandler} variant="subtle" size="md" icon="door_front" label=${translate$1("actions.finalizeVisit")}></dss-button>`:D$2}
6987
6987
  `;var __defProp$8=Object.defineProperty,__decorateClass$8=(te,J,X,re)=>{for(var oe=void 0,ne=te.length-1,de;ne>=0;ne--)(de=te[ne])&&(oe=de(J,X,oe)||oe);return oe&&__defProp$8(J,X,oe),oe};class FinalizeVisitButton extends h$n{render(){return ke$1`${template$6(this)}`}connectedCallback(){super.connectedCallback(),this.getVisitId()}async getVisitId(){try{await shellApi.broker.send(new GetVisitId).then(J=>{this.visitId=J})}catch(J){console.error(J.message)}}finalizeVisitHandler(){this.visitId&&shellApi.broker.send(new FinalizeVisit(this.visitId))}}__decorateClass$8([n$y({type:String})],FinalizeVisitButton.prototype,"visitId");var __defProp$7=Object.defineProperty,__decorateClass$7=(te,J,X,re)=>{for(var oe=void 0,ne=te.length-1,de;ne>=0;ne--)(de=te[ne])&&(oe=de(J,X,oe)||oe);return oe&&__defProp$7(J,X,oe),oe};const Ns=class Ns extends h$n{toggle(){this.isOpen=!this.isOpen}render(){return ke$1`