@uxland/primary-shell 7.47.6 → 7.48.0

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 s, z as e, O as t, S as n, v as r, x as o, P as l, w as c, J as g, K as m, L as p, I as v, y as P, N as E, B as R, M as h, A as S, F as u, G as M, s as d, H as w, R as y } from "./index-DSO8ViDu.js";
1
+ import { E as s, z as e, O as t, S as n, v as r, x as o, P as l, w as c, J as g, K as m, L as p, I as v, y as P, N as E, B as R, M as h, A as S, F as u, G as M, s as d, H as w, R as y } from "./index-Pwqfd9a_.js";
2
2
  export {
3
3
  s as EcapEventManager,
4
4
  e as ExitShell,
@@ -8441,7 +8441,7 @@ Registered bindings:`,oe.forEach(function(ne){var de="Object";ne.implementationT
8441
8441
  `;var __defProp$c=Object.defineProperty,__decorateClass$e=(X,W,te,re)=>{for(var oe=void 0,ne=X.length-1,de;ne>=0;ne--)(de=X[ne])&&(oe=de(W,te,oe)||oe);return oe&&__defProp$c(W,te,oe),oe};const ri=class ri extends k$6(h$n){constructor(){super(...arguments),this.expanded=!1}render(){return ke$1`${template$e(this)}`}connectedCallback(){super.connectedCallback()}firstUpdated(W){super.firstUpdated(W),this.observeHostResize()}observeHostResize(){const W=this.parentElement;new ResizeObserver(re=>{for(const oe of re){const ne=oe.target.clientWidth;this.expanded=ne>100}}).observe(W)}};ri.styles=i$R`
8442
8442
  ${r$L(styles$e)}
8443
8443
  `;let NavDivider=ri;__decorateClass$e([r$H()],NavDivider.prototype,"expanded"),customElements.define("primaria-nav-divider",NavDivider);const commonNavMenuItems=[{id:"landing",icon:"door_front",label:"Sortir de l’usuari",type:"item",sortHint:"0010",callbackFn:()=>shellApi.broker.send(new ExitShell("OBRIR_PI"))}],registerNavMenuViews=X=>{const W=[...commonNavMenuItems,...X];for(const te of W)shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.navigationMenu,{id:te.id,sortHint:te.sortHint,factory:()=>{const re=te.type==="item"?new PrimariaNavItem({icon:te.icon,label:te.label,callbackFn:te.callbackFn}):new PrimariaNavTreeMenu({icon:te.icon,label:te.label,actionMenuItems:te.actionMenuItems});return Promise.resolve(re)}})},registerCommunicationNavMenu=()=>{shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.navigationMenu,{id:"communication",sortHint:"0120",factory:()=>{const X=new CommunicationActionMenu("3p","Comunicació");return Promise.resolve(X)}})},registerNavMenuDivider=()=>{shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.navigationMenu,{id:"nav-divider",sortHint:"0020",factory:()=>{const X=new NavDivider;return Promise.resolve(X)}})},administrativeNavMenuItems=[{id:"create-visits",icon:"today",label:"Crear visites",type:"tree",sortHint:"0040",actionMenuItems:[{icon:"open_in_new",label:"Metge/essa",callbackFn:()=>navigateToEcap("CREAR_VISITA_ADM","",{TipusCrida:"UAB"})},{icon:"open_in_new",label:"Infermeria",callbackFn:()=>navigateToEcap("CREAR_VISITA_ADM","",{TipusCrida:"UI"})},{icon:"open_in_new",label:"Administrativa",callbackFn:()=>navigateToEcap("CREAR_VISITA_ADM","",{TipusCrida:"UAS"})},{icon:"open_in_new",label:"Entre sectors",callbackFn:()=>navigateToEcap("CREAR_VISITA_SECTORS_ADM","")},{icon:"open_in_new",label:"Multiprogramació",callbackFn:()=>navigateToEcap("MULTIPROGRAMACIO_ADM","")},{icon:"open_in_new",label:"Vacunació internacional",callbackFn:()=>navigateToEcap("VACUNACIO_INTERNACIONAL_ADM","",{},!1)}]},{id:"register-visits",icon:"event_note",label:"Registre de visites",type:"tree",sortHint:"0050",actionMenuItems:[{icon:"open_in_new",label:"Programades",callbackFn:()=>navigateToEcap("VISITES_PROGRAMADES_ADM","")},{icon:"open_in_new",label:"Passades",callbackFn:()=>navigateToEcap("VISITES_PASSADES_ADM","")},{icon:"open_in_new",label:"Anul·lades",callbackFn:()=>navigateToEcap("VISITES_ANULADES_ADM","")}]},{id:"petitions",icon:"alt_route",label:"Peticions",type:"tree",sortHint:"0060",actionMenuItems:[{icon:"open_in_new",label:"Gestió de pendents",callbackFn:()=>navigateToEcap("GESTIO_PENDENTS_ADM","")},{icon:"open_in_new",label:"Gestió d'anul·lades",callbackFn:()=>navigateToEcap("GESTIO_ANULADES_ADM","")},{icon:"open_in_new",label:"Modificació/consulta derivacions",callbackFn:()=>navigateToEcap("MOD_CONS_DERIVACIONS_ADM","")},{icon:"open_in_new",label:"Ordres clíniques",callbackFn:()=>navigateToEcap("ORDRES_CLINIQUES_ADM","")},{icon:"open_in_new",label:"Gestió IS3",callbackFn:()=>navigateToEcap("PETICIONS_PEND_PROG_ADM","",{},!1)},{icon:"",label:"Altres accessos",hasNestedMenu:!0,nestedMenuItems:[{icon:"open_in_new",label:"Sol·licituds eliminades",callbackFn:()=>navigateToEcap("DERIVACIONS_BAIXA_ADM","")},{icon:"open_in_new",label:"Impressió recordatori",callbackFn:()=>navigateToEcap("DERIVACIONS_IMP_RECORD_ADM","")},{icon:"open_in_new",label:"Correcció de visita de laboratori",callbackFn:()=>navigateToEcap("CORRECCIO_VISITA_LAB_ADM","")},{icon:"open_in_new",label:"Sol·licitud de trasllat",callbackFn:()=>navigateToEcap("TRASLLAT_ADM","")},{icon:"open_in_new",label:"Informes d'autoritzacions",callbackFn:()=>navigateToEcap("INFORME_AUT_ADM","",{},!1)},{icon:"open_in_new",label:"Informes d'analítiques",callbackFn:()=>navigateToEcap("INF_ANALITIQUES_ADM","")}]}]},{id:"administrative-procedures",icon:"list_alt",label:"Procediments administratius",type:"tree",sortHint:"0070",actionMenuItems:[{icon:"open_in_new",label:"Modificació",callbackFn:()=>navigateToEcap("PROCEDIMENTS_MOD_ADM","")},{icon:"open_in_new",label:"SIUAC",callbackFn:()=>navigateToEcap("SIUAC_ADM","",{},!1)}]},{id:"billing",icon:"receipt",label:"Facturació",type:"tree",sortHint:"0080",actionMenuItems:[{icon:"open_in_new",label:"Gestió de factures",callbackFn:()=>navigateToEcap("FACTURACIO_GESTIO_ADM","",{},!1)},{icon:"open_in_new",label:"Registres de factures",callbackFn:()=>navigateToEcap("FACTURACIO_REGISTRE_ADM","")},{icon:"open_in_new",label:"Registres de cobraments",callbackFn:()=>navigateToEcap("FACTURACIO_COBRAMENTS_ADM","",{},!1)},{icon:"open_in_new",label:"Desvincular règim de finançament",callbackFn:()=>navigateToEcap("FACTURACIO_DESVINCULAR_ADM","")}]},{id:"user-docs",icon:"library_books",label:"Documents de l'usuari",type:"tree",sortHint:"0090",actionMenuItems:[{icon:"open_in_new",label:"Carrega l'escàner",callbackFn:()=>navigateToEcap("ESCANER_ADM","",{},!1)},{icon:"open_in_new",label:"Visualització documents usuari",callbackFn:()=>navigateToEcap("DOCUMENTS_USUARI_ADM","")},{icon:"open_in_new",label:"Servei digitalització segura",callbackFn:()=>navigateToEcap("DIGITALITZACIO_ADM","")}]},{id:"healthcare-procedures",icon:"folder",label:"Gestions sanitàries",type:"tree",sortHint:"0100",actionMenuItems:[{icon:"open_in_new",label:"Manteniment IT",callbackFn:()=>navigateToEcap("IT_MANTENIMENT_CONSULTAR","")},{icon:"open_in_new",label:"Pla de medicació",callbackFn:()=>navigateToEcap("PLA_MEDICACIO_ADM","")},{icon:"",label:"Materials diabètics",hasNestedMenu:!0,nestedMenuItems:[{icon:"open_in_new",label:"Lliurament de material",callbackFn:()=>navigateToEcap("LLIURAMENT_MATERIAL_ADM","")},{icon:"open_in_new",label:"Llistats",callbackFn:()=>navigateToEcap("DIABETICS_LLISTAT_ADM","",{},!1)}]},{icon:"open_in_new",label:"Full dosificació TAO",callbackFn:()=>navigateToEcap("TAO_ADM","")},{icon:"open_in_new",label:"Consultar pautes demandes a l'hospital",callbackFn:()=>navigateToEcap("CONSULTAR_PAUTES_ADM","",{},!1)}]}],registerAdministrativeCommunicationMenuActions=()=>{const X=[{id:"1",sortHint:"0010",icon:"open_in_new",label:"Seguretat",callbackFn:()=>navigateToEcap("SEGURETAT_ADM","")},{id:"3",sortHint:"0030",icon:"open_in_new",label:"SMS",callbackFn:()=>navigateToEcap("COMUNICACIO_MISSATGES_ADM","",{TipusMissatge:"SMS"})},{id:"4",sortHint:"0040",icon:"open_in_new",label:"Correu electrònic",callbackFn:()=>navigateToEcap("COMUNICACIO_MISSATGES_ADM","",{TipusMissatge:"CORREU"})}];for(const W of X)shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.communicationSidenav,{id:W.id,sortHint:W.sortHint,factory:()=>{const te=new exports.QuickActionItem(W.icon,W.label,W.callbackFn);return Promise.resolve(te)}})},registerAdministrativeNavMenuViews=()=>{registerCommunicationNavMenu(),registerAdministrativeCommunicationMenuActions(),registerNavMenuViews(administrativeNavMenuItems),registerNavMenuDivider()},getVisiId=async X=>{const W=X.contextManager.getContext();if(W.visi_id)return W.visi_id;try{return await X.broker.send("get_visi_id")}catch{return}},doctorNavMenuItems=[{id:"dinamic-monitoring",icon:"poll",label:"Monitoratge dinàmic",type:"item",sortHint:"0030",callbackFn:()=>navigateToEcap("IA_DEV")},{id:"analytics-monitoring",icon:"science",label:"Seguiment analític",type:"item",sortHint:"0060",callbackFn:()=>navigateToEcap("SEGUIMENT_ANALITIC")},{id:"results-reports",icon:"folder_shared",label:"Documents",type:"tree",sortHint:"0070",actionMenuItems:[{icon:"open_in_new",label:"Resultats i informes",callbackFn:()=>navigateToEcap("RESULTAT_INFORMES")},{icon:"open_in_new",label:"Documents usuari",callbackFn:()=>{setTimeout(()=>{navigateToEcap("CRIDA_DOCS_USU")},0)}},{icon:"open_in_new",label:"Informes clínics",callbackFn:()=>navigateToEcap("INFORME_CLINIC_NET")}]},{id:"test-cabinets",icon:"list_alt",label:"Gabinets de proves",type:"item",sortHint:"0080",callbackFn:()=>navigateToEcap("GABINETS_PROVES")},{id:"prescriptions",icon:"pill",label:"Prescripció",type:"tree",sortHint:"0090",actionMenuItems:[{icon:"open_in_new",label:"Prescripció",callbackFn:async()=>{const X=await getVisiId(shellApi);navigateToEcap("PRESCRIPCIO_ACTIVA","NO_TANCAR",X?{VisiId:X}:{})}},{icon:"open_in_new",label:"Ordres de tractament",callbackFn:()=>navigateToEcap("ORDRE_TRACTAMENT")},{icon:"open_in_new",label:"Dispensació material sanitari",callbackFn:()=>navigateToEcap("DISPENSACIO_MATERIAL_PACIENT")},{icon:"open_in_new",label:"Prescripció social",callbackFn:()=>navigateToEcap("PRESCRIPCIO_SOCIAL")}]},{id:"vaccines",icon:"vaccines",label:"Immunitzacions",type:"item",sortHint:"0100",callbackFn:()=>navigateToEcap("IMMUNITZACIONS")},{id:"it",icon:"history_toggle_off",label:"Incapacitat temporal",type:"item",sortHint:"0100",callbackFn:async()=>{const X=await getVisiId(shellApi);navigateToEcap("REV_IT","NO_TANCAR",X?{VisiId:X}:{})}},{id:"visits",icon:"event",label:"Visites",type:"item",sortHint:"0130",callbackFn:()=>navigateToEcap("CONSULTA_VISITES")}],registerClinicalPathwaysNavMenu=()=>{shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.navigationMenu,{id:"processes",sortHint:"0040",factory:()=>{const X=new ClinicalPathwaysActionMenu("account_tree","Vies clíniques");return Promise.resolve(X)}})},registerDoctorCommunicationMenuActions=()=>{const X=[{id:"1",sortHint:"0010",icon:"open_in_new",label:"SMS",callbackFn:async()=>{const W=await getPatientCip(shellApi);shellApi.ecapEventManager.publish("MISSATGES_DEV","NO_TANCAR",{CIP:W||"",TipusMissatge:"SMS"})}},{id:"3",icon:"open_in_new",label:"Mail",callbackFn:async()=>{const W=await getPatientCip(shellApi);shellApi.ecapEventManager.publish("COMUNICACIO_MISSATGES_CREAR","NO_TANCAR",{CIP:W||"",TipusMissatge:"SMS"})}},{id:"4",sortHint:"0030",icon:"open_in_new",label:"Veu IP",callbackFn:()=>navigateToEcap("VOIP")}];for(const W of X)shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.communicationSidenav,{id:W.id,sortHint:W.sortHint,factory:()=>{const te=new exports.QuickActionItem(W.icon,W.label,W.callbackFn);return Promise.resolve(te)}})},registerDoctorClinicalPathwaysMenuActions=()=>{const X=[{id:"3",sortHint:"0030",icon:"open_in_new",label:"Nen sa",callbackFn:()=>navigateToEcap("NEN_SA")},{id:"4",sortHint:"0040",icon:"open_in_new",label:"ASSIR",callbackFn:()=>navigateToEcap("NAVEGACIO_ASSIR")},{id:"5",sortHint:"0050",icon:"open_in_new",label:"Odontologia",callbackFn:()=>navigateToEcap("ODONTOLOGO")},{id:"6",sortHint:"0060",icon:"open_in_new",label:"Situació d'especial cura",callbackFn:()=>navigateToEcap("SIT_ESPEC_CURA_DEV")},{id:"7",sortHint:"0070",icon:"open_in_new",label:"Valoració social",callbackFn:()=>navigateToEcap("VALORACIO_SOCIAL")}];for(const W of X)shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.clinicalPathwaysSidenav,{id:W.id,sortHint:W.sortHint,factory:()=>{const te=new exports.QuickActionItem(W.icon,W.label,W.callbackFn);return Promise.resolve(te)}})},registerPetitionerNavMenu=()=>{shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.navigationMenu,{id:"petitioner",sortHint:"0050",factory:()=>{const X=new PetitionerActionMenu("playlist_add","Peticionari");return Promise.resolve(X)}})},registerDoctorPetitionerMenuActions=()=>{const X=[{id:"1",sortHint:"0010",icon:"open_in_new",label:"Analítiques",callbackFn:()=>navigateToEcap("LABORATORI")},{id:"2",sortHint:"0020",icon:"open_in_new",label:"Ordres Clíniques",callbackFn:()=>navigateToEcap("RESULT_OC")},{id:"3",sortHint:"0030",icon:"open_in_new",label:"OC Exprés",callbackFn:()=>navigateToEcap("OC_EXPRES")},{id:"4",sortHint:"0040",icon:"open_in_new",label:"Sol·licitud de trasllat",callbackFn:()=>navigateToEcap("TRANSPORT")}];for(const W of X)shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.petitionerSidenav,{id:W.id,sortHint:W.sortHint,factory:()=>{const te=new exports.QuickActionItem(W.icon,W.label,W.callbackFn);return Promise.resolve(te)}})},registerDoctorNavMenuViews=()=>{registerCommunicationNavMenu(),registerDoctorCommunicationMenuActions(),registerClinicalPathwaysNavMenu(),registerDoctorClinicalPathwaysMenuActions(),registerPetitionerNavMenu(),registerDoctorPetitionerMenuActions(),registerNavMenuViews(doctorNavMenuItems),registerNavMenuDivider()},registerDoctorQuickActionViews=()=>{shellApi.regionManager.registerView(shellApi.regionManager.regions.shell.quickActions,{id:"dates",sortHint:"0011",factory:()=>{const X=new exports.QuickActionItem("","Cita",()=>{navigateToEcap("CREAR_VISITA")});return Promise.resolve(X)}})},registerMainViews=()=>{registerPDFVisorMainView()},registerPdfViewerNavButton=()=>{registerPdfViewerNavItem()},useInternalViews=()=>{registerMainViews(),registerPdfViewerNavButton(),shellApi.userManager.isUserRoleAdministrative()?registerAdministrativeNavMenuViews():(registerDoctorNavMenuViews(),registerDoctorQuickActionViews())},useUI=()=>{p$g.registerAdapterFactory("primaria-content-switcher",d$y),useSharedUI(),useComponents(),useInternalViews()},initializeShell=(X,W)=>{W&&shellApi.contextManager.initializeContext(W),activityMonitor.start(),sessionRefreshTimer.start(),useLocalization(shellApi),useUI(),useFeatures(shellApi);const te=new PrimariaShell;X.appendChild(te)};class i extends HTMLElement{constructor(W,te,re={},oe){super(),this.jsx=W,this.styles=te,this.root=this.attachShadow({mode:"open"}),this.reactRoot=null,this.fullHeight=oe?.fullHeight??!1,re&&(this.props=re)}connectedCallback(){const W=document.createElement("div");W.style.minHeight="1px",W.style.width="100%",W.style.height=this.fullHeight?"100%":"auto";const te=document.createElement("style");te.innerText=this.styles,this.root.appendChild(W),this.root.appendChild(te),this.reactRoot=r$O.createRoot(W),this.renderReact()}disconnectedCallback(){this.reactRoot&&this.reactRoot.unmount()}renderReact(){this.reactRoot&&this.reactRoot.render(c$t.createElement(this.jsx,{...this.props}))}}customElements.define("ux-react-web-component",i);const l=(X,W,te)=>(re={})=>Promise.resolve(new i(X,W,re,te));if(typeof document<"u"){const X=document.createElement("style");X.textContent=fontsCSS+`
8444
- `+dssCSS,document.head.appendChild(X)}const styles$d=".container{background-color:#fff;display:flex;flex-direction:column;min-width:500px;width:95vw;height:95vh;border-radius:var(--dss-radius-sm);overflow:hidden}.content{display:grid;flex:1;min-height:0;grid-template-columns:1fr 1fr;gap:16px;padding:16px}.content>primaria-region{width:100%;height:100%;min-height:0}.content primaria-region>div{width:100%;height:100%;border:1px solid var(--color-neutral-200);border-radius:8px;padding:16px;box-sizing:border-box}.content>primaria-region[name=import-data-region]>div{overflow-y:auto}.content>primaria-region[name=import-data-activity-history-region]>div{display:flex;flex-direction:column;gap:16px;overflow:hidden}.content>primaria-region[name=import-data-activity-history-region]>div>*{flex-shrink:0}.content>primaria-region[name=import-data-activity-history-region]>div>*:last-child{flex:1;min-height:0}.footer{display:flex;flex-direction:row;align-items:center;background:#fff;justify-content:end;gap:12px;height:56px;border-top:1px solid var(--color-neutral-100);padding:var(--dss-spacing-sm)}",template$d=X=>ke$1`
8444
+ `+dssCSS,document.head.appendChild(X)}const styles$d=".container{background-color:#fff;display:flex;flex-direction:column;min-width:500px;width:95vw;height:95vh;border-radius:var(--dss-radius-sm);overflow:hidden}.content{display:grid;flex:1;min-height:0;grid-template-columns:50% 50%;gap:16px;padding:16px}.content>primaria-region{width:100%;height:100%;min-height:0}.content primaria-region>div{width:100%;height:100%;border:1px solid var(--color-neutral-200);border-radius:8px;padding:16px;box-sizing:border-box}.content>primaria-region[name=import-data-region]>div{overflow-y:auto}.content>primaria-region[name=import-data-activity-history-region]>div{display:flex;flex-direction:column;gap:16px;overflow-y:auto}.content>primaria-region[name=import-data-activity-history-region]>div>*{flex-shrink:0}.footer{display:flex;flex-direction:row;align-items:center;background:#fff;justify-content:center;gap:12px;height:56px;border-top:1px solid var(--color-neutral-100);padding:var(--dss-spacing-sm)}",template$d=X=>ke$1`
8445
8445
  <div class="container">
8446
8446
  <div class="content">
8447
8447
  <primaria-region name="${shellApi.regionManager.regions.shell.importDataActivityHistory}"></primaria-region>
@@ -8455,6 +8455,7 @@ Registered bindings:`,oe.forEach(function(ne){var de="Object";ne.implementationT
8455
8455
  variant="secondary"
8456
8456
  ></dss-button>
8457
8457
  <dss-button
8458
+ icon="add_circle"
8458
8459
  label="${translate$1("importDataManager.actions.import")}"
8459
8460
  @click="${()=>{X._accept()}}"
8460
8461
  size="md"
@@ -8753,16 +8754,18 @@ ${X.searchString?.length>1?ke$1`
8753
8754
  </div>
8754
8755
  `};var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=(X,W,te,re)=>{for(var oe=re>1?void 0:re?__getOwnPropDesc$2(W,te):W,ne=X.length-1,de;ne>=0;ne--)(de=X[ne])&&(oe=(re?de(W,te,oe):de(oe))||oe);return re&&oe&&__defProp$2(W,te,oe),oe};let ActiveFiltersBadges=class extends h$n{render(){return ke$1`${template$2(this)}`}_onDeleteFilterValue(X,W,te,re){this.api.broker.send(new SetCustomFilterValue({filterGroupId:X,filterId:W,optionId:te,enabled:re}))}_onDeleteCommonFilterValue(X){this.api.broker.send(new SetCommonFilter({id:X,enabled:!1}))}_onDeleteDiagnosticFilterValue(X){this.api.broker.send(new DeleteDiagnosticFilterValueCommand({diagnosticCodi:X}))}_onDeleteGlobalFilterGroup(X,W){const te=this.activeGlobalFilters.find(oe=>oe.id===X)?.groups.find(oe=>oe.id===W);if(!te)return;const re=new Set(te.values.map(oe=>oe.value));this._setGlobalFilterValues(X,oe=>oe.enabledValues.filter(ne=>!re.has(ne)))}_onDeleteGlobalFilterValue(X,W){this._setGlobalFilterValues(X,te=>te.enabledValues.filter(re=>re!==W))}_setGlobalFilterValues(X,W){const te=this.activeGlobalFilters.find(re=>re.id===X);te&&this.api.broker.send(new SetGlobalFilterValuesCommand({id:X,values:W(te)}))}resetFilters(){this.api.broker.send(new ResetFiltersCommand)}};ActiveFiltersBadges.styles=i$R`
8755
8756
  ${r$L(styles$2)}
8756
- `,__decorateClass$2([lazyInject(TYPES.primaryApi)],ActiveFiltersBadges.prototype,"api",2),__decorateClass$2([connectedProperty(activityHistoryEnabledCommonFiltersSelector)],ActiveFiltersBadges.prototype,"enabledCommonFilters",2),__decorateClass$2([connectedProperty(customFilterGroupsWithOptionsSelector)],ActiveFiltersBadges.prototype,"customFilterGroups",2),__decorateClass$2([connectedProperty(diagnosticFilterSelector)],ActiveFiltersBadges.prototype,"diagnosticFilterEnabled",2),__decorateClass$2([connectedProperty(activeGlobalFiltersSelector)],ActiveFiltersBadges.prototype,"activeGlobalFilters",2),ActiveFiltersBadges=__decorateClass$2([t$z("active-filters-badges")],ActiveFiltersBadges);let request$1;const bootstrapSearchItems=X=>{request$1=X.registerRequest(SearchActivityHistoryItems,SearchItemsHandler)},teardownSearchItems=()=>{request$1?.dispose()},{updateActivityHistoryItem}=activityHistoryCollectionsSlice.actions;class UpdateHistoryItemHandler extends StoreBaseHandler{async handle(W){try{ensureAreValidBasicActivityHistoryItems([W.item]),this.store.dispatch(updateActivityHistoryItem({id:W.entityId,item:W.item}))}catch(te){console.error(te.message)}}}let request;const bootstrapUpdateHistoryItem=X=>{request=X.registerRequest("update_history_item_request",UpdateHistoryItemHandler)},teardownUpdateHistoryItem=()=>{request?.dispose()};let broker;const bootstrapActivityHistoryItem=X=>{broker=brokerExtensions(X,container),bootstrapInjectAsyncHistoryItems(broker,X),bootstrapAddHistoryItem(broker,X),bootstrapAddHistoryItems(broker,X),bootstrapHandleHistoryItemsAddError(broker),bootstrapHandleRefreshHistoryItems(broker),bootstrapUpdateHistoryItem(broker),bootstrapExportPdf(broker),bootstrapFilters(broker,X),bootstrapSearchItems(broker),bootstrapRemoveHistoryItem(broker)},teardownActivityHistoryItem=()=>{teardownInjectAsyncHistoryItems(),teardownAddHistoryItem(),teardownAddHistoryItems(),teardownHandleHistoryItemsAddError(),teardownUpdateHistoryItem(),teardownExportPdf(),teardownFilters(),teardownSearchItems(),teardownRemoveHistoryItem()},pluginName="activity-history",prepareGroupComponents=async X=>{const W=te=>Promise.all(te.map(async re=>({...re,component:re.componentFactory?await re.componentFactory({item:re}):void 0})));return Promise.all(X.map(async te=>({...te,items:await W(te.items||[]),subGroups:await Promise.all((te.subGroups||[]).map(async re=>({...re,items:await W(re.items)})))})))},INITIAL_SCROLLER_STATE={virtualItems:[],totalHeight:0};class ScrollerController{sync({viewport:W,items:te,onStateChange:re,estimateItemHeight:oe}){return W?(this._scroller&&W!==this._lastViewport&&this.teardown(),this._scroller?this._scroller.updateItems(te,re):(this._scroller=new VirtualScroller({items:te,estimateItemHeight:oe}),this._cleanup=this._scroller.setup(W,re)),this._lastViewport=W,this._scroller.getState()):this._scroller?.getState()??INITIAL_SCROLLER_STATE}teardown(){this._cleanup?.(),this._cleanup=void 0,this._scroller=void 0,this._lastViewport=void 0}scrollToIndex(W,te){this._scroller?.scrollToIndex(W,te)}measureElement(W){this._scroller?.measureElement(W)}}const isToday=X=>{const W=new Date(X),te=new Date;return W.toDateString()===te.toDateString()},itemMatchesToday=X=>!!(X&&isToday(X.date)),itemHasAnyDiagnostic=(X,W)=>!!X.diagnostics?.some(te=>W.includes(te.codi)),isAllowedItem=(X,W)=>{const te=X.type?W[X.type]:void 0;return!te?.allowedTagIds||te.allowedTagIds.length===0?!0:te.allowedTagIds.includes(X.tag?.id??"")},groupMatchesToday=X=>{const W=X.items?.[0]||X.subGroups?.[0]?.items?.[0];return itemMatchesToday(W)},filterGroupItemsByPredicate=(X,W)=>({...X,items:(X.items||[]).filter(W),subGroups:(X.subGroups||[]).map(te=>({...te,items:te.items.filter(W)})).filter(te=>te.items.length>0)}),filterGroupByDiagnostics=(X,W)=>filterGroupItemsByPredicate(X,te=>itemHasAnyDiagnostic(te,W)),isGroupNonEmpty=X=>X.items.length>0||X.subGroups.length>0,applyImporterFilters=(X,{todayOnly:W,selectedDiagnosticCodes:te},re={})=>{const oe=X.map(ce=>filterGroupItemsByPredicate(ce,ue=>isAllowedItem(ue,re))).filter(isGroupNonEmpty),ne=W,de=te.length>0;return!ne&&!de?oe:oe.map(ce=>ne&&groupMatchesToday(ce)?ce:de?filterGroupByDiagnostics(ce,te):null).filter(ce=>ce!==null&&isGroupNonEmpty(ce))},flattenGroupItems=X=>{const W=[];for(const te of X){for(const re of te.items||[])W.push(re);for(const re of te.subGroups||[])for(const oe of re.items)W.push(oe)}return W},styles$1=":host{display:block;height:100%;width:100%}.importer{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;overflow:hidden}.importer__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.importer__search{display:block}.importer__filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--color-neutral-200)}.importer__filters-label{color:var(--color-neutral-700);font-size:13px}.importer__empty{color:var(--color-neutral-600);font-size:13px;padding:24px 0;text-align:center}.virtual-container{flex:1;min-height:0;position:relative}.virtual-viewport{height:100%;overflow:auto}.virtual-content{position:relative;width:100%}.virtual-items{position:relative}.visit:first-child{margin-top:var(--dss-spacing-xs)}.visit{display:flex;flex-direction:column;gap:var(--dss-spacing-sm);background-color:#fff;padding:var(--dss-spacing-sm);margin-bottom:var(--dss-spacing-xs);border-bottom:2px solid var(--color-neutral-300)}.visit:last-child{border-bottom:none}.visit__items,.diagnostics{padding-left:var(--dss-spacing-md)}.visit__header{display:flex;flex-direction:row;align-items:center;gap:16px}.visit__header .title{flex:1;font-size:14px;line-height:24px;display:flex;flex-direction:row;gap:12px;color:var(--color-neutral-800)}.visit__header .title-date{font-weight:700}.visit__header .title-description{font-weight:600;display:flex;flex-direction:row;gap:4px}.visit__items{display:flex;flex-direction:column;gap:var(--dss-spacing-sm)}.visit__items .item[has-divider]{border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.visit__items .item[has-divider]:last-of-type{border:none}.diagnostics{display:flex;flex-direction:column;gap:var(--dss-spacing-sm);border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.diagnostics:last-of-type{border:none}.diagnostics__header{display:flex;flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap}.diagnostics__items{display:flex;flex-direction:column}.diagnostics__items .item[has-divider]{border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.diagnostics__items .item[has-divider]:last-of-type{border:none}.item{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start}.item__check{margin-top:4px}",checkboxState=X=>({checked:X==="all",indeterminate:X==="some"}),template$1=X=>{const W=checkboxState(X.allState());return ke$1`
8757
- <div class="importer">
8758
- ${headerTemplate(X)} ${searchTemplate(X)} ${filtersTemplate(X,W)} ${listTemplate(X)}
8759
- </div>
8760
- `},headerTemplate=X=>ke$1`
8761
- <div class="importer__header">
8762
- <dss-typography tag="h4" variant="subtitle-3">${translate("importer.title")}</dss-typography>
8763
- <dss-badge text="${X.totalCount}" state="info" size="sm" outlined hideIcon></dss-badge>
8764
- </div>
8765
- `,searchTemplate=X=>ke$1`
8757
+ `,__decorateClass$2([lazyInject(TYPES.primaryApi)],ActiveFiltersBadges.prototype,"api",2),__decorateClass$2([connectedProperty(activityHistoryEnabledCommonFiltersSelector)],ActiveFiltersBadges.prototype,"enabledCommonFilters",2),__decorateClass$2([connectedProperty(customFilterGroupsWithOptionsSelector)],ActiveFiltersBadges.prototype,"customFilterGroups",2),__decorateClass$2([connectedProperty(diagnosticFilterSelector)],ActiveFiltersBadges.prototype,"diagnosticFilterEnabled",2),__decorateClass$2([connectedProperty(activeGlobalFiltersSelector)],ActiveFiltersBadges.prototype,"activeGlobalFilters",2),ActiveFiltersBadges=__decorateClass$2([t$z("active-filters-badges")],ActiveFiltersBadges);let request$1;const bootstrapSearchItems=X=>{request$1=X.registerRequest(SearchActivityHistoryItems,SearchItemsHandler)},teardownSearchItems=()=>{request$1?.dispose()},{updateActivityHistoryItem}=activityHistoryCollectionsSlice.actions;class UpdateHistoryItemHandler extends StoreBaseHandler{async handle(W){try{ensureAreValidBasicActivityHistoryItems([W.item]),this.store.dispatch(updateActivityHistoryItem({id:W.entityId,item:W.item}))}catch(te){console.error(te.message)}}}let request;const bootstrapUpdateHistoryItem=X=>{request=X.registerRequest("update_history_item_request",UpdateHistoryItemHandler)},teardownUpdateHistoryItem=()=>{request?.dispose()};let broker;const bootstrapActivityHistoryItem=X=>{broker=brokerExtensions(X,container),bootstrapInjectAsyncHistoryItems(broker,X),bootstrapAddHistoryItem(broker,X),bootstrapAddHistoryItems(broker,X),bootstrapHandleHistoryItemsAddError(broker),bootstrapHandleRefreshHistoryItems(broker),bootstrapUpdateHistoryItem(broker),bootstrapExportPdf(broker),bootstrapFilters(broker,X),bootstrapSearchItems(broker),bootstrapRemoveHistoryItem(broker)},teardownActivityHistoryItem=()=>{teardownInjectAsyncHistoryItems(),teardownAddHistoryItem(),teardownAddHistoryItems(),teardownHandleHistoryItemsAddError(),teardownUpdateHistoryItem(),teardownExportPdf(),teardownFilters(),teardownSearchItems(),teardownRemoveHistoryItem()},pluginName="activity-history",prepareGroupComponents=async X=>{const W=te=>Promise.all(te.map(async re=>({...re,component:re.componentFactory?await re.componentFactory({item:re}):void 0})));return Promise.all(X.map(async te=>({...te,items:await W(te.items||[]),subGroups:await Promise.all((te.subGroups||[]).map(async re=>({...re,items:await W(re.items)})))})))},INITIAL_SCROLLER_STATE={virtualItems:[],totalHeight:0};class ScrollerController{sync({viewport:W,items:te,onStateChange:re,estimateItemHeight:oe}){return W?(this._scroller&&W!==this._lastViewport&&this.teardown(),this._scroller?this._scroller.updateItems(te,re):(this._scroller=new VirtualScroller({items:te,estimateItemHeight:oe}),this._cleanup=this._scroller.setup(W,re)),this._lastViewport=W,this._scroller.getState()):this._scroller?.getState()??INITIAL_SCROLLER_STATE}teardown(){this._cleanup?.(),this._cleanup=void 0,this._scroller=void 0,this._lastViewport=void 0}scrollToIndex(W,te){this._scroller?.scrollToIndex(W,te)}measureElement(W){this._scroller?.measureElement(W)}}const isToday=X=>{const W=new Date(X),te=new Date;return W.toDateString()===te.toDateString()},itemMatchesToday=X=>!!(X&&isToday(X.date)),itemHasAnyDiagnostic=(X,W)=>!!X.diagnostics?.some(te=>W.includes(te.codi)),isAllowedItem=(X,W)=>{const te=X.type?W[X.type]:void 0;return!te?.allowedTagIds||te.allowedTagIds.length===0?!0:te.allowedTagIds.includes(X.tag?.id??"")},groupMatchesToday=X=>{const W=X.items?.[0]||X.subGroups?.[0]?.items?.[0];return itemMatchesToday(W)},filterGroupItemsByPredicate=(X,W)=>({...X,items:(X.items||[]).filter(W),subGroups:(X.subGroups||[]).map(te=>({...te,items:te.items.filter(W)})).filter(te=>te.items.length>0)}),filterGroupByDiagnostics=(X,W)=>filterGroupItemsByPredicate(X,te=>itemHasAnyDiagnostic(te,W)),isGroupNonEmpty=X=>X.items.length>0||X.subGroups.length>0,applyImporterFilters=(X,{todayOnly:W,diagnosticCodes:te},re={})=>{const oe=X.map(ce=>filterGroupItemsByPredicate(ce,ue=>isAllowedItem(ue,re))).filter(isGroupNonEmpty),ne=W,de=te.length>0;return!ne&&!de?oe:oe.map(ce=>ne&&groupMatchesToday(ce)?ce:de?filterGroupByDiagnostics(ce,te):null).filter(ce=>ce!==null&&isGroupNonEmpty(ce))},flattenGroupItems=X=>{const W=[];for(const te of X){for(const re of te.items||[])W.push(re);for(const re of te.subGroups||[])for(const oe of re.items)W.push(oe)}return W},styles$1=":host{display:block;width:100%}dss-accordion{width:100%}.importer{display:flex;flex-direction:column;gap:12px;min-height:0}.importer__search{display:block}.importer__filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-bottom:8px;border-bottom:1px solid var(--color-neutral-200)}.importer__filters-label{color:var(--color-neutral-700);font-size:13px}.importer__empty{color:var(--color-neutral-600);font-size:13px;padding:24px 0;text-align:center}.virtual-container{height:62vh;min-height:0;position:relative}.virtual-viewport{height:100%;overflow:auto}.virtual-content{position:relative;width:100%}.virtual-items{position:relative}.visit:first-child{margin-top:var(--dss-spacing-xs)}.visit{display:flex;flex-direction:column;gap:var(--dss-spacing-sm);background-color:#fff;padding:var(--dss-spacing-sm);border-bottom:1px solid var(--color-neutral-100)}.visit:last-child{border-bottom:none}.visit__header{display:flex;flex-direction:row;align-items:center;gap:16px}.visit__header .title{flex:1;font-size:14px;line-height:24px;display:flex;flex-direction:row;gap:12px;color:var(--color-neutral-800)}.visit__header .title-date{font-weight:700}.visit__header .title-description{font-weight:600;display:flex;flex-direction:row;gap:4px}.visit__items{display:flex;flex-direction:column;gap:var(--dss-spacing-sm)}.visit__items .item[has-divider]{border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.visit__items .item[has-divider]:last-of-type{border:none}.diagnostics{display:flex;flex-direction:column;gap:var(--dss-spacing-sm);border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.diagnostics:last-of-type{border:none}.diagnostics__header{display:flex;flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap}.diagnostics__items{display:flex;flex-direction:column}.diagnostics__items .item[has-divider]{border-bottom:var(--dss-border-width-sm) solid var(--color-neutral-200)}.diagnostics__items .item[has-divider]:last-of-type{border:none}.item{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start}.item__check{margin-top:4px}",checkboxState=X=>({checked:X==="all",indeterminate:X==="some"}),template$1=X=>{const W=checkboxState(X.allState());return ke$1`
8758
+ <dss-accordion
8759
+ accordionstyle="box"
8760
+ titletext="${translate("importer.title")}"
8761
+ widget
8762
+ widgetBadgeText="${X.totalCount}"
8763
+ widgetBadgeState="info"
8764
+ .isOpen=${!0}
8765
+ >
8766
+ <div class="importer">${searchTemplate(X)} ${filtersTemplate(X,W)} ${listTemplate(X)}</div>
8767
+ </dss-accordion>
8768
+ `},searchTemplate=X=>ke$1`
8766
8769
  <div class="importer__search">
8767
8770
  <activity-history-search-bar
8768
8771
  .searchString=${X.searchString}
@@ -8787,16 +8790,11 @@ ${X.searchString?.length>1?ke$1`
8787
8790
  ></dss-form-checkbox>
8788
8791
 
8789
8792
  ${X.hasDiagnosticsFilter()?ke$1`
8790
- <dss-form-select
8791
- dropdownStyle="max-height: 300px; overflow-y: auto;"
8792
- size="sm"
8793
- type="default"
8794
- multiple
8795
- dropdownFixed
8796
- placeholder="${translate("importer.diagnostics")}"
8797
- .elements=${X.diagnosticsOptions()}
8798
- @value-changed=${te=>X._onDiagnosticsChanged(te)}
8799
- ></dss-form-select>
8793
+ <dss-form-checkbox
8794
+ label=${translate("importer.diagnostics")}
8795
+ .checked=${X.diagnosticsOnly}
8796
+ @change=${te=>X._onToggleDiagnostics(te)}
8797
+ ></dss-form-checkbox>
8800
8798
  `:D$4}
8801
8799
  </div>
8802
8800
  `,listTemplate=X=>X.filteredGroups?.length?ke$1`
@@ -8809,19 +8807,11 @@ ${X.searchString?.length>1?ke$1`
8809
8807
  </div>
8810
8808
  </div>
8811
8809
  </div>
8812
- `:ke$1`<div class="importer__empty">${translate("importer.noResults")}</div>`,visitTemplate=(X,W,te)=>{const re=W.items?.[0]||W.subGroups?.[0]?.items?.[0],oe=checkboxState(X.visitState(W));return ke$1`
8810
+ `:ke$1`<div class="importer__empty">${translate("importer.noResults")}</div>`,visitTemplate=(X,W,te)=>{const re=W.items?.[0]||W.subGroups?.[0]?.items?.[0];return ke$1`
8813
8811
  <div class="visit" data-index=${te} ${Kt(X._measureElement)} data-date=${to(re?.date)}>
8814
- <div class="visit__header">
8815
- <dss-form-checkbox
8816
- .checked=${oe.checked}
8817
- .indeterminate=${oe.indeterminate}
8818
- hideLabel
8819
- @change=${ne=>X._toggleVisit(W,ne.target.checked)}
8820
- ></dss-form-checkbox>
8821
- ${visitHeaderContent(re)}
8822
- </div>
8812
+ <div class="visit__header">${visitHeaderContent(re)}</div>
8823
8813
  <div class="visit__items">
8824
- ${Qt(mergeHistoryItemsAndSubgroups(W),ne=>ne.type==="item"?ne.item.id:ne.subGroup.idSubGroup,ne=>ne.type==="item"?itemRow(X,ne.item,W.items):subGroupTemplate(X,ne.subGroup))}
8814
+ ${Qt(mergeHistoryItemsAndSubgroups(W),oe=>oe.type==="item"?oe.item.id:oe.subGroup.idSubGroup,oe=>oe.type==="item"?itemRow(X,oe.item,W.items):subGroupTemplate(X,oe.subGroup))}
8825
8815
  </div>
8826
8816
  </div>
8827
8817
  `},visitHeaderContent=X=>{if(!X)return D$4;const W=shouldShowRole(X),te=[];return X.professional?.name&&te.push(X.professional.name),W&&X.professional?.role?.description&&te.push(X.professional.role.description),X.professional?.speciality?.description&&te.push(X.professional.speciality.description),X.up?.description&&te.push(X.up.description),X.service?.description&&te.push(X.service.description),ke$1`
@@ -8833,22 +8823,23 @@ ${X.searchString?.length>1?ke$1`
8833
8823
  <div>${te.map((re,oe)=>ke$1`${re}${oe<te.length-1?" | ":""}`)}</div>
8834
8824
  </div>
8835
8825
  </div>
8836
- `},subGroupTemplate=(X,W)=>{const te=checkboxState(X.subGroupState(W.items));return ke$1`
8826
+ `},subGroupCheckbox=(X,W)=>{if((W?.length??0)<2)return D$4;const te=checkboxState(X.subGroupState(W));return ke$1`
8827
+ <dss-form-checkbox
8828
+ .checked=${te.checked}
8829
+ .indeterminate=${te.indeterminate}
8830
+ hideLabel
8831
+ @change=${re=>X._toggleSubGroup(W,re.target.checked)}
8832
+ ></dss-form-checkbox>
8833
+ `},subGroupTemplate=(X,W)=>ke$1`
8837
8834
  <div class="diagnostics">
8838
8835
  <div class="diagnostics__header">
8839
- <dss-form-checkbox
8840
- .checked=${te.checked}
8841
- .indeterminate=${te.indeterminate}
8842
- hideLabel
8843
- @change=${re=>X._toggleSubGroup(W.items,re.target.checked)}
8844
- ></dss-form-checkbox>
8845
- ${diagnosticHeaderTemplate(W.items?.[0])}
8836
+ ${subGroupCheckbox(X,W.items)} ${diagnosticHeaderTemplate(W.items?.[0])}
8846
8837
  </div>
8847
8838
  <div class="diagnostics__items">
8848
- ${Qt(W.items,re=>re.id,re=>itemRow(X,re,W.items))}
8839
+ ${Qt(W.items,te=>te.id,te=>itemRow(X,te,W.items))}
8849
8840
  </div>
8850
8841
  </div>
8851
- `},itemRow=(X,W,te)=>ke$1`
8842
+ `,itemRow=(X,W,te)=>ke$1`
8852
8843
  <div class="item" ?has-divider=${hasItemDivider(W,te)}>
8853
8844
  <dss-form-checkbox
8854
8845
  class="item__check"
@@ -8862,9 +8853,9 @@ ${X.searchString?.length>1?ke$1`
8862
8853
  ${X.diagnostics.filter(W=>W.descripcio!=null&&W.descripcio.trim()!=="").map(W=>ke$1`<dss-badge text=${W.descripcio?.toUpperCase()} state="info" size="sm" outlined hideIcon></dss-badge>`)}
8863
8854
  `;var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=(X,W,te,re)=>{for(var oe=re>1?void 0:re?__getOwnPropDesc$1(W,te):W,ne=X.length-1,de;ne>=0;ne--)(de=X[ne])&&(oe=(re?de(W,te,oe):de(oe))||oe);return re&&oe&&__defProp$1(W,te,oe),oe};const escapeHtml=X=>{const W=document.createElement("div");return W.textContent=X,W.innerHTML},ALLOWED_HTML_TAGS=["p","br","span","div","strong","em","u","s","sub","sup","b","i","a","code","pre","blockquote","h1","h2","h3","h4","h5","h6","ul","ol","li"],strayLessThan=new RegExp(`<(?!/?(?:${ALLOWED_HTML_TAGS.join("|")})\\b)`,"gi"),escapeUnknownTags=X=>X.replace(strayLessThan,"&lt;"),buildSelectionText=X=>{const W=[],te=[];for(const re of X){const oe=re.content?.plainText?.trim(),ne=re.content?.html?.trim();oe&&W.push(oe),ne?te.push(escapeUnknownTags(ne)):oe&&te.push(`<p>${escapeHtml(oe)}</p>`)}return{raw:W.join(`
8864
8855
 
8865
- `),html:te.join("")}};let ActivityHistoryImporter=class extends h$n{constructor(){super(...arguments),this.historyGroups=[],this.searchString="",this.rulesByCollectionId={},this.todayOnly=!1,this.selectedDiagnosticCodes=[],this.availableDiagnostics=[],this.filteredGroups=[],this.totalCount=0,this.selectedIds=[],this._virtualScrollerState=INITIAL_SCROLLER_STATE,this._scrollerController=new ScrollerController,this._searchTimeout=null,this._didInitialPreselect=!1,this._measureElement=X=>{X&&this._scrollerController.measureElement(X)}}render(){return ke$1`${template$1(this)}`}connectedCallback(){super.connectedCallback(),this.selectedIds=[],this._didInitialPreselect=!1;const X=this.api?.importDataManager?.getCurrentImportParams?.();this.availableDiagnostics=X?.diagnostics??[]}disconnectedCallback(){super.disconnectedCallback(),this._scrollerController.teardown(),this._clearSearchTimeout(),this.api.broker.send(new SearchActivityHistoryItems(""))}updated(X){super.updated(X),(X.has("historyGroups")||X.has("todayOnly")||X.has("selectedDiagnosticCodes"))&&this._recomputeFiltered(),!this._didInitialPreselect&&this.historyGroups?.length&&(this._didInitialPreselect=!0,this._preselectMatchingItems()),X.has("filteredGroups")&&this._syncVirtualScroller(),X.has("selectedIds")&&this._publishSelection()}_onSearchChange(X){typeof X.detail=="string"&&(this._clearSearchTimeout(),this._searchTimeout=window.setTimeout(()=>{this.api.broker.send(new SearchActivityHistoryItems(X.detail))},300))}_onToggleToday(X){this.todayOnly=X.target.checked}_onDiagnosticsChanged(X){const W=X.detail;this.selectedDiagnosticCodes=(W?.selectedItems||[]).map(te=>te.value)}_toggleItem(X){this.selectedIds=this.selectedIds.includes(X)?this.selectedIds.filter(W=>W!==X):[...this.selectedIds,X]}_toggleVisit(X,W){this._setSelection(flattenGroupItems([X]).map(te=>te.id),W)}_toggleSubGroup(X,W){this._setSelection(X.map(te=>te.id),W)}_toggleAll(X){this._setSelection(flattenGroupItems(this.filteredGroups).map(W=>W.id),X.target.checked)}isItemSelected(X){return this.selectedIds.includes(X)}visitState(X){return this._tristate(flattenGroupItems([X]).map(W=>W.id))}subGroupState(X){return this._tristate(X.map(W=>W.id))}allState(){return this._tristate(flattenGroupItems(this.filteredGroups).map(X=>X.id))}hasDiagnosticsFilter(){return this.availableDiagnostics.length>0}diagnosticsOptions(){return this.availableDiagnostics.map(X=>({label:X.description,value:X.code}))}get _visibleRows(){return this._virtualScrollerState.virtualItems.map(X=>({index:X.index,group:this.filteredGroups?.[X.index]})).filter(X=>!!X.group)}get _containerOffset(){return this._virtualScrollerState.virtualItems[0]?.start??0}get _totalHeight(){return this._virtualScrollerState.totalHeight}_clearSearchTimeout(){this._searchTimeout!==null&&(clearTimeout(this._searchTimeout),this._searchTimeout=null)}_setSelection(X,W){if(W){const te=X.filter(re=>!this.selectedIds.includes(re));te.length&&(this.selectedIds=[...this.selectedIds,...te])}else{const te=new Set(X);this.selectedIds=this.selectedIds.filter(re=>!te.has(re))}}_tristate(X){if(!X.length)return"none";const W=X.filter(te=>this.selectedIds.includes(te)).length;return W===0?"none":W===X.length?"all":"some"}async _recomputeFiltered(){const X={todayOnly:this.todayOnly,selectedDiagnosticCodes:this.selectedDiagnosticCodes},W=applyImporterFilters(this.historyGroups||[],X,this.rulesByCollectionId);this.filteredGroups=await prepareGroupComponents(W),this.totalCount=flattenGroupItems(this.filteredGroups).length}_syncVirtualScroller(){this._virtualScrollerState=this._scrollerController.sync({viewport:this._viewport,items:this.filteredGroups,estimateItemHeight:()=>200,onStateChange:X=>{this._virtualScrollerState=X,this.requestUpdate()}})}_preselectMatchingItems(){const X={diagnostics:this.availableDiagnostics},W=[],te=re=>{for(const oe of re){const ne=oe.type?this.rulesByCollectionId[oe.type]:void 0;ne?.shouldPreselect&&ne.shouldPreselect(oe,X)&&W.push(oe.id)}};for(const re of this.historyGroups||[]){te(re.items||[]);for(const oe of re.subGroups||[])te(oe.items)}W.length&&(this.selectedIds=[...new Set([...this.selectedIds,...W])])}_publishSelection(){const X=new Set(this.selectedIds),W=(this.historyGroups||[]).map(te=>({...te,items:(te.items||[]).filter(re=>X.has(re.id)),subGroups:(te.subGroups||[]).map(re=>({...re,items:re.items.filter(oe=>X.has(oe.id))})).filter(re=>re.items.length>0)})).filter(te=>te.items.length>0||te.subGroups.length>0);this.api.importDataManager.selectItems({pluginId:pluginName,data:W,text:buildSelectionText(flattenGroupItems(W))})}};ActivityHistoryImporter.styles=i$R`
8856
+ `),html:te.join("")}};let ActivityHistoryImporter=class extends h$n{constructor(){super(...arguments),this.historyGroups=[],this.searchString="",this.rulesByCollectionId={},this.todayOnly=!1,this.diagnosticsOnly=!1,this.availableDiagnostics=[],this.filteredGroups=[],this.totalCount=0,this.selectedIds=[],this._virtualScrollerState=INITIAL_SCROLLER_STATE,this._scrollerController=new ScrollerController,this._searchTimeout=null,this._didInitialPreselect=!1,this._measureElement=X=>{X&&this._scrollerController.measureElement(X)}}render(){return ke$1`${template$1(this)}`}connectedCallback(){super.connectedCallback(),this.selectedIds=[],this._didInitialPreselect=!1;const X=this.api?.importDataManager?.getCurrentImportParams?.();this.availableDiagnostics=X?.diagnostics??[]}disconnectedCallback(){super.disconnectedCallback(),this._scrollerController.teardown(),this._clearSearchTimeout(),this.api.broker.send(new SearchActivityHistoryItems(""))}updated(X){super.updated(X),(X.has("historyGroups")||X.has("todayOnly")||X.has("diagnosticsOnly"))&&this._recomputeFiltered(),!this._didInitialPreselect&&this.historyGroups?.length&&(this._didInitialPreselect=!0,this._preselectMatchingItems()),X.has("filteredGroups")&&this._syncVirtualScroller(),X.has("selectedIds")&&this._publishSelection()}_onSearchChange(X){typeof X.detail=="string"&&(this._clearSearchTimeout(),this._searchTimeout=window.setTimeout(()=>{this.api.broker.send(new SearchActivityHistoryItems(X.detail))},300))}_onToggleToday(X){this.todayOnly=X.target.checked}_onToggleDiagnostics(X){this.diagnosticsOnly=X.target.checked}_toggleItem(X){this.selectedIds=this.selectedIds.includes(X)?this.selectedIds.filter(W=>W!==X):[...this.selectedIds,X]}_toggleSubGroup(X,W){this._setSelection(X.map(te=>te.id),W)}_toggleAll(X){this._setSelection(flattenGroupItems(this.filteredGroups).map(W=>W.id),X.target.checked)}isItemSelected(X){return this.selectedIds.includes(X)}subGroupState(X){return this._tristate(X.map(W=>W.id))}allState(){return this._tristate(flattenGroupItems(this.filteredGroups).map(X=>X.id))}hasDiagnosticsFilter(){return this.availableDiagnostics.length>0}get _visibleRows(){return this._virtualScrollerState.virtualItems.map(X=>({index:X.index,group:this.filteredGroups?.[X.index]})).filter(X=>!!X.group)}get _containerOffset(){return this._virtualScrollerState.virtualItems[0]?.start??0}get _totalHeight(){return this._virtualScrollerState.totalHeight}_clearSearchTimeout(){this._searchTimeout!==null&&(clearTimeout(this._searchTimeout),this._searchTimeout=null)}_setSelection(X,W){if(W){const te=X.filter(re=>!this.selectedIds.includes(re));te.length&&(this.selectedIds=[...this.selectedIds,...te])}else{const te=new Set(X);this.selectedIds=this.selectedIds.filter(re=>!te.has(re))}}_tristate(X){if(!X.length)return"none";const W=X.filter(te=>this.selectedIds.includes(te)).length;return W===0?"none":W===X.length?"all":"some"}async _recomputeFiltered(){const X={todayOnly:this.todayOnly,diagnosticCodes:this.diagnosticsOnly?this.availableDiagnostics.map(te=>te.code):[]},W=applyImporterFilters(this.historyGroups||[],X,this.rulesByCollectionId);this.filteredGroups=await prepareGroupComponents(W),this.totalCount=flattenGroupItems(this.filteredGroups).length}_syncVirtualScroller(){this._virtualScrollerState=this._scrollerController.sync({viewport:this._viewport,items:this.filteredGroups,estimateItemHeight:()=>200,onStateChange:X=>{this._virtualScrollerState=X,this.requestUpdate()}})}_preselectMatchingItems(){const X={diagnostics:this.availableDiagnostics},W=[],te=re=>{for(const oe of re){const ne=oe.type?this.rulesByCollectionId[oe.type]:void 0;ne?.shouldPreselect&&ne.shouldPreselect(oe,X)&&W.push(oe.id)}};for(const re of this.historyGroups||[]){te(re.items||[]);for(const oe of re.subGroups||[])te(oe.items)}W.length&&(this.selectedIds=[...new Set([...this.selectedIds,...W])])}_publishSelection(){const X=new Set(this.selectedIds),W=(this.historyGroups||[]).map(te=>({...te,items:(te.items||[]).filter(re=>X.has(re.id)),subGroups:(te.subGroups||[]).map(re=>({...re,items:re.items.filter(oe=>X.has(oe.id))})).filter(re=>re.items.length>0)})).filter(te=>te.items.length>0||te.subGroups.length>0);this.api.importDataManager.selectItems({pluginId:pluginName,data:W,text:buildSelectionText(flattenGroupItems(W))})}};ActivityHistoryImporter.styles=i$R`
8866
8857
  ${r$L(styles$1)}
8867
- `,__decorateClass$1([lazyInject(TYPES.primaryApi)],ActivityHistoryImporter.prototype,"api",2),__decorateClass$1([connectedProperty(activityHistoryGroupedItems)],ActivityHistoryImporter.prototype,"historyGroups",2),__decorateClass$1([connectedProperty(activityHistorySearchStringSelector)],ActivityHistoryImporter.prototype,"searchString",2),__decorateClass$1([connectedProperty(historyDataImporterRulesByCollectionIdSelector)],ActivityHistoryImporter.prototype,"rulesByCollectionId",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"todayOnly",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"selectedDiagnosticCodes",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"availableDiagnostics",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"filteredGroups",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"totalCount",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"selectedIds",2),__decorateClass$1([e$T(".virtual-viewport")],ActivityHistoryImporter.prototype,"_viewport",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"_virtualScrollerState",2),ActivityHistoryImporter=__decorateClass$1([t$z("activity-history-importer")],ActivityHistoryImporter);const styles=":host{display:flex;min-height:1px;height:100%;width:100%}.container{display:flex;flex-direction:column;width:100%;border:1px solid rgb(189,189,189);border-radius:var(--dss-radius-sm)}.container[maximized]{position:absolute;background:#fff;top:0;left:0;bottom:0;border:none}.container[maximized] .header-maximized-container{display:flex;flex-direction:column}.container[maximized] .header-maximized-container .header__maximized{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;padding-top:12px;padding-bottom:12px;padding-inline:40px}.container[maximized] .header-maximized-container .header__maximized .header__maximized__search{flex:1;border-radius:8px;border:1px solid rgb(189,189,189);padding:8px;width:300px}.container[maximized] .header-maximized-container .header__maximized .title{color:var(--color-neutral-900);font-weight:700;font-size:20px;line-height:30px;white-space:nowrap}.container[maximized] .header-maximized-container .header__maximized .options{display:flex;align-items:center;color:var(--color-primary-400);font-weight:600;font-size:14px;line-height:24px;cursor:pointer}.container[maximized] .header-maximized-container .header__maximized .header__maximized__left{display:flex;flex-direction:row;gap:24px;align-items:center;width:100%}.container[maximized] .header-maximized-container .header__maximized .header__maximized__right{display:flex;flex-direction:row;gap:16px;align-items:center}.container[maximized] .wrapper{height:calc(100vh - 175px);border:1px solid rgb(189,189,189);border-radius:var(--dss-radius-sm);margin-bottom:24px;margin-inline:40px;width:calc(100% - 80px)}.container .header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid rgb(189,189,189);gap:16px}.container .header .header__left{display:flex;flex-direction:row;align-items:center;flex:1;gap:16px}.container .header .header__left .title{color:var(--color-neutral-800);font-weight:700;font-size:16px;line-height:24px;white-space:nowrap}.container .header .header__right{display:flex;flex-direction:row;align-items:center;gap:8px}.container .header .header__right .action-icons{display:flex;align-items:center}.container .wrapper{display:flex;flex-direction:row;min-height:1px;width:100%;height:100%}.container .wrapper[maximized] .content{width:100%;background:var(--color-neutral-50);border-top-right-radius:var(--dss-radius-sm);display:flex;flex-direction:column}.container .wrapper .content{width:100%;background:var(--color-neutral-50);border-bottom-right-radius:var(--dss-radius-sm);overflow:hidden;display:flex;flex-direction:column}",template=X=>ke$1`<div class="container" ?maximized=${X.maximized}>
8858
+ `,__decorateClass$1([lazyInject(TYPES.primaryApi)],ActivityHistoryImporter.prototype,"api",2),__decorateClass$1([connectedProperty(activityHistoryGroupedItems)],ActivityHistoryImporter.prototype,"historyGroups",2),__decorateClass$1([connectedProperty(activityHistorySearchStringSelector)],ActivityHistoryImporter.prototype,"searchString",2),__decorateClass$1([connectedProperty(historyDataImporterRulesByCollectionIdSelector)],ActivityHistoryImporter.prototype,"rulesByCollectionId",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"todayOnly",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"diagnosticsOnly",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"availableDiagnostics",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"filteredGroups",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"totalCount",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"selectedIds",2),__decorateClass$1([e$T(".virtual-viewport")],ActivityHistoryImporter.prototype,"_viewport",2),__decorateClass$1([r$H()],ActivityHistoryImporter.prototype,"_virtualScrollerState",2),ActivityHistoryImporter=__decorateClass$1([t$z("activity-history-importer")],ActivityHistoryImporter);const styles=":host{display:flex;min-height:1px;height:100%;width:100%}.container{display:flex;flex-direction:column;width:100%;border:1px solid rgb(189,189,189);border-radius:var(--dss-radius-sm)}.container[maximized]{position:absolute;background:#fff;top:0;left:0;bottom:0;border:none}.container[maximized] .header-maximized-container{display:flex;flex-direction:column}.container[maximized] .header-maximized-container .header__maximized{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;padding-top:12px;padding-bottom:12px;padding-inline:40px}.container[maximized] .header-maximized-container .header__maximized .header__maximized__search{flex:1;border-radius:8px;border:1px solid rgb(189,189,189);padding:8px;width:300px}.container[maximized] .header-maximized-container .header__maximized .title{color:var(--color-neutral-900);font-weight:700;font-size:20px;line-height:30px;white-space:nowrap}.container[maximized] .header-maximized-container .header__maximized .options{display:flex;align-items:center;color:var(--color-primary-400);font-weight:600;font-size:14px;line-height:24px;cursor:pointer}.container[maximized] .header-maximized-container .header__maximized .header__maximized__left{display:flex;flex-direction:row;gap:24px;align-items:center;width:100%}.container[maximized] .header-maximized-container .header__maximized .header__maximized__right{display:flex;flex-direction:row;gap:16px;align-items:center}.container[maximized] .wrapper{height:calc(100vh - 175px);border:1px solid rgb(189,189,189);border-radius:var(--dss-radius-sm);margin-bottom:24px;margin-inline:40px;width:calc(100% - 80px)}.container .header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid rgb(189,189,189);gap:16px}.container .header .header__left{display:flex;flex-direction:row;align-items:center;flex:1;gap:16px}.container .header .header__left .title{color:var(--color-neutral-800);font-weight:700;font-size:16px;line-height:24px;white-space:nowrap}.container .header .header__right{display:flex;flex-direction:row;align-items:center;gap:8px}.container .header .header__right .action-icons{display:flex;align-items:center}.container .wrapper{display:flex;flex-direction:row;min-height:1px;width:100%;height:100%}.container .wrapper[maximized] .content{width:100%;background:var(--color-neutral-50);border-top-right-radius:var(--dss-radius-sm);display:flex;flex-direction:column}.container .wrapper .content{width:100%;background:var(--color-neutral-50);border-bottom-right-radius:var(--dss-radius-sm);overflow:hidden;display:flex;flex-direction:column}",template=X=>ke$1`<div class="container" ?maximized=${X.maximized}>
8868
8859
  ${X.maximized?ke$1`${headerMaximizedTemplate(X)}`:ke$1`<div class="header">
8869
8860
  <div class="header__left">
8870
8861
  <div class="title">${translate("activityHistory")}</div>