PageSourceSearch

https://www.ftu.org.hk/_nuxt/BR0ZF7Oi.js

js ftu.org.hk collected 2026-10-02 17:36:49 UTC 2,948 bytes, 1 lines download raw bytes

1import{d as P,f as $,c as m,i as f,S as v,l as C,o as h,m as s,p as l,w as y,y as L,t as g,q as r,D as B,z,v as D,e as M,V as A,b as E,W as U,_ as q}from"./rNMPrltl.js";import{_ as W}from"./gpKywMoy.js";import{s as j}from"./DFuLfMiF.js";const F={class:"search-box"},G={class:"search-section"},H={class:"search-container"},J={key:0,class:"search-dropdown"},O={class:"dropdown-text"},Q={class:"search-input-container"},R=["placeholder"],X={class:"search-btn-text"},Y=P({__name:"SearchBox",props:{typeList:{default:()=>[]},defaultTypeValue:{default:void 0},showSelect:{type:Boolean,default:!0},showClear:{type:Boolean,default:!1},placeholder:{default:void 0},showButton:{type:Boolean,default:!0},defaultKeyword:{default:""},mini:{type:Boolean,default:!1}},emits:["type-change","search","clear"],setup(u,{emit:b}){const{t:_}=$(),e=u,T=m(()=>e.placeholder?e.placeholder:_("counselingCenter.searchPlaceholder")),d=b,o=f(e.defaultTypeValue!==void 0&&typeof e.defaultTypeValue=="number"?e.defaultTypeValue:0),n=f(e.defaultKeyword),c=f(!1),x=m(()=>{if(!e.typeList||!Array.isArray(e.typeList)||e.typeList.length===0)return{columnName:"全部",value:""};const t=Math.max(0,Math.min(o.value,e.typeList.length-1));return e.typeList[t]||e.typeList[0]||{columnName:"全部",value:""}}),N=m(()=>!e.typeList||e.typeList.length===0?[{text:"全部",value:""}]:e.typeList.map(t=>({text:t.columnName,value:t.value}))),S=t=>{const a=t.selectedIndexes[0];o.value=a,c.value=!1,d("type-change",{index:o.value,item:e.typeList[a],keyword:n.value})},w=()=>{d("search",{keyword:n.value,type:x.value})},I=()=>{n.value="",d("clear")};return v(()=>e.defaultTypeValue,t=>{t!==void 0&&typeof t=="number"&&(o.value=t)},{immediate:!0}),v(()=>e.typeList,t=>{t&&t.length>0?o.value>=t.length&&(o.value=0):o.value=0},{immediate:!0}),v(()=>e.defaultKeyword,t=>{n.value=t}),(t,a)=>{const k=A,p=W,V=j,K=U;return h(),C("div",F,[s("div",G,[s("div",H,[u.showSelect?(h(),C("div",J,[s("div",{class:"dropdown-display",onClick:a[0]||(a[0]=i=>c.value=!0)},[s("span",O,g(x.value.columnName||"選擇分類"),1),l(p,null,{default:r(()=>[l(k,{name:"arrow-down",size:"12",color:"#E60013"})]),_:1})])])):L("",!0),y(s("div",Q,[y(s("input",{class:"search-input",type:"text",placeholder:T.value,"onUpdate:modelValue":a[1]||(a[1]=i=>n.value=i),onKeyup:z(w,["enter"])},null,40,R),[[D,n.value]]),l(p,null,{default:r(()=>[u.showClear&&n.value?(h(),E(k,{key:0,size:"16",name:"cross",onClick:I})):L("",!0)]),_:1})],512),[[B,!u.mini]])]),y(s("div",{class:"search-btn",onClick:w},[s("span",X,g(M(_)("common.search")),1)],512),[[B,!u.mini]])]),l(p,null,{default:r(()=>[l(K,{show:c.value,"onUpdate:show":a[3]||(a[3]=i=>c.value=i),position:"bottom"},{default:r(()=>[l(V,{columns:N.value,onConfirm:S,onCancel:a[2]||(a[2]=i=>c.value=!1),"default-index":o.value,"confirm-button-text":"確認"},null,8,["columns","default-index"])]),_:1},8,["show"])]),_:1})])}}}),ae=q(Y,[["__scopeId","data-v-5d89d6f6"]]);export{ae as _};

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.