3 lines
10 KiB
JavaScript
3 lines
10 KiB
JavaScript
|
import{getCookie,useEventListener}from"./chunk-7JONXWSO.js";import{k}from"./chunk-RG4ZUIOR.js";import{icons_exports,loader_2_default}from"./chunk-PE2ZHJ3V.js";import{IS_BROWSER}from"./chunk-P55SGJLG.js";import{w}from"./chunk-ICN4RY3D.js";import"./chunk-SMUKOLE7.js";import{v}from"./chunk-CUT5GMLI.js";import{A}from"./chunk-YC2TUGGU.js";import"./chunk-UK35T4TJ.js";var addMovieInfos={title:"Add Movie infos",meta:"",icon:"IconReportSearch",cb:async(state,context)=>{state.activeState.value="loading";let movie=context,query=movie.name,json=await(await fetch(`/api/tmdb/query?q=${encodeURIComponent(query)}`)).json(),menuID=`result/${movie.name}`;state.menus[menuID]={title:"Select",entries:json.map(m=>({title:`${m.title} released ${m.release_date}`,cb:async()=>{state.activeState.value="loading",await fetch(`/api/movies/enhance/${movie.name}/`,{method:"POST",body:JSON.stringify({tmdbId:m.id})}),state.visible.value=!1,state.activeState.value="normal",window.location.reload()}}))},state.activeMenu.value=menuID,state.commandInput.value="",state.activeState.value="normal"},visible:()=>{let loc=globalThis.location;return getCookie("session_cookie")?loc?.pathname?.includes("movie")&&!loc.pathname.endsWith("movies"):!1}};var isValidUrl=urlString=>{try{return!!new URL(urlString)}catch{return!1}};async function fetchStream(url,cb){let reader=(await fetch(url))?.body?.getReader();if(reader)for(;;){let{done,value}=await reader.read();if(done)return;new TextDecoder().decode(value).split("$").filter(d=>d&&d.length).map(d=>cb(Array.isArray(d)?d[0]:d))}}function debounce(fn,delay=300){let timer;return(...args)=>{clearTimeout(timer),timer=setTimeout(()=>fn.apply(this,args),delay)}}var createNewMovie={title:"Create new movie",meta:"",icon:"IconSquareRoundedPlus",cb:state=>{state.menus.input_link={title:"Search",entries:[]},state.menus.loading={title:"Search",entries:[{title:"Loading",icon:"IconLoader2",cb(){}}]},state.activeMenu.value="input_link",state.activeState.value="normal";let currentQuery,search=debounce(async function(query){if(currentQuery=query,query.length<2)return;let movies=await(await fetch("/api/tmdb/query?q="+query)).json();query===currentQuery&&(state.menus.input_link={title:"Search",entries:movies.map(r=>({title:`${r.title} - ${r.release_date}`,cb:async()=>{state.activeState.value="loading";let movie=await(await fetch("/api/movies/"+r.id,{method:"POST"})).json();unsub(),window.location.href="/movies/"+movie.name}}))},state.activeMenu.value="input_link")},500),unsub=state.commandInput.subscribe(value=>{state.activeMenu.value="loading",search(value)})},visible:()=>!(!getCookie("session_cookie")||!globalThis?.location?.pathname?.includes("movie")&&globalThis?.location?.pathname!=="/")};var createNewArticle={title:"Create new article",meta:"",icon:"IconSquareRoundedPlus",cb:state=>{state.menus.input_link={title:"Link:",entries:[]},state.activeMenu.value="input_link",state.activeState.value="input";let unsub=state.commandInput.subscribe(value=>{isValidUrl(value)&&(unsub(),state.activeState.value="loading",fetchStream("/api/articles/create?url="+value,chunk=>{chunk.startsWith("id:")?(state.loadingText.value="Finished",setTimeout(()=>{window.location.href="/articles/"+chunk.replace("id:","").trim()},500)):state.loadingText.value=chunk}))})},visible:()=>!(!getCookie("session_cookie")||!globalThis?.location?.pathname?.includes("article")&&globalThis?.location?.pathname!=="/")};var addSeriesInfo={title:"Add Series infos",meta:"",icon:"IconReportSearch",cb:async(state,context)=>{state.activeState.value="loading";let series=context,query=series.name,json=await(await fetch(`/api/tmdb/query?q=${encodeURIComponent(query)}&type=serie`)).json(),menuID=`result/${series.name}`;state.menus[menuID]={title:"Select",entries:json.map(m=>({title:`${m.name||m.original_name} released ${m.first_air_date}`,cb:async()=>{state.activeState.value="loading",await fetch(`/api/series/enhance/${series.name}/`,{method:"POST",body:JSON.stringify({tmdbId:m.id})}),state.visible.value=!1,state.activeState.value="normal"}}))},state.commandInput.value="",state.activeMenu.
|
||
|
//# sourceMappingURL=island-kmenu_kmenu.js.map
|