PageSourceSearch

https://holodex.net/assets/RelayBotSetting.2696559c.js

js holodex.net collected 2026-10-01 15:11:28 UTC 12,167 bytes, 1 lines download raw bytes

1import{T as c,e as r,Z as _,n as S}from"./main.0e1538d8.js";import{cV as x,cW as C,b1 as I,ar as n,ax as a,aE as o,c8 as m,aH as d,aI as u,aG as p,bi as y,at as g,cf as f}from"./vendor.b5f99b55.js";const w={name:"RelayBotSetting",metaInfo(){return{get title(){return"RelayBot - Holodex"}}},data(){return{mdiPlusCircle:x,mdiMinusCircle:C,TL_LANGS:c,loggedIn:!1,accessToken:"",guilds:[],channels:[],setting:[],channelInpt:"",langInpt:c[0],selectedGuild:-1,selectedChannel:-1,saveNotif:"",selectedSetting:-1,blacklistInput:"",whitelistInput:"",relayInput:"",langRelayInput:c[0]}},computed:{discordOAuth2Links(){switch(location.hostname){case"localhost":return"https://discord.com/api/oauth2/authorize?client_id=826055534318583858&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2Frelaybot&response_type=code&scope=guilds%20identify";case"staging.holodex.net":return"https://discord.com/api/oauth2/authorize?client_id=826055534318583858&redirect_uri=https%3A%2F%2Fstaging.holodex.net%2Frelaybot&response_type=code&scope=guilds%20identify";case"holodex.net":return"https://discord.com/api/oauth2/authorize?client_id=826055534318583858&redirect_uri=https%3A%2F%2Fholodex.net%2Frelaybot&response_type=code&scope=guilds%20identify";default:return""}}},watch:{"$route.query.code":function(){this.$route.name==="relaybot"&&this.$route.query.code&&this.init()}},mounted(){this.init()},methods:{init(){if(this.loggedIn=!1,!this.$route.query.code){this.loggedIn=!1;return}let t=3;switch(location.hostname){case"localhost":t=0;break;case"staging.holodex.net":t=1;break;case"holodex.net":t=2;break;default:t=3;break}r.relayBotLogin(this.$route.query.code,t).then(({status:s,data:e})=>{s===200&&(this.selectedChannel=-1,this.selectedGuild=-1,this.loggedIn=!0,this.accessToken=e.access_token,this.guilds=e.guilds.filter(i=>i.admin).map(i=>({id:i.id,name:i.name,bot:!1})),this.checkGuild())}).catch(()=>{this.loggedIn=!1})},checkGuild(){r.relayBotCheckBotPresence(this.guilds.map(t=>t.id)).then(({status:t,data:s})=>{t===200&&(this.guilds=this.guilds.map(e=>(e.bot=s.includes(e.id),e)))}).catch(()=>{this.loggedIn=!1})},loadChannel(t){this.channels=[],this.selectedGuild=t,this.selectedChannel=-1,this.guilds[this.selectedGuild].bot&&r.relayBotGetChannels(this.guilds[this.selectedGuild].id).then(({status:s,data:e})=>{s===200&&(this.channels=e.map(i=>({id:i.id,name:i.name})))}).catch(s=>{console.log(s)})},selectSetting(t){this.selectedSetting=t,this.blacklistInput="",this.whitelistInput=""},addBlacklist(){this.blacklistInput.trim()!==""&&(this.setting[this.selectedSetting].blacklist.includes(this.blacklistInput.trim())?this.blacklistInput="":(this.setting[this.selectedSetting].blacklist.push(this.blacklistInput.trim()),this.setting[this.selectedSetting].whitelist=this.setting[this.selectedSetting].whitelist.filter(t=>t!==this.blacklistInput.trim())))},addWhitelist(){this.whitelistInput.trim()!==""&&(this.setting[this.selectedSetting].whitelist.includes(this.whitelistInput.trim())?this.whitelistInput="":(this.setting[this.selectedSetting].whitelist.push(this.whitelistInput.trim()),this.setting[this.selectedSetting].blacklist=this.setting[this.selectedSetting].blacklist.filter(t=>t!==this.whitelistInput.trim())))},loadSetting(t){this.selectedChannel=t,this.channelInpt="",this.selectedSetting=-1,this.langInpt={text:c[0].text,value:c[0].value},this.langRelayInput={text:c[0].text,value:c[0].value},this.saveNotif="",this.setting=[],r.relayBotGetSettingChannel(this.channels[this.selectedChannel].id).then(({status:s,data:e})=>{s===200&&(this.setting=e.SubChannel?e.SubChannel.map(i=>(i.lang||(i.lang="en"),i.whitelist||(i.whitelist=[]),i.blacklist||(i.blacklist=[]),i)):[])}).catch(s=>{console.log(s)})},validateChannel(t){if(t.indexOf("https://www.youtube.com/channel/")===0)return(t.indexOf("?")!==-1?t.slice(0,t.indexOf("?")):t).slice("https://www.youtube.com/channel/".length)},addSetting(){if(this.validateChannel(this.channelInpt)){const t={link:`YT_${this.validateChannel(this.channelInpt)}`,lang:this.langInpt.value};this.setting.filter(s=>s.link===t.link&&s.lang===t.lang).length===0&&this.setting.push(t),this.channelInpt="",this.langInpt={text:c[0].text,value:c[0].value}}},saveSetting(){this.saveNotif="Saving...",r.relayBotSubmitData(this.channels[this.selectedChannel].id,this.setting).then(({status:t})=>{t===200&&(this.saveNotif="Saved!!")}
1).catch(t=>{this.saveNotif=t})},triggerRelay(){let t=0,s=this.relayInput;_(s)?(this.relayInput="Sending trigger...",t=1,s=`YT_${_(s).id}`,r.relayBotTrigger(this.channels[this.selectedChannel].id,t,s,this.langRelayInput.value).then(({status:e})=>{e===200&&(this.relayInput="Ok!!")}).catch(()=>{this.relayInput="Not Ok!!"})):this.validateChannel(s)&&(this.relayInput="Sending trigger...",t=2,s=`YT_${this.validateChannel(s)}`,r.relayBotTrigger(this.channels[this.selectedChannel].id,t,s,this.langRelayInput.value).then(({status:e})=>{e===200&&(this.relayInput="Ok!!")}).catch(()=>{this.relayInput="Not Ok!!"}))}}};var v=function(){var t=this,s=t.$createElement,e=t._self._c||s;return e(I,{attrs:{"fill-height":"",fluid:""}},[t.loggedIn?t._e():e(n,{staticClass:"d-flex justify-center",attrs:{width:"100%",height:"100%"}},[e(a,{attrs:{color:"primary",elevation:"9",large:"",href:t.discordOAuth2Links}},[t._v(" login discord ")]),e(a,{staticStyle:{"margin-left":"10px"},attrs:{color:"secondary",elevation:"9",large:"",href:"https://discord.com/api/oauth2/authorize?client_id=826055534318583858&permissions=274877910016&scope=bot%20applications.commands"}},[t._v(" Invite bot ")])],1),t.loggedIn?e(n,{staticClass:"d-flex flex-row",attrs:{width:"100%",height:"100%"}},[e(n,{staticClass:"d-flex flex-column",staticStyle:{height:"100%",width:"25%"}},[e(o,{staticClass:"justify-center"},[t._v(" Servers ")]),e(n,{staticStyle:{height:"100%",width:"100%","overflow-y":"auto"}},[e("div",{staticClass:"d-flex flex-column",staticStyle:{height:"100%: overflow-y:hidden"}},t._l(t.guilds,function(i,l){return e(a,{key:"g"+l,staticStyle:{"margin-bottom":"5px"},attrs:{color:"primary",small:""},on:{click:function(h){return t.loadChannel(l)}}},[t._v(" "+t._s(i.name)+" ")])}),1)]),e(m,{staticClass:"justify-center",staticStyle:{"margin-top":"auto"}},[t._v(" Server not shown if you have insufficient privilege (admin or kick/ban people) ")])],1),t.selectedGuild!==-1?e(n,{staticStyle:{height:"100%","border-left":"10px solid black"},attrs:{width:t.guilds[t.selectedGuild].bot?"25%":"70%"}},[t.guilds[t.selectedGuild].bot?e(n,{staticClass:"d-flex flex-column",attrs:{height:"100%",width:"100%"}},[e(o,{staticClass:"justify-center",staticStyle:{"word-break":"break-word"}},[t._v(" "+t._s("Channels ("+t.guilds[t.selectedGuild].name+")")+" ")]),e(n,{staticStyle:{height:"100%",width:"100%","overflow-y":"auto"}},[e("div",{staticClass:"d-flex flex-column",staticStyle:{height:"100%: overflow-y:hidden"}},t._l(t.channels,function(i,l){return e(a,{key:"c"+l,staticStyle:{"margin-bottom":"5px"},attrs:{color:"primary",small:""},on:{click:function(h){return t.loadSetting(l)}}},[t._v(" "+t._s(i.name)+" ")])}),1)])],1):e(n,{staticClass:"d-flex flex-column",attrs:{height:"100%",width:"100%"}},[e(o,{staticClass:"justify-center",staticStyle:{"word-break":"break-word"}},[t._v(" Bot is not in this server. ")]),e(n,{staticClass:"d-flex justify-center"},[e(a,{attrs:{color:"primary",elevation:"9",large:"",href:"https://discord.com/api/oauth2/authorize?client_id=826055534318583858&permissions=274877910016&scope=bot%20applications.commands"}},[t._v(" Invite Bot ")])],1)],1)],1):t._e(),t.selectedChannel!==-1?e(n,{staticClass:"d-flex flex-column",staticStyle:{"border-left":"10px solid black"},attrs:{width:"50%"}},[e(o,{staticClass:"justify-center",staticStyle:{"word-break":"break-word"}},[t._v(" "+t._s("Setting ("+t.channels[t.selectedChannel].name+")")+" ")]),e(d),e(u,[e(p,{attrs:{dense:"",label:"Youtube Link (Channel/Video)"},model:{value:t.relayInput,callback:function(i){t.relayInput=i},expression:"relayInput"}})],1),e(u,[e(y,{attrs:{items:t.TL_LANGS,"item-text":function(i){return i.text+" ("+i.value+")"},"item-value":"value",label:"Lang",dense:"","return-object":""},model:{value:t.langRelayInput,callback:function(i){t.langRelayInput=i},expression:"langRelayInput"}}),e(a,{staticStyle:{"margin-left":"10px"},attrs:{color:"primary"},on:{click:function(i){return t.triggerRelay()}}},[t._v(" Relay TL ")])],1),e(d),e(o,{staticClass:"justify-center"},[t._v(" Relay Subscription ")]),e(u,[e(p,{attrs:{dense:"",label:"Youtube Channel"},model:{value:t.channelInpt,callback:function(i){t.channelInpt=i},expression:"channelInpt"}})],1),e(u,[e(y,{attrs:{items:t.TL_LANGS,"item-text":function(i){return i.text+" ("+i.value+")"},"item-value":"value",label:"Lang",dense:"","return-object":""},model:{value:t.langInpt,callback:function(i){t.langInpt=i},expression:"langInpt"}}),e(a,{staticStyle:{"margin-left":"10px"},attrs:{color:"primary"},on:{click:function(i){return t.addSetting()}}},[e(g,[t._v(" "+t._s(t.mdiPlusCircle)+" ")]),t._v(" Add Subscription ")],1)],1),e(d),e(f,{attrs:{width:"auto"}},[e("thead",[e("tr",[e("th",{staticClass:"text-left",staticStyle:{width:"70%"}},[t._v(" Subscribed Channel ")]),e("th",{staticClass:"text-left",staticStyle:{width:"25%"}},[t._v(" Lang ")]),e("th",{staticClass:"text-left"})])]),e("tbody",t._l(t.setting,function(i,l){return e("tr",{key:"s"+l,staticStyle:{cursor:"pointer"},on:{click:function(h){return t.selectSetting(l)}}},[e("td",[t._v(t._s(i.link))]),e("td",[t._v(t._s(i.lang))]),e("td",[e(a,{attrs:{icon:"",lg:""},on:{click:function(h){t.selectedSetting=-1,t.setting.splice(l,1)}}},[e(g,[t._v(" "+t._s(t.mdiMinusCircle)+" ")])],1)],1)])}),0)]),e(d),t.selectedSetting>=0&&t.selectedSetting<t.setting.length?e(n,{staticClass:"d-flex"},[e(n,{staticClass:"d-flex flex-column",staticStyle:{border:"1px solid white",padding:"5px 10px 5px 10px"},attrs:{width:"50%"}},[e(o,[t._v("Blacklist")]),e(f,{attrs:{width:"100%",height:"100%"}},[e("thead",[e("tr",[e("th",{staticClass:"text-left",staticStyle:{width:"100%"}},[t._v(" Translator Name ")]),e("th",{staticClass:"text-left"}
1)])]),e("tbody",t._l(t.setting[t.selectedSetting].blacklist,function(i,l){return e("tr",{key:"bl"+l},[e("td",[t._v(t._s(i))]),e("td",[e(a,{attrs:{icon:"",lg:""},on:{click:function(h){return t.setting[t.selectedSetting].blacklist.splice(l,1)}}},[e(g,[t._v(" "+t._s(t.mdiMinusCircle)+" ")])],1)],1)])}),0)]),e(p,{attrs:{label:"Translator Name","append-icon":t.mdiPlusCircle},on:{"click:append":function(i){return t.addBlacklist()},keypress:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"enter",13,i.key,"Enter")?null:t.addBlacklist()}},model:{value:t.blacklistInput,callback:function(i){t.blacklistInput=i},expression:"blacklistInput"}})],1),e(n,{staticClass:"d-flex flex-column",staticStyle:{border:"1px solid white",padding:"5px 10px 5px 10px"},attrs:{width:"50%"}},[e(o,[t._v("Whitelist")]),e(f,{attrs:{width:"100%",height:"100%"}},[e("thead",[e("tr",[e("th",{staticClass:"text-left",staticStyle:{width:"100%"}},[t._v(" Translator Name ")]),e("th",{staticClass:"text-left"})])]),e("tbody",t._l(t.setting[t.selectedSetting].whitelist,function(i,l){return e("tr",{key:"wl"+l},[e("td",[t._v(t._s(i))]),e("td",[e(a,{attrs:{icon:"",lg:""},on:{click:function(h){return t.setting[t.selectedSetting].whitelist.splice(l,1)}}},[e(g,[t._v(" "+t._s(t.mdiMinusCircle)+" ")])],1)],1)])}),0)]),e(p,{attrs:{label:"Translator Name","append-icon":t.mdiPlusCircle},on:{"click:append":function(i){return t.addWhitelist()},keypress:function(i){return!i.type.indexOf("key")&&t._k(i.keyCode,"enter",13,i.key,"Enter")?null:t.addWhitelist()}},model:{value:t.whitelistInput,callback:function(i){t.whitelistInput=i},expression:"whitelistInput"}})],1)],1):t._e(),e(d),e(n,{staticClass:"d-flex justify-center",staticStyle:{"margin-top":"10px"}},[e(n,[e(a,{attrs:{large:"",color:"primary"},on:{click:function(i){return t.saveSetting()}}},[t._v(" Save ")]),e(m,[t._v(t._s(t.saveNotif))])],1)],1)],1):t._e()],1):t._e()],1)},B=[];v._withStripped=!0;const k={};var b=S(w,v,B,!1,G,null,null,null);function G(t){for(let s in k)this[s]=k[s]}b.options.__file="src/views/RelayBotSetting.vue";const $=function(){return b.exports}();export{$ 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.