PageSourceSearch

https://webeco.nait.ca/_nuxt/B_UWB3A0.js

js nait.ca collected 2026-10-02 04:14:52 UTC 4,766 bytes, 1 lines download raw bytes

1import{j as O,n as E,o as n,c as r,d as l,H as x,$ as H,p as t,ae as R,F as m,D as S,N as Q,a8 as X,t as u,s as L,r as p,v as f,C as V,_ as Y}from"./-1zjGLeH.js";import{u as A}from"./UBkakzDZ.js";import"./CWEtnKaA.js";import"./CDFOVAVM.js";const G={class:"evac-page"},J={class:"search-section"},W={class:"search-panel"},Z={class:"search-row"},ee=["value"],le=["value"],te=["disabled"],oe={class:"search-panel"},ae={class:"search-row"},se=["disabled"],ne={key:0,class:"loading"},re={key:1},ie={key:0,class:"empty-state"},ue={class:"results-count"},ce={class:"evac-table"},de=["href"],ve={key:0,class:"pager"},be=["disabled"],he=["onClick"],me=["disabled"],_=20,pe=O({__name:"evacuation",async setup(fe){let c,g;const d=p(""),h=p("0"),v=p(""),s=p(1),U=[{value:"0",label:"All Floors"},{value:"01First Floor",label:"First Floor"},{value:"02Second Floor",label:"Second Floor"},{value:"03Third Floor",label:"Third Floor"},{value:"04Fourth Floor",label:"Fourth Floor"},{value:"05Fifth Floor",label:"Fifth Floor"},{value:"06Sixth Floor",label:"Sixth Floor"},{value:"07Seventh Floor",label:"Seventh Floor"},{value:"08Basement",label:"Basement"},{value:"09Elevator Lobby",label:"Elevator Lobby"},{value:"10Hanger",label:"Hanger"},{value:"11Muster Point",label:"Muster Point"},{value:"12Roof Top",label:"Roof Top"},{value:"13Sub Basement",label:"Sub Basement"}],T={"First Floor":1,"Second Floor":2,"Third Floor":3,"Fourth Floor":4,"Fifth Floor":5,"Sixth Floor":6,"Seventh Floor":7,Basement:8,"Elevator Lobby":9,Hanger:10,"Muster Point":11,"Roof Top":12,"Sub Basement":13},{data:j}=([c,g]=E(()=>A("/api/integration/evacuationmaps/buildings","$DHi0j8uXw6")),c=await c,g(),c),k=f(()=>j.value?.buildings??[]),P=k.value[0]??"";d.value=P;const F=p({building:P,floor:"0"}),{data:$,refresh:B,pending:N}=([c,g]=E(()=>A("/api/integration/evacuationmaps/search",{query:F},"$coN6ULmYin")),c=await c,g(),c);function z(){s.value=1,d.value=k.value[0]??"",h.value="0",v.value="",F.value={building:d.value,floor:"0"},B()}const b=f(()=>[...$.value?.results??[]].sort((a,o)=>{if(a.buildingName<o.buildingName)return-1;if(a.buildingName>o.buildingName)return 1;const e=T[a.floor]??99,i=T[o.floor]??99;return e!==i?e-i:a.title<o.title?-1:a.title>o.title?1:0})),y=f(()=>Math.ceil(b.value.length/_)),I=f(()=>{const a=(s.value-1)*_;return b.value.slice(a,a+_)}),K=f(()=>{const a=[],o=y.value,e=s.value;let i=Math.max(1,e-3),C=Math.min(o,i+6);C-i<6&&(i=Math.max(1,C-6));for(let M=i;M<=C;M++)a.push(M);return a});function w(a){a>=1&&a<=y.value&&(s.value=a,window.scrollTo({top:0,behavior:"smooth"}))}function q(){s.value=1,F.value={building:d.value,floor:h.value},B()}function D(){s.value=1,F.value={room:v.value},B()}return(a,o)=>(n(),r("div",G,[l("section",J,[l("div",W,[o[5]||(o[5]=l("label",{class:"label"},"Search by Building Name",-1)),l("div",Z,[x(l("select",{"onUpdate:modelValue":o[0]||(o[0]=e=>R(d)?d.value=e:null)},[(n(!0),r(m,null,S(t(k),e=>(n(),r("option",{key:e,value:e},u(e),9,ee))),128))],512),[[H,t(d)]]),x(l("select",{"onUpdate:modelValue":o[1]||(o[1]=e=>R(h)?h.value=e:null)},[(n(),r(m,null,S(U,e=>l("option",{key:e.value,value:e.value},u(e.label),9,le)),64))],512),[[H,t(h)]]),l("button",{class:"btn btn-search",disabled:t(N)||!t(d),onClick:q}," Search ",8,te)])]),l("div",oe,[o[6]||(o[6]=l("label",{class:"label"},"Search by Room Number",-1)),l("div",ae,[x(l("input",{"onUpdate:modelValue":o[2]||(o[2]=e=>R(v)?v.value=e:null),type:"text",class:"search-input",placeholder:"Enter room number...",onKeyup:X(D,["enter"])},null,544),[[Q,t(v)]]),l("button",{class:"btn btn-search",disabled:t(N)||!t(v),onClick:D}," Search ",8,se)])])]),l("div",{class:"clear-wrapper"},[l("button",{class:"btn btn-clear",onClick:z}," Clear Search ")]),t(N)?(n(),r("div",ne,"Searching...")):t($)?(n(),r("div",re,[t(b).length===0?(n(),r("div",ie," No Maps Available. ")):(n(),r(m,{key:1},[l("p",ue," Showing "+u((t(s)-1)*_+1)+"–"+u(Math.min(t(s)*_,t(b).length))+" of "+u(t(b).length)+" map"+u(t(b).length!==1?"s":""),1),l("table",ce,[o[7]||(o[7]=l("thead",null,[l("tr",null,[l("th",null,"Building Name"),l("th",null,"Floor"),l("th",null,"Map/Room")])],-1)),l("tbody",null,[(n(!0),r(m,null,S(t(I),(e,i)=>(n(),r("tr",{key:i,class:V(i%2===0?"row-alt":"")},[l("td",null,u(e.buildingName),1),l("td",null,u(e.floor),1),l("td",null,[l("a",{href:e.url,target:"_blank"},u(e.title),9,de)])],2))),128))])]),t(y)>1?(n(),r("div",ve,[l("button",{disabled:t(s)===1,onClick:o[3]||(o[3]=e=>w(t(s)-1))}," ← Prev ",8,be),(n(!0),r(m,null,S(t(K),e=>(n(),r("button",{key:e,class:V({active:e===t(s)}),onClick:i=>w(e)},u(e),11,he))),128)),l("button",{disabled:t(s)===t(y),onClick:o[4]||(o[4]=e=>w(t(s)+1))}," Next → ",8,me)])):L("",!0)],64))])):L("",!0)]))}}),Se=Y(pe,[["__scopeId","data-v-4ef47219"]]);export{Se as default};

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.