PageSourceSearch

https://account.canapii.com/chunk-P3FWPHE2.js

js canapii.com collected 2026-09-24 09:42:43 UTC 41,996 bytes, 4 lines download raw bytes

1import{a as Qe,b as se,c as nt,d as it,f as rt,g as st,h as lt,i as ct}from"./chunk-V4H7DVTN.js";import{a as Ze}from"./chunk-CXOAKPI4.js";import"./chunk-C6SPUDQC.js";import{a as G,b as K,c as Je,d as Y,e as Xe,f as et,g as tt,h as ot,i as at}from"./chunk-DGJ5VC6I.js";import{b as U}from"./chunk-WTUVN6DR.js";import"./chunk-KSQGRLGC.js";import{a as Ge}from"./chunk-NYCKQD77.js";import"./chunk-QR3J6KRZ.js";import"./chunk-HGIBWS5A.js";import{a as Ye}from"./chunk-4CETJT7D.js";import"./chunk-TIC6V5OO.js";import"./chunk-TRKHOV73.js";import"./chunk-NE7QIBGA.js";import"./chunk-O3DZWUYU.js";import"./chunk-X42GTVFF.js";import"./chunk-JA3TLQKN.js";import"./chunk-GU2FORAA.js";import"./chunk-XQKDUXSK.js";import"./chunk-5M4Y625P.js";import"./chunk-DUA22LOF.js";import"./chunk-OXXAYQVU.js";import"./chunk-7E5C6QEM.js";import"./chunk-QUDN46XZ.js";import"./chunk-XQUZO2JR.js";import"./chunk-JJQKBTPA.js";import"./chunk-KEOYM2AG.js";import"./chunk-FGXNUQX4.js";import"./chunk-JVRNJPL7.js";import{a as qe}from"./chunk-FXQ5ITI2.js";import"./chunk-GIDJVD54.js";import"./chunk-72DQ4U6K.js";import"./chunk-25YTDFSJ.js";import"./chunk-4HEIS64P.js";import"./chunk-TQBFZH74.js";import"./chunk-CAFQQJ3Z.js";import"./chunk-NTEZ6HBD.js";import"./chunk-LKHYAKIP.js";import"./chunk-HZ3WYMWQ.js";import"./chunk-ARZGPVXK.js";import"./chunk-QF27IOQE.js";import"./chunk-XRJHSHSG.js";import"./chunk-JE2WTDKI.js";import{a as De}from"./chunk-LO5GPMW5.js";import"./chunk-NKJNLA4H.js";import"./chunk-WL334ETE.js";import"./chunk-WDIOLPZ2.js";import{a as We}from"./chunk-LFVYZXVL.js";import"./chunk-JBGTHU2Q.js";import"./chunk-WBTZD3PJ.js";import"./chunk-J6U6M7TF.js";import"./chunk-IR2QGIVV.js";import"./chunk-WU5OWFCN.js";import"./chunk-F5IQZLEF.js";import"./chunk-ARHRSX7S.js";import"./chunk-56U2VUAK.js";import"./chunk-YA3REOTQ.js";import"./chunk-HB4JGH6L.js";import"./chunk-E34OQ4RJ.js";import"./chunk-H4EPMV5Z.js";import{a as Oe}from"./chunk-ZSHO3KMD.js";import"./chunk-QVGEDMLN.js";import{a as _t}from"./chunk-UZY2R5Q5.js";import"./chunk-5GAGQHFR.js";import"./chunk-RYT6C367.js";import"./chunk-SNZM6YGS.js";import"./chunk-3PGMBZAP.js";import"./chunk-FQFO62CD.js";import"./chunk-VT7CJSCD.js";import"./chunk-346ISJSG.js";import"./chunk-DLH4J2ZV.js";import"./chunk-A43BTBOJ.js";import"./chunk-67IT4HQ6.js";import"./chunk-2BXTPQTP.js";import"./chunk-JED7GRQQ.js";import"./chunk-ZECF2WJA.js";import"./chunk-G27UVVZT.js";import{a as ae}from"./chunk-PNYSZFNB.js";import{A as Ne,B as $e,C as Be,G as Ae,L as Re,O as He,P as Ve,R as je,V as Ue,g as Ee,i as V,ia as Ke,k as j,m as Pe,s as ze,t as Fe,w as Ie}from"./chunk-Y3MTRBLK.js";import"./chunk-XMBPLYUK.js";import"./chunk-QRMJLQVM.js";import"./chunk-24HYNKH3.js";import{a as re}from"./chunk-D4PVEYVW.js";import"./chunk-XQ3OH5B7.js";import"./chunk-DE65ZGA7.js";import"./chunk-65I45D2I.js";import"./chunk-GZL4NBTB.js";import{a as Te}from"./chunk-OMIAKVTT.js";import{q as Le,r as we,t as oe}from"./chunk-3XCK7DOC.js";import"./chunk-PJWNDC7A.js";import{M as ne,N as ie}from"./chunk-QDFFLVTB.js";import"./chunk-JIVZONLP.js";import"./chunk-S43ITSQ5.js";import{e as Me,h as ke,i as te,k as ue}from"./chunk-5FWAKVG3.js";import{i as ye,o as xe,z as ee}from"./chunk-KAXBUATZ.js";import{Ac as M,Bc as k,Cc as p,Dc as s,Dd as $,Ec as a,Fa as B,Fc as g,Jb as r,Oc as H,Pd as Se,Sa as L,Ta as w,Td as F,Vc as b,Vd as me,Wb as S,Xc as h,ab as z,bc as A,cc as R,fb as ve,fd as _e,gc as J,hd as de,jd as d,kd as y,ld as E,md as X,rd as be,sd as pe,td as Ce,vc as T,xc as O,yc as N}from"./chunk-XW6AEKHB.js";import{a as he,b as fe,i as vt,l as P}from"./chunk-6G35VSEK.js";var le=(()=>{class i{constructor(e,t,n){this.activeModal=e,this.locationsService=t,this.toastService=n,this.lastSortOrderNumber=0,this.requestLoading=!1,this.errorMessage=""}onSave(e){return P(this,null,function*(){this.requestLoading=!0,this.errorMessage="";try{let t=yield this.locationsService.createLocation(e);if(t.success)this.activeModal.close(t.data);else throw new Error(t.message)}catch(t){this.errorMessage=t.message||"Error creating location",this.toastService.showDanger("Error creating location.",t.message)}finally{this.requestLoading=!1}})}static{this.\u0275fac=function(t){return new(t||i)(S(we),S(U),S(ae))}}static{this.\u0275cmp=A({type:i,selectors:[["ng-component"]],inputs:{lastSortOrderNumber:"lastSortOrderNumber"},decls:6,vars:4,consts:[[1,"modal-header"],[1,"modal-title"],["variant","ghost","size","sm","ariaLabel","Close",1,"dialog-close",3,"click","iconOnly"],["name","close"],[3,"save","lastSortOrderNumber","isLoading","errorMessage"]],template:function(t,n){t&1&&(s(0,"div",0)(1,"h4",1),d(2,"Add location"),a(),s(3,"cnp-button",2),b("click",function(){return n.activeModal.dismiss()}),g(4,"cnp-icon",3),a()(),s(5,"app-location-form",4),b("save",function(l){return n.onSave(l)}),a()),t&2&&(r(3),p("iconOnly",!0),r(2),p("lastSortOrderNumber",n.lastSortOrderNumber)("isLoading",n.requestLoading)("errorMessage",n.errorMessage))},dependencies:[se,j,V],encapsulation:2})}}return i})();var mt=(()=>
1{class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=R({type:i})}static{this.\u0275inj=B({imports:[ee,ne,ie,re,se]})}}return i})();var _=vt(_t());var Ct=i=>({"min-width.px":i}),ge=i=>({left:i}),St=(i,c)=>c.hour,ut=(i,c)=>c.pk,gt=(i,c)=>c.bookingId||c.startTime.valueOf();function yt(i,c){if(i&1&&(s(0,"div",24),d(1),a()),i&2){let e=c.$implicit;p("ngStyle",$(2,ge,e.offsetPercent+"%")),r(),E(" ",e.label," ")}}function xt(i,c){if(i&1&&g(0,"div",37),i&2){let e=c.$implicit;de("grid-line-hour",e.isHour),p("ngStyle",$(3,ge,e.offsetPercent+"%"))}}function Mt(i,c){if(i&1&&g(0,"div",35),i&2){let e=c.$implicit,t=h(3);p("ngStyle",t.getClosedStyle(e))}}function kt(i,c){if(i&1&&(s(0,"a",36)(1,"span",38),d(2),a()()),i&2){let e=c.$implicit,t=h(3);p("ngStyle",t.getBlockStyle(e))("title",t.getBlockTooltip(e))("routerLink",t.getSessionLink(e)),r(2),y(e.title)}}function Lt(i,c){if(i&1&&(s(0,"div",28)(1,"div",29)(2,"p",30),d(3),a(),s(4,"p",31),g(5,"span",32),d(6," Session "),a()(),s(7,"div",33),M(8,xt,1,5,"div",34,N),M(10,Mt,1,1,"div",35,N),M(12,kt,3,4,"a",36,gt),a()()),i&2){let e=c.$implicit,t=h(2);r(3),y(e.name),r(2),p("ngClass",e.status==="Active"?"dot-active":"dot-inactive"),r(3),k(t.gridLines),r(2),k(e.closedPeriods),r(2),k(e.blocks)}}function wt(i,c){if(i&1&&(s(0,"div",25)(1,"div",27)(2,"span"),d(3,"Sessions"),a()(),M(4,Lt,14,2,"div",28,ut),a()),i&2){let e=h();r(4),k(e.sessionLocations)}}function Dt(i,c){if(i&1&&g(0,"div",37),i&2){let e=c.$implicit;de("grid-line-hour",e.isHour),p("ngStyle",$(3,ge,e.offsetPercent+"%"))}}function Tt(i,c){if(i&1&&g(0,"div",35),i&2){let e=c.$implicit,t=h(3);p("ngStyle",t.getClosedStyle(e))}}function Ot(i,c){if(i&1){let e=H();s(0,"button",41),b("click",function(){let n=L(e).$implicit,o=h().$implicit,l=h(2),u=_e(47);return w(l.openMeetingModal(n,o,u))}),s(1,"span",38),d(2),a()()}if(i&2){let e=c.$implicit,t=h(3);p("ngClass","status-"+e.availabilityStatus)("ngStyle",t.getBlockStyle(e))("title",t.getBlockTooltip(e)),r(2),y(e.title)}}function Et(i,c){if(i&1&&(s(0,"div",28)(1,"div",29)(2,"p",30),d(3),a(),s(4,"p",31),g(5,"span",32),d(6),a()(),s(7,"div",33),M(8,Dt,1,5,"div",34,N),M(10,Tt,1,1,"div",35,N),M(12,Ot,3,4,"button",40,gt),a()()),i&2){let e=c.$implicit,t=h(2);r(3),y(e.name),r(2),p("ngClass",e.status==="Active"?"dot-active":"dot-inactive"),r(),X(" ",e.capacity," ",e.enableTableManagement?"tables":"capacity"," "),r(2),k(t.gridLines),r(2),k(e.closedPeriods),r(2),k(e.blocks)}}function Pt(i,c){if(i&1&&(s(0,"div",25),g(1,"div",39),s(2,"div",27)(3,"span"),d(4,"Meetings"),a()(),M(5,Et,14,4,"div",28,ut),a()),i&2){let e=h();r(5),k(e.meetingLocations)}}function zt(i,c){i&1&&(s(0,"p",26),d(1,"No scheduled activities for this date."),a())}function Ft(i,c){if(i&1&&(s(0,"span"),d(1),a()),i&2){let e=h(2);r(),E("",e.selectedLocationCapacity," tables \u2022 ")}}function It(i,c){if(i&1&&(s(0,"div",53)(1,"p",54),d(2),a(),s(3,"p",55),g(4,"cnp-icon",56),d(5," Available"),a()()),i&2){let e=h().$implicit;r(2),y(e.name)}}function Nt(i,c){if(i&1&&(s(0,"div",58)(1,"div",59)(2,"p",60),d(3),a()(),s(4,"div",61)(5,"p",62),d(6),a()()()),i&2){let e=c.$implicit,t=h(5);r(3),y(e.name),r(3),y(t.formatMeetingTime(e.startTime,e.endTime))}}function $t(i,c){if(i&1&&(s(0,"div")(1,"p",57),d(2),a(),M(3,Nt,7,2,"div",58,N),a()),i&2){let e=h().$implicit;r(2),y(e.name),r(),k(e.meetings)}}function Bt(i,c){if(i&1&&(s(0,"div",52),T(1,It,6,1,"div",53)(2,$t,5,1,"div"),a()),i&2){let e=c.$implicit;r(),O(e.available?1:2)}}function At(i,c){if(i&1&&(s(0,"div",51),M(1,Bt,3,1,"div",52,N),a()),i&2){let e=h(2);r(),k(e.selectedTables)}}function Rt(i,c){if(i&1&&(s(0,"div",52)(1,"div",58)(2,"div",59)(3,"p",60),d(4),a()(),s(5,"div",61)(6,"p",62),d(7),a()()()()),i&2){let e=c.$implicit,t=h(3);r(4),y(e.name),r(3),y(t.formatMeetingTime(e.startTime,e.endTime))}}function Ht(i,c){if(i&1&&(s(0,"div",51),M(1,Rt,8,2,"div",52,N),a()),i&2){let e=h(2);r(),k(e.selectedBlock==null?null:e.selectedBlock.meetings)}}function Vt(i,c){if(i&1){let e=H();s(0,"div",42)(1,"div")(2,"h5",43),d(3),a(),s(4,"p",44),T(5,Ft,2,1,"span"),d(6),a()(),s(7,"cnp-button",45),b("click",function(){let n=L(e).$implicit;return w(n.dismiss())}),g(8,"cnp-icon",46),a()(),s(9,"div",47)(10,"div",48)(11,"p",49),d(12),a(),s(13,"p",50),d(14,"Showing meetings active during this time slot"),a()(),T(15,At,3,0,"div",51)(16,Ht,3,0,"div",51),a()}if(i&2){let e=h();r(3),y(e.selectedLocationName),r(2),O(e.selectedTablesEnabled?5:-1),r(),E(" ",e.selectedDate==null?null:e.selectedDate.format("ddd, MMM D")," "),r(),p("iconOnly",!0),r(5),X(" ",e.selectedBlock==null||e.selectedBlock.startTime==null?null:e.selectedBlock.startTime.format("hh:mm A")," \u2013 ",e.selectedBlock==null||e.selectedBlock.endTime==null?null:e.selectedBlock.endTime.format("hh:mm A")," "),r(3),O(e.selectedTablesEnabled?15:16)}}var ht=(()=>{class i{constructor(e,t,n){this.eventService=e,this.modalService=t,this.locationsService=n,this.locations=[],this.sessionLocations=[],this.meetingLocations=[],this.hourMarks=[],this.gridLines=[],this.timelineStartHour=8,this.timelineEndHour=20,this.totalHours=12,this.timelineMinWidth=1920,this.activeLocationCount=0,this.totalLocationCount=0,this.utilizationPercent=0,this.minDate="",this.maxDate="",this.selectedBlock=null,this.selectedLocationName="",this.selectedLocationCapacity=0,this.selectedTablesEnabled=!1,this.selectedTables=[]}ngOnInit(){this.timezone=this.eventService.data?.timezone||"UTC";let e=this.eventService.data;this.eventStartDate=this.toEventLocalDay(e?.startDate||e?.startTime),this.eventEndDate=this.toEventLocalDay(e?.endD
1ate||e?.endTime);let t=_.default.tz(this.timezone);t.isBefore(this.eventStartDate)?this.selectedDate=this.eventStartDate.clone().startOf("day"):t.isAfter(this.eventEndDate)?this.selectedDate=this.eventEndDate.clone().startOf("day"):this.selectedDate=t.clone().startOf("day"),this.setupDatePicker(),this.generateHourMarks(),this.processLocations()}ngOnChanges(e){e.locations&&!e.locations.firstChange&&this.processLocations()}get isFirstDay(){return this.selectedDate?.isSame(this.eventStartDate,"day")}get isLastDay(){return this.selectedDate?.isSame(this.eventEndDate,"day")}get selectedDateIso(){return this.selectedDate?.format(K)||""}navigateDay(e){let t=this.selectedDate.clone().add(e,"day");t.isBefore(this.eventStartDate,"day")||t.isAfter(this.eventEndDate,"day")||(this.selectedDate=t,this.processLocations())}onDateInput(e){let t=_.default.tz(e.value,K,!0,this.timezone);if(!t.isValid()||t.isBefore(this.eventStartDate,"day")||t.isAfter(this.eventEndDate,"day")){e.value=this.selectedDateIso;return}this.selectedDate=t.startOf("day"),this.processLocations()}processLocations(){if(!this.locations?.length||!this.selectedDate)return;this.calculateTimelineRange(),this.generateHourMarks();let e=[],t=[],n=0;for(let o of this.locations){if(o.status!=="Active")continue;let l=this.getBookingsForDate(o),u=this.getClosedPeriods(o),v=this.buildTimeBlocks(o,l),x=this.locationsService.getTableNames(o),m={pk:o.PK,name:o.name,usage:o.usage,capacity:o.capacity,status:o.status,blocks:v,closedPeriods:u,enableTableManagement:!!o.enableTableManagement,tableNames:x};o.usage==="Sessions"?e.push(m):t.push(m),v.length>0&&n++}this.sessionLocations=e,this.meetingLocations=t,this.activeLocationCount=n,this.totalLocationCount=e.length+t.length,this.utilizationPercent=this.totalLocationCount>0?Math.round(n/this.totalLocationCount*100):0}getBookingsForDate(e){return(e.bookings||[]).filter(t=>_.default.tz(t.startTime,this.timezone).isSame(this.selectedDate,"day"))}getClosedPeriods(e){if(!e.timeAvailability?.length)return[];let t=this.selectedDate.clone().startOf("day"),n=this.selectedDate.clone().endOf("day"),o=e.timeAvailability.filter(f=>{let C=_.default.tz(f.startTimeUtc,this.timezone),D=_.default.tz(f.endTimeUtc,this.timezone);return C.isSame(this.selectedDate,"day")||C.isBefore(n)&&D.isAfter(t)});if(o.length===0)return[];let l=[],u=this.selectedDate.clone().hour(this.timelineStartHour).minute(0),v=this.selectedDate.clone().hour(this.timelineEndHour).minute(0),x=o.map(f=>{let C=_.default.tz(f.startTimeUtc,this.timezone),D=_.default.tz(f.endTimeUtc,this.timezone);return{start:C.isBefore(t)?t.clone():C,end:D.isAfter(n)?n.clone():D}}).sort((f,C)=>f.start.diff(C.start)),m=u.clone();for(let f of x)m.isBefore(f.start)&&l.push({start:m.clone(),end:f.start.clone()}),f.end.isAfter(m)&&(m=f.end.clone());return m.isBefore(v)&&l.push({start:m.clone(),end:v.clone()}),l}buildTimeBlocks(e,t){return e.usage==="Sessions"?this.buildSessionBlocks(t):this.buildMeetingBlocks(e,t)}buildSessionBlocks(e){return e.map(t=>({startTime:_.default.tz(t.startTime,this.timezone),endTime:_.default.tz(t.endTime,this.timezone),title:t.name,bookingId:t.id,type:"session"}))}buildMeetingBlocks(e,t){if(t.length===0)return[];let n=30,o=this.selectedDate.clone().hour(this.timelineStartHour).minute(0),l=this.selectedDate.clone().hour(this.timelineEndHour).minute(0),u=e.capacity||1,v=[],x=o.clone();for(;x.isBefore(l);){let m=x.clone(),f=x.clone().add(n,"minutes"),C=t.filter(I=>{let Z=_.default.tz(I.startTime,this.timezone),W=_.default.tz(I.endTime,this.timezone);return Z.isBefore(f)&&W.isAfter(m)}),D=C.length;if(D>0){let I=Math.max(0,u-D),Z=u>0?I/u*100:0,W="available";I===0?W="booked":Z<=30&&(W="limited"),v.push({startTime:m,endTime:f,title:`${D}/${u}`,bookingId:"",type:"meeting",usedSlots:D,totalSlots:u,availabilityPercent:Z,availabilityStatus:W,meetings:C.map(q=>({id:q.id,name:q.name,startTime:q.startTime,endTime:q.endTime,tableNumber:q.tableNumber}))})}x.add(n,"minutes")}return v}getBlockStyle(e){let t=this.timeToPercent(e.startTime),o=this.timeToPercent(e.endTime)-t;return{left:`${t}%`,width:`calc(${Math.max(o,1)}% - 1px)`}}getClosedStyle(e){let t=this.timeToPercent(e.start),n=this.timeToPercent(e.end);return{left:`${t}%`,width:`${Math.max(n-t,0)}%`}}getBlockTooltip(e){let t=e.startTime.format("h:mm A"),n=e.endTime.format("h:mm A");return e.type==="session"?`${e.title}
2${t} - ${n}`:`${t} - ${n}
3${e.usedSlots}/${e.totalSlots} booked
4Click to view all meetings`}getSessionLink(e){return e.type!=="session"?"":`../sessions/${e.bookingId}`}openMeetingModal(e,t,n){e.type!=="meeting"||!e.meetings?.length||(this.selectedBlock=e,this.selectedLocationName=t.name,this.selectedLocationCapacity=t.capacity,this.selectedTablesEnabled=t.enableTableManagement,this.selectedTables=t.enableTableManagement?this.buildTableView(e,t):[],this.modalService.open(n,fe(he({},G),{centered:!0,size:"lg"})))}formatMeetingTime(e,t){let n=_.default.tz(e,this.timezone).format("h:mm A"),o=_.default.tz(t,this.timezone).format("h:mm A");return`${n} \u2013 ${o}`}buildTableView(e,t){let n=[];for(let o=0;o<t.capacity;o++){let l=o+1,u=t.tableNames[o]||`Table ${l}`,v=(e.meetings||[]).filter(x=>x.tableNumber===l);n.push({name:u,available:v.length===0,meetings:v})}return n}calculateTimelineRange(){this.timelineStartHour=8,this.timelineEndHour=20;for(let e of this.locations){if(e.status!=="Active")continue;let t=this.getBookingsForDate(e);for(let n of t){let o=_.default.tz(n.startTime,this.timezone),l=_.default.tz(n.endTime,this.timezone);this.timelineStartHour=Math.min(this.timelineStartHour,o.hours()),this.timelineEndHour=Math.max(this.timelineEndHour,l.hours()+(l.minutes()>0?1:0))}if(e.timeAvailability?.length){let n=this.selectedDate.clone().startOf("day"),o=this.selectedDate.clone().endOf("day");
4for(let l of e.timeAvailability){let u=_.default.tz(l.startTimeUtc,this.timezone),v=_.default.tz(l.endTimeUtc,this.timezone);if(!(u.isBefore(o)&&v.isAfter(n)))continue;let x=u.isBefore(n)?n:u,m=v.isAfter(o)?o:v;this.timelineStartHour=Math.min(this.timelineStartHour,x.hours()),this.timelineEndHour=Math.max(this.timelineEndHour,m.hours()+(m.minutes()>0?1:0))}}}this.totalHours=this.timelineEndHour-this.timelineStartHour,this.timelineMinWidth=this.totalHours*160}timeToPercent(e){let t=this.timelineStartHour*60,n=this.timelineEndHour*60,o=n-t,l=e.hours()*60+e.minutes();return(Math.max(t,Math.min(n,l))-t)/o*100}generateHourMarks(){this.hourMarks=[],this.gridLines=[];let e=this.totalHours*60;for(let t=this.timelineStartHour;t<=this.timelineEndHour;t++){let n=t%12===0?12:t%12,o=t<12?"AM":"PM";this.hourMarks.push({hour:t,label:`${n<10?"0":""}${n}:00 ${o}`,offsetPercent:(t-this.timelineStartHour)/this.totalHours*100})}for(let t=0;t<=e;t+=30)this.gridLines.push({offsetPercent:t/e*100,isHour:t%60===0})}setupDatePicker(){this.minDate=this.eventStartDate.format(K),this.maxDate=this.eventEndDate.format(K)}toEventLocalDay(e){let t=_.default.utc(e).format(K);return _.default.tz(t,this.timezone).startOf("day")}static{this.\u0275fac=function(t){return new(t||i)(S(Oe),S(oe),S(U))}}static{this.\u0275cmp=A({type:i,selectors:[["app-daily-schedule"]],inputs:{locations:"locations"},features:[ve],decls:48,vars:16,consts:[["meetingModal",""],[1,"daily-schedule"],[1,"schedule-header"],[1,"schedule-title"],[1,"schedule-controls"],[1,"stat"],[1,"legend"],[1,"legend-item"],[1,"legend-color","session-color"],[1,"legend-color","available-color"],[1,"legend-color","limited-color"],[1,"legend-color","booked-color"],[1,"legend-color","closed-color"],[1,"date-nav"],["variant","ghost","size","sm","ariaLabel","Previous day",3,"click","iconOnly","disabled"],["name","chevron-start"],["cnpInput","","type","date","aria-label","Schedule date",1,"date-input",3,"change","min","max","value"],["variant","ghost","size","sm","ariaLabel","Next day",3,"click","iconOnly","disabled"],["name","chevron-end"],[1,"timeline-container"],[1,"timeline-inner",3,"ngStyle"],[1,"timeline-header"],[1,"location-label-header"],[1,"timeline-hours"],[1,"hour-mark",3,"ngStyle"],[1,"section-group"],[1,"schedule-empty"],[1,"section-label"],[1,"location-row"],[1,"location-info"],[1,"location-name"],[1,"location-capacity"],[1,"capacity-dot",3,"ngClass"],[1,"timeline-track"],[1,"grid-line",3,"grid-line-hour","ngStyle"],[1,"closed-block",3,"ngStyle"],[1,"session-block",3,"ngStyle","title","routerLink"],[1,"grid-line",3,"ngStyle"],[1,"block-title"],[1,"section-divider"],["type","button",1,"meeting-block",3,"ngClass","ngStyle","title"],["type","button",1,"meeting-block",3,"click","ngClass","ngStyle","title"],[1,"modal-header"],[1,"modal-title"],[1,"modal-subtitle"],["variant","ghost","size","sm","ariaLabel","Close",1,"dialog-close",3,"click","iconOnly"],["name","close"],[1,"modal-body","p-0"],[1,"slot-header"],[1,"slot-time"],[1,"slot-description"],[1,"table-list"],[1,"table-item"],[1,"table-row"],[1,"table-number"],[1,"table-available"],["name","check"],[1,"table-number","table-number-booked"],[1,"table-meeting"],[1,"meeting-details"],[1,"meeting-name"],[1,"meeting-time-info"],[1,"meeting-time"]],template:function(t,n){if(t&1){let o=H();s(0,"div",1)(1,"div",2)(2,"h2",3),d(3,"Daily schedule"),a(),s(4,"div",4)(5,"span",5)(6,"strong"),d(7),a(),d(8," Active "),a(),s(9,"span",5)(10,"strong"),d(11),a(),d(12," Utilization "),a(),s(13,"div",6)(14,"span",7),g(15,"span",8),d(16," Session "),a(),s(17,"span",7),g(18,"span",9),d(19," Available "),a(),s(20,"span",7),g(21,"span",10),d(22," Limited "),a(),s(23,"span",7),g(24,"span",11),d(25," Booked "),a(),s(26,"span",7),g(27,"span",12),d(28," Closed "),a()(),s(29,"div",13)(30,"cnp-button",14),b("click",function(){return L(o),w(n.navigateDay(-1))}),g(31,"cnp-icon",15),a(),s(32,"input",16),b("change",function(u){return L(o),w(n.onDateInput(u.target))}),a(),s(33,"cnp-button",17),b("click",function(){return L(o),w(n.navigateDay(1))}),g(34,"cnp-icon",18),a()()()(),s(35,"div",19)(36,"div",20)(37,"div",21)(38,"div",22),d(39,"Location"),a(),s(40,"div",23),M(41,yt,2,4,"div",24,St),a()(),T(43,wt,6,0,"div",25),T(44,Pt,7,0,"div",25),a()(),T(45,zt,2,0,"p",26),a(),J(46,Vt,17,7,"ng-template",null,0,Se)}t&2&&(r(7),X("",n.activeLocationCount,"/",n.totalLocationCount),r(4),E("",n.utilizationPercent,"%"),r(19),p("iconOnly",!0)("disabled",n.isFirstDay),r(2),p("min",n.minDate)("max",n.maxDate)("value",n.selectedDateIso),r(),p("iconOnly",!0)("disabled",n.isLastDay),r(3),p("ngStyle",$(14,Ct,n.timelineMinWidth+180)),r(5),k(n.hourMarks),r(2),O(n.sessionLocations.length?43:-1),r(),O(n.meetingLocations.length?44:-1),r(),O(!n.sessionLocations.length&&!n.meetingLocations.length&&(n.locations!=null&&n.locations.length)?45:-1))},dependencies:[ye,xe,te,j,V,ze],styles:[".daily-schedule[_ngcontent-%COMP%]{margin-bottom:var(--cnp-space-card-gap);background:var(--cnp-color-bg-card);border:1px solid var(--cnp-color-border-subtle);border-radius:var(--cnp-radius-container);box-shadow:var(--cnp-shadow-low)}.schedule-header[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-4);align-items:center;justify-content:space-between;padding:var(--cnp-space-4) var(--cnp-space-5);border-bottom:1px solid var(--cnp-color-border-subtle)}.schedule-title[_ngcontent-%COMP%]{margin:0;color:var(--cnp-color-text-heading);font-size:var(--cnp-font-size-section);font-weight:var(--cnp-font-weight-semibold)}
4.schedule-controls[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-5);align-items:center}.stat[_ngcontent-%COMP%]{color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label)}.legend[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-3);color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label)}.legend-item[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-1);align-items:center}.legend-color[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:var(--cnp-radius-element)}.legend-color.session-color[_ngcontent-%COMP%]{background:var(--cnp-data-series-1)}.legend-color.available-color[_ngcontent-%COMP%]{background:var(--cnp-color-success-fg)}.legend-color.limited-color[_ngcontent-%COMP%]{background:var(--cnp-color-warning-fg)}.legend-color.booked-color[_ngcontent-%COMP%]{background:var(--cnp-color-danger)}.legend-color.closed-color[_ngcontent-%COMP%]{background:repeating-linear-gradient(-45deg,var(--cnp-color-border),var(--cnp-color-border) 2px,var(--cnp-color-bg-card) 2px,var(--cnp-color-bg-card) 6px);border:1px solid var(--cnp-color-border)}.date-nav[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-1);align-items:center}.date-input[_ngcontent-%COMP%]{width:168px}.timeline-container[_ngcontent-%COMP%]{overflow-x:auto}.timeline-header[_ngcontent-%COMP%]{display:flex;background:var(--cnp-color-bg-surface);border-bottom:1px solid var(--cnp-color-border-subtle)}.location-label-header[_ngcontent-%COMP%]{position:sticky;left:0;z-index:2;min-width:180px;max-width:180px;padding:var(--cnp-space-2) var(--cnp-space-3);color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label);font-weight:var(--cnp-font-weight-semibold);background:var(--cnp-color-bg-surface)}.timeline-hours[_ngcontent-%COMP%]{position:relative;flex:1;height:32px}.hour-mark[_ngcontent-%COMP%]{position:absolute;top:var(--cnp-space-2);color:var(--cnp-color-text-muted);font-size:var(--cnp-font-size-label);white-space:nowrap}.hour-mark[_ngcontent-%COMP%]:first-child{transform:translate(0)}.hour-mark[_ngcontent-%COMP%]:not(:first-child){transform:translate(-50%)}.section-group[_ngcontent-%COMP%]{border-bottom:1px solid var(--cnp-color-border-subtle)}.section-label[_ngcontent-%COMP%]{display:flex;color:var(--cnp-color-text-heading);font-size:var(--cnp-font-size-label);font-weight:var(--cnp-font-weight-bold);background:var(--cnp-color-bg-surface);border-bottom:1px solid var(--cnp-color-border-subtle)}.section-label[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{position:sticky;left:0;z-index:2;padding:var(--cnp-space-2) var(--cnp-space-3);background:var(--cnp-color-bg-surface)}.section-divider[_ngcontent-%COMP%]{height:3px;background:var(--cnp-color-border-subtle)}.location-row[_ngcontent-%COMP%]{display:flex;min-height:48px;border-bottom:1px solid var(--cnp-color-border-subtle)}.location-row[_ngcontent-%COMP%]:last-child{border-bottom:none}.location-info[_ngcontent-%COMP%]{position:sticky;left:0;z-index:2;display:flex;flex-direction:column;justify-content:center;min-width:180px;max-width:180px;padding:var(--cnp-space-2) var(--cnp-space-3);background:var(--cnp-color-bg-card)}.location-name[_ngcontent-%COMP%]{margin:0;overflow:hidden;color:var(--cnp-color-text-body);font-size:var(--cnp-font-size-label);font-weight:var(--cnp-font-weight-semibold);white-space:nowrap;text-overflow:ellipsis}.location-capacity[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-1);align-items:center;margin:0;color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label)}.capacity-dot[_ngcontent-%COMP%]{width:6px;height:6px;border-radius:var(--cnp-radius-full)}.capacity-dot.dot-active[_ngcontent-%COMP%]{background:var(--cnp-color-success-fg)}.capacity-dot.dot-inactive[_ngcontent-%COMP%]{background:var(--cnp-color-danger)}.timeline-track[_ngcontent-%COMP%]{position:relative;flex:1;margin:var(--cnp-space-1) 0;background:var(--cnp-color-bg-surface);border-left:1px solid var(--cnp-color-border-subtle)}.grid-line[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;width:1px;background:var(--cnp-color-border-subtle);opacity:.5}.grid-line.grid-line-hour[_ngcontent-%COMP%]{opacity:1}.session-block[_ngcontent-%COMP%]{position:absolute;top:4px;bottom:4px;z-index:1;display:flex;align-items:center;padding:0 var(--cnp-space-2);overflow:hidden;color:var(--cnp-color-on-action);text-decoration:none;background:var(--cnp-data-series-1);border-radius:var(--cnp-radius-element);cursor:pointer}.session-block[_ngcontent-%COMP%]:hover{color:var(--cnp-color-on-action);opacity:.85}.block-title[_ngcontent-%COMP%]{overflow:hidden;font-size:var(--cnp-font-size-label);font-weight:var(--cnp-font-weight-medium);white-space:nowrap;text-overflow:ellipsis}.meeting-block[_ngcontent-%COMP%]{position:absolute;top:4px;bottom:4px;z-index:1;display:flex;align-items:center;justify-content:center;min-width:40px;padding:0 var(--cnp-space-1);color:var(--cnp-color-on-action);font-family:inherit;font-size:var(--cnp-font-size-label);font-weight:var(--cnp-font-weight-semibold);border:0;border-radius:var(--cnp-radius-element);cursor:pointer}.meeting-block[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--cnp-color-focus-ring);outline-offset:2px}.meeting-block[_ngcontent-%COMP%]:hover{opacity:.85}.meeting-block.status-available[_ngcontent-%COMP%]{background:var(--cnp-color-success-fg)}.meeting-block.status-limited[_ngcontent-%COMP%]{background:var(--cnp-color-warning-fg)}.meeting-block.status-booked[_ngcontent-%COMP%]{background:var(--cnp-color-danger)}.closed-block[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(-45deg,var(--cnp-color-border),var(--cnp-color-border) 2px,var(--cnp-color-bg-surface) 2px,var(--cnp-color-bg-surface) 6px);border-top:1px solid var(--cnp-color-border);border-bottom:1px solid var(--cnp-color-border);opacity:.7}.schedule-empty[_ngcontent-%COMP%]{padding:var(--cnp-space-6);margin:0;color:var(--cnp-color-text-muted);text-align:center}@media (width <= 1200px){.schedule-header[_ngcontent-%COMP%]{flex-direction:column;gap:var(--cnp-space-3);align-items:flex-start}
4.schedule-controls[_ngcontent-%COMP%], .legend[_ngcontent-%COMP%]{flex-wrap:wrap}}@media (width <= 768px){.location-info[_ngcontent-%COMP%], .location-label-header[_ngcontent-%COMP%]{min-width:120px;max-width:120px}}.modal-subtitle[_ngcontent-%COMP%]{margin:var(--cnp-space-1) 0 0;color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label)}.slot-header[_ngcontent-%COMP%]{padding:var(--cnp-space-4) var(--cnp-space-5);border-bottom:1px solid var(--cnp-color-border-subtle)}.slot-time[_ngcontent-%COMP%]{margin:0;color:var(--cnp-color-text-heading);font-size:var(--cnp-font-size-section);font-weight:var(--cnp-font-weight-semibold)}.slot-description[_ngcontent-%COMP%]{margin:var(--cnp-space-1) 0 0;color:var(--cnp-color-text-muted);font-size:var(--cnp-font-size-label)}.table-list[_ngcontent-%COMP%]{max-height:400px;overflow-y:auto}.table-item[_ngcontent-%COMP%]{border-bottom:1px solid var(--cnp-color-border-subtle)}.table-item[_ngcontent-%COMP%]:last-child{border-bottom:none}.table-row[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-4);align-items:center;padding:var(--cnp-space-3) var(--cnp-space-5)}.table-number[_ngcontent-%COMP%]{min-width:70px;margin:0;color:var(--cnp-color-text-body);font-weight:var(--cnp-font-weight-semibold)}.table-number-booked[_ngcontent-%COMP%]{padding:var(--cnp-space-3) var(--cnp-space-5) 0}.table-available[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-1);align-items:center;margin:0;color:var(--cnp-color-success-fg);font-weight:var(--cnp-font-weight-medium)}.table-meeting[_ngcontent-%COMP%]{display:flex;gap:var(--cnp-space-3);align-items:center;justify-content:space-between;padding:var(--cnp-space-3) var(--cnp-space-4);margin:var(--cnp-space-2) var(--cnp-space-5) var(--cnp-space-3);background:var(--cnp-color-info-bg);border-left:3px solid var(--cnp-color-info-fg);border-radius:0 var(--cnp-radius-element) var(--cnp-radius-element) 0}.meeting-details[_ngcontent-%COMP%]{flex:1}.meeting-name[_ngcontent-%COMP%]{margin:0;color:var(--cnp-color-text-body);font-weight:var(--cnp-font-weight-semibold)}.meeting-time-info[_ngcontent-%COMP%]{text-align:right}.meeting-time[_ngcontent-%COMP%]{margin:0;color:var(--cnp-color-text-secondary);font-size:var(--cnp-font-size-label)}"]})}}return i})();var jt=i=>[i];function Ut(i,c){if(i&1){let e=H();s(0,"cnp-bulk-bar",21),b("clear",function(){L(e);let n=h();return w(n.clearSelection())}),s(1,"cnp-button",22),b("click",function(){L(e);let n=h();return w(n.bulkEnable())}),g(2,"cnp-icon",23),d(3," Enable "),a(),s(4,"cnp-button",22),b("click",function(){L(e);let n=h();return w(n.bulkDisable())}),g(5,"cnp-icon",24),d(6," Disable "),a(),s(7,"cnp-button",25),b("click",function(){L(e);let n=h();return w(n.bulkDelete())}),g(8,"cnp-icon",26),d(9," Delete "),a()()}if(i&2){let e=h();p("count",e.selectedRows().length),r(),p("disabled",e.actionLoading()),r(3),p("disabled",e.actionLoading()),r(3),p("disabled",e.actionLoading())}}function Kt(i,c){if(i&1&&(s(0,"p",12),g(1,"cnp-icon",27),d(2),a()),i&2){let e=h();r(2),E(" ",e.reorderLockReason," ")}}function Wt(i,c){if(i&1&&(s(0,"a",28),d(1),a()),i&2){let e=c.$implicit;p("routerLink",$(2,jt,e.PK)),r(),y(e.name)}}function qt(i,c){if(i&1&&d(0),i&2){let e=c.value;E(" ",e||"\u2014"," ")}}function Gt(i,c){if(i&1&&(s(0,"cnp-status-pill",29),d(1),a()),i&2){let e=c.value,t=h();p("tone",t.statusTone(e)),r(),y(e)}}function Yt(i,c){if(i&1&&d(0),i&2){let e=c.$implicit;E(" ",e.bookings.length," ")}}function Qt(i){return!(i instanceof Error)}var ce=(()=>{class i{constructor(e,t,n,o,l,u,v,x){this.modal=e,this.route=t,this.router=n,this.locationsService=o,this.utilitiesService=l,this.toastService=u,this.confirmService=v,this.confirmAction=x,this.columns=tt,this.usageFilterItems=Xe,this.statusTone=et,this.rowKey=m=>m.PK,this.selectLabel=m=>`Select ${m.name}`,this.reorderLabel=m=>`Reorder ${m.name}`,this.locations=z([]),this.isLoading=z(!1),this.isSortLoading=z(!1),this.actionLoading=z(!1),this.usageFilter=z(Y),this.searchFilter=z(""),this.pageSize=z(Je),this.selected=z(new Set),this.matchedRows=F(()=>{let m=this.usageFilter(),f=this.searchFilter();return this.locations().filter(C=>m===Y||C.usage===m?f?[C.name,C.notes].some(I=>I&&I.toLowerCase().includes(f)):!0:!1)}
4),this.page=me({source:()=>({filter:`${this.usageFilter()}|${this.searchFilter()}`,count:this.matchedRows().length,size:this.pageSize()}),computation:(m,f)=>{if(!f||m.filter!==f.source.filter)return 1;let C=Math.max(1,Math.ceil(m.count/Math.max(1,m.size)));return Math.min(f.value,C)}}),this.rows=F(()=>nt(this.matchedRows(),this.page(),this.pageSize())),this.selectedRows=F(()=>{let m=this.selected();return this.locations().filter(f=>m.has(f.PK))}),this.hasFilters=F(()=>!!this.searchFilter()||this.usageFilter()!==Y),this.emptyHeading=F(()=>this.hasFilters()?"No locations match your filters":"No locations yet"),this.emptyDescription=F(()=>this.hasFilters()?"Try a different term or usage, or clear the filters to see every location.":"Locations you create will appear here, ready to hold sessions and meetings."),this.emptyActionLabel=F(()=>this.hasFilters()?"Clear filters":"Create location"),this.reorderLocked=F(()=>this.hasFilters()),this.reorderLockReason="Reordering is off while a filter is applied. Clear the search and the usage filter to change the order.",this.pendingPageOrder=me({source:()=>({slice:this.rows(),locked:this.reorderLocked()}),computation:()=>null}),this.subscriptions$=[]}ngOnInit(){let e=this.locationsService.onLocationsChanged(t=>{this.locations.set(t);let n=new Set(t.map(o=>o.PK));this.selected.update(o=>new Set([...o].filter(l=>n.has(l))))});this.subscriptions$.push(e),this.isLoading.set(!0),this.locationsService.loadData().finally(()=>{this.isLoading.set(!1)})}ngOnDestroy(){this.subscriptions$.forEach(e=>e.unsubscribe())}onSearchChange(e){this.searchFilter.set(e.trim().toLowerCase())}onUsageFilter(e){this.usageFilter.set(e)}onSelectionChange(e){this.selected.set(new Set(e))}clearSelection(){this.selected.set(new Set)}onEmptyAction(){if(this.hasFilters()){this.searchFilter.set(""),this.usageFilter.set(Y);return}this.addLocation()}addLocation(){return P(this,null,function*(){let e=this.modal.open(le,G),t=this.locations(),n=t[t.length-1];e.componentInstance.lastSortOrderNumber=n?n.sortOrder:0;let o;try{o=yield e.result}catch(l){Qt(l)||console.error(l);return}this.router.navigate([o.PK],{relativeTo:this.route})})}onReordered(e){let t=this.pendingPageOrder()??this.rows(),n=it(t,e);if(n){let o=this.pageOffset(),l=e[n.currentIndex];l.previousIndex=n.previousIndex+o,l.currentIndex=n.currentIndex+o}this.pendingPageOrder.set([...e])}onReorderCancelled(){this.pendingPageOrder.set(null),this.locationsService.loadData()}onOrderSaved(e){return P(this,null,function*(){this.pendingPageOrder.set(null);let t=this.fullOrder(e);t.length&&(this.isSortLoading.set(!0),yield this.locationsService.sortLocation([...t]).then(n=>{if(n.success)this.locationsService.loadData();else throw new Error(n.message)}).catch(()=>{this.utilitiesService.alert({header:"Failed to change order.",message:"Something went wrong, please try again."},G),this.locationsService.loadData()}).finally(()=>{this.isSortLoading.set(!1)}))})}bulkDelete(){return P(this,null,function*(){let e=this.selectedRows(),t=e.length,n=t===1?"location":"locations";if(this.actionLoading.set(!0),!(yield this.confirmService.ask({heading:`Delete ${t} ${n}?`,consequence:`This permanently deletes ${t} ${n} and everything booked into them. This cannot be undone.`,confirmLabel:`Delete ${n}`}))){this.actionLoading.set(!1);return}this.locationsService.bulkDelete([...e]).then(l=>{if(l.success)this.toastService.showSuccess("Success",`Successfully deleted ${t} locations.`),this.locationsService.loadData();else throw new Error(l.message)}).catch(l=>{this.toastService.showDanger("Failed",`Failed to delete location. ${l.message}`)}).finally(()=>{this.actionLoading.set(!1)})})}bulkEnable(){return P(this,null,function*(){yield this.handleBulkStatusChange("Active","Enable","Enabled")})}bulkDisable(){return P(this,null,function*(){yield this.handleBulkStatusChange("Inactive","Disable","Disabled")})}confirmStatusChange(e,t){let n=t===1?"location":"locations",o=e==="Enable"?"Active":"Inactive";return this.confirmAction.ask({heading:`${e} ${t} ${n}?`,consequence:`This sets ${t} ${n} to ${o}. You can change it back at any time.`,confirmLabel:`${e} ${n}`})}handleBulkStatusChange(e,t,n){return P(this,null,function*(){let o=this.selectedRows();if(!o.length)return;if(this.actionLoading.set(!0),!(yield this.confirmStatusChange(t,o.length))){this.actionLoading.set(!1);return}try{let u=yield this.locationsService.bulkUpdateStatus([...o],e);if(u?.error)throw new Error(u.error);let v=u?.success??o.length;this.toastService.showSuccess("Success",`${n} ${v} location(s)`),yield this.locationsService.loadData(),this.clearSelection()}catch(u){let v=t.toLowerCase();this.toastService.showDanger("Failed",`Failed to ${v} locations. ${u.message}`)}finally{this.actionLoading.set(!1)}})}pageOffset(){return this.pageSize()*(this.page()-1)}fullOrder(e){let t=this.matchedRows(),n=this.pageOffset();return[...t.slice(0,n),...e,...t.slice(n+e.length)]}static{this.\u0275fac=function(t){return new(t||i)(S(oe),S(Me),S(ke),S(U),S(Te),S(ae),S(Ke),S(ot))}}static{this.\u0275cmp=A({type:i,selectors:[["ng-component"]],decls:26,vars:27,consts:[[1,"container-fluid","py-3"],["heading","Locations"],["cnpButton","","variant","secondary","routerLink","workflow"],[3,"click"],["name","create"],[3,"locations"],["noun","location","pluralNoun","locations",3,"count"],["padding","none"],["ariaLabel","Location list controls",3,"count"],["ariaLabel","Filter by usage",3,"select","items"],["name","filter"],["label","Search locations","placeholder","Search locations...",1,"search",3,"valueChange","value"],[1,"reorder-lock-hint"],["ariaLabel","Locations","loadingLabel","Loading locations","reorderPendingLabel","Location order changed","reorderSaveLabel","Save changes","reorderCancelLabel","Cancel",3,"selectedChange","reordered","orderSaved","reorderCancelled","columns","rows","rowKey","selectable","selectionBar","selectLabel","selected","loading","reorderable","reorderLocked","reorderLockReason","reorderSaving","reorderLabel"],["cnpTableEmpty","",3,"icon","heading","description"],["cnpEmptyStatePrimary","",3,"click"],["cnpCell","name"],["cnpCell","notes"],["cnpCell","status"],["cnpCell","bookings"],["noun","locations",3,"pageChange","pageSizeChange","total","page","pageSize"],["noun","location","pluralNoun","locations",3,"clear","count"],["variant","secondary","size","sm",3,"click","disabled"],["name","status-active"],["name","circle"],["variant","danger","size","sm",3,"click","disabled"],["name","delete"],["name","info","size","sm"],[1,"record",3,"routerLink"],[3,"tone"]],template:function(t,n){t&1&&(s(0,"div",0)(1,"cnp-page-sections")(2,"cnp-page-header",1)(3,"a",2),d(4,"Meeting location workflow"),a(),s(5,"cnp-button",3),b("click",function(){return n.addLocation()}),g(6,"cnp-icon",4),d(7," Create "),a()(),g(8,"app-daily-schedule",5),T(9,Ut,10,4,"cnp-bulk-bar",6),s(10,"cnp-card",7)(11,"cnp-toolbar",8)(12,"cnp-dropdown",9),b("select",function(l){return n.onUsageFilter(l)}),g(13,"cnp-icon",10),d(14),a(),s(15,"cnp-search-field",11),b("valueChange",function(l){return n.onSearchChange(l)}),a()(),T(16,Kt,3,1,"p",12),s(17,"cnp-table",13),b("selectedChange",function(l){return n.onSelectionChange(l)})("reordered",function(l){return n.onReordered(l)})("orderSaved",function(l){return n.onOrderSaved(l)})("reorderCancelled",function(){return n.onReorderCancelled()}
4),s(18,"cnp-empty-state",14)(19,"cnp-button",15),b("click",function(){return n.onEmptyAction()}),d(20),a()(),J(21,Wt,2,4,"ng-template",16)(22,qt,1,1,"ng-template",17)(23,Gt,2,2,"ng-template",18)(24,Yt,1,1,"ng-template",19),a(),s(25,"cnp-paginator",20),Ce("pageChange",function(l){return pe(n.page,l)||(n.page=l),l})("pageSizeChange",function(l){return pe(n.pageSize,l)||(n.pageSize=l),l}),a()()()()),t&2&&(r(8),p("locations",n.locations()),r(),O(n.selectedRows().length?9:-1),r(2),p("count",n.matchedRows().length+" of "+n.locations().length),r(),p("items",n.usageFilterItems),r(2),E(" Filter: ",n.usageFilter()," "),r(),p("value",n.searchFilter()),r(),O(n.reorderLocked()&&n.rows().length?16:-1),r(),p("columns",n.columns)("rows",n.rows())("rowKey",n.rowKey)("selectable",!0)("selectionBar",!1)("selectLabel",n.selectLabel)("selected",n.selected())("loading",n.isLoading())("reorderable",!0)("reorderLocked",n.reorderLocked())("reorderLockReason",n.reorderLockReason)("reorderSaving",n.isSortLoading())("reorderLabel",n.reorderLabel),r(),p("icon",n.hasFilters()?"no-results":"inbox")("heading",n.emptyHeading())("description",n.emptyDescription()),r(2),y(n.emptyActionLabel()),r(5),p("total",n.matchedRows().length),be("page",n.page)("pageSize",n.pageSize))},dependencies:[te,Re,j,Be,He,Ie,Ue,V,Ne,$e,je,Fe,Pe,Ve,Ae,ht],styles:[".search[_ngcontent-%COMP%]{--cnp-search-field-width: 220px;min-width:0}.record[_ngcontent-%COMP%]{color:var(--cnp-color-link);font-weight:var(--cnp-font-weight-semibold);text-decoration:none}.record[_ngcontent-%COMP%]:hover{text-decoration:underline}.reorder-lock-hint[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--cnp-space-1);margin:0;padding:var(--cnp-space-1) var(--cnp-space-4);font-size:var(--cnp-font-size-label);color:var(--cnp-color-text-muted)}"]})}}return i})();var Zt=[{path:"",component:ce},{path:"workflow",loadChildren:()=>import("./chunk-AEYGHZFJ.js").then(i=>i.WorkflowModule)},{path:":id",loadChildren:()=>import("./chunk-2AMQVDEA.js").then(i=>i.ViewLocationModule)}],ft=(()=>{class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=R({type:i})}static{this.\u0275inj=B({imports:[ue.forChild(Zt),ue]})}}return i})();var ei=(()=>{class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=R({type:i})}static{this.\u0275inj=B({providers:[De()],imports:[ee,ne,ie,Le,re,We,qe,ft,mt,Ze,Qe,at,Ye,Ge,Ee,ce,le,ct,lt,st,rt]})}}return i})();export{ei as LocationsModule};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.