(()=>{return(e,t)=>{const{NavbarComponent:s}=t.import("custom-navbar-component");class i extends s{constructor(){super();this.disabled=true;this.html=`\n
\n\n`;this.init()}async init(){const t=await SpinQuery.select("#custom-navbar-search");const s=t.querySelector("input[name='keyword']");t.addEventListener("submit",i=>{if(s.value===""){if(!e.hideTopSearch){t.querySelector(".recommended-target").click()}i.preventDefault();return false}if(/^av[\d]+$/i.test(s.value)){window.open(`https://www.bilibili.com/${s.value}`);i.preventDefault();return false}const a=e.searchHistory.find(e=>e.keyword===s.value);if(a){a.count++;a.date=(new Date).toJSON();console.log(a)}else{e.searchHistory.unshift({count:1,keyword:s.value,date:(new Date).toJSON()});console.log({count:1,keyword:s.value,date:(new Date).toJSON()})}e.searchHistory=e.searchHistory.slice(0,10);return true});if(!e.hideTopSearch){const e=await Ajax.getJson("https://api.bilibili.com/x/web-interface/search/default");if(e.code===0){s.setAttribute("placeholder",e.data.show_name);let i;if(e.data.url!==""){i=e.data.url}else if(e.data.name.startsWith("av")){i=`https://www.bilibili.com/${e.data.name}`}else{i=`https://search.bilibili.com/all?keyword=${e.data.name}`}t.querySelector(".recommended-target").setAttribute("href",i)}else{console.error("[自定义顶栏] 获取搜索推荐词失败")}}const i=new Vue({el:dq(".popup.search-list"),data:{items:[],isHistory:true},methods:{submit(e){s.value=e;t.submit();raiseEvent(t,"submit")},nextItem(e){const t=dq(`.custom-navbar .search-list-item:nth-child(${e+2})`);if(t){t.focus()}},previousItem(e){const t=dq(`.custom-navbar .search-list-item:nth-child(${e})`);if(t){t.focus()}else{s.focus();return}},deleteItem(t,s){e.searchHistory.splice(e.searchHistory.findIndex(e=>e.keyword===t.value),1);e.searchHistory=e.searchHistory;this.items.splice(s,1)},clearSearchHistory(){e.searchHistory=[];this.items=[]}}});let a="";const n=async()=>{const t=s.value;i.isHistory=t==="";if(i.isHistory){i.items=e.searchHistory.sort((e,t)=>{const s=e.date?new Date(e.date):new Date(0);const i=t.date?new Date(t.date):new Date(0);return Number(i)-Number(s)}).map(e=>{return{value:e.keyword,html:e.keyword}}).slice(0,10)}else{const e=`https://s.search.bilibili.com/main/suggest?func=suggest&suggest_type=accurate&sub_type=tag&main_ver=v1&highlight=&userid=${getUID()}&bangumi_acc_num=1&special_acc_num=1&topic_acc_num=1&upuser_acc_num=3&tag_num=10&special_num=10&bangumi_num=10&upuser_num=3&term=${t}`;a=e;const s=await Ajax.getJson(e);if(s.code!==0||a!==e){return}const n=s.result.tag;if(n===undefined){i.items=[];return}i.items=n.map(e=>{return{value:e.value,html:e.name.replace(/suggest_high_light/g,"suggest-highlight")}})}};n();const r=_.debounce(n,200);let o=false;s.addEventListener("compositionstart",()=>o=true);s.addEventListener("compositionend",()=>{o=false;raiseEvent(s,"input")});s.addEventListener("input",()=>{if(!o){r()}});s.addEventListener("keydown",e=>{if(e.key==="ArrowDown"&&i.items.length>0){e.preventDefault();dq(".custom-navbar .search-list-item:first-child").focus()}})}get name(){return"search"}}return{export:{SearchBox:i}}}})();