@rero/rero-ils-ui
Version:
User interface for RERO integrated library system (RERO ILS).
3 lines (2 loc) • 20.6 kB
JavaScript
import{a as Qe,b as qe,c as ze,d as Ke}from"./chunk-7GSCO6KD.js";import{a as ie,b as ne}from"./chunk-FCC5WNRC.js";import{a as te}from"./chunk-BR2J44KJ.js";import{a as Oe}from"./chunk-CGU6MK6Q.js";import{$ as $e,A as Le,R as k,X as je,Y as He,j as D,k as Ue}from"./chunk-4GRLSOJZ.js";import{c as q}from"./chunk-WOV5KKTV.js";import{Eb as Y,Jb as Q,Ma as Ve,Nb as ke,Wa as G,fc as Ne,gc as Fe,hc as Re,mc as ee,wa as Me}from"./chunk-MTJX6JRK.js";import{b as $,c as V}from"./chunk-GQ5FIRIY.js";import{j as we,k as Ie}from"./chunk-4A4J5SA3.js";import{i as Ee,la as Be,ma as O}from"./chunk-4MYHQLZQ.js";import{g as Ae}from"./chunk-DUSRDOA3.js";import{W as De,ha as be,oa as Te}from"./chunk-WKOKZ3JO.js";import{$b as S,Aa as X,Ca as se,Cc as ge,Db as ue,Fa as ce,Fb as _e,Hc as l,Ic as b,Jc as s,Kc as M,Ob as fe,Pb as xe,Pc as ye,Qc as Se,Rc as Pe,Vb as c,Wc as L,Xb as m,Xc as F,Yb as g,Yc as Z,_b as y,a as W,ac as x,b as pe,bb as me,bc as a,cc as o,da as de,dc as _,dd as p,ed as f,fd as h,gb as n,hc as Ce,hd as j,ia as v,ic as ve,jc as he,kc as B,oa as E,pa as w,pd as H,r as J,rc as A,sc as d,v as N,vd as P,yb as T}from"./chunk-3WD6XLXL.js";var oe=(function(e){return e.patron="primary",e.pro_full_permissions="danger",e.pro_read_only="help",e.pro_catalog_manager="success",e.pro_circulation_manager="warn",e.pro_user_manager="info",e.pro_acquisition_manager="secondary",e.pro_library_administrator="contrast",e})(oe||{});function z(e){return e in oe?oe[e]:"secondary"}var tt=e=>[e];function it(e,i){if(e&1&&l(0),e&2){let t=d(2);s(" ",t.record().metadata.first_name," ")}}function nt(e,i){if(e&1){let t=B();a(0,"p-button",7),p(1,"translate"),A("onClick",function(){E(t);let u=d(2);return w(u.goToCirculation(u.record().metadata.patron.barcode[0]))}),o()}e&2&&x("title",f(1,1,"Circulation"))}function ot(e,i){if(e&1&&(a(0,"p-tag",6),l(1),p(2,"translate"),o()),e&2){let t=i.$implicit,r=d(2);x("severity",r.getRoleTagSeverity(t)),n(),s(" ",f(2,2,t)," ")}}function at(e,i){if(e&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2)(3,"a",3),l(4),c(5,it,1,1),o()(),c(6,nt,2,3,"p-button",4),o(),a(7,"div",5),y(8,ot,3,4,"p-tag",6,g),o(),a(10,"span"),l(11),p(12,"dateTranslate"),o()()),e&2){let t=d();n(3),x("routerLink",F(9,tt,t.detailUrl().link)),n(),s(" ",t.record().metadata.last_name," "),n(),m(t.record().metadata.first_name?5:-1),n(),m(t.circulationAccess&&t.record().metadata.patron?6:-1),n(2),S(t.record().metadata.roles),n(3),M(" ",h(12,6,t.record().metadata.birth_date,"mediumDate")," \u2014 ",t.record().metadata.city," ")}}var We=(()=>{class e{constructor(){this.appStore=v(k),this.router=v(Be),this.record=P(),this.type=P(),this.detailUrl=P()}get circulationAccess(){return this.appStore.canAccess(D.CIRC_ADMIN)}getRoleTagSeverity(t){return z(t)}goToCirculation(t){this.router.navigate(["/circulation","patron",t,"loan"])}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=T({type:e,selectors:[["admin-patrons-brief-view"]],inputs:{record:[1,"record"],type:[1,"type"],detailUrl:[1,"detailUrl"]},decls:1,vars:1,consts:[[1,"ui:flex","ui:flex-col","ui:gap-2"],[1,"ui:flex"],[1,"ui:grow"],[3,"routerLink"],["icon","fa fa-exchange","outlined","",1,"ui:my-0","ui:py-0",3,"title"],[1,"ui:flex","ui:gap-1","ui:flex-wrap"],[3,"severity"],["icon","fa fa-exchange","outlined","",1,"ui:my-0","ui:py-0",3,"onClick","title"]],template:function(r,u){r&1&&c(0,at,13,11,"div",0),r&2&&m(u.record()?0:-1)},dependencies:[O,Ie,q,V,Q],encapsulation:2,changeDetection:0})}}return e})();var Je=(()=>{class e{constructor(){this.httpClient=v(Ee)}getAllPermissionsByRole(){return this.httpClient.get("/api/permissions/by_role")}getUserPermissions(t){return this.httpClient.get(`/api/permissions/by_patron/${t}`)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=de({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var rt=()=>[$,import("./chunk-QPZ7MLS6.js").then(e=>e.InputText),import("./chunk-RCLMZ6U6.js").then(e=>e.PatronPermissionComponent)];function lt(e,i){if(e&1&&(a(0,"div",8),_(1,"admin-patron-permission",9),o()),e&2){let t=i.$implicit;n(),x("permission",t)}}function pt(e,i){if(e&1){let t=B();a(0,"div",1)(1,"label",2),l(2,"Filter permission list"),o(),a(3,"input",3,0),A("keyup",function(){E(t);let u=ge(4),C=d();return w(C.filterPermissions(u.value))}),o(),a(5,"small",4),l(6,"Enter a part of the permission name to filter the list."),o()(),a(7,"div",5)(8,"div",6),l(9,"Permission"),o(),a(10,"div",7),l(11,"Access"),o()(),a(12,"div"),y(13,lt,2,1,"div",8,g),o()}if(e&2){let t=d();n(13),S(t.filteredPermissions())}}function dt(e,i){e&1&&(_(0,"i",10),l(1),p(2,"translate")),e&2&&(n(),s("\xA0",f(2,1,"Loading in progress\u2026"),`
`))}var Xe=(()=>{class e{constructor(){this.permissionApiService=v(Je),this.hidden=P(!1),this.pid=P.required(),this.permissions=X([]),this.filteredPermissions=X([]),se(()=>{!this.hidden()&&this.permissions().length===0&&this.permissionApiService.getUserPermissions(this.pid()).subscribe(t=>{this.permissions.set(t),this.filteredPermissions.set(t)})})}filterPermissions(t){this.filteredPermissions.set(this.permissions().filter(r=>r.name.includes(t)))}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=T({type:e,selectors:[["admin-patron-permissions"]],inputs:{hidden:[1,"hidden"],pid:[1,"pid"]},decls:4,vars:1,consts:[["search",""],[1,"ui:flex","ui:flex-col","ui:gap-2"],["for","filter","translate",""],["pInputText","","id","filter",3,"keyup"],["id","filterInfo","translate","",1,"ui:text-muted-color"],[1,"ui:grid","ui:grid-cols-12","ui:gap-4","ui:mt-4","ui:mb-2"],["translate","",1,"ui:col-span-10","ui:font-bold","ui:uppercase"],["translate","",1,"ui:col-span-2","ui:font-bold","ui:text-center","ui:uppercase"],[1,"ui:odd:bg-surface-50"],[3,"permission"],[1,"fa","fa-spin","fa-spinner"]],template:function(r,u){r&1&&(_e(0,pt,15,0)(1,dt,3,3),fe(2,0,rt,null,1)),r&2&&(n(2),xe(u.permissions().length>0))},dependencies:[V],encapsulation:2,changeDetection:0})}}return e})();var st=()=>["0","1"],ct=()=>({"=1":"Role",other:"Roles"}),Ze=e=>["/circulation","patron",e],Ge=(e,i)=>({"=1":e,other:i}),mt=()=>({"=1":"Note",other:"Notes"});function ut(e,i){if(e&1&&(a(0,"div",1)(1,"p-message",27),l(2),p(3,"translate"),_(4,"br"),l(5),o()()),e&2){let t=d();n(2),s(" ",f(3,2,"This patron is currently blocked")),n(3),s(" ",t.patron.blocked_note," ")}}function _t(e,i){if(e&1&&(a(0,"a",9),_(1,"i",28),l(2),p(3,"translate"),o()),e&2){let t=d(),r=d();x("permissions",r.permissions.CIRC_ADMIN)("routerLink",F(5,Ze,t.patron.barcode[0])),n(2),s("\xA0",f(3,3,"Circulation")," ")}}function ft(e,i){if(e&1&&(a(0,"dt"),_(1,"i",29),l(2),p(3,"translate"),o(),a(4,"dd"),l(5),o()),e&2){let t=d();n(2),s("\xA0",f(3,2,"Email")," "),n(3),b(t.email)}}function xt(e,i){if(e&1&&(a(0,"li"),l(1),a(2,"span",32),l(3),p(4,"translate"),o()()),e&2){let t=i.$implicit;n(),s(" ",t.value,"\xA0 "),n(2),s("(",f(4,2,t.type),")")}}function Ct(e,i){if(e&1&&(a(0,"dt"),_(1,"i",30),l(2),p(3,"translate"),p(4,"translate"),p(5,"i18nPlural"),o(),a(6,"dd")(7,"ul",31),y(8,xt,5,4,"li",null,g),o()()),e&2){let t=d();n(2),s("\xA0 ",h(5,5,t.length,Z(8,Ge,f(3,1,"Phone"),f(4,3,"Phones")))," "),n(6),S(t)}}function vt(e,i){e&1&&c(0,Ct,10,11),e&2&&m(i.length>0?0:-1)}function ht(e,i){if(e&1&&(l(0),_(1,"br")),e&2){let t=d(2);s(" ",t.street)}}function gt(e,i){if(e&1&&(l(0),_(1,"br")),e&2){let t=d(2);M(" ",t.postal_code," ",t.city)}}function yt(e,i){if(e&1&&(l(0),p(1,"translate")),e&2){let t=d(2);s(" ",f(1,1,"country_"+t.country)," ")}}function St(e,i){if(e&1&&(a(0,"dt"),_(1,"i",33),l(2),p(3,"translate"),o(),a(4,"dd"),c(5,ht,2,1),c(6,gt,2,2),c(7,yt,2,3),o()),e&2){let t=d();n(2),s("\xA0 ",f(3,4,"Address")," "),n(3),m(t.street?5:-1),n(),m(t.postal_code||t.city?6:-1),n(),m(t.country?7:-1)}}function Pt(e,i){if(e&1&&(a(0,"div",17)(1,"dl",10)(2,"dt",21),l(3),o(),_(4,"dd",35),p(5,"nl2br"),o()()),e&2){let t=i.$implicit;n(3),s(" ",t.type," "),n(),x("innerHTML",f(5,2,t.content),me)}}function Dt(e,i){if(e&1&&(a(0,"p-accordion-panel",14)(1,"p-accordion-header")(2,"span",34),l(3),p(4,"i18nPlural"),p(5,"translate"),o()(),a(6,"p-accordion-content"),y(7,Pt,6,4,"div",17,g),o()()),e&2){let t=d();n(3),s(" ",f(5,4,h(4,1,t.notes.length,L(6,mt)))," "),n(4),S(t.notes)}}function bt(e,i){if(e&1&&(_(0,"p-tag",23),p(1,"translate")),e&2){let t=i.$implicit,r=d(2);x("severity",r.getRoleTagSeverity(t))("value",f(1,2,t))}}function Tt(e,i){if(e&1&&(a(0,"li"),l(1),p(2,"getRecord"),p(3,"async"),o()),e&2){let t=i.$implicit;n(),s(" ",f(3,6,j(2,1,t.pid,"libraries","field","name"))," ")}}function Et(e,i){if(e&1&&(a(0,"dt"),_(1,"i",38),l(2),p(3,"translate"),o(),a(4,"dd")(5,"ul",31),y(6,Tt,4,8,"li",null,g),o()()),e&2){let t=d(2);n(2),s("\xA0 ",f(3,1,"Affiliation libraries")," "),n(4),S(t.patron.libraries)}}function wt(e,i){if(e&1&&(a(0,"dt",21),l(1,"Source"),o(),a(2,"dd"),l(3),o()),e&2){let t=d(2);n(3),b(t.source)}}function It(e,i){if(e&1&&(a(0,"dt",21),l(1,"Local code"),o(),a(2,"dd"),l(3),p(4,"join"),o()),e&2){let t=d(2);n(3),b(h(4,1,t.local_codes,", "))}}function Bt(e,i){if(e&1&&(l(0),_(1,"br")),e&2){let t=d(3);s(" ",t.second_address.street)}}function At(e,i){if(e&1&&(l(0),_(1,"br")),e&2){let t=d(3);M(" ",t.second_address.postal_code," ",t.second_address.city)}}function Mt(e,i){if(e&1&&(l(0),p(1,"translate")),e&2){let t=d(3);s(" ",f(1,1,"country_"+t.second_address.country)," ")}}function Vt(e,i){if(e&1&&(a(0,"dt"),_(1,"i",33),l(2),p(3,"translate"),o(),a(4,"dd"),c(5,Bt,2,1),c(6,At,2,2),c(7,Mt,2,3),o()),e&2){let t=d(2);n(2),s("\xA0 ",f(3,4,"Second address")," "),n(3),m(t.second_address.street?5:-1),n(),m(t.second_address.postal_code||t.second_address.city?6:-1),n(),m(t.second_address.country?7:-1)}}function kt(e,i){if(e&1&&(a(0,"p-accordion-panel",24)(1,"p-accordion-header")(2,"span",16),l(3,"Patron information"),o()(),a(4,"p-accordion-content")(5,"div",17)(6,"dl",10)(7,"dt"),_(8,"i",36),l(9),p(10,"translate"),o(),a(11,"dd")(12,"a",37),l(13),p(14,"join"),o()(),a(15,"dt",21),l(16,"Type"),o(),a(17,"dd"),l(18),p(19,"getRecord"),p(20,"async"),o(),a(21,"dt",21),l(22,"Account expiration"),o(),a(23,"dd"),l(24),p(25,"dateTranslate"),o(),c(26,Et,8,3),c(27,wt,4,1),c(28,It,5,4),c(29,Vt,8,6),o()()()()),e&2){let t=d(),r=d();n(9),s("\xA0 ",f(10,10,"Barcode")," "),n(3),x("routerLink",F(25,Ze,t.patron.barcode[0]))("linkPermissions",r.permissions.CIRC_ADMIN),n(),b(h(14,12,t.patron.barcode,", ")),n(5),s(" ",f(20,20,j(19,15,t.patron.type.pid,"patron_types","field","name"))," "),n(6),s(" ",h(25,22,t.patron.expiration_date,"mediumDate")," "),n(2),m(t.patron.libraries&&t.patron.libraries.length>0?26:-1),n(),m(t.source?27:-1),n(),m(t.local_codes?28:-1),n(),m(t.second_address?29:-1)}}function Nt(e,i){if(e&1&&(a(0,"li"),l(1),p(2,"getRecord"),p(3,"async"),o()),e&2){let t=i.$implicit;n(),s(" ",f(3,6,j(2,1,t.pid,"libraries","field","name"))," ")}}function Ft(e,i){if(e&1&&(a(0,"p-accordion-panel",25)(1,"p-accordion-header")(2,"span",16),l(3,"Librarian information"),o()(),a(4,"p-accordion-content")(5,"div",17)(6,"dl",10)(7,"dt"),_(8,"i",38),l(9),p(10,"translate"),p(11,"translate"),p(12,"i18nPlural"),o(),a(13,"dd")(14,"ul",31),y(15,Nt,4,8,"li",null,g),o()()()()()()),e&2){let t=d();n(9),s("\xA0 ",h(12,5,t.libraries.length,Z(8,Ge,f(10,1,"Library"),f(11,3,"Libraries")))," "),n(6),S(t.libraries)}}function Rt(e,i){if(e&1&&(a(0,"p-accordion-panel",26)(1,"p-accordion-header")(2,"span",16),l(3,"Permissions"),o()(),a(4,"p-accordion-content")(5,"div",17),_(6,"admin-patron-permissions",39),o()()()),e&2){let t=d();n(6),x("hidden",!1)("pid",t.pid)}}function Ut(e,i){if(e&1&&(a(0,"div",0),c(1,ut,6,4,"div",1),a(2,"section",2)(3,"div",3)(4,"div",4),_(5,"i",5),o(),a(6,"div",6)(7,"div",7)(8,"span",8),l(9),o(),c(10,_t,4,7,"a",9),o(),a(11,"dl",10)(12,"dt"),_(13,"i",11),l(14),p(15,"translate"),o(),a(16,"dd"),l(17),p(18,"dateTranslate"),o(),c(19,ft,6,4),c(20,vt,1,1),c(21,St,8,6),o()()(),a(22,"div",12)(23,"p-accordion",13),c(24,Dt,9,7,"p-accordion-panel",14),a(25,"p-accordion-panel",15)(26,"p-accordion-header")(27,"span",16),l(28,"User informations"),o()(),a(29,"p-accordion-content")(30,"div",17)(31,"dl",10)(32,"dt"),_(33,"i",18),l(34),p(35,"translate"),o(),a(36,"dd"),l(37),o(),a(38,"dt"),_(39,"i",19),l(40),o(),a(41,"dd"),_(42,"i",20),o(),a(43,"dt",21),l(44),p(45,"i18nPlural"),o(),a(46,"dd",22),y(47,bt,2,4,"p-tag",23,g),o(),a(49,"dt",21),l(50,"Creation date"),o(),a(51,"dd"),l(52),p(53,"dateTranslate"),o()()()()(),c(54,kt,30,27,"p-accordion-panel",24),c(55,Ft,17,11,"p-accordion-panel",25),c(56,Rt,7,2,"p-accordion-panel",26),o()()()()),e&2){let t,r=i,u=d();n(),m(r.patron&&r.patron.blocked?1:-1),n(8),M("",r.last_name," ",r.first_name),n(),m(r.patron?10:-1),n(4),s("\xA0",f(15,21,"Date of birth")," "),n(3),b(h(18,23,r.birth_date,"mediumDate")),n(2),m(r.email?19:-1),n(),m((t=u.phones())?20:-1,t),n(),m(r.street||r.postal_code||r.city||r.country?21:-1),n(2),x("multiple",!0)("value",L(34,st)),n(),m(r.notes&&r.notes.length>0?24:-1),n(10),s("\xA0 ",f(35,26,"Username")," "),n(3),b(r.username),n(3),s("\xA0 ","Keep history"," "),n(2),x("ngClass",r.keep_history?"fa-check text-success":"fa-times text-error"),n(2),b(h(45,28,r.roles,L(35,ct))),n(3),S(r.roles),n(5),b(h(53,31,u.record().created,"mediumDate")),n(2),m(r.patron?54:-1),n(),m((r.libraries==null?null:r.libraries.length)>0?55:-1),n(),m(u.canAccessDisplayPermissions()?56:-1)}}var Ye=(()=>{class e{constructor(){this.appStore=v(k),this.record=P(),this.type=P(""),this.permissions=D,this.patron=H(()=>this.record()?.metadata??null),this.phones=H(()=>{let t=this.record()?.metadata;return t?this._processPhones(t):[]}),this.canAccessDisplayPermissions=H(()=>this.appStore.canAccess(D.PERM_MANAGEMENT))}getRoleTagSeverity(t){return z(t)}getNoteBadgeColor(t){switch(t){case"public_note":return"info";case"staff_note":return"warn";default:return"secondary"}}_processPhones(t){let r=[];return t.mobile_phone&&r.push({value:t.mobile_phone,type:"Mobile",weight:10}),t.home_phone&&r.push({value:t.home_phone,type:"Home",weight:7}),t.business_phone&&r.push({value:t.business_phone,type:"Business",weight:7}),t.other_phone&&r.push({value:t.other_phone,type:"Other",weight:-1}),r.sort((u,C)=>C.weight-u.weight)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=T({type:e,selectors:[["admin-patron-detail-view"]],inputs:{record:[1,"record"],type:[1,"type"]},decls:1,vars:1,consts:[[1,"ui:py-2"],[1,"ui:my-4"],["id","contact-profile",1,"ui:flex","ui:flex-col","ui:gap-2"],[1,"ui:rounded-border","ui:border","ui:border-surface","ui:flex","ui:gap-6","ui:p-6"],[1,"ui:bg-surface-500","ui:rounded-full","ui:w-40","ui:h-40","ui:flex","ui:items-center","ui:justify-center"],[1,"fa","fa-user-o","fa-4x","ui:text-white"],[1,"ui:grow"],[1,"ui:flex","ui:items-center","ui:gap-4","ui:mb-2"],[1,"ui:text-4xl"],["pButton","","outlined","","size","small",3,"permissions","routerLink"],[1,"metadata"],[1,"fa","fa-calendar-o"],[1,"ui:flex","ui:gap-6","ui:mt-6"],[1,"ui:grow",3,"multiple","value"],["value","0"],["value","1"],["translate","",1,"ui:text-bold","ui:text-xl"],[1,"ui:mt-2"],[1,"fa","fa-user"],[1,"fa","fa-history"],[1,"fa",3,"ngClass"],["translate",""],[1,"ui:flex","ui:gap-1","ui:flex-wrap"],[3,"severity","value"],["value","3"],["value","4"],["value","5"],["severity","error","showTransitionOptions","0ms"],[1,"fa","fa-exchange"],[1,"fa","fa-envelope"],[1,"fa","fa-phone"],[1,"ui:list-none"],[1,"ui:italic","ui:text-muted-color"],[1,"fa","fa-home"],[1,"ui:text-bold","ui:text-xl"],[3,"innerHTML"],[1,"fa","fa-barcode"],[3,"routerLink","linkPermissions"],[1,"fa","fa-university"],[3,"hidden","pid"]],template:function(r,u){if(r&1&&c(0,Ut,57,36,"div",0),r&2){let C;m((C=u.patron())?0:-1,C)}},dependencies:[we,je,O,Ke,Qe,qe,ze,$,De,q,$e,Xe,Ae,be,Te,V,Q,ke,Le,Me],encapsulation:2,changeDetection:0})}}return e})();function Lt(e,i){if(e&1&&_(0,"shared-operation-logs-dialog",5),e&2){let t=d(3);x("resourcePid",t.record().metadata.pid)}}function jt(e,i){if(e&1&&c(0,Lt,1,1,"shared-operation-logs-dialog",5),e&2){let t=d(2);m(t.appStore.isLogVisible("patrons")&&t.record().metadata.pid?0:-1)}}function Ht(e,i){if(e&1){let t=B();a(0,"ng-core-detail-button",3),A("recordEvent",function(u){E(t);let C=d();return w(C.recordEvent(u))})("deleteMessageEvent",function(u){E(t);let C=d();return w(C.showDeleteMessage(u))}),Ce(1,4),c(2,jt,1,1),ve(),o()}if(e&2){let t=d();x("record",t.record()??null)("type",t.type())("adminMode",t.adminMode())("useStatus",t.useStatus())("updateStatus",t.updateStatus())("deleteStatus",t.deleteStatus()),n(2),m(t.record()?2:-1)}}function $t(e,i){if(e&1&&_(0,"ng-core-error",2),e&2){d();let t=Pe(2);x("error",t)}}var et=(()=>{class e extends Re{constructor(){super(...arguments),this.appStore=v(k)}static{this.\u0275fac=(()=>{let t;return function(u){return(t||(t=ce(e)))(u||e)}})()}static{this.\u0275cmp=T({type:e,selectors:[["admin-patron-detail"]],features:[ue],decls:6,vars:3,consts:[["dynamicHost",""],[3,"record","type","adminMode","useStatus","updateStatus","deleteStatus"],[3,"error"],[3,"recordEvent","deleteMessageEvent","record","type","adminMode","useStatus","updateStatus","deleteStatus"],["beforeButton",""],["resourceType","patrons",3,"resourcePid"]],template:function(r,u){if(r&1&&(a(0,"div"),c(1,Ht,3,7,"ng-core-detail-button",1),ye(2),c(3,$t,1,1,"ng-core-error",2),he(4,null,0),o()),r&2){n(),m(u.record()?1:-1),n();let C=Se(u.error());n(),m(C?3:-1)}},dependencies:[Fe,He,Ve],encapsulation:2,changeDetection:0})}}return e})();var Oi=()=>new ae().getTypes(),Qi=[{path:"",component:Ne,title:"Patrons",canActivate:[te],data:{permissions:[D.PTRN_ACCESS,D.PTRN_SEARCH],operator:Ue.AND}},{path:"detail/:pid",component:et,title:"Patron",canActivate:[ne],data:{action:ie.READ}},{path:"edit/:pid",component:ee,title:"Patron",canActivate:[ne],canDeactivate:[Y],data:{action:ie.UPDATE}},{path:"new",component:ee,title:"Patron",canActivate:[te],canDeactivate:[Y],data:{permissions:[D.PTRN_CREATE]}}],ae=class extends Oe{constructor(){super(...arguments),this.recordService=v(G),this.name="patrons",this.recordType="patrons"}getTypes(){return[{key:this.name,label:"Users",editorSettings:{template:{recordType:"templates",loadFromTemplate:!0,saveAsTemplate:!0}},component:We,detailComponent:Ye,searchFilters:[this.expertSearchFilter(),{label:"Show only:",filters:[{label:"Expired",filter:"expired",value:"true",showIfQuery:!0},{label:"Not expired",filter:"not_expired",value:"true",showIfQuery:!0},{label:"Blocked",filter:"blocked",value:"true",showIfQuery:!0}]}],canAdd:()=>J({can:this.routeToolService.appStore.canAccess(D.PTRN_CREATE)}),permissions:i=>this.routeToolService.permissions(i,this.recordType),processFilterName:i=>this.processFilterName(i),canUpdate:i=>this.routeToolService.canUpdate(i,this.recordType),canDelete:i=>this.routeToolService.canDelete(i,this.recordType),preprocessRecordEditor:i=>{let t=new Date;return t.setFullYear(t.getFullYear()+3),i=W({patron:{expiration_date:this.routeToolService.datePipe.transform(t,"yyyy-MM-dd")}},i),i},postprocessRecordEditor:i=>(i.blocked===!1&&delete i.blocked_note,!i.roles.includes("patron")&&"patron"in i&&delete i.patron,i),formFieldMap:(i,t)=>(i.props.label==="Role"&&i.asyncValidators==null&&(i.asyncValidators={}),this._limitUserFormField(i,t)),aggregationsExpand:["roles","city","patron_type"],aggregationsOrder:["roles","city","patron_type"],allowEmptySearch:!1,listHeaders:{Accept:"application/rero+json"},sortOptions:[{label:"Relevance",value:"bestmatch",defaultQuery:!0,defaultNoQuery:!0,icon:"fa fa-sort-amount-desc"},{label:"Name",value:"full_name",icon:"fa fa-sort-alpha-asc"}],showFacetsIfNoResults:!0}]}_limitUserFormField(i,t){let r=t.widget;if(r?.formlyConfig?.props?.fieldMap==="roles"){let u=Object.assign([],i.props.options);i.props.options=this.routeToolService.recordPermissionService.getRolesManagementPermissions().pipe(N(C=>(u.forEach(R=>R.disabled=!C.allowed_roles.includes(R.value)),u)))}return r?.formlyConfig?.props?.fieldMap==="libraries"&&(i.type="select",i.hooks=pe(W({},i.hooks),{afterContentInit:u=>{let C=this.routeToolService.appStore.user(),R=this.routeToolService.apiService,re=this.routeToolService.recordService,le=[];C?.patrons.map(I=>{I.libraries.map(U=>{le.push(U.pid)})}),u.props.options=re.getRecords("libraries",{query:`pid:${le.join(" OR pid:")}`,page:1,itemsPerPage:G.MAX_REST_RESULTS_SIZE,sort:"name"}).pipe(N(I=>+re.totalHits(I.hits.total)==0?[]:I.hits.hits),N(I=>I.map(U=>({label:U.metadata.name,value:R.getRefEndpoint("libraries",U.metadata.pid)}))))}})),i}processFilterName(i){return i.name?J(i.name):i.aggregationKey==="patron_type"?this.recordService.getRecord("patron_types",i.key).pipe(N(t=>t.metadata.name)):this.routeToolService.translateService.stream(i.key)}};export{Je as a,Oi as b,Qi as c};