import { a as createRouter, d as resolveComponent, r as withCtx, b as renderList, c as createBlock, o as openBlock, e, /* createElementVNode */ f as withDirectives, i as resolveDirective, g as createVNode, t as useAttrs, u as createTextVNode, F as Fragment, h as createCommentVNode, j as toDisplayString, D as defineStore, m as dayjs, k as Modal, l as normalizeProps, n as createStaticVNode, w as withModifiers, p as isRef, v as guardReactiveProps, q as renderSlot, C as Tooltip, s as Sidebar, x as Input, M as initFlowbite, y as y_util, z as z_util, A as debounce, B as classNames, E as StaticHTML, G as Dropdown, T as Tab, H as Accordion, I as useConfigStore, R as Drawer, J as pako, K as Carousel, L as URL_util, N as JSON_util, O as Badge, P as Progress, Q as Spinner, S as Alert, U as Dropzone, V as Toggle, W as Pagination, X as Avatar, Y as Rating, Z as Table, _ as mergeProps, $ as cloneVNode, a0 as useI18n, a1 as createPinia, a2 as useRouter, a3 as useRoute, a4 as onMounted, a5 as onUnmounted, a6 as ref, a7 as reactive, a8 as computed, a9 as watch, aa as nextTick, ab as provide, ac as inject } from './vendor-modules-BcUHiSD3.js'; const Ws = '/o11-logo-white-transparent-no-slogan.svg', I = { 'APP_URL_LOCAL': '//' + window.location.host, 'APP_URL': '//' + window.location.host, 'isRemote': false, 'viewMode': { 'linear': 'grid', 'events': "grid", 'vod': "grid", 'recordings': "grid", 'epg': "grid" }, 'sortMode': { 'linear': false, 'vod': false, 'monitoring': false }, 'setAppUrl'(epg6) { this.APP_URL = epg6; }, 'getAppUrl'() { return this.APP_URL; }, 'getAppUri'() { return this.APP_URL.split('//')[1]; }, 'setAppUrlLocal'(v654) { this.APP_URL_LOCAL = v654; }, 'getAppUrlLocal'() { return this.APP_URL_LOCAL; }, 'getApiUrl'() { return "///api"; }, 'getProtocol'() { return window.location.protocol; }, 'setIsRemote'(apiRef3) { this.isRemote = apiRef3; }, 'getViewMode'() { v659 = localStorage.getItem("o11-preferences-view"); return v659 ? this.viewMode = JSON.parse(v659) : this.saveViewMode(), this.viewMode; }, 'saveViewMode'() { localStorage.setItem("o11-preferences-view", JSON.stringify(this.viewMode)); }, 'getSortMode'() { v664 = localStorage.getItem("o11-preferences-sort"); return v664 ? this.sortMode = JSON.parse(v664) : this.saveSortMode(), this.sortMode; }, 'saveSortMode'() { localStorage.setItem("o11-preferences-sort", JSON.stringify(this.sortMode)); } }, Me = { 'getToken'() { v670 = { 'EGUKh': function(v671, v672) { return v671(v672); }, 'kqoGw': function(v673) { return v673(); }, 'DVcqI': function(v674, v675) { return v674(v675); }, 'LlldE': "o11-token-remote", 'pfpfW': "o11-token", 'AxlUT': function(v676, v677) { return v676 !== v677; }, 'EtOWV': 'AuacR', 'oBXUA': "ypfHL", 'xEdjD': "Error retrieving o11-token from Local Storage:" }; try { return I.isRemote ? localStorage.getItem("o11-token-remote") : localStorage.getItem("o11-token"); } catch (v678) { if (v670.AxlUT("AuacR", "ypfHL")) console.error("Error retrieving o11-token from Local Storage:", v678); else { const v679 = v680(false), v681 = vid(); vid2({ 'playVideo': vid3 => { v681.value.src = vid3, v681.value.play(), v679.value = true; } }); const v682 = () => { v681.value.pause(), v679.value = false; }; return (v683, v684) => (v685(), v686(v687, { 'enter-from-class': "scale-0 opacity-0", 'enter-to-class': "scale-100 opacity-100", 'leave-from-class': "scale-100 opacity-100", 'leave-to-class': "scale-0 opacity-0", 'enter-active-class': "transition transform opacity duration-200 ease-out", 'leave-active-class': "transition transform opacity duration-200 ease-in" }, { 'default': v688(() => [v689(v690("div", v691, [v692("video", { 'ref_key': "videoElement", 'ref': v681, 'class': "rounded-xl lg:w-96 w-64 bg-black", 'controls': '', 'autoplay': '', 'playsinline': '' }, null, 512), v693("button", { 'class': "absolute top-2 right-2 p-0.5 bg-white hover:bg-yellow-300 text-sm font-bold rounded-full text-black cursor-pointer transition-all ease-in-out", 'onClick': v682 }, [v694(v695)])], 512), [ [v696, v679.value] ])]), '_': 1 })); } } return null; }, 'setToken'(v697) { const v698 = { 'PYzCn': "o11-token-remote", 'WzxKQ': 'o11-token' }; v697 && (I.isRemote ? localStorage.setItem(v698.PYzCn, v697) : localStorage.setItem(v698.WzxKQ, v697)); }, 'clearToken'() { const v699 = { 'ayGSh': 'o11-token' }; return localStorage.removeItem(v699.ayGSh), true; } }, q = { async 'req'(v700, v701 = {}, v702) { v706 = { 'eMNCJ': function(v707, v708) { return v707 || v708; }, 'DpQiP': function(v709, v710) { return v709 * v710; } }; try { return await createRouter.post(v700, v701, { 'headers': { 'Authorization': Me.getToken() }, 'responseType': v706.eMNCJ(v702, "json"), 'timeout': v706.DpQiP(1800, 1000) }); } catch (resp) { if (resp.response) throw console.error("api req error: " + JSON.stringify(resp.response)), resp.response; if (resp.request) throw console.error("api req network error: " + resp.message), resp.data = resp.message, resp; } } }, Be = resolveComponent("auth", { 'state': () => ({ 'isAuth': false, 'token': null, 'username': withCtx(''), 'password': withCtx(''), 'isAdmin': withCtx(false), 'hasWebAccess': withCtx(false), 'error': withCtx(null), 'isLoggingIn': withCtx(false) }), 'actions': { async 'login'() { const auth = { auth6: 5179, auth7: 2328 }, auth8 = { 'qVBdx': function(auth9, auth10, auth11) { return auth9(auth10, auth11); }, 'GbkXE': 'onTypeSelected', 'urkZD': function(selRef4, selRef5) { return selRef4 === selRef5; }, 'MQtAp': "LLtgR" }; this.error = null, this.isLoggingIn = true; const usr5 = { 'Username': this.username, 'Password': this.password }; try { const usr6 = await createRouter.post(I.getApiUrl() + "/login", usr5); return auth8.urkZD(usr6.status, 200) ? (this.isAuth = true, this.token = usr6.data.Token, Me.setToken(this.token), this.isLoggingIn = false, true) : false; } catch (v711) { return this.error = v711, false; } finally { this.isLoggingIn = false; } }, async 'getLoggedInUser'() { this.error = null, this.isLoggingIn = true; const usr11 = { 'AuthToken': Me.getToken() }; this.error = null; try { const usr12 = (await q.req(I.getApiUrl() + '/user/get', usr11)).data?..Users[0]; usr12 && (this.username = usr12.Username, this.password = usr12.Password, this.isAdmin = usr12.IsAdmin, this.hasWebAccess = usr12.HasWebAccess); } catch (auth12) { this.error = auth12.data + '. Please login again.', this.logout(); } finally { this.isLoading = false; } }, 'getToken'() { v716 = { 'Jtmvu': "o11-token", 'RlNys': function(v717, v718) { return v717 != v718; } }, v719 = localStorage.getItem(v716.Jtmvu); if (v716.RlNys(v719, null)) return this.isAuth = true, this.token = v719, this.token; }, 'logout'() { return localStorage.removeItem("o11-token"), localStorage.removeItem("o11-preferences-view"), localStorage.removeItem("o11-preferences-sort"), localStorage.removeItem("o11-preferences"), this.isAuth = false, this.token = null, true; } } }), it = resolveComponent("notifications", { 'state': () => ({ 'toasts': [] }), 'actions': { 'showNotification'(notif6, notif7 = "success") { const notif8 = { 'bkCZw': function(notif9, notif10, notif11) { return notif9(notif10, notif11); } }, v724 = Symbol(); this.toasts.push({ 'id': v724, 'message': notif6, 'status': notif7 }), setTimeout(() => this.hideNotification(v724), 5000); }, 'hideNotification'(notif12) { this.toasts = this.toasts.filter(notif13 => notif13.id !== notif12); } } }), He = resolveComponent("servers", { 'state': () => ({ 'notificationStore': it(), 'servers': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null), 'serverVersion': withCtx(null), 'currentSelectedServer': withCtx({ 'Id': "local", 'Name': "Local" }) }), 'getters': { 'getSelectedServer'(srv15) { return srv15.currentSelectedServer; } }, 'actions': { 'getServerById'(srv16) { const srv17 = { 'siAMb': function(srv18, srv19) { return srv18 === srv19; } }; for (const srv20 of this.servers) if (srv17.siAMb(srv20.Id, srv16)) return srv20; return null; }, async 'setSelectedServer'(srv21) { srv24 = { 'EJmjt': "local", 'psTRP': 'Local', 'tWgZz': 'error' }; if (srv21?..Id !== "local") { I.setIsRemote(true); try { await this.loginRemote(srv21.Url, srv21.User, srv21.Password); } catch (srv25) { await this.setSelectedServer({ 'Id': "local", 'Name': "Local", 'Url': I.getAppUrlLocal() }), this.notificationStore.showNotification("Error: " + (srv25.statusText ? srv25.statusText : srv25.data) + ".\nBack to Local Server", "error"); } } else I.setIsRemote(false); this.currentSelectedServer = srv21, I.setAppUrl(srv21.Url); }, 'createLocal'() { creRef3 = { 'NAhZX': "local", 'GlxMO': "Local", 'DcppI': function(v725, v726) { return v725 + v726; } }; return { 'Id': creRef3.NAhZX, 'Name': creRef3.GlxMO, 'Url': creRef3.DcppI(I.getProtocol(), I.getAppUrlLocal()) }; }, async 'getAll'() { v742 = {}; this.isLoading = true, this.error = null; try { const srv26 = await q.req(I.getApiUrl() + '/server/get', v742); let srv27 = []; srv27.push(this.createLocal()), srv26.data?..Servers && srv27.push(...srv26.data?..Servers), this.servers = srv27; } catch (srv28) { this.error = srv28; } finally { 'fill-rule': "evenodd", 'd': "M8 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4H6Zm7.25-2.095c.478-.86.75-1.85.75-2.905a5.973 5.973 0 0 0-.75-2.906 4 4 0 1 1 0 5.811ZM15.466 20c.34-.588.535-1.271.535-2v-1a5.978 5.978 0 0 0-1.528-4H18a4 4 0 0 1 4 4v1a2 2 0 0 1-2 2h-4.535Z", 'clip-rule': "evenodd" }, null, -1)])]); else this.isLoading = false; } }, async 'add'(loadRef11) { v750 = { 'Name': loadRef11."", 'Url': loadRef11."", 'User': loadRef11.value.User, 'Password': loadRef11."" }; this.isLoading = true, this.error = null; try { (true) ? (await q.req(I.getApiUrl() + "/server/add", v750), this.notificationStore.showNotification("Added server " + loadRef11.value.Name + " successfully.", "success")) : notif14.value.FirstSubtitlesTrack = notif15; } catch (notif16) { (false) ? this.isLoading = false : this.error = notif16; } finally { (false) ? (modal3.value = modal4, modal5.value.toggleModal()) : this.isLoading = false; } }, async 'edit'(modal6) { const modal = { modal7: 3704 }, modal8 = { 'FQbCH': "success" }, v751 = { 'Id': modal6.value.Id, 'Name': modal6.value.Name, 'Url': modal6."", 'User': modal6."", 'Password': modal6."" }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/server/edit', v751), this.notificationStore.showNotification("Edited server " + modal6.value.Name + ' successfully.', "success"); } catch (srv31) { this.error = srv31; } finally { this.isLoading = false; } }, async 'delete'(delRef4) { v753 = { 'Id': delRef4.value.Id }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/server/delete', v753), this.notificationStore.showNotification("Deleted server " + delRef4.value.Name + ' successfully.', "success"); } catch (notif17) { this.error = notif17; } finally { this.isLoading = false; } }, async 'getInfo'(v754) { v776 = { 'Id': v754.Id }; this.isLoading = true, this.error = null; try { if ((false)) { this.streams && (this.streams?..Providers?..length > 0) && (this.streams.Providers = this.streams.Providers.map((stream23, stream24) => (stream23.Streams && stream23.Streams.length > 0 && (stream23.Streams = stream23.Streams.map(stream25 => { const stream26 = stream27.Providers[stream24].Streams.find(stream28 => stream28.Id === stream25.Id); return stream26 ? { ...stream25, ...stream26 } : stream25; })), stream23))); } else { if ((v754.Id !== "local")) { I.setIsRemote(true); } const srv32 = await q.req(v754.Url + '/api/server/getinfo', v776); return I.setIsRemote(false), srv32.data; } } catch (srv33) { (this.error = srv33, I.setIsRemote(false), await this.setSelectedServer({ 'Id': "local", 'Name': 'Local' })); } finally { if ((true)) this.isLoading = false; else return v779(), v780("svg", v781, [...v782[0] || (v783[0] = [v784("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M13 13h3a3 3 0 0 0 0-6h-.025A5.56 5.56 0 0 0 16 6.5 5.5 5.5 0 0 0 5.207 5.021C5.137 5.017 5.071 5 5 5a4 4 0 0 0 0 8h2.167M10 15V6m0 0L8 8m2-2 2 2" }, null, -1)])]); } }, async 'getServerVersion'(srv34) { srv39 = { 'Id': srv34.Id }; this.isLoading = true, this.error = null; try { const errRef22 = await q.req(I.getApiUrl() + '/server/getinfo', srv39); this.serverVersion = errRef22.data.Version; } catch (srv40) { this.error = srv40; } finally { this.isLoading = false; } }, async 'testLogin'(auth14, auth15, auth16) { auth19 = { 'WcMQa': function(auth20, auth21) { return auth20 !== auth21; }, 'SZUxt': "RnmXg", 'YJANE': function(v785, v786) { return v785 + v786; }, 'PlQYq': "/api/login", 'yXiro': "response data error" }; this.error = null, this.isLoggingIn = true; const usr13 = { 'Username': auth15, 'Password': auth16 }; try { if (auth19.WcMQa("RnmXg", "RnmXg")) { const usr14 = { 'oyZVJ': "click" }, v787 = v788, v789 = v790, v791 = () => { v789(usr14.oyZVJ); }; return (v792, v793) => (v794(), v795("button", { 'type': "button", 'onClick': v791, 'class': v796(["text-white bg-black font-medium border flex items-center text-center focus:outline-hidden rounded-xl text-sm px-3 py-2 transition-colors ease-in-out", { 'bg-red-600 hover:bg-red-700 border-red-600 hover:text-white': v797.color === 'danger', 'bg-green-600 hover:bg-green-700 border-green-600 hover:text-white ': v798.color === "green", 'hover:bg-neutral-50/10 border-white/15': !v799.color }]) }, [v787.Icon ? (v800(), v801(v802(v803.Icon), { 'key': 0, 'class': "mr-2" })) : v804('', true), v805(' ' + v806(v787.text) + ' ', 1), v807(v792.$slots, "default")], 2)); } else return await q.req(auth19.YJANE(auth14, auth19.PlQYq), usr13); } catch (v808) { return console.log("response data error", v808), this.error = v808, v808; } }, async 'loginRemote'(auth22, auth23, auth24) { auth27 = { 'uYZKC': function(auth28) { return auth28(); }, 'eeRSb': function(v809, v810) { return v809 !== v810; }, 'vMBkG': "QKxaj", 'LgUPE': "response data error" }; this.error = null, this.isLoggingIn = true; const usr15 = { 'Username': auth23, 'Password': auth24 }; try { if (auth27.eeRSb("QKxaj", "QKxaj")) usr16(), usr17(() => { auth27.uYZKC(usr18); }, 2000); else { const auth29 = await q.req(auth22 + '/api/login', usr15); Me.setToken(auth29.data.Token); } } catch (auth30) { throw console.log("response data error", auth30), this.error = auth30, auth30; } }, async 'shutdown'() { v815 = { 'ZxwFF': function(v816, v817) { return v816(v817); }, 'svSFM': function(v818, v819) { return v818 === v819; }, 'wPWmF': "SnQYn", 'QgdLt': 'Sent shutdown command successfully.', 'FOQoj': "Error sending shutdown command." }; this.error = null, this.isLoggingIn = true; try { if (v815.svSFM('EWLAE', "SnQYn")) v820 && (v821.value = v822(v823.value)); else { this.notificationStore.showNotification("Sent shutdown command successfully.", "success"); } } catch (v825) { throw this.notificationStore.showNotification("Error sending shutdown command.", "error"), this.error = v825, v825; } } } }), J = (v826, v827) => { const v828 = v826.__vccOpts || v826; for (const [v829, v830] of v827) v828[v829] = v830; return v828; }, zs = {}, Zs = { 'class': "shrink-0 text-white w-5 h-5 transition", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function Ks(v831, v832) { const v833 = { 'kSoiw': function(v834) { return v834(); }, 'sBbSd': function(v835, v836, v837, v838) { return v835(v836, v837, v838); }, 'HULcV': "svg", 'BFwOq': function(v839, v840, v841, v842, v843) { return v839(v840, v841, v842, v843); }, 'mAFXj': "path", 'TOJjj': "M18 7H18.01M15 7H15.01M18 17H18.01M15 17H15.01M6 10H18C18.9319 10 19.3978 10 19.7654 9.84776C20.2554 9.64477 20.6448 9.25542 20.8478 8.76537C21 8.39782 21 7.93188 21 7C21 6.06812 21 5.60218 20.8478 5.23463C20.6448 4.74458 20.2554 4.35523 19.7654 4.15224C19.3978 4 18.9319 4 18 4H6C5.06812 4 4.60218 4 4.23463 4.15224C3.74458 4.35523 3.35523 4.74458 3.15224 5.23463C3 5.60218 3 6.06812 3 7C3 7.93188 3 8.39782 3.15224 8.76537C3.35523 9.25542 3.74458 9.64477 4.23463 9.84776C4.60218 10 5.06812 10 6 10ZM6 20H18C18.9319 20 19.3978 20 19.7654 19.8478C20.2554 19.6448 20.6448 19.2554 20.8478 18.7654C21 18.3978 21 17.9319 21 17C21 16.0681 21 15.6022 20.8478 15.2346C20.6448 14.7446 20.2554 14.3552 19.7654 14.1522C19.3978 14 18.9319 14 18 14H6C5.06812 14 4.60218 14 4.23463 14.1522C3.74458 14.3552 3.35523 14.7446 3.15224 15.2346C3 15.6022 3 16.0681 3 17C3 17.9319 3 18.3978 3.15224 18.7654C3.35523 19.2554 3.74458 19.6448 4.23463 19.8478C4.60218 20 5.06812 20 6 20Z", 'fKnxd': "currentColor", 'mGYFe': "round" }; return openBlock(), v833.sBbSd(createBlock, "svg", Zs, [...v832[0] || (v832[0] = [v833.BFwOq(e, "path", { 'd': "M18 7H18.01M15 7H15.01M18 17H18.01M15 17H15.01M6 10H18C18.9319 10 19.3978 10 19.7654 9.84776C20.2554 9.64477 20.6448 9.25542 20.8478 8.76537C21 8.39782 21 7.93188 21 7C21 6.06812 21 5.60218 20.8478 5.23463C20.6448 4.74458 20.2554 4.35523 19.7654 4.15224C19.3978 4 18.9319 4 18 4H6C5.06812 4 4.60218 4 4.23463 4.15224C3.74458 4.35523 3.35523 4.74458 3.15224 5.23463C3 5.60218 3 6.06812 3 7C3 7.93188 3 8.39782 3.15224 8.76537C3.35523 9.25542 3.74458 9.64477 4.23463 9.84776C4.60218 10 5.06812 10 6 10ZM6 20H18C18.9319 20 19.3978 20 19.7654 19.8478C20.2554 19.6448 20.6448 19.2554 20.8478 18.7654C21 18.3978 21 17.9319 21 17C21 16.0681 21 15.6022 20.8478 15.2346C20.6448 14.7446 20.2554 14.3552 19.7654 14.1522C19.3978 14 18.9319 14 18 14H6C5.06812 14 4.60218 14 4.23463 14.1522C3.74458 14.3552 3.35523 14.7446 3.15224 15.2346C3 15.6022 3 16.0681 3 17C3 17.9319 3 18.3978 3.15224 18.7654C3.35523 19.2554 3.74458 19.6448 4.23463 19.8478C4.60218 20 5.06812 20 6 20Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': 'round', 'stroke-linejoin': "round" }, null, -1)])]); } const Js = J(zs, [ ['render', Ks] ]), Ys = {}, Qs = { 'class': 'w-3 h-3 ms-3', 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'fill': "none", 'viewBox': "0 0 10 6" }; function Xs(rndr4, rndr5) { return openBlock(), createBlock("svg", Qs, [...rndr5[0] || (rndr5[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m1 1 4 4 4-4" }, null, -1)])]); } const dl = J(Ys, [ ["render", Xs] ]), ea = { 'id': "dropdownButton-Server", 'class': 'w-full text-white focus:border-yellow-300 hover:border-yellow-300 text-sm rounded-xl justify-between px-3 py-2 text-center inline-flex items-center border border-white/15 transition-colors', 'type': "button" }, ta = { 'class': "truncate text-left font-medium" }, la = { 'id': "dropdownServer", 'class': "z-111 hidden rounded-xl shadow-xl min-w-40 bg-black/50 backdrop-blur-xl border border-white/15" }, oa = { 'class': "h-auto p-2 space-y-2 overflow-y-auto text-white" }, sa = .onClick, aa = { 'class': "block items-center px-2 py-2 rounded-xl hover:bg-neutral-50/10 text-white cursor-pointer" }, ra = { 'class': "text-[11px] text-neutral-400 line-clamp-2 break-words" }, na = { '__name': "ServerSelector", 'emits': .onServerSelected, 'setup'(srv41, { emit: srv42 }) { v860 = He(); let v861 = {}; v866 = () => { if ((false)) v867.value = { ...v868 }; else { const v869 = document.getElementById("dropdownServer"), v870 = document.getElementById("dropdownButton-Server"), v871 = { 'placement': "bottom", 'triggerType': "click", 'offsetSkidding': 0, 'offsetDistance': 10, 'delay': 300, 'ignoreClickOutsideClass': false }, v872 = { 'id': "dropdownServer", 'override': true }; v861 = new defineStore(v869, v870, v871, v872); } }, v876 = () => { v860.getAll(); }; return withDirectives(() => { resolveDirective(), v866(); }), v876(), (v879, v880) => (openBlock(), createBlock(Fragment, null, [e("button", ea, [createVNode(Js), e("span", ta, useAttrs(createTextVNode(v860).getSelectedServer.Name), 1), createVNode(dl)]), e("div", la, [e('ul', oa, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v860).servers, srv46 => (openBlock(), createBlock('li', { 'key': srv46.Id, }, [e("span", aa, [toDisplayString(useAttrs(srv46.Name) + ' ', 1), e('p', ra, useAttrs(srv46.Url), 1)])], 8, sa))), 128))])])], 64)); } }, ia = { 'class': "font-mono text-white" }, io = { '__name': "o11Version", 'setup'(v882) { v885 = He(); return (v886, v887) => (openBlock(), createBlock('span', ia, useAttrs(createTextVNode(v885).serverVersion), 1)); } }, de = { 'getDownloadUrl': (v888, v889, v890 = 'ts', v891 = null, v892 = null, v893 = false, v894 = false, v895 = null) => { let v902 = window.location.protocol; I.getAppUrl().startsWith("http") && (v902 = ''); const v903 = v891 || Me.getToken(), v904 = v893 ? v894 ? "&filter=available,sorted" : "&filter=available" : v894 ? "&filter=sorted" : ''; let v905 = (v902 + I.getAppUrl()) + '/' + v888 + '.' + v889 + '?token=' + v903 + "&format=" + v890 + v904; return v895 && v895.length && (v905 += "&streamids=" + v895), v892 ? v905 + "&provider=" + v892 : '' + v905; }, 'getSecondsSinceMidnightUtc'(v906) { if (!/^([0-1][0-9]|2[0-3]):([0-5][0-9])$/ .test(v906)) throw new Error("Invalid time format. Please use HH:MM format."); const errRef23 = dayjs(v906, "HH:mm").utc(), errRef24 = errRef23.hours(), errRef25 = errRef23.minutes(); return (((errRef24 * 60) * 60) + errRef25 * (60)); }, 'formatSecondsToTimeUtc'(v919) { if ((v919 < 0) || !Number.isInteger(v919)) throw new Error('Invalid input. Please provide a non-negative integer for seconds.'); return dayjs.utc().startOf("day").seconds(v919).local().format("HH:mm"); }, 'formatDate'(v923) { return dayjs(v923 * (1000)).format("lll"); }, 'generatePageTitle'(v927) { v927 ? document.title = v927 + " | o11 PRO" : document.title = this.generateRandomString(20); }, 'generateRandomString'(v928) { const v929 = { 'IImPI': '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 'rgOvG': function(v930, v931) { return v930 < v931; } }, v932 = v929.IImPI; let v933 = ''; for (let v934 = 0; v929.rgOvG(v934, v928); v934++) v933 += v932.charAt(Math.floor(Math.random() * v932.length)); return v933; } }, da = {}, ua = { 'class': "w-3 h-3 shrink-0 ms-3", 'xmlns': "http://www.w3.org/2000/svg", 'fill': 'none', 'viewBox': '0 0 10 6' }; function ca(v935, v936) { v938 = { 'xBRZG': function(v939, v940, v941, v942, v943) { return v939(v940, v941, v942, v943); }, 'fNtMW': 'path', 'wmGNN': "currentColor", 'CgQaa': "round", 'zAjMl': "m1 1 4 4 4-4" }; return openBlock(), createBlock("svg", ua, [...v936[0] || (v936[0] = [v938.xBRZG(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m1 1 4 4 4-4" }, null, -1)])]); } const uo = J(da, [ ["render", ca] ]), ma = .id, pa = { 'class': "font-medium" }, va = .id, Ht = { '__name': 'GenericDropdown', 'props': ['id', "name", "Icon", 'toggle'], 'setup'(togRef5) { togRef8 = { 'GpCjr': function(togRef9, togRef10, togRef11) { return togRef9(togRef10, togRef11); }, 'xTDKk': "onPlayStream", 'IxkPc': function(v944, v945) { return v944 === v945; }, 'lYMHb': "NBjSB", 'jBCvd': "qGbLh", 'APxJd': function(v946) { return v946(); } }, v947 = togRef5; let v948 = {}; v950 = () => { if (togRef8.IxkPc("NBjSB", "qGbLh")) v951("onPlayStream", v952.stream.StreamingUrl); else { const v953 = document.getElementById("dropdown-group-" + v947.id), v954 = document.getElementById("dropdownButton-group-" + v947.id), v955 = { 'placement': "bottom", 'triggerType': "click", 'offsetSkidding': 0, 'offsetDistance': 10, 'delay': 300, 'ignoreClickOutsideClass': false }, v956 = { 'id': "dropdown-group-" + v947.id, 'override': true }; v948 = new defineStore(v953, v954, v955, v956); } }, return withDirectives(() => { resolveDirective(), v950(); }), (v958, v959) => (openBlock(), createBlock(Fragment, null, [e("button", { 'id': "dropdownButton-group-" + v947.id, 'class': 'flex text-white text-sm focus:border-yellow-300 hover:border-yellow-300 rounded-xl justify-between px-3 py-2 text-center items-center border border-white/15 transition-colors', 'type': "button" }, [v947.Icon ? (openBlock(), Modal(createTextVNode(togRef5.Icon), { 'key': 0, 'class': "mr-2" })) : normalizeProps('', true), e("span", pa, useAttrs(v947.name), 1), createVNode(uo)], 8, ma), e("div", { 'id': "dropdown-group-" + v947.id, 'class': "z-111 hidden rounded-xl shadow-xl min-w-40 bg-black/50 backdrop-blur-xl border border-white/15" }, [e('ul', { 'class': "h-auto p-2 space-y-2 overflow-y-auto text-white" }, [createStaticVNode(v958.$slots, 'default')])], 8, va)], 64)); } }, fa = {}, ga = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function ha(v961, v962) { v964 = { 'QcGeJ': function(v965) { return v965(); }, 'ThvFo': function(v966, v967, v968, v969) { return v966(v967, v968, v969); }, 'ARsPn': "svg", 'LeACt': function(v970, v971, v972, v973, v974) { return v970(v971, v972, v973, v974); }, 'zCuOm': "path", 'gCWcV': 'round' }; return openBlock(), v964.ThvFo(createBlock, "svg", ga, [...v962[0] || (v962[0] = [v964.LeACt(e, "path", { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': 'M4 15v2a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-2m-8 1V4m0 12-4-4m4 4 4-4' }, null, -1)])]); } const It = J(fa, [ ["render", ha] ]), ba = {}, wa = { 'class': "w-3.5 h-3.5", 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'fill': "currentColor", 'viewBox': "0 0 18 20" }; function xa(v975, v976) { v978 = { 'Hnubz': function(v979) { return v979(); }, 'DgZsj': function(v980, v981, v982, v983) { return v980(v981, v982, v983); }, 'tkZsd': function(v984, v985, v986, v987, v988) { return v984(v985, v986, v987, v988); }, 'cwEJj': "M16 1h-3.278A1.992 1.992 0 0 0 11 0H7a1.993 1.993 0 0 0-1.722 1H2a2 2 0 0 0-2 2v15a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2Zm-3 14H5a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2Zm0-4H5a1 1 0 0 1 0-2h8a1 1 0 1 1 0 2Zm0-5H5a1 1 0 0 1 0-2h2V2h4v2h2a1 1 0 1 1 0 2Z" }; return openBlock(), v978.DgZsj(createBlock, 'svg', wa, [...v976[0] || (v976[0] = [v978.tkZsd(e, "path", { 'd': "M16 1h-3.278A1.992 1.992 0 0 0 11 0H7a1.993 1.993 0 0 0-1.722 1H2a2 2 0 0 0-2 2v15a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2Zm-3 14H5a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2Zm0-4H5a1 1 0 0 1 0-2h8a1 1 0 1 1 0 2Zm0-5H5a1 1 0 0 1 0-2h2V2h4v2h2a1 1 0 1 1 0 2Z" }, null, -1)])]); } const Ye = J(ba, [ ["render", xa] ]), ya = {}, ka = { 'class': "w-3.5 h-3.5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': "none", 'viewBox': '0 0 16 12' }; function Sa(v989, v990) { v994 = { 'wifem': function(v995) { return v995(); }, 'jUsGW': function(v996, v997, v998, v999) { return v996(v997, v998, v999); }, 'GIDiS': "svg", 'EHuHA': function(v1000, v1001, v1002, v1003, v1004) { return v1000(v1001, v1002, v1003, v1004); }, 'Ugmsq': "currentColor", 'SJzYL': "round", 'mvUlj': "M1 5.917 5.724 10.5 15 1.5" }; return openBlock(), v994.jUsGW(createBlock, "svg", ka, [...v990[0] || (v990[0] = [v994.EHuHA(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M1 5.917 5.724 10.5 15 1.5" }, null, -1)])]); } const Qe = J(ya, [ ["render", Sa] ]), $a = { 'class': "flex flex-col gap-4 text-white font-medium rounded-xl items-center transition-colors justify-around my-3" }, Ca = { 'class': 'flex gap-4 justify-around grow' }, Ma = { 'class': "flex" }, Aa = ['id', "name"], Ia = ["for"], Ta = { 'class': "flex" }, Pa = ['id', "name"], Va = ["for"], Ua = { 'class': "flex items-center" }, _a = .id, Ea = ["for"], La = { 'class': "flex" }, Da = .id, Ga = ['for'], Ra = { 'key': 0, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, Na = .href, ja = .id, Oa = .id, Ba = .id, Ha = .id, Fa = { 'key': 1, 'class': 'flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors' }, qa = .href, Wa = .id, za = .id, Za = .id, Ka = .id, Ja = { 'key': 2, 'class': 'flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors' }, Ya = .href, Qa = .id, Xa = .id, er = .id, tr = .id, lr = { 'key': 3, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors" }, or = .href, sr = .id, ar = .id, rr = .id, nr = .id, ir = { 'key': 4, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors" }, dr = .href, ur = .id, cr = .id, mr = .id, pr = .id, vr = { 'key': 5, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors" }, fr = .href, gr = .id, hr = .id, br = .id, wr = .id, xr = { 'key': 6, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors" }, yr = .href, kr = .id, Sr = .id, $r = .id, Cr = .id, Mr = { 'key': 7, 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors" }, Ar = .href, Ir = .id, Tr = .id, Pr = .id, Vr = .id, Zt = { '__name': "OutputM3uLinksGlobal", 'props': ['id', 'name', "user", 'provider', "token", "type", "streamIds"], 'setup'(prov18) { v1017 = withCtx("hls"), v1018 = withCtx(false), v1019 = withCtx(false), v1020 = prov18, v1021 = v1022 => { v1028 = document.getElementById("copy-clipboard-button-" + v1020.id + '-' + v1022), v1029 = document.getElementById("stream-url-" + v1020.id + '-' + v1022), elRef = document.getElementById("default-icon-" + v1020.id + '-' + v1022), elRef2 = document.getElementById("success-icon-" + v1020.id + '-' + v1022), elRef3 = { 'contentType': "textContent", 'htmlEntities': false, 'onCopy': () => { const v1030 = { 'Ylcel': "xnMzs", 'joVuI': "IgorA" }; v1031(), setTimeout(() => { v1030.Ylcel === v1030.joVuI ? v1032.swapAudioCodec() : v1033(); }, 2000); } }, v1031 = () => { elRef.classList.add('hidden'), elRef2.classList.remove("hidden"); }, v1033 = () => { elRef.classList.remove("hidden"), elRef2.classList.add("hidden"); }; new Tooltip(v1028, v1029, elRef3); }, v1034 = () => { if ((true)) { const v1035 = ["playlist", "linear", "event", "fevent", "vod", "replay", "selected", "app1"]; for (const v1036 of v1035) v1020.type ? (v1036 === v1020.type || (v1020.type == "event") && v1036 == "fevent") && v1021(v1036) : v1021(v1036); } else this.isLoading = false; }; return withDirectives(() => { v1034() }), (v1038, v1039) => (openBlock(), Modal(Ht, { 'id': v1020.id, 'name': v1020.name, 'Icon': It }, { 'default': withModifiers(() => [e('li', $a, [e("div", Ca, [e("div", Ma, [isRef(e('input', { 'id': 'radio-hls-' + v1020.id, 'type': 'radio', 'onUpdate:modelValue': v1039[0] || (v1039[0] = updRef6 => v1017.value = updRef6), 'value': "hls", 'name': 'radio-hls-' + v1020.id, 'class': 'w-4 h-4 shrink-0 text-yellow-300 focus:ring-transparent focus:ring-offset-0 border-white ring-transparent bg-black cursor-pointer accent-yellow-300 transition-all' }, null, 8, Aa), [ [guardReactiveProps, v1017.value] ]), e("label", { 'for': "radio-hls-" + v1020.id, 'class': "w-full ms-2 font-semibold text-sm text-white cursor-pointer" }, 'HLS', 8, Ia)]), e("div", Ta, [isRef(e('input', { 'id': 'radio-ts-' + v1020.id, 'type': "radio", 'onUpdate:modelValue': v1039[1] || (v1039[1] = updRef7 => v1017.value = updRef7), 'value': 'ts', 'name': "radio-hls-" + v1020.id, 'class': 'w-4 h-4 shrink-0 text-yellow-300 focus:ring-transparent focus:ring-offset-0 border-white ring-transparent bg-black cursor-pointer accent-yellow-300 transition-all' }, null, 8, Pa), [ [guardReactiveProps, v1017.value] ]), e('label', { 'for': "radio-ts-" + v1020.id, 'class': "w-full ms-2 font-semibold text-sm text-white cursor-pointer" }, 'TS', 8, Va)])]), e("div", Ua, [isRef(e("input", { 'id': 'available-only-' + v1020.id, 'type': "checkbox", 'onUpdate:modelValue': v1039[2] || (v1039[2] = updRef8 => v1018.value = updRef8), 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 8, _a), [ [renderSlot, v1018.value] ]), e('label', { 'for': "available-only-" + v1020.id, 'class': 'ms-2 text-xs font-medium text-white cursor-pointer' }, "Available only", 8, Ea)]), e("div", La, [isRef(e("input", { 'id': "sorted-" + v1020.id, 'type': "checkbox", 'onUpdate:modelValue': v1039[3] || (v1039[3] = updRef9 => v1019.value = updRef9), 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 8, Da), [ [renderSlot, v1019.value] ]), e("label", { 'for': 'sorted-' + v1020.id, 'class': "ms-2 text-xs font-medium text-white cursor-pointer" }, "A-Z sorted", 8, Ga)])]), v1039[4] || (v1039[4] = e('hr', null, null, -1)), v1020.type ? normalizeProps('', true) : (openBlock(), createBlock('li', Ra, [e('a', { 'href': createTextVNode(de).getDownloadUrl("playlist", 'm3u', v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': 'w-full p-2 text-sm capitalize' }, "Full", 8, Na), e("span", { 'id': "stream-url-" + v1020.id + "-playlist", 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("playlist", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, ja), e("button", { 'id': 'copy-clipboard-button-' + v1020.id + "-playlist", 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v1020.id + '-playlist' }, [createVNode(Ye)], 8, Ba), e("span", { 'id': "success-icon-" + v1020.id + "-playlist", 'class': "hidden items-center" }, [createVNode(Qe)], 8, Ha)], 8, Oa)])), !v1020.type || v1020.type === "linear" ? (openBlock(), createBlock('li', Fa, [e('a', { 'href': createTextVNode(de).getDownloadUrl("linear", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': "w-full p-2 text-sm capitalize" }, "Linear", 8, qa), e("span", { 'id': "stream-url-" + v1020.id + '-linear', 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("linear", 'm3u', v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, Wa), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-linear", 'class': 'text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all' }, [e("span", { 'id': "default-icon-" + v1020.id + "-linear" }, [createVNode(Ye)], 8, Za), e('span', { 'id': 'success-icon-' + v1020.id + "-linear", 'class': 'hidden items-center' }, [createVNode(Qe)], 8, Ka)], 8, za)])) : normalizeProps('', true), !v1020.type || v1020.type === "event" ? (openBlock(), createBlock('li', Ja, [e('a', { 'href': createTextVNode(de).getDownloadUrl("event", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': "w-full p-2 text-sm capitalize" }, 'Events', 8, Ya), e("span", { 'id': "stream-url-" + v1020.id + "-event", 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("event", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, Qa), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-event", 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v1020.id + "-event" }, [createVNode(Ye)], 8, er), e('span', { 'id': "success-icon-" + v1020.id + '-event', 'class': "hidden items-center" }, [createVNode(Qe)], 8, tr)], 8, Xa)])) : normalizeProps('', true), !v1020.type || v1020.type === "event" ? (openBlock(), createBlock('li', lr, [e('a', { 'href': createTextVNode(de).getDownloadUrl("fevent", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': "w-full p-2 text-sm capitalize" }, "Filtered Events", 8, or), e("span", { 'id': "stream-url-" + v1020.id + "-fevent", 'class': 'hidden' }, useAttrs(createTextVNode(de).getDownloadUrl("fevent", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, sr), e('button', { 'id': "copy-clipboard-button-" + v1020.id + '-fevent', 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v1020.id + "-fevent" }, [createVNode(Ye)], 8, rr), e('span', { 'id': "success-icon-" + v1020.id + "-fevent", 'class': "hidden items-center" }, [createVNode(Qe)], 8, nr)], 8, ar)])) : normalizeProps('', true), !v1020.type || v1020.type === "vod" ? (openBlock(), createBlock('li', ir, [e('a', { 'href': createTextVNode(de).getDownloadUrl("vod", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': "w-full p-2 text-sm capitalize" }, 'VOD', 8, dr), e("span", { 'id': "stream-url-" + v1020.id + "-vod", 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("vod", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, ur), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-vod", 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v1020.id + '-vod' }, [createVNode(Ye)], 8, mr), e("span", { 'id': "success-icon-" + v1020.id + "-vod", 'class': 'hidden items-center' }, [createVNode(Qe)], 8, pr)], 8, cr)])) : normalizeProps('', true), v1020.type ? normalizeProps('', true) : (openBlock(), createBlock('li', vr, [e('a', { 'href': createTextVNode(de).getDownloadUrl("replay", 'm3u', v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': 'w-full p-2 text-sm capitalize' }, 'Replays', 8, fr), e('span', { 'id': "stream-url-" + v1020.id + "-replay", 'class': 'hidden' }, useAttrs(createTextVNode(de).getDownloadUrl("replay", 'm3u', v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, gr), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-replay", 'class': 'text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all' }, [e("span", { 'id': "default-icon-" + v1020.id + "-replay" }, [createVNode(Ye)], 8, br), e('span', { 'id': "success-icon-" + v1020.id + "-replay", 'class': "hidden items-center" }, [createVNode(Qe)], 8, wr)], 8, hr)])), v1020.type ? normalizeProps('', true) : (openBlock(), createBlock('li', xr, [e('a', { 'href': createTextVNode(de).getDownloadUrl("selected", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, v1020.streamIds), 'class': 'w-full p-2 text-sm capitalize' }, "Selected", 8, yr), e("span", { 'id': "stream-url-" + v1020.id + "-selected", 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("selected", "m3u", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, v1020.streamIds)), 9, kr), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-selected", 'class': 'text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all' }, [e("span", { 'id': "default-icon-" + v1020.id + '-selected' }, [createVNode(Ye)], 8, $r), e('span', { 'id': 'success-icon-' + v1020.id + "-selected", 'class': "hidden items-center" }, [createVNode(Qe)], 8, Cr)], 8, Sr)])), v1020.type ? normalizeProps('', true) : (openBlock(), createBlock('li', Mr, [e('a', { 'href': createTextVNode(de).getDownloadUrl('app1', "conf", v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null), 'class': "w-full p-2 text-sm capitalize" }, "App1", 8, Ar), e("span", { 'id': "stream-url-" + v1020.id + "-app1", 'class': "hidden" }, useAttrs(createTextVNode(de).getDownloadUrl("app1", 'conf', v1017.value, v1020.token, v1020.provider, v1018.value, v1019.value, null)), 9, Ir), e("button", { 'id': "copy-clipboard-button-" + v1020.id + "-app1", 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v1020.id + "-app1" }, [createVNode(Ye)], 8, Pr), e("span", { 'id': 'success-icon-' + v1020.id + "-app1", 'class': "hidden items-center" }, [createVNode(Qe)], 8, Vr)], 8, Tr)]))]), '_': 1 }, 8, ['id', 'name'])); } }, Ur = .type, he = { '__name': 'ButtonPrimary', 'props': ["text", "Icon", "type"], 'emits': .click, 'setup'(v1040, { emit: v1041 }) { v1045 = v1040, v1046 = v1041, v1047 = () => { v1046("click"); }; return (vid6, vid7) => (openBlock(), createBlock("button", { 'type': v1040.type ? v1040.type : "button", 'onClick': v1047, 'class': "bg-linear-to-r/srgb from-yellow-300 to-yellow-400 hover:from-yellow-400 hover:to-yellow-500 font-medium text-black flex items-center focus:outline-hidden rounded-xl text-sm px-3 py-2 transition-colors" }, [v1045.Icon ? (openBlock(), Modal(createTextVNode(v1040.Icon), { 'key': 0, 'class': "mr-1" })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v1045.text) + ' ', 1), createStaticVNode(vid6.$slots, 'default')], 8, Ur)); } }, Ft = { '__name': "ButtonDanger", 'props': ['text', "Icon"], 'emits': .click, 'setup'(v1048, { emit: v1049 }) { v1054 = v1048, v1055 = v1049, v1056 = () => { v1055('click'); }; return (v1057, v1058) => (openBlock(), createBlock("button", { 'type': "button", 'onClick': v1056, 'class': "bg-linear-to-r/srgb from-red-600 to-red-700 hover:from-red-700 hover:to-red-800 text-white flex items-center font-medium focus:outline-hidden rounded-xl text-sm px-3 py-2 transition-colors ease-in-out" }, [v1054.Icon ? (openBlock(), Modal(createTextVNode(v1048.Icon), { 'key': 0, 'class': 'mr-1' })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v1054.text) + ' ', 1), createStaticVNode(v1057.$slots, "default")])); } }, Ae = resolveComponent('providers', { 'state': () => ({ 'notificationStore': it(), 'providers': renderList([]), 'isLoading': withCtx(false), 'isLoadingRescan': withCtx(false), 'currentSelectedProvider': withCtx(null), 'currentSelectedProviderName': withCtx(null), 'isSaving': withCtx(false), 'error': withCtx(null), 'response': withCtx(null), 'provider': withCtx(Object) }), 'getters': { 'getSelectedProviderId'(prov21) { return prov21.currentSelectedProvider; }, 'getSelectedProviderName'(prov22) { return prov22.currentSelectedProviderName; } }, 'actions': { 'setCurrentSelectedProvider'(prov23) { this.currentSelectedProvider = prov23; }, 'setDefaultCurrentSelectedProvider'() { prov25 = { 'mARRe': "Could not setup default provider" }; this.providers.length ? (this.currentSelectedProvider = this.providers[0].Id, this.currentSelectedProviderName = this.providers[0].Name) : console.error("Could not setup default provider"); }, async 'getAllProviders'() { prov28 = { 'ANLWI': "error" }; this.isLoading = true, this.error = null; try { const v1059 = await q.req(I.getApiUrl() + "/provider/get"); this.providers = v1059.data.Providers; } catch (prov29) { this.error = prov29, this.notificationStore.showNotification(this.error, "error"); } finally { this.isLoading = false; } }, async 'add'(notif18, notif19) { v1062 = { 'eNQpd': "success", 'SYocd': 'error', 'qmmmC': function(errRef26, errRef27) { return errRef26 === errRef27; }, 'ilyFP': "ViHjV" }; this.isLoading = true, this.error = null; try { const errRef28 = await q.req(I.getApiUrl() + "/provider/add", { 'ProviderName': notif18, 'LogoBase64': notif19 }); return this.notificationStore.showNotification("Added new provider " + notif18 + " successfully.", "success"), errRef28.data; } catch (notif20) { this.error = notif20, this.notificationStore.showNotification(this.error, "error"); } finally { v1062.qmmmC(v1062.ilyFP, 'EQYqR') ? this.error = errRef29 : this.isLoading = false; } }, async 'editNameLogo'(errRef30, errRef31, errRef32, errRef33) { prov30 = { 'ProviderId': errRef30, 'ProviderName': errRef31, ...(errRef32 !== '') ? { 'LogoBase64': errRef32 } : {}, ...errRef33 !== '' ? { 'OverlayBase64': errRef33 } : {} }; this.isSaving = true, this.error = null; try { await q.req(I.getApiUrl() + "/provider/edit", prov30), this.notificationStore.showNotification("Edited provider " + errRef31 + " successfully.", "success"); } catch (errRef36) { this.error = errRef36, this.notificationStore.showNotification(this.error, "error"); } finally { (true) ? this.isSaving = false : (v1068.value = null, v1069.toggle()); } }, async 'edit'(v1070, v1071) { prov31 = { 'ProviderId': v1070, 'Provider': v1071 }; this.isSaving = true, this.error = null; try { await q.req(I.getApiUrl() + "/provider/edit", prov31), this.notificationStore.showNotification("Edited provider " + v1071.Name + " successfully.", "success"); } catch (v1077) { this.error = v1077, this.notificationStore.showNotification(this.error, "error"); } finally { this.isSaving = false; } }, async 'deleteProvider'(prov32) { this.isLoading = true, this.error = null; try { if ((true)) { const apiRef4 = await q.req(I.getApiUrl() + "/provider/delete", { 'ProviderId': prov32.Id }); this.response = apiRef4.data, this.notificationStore.showNotification("Deleted provider " + prov32.Name + ' successfully.', "success"); } else { const v1085 = v1086.value.indexOf(v1087); (v1085 !== -1) ? v1088.value.splice(v1085, 1) : v1089.value.push(v1090); } } catch (errRef37) { this.error = errRef37, this.notificationStore.showNotification(this.error, "error"); } finally { if ((false)) { const errRef38 = errRef39.getElementById("add-provider"), } else this.isLoading = false; } }, async 'get'(v1095) { prov39 = { 'ProviderId': v1095 }; this.isLoading = true, this.error = null; try { if ((true)) { const prov40 = await q.req(I.getApiUrl() + '/provider/get', prov39); this.provider = prov40.data?..Providers[0]; } else { prov41 && (prov42 = prov43); let prov44 = "all"; v1110.value.length > 0 ? prov44 = v1111.value : (v1112.value !== '') && !v1113.value && (prov44 = v1114.value.map(v1115 => v1115.Name).join(', ')), prov44 = (prov44 || "all"), togRef12.value = "Are you sure you want to apply changes to:\n " + prov44 + ' ?', modal9.value.toggleModal(); } } catch (modal10) { (true) ? this.error = modal10 : this.isLoading = false; } finally { this.isLoading = false; } }, async 'exportProvider'(prov45, prov46 = "all") { prov48 = { 'uGzpl': 'success' }; this.isLoading = true, this.error = null; try { const loadRef17 = await q.req(I.getApiUrl() + "/provider/export", { 'ProviderId': prov45, 'StreamId': prov46 }); return this.notificationStore.showNotification("Exported provider " + prov45 + " successfully.", "success"), loadRef17.data; } catch (stream29) { this.error = stream29; } finally { this.isLoading = false; } }, async 'exportKeys'(v1116) { this.isLoading = true, this.error = null; try { const errRef40 = await q.req(I.getApiUrl() + "/provider/exportkeys", { 'ProviderId': v1116 }); return this.notificationStore.showNotification('Exported keys ' + v1116 + " successfully.", "success"), errRef40.data; } catch (prov49) { this.error = prov49; } finally { this.isLoading = false; } }, async 'exportManifestAndKeys'(manif2) { manif5 = { 'roPWI': "success" }; this.isLoading = true, this.error = null; try { const prov50 = await q.req(I.getApiUrl() + "/provider/exportmanifestandkeys", { 'ProviderId': manif2 }); return this.notificationStore.showNotification("Exported manifest and keys " + manif2 + " successfully.", "success"), prov50.data; } catch (prov51) { this.error = prov51; } finally { this.isLoading = false; } }, async 'pushKeys'(v1124) { this.isLoading = true, this.error = null; try { const prov52 = await q.req(I.getApiUrl() + "/provider/pushkeys", { 'ProviderId': v1124 }); return this.notificationStore.showNotification("Pushed " + v1124 + ' keys successfully.', "success"), prov52.data; } catch (prov53) { this.notificationStore.showNotification('Error pushing ' + v1124 + ' keys.', "error"), this.error = prov53; } finally { this.isLoading = false; } }, async 'import'(errRef41, errRef42) { this.isLoading = true, this.error = null; try { if ((true)) { const loadRef18 = await q.req(I.getApiUrl() + "/provider/import", { 'FileName': errRef41, 'ProviderImportConfig': errRef42 }); loadRef18.data.Message !== "success" ? this.notificationStore.showNotification(loadRef18.data.Message, "success") : this.notificationStore.showNotification("Imported " + errRef41 + " successfully.", "success"); } else v1140.toggle(); } catch (v1141) { this.error = v1141; } finally { (false) ? this.isLoading = false : this.isLoading = false; } }, async 'massUpdate'(updRef10, updRef11 = "all", updRef12, updRef13, updRef14 = '') { updRef18 = { 'fCjxP': function(v1142, v1143) { return v1142 !== v1143; }, 'ZQTiU': "bncUN" }, v1144 = { 'Action': updRef12, 'Param': updRef13, 'ProviderId': updRef10, 'StreamId': updRef11, 'Value': updRef14 }; this.isLoading = true, this.error = null; try { if (updRef18.fCjxP(updRef18.ZQTiU, updRef18.ZQTiU)) v1145.hide(); else { const v1146 = await q.req(I.getApiUrl() + "/provider/massupdate", v1144); this.response = v1146.data; } } catch (resp2) { this.error = resp2; } finally { this.isLoading = false; } }, async 'getMassUpdateOptions'() { v1151 = { 'AtfYC': 'none', 'stdfr': "Provider", 'nMRCn': "Random account", 'YPaaX': "random", 'PlNgU': 'Cycle through all accounts', 'mOzoa': "all", 'JBaeG': "modelValue", 'lMrfc': function(acct5, acct6) { return acct5(acct6); }, 'UAQBv': function(v1152, v1153) { return v1152 !== v1153; }, 'gkerc': "ofqAB", 'AyOdV': function(v1154, v1155) { return v1154 === v1155; }, 'JRAsu': "dFKbl" }; this.isLoading = true, this.error = null; try { if (v1151.UAQBv("ofqAB", "ofqAB")) { const errRef44 = { 'Ssari': "none", 'BISCu': "Provider", 'efSAH': "Random account", 'aBwLj': "random", 'NaOCx': "Cycle through all accounts", 'QXfGA': "all" }, v1156 = v1157(v1158, "modelValue"), v1159 = v1160, v1161 = v1162(() => { let v1163 = [{ 'label': "No account", 'value': errRef44.Ssari }, ...v1159.isConfig ? [] : [{ 'label': errRef44.BISCu, 'value': 'provider' }], { 'label': errRef44.efSAH, 'value': errRef44.aBwLj }, { 'label': errRef44.NaOCx, 'value': errRef44.QXfGA }]; if (v1159.accounts) { for (const v1164 of v1159.accounts) v1163.push({ 'label': '[ ' + v1164.User + ' ]', 'value': v1164.User }); } return v1163; }); return (v1165, v1166) => (v1167(), v1168('div', v1169, [v1166[1] || (v1166[1] = v1170("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Account", -1)), v1171(v1172, { 'data': v1161.value, 'id': v1173.id, 'modelValue': v1156.value.ScriptAccountsUser, 'onUpdate:modelValue': v1166[0] || (v1166[0] = updRef25 => v1156.value.ScriptAccountsUser = updRef25), 'logos-disabled': '' }, null, 8, ["data", 'id', 'modelValue'])])); } else return (await q.req(I.getApiUrl() + "/bootstrap")).data.MassUpdate; } catch (errRef45) { this.error = errRef45; } finally { v1151.AyOdV("qxtlw", "dFKbl") ? this.error = errRef46 : this.isLoading = false; } }, async 'rescan'() { v1180 = { 'sWDmA': function(v1181, v1182, v1183) { return v1181(v1182, v1183); }, 'QKcxN': "onCheckFullStatus", 'RjzPZ': function(v1184) { return v1184(); }, 'aKvwX': 'Rescanned providers successfully.', 'Qruwb': "success", 'iIqWc': function(prov54, prov55) { return prov54 !== prov55; }, 'JGzDt': "GdWQe", 'XKQuW': function(v1185, v1186) { return v1185 === v1186; }, 'goGCl': "pbsRj" }; this.isLoadingRescan = true, this.error = null; try { const v1187 = await q.req(I.getApiUrl() + "/provider/rescan"); return this.notificationStore.showNotification("Rescanned providers successfully.", "success"), v1187.data; } catch (v1188) { v1180.iIqWc("GdWQe", 'riQHB') ? this.error = v1188 : v1189("onCheckFullStatus", v1190.stream.Status); } finally { v1180.XKQuW("ArNKB", "pbsRj") ? (v1191(), v1192()) : this.isLoadingRescan = false; } }, async 'backup'() { this.isLoading = true, this.error = null; try { if ((false)) return errRef47.currentSelectedProvider; else { const errRef48 = await q.req(I.getApiUrl() + "/provider/backup", {}, "blob"); return this.notificationStore.showNotification("Got providers backup successfully.", "success"), errRef48.data; } } catch (apiRef5) { if ((false)) return v1216(), v1217("svg", v1218, [...v1219[0] || (v1220[0] = [v1221("path", { 'd': "M18.5 12C18.5 13.3807 17.3807 14.5 16 14.5C14.6193 14.5 13.5 13.3807 13.5 12C13.5 10.6193 14.6193 9.5 16 9.5C17.3807 9.5 18.5 10.6193 18.5 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), v1222("path", { 'd': "M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), v1223("path", { 'd': "M10.5 12C10.5 13.3807 9.38071 14.5 8 14.5C6.61929 14.5 5.5 13.3807 5.5 12C5.5 10.6193 6.61929 9.5 8 9.5C9.38071 9.5 10.5 10.6193 10.5 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), v1224("path", { 'd': "M8 14.5H16", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round" }, null, -1)])]); else this.error = apiRef5; } finally { (true) ? this.isLoading = false : loadRef19.toggle(); } }, async 'cacheLogos'(loadRef20, loadRef21) { togRef13 = { 'NFLZq': 'onToggleSelection', 'yFcKN': function(togRef14, togRef15) { return togRef14 !== togRef15; }, 'oYKmm': "mcZeO", 'QndDj': "Started caching logos successfully.", 'vXwWb': function(v1226, v1227) { return v1226 === v1227; }, 'FLlhv': 'Csdqo' }, stream30 = { 'ProviderId': loadRef20, 'StreamType': loadRef21 }; this.isLoading = true, this.error = null; try { if (togRef13.yFcKN("GdmqI", togRef13.oYKmm)) { const apiRef6 = await q.req(I.getApiUrl() + "/provider/cachelogos", stream30); return this.notificationStore.showNotification(togRef13.QndDj, 'success'), apiRef6.data; } else notif21("onToggleSelection", notif22.recording.Id); } catch (notif23) { this.error = notif23; } finally { togRef13.vXwWb("Csdqo", 'Csdqo') ? this.isLoading = false : this.isLoading = false; } } } }), _r = {}, Er = { 'class': "w-3 h-3", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': "none", 'viewBox': "0 0 14 14" }; function Lr(v1228, v1229) { v1233 = { 'rKxNR': function(v1234) { return v1234(); }, 'tPLAr': function(v1235, v1236, v1237, v1238) { return v1235(v1236, v1237, v1238); }, 'GPCqG': 'svg', 'jdneB': function(v1239, v1240, v1241, v1242, v1243) { return v1239(v1240, v1241, v1242, v1243); }, 'dHpOc': "currentColor", 'GKNfc': "round", 'gegmO': "m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6" }; return openBlock(), v1233.tPLAr(createBlock, "svg", Er, [...v1229[0] || (v1229[0] = [v1233.jdneB(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6" }, null, -1)])]); } const Re = J(_r, [ ["render", Lr] ]), Dr = {}, Gr = { 'class': "mx-auto mb-4 w-12 h-12 text-yellow-300", 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'fill': "none", 'viewBox': "0 0 20 20" }; function Rr(v1244, v1245) { v1247 = { 'yIoAN': function(v1248) { return v1248(); }, 'YvEUU': function(v1249, v1250, v1251, v1252) { return v1249(v1250, v1251, v1252); }, 'yFKIR': "svg", 'OJjzV': function(v1253, v1254, v1255, v1256, v1257) { return v1253(v1254, v1255, v1256, v1257); }, 'dYMNA': "path", 'JxBpR': "round", 'SHgpn': 'M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z' }; return openBlock(), v1247.YvEUU(createBlock, "svg", Gr, [...v1245[0] || (v1245[0] = [v1247.OJjzV(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 11V6m0 8h.01M19 10a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); } const At = J(Dr, [ ['render', Rr] ]), Nr = { 'name': "IconOpenSidebar" }, jr = { 'class': "w-6 h-6", 'aria-hidden': "true", 'fill': "currentColor", 'viewBox': '0 0 20 20', 'xmlns': "http://www.w3.org/2000/svg" }; function Or(rndr6, rndr7, v1258, v1259, v1260, v1261) { v1268 = { 'JcqFO': function(v1269, v1270, v1271, v1272) { return v1269(v1270, v1271, v1272); }, 'JPZlQ': "svg", 'hSJbR': function(v1273, v1274, v1275, v1276, v1277) { return v1273(v1274, v1275, v1276, v1277); }, 'uLJKM': "path", 'qCUjs': "evenodd", 'GfPhP': "M2 4.75A.75.75 0 012.75 4h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 4.75zm0 10.5a.75.75 0 01.75-.75h7.5a.75.75 0 010 1.5h-7.5a.75.75 0 01-.75-.75zM2 10a.75.75 0 01.75-.75h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 10z" }; return openBlock(), v1268.JcqFO(createBlock, "svg", jr, [...rndr7[0] || (rndr7[0] = [v1268.hSJbR(e, "path", { 'clip-rule': "evenodd", 'fill-rule': "evenodd", 'd': "M2 4.75A.75.75 0 012.75 4h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 4.75zm0 10.5a.75.75 0 01.75-.75h7.5a.75.75 0 010 1.5h-7.5a.75.75 0 01-.75-.75zM2 10a.75.75 0 01.75-.75h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 10z" }, null, -1)])]); } const Br = J(Nr, [ ["render", Or] ]), Hr = { 'class': "fixed top-0 z-50 w-full border-b bg-black/50 backdrop-blur-xl border-white/15" }, Fr = { 'class': "px-3 py-1 lg:px-5 lg:pl-3" }, qr = { 'class': 'flex items-center justify-between' }, Wr = { 'class': 'flex items-center justify-start rtl:justify-end' }, zr = { 'class': "flex flex-row items-center gap-4" }, Zr = { 'class': "flex flex-col justify-end items-end gap-1" }, Kr = { 'key': 0, 'class': "flex justify-end gap-2" }, Jr = { 'class': 'text-white text-sm font-semibold' }, Yr = { 'id': "o11-sidebar", 'class': 'fixed top-0 left-0 z-40 w-48 mt-12 overflow-y-scroll no-scrollbar transition-transform -translate-x-full border-r border-white/15 sm:translate-x-0 backdrop-blur-xl bg-neutral-950' }, Qr = { 'class': "pb-48 h-screen px-3 pt-4 overflow-y-auto no-scrollbar" }, Xr = { 'class': "space-y-2 font-medium" }, en = { 'class': "pt-4 mt-4 space-y-2 font-medium border-t border-white/15" }, tn = { 'class': "flex flex-col w-full gap-4" }, ln = { 'class': 'pt-4 mt-4 space-y-2 font-medium border-t border-white/15' }, on = { 'key': 1 }, sn = { 'id': "logout-modal", 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full bg-black/50" }, an = { 'class': "relative p-4 w-full max-w-md max-h-full", 'data-modal-backdrop-classes': 'bg-black' }, rn = { 'class': "relative rounded-xl shadow-xl bg-black" }, nn = { 'class': "p-4 md:p-5 text-center" }, dn = { 'class': "flex gap-2 justify-center" }, un = { 'id': "shutdown-modal", 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full bg-black/50" }, cn = { 'class': "relative p-4 w-full max-w-md max-h-full", 'data-modal-backdrop-classes': "bg-black" }, mn = { 'class': "relative rounded-xl shadow-xl bg-black" }, pn = { 'class': "p-4 md:p-5 text-center" }, vn = { 'class': 'my-3 text-lg font-bold text-white' }, fn = { 'class': "flex gap-2 justify-center" }, gn = { '__name': "Sidebar", 'setup'(v1278) { v1353 = { 'nywfD': function(v1354) { return v1354(); }, 'vBiEW': function(v1355, v1356, v1357, v1358) { return v1355(v1356, v1357, v1358); }, 'PWxVc': "svg", 'hHCWX': function(v1359, v1360, v1361, v1362, v1363) { return v1359(v1360, v1361, v1362, v1363); }, 'GwSXQ': "path", 'bqNRY': 'evenodd', 'JspBI': function(v1364, v1365) { return v1364 === v1365; }, 'uxPNT': "iuwTh", 'cYiAM': "/login", 'XStxu': function(v1366) { return v1366(); }, 'iAAXW': "jvStJ", 'OOtzK': "logout-modal", 'ecYfK': 'dynamic', 'Omdhk': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'JAIyS': function(v1367, v1368) { return v1367 > v1368; }, 'KSXUk': function(v1369, v1370) { return v1369 !== v1370; }, 'xHHUy': "AgTfc", 'WPlad': "shutdown-modal", 'JFWAo': "error", 'njKVZ': function(v1371) { return v1371(); }, 'Piuxj': function(v1372) { return v1372(); }, 'rOwIm': function(v1373) { return v1373(); }, 'SpTJu': function(v1374) { return v1374(); }, 'IMupf': function(v1375, v1376) { return v1375(v1376); }, 'FXiEE': 'router-link', 'LhmfN': function(route, route2, route3, route4) { return route(route2, route3, route4); }, 'BIicX': 'div', 'gWQxf': function(route5, route6, route7, v1377) { return route5(route6, route7, v1377); }, 'ekyRv': 'button', 'YwmPw': "o11-navbar", 'uGkTW': 'true', 'bWjhZ': "inline-flex items-center p-2 text-sm text-white hover:text-white/75 active:text-white/75 rounded-xl sm:hidden focus:outline-hidden transition-opacity", 'yOWtc': function(v1378, v1379, v1380, v1381, v1382) { return v1378(v1379, v1380, v1381, v1382); }, 'BEfXs': "span", 'QXYEE': 'sr-only', 'LLHbo': "Open sidebar", 'JBRlA': function(v1383, v1384, v1385, v1386) { return v1383(v1384, v1385, v1386); }, 'qcrdk': '/providers', 'PLsoA': function(prov56, prov57, prov58, prov59) { return prov56(prov57, prov58, prov59); }, 'OAiWn': function(prov60, prov61, prov62, prov63) { return prov60(prov61, prov62, prov63); }, 'yNMeC': function(v1387, v1388) { return v1387(v1388); }, 'iQqVB': 'max-w-14 lg:max-w-fit font-mono font-bold text-[9px] lg:text-xs rounded-sm p-0.5 px-1 text-center', 'vLCMf': function(v1389, v1390) { return v1389 !== v1390; }, 'Rfdfn': "local", 'FxsTJ': function(v1391, v1392) { return v1391 === v1392; }, 'aeBtc': function(v1393, v1394) { return v1393(v1394); }, 'XLOza': function(v1395, v1396) { return v1395(v1396); }, 'coZmO': function(v1397, v1398, v1399, v1400) { return v1397(v1398, v1399, v1400); }, 'mcGyS': function(v1401) { return v1401(); }, 'fGAuu': 'currentColor', 'HVrXn': function(v1402, v1403, v1404) { return v1402(v1403, v1404); }, 'FJkda': "M12 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4h-4Z", 'enHqy': function(v1405, v1406, v1407, v1408, v1409) { return v1405(v1406, v1407, v1408, v1409); }, 'MiPdJ': function(v1410, v1411) { return v1410(v1411); }, 'Kquyd': function(v1412, v1413, v1414) { return v1412(v1413, v1414); }, 'XHuOC': "text-xs text-center", 'RsXFo': function(v1415, v1416, v1417, v1418) { return v1415(v1416, v1417, v1418); }, 'VXzpg': 'aside', 'MVDfX': function(v1419, v1420, v1421, v1422) { return v1419(v1420, v1421, v1422); }, 'SZFeJ': function(v1423, v1424, v1425, v1426, v1427, v1428) { return v1423(v1424, v1425, v1426, v1427, v1428); }, 'aAThY': function(v1429, v1430) { return v1429(v1430); }, 'OtanL': 'flex items-center p-2 text-gray-900 rounded-xl group', 'BBWBP': "class", 'bpHLr': function(v1431) { return v1431(); }, 'nuRyw': function(v1432, v1433, v1434, v1435) { return v1432(v1433, v1434, v1435); }, 'ZzdSk': function(v1436, v1437, v1438, v1439, v1440, v1441) { return v1436(v1437, v1438, v1439, v1440, v1441); }, 'FxHCT': "/linear", 'YPtYZ': function(v1442, v1443) { return v1442(v1443); }, 'VGoYg': function(v1444, v1445, v1446) { return v1444(v1445, v1446); }, 'ukHUq': function(v1447, v1448, v1449, v1450) { return v1447(v1448, v1449, v1450); }, 'ZseSg': function(v1451, v1452, v1453, v1454, v1455, v1456) { return v1451(v1452, v1453, v1454, v1455, v1456); }, 'OqVWS': "/events", 'Weent': function(v1457, v1458) { return v1457(v1458); }, 'tjelK': "/vod", 'wdZVK': function(v1459, v1460) { return v1459(v1460); }, 'pPQRz': function(v1461, v1462, v1463) { return v1461(v1462, v1463); }, 'tbnMC': function(v1464) { return v1464(); }, 'eQUXL': function(v1465, v1466, v1467, v1468) { return v1465(v1466, v1467, v1468); }, 'rIxJK': function(v1469, v1470, v1471, v1472, v1473, v1474) { return v1469(v1470, v1471, v1472, v1473, v1474); }, 'KAZTW': "/recordings", 'TLDhE': function(v1475, v1476, v1477) { return v1475(v1476, v1477); }, 'KPEIo': function(v1478, v1479, v1480, v1481) { return v1478(v1479, v1480, v1481); }, 'uXSCG': "/epg", 'UzFcd': function(v1482, v1483) { return v1482(v1483); }, 'nNGHO': function(v1484, v1485) { return v1484(v1485); }, 'ZvfiG': function(v1486, v1487, v1488, v1489, v1490, v1491) { return v1486(v1487, v1488, v1489, v1490, v1491); }, 'zuWrf': '/monitoring', 'NeUZo': function(v1492, v1493) { return v1492(v1493); }, 'aqlZz': function(v1494, v1495) { return v1494 !== v1495; }, 'nQtOU': function(v1496, v1497, v1498, v1499, v1500, v1501) { return v1496(v1497, v1498, v1499, v1500, v1501); }, 'BasLS': "/logs", 'ehIxj': function(v1502, v1503) { return v1502 === v1503; }, 'FSqga': function(v1504, v1505) { return v1504 !== v1505; }, 'EDkGd': function(v1506, v1507, v1508) { return v1506(v1507, v1508); }, 'StlyR': function(v1509, v1510, v1511, v1512, v1513, v1514) { return v1509(v1510, v1511, v1512, v1513, v1514); }, 'Rajot': '/users', 'Ehahh': function(usr19, usr20) { return usr19(usr20); }, 'CukPb': function(usr21, usr22, usr23, usr24, usr25, usr26) { return usr21(usr22, usr23, usr24, usr25, usr26); }, 'kGhSP': "/provider/config", 'fakgP': function(v1515, v1516) { return v1515(v1516); }, 'yyuaY': "/config", 'ubsaN': function(v1517, v1518) { return v1517(v1518); }, 'tAlrV': function(v1519, v1520, v1521, v1522, v1523, v1524) { return v1519(v1520, v1521, v1522, v1523, v1524); }, 'Fzzny': "/servers", 'DXhad': function(v1525, v1526) { return v1525(v1526); }, 'ZNcpP': function(v1527, v1528) { return v1527 === v1528; }, 'ttOUh': function(v1529, v1530) { return v1529 !== v1530; }, 'rTbOc': function(v1531, v1532) { return v1531(v1532); }, 'jlAZi': function(v1533) { return v1533(); }, 'Dzonp': function(v1534, v1535, v1536, v1537) { return v1534(v1535, v1536, v1537); }, 'ucDKN': function(v1538, v1539, v1540, v1541, v1542, v1543) { return v1538(v1539, v1540, v1541, v1542, v1543); }, 'QqRVt': "/jobs", 'jbwFz': function(v1544, v1545) { return v1544(v1545); }, 'HhmbS': function(v1546) { return v1546(); }, 'uVjvC': "/search", 'JKbiD': "sidebar", 'hQTxx': 'Playlist', 'XKHjv': function(v1547, v1548, v1549, v1550) { return v1547(v1548, v1549, v1550); }, 'HJJGa': function(v1551, v1552, v1553, v1554, v1555, v1556) { return v1551(v1552, v1553, v1554, v1555, v1556); }, 'HJMIe': function(v1557, v1558) { return v1557 !== v1558; }, 'kmbOP': "/help", 'ZMWuV': function(v1559, v1560) { return v1559(v1560); }, 'PrJEu': function(v1561, v1562, v1563, v1564) { return v1561(v1562, v1563, v1564); }, 'eKoaN': "w-full flex items-center p-2 text-white hover:bg-neutral-50/10 rounded-xl group", 'dUplg': function(v1565, v1566, v1567, v1568, v1569) { return v1565(v1566, v1567, v1568, v1569); }, 'HQtut': "shrink-0 w-5 h-5 text-white group-hover:text-gray-900 group-hover:text-white transition duration-75", 'TblMI': "http://www.w3.org/2000/svg", 'IGxpJ': "none", 'omRsD': "0 0 24 24", 'ntIOf': function(v1570, v1571, v1572) { return v1570(v1571, v1572); }, 'axWCZ': 'round', 'PKScE': "M20 12H8m12 0-4 4m4-4-4-4M9 4H7a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h2", 'DsiJK': function(v1573, v1574, v1575, v1576, v1577) { return v1573(v1574, v1575, v1576, v1577); }, 'XiOea': "ms-3 whitespace-nowrap font-semibold", 'UxZgd': function(v1578) { return v1578(); }, 'TiSYm': "Shutdown", 'vhFmr': function(v1579, v1580, v1581, v1582) { return v1579(v1580, v1581, v1582); }, 'WqmIW': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center", 'XWQJl': function(v1583, v1584) { return v1583(v1584); }, 'yEits': "mb-5 text-base text-white", 'Cftnu': "Yes", 'haTIJ': function(v1585, v1586, v1587, v1588) { return v1585(v1586, v1587, v1588); }, 'JSLoZ': function(v1589, v1590, v1591, v1592) { return v1589(v1590, v1591, v1592); }, 'hKBxZ': function(v1593, v1594) { return v1593(v1594); }, 'avImd': "Close modal", 'tXSwZ': function(v1595, v1596, v1597, v1598) { return v1595(v1596, v1597, v1598); }, 'ArlqW': function(v1599, v1600) { return v1599(v1600); }, 'gLWDY': 'text-base text-white', 'gcPCV': " Are you sure you want to shutdown o11? ", 'ZooWg': function(v1601, v1602, v1603, v1604, v1605) { return v1601(v1602, v1603, v1604, v1605); }, 'ZywWz': function(v1606, v1607) { return v1606(v1607); }, 'MpJWM': function(v1608, v1609, v1610, v1611, v1612) { return v1608(v1609, v1610, v1611, v1612); }, 'anwkw': "input", 'NlcGc': "mb-5 w-auto text-center p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'SmeqU': "Insert code here", 'NPCrX': function(v1613, v1614, v1615, v1616) { return v1613(v1614, v1615, v1616); }, 'iMIxq': function(v1617, v1618, v1619) { return v1617(v1618, v1619); }, 'EbPCX': 'Cancel', 'CFnSL': function(v1620) { return v1620(); }, 'fwKPr': function(v1621, v1622) { return v1621(v1622); } }, v1623 = Be(), v1624 = He(), v1625 = Ae(), v1626 = it(), v1627 = withCtx(null), v1628 = withCtx(null); let v1629 = {}, v1630 = {}, v1631 = {}; const v1632 = Sidebar(() => v1625.providers?..length > 0), v1633 = Sidebar(() => v1623.isAdmin), v1634 = () => { if ((true)) v1623.logout() && (v1630.hide(), v1629.hide(), window.location.href = "/login"); else return v1635(), v1636("svg", v1637, [...v1638[0] || (v1639[0] = [v1640("path", { 'fill-rule': "evenodd", 'd': "M8.6 5.2A1 1 0 0 0 7 6v12a1 1 0 0 0 1.6.8l8-6a1 1 0 0 0 0-1.6l-8-6Z", 'clip-rule': "evenodd" }, null, -1)])]); }; withDirectives(() => { v1641(), v1642(), v1643(); }); const v1641 = () => { const side = document.getElementById('o11-sidebar'); v1629 = new Input(side, { 'backdropClasses': 'bg-black/50 backdrop-blur-xl fixed inset-0 z-30' }); }, side2 = () => { v1629.toggle(); }, togRef16 = () => { v1629.hide(); }, v1642 = () => { const togRef17 = document.getElementById("logout-modal"), v1644 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v1645 = { 'id': "logout-modal", 'override': true }; v1630 = new initFlowbite(togRef17, v1644, v1645);; }, v1643 = () => { if ((true)) { const v1646 = document.getElementById("shutdown-modal"), v1647 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v1648 = { 'id': "shutdown-modal", 'override': true }; v1631 = new initFlowbite(v1646, v1647, v1648); } else { let v1649 = v1650.filter(v1651 => !v1652.includes(v1651.Id)); v1653.single && (v1649.length > 1) && (v1649 = [v1649[0]]), v1654.value = v1649; } }, togRef18 = () => { v1631.toggle(), v1628.value = null, v1627.value = de.generateRandomString(4).toUpperCase(); }, togRef19 = () => { v1630.toggle(); }, togRef20 = () => { v1623.getLoggedInUser(); }, v1655 = async () => { await v1625.getAllProviders(); }, srv47 = async () => { await v1624.getServerVersion(v1624.getSelectedServer); }, srv48 = async () => { v1628.value ? v1627.value.toLowerCase() === v1628.value.toLowerCase() ? (v1626.showNotification("Shutdown will begin.", 'success'), await v1624.shutdown(), v1631.hide()) : v1626.showNotification('Wrong code.\nTry again.', "error") : v1626.showNotification("Code cannot be empty.\nTry again.", "error"); }; return withDirectives(() => { y_util(), z_util(), v1655(), srv47(), togRef20(); }), (v1656, v1657) => { const v1658 = debounce("router-link"); return openBlock(), createBlock(Fragment, null, [e("nav", Hr, [e("div", Fr, [e("div", qr, [e("div", Wr, [e("button", { 'id': "o11-navbar", 'onClick': side2, 'data-drawer-backdrop': "true", 'type': "button", 'class': "inline-flex items-center p-2 text-sm text-white hover:text-white/75 active:text-white/75 rounded-xl sm:hidden focus:outline-hidden transition-opacity" }, [v1657[5] || (v1657[5] = e("span", { 'class': "sr-only" }, "Open sidebar", -1)), createVNode(Br)]), createVNode(v1658, { 'to': "/providers" }, { 'default': withModifiers(() => [...v1657[6] || (v1657[6] = [e("img", { 'class': "h-6 mx-3", 'src': Ws, 'alt': "o11-logo" }, null, -1)])]), '_': 1 }), createVNode(v1658, { 'to': "/providers" }, { 'default': withModifiers(() => [...v1657[7] || (v1657[7] = [e("div", { 'class': "flex flex-col justify-start" }, [e("span", { 'class': 'font-black text-sm text-white h-auto' }, "PRO"), e("div", { 'class': "text-[0.65rem] font-medium text-white" }, " OTT Streamer ")], -1)])]), '_': 1 })]), e("div", zr, [createTextVNode(v1624).currentSelectedServer.Id ? (openBlock(), createBlock("div", { 'key': 0, 'class': classNames(["max-w-14 lg:max-w-fit font-mono font-bold text-[9px] lg:text-xs rounded-sm p-0.5 px-1 text-center", { 'bg-blue-600 text-white': (createTextVNode(v1624).currentSelectedServer.Id !== "local"), 'bg-yellow-300 text-black': (createTextVNode(v1624).currentSelectedServer.Id === "local") }]) }, useAttrs(createTextVNode(v1624).currentSelectedServer.Name), 3)) : normalizeProps('', true), e("div", Zr, [createTextVNode(v1623).isAuth ? (openBlock(), createBlock("div", Kr, [v1657[8] || (v1657[8] = e("svg", { 'class': 'w-5 h-5 text-white', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }, [e("path", { 'fill-rule': "evenodd", 'd': "M12 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4h-4Z", 'clip-rule': "evenodd" })], -1)), e("span", Jr, useAttrs(createTextVNode(v1623).username), 1)])) : normalizeProps('', true), createVNode(io, { 'class': "text-xs text-center" })])])])])]), e("aside", Yr, [v1353.coZmO(e, "div", Qr, [e('ul', Xr, [e('li', { 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/providers", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.includes("/providers"), 'text-white hover:bg-neutral-50/10 font-bold': !v1656.$route.path.includes("/providers") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': !v1656.$route.path.includes('/providers'), 'text-white': !v1656.$route.path.includes("/providers") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }, [...v1657[9] || (v1657[9] = [e('path', { 'fill-rule': "evenodd", 'd': 'M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6Zm4.996 2a1 1 0 0 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 8a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Zm-4.004 3a1 1 0 1 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 11a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Zm-4.004 3a1 1 0 1 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 14a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Z', 'clip-rule': "evenodd" }, null, -1)])], 2)), v1657[10] || (v1657[10] = e("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "Providers", -1))]), '_': 1 }, 8, ["class"])]), v1632.value ? (openBlock(), createBlock('li', { 'key': 0, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/linear", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.startsWith("/linear"), 'text-white hover:bg-neutral-50/10': !v1656.$route.path.startsWith("/linear") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path.startsWith('/linear'), 'text-white': !v1656.$route.path.startsWith("/linear") }]), 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'viewBox': "0 0 24 24", 'fill': "none" }, [...v1657[11] || (v1657[11] = [e('path', { 'd': "M21.0254 8.40554C20.7987 8.20998 20.5218 8.09678 20.3141 8.02584C20.0833 7.94703 19.8184 7.88184 19.5383 7.82624C18.9764 7.71473 18.2727 7.62624 17.4908 7.55704C15.9221 7.41822 13.955 7.34998 12 7.34998C10.045 7.34997 8.0779 7.41821 6.50923 7.55704C5.7273 7.62623 5.02357 7.71473 4.46174 7.82624C4.18161 7.88184 3.91672 7.94703 3.68594 8.02583C3.4782 8.09677 3.20126 8.20998 2.97462 8.40553C2.76112 8.58976 2.63916 8.81815 2.56971 8.97159C2.49263 9.14189 2.43333 9.32752 2.38581 9.50895C2.29052 9.87283 2.21854 10.3144 2.16365 10.7872C2.05319 11.7386 2 12.9242 2 14.1032C2 15.283 2.05326 16.4858 2.16311 17.4726C2.21784 17.9643 2.28883 18.4229 2.38053 18.807C2.46043 19.1416 2.59126 19.5854 2.85131 19.906C3.08981 20.2 3.43086 20.3352 3.60561 20.3981C3.82965 20.4789 4.09015 20.5429 4.36115 20.596C4.90739 20.703 5.60964 20.7873 6.39637 20.853C7.97657 20.9851 9.99449 21.05 12 21.05C14.0055 21.05 16.0234 20.9851 17.6036 20.853C18.3904 20.7873 19.0926 20.703 19.6388 20.596C19.9098 20.5429 20.1703 20.4789 20.3944 20.3981C20.5691 20.3352 20.9102 20.2 21.1487 19.906C21.4087 19.5854 21.5396 19.1416 21.6195 18.807C21.7112 18.4229 21.7822 17.9643 21.8369 17.4726C21.9467 16.4858 22 15.283 22 14.1032C22 12.9242 21.9468 11.7386 21.8363 10.7872C21.7815 10.3144 21.7095 9.87284 21.6142 9.50896C21.5667 9.32752 21.5074 9.14189 21.4303 8.9716C21.3608 8.81815 21.2389 8.58976 21.0254 8.40554Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': 'round', 'stroke-linejoin': "round" }, null, -1), e("line", { 'x1': '11.4858', 'y1': "6.44995", 'x2': "8.39999", 'y2': "3.36416", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': 'round' }, null, -1), e("line", { 'x1': '1', 'y1': '-1', 'x2': "5.36396", 'y2': '-1', 'transform': "matrix(0.707107 -0.707107 -0.707107 -0.707107 11.1 6.44995)", 'stroke': 'currentColor', 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])], 2)), v1657[12] || (v1657[12] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, 'Linear', -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1632.value ? (openBlock(), createBlock('li', { 'key': 1, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/events", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.startsWith("/events"), 'text-white hover:bg-neutral-50/10': !v1656["$route"].path.startsWith("/events") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path.startsWith("/events"), 'text-white': !v1656.$route.path.startsWith("/events") }]), 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v1657[13] || (v1657[13] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': 'M4 10h16m-8-3V4M7 7V4m10 3V4M5 20h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1Zm3-7h.01v.01H8V13Zm4 0h.01v.01H12V13Zm4 0h.01v.01H16V13Zm-8 4h.01v.01H8V17Zm4 0h.01v.01H12V17Zm4 0h.01v.01H16V17Z' }, null, -1)])], 2)), v1657[14] || (v1657[14] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Events", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1632.value ? (openBlock(), createBlock('li', { 'key': 2, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/vod", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.startsWith("/vod"), 'text-white hover:bg-neutral-50/10': !v1656.$route.path.startsWith("/vod") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path.startsWith("/vod"), 'text-white': !v1656.$route.path.startsWith("/vod") }]), 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v1657[15] || (v1657[15] = [e("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m14-4v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1ZM9 12h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Zm5.697 2.395v-.733l1.269-1.219v2.984l-1.268-1.032Z" }, null, -1)])], 2)), v1657[16] || (v1657[16] = e("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "VOD", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1632.value ? (openBlock(), createBlock('li', { 'key': 3, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/recordings", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.startsWith("/recordings"), 'text-white hover:bg-neutral-50/10': !v1656.$route.path.startsWith("/recordings") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path.startsWith('/recordings'), 'text-white': !v1656.$route.path.startsWith("/recordings") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v1657[17] || (v1657[17] = [e('path', { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M14 6H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1Zm7 11-6-2V9l6-2v10Z" }, null, -1)])], 2)), v1657[18] || (v1657[18] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Recordings", -1))]), '_': 1 }, 8, ['class'])])) : normalizeProps('', true), v1632.value ? (openBlock(), createBlock('li', { 'key': 4, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/epg", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.startsWith("/epg"), 'text-white hover:bg-neutral-50/10': !v1656.$route.path.startsWith("/epg") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(['shrink-0 w-5 h-5 transition duration-75', { 'text-black': v1656.$route.path.startsWith("/epg"), 'text-white': !v1656.$route.path.startsWith("/epg") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v1657[19] || (v1657[19] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M11 9h6m-6 3h6m-6 3h6M6.996 9h.01m-.01 3h.01m-.01 3h.01M4 5h16a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z" }, null, -1)])], 2)), v1657[20] || (v1657[20] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "EPG", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value ? (openBlock(), createBlock('li', { 'key': 5, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/monitoring", 'class': classNames(['flex items-center p-2 text-gray-900 rounded-xl group', { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v1656.$route.path === "/monitoring"), 'text-white hover:bg-neutral-50/10': (v1656.$route.path !== '/monitoring') }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock('svg', { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path === "/monitoring", 'text-white': v1656.$route.path !== "/monitoring" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v1657[21] || (v1657[21] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M3 15v4m6-6v6m6-4v4m6-6v6M3 11l6-5 6 5 5.5-5.5" }, null, -1)])], 2)), v1657[22] || (v1657[22] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Monitoring", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value ? (openBlock(), createBlock('li', { 'key': 6, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/logs", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v1656.$route.path === "/logs"), 'text-white hover:bg-neutral-50/10': (v1656.$route.path !== "/logs") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path === '/logs', 'text-white': v1656.$route.path !== "/logs" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v1657[23] || (v1657[23] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m4 8h6m-6-4h6m4-8v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1Z" }, null, -1)])], 2)), v1657[24] || (v1657[24] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Logs", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value ? (openBlock(), createBlock('li', { 'key': 7, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/users", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v1656.$route.path === "/users"), 'text-white hover:bg-neutral-50/10': v1656["$route"].path !== '/users' }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(['shrink-0 w-5 h-5 transition duration-75', { 'text-black': v1656.$route.path === "/users", 'text-white': v1656.$route.path !== "/users" }]), 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }, [...v1657[25] || (v1657[25] = [e("path", { 'fill-rule': "evenodd", 'd': "M8 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4H6Zm7.25-2.095c.478-.86.75-1.85.75-2.905a5.973 5.973 0 0 0-.75-2.906 4 4 0 1 1 0 5.811ZM15.466 20c.34-.588.535-1.271.535-2v-1a5.978 5.978 0 0 0-1.528-4H18a4 4 0 0 1 4 4v1a2 2 0 0 1-2 2h-4.535Z", 'clip-rule': "evenodd" }, null, -1)])], 2)), v1657[26] || (v1657[26] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Users", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value && v1632.value ? (openBlock(), createBlock('li', { 'key': 8, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/provider/config", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.includes("/config"), 'text-white hover:bg-neutral-50/10': !v1656.$route.path.includes("/config") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock('svg', { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path.includes('/config'), 'text-white': !v1656.$route.path.includes("/config") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'currentColor', 'viewBox': "0 0 24 24" }, [...v1657[27] || (v1657[27] = [e("path", { 'fill-rule': "evenodd", 'd': "M9.586 2.586A2 2 0 0 1 11 2h2a2 2 0 0 1 2 2v.089l.473.196.063-.063a2.002 2.002 0 0 1 2.828 0l1.414 1.414a2 2 0 0 1 0 2.827l-.063.064.196.473H20a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-.089l-.196.473.063.063a2.002 2.002 0 0 1 0 2.828l-1.414 1.414a2 2 0 0 1-2.828 0l-.063-.063-.473.196V20a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2v-.089l-.473-.196-.063.063a2.002 2.002 0 0 1-2.828 0l-1.414-1.414a2 2 0 0 1 0-2.827l.063-.064L4.089 15H4a2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2h.09l.195-.473-.063-.063a2 2 0 0 1 0-2.828l1.414-1.414a2 2 0 0 1 2.827 0l.064.063L9 4.089V4a2 2 0 0 1 .586-1.414ZM8 12a4 4 0 1 1 8 0 4 4 0 0 1-8 0Z", 'clip-rule': "evenodd" }, null, -1)])], 2)), v1657[28] || (v1657[28] = e("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, 'Config', -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value ? (openBlock(), createBlock('li', { 'key': 9, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/servers", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v1656.$route.path === '/servers'), 'text-white hover:bg-gray-100 hover:bg-neutral-50/10 font-bold': (v1656.$route.path !== "/servers") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path === "/servers", 'text-white': v1656.$route.path !== "/servers" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v1657[29] || (v1657[29] = [e("path", { 'd': "M18 7H18.01M15 7H15.01M18 17H18.01M15 17H15.01M6 10H18C18.9319 10 19.3978 10 19.7654 9.84776C20.2554 9.64477 20.6448 9.25542 20.8478 8.76537C21 8.39782 21 7.93188 21 7C21 6.06812 21 5.60218 20.8478 5.23463C20.6448 4.74458 20.2554 4.35523 19.7654 4.15224C19.3978 4 18.9319 4 18 4H6C5.06812 4 4.60218 4 4.23463 4.15224C3.74458 4.35523 3.35523 4.74458 3.15224 5.23463C3 5.60218 3 6.06812 3 7C3 7.93188 3 8.39782 3.15224 8.76537C3.35523 9.25542 3.74458 9.64477 4.23463 9.84776C4.60218 10 5.06812 10 6 10ZM6 20H18C18.9319 20 19.3978 20 19.7654 19.8478C20.2554 19.6448 20.6448 19.2554 20.8478 18.7654C21 18.3978 21 17.9319 21 17C21 16.0681 21 15.6022 20.8478 15.2346C20.6448 14.7446 20.2554 14.3552 19.7654 14.1522C19.3978 14 18.9319 14 18 14H6C5.06812 14 4.60218 14 4.23463 14.1522C3.74458 14.3552 3.35523 14.7446 3.15224 15.2346C3 15.6022 3 16.0681 3 17C3 17.9319 3 18.3978 3.15224 18.7654C3.35523 19.2554 3.74458 19.6448 4.23463 19.8478C4.60218 20 5.06812 20 6 20Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])], 2)), v1657[30] || (v1657[30] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Servers", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1633.value ? (openBlock(), createBlock('li', { 'key': 10, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/jobs", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.includes("/jobs"), 'text-white hover:bg-neutral-50/10 font-bold': !v1656.$route.path.includes("/jobs") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(['w-5 h-5 transition duration-75', { 'text-black': !v1656.$route.path.includes("/jobs"), 'text-white': !v1656.$route.path.includes("/jobs") }]), 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v1657[31] || (v1657[31] = [e("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m20.9532 11.7634-2.0523-2.05225-2.0523 2.05225 2.0523 2.0523 2.0523-2.0523Zm-1.3681-2.73651-4.1046-4.10457L12.06 8.3428l4.1046 4.1046 3.4205-3.42051Zm-4.1047 2.73651-2.7363-2.73638-8.20919 8.20918 2.73639 2.7364 8.2091-8.2092Z" }, null, -1), e("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m12.9306 3.74083 1.8658 1.86571-2.0523 2.05229-1.5548-1.55476c-.995-.99505-3.23389-.49753-3.91799.18657l2.73639-2.73639c.6841-.68409 1.9901-.74628 2.9229.18658Z" }, null, -1)])], 2)), v1657[32] || (v1657[32] = e("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "Jobs", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), v1632.value ? (openBlock(), createBlock('li', { 'key': 11, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/search", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v1656.$route.path.includes("/search"), 'text-white hover:bg-gray-100 hover:bg-neutral-50/10 font-bold': !v1656.$route.path.includes('/search') }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': !v1656.$route.path.includes("/search"), 'text-white': !v1656.$route.path.includes("/search") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v1657[33] || (v1657[33] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-width': '2', 'd': "m21 21-3.5-3.5M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0Z" }, null, -1)])], 2)), v1657[34] || (v1657[34] = e("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Search", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true)]), e('ul', en, [e('li', null, [e("div", tn, [v1633.value ? (openBlock(), Modal(na, { 'key': 0, 'onOnServerSelected': togRef16 })) : normalizeProps('', true), createVNode(Zt, { 'id': "sidebar", 'name': "Playlist" })])])]), e('ul', ln, [v1633.value ? (openBlock(), createBlock('li', { 'key': 0, 'onClick': togRef16 }, [createVNode(v1658, { 'to': "/help", 'class': classNames(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v1656.$route.path === '/help'), 'text-white hover:bg-neutral-50/10': (v1656["$route"].path !== "/help") }]) }, { 'default': withModifiers(() => [(openBlock(), createBlock("svg", { 'class': classNames(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v1656.$route.path === "/help", 'text-white': v1656.$route.path !== '/help' }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': 'currentColor', 'viewBox': '0 0 21 21' }, [...v1657[35] || (v1657[35] = [e("path", { 'd': 'm5.4 2.736 3.429 3.429A5.046 5.046 0 0 1 10.134 6c.356.01.71.06 1.056.147l3.41-3.412c.136-.133.287-.248.45-.344A9.889 9.889 0 0 0 10.269 1c-1.87-.041-3.713.44-5.322 1.392a2.3 2.3 0 0 1 .454.344Zm11.45 1.54-.126-.127a.5.5 0 0 0-.706 0l-2.932 2.932c.029.023.049.054.078.077.236.194.454.41.65.645.034.038.078.067.11.107l2.927-2.927a.5.5 0 0 0 0-.707Zm-2.931 9.81c-.024.03-.057.052-.081.082a4.963 4.963 0 0 1-.633.639c-.041.036-.072.083-.115.117l2.927 2.927a.5.5 0 0 0 .707 0l.127-.127a.5.5 0 0 0 0-.707l-2.932-2.931Zm-1.442-4.763a3.036 3.036 0 0 0-1.383-1.1l-.012-.007a2.955 2.955 0 0 0-1-.213H10a2.964 2.964 0 0 0-2.122.893c-.285.29-.509.634-.657 1.013l-.01.016a2.96 2.96 0 0 0-.21 1 2.99 2.99 0 0 0 .489 1.716c.009.014.022.026.032.04a3.04 3.04 0 0 0 1.384 1.1l.012.007c.318.129.657.2 1 .213.392.015.784-.05 1.15-.192.012-.005.02-.013.033-.018a3.011 3.011 0 0 0 1.676-1.7v-.007a2.89 2.89 0 0 0 0-2.207 2.868 2.868 0 0 0-.27-.515c-.007-.012-.02-.025-.03-.039Zm6.137-3.373a2.53 2.53 0 0 1-.35.447L14.84 9.823c.112.428.166.869.16 1.311-.01.356-.06.709-.147 1.054l3.413 3.412c.132.134.249.283.347.444A9.88 9.88 0 0 0 20 11.269a9.912 9.912 0 0 0-1.386-5.319ZM14.6 19.264l-3.421-3.421c-.385.1-.781.152-1.18.157h-.134c-.356-.01-.71-.06-1.056-.147l-3.41 3.412a2.503 2.503 0 0 1-.443.347A9.884 9.884 0 0 0 9.732 21H10a9.9 9.9 0 0 0 5.044-1.388 2.519 2.519 0 0 1-.444-.348ZM1.735 15.6l3.426-3.426a4.608 4.608 0 0 1-.013-2.367L1.735 6.4a2.507 2.507 0 0 1-.35-.447 9.889 9.889 0 0 0 0 10.1c.1-.164.217-.316.35-.453Zm5.101-.758a4.957 4.957 0 0 1-.651-.645c-.033-.038-.077-.067-.11-.107L3.15 17.017a.5.5 0 0 0 0 .707l.127.127a.5.5 0 0 0 .706 0l2.932-2.933c-.03-.018-.05-.053-.078-.076ZM6.08 7.914c.03-.037.07-.063.1-.1.183-.22.384-.423.6-.609.047-.04.082-.092.129-.13L3.983 4.149a.5.5 0 0 0-.707 0l-.127.127a.5.5 0 0 0 0 .707L6.08 7.914Z' }, null, -1)])], 2)), v1657[36] || (v1657[36] = e("span", { 'class': "ms-3 whitespace-nowrap font-semibold" }, "Help", -1))]), '_': 1 }, 8, ["class"])])) : normalizeProps('', true), e('li', null, [e("button", { 'type': "button", 'onClick': togRef19, 'class': "w-full flex items-center p-2 text-white hover:bg-neutral-50/10 rounded-xl group" }, [...v1657[37] || (v1657[37] = [e("svg", { 'class': "shrink-0 w-5 h-5 text-white group-hover:text-gray-900 group-hover:text-white transition duration-75", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M20 12H8m12 0-4 4m4-4-4-4M9 4H7a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h2" })], -1), e("span", { 'class': "ms-3 whitespace-nowrap font-semibold" }, "Log out", -1)])])]), v1633.value ? (openBlock(), v1353.PLsoA(createBlock, 'li', on, [v1353.KPEIo(e, "button", { 'type': "button", 'onClick': togRef18, 'class': "w-full flex items-center p-2 text-white hover:bg-neutral-50/10 rounded-xl group" }, [...v1657[38] || (v1657[38] = [StaticHTML(" v1628.value = updRef26), 'class': "mb-5 w-auto text-center p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Insert code here" }, null, 512), [ [Dropdown, v1628.value] ]), e("div", fn, [createVNode(Ft, { 'onClick': srv48, 'text': "Shutdown" }), createVNode(he, { 'text': "Cancel", })])])])])])], 64); }; } }, hn = {}, bn = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': "currentColor", 'viewBox': '0 0 20 20' }; function wn(v1663, v1664) { v1666 = { 'HNaQP': function(v1667) { return v1667(); }, 'wPGAM': function(v1668, v1669, v1670, v1671) { return v1668(v1669, v1670, v1671); }, 'viKXx': "svg", 'vooCM': function(v1672, v1673, v1674, v1675, v1676) { return v1672(v1673, v1674, v1675, v1676); }, 'wRBGO': "path", 'rCkKC': 'M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 8.207-4 4a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L9 10.586l3.293-3.293a1 1 0 0 1 1.414 1.414Z' }; return openBlock(), v1666.wPGAM(createBlock, "svg", bn, [...v1664[0] || (v1664[0] = [v1666.vooCM(e, "path", { 'd': "M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 8.207-4 4a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L9 10.586l3.293-3.293a1 1 0 0 1 1.414 1.414Z" }, null, -1)])]); } const xn = J(hn, [ ["render", wn] ]), yn = {}, kn = { 'class': "w-5 h-5", 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'fill': "currentColor", 'viewBox': "0 0 20 20" }; function Sn(v1677, v1678) { const v1679 = { 'oVfls': function(v1680) { return v1680(); }, 'nKMjw': function(v1681, v1682, v1683, v1684) { return v1681(v1682, v1683, v1684); }, 'JHXLr': "svg", 'JzYUK': function(v1685, v1686, v1687, v1688, v1689) { return v1685(v1686, v1687, v1688, v1689); }, 'JOQLN': "path", 'nwUVP': "M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 11.793a1 1 0 1 1-1.414 1.414L10 11.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L8.586 10 6.293 7.707a1 1 0 0 1 1.414-1.414L10 8.586l2.293-2.293a1 1 0 0 1 1.414 1.414L11.414 10l2.293 2.293Z" }; return openBlock(), v1679.nKMjw(createBlock, "svg", kn, [...v1678[0] || (v1678[0] = [v1679.JzYUK(e, "path", { 'd': "M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 11.793a1 1 0 1 1-1.414 1.414L10 11.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L8.586 10 6.293 7.707a1 1 0 0 1 1.414-1.414L10 8.586l2.293-2.293a1 1 0 0 1 1.414 1.414L11.414 10l2.293 2.293Z" }, null, -1)])]); } const $n = J(yn, [ ['render', Sn] ]), Cn = { 'class': "fixed right-5 bottom-5 lg:top-20 lg:bottom-auto z-112 flex flex-col space-y-4 items-end pointer-events-none w-xs" }, Mn = { 'class': "text-sm font-semibold line-clamp-3 whitespace-pre-wrap text-left w-full" }, An = .onClick, In = { '__name': 'o11Toast', 'setup'(rndr8) { const rndr9 = { 'mgdMR': function(rndr10) { return rndr10(); } }, v1690 = it(); return (v1691, v1692) => (openBlock(), createBlock("div", Cn, [createVNode(Tab, { 'name': "toast", 'enter-from-class': 'translate-x-full opacity-0', 'leave-to-class': "translate-x-full opacity-0", 'enter-active-class': "transition transform opacity duration-300 ease-out", 'leave-active-class': "transition transform opacity duration-300 ease-in" }, { 'default': withModifiers(() => [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v1690).toasts, v1693 => (openBlock(), createBlock("div", { 'key': v1693.id, 'class': 'pointer-events-auto flex items-center w-full gap-4 justify-between max-w-xs text-white px-6 py-4 bg-black/50 backdrop-blur-xl border border-white/15 rounded-xl shadow-xl', 'role': "alert" }, [e("div", { 'class': classNames(["inline-flex items-center justify-center", { 'text-green-400': v1693.status === "success", 'text-red-600': v1693.status === 'error', 'text-yellow-400': v1693.status === "warning", 'text-blue-400': v1693.status === 'info' }]) }, [v1693.status === "success" ? (openBlock(), Modal(xn, { 'key': 0 })) : normalizeProps('', true), v1693.status === "error" ? (openBlock(), Modal($n, { 'key': 1 })) : normalizeProps('', true)], 2), e("span", Mn, useAttrs(v1693.message), 1), e("button", { 'class': "text-neutral-500 hover:text-yellow-300 focus:outline-none", 'aria-label': "Close" }, '✕', 8, An)]))), 128))]), '_': 1 })])); } }, Tn = { 'class': "sm:ml-48 sticky top-[100vh]" }, Pn = { 'class': "o11-background shadow-xl border-t border- border-white/15" }, Vn = { 'class': "w-full mx-auto p-4 flex flex-col lg:flex-row items-center justify-between text-sm text-white" }, Un = { '__name': 'Footer', 'setup'(v1695) { v1699 = Sidebar(() => new Date().getFullYear()); return (v1700, v1701) => (openBlock(), createBlock("div", Tn, [e("footer", Pn, [e('div', Vn, [e('span', null, [toDisplayString('© ' + useAttrs(v1699.value) + ' ', 1), v1701[0] || (v1701[0] = e('a', { 'href': '/', 'class': "hover:underline font-bold" }, "o11 PRO", -1)), v1701[1] || (v1701[1] = toDisplayString(". All Rights Reserved. ", -1))]), createVNode(io)])])])); } }, _n = { 'key': 1, 'class': "mt-14 p-4 sm:ml-48 min-h-screen" }, En = { 'key': 2 }, Ln = { '__name': 'App', 'setup'(v1702) { v1721 = Be(); return v1721.getToken(), (v1722, v1723) => { if ((true)) { const v1724 = debounce("RouterView"); return openBlock(), createBlock("div", null, [createTextVNode(v1721).isAuth ? (openBlock(), Modal(gn, { 'key': 0 })) : normalizeProps('', true), createTextVNode(v1721).isAuth ? (openBlock(), createBlock("div", _n, [createVNode(In), createVNode(v1724)])) : (openBlock(), createBlock("div", En, [createVNode(v1724)])), createTextVNode(v1721).isAuth ? (openBlock(), Modal(Un, { 'key': 3 })) : normalizeProps('', true)]); } else this.isLoading = false; }; } }, Dn = { 'class': "max-w-7xl mx-auto px-4 lg:px-8 lg:py-32 py-32" }, Gn = { 'class': "mb-5" }, Rn = { 'class': "mb-5" }, Nn = { 'key': 0, 'class': "mb-5" }, jn = { 'class': "text-red-500 text-center" }, On = .disabled, Bn = { '__name': "LoginView", 'setup'(v1725) { v1749 = Be(), v1750 = async () => { const v1751 = { 'zOoGM': "error" }; try { (false) ? this.isLoading = false : await v1749.login() ? await me.push("/providers") : v1749.error = 'Wrong username or password. Try again.'; } catch (usr27) { (false) ? (this.error = usr28, this.notificationStore.showNotification(usr29, v1751.zOoGM)) : console.error("Error during login:", usr27); } }; return withDirectives(() => { if ((true)) v1749.username = '', v1749.password = '', v1749.isLoggingIn = false; else return v1752(), v1753("svg", v1754, [...v1755[0] || (v1756[0] = [v1757("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m20.9532 11.7634-2.0523-2.05225-2.0523 2.05225 2.0523 2.0523 2.0523-2.0523Zm-1.3681-2.73651-4.1046-4.10457L12.06 8.3428l4.1046 4.1046 3.4205-3.42051Zm-4.1047 2.73651-2.7363-2.73638-8.20919 8.20918 2.73639 2.7364 8.2091-8.2092Z" }, null, -1), v1758("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m12.9306 3.74083 1.8658 1.86571-2.0523 2.05229-1.5548-1.55476c-.995-.99505-3.23389-.49753-3.91799.18657l2.73639-2.73639c.6841-.68409 1.9901-.74628 2.9229.18658Z" }, null, -1)])]); }), (v1759, v1760) => (openBlock(), createBlock("div", Dn, [v1760[4] || (v1760[4] = e("div", { 'class': "flex max-w-sm mx-auto p-6 justify-center" }, [e("div", { 'class': "inline-flex rounded-full shadow-white/75" })], -1)), e("form", { 'onSubmit': useConfigStore(v1750, .prevent), 'class': "max-w-sm mx-auto rounded-xl border border-white/15 p-6" }, [e("div", Gn, [v1760[2] || (v1760[2] = e('label', { 'for': 'username', 'class': 'block mb-2 text-sm font-medium text-white' }, 'Username', -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v1760[0] || (v1760[0] = usr30 => createTextVNode(v1749).username = usr30), 'id': "username", 'class': 'block w-full p-2 text-white border rounded-xl bg-linear-to-b bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "user" }, null, 512), [ [Dropdown, createTextVNode(v1749).username] ])]), e("div", Rn, [v1760[3] || (v1760[3] = e('label', { 'for': 'password', 'class': "block mb-2 text-sm font-medium text-white" }, "Password", -1)), isRef(e("input", { 'type': "password", 'onUpdate:modelValue': v1760[1] || (v1760[1] = updRef27 => createTextVNode(v1749).password = updRef27), 'id': "password", 'onKeydown': Accordion(v1750, .enter), 'class': "block w-full p-2 text-white border rounded-xl bg-linear-to-b bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "password" }, null, 544), [ [Dropdown, createTextVNode(v1749).password] ])]), createTextVNode(v1749).error ? (openBlock(), createBlock("div", Nn, [e('p', jn, useAttrs(createTextVNode(v1749).error), 1)])) : normalizeProps('', true), e("button", { 'type': 'submit', 'disabled': createTextVNode(v1749).isLoggingIn, 'class': "text-black bg-linear-to-r/srgb from-yellow-300 to-yellow-400 hover:from-yellow-400 hover:to-yellow-500 rounded-xl lg:text-sm w-full px-5 py-2.5 text-center font-bold transition-all ease-in-out" }, useAttrs(createTextVNode(v1749).isLoggingIn ? "Logging in..." : "Log in"), 9, On)], 32)])); } }; function ht({ payload: errRef49 = null, onOpen: errRef50 = null, onMessage: errRef51 = null, onError: errRef52 = null, onClose: errRef53 = null }) { let v1778 = null; return { 'open': () => { const v1779 = { 'jNfoj': function(v1780, v1781) { return (v1780 === v1781); }, 'lFErR': "iaQSi", 'hJbKz': "efXIO", 'HvciU': function(v1782, v1783) { return (v1782 == v1783); }, 'xqjxB': 'string', 'JKrZT': function(v1784, v1785) { return (v1784 === v1785); }, 'aOowY': "lElgy", 'YxFQK': "zkdVF", 'EJtTW': function(v1786, v1787) { return v1786(v1787); }, 'pybMY': function(v1788, v1789) { return v1788(v1789); } }, v1790 = ((I.getProtocol() === "http:") ? 'ws' : "wss") + "://" + I.getAppUri() + '/ws?token=' + Me.getToken(); v1778 = new Drawer(v1790), v1778.onopen = v1791 => { errRef49 && v1778.send(JSON.stringify(errRef49)), errRef50 && errRef50(v1791, v1778); }, v1778.onmessage = async v1792 => { if (v1779.jNfoj("noeTg", "iaQSi")) v1793.value.currentPage = 1; else { let v1794; try { if (v1779.jNfoj("efXIO", "efXIO")) { if (v1779.HvciU(typeof v1792.data, "string")) v1794 = JSON.parse(v1792.data); else { if (v1779.JKrZT("lElgy", "zkdVF")) { const v1795 = v1796.createElement('a'); v1795.href = epg7.getAppUrl() + '/epg/' + epg8 + ".xml?token=" + epg9.getToken(), v1795.target = '_blank', v1795.download = epg10.getSelectedProviderId + '.xml', v1795.click(); } else { const epg11 = await v1792.data.arrayBuffer(), v1797 = new Uint8Array(epg11), v1798 = pako.ungzip(v1797, { 'to': "string" }); v1794 = JSON.parse(v1798); } } } else v1799.value = []; } catch { v1794 = v1792.data; } errRef51 && errRef51(v1794, v1792); } }, v1778.onerror = v1800 => { errRef52 && errRef52(v1800); }, v1778.onclose = v1801 => { errRef53 && errRef53(v1801); }; }, 'send': v1802 => { v1778 && (v1778.readyState === Drawer.OPEN) && v1778.send(JSON.stringify(v1802)); }, 'close': () => { (false) ? prov67.value.ProviderIds = prov68 : v1778 && v1778.close(); } }; } const Le = resolveComponent("streams", { 'state': () => ({ 'notificationStore': it(), 'providersStore': Ae(), 'hasEpg': withCtx(true), 'streams': renderList([]), 'currentSelectedStreamType': withCtx("linear"), 'isLoading': withCtx(null), 'isRefreshingStreams': withCtx(false), 'isRefreshingStatus': withCtx(false), 'isRefreshingStreamsManifest': withCtx(false), 'error': withCtx(null), 'response': withCtx(null), 'globalChangeCounter': 0, 'wsClient': null }), 'getters': { 'getSelectedStreamType'(stream31) { return stream31.currentSelectedStreamType; } }, 'actions': { 'setCurrentSelectedStreamType'(stream32) { this.currentSelectedStreamType = stream32; }, 'setDefaultCurrentStreamType'() { const stream33 = { 'guKOE': "linear" }; this.currentSelectedStreamType || (this.currentSelectedStreamType = stream33.guKOE); }, async 'getStatus'(stream34 = "all", stream35 = '', stream36 = '', stream37 = '', stream38 = false, stream39 = "all") { const stream = { statRef7: 3038, statRef8: 3152 }, stream40 = { 'ProviderId': stream34, 'StreamId': stream39, 'SearchPattern': stream35, 'Filter': stream36, 'StreamType': stream37, 'SortAlpha': stream38 }; this.isLoading = true, this.isRefreshingStatus = true, this.error = null; try { const stream41 = await q.req(I.getApiUrl() + "/stream/status", stream40); this.streams = stream41.data; } catch (stream42) { this.error = stream42.data, this.notificationStore.showNotification(this.error, "error"); } finally { this.isLoading = false, this.isRefreshingStatus = false; } }, async 'getStatus_WS'(statRef9 = "all", statRef10 = '', statRef11 = '', statRef12 = '', statRef13 = false, statRef14 = "all") { statRef16 = { 'gMeBv': function(v1803, v1804) { return v1803(v1804); }, 'DpRRC': "click", 'YdTlS': function(v1805, v1806) { return v1805 === v1806; }, 'tDILc': "yqbiI", 'psvjI': function(v1807, v1808) { return v1807 === v1808; }, 'KDNMV': "WhMJC", 'KmajD': "yRthN", 'palvg': 'BoDHa', 'pFnRG': "error" }; this.isRefreshingStatus = true, this.error = null; try { statRef16.psvjI("WhMJC", 'WhMJC') ? (await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "streamstatus", 'ProviderId': statRef9, 'StreamId': statRef14, 'SearchPattern': statRef10, 'Filter': statRef11, 'StreamType': statRef12, 'SortAlpha': statRef13 }, 'onMessage': stream43 => { statRef16.YdTlS("yqbiI", "yqbiI") ? this.streams = stream43 : statRef16.gMeBv(v1809, "click"); } }), this.wsClient.open()) : v1810(); } catch (v1811) { statRef16.psvjI("yRthN", "BoDHa") ? v1812.toggle() : (this.error = v1811.data, this.notificationStore.showNotification(this.error, "error")); } finally { this.isRefreshingStatus = false; } }, async 'get'(notif24, notif25, notif26, notif27 = '', notif28 = '') { v1813 = { 'BFdHW': function(v1814) { return v1814(); }, 'mBlPW': function(v1815, v1816) { return v1815 === v1816; }, 'xXMEd': "CqHvO", 'ncnBX': 'ERPNQ' }, stream44 = { 'ProviderId': notif24, 'StreamId': notif25, 'StreamType': notif26, 'SearchPattern': notif27, 'Filter': notif28 }; this.isLoading = true, this.error = null; try { const stream45 = await q.req(I.getApiUrl() + "/stream/get", stream44); this.streams = stream45.data.Streams ?? []; } catch (stream46) { v1813.mBlPW("zlGsm", "CqHvO") ? (stream47.closeWsClient(), stream48.closeWsClient()) : this.error = stream46; } finally { this.isLoading = false; } }, async 'add'(v1818, v1819) { v1823 = { 'abKrJ': function(v1824, v1825, v1826) { return v1824(v1825, v1826); }, 'ZnIEU': "onPlayVideo", 'rMlXZ': function(v1827, v1828) { return v1827 !== v1828; }, 'shhgz': 'gBCbT', 'eoxPS': "success" }, stream49 = { 'ProviderId': v1818, 'StreamName': v1819.Name, 'Stream': v1819 }; this.isLoading = true, this.error = null; try { if (v1823.rMlXZ("thPTj", "gBCbT")) { const stream50 = await q.req(I.getApiUrl() + "/stream/add", stream49); return this.notificationStore.showNotification('Added new stream ' + v1819.Name + ' successfully.', "success"), stream50.data; } else stream51("onPlayVideo", stream52.recording.StreamingUrl); } catch (rec9) { this.error = rec9, this.notificationStore.showNotification(rec9, "error"); } finally { this.isLoading = false; } }, async 'edit'(v1829, v1830) { v1837 = { 'ytpbh': function(v1838, v1839, v1840) { return v1838(v1839, v1840); }, 'GABeg': 'onRefreshKeys', 'qIiIZ': function(v1841, v1842) { return v1841 !== v1842; }, 'uGDDR': "mXHEa", 'zLjiY': "success", 'JEnlF': 'AKWZr' }, stream53 = { 'ProviderId': v1829, 'Stream': v1830, 'StreamId': v1830.Id, ...v1830.LogoBase64 && { 'LogoBase64': v1830.LogoBase64 } }; this.isLoading = true, this.error = null; try { if (v1837.qIiIZ("mXHEa", "mXHEa")) { const errRef58 = new errRef59(); errRef58.onload = errRef60 => { v1843.value = errRef60.target.result; }, errRef58.readAsDataURL(v1844); } else { const stream54 = await q.req(I.getApiUrl() + '/stream/edit', stream53); return this.notificationStore.showNotification("Stream " + v1830.Name + ' edited successfully.', "success"), stream54.data; } } catch (notif29) { (this.error = notif29, this.notificationStore.showNotification(notif29, "error")); } finally { this.isLoading = false; } }, async 'delete'(stream57, stream58) { stream60 = { 'ProviderId': stream57, 'StreamId': stream58 }; this.isLoading = true, this.error = null; try { if ((true)) { const stream61 = await q.req(I.getApiUrl() + '/stream/delete', stream60); return this.notificationStore.showNotification("Stream " + stream58 + " deleted successfully.", "success"), stream61.data; } else this.error = stream62; } catch (notif30) { this.error = notif30, this.notificationStore.showNotification(notif30, "error"); } finally { this.isLoading = false; } }, async 'toggleStreamPlayback'(stream63, stream64, stream65, stream66 = null) { let errRef61 = null; typeof stream65 == "object" ? ((stream66 === "event") || (stream65?..Type === "event")) && stream65?..EventId ? errRef61 = stream65.EventId : errRef61 = stream65.Id : errRef61 = stream65; const v1860 = stream66 || stream65?..Type, stream72 = { 'ProviderId': stream64, 'StreamId': errRef61, 'StreamType': v1860 }; this.isLoading = true, this.error = null; try { if ((true)) { const stream73 = await q.req(I.getApiUrl() + '/stream/' + stream63, stream72), stream74 = stream65?..Name ?? stream65?..ChannelName ?? errRef61, stream75 = stream63 === "stop" ? "stopped" : "started"; this.notificationStore.showNotification(stream74.toUpperCase() + ' ' + stream75 + " successfully.", "success"), this.response = stream73.data; } else { const rec10 = rec11.getElementById('add-recording'), rec12 = { 'backdrop': 'dynamic', 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, } } catch (v1864) { this.error = v1864, this.notificationStore.showNotification(v1864, "error"); } finally { this.isLoading = false; } }, async 'startAutostarts'(v1865, v1866) { v1871 = { 'zOmBY': function(v1872) { return v1872(); }, 'EVKmu': "autostart", 'vZHzo': function(v1873, v1874) { return v1873 === v1874; }, 'CIAIS': "ndiSx", 'brxnn': "dsYxL", 'KLSWB': "YdQqw", 'iwTdg': "error" }, stream76 = { 'ProviderId': v1865, 'StreamId': "autostart", 'StreamType': v1866 }; this.isLoading = true, this.error = null; try { v1871.vZHzo("ndiSx", "dsYxL") ? HIOuTh.zOmBY(stream77) : (await q.req(I.getApiUrl() + '/stream/start', stream76), this.notificationStore.showNotification("Started autostarts for provider: " + v1865, "success")); } catch (stream78) { v1871.vZHzo("YdQqw", "YdQqw") ? (this.error = stream78, this.notificationStore.showNotification(stream78, "error")) : this.error = loadRef24; } finally { this.isLoading = false; } }, async 'startOnAirs'(loadRef25) { v1875 = { 'hTfWa': "onair", 'hGHtw': function(v1876, v1877) { return v1876 === v1877; }, 'kSwgb': "pUVVt", 'JeNmt': "success", 'inazj': function(v1878, v1879) { return v1878 === v1879; }, 'DydnP': "beThB" }, stream79 = { 'ProviderId': loadRef25, 'StreamId': "onair" }; this.isLoading = true, this.error = null; try { if (v1875.hGHtw("pUVVt", "pUVVt")) await q.req(I.getApiUrl() + "/stream/start", stream79), this.notificationStore.showNotification("Started OnIAirs for provider: " + loadRef25, "success"); else { const apiRef7 = apiRef8; return (apiRef9, apiRef10) => (v1880(), v1881('div', { 'id': apiRef7.id }, [v1882("div", v1883, [v1884('div', v1885, [v1886('span', v1887, v1888(apiRef7.title), 1), v1889('a', { 'href': apiRef7.url, 'target': '_blank', 'class': 'bg-yellow-300 rounded-xl p-2 text-black hover:opacity-75 text-decoration-none icon-link-hover justify-content-end transition-opacity' }, [transRef(transRef2)], 8, transRef3)]), transRef4(apiRef9.$slots, "default")])], 8, transRef5)); } } catch (transRef6) { v1875.inazj("beThB", 'beThB') ? (this.error = transRef6, this.notificationStore.showNotification(transRef6, 'error')) : (errRef62.value = '', errRef63.value = ''); } finally { this.isLoading = false; } }, async 'getStreams'(stream80, stream81 = "linear", stream82 = '', stream83 = '', stream84 = false, stream85 = false) { stream88 = { 'ProviderId': stream80, 'StreamType': stream81, 'SearchPattern': stream82, 'Filter': stream83, 'SortAlpha': stream84, 'Limited': stream85 }; this.isLoading = true, this.error = null; try { const errRef64 = await q.req(I.getApiUrl() + "/stream/get", stream88); this.resetStreams(); const stream89 = errRef64.data.Streams ?? []; this.hasEpg = errRef64.data.HasEpg, (stream83 !== "none") && (stream83 !== '') ? this.streams = stream89.filter(stream90 => stream90.Type !== stream83) : this.streams = stream89; } catch (stream91) { (true) ? this.error = stream91 : (stream92.value = stream93, stream94.value.toggleModal()); } finally { this.isLoading = false; } }, async 'getStream'(stream95, stream96) { stream99 = { 'ZeYXY': function(stream100, stream101) { return stream100 !== stream101; } }, stream102 = { 'ProviderId': stream95, 'StreamId': stream96 }; this.isLoading = true, this.error = null; try { return (await q.req(I.getApiUrl() + "/stream/get", stream102)).data?..Streams[0] ?? []; } catch (v1900) { this.error = v1900; } finally { stream99.ZeYXY("qTQRM", "qTQRM") ? (v1901.hide(), v1902.value = false) : this.isLoading = false; } }, async 'getStatusSingle_WS'(statRef19, statRef20, statRef21, statRef22) { v1903 = { 'vjRDk': function(v1904, v1905) { return v1904 === v1905; }, 'kPCQy': 'uPSDO', 'XpDrq': function(v1906, v1907) { return v1906(v1907); }, 'mbntF': "streamstatus", 'aBHHc': function(v1908, v1909) { return v1908 !== v1909; }, 'JFJXL': 'KueCf', 'NkzrH': 'gHnJz' }; this.isLoading = true, this.error = null; try { v1903.vjRDk("uPSDO", "uPSDO") ? (await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "streamstatus", 'ProviderId': statRef19, 'StreamId': statRef20, 'StreamType': statRef21 }, 'onMessage': stream103 => { statRef22(stream103.Providers[0].Streams[0]); } }), this.wsClient.open()) : this.error = v1910; } catch (v1911) { v1903.aBHHc("KueCf", "gHnJz") ? this.error = v1911 : stream104.toggle(); } }, async 'updateStreamStatus_WS'(stream105 = "all", stream106 = "linear", stream107 = "all") { v1916 = { 'jJiMJ': "RwKhb", 'NYVzc': function(v1917, v1918, v1919) { return v1917(v1918, v1919); }, 'qGxaq': "modelValue", 'slOIF': function(v1920, v1921) { return v1920(v1921); }, 'Iwsrg': function(v1922, v1923) { return v1922 !== v1923; }, 'pTzVW': "nEMHF", 'tNeeF': "ffWqT", 'TqQRE': function(v1924, v1925) { return v1924(v1925); }, 'xvAkK': "streamstatus" }; this.error = null; try { await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "streamstatus", 'ProviderId': stream105, 'StreamId': stream107, 'StreamType': stream106 }, 'onMessage': stream111 => { const stream112 = { 'OdJBq': 'hidden', 'IoSCD': "RwKhb", 'FrcdM': function(v1926, v1927, v1928) { return v1926(v1927, v1928); }, 'wyoFA': "modelValue", 'jmffa': function(v1929, v1930) { return v1929(v1930); } }; if (v1916.Iwsrg("nEMHF", "ffWqT")) this.streams = this.streams.map(stream113 => { const stream114 = { 'GfrlY': stream112.OdJBq }; if (stream112.IoSCD !== "EeXwM") { const v1931 = stream111.Providers[0].Streams.find(v1932 => v1932.Id === stream113.Id); return v1931 ? (v1931.PChangeCounter > stream113.PChangeCounter && this.updateStream(stream105, stream113.Id), { ...stream113, ...v1931 }) : stream113; } else v1933.classList.add(stream114.GfrlY), v1934.classList.remove(stream114.GfrlY); }); else { const v1935 = stream112.FrcdM(v1936, v1937, stream112.wyoFA), v1938 = v1939, v1940 = stream112.jmffa(v1941, () => { let v1942 = []; for (const v1943 of v1938.massOptions) v1942.push({ 'label': v1943.Title, 'value': v1943 }); return v1942; }); return (v1944, v1945) => (v1946(), v1947(v1948, { 'data': v1940.value, 'id': v1949.id, 'modelValue': v1935.value, 'onUpdate:modelValue': v1945[0] || (v1945[0] = updRef28 => v1935.value = updRef28), 'logos-disabled': '' }, null, 8, ["data", 'id', "modelValue"])); } } }), this.wsClient.open(); } catch (errRef65) { this.error = errRef65; } }, async 'updateStreamStatusV2_WS'(stream115 = 'all', stream116 = "linear", stream117 = "all", stream118 = '') { evtRef17 = { 'Ocxrb': 'event', 'UuuKN': "zLQuc", 'cthfh': function(evtRef18, evtRef19) { return evtRef18 > evtRef19; }, 'Cneiy': function(evtRef20, evtRef21) { return evtRef20 !== evtRef21; }, 'ePpDg': "rkufr", 'bZcoP': "streamstatus", 'Xwdwi': function(v1950, v1951) { return v1950 === v1951; }, 'lygfT': "YdeZP" }; this.error = null; try { evtRef17.Cneiy("rkufr", "rkufr") ? v1952.push({ 'name': "config", 'params': { 'provider': prov69.provider, 'type': "event" }, 'query': { 's': prov70.event.EventId + '$', 'server': srv49.serverId } }) : (await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "streamstatus", 'ProviderId': stream115, 'StreamId': stream117, 'StreamType': stream116, 'Filter': stream118 }, 'onMessage': stream122 => { this.streams && evtRef17.cthfh(this.streams?..Providers?..length, 0) && (this.streams.Providers = this.streams.Providers.map((stream123, stream124) => (stream123.Streams && stream123.Streams.length > 0 && (stream123.Streams = stream123.Streams.map(v1953 => { const v1966 = stream122.Providers[stream124].Streams.find(v1967 => v1967.Id === v1953.Id); return v1966 ? { ...v1953, ...v1966 } : v1953; })), stream123))); } }), this.wsClient.open()); } catch (v1968) { evtRef17.Xwdwi("YdeZP", "YdeZP") ? this.error = v1968 : errRef66.value = errRef67; } }, async 'closeWsClient'() { this.wsClient && (this.wsClient.close(), this.wsClient = null); }, async 'refreshStreams'(stream125, stream126) { stream131 = { 'jaQdI': function(v1969, v1970) { return v1969 === v1970; }, 'xprQK': 'linear', 'skoLa': "channel" }, prov71 = { 'ProviderId': stream125 }; let prov72 = stream126; stream131.jaQdI(stream126, stream131.xprQK) && (prov72 = stream131.skoLa), this.isRefreshingStreams = true, this.error = null; try { const errRef69 = await q.req(I.getApiUrl() + '/' + prov72 + "/refreshrequest", prov71); return this.notificationStore.showNotification('Requested refresh ' + stream126 + ' for provider ' + stream125 + " successfully.", "success"), errRef69; } catch (prov73) { return this.error = prov73, prov73; } finally { this.isRefreshingStreams = false; } }, async 'applyRefreshStreams'(stream132, stream133 = 'linear') { v1973 = { 'DvzMk': function(v1974) { return v1974(); }, 'TObpv': function(v1975) { return v1975(); }, 'hbeve': function(v1976, v1977) { return v1976 === v1977; }, 'ETbhS': "linear", 'ZXVpH': "channel", 'AJnju': function(v1978, v1979) { return v1978 === v1979; }, 'twlPn': 'NbPXF', 'BLCOK': "success" }, prov74 = { 'ProviderId': stream132 }; let prov75 = stream133; v1973.hbeve(stream133, "linear") && (prov75 = "channel"), this.isLoading = true, this.error = null; try { v1973.AJnju("NbPXF", "NbPXF") ? (await q.req(I.getApiUrl() + '/' + prov75 + '/refreshapply', prov74), this.notificationStore.showNotification("Refreshed " + stream133 + ' for provider ' + stream132 + " successfully.", "success")) : (prov76(), prov77()); } catch (prov78) { this.error = prov78; } finally { this.isLoading = false; } }, async 'updateStream'(stream139, stream140) { stream145 = { 'aHtGu': function(v1980, v1981) { return v1980 !== v1981; }, 'dCjNA': function(v1982, v1983) { return v1982 === v1983; }, 'nzmat': "gVvQS" }, stream146 = { 'ProviderId': stream139, 'StreamId': stream140 }; this.isLoading = true, this.error = null; try { const stream147 = await q.req(I.getApiUrl() + '/stream/get', stream146), stream148 = this.streams.findIndex(stream149 => stream149.Id === stream140); stream145.aHtGu(stream148, -1) && this.streams.splice(stream148, 1, { ...this.streams[stream148], ...stream147.data.Streams[0] }); } catch (stream150) { if (stream145.dCjNA(stream145.nzmat, "THrWf")) { let v1984 = "\u274c Key not found (KID: " + v1985 + ')'; if (v1986.stream.Keys) { for (const v1987 of v1988.stream.Keys) v1987.includes(v1989) && (v1984 = "\u2705 Key found (KID: " + v1990 + ')'); } return v1984; } else this.error = stream150; } finally { this.isLoading = false; } }, async 'refresh'(errRef70, errRef71 = "linear", errRef72 = "all") { stream151 = { 'ProviderId': errRef70, 'StreamId': errRef72, 'StreamType': errRef71 }; this.isLoading = true, this.error = null; try { this.notificationStore.showNotification("Started refreshing " + errRef72 + " from provider " + errRef70 + " successfully.", "success"), await q.req(I.getApiUrl() + "/stream/refresh", stream151), this.notificationStore.showNotification("Refreshed " + errRef72 + " from provider " + errRef70 + " successfully.", "success"); } catch (apiRef11) { this.error = apiRef11; } finally { this.isLoading = false; } }, async 'stopRefresh'(v1994, v1995 = "linear", v1996 = "all") { stream152 = { 'ProviderId': v1994, 'StreamId': v1996, 'StreamType': v1995 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/stream/stoprefresh", stream152), this.notificationStore.showNotification('Stopped refresh from provider ' + v1994 + ' successfully.', "success"); } catch (prov79) { this.error = prov79; } finally { this.isLoading = false; } }, async 'flushKeys'(v2015, v2016 = "all") { stream153 = { 'ProviderId': v2015, 'StreamId': v2016 }; this.error = null; try { await q.req(I.getApiUrl() + "/stream/flushkeys", stream153), this.notificationStore.showNotification("Flushed keys from " + v2016 + ' on ' + v2015 + " successfully.", "success"); } catch (v2019) { this.error = v2019; } }, async 'refreshKeys'(v2020, v2021 = "all") { stream154 = { 'ProviderId': v2020, 'StreamId': v2021 }; this.error = null; try { await q.req(I.getApiUrl() + "/stream/refreshkeys", stream154), this.notificationStore.showNotification("Flushed keys from " + v2021 + ' on ' + v2020 + " successfully.", "success"); } catch (v2027) { this.error = v2027; } }, 'resetStreams'() { this.streams = []; } } }), Hn = { 'class': "text-white font-bold text-3xl" }, Je = { '__name': "PageTitle", 'props': .text, 'setup'(stream155) { return (stream156, stream157) => (openBlock(), createBlock('h1', Hn, useAttrs(stream155.text), 1)); } }, Fn = { 'class': 'm-auto text-center items-center space-y-5' }, qn = { 'class': "text-white my-3 text-sm" }, Fe = { '__name': "EmptyContent", 'props': ['message', "Icon", "small"], 'setup'(v2028) { return (v2029, v2030) => (openBlock(), createBlock('div', { 'class': classNames(["flex p-6 mb-4 bg-black rounded-xl border border-white/15", { 'h-[25vh] my-5': !v2028.small }]) }, [e('div', Fn, [createVNode(createTextVNode(v2028.Icon), { 'class': "mx-auto text-white" }), e('p', qn, useAttrs(v2028.message), 1)])], 2)); } }, Wn = {}, zn = { 'xmlns': "http://www.w3.org/2000/svg", 'class': "h-5 w-5", 'width': '24', 'height': '24', 'viewBox': "0 0 24 24", 'fill': "none" }; function Zn(v2031, v2032) { return openBlock(), createBlock("svg", zn, [...v2032[0] || (v2032[0] = [e("path", { 'd': "M21.0254 8.40554C20.7987 8.20998 20.5218 8.09678 20.3141 8.02584C20.0833 7.94703 19.8184 7.88184 19.5383 7.82624C18.9764 7.71473 18.2727 7.62624 17.4908 7.55704C15.9221 7.41822 13.955 7.34998 12 7.34998C10.045 7.34997 8.0779 7.41821 6.50923 7.55704C5.7273 7.62623 5.02357 7.71473 4.46174 7.82624C4.18161 7.88184 3.91672 7.94703 3.68594 8.02583C3.4782 8.09677 3.20126 8.20998 2.97462 8.40553C2.76112 8.58976 2.63916 8.81815 2.56971 8.97159C2.49263 9.14189 2.43333 9.32752 2.38581 9.50895C2.29052 9.87283 2.21854 10.3144 2.16365 10.7872C2.05319 11.7386 2 12.9242 2 14.1032C2 15.283 2.05326 16.4858 2.16311 17.4726C2.21784 17.9643 2.28883 18.4229 2.38053 18.807C2.46043 19.1416 2.59126 19.5854 2.85131 19.906C3.08981 20.2 3.43086 20.3352 3.60561 20.3981C3.82965 20.4789 4.09015 20.5429 4.36115 20.596C4.90739 20.703 5.60964 20.7873 6.39637 20.853C7.97657 20.9851 9.99449 21.05 12 21.05C14.0055 21.05 16.0234 20.9851 17.6036 20.853C18.3904 20.7873 19.0926 20.703 19.6388 20.596C19.9098 20.5429 20.1703 20.4789 20.3944 20.3981C20.5691 20.3352 20.9102 20.2 21.1487 19.906C21.4087 19.5854 21.5396 19.1416 21.6195 18.807C21.7112 18.4229 21.7822 17.9643 21.8369 17.4726C21.9467 16.4858 22 15.283 22 14.1032C22 12.9242 21.9468 11.7386 21.8363 10.7872C21.7815 10.3144 21.7095 9.87284 21.6142 9.50896C21.5667 9.32752 21.5074 9.14189 21.4303 8.9716C21.3608 8.81815 21.2389 8.58976 21.0254 8.40554Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1), e("line", { 'x1': "11.4858", 'y1': "6.44995", 'x2': "8.39999", 'y2': "3.36416", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1), e("line", { 'x1': '1', 'y1': '-1', 'x2': "5.36396", 'y2': '-1', 'transform': "matrix(0.707107 -0.707107 -0.707107 -0.707107 11.1 6.44995)", 'stroke': 'currentColor', 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])]); } const Ie = J(Wn, [ ["render", Zn] ]), Kn = {}, Jn = { 'class': "w-3 h-3 text-neutral-400", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': "none", 'viewBox': "0 0 20 20" }; function Yn(v2048, v2049) { v2054 = { 'uozAI': function(v2055) { return v2055(); }, 'nAtAQ': function(v2056, v2057, v2058, v2059) { return v2056(v2057, v2058, v2059); }, 'saRWc': function(v2060, v2061, v2062, v2063, v2064) { return v2060(v2061, v2062, v2063, v2064); }, 'IELhB': "path", 'nlEWq': "currentColor", 'CqJmB': "round", 'EMCGi': 'm19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z' }; return openBlock(), v2054.nAtAQ(createBlock, "svg", Jn, [...v2049[0] || (v2049[0] = [v2054.saRWc(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z" }, null, -1)])]); } const co = J(Kn, [ ['render', Yn] ]), Qn = { 'class': "items-center bg-linear-to-tr from-neutral-50/5 to-transparent pb-0 rounded-xl border border-white/10 my-5" }, Xn = { 'class': "flex flex-row p-4" }, ei = { 'class': 'w-full lg:w-96 relative' }, ti = { 'class': 'absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none' }, li = ['id', "onClick"], oi = { 'class': "w-16" }, si = { 'class': 'font-bold text-xs mt-3 line-clamp-2 h-8' }, ai = { 'class': "font-medium text-[9px] text-center" }, Kt = { '__name': "ProviderSelector", 'emits': ['onProviderSelected', "onServerChanged"], 'setup'(prov82, { emit: prov83 }) { v2094 = prov83, v2095 = withCtx(''), v2096 = Ae(), v2097 = withCtx(), v2098 = He(); Sidebar(() => I.getAppUrl() + "/logos/default.png?fallback=1&token=" + Me.getToken()); v2101 = Sidebar(() => v2096.providers.filter(v2102 => v2102.Name.toLowerCase().includes(v2095.value.toLowerCase()))), v2103 = async () => { if ((true)) { if (!v2096.getSelectedProviderId || !v2097.value) return; await Badge(); const prov86 = document.getElementById(v2096.getSelectedProviderId); if (prov86) { const prov87 = v2097.value.offsetWidth, prov88 = prov86.offsetWidth, prov89 = prov86.offsetLeft, v2104 = Math.max(0, (prov89 - ((prov87 - prov88) / 2))); v2097.value.scrollTo({ 'left': v2104, 'behavior': "smooth" }); } } else return this.error = errRef74, errRef75; }; return Carousel(() => v2096.getSelectedProviderId, v2103), Carousel(() => v2098.getSelectedServer, async (errRef76, errRef77) => { const errRef78 = { 'hLhWd': "debu", 'nEYFy': "gger" }; (false) ? function() { return true; } .constructor(VFhVCh.hLhWd + VFhVCh.nEYFy).call('action') : (errRef77.Id !== errRef76.Id) && (await v2096.getAllProviders(), v2096.setDefaultCurrentSelectedProvider(), v2094("onServerChanged")); }), withDirectives(async () => { await v2096.getAllProviders(), await v2103(); }), URL_util(async () => { await v2103(); }), (v2105, v2106) => (openBlock(), createBlock('div', Qn, [e("div", Xn, [e("div", ei, [e("div", ti, [createVNode(co)]), isRef(e("input", { 'type': 'search', 'onUpdate:modelValue': v2106[0] || (v2106[0] = updRef29 => v2095.value = updRef29), 'class': "block w-full p-2 ps-10 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Search for provider" }, null, 512), [ [Dropdown, v2095.value, void(0), { 'trim': true }] ])])]), v2101.value.length ? (openBlock(), createBlock("div", { 'key': 0, 'ref_key': 'listContainer', 'ref': v2097, 'class': "flex flex-row grow overflow-x-scroll no-scrollbar p-2 gap-2" }, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v2101.value, v2107 => (openBlock(), createBlock("div", { 'key': v2107.Id, 'class': "flex flex-row items-center justify-center text-center" }, [e('div', { 'id': v2107.Id, 'class': classNames([{ 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400 text-black': createTextVNode(v2096)?..getSelectedProviderId === v2107.Id, 'text-white': createTextVNode(v2096)?..getSelectedProviderId !== v2107.Id }, "text-center flex flex-col hover:bg-neutral-50/10 rounded-xl p-1 py-2 cursor-pointer ease-in-out"]), }, [createVNode(createTextVNode(JSON_util), { 'class': "aspect-square w-10 h-10 mx-auto object-contain shadow-lg rounded-xl", 'src': createTextVNode(I).getAppUrl() + "/logos/" + v2107.Id + ".png?fallback=1&token=" + createTextVNode(Me).getToken(), 'src-placeholder': '/o11-placeholder.svg' }, null, 8, .src), e("div", oi, [e('p', si, useAttrs(v2107.Name), 1), e('p', ai, useAttrs(v2107.StreamsCount) + " streams ", 1)])], 10, li)]))), 128))], 512)) : normalizeProps('', true), !createTextVNode(v2096).isLoading && v2101.value.length === 0 ? (openBlock(), Modal(Fe, { 'key': 1, 'class': 'mx-4', 'small': "true", 'Icon': Ie, 'message': "No providers found." })) : normalizeProps('', true)])); } }, ri = {}, ni = { 'class': "w-5 h-5", 'width': '800px', 'height': "800px", 'viewBox': "0 0 24 24", 'fill': 'currentColor', 'xmlns': "http://www.w3.org/2000/svg" }; function ii(v2109, v2110) { const v2111 = { 'rbifS': function(v2112) { return v2112(); }, 'xgqLI': function(v2113, v2114, v2115, v2116) { return v2113(v2114, v2115, v2116); }, 'pJMUQ': "svg", 'NzStF': function(v2117, v2118, v2119) { return v2117(v2118, v2119); }, 'OrSYn': "" }; return openBlock(), v2111.xgqLI(createBlock, "svg", ni, [...v2110[0] || (v2110[0] = [StaticHTML("", 12)])]); } const pi = J(ui, [ ["render", mi] ]), vi = {}, fi = { 'class': "w-5 h-5", 'width': "800px", 'height': "800px", 'viewBox': '0 0 24 24', 'fill': "currentColor", 'xmlns': "http://www.w3.org/2000/svg" }; function gi(v2131, v2132) { v2134 = { 'wLQyx': function(v2135) { return v2135(); }, 'irsLf': function(v2136, v2137, v2138, v2139) { return v2136(v2137, v2138, v2139); }, 'qhfDF': "svg", 'xuZKd': function(v2140, v2141, v2142) { return v2140(v2141, v2142); } }; return openBlock(), v2134.irsLf(createBlock, "svg", fi, [...v2132[0] || (v2132[0] = [StaticHTML("", 12)])]); } const hi = J(vi, [ ["render", gi] ]), bi = {}, wi = { 'class': "w-5 h-5", 'width': "800px", 'height': "800px", 'viewBox': "0 0 24 24", 'fill': "currentColor", 'xmlns': "http://www.w3.org/2000/svg" }; function xi(v2143, v2144) { return openBlock(), createBlock("svg", wi, [...v2144[0] || (v2144[0] = [StaticHTML(" ({ 'top-15 left-5': v2190.value === "top-left", 'top-15 right-5': v2190.value === 'top-right', 'bottom-5 left-5': v2190.value === "bottom-left", 'bottom-5 right-5': v2190.value === "bottom-right" })); parent3({ 'playStream': stream158 => { if ((true)) v2189 = new Dropzone({ 'maxBufferLength': 15, 'liveSyncDuration': 15, 'liveMaxLatencyDuration': (1 / 0), 'liveDurationInfinity': true, 'enableWorker': true, 'lowLatencyMode': true, 'debug': false }), v2189.loadSource(stream158), v2189.attachMedia(v2188.value), v2189.on(Dropzone.Events.ERROR, (errRef79, errRef80) => { v2189.swapAudioCodec(); }), v2189.on(Dropzone.Events.MEDIA_ATTACHED, () => { (true) ? v2188.value.play() : evtRef22.value.FirstAudioTrack = evtRef23; }), v2187.value = true; else return v2194(), v2195("svg", v2196, [...v2197[0] || (v2198[0] = [v2199("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M4 10h16m-8-3V4M7 7V4m10 3V4M5 20h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1Zm3-7h.01v.01H8V13Zm4 0h.01v.01H12V13Zm4 0h.01v.01H16V13Zm-8 4h.01v.01H8V17Zm4 0h.01v.01H12V17Zm4 0h.01v.01H16V17Z" }, null, -1)])]); } }); const v2200 = () => { v2188.value.pause(), v2189.destroy(), v2187.value = false; }; return Progress(() => { v2187.value && v2189.destroy(); }), (v2201, v2202) => (openBlock(), Modal(Alert, { 'enter-from-class': "scale-0 opacity-0", 'enter-to-class': "scale-100 opacity-100", 'leave-from-class': "scale-100 opacity-100", 'leave-to-class': "scale-0 opacity-0", 'enter-active-class': "transition transform opacity duration-200 ease-out", 'leave-active-class': "transition transform opacity duration-200 ease-in" }, { 'default': withModifiers(() => [isRef(e("div", { 'class': classNames(["fixed group shadow-lg z-50 w-[16rem] lg:w-[32rem] h-fit aspect-video", v2193.value]) }, [e("video", { 'ref_key': 'videoElement', 'ref': v2188, 'class': "bg-black aspect-video rounded-xl ring-1 ring-neutral-50/10", 'controls': '', 'autoplay': '', 'playsinline': '' }, null, 512), e('div', Ci, [e("div", Mi, [e("button", { 'class': "hover:text-yellow-300", }, [createVNode(di)]), e("button", { 'class': 'hover:text-yellow-300', }, [createVNode(pi)]), e("button", { 'class': "hover:text-yellow-300", }, [createVNode(yi)]), e("button", { 'class': "hover:text-yellow-300", }, [createVNode(hi)])])]), e('button', { 'class': "absolute -top-2 -right-2 p-0.5 bg-white hover:bg-yellow-300 text-sm font-bold rounded-full text-black cursor-pointer", 'onClick': v2200 }, [createVNode(mo)])], 2), [ [Spinner, v2187.value] ])]), '_': 1 })); } }, Ai = {}, Ii = { 'class': "w-14 h-14 text-white", 'xmlns': 'http://www.w3.org/2000/svg', 'viewBox': '0 0 24 24', 'fill': "none" }; function Ti(v2207, v2208) { return openBlock(), createBlock("svg", Ii, [...v2208[0] || (v2208[0] = [e("path", { 'd': "M11.65 6H12.8C13.9201 6 14.4802 6 14.908 6.21799C15.2843 6.40973 15.5903 6.71569 15.782 7.09202C16 7.51984 16 8.0799 16 9.2V10L18.5768 8.45392C19.3699 7.97803 19.7665 7.74009 20.0928 7.77051C20.3773 7.79703 20.6369 7.944 20.806 8.17433C21 8.43848 21 8.90095 21 9.8259V14.1741C21 14.679 21 15.0462 20.9684 15.3184M3 3L6.00005 6.00005M21 21L15.9819 15.9819M6.00005 6.00005C5.01167 6.00082 4.49359 6.01337 4.09202 6.21799C3.71569 6.40973 3.40973 6.71569 3.21799 7.09202C3 7.51984 3 8.07989 3 9.2V14.8C3 15.9201 3 16.4802 3.21799 16.908C3.40973 17.2843 3.71569 17.5903 4.09202 17.782C4.51984 18 5.07989 18 6.2 18H12.8C13.9201 18 14.4802 18 14.908 17.782C15.2843 17.5903 15.5903 17.2843 15.782 16.908C15.9049 16.6668 15.9585 16.3837 15.9819 15.9819M6.00005 6.00005L15.9819 15.9819", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])]); } const wt = J(Ai, [ ['render', Ti] ]), Pi = { 'class': "w-full lg:w-96 relative" }, Vi = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none" }, Ui = .placeholder, ut = { '__name': "SearchResource", 'props': Toggle(.placeholder, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ['update:modelValue'], 'setup'(updRef30) { const updRef31 = { 'xvHgU': function(updRef32, updRef33, updRef34) { return updRef32(updRef33, updRef34); }, 'bwyvp': "modelValue" }, v2212 = Pagination(updRef30, "modelValue"), v2213 = updRef30; return (v2214, v2215) => (openBlock(), createBlock("div", Pi, [e("div", Vi, [createVNode(co)]), isRef(e("input", { 'type': 'search', 'onUpdate:modelValue': v2215[0] || (v2215[0] = updRef35 => v2212.value = updRef35), 'class': "block w-full p-2 ps-10 text-white border rounded-xl bg-linear-to-b bg-black border-white/15 text-white focus:ring-yellow-300 focus:border-yellow-300 placeholder-neutral-400", 'autocomplete': "off", 'autocorrect': "off", 'autocapitalize': "off", 'spellcheck': "false", 'placeholder': v2213.placeholder }, null, 8, Ui), [ [Dropdown, v2212.value, void(0), { 'trim': true }] ])])); } }, _i = {}, Ei = { 'class': 'w-8 h-8', 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function Li(v2216, v2217) { v2219 = { 'LYIKL': function(v2220) { return v2220(); }, 'scrSQ': function(v2221, v2222, v2223, v2224) { return v2221(v2222, v2223, v2224); }, 'STaFH': 'svg', 'EvXXu': function(v2225, v2226, v2227, v2228, v2229) { return v2225(v2226, v2227, v2228, v2229); }, 'AIbaU': "round", 'pIRRX': 'm10 16 4-4-4-4' }; return openBlock(), v2219.scrSQ(createBlock, "svg", Ei, [...v2217[0] || (v2217[0] = [v2219.EvXXu(e, "path", { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '1', 'd': "m10 16 4-4-4-4" }, null, -1)])]); } const Di = J(_i, [ ["render", Li] ]), Gi = {}, Ri = { 'class': 'w-8 h-8', 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }; function Ni(v2230, v2231) { v2233 = { 'RuxIE': function(v2234, v2235, v2236, v2237, v2238) { return v2234(v2235, v2236, v2237, v2238); }, 'rioiV': "path", 'KjBij': 'round', 'xKPQm': "m14 8-4 4 4 4" }; return openBlock(), createBlock("svg", Ri, [...v2231[0] || (v2231[0] = [v2233.RuxIE(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '1', 'd': "m14 8-4 4 4 4" }, null, -1)])]); } const ji = J(Gi, [ ['render', Ni] ]), Oi = { 'class': "flex rounded-xl border border-white/15 p-3 my-3 justify-center" }, Bi = { 'key': 0, 'class': 'flex text-left text-white font-semibold text-xs items-center' }, Hi = { 'class': 'flex flex-1 items-center justify-center gap-2 mr-[58px]' }, Fi = .disabled, qi = .onClick, Wi = .disabled, tl = { '__name': "o11Pagination", 'props': ["currentPage", "totalPages", 'totalItems', "totalFilteredItems"], 'emits': .onPageChange, 'setup'(v2239, { emit: v2240 }) { v2280 = v2239, v2281 = v2240, v2282 = withCtx(4), v2283 = Sidebar(() => { v2285 = { 'CiMHp': function(v2286, v2287, v2288) { return v2286(v2287, v2288); }, 'vtduI': "onPlayStream" }; if ((false)) v2285.CiMHp(v2289, v2285.vtduI, v2290); else { const v2291 = Math.floor((v2282.value / 2)), v2292 = Math.max(1, (v2280.currentPage - v2291)), v2293 = Math.min(v2280.totalPages, (v2280.currentPage + v2291)); return Array.from({ 'length': v2293 - v2292 + (1) }, (v2294, v2295) => v2292 + v2295); } }), v2296 = () => { if ((true)) (v2280.currentPage > 1) && v2281("onPageChange", v2280.currentPage - (1)); else return v2297(), v2298("svg", v2299, [...v2300[0] || (v2301[0] = [v2302("path", { 'd': "M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z", 'fill': "currentColor" }, null, -1), v2303("path", { 'd': "M12 5C11.4477 5 11 5.44771 11 6V12.4667C11 12.4667 11 12.7274 11.1267 12.9235C11.2115 13.0898 11.3437 13.2343 11.5174 13.3346L16.1372 16.0019C16.6155 16.278 17.2271 16.1141 17.5032 15.6358C17.7793 15.1575 17.6155 14.5459 17.1372 14.2698L13 11.8812V6C13 5.44772 12.5523 5 12 5Z", 'fill': "currentColor" }, null, -1)])]); }, v2304 = () => { (v2280.currentPage < v2280.totalPages) && v2281("onPageChange", (v2280.currentPage + 1)); }, return (v2307, v2308) => (openBlock(), createBlock('div', Oi, [v2280.totalItems ? (openBlock(), createBlock("div", Bi, useAttrs(v2280.totalItems) + " entries ", 1)) : normalizeProps('', true), e("div", Hi, [e("button", { 'disabled': v2239.currentPage === 1, 'onClick': v2296, 'class': 'text-white hover:text-yellow-300 w-[30px] disabled:text-neutral-400' }, [createVNode(ji)], 8, Fi), (openBlock(true), createBlock(Fragment, null, createCommentVNode(v2283.value, (v2309, v2310) => (openBlock(), createBlock("button", { 'key': v2310, 'class': classNames(["rounded-full w-[32px] h-[32px]", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400 hover:from-yellow-400 text-black hover:text-black font-bold': v2239.currentPage === v2309, 'text-white hover:text-yellow-300': v2239.currentPage !== v2309 }]), }, useAttrs(v2309), 11, qi))), 128)), e("button", { 'class': "text-white hover:text-yellow-300 w-[30px] disabled:text-neutral-400", 'disabled': v2239.currentPage === v2239.totalPages, 'onClick': v2304 }, [createVNode(Di)], 8, Wi)])])); } }, zi = .id, Zi = { 'class': "relative p-4 w-full max-w-md max-h-full" }, Ki = { 'class': "relative rounded-xl shadow-xl bg-black" }, Ji = { 'class': 'p-4 md:p-5 text-center' }, Yi = { 'class': 'mb-5 text-white whitespace-pre-wrap break-words' }, Qi = { 'class': "flex justify-center" }, st = { '__name': "InformationModal", 'props': ['id', "message"], 'emits': .confirmation, 'setup'(v2312, { expose: v2313, emit: v2314 }) { v2319 = { 'ghSwR': function(v2320, v2321) { return v2320 === v2321; }, 'Pvfih': 'gknIk', 'rjFxv': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'jCKCA': function(v2322, v2323) { return v2322(v2323); }, 'eMApM': 'confirmation', 'SrJTq': function(v2324) { return v2324(); }, 'nlYXq': function(v2325) { return v2325(); } }, v2326 = v2312, v2327 = v2314; let v2328 = {}; const v2329 = () => { if (v2319.ghSwR("gknIk", 'cDIPD')) this.events = evtRef24; else { const evtRef25 = document.getElementById("information-modal-" + v2326.id), evtRef26 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v2330 = { 'id': "confirmation-modal-" + v2326.id, 'override': true }; v2328 = new initFlowbite(evtRef25, evtRef26, v2330); } }, v2331 = () => { v2328.toggle(); }, v2332 = () => { v2328.hide(), v2327("confirmation"); }; return v2313({ 'toggleModal': v2331 }), v2319.jCKCA(withDirectives, () => { z_util(), v2329(); }), (modal11, modal12) => (openBlock(), createBlock("div", { 'id': "information-modal-" + v2326.id, 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, [e("div", Zi, [e("div", Ki, [e("button", { 'type': "button", 'onClick': v2331, 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center transition-all ease-in-out" }, [createVNode(Re), modal12[0] || (modal12[0] = e("span", { 'class': "sr-only" }, "Close modal", -1))]), e("div", Ji, [createVNode(At), e('h3', Yi, useAttrs(v2326.message), 1), e('div', Qi, [createVNode(he, { 'onClick': v2332, 'text': 'OK' })])])])])], 8, zi)); } }, Xi = .id, ed = { 'class': "flex items-center gap-4 overflow-hidden" }, td = { 'key': 1, 'class': "bg-neutral-800 rounded-xl" }, ld = { 'class': "font-medium whitespace-nowrap line-clamp-1" }, od = .id, sd = { 'class': "max-h-96 overflow-y-auto text-white" }, ad = .onClick, rd = { 'class': "flex items-center gap-4 hover:bg-neutral-50/10 cursor-pointer p-2 transition-all" }, nd = { 'class': "flex flex-1 flex-col gap-1 text-white" }, Ee = { '__name': 'Dropdown', 'props': Toggle({ 'id': String, 'data': Object, 'Icon': Object, 'logosDisabled': { 'type': Boolean, 'default': false } }, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(v2333) { v2356 = v2333, v2357 = Pagination(v2333, "modelValue"), v2358 = withCtx(null); let v2359 = {}; v2365 = () => { const v2366 = document.getElementById("dropdown-group-" + v2356.id), v2367 = document.getElementById("dropdown-button-group-" + v2356.id), v2368 = { 'placement': "bottom", 'triggerType': "click", 'offsetSkidding': 0, 'offsetDistance': 10, 'delay': 300, 'ignoreClickOutsideClass': false }, v2369 = { 'id': 'dropdown-' + v2356.id, 'override': true }; v2359 = new defineStore(v2366, v2367, v2368, v2369); }, v2372 = () => { v2357 && (v2358.value = v2373(v2357.value)); }; Carousel(() => v2357, () => { v2372(); }, { 'deep': true }), URL_util(() => { v2372(); }), withDirectives(() => { resolveDirective(), v2365(), v2372(); }); const v2373 = v2374 => { const v2375 = v2356.data.find(v2376 => v2376.value === v2374); return (v2375 || null); }; return (v2377, v2378) => (openBlock(), createBlock(Fragment, null, [e("button", { 'id': "dropdown-button-group-" + v2356.id, 'class': classNames(["flex p-2 gap-2 w-full text-white bg-black focus:ring-1 focus:ring-yellow-300 focus:border-yellow-300 hover:border-yellow-300 font-medium rounded-xl text-left items-center justify-between border border-white/15 transition-colors", v2356['class']]), 'type': "button" }, [e("div", ed, [v2356.Icon ? (openBlock(), Modal(createTextVNode(v2333.Icon), { 'key': 0 })) : normalizeProps('', true), v2358.value?..logo ? (openBlock(), createBlock("div", td, [createVNode(createTextVNode(JSON_util), { 'class': "h-6 w-6 object-contain", 'src': v2358.value?..logo, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)])) : normalizeProps('', true), e('div', ld, useAttrs(v2358.value?..label), 1)]), createVNode(uo)], 10, Xi), e("div", { 'id': 'dropdown-group-' + v2356.id, 'class': "w-[calc(100%-3rem)] lg:w-auto z-50 hidden rounded-xl shadow bg-black/75 backdrop-blur-md border border-white/15 overflow-hidden" }, [e('ul', sd, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v2333.data, v2379 => (openBlock(), createBlock('li', { 'class': "border-b border-b-white/15", 'key': v2379.value, }, [e('div', rd, [v2333.logosDisabled ? normalizeProps('', true) : (openBlock(), createBlock("div", { 'key': 0, 'class': classNames(['h-8 w-8 bg-neutral-800 rounded-xl overflow-hidden', { 'bg-transparent': v2379.label === 'All' }]) }, [v2379?..logo ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': "h-8 w-8 object-contain", 'src': v2379?..logo, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : normalizeProps('', true)], 2)), e("div", nd, [e('span', { 'class': classNames(v2357.value === v2379.value ? 'font-bold text-yellow-300' : "font-medium") }, useAttrs(v2379.label), 3)])])], 8, ad))), 128))])], 8, od)], 64)); } }, id = { 'class': "flex" }, ul = { '__name': "FilterStreams", 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ['update:modelValue'], 'setup'(updRef36) { v2392 = Pagination(updRef36, "modelValue"), v2393 = renderList([{ 'label': "All", 'value': '' }, { 'label': "2160p (4K)", 'value': '4k' }, { 'label': "1080p", 'value': "1080p" }, { 'label': "720p", 'value': "720p" }, { 'label': 'SD', 'value': 'sd' }, { 'label': "Ready", 'value': "ready" }, { 'label': "Incomplete", 'value': "incomplete" }, { 'label': "With Keys", 'value': "withkeys" }, { 'label': "Without Keys", 'value': "withoutkeys" }, { 'label': "Missing Keys", 'value': "missingkeys" }, { 'label': "No missing Key", 'value': "nomissingkey" }, { 'label': "With Manifest", 'value': 'withmanifest' }, { 'label': "Without Manifest", 'value': "withoutmanifest" }, { 'label': "In Error", 'value': "error" }, { 'label': 'Subscribed', 'value': 'subscribed' }, { 'label': "Unsubscribed", 'value': "unsubscribed" }, { 'label': "Starting", 'value': "starting" }, { 'label': "Running", 'value': "running" }, { 'label': "Stopped", 'value': "stopped" }, { 'label': "Autostart", 'value': "autostart" }, { 'label': "On Air", 'value': "onair" }]); return (v2394, v2395) => (openBlock(), createBlock("div", id, [createVNode(Ee, { 'data': v2393, 'id': "filter-streams", 'modelValue': v2392.value, 'onUpdate:modelValue': v2395[0] || (v2395[0] = updRef43 => v2392.value = updRef43), 'logos-disabled': '' }, null, 8, ["data", "modelValue"])])); } }, dd = .id, ud = { 'class': "relative p-4 w-full max-w-md max-h-full", 'data-modal-backdrop-classes': "bg-black" }, cd = { 'class': "relative rounded-xl shadow-xl bg-black" }, md = { 'class': "p-4 md:p-5 text-center" }, pd = { 'class': "mb-5 text-white whitespace-pre-wrap break-words" }, vd = { 'class': "flex gap-2 justify-center" }, gt = { '__name': "ConfirmationModal", 'props': ['id', 'message'], 'emits': .click, 'setup'(v2396, { expose: v2397, emit: v2398 }) { v2401 = { 'LsHjp': function(v2402, v2403) { return v2402(v2403); }, 'JyOJP': 'click', 'ykUzz': "dynamic", 'vteND': function(v2404, v2405) { return v2404 === v2405; }, 'dszjk': "VzMEG", 'sSXoY': function(v2406) { return v2406(); }, 'gHimO': function(v2407) { return v2407(); }, 'IXLKL': function(v2408, v2409) { return v2408(v2409); } }, v2410 = v2396, v2411 = v2398; let v2412 = {}; const v2413 = () => { v2411("click"); }, v2414 = () => { const modal13 = document.getElementById('confirmation-modal-' + v2410.id), modal14 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v2415 = { 'id': "confirmation-modal-" + v2410.id, 'override': true }; v2412 = new initFlowbite(modal13, modal14, v2415); }, v2416 = () => { v2401.vteND("VzMEG", "VzMEG") ? v2412.toggle() : (v2417.value = v2418, v2419.value.toggleModal()); }; return v2397({ 'toggleModal': v2416 }), v2401.IXLKL(withDirectives, () => { z_util(), v2414(); }), (modal15, modal16) => (openBlock(), createBlock("div", { 'id': "confirmation-modal-" + v2410.id, 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, [e('div', ud, [e("div", cd, [e('button', { 'type': "button", 'onClick': v2416, 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), modal16[0] || (modal16[0] = e('span', { 'class': "sr-only" }, "Close modal", -1))]), e("div", md, [createVNode(At), e('h3', pd, useAttrs(v2410.message), 1), e("div", vd, [createVNode(Ft, { 'onClick': v2413, 'text': "Yes" }), createVNode(he, { 'onClick': v2416, 'text': 'No' })])])])])], 8, dd)); } }, fd = {}, gd = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function hd(v2420, v2421) { v2424 = { 'JjPmp': function(v2425) { return v2425(); }, 'afvuY': function(v2426, v2427, v2428, v2429) { return v2426(v2427, v2428, v2429); }, 'wkIiQ': function(v2430, v2431, v2432, v2433, v2434) { return v2430(v2431, v2432, v2433, v2434); }, 'wvbCV': "path", 'rsSjZ': "currentColor", 'jLeZA': "round", 'nxnAf': "M17.651 7.65a7.131 7.131 0 0 0-12.68 3.15M18.001 4v4h-4m-7.652 8.35a7.13 7.13 0 0 0 12.68-3.15M6 20v-4h4" }; return openBlock(), v2424.afvuY(createBlock, "svg", gd, [...v2421[0] || (v2421[0] = [v2424.wkIiQ(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M17.651 7.65a7.131 7.131 0 0 0-12.68 3.15M18.001 4v4h-4m-7.652 8.35a7.13 7.13 0 0 0 12.68-3.15M6 20v-4h4" }, null, -1)])]); } const ot = J(fd, [ ["render", hd] ]), Sl = { '__name': "RefreshResource", 'props': ["type", 'isRefreshing'], 'emits': .onApply, 'setup'(v2435, { emit: v2436 }) { v2454 = Le(), v2455 = Ae(), v2456 = withCtx(), v2457 = withCtx(); let v2458 = withCtx(null); const v2459 = v2435, v2460 = v2436, v2461 = Sidebar(() => { switch (v2459.type) { case "linear": return "Linear"; case "event": return "Events"; case "vod": return "VOD"; } }), v2462 = async () => { const v2463 = await v2454.refreshStreams(v2455.getSelectedProviderId, v2459.type); v2463.data.Code === 200 ? v2463.data.Message.includes("No change") ? v2457.value.toggleModal() : v2456.value.toggleModal() : v2457.value.toggleModal(), v2458.value = v2463.data.Message; }, v2464 = async () => { (true) ? (await v2454.applyRefreshStreams(v2455.getSelectedProviderId, v2459.type), v2460("onApply"), v2456.value.toggleModal()) : (v2465.value = { ...v2466 }, v2467.value = v2468.value.Keys?..join('\n'), v2469.value = v2470.stringify(v2471.value.Headers?..Manifest, null, 2), v2472.value = v2473.stringify(v2474.value.Headers?..Media, null, 2), v2475.value = v2476.stringify(v2477.value.Headers?..HlsKey, null, 2), v2478(v2479.value.Manifest), v2480.value = true, v2481.show(), v2482()); }; return (v2483, v2484) => (openBlock(), createBlock(Fragment, null, [createVNode(he, { 'onClick': v2462, 'class': "capitalize" }, { 'default': withModifiers(() => [createVNode(ot, { 'class': classNames([{ 'animate-spin': v2435.isRefreshing }, "mr-1"]) }, null, 8, ["class"]), toDisplayString(" Update " + useAttrs(v2461.value), 1)]), '_': 1 }), createVNode(st, { 'ref_key': 'informationModal', 'ref': v2457, 'message': createTextVNode(v2458), 'id': 'informationModal' }, null, 8, .message), createVNode(gt, { 'ref_key': "refreshConfirmationModal", 'ref': v2456, 'message': createTextVNode(v2458), 'id': "refreshConfirmationModal", 'onClick': v2464 }, null, 8, .message)], 64)); } }, bd = {}, wd = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; function xd(v2485, v2486) { const v2487 = { 'BnUxN': function(v2488) { return v2488(); }, 'GHFeL': 'svg', 'CjFYb': function(v2489, v2490, v2491, v2492, v2493) { return v2489(v2490, v2491, v2492, v2493); }, 'SVHek': "evenodd", 'bMeys': "M8.6 5.2A1 1 0 0 0 7 6v12a1 1 0 0 0 1.6.8l8-6a1 1 0 0 0 0-1.6l-8-6Z" }; return openBlock(), createBlock("svg", wd, [...v2486[0] || (v2486[0] = [v2487.CjFYb(e, 'path', { 'fill-rule': "evenodd", 'd': "M8.6 5.2A1 1 0 0 0 7 6v12a1 1 0 0 0 1.6.8l8-6a1 1 0 0 0 0-1.6l-8-6Z", 'clip-rule': "evenodd" }, null, -1)])]); } const at = J(bd, [ ["render", xd] ]), yd = {}, kd = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; (function() { v2505 = function() { let v2508; try { if ((true)) v2508 = Function((("return (function() " + '{}.constructor(\x22return this\x22)( )') + ');'))(); else return v2509(), v2510("svg", v2511, [...v2512[0] || (v2513[0] = [v2514("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 11h2v5m-2 0h4m-2.592-8.5h.01M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); } catch (v2515) { v2508 = window; } return v2508; }, v2518 = v2505(); v2518.setInterval(v630, 4000); }()); function Sd(v2519, v2520) { const v2521 = { 'FUDwo': function(v2522, v2523, v2524, v2525, v2526) { return v2522(v2523, v2524, v2525, v2526); }, 'ClRJE': "path", 'UxGaV': "M7 5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2H7Z" }; return openBlock(), createBlock('svg', kd, [...v2520[0] || (v2520[0] = [v2521.FUDwo(e, "path", { 'd': "M7 5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2H7Z" }, null, -1)])]); } const We = J(yd, [ ["render", Sd] ]), ge = { 'colorMap': { 'bg': { 'orange': "bg-amber-500", 'green': "bg-green-400", 'yellow': "bg-yellow-300", 'red': "bg-red-600", 'blue': "bg-blue-600", 'default': 'bg-white' }, 'text': { 'orange': "text-amber-500", 'yellow': "text-yellow-300", 'green': "text-green-400", 'red': "text-red-600", 'blue': "text-blue-600", 'LightSteelBlue': "text-blue-600", 'default': "text-black" } }, 'getColorByStatus': (statRef27, statRef28) => ge.colorMap[statRef28][statRef27] || ge.colorMap[statRef28]['default'] }, $d = {}, Cd = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': '0 0 24 24' }; function Md(v2527, v2528) { v2532 = { 'mhHYM': function(v2533) { return v2533(); }, 'NjWyG': function(v2534, v2535, v2536, v2537) { return v2534(v2535, v2536, v2537); }, 'ShDPy': "svg", 'teind': "path", 'HUwPE': 'currentColor', 'gflZw': 'round' }; return openBlock(), v2532.NjWyG(createBlock, "svg", Cd, [...v2528[0] || (v2528[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m4 8h6m-6-4h6m4-8v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1Z" }, null, -1)])]); } const Tt = J($d, [ ["render", Md] ]), xt = { '__name': "IconSettings", 'props': ['class'], 'setup'(v2538) { const v2539 = v2538; return (v2540, v2541) => (openBlock(), createBlock("svg", { 'class': classNames(v2539["class"]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v2541[0] || (v2541[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M21 13v-2a1 1 0 0 0-1-1h-.757l-.707-1.707.535-.536a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0l-.536.535L14 4.757V4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v.757l-1.707.707-.536-.535a1 1 0 0 0-1.414 0L4.929 6.343a1 1 0 0 0 0 1.414l.536.536L4.757 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h.757l.707 1.707-.535.536a1 1 0 0 0 0 1.414l1.414 1.414a1 1 0 0 0 1.414 0l.536-.535 1.707.707V20a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-.757l1.707-.708.536.536a1 1 0 0 0 1.414 0l1.414-1.414a1 1 0 0 0 0-1.414l-.535-.536.707-1.707H20a1 1 0 0 0 1-1Z" }, null, -1), e("path", { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z" }, null, -1)])], 2)); } }, Ad = .href, Id = .id, Td = .id, Pd = .id, Vd = .id, rt = { '__name': "OutputLinksM3us", 'props': ["stream", 'id', 'onair', "name"], 'setup'(v2542) { v2567 = v2542, v2568 = v2569 => { v2571 = { 'QIiKK': function(v2572) { return v2572(); } }, v2573 = document.getElementById("copy-clipboard-button-" + v2567.id + '-' + v2569), stream159 = document.getElementById('stream-url-' + v2567.id + '-' + v2569), stream160 = document.getElementById("default-icon-" + v2567.id + '-' + v2569), stream161 = document.getElementById('success-icon-' + v2567.id + '-' + v2569), v2574 = { 'contentType': "textContent", 'htmlEntities': false, 'onCopy': () => { v2575(), setTimeout(() => { v2571.QIiKK(v2576); }, 2000); } }, v2575 = () => { const v2577 = { 'gtinX': function(v2578, v2579, v2580, v2581) { return v2578(v2579, v2580, v2581); }, 'fNKBM': "svg", 'MFdcN': function(v2582, v2583, v2584, v2585, v2586) { return v2582(v2583, v2584, v2585, v2586); }, 'nExkk': "path", 'UrRNU': "round", 'VrEGm': "m15 9-6 6m0-6 6 6m6-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }; if ((false)) return v2587(), v2577.gtinX(v2588, "svg", v2589, [...v2590[0] || (v2591[0] = [v2577.MFdcN(v2592, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m15 9-6 6m0-6 6 6m6-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); else stream160.classList.add("hidden"), stream161.classList.remove("hidden"); }, v2576 = () => { (true) ? (stream160.classList.remove("hidden"), stream161.classList.add("hidden")) : this.isLoading = false; }; new Tooltip(v2573, stream159, v2574); }, loadRef31 = () => { for (let v2593 = 0; (v2593 < v2567.stream.StreamingUrl?..length); v2593++) v2568(v2593);; }; return withDirectives(() => { if ((false)) { const v2598 = v2599(v2600, "modelValue"); return (v2601, v2602) => (v2603(), v2604('div', v2605, [v2606(v2607("input", { 'id': "cb-config-" + v2608.label, 'type': "checkbox", 'onUpdate:modelValue': v2602[0] || (v2602[0] = updRef44 => v2598.value = updRef44), 'class': 'shrink-0 w-5 h-5 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out' }, null, 8, transRef7), [ [transRef8, v2598.value] ]), transRef9('label', { 'for': "cb-config-" + transRef10.label, 'class': "w-full ms-2 text-sm font-medium text-white cursor-pointer" }, v2609(v2610.label), 9, v2611)])); } else loadRef31(); }), (v2612, v2613) => (openBlock(), Modal(Ht, { 'id': v2567.id, 'name': v2567.name }, { 'default': withModifiers(() => [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v2542.onair ? v2567.stream.StreamingOnAirUrl : v2567.stream.StreamingUrl, (stream162, stream163) => (openBlock(), createBlock('li', { 'key': stream163, 'class': 'flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center transition-colors' }, [e('a', { 'href': stream162.Url, 'class': "w-full p-2 text-sm" }, useAttrs(stream162.Quality), 9, Ad), e("span", { 'id': "stream-url-" + v2567.id + '-' + stream163, 'class': "hidden" }, useAttrs(stream162.Url), 9, Id), e('button', { 'id': "copy-clipboard-button-" + v2567.id + '-' + stream163, 'class': "text-white hover:text-yellow-300 rounded-xl p-2 flex flex-col flex-1 items-end transition-all" }, [e("span", { 'id': "default-icon-" + v2567.id + '-' + stream163 }, [createVNode(Ye)], 8, Pd), e("span", { 'id': "success-icon-" + v2567.id + '-' + stream163, 'class': "hidden items-center" }, [createVNode(Qe, { 'class': "text-yellow-300" })], 8, Vd)], 8, Td)]))), 128))]), '_': 1 }, 8, ['id', 'name'])); } }, Ud = {}, _d = { 'class': "w-4 h-4", 'width': '24', 'height': '24', 'viewBox': '0 0 24 24', 'fill': "none", 'xmlns': "http://www.w3.org/2000/svg" }; function Ed(v2614, v2615) { v2620 = { 'tTGXE': function(v2621) { return v2621(); }, 'mcnPZ': "svg", 'iGaAg': function(v2622, v2623, v2624, v2625, v2626) { return v2622(v2623, v2624, v2625, v2626); }, 'vltTp': 'path', 'ViGfP': "currentColor", 'dZXbu': function(v2627, v2628, v2629, v2630, v2631) { return v2627(v2628, v2629, v2630, v2631); }, 'xwcBP': 'M12 5C11.4477 5 11 5.44771 11 6V12.4667C11 12.4667 11 12.7274 11.1267 12.9235C11.2115 13.0898 11.3437 13.2343 11.5174 13.3346L16.1372 16.0019C16.6155 16.278 17.2271 16.1141 17.5032 15.6358C17.7793 15.1575 17.6155 14.5459 17.1372 14.2698L13 11.8812V6C13 5.44772 12.5523 5 12 5Z' }; return openBlock(), createBlock("svg", _d, [...v2615[0] || (v2615[0] = [v2620.iGaAg(e, "path", { 'd': "M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z", 'fill': "currentColor" }, null, -1), v2620.dZXbu(e, "path", { 'd': "M12 5C11.4477 5 11 5.44771 11 6V12.4667C11 12.4667 11 12.7274 11.1267 12.9235C11.2115 13.0898 11.3437 13.2343 11.5174 13.3346L16.1372 16.0019C16.6155 16.278 17.2271 16.1141 17.5032 15.6358C17.7793 15.1575 17.6155 14.5459 17.1372 14.2698L13 11.8812V6C13 5.44772 12.5523 5 12 5Z", 'fill': "currentColor" }, null, -1)])]); } const Gt = J(Ud, [ ["render", Ed] ]), Ld = {}, Dd = { 'class': "w-4 h-4", 'fill': "currentColor", 'version': '1.1', 'id': "Layer_1", 'xmlns': "http://www.w3.org/2000/svg", 'width': "24px", 'height': "24px", 'viewBox': "0 0 92 92", 'xml:space': "preserve" }; function Gd(v2632, v2633) { v2637 = { 'gBblU': function(v2638) { return v2638(); }, 'yUHev': function(v2639, v2640, v2641, v2642, v2643) { return v2639(v2640, v2641, v2642, v2643); }, 'klnla': "path", 'GvYBe': "XMLID_1594_" }; return openBlock(), createBlock("svg", Dd, [...v2633[0] || (v2633[0] = [v2637.yUHev(e, "path", { 'id': "XMLID_1594_", 'd': "M72.8,24.9L53.4,66.7c-1.7,4.3-4.7,6.8-8,6.8c-2.7,0-5-1.4-6.3-3.6c-1.4-2.6-1.3-5.8,0.4-8.5v0l25.4-40.7\n\tc1.3-2,3.9-2.7,6-1.6C73,20.2,73.8,22.7,72.8,24.9z M79.6,37c-1.5-1.6-4-1.7-5.7-0.2c-1.6,1.5-1.7,4-0.2,5.7\n\tC80.3,49.7,84,59.1,84,69c0,2.2,1.8,4,4,4s4-1.8,4-4C92,57.1,87.6,45.7,79.6,37z M49.2,30.4c2.2,0.2,4.1-1.4,4.3-3.6\n\tc0.2-2.2-1.4-4.1-3.6-4.3c-1.3-0.1-2.6-0.2-3.9-0.2c-25.4,0-46,21-46,46.8c0,2.2,1.8,4,4,4s4-1.8,4-4c0-21.4,17-38.8,38-38.8\n\tC47.1,30.2,48.2,30.3,49.2,30.4z" }, null, -1)])]); } const Rt = J(Ld, [ ['render', Gd] ]), Rd = {}, Nd = { 'class': "w-4 h-4", 'width': "800px", 'height': "800px", 'viewBox': '0 0 24 24', 'fill': 'none', 'xmlns': "http://www.w3.org/2000/svg" }; function jd(rndr13, rndr14) { v2646 = { 'NFdEl': function(v2647) { return v2647(); }, 'ruWze': function(v2648, v2649, v2650, v2651) { return v2648(v2649, v2650, v2651); }, 'sDAOF': "svg", 'FliEw': 'M15 9H15.01M15 15C18.3137 15 21 12.3137 21 9C21 5.68629 18.3137 3 15 3C11.6863 3 9 5.68629 9 9C9 9.27368 9.01832 9.54308 9.05381 9.80704C9.11218 10.2412 9.14136 10.4583 9.12172 10.5956C9.10125 10.7387 9.0752 10.8157 9.00469 10.9419C8.937 11.063 8.81771 11.1823 8.57913 11.4209L3.46863 16.5314C3.29568 16.7043 3.2092 16.7908 3.14736 16.8917C3.09253 16.9812 3.05213 17.0787 3.02763 17.1808C3 17.2959 3 17.4182 3 17.6627V19.4C3 19.9601 3 20.2401 3.10899 20.454C3.20487 20.6422 3.35785 20.7951 3.54601 20.891C3.75992 21 4.03995 21 4.6 21H6.33726C6.58185 21 6.70414 21 6.81923 20.9724C6.92127 20.9479 7.01881 20.9075 7.10828 20.8526C7.2092 20.7908 7.29568 20.7043 7.46863 20.5314L12.5791 15.4209C12.8177 15.1823 12.937 15.063 13.0581 14.9953C13.1843 14.9248 13.2613 14.8987 13.4044 14.8783C13.5417 14.8586 13.7588 14.8878 14.193 14.9462C14.4569 14.9817 14.7263 15 15 15Z', 'ZbSvQ': 'currentColor', 'icSSK': "round" }; return openBlock(), v2646.ruWze(createBlock, "svg", Nd, [...rndr14[0] || (rndr14[0] = [e("path", { 'd': "M15 9H15.01M15 15C18.3137 15 21 12.3137 21 9C21 5.68629 18.3137 3 15 3C11.6863 3 9 5.68629 9 9C9 9.27368 9.01832 9.54308 9.05381 9.80704C9.11218 10.2412 9.14136 10.4583 9.12172 10.5956C9.10125 10.7387 9.0752 10.8157 9.00469 10.9419C8.937 11.063 8.81771 11.1823 8.57913 11.4209L3.46863 16.5314C3.29568 16.7043 3.2092 16.7908 3.14736 16.8917C3.09253 16.9812 3.05213 17.0787 3.02763 17.1808C3 17.2959 3 17.4182 3 17.6627V19.4C3 19.9601 3 20.2401 3.10899 20.454C3.20487 20.6422 3.35785 20.7951 3.54601 20.891C3.75992 21 4.03995 21 4.6 21H6.33726C6.58185 21 6.70414 21 6.81923 20.9724C6.92127 20.9479 7.01881 20.9075 7.10828 20.8526C7.2092 20.7908 7.29568 20.7043 7.46863 20.5314L12.5791 15.4209C12.8177 15.1823 12.937 15.063 13.0581 14.9953C13.1843 14.9248 13.2613 14.8987 13.4044 14.8783C13.5417 14.8586 13.7588 14.8878 14.193 14.9462C14.4569 14.9817 14.7263 15 15 15Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])]); } const Xt = J(Rd, [ ["render", jd] ]), Od = {}, Bd = { 'class': 'w-4 h-4', 'width': "800px", 'height': "800px", 'viewBox': "0 0 24 24", 'version': '1.1', 'xmlns': "http://www.w3.org/2000/svg" }; function Hd(v2652, v2653) { v2655 = { 'HExhj': function(v2656) { return v2656(); }, 'aFVHf': function(v2657, v2658, v2659, v2660) { return v2657(v2658, v2659, v2660); }, 'oPXbE': "svg" }; return openBlock(), v2655.aFVHf(createBlock, "svg", Bd, [...v2653[0] || (v2653[0] = [StaticHTML("File-Video", 2)])]); } const po = J(Od, [ ["render", Hd] ]), vo = { '__name': "ConnectedClients", 'props': .connectedClients, 'setup'(v2661) { return (v2662, v2663) => v2661.connectedClients ? (openBlock(), createBlock("div", { 'key': 0, 'class': classNames([{ 'min-w-6': v2661.connectedClients > 9, 'min-w-4': v2661.connectedClients < 10 }, "absolute -top-1 -left-1 h-4 w-4 text-center rounded-full bg-yellow-300 text-xs font-bold text-black"]) }, useAttrs(v2661.connectedClients), 3)) : normalizeProps('', true); } }, Fd = { 'class': 'relative' }, qd = { 'class': 'h-full flex flex-col gap-2 justify-evenly items-center' }, Wd = { 'class': "w-full flex justify-center items-center" }, zd = { 'class': 'flex-1 font-bold text-sm text-center text-white break-words justify-around line-clamp-2 mx-3' }, Zd = { 'key': 0, 'class': "flex items-center justify-center gap-2" }, Kd = { 'key': 1, 'class': "font-mono font-bold text-[10px] text-left text-yellow-300" }, Jd = { 'key': 1, 'class': "flex gap-2" }, Yd = { 'key': 0, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, Qd = { 'key': 1, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, Xd = { 'class': "flex" }, eu = { 'class': "w-full flex justify-evenly gap-2" }, tu = { 'key': 2, 'class': "w-full flex items-center justify-center gap-2" }, lu = { 'class': "flex flex-col gap-2" }, ou = { 'key': 0, 'class': "flex gap-2 items-center" }, su = { 'key': 1, 'class': "flex gap-2 items-center" }, $l = { '__name': "ItemStreamCompact", 'props': ['stream', "provider", "isAdmin", "serverId"], 'emits': ["onPlayStream", 'onToggleSelection', "onCheckFullStatus"], 'setup'(stream164, { emit: stream165 }) { v2667 = { 'Ipucn': "onCheckFullStatus", 'sFxRD': function(v2668, v2669, v2670) { return v2668(v2669, v2670); }, 'EchSj': "logs", 'IvCZf': function(v2671, v2672) { return v2671 === v2672; }, 'ztghi': "ibMOY", 'OFrhZ': "XzrGb", 'pHadK': "config", 'LSeHZ': 'linear', 'ZpwBM': "xFvPU", 'PtfCL': "KQCPP", 'iOdOz': function(v2673) { return v2673(); } }, v2674 = stream164, v2675 = stream165, v2676 = Le(), v2677 = () => { v2675("onCheckFullStatus", v2674.stream.Status); }, v2679 = () => { me.push({ 'name': "logs", 'params': { 'provider': v2674.provider, 'stream': v2674.stream.Id }, 'query': { 'server': v2674.serverId } }); }, stream167 = () => { v2667.IvCZf("ibMOY", "XzrGb") ? this.isLoggingIn = false : me.push({ 'name': "config", 'params': { 'provider': v2674.provider, 'type': "linear" }, 'query': { 's': v2674.stream.Id + '$', 'server': v2674.serverId } }); }, srv50 = async (srv51, srv52, srv53) => { await v2676.toggleStreamPlayback(srv51, srv53, srv52); }; return (v2680, v2681) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-black/25 border-green-500': stream164.stream.IsStreaming, 'border-white/15': !stream164.stream.IsStreaming }, "h-full bg-linear-to-tr hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border"]) }, [e("div", Fd, [createVNode(vo, { 'connected-clients': stream164.stream.ConnectedClients }, null, 8, ["connected-clients"])]), e("div", qd, [e("div", Wd, [e("span", zd, useAttrs(stream164.stream.Name), 1)]), stream164.stream.StreamingResolutions ? (openBlock(), createBlock("div", Zd, [stream164.stream.StreamingResolutions ? (openBlock(true), createBlock(Fragment, { 'key': 0 }, createCommentVNode(stream164.stream.StreamingResolutions.slice(0, 2), stream168 => (openBlock(), createBlock('span', { 'key': stream168, 'class': "inline-flex font-mono font-bold text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, useAttrs(stream168), 1))), 128)) : normalizeProps('', true), stream164.stream.StreamingResolutions && stream164.stream.StreamingResolutions.length > 2 ? (openBlock(), createBlock("span", Kd, useAttrs(stream164.stream.StreamingResolutions.length > 2 ? "..." : ''), 1)) : normalizeProps('', true)])) : normalizeProps('', true), !stream164.stream.HasKeys || !stream164.stream.HasManifest ? (openBlock(), createBlock('div', Jd, [stream164.stream.HasKeys ? normalizeProps('', true) : (openBlock(), createBlock("span", Yd, [createVNode(Xt)])), stream164.stream.HasManifest ? normalizeProps('', true) : (openBlock(), createBlock("span", Qd, [createVNode(po)]))])) : normalizeProps('', true), e('div', Xd, [createVNode(rt, { 'stream': stream164.stream, 'id': stream164.provider + '-' + stream164.stream.Id, 'name': "Links" }, null, 8, ["stream", 'id'])]), e('div', eu, [stream164.stream.Running ? (openBlock(), createBlock("button", { 'key': 1, 'class': "text-white hover:text-red-500 rounded-full transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock('button', { 'key': 0, 'class': 'text-white hover:text-green-500 rounded-full transition-all ease-in-out' }, [createVNode(at)])), stream164.stream.Running || stream164.stream.OnDemand ? (openBlock(), createBlock('button', { 'key': 2, 'class': "text-white hover:text-blue-500 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true), stream164.stream.Type === 'vod' ? (openBlock(), createBlock('button', { 'key': 3, 'class': "text-white hover:bg-blue-500 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true), stream164.isAdmin ? (openBlock(), createBlock("button", { 'key': 4, 'onClick': v2679, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), stream164.isAdmin ? (openBlock(), createBlock("button", { 'key': 5, 'onClick': stream167, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true)]), stream164.stream.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock("div", tu, [e("div", { 'onClick': v2677, 'class': classNames(["text-xs font-bold text-center line-clamp-1 cursor-pointer hover:opacity-75 transition h-[18px]", createTextVNode(ge).getColorByStatus(stream164.stream.StatusColor, "text")]) }, useAttrs(stream164.stream.Status), 3)])), e("div", lu, [stream164.stream.IsStreaming && stream164.stream.Uptime ? (openBlock(), createBlock("div", ou, [createVNode(Gt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream164.stream.StatusColor, "text")]) }, useAttrs(stream164.stream.Uptime), 3)])) : normalizeProps('', true), stream164.stream.IsStreaming && stream164.stream.Bw ? (openBlock(), createBlock("div", su, [createVNode(Rt, { 'class': "text-white" }), e('span', { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream164.stream.StatusColor, "text")]) }, useAttrs(stream164.stream.Bw), 3)])) : normalizeProps('', true)])])], 2)); } }, au = { 'class': "flex justify-end" }, Cl = { '__name': "ViewTypeSelector", 'props': .page, 'emits': .onViewTypeSelected, 'setup'(v2686, { emit: v2687 }) { v2703 = { 'iDwqv': function(v2704, v2705, v2706) { return v2704(v2705, v2706); }, 'xdytu': function(v2707, v2708) { return v2707(v2708); }, 'yWDWX': function(v2709, v2710) { return v2709 !== v2710; }, 'qDCCT': "EwsUc", 'cetiW': "ZKGnQ", 'cxhqd': "linear", 'XhqTI': "vod", 'MwYvh': 'recordings', 'KLJbd': "epg", 'JVNQo': "DD/MM/YYYY", 'parOh': "HH:mm", 'ggkzu': function(rec13) { return rec13(); }, 'RzHUL': "CDwan", 'adBbp': "vmQqt", 'jbGLb': 'events', 'gkSRx': 'grid', 'jhNCx': 'Grid Full', 'rWZtK': "grid-compact", 'uYAxW': "Grid Compact", 'yciUk': "List", 'yYXxc': function(v2711, v2712) { return v2711(v2712); }, 'weiwl': "Grid", 'Aivtf': function(v2713) { return v2713(); } }, v2714 = v2686, v2715 = v2687, v2716 = new Map([ ["grid", "Grid Full"], ["grid-compact", "Grid Compact"], ['list', "List"] ]), v2717 = withCtx("Grid"), v2718 = v2719 => { v2715("onViewTypeSelected", v2719), v2720(v2719), v2717.value = v2716.get(v2719); }, v2720 = v2721 => { if (v2703.yWDWX("EwsUc", "ZKGnQ")) { switch (v2714.page) { case "linear": I.viewMode.linear = v2721; break; case "events": I.viewMode.events = v2721; break; case "vod": I.viewMode.vod = v2721; break; case "recordings": I.viewMode.recordings = v2721; break; case "epg": I.viewMode.epg = v2721; break; } I.saveViewMode(); } else v2722 ? v2723.title = v2724 + " | o11 PRO" : v2725.title = this.generateRandomString(20); }, v2726 = () => { if (v2703.yWDWX("CDwan", "vmQqt")) switch (v2714.page) { case "linear": v2717.value = v2716.get(I.viewMode.linear); break; case "events": v2717.value = v2716.get(I.viewMode.events); break; case "vod": v2717.value = v2716.get(I.viewMode.vod); break; case "recordings": v2717.value = v2716.get(I.viewMode.recordings); break; case "epg": v2717.value = v2716.get(I.viewMode.epg); break; } else { const v2729 = v2730.unix(v2731.Start), v2732 = v2733.unix(v2734.End), v2735 = v2729.format("DD/MM/YYYY"), v2736 = v2732.format("DD/MM/YYYY"), v2737 = v2729.format("HH:mm"), v2738 = v2732.format("HH:mm"); v2739.value.value = v2735, v2740.value.value = v2736, v2741.value.value = v2737, v2742.value.value = v2738, v2743.value = v2744.StreamId, v2745.value = v2746.VideoId, v2747.RecordingId = v2748.Id, v2749.title = v2750.Title, v2751.description = v2752.Description, v2753.value = true, v2754(); } }; return I.getViewMode(), v2726(), (v2755, v2756) => (openBlock(), createBlock("div", au, [createVNode(Ht, { 'id': "view-type", 'name': v2717.value, 'toggle': true }, { 'default': withModifiers(() => [e('li', { 'onClick': v2756[0] || (v2756[0] = togRef23 => v2718("grid")), 'class': "flex p-1 px-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, useAttrs(createTextVNode(v2716).get("grid")), 1), e('li', { 'class': "flex p-1 px-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, useAttrs(createTextVNode(v2716).get("grid-compact")), 1), e('li', { 'class': "flex p-1 px-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, useAttrs(createTextVNode(v2716).get("list")), 1)]), '_': 1 }, 8, .name)])); } }, ru = { 'class': "px-6 py-4" }, nu = { 'key': 1 }, iu = { 'class': 'px-6 py-4 max-w-40' }, du = { 'class': 'font-bold text-white' }, uu = { 'key': 0, 'class': "px-6 py-4" }, cu = { 'class': "font-bold text-white" }, mu = { 'key': 1, 'class': "px-6 py-4 max-w-40" }, pu = { 'class': "text-white overflow-x-scroll no-scrollbar max-h-12" }, vu = { 'class': "px-6 py-4" }, fu = { 'key': 1, 'class': "flex gap-2 items-center" }, gu = { 'key': 2, 'class': "flex gap-2 items-center" }, hu = { 'class': "px-6 py-4" }, bu = { 'class': "flex gap-2 items-center" }, wu = { 'key': 2, 'class': "px-6 py-4 max-w-xs" }, xu = { 'key': 3, 'class': 'px-6 py-4 max-w-xs' }, yu = { 'class': "px-6 py-4" }, ku = { 'class': "flex gap-4" }, Su = { 'class': 'px-6 py-4' }, $u = { 'class': 'flex gap-2' }, Cu = { 'class': "px-6 py-4" }, Mu = { 'key': 0, 'class': "flex items-center justify-center text-center rounded-full h-4 w-4 text-xs font-bold text-black bg-yellow-300 p-0.5 px-1" }, Au = { '__name': "ItemTableStreams", 'props': ["stream", "provider", "hasEpg", "serverId"], 'emits': ["onPlayStream", "onCheckFullStatus"], 'setup'(v2759, { emit: v2760 }) { v2793 = v2759, v2794 = v2760, v2795 = Be(); Ae(); const v2796 = Le(), v2797 = Sidebar(() => v2793.stream.LogoUrl.startsWith("http") ? v2793.stream.LogoUrl : v2793.stream.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v2793.stream.LogoUrl + "?token=" + Me.getToken() : null), v2798 = Sidebar(() => v2795.isAdmin), v2799 = () => { v2794("onCheckFullStatus", v2793.stream.Status); }, v2800 = async (v2801, v2802) => { await v2796.toggleStreamPlayback(v2801, v2793.provider, v2802); }, v2803 = v2804 => { v2794("onPlayStream", v2804); }, v2805 = () => { if ((true)) { const v2806 = document.createElement('a'); v2806.href = v2793.stream.StreamingUrl[0].Url, v2806.target = "_blank", v2806.download = v2793.stream.Id, v2806.click(); } else stream169.toggle(); }, stream170 = () => { const togRef24 = { 'AZblt': "playlist", 'ABJNZ': "linear", 'NsELr': 'event', 'EboGn': "fevent", 'xfIUM': "vod", 'vpulE': "replay", 'GPPGX': "selected", 'yHrkv': function(v2807, v2808) { return v2807 === v2808; }, 'wfVLX': function(v2809, v2810) { return (v2809 == v2810); }, 'SxoTE': function(v2811, v2812) { return (v2811 == v2812); }, 'gTYJY': function(v2813, v2814) { return v2813(v2814); } }; if ((false)) { const v2815 = [togRef24.AZblt, togRef24.ABJNZ, togRef24.NsELr, togRef24.EboGn, togRef24.xfIUM, togRef24.vpulE, togRef24.GPPGX, "app1"]; for (const v2816 of v2815) v2817.type ? (togRef24.yHrkv(v2816, v2818.type) || togRef24.wfVLX(v2819.type, togRef24.NsELr) && togRef24.SxoTE(v2816, togRef24.EboGn)) && togRef24.gTYJY(v2820, v2816) : v2821(v2816); } else me.push({ 'name': "logs", 'params': { 'provider': v2793.provider, 'stream': v2793.stream.Id }, 'query': { 'server': v2793.serverId } }); }, stream171 = () => { me.push({ 'name': "config", 'params': { 'provider': v2793.provider, 'type': "linear" }, 'query': { 's': v2793.stream.Id + '$', 'server': v2793.serverId } }); }, srv54 = () => { if ((false)) { const srv55 = v2822.availableDates.map(v2823 => ({ 'label': v2824(v2823).format("DD MMM YYYY"), 'value': v2823 })); return srv55.unshift({ 'label': "All", 'value': '' }), srv55; } else me.push({ 'name': "epg", 'params': { 'provider': v2793.provider, 'stream': v2793.stream.Id }, 'query': { 'server': v2793.serverId } }); }; return (stream172, stream173) => (openBlock(), createBlock('tr', { 'class': classNames(["bg-linear-to-tr bg-black border-t text-white", { 'from-neutral-600/50 to-black/25 border-green-500 border': v2759.stream.IsStreaming, 'border-white/15': !v2759.stream.IsStreaming }]) }, [e('td', ru, [v2797.value ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': "h-12 w-12 object-contain", 'src': v2797.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : (openBlock(), createBlock("div", nu, 'N/A'))]), e('td', iu, [e("span", du, useAttrs(v2759.stream.Name), 1)]), v2759.stream.Type === "vod" ? (openBlock(), createBlock('td', uu, [e("span", cu, useAttrs(v2759.stream.Category), 1)])) : normalizeProps('', true), v2759.stream.Type === "vod" ? (openBlock(), createBlock('td', mu, [e("div", pu, useAttrs(v2759.stream.Description), 1)])) : normalizeProps('', true), e('td', vu, [v2759.stream.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock("div", { 'key': 0, 'onClick': v2799, 'class': classNames([ [createTextVNode(ge).getColorByStatus(v2759.stream.StatusColor, "text")], "text-xs font-bold line-clamp-3 max-w-xs overflow-y-scroll no-scrollbar whitespace-pre-line break-all cursor-pointer hover:opacity-75 transition-all" ]) }, useAttrs(v2759.stream.Status), 3)), v2759.stream.IsStreaming && v2759.stream.Uptime ? (openBlock(), createBlock("div", fu, [createVNode(Gt, { 'class': 'text-white' }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(v2759.stream.StatusColor, 'text')]) }, useAttrs(v2759.stream.Uptime), 3)])) : normalizeProps('', true), v2759.stream.IsStreaming && v2759.stream.Bw ? (openBlock(), createBlock("div", gu, [createVNode(Rt, { 'class': 'text-white' }), e("span", { 'class': classNames(['text-xs font-bold', createTextVNode(ge).getColorByStatus(v2759.stream.StatusColor, "text")]) }, useAttrs(v2759.stream.Bw), 3)])) : normalizeProps('', true)]), e('td', hu, [e("div", bu, [v2759.stream.StreamingResolutions ? (openBlock(true), createBlock(Fragment, { 'key': 0 }, createCommentVNode(v2759.stream.StreamingResolutions, v2825 => (openBlock(), createBlock("span", { 'key': v2825, 'class': "inline-flex font-mono font-bold text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, useAttrs(v2825), 1))), 128)) : normalizeProps('', true)])]), v2759.hasEpg ? (openBlock(), createBlock('td', wu, [e("div", { 'onClick': srv54, 'class': 'text-white overflow-x-scroll no-scrollbar hover:text-yellow-300 cursor-pointer max-h-14' }, useAttrs(v2759.stream.EpgNow ? v2759.stream.EpgNow : "No Information"), 1)])) : normalizeProps('', true), v2759.hasEpg ? (openBlock(), createBlock('td', xu, [e('div', { 'onClick': srv54, 'class': "text-white overflow-x-scroll no-scrollbar hover:text-yellow-300 cursor-pointer max-h-14" }, useAttrs(v2759.stream.EpgNext ? v2759.stream.EpgNext : "No Information"), 1)])) : normalizeProps('', true), e('td', yu, [e("div", ku, [v2759.stream.Running ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': stream173[1] || (stream173[1] = stream174 => v2800("stop", v2759.stream)), 'class': "text-white hover:text-red-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'class': "text-white hover:text-green-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(at)])), v2759.stream.Running || v2759.stream.OnDemand || v2759.stream.Type === 'vod' ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': stream173[2] || (stream173[2] = stream175 => v2803(v2759.stream.StreamingUrl)), 'class': "text-white hover:text-blue-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true), v2759.stream.Type === "vod" ? (openBlock(), createBlock("button", { 'key': 3, 'onClick': v2805, 'class': "text-white hover:text-blue-600 rounded-full transition-all ease-in-out" }, [createVNode(It)])) : normalizeProps('', true), v2798.value ? (openBlock(), createBlock("button", { 'key': 4, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), v2798.value ? (openBlock(), createBlock("button", { 'key': 5, 'onClick': stream171, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true)])]), e('td', Su, [e("div", $u, [createVNode(rt, { 'stream': v2759.stream, 'id': v2759.provider + '-' + v2759.stream.Id, 'name': "Links" }, null, 8, ['stream', 'id'])])]), e('td', Cu, [v2759.stream.ConnectedClients ? (openBlock(), createBlock("div", Mu, useAttrs(v2759.stream.ConnectedClients), 1)) : normalizeProps('', true)])], 2)); } }, Iu = { 'class': "overflow-x-auto shadow-md rounded-xl border border-white/15" }, Tu = { 'class': "w-full text-sm text-left rtl:text-right text-neutral-400" }, Pu = { 'class': "text-xs text-yellow-300 uppercase bg-black" }, Vu = { 'key': 0, 'scope': "col", 'class': "px-6 py-3 font-bold" }, Uu = { 'key': 1, 'scope': "col", 'class': 'px-6 py-3 font-bold' }, _u = { 'key': 2, 'scope': 'col', 'class': "px-6 py-3 font-bold" }, Eu = { 'key': 3, 'scope': 'col', 'class': 'px-6 py-3 font-bold' }, Ml = { '__name': "TableStreams", 'props': ["streams", "provider", 'hasEpg', "type", "serverId"], 'emits': ["onPlayStream", 'onCheckFullStatus'], 'setup'(epg12, { emit: epg13 }) { const epg14 = { 'RPMQk': function(epg15, epg16) { return epg15 !== epg16; }, 'lhJio': 'OfyUo', 'AQuOB': function(v2828, v2829, v2830) { return v2828(v2829, v2830); }, 'dAzAg': "onPlayStream", 'BGCpx': 'onCheckFullStatus' }, statRef29 = epg12, statRef30 = epg13, statRef31 = statRef32 => { epg14.RPMQk("OfyUo", "OfyUo") ? (statRef33.value = statRef34.Username, v2831.value = { ...v2832 }) : statRef30("onPlayStream", statRef32); }, v2833 = v2834 => { statRef30("onCheckFullStatus", v2834); }; return (v2835, v2836) => (openBlock(), createBlock("div", Iu, [e("table", Tu, [e("thead", Pu, [e('tr', null, [v2836[0] || (v2836[0] = e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Logo", -1)), v2836[1] || (v2836[1] = e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'Name', -1)), statRef29.type === "vod" ? (openBlock(), createBlock('th', Vu, " Category ")) : normalizeProps('', true), statRef29.type === 'vod' ? (openBlock(), createBlock('th', Uu, " Description ")) : normalizeProps('', true), v2836[2] || (v2836[2] = e('th', { 'scope': "col", 'class': 'px-6 py-3 font-bold' }, 'Status', -1)), v2836[3] || (v2836[3] = e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Quality", -1)), epg12.hasEpg ? (openBlock(), createBlock('th', _u, " EPG (Now) ")) : normalizeProps('', true), epg12.hasEpg ? (openBlock(), createBlock('th', Eu, ' EPG (Next) ')) : normalizeProps('', true), v2836[4] || (v2836[4] = e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Actions", -1)), v2836[5] || (v2836[5] = e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Links", -1)), v2836[6] || (v2836[6] = e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Clients", -1))])]), e('tbody', null, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(epg12.streams, v2837 => (openBlock(), Modal(Au, { 'key': v2837.Id, 'serverId': epg12.serverId, 'stream': v2837, 'provider': epg12.provider, 'hasEpg': epg12.hasEpg, 'onOnPlayStream': statRef31, 'onOnCheckFullStatus': v2833 }, null, 8, ["serverId", "stream", "provider", "hasEpg"]))), 128))])])])); } }, Lu = { 'class': "relative" }, Du = { 'class': "flex flex-row gap-4 h-full" }, Gu = { 'class': "flex flex-col gap-2 justify-evenly items-center" }, Ru = { 'class': "flex flex-col flex-1 gap-2" }, Nu = { 'class': "flex flex-row items-center justify-between gap-8 h-full" }, ju = { 'class': "flex flex-col gap-2" }, Ou = { 'class': "flex gap-2 items-center" }, Bu = { 'class': "font-bold text-sm text-white break-words" }, Hu = { 'class': 'flex gap-2' }, Fu = { 'key': 1, 'class': "font-mono font-bold text-[10px] text-left text-yellow-300" }, qu = { 'key': 0, 'class': "flex gap-2" }, Wu = { 'key': 0, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, zu = { 'key': 1, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, Zu = { 'class': "flex flex-col" }, Ku = { 'class': "flex flex-row justify-between items-center gap-2" }, Ju = { 'class': 'flex flex-col' }, Yu = { 'class': 'flex flex-col gap-2' }, Qu = { 'key': 0, 'class': 'flex gap-2 items-center' }, Xu = { 'key': 1, 'class': "flex gap-2 items-center" }, ec = { 'class': 'flex flex-col self-end gap-2' }, tc = { 'class': 'flex justify-end gap-2' }, lc = { 'key': 0, 'class': 'flex flex-col w-full gap-2 rounded-xl border border-white/15 p-3' }, oc = { 'class': "line-clamp-1" }, sc = { 'class': "w-full bg-white/15 rounded-full h-1" }, ac = { 'class': "line-clamp-1" }, fo = { '__name': "ItemStream", 'props': ["stream", "provider", 'isAdmin', "hasEpg", 'serverId'], 'emits': ["onPlayStream", "onToggleSelection", "onCheckFullStatus"], 'setup'(srv56, { emit: srv57 }) { v2885 = srv56, v2886 = srv57, v2887 = Le(), v2888 = Sidebar(() => { if ((false)) return v2900(), v2901("svg", v2902, [...v2903[0] || (v2904[0] = [v2905("path", { 'fill-rule': "evenodd", 'd': "M2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10S2 17.523 2 12Zm11-4a1 1 0 1 0-2 0v4a1 1 0 0 0 .293.707l3 3a1 1 0 0 0 1.414-1.414L13 11.586V8Z", 'clip-rule': "evenodd" }, null, -1)])]); else { const v2906 = Math.floor((Date.now() / 1000)), v2907 = v2885.stream.EpgNowEnd - v2885.stream.EpgNowStart, epg17 = (v2906 >= v2885.stream.EpgNowStart) ? v2906 - v2885.stream.EpgNowStart : 0; if ((v2907 > 0)) { let stream176 = ((epg17 / v2907) * 100); return (stream176 > 100) ? 100 : stream176; } else return 0; } }), v2913 = Sidebar(() => v2885.stream.LogoUrl.startsWith("http") ? v2885.stream.LogoUrl : v2885.stream.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v2885.stream.LogoUrl + '?token=' + Me.getToken() : null), v2914 = () => { v2886("onCheckFullStatus", v2885.stream.Status); }, stream177 = () => { v2886("onPlayStream", v2885.stream.StreamingUrl); }, stream178 = () => { me.push({ 'name': "logs", 'params': { 'provider': v2885.provider, 'stream': v2885.stream.Id }, 'query': { 'server': v2885.serverId } }); }, stream179 = () => { me.push({; 'name': "config", 'params': { 'provider': v2885.provider, 'type': "linear" }, 'query': { 's': v2885.stream.Id + '$', 'server': v2885.serverId } }); else { const srv60 = srv61.getElementById("add-edit-stream-modal"), srv62 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, } }, v2918 = () => { (true) ? me.push({ 'name': "epg", 'params': { 'provider': v2885.provider, 'stream': v2885.stream.Id }, 'query': { 'server': v2885.serverId } }) : this.isLoading = false; }, srv63 = async (stream180, stream181, stream182) => { await v2887.toggleStreamPlayback(stream180, stream182, stream181); }; return (stream183, stream184) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-black/25 border-green-500': srv56.stream.IsStreaming, 'border-white/15': !srv56.stream.IsStreaming }, "h-full bg-linear-to-tr bg-black p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border"]) }, [e("div", Lu, [createVNode(vo, { 'connected-clients': srv56.stream.ConnectedClients }, null, 8, ["connected-clients"])]), e("div", Du, [e('div', Gu, [srv56.stream.Running ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': stream184[1] || (stream184[1] = stream185 => srv63("stop", srv56.stream, srv56.provider)), 'class': "text-white hover:text-red-500 rounded-full transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'onClick': stream184[0] || (stream184[0] = stream186 => srv63("start", srv56.stream, srv56.provider)), 'class': 'text-white hover:text-green-500 rounded-full transition-all ease-in-out' }, [createVNode(at)])), srv56.stream.Running || srv56.stream.OnDemand ? (openBlock(), createBlock("button", { 'key': 2, 'class': 'text-white hover:text-blue-500 rounded-full transition-all ease-in-out' }, [createVNode(Ie)])) : normalizeProps('', true), srv56.stream.Type === "vod" ? (openBlock(), createBlock("button", { 'key': 3, 'class': "text-white hover:text-blue-500 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true)]), e("div", Ru, [e("div", Nu, [e("div", ju, [e('div', Ou, [e('p', Bu, useAttrs(srv56.stream.Name), 1)]), e('div', Hu, [srv56.stream.StreamingResolutions ? (openBlock(true), createBlock(Fragment, { 'key': 0 }, createCommentVNode(srv56.stream.StreamingResolutions.slice(0, 2), stream187 => (openBlock(), createBlock("span", { 'key': stream187, 'class': "inline-flex font-mono font-bold text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, useAttrs(stream187), 1))), 128)) : normalizeProps('', true), srv56.stream.StreamingResolutions ? (openBlock(), createBlock("span", Fu, useAttrs(srv56.stream.StreamingResolutions.length > 2 ? "..." : ''), 1)) : normalizeProps('', true)]), !srv56.stream.HasKeys || !srv56.stream.HasManifest ? (openBlock(), createBlock("div", qu, [srv56.stream.HasKeys ? normalizeProps('', true) : (openBlock(), createBlock('span', Wu, " No keys ")), srv56.stream.HasManifest ? normalizeProps('', true) : (openBlock(), createBlock('span', zu, " No Manifest "))])) : normalizeProps('', true)]), e("div", Zu, [v2913.value ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': 'h-14 w-14 object-contain', 'src': v2913.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : normalizeProps('', true)])]), e("div", Ku, [e("div", Ju, [srv56.stream.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock("div", { 'key': 0, 'onClick': v2914, 'class': classNames(["text-xs font-bold line-clamp-2 overflow-y-scroll no-scrollbar whitespace-pre-line break-all cursor-pointer hover:opacity-75 transition-all", createTextVNode(ge).getColorByStatus(srv56.stream.StatusColor, "text")]) }, useAttrs(srv56.stream.Status), 3)), e("div", Yu, [srv56.stream.IsStreaming && srv56.stream.Uptime ? (openBlock(), createBlock("div", Qu, [createVNode(Gt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(srv56.stream.StatusColor, "text")]) }, useAttrs(srv56.stream.Uptime), 3)])) : normalizeProps('', true), srv56.stream.IsStreaming && srv56.stream.Bw ? (openBlock(), createBlock("div", Xu, [createVNode(Rt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(srv56.stream.StatusColor, "text")]) }, useAttrs(srv56.stream.Bw), 3)])) : normalizeProps('', true)])]), e('div', ec, [e("div", tc, [srv56.isAdmin ? (openBlock(), createBlock('button', { 'key': 0, 'onClick': stream178, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), srv56.isAdmin ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': stream179, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true), createVNode(rt, { 'stream': srv56.stream, 'id': srv56.provider + '-' + srv56.stream.Id, 'name': "Links" }, null, 8, ['stream', 'id'])])])]), srv56.hasEpg ? (openBlock(), createBlock('div', lc, [e("div", oc, [stream184[4] || (stream184[4] = e("span", { 'class': "inline text-yellow-300 font-bold text-xs" }, "Now: ", -1)), e('span', { 'onClick': v2918, 'class': "inline font-semibold text-xs text-white break-words line-clamp-1 hover:text-yellow-300 cursor-pointer" }, useAttrs(srv56.stream.EpgNow ? srv56.stream.EpgNow : "No Information"), 1)]), e("div", sc, [e("div", { 'class': "bg-linear-to-r from-yellow-300 to-yellow-400 h-1 rounded-full", 'style': Avatar("width:" + v2888.value + '%') }, null, 4)]), e("div", ac, [stream184[5] || (stream184[5] = e("span", { 'class': 'inline text-yellow-300 font-bold text-xs' }, 'Next: ', -1)), e('span', { 'onClick': v2918, 'class': "inline font-semibold text-xs text-white break-words line-clamp-1 hover:text-yellow-300 cursor-pointer" }, useAttrs(srv56.stream.EpgNext ? srv56.stream.EpgNext : "No Information"), 1)])])) : normalizeProps('', true)])])], 2)); } }, rc = { 'class': 'flex justify-end items-center cursor-pointer' }, ll = { '__name': "SortStreamsToggle", 'props': Toggle(.page, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(v2921) { v2927 = Pagination(v2921, "modelValue"), v2928 = v2921, v2929 = () => { ["linear", 'vod', "monitoring"].includes(v2928.page) && (I.sortMode[v2928.page] = v2927.value, I.saveSortMode()); }; return I.getSortMode(), (v2932, v2933) => (openBlock(), createBlock("label", rc, [isRef(e("input", { 'onUpdate:modelValue': v2933[0] || (v2933[0] = updRef45 => v2927.value = updRef45), 'onChange': v2929, 'type': "checkbox", 'class': "sr-only peer" }, null, 544), [ [renderSlot, v2927.value] ]), v2933[1] || (v2933[1] = e("div", { 'class': 'relative w-11 h-6 bg-black border border-white/15 box-content peer-focus:outline-hidden rounded-full peer peer-checked:after:translate-x-full peer-checked:rtl:after:-translate-x-full peer-checked:after:border-white after:content-[\x27\x27] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-yellow-300' }, null, -1)), v2933[2] || (v2933[2] = e("span", { 'class': 'ms-3 text-sm font-medium text-white my-auto' }, "A-Z", -1))])); } }, nc = { 'class': "text-center my-auto" }, ic = { 'role': "status" }, dc = { 'class': "sr-only" }, cl = { '__name': "LoadingSpinner", 'props': { 'message': { 'type': String, 'default': "Loading..." } }, 'setup'(v2934) { const v2935 = v2934; return (v2936, v2937) => (openBlock(), createBlock('div', nc, [e("div", ic, [v2937[0] || (v2937[0] = e('svg', { 'aria-hidden': 'true', 'class': "inline w-5 h-5 text-neutral-400 animate-spin fill-yellow-300", 'viewBox': "0 0 100 101", 'fill': 'none', 'xmlns': "http://www.w3.org/2000/svg" }, [e("path", { 'd': 'M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z', 'fill': "currentColor" }), e("path", { 'd': 'M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z', 'fill': 'currentFill' })], -1)), e("span", dc, useAttrs(v2935.message), 1)])])); } }, uc = { 'key': 0 }, cc = { 'class': "flex flex-col justify-between lg:flex-row lg:space-x-2 space-y-2 lg:space-y-0 mb-3" }, mc = { 'class': "flex lg:flex-row flex-col gap-2 flex-1" }, pc = { 'class': "w-full lg:w-96 relative" }, vc = { 'class': "flex gap-2 grow justify-end items-center" }, fc = { 'key': 0 }, gc = { 'class': "flex justify-end items-center gap-2 mb-3" }, hc = { 'key': 0, 'class': 'grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7 2xl:grid-cols-9 3xl:grid-cols-12 gap-4' }, bc = { 'key': 2, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-4 3xl:grid-cols-5 gap-4" }, wc = { '__name': "LinearView", 'setup'(v2938) { v3030 = mergeProps(), v3031 = Le(), v3032 = Ae(), v3033 = Be(), v3034 = He(), v3035 = withCtx(''), v3036 = withCtx(''), v3037 = withCtx("all"), v3038 = withCtx(null), v3039 = withCtx(), v3040 = withCtx(); let v3041 = withCtx(null), v3042 = withCtx(I.getViewMode().linear); const v3043 = withCtx(I.getSortMode().linear); Carousel(v3043, () => { v3044(v3035.value, v3036.value, "linear", v3032.getSelectedProviderId, v3043.value); }); const v3045 = v3046 => { v3042.value = v3046; }, v3047 = Sidebar(() => v3033.isAdmin), v3048 = withCtx({ 'currentPage': 1, 'rowsPerPage': 84 }), v3049 = v3050 => { if ((true)) v3041.value = v3050, v3040.value.toggleModal(); else { let v3051 = v3052.location.protocol; v3053.getAppUrl().startsWith("http") && (v3051 = ''); const v3054 = v3055 || v3056.getToken(), v3057 = v3058 ? v3059 ? "&filter=available,sorted" : "&filter=available" : v3060 ? "&filter=sorted" : ''; let v3061 = (v3051 + v3062.getAppUrl()) + '/' + v3063 + '.' + v3064 + "?token=" + v3054 + "&format=" + v3065 + v3057; return v3066 && v3067.length && (v3061 += "&streamids=" + v3068), v3069 ? v3061 + "&provider=" + v3070 : '' + v3061; } }, v3071 = () => { v3048.value.currentPage = 1; }, v3072 = () => { v3035.value = ''; }, v3073 = v3074 => { v3048.value.currentPage = v3074, v3087() }, v3088 = Sidebar(() => v3089.value.map(v3090 => v3090.Id).join(',')), v3089 = Sidebar(() => { const v3091 = (v3048.value.currentPage - (1) * v3048.value.rowsPerPage), v3092 = (v3091 + v3048.value.rowsPerPage); return v3031.streams?..Providers ? [] : v3031.streams ? v3031.streams.slice(v3091, v3092) : []; }), prov90 = prov91 => { if ((false)) { } else v3038.value = prov91[0].Url, v3039.value.playStream(v3038.value); }, stream188 = async stream189 => { const stream190 = { 'hpImD': function(stream191) { return stream191(); } }; (false) ? v3106() : (v3072(), v3071(), v3037.value = stream189, await v3044(v3035.value, v3036.value, "linear", stream189.Id, v3043.value), await v3030.replace({ 'name': "linear", 'params': { 'provider': v3032.getSelectedProviderId }, 'query': { 'server': v3034.getSelectedServer.Id } }), await v3087()); }, prov92 = async () => { const srv64 = { 'YydjX': function(srv65, srv66, srv67) { return srv65(srv66, srv67); }, 'YqjZQ': "onPageChange" }; if ((true)) { const v3107 = v3030.currentRoute.value.params.provider || v3032.getSelectedProviderId; v3107 ? v3032.setCurrentSelectedProvider(v3107) : v3032.setDefaultCurrentSelectedProvider(), await v3030.replace({ 'name': "linear", 'params': { 'provider': v3032.getSelectedProviderId }, 'query': { 'server': v3034.getSelectedServer.Id } }); } else srv64.YydjX(srv68, srv64.YqjZQ, srv69); }, v3044 = async (srv70, srv71, srv72, srv73, srv74) => { await v3031.getStreams(srv73, srv72, srv70, srv71, srv74, true), await v3087(); }; Carousel(v3035, Rating(v3108 => { v3110 = { 'soqwN': function(v3111, v3112) { return (v3111 - v3112); }, 'KmBVK': function(v3113, v3114) { return (v3113 + v3114); } }; if ((true)) v3071(), v3044(v3108, v3036.value, "linear", v3032.getSelectedProviderId, v3043.value); else { const v3115 = v3110.soqwN(v3116.value.currentPage, 1) * v3117.value.rowsPerPage, v3118 = v3110.KmBVK(v3115, v3119.value.rowsPerPage); return stream192.streams?..Providers ? [] : stream193.streams ? stream194.streams.slice(v3115, v3118) : []; } }, 100)), Carousel(v3036, stream195 => { v3071(), v3044(v3035.value, stream195, "linear", v3032.getSelectedProviderId, v3043.value); }); const v3087 = async () => { await v3031.updateStreamStatus_WS(v3032.getSelectedProviderId, "linear", v3088.value); }, prov93 = () => { v3044(v3035.value, v3036.value, "linear", v3032.getSelectedProviderId, v3043.value); }, v3120 = async () => { (true) ? (await v3044(v3035.value, v3036.value, "linear", v3032.getSelectedProviderId, v3043.value), await v3030.replace({ 'name': "linear", 'params': { 'provider': v3032.getSelectedProviderId }, 'query': { 'server': v3034.getSelectedServer.Id } })) : prov94(); }; return withDirectives(async () => { await prov92(), await v3044(v3035.value, v3036.value, "linear", v3032.getSelectedProviderId, v3043.value); }), Table(() => { v3031.closeWsClient(); }), (v3121, v3122) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "Linear" }), createVNode(Dt, { 'ref_key': 'streamPlayer', 'ref': v3039 }, null, 512), createVNode(Kt, { 'onOnProviderSelected': stream188, 'onOnServerChanged': v3120 }), v3089.value ? (openBlock(), createBlock("div", uc, [e("div", cc, [e("div", mc, [e("div", pc, [createVNode(ut, { 'modelValue': v3035.value, 'onUpdate:modelValue': v3122[0] || (v3122[0] = updRef46 => v3035.value = updRef46), 'modelModifiers': { 'trim': true }, 'placeholder': "Search for stream" }, null, 8, .modelValue)]), createVNode(ul, { 'modelValue': v3036.value, 'onUpdate:modelValue': v3122[1] || (v3122[1] = updRef47 => v3036.value = updRef47) }, null, 8, .modelValue), createTextVNode(v3031).isRefreshingStatus ? (openBlock(), Modal(cl, { 'key': 0 })) : normalizeProps('', true), e("div", vc, [v3047.value ? (openBlock(), Modal(Sl, { 'key': 0, 'isRefreshing': createTextVNode(v3031).isRefreshingStreams, 'onOnApply': prov93, 'type': "linear" }, null, 8, .isRefreshing)) : normalizeProps('', true), createVNode(Zt, { 'id': "linear-page", 'name': 'Playlist', 'type': "linear", 'provider': createTextVNode(v3032).getSelectedProviderId }, null, 8, .provider)])])]), v3089.value ? (openBlock(), createBlock("div", fc, [createVNode(tl, { 'totalFilteredItems': v3089.value.length, 'currentPage': v3048.value.currentPage, 'totalItems': createTextVNode(v3031).streams.length, 'totalPages': Math.ceil((createTextVNode(v3031).streams?..length ?? 0) / v3048.value.rowsPerPage) || 1, 'onOnPageChange': v3073 }, null, 8, ['totalFilteredItems', "currentPage", "totalItems", "totalPages"]), e("div", gc, [createVNode(Cl, { 'page': 'linear', 'onOnViewTypeSelected': v3045 }), createVNode(ll, { 'modelValue': v3043.value, 'onUpdate:modelValue': v3122[2] || (v3122[2] = selRef6 => v3043.value = selRef6), 'page': 'linear' }, null, 8, .modelValue)]), createTextVNode(v3042) === "grid-compact" ? (openBlock(), createBlock("div", hc, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v3089.value, v3123 => (openBlock(), Modal($l, { 'key': v3123.Id, 'stream': v3123, 'serverId': createTextVNode(v3034).getSelectedServer.Id, 'provider': createTextVNode(v3032).getSelectedProviderId, 'onOnPlayStream': prov90, 'onOnCheckFullStatus': v3049, 'isAdmin': v3047.value }, null, 8, ["stream", "serverId", "provider", "isAdmin"]))), 128))])) : normalizeProps('', true), createTextVNode(v3042) === 'list' ? (openBlock(), Modal(Ml, { 'key': 1, 'streams': v3089.value, 'serverId': createTextVNode(v3034).getSelectedServer.Id, 'provider': createTextVNode(v3032).getSelectedProviderId, 'hasEpg': createTextVNode(v3031).hasEpg, 'onOnPlayStream': prov90, 'onOnCheckFullStatus': v3049 }, null, 8, ['streams', "serverId", "provider", "hasEpg"])) : normalizeProps('', true), createTextVNode(v3042) === "grid" ? (openBlock(), createBlock('div', bc, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v3089.value, v3124 => (openBlock(), Modal(fo, { 'key': v3124.Id, 'stream': v3124, 'serverId': createTextVNode(v3034).getSelectedServer.Id, 'provider': createTextVNode(v3032).getSelectedProviderId, 'hasEpg': createTextVNode(v3031).hasEpg, 'onOnPlayStream': prov90, 'onOnCheckFullStatus': v3049, 'isAdmin': v3047.value }, null, 8, ["stream", "serverId", "provider", "hasEpg", 'isAdmin']))), 128))])) : normalizeProps('', true)])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': 'There\x27s no ' + createTextVNode(v3031).getSelectedStreamType + " streams on this provider." }, null, 8, .message))])) : normalizeProps('', true), createVNode(st, { 'ref_key': "fullStatusModal", 'ref': v3040, 'message': createTextVNode(v3041), 'id': "fullStatusModal" }, null, 8, .message)], 64)); } }, xc = {}, yc = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function kc(v3125, v3126) { v3131 = { 'wczXk': function(v3132) { return v3132(); }, 'qvcqD': function(v3133, v3134, v3135, v3136) { return v3133(v3134, v3135, v3136); }, 'eiyKp': "svg", 'GADzb': "path", 'ZSTac': "currentColor", 'sNdjD': "round", 'RQSlR': "m15 9-6 6m0-6 6 6m6-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }; return openBlock(), v3131.qvcqD(createBlock, "svg", yc, [...v3126[0] || (v3126[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m15 9-6 6m0-6 6 6m6-3a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); } const Xe = J(xc, [ ["render", kc] ]), Sc = {}, $c = { 'class': "w-5 h-5", 'aria-hidden': 'true', 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Cc(v3137, v3138) { v3143 = { 'NEmam': function(v3144) { return v3144(); }, 'hNafx': function(v3145, v3146, v3147, v3148) { return v3145(v3146, v3147, v3148); }, 'glHPc': "svg", 'ApycV': "path", 'DeTYe': "currentColor" }; return openBlock(), v3143.hNafx(createBlock, "svg", $c, [...v3138[0] || (v3138[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-width': '2', 'd': "M11 16h2m6.707-9.293-2.414-2.414A1 1 0 0 0 16.586 4H5a1 1 0 0 0-1 1v14a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V7.414a1 1 0 0 0-.293-.707ZM16 20v-6a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v6h8ZM9 4h6v3a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1V4Z" }, null, -1)])]); } const Mt = J(Sc, [ ['render', Cc] ]), ke = { '__name': 'ButtonSecondary', 'props': ["text", 'Icon', "color"], 'emits': .click, 'setup'(rndr15, { emit: rndr16 }) { v3152 = rndr15, v3153 = rndr16, v3154 = () => { v3153("click"); }; return (v3156, v3157) => (openBlock(), createBlock('button', { 'type': 'button', 'onClick': v3154, 'class': classNames(['text-white bg-black font-medium border flex items-center text-center focus:outline-hidden rounded-xl text-sm px-3 py-2 transition-colors ease-in-out', { 'bg-red-600 hover:bg-red-700 border-red-600 hover:text-white': rndr15.color === "danger", 'bg-green-600 hover:bg-green-700 border-green-600 hover:text-white ': rndr15.color === "green", 'hover:bg-neutral-50/10 border-white/15': !rndr15.color }]) }, [v3152.Icon ? (openBlock(), Modal(createTextVNode(rndr15.Icon), { 'key': 0, 'class': "mr-2" })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v3152.text) + ' ', 1), createStaticVNode(v3156.$slots, "default")], 2)); } }, Mc = {}, Ac = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }; function Ic(v3158, v3159) { v3161 = { 'dahQM': function(v3162) { return v3162(); }, 'nuOqI': "svg", 'cqEpa': function(v3163, v3164, v3165, v3166, v3167) { return v3163(v3164, v3165, v3166, v3167); }, 'QLnam': "path", 'hNGlW': "currentColor" }; return openBlock(), createBlock("svg", Ac, [...v3159[0] || (v3159[0] = [v3161.cqEpa(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m14.304 4.844 2.852 2.852M7 7H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1v-4.5m2.409-9.91a2.017 2.017 0 0 1 0 2.853l-6.844 6.844L8 14l.713-3.565 6.844-6.844a2.015 2.015 0 0 1 2.852 0Z" }, null, -1)])]); } const Jt = J(Mc, [ ["render", Ic] ]), Tc = {}, Pc = { 'class': 'w-5 h-5', 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Vc(v3168, v3169) { v3172 = { 'PPwrx': function(v3173) { return v3173(); }, 'beQWS': function(v3174, v3175, v3176, v3177, v3178) { return v3174(v3175, v3176, v3177, v3178); }, 'qytEA': "round", 'erGec': 'M5 7h14m-9 3v8m4-8v8M10 3h4a1 1 0 0 1 1 1v3H9V4a1 1 0 0 1 1-1ZM6 7h12v13a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7Z' }; return openBlock(), createBlock("svg", Pc, [...v3169[0] || (v3169[0] = [v3172.beQWS(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M5 7h14m-9 3v8m4-8v8M10 3h4a1 1 0 0 1 1 1v3H9V4a1 1 0 0 1 1-1ZM6 7h12v13a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7Z" }, null, -1)])]); } const Ke = J(Tc, [ ["render", Vc] ]), Uc = {}, _c = { 'class': "w-8 h-8 mb-4 text-neutral-400", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': 'none', 'viewBox': "0 0 20 16" }; function Ec(v3179, v3180) { v3182 = { 'NEhVF': function(v3183) { return v3183(); }, 'QNVwD': function(v3184, v3185, v3186, v3187) { return v3184(v3185, v3186, v3187); }, 'TvukB': function(v3188, v3189, v3190, v3191, v3192) { return v3188(v3189, v3190, v3191, v3192); }, 'WEDNX': 'path', 'bIuLN': "currentColor", 'iAHLl': "round", 'tXFXC': "M13 13h3a3 3 0 0 0 0-6h-.025A5.56 5.56 0 0 0 16 6.5 5.5 5.5 0 0 0 5.207 5.021C5.137 5.017 5.071 5 5 5a4 4 0 0 0 0 8h2.167M10 15V6m0 0L8 8m2-2 2 2" }; return openBlock(), v3182.QNVwD(createBlock, 'svg', _c, [...v3180[0] || (v3180[0] = [v3182.TvukB(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M13 13h3a3 3 0 0 0 0-6h-.025A5.56 5.56 0 0 0 16 6.5 5.5 5.5 0 0 0 5.207 5.021C5.137 5.017 5.071 5 5 5a4 4 0 0 0 0 8h2.167M10 15V6m0 0L8 8m2-2 2 2" }, null, -1)])]); } const qt = J(Uc, [ ['render', Ec] ]), Lc = { 'class': 'group h-full bg-black rounded-xl shadow-lg overflow-auto relative border-white/15 border bg-linear-to-t/srgb hover:from-yellow-400 hover:to-yellow-500 hover:text-black text-white transition-all ease-in-out' }, Dc = { 'class': "flex flex-col justify-between" }, Gc = { 'class': 'flex flex-col h-full' }, Rc = { 'class': "font-bold text-sm text-center p-2" }, Nc = { 'key': 0, 'class': "opacity-0 group-hover:opacity-100 absolute top-0 right-0 w-full z-0 transition-all ease-in-out bg-linear-to-b from-black/90 via-black/45 to-transparent" }, jc = { 'class': "flex flex-row justify-end p-2" }, Oc = .id, Bc = { 'class': 'relative p-4 w-full max-w-md max-h-full' }, Hc = { 'class': 'relative rounded-xl shadow-xl bg-black' }, Fc = { 'class': "p-4 md:p-5 text-center" }, qc = { 'class': "mb-5 font-bold text-white inline" }, Wc = { 'class': "mt-5" }, zc = .id, Zc = { 'class': "relative p-4 w-full max-w-md max-h-full" }, Kc = { 'class': "relative rounded-xl shadow-xl bg-black" }, Jc = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, Yc = { 'class': "text-lg font-semibold text-white" }, Qc = { 'class': 'p-4 md:p-5' }, Xc = { 'class': 'grid space-y-4 grid-cols-1' }, e0 = { 'class': "col-span-2" }, t0 = { 'class': 'col-span-2' }, l0 = ["for"], o0 = .src, s0 = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, a0 = .id, r0 = { 'class': "col-span-2" }, n0 = ["for"], i0 = .src, d0 = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, u0 = .id, c0 = { 'class': "flex flex-row justify-end gap-4" }, m0 = { '__name': "ItemProvider", 'props': ["provider", "isAdmin", 'serverId'], 'setup'(srv75) { v3374 = srv75, v3375 = Ae(), v3376 = withCtx(''), v3377 = withCtx(''), v3378 = withCtx(''); let v3379 = {}, v3380 = {}; const v3381 = Sidebar(() => v3374.provider.LogoUrl ? '' + I.getAppUrl() + v3374.provider.LogoUrl + "?token=" + Me.getToken() : I.getAppUrl() + "/logos/default.png?token=" + Me.getToken()), prov95 = () => { }, v3384 = v3385 => { v3389(v3385); const v3390 = document.getElementById(("edit-provider-modal-" + v3385.Id)), v3391 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v3392 = { 'id': "edit-provider-modal-" + v3385.Id, 'override': true }; v3379 = new initFlowbite(v3390, v3391, v3392); }, v3389 = v3393 => { v3376.value = v3393.Name; }, v3402 = async v3403 => { if ((false)) return v3415(), v3416("svg", v3417, [...v3418[0] || (v3419[0] = [v3420("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '1', 'd': "m14 8-4 4 4 4" }, null, -1)])]); else await v3375.editNameLogo(v3403.Id, v3376.value, v3378.value, v3377.value), prov95(), await v3375.getAllProviders(); }, v3421 = v3422 => { const v3423 = v3422.target.files[0]; if (v3423 && v3423.type.startsWith("image/")) { const v3424 = new FileReader(); v3424.onload = v3425 => { v3378.value = v3425.target.result; }, v3424.readAsDataURL(v3423); } else console.error("Invalid image file"); }, v3426 = v3427 => { const v3428 = v3427.target.files[0]; if (v3428 && v3428.type.startsWith("image/")) { const v3429 = new FileReader(); v3429.onload = v3430 => { (true) ? v3377.value = v3430.target.result : this.error = v3431; }, v3429.readAsDataURL(v3428); } else console.error("Invalid image file"); }, v3432 = () => { v3380.toggle(); }, v3433 = v3434 => { if ((true)) { const prov96 = document.getElementById(('delete-provider-modal-' + v3434.Id)), prov97 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v3435 = { 'id': ("delete-provider-modal-" + v3434.Id), 'override': true }; v3380 = new initFlowbite(prov96, prov97, v3435); } else this.isLoading = false; }, loadRef33 = async loadRef34 => { (await v3375.deleteProvider(loadRef34), await v3375.getAllProviders(), v3432()); }; return withDirectives(() => { z_util(), v3384(v3374.provider), v3433(v3374.provider); }), (prov98, prov99) => { if ((false)) this.error = prov100.data, this.notificationStore.showNotification(this.error, "error"); else { const notif31 = debounce("router-link"); return openBlock(), createBlock(Fragment, null, [e("div", Lc, [e("div", Dc, [e("div", Gc, [createVNode(notif31, { 'to': { 'name': "linear", 'params': { 'provider': v3374.provider.Id }, 'query': { 'server': v3374.serverId } } }, { 'default': withModifiers(() => [createVNode(createTextVNode(JSON_util), { 'class': "w-full aspect-square object-contain", 'src': v3381.value, 'src-placeholder': '/o11-placeholder.svg' }, null, 8, .src), e("div", Rc, useAttrs(srv75.provider.Name), 1)]), '_': 1 }, 8, .to)])]), srv75.isAdmin ? (openBlock(), createBlock("div", Nc, [e("div", jc, [e("button", { 'class': "text-white bg-yellow-300 hover:bg-yellow-400 rounded-full p-1 transition-all ease-in-out", 'onClick': prov95 }, [createVNode(Jt, { 'class': "text-black" })]), e("button", { 'class': "text-white ml-2 bg-white hover:bg-gray-300 p-1 rounded-full transition-all ease-in-out", 'onClick': v3432 }, [createVNode(Ke, { 'class': "text-red-600" })])])])) : normalizeProps('', true)]), e("div", { 'id': ("delete-provider-modal-" + srv75.provider.Id), 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full blur-navbar" }, [e("div", Bc, [e("div", Hc, [e("button", { 'onClick': v3432, 'type': "button", 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), prov99[3] || (prov99[3] = e("span", { 'class': "sr-only" }, "Close modal", -1))]), e("div", Fc, [createVNode(At), prov99[4] || (prov99[4] = e('h3', { 'class': "mb-5 text-white inline" }, " Are you sure you want to delete provider ", -1)), e('h3', qc, useAttrs(srv75.provider.Name), 1), prov99[5] || (prov99[5] = e('h3', { 'class': "mb-5 text-white inline" }, '?', -1)), e("div", Wc, [e("button", { 'type': "button", 'class': "text-white bg-red-600 hover:bg-red-800 rounded-xl text-sm inline-flex items-center px-4 py-2 text-center" }, " Yes "), e("button", { 'onClick': v3432, 'type': "button", 'class': "py-2 px-4 ms-3 text-sm font-medium text-black bg-yellow-300 rounded-xl hover:bg-yellow-400" }, " No ")])])])])], 8, Oc), e("div", { 'id': ("edit-provider-modal-" + srv75.provider.Id), 'tabindex': '-1', 'aria-hidden': "true", 'class': 'hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full' }, [e("div", Zc, [e("div", Kc, [e("div", Jc, [e('h3', Yc, (" Edit Provider " + useAttrs(srv75.provider.Name)), 1), e("button", { 'type': 'button', 'onClick': prov95, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), prov99[6] || (prov99[6] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("div", Qc, [e("div", Xc, [e("div", e0, [prov99[7] || (prov99[7] = e("label", { 'for': "username", 'class': "block mb-2 text-sm font-medium text-white" }, "Name", -1)), isRef(e("input", { 'type': "text", 'name': "name", 'id': "name", 'onUpdate:modelValue': prov99[1] || (prov99[1] = updRef48 => v3376.value = updRef48), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': "Type provider name" }, null, 512), [ [Dropdown, v3376.value] ])]), e("div", t0, [prov99[9] || (prov99[9] = e("label", { 'for': "img", 'class': 'block mb-2 text-sm font-medium text-white' }, "Logo", -1)), e("label", { 'for': ("dropzone-file-" + srv75.provider.Id), 'class': "flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, [v3378.value ? (openBlock(), createBlock("img", { 'key': 0, 'class': "w-full object-contain overflow-hidden", 'src': v3378.value, 'alt': "Image Preview" }, null, 8, o0)) : (openBlock(), createBlock("div", s0, [createVNode(qt), prov99[8] || (prov99[8] = e('p', { 'class': "mb-2 text-sm text-neutral-400" }, [e("span", { 'class': "font-semibold" }, "Click to upload")], -1))])), e("input", { 'onChange': v3421, 'id': 'dropzone-file-' + srv75.provider.Id, 'type': "file", 'class': "hidden" }, null, 40, a0)], 8, l0)]), e("div", r0, [prov99[11] || (prov99[11] = e("label", { 'for': "img", 'class': "block mb-2 text-sm font-medium text-white" }, "Overlay", -1)), e("label", { 'for': "dropzone-file-overlay-" + srv75.provider.Id, 'class': "flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, [v3377.value ? (openBlock(), createBlock("img", { 'key': 0, 'class': "w-full object-contain overflow-hidden", 'src': v3377.value, 'alt': "Image Preview" }, null, 8, i0)) : (openBlock(), createBlock("div", d0, [createVNode(qt), prov99[10] || (prov99[10] = e('p', { 'class': "mb-2 text-sm text-neutral-400" }, [e("span", { 'class': "font-semibold" }, "Click to upload")], -1))])), e("input", { 'onChange': v3426, 'id': ("dropzone-file-overlay-" + srv75.provider.Id), 'type': "file", 'class': "hidden" }, null, 40, u0)], 8, n0)]), e("div", c0, [createVNode(ke, { 'Icon': Xe, 'text': "Cancel", 'onClick': prov95 }), createVNode(he, { 'Icon': Mt, 'text': "Save", 'onClick': prov99[2] || (prov99[2] = prov101 => v3402(srv75.provider)) })])])])])])], 8, zc)], 64); } }; } }, p0 = {}, v0 = { 'class': "w-5 h-5", 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': '0 0 24 24' }; function f0(v3437, v3438) { v3440 = { 'SFRis': function(v3441) { return v3441(); }, 'JCbqG': function(v3442, v3443, v3444, v3445) { return v3442(v3443, v3444, v3445); }, 'uSvyy': "currentColor", 'nDqiC': 'round' }; return openBlock(), v3440.JCbqG(createBlock, 'svg', v0, [...v3438[0] || (v3438[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': 'M12 7.757v8.486M7.757 12h8.486M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z' }, null, -1)])]); } const Et = J(p0, [ ["render", f0] ]), g0 = {}, h0 = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'currentColor', 'viewBox': "0 0 24 24" }; function b0(v3446, v3447) { v3449 = { 'ZTeKt': function(v3450) { return v3450(); }, 'qnSQK': function(v3451, v3452, v3453, v3454) { return v3451(v3452, v3453, v3454); }, 'pMZey': "svg", 'gUiJe': 'path', 'Rfqkq': "M13.383 4.076a6.5 6.5 0 0 0-6.887 3.95A5 5 0 0 0 7 18h3v-4a2 2 0 0 1-1.414-3.414l2-2a2 2 0 0 1 2.828 0l2 2A2 2 0 0 1 14 14v4h4a4 4 0 0 0 .988-7.876 6.5 6.5 0 0 0-5.605-6.048Z", 'iILXL': function(v3455, v3456, v3457, v3458, v3459) { return v3455(v3456, v3457, v3458, v3459); }, 'Mnekl': "M12.707 9.293a1 1 0 0 0-1.414 0l-2 2a1 1 0 1 0 1.414 1.414l.293-.293V19a1 1 0 1 0 2 0v-6.586l.293.293a1 1 0 0 0 1.414-1.414l-2-2Z" }; return openBlock(), v3449.qnSQK(createBlock, "svg", h0, [...v3447[0] || (v3447[0] = [e("path", { 'd': "M13.383 4.076a6.5 6.5 0 0 0-6.887 3.95A5 5 0 0 0 7 18h3v-4a2 2 0 0 1-1.414-3.414l2-2a2 2 0 0 1 2.828 0l2 2A2 2 0 0 1 14 14v4h4a4 4 0 0 0 .988-7.876 6.5 6.5 0 0 0-5.605-6.048Z" }, null, -1), v3449.iILXL(e, "path", { 'd': "M12.707 9.293a1 1 0 0 0-1.414 0l-2 2a1 1 0 1 0 1.414 1.414l.293-.293V19a1 1 0 1 0 2 0v-6.586l.293.293a1 1 0 0 0 1.414-1.414l-2-2Z" }, null, -1)])]); } const w0 = J(g0, [ ["render", b0] ]), x0 = { 'key': 0, 'class': "flex flex-row justify-between gap-2 mb-3" }, y0 = { 'key': 1, 'class': "flex flex-row xl:justify-end gap-2 mb-3" }, k0 = { 'class': "flex flex-col justify-start lg:flex-row lg:space-x-2 space-y-2 lg:space-y-0 mb-5" }, S0 = { 'class': "grid grid-cols-3 md:grid-cols-3 lg:grid-cols-6 xl:grid-cols-8 2xl:grid-cols-10 3xl:grid-cols-12 gap-4" }, $0 = { 'id': "add-provider", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, C0 = { 'class': "relative p-4 w-full max-w-md max-h-full" }, M0 = { 'class': "relative rounded-xl shadow-xl bg-black" }, A0 = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, I0 = { 'class': "p-4 md:p-5" }, T0 = { 'class': "grid space-y-4 grid-cols-1" }, P0 = { 'class': "col-span-2" }, V0 = { 'class': "col-span-2" }, U0 = { 'for': "dropzone-file", 'class': 'flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out' }, _0 = .src, E0 = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, L0 = { 'class': 'flex flex-row justify-end gap-4' }, D0 = { 'id': "import-provider", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, G0 = { 'class': 'relative p-4 w-full max-w-md max-h-full' }, R0 = { 'class': "relative rounded-xl shadow-xl bg-black" }, N0 = { 'class': 'flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15' }, j0 = { 'class': "p-4 md:p-5" }, O0 = { 'class': "grid space-y-4 grid-cols-1" }, B0 = { 'class': "col-span-2" }, H0 = { 'for': 'dropzone-import-file', 'class': "flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, F0 = { 'key': 0, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, q0 = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, W0 = { 'class': 'flex flex-row justify-end gap-4' }, z0 = { '__name': 'ProvidersView', 'setup'(prov102) { v3512 = He(), v3513 = Ae(), v3514 = Be(), v3515 = withCtx(''), v3516 = withCtx(''), v3517 = withCtx(''), v3518 = withCtx(null), v3519 = withCtx(null), v3520 = withCtx(null), v3521 = withCtx(), v3522 = withCtx(''); let v3523 = {}, v3524 = {}; const v3525 = Sidebar(() => v3514.isAdmin), prov109 = Sidebar(() => v3513.providers ? v3513.providers.filter(prov110 => prov110.Name.toLowerCase().includes(v3515.value.toLowerCase())) : []); withDirectives(() => { z_util(), v3530(), v3531() }); const v3547 = () => { v3518.value = null, v3517.value = null, v3523.toggle(); }, v3548 = () => { v3519.value = null, v3520.value = null, v3524.toggle(); }, v3530 = () => { if ((false)) { if (v3549.value) { } v3563('onStateChange', { 'param': v3564.value.Param, 'action': v3565, 'value': v3566.value }); } else { const elRef16 = document.getElementById("add-provider"), elRef17 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/5 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v3567 = { 'id': "add-provider", 'override': true }; v3523 = new initFlowbite(elRef16, elRef17, v3567); } }, v3531 = () => { const elRef18 = document.getElementById("import-provider"), elRef19 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v3568 = { 'id': "import-provider", 'override': true }; v3524 = new initFlowbite(elRef18, elRef19, v3568); }, v3569 = async () => { const v3570 = (await v3513.add(v3516.value, v3517.value)).Message; v3547(), await v3571(), v3570 && await me.push({ 'name': "config", 'params': { 'provider': v3570, 'type': "linear" }, 'query': { 'server': v3512.getSelectedServer.Id } }); }, v3571 = async () => { (true) ? await v3513.getAllProviders({}) : this.isLoading = false; }, v3572 = async () => { (true) ? (await v3513['import'](v3519.value.name, v3520.value), await v3571(), v3548()) : this.isLoading = false; }, v3573 = v3574 => { const v3575 = v3574.target.files[0]; if (v3575 && v3575.type.startsWith("image/")) { const v3576 = new FileReader(); v3576.onload = v3577 => { v3517.value = v3577.target.result, v3518.value = v3577.target.result; }, v3576.readAsDataURL(v3575); } else console.error("Invalid image file"); }, errRef81 = errRef82 => { const errRef83 = { 'WCVTC': function(errRef84) { return errRef84(); }, 'lRXSv': function(v3578) { return v3578(); } }; if (v3519.value = errRef82.target.files[0], v3519.value) { if ((false)) { v3579.value = "Error exporting selected streams.", v3580.value.toggleModal(); return; } else { const v3581 = new FileReader(); v3581.onload = v3582 => { (true) ? v3520.value = v3582.target.result : (errRef83.WCVTC(v3583), errRef83.WCVTC(v3584), errRef83.WCVTC(v3585), errRef83.lRXSv(v3586)); }, v3581.readAsText(v3519.value); } } }, v3587 = async () => { const v3589 = await v3513.rescan(); v3522.value = v3589.Message, v3521.value.toggleModal();; }, v3590 = async () => { const prov111 = await v3513.backup(), prov112 = 'o11-providers-backup-' + new Date().toISOString().slice(0, 19).replace(/\W/g, '-') + ".zip", prov113 = URL.createObjectURL(prov111), prov114 = document.createElement('a'); prov114.href = prov113, prov114.download = prov112, prov114.click(), setTimeout(() => URL.revokeObjectURL(prov113), 0); }, v3591 = v3592 => { me.replace({ 'name': "providers", 'query': { 'server': v3592.Id } }); }; return Carousel(() => v3512.getSelectedServer, () => { v3591(v3512.getSelectedServer), v3571(); }), withDirectives(async () => { const v3593 = { 'QNfbr': "onPlayReplay" }; (false) ? v3594(v3593.QNfbr, v3595) : await v3571(); }), (v3596, v3597) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Providers" }), v3525.value ? (openBlock(), createBlock("div", x0, [createVNode(he, { 'Icon': Et, 'text': "Add Provider", 'onClick': v3547 })])) : normalizeProps('', true), v3525.value ? (openBlock(), createBlock("div", y0, [createVNode(ke, { 'Icon': It, 'text': 'Import', 'onClick': v3548 }), createVNode(ke, { 'onClick': v3587 }, { 'default': withModifiers(() => [createVNode(ot, { 'class': classNames(["mr-2", { 'animate-spin': createTextVNode(v3513).isLoadingRescan }]) }, null, 8, ["class"]), v3597[4] || (v3597[4] = toDisplayString(" Rescan ", -1))]), '_': 1 }), createVNode(ke, { 'Icon': w0, 'onClick': v3590 }, { 'default': withModifiers(() => [...v3597[5] || (v3597[5] = [toDisplayString(" Backup ", -1)])]), '_': 1 })])) : normalizeProps('', true), !createTextVNode(v3513).isLoading && !createTextVNode(v3513).providers?..length ? (openBlock(), Modal(Fe, { 'key': 2, 'Icon': wt, 'message': "There's no providers added yet..." })) : (openBlock(), createBlock(Fragment, { 'key': 3 }, [e("div", k0, [createVNode(ut, { 'placeholder': "Search for providers", 'modelValue': v3515.value, 'onUpdate:modelValue': v3597[0] || (v3597[0] = updRef49 => v3515.value = updRef49) }, null, 8, .modelValue)]), e('div', S0, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(prov109.value, v3598 => (openBlock(), Modal(m0, { 'key': v3598.Id, 'provider': v3598, 'isAdmin': v3525.value, 'serverId': createTextVNode(v3512).getSelectedServer.Id }, null, 8, ['provider', "isAdmin", 'serverId']))), 128))])], 64)), e("div", $0, [e("div", C0, [e('div', M0, [e("div", A0, [v3597[7] || (v3597[7] = e('h3', { 'class': "text-lg font-semibold text-white" }, ' Add Provider ', -1)), e("button", { 'type': 'button', 'onClick': v3547, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), v3597[6] || (v3597[6] = e("span", { 'class': "sr-only" }, 'Close modal', -1))])]), e('div', I0, [e("div", T0, [e('div', P0, [v3597[8] || (v3597[8] = e("label", { 'for': "username", 'class': "block mb-2 text-sm font-medium text-white" }, "Name", -1)), isRef(e('input', { 'type': "text", 'name': "name", 'id': "name", 'onUpdate:modelValue': v3597[1] || (v3597[1] = updRef50 => v3516.value = updRef50), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': "Type provider name" }, null, 512), [ [Dropdown, v3516.value] ])]), e("div", V0, [v3597[10] || (v3597[10] = e("label", { 'for': 'img', 'class': "block mb-2 text-sm font-medium text-white" }, "Logo", -1)), e("label", U0, [v3518.value ? (openBlock(), createBlock('img', { 'key': 0, 'class': "w-full object-contain overflow-hidden", 'src': v3518.value, 'alt': "Image Preview" }, null, 8, _0)) : (openBlock(), createBlock("div", E0, [createVNode(qt), v3597[9] || (v3597[9] = e('p', { 'class': "mb-2 text-sm text-neutral-400" }, [e("span", { 'class': 'font-semibold' }, "Click to upload")], -1))])), e("input", { 'onClick': v3597[2] || (v3597[2] = v3599 => v3599.target.value = ''), 'onChange': v3573, 'id': "dropzone-file", 'type': 'file', 'class': "hidden" }, null, 32)])]), e("div", L0, [createVNode(ke, { 'Icon': Xe, 'text': 'Cancel', 'onClick': v3547 }), createVNode(he, { 'Icon': Mt, 'text': 'Create', 'onClick': v3569 })])])])])])]), e("div", D0, [e("div", G0, [e("div", R0, [e("div", N0, [v3597[12] || (v3597[12] = e('h3', { 'class': 'text-lg font-semibold text-white' }, ' Import Provider ', -1)), e("button", { 'type': "button", 'onClick': v3548, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), v3597[11] || (v3597[11] = e("span", { 'class': 'sr-only' }, "Close modal", -1))])]), e("div", j0, [e("div", O0, [e("div", B0, [v3597[15] || (v3597[15] = e("label", { 'for': 'img', 'class': "block mb-2 text-sm font-medium text-white" }, "Provider o11 config file", -1)), e("label", H0, [v3519.value ? (openBlock(), createBlock("div", F0, [e("span", null, useAttrs(v3519.value.name), 1)])) : (openBlock(), createBlock("div", q0, [createVNode(qt), v3597[13] || (v3597[13] = e('p', { 'class': 'mb-2 text-sm text-neutral-400' }, [e("span", { 'class': "font-semibold" }, 'Click to upload')], -1)), v3597[14] || (v3597[14] = e('p', { 'class': "text-xs text-neutral-400" }, " .cfg/m3u/txt file only ", -1))])), e('input', { 'onChange': errRef81, 'onClick': v3597[3] || (v3597[3] = v3600 => v3600.target.value = ''), 'id': 'dropzone-import-file', 'type': "file", 'class': 'hidden' }, null, 32)])]), e("div", W0, [createVNode(ke, { 'text': "Cancel", 'onClick': v3548 }), createVNode(he, { 'text': "Import", 'onClick': v3572 })])])])])])]), createVNode(st, { 'ref_key': "rescanModal", 'ref': v3521, 'message': v3522.value, 'id': "rescanStatusModal", 'onConfirmation': v3571 }, null, 8, .message)], 64)); } }, Z0 = J(z0, [ ['__scopeId', "data-v-1c8dae86"] ]), K0 = { 'class': "h-full bg-linear-to-b bg-black p-4 rounded-xl shadow-lg overflow-auto relative border-white/15 border" }, J0 = { 'class': 'flex flex-row justify-center gap-4 grow h-full' }, Y0 = { 'class': "flex flex-col my-auto text-center" }, Q0 = { 'class': "text-sm text-neutral-400" }, jt = { '__name': "ItemMonitoring", 'props': ["name", "value", "color"], 'setup'(v3601) { return (v3602, v3603) => (openBlock(), createBlock("div", K0, [e("div", J0, [e("div", Y0, [e('p', Q0, useAttrs(v3601.name), 1), e('p', { 'class': classNames(["font-bold text-lg text-white mt-2", createTextVNode(ge).getColorByStatus(v3601.color, "text")]) }, useAttrs(v3601.value), 3)])])])); } }, X0 = resolveComponent("monitoring", { 'state': () => ({ 'monitoring': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null), 'wsClient': null }), 'actions': { async 'getMonitoring_WS'(errRef85 = '') { v3604 = { 'hZdkd': function(v3605, v3606) { return v3605 === v3606; }, 'lBkmV': "bQNBf", 'PetPY': "monitoring", 'kqaGI': 'npZut' }; this.isLoading = true, this.error = null; try { if (v3604.hZdkd('bQNBf', "bQNBf")) await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "monitoring", 'SearchPattern': errRef85 }, 'onMessage': v3607 => { this.monitoring = v3607; } }), this.wsClient.open(); else return this.error = v3608, false; } catch (v3609) { this.error = v3609; } finally { this.isLoading = false; } }, async 'closeWsClient'() { this.wsClient && (this.wsClient.close(), this.wsClient = null); } } }), e1 = { 'name': "IconClients" }, t1 = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; function l1(v3615, v3616, v3617, v3618, v3619, v3620) { v3625 = { 'qkGwZ': function(v3626) { return v3626(); }, 'TkoMr': function(v3627, v3628, v3629, v3630) { return v3627(v3628, v3629, v3630); }, 'YtCEj': "evenodd", 'OEmFt': "M12 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4h-4Z" }; return openBlock(), v3625.TkoMr(createBlock, "svg", t1, [...v3616[0] || (v3616[0] = [e('path', { 'fill-rule': "evenodd", 'd': "M12 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4h-4Z", 'clip-rule': "evenodd" }, null, -1)])]); } const o1 = J(e1, [ ["render", l1] ]), s1 = { 'class': 'grid grid-cols-2 md:grid-cols-3 lg:grid-cols-6 gap-4 justify-center content-center' }, a1 = { 'class': "my-4 border-b border-white/15" }, r1 = { 'class': 'flex flex-wrap -mb-px text-sm text-center', 'id': "default-tab", 'data-tabs-toggle': "#default-tab-content", 'role': "tablist", 'data-tabs-active-classes': 'text-yellow-300 font-bold border-yellow-300', 'data-tabs-inactive-classes': "border-none font-medium text-white" }, n1 = { 'class': 'me-2', 'role': "presentation" }, i1 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': 'clients-tab', 'data-tabs-target': "#clients", 'type': "button", 'role': "tab", 'aria-controls': "clients", 'aria-selected': "true" }, d1 = { 'class': 'me-2', 'role': "presentation" }, u1 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': "running-tab", 'data-tabs-target': "#running", 'type': 'button', 'role': "tab", 'aria-controls': "running", 'aria-selected': "false" }, c1 = { 'id': "default-tab-content" }, m1 = { 'class': "hidden", 'id': "clients", 'role': "tabpanel" }, p1 = { 'key': 0, 'class': "overflow-x-auto shadow-md rounded-xl mt-5 border border-white/15" }, v1 = { 'class': "w-full text-sm text-left rtl:text-right text-neutral-400" }, f1 = { 'class': "text-center" }, g1 = { 'scope': "row", 'class': "px-6 py-4 font-bold text-white max-w-[250px]" }, h1 = { 'class': 'px-6 py-4' }, b1 = { 'class': "px-6 py-4" }, w1 = { 'class': "px-6 py-4" }, x1 = { 'class': "px-6 py-4" }, y1 = { 'class': "px-4 py-2 max-w-[150px]" }, k1 = { 'class': "h-[24px] overflow-x-scroll whitespace-nowrap no-scrollbar" }, S1 = { 'class': "px-6 py-4" }, $1 = { 'class': "px-6 py-4" }, C1 = { 'class': 'hidden', 'id': "running", 'role': "tabpanel" }, M1 = { 'key': 0 }, A1 = { 'key': 0, 'class': "flex gap-2 mb-3" }, I1 = { 'class': 'font-mono text-xs font-bold text-black bg-yellow-300 rounded-sm p-0.5 px-1 text-center' }, T1 = { 'class': "font-mono font-bold text-[10px] text-white border border-white rounded-sm my-auto p-0.5 px-1" }, P1 = { 'key': 1, 'class': "grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7 2xl:grid-cols-9 3xl:grid-cols-12 gap-4 mb-4" }, V1 = { '__name': 'MonitoringView', 'setup'(v3631) { v3672 = Le(), v3673 = He(), v3674 = X0(), v3675 = withCtx(null), v3676 = withCtx(), v3677 = withCtx(); let v3678 = withCtx(null); const v3679 = withCtx(I.getSortMode().monitoring), v3680 = withCtx(''), v3681 = async () => { await v3674.getMonitoring_WS(v3680.value); }, v3682 = v3683 => { (false) ? this.APP_URL = v3684 : (v3678.value = v3683, v3677.value.toggleModal()); }, v3685 = v3686 => { if ((false)) { if (v3690) return v3691; else JqqSAK.BzveW(v3692, 0); } else v3675.value = v3686[0].Url, v3676.value.playStream(v3675.value); }, stream199 = async () => { await v3672.getStatus_WS('', '', "allrunning", '', v3679.value); }, stream200 = Sidebar(() => !v3672.streams?..Providers?..some(v3693 => v3693.Streams && v3693.Streams.length > 0)), v3694 = Sidebar(() => { let v3695 = 0; if (v3672.streams?..Providers) { for (const stream201 of v3672.streams?..Providers) stream201.Streams && (v3695 += stream201.Streams.length); } return v3695;; }); return Carousel(v3679, () => { const loadRef36 = { 'CjvHY': "err" }; stream199(); v3681(); }, 500)), Carousel(() => v3673.getSelectedServer, () => { v3681(), stream199(); }), withDirectives(() => { if ((true)) cloneVNode(), useI18n(); else { if (v3701.availableDates.length) { const v3702 = v3703.availableDates.map(v3704 => ({ 'label': v3705(v3704).format("DD MMM YYYY"), 'value': v3704 })); return v3702.unshift({ 'label': "All", 'value': '' }), v3702; } return []; } }), Table(() => { v3672.closeWsClient(), v3674.closeWsClient(); }), v3681(), stream199(), (v3706, v3707) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Monitoring" }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v3676 }, null, 512), e('div', s1, [createVNode(jt, { 'name': "Input Bandwidth", 'value': createTextVNode(v3674).monitoring.TotalBwIn }, null, 8, .value), createVNode(jt, { 'name': "Output Bandwidth", 'value': createTextVNode(v3674).monitoring.TotalBwOut }, null, 8, .value), createVNode(jt, { 'name': 'Running Streams', 'value': v3694.value }, null, 8, .value), createVNode(jt, { 'name': "Connected Clients", 'value': createTextVNode(v3674).monitoring.Readers == null ? 0 : createTextVNode(v3674).monitoring.Readers.length }, null, 8, .value), createVNode(jt, { 'name': 'CPU Load', 'value': createTextVNode(v3674).monitoring.CpuLoad, 'color': createTextVNode(v3674).monitoring.CpuLoadColor }, null, 8, ["value", "color"]), createVNode(jt, { 'name': "Memory Usage", 'value': createTextVNode(v3674).monitoring.Memory }, null, 8, .value)]), e("div", a1, [e('ul', r1, [e('li', n1, [e("button", i1, [createVNode(o1, { 'class': "me-2" }), v3707[2] || (v3707[2] = toDisplayString(' Connected Clients ', -1))])]), e('li', d1, [e('button', u1, [createVNode(Ie, { 'class': "me-2" }), v3707[3] || (v3707[3] = toDisplayString(" Running Streams ", -1))])])])]), e('div', c1, [e("div", m1, [createVNode(ut, { 'modelValue': v3680.value, 'onUpdate:modelValue': v3707[0] || (v3707[0] = usr31 => v3680.value = usr31), 'placeholder': 'Search for username, stream or provider name', 'class': 'lg:min-w-[420px]' }, null, 8, .modelValue), createTextVNode(v3674).monitoring.Readers ? (openBlock(), createBlock("div", p1, [e("table", v1, [v3707[4] || (v3707[4] = e("thead", { 'class': "text-xs text-yellow-300 uppercase bg-linear-to-b bg-black text-center" }, [e('tr', null, [e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'Stream'), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, 'Provider'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Type"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'User'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Client IP"), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "User Agent"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "UID"), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Uptime"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Errors"), e('th', { 'scope': "col", 'class': 'px-6 py-3 font-bold' }, "Bandwidth")])], -1)), e("tbody", f1, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v3674).monitoring.Readers, v3708 => (openBlock(), createBlock('tr', { 'key': v3708.Uid, 'class': 'bg-black border-t border-white/15 text-white' }, [e('th', g1, useAttrs(v3708.StreamName + ' (' + v3708.Quality + ')'), 1), e('td', h1, useAttrs(v3708.ProviderName), 1), e('td', b1, useAttrs(v3708.Type), 1), e('td', w1, useAttrs(v3708.User), 1), e('td', x1, useAttrs(v3708.Ip), 1), e('td', y1, [e('p', k1, useAttrs(v3708.UserAgent), 1)]), e('td', S1, useAttrs(v3708.Uid ? v3708.Uid : 'N/A'), 1), e('td', $1, useAttrs(v3708.Uptime), 1), e('td', { 'class': classNames(["px-6 py-4 font-bold", [createTextVNode(ge).getColorByStatus(v3708.ErrorsColor, "text")]]) }, useAttrs(v3708.Errors), 3), e('td', { 'class': classNames(["px-6 py-4 font-bold", [createTextVNode(ge).getColorByStatus(v3708.BwColor, "text")]]) }, useAttrs(v3708.Bw), 3)]))), 128))])])])) : !createTextVNode(v3674).isLoading && !createTextVNode(v3674).monitoring.Readers?..length ? (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': v3680.value ? 'No results.' : 'There are no clients connected.' }, null, 8, .message)) : normalizeProps('', true)]), e("div", C1, [stream200.value ? (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': "There's no streams running." })) : (openBlock(), createBlock("div", M1, [createVNode(ll, { 'modelValue': v3679.value, 'onUpdate:modelValue': v3707[1] || (v3707[1] = updRef51 => v3679.value = updRef51), 'page': "monitoring" }, null, 8, .modelValue), (openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v3672).streams?..Providers, stream202 => (openBlock(), createBlock("div", null, [stream202.Streams ? (openBlock(), createBlock("div", A1, [e('div', I1, useAttrs(stream202.Name), 1), e("div", T1, useAttrs(stream202.Streams.length) + ' running ', 1)])) : normalizeProps('', true), stream202.Streams ? (openBlock(), createBlock('div', P1, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(stream202.Streams, stream203 => (openBlock(), Modal($l, { 'key': stream203.Id, 'stream': stream203, 'serverId': createTextVNode(v3673).getSelectedServer.Id, 'provider': stream202.Id, 'hasEpg': "true", 'isAdmin': "true", 'onOnPlayStream': v3685, 'onOnCheckFullStatus': v3682 }, null, 8, ["stream", "serverId", "provider"]))), 128))])) : normalizeProps('', true)]))), 256))]))])]), createVNode(st, { 'ref_key': "fullStatusModal", 'ref': v3677, 'message': createTextVNode(v3678), 'id': "fullStatusModal" }, null, 8, .message)], 64)); } }, U1 = resolveComponent("logs", { 'state': () => ({ 'logs': renderList(null), 'isLoading': withCtx(false), 'error': withCtx(null), 'wsClient': null }), 'actions': { async 'getLogs'(errRef88, errRef89, errRef90) { prov115 = { 'LinesCount': errRef88, 'ProviderId': (errRef89 !== '') ? errRef89 : '', 'StreamId': (errRef90 !== '') ? errRef90 : '' }; this.isLoading = true, this.error = null; try { if ((false)) return (loadRef37, loadRef38) => (loadRef39(), loadRef40('div', loadRef41, [v3716("div", v3717, [v3718('div', v3719, [v3720('p', v3721, v3722(v3723.name), 1), v3724('p', { 'class': v3725(["font-bold text-lg text-white mt-2", v3726(v3727).getColorByStatus(v3728.color, "text")]) }, v3729(v3730.value), 3)])])])); else { const v3731 = await q.req(I.getApiUrl() + '/log/get', prov115); v3731.data.Logs ? this.logs = v3731.data.Logs : this.logs = ''; } } catch (v3732) { this.error = v3732; } finally { this.isLoading = false; } }, async 'getLogs_WS'(v3733, v3734, v3735) { v3740 = { 'yQJXz': function(v3741) { return v3741(); }, 'JpxmZ': function(v3742, v3743, v3744) { return v3742(v3743, v3744); }, 'xhZWZ': "onEditServer", 'QKgtn': function(v3745, v3746) { return v3745 !== v3746; }, 'KAwOf': 'sQBdD', 'rEwfi': function(v3747, v3748) { return v3747(v3748); } }; this.isLoading = true, this.error = null; try { v3740.QKgtn("sQBdD", "sQBdD") ? errRef94.push({ 'name': "logs", 'params': { 'provider': stream204.provider, 'stream': stream205.stream.Id }, 'query': { 'server': stream206.serverId } }) : (await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "logs", 'ProviderId': v3733, 'StreamId': v3734 }, 'onMessage': stream207 => { this.logs += stream207, v3735(); } }), this.wsClient.open()); } catch (v3749) { v3740.QKgtn("vmPje", 'vmPje') ? v3750("onEditServer", v3751.server) : this.error = v3749; } finally { this.isLoading = false; } }, async 'closeWsClient'() { this.wsClient && (this.wsClient.close(), this.wsClient = null); }, async 'clearLogs'(v3752, v3753) { v3756 = { 'fRgYM': function(v3757, v3758) { return v3757 !== v3758; } }, prov116 = { 'ProviderId': v3752 !== '' ? v3752 : '', 'StreamId': v3756.fRgYM(v3753, '') ? v3753 : '' }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/log/clean", prov116), this.logs = ''; } catch (errRef95) { this.error = errRef95; } finally { this.isLoading = false; } }, async 'exportLogs'(v3759, v3760) { prov117 = { 'ProviderId': (v3759 !== '') ? v3759 : '', 'StreamId': (v3760 !== '') ? v3760 : '' }; this.isLoading = true, this.error = null; try { const stream208 = await q.req(I.getApiUrl() + "/log/export", prov117); this.logs = stream208.data; } catch (errRef96) { this.error = errRef96; } finally { (false) ? errRef97.value = [] : this.isLoading = false; } }, async 'setConf'(errRef98, v3768, v3769, v3770 = false, v3771 = '') { v3776 = { 'CJovv': function(v3777, v3778, v3779) { return v3777(v3778, v3779); }, 'qJuGb': function(v3780, v3781) { return v3780(v3781); }, 'WiPov': function(v3782, v3783) { return v3782 !== v3783; }, 'ruxPa': "KdPJj" }, filtRef4 = { 'HighlightLogFilter': v3770, 'LogFilter': v3771, 'LogLevel': parseInt(v3769), 'ProviderId': errRef98, 'StreamId': v3768 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/log/setconf', filtRef4); } catch (stream209) { this.error = stream209; } finally { v3776.WiPov("KdPJj", "KdPJj") ? v3784("onCheckFullStatus", v3785.event.Status) : this.isLoading = false; } }, async 'getConf'(v3786, v3787) { stream210 = { 'ProviderId': v3786, 'StreamId': v3787 }; this.isLoading = true, this.error = null; try { if ((false)) stream211.toggle(); else return (await q.req(I.getApiUrl() + '/log/getconf', stream210)).data; } catch (v3795) { if ((true)) this.error = v3795; else { errRef100 = errRef101, errRef102 = errRef103, v3796 = () => { errRef102("click"); }; return (v3797, v3798) => (v3799(), v3800('button', { 'type': "button", 'onClick': v3796, 'class': "bg-linear-to-r/srgb from-red-600 to-red-700 hover:from-red-700 hover:to-red-800 text-white flex items-center font-medium focus:outline-hidden rounded-xl text-sm px-3 py-2 transition-colors ease-in-out" }, [errRef100.Icon ? (v3801(), v3802(v3803(v3804.Icon), { 'key': 0, 'class': "mr-1" })) : v3805('', true), v3806(' ' + v3807(errRef100.text) + ' ', 1), v3808(v3797.$slots, 'default')])); } } finally { (false) ? this.isLoading = false : this.isLoading = false; } } } }), _1 = {}, E1 = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function L1(v3809, v3810) { v3812 = { 'PamgT': function(v3813) { return v3813(); }, 'zmWHq': "svg", 'EdxWu': function(v3814, v3815, v3816, v3817, v3818) { return v3814(v3815, v3816, v3817, v3818); }, 'ccZFX': "path", 'eSymp': "currentColor", 'uarMz': 'M4 15v2a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-2M12 4v12m0-12 4 4m-4-4L8 8' }; return openBlock(), createBlock("svg", E1, [...v3810[0] || (v3810[0] = [v3812.EdxWu(e, "path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M4 15v2a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-2M12 4v12m0-12 4 4m-4-4L8 8" }, null, -1)])]); } const sl = J(_1, [ ["render", L1] ]), D1 = { 'class': "flex flex-col justify-start gap-2" }, G1 = { 'class': "flex lg:flex-row flex-col gap-2" }, R1 = { 'class': "flex gap-4 items-center" }, N1 = { 'class': "flex flex-col lg:flex-row gap-2" }, j1 = { 'class': "flex" }, O1 = { 'key': 0, 'class': "flex" }, B1 = { 'class': "flex" }, H1 = { 'key': 1, 'class': "flex gap-4 items-center md:justify-center justify-around my-3 lg:my-0" }, F1 = .innerHTML, q1 = { '__name': "LogsView", 'setup'(v3819) { let v3911 = null; const v3912 = U1(), v3913 = Ae(), v3914 = Le(), v3915 = He(), v3916 = Ae(), v3917 = withCtx(null), v3918 = withCtx(''), v3919 = withCtx(null), v3920 = withCtx(), v3921 = withCtx(''), v3922 = withCtx(false); let v3923 = withCtx([]); const v3924 = withCtx(true), v3925 = withCtx(null), v3926 = withCtx(), v3927 = [{ 'value': 0, 'label': "Error" }, { 'value': 1, 'label': "Warning" }, { 'value': 2, 'label': "Info" }, { 'value': 3, 'label': "Debug" }, { 'value': 4, 'label': "Verbose" }, { 'value': 5, 'label': "Trace" }], v3928 = Sidebar(() => v3911.toHtml(v3912.logs)), v3929 = Sidebar(() => createPinia(v3928.value, { 'allowedTags': ['br', "span"], 'allowedAttributes': { 'span': .style } })), v3930 = v3931 => v3931.LogoUrl ? '' + I.getAppUrl() + v3931.LogoUrl + '?token=' + Me.getToken() : I.getAppUrl() + "/logos/default.png?token=" + Me.getToken(), v3932 = v3933 => v3933.LogoUrl.startsWith("http") ? v3933.LogoUrl : v3933.LogoUrl.startsWith('/logos') ? '' + I.getAppUrl() + v3933.LogoUrl + "?token=" + Me.getToken() : null, v3934 = Sidebar(() => { if (v3913.providers) { const prov118 = v3913.providers.map(prov119 => ({ 'label': prov119.Name, 'value': prov119.Id, 'logo': v3930(prov119) })); return prov118.unshift({ 'label': "Main Log", 'value': '', 'logo': "/o11-logo-white-transparent-no-slogan.svg" }), prov118; } return []; }), v3937 = Sidebar(() => v3923.value.length ? v3923.value.map(v3938 => ({ 'label': v3938.Name, 'value': v3938.Id, 'logo': v3932(v3938) })) : []), v3939 = Sidebar(() => v3919.value && v3918.value), v3940 = Sidebar(() => v3924.value ? "Stop Logs" : "Start Logs"), v3941 = () => { me.push({ 'name': "config", 'params': { 'provider': v3918.value, 'stream': v3919.value }, 'query': { 's': v3919.value + '$', 't': "linear", 'server': v3915.getSelectedServer.Id } }); }, srv82 = async () => { if ((false)) { const srv83 = srv84.AvailableQualities; if (srv83) { v3942.value = []; for (const v3943 of srv83) v3944.value.push({ 'Id': v3943.Id, 'Desc': v3943.Desc }); } else v3945.value = []; } else v3918.value && v3919.value && await v3912.getLogs_WS(v3918.value, v3919.value, async () => { if ((true)) await v3956(); else return v3957(), v3958("svg", v3959, [...v3960[0] || (v3961[0] = [v3962("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m1 1 4 4 4-4" }, null, -1)])]); }); }; async function v3963() { await me.replace({ 'name': "logs", 'params': { 'provider': v3918.value, ...(v3919.value !== null) && { 'stream': v3919.value } }, 'query': { 'server': v3915.getSelectedServer.Id } }); } const stream212 = async () => { v3968 = { 'imAUv': function(v3969) { return v3969(); }, 'MDcKf': function(v3970, v3971) { return (v3970 > v3971); } }, v3972 = me.currentRoute.value.params.provider || v3916.getSelectedProviderId, v3973 = me.currentRoute.value.params.stream; v3972 ? v3916.setCurrentSelectedProvider(v3972) : v3916.setDefaultCurrentSelectedProvider(), v3972 && v3973 && (v3918.value = v3972, v3919.value = v3973, await prov120(), await prov121(), await srv82(), await prov122(), await v3956()), Carousel(v3919, async () => { if ((true)) v3974(), await v3963(), await prov120(), await prov121(), await srv82(), await prov122(), await v3956(); else { const v3975 = v3976.currentRoute.value.params.provider; prov123.setCurrentSelectedProvider(v3975); } }), Carousel(v3918, async () => { await v3968.imAUv(prov124), v3968.MDcKf(v3923.value.length, 0) ? v3919.value = v3923.value[0].Id : v3919.value = null, await v3968.imAUv(v3963); }), Carousel(v3920, async () => { await v3912.setConf(v3918.value, v3919.value, v3920.value, v3922.value, v3921.value); }), Carousel(v3922, async () => { if ((true)) await v3912.setConf(v3918.value, v3919.value, v3920.value, v3922.value, v3921.value); else { const v3977 = v3978; return (v3979, v3980) => (v3981(), v3982("svg", { 'class': v3983(v3977["class"]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v3980[0] || (v3980[0] = [v3984("path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M21 13v-2a1 1 0 0 0-1-1h-.757l-.707-1.707.535-.536a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0l-.536.535L14 4.757V4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v.757l-1.707.707-.536-.535a1 1 0 0 0-1.414 0L4.929 6.343a1 1 0 0 0 0 1.414l.536.536L4.757 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h.757l.707 1.707-.535.536a1 1 0 0 0 0 1.414l1.414 1.414a1 1 0 0 0 1.414 0l.536-.535 1.707.707V20a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-.757l1.707-.708.536.536a1 1 0 0 0 1.414 0l1.414-1.414a1 1 0 0 0 0-1.414l-.535-.536.707-1.707H20a1 1 0 0 0 1-1Z" }, null, -1), v3985("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z" }, null, -1)])], 2)); } }), Carousel(v3921, Rating(async v3986 => { await v3912.setConf(v3918.value, v3919.value, v3920.value, v3922.value, v3986); }, 300)); await v3914.toggleStreamPlayback(v3988, v3918.value, v3925.value); }, v3989 = () => { (true) ? v3913.getAllProviders() : this.isRefreshingStreams = false; }, prov120 = async () => { (true) ? await v3912.getLogs(512, v3918.value, v3919.value) : (v3990.value.pause(), v3991.destroy(), v3992.value = false); }, prov124 = async () => { v3923.value = [], (v3918.value !== '') ? (await v3914.getStreams(v3918.value, ''), v3923.value = v3914.streams) : v3919.value = null; }, prov121 = async () => { v3918.value && v3919.value && (v3925.value = await v3914.getStream(v3918.value, v3919.value)); }, prov122 = async () => { await v3914.getStatusSingle_WS(v3918.value, v3919.value, v3925.value.Type, v4000 => { (true) ? v3925.value = { ...v4000 }); }, v4003 = () => { v3926.value.playStream(v3925.value.StreamingUrl[0].Url); }, v4004 = async () => { await v3912.clearLogs(v3918.value, v3919.value); }; Table(() => { (true) ? (v3912.closeWsClient(), v3914.closeWsClient()) : (this.error = auth31.data + '. Please login again.', this.logout()); }); const auth32 = async () => { if ((false)) auth33.value = !!auth34, auth35.value ? auth36(auth37) : togRef25.value = {}, togRef26.toggle(); else { const togRef27 = await v3912.getConf(v3918.value, v3919.value); togRef27 && (v3920.value = togRef27.LogLevel, v3921.value = togRef27.Filter, v3922.value = togRef27.HighlightFilter); } }, v4005 = () => { if ((true)) { v3912.exportLogs(v3918.value, v3919.value); const v4006 = "o11-" + new Date().toISOString().slice(0, 19).replace(/\W/g, '-') + '.log', v4007 = new Blob([v3912.logs], { 'type': "text/plain" }), creRef4 = URL.createObjectURL(v4007), elRef20 = document.createElement('a'); elRef20.href = creRef4, elRef20.download = v4006, elRef20.click(), setTimeout(() => URL.revokeObjectURL(creRef4), 0); } else { const v4008 = v4009.stream.Subtitles.split(','); v4010.value = v4008.map(v4011 => ({ 'Id': v4011, 'Desc': v4012(v4011) })), v4013.value = v4014.stream.FirstSubtitlesTrack; } }, v4015 = () => { (v3924.value = !v3924.value, v3924.value ? srv82() : v3912.closeWsClient()); }, v3956 = async () => { v3917.value && (v3917.value.scrollTop = v3917.value.scrollHeight); }; ((() => { v3911 = new useRouter({ 'fg': "#fff", 'bg': "#000" }); })()); const v3974 = () => { v3921.value = '', v3922.value = false; }; return Carousel(() => v3915.getSelectedServer, () => { v3914.resetStreams(), prov120(), v3989(), prov124(), auth32(); }), withDirectives(async () => { await prov120(), await v3956(); }), stream212(), v3989(), prov124(), auth32(), (v4017, v4018) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Logs" }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v3926 }, null, 512), e("div", D1, [e("div", G1, [createVNode(ke, { 'Icon': Ke, 'onClick': v4004, 'text': "Clear logs" }), createVNode(ke, { 'Icon': sl, 'onClick': v4005, 'text': 'Export logs' }), createVNode(ke, { 'Icon': v3924.value ? We : at, 'color': v3924.value ? "danger" : "green", 'onClick': v4015, 'text': v3940.value }, null, 8, ['Icon', "color", "text"])]), e("div", R1, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v4018[0] || (v4018[0] = updRef52 => v3921.value = updRef52), 'class': "block -ps-2 py-1.5 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Live filter" }, null, 512), [ [Dropdown, v3921.value] ]), isRef(e("input", { 'id': "highlight", 'type': "checkbox", 'onUpdate:modelValue': v4018[1] || (v4018[1] = updRef53 => v3922.value = updRef53), 'class': 'w-5 h-5 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out' }, null, 512), [ [renderSlot, v3922.value] ]), v4018[7] || (v4018[7] = e("label", { 'for': '\x27highlight', 'class': "ms-1 text-sm font-medium text-white cursor-pointer" }, "Highlight only", -1))]), e("div", N1, [e('div', j1, [createVNode(Ee, { 'data': v3934.value, 'id': "providers", 'modelValue': v3918.value, 'onUpdate:modelValue': v4018[2] || (v4018[2] = updRef54 => v3918.value = updRef54) }, null, 8, ['data', "modelValue"])]), v3918.value !== '' && createTextVNode(v3923) !== null ? (openBlock(), createBlock("div", O1, [createVNode(Ee, { 'data': v3937.value, 'id': "providers-streams", 'modelValue': v3919.value, 'onUpdate:modelValue': v4018[3] || (v4018[3] = updRef55 => v3919.value = updRef55) }, null, 8, ["data", "modelValue"])])) : normalizeProps('', true), e("div", B1, [createVNode(Ee, { 'data': v3927, 'id': 'log-type', 'modelValue': v3920.value, 'onUpdate:modelValue': v4018[4] || (v4018[4] = updRef56 => v3920.value = updRef56), 'logos-disabled': true }, null, 8, .modelValue)]), v3939.value ? (openBlock(), createBlock("div", H1, [v3925.value?..Running ? (openBlock(), createBlock("button", { 'key': 1, 'class': "text-white hover:text-red-500 rounded-full transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'class': "text-white hover:text-green-500 rounded-full transition-all ease-in-out" }, [createVNode(at)])), v3925.value?..Running || v3925.value?..OnDemand ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': v4003, 'class': "text-white hover:text-blue-500 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true), e("button", { 'onClick': v3941, 'class': "hover:text-yellow-300 text-white rounded-full transition-all ease-in-out" }, [createVNode(xt, { 'class': "w-5 h-5" })])])) : normalizeProps('', true)]), createTextVNode(v3912).logs ? (openBlock(), createBlock('div', { 'key': 0, 'ref_key': "logsViewer", 'ref': v3917, 'innerHTML': v3929.value, 'class': "p-4 py-0 rounded-xl bg-black text-white font-semibold whitespace-pre-wrap text-xs lg:text-sm overflow-y-scroll no-scrollbar h-[calc(100vh-20rem)] shadow-lg border border-white/15" }, null, 8, F1)) : normalizeProps('', true)])], 64)); } }, W1 = J(q1, [ ['__scopeId', "data-v-3e9edd54"] ]), go = resolveComponent("recordings", { 'state': () => ({ 'notificationStore': it(), 'recordings': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null), 'response': withCtx(null), 'wsClient': null }), 'actions': { async 'getRecordings'(rec14 = 'all') { const rec = { rec15: 3038, rec16: 4860 }, rec17 = { 'MUcZt': 'config', 'Wucgq': "all" }; this.isLoading = true, this.error = null; try { const rec18 = { 'RecordingId': "all", 'ProviderId': rec14 }, prov125 = await q.req(I.getApiUrl() + "/recording/get", rec18); this.recordings = prov125.data.Recordings; } catch (rec19) { this.error = rec19; } finally { this.isLoading = false; } }, async 'getRecordings_WS'(rec21 = "all") { const rec22 = { 'NYEnm': "recordingget" }; this.isLoading = true, this.error = null; try { await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': rec22.NYEnm, 'RecordingId': 'all', 'ProviderId': rec21 }, 'onMessage': prov127 => { this.recordings = prov127.Recordings; } }), this.wsClient.open(); } catch (prov128) { this.error = prov128; } finally { this.isLoading = false; } }, async 'delete'(loadRef42) { delRef14 = { 'yclhR': "dynamic", 'hTukj': "onStopRecording", 'kWOcW': function(v4021, v4022) { return v4021 !== v4022; }, 'Bbffa': "xBnRr", 'lMhos': "GZrFj", 'bHCgS': "QhpmO" }, rec23 = { 'RecordingId': loadRef42 }; this.isLoading = true, this.error = null; try { if (delRef14.kWOcW("KJMCF", delRef14.Bbffa)) await q.req(I.getApiUrl() + "/recording/delete", rec23), this.notificationStore.showNotification('Deleted ' + loadRef42 + " successfully.", "success"); else { const delRef15 = delRef16.getElementById("delete-job-modal"), delRef17 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, } } catch (v4026) { this.error = v4026; } finally { delRef14.kWOcW("GZrFj", delRef14.bHCgS) ? this.isLoading = false : rec24("onStopRecording", rec25.recording); } }, async 'stop'(rec26) { this.isLoading = true, this.error = null; try { (true) ? (await q.req(I.getApiUrl() + "/recording/stop", { 'RecordingId': rec26 }), this.notificationStore.showNotification("Stopped recording " + rec26 + " successfully.", "success")) : rec31(); } catch (rec32) { if ((false)) { const v4033 = v4034.getItem("o11-preferences-view"); return v4033 ? this.viewMode = v4035.parse(v4033) : this.saveViewMode(), this.viewMode; } else this.error = rec32; } finally { (true) ? this.isLoading = false : (v4036.value = "Are you sure want to delete " + v4037.value.join(',') + ' ?', v4038.value.toggleModal()); } }, async 'add'(v4039) { this.isLoading = true, this.error = null; try { const loadRef47 = await q.req(I.getApiUrl() + "/recording/add", v4039); this.response = loadRef47.data, this.notificationStore.showNotification("Added new recording for " + v4039.StreamId + " successfully.", "success"); } catch (notif32) { (true) ? this.error = notif32 : notif33 && errRef104.close(); } finally { (true) ? this.isLoading = false : (errRef105 ? (errRef106.value = true, loadRef48.value = loadRef49.Name, loadRef50.value = loadRef51) : (loadRef52(), loadRef53.value = false, v4049.value = null), v4050.toggle()); } }, async 'edit'(v4051) { this.isLoading = true, this.error = null; try { const v4060 = await q.req(I.getApiUrl() + "/recording/edit", v4051); this.response = v4060.data, this.notificationStore.showNotification("Edited recording " + v4051.RecordingId + ' successfully.', "success"); } catch (errRef107) { this.error = errRef107; } finally { this.isLoading = false; } }, async 'getStatus'(statRef36, statRef37) { statRef41 = { 'mDinN': function(statRef42) { return statRef42(); }, 'zipdW': "linear,event", 'qBWaa': 'UpMMK' }, stream218 = { 'ProviderId': statRef36, 'StreamId': statRef37, 'StreamType': "linear,event" }; this.isLoading = true, this.error = null; try { return (await q.req(I.getApiUrl() + "/stream/status", stream218)).data.Providers[0].Streams; } catch (stream220) { this.error = stream220; } finally { this.isLoading = false; } }, async 'closeWsClient'() { this.wsClient && (this.wsClient.close(), this.wsClient = null); } } }), z1 = { 'class': "flex flex-row gap-4 items-center justify-between" }, Z1 = { 'class': "flex flex-row gap-4 grow" }, K1 = { 'class': "flex flex-col items-center justify-around" }, J1 = { 'class': "flex flex-col grow content-center gap-2" }, Y1 = { 'class': 'flex flex-col gap-2' }, Q1 = { 'class': "font-bold text-white break-words" }, X1 = { 'class': "font-bold text-xs text-yellow-300 break-words" }, em = { 'class': "font-medium text-xs text-white line-clamp-3" }, tm = { 'class': 'flex flex-row space-y-2' }, lm = { 'class': "text-xs text-white" }, om = { 'class': "flex flex-row justify-between items-center" }, sm = { '__name': "ItemRecording", 'props': ['recording', "selected"], 'emits': ['onToggleSelection', 'onPlayVideo', "onEditRecording", "onStopRecording"], 'setup'(rec33, { emit: rec34 }) { v4085 = rec33, v4086 = rec34, v4087 = withCtx(false), v4088 = () => { (true) ? v4086("onEditRecording", v4085.recording) : rec41 = rec42; }, rec43 = () => { if ((false)) { for (const rec44 of rec45.value) if ((rec44.Id === v4089)) return rec44.Desc; } else v4086("onToggleSelection", v4085.recording.Id); }, rec46 = Sidebar(() => v4085.recording.Status !== 'stopped'), rec47 = Sidebar(() => v4085.recording.Status === "running" || v4085.recording.Status === "init"), rec48 = () => { if ((false)) { for (let rec49 = 0; (rec49 < stream221.stream.StreamingUrl?..length); rec49++) stream222(rec49); } else v4086("onPlayVideo", v4085.recording.StreamingUrl); }, stream223 = () => { const stream224 = document.createElement('a'); stream224.href = v4085.recording.StreamingUrl, stream224.target = "_blank", stream224.download = v4085.recording.Id, stream224.click(); }, rec50 = () => { (true) ? v4086("onStopRecording", v4085.recording) : rec51.toggle(); }; return Carousel(() => v4085.selected, togRef33 => { (false) ? this.monitoring = togRef34 : v4087.value = togRef33; }), (togRef35, selRef7) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-bg-black': rec33.recording.Running, 'border border-yellow-300/50': v4087.value }, "flex flex-col lg:flex-col h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto relative gap-2 transition-all ease-in-out border-white/15 border"]) }, [e("div", z1, [isRef(e('input', { 'type': 'checkbox', 'onUpdate:modelValue': selRef7[0] || (selRef7[0] = updRef57 => v4087.value = updRef57), 'onClick': rec43, 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [renderSlot, v4087.value] ])]), e("div", Z1, [e("div", K1, [e("button", { 'onClick': rec48, 'class': "hover:text-blue-600 rounded-full transition-all ease-in-out text-white" }, [createVNode(Ie)]), rec33.recording.Status === "stopped" ? (openBlock(), createBlock("button", { 'key': 0, 'onClick': stream223, 'class': "text-white hover:text-blue-600 rounded-full transition-all ease-in-out" }, [createVNode(It)])) : normalizeProps('', true), rec47.value ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': rec50, 'class': "text-white hover:text-red-500 rounded-full transition-all ease-in-out" }, [createVNode(We)])) : normalizeProps('', true)]), e("div", J1, [e("div", Y1, [e('p', Q1, useAttrs(rec33.recording.Title), 1), e('p', X1, useAttrs(rec33.recording.StreamName), 1), e('p', em, useAttrs(rec33.recording.Description), 1)]), e('div', tm, [e('p', lm, useAttrs(createTextVNode(de).formatDate(rec33.recording.Start) + " - " + createTextVNode(de).formatDate(rec33.recording.End)), 1)]), e("div", om, [e('p', { 'class': classNames(["text-xs font-bold truncate capitalize", [createTextVNode(ge).getColorByStatus(rec33.recording.StatusColor, 'text')]]) }, useAttrs(rec33.recording.Status), 3), rec46.value ? (openBlock(), Modal(ke, { 'key': 0, 'text': "Edit", 'Icon': Jt, 'onClick': v4088 })) : normalizeProps('', true)])])])], 2)); } }, am = {}, rm = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function nm(v4090, v4091) { v4097 = { 'TxyOU': function(v4098) { return v4098(); }, 'waMcU': function(v4099, v4100, v4101, v4102) { return v4099(v4100, v4101, v4102); }, 'teWst': "svg", 'yVCtf': function(v4103, v4104, v4105, v4106, v4107) { return v4103(v4104, v4105, v4106, v4107); }, 'JcgfL': "path", 'cEpVK': "currentColor", 'EkoyJ': "round", 'UBYnP': "M8.5 11.5 11 14l4-4m6 2a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }; return openBlock(), v4097.waMcU(createBlock, "svg", rm, [...v4091[0] || (v4091[0] = [v4097.yVCtf(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M8.5 11.5 11 14l4-4m6 2a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); } const Bt = J(am, [ ["render", nm] ]), im = { 'class': "fixed lg:top-20 bottom-5 lg:right-10 right-5 p-4 shadow-md z-50 h-40" }, ho = { '__name': "Mp4VideoPlayer", 'setup'(v4108, { expose: v4109 }) { v4115 = { 'liilv': "error", 'iAXCh': function(v4116, v4117) { return v4116 !== v4117; }, 'MIIsU': 'NuFFI', 'gxGOG': "VCLsG", 'hQikc': function(v4118, v4119) { return v4118(v4119); }, 'zYAKq': function(v4120) { return v4120(); } }, v4121 = withCtx(false), v4122 = withCtx(); v4109({ 'playVideo': vid9 => { const vid10 = { 'apeFA': "error" }; v4115.iAXCh("NuFFI", "VCLsG") ? (v4122.value.src = vid9, v4122.value.play(), v4121.value = true) : (this.error = errRef111, this.notificationStore.showNotification('Error deleting job ' + errRef112.Name, vid10.apeFA)); } }); const errRef113 = () => { v4122.value.pause(), v4121.value = false; }; return (v4123, v4124) => (openBlock(), Modal(Alert, { 'enter-from-class': "scale-0 opacity-0", 'enter-to-class': "scale-100 opacity-100", 'leave-from-class': "scale-100 opacity-100", 'leave-to-class': "scale-0 opacity-0", 'enter-active-class': "transition transform opacity duration-200 ease-out", 'leave-active-class': 'transition transform opacity duration-200 ease-in' }, { 'default': withModifiers(() => [isRef(e('div', im, [e("video", { 'ref_key': "videoElement", 'ref': v4122, 'class': 'rounded-xl lg:w-96 w-64 bg-black', 'controls': '', 'autoplay': '', 'playsinline': '' }, null, 512), e("button", { 'class': 'absolute top-2 right-2 p-0.5 bg-white hover:bg-yellow-300 text-sm font-bold rounded-full text-black cursor-pointer transition-all ease-in-out', 'onClick': errRef113 }, [createVNode(mo)])], 512), [ [Spinner, v4121.value] ])]), '_': 1 })); } }, dm = { 'class': 'flex justify-end items-center cursor-pointer my-5' }, Al = { '__name': "ListViewToggle", 'props': Toggle(.type, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(v4125) { v4135 = v4125, v4136 = Pagination(v4125, "modelValue"), v4137 = () => { ["linear", "events", "vod", "recordings", "epg"].includes(v4135.type) && (I.viewMode[v4135.type] = (v4136.value === false) ? "grid" : "list", I.saveViewMode()); }; return I.getViewMode(), (v4138, v4139) => (openBlock(), createBlock('label', dm, [isRef(e("input", { 'onUpdate:modelValue': v4139[0] || (v4139[0] = updRef58 => v4136.value = updRef58), 'onChange': v4137, 'type': "checkbox", 'class': "sr-only peer" }, null, 544), [ [renderSlot, v4136.value] ]), v4139[1] || (v4139[1] = e("div", { 'class': "relative w-11 h-6 bg-black border border-white/15 box-content peer-focus:outline-hidden rounded-full peer peer-checked:after:translate-x-full peer-checked:rtl:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:rounded-full after:h-5 after:w-5 after:transition-all peer-checked:bg-yellow-300" }, null, -1)), v4139[2] || (v4139[2] = e("span", { 'class': "ms-3 text-sm font-medium text-white my-auto" }, 'List View', -1))])); } }, um = { 'class': "px-6 py-4" }, cm = { 'class': 'px-6 py-4' }, mm = { 'class': "font-bold text-white" }, pm = { 'class': "px-6 py-4" }, vm = { 'class': "font-bold text-white" }, fm = { 'class': "px-6 py-4 max-w-xs" }, gm = { 'class': 'text-white overflow-x-scroll no-scrollbar max-h-12' }, hm = { 'class': 'px-6 py-4' }, bm = { 'class': 'px-6 py-4' }, wm = { 'class': "font-bold whitespace-nowrap" }, xm = { 'class': 'px-6 py-4' }, ym = { 'class': "font-bold whitespace-nowrap" }, km = { 'class': 'px-6 py-4' }, Sm = { 'class': "flex gap-2" }, $m = { '__name': "ItemTableRecording", 'props': ["recording", "selected"], 'emits': ['onToggleSelection', "onPlayVideo", "onEditRecording", 'onStopRecording'], 'setup'(rec52, { emit: rec53 }) { v4165 = rec52, v4166 = rec53, v4167 = Be(); Ae(), Le(); const selRef8 = withCtx(v4165.selected); Sidebar(() => v4167.isAdmin); const selRef9 = () => { (false) ? this.isLoading = false : v4166("onEditRecording", v4165.recording); }, loadRef54 = () => { (true) ? v4166("onToggleSelection", v4165.recording.Id) : rec58.provider.Headers2.Media = rec59.parse(rec60); }, rec61 = Sidebar(() => v4165.recording.Status !== 'stopped'), rec62 = Sidebar(() => v4165.recording.Status === "running" || v4165.recording.Status === 'init'), rec63 = () => { (true) ? v4166("onPlayVideo", v4165.recording.StreamingUrl) : stream225.closeWsClient(); }, stream226 = () => { const stream227 = document.createElement('a'); stream227.href = v4165.recording.StreamingUrl, stream227.target = "_blank", stream227.download = v4165.recording.Id, stream227.click(); }, v4168 = () => { v4166("onStopRecording", v4165.recording); }; return Carousel(() => v4165.selected, rec64 => { selRef8.value = rec64; }), (rec65, rec66) => (openBlock(), createBlock('tr', { 'class': classNames(['bg-linear-to-tr bg-black border-t border-white/15 text-white', { 'from-neutral-600/50 to-black/25': rec52.recording.Running }]) }, [e('td', um, [isRef(e('input', { 'type': 'checkbox', 'onUpdate:modelValue': rec66[0] || (rec66[0] = updRef59 => selRef8.value = updRef59), 'onClick': loadRef54, 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [renderSlot, selRef8.value] ])]), e('td', cm, [e("span", mm, useAttrs(rec52.recording.StreamName), 1)]), e('td', pm, [e('span', vm, useAttrs(rec52.recording.Title ? rec52.recording.Title : '-'), 1)]), e('td', fm, [e('div', gm, useAttrs(rec52.recording.Description ? rec52.recording.Description : '-'), 1)]), e('td', hm, [e('span', { 'onClick': rec66[1] || (rec66[1] = () => {}), 'class': classNames([ [createTextVNode(ge).getColorByStatus(rec52.recording.StatusColor, 'text')], "text-xs font-bold line-clamp-3 max-w-xs overflow-y-scroll capitalize no-scrollbar whitespace-pre-line break-all cursor-pointer hover:opacity-75 transition-all" ]) }, useAttrs(rec52.recording.Status), 3)]), e('td', bm, [e('span', wm, useAttrs(createTextVNode(de).formatDate(rec52.recording.Start)), 1)]), e('td', xm, [e("span", ym, useAttrs(createTextVNode(de).formatDate(rec52.recording.End)), 1)]), e('td', km, [e("div", Sm, [e("button", { 'onClick': rec63, 'class': "hover:text-blue-600 rounded-full transition-all ease-in-out" }, [createVNode(Ie)]), rec52.recording.Status === "stopped" ? (openBlock(), createBlock('button', { 'key': 0, 'onClick': stream226, 'class': "text-white hover:text-blue-600 rounded-full transition-all ease-in-out" }, [createVNode(It)])) : normalizeProps('', true), rec62.value ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': v4168, 'class': "text-white hover:text-red-500 rounded-full transition-all ease-in-out" }, [createVNode(We)])) : normalizeProps('', true), rec61.value ? (openBlock(), Modal(ke, { 'key': 2, 'text': "Edit", 'Icon': Jt, 'onClick': selRef9 })) : normalizeProps('', true)])])], 2)); } }, Cm = { 'class': 'overflow-x-auto shadow-md rounded-xl mt-5 border border-white/15' }, Mm = { 'class': 'w-full text-sm text-left rtl:text-right text-neutral-400' }, Am = { '__name': "TableRecordings", 'props': ["recordings", "selectedItems"], 'emits': ['onToggleSelection', "onPlayVideo", "onEditRecording", 'onStopRecording'], 'setup'(rec67, { emit: rec68 }) { v4169 = { 'qaaEB': function(v4170, v4171, v4172) { return v4170(v4171, v4172); }, 'ackxC': "onPlayVideo", 'hsLeU': "widevine", 'xRIRT': "provider", 'goCgw': "zDZnd", 'exsxR': function(v4173, v4174, v4175) { return v4173(v4174, v4175); }, 'sIQsk': 'onStopRecording', 'jkcLz': function(rec73, rec74, rec75) { return rec73(rec74, rec75); }, 'ILVSM': "onToggleSelection", 'KRHDh': function(rec76, rec77) { return rec76 === rec77; }, 'Ejywf': "NlIpg", 'dgtdW': "fRrOK", 'VuzXd': "onEditRecording" }, v4176 = rec68, v4177 = v4178 => { v4176("onPlayVideo", v4178); }, v4179 = v4180 => { v4176("onStopRecording", v4180); }, acct8 = acct9 => { v4176("onToggleSelection", acct9); }, acct10 = acct11 => { if (v4169.KRHDh("NlIpg", "fRrOK")) { } else v4176("onEditRecording", acct11); }; return (v4192, v4193) => (openBlock(), createBlock("div", Cm, [e("table", Mm, [v4193[0] || (v4193[0] = e("thead", { 'class': "text-xs text-yellow-300 uppercase bg-black" }, [e('tr', null, [e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Stream"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Title"), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "Desc"), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, 'Status'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Start"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "End"), e('th', { 'scope': 'col', 'class': 'px-6 py-3 font-bold' }, 'Actions')])], -1)), e("tbody", null, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(rec67.recordings, v4194 => (openBlock(), Modal($m, { 'key': v4194.Id, 'selected': rec67.selectedItems.includes(v4194.Id), 'recording': v4194, 'onOnStopRecording': v4179, 'onOnPlayVideo': v4177, 'onOnToggleSelection': acct8, 'onOnEditRecording': acct10 }, null, 8, ['selected', "recording"]))), 128))])])])); } }, Im = {}, Tm = { 'class': 'w-4 h-4 text-neutral-400', 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'fill': 'currentColor', 'viewBox': '0 0 20 20' }; function Pm(v4195, v4196) { v4199 = { 'YUHva': function(v4200) { return v4200(); }, 'iecyq': function(v4201, v4202, v4203, v4204) { return v4201(v4202, v4203, v4204); }, 'iFsgK': 'svg', 'kpgnY': function(v4205, v4206, v4207, v4208, v4209) { return v4205(v4206, v4207, v4208, v4209); }, 'IDLBl': "M20 4a2 2 0 0 0-2-2h-2V1a1 1 0 0 0-2 0v1h-3V1a1 1 0 0 0-2 0v1H6V1a1 1 0 0 0-2 0v1H2a2 2 0 0 0-2 2v2h20V4ZM0 18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8H0v10Zm5-8h10a1 1 0 0 1 0 2H5a1 1 0 0 1 0-2Z" }; return openBlock(), v4199.iecyq(createBlock, "svg", Tm, [...v4196[0] || (v4196[0] = [v4199.kpgnY(e, 'path', { 'd': "M20 4a2 2 0 0 0-2-2h-2V1a1 1 0 0 0-2 0v1h-3V1a1 1 0 0 0-2 0v1H6V1a1 1 0 0 0-2 0v1H2a2 2 0 0 0-2 2v2h20V4ZM0 18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8H0v10Zm5-8h10a1 1 0 0 1 0 2H5a1 1 0 0 1 0-2Z" }, null, -1)])]); } const Wt = J(Im, [ ["render", Pm] ]), Vm = {}, Um = { 'class': "w-4 h-4 text-neutral-400", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': "currentColor", 'viewBox': '0 0 24 24' }; function _m(v4210, v4211) { v4213 = { 'OsZjZ': function(v4214, v4215, v4216, v4217) { return v4214(v4215, v4216, v4217); }, 'FqHEl': "svg", 'sgtMk': function(v4218, v4219, v4220, v4221, v4222) { return v4218(v4219, v4220, v4221, v4222); }, 'Oaexk': 'path', 'Wccjv': 'evenodd', 'PUirO': 'M2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10S2 17.523 2 12Zm11-4a1 1 0 1 0-2 0v4a1 1 0 0 0 .293.707l3 3a1 1 0 0 0 1.414-1.414L13 11.586V8Z' }; return openBlock(), v4213.OsZjZ(createBlock, "svg", Um, [...v4211[0] || (v4211[0] = [v4213.sgtMk(e, "path", { 'fill-rule': "evenodd", 'd': "M2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10S2 17.523 2 12Zm11-4a1 1 0 1 0-2 0v4a1 1 0 0 0 .293.707l3 3a1 1 0 0 0 1.414-1.414L13 11.586V8Z", 'clip-rule': "evenodd" }, null, -1)])]); } const bt = J(Vm, [ ["render", _m] ]), Em = { 'class': "flex flex-row justify-start mb-4" }, Lm = { 'key': 1 }, Dm = { 'class': "flex flex-row gap-4 mt-10" }, Gm = { 'class': "w-full lg:w-96 relative my-5" }, Rm = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 gap-4" }, Nm = { 'id': "add-edit-recording", 'tabindex': '-1', 'aria-hidden': 'true', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, jm = { 'class': 'relative p-4 w-full max-w-md max-h-full' }, Om = { 'class': "relative rounded-xl shadow-xl bg-black" }, Bm = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, Hm = { 'class': "text-lg font-semibold text-white" }, Fm = { 'class': 'p-4 md:p-5' }, qm = { 'class': 'grid space-y-4 grid-cols-1' }, Wm = { 'class': 'col-span-2 space-y-2' }, zm = { 'class': "columns-2" }, Zm = { 'class': "relative max-w-sm" }, Km = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none" }, Jm = { 'class': "relative max-w-sm" }, Ym = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, Qm = { 'class': 'col-span-2 columns-2' }, Xm = { 'class': "relative max-w-sm" }, ep = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none" }, tp = { 'class': "relative max-w-sm" }, lp = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, op = { 'class': "col-span-2" }, sp = { 'key': 0, 'class': 'w-full' }, ap = .value, rp = { 'class': 'col-span-2' }, np = { 'key': 0, 'class': "w-full" }, ip = .value, dp = { 'class': "flex flex-row justify-end gap-4" }, up = { '__name': 'RecordingsView', 'setup'(rec78) { v4305 = go(), v4306 = Ae(), v4307 = He(), v4308 = withCtx(null), v4309 = withCtx("best"); let v4310 = withCtx([]); const v4311 = withCtx(''); let v4312 = {}; const v4313 = withCtx([]), v4314 = withCtx(), v4315 = withCtx(''), v4316 = withCtx(), v4317 = withCtx([]), v4318 = withCtx(false), v4319 = withCtx(), v4320 = withCtx(), v4321 = withCtx(), v4322 = withCtx(); let v4323 = withCtx((I.getViewMode().recordings === "list")); const rec85 = renderList({ 'RecordingId': null, 'title': '', 'description': '' }), rec86 = rec87 => { const rec88 = dayjs.unix(rec87.Start), rec89 = dayjs.unix(rec87.End), v4324 = rec88.format("DD/MM/YYYY"), v4325 = rec89.format("DD/MM/YYYY"), v4326 = rec88.format("HH:mm"), v4327 = rec89.format("HH:mm"); v4319.value.value = v4324, v4320.value.value = v4325, v4321.value.value = v4326, v4322.value.value = v4327, v4308.value = rec87.StreamId, v4309.value = rec87.VideoId, rec85.RecordingId = rec87.Id, rec85.title = rec87.Title, rec85.description = rec87.Description, v4318.value = true, rec90(); }, rec91 = Sidebar(() => v4313.value.length), prov129 = () => dayjs().format("DD/MM/YYYY"), srv87 = () => dayjs().format("HH:mm"), srv88 = async () => { const v4332 = v4313.value.join(','); await v4305["delete"](v4332), await v4331(), v4333(), v4334(); }, v4333 = () => { v4313.value = []; }, v4334 = () => { v4315.value = 'Are you sure want to delete ' + v4313.value.join(',') + ' ?', v4316.value.toggleModal(); }, modal20 = modal21 => { v4314.value.playVideo(modal21); }, modal22 = modal23 => { const modal24 = v4313.value.indexOf(modal23); (modal24 !== -1) ? v4313.value.splice(modal24, 1) : v4313.value.push(modal23); }, v4335 = () => { v4336.value ? v4313.value = [] : v4313.value = v4305.recordings.map(rec92 => rec92.Id); }, v4336 = Sidebar(() => v4305.recordings?..every(rec93 => v4313.value.includes(rec93.Id))), rec94 = Sidebar(() => v4305.recordings?..filter(v4337 => v4337.StreamName.toLowerCase().includes(v4311.value.toLowerCase()))), v4338 = v4339 => { if ((false)) v4340.push({ 'name': "logs", 'params': { 'provider': stream228.provider, 'stream': stream229.event.EventId }, 'query': { 'server': stream230.serverId } }); else { if (v4339.AvailableQualities) { const srv89 = v4339.AvailableQualities; if (srv89) { v4317.value = []; for (const v4341 of srv89) v4317.value.push({ 'Id': v4341.Id, 'Desc': v4341.Desc }); } } else v4317.value = []; } if ((true)) { const v4343 = dayjs.tz(v4319.value.value + ' ' + v4321.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), v4344 = dayjs.tz(v4320.value.value + ' ' + v4322.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), rec95 = { 'RecordingId': rec85.RecordingId, 'Start': v4343, 'End': v4344 }; await v4305.edit(rec95), await v4331(), v4318.value = false, rec90(); } else { const v4345 = new v4346(); v4345.onload = v4347 => { v4348.value = v4347.target.result; }, v4345.readAsDataURL(v4349); } const v4351 = dayjs.tz(v4319.value.value + ' ' + v4321.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), v4352 = dayjs.tz(v4320.value.value + ' ' + v4322.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), prov130 = { 'ProviderId': v4306.getSelectedProviderId, 'StreamId': v4308.value, 'Start': v4351, 'End': v4352, 'VideoId': v4309.value, 'Title': rec85.title, 'Description': rec85.description }; await v4305.add(prov130), await v4331(), rec90(); v4312.hide(), v4318.value = false; }, v4354 = () => { (v4319.value.value = prov129(), v4320.value.value = prov129(), v4321.value.value = srv87(), v4322.value.value = srv87(), v4318.value = false, v4312.toggle()); }, rec90 = () => { v4312.toggle(); }, togRef37 = () => { if ((true)) { const v4356 = document.getElementById("add-edit-recording"), v4357 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v4358 = { 'id': "add-edit-recording", 'override': true }; v4312 = new initFlowbite(v4356, v4357, v4358); } else this.isLoading = false; }, v4331 = async () => { await v4305.getRecordings_WS(v4306.getSelectedProviderId); }, rec96 = async () => { if ((true)) v4310.value = await v4305.getStatus(v4306.getSelectedProviderId, "all"), (v4310.value.length > 0) ? v4308.value = v4310.value[0].Id : v4308.value = null; else { let v4359; try { v4359 = IElwAN.rUYcz(v4360, IElwAN.RvppE(IElwAN.RvppE(IElwAN.TqOKo, IElwAN.XQLSq), ');'))(); } catch (v4361) { v4359 = v4362; } return v4359; } }; Carousel(() => v4306.getSelectedProviderId, async () => { await rec96(); }), Carousel(v4308, async () => { if ((true)) { const prov131 = await v4305.getStatus(v4306.getSelectedProviderId, v4308.value); v4338(prov131[0]); } else return true; }); const prov132 = () => { const prov133 = me.currentRoute.value.params.provider || v4306.getSelectedProviderId; prov133 ? v4306.setCurrentSelectedProvider(prov133) : v4306.setDefaultCurrentSelectedProvider(), me.replace({ 'name': "recordings", 'params': { 'provider': v4306.getSelectedProviderId }, 'query': { 'server': v4307.getSelectedServer.Id } }); }, prov134 = async prov135 => { await v4305.stop(prov135.Id); }, srv90 = () => { v4331(), me.replace({ 'name': "recordings", 'params': { 'provider': v4306.getSelectedProviderId }, 'query': { 'server': v4307.getSelectedServer.Id } }); }; return withDirectives(() => { if ((false)) this.error = v4363, this.notificationStore.showNotification(v4364, "error"); else { const elRef21 = document.getElementById("start-date"), elRef22 = document.getElementById("end-date"); new useRoute(elRef21, { 'format': "dd/mm/yyyy", 'autohide': true }), new useRoute(elRef22, { 'format': "dd/mm/yyyy", 'autohide': true }), rec96(), togRef37(), z_util(), prov132(), v4331(); } }), Table(() => { if ((false)) { const v4383 = v4384("RouterView"); return v4385(), v4386("div", null, [v4387(v4388).isAuth ? (v4389(), v4390(v4391, { 'key': 0 })) : v4392('', true), v4393(v4394).isAuth ? (v4395(), v4396("div", v4397, [v4398(v4399), v4400(v4383)])) : (v4401(), v4402("div", v4403, [v4404(v4383)])), v4405(v4406).isAuth ? (v4407(), v4408(v4409, { 'key': 3 })) : v4410('', true)]); } else v4305.closeWsClient(); }), (v4411, v4412) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Recordings" }), createVNode(Kt, { 'onOnProviderSelected': v4328, 'onOnServerChanged': srv90 }), createVNode(ho, { 'ref_key': "mp4Player", 'ref': v4314 }, null, 512), e('div', Em, [createVNode(he, { 'Icon': Et, 'text': 'Add Recording', 'onClick': v4354 })]), rec94.value ? (openBlock(), createBlock('div', Lm, [e("div", Dm, [createVNode(he, { 'onClick': v4335 }, { 'default': withModifiers(() => [isRef(createVNode(Xe, null, null, 512), [ [Spinner, v4336.value] ]), isRef(createVNode(Bt, null, null, 512), [ [Spinner, !v4336.value] ]), toDisplayString(' ' + useAttrs(v4336.value ? "Deselect All" : "Select All"), 1)]), '_': 1 }), rec91.value ? (openBlock(), Modal(Ft, { 'key': 0, 'Icon': Ke, 'onClick': v4334, 'text': 'Delete selection' })) : normalizeProps('', true)]), e('div', Gm, [createVNode(ut, { 'placeholder': "Search for recording stream name", 'modelValue': v4311.value, 'onUpdate:modelValue': v4412[0] || (v4412[0] = updRef60 => v4311.value = updRef60) }, null, 8, .modelValue)]), createVNode(Al, { 'modelValue': createTextVNode(v4323), 'onUpdate:modelValue': v4412[1] || (v4412[1] = updRef61 => onMounted(v4323) ? v4323.value = updRef61 : v4323 = updRef61), 'type': "recordings" }, null, 8, .modelValue), createTextVNode(v4323) ? (openBlock(), Modal(Am, { 'key': 0, 'selectedItems': v4313.value, 'recordings': rec94.value, 'onOnToggleSelection': modal22, 'onOnPlayVideo': modal20, 'onOnEditRecording': rec86, 'onOnStopRecording': prov134 }, null, 8, ['selectedItems', "recordings"])) : normalizeProps('', true), createTextVNode(v4323) ? normalizeProps('', true) : (openBlock(), createBlock("div", Rm, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(rec94.value, v4413 => (openBlock(), createBlock('div', { 'key': v4413.Id }, [createVNode(sm, { 'recording': v4413, 'selected': v4313.value.includes(v4413.Id), 'onOnToggleSelection': modal22, 'onOnPlayVideo': modal20, 'onOnEditRecording': rec86, 'onOnStopRecording': prov134 }, null, 8, ["recording", 'selected'])]))), 128))]))])) : (openBlock(), Modal(Fe, { 'key': 0, 'Icon': wt, 'message': "Currently there's no recordings on this provider." })), e("div", Nm, [e("div", jm, [e("div", Om, [e("div", Bm, [e('h3', Hm, useAttrs(v4318.value ? 'Edit' : "Add") + " Recording ", 1), e("button", { 'type': "button", 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), v4412[9] || (v4412[9] = e("span", { 'class': 'sr-only' }, "Close modal", -1))])]), e('div', Fm, [e("div", qm, [e("div", Wm, [v4412[10] || (v4412[10] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'Title', -1)), isRef(e('input', { 'type': 'text', 'onUpdate:modelValue': v4412[3] || (v4412[3] = updRef62 => rec85.title = updRef62), 'class': "block w-full -ps-2 py-1.5 border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'Title' }, null, 512), [ [Dropdown, rec85.title] ]), v4412[11] || (v4412[11] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Description", -1)), isRef(e('input', { 'type': "text", 'onUpdate:modelValue': v4412[4] || (v4412[4] = updRef63 => rec85.description = updRef63), 'class': 'block w-full -ps-2 py-1.5 border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': 'Description' }, null, 512), [ [Dropdown, rec85.description] ])]), e("div", zm, [e("div", null, [v4412[12] || (v4412[12] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Start date", -1)), e('div', Zm, [e("div", Km, [createVNode(Wt)]), e("input", { 'ref_key': "startDate", 'ref': v4319, 'id': "start-date", 'datepicker': '', 'type': 'text', 'value': prov129, 'class': "border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Start date" }, null, 512)])]), e("div", null, [v4412[13] || (v4412[13] = e("label", { 'for': "start-time", 'class': "block mb-2 text-sm font-medium text-white" }, "Start time", -1)), e('div', Jm, [e("div", Ym, [createVNode(bt)]), e('input', { 'ref_key': "startTime", 'ref': v4321, 'type': "time", 'id': "start-time", 'value': srv87, 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512)])])]), e('div', Qm, [e("div", null, [v4412[14] || (v4412[14] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "End date", -1)), e('div', Xm, [e('div', ep, [createVNode(Wt)]), e('input', { 'ref_key': "endDate", 'ref': v4320, 'id': 'end-date', 'datepicker': '', 'type': "text", 'value': prov129, 'class': "border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "End date" }, null, 512)])]), e('div', null, [v4412[15] || (v4412[15] = e("label", { 'for': "start-time", 'class': "block mb-2 text-sm font-medium text-white" }, "End time", -1)), e("div", tp, [e("div", lp, [createVNode(bt)]), e("input", { 'ref_key': 'endTime', 'ref': v4322, 'type': "time", 'id': 'end-time', 'value': srv87, 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512)])])]), isRef(e("div", op, [createTextVNode(v4306).getSelectedProviderId !== '' && createTextVNode(v4310) !== null ? (openBlock(), createBlock("div", sp, [v4412[16] || (v4412[16] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'Stream', -1)), isRef(e("select", { 'id': "type", 'onUpdate:modelValue': v4412[5] || (v4412[5] = stream231 => v4308.value = stream231), 'class': "bg-black border border-white/15 text-sm rounded-xl block px-3 py-2 placeholder-neutral-400 text-white w-full focus:ring-yellow-300 focus:border-yellow-300" }, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v4310), v4415 => (openBlock(), createBlock("option", { 'value': v4415.Id, 'key': v4415.Id }, useAttrs(v4415.Name), 9, ap))), 128))], 512), [ [onUnmounted, v4308.value] ])])) : normalizeProps('', true)], 512), [ [Spinner, !v4318.value] ]), isRef(e("div", rp, [v4308.value !== null ? (openBlock(), createBlock("div", np, [v4412[18] || (v4412[18] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Quality", -1)), isRef(e("select", { 'id': "type", 'onUpdate:modelValue': v4412[6] || (v4412[6] = updRef64 => v4309.value = updRef64), 'class': "bg-black border border-white/15 text-sm rounded-xl block px-3 py-2 placeholder-neutral-400 text-white w-full focus:ring-yellow-300 focus:border-yellow-300" }, [v4412[17] || (v4412[17] = e("option", { 'selected': '', 'value': "best" }, "Best", -1)), (openBlock(true), createBlock(Fragment, null, createCommentVNode(v4317.value, selRef10 => (openBlock(), createBlock("option", { 'selected': '', 'value': selRef10.Id, 'key': selRef10 }, useAttrs(selRef10.Desc), 9, ip))), 128))], 512), [ [onUnmounted, v4309.value] ])])) : normalizeProps('', true)], 512), [ [Spinner, !v4318.value] ]), e("div", dp, [createVNode(ke, { 'Icon': Xe, 'text': "Cancel", }), createVNode(he, { 'Icon': Mt, 'text': v4318.value ? "Save" : "Create", }, null, 8, .text)])])])])])]), createVNode(gt, { 'ref_key': "deleteModal", 'ref': v4316, 'message': v4315.value, 'id': "delete", 'onClick': srv88 }, null, 8, .message)], 64)); } }, cp = resolveComponent('users', { 'state': () => ({ 'notificationStore': it(), 'users': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null), 'response': withCtx(null) }), 'actions': { async 'getUsers'() { this.isLoading = true, this.error = null; try { const usr34 = await q.req(I.getApiUrl() + "/user/get"); this.users = usr34.data.Users; } catch (usr35) { this.error = usr35; } finally { this.isLoading = false; } }, async 'add'(v4418) { v4422 = { 'oHCCJ': "Error parsing media headers", 'uLqtu': "error", 'GEYJU': 'tkJKv', 'BABTs': "success", 'xjMMy': function(v4423, v4424) { return v4423 === v4424; }, 'gikTz': "RWnLA" }; this.isLoading = true, this.error = null; try { this.response = await q.req(I.getApiUrl() + "/user/add", v4418), this.notificationStore.showNotification("Added new user " + v4418.Username + " successfully.", "success") } catch (notif34) { if (v4422.xjMMy("RWnLA", "RWnLA")) this.error = notif34; else try { errRef114.provider.Headers2.Media = errRef115.parse(errRef116); } catch { errRef117.showNotification("Error parsing media headers", v4422.uLqtu); } } finally { this.isLoading = false; } }, async 'edit'(v4430) { this.isLoading = true, this.error = null; try { this.response = await q.req(I.getApiUrl() + "/user/edit", v4430), this.notificationStore.showNotification('Edited user ' + v4430.Username + " successfully.", "success"); } catch (usr36) { this.error = usr36; } finally { this.isLoading = false; } }, async 'delete'(usr37) { epg18 = { 'RxpSs': 'epg', 'ogYHA': function(epg19, epg20) { return epg19 === epg20; }, 'KZPuD': function(epg21, epg22) { return epg21 !== epg22; }, 'fxTXu': 'eApWL' }, usr38 = { 'Username': usr37.Username }; this.isLoading = true, this.error = null; try { this.response = await q.req(I.getApiUrl() + "/user/delete", usr38), this.notificationStore.showNotification("Deleted user " + usr37.Username + ' successfully.', "success"); } catch (notif35) { epg18.ogYHA("OSNCO", "OSNCO") ? this.error = notif35 : notif36.push({ 'name': epg18.RxpSs, 'params': { 'provider': stream232.provider, 'stream': stream233.stream.Id }, 'query': { 'server': stream234.serverId } }); } finally { if (epg18.KZPuD("zhTrT", epg18.fxTXu)) this.isLoading = false; else return v4433.currentSelectedStreamType; } } } }), mp = { 'name': "IconEditUser" }, pp = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function vp(v4434, v4435, v4436, v4437, v4438, v4439) { v4441 = { 'fhWZt': function(v4442) { return v4442(); }, 'aEzVF': function(v4443, v4444, v4445, v4446) { return v4443(v4444, v4445, v4446); }, 'ynUdA': "svg", 'EIwSe': function(v4447, v4448, v4449, v4450, v4451) { return v4447(v4448, v4449, v4450, v4451); }, 'htDDd': "path", 'fdpUc': "currentColor" }; return openBlock(), v4441.aEzVF(createBlock, "svg", pp, [...v4435[0] || (v4435[0] = [v4441.EIwSe(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "square", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': 'M7 19H5a1 1 0 0 1-1-1v-1a3 3 0 0 1 3-3h1m4-6a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm7.441 1.559a1.907 1.907 0 0 1 0 2.698l-6.069 6.069L10 19l.674-3.372 6.07-6.07a1.907 1.907 0 0 1 2.697 0Z' }, null, -1)])]); } const fp = J(mp, [ ["render", vp] ]), gp = { 'class': "h-full bg-linear-to-b bg-black p-4 rounded-xl overflow-auto border-white/15 border" }, hp = { 'class': 'flex flex-row gap-4 items-center' }, bp = { 'class': "flex flex-col grow space-y-2" }, wp = { 'class': "inline-flex gap-2" }, xp = { 'key': 0, 'class': 'max-w-12 font-mono text-[10px] text-white border border-red-600 bg-red-600 rounded-sm my-auto p-0.5 px-1 text-center' }, yp = { 'key': 1, 'class': 'max-w-12 font-mono bold text-[10px] text-white border border-blue-600 bg-blue-600 rounded-sm my-auto p-0.5 px-1 text-center' }, kp = { 'key': 2, 'class': "max-w-28 font-mono text-[10px] text-black border border-yellow-300 bg-yellow-300 rounded-sm my-auto p-0.5 px-1 text-center" }, Sp = { 'class': "text-medium text-white font-bold inline-flex" }, $p = { 'class': "text-sm text-white font-semibold inline-flex" }, Cp = { 'key': 1, 'class': "text-sm text-white font-semibold inline-flex" }, Mp = { 'class': "flex flex-col justify-end items-end space-y-2" }, Ap = { '__name': "ItemUser", 'props': .user, 'emits': ["onEditUser", "onDeleteUser"], 'setup'(usr39, { emit: usr40 }) { v4462 = usr39, v4464 = Sidebar(() => v4462.user.ProviderIds ? v4462.user.ProviderIds.length : false), return (usr43, usr44) => (openBlock(), createBlock('div', gp, [e("div", hp, [e("div", bp, [e("div", wp, [v4462.user.IsAdmin ? (openBlock(), createBlock("div", xp, ' Admin ')) : normalizeProps('', true), v4462.user.HasWebAccess ? (openBlock(), createBlock('div', yp, " Web ")) : normalizeProps('', true), !v4462.user.IsAdmin && !v4462.user.HasWebAccess ? (openBlock(), createBlock("div", kp, " No permissions ")) : normalizeProps('', true)]), e("div", null, [e('p', Sp, useAttrs(v4462.user.Username), 1)]), e('div', null, [usr44[2] || (usr44[2] = e('p', { 'class': "text-sm text-white font-light inline-flex" }, " Networks: \u00a0 ", -1)), e('p', $p, useAttrs(v4462.user.Network ? v4462.user.Network : " (All networks allowed)"), 1)]), e("div", null, [usr44[3] || (usr44[3] = e('p', { 'class': "text-sm text-white font-light inline-flex" }, " Providers: \u00a0 ", -1)), v4464.value ? (openBlock(true), createBlock(Fragment, { 'key': 0 }, createCommentVNode(v4462.user.ProviderIds, v4468 => (openBlock(), createBlock('p', { 'class': 'font-mono text-[9px] text-black border border-yellow-300 bg-yellow-300 rounded-sm my-auto p-0.5 px-1 mr-2 text-center inline-flex', 'key': v4468.Id }, useAttrs(v4468), 1))), 128)) : (openBlock(), createBlock('p', Cp, " No providers "))])]), e("div", Mp, [e("button", { 'class': "p-1.5 rounded-full hover:bg-yellow-300 text-white hover:text-black transition ease-in-out" }, [createVNode(fp)]), e("button", { 'class': "p-1.5 rounded-full hover:bg-red-700 transition ease-in-out", }, [createVNode(Ke, { 'class': 'text-white' })]), createVNode(Zt, { 'id': usr39.user.Username, 'name': "Playlist", 'token': v4462.user.AuthToken }, null, 8, ['id', "token"])])])])); } }, Ip = ['id', "data-dropdown-toggle"], Tp = { 'class': 'w-full text-left' }, Pp = { 'class': "flex flex-wrap gap-1" }, Vp = { 'key': 0, 'class': "flex text-neutral-400 text-xs" }, Up = .id, _p = { 'class': "p-3 space-y-1 text-sm text-gray-200" }, Ep = { 'class': "flex p-2 rounded-xl hover:bg-neutral-50/10" }, Lp = { 'class': 'flex items-center h-5' }, Dp = ['id', 'value'], Gp = { 'class': "ms-2 text-sm" }, Rp = ["for"], Np = { 'class': "text-white" }, jp = { '__name': "DropdownProviderSelector", 'props': ["user", "providers"], 'emits': .onSelectedProvider, 'setup'(prov136, { emit: prov137 }) { prov140 = { 'ViBhG': function(prov141) { return prov141(); }, 'kMkBM': function(v4471, v4472) { return v4471 === v4472; }, 'qoDzZ': "KsrAI", 'MClrB': "ZoZHN", 'cqJJo': function(v4473, v4474, v4475) { return v4473(v4474, v4475); }, 'CUYFs': "onSelectedProvider", 'bbDiw': function(v4476, v4477, v4478, v4479) { return v4476(v4477, v4478, v4479); }, 'afveN': function(v4480, v4481) { return v4480(v4481); } }, v4482 = prov136, v4483 = withCtx([]), usr45 = prov137; Carousel(() => v4482.user, () => { usr46(); }); const usr46 = () => { const usr47 = { 'zVPhA': function(usr48, usr49, usr50) { return usr48(usr49, usr50); } }; v4483.value = v4482.user.ProviderIds ? v4482.user.ProviderIds : [], prov140.bbDiw(Carousel, v4483, prov142 => { prov140.kMkBM("KsrAI", "ZoZHN") ? prov143('onCheckFullStatus', prov144.stream.Status) : prov140.cqJJo(usr45, "onSelectedProvider", prov142); }, { 'deep': true }); }; return prov140.afveN(withDirectives, () => { resolveDirective(); }), (v4484, v4485) => (openBlock(), createBlock(Fragment, null, [e('button', { 'id': "dropdown-button-" + v4482.user.Id, 'data-dropdown-toggle': "dropdown-" + v4482.user.Id, 'class': "text-white bg-black rounded-xl w-full text-sm px-3 py-2 flex flex-row items-center justify-between border border-white/15 hover:bg-neutral-50/10", 'type': "button" }, [e("span", Tp, [v4485[1] || (v4485[1] = e("span", { 'class': "text-left" }, "Provider", -1)), e("div", Pp, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v4483.value, v4486 => (openBlock(), createBlock("span", { 'class': "text-yellow-300 text-xs", 'key': v4486 }, useAttrs(v4486) + " | ", 1))), 128))]), v4483.value.length ? normalizeProps('', true) : (openBlock(), createBlock('span', Vp, "None selected"))]), createVNode(dl)], 8, Ip), e("div", { 'id': "dropdown-" + v4482.user.Id, 'class': "z-40 hidden min-w-64 w-auto max-h-48 overflow-y-scroll no-scrollbar bg-black border border-white/15 rounded-xl shadow-xl" }, [e('ul', _p, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v4482.providers, v4487 => (openBlock(), createBlock('li', { 'key': v4487.Id }, [e("div", Ep, [e("div", Lp, [isRef(e("input", { 'id': v4487.Id, 'type': "checkbox", 'value': v4487.Id, 'onUpdate:modelValue': v4485[0] || (v4485[0] = updRef65 => v4483.value = updRef65), 'class': 'w-4 h-4 text-yellow-300 bg-black/30 border-gray-300 rounded-sm cursor-pointer' }, null, 8, Dp), [ [renderSlot, v4483.value] ])]), e("div", Gp, [e("label", { 'for': v4487.Id, 'class': "font-medium text-white cursor-pointer" }, [e('div', Np, useAttrs(v4487.Name), 1)], 8, Rp)])])]))), 128))])], 8, Up)], 64)); } }, Op = { 'class': "flex flex-row" }, Bp = { 'class': "grid grid-cols-1 md:grid-cols-1 lg:grid-cols-2 xl:grid-cols-2 2xl:grid-cols-4 gap-4 mt-5" }, Hp = { 'id': "add-edit-user", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, Fp = { 'class': "relative p-4 w-full max-w-xl max-h-full" }, qp = { 'class': "relative rounded-xl shadow-xl bg-black" }, Wp = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, zp = { 'class': "text-lg font-semibold text-white" }, Zp = { 'class': "p-4 md:p-5" }, Kp = { 'class': "grid gap-4 mb-4 grid-cols-2" }, Jp = { 'class': "col-span-2" }, Yp = { 'class': 'col-span-2' }, Qp = { 'class': "col-span-2" }, Xp = { 'class': "col-span-2" }, ev = { 'class': "col-span-2" }, tv = { 'class': "inline-flex items-center cursor-pointer" }, lv = { 'class': "inline-flex items-center cursor-pointer ml-4" }, ov = { 'class': 'flex flex-row justify-end gap-4' }, sv = { 'id': "delete-user-modal", 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, av = { 'class': 'relative p-4 w-full max-w-md max-h-full' }, rv = { 'class': "relative rounded-xl shadow-xl bg-black" }, nv = { 'class': "p-4 md:p-5 text-center" }, iv = { 'class': 'mb-5 font-normal text-white' }, dv = .disabled, uv = { '__name': "UsersView", 'setup'(v4488) { v4640 = cp(), v4641 = Ae(), v4642 = He(); let v4643 = withCtx(false); const v4644 = withCtx(Object), v4645 = withCtx(null); let v4646 = {}, v4647 = {}; const v4648 = prov149 => { v4644.value.ProviderIds = prov149; }, prov150 = async () => { if ((false)) return v4665(), v4666("svg", v4667, [...v4668[0] || (v4669[0] = [v4670("path", { 'd': "M16 10L18.5768 8.45392C19.3699 7.97803 19.7665 7.74009 20.0928 7.77051C20.3773 7.79703 20.6369 7.944 20.806 8.17433C21 8.43848 21 8.90095 21 9.8259V14.1741C21 15.099 21 15.5615 20.806 15.8257C20.6369 16.056 20.3773 16.203 20.0928 16.2295C19.7665 16.2599 19.3699 16.022 18.5768 15.5461L16 14M6.2 18H12.8C13.9201 18 14.4802 18 14.908 17.782C15.2843 17.5903 15.5903 17.2843 15.782 16.908C16 16.4802 16 15.9201 16 14.8V9.2C16 8.0799 16 7.51984 15.782 7.09202C15.5903 6.71569 15.2843 6.40973 14.908 6.21799C14.4802 6 13.9201 6 12.8 6H6.2C5.0799 6 4.51984 6 4.09202 6.21799C3.71569 6.40973 3.40973 6.71569 3.21799 7.09202C3 7.51984 3 8.07989 3 9.2V14.8C3 15.9201 3 16.4802 3.21799 16.908C3.40973 17.2843 3.71569 17.5903 4.09202 17.782C4.51984 18 5.07989 18 6.2 18Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': 'round' }, null, -1)])]); else try { if ((false)) return v4671(), v4672("svg", v4673, [...v4674[0] || (v4675[0] = [v4676('g', { 'transform': "translate(0.000000,1920.000000) scale(0.100000,-0.100000)", 'fill': "currentColor", 'stroke': "none" }, [v4677("path", { 'd': 'M9315 16380 c-1426 -57 -2824 -574 -3932 -1457 -274 -217 -620 -543\n-841 -790 -596 -667 -1061 -1449 -1350 -2273 -48 -136 -139 -429 -147 -474\nl-6 -32 258 -68 c142 -38 323 -86 402 -108 79 -22 147 -36 151 -31 4 4 21 60\n40 123 155 541 426 1124 747 1607 228 344 437 598 752 914 246 245 393 374\n646 564 748 562 1625 940 2545 1099 368 63 592 81 1020 80 483 0 773 -29 1215\n-121 1495 -311 2841 -1217 3699 -2491 405 -602 687 -1240 855 -1934 47 -195\n115 -568 103 -568 -4 0 -952 668 -1054 743 -14 11 -30 17 -36 13 -5 -3 -47\n-59 -93 -123 -46 -65 -150 -212 -232 -327 -83 -116 -150 -215 -151 -222 -1\n-12 62 -59 389 -290 94 -67 312 -221 485 -344 173 -123 351 -249 395 -280 44\n-31 260 -184 479 -339 220 -155 404 -283 409 -284 10 -2 50 52 199 263 45 63\n93 131 107 151 130 184 500 706 587 829 61 85 188 265 284 400 95 135 216 305\n268 378 52 73 93 134 91 136 -2 2 -134 95 -294 208 -159 112 -313 221 -341\n241 l-52 37 -312 -441 -313 -442 -38 189 c-327 1650 -1241 3103 -2589 4115\n-985 740 -2143 1193 -3370 1318 -179 19 -643 43 -750 39 -25 -1 -126 -4 -225\n-8z' }), v4678("path", { 'd': 'M8867 12533 c-25 -65 -150 -386 -277 -713 -283 -725 -709 -1819\n-1070 -2745 -147 -379 -428 -1101 -624 -1604 -196 -502 -356 -915 -356 -917 0\n-2 294 -4 653 -4 l654 0 162 448 c90 246 187 512 216 592 29 80 68 188 87 240\nl33 95 1223 0 1223 0 45 -115 c24 -63 143 -371 263 -685 l219 -570 672 -3\nc638 -2 672 -1 666 15 -11 27 -1586 3962 -2039 5093 l-395 985 -655 3 -654 2\n-46 -117z m894 -1869 c110 -296 218 -586 239 -644 21 -58 117 -318 214 -579\n97 -260 176 -475 176 -477 0 -2 -373 -4 -830 -4 -456 0 -830 1 -830 3 0 7 810\n2228 816 2238 3 6 8 8 10 6 2 -2 95 -247 205 -543z' }), v4679("path", { 'd': 'M2939 9888 c-102 -145 -438 -618 -746 -1053 -308 -434 -567 -802\n-576 -816 l-17 -26 62 -44 c35 -24 189 -133 342 -242 268 -191 280 -198 296\n-180 14 14 437 610 576 810 16 23 32 42 35 43 3 0 12 -33 19 -72 21 -125 88\n-403 135 -567 287 -1003 793 -1917 1489 -2686 913 -1010 2097 -1720 3411\n-2044 751 -185 1536 -239 2325 -160 1219 122 2387 579 3375 1322 426 320 854\n731 1181 1132 577 708 991 1489 1254 2370 27 88 45 163 42 167 -8 8 -803 221\n-807 216 -1 -2 -15 -43 -29 -93 -184 -616 -442 -1172 -777 -1670 -121 -181\n-130 -192 -258 -355 -456 -580 -1001 -1061 -1621 -1432 -681 -407 -1430 -675\n-2205 -787 -314 -46 -464 -55 -855 -55 -479 0 -746 25 -1168 110 -2390 480\n-4263 2399 -4682 4798 -11 65 -19 121 -16 123 2 2 91 -58 197 -133 686 -487\n882 -625 889 -627 8 -2 51 56 215 288 54 77 138 196 187 263 48 68 88 127 88\n130 -1 6 -189 141 -695 497 -47 33 -304 215 -572 405 -269 189 -558 394 -643\n454 -85 60 -175 124 -199 143 -24 18 -49 33 -55 33 -7 0 -95 -118 -197 -262z' })], -1)])]); else await v4640.getUsers(); } catch (v4680) { console.error("Error fetching users:", v4680); } }, v4681 = v4682 => { (true) ? (v4645.value = v4682.Username, v4644.value = { ...v4682 }) : this.error = v4683; }, v4684 = v4685 => { v4643.value = !!v4685, v4643.value ? v4681(v4685) : v4644.value = {}, v4646.toggle(); }, v4686 = () => { const v4687 = { 'oUtMU': "config" }; (true) ? (v4644.value = {}, v4646.hide()) : v4688.push({ 'name': v4687.oUtMU, 'params': { 'provider': prov153.provider, 'type': stream235.epg.StreamType }, 'query': { 's': stream236.epg.StreamId + '$', 'server': stream237.serverId } }); }, stream238 = () => { const stream239 = document.getElementById("add-edit-user"), stream240 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v4689 = { 'id': "add-edit-user", 'override': true }; v4646 = new initFlowbite(stream239, stream240, v4689); }, v4690 = () => { const v4691 = document.getElementById("delete-user-modal"), v4692 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v4693 = { 'id': "delete-user-modal", 'override': true }; v4647 = new initFlowbite(v4691, v4692, v4693); }, v4694 = v4695 => { (v4695 != null) && (v4644.value = v4695), v4647.toggle(); }, togRef38 = async () => { await v4640.add(v4644.value), await prov150(), v4684(); }, togRef39 = async () => { v4698 = { 'XXmvY': function(v4699, v4700) { return v4699(v4700); }, 'sujIN': function(v4701) { return v4701(); }, 'YtgEI': function(v4702, v4703, v4704, v4705, v4706) { return v4702(v4703, v4704, v4705, v4706); }, 'PehCJ': "div", 'yjRYW': function(v4707, v4708, v4709, v4710) { return v4707(v4708, v4709, v4710); }, 'lidlm': function(v4711, v4712, v4713, v4714, v4715, v4716) { return v4711(v4712, v4713, v4714, v4715, v4716); }, 'Qivld': "linear", 'CMqSG': function(v4717) { return v4717(); }, 'pnzfh': function(v4718, v4719, v4720, v4721) { return v4718(v4719, v4720, v4721); }, 'HOWQR': function(v4722, v4723, v4724, v4725) { return v4722(v4723, v4724, v4725); }, 'UDEKn': "button", 'xjVec': "text-white bg-yellow-300 hover:bg-yellow-400 rounded-full p-1 transition-all ease-in-out", 'yLZQP': function(v4726, v4727, v4728) { return v4726(v4727, v4728); }, 'YWqXY': "text-black", 'bbjGX': "text-red-600", 'OkYOx': function(v4729, v4730) { return (v4729 + v4730); }, 'KkqKs': "delete-provider-modal-", 'LRGkk': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full blur-navbar", 'hmFaH': function(v4731, v4732, v4733, v4734) { return v4731(v4732, v4733, v4734); }, 'xCgZb': function(v4735, v4736, v4737, v4738) { return v4735(v4736, v4737, v4738); }, 'nwVzt': 'absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center', 'vSUiZ': function(parent5, parent6) { return parent5(parent6); }, 'porXX': "span", 'YbUtx': "sr-only", 'VqJTD': "Close modal", 'cwwyR': function(v4739, v4740, v4741, v4742) { return v4739(v4740, v4741, v4742); }, 'uokBv': "mb-5 text-white inline", 'zgCyK': " Are you sure you want to delete provider ", 'ZySUP': function(v4743, v4744, v4745, v4746, v4747) { return v4743(v4744, v4745, v4746, v4747); }, 'AfRlH': function(v4748, v4749, v4750, v4751, v4752) { return v4748(v4749, v4750, v4751, v4752); }, 'owFGj': "text-white bg-red-600 hover:bg-red-800 rounded-xl text-sm inline-flex items-center px-4 py-2 text-center", 'EpeSD': " Yes ", 'JibLa': function(v4753, v4754, v4755, v4756) { return v4753(v4754, v4755, v4756); }, 'OfDdd': "py-2 px-4 ms-3 text-sm font-medium text-black bg-yellow-300 rounded-xl hover:bg-yellow-400", 'DiVyP': function(v4757, v4758, v4759, v4760, v4761, v4762) { return v4757(v4758, v4759, v4760, v4761, v4762); }, 'ChxBt': "true", 'TjnLS': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full", 'BTZfY': function(v4763, v4764, v4765, v4766) { return v4763(v4764, v4765, v4766); }, 'LIzAo': " Edit Provider ", 'gvghS': function(v4767, v4768, v4769, v4770) { return v4767(v4768, v4769, v4770); }, 'jWPsm': "label", 'rWque': "username", 'GeHBN': "block mb-2 text-sm font-medium text-white", 'aHJNk': "Name", 'NazUx': function(v4771, v4772, v4773) { return v4771(v4772, v4773); }, 'nXRXN': "name", 'ImkRR': "new-name", 'yfhEu': function(v4774, v4775, v4776, v4777, v4778) { return v4774(v4775, v4776, v4777, v4778); }, 'ghYmz': "img", 'NBLLe': function(v4779, v4780, v4781, v4782, v4783, v4784) { return v4779(v4780, v4781, v4782, v4783, v4784); }, 'MBYyl': "dropzone-file-", 'HqkHu': 'flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out', 'vJxpM': "w-full object-contain overflow-hidden", 'Iakot': "Image Preview", 'GExkI': function(transRef16, transRef17) { return transRef16(transRef17); }, 'cQzKT': "mb-2 text-sm text-neutral-400", 'aKcms': "font-semibold", 'oGjqU': function(v4785, v4786) { return (v4785 + v4786); }, 'AtmbF': 'file', 'GQWwi': "hidden", 'qkLmq': function(v4787, v4788, v4789, v4790) { return v4787(v4788, v4789, v4790); }, 'zGltZ': "Overlay", 'ceDMa': function(v4791, v4792, v4793, v4794, v4795, v4796) { return v4791(v4792, v4793, v4794, v4795, v4796); }, 'Mueaq': "dropzone-file-overlay-", 'xXlmj': function(v4797) { return v4797(); }, 'pNedy': function(v4798) { return v4798(); }, 'eYDhS': function(v4799, v4800, v4801, v4802) { return v4799(v4800, v4801, v4802); }, 'AicFK': function(v4803, v4804) { return v4803(v4804); }, 'BruIV': function(v4805, v4806, v4807, v4808) { return v4805(v4806, v4807, v4808); }, 'fuSJM': "Click to upload", 'VCKlV': "input", 'DFEek': function(v4809, v4810) { return v4809 + v4810; }, 'QzIjV': "Cancel", 'DCUKD': function(v4811, v4812, v4813) { return v4811(v4812, v4813); }, 'qrhYb': "Save" }; if ((false)) { const v4814 = v4815("router-link"); return v4816(), v4817(v4818, null, [v4819("div", v4820, [v4821("div", v4822, [v4823("div", v4824, [v4825(v4814, { 'to': { 'name': "linear", 'params': { 'provider': prov154.provider.Id }, 'query': { 'server': prov155.serverId } } }, { 'default': srv91(() => [srv92(srv93(srv94), { 'class': "w-full aspect-square object-contain", 'src': srv95.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src), v4826("div", v4827, v4828(v4829.provider.Name), 1)]), '_': 1 }, 8, .to)])]), v4830.isAdmin ? (v4831(), v4832("div", v4833, [v4834("div", v4835, [v4836("button", { 'class': "text-white bg-yellow-300 hover:bg-yellow-400 rounded-full p-1 transition-all ease-in-out", 'onClick': v4837 }, [v4838(v4839, { 'class': "text-black" })]), v4840("button", { 'class': "text-white ml-2 bg-white hover:bg-gray-300 p-1 rounded-full transition-all ease-in-out", 'onClick': v4841 }, [v4842(v4843, { 'class': "text-red-600" })])])])) : v4844('', true)]), v4845("div", { 'id': v4698.OkYOx("delete-provider-modal-", v4846.provider.Id), 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full blur-navbar" }, [v4847("div", v4848, [v4849("div", v4850, [v4851("button", { 'onClick': v4852, 'type': "button", 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [v4853(v4854), v4855[3] || (v4856[3] = v4857("span", { 'class': "sr-only" }, "Close modal", -1))]), v4858("div", v4859, [v4860(v4861), v4862[4] || (v4863[4] = v4864('h3', { 'class': "mb-5 text-white inline" }, " Are you sure you want to delete provider ", -1)), v4865('h3', v4866, v4867(v4868.provider.Name), 1), v4869[5] || (v4870[5] = v4871('h3', { 'class': 'mb-5 text-white inline' }, '?', -1)), v4872("div", v4873, [v4874("button", { 'type': 'button', 'class': "text-white bg-red-600 hover:bg-red-800 rounded-xl text-sm inline-flex items-center px-4 py-2 text-center" }, " Yes "), v4880("button", { 'onClick': v4881, 'type': "button", 'class': "py-2 px-4 ms-3 text-sm font-medium text-black bg-yellow-300 rounded-xl hover:bg-yellow-400" }, " No ")])])])])], 8, v4882), v4883("div", { 'id': v4698.OkYOx('edit-provider-modal-', prov156.provider.Id), 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, [prov157("div", v4884, [v4885("div", v4886, [v4887("div", v4888, [v4889('h3', v4890, v4698.OkYOx(" Edit Provider ", v4891(v4892.provider.Name)), 1), v4893("button", { 'type': "button", 'onClick': v4894, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [v4895(v4896), v4897[6] || (v4898[6] = v4899("span", { 'class': "sr-only" }, "Close modal", -1))])]), v4900("div", v4901, [v4902("div", v4903, [v4904("div", v4905, [v4906[7] || (v4907[7] = v4908("label", { 'for': "username", 'class': "block mb-2 text-sm font-medium text-white" }, "Name", -1)), v4909(v4910("input", { 'type': "text", 'name': "name", 'id': "name", 'onUpdate:modelValue': updRef66[1] || (updRef67[1] = updRef68 => updRef69.value = updRef68), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': 'Type provider name' }, null, 512), [ [prov158, prov159.value] ])]), prov160("div", prov161, [prov162[9] || (prov163[9] = v4911("label", { 'for': "img", 'class': "block mb-2 text-sm font-medium text-white" }, "Logo", -1)), v4912("label", { 'for': "dropzone-file-" + v4913.provider.Id, 'class': "flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, [v4914.value ? (v4915(), v4916("img", { 'key': 0, 'class': "w-full object-contain overflow-hidden", 'src': v4917.value, 'alt': "Image Preview" }, null, 8, v4918)) : (v4919(), v4920("div", v4921, [v4922(v4923), v4924[8] || (v4925[8] = v4926('p', { 'class': "mb-2 text-sm text-neutral-400" }, [v4927("span", { 'class': "font-semibold" }, "Click to upload")], -1))])), v4928("input", { 'onChange': v4929, 'id': v4698.oGjqU("dropzone-file-", v4930.provider.Id), 'type': "file", 'class': "hidden" }, null, 40, v4931)], 8, v4932)]), v4933("div", v4934, [v4935[11] || (v4936[11] = v4937("label", { 'for': "img", 'class': "block mb-2 text-sm font-medium text-white" }, "Overlay", -1)), v4938("label", { 'for': v4698.OkYOx("dropzone-file-overlay-", v4939.provider.Id), 'class': "flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, [v4940.value ? (v4941(), v4942("img", { 'key': 0, 'class': "w-full object-contain overflow-hidden", 'src': v4943.value, 'alt': "Image Preview" }, null, 8, v4944)) : (v4945(), v4946("div", v4947, [v4948(v4949), v4950[10] || (v4951[10] = v4952('p', { 'class': 'mb-2 text-sm text-neutral-400' }, [v4953("span", { 'class': "font-semibold" }, "Click to upload")], -1))])), v4954("input", { 'onChange': v4955, 'id': ("dropzone-file-overlay-" + v4956.provider.Id), 'type': "file", 'class': "hidden" }, null, 40, v4957)], 8, v4958)]), v4959("div", v4960, [v4961(v4962, { 'Icon': v4963, 'text': "Cancel", 'onClick': v4964 }), v4965(v4966, { 'Icon': v4967, 'text': "Save", })])])])])])], 8, v4973)], 64); } else (v4645.value !== v4644.value.Username) && (v4644.value.NewUserName = v4644.value.Username, v4644.value.Username = v4645.value), await v4640.edit(v4644.value), v4640.response.status === 200 ? await prov150() : console.error("Request editUser failed:", v4640.response.status), v4684(); }, resp3 = async () => { await v4640["delete"](v4644.value), await prov150(), v4644.value = Object, v4694(); }; withDirectives(() => { z_util(), ref(), stream238(), v4690(); }); const prov164 = async () => { await v4641.getAllProviders(); }; return prov150(), prov164(), Carousel(() => v4642.getSelectedServer, () => { (true) ? (prov150(), prov164()) : v4974.replace({ 'name': "providers", 'query': { 'server': srv96.Id } }); }), (srv97, srv98) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Users" }), e("div", Op, [createVNode(he, { 'Icon': Et, 'text': "Add User", })]), e("div", Bp, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v4640).users, v4976 => (openBlock(), createBlock("div", { 'key': v4976.Username }, [createVNode(Ap, { 'user': v4976, 'onOnEditUser': usr54 => v4684(v4976), 'onOnDeleteUser': usr55 => v4694(v4976) }, null, 8, ["user", 'onOnEditUser', 'onOnDeleteUser'])]))), 128))]), e('div', Hp, [e('div', Fp, [e("div", qp, [e("div", Wp, [e('h3', zp, useAttrs(createTextVNode(v4643) ? "Edit " + v4645.value : "Add User"), 1), e('button', { 'type': "button", 'onClick': v4686, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), srv98[8] || (srv98[8] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("div", Zp, [e("div", Kp, [e("div", Jp, [srv98[9] || (srv98[9] = e("label", { 'for': "username", 'class': 'block mb-2 text-sm font-medium text-white' }, "Username", -1)), isRef(e("input", { 'onUpdate:modelValue': srv98[1] || (srv98[1] = usr56 => v4644.value.Username = usr56), 'type': "text", 'class': 'border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "new-username", 'placeholder': "Type a username" }, null, 512), [ [Dropdown, v4644.value.Username] ])]), e('div', Yp, [srv98[10] || (srv98[10] = e("label", { 'for': "password", 'class': "block mb-2 text-sm font-medium text-white" }, "Password", -1)), isRef(e("input", { 'onUpdate:modelValue': srv98[2] || (srv98[2] = updRef70 => v4644."" = updRef70), 'type': 'text', 'class': 'border border-white/15 text-white rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "new-password", 'placeholder': "Type a password" }, null, 512), [ [Dropdown, v4644.""] ])]), e("div", Qp, [srv98[11] || (srv98[11] = e('label', { 'for': "networks-ips", 'class': "block mb-2 text-sm font-medium text-white" }, "Networks or IPs", -1)), isRef(e("input", { 'onUpdate:modelValue': srv98[3] || (srv98[3] = updRef71 => v4644.value.Network = updRef71), 'type': 'text', 'class': "border border-white/15 text-white rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': 'new-networks-ips', 'placeholder': "192.168.10.1/24" }, null, 512), [ [Dropdown, v4644.value.Network] ])]), e("div", Xp, [srv98[12] || (srv98[12] = e('label', { 'for': 'providers', 'class': "block mb-2 text-sm font-medium text-white" }, "Providers", -1)), createVNode(jp, { 'user': v4644.value, 'providers': createTextVNode(v4641).providers, 'onOnSelectedProvider': v4648 }, null, 8, ["user", "providers"])]), e('div', ev, [srv98[17] || (srv98[17] = e('label', { 'for': "category", 'class': "block mb-2 text-sm font-medium text-white" }, "Permissions", -1)), e("label", tv, [isRef(e("input", { 'onUpdate:modelValue': srv98[4] || (srv98[4] = updRef72 => v4644.value.IsAdmin = updRef72), 'type': "checkbox", 'value': '', 'class': "sr-only peer" }, null, 512), [ [renderSlot, v4644.value.IsAdmin] ]), srv98[13] || (srv98[13] = e("div", { 'class': "relative w-11 h-6 bg-slate-800 rounded-full peer peer-checked:after:translate-x-full peer-checked:rtl:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-white/15 after:border after:rounded-full after:h-5 after:w-5 after:transition-all border-white/15 peer-checked:bg-yellow-300" }, null, -1)), srv98[14] || (srv98[14] = e("span", { 'class': "ms-3 text-sm font-medium text-white" }, "Admin", -1))]), e("label", lv, [isRef(e("input", { 'onUpdate:modelValue': srv98[5] || (srv98[5] = updRef73 => v4644.value.HasWebAccess = updRef73), 'type': "checkbox", 'value': '', 'class': "sr-only peer" }, null, 512), [ [renderSlot, v4644.value.HasWebAccess] ]), srv98[15] || (srv98[15] = e("div", { 'class': 'relative w-11 h-6 bg-slate-800 rounded-full peer peer-checked:after:translate-x-full peer-checked:rtl:after:-translate-x-full peer-checked:after:border-white after:content-[\x27\x27] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-white/15 after:border after:rounded-full after:h-5 after:w-5 after:transition-all border-white/15 peer-checked:bg-yellow-300' }, null, -1)), srv98[16] || (srv98[16] = e("span", { 'class': 'ms-3 text-sm font-medium text-white' }, "Web", -1))])])]), e("div", ov, [createVNode(ke, { 'Icon': Xe, 'text': "Cancel", 'onClick': v4686 }), createVNode(he, { 'Icon': Mt, 'text': createTextVNode(v4643) ? 'Save' : "Create", 'disabled': createTextVNode(v4640).isLoading }, null, 8, ["text", 'disabled'])])])])])]), e("div", sv, [e("div", av, [e("div", rv, [e("button", { 'onClick': v4694, 'type': "button", 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), srv98[18] || (srv98[18] = e("span", { 'class': "sr-only" }, "Close modal", -1))]), e("div", nv, [createVNode(At), e('h3', iv, ' Are you sure you want to delete ' + useAttrs(v4644.value.Username) + '? ', 1), e("button", { 'onClick': srv98[7] || (srv98[7] = loadRef62 => resp3()), 'disabled': createTextVNode(v4640).isLoading, 'type': "button", 'class': "text-white bg-red-600 hover:bg-red-800 rounded-xl text-sm inline-flex items-center px-4 py-2 text-center" }, " Yes ", 8, dv), e("button", { 'onClick': v4694, 'type': "button", 'class': 'py-2 px-4 ms-3 text-sm font-medium text-black bg-yellow-300 rounded-xl hover:bg-yellow-400' }, ' No ')])])])])], 64)); } }, cv = resolveComponent("provider-accounts", { 'state': () => ({ 'notificationStore': it(), 'accounts': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null) }), 'actions': { async 'get'(acct12) { prov165 = { 'ProviderId': acct12 }; this.isLoading = true, this.error = null; try { const prov166 = await q.req(I.getApiUrl() + "/account/get", prov165); this.accounts = prov166.data?..ScriptAccounts; } catch (errRef118) { this.error = errRef118; } finally { this.isLoading = false; } }, async 'add'(v4978, v4979) { prov167 = { 'ProviderId': v4978, 'Account': v4979 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/account/add", prov167), this.notificationStore.showNotification("Added new account in provider " + v4978 + " successfully.", "success") } catch (apiRef12) { this.error = apiRef12; } finally { this.isLoading = false; } }, async 'edit'(loadRef63, loadRef64, loadRef65) { prov168 = { 'ProviderId': loadRef63, 'ScriptAccountsUser': loadRef65, 'Account': loadRef64 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/account/edit", prov168), this.notificationStore.showNotification("Edited account in provider " + loadRef63 + " successfully.", "success"); } catch (notif37) { this.error = notif37; } finally { this.isLoading = false; } }, async 'delete'(errRef124, errRef125) { prov169 = { 'ProviderId': errRef124, 'ScriptAccountsUser': errRef125 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/account/delete', prov169), this.notificationStore.showNotification("Deleted account in provider " + errRef124 + " successfully.", "success") } catch (epg24) { this.error = epg24; } finally { this.isLoading = false; } }, async 'login'(auth38, auth39) { v5006 = { 'XwZUj': "config", 'VzjCu': "linear", 'LZyVB': function(v5007, v5008) { return v5007 !== v5008; }, 'JLZFv': 'JgoKr' }, prov170 = { 'ProviderId': auth38, 'ScriptAccountsUser': auth39 }; this.isLoading = true, this.error = null; try { if (v5006.LZyVB("JgoKr", "JgoKr")) acct19.push({ 'name': v5006.XwZUj, 'params': { 'provider': prov171.provider, 'type': "linear" }, 'query': { 's': stream241.stream.Id + '$', 'server': stream242.serverId } }); else return await q.req(I.getApiUrl() + "/account/login", prov170); } catch (stream243) { return this.error = stream243, stream243; } finally { this.isLoading = false; } }, async 'pair'(v5009, v5010) { modal25 = { 'yYRSE': 'logout-modal', 'sehol': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'xwjAQ': function(modal26, modal27) { return modal26 !== modal27; }, 'RdlVU': 'IkUOP' }, prov172 = { 'ProviderId': v5009, 'ScriptAccountsUser': v5010 }; this.isLoading = true, this.error = null; try { return await q.req(I.getApiUrl() + "/account/pairstart", prov172); } catch (v5017) { return this.error = v5017, v5017; } finally { if (modal25.xwjAQ("RMkeU", modal25.RdlVU)) this.isLoading = false; else { const elRef27 = elRef28.getElementById("logout-modal"), elRef29 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, } } }, async 'pairInput'(v5021, v5022) { prov173 = { 'Input': v5021, 'ProviderId': v5022 }; this.isLoading = true, this.error = null; try { return await q.req(I.getApiUrl() + "/account/pairinput", prov173) } catch (errRef127) { return this.error = errRef127, errRef127; } finally { this.isLoading = false; } }, async 'pairStop'(errRef128) { const errRef129 = { 'orQqG': 'Error retrieving o11-token from Local Storage:', 'lQurv': 'duaDh', 'eaQQD': 'BRosw' }, prov176 = { 'ProviderId': errRef128 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/account/pairstop", prov176); } catch (prov177) { return this.error = prov177, prov177; } finally { this.isLoading = false; } }, async 'getPairStatus'(statRef44) { statRef47 = { 'vWZng': function(statRef48, statRef49) { return statRef48 !== statRef49; }, 'SLLkQ': "hkyGX" }, prov178 = { 'ProviderId': statRef44 }; this.isLoading = true, this.error = null; try { return await q.req(I.getApiUrl() + "/account/pairstatus", prov178); } catch (v5026) { if (statRef47.vWZng(statRef47.SLLkQ, statRef47.SLLkQ)) v5027.value = v5028.target.result, v5029.value = v5030.target.result; else return this.error = v5026, v5026; } finally { this.isLoading = false; } }, async 'disableAll'(loadRef69) { loadRef71 = { 'FGRvi': "success", 'TQxoX': function(v5031, v5032) { return v5031 === v5032; }, 'WdSrD': "ectxk" }, prov179 = { 'ProviderId': loadRef69 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/account/disableall", prov179), this.notificationStore.showNotification("Disabled all accounts in " + loadRef69 + " successfully.", loadRef71.FGRvi); } catch (notif40) { this.error = notif40; } finally { loadRef71.TQxoX(loadRef71.WdSrD, loadRef71.WdSrD) ? this.isLoading = false : this.error = loadRef72; } }, async 'enableAll'(loadRef73) { prov180 = { 'ProviderId': loadRef73 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/account/enableall', prov180), this.notificationStore.showNotification('Enabled all accounts in ' + loadRef73 + " successfully.", "success"); } catch (acct20) { this.error = acct20; } finally { this.isLoading = false; } }, async 'deleteDisabled'(errRef130) { delRef25 = { 'ZoNnI': 'success', 'iGBaM': function(delRef26, v5035) { return delRef26 !== v5035; }, 'wcibi': "MZcbc" }, prov181 = { 'ProviderId': errRef130 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + '/account/deletedisabled', prov181), this.notificationStore.showNotification('Deleted disabled accounts in ' + errRef130 + ' successfully.', delRef25.ZoNnI); } catch (acct21) { if (delRef25.iGBaM(delRef25.wcibi, delRef25.wcibi)) return this.error = acct22, acct23; else this.error = acct21; } finally { this.isLoading = false; } }, async 'importAccounts'(acct24, acct25, acct26) { const acct27 = { 'BOWbo': "success" }, prov182 = { 'ProviderId': acct24, 'FileName': acct25, 'AccountsImport': acct26 }; this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/account/import", prov182), this.notificationStore.showNotification('Imported accounts in ' + acct24 + " successfully.", acct27.BOWbo); } catch (acct28) { this.error = acct28; } finally { this.isLoading = false; } }, async 'exportAccounts'(acct29) { acct31 = { 'pYCRa': "success" }; this.error = null; try { const v5036 = await q.req(I.getApiUrl() + "/account/export", { 'ProviderId': acct29 }); return this.notificationStore.showNotification("Exported accounts for provider: " + acct29 + " successfully.", "success"), v5036.data; } catch (prov183) { this.error = prov183; } } } }), mv = { 'class': 'flex items-center hover:bg-neutral-50/10 p-2 rounded-xl cursor-pointer' }, pv = .id, vv = ["for"], Z = { '__name': "CheckBoxConfig", 'props': Toggle(['name', 'label'], { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(v5037) { v5043 = Pagination(v5037, "modelValue"); return (v5044, v5045) => (openBlock(), createBlock('div', mv, [isRef(e("input", { 'id': 'cb-config-' + v5037.label, 'type': "checkbox", 'onUpdate:modelValue': v5045[0] || (v5045[0] = cfg4 => v5043.value = cfg4), 'class': "shrink-0 w-5 h-5 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 8, pv), [ [renderSlot, v5043.value] ]), e("label", { 'for': 'cb-config-' + v5037.label, 'class': 'w-full ms-2 text-sm font-medium text-white cursor-pointer' }, useAttrs(v5037.label), 9, vv)])); } }, fv = { 'class': "block mb-2 text-sm font-medium text-white" }, gv = ["disabled", 'placeholder'], ne = { '__name': "InputConfig", 'props': Toggle(["label", 'placeholder', "disabled"], { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ['update:modelValue'], 'setup'(updRef74) { const updRef75 = { 'YdizT': function(updRef76, updRef77, updRef78) { return updRef76(updRef77, updRef78); }, 'ZUxLj': "modelValue" }, v5046 = Pagination(updRef74, "modelValue"), v5047 = updRef74; return (v5048, v5049) => (openBlock(), createBlock('div', null, [e("label", fv, useAttrs(v5047.label), 1), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5049[0] || (v5049[0] = updRef79 => v5046.value = updRef79), 'disabled': v5047.disabled, 'class': "block w-full p-2 text-white border rounded-xl bg-linear-to-b bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': v5047.placeholder }, null, 8, gv), [ [Dropdown, v5046.value] ])])); } }, hv = {}, bv = { 'class': "w-5 h-5 text-white", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'viewBox': '0 0 24 24', 'fill': 'none' }; function wv(v5050, v5051) { v5053 = { 'umDvq': function(v5054, v5055, v5056, v5057) { return v5054(v5055, v5056, v5057); }, 'DAPTC': function(v5058, v5059, v5060) { return v5058(v5059, v5060); }, 'ExxwF': "" }; return openBlock(), v5053.umDvq(createBlock, "svg", bv, [...v5051[0] || (v5051[0] = [StaticHTML(" { if (v5064.ZooOA("KLXJg", "KLXJg")) { const v5072 = v5073; return (v5074, v5075) => (v5076(), v5077("div", v5078, [v5079('div', v5080, [v5075[0] || (v5075[0] = v5081("svg", { 'aria-hidden': 'true', 'class': "inline w-5 h-5 text-neutral-400 animate-spin fill-yellow-300", 'viewBox': '0 0 100 101', 'fill': "none", 'xmlns': "http://www.w3.org/2000/svg" }, [v5082("path", { 'd': "M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z", 'fill': "currentColor" }), v5083('path', { 'd': 'M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z', 'fill': "currentFill" })], -1)), v5084('span', v5085, v5086(v5072.message), 1)])])); } else v5070("click"); }; return (v5087, v5088) => (openBlock(), createBlock("button", { 'type': "button", 'onClick': v5071, 'class': 'text-yellow-300 hover:bg-yellow-300 hover:text-black flex items-center focus:outline-hidden rounded-xl text-sm px-2 py-1.5 transition-all ease-in-out' }, [v5069.Icon ? (openBlock(), Modal(createTextVNode(v5061.Icon), { 'key': 0, 'class': 'mx-auto mr-1' })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v5069.text) + ' ', 1), createStaticVNode(v5087.$slots, "default")])); } }, yv = { 'name': "IconRecordingCam" }, kv = { 'class': 'w-5 h-5', 'xmlns': "http://www.w3.org/2000/svg", 'viewBox': "0 0 24 24", 'fill': "none" }; function Sv(v5089, v5090, v5091, v5092, v5093, v5094) { v5096 = { 'MBIvA': function(v5097, v5098, v5099, v5100) { return v5097(v5098, v5099, v5100); }, 'JBzti': "svg", 'XBlqz': function(v5101, v5102, v5103, v5104, v5105) { return v5101(v5102, v5103, v5104, v5105); }, 'gUaLG': 'path', 'HdFua': 'M16 10L18.5768 8.45392C19.3699 7.97803 19.7665 7.74009 20.0928 7.77051C20.3773 7.79703 20.6369 7.944 20.806 8.17433C21 8.43848 21 8.90095 21 9.8259V14.1741C21 15.099 21 15.5615 20.806 15.8257C20.6369 16.056 20.3773 16.203 20.0928 16.2295C19.7665 16.2599 19.3699 16.022 18.5768 15.5461L16 14M6.2 18H12.8C13.9201 18 14.4802 18 14.908 17.782C15.2843 17.5903 15.5903 17.2843 15.782 16.908C16 16.4802 16 15.9201 16 14.8V9.2C16 8.0799 16 7.51984 15.782 7.09202C15.5903 6.71569 15.2843 6.40973 14.908 6.21799C14.4802 6 13.9201 6 12.8 6H6.2C5.0799 6 4.51984 6 4.09202 6.21799C3.71569 6.40973 3.40973 6.71569 3.21799 7.09202C3 7.51984 3 8.07989 3 9.2V14.8C3 15.9201 3 16.4802 3.21799 16.908C3.40973 17.2843 3.71569 17.5903 4.09202 17.782C4.51984 18 5.07989 18 6.2 18Z', 'CaTUv': "currentColor", 'PxKFx': "round" }; return openBlock(), v5096.MBIvA(createBlock, "svg", kv, [...v5090[0] || (v5090[0] = [v5096.XBlqz(e, "path", { 'd': "M16 10L18.5768 8.45392C19.3699 7.97803 19.7665 7.74009 20.0928 7.77051C20.3773 7.79703 20.6369 7.944 20.806 8.17433C21 8.43848 21 8.90095 21 9.8259V14.1741C21 15.099 21 15.5615 20.806 15.8257C20.6369 16.056 20.3773 16.203 20.0928 16.2295C19.7665 16.2599 19.3699 16.022 18.5768 15.5461L16 14M6.2 18H12.8C13.9201 18 14.4802 18 14.908 17.782C15.2843 17.5903 15.5903 17.2843 15.782 16.908C16 16.4802 16 15.9201 16 14.8V9.2C16 8.0799 16 7.51984 15.782 7.09202C15.5903 6.71569 15.2843 6.40973 14.908 6.21799C14.4802 6 13.9201 6 12.8 6H6.2C5.0799 6 4.51984 6 4.09202 6.21799C3.71569 6.40973 3.40973 6.71569 3.21799 7.09202C3 7.51984 3 8.07989 3 9.2V14.8C3 15.9201 3 16.4802 3.21799 16.908C3.40973 17.2843 3.71569 17.5903 4.09202 17.782C4.51984 18 5.07989 18 6.2 18Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])]); } const $v = J(yv, [ ["render", Sv] ]), Cv = {}, Mv = { 'class': "w-5 h-5 text-white inline-flex", 'xmlns': 'http://www.w3.org/2000/svg', 'viewBox': "0 0 24 24", 'fill': "none" }; function Av(v5106, v5107) { return openBlock(), createBlock("svg", Mv, [...v5107[0] || (v5107[0] = [e("path", { 'd': "M16.0004 9.00009C16.6281 9.83575 17 10.8745 17 12.0001C17 13.1257 16.6281 14.1644 16.0004 15.0001M18 5.29177C19.8412 6.93973 21 9.33459 21 12.0001C21 14.6656 19.8412 17.0604 18 18.7084M4.6 9.00009H5.5012C6.05213 9.00009 6.32759 9.00009 6.58285 8.93141C6.80903 8.87056 7.02275 8.77046 7.21429 8.63566C7.43047 8.48353 7.60681 8.27191 7.95951 7.84868L10.5854 4.69758C11.0211 4.17476 11.2389 3.91335 11.4292 3.88614C11.594 3.86258 11.7597 3.92258 11.8712 4.04617C12 4.18889 12 4.52917 12 5.20973V18.7904C12 19.471 12 19.8113 11.8712 19.954C11.7597 20.0776 11.594 20.1376 11.4292 20.114C11.239 20.0868 11.0211 19.8254 10.5854 19.3026L7.95951 16.1515C7.60681 15.7283 7.43047 15.5166 7.21429 15.3645C7.02275 15.2297 6.80903 15.1296 6.58285 15.0688C6.32759 15.0001 6.05213 15.0001 5.5012 15.0001H4.6C4.03995 15.0001 3.75992 15.0001 3.54601 14.8911C3.35785 14.7952 3.20487 14.6422 3.10899 14.4541C3 14.2402 3 13.9601 3 13.4001V10.6001C3 10.04 3 9.76001 3.10899 9.54609C3.20487 9.35793 3.35785 9.20495 3.54601 9.10908C3.75992 9.00009 4.03995 9.00009 4.6 9.00009Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': 'round' }, null, -1)])]); } const Iv = J(Cv, [ ["render", Av] ]), Tv = { 'class': "flex justify-between items-start" }, Pv = { 'class': "w-full flex justify-end items-center gap-4" }, Vv = { 'class': "flex lg:flex-row flex-col gap-4" }, Uv = { 'class': "flex lg:flex-col lg:justify-between justify-around items-center" }, _v = { 'class': "flex flex-col gap-4 justify-between xl:w-32 2xl:w-40" }, Ev = { 'class': "flex flex-col gap-4" }, Lv = { 'class': "space-y-2" }, Dv = { 'key': 0, 'class': "font-mono font-bold text-xs text-yellow-300 border border-yellow-300 rounded-sm my-3 p-0.5 px-1" }, Gv = { 'class': "font-bold text-sm text-white line-clamp-2 mt-3" }, Rv = { 'key': 2, 'class': "flex gap-2 items-center" }, Nv = { 'key': 3, 'class': "flex gap-2 items-center" }, jv = { 'class': "flex flex-col justify-between h-full gap-4" }, Ov = { 'class': "flex flex-col gap-2" }, Bv = { 'class': 'flex items-center gap-2' }, Hv = .id, Fv = .id, qv = .id, Wv = { 'class': 'rounded-xl border-white/15 border p-2 xl:w-[15.5rem] 2x:w-[24rem] 3xl:w-[488px]' }, zv = .id, Zv = { 'class': 'text-white text-xs break-words font-mono font-semibold whitespace-nowrap' }, Kv = { 'class': 'flex flex-col gap-2' }, Jv = { 'class': "flex items-center gap-2" }, Yv = { 'class': "text-xs text-white font-semibold" }, Qv = .id, Xv = .id, ef = .id, tf = { 'class': "items-center rounded-xl border-white/15 border p-2 xl:w-[15.5rem] 2x:w-[24rem] 3xl:w-[488px]" }, lf = { 'key': 0, 'class': "text-white text-xs break-words" }, of = .id, sf = .id, af = { 'key': 0, 'class': 'flex flex-col justify-between gap-2' }, rf = { 'class': "flex flex-col rounded-xl border border-white/15 p-3 gap-2 h-full" }, nf = { 'class': "flex flex-row gap-2" }, df = { 'key': 0, 'class': 'font-mono font-bold text-xs uppercase text-left text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1' }, uf = { 'key': 1, 'class': "font-mono font-bold text-xs uppercase text-left text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, cf = { 'key': 2, 'class': "font-mono font-bold text-xs text-left text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, mf = { 'class': "flex flex-row gap-2 items-center" }, pf = { 'class': 'text-white text-xs font-mono font-bold whitespace-pre-wrap' }, vf = { 'class': "flex flex-row items-center gap-2" }, ff = { 'class': "text-white text-xs font-mono font-bold whitespace-pre-wrap" }, gf = { 'key': 0, 'class': "flex flex-row items-center gap-2" }, hf = { 'class': "text-white text-xs font-mono font-bold whitespace-pre-wrap" }, bf = { 'key': 1, 'class': 'flex flex-col gap-2' }, wf = { 'class': 'flex flex-col justify-start rounded-xl border border-white/15 p-3 text-white text-xs space-y-2 h-full' }, xf = { 'class': 'font-mono' }, yf = { 'class': "font-mono" }, kf = { 'key': 2, 'class': "flex flex-col gap-2 xl:max-w-48 2xl:max-w-72 3xl:max-w-xl" }, Sf = { 'class': "flex flex-row items-start text-xs font-mono border border-white/15 p-3 rounded-xl gap-4 overflow-x-scroll no-scrollbar h-full" }, $f = { 'class': "flex flex-col text-white gap-2 flex-nowrap" }, Cf = { 'class': "font-bold text-nowrap" }, Mf = { 'class': "font-bold text-nowrap" }, Af = { 'class': "font-bold text-nowrap" }, If = { 'class': "font-bold text-nowrap" }, Tf = { 'class': "flex flex-col gap-2 flex-1" }, Pf = { 'class': 'flex flex-row items-start text-xs font-mono border border-white/15 p-3 rounded-xl gap-4 overflow-y-scroll no-scrollbar h-full' }, Vf = { 'class': "flex flex-col lg:flex-row lg:gap-4 gap-2" }, Uf = { 'class': "flex flex-col text-white gap-2" }, _f = { 'key': 0, 'class': "font-bold" }, Ef = { 'key': 1, 'class': "font-bold" }, Lf = { 'key': 2, 'class': 'font-bold' }, Df = { 'key': 3, 'class': "font-bold" }, Gf = { 'key': 4, 'class': 'font-bold' }, Rf = { 'class': "flex flex-col text-white gap-2" }, Nf = { 'key': 0, 'class': "font-bold" }, jf = { 'key': 1, 'class': 'font-bold' }, Of = { 'key': 2, 'class': "font-bold capitalize" }, Bf = { 'key': 3, 'class': "font-bold" }, Hf = { 'key': 4, 'class': "font-bold" }, Ff = { 'key': 5, 'class': "font-bold" }, qf = { 'key': 6, 'class': 'font-bold' }, Wf = { 'class': 'flex lg:flex-col items-end justify-end gap-2' }, zf = { '__name': "ItemStreamConfig", 'props': ["stream", "serverId", "provider", "selected"], 'emits': ["onToggleSelection", "onPlayStream", 'onEditStream', "onDeleteStream", "onRefreshStream", "onCheckFullStatus", 'onRefreshKeys', "onFlushKeys", "onClearManifest"], 'setup'(stream244, { emit: stream245 }) { let v5164 = stream244; const v5165 = stream245, v5166 = Le(); Ae(); const selRef11 = withCtx(v5164.selected); withCtx(false); const stream248 = Sidebar(() => v5164.stream.LogoUrl.startsWith("http") ? v5164.stream.LogoUrl : v5164.stream.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v5164.stream.LogoUrl + "?token=" + Me.getToken() : null), v5167 = () => { v5165("onRefreshKeys", v5164.stream); }, v5168 = () => { v5165("onClearManifest", v5164.stream); }, v5169 = () => { const v5170 = { 'MINai': "config" }; (false) ? v5171.push({ 'name': v5170.MINai, 'params': { 'provider': prov184.provider, 'type': prov185.epg.StreamType }, 'query': { 's': prov186.epg.StreamId + '$', 'server': prov187.serverId } }) : v5165("onFlushKeys", v5164.stream); }, epg25 = () => { v5165("onRefreshStream", v5164.stream); }, stream249 = () => { v5165("onEditStream", v5164.stream); }, stream250 = () => { v5165("onDeleteStream", v5164.stream); }, v5172 = () => { (true) ? v5165("onToggleSelection", v5164.stream) : v5173("onPlayReplay", v5174); }, v5175 = () => { v5165("onPlayStream", v5164.stream.StreamingUrl); }, stream251 = () => { (false) ? (stream252.value = stream253, stream254.value.toggleModal()) : v5165("onCheckFullStatus", v5164.stream.Status); }, v5176 = Sidebar(() => !!(v5164.stream.Keys?..length && v5164.stream.Keys[0] !== '')), v5177 = (v5178, v5179) => { const v5180 = v5178.split(','); if (v5179) { if ((true)) { switch (v5178) { case "all": return "All"; case "best": return "Best Video"; case "none": return "None"; } let v5181 = ''; for (const v5182 of v5179) for (const v5183 of v5180) (v5182.Id === v5183) && (v5181 += v5182.Desc + '\n'); return v5181; } return "Nothing selected"; }, stream255 = Sidebar(() => v5164.stream.Manifest), stream256 = async (stream257, stream258, stream259) => { stream258.Type === "event" && (stream258.EventId = stream258.Id), await v5166.toggleStreamPlayback(stream257, stream259, stream258); }, v5186 = () => { me.push({ 'name': "logs", 'params': { 'provider': v5164.provider, 'stream': v5164.stream.Id }, 'query': { 'server': v5164.serverId } }) }, stream260 = stream261 => { srv100 = { 'GOydF': function(v5200) { return v5200(); } }, v5201 = document.getElementById("copy-clipboard-button-" + stream261 + '-' + v5164.stream.Id), elRef30 = document.getElementById(stream261 + '-' + v5164.stream.Id), elRef31 = document.getElementById('default-icon-' + stream261 + '-' + v5164.stream.Id), elRef32 = document.getElementById("success-icon-" + stream261 + '-' + v5164.stream.Id), v5202 = { 'contentType': "textContent", 'htmlEntities': false, 'onCopy': () => { (false) ? v5203.value = v5204.target.result : (v5205(), setTimeout(() => { srv100.GOydF(v5206); }, 2000)); } }, v5205 = () => { (false) ? this.error = v5207 : (elRef31.classList.add("hidden"), elRef32.classList.remove("hidden")); }, v5206 = () => { elRef31.classList.remove("hidden"), elRef32.classList.add('hidden'); }, v5208 = { 'id': 'copy-clipboard-instance-' + stream261 + '-' + v5164.stream.Id, 'override': true }; new Tooltip(v5201, elRef30, v5202, v5208); }, stream262 = Sidebar(() => v5164.stream.Keys?..join('\n')); return withDirectives(() => { (z_util(), resolveDirective(), reactive(), stream260("keys"), stream260("manifest")); }), Carousel(() => v5164.selected, selRef12 => { selRef11.value = selRef12; }), (selRef13, selRef14) => (openBlock(), createBlock('div', { 'class': classNames([{ 'from-neutral-600/50 to-bg-black border-green-500': stream244.stream.IsStreaming, 'border-white/15': !stream244.stream.IsStreaming, 'border border-yellow-300/50': stream244.selected }, "flex flex-col lg:flex-col h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border gap-2"]) }, [e('div', Tv, [isRef(e("input", { 'type': "checkbox", 'onUpdate:modelValue': selRef14[0] || (selRef14[0] = updRef80 => selRef11.value = updRef80), 'onClick': v5172, 'class': "w-4 h-4 mx-0.5 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [renderSlot, selRef11.value] ]), e("div", Pv, [stream244.stream.ConnectedClients ? (openBlock(), createBlock("span", { 'key': 0, 'class': classNames([{ 'min-w-6': stream244.stream.ConnectedClients > 9, 'min-w-4': stream244.stream.ConnectedClients < 10 }, "h-4 w-4 text-center rounded-full bg-yellow-300 text-xs font-bold text-black"]) }, useAttrs(stream244.stream.ConnectedClients), 3)) : normalizeProps('', true), createVNode(rt, { 'stream': stream244.stream, 'name': 'Links', 'id': stream244.provider + '-' + stream244.stream.Id }, null, 8, ['stream', 'id'])])]), e("div", Vv, [e("div", Uv, [stream244.stream.Running ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': selRef14[2] || (selRef14[2] = stream263 => stream256("stop", stream244.stream, stream244.provider)), 'class': "hover:text-red-500 text-white transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'class': "hover:text-green-500 text-white transition-all ease-in-out" }, [createVNode(at)])), stream244.stream.Running || stream244.stream.OnDemand ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': v5175, 'class': "hover:text-blue-500 text-white transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true), e('button', { 'onClick': v5186, 'class': "hover:text-yellow-300 text-white transition-all ease-in-out" }, [createVNode(Tt)]), e("button", { 'onClick': epg25, 'class': "hover:text-yellow-300 text-white transition-all ease-in-out" }, [createVNode(ot)])]), e("div", _v, [e("div", Ev, [stream248.value ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': "w-16 h-16 object-contain", 'src': stream248.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : normalizeProps('', true), e("div", Lv, [stream244.stream.Type === "event" ? (openBlock(), createBlock('span', Dv, useAttrs(stream244.stream.Id + ' ' + (stream244.stream.OnAirId ? stream244.stream.OnAirId : '')), 1)) : normalizeProps('', true), e('p', Gv, useAttrs(stream244.stream.Name), 1), !stream244.stream.IsStreaming || stream244.stream.Type === "vod" ? (openBlock(), createBlock("div", { 'key': 1, 'onClick': stream251, 'class': classNames(['text-xs font-bold line-clamp-3 cursor-pointer hover:opacity-75 max-h-24 min-h-[18px] overflow-y-scroll no-scrollbar transition-all whitespace-pre-wrap mt-2', createTextVNode(ge).getColorByStatus(stream244.stream.StatusColor, "text")]) }, useAttrs(stream244.stream.Status), 3)) : normalizeProps('', true), stream244.stream.IsStreaming && stream244.stream.Uptime ? (openBlock(), createBlock('div', Rv, [createVNode(Gt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream244.stream.StatusColor, "text")]) }, useAttrs(stream244.stream.Uptime), 3)])) : normalizeProps('', true), stream244.stream.IsStreaming && stream244.stream.Bw ? (openBlock(), createBlock("div", Nv, [createVNode(Rt, { 'class': 'text-white' }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream244.stream.StatusColor, "text")]) }, useAttrs(stream244.stream.Bw), 3)])) : normalizeProps('', true), stream244.stream.StreamErrors ? (openBlock(), createBlock('p', { 'key': 4, 'class': classNames(["text-[10px] font-bold", createTextVNode(ge).getColorByStatus("yellow", 'text')]) }, useAttrs(stream244.stream.StreamErrors), 3)) : normalizeProps('', true), stream244.stream.AdInProgress ? (openBlock(), createBlock('p', { 'key': 5, 'class': classNames(["text-[10px] font-bold", createTextVNode(ge).getColorByStatus('yellow', 'text')]) }, " Ad-break in progress ", 2)) : normalizeProps('', true)])])]), e('div', jv, [e('div', Ov, [e("div", Bv, [selRef14[3] || (selRef14[3] = e('p', { 'class': "text-xs text-white font-semibold" }, "Manifest", -1)), isRef(e("button", { 'id': "copy-clipboard-button-manifest-" + createTextVNode(v5164).stream.Id, 'class': "text-white hover:text-yellow-300 rounded-xl px-1 flex flex-col items-end transition-all" }, [e('span', { 'id': 'default-icon-manifest-' + createTextVNode(v5164).stream.Id }, [createVNode(Ye)], 8, Fv), e("span", { 'id': "success-icon-manifest-" + createTextVNode(v5164).stream.Id, 'class': "hidden items-center" }, [createVNode(Qe)], 8, qv)], 8, Hv), [ [Spinner, stream255.value] ]), createTextVNode(v5164).stream.SessionManifest ? (openBlock(), createBlock("button", { 'key': 0, 'onClick': v5168, 'class': "text-white hover:text-red-500 rounded-xl items-end transition-all" }, [createVNode(Ke)])) : normalizeProps('', true)]), e("div", Wv, [e("div", { 'id': "manifest-" + createTextVNode(v5164).stream.Id, 'class': "flex overflow-x-scroll no-scrollbar" }, [e("div", Zv, useAttrs(stream244.stream.Manifest ? stream244.stream.Manifest : 'No Manifest'), 1)], 8, zv)])]), e("div", Kv, [e("div", Jv, [e('p', Yv, useAttrs(stream244.stream.Keys ? stream244.stream.Keys.length : 0) + " Key(s) ", 1), isRef(e("button", { 'id': "copy-clipboard-button-keys-" + createTextVNode(v5164).stream.Id, 'class': "text-white hover:text-yellow-300 rounded-xl p-1 flex flex-col items-end transition-all" }, [e('span', { 'id': "default-icon-keys-" + createTextVNode(v5164).stream.Id }, [createVNode(Ye)], 8, Xv), e('span', { 'id': 'success-icon-keys-' + createTextVNode(v5164).stream.Id, 'class': "hidden items-center" }, [createVNode(Qe)], 8, ef)], 8, Qv), [ [Spinner, v5176.value] ]), v5176.value ? (openBlock(), createBlock('button', { 'key': 0, 'onClick': v5167, 'class': "text-white hover:text-yellow-300 rounded-xl p-1 items-end transition-all" }, [createVNode(ot)])) : normalizeProps('', true), v5176.value ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': v5169, 'class': "text-white hover:text-red-500 rounded-xl p-1 items-end transition-all" }, [createVNode(Ke)])) : normalizeProps('', true)]), e("div", tf, [v5176.value ? (openBlock(), createBlock("div", { 'key': 1, 'id': "keys-" + createTextVNode(v5164).stream.Id, 'class': "overflow-scroll no-scrollbar max-h-8" }, [e('div', { 'id': "keys-poppin-" + createTextVNode(v5164).stream.Id, 'class': 'text-white text-xs font-mono font-semibold' }, useAttrs(stream262.value), 9, sf)], 8, of)) : (openBlock(), createBlock('p', lf, " No keys "))])])]), stream244.stream.Audio || stream244.stream.Video ? (openBlock(), createBlock("div", af, [selRef14[4] || (selRef14[4] = e('p', { 'class': "text-xs text-white font-semibold" }, "Media", -1)), e("div", rf, [e('div', nf, [stream244.stream.ManifestInfo2.Type ? (openBlock(), createBlock("span", df, useAttrs(stream244.stream.ManifestInfo2.Type), 1)) : normalizeProps('', true), stream244.stream.ManifestInfo2.Mode ? (openBlock(), createBlock("span", uf, useAttrs(stream244.stream.ManifestInfo2.Mode), 1)) : normalizeProps('', true), stream244.stream.ManifestInfo2.BestVideo ? (openBlock(), createBlock("span", cf, useAttrs(stream244.stream.ManifestInfo2.BestVideo), 1)) : normalizeProps('', true), (openBlock(true), createBlock(Fragment, null, createCommentVNode(stream244.stream.ManifestInfo2.DrmVendors, manif6 => (openBlock(), createBlock("span", { 'key': manif6, 'class': "inline-flex font-mono font-bold text-[0.65rem] text-left text-white border border-white rounded-sm my-auto p-0.5 px-1" }, useAttrs(manif6), 1))), 128))]), e('div', mf, [createVNode($v, { 'class': "text-white inline-flex" }), e("span", pf, useAttrs(v5177(stream244.stream.Video, stream244.stream.VideoList)), 1)]), e("div", vf, [createVNode(Iv), e("span", ff, useAttrs(v5177(stream244.stream.Audio, stream244.stream.AudioList)), 1)]), stream244.stream.Subtitles ? (openBlock(), createBlock("div", gf, [createVNode(xv), e("span", hf, useAttrs(v5177(stream244.stream.Subtitles, stream244.stream.SubtitlesList)), 1)])) : normalizeProps('', true)])])) : normalizeProps('', true), stream244.stream.Type === "event" ? (openBlock(), createBlock('div', bf, [selRef14[7] || (selRef14[7] = e('p', { 'class': "text-xs text-white font-semibold" }, "Event", -1)), e('div', wf, [selRef14[5] || (selRef14[5] = e("div", { 'class': "font-bold font-mono" }, "Start", -1)), e("span", xf, useAttrs(createTextVNode(de).formatDate(stream244.stream.Start)), 1), selRef14[6] || (selRef14[6] = e('div', { 'class': "font-bold font-mono" }, 'End', -1)), e("span", yf, useAttrs(createTextVNode(de).formatDate(stream244.stream.End)), 1)])])) : normalizeProps('', true), stream244.stream.Running ? (openBlock(), createBlock("div", kf, [selRef14[8] || (selRef14[8] = e('p', { 'class': 'text-xs text-white font-semibold' }, "Info", -1)), e('div', Sf, [e("div", $f, [e("span", Cf, " Script: (" + useAttrs(stream244.stream.CurrentScriptNetParam ? stream244.stream.CurrentScriptNetParam : "system") + ') ' + useAttrs(stream244.stream.CurrentScriptNetValue), 1), e('span', Mf, ' Manifest: (' + useAttrs(stream244.stream.CurrentManifestNetParam ? stream244.stream.CurrentManifestNetParam : "system") + ') ' + useAttrs(stream244.stream.CurrentManifestNetValue), 1), e("span", Af, " Media: (" + useAttrs(stream244.stream.CurrentMediaNetParam ? stream244.stream.CurrentMediaNetParam : 'system') + ') ' + useAttrs(stream244.stream.CurrentMediaNetValue), 1), e('span', If, " Script User: " + useAttrs(stream244.stream.ScriptUser ? stream244.stream.ScriptUser : "none"), 1)])])])) : normalizeProps('', true), e("div", Tf, [selRef14[9] || (selRef14[9] = e('p', { 'class': 'text-xs text-white font-semibold' }, "Options", -1)), e("div", Pf, [e("div", Vf, [e("div", Uf, [stream244.stream.ScriptParams ? (openBlock(), createBlock("span", _f, ' ScriptParams: ' + useAttrs(stream244.stream.ScriptParams), 1)) : normalizeProps('', true), stream244.stream.OnDemand ? (openBlock(), createBlock("span", Ef, " OnDemand ")) : normalizeProps('', true), stream244.stream.SpeedUp ? (openBlock(), createBlock('span', Lf, " Speed Up ")) : normalizeProps('', true), stream244.stream.Autostart ? (openBlock(), createBlock("span", Df, " Autostart ")) : normalizeProps('', true), stream244.stream.NetworkOverride ? (openBlock(), createBlock("span", Gf, " NetworkOverride ")) : normalizeProps('', true)]), e("div", Rf, [stream244.stream.SessionManifest ? (openBlock(), createBlock("span", Nf, " SessionManifest ")) : normalizeProps('', true), stream244.stream.UseCdm ? (openBlock(), createBlock('span', jf, " Use CDM ")) : normalizeProps('', true), stream244.stream.CdmType || stream244.stream.CdmMode ? (openBlock(), createBlock('span', Of, useAttrs(stream244.stream.CdmType) + ' ' + useAttrs(stream244.stream.CdmMode), 1)) : normalizeProps('', true), stream244.stream.CdnName ? (openBlock(), createBlock("span", Bf, " CDN: " + useAttrs(stream244.stream.CdnName), 1)) : normalizeProps('', true), stream244.stream.ModeOverride ? (openBlock(), createBlock("span", Hf, ' Mode Override ')) : normalizeProps('', true), stream244.stream.DailyOnAir ? (openBlock(), createBlock("span", Ff, " Daily OnAir [" + useAttrs(createTextVNode(de).formatSecondsToTimeUtc(stream244.stream.DailyStartTime)) + ' -> ' + useAttrs(createTextVNode(de).formatSecondsToTimeUtc(stream244.stream.DailyEndTime)) + '] ', 1)) : normalizeProps('', true), stream244.stream.FirstAudioTrack ? (openBlock(), createBlock("span", qf, " First audio track: " + useAttrs(stream244.stream.FirstAudioTrack), 1)) : normalizeProps('', true)])])])]), e("div", Wf, [createVNode(rl, { 'Icon': Jt, 'text': "Edit", 'onClick': stream249 }), createVNode(rl, { 'Icon': Ke, 'text': "Delete", 'onClick': stream250 })])])], 2)); } }, Zf = ['id', 'disabled', 'data-dropdown-toggle'], Kf = { 'class': 'w-full text-left' }, Jf = { 'class': "text-left" }, Yf = { 'key': 0, 'class': "flex text-neutral-400 text-xs" }, Qf = .id, Xf = { 'class': 'p-3 space-y-1 text-sm text-gray-300' }, eg = { 'key': 0 }, tg = { 'class': "flex items-center p-2 rounded-xl hover:bg-neutral-50/10" }, lg = .id, og = ["for"], sg = { 'key': 1 }, ag = { 'class': 'flex items-center p-2 rounded-xl hover:bg-neutral-50/10' }, rg = .id, ng = ['for'], ig = { 'class': 'flex items-center p-2 rounded-xl hover:bg-neutral-50/10' }, dg = .id, ug = ["for"], cg = { 'class': "flex p-2 rounded-xl hover:bg-neutral-50/10" }, mg = { 'class': 'flex items-center h-5' }, pg = ['id', 'value'], vg = { 'class': "ms-2 text-sm text-white" }, fg = ["for"], gg = { 'key': 0 }, hg = { 'key': 1 }, bg = { 'key': 2, 'id': "helper-checkbox-text-1", 'class': 'text-[11px] text-gray-300' }, wg = { 'key': 3, 'class': "flex gap-2 mt-3" }, xg = ['id', "checked", "onChange"], yg = { 'key': 4, 'class': "flex gap-2 mt-3" }, kg = ['id', "checked", "onChange"], hl = { '__name': "DropdownTrackSelector", 'props': ['stream', "type", "single"], 'emits': ["onSelectedTrack", "onSelectedFirstAudio", "onSelectedFirstSubtitle"], 'setup'(stream264, { emit: stream265 }) { v5263 = stream264, v5264 = withCtx([]), v5265 = withCtx(''), v5266 = withCtx(''), v5267 = stream265, v5268 = Ae(), v5269 = ["none", "best", "all"], v5270 = (v5271, v5272) => { (false) ? this.isLoadingRescan = false : (v5272.target.checked ? v5265.value = v5271.Id : v5265.value = '', v5267("onSelectedFirstAudio", v5265.value)); }, v5273 = (v5274, v5275) => { v5275.target.checked ? v5266.value = v5274.Id : v5266.value = '', v5267("onSelectedFirstSubtitle", v5266.value); }, v5276 = () => { const v5277 = v5264.value, v5278 = v5277.find(v5279 => v5269.includes(v5279.Id)); if (v5278) v5264.value = [v5278]; else { let v5280 = v5277.filter(v5281 => !v5269.includes(v5281.Id)); v5263.single && (v5280.length > 1) && (v5280 = [v5280[0]]), v5264.value = v5280; } }, v5282 = Sidebar(() => { if (v5263.stream) { if ((v5263.type === "Audio")) return v5263.stream.AudioList ? [...v5263.stream.AudioList] : []; if (v5263.type === "Video") return v5263.stream.VideoList ? [...v5263.stream.VideoList] : []; if ((v5263.type === "Subtitles")) return v5263.stream.SubtitlesList ? [...v5263.stream.SubtitlesList] : []; } return []; }); Carousel(v5282, () => { v5283(); }, { 'deep': true }); const v5284 = v5285 => { let v5286 = "\u274c Key not found (KID: " + v5285 + ')'; if (v5263.stream.Keys) { for (const stream268 of v5263.stream.Keys) stream268.includes(v5285) && (v5286 = '✅ Key found (KID: ' + v5285 + ')'); } return v5286; }, stream269 = stream270 => { if ((true)) { switch (stream270) { case "all": return "All"; case "none": return "None"; case "best": return "Best quality"; } if (v5282.value) { for (const v5287 of v5282.value) if ((v5287.Id === stream270)) return v5287.Desc; } } else this.isLoading = false; }, v5283 = () => { const v5288 = { 'zQXVE': function(v5289) { return v5289(); }, 'AaJTQ': function(v5290) { return v5290(); } }; if ((false)) throw this.notificationStore.showNotification("Error sending shutdown command.", "error"), this.error = errRef132, errRef133; else { if (v5263.stream) { if (v5264.value = [], v5263.type === "Audio" && v5263.stream.Audio) { const v5291 = v5263.stream.Audio.split(','); v5264.value = v5291.map(v5292 => ({ 'Id': v5292, 'Desc': stream269(v5292) })), v5265.value = v5263.stream.FirstAudioTrack; } else { if ((v5263.type === "Video") && v5263.stream.Video) { const v5293 = v5263.stream.Video.split(','); v5264.value = v5293.map(v5294 => ({ 'Id': v5294, 'Desc': stream269(v5294) })); } else { if ((v5263.type === "Subtitles")) { const v5295 = v5263.stream.Subtitles.split(','); v5264.value = v5295.map(v5296 => ({ 'Id': v5296, 'Desc': stream269(v5296) })), v5266.value = v5263.stream.FirstSubtitlesTrack; } } } } else v5264.value = []; Carousel(v5264, v5297 => { (false) ? (v5288.zQXVE(v5298), v5288.AaJTQ(v5299)) : v5267("onSelectedTrack", v5297); }); } }, v5300 = v5301 => { const v5302 = v5268.provider?..RunningMode; if (v5302) { let v5303 = ''; switch (v5302) { case "ffmpeg": v5303 = "(burned)"; break; case "internalremuxer": v5303 = '(dvbsubs)'; break; case "ffmpegmulti": v5303 = "(webvtt)"; } return v5303 + ' ' + v5301; } }, v5304 = Sidebar(() => v5263.type === "Subtitles" && v5268.provider?..RunningMode === 'residentffmpeg'); return withDirectives(() => { resolveDirective(), v5283(); }), (v5305, v5306) => (openBlock(), createBlock(Fragment, null, [e("button", { 'id': "dropdown-" + v5263.type + "-button-" + v5263.stream.Id + '-single-' + v5263.single, 'disabled': v5304.value, 'data-dropdown-toggle': 'dropdown-' + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': "text-white bg-black rounded-xl w-full text-sm px-3 py-2 flex flex-row items-center justify-between border border-white/15 hover:bg-neutral-50/10 disabled:bg-white/10", 'type': "button" }, [e("span", Kf, [e('span', Jf, useAttrs(v5263.type), 1), (openBlock(true), createBlock(Fragment, null, createCommentVNode(v5264.value, v5307 => (openBlock(), createBlock("span", { 'class': "flex flex-col text-yellow-300 text-xs", 'key': v5307.Desc }, useAttrs(v5307.Desc), 1))), 128)), v5264.value.length ? normalizeProps('', true) : (openBlock(), createBlock("span", Yf, "None selected"))]), createVNode(dl)], 8, Zf), e("div", { 'id': 'dropdown-' + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': 'z-40 hidden min-w-64 w-auto max-h-48 overflow-y-scroll no-scrollbar bg-black/75 backdrop-blur-lg border border-white/15 rounded-xl shadow-xl' }, [e('ul', Xf, [v5263.type === 'Video' ? (openBlock(), createBlock('li', eg, [e("div", tg, [isRef(e('input', { 'id': "best-" + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'type': "checkbox", 'onChange': v5276, 'value': { 'Id': 'best', 'Desc': "Best quality" }, 'onUpdate:modelValue': v5306[0] || (v5306[0] = updRef81 => v5264.value = updRef81), 'class': 'w-4 h-4 text-yellow-300 bg-black/30 border-gray-300 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent' }, null, 40, lg), [ [renderSlot, v5264.value] ]), e("label", { 'for': 'best-' + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': "cursor-pointer w-full ms-2 text-medium text-sm rounded-sm text-white" }, 'Best Quality', 8, og)])])) : normalizeProps('', true), v5263.type === "Audio" || v5263.type === 'Subtitles' ? (openBlock(), createBlock('li', sg, [e('div', ag, [isRef(e("input", { 'id': "all-" + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'type': "checkbox", 'onChange': v5276, 'value': { 'Id': "all", 'Desc': "All" }, 'onUpdate:modelValue': v5306[1] || (v5306[1] = updRef82 => v5264.value = updRef82), 'class': 'w-4 h-4 text-yellow-300 bg-black/30 border-gray-300 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent' }, null, 40, rg), [ [renderSlot, v5264.value] ]), e("label", { 'for': "all-" + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': "cursor-pointer w-full ms-2 text-medium text-sm rounded-sm text-white" }, 'All', 8, ng)]), e("div", ig, [isRef(e("input", { 'onChange': v5276, 'id': "none-" + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'type': 'checkbox', 'value': { 'Id': "none", 'Desc': "None" }, 'onUpdate:modelValue': v5306[2] || (v5306[2] = updRef83 => v5264.value = updRef83), 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-gray-300 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent" }, null, 40, dg), [ [renderSlot, v5264.value] ]), e("label", { 'for': "none-" + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': "cursor-pointer w-full ms-2 text-medium text-sm rounded-sm text-white" }, 'None', 8, ug)])])) : normalizeProps('', true), (openBlock(true), createBlock(Fragment, null, createCommentVNode(v5282.value, v5308 => (openBlock(), createBlock('li', { 'key': v5308.Id }, [e("div", cg, [e("div", mg, [isRef(e("input", { 'id': v5308.Id + '-' + v5263.type + '-' + v5263.stream.Id + '-single-' + v5263.single, 'type': "checkbox", 'onChange': v5276, 'value': { 'Id': v5308.Id, 'Desc': v5308.Desc }, 'onUpdate:modelValue': v5306[3] || (v5306[3] = updRef84 => v5264.value = updRef84), 'class': "w-4 h-4 text-yellow-300 disabled:text-neutral-800 bg-black/30 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent" }, null, 40, pg), [ [renderSlot, v5264.value] ])]), e('div', vg, [e("label", { 'for': v5308.Id + '-' + v5263.type + '-' + v5263.stream.Id + "-single-" + v5263.single, 'class': "font-medium cursor-pointer" }, [v5263.type === "Subtitles" ? (openBlock(), createBlock('div', gg, useAttrs(v5300(v5308.Desc)), 1)) : (openBlock(), createBlock('div', hg, useAttrs(v5308.Desc), 1)), v5308.Kid ? (openBlock(), createBlock("div", bg, useAttrs(v5284(v5308.Kid)), 1)) : normalizeProps('', true), stream264.type === "Audio" && v5264.value.some(v5309 => v5309.Id === v5308.Id || v5309.Id === 'all') ? (openBlock(), createBlock("div", wg, [e("input", { 'id': v5308.Id + '-' + v5263.type + '-' + v5263.stream.Id + "-first-audio", 'type': "checkbox", 'class': "w-4 h-4 text-yellow-300 disabled:text-neutral-800 bg-black/30 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent", 'checked': v5265.value === v5308.Id, 'onChange': v5310 => v5270(v5308, v5310) }, null, 40, xg), v5306[4] || (v5306[4] = toDisplayString(' First Audio ', -1))])) : normalizeProps('', true), stream264.type === "Subtitles" && v5264.value.some(v5311 => v5311.Id === v5308.Id || v5311.Id === "all") ? (openBlock(), createBlock('div', yg, [e("input", { 'id': v5308.Id + '-' + v5263.type + '-' + v5263.stream.Id + "-first-audio", 'type': "checkbox", 'class': "w-4 h-4 text-yellow-300 disabled:text-neutral-800 bg-black/30 rounded-sm cursor-pointer focus:ring-transparent dark:ring-offset-transparent", 'checked': v5266.value === v5308.Id, 'onChange': v5312 => v5273(v5308, v5312) }, null, 40, kg), v5306[5] || (v5306[5] = toDisplayString(" First Subtitle ", -1))])) : normalizeProps('', true)], 8, fg)])])]))), 128))])], 8, Qf)], 64)); } }, Sg = { 'class': 'col-span-2' }, $g = { 'key': 0, 'class': 'col-span-2' }, Jl = { '__name': "RunningMode", 'props': Toggle(['id', "mode"], { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(v5313) { v5325 = Pagination(v5313, "modelValue"), v5326 = [{ 'label': "Internal Remuxer", 'value': "internalremuxer" }, { 'label': "FFmpeg resident", 'value': "residentffmpeg" }, { 'label': "FFmpeg TS HLS/Direct", 'value': "ffmpeg" }, { 'label': "FFmpeg MultiTS HLS", 'value': "ffmpegmulti" }, { 'label': "FMP4 HLS", 'value': "fmp4hls" }], v5327 = [{ 'label': "HLS/Direct", 'value': "directhls" }, { 'label': "SRT Server", 'value': "srtserver" }, { 'label': "UDP/SRT", 'value': "protooutput" }, { 'label': "Custom", 'value': "custom" }]; return (v5328, v5329) => (openBlock(), createBlock("div", { 'class': classNames(["grid grid-cols-1 gap-4", { 'xl:grid-cols-4': v5313.mode === "full", 'xl:grid-cols-8': !v5313.mode }]) }, [e("div", Sg, [v5329[2] || (v5329[2] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Running mode", -1)), createVNode(Ee, { 'data': v5326, 'id': 'dropdown-running-mode-' + v5313.id, 'modelValue': v5325.value.RunningMode, 'onUpdate:modelValue': v5329[0] || (v5329[0] = updRef85 => v5325.value.RunningMode = updRef85), 'logos-disabled': '' }, null, 8, ['id', "modelValue"])]), v5325.value.RunningMode === "internalremuxer" || v5325.value.RunningMode === 'residentffmpeg' ? (openBlock(), createBlock("div", $g, [v5329[3] || (v5329[3] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Output mode", -1)), createVNode(Ee, { 'data': v5327, 'id': "dropdown-config-output-mode-" + v5313.id, 'modelValue': v5325.value.OutputMode, 'onUpdate:modelValue': v5329[1] || (v5329[1] = updRef86 => v5325.value.OutputMode = updRef86), 'logos-disabled': '' }, null, 8, ['id', "modelValue"])])) : normalizeProps('', true)], 2)); } }, Cg = { 'class': "space-y-4" }, Mg = { 'class': "grid lg:grid-cols-5 gap-4" }, Ag = { 'class': "col-span-2 lg:col-span-1" }, Ig = { 'key': 0, 'class': "col-span-2" }, Tg = { 'key': 1, 'class': 'col-span-2' }, Pg = { 'key': 2, 'class': "col-span-2" }, Vg = { 'key': 3, 'class': "col-span-2" }, Ug = { 'class': "col-span-2" }, _g = { 'class': "grid lg:grid-cols-5 gap-4" }, Eg = { 'class': "col-span-2 lg:col-span-1" }, Lg = { 'key': 0, 'class': "col-span-2" }, Dg = { 'key': 1, 'class': 'col-span-2' }, Gg = { 'key': 2, 'class': "col-span-2" }, Rg = { 'key': 3, 'class': "col-span-2" }, Ng = { 'class': "col-span-2" }, jg = { 'class': "grid lg:grid-cols-5 gap-4" }, Og = { 'class': "col-span-2 lg:col-span-1" }, Bg = { 'key': 0, 'class': 'col-span-2' }, Hg = { 'key': 1, 'class': 'col-span-2' }, Fg = { 'key': 2, 'class': "col-span-2" }, qg = { 'key': 3, 'class': "col-span-2" }, Wg = { 'class': "col-span-2" }, bl = { '__name': "NetworkSettings", 'props': Toggle(.id, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ['update:modelValue'], 'setup'(updRef87) { updRef89 = { 'jvmsV': function(updRef90, updRef91, updRef92) { return updRef90(updRef91, updRef92); }, 'JKkIp': "modelValue" }, v5330 = Pagination(updRef87, "modelValue"), v5331 = (v5332 = '') => [{ 'label': "System", 'value': '' }, ...v5332 === "manifest" ? [{ 'label': "Same as script", 'value': 'same' }] : [], ...v5332 === 'media' ? [{ 'label': 'Same as manifest', 'value': "same" }] : [], { 'label': "HTTP/SOCKS5 Proxy", 'value': "proxy" }, { 'label': "Bind interface/IP", 'value': "bind" }, { 'label': "DNS Over HTTPS", 'value': "doh" }, { 'label': "Custom DNS server", 'value': "dns" }]; return (v5333, v5334) => (openBlock(), createBlock("div", Cg, [e("div", Mg, [v5334[18] || (v5334[18] = e('div', { 'class': "lg:col-end-1 w-24 flex items-center justify-center bg-linear-to-r/srgb from-yellow-300 to-yellow-400 text-[0.8rem] font-bold font-mono text-black p-2 rounded-sm" }, " Script ", -1)), e('div', Ag, [createVNode(Ee, { 'data': v5331(), 'id': "dropdown-script-network-" + updRef87.id, 'modelValue': v5330.value.ScriptNetwork, 'onUpdate:modelValue': v5334[0] || (v5334[0] = updRef93 => v5330.value.ScriptNetwork = updRef93), 'logos-disabled': '' }, null, 8, ["data", 'id', "modelValue"])]), v5330.value.ScriptNetwork === "proxy" ? (openBlock(), createBlock("div", Ig, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[1] || (v5334[1] = updRef94 => v5330.value.ScriptProxy = updRef94), 'class': 'block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "http://user:pass@ip:port,socks5://user:pass@ip:port,..." }, null, 512), [ [Dropdown, v5330.value.ScriptProxy] ])])) : normalizeProps('', true), v5330.value.ScriptNetwork === "bind" ? (openBlock(), createBlock("div", Tg, [isRef(e('input', { 'type': "text", 'onUpdate:modelValue': v5334[2] || (v5334[2] = updRef95 => v5330.value.ScriptBind = updRef95), 'class': 'block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "bind1, bind2..." }, null, 512), [ [Dropdown, v5330.value.ScriptBind] ])])) : normalizeProps('', true), v5330.value.ScriptNetwork === "doh" ? (openBlock(), createBlock("div", Pg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[3] || (v5334[3] = updRef96 => v5330.value.ScriptDoh = updRef96), 'class': 'block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "url1, url2..." }, null, 512), [ [Dropdown, v5330.value.ScriptDoh] ])])) : normalizeProps('', true), v5330.value.ScriptNetwork === "dns" ? (openBlock(), createBlock('div', Vg, [isRef(e('input', { 'type': "text", 'onUpdate:modelValue': v5334[4] || (v5334[4] = updRef97 => v5330.value.ScriptDns = updRef97), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "dns1, dns2..." }, null, 512), [ [Dropdown, v5330.value.ScriptDns] ])])) : normalizeProps('', true), e("div", Ug, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[5] || (v5334[5] = updRef98 => v5330.value.ScriptWorker = updRef98), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "worker" }, null, 512), [ [Dropdown, v5330.value.ScriptWorker] ])])]), e("div", _g, [v5334[19] || (v5334[19] = e("div", { 'class': "lg:col-end-1 w-24 flex items-center justify-center bg-linear-to-r/srgb from-yellow-300 to-yellow-400 text-[0.8rem] font-bold font-mono text-black p-2 rounded-sm" }, " Manifest ", -1)), e("div", Eg, [createVNode(Ee, { 'data': v5331("manifest"), 'id': "dropdown-manifest-network-" + updRef87.id, 'modelValue': v5330.value.ManifestNetwork, 'onUpdate:modelValue': v5334[6] || (v5334[6] = manif7 => v5330.value.ManifestNetwork = manif7), 'logos-disabled': '' }, null, 8, ['data', 'id', 'modelValue'])]), v5330.value.ManifestNetwork === "proxy" ? (openBlock(), createBlock("div", Lg, [isRef(e('input', { 'type': 'text', 'onUpdate:modelValue': v5334[7] || (v5334[7] = updRef99 => v5330.value.ManifestProxy = updRef99), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'http://user:pass@ip:port,socks5://user:pass@ip:port,...' }, null, 512), [ [Dropdown, v5330.value.ManifestProxy] ])])) : normalizeProps('', true), v5330.value.ManifestNetwork === 'bind' ? (openBlock(), createBlock("div", Dg, [isRef(e("input", { 'type': 'text', 'onUpdate:modelValue': v5334[8] || (v5334[8] = manif8 => v5330.value.ManifestBind = manif8), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'bind1, bind2...' }, null, 512), [ [Dropdown, v5330.value.ManifestBind] ])])) : normalizeProps('', true), v5330.value.ManifestNetwork === "doh" ? (openBlock(), createBlock("div", Gg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[9] || (v5334[9] = updRef100 => v5330.value.ManifestDoh = updRef100), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "url1, url2..." }, null, 512), [ [Dropdown, v5330.value.ManifestDoh] ])])) : normalizeProps('', true), v5330.value.ManifestNetwork === "dns" ? (openBlock(), createBlock("div", Rg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[10] || (v5334[10] = manif9 => v5330.value.ManifestDns = manif9), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "dns1, dns2..." }, null, 512), [ [Dropdown, v5330.value.ManifestDns] ])])) : normalizeProps('', true), e("div", Ng, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[11] || (v5334[11] = updRef101 => v5330.value.ManifestWorker = updRef101), 'class': 'block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "worker" }, null, 512), [ [Dropdown, v5330.value.ManifestWorker] ])])]), e("div", jg, [v5334[20] || (v5334[20] = e('div', { 'class': "lg:col-end-1 w-24 flex items-center justify-center bg-linear-to-r/srgb from-yellow-300 to-yellow-400 text-[0.8rem] font-bold font-mono text-black p-2 rounded-sm" }, " Media ", -1)), e("div", Og, [createVNode(Ee, { 'data': v5331("media"), 'id': "dropdown-media-network-" + updRef87.id, 'modelValue': v5330.value.MediaNetwork, 'onUpdate:modelValue': v5334[12] || (v5334[12] = updRef102 => v5330.value.MediaNetwork = updRef102), 'logos-disabled': '' }, null, 8, ['data', 'id', "modelValue"])]), v5330.value.MediaNetwork === "proxy" ? (openBlock(), createBlock("div", Bg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[13] || (v5334[13] = proxyRef => v5330.value.MediaProxy = proxyRef), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'http://user:pass@ip:port,socks5://user:pass@ip:port,...' }, null, 512), [ [Dropdown, v5330.value.MediaProxy] ])])) : normalizeProps('', true), v5330.value.MediaNetwork === "bind" ? (openBlock(), createBlock("div", Hg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[14] || (v5334[14] = updRef103 => v5330.value.MediaBind = updRef103), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "bind1, bind2..." }, null, 512), [ [Dropdown, v5330.value.MediaBind] ])])) : normalizeProps('', true), v5330.value.MediaNetwork === "doh" ? (openBlock(), createBlock("div", Fg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[15] || (v5334[15] = updRef104 => v5330.value.MediaDoh = updRef104), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "url1, url2..." }, null, 512), [ [Dropdown, v5330.value.MediaDoh] ])])) : normalizeProps('', true), v5330.value.MediaNetwork === 'dns' ? (openBlock(), createBlock("div", qg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[16] || (v5334[16] = updRef105 => v5330.value.MediaDns = updRef105), 'class': 'block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "dns1, dns2..." }, null, 512), [ [Dropdown, v5330.value.MediaDns] ])])) : normalizeProps('', true), e("div", Wg, [isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v5334[17] || (v5334[17] = updRef106 => v5330.value.MediaWorker = updRef106), 'class': "block w-full p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "worker" }, null, 512), [ [Dropdown, v5330.value.MediaWorker] ])])])])); } }, zg = { 'class': "w-full" }, Yl = { '__name': "SelectUserAccount", 'props': Toggle({ 'id': String, 'accounts': Object, 'isConfig': { 'type': Boolean, 'default': false } }, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(acct32) { const cfg = { v5335: 4990, v5336: 6356 }, v5345 = Pagination(acct32, "modelValue"), v5346 = acct32, v5347 = Sidebar(() => { let acct33 = [{ 'label': 'No account', 'value': "none" }, ...v5346.isConfig ? [] : [{ 'label': "Provider", 'value': "provider" }], { 'label': "Random account", 'value': "random" }, { 'label': "Cycle through all accounts", 'value': "all" }]; if (v5346.accounts) { for (const v5348 of v5346.accounts) acct33.push({ 'label': '[ ' + v5348.User + ' ]', 'value': v5348.User }); } return acct33; }); return (usr57, usr58) => (openBlock(), createBlock("div", zg, [usr58[1] || (usr58[1] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Account", -1)), createVNode(Ee, { 'data': v5347.value, 'id': acct32.id, 'modelValue': v5345.value.ScriptAccountsUser, 'onUpdate:modelValue': usr58[0] || (usr58[0] = acct34 => v5345.value.ScriptAccountsUser = acct34), 'logos-disabled': '' }, null, 8, ["data", 'id', "modelValue"])])); } }, Zg = {}, Kg = { 'class': "w-5 h-5", 'aria-hidden': 'true', 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Jg(v5349, v5350) { v5356 = { 'CfNEm': function(v5357) { return v5357(); }, 'gSaoM': function(v5358, v5359, v5360, v5361) { return v5358(v5359, v5360, v5361); }, 'aoTgE': function(v5362, v5363, v5364, v5365, v5366) { return v5362(v5363, v5364, v5365, v5366); }, 'Cmozp': "path", 'hNUhc': "currentColor", 'nnwGU': "round", 'judjX': "M7 19H5a1 1 0 0 1-1-1v-1a3 3 0 0 1 3-3h1m4-6a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm7.441 1.559a1.907 1.907 0 0 1 0 2.698l-6.069 6.069L10 19l.674-3.372 6.07-6.07a1.907 1.907 0 0 1 2.697 0Z" }; return openBlock(), v5356.gSaoM(createBlock, "svg", Kg, [...v5350[0] || (v5350[0] = [v5356.aoTgE(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "square", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M7 19H5a1 1 0 0 1-1-1v-1a3 3 0 0 1 3-3h1m4-6a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm7.441 1.559a1.907 1.907 0 0 1 0 2.698l-6.069 6.069L10 19l.674-3.372 6.07-6.07a1.907 1.907 0 0 1 2.697 0Z" }, null, -1)])]); } const Yg = J(Zg, [ ['render', Jg] ]), Qg = { 'class': "flex flex-col gap-2" }, Xg = { 'class': "font-bold text-yellow-300 text-sm break-all" }, eh = { 'class': 'font-bold text-sm text-white break-all' }, th = { 'class': "font-bold text-sm text-white break-all" }, lh = { 'class': "font-bold text-sm text-white inline-flex gap-1 break-all" }, oh = { 'class': 'font-bold text-sm text-white break-all' }, sh = { 'class': 'flex flex-col justify-between gap-2' }, ah = { 'class': "flex justify-end gap-2" }, rh = { 'class': "flex flex-col items-end gap-2" }, nh = { '__name': "ItemProviderAccount", 'props': .account, 'emits': ['onEditAccount', "onDeleteAccount", 'onStateChange', 'onLogin', 'onPair'], 'setup'(acct35, { emit: acct36 }) { v5386 = acct35, v5387 = acct36, v5388 = withCtx(), v5389 = () => { if ((true)) v5388.value.toggleModal(); else { } }, v5396 = () => { if ((false)) return v5398.removeItem("o11-token"), v5399.removeItem("o11-preferences-view"), v5400.removeItem("o11-preferences-sort"), v5401.removeItem("o11-preferences"), this.isAuth = false, this.token = null, true; else v5387("onEditAccount", v5386.account); }, v5402 = v5403 => { v5389(), v5387("onDeleteAccount", v5403); }, v5404 = v5405 => { v5387("onLogin", v5405); }, v5406 = v5407 => { const v5408 = { 'oqYSq': function(v5409, v5410, v5411) { return v5409(v5410, v5411); }, 'wXOAA': "onEditRecording" }; (false) ? rec97(v5408.wXOAA, rec98.recording) : v5387("onPair", v5407); }; return (rec99, rec100) => (openBlock(), createBlock(Fragment, null, [e("div", { 'class': classNames([{ 'bg-green-500/15': v5386.account.Enabled, 'bg-red-500/15': !v5386.account.Enabled }, 'flex flex-row justify-between bg-black p-3 rounded-xl shadow-lg overflow-auto relative transition-all ease-in-out border-white/15 border']) }, [e("div", Qg, [e("span", Xg, useAttrs(v5386.account.User), 1), e('span', eh, [rec100[0] || (rec100[0] = toDisplayString("Password: ", -1)), e("span", null, useAttrs(v5386.account.Password ? v5386.account.Password : "No password"), 1)]), e("span", th, [rec100[1] || (rec100[1] = toDisplayString(" Device: ", -1)), e("span", null, useAttrs(v5386.account.Device ? v5386.account.Device : "No device"), 1)]), e("span", lh, [rec100[2] || (rec100[2] = toDisplayString("Network Override:", -1)), v5386.account.NetworkOverride ? (openBlock(), Modal(Bt, { 'key': 0 })) : (openBlock(), Modal(Xe, { 'key': 1 }))]), e("span", oh, [rec100[3] || (rec100[3] = toDisplayString(' Running streams: ', -1)), e("span", null, useAttrs(v5386.account.RunningStreams ? v5386.account.RunningStreams : "None"), 1)])]), e("div", sh, [e("div", ah, [e("button", { 'onClick': v5396, 'class': "p-1.5 rounded-full hover:bg-yellow-300 text-white hover:text-black transition ease-in-out" }, [createVNode(Yg)]), e("button", { 'class': 'p-1.5 rounded-full hover:bg-red-700 transition ease-in-out', 'onClick': v5389 }, [createVNode(Ke, { 'class': "text-white" })])]), e("div", rh, [createVNode(rl, { 'text': 'Login', 'class': "text-xs font-semibold", 'onClick': v5404 }), createVNode(rl, { 'text': "Pair", 'class': 'text-xs font-semibold', 'onClick': v5406 })])])], 2), createVNode(gt, { 'ref_key': "confirmationModal", 'ref': v5388, 'id': 'localUser-account-' + acct35.account.User, 'message': "Are you sure you want to delete " + acct35.account.User + '?', 'onClick': v5402 }, null, 8, ['id', 'message'])], 64)); } }, ih = { '__name': 'MassConfigSelector', 'props': Toggle({ 'id': String, 'massOptions': Object }, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(cfg9) { v5415 = { 'nxmMi': function(v5416, v5417) { return v5416 === v5417; }, 'DfpHk': "LrJbi", 'dejLB': function(v5418, v5419, v5420) { return v5418(v5419, v5420); }, 'WWOOW': "modelValue" }, v5421 = Pagination(cfg9, "modelValue"), v5422 = cfg9, v5423 = Sidebar(() => { if (v5415.nxmMi("LrJbi", "LrJbi")) { let v5424 = []; for (const v5425 of v5422.massOptions) v5424.push({ 'label': v5425.Title, 'value': v5425 }); return v5424; } else { } }); return (v5434, v5435) => (openBlock(), Modal(Ee, { 'data': v5423.value, 'id': cfg9.id, 'modelValue': v5421.value, 'onUpdate:modelValue': v5435[0] || (v5435[0] = updRef107 => v5421.value = updRef107), 'logos-disabled': '' }, null, 8, ['data', 'id', 'modelValue'])); } }, dh = { 'class': "flex flex-col lg:justify-end mt-3" }, uh = { 'class': 'flex flex-row w-full md:w-96' }, ch = { 'key': 0, 'class': 'flex flex-row w-96 items-center my-auto' }, mh = { 'key': 1, 'class': "columns-2 flex flex-row w-96 gap-2 mt-3" }, ph = { 'class': "relative" }, vh = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, fh = { 'class': "relative" }, gh = { 'class': 'absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none' }, hh = { '__name': "MassConfigSet", 'emits': .onStateChange, 'setup'(evtRef31, { emit: evtRef32 }) { v5464 = withCtx(), v5465 = withCtx(''), v5466 = Ae(); let v5467 = withCtx([]); updRef108 = async () => { const updRef109 = await v5466.getMassUpdateOptions(); updRef109 && (v5467.value = updRef109, v5464.value = updRef109[0]); }; return withDirectives(() => { updRef108() 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M11 9h6m-6 3h6m-6 3h6M6.996 9h.01m-.01 3h.01m-.01 3h.01M4 5h16a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z" }, null, -1)])]); }), (v5493, v5494) => (openBlock(), createBlock("div", dh, [e('div', uh, [createVNode(ih, { 'mass-options': createTextVNode(v5467), 'modelValue': v5464.value, 'onUpdate:modelValue': v5494[0] || (v5494[0] = updRef111 => v5464.value = updRef111) }, null, 8, ["mass-options", "modelValue"]), createVNode(he, { 'text': "Set", 'class': "rounded-r-none rounded-l-none", }), v5464.value?..Action !== "setvalue" ? (openBlock(), Modal(he, { 'key': 0, 'text': "Unset", 'class': "rounded-l-none round border-l border-black", })) : normalizeProps('', true)]), v5464.value?..Action === "setvalue" ? (openBlock(), createBlock('div', ch, [createVNode(ne, { 'placeholder': 'value', 'modelValue': v5465.value, 'onUpdate:modelValue': v5494[3] || (v5494[3] = updRef112 => v5465.value = updRef112) }, null, 8, .modelValue)])) : normalizeProps('', true), v5464.value?..Action === "setstartend" ? (openBlock(), createBlock("div", mh, [e("div", null, [v5494[5] || (v5494[5] = e('label', { 'for': 'mass-onair-start-time', 'class': 'block mb-2 text-sm font-medium text-white' }, "Start time", -1)), e("div", ph, [e("div", vh, [createVNode(bt)]), v5494[4] || (v5494[4] = e('input', { 'type': "time", 'id': "mass-onair-start-time", 'class': 'border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300' }, null, -1))])]), e("div", null, [v5494[7] || (v5494[7] = e("label", { 'for': 'mass-onair-end-time', 'class': "block mb-2 text-sm font-medium text-white" }, "End time", -1)), e('div', fh, [e('div', gh, [createVNode(bt)]), v5494[6] || (v5494[6] = e("input", { 'type': "time", 'id': "mass-onair-end-time", 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, -1))])])])) : normalizeProps('', true)])); } }, bh = {}, wh = { 'class': 'w-5 h-5', 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function xh(v5497, v5498) { v5500 = { 'FOYlN': function(v5501, v5502, v5503, v5504) { return v5501(v5502, v5503, v5504); }, 'EmTqe': "svg", 'dAaWq': function(v5505, v5506, v5507, v5508, v5509) { return v5505(v5506, v5507, v5508, v5509); }, 'jEPQJ': "path", 'nFywL': 'currentColor', 'ieGBE': "round" }; return openBlock(), v5500.FOYlN(createBlock, "svg", wh, [...v5498[0] || (v5498[0] = [v5500.dAaWq(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': 'M4 10h16m-8-3V4M7 7V4m10 3V4M5 20h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1Zm3-7h.01v.01H8V13Zm4 0h.01v.01H12V13Zm4 0h.01v.01H16V13Zm-8 4h.01v.01H8V17Zm4 0h.01v.01H12V17Zm4 0h.01v.01H16V17Z' }, null, -1)])]); } const Ql = J(bh, [ ["render", xh] ]), yh = {}, kh = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Sh(v5510, v5511) { v5513 = { 'EhwIG': function(v5514, v5515, v5516, v5517) { return v5514(v5515, v5516, v5517); }, 'AGAjZ': function(v5518, v5519, v5520, v5521, v5522) { return v5518(v5519, v5520, v5521, v5522); }, 'VhyMf': "currentColor", 'kugOq': "round", 'vtQzA': "M10 3v4a1 1 0 0 1-1 1H5m14-4v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1ZM9 12h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Zm5.697 2.395v-.733l1.269-1.219v2.984l-1.268-1.032Z" }; return openBlock(), v5513.EhwIG(createBlock, "svg", kh, [...v5511[0] || (v5511[0] = [v5513.AGAjZ(e, "path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m14-4v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1ZM9 12h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Zm5.697 2.395v-.733l1.269-1.219v2.984l-1.268-1.032Z" }, null, -1)])]); } const Xl = J(yh, [ ["render", Sh] ]), $h = { 'id': "dropdownButton", 'class': "py-1.5 px-2 gap-2 text-white bg-black focus:border-yellow-300 hover:border-yellow-300 font-medium rounded-xl justify-between text-center inline-flex items-center border border-white/15 transition-colors", 'type': 'button' }, Ch = { 'id': "dropdownTypes", 'class': "z-40 hidden rounded-xl shadow-xl w-32 bg-black backdrop-blur-xl border border-white/15" }, Mh = { 'class': "h-auto p-2 overflow-y-auto text-gray-700 text-gray-200" }, Ah = .onClick, Ih = { 'class': 'flex gap-2 items-center p-2 rounded-xl hover:bg-neutral-50/10 text-white cursor-pointer' }, bo = { '__name': "StreamTypeSelector", 'emits': .onTypeSelected, 'setup'(v5523, { emit: v5524 }) { v5544 = v5524, v5545 = Le(); let v5546 = {}; const v5547 = [{ 'id': "linear", 'name': 'Linear' }, { 'id': "event", 'name': "Events" }, { 'id': "vod", 'name': 'VOD' }], v5548 = () => { v5546.toggle(); }, v5549 = () => { v5550.provider.Headers2.HlsKey = v5551.parse(v5552); } catch { v5553.showNotification("Error parsing HLS key headers", "error"); } else { const v5554 = document.getElementById("dropdownTypes"), v5555 = document.getElementById('dropdownButton'), v5556 = { 'placement': "bottom", 'triggerType': "click", 'offsetSkidding': 0, 'offsetDistance': 10, 'delay': 300, 'ignoreClickOutsideClass': false }, v5557 = { 'id': "dropdownTypes", 'override': true }; v5546 = new defineStore(v5554, v5555, v5556, v5557); } }, v5558 = Sidebar(() => v5547.find(stream271 => stream271.id === v5545.getSelectedStreamType).name), stream272 = stream273 => { if ((true)) v5544("onTypeSelected", stream273.id), v5545.setCurrentSelectedStreamType(stream273.id), v5548(); else { const v5559 = (v5560.value.currentPage - 1) * v5561.value.rowsPerPage, v5562 = (v5559 + stream274.value.rowsPerPage); return stream275.streams?..Providers ? [] : stream276.streams ? stream277.streams.slice(v5559, v5562) : []; } }; return withDirectives(() => { resolveDirective(), v5549(); }), (stream278, v5563) => (openBlock(), createBlock(Fragment, null, [e("button", $h, [v5558.value === 'Linear' ? (openBlock(), Modal(Ie, { 'key': 0 })) : normalizeProps('', true), v5558.value === 'Events' ? (openBlock(), Modal(Ql, { 'key': 1 })) : normalizeProps('', true), v5558.value === "VOD" ? (openBlock(), Modal(Xl, { 'key': 2 })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v5558.value) + ' ', 1), createVNode(dl)]), e("div", Ch, [e('ul', Mh, [(openBlock(), createBlock(Fragment, null, createCommentVNode(v5547, v5564 => e('li', { 'key': v5564, }, [e("span", Ih, [v5564.id === 'linear' ? (openBlock(), Modal(Ie, { 'key': 0 })) : normalizeProps('', true), v5564.id === "event" ? (openBlock(), Modal(Ql, { 'key': 1 })) : normalizeProps('', true), v5564.id === "vod" ? (openBlock(), Modal(Xl, { 'key': 2 })) : normalizeProps('', true), toDisplayString(' ' + useAttrs(v5564.name), 1)])], 8, Ah)), 64))])])], 64)); } }, Th = {}, Ph = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': "1920.000000pt", 'height': '1920.000000pt', 'viewBox': '0 0 1920.000000 1920.000000', 'preserveAspectRatio': "xMidYMid meet" }; function Vh(v5566, v5567) { v5572 = { 'yPeSD': function(v5573, v5574, v5575, v5576) { return v5573(v5574, v5575, v5576); }, 'daeiD': "svg", 'NYnLL': function(v5577, v5578, v5579, v5580, v5581) { return v5577(v5578, v5579, v5580, v5581); }, 'brxrM': "currentColor", 'JluFF': "none", 'aHfHx': function(v5582, v5583, v5584) { return v5582(v5583, v5584); }, 'RpgvF': function(v5585, v5586, v5587) { return v5585(v5586, v5587); }, 'hmQSO': "path" }; return openBlock(), v5572.yPeSD(createBlock, "svg", Ph, [...v5567[0] || (v5567[0] = [v5572.NYnLL(e, 'g', { 'transform': "translate(0.000000,1920.000000) scale(0.100000,-0.100000)", 'fill': "currentColor", 'stroke': "none" }, [e('path', { 'd': "M9315 16380 c-1426 -57 -2824 -574 -3932 -1457 -274 -217 -620 -543\n-841 -790 -596 -667 -1061 -1449 -1350 -2273 -48 -136 -139 -429 -147 -474\nl-6 -32 258 -68 c142 -38 323 -86 402 -108 79 -22 147 -36 151 -31 4 4 21 60\n40 123 155 541 426 1124 747 1607 228 344 437 598 752 914 246 245 393 374\n646 564 748 562 1625 940 2545 1099 368 63 592 81 1020 80 483 0 773 -29 1215\n-121 1495 -311 2841 -1217 3699 -2491 405 -602 687 -1240 855 -1934 47 -195\n115 -568 103 -568 -4 0 -952 668 -1054 743 -14 11 -30 17 -36 13 -5 -3 -47\n-59 -93 -123 -46 -65 -150 -212 -232 -327 -83 -116 -150 -215 -151 -222 -1\n-12 62 -59 389 -290 94 -67 312 -221 485 -344 173 -123 351 -249 395 -280 44\n-31 260 -184 479 -339 220 -155 404 -283 409 -284 10 -2 50 52 199 263 45 63\n93 131 107 151 130 184 500 706 587 829 61 85 188 265 284 400 95 135 216 305\n268 378 52 73 93 134 91 136 -2 2 -134 95 -294 208 -159 112 -313 221 -341\n241 l-52 37 -312 -441 -313 -442 -38 189 c-327 1650 -1241 3103 -2589 4115\n-985 740 -2143 1193 -3370 1318 -179 19 -643 43 -750 39 -25 -1 -126 -4 -225\n-8z" }), e("path", { 'd': 'M8867 12533 c-25 -65 -150 -386 -277 -713 -283 -725 -709 -1819\n-1070 -2745 -147 -379 -428 -1101 -624 -1604 -196 -502 -356 -915 -356 -917 0\n-2 294 -4 653 -4 l654 0 162 448 c90 246 187 512 216 592 29 80 68 188 87 240\nl33 95 1223 0 1223 0 45 -115 c24 -63 143 -371 263 -685 l219 -570 672 -3\nc638 -2 672 -1 666 15 -11 27 -1586 3962 -2039 5093 l-395 985 -655 3 -654 2\n-46 -117z m894 -1869 c110 -296 218 -586 239 -644 21 -58 117 -318 214 -579\n97 -260 176 -475 176 -477 0 -2 -373 -4 -830 -4 -456 0 -830 1 -830 3 0 7 810\n2228 816 2238 3 6 8 8 10 6 2 -2 95 -247 205 -543z' }), e("path", { 'd': "M2939 9888 c-102 -145 -438 -618 -746 -1053 -308 -434 -567 -802\n-576 -816 l-17 -26 62 -44 c35 -24 189 -133 342 -242 268 -191 280 -198 296\n-180 14 14 437 610 576 810 16 23 32 42 35 43 3 0 12 -33 19 -72 21 -125 88\n-403 135 -567 287 -1003 793 -1917 1489 -2686 913 -1010 2097 -1720 3411\n-2044 751 -185 1536 -239 2325 -160 1219 122 2387 579 3375 1322 426 320 854\n731 1181 1132 577 708 991 1489 1254 2370 27 88 45 163 42 167 -8 8 -803 221\n-807 216 -1 -2 -15 -43 -29 -93 -184 -616 -442 -1172 -777 -1670 -121 -181\n-130 -192 -258 -355 -456 -580 -1001 -1061 -1621 -1432 -681 -407 -1430 -675\n-2205 -787 -314 -46 -464 -55 -855 -55 -479 0 -746 25 -1168 110 -2390 480\n-4263 2399 -4682 4798 -11 65 -19 121 -16 123 2 2 91 -58 197 -133 686 -487\n882 -625 889 -627 8 -2 51 56 215 288 54 77 138 196 187 263 48 68 88 127 88\n130 -1 6 -189 141 -695 497 -47 33 -304 215 -572 405 -269 189 -558 394 -643\n454 -85 60 -175 124 -199 143 -24 18 -49 33 -55 33 -7 0 -95 -118 -197 -262z" })], -1)])]); } const Uh = J(Th, [ ["render", Vh] ]), _h = {}, Eh = { 'class': 'w-5 h-5', 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Lh(v5588, v5589) { return openBlock(), createBlock("svg", Eh, [...v5589[0] || (v5589[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M21 13v-2a1 1 0 0 0-1-1h-.757l-.707-1.707.535-.536a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0l-.536.535L14 4.757V4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v.757l-1.707.707-.536-.535a1 1 0 0 0-1.414 0L4.929 6.343a1 1 0 0 0 0 1.414l.536.536L4.757 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h.757l.707 1.707-.535.536a1 1 0 0 0 0 1.414l1.414 1.414a1 1 0 0 0 1.414 0l.536-.535 1.707.707V20a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-.757l1.707-.708.536.536a1 1 0 0 0 1.414 0l1.414-1.414a1 1 0 0 0 0-1.414l-.535-.536.707-1.707H20a1 1 0 0 0 1-1Z" }, null, -1), e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z" }, null, -1)])]); } const Dh = J(_h, [ ["render", Lh] ]), Gh = {}, Rh = { 'class': "w-6 h-6 text-white", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': '0 0 24 24' }; function Nh(v5605, v5606) { v5608 = { 'Yekac': function(v5609) { return v5609(); }, 'IqFqi': function(v5610, v5611, v5612, v5613) { return v5610(v5611, v5612, v5613); }, 'tCFdz': 'svg', 'RCnFe': function(v5614, v5615, v5616, v5617, v5618) { return v5614(v5615, v5616, v5617, v5618); }, 'mMUAv': "path", 'FksfN': "evenodd" }; return openBlock(), v5608.IqFqi(createBlock, "svg", Rh, [...v5606[0] || (v5606[0] = [v5608.RCnFe(e, "path", { 'fill-rule': "evenodd", 'd': "M8 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4H6Zm7.25-2.095c.478-.86.75-1.85.75-2.905a5.973 5.973 0 0 0-.75-2.906 4 4 0 1 1 0 5.811ZM15.466 20c.34-.588.535-1.271.535-2v-1a5.978 5.978 0 0 0-1.528-4H18a4 4 0 0 1 4 4v1a2 2 0 0 1-2 2h-4.535Z", 'clip-rule': "evenodd" }, null, -1)])]); } const jh = J(Gh, [ ["render", Nh] ]), Oh = {}, Bh = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; function Hh(v5619, v5620) { const v5621 = { 'hZRmq': function(v5622) { return v5622(); }, 'InXWh': function(v5623, v5624, v5625, v5626) { return v5623(v5624, v5625, v5626); }, 'GanUL': "svg", 'OPvFe': function(v5627, v5628, v5629, v5630, v5631) { return v5627(v5628, v5629, v5630, v5631); }, 'jnMfg': "path", 'eUoGt': 'evenodd', 'NEsBL': 'M13 10a1 1 0 0 1 1-1h.01a1 1 0 1 1 0 2H14a1 1 0 0 1-1-1Z' }; return openBlock(), v5621.InXWh(createBlock, "svg", Bh, [...v5620[0] || (v5620[0] = [v5621.OPvFe(e, "path", { 'fill-rule': "evenodd", 'd': "M13 10a1 1 0 0 1 1-1h.01a1 1 0 1 1 0 2H14a1 1 0 0 1-1-1Z", 'clip-rule': "evenodd" }, null, -1), e("path", { 'fill-rule': "evenodd", 'd': "M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12c0 .556-.227 1.06-.593 1.422A.999.999 0 0 1 20.5 20H4a2.002 2.002 0 0 1-2-2V6Zm6.892 12 3.833-5.356-3.99-4.322a1 1 0 0 0-1.549.097L4 12.879V6h16v9.95l-3.257-3.619a1 1 0 0 0-1.557.088L11.2 18H8.892Z", 'clip-rule': "evenodd" }, null, -1)])]); } const Fh = J(Oh, [ ["render", Hh] ]), wo = resolveComponent('epg', { 'state': () => ({ 'notificationStore': it(), 'isRefreshingEpg': withCtx(false), 'epg': renderList([]), 'availableDates': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null) }), 'actions': { async 'getEpg'(epg26, epg27, epg28, epg29 = '', epg30 = '') { stream279 = { 'ProviderId': epg26, 'StreamId': epg27, 'Timezone': epg28, 'DateFilter': epg29, 'SearchPattern': epg30 }; this.isLoading = true, this.error = null; try { if ((false)) { const v5640 = v5641.split(','); if (v5642) { switch (v5643) { case "all": return "All"; case "best": return "Best Video"; case "none": return "None"; } let v5644 = ''; for (const v5645 of v5646) for (const v5647 of v5640) (v5645.Id === v5647) && (v5644 += (v5645.Desc + '\n')); return v5644; } return "Nothing selected"; } else { const v5648 = await q.req(I.getApiUrl() + "/epg/get", stream279); this.epg = v5648.data.Entries ?? [], this.availableDates = v5648.data.AvailableDates ?? []; } } catch (epg36) { if ((true)) return this.error = epg36, epg36; else this.error = v5649; } finally { this.isLoading = false; } }, async 'refreshEpg'(epg37) { v5650 = { 'ipjJe': function(v5651, v5652, v5653) { return v5651(v5652, v5653); }, 'lPKLc': "onCheckFullStatus", 'Cofjd': '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 'iiApg': function(v5654, v5655) { return v5654 < v5655; }, 'VHkVU': function(v5656, v5657) { return v5656 === v5657; }, 'ivJKf': 'Nafrb', 'tPZeN': "err", 'MImGU': 'error', 'RDmfj': "SDiyy" }, prov188 = { 'ProviderId': epg37 }; this.isRefreshingEpg = true, this.error = null; try { return await q.req(I.getApiUrl() + "/epg/refresh", prov188); } catch (v5658) { v5650.VHkVU("Nafrb", "Nafrb") ? (this.error = v5658, console.log("err", v5658), this.notificationStore.showNotification(v5658.data.Message, "error")) : notif41("onCheckFullStatus", notif42.event.Status); } finally { this.isRefreshingEpg = false; } }, async 'applyRefreshEpg'(epg44) { epg48 = { 'jyZfP': "success", 'iMEro': function(v5665, v5666) { return v5665 === v5666; }, 'BnSZj': "kVSrN" }, prov189 = { 'ProviderId': epg44 }; this.isLoading = true, this.error = null; try { const prov190 = await q.req(I.getApiUrl() + "/epg/refreshapply", prov189); return this.notificationStore.showNotification("Refreshed EPG for provider " + epg44 + " successfully.", epg48.jyZfP), prov190.data; } catch (errRef134) { this.error = errRef134; } finally { if (epg48.iMEro(epg48.BnSZj, epg48.BnSZj)) this.isLoading = false; else return srv101.currentSelectedServer; } } } }), qh = {}, Wh = { 'class': "w-5 h-5", 'width': '64px', 'height': "64px", 'viewBox': "0 0 24 24", 'version': "1.1", 'xmlns': 'http://www.w3.org/2000/svg', 'fill': "currentColor" }; function zh(v5667, v5668) { return openBlock(), createBlock("svg", Wh, [...v5668[0] || (v5668[0] = [e('g', { 'id': "SVGRepo_iconCarrier" }, [e('g', { 'stroke': "none", 'stroke-width': '1', 'fill': "none", 'fill-rule': "evenodd" }, [e('g', { 'id': "ic_fluent_live_24_regular", 'fill': "currentColor", 'fill-rule': "nonzero" }, [e("path", { 'd': "M5.98959236,4.92893219 C6.28248558,5.22182541 6.28248558,5.69669914 5.98959236,5.98959236 C2.67013588,9.30904884 2.67013588,14.6909512 5.98959236,18.0104076 C6.28248558,18.3033009 6.28248558,18.7781746 5.98959236,19.0710678 C5.69669914,19.363961 5.22182541,19.363961 4.92893219,19.0710678 C1.02368927,15.1658249 1.02368927,8.83417511 4.92893219,4.92893219 C5.22182541,4.63603897 5.69669914,4.63603897 5.98959236,4.92893219 Z M19.0710678,4.92893219 C22.9763107,8.83417511 22.9763107,15.1658249 19.0710678,19.0710678 C18.7781746,19.363961 18.3033009,19.363961 18.0104076,19.0710678 C17.7175144,18.7781746 17.7175144,18.3033009 18.0104076,18.0104076 C21.3298641,14.6909512 21.3298641,9.30904884 18.0104076,5.98959236 C17.7175144,5.69669914 17.7175144,5.22182541 18.0104076,4.92893219 C18.3033009,4.63603897 18.7781746,4.63603897 19.0710678,4.92893219 Z M8.81801948,7.75735931 C9.1109127,8.05025253 9.1109127,8.52512627 8.81801948,8.81801948 C7.06066017,10.5753788 7.06066017,13.4246212 8.81801948,15.1819805 C9.1109127,15.4748737 9.1109127,15.9497475 8.81801948,16.2426407 C8.52512627,16.5355339 8.05025253,16.5355339 7.75735931,16.2426407 C5.41421356,13.8994949 5.41421356,10.1005051 7.75735931,7.75735931 C8.05025253,7.46446609 8.52512627,7.46446609 8.81801948,7.75735931 Z M16.2426407,7.75735931 C18.5857864,10.1005051 18.5857864,13.8994949 16.2426407,16.2426407 C15.9497475,16.5355339 15.4748737,16.5355339 15.1819805,16.2426407 C14.8890873,15.9497475 14.8890873,15.4748737 15.1819805,15.1819805 C16.9393398,13.4246212 16.9393398,10.5753788 15.1819805,8.81801948 C14.8890873,8.52512627 14.8890873,8.05025253 15.1819805,7.75735931 C15.4748737,7.46446609 15.9497475,7.46446609 16.2426407,7.75735931 Z M12,10.5 C12.8284271,10.5 13.5,11.1715729 13.5,12 C13.5,12.8284271 12.8284271,13.5 12,13.5 C11.1715729,13.5 10.5,12.8284271 10.5,12 C10.5,11.1715729 11.1715729,10.5 12,10.5 Z" })])])], -1)])]); } const Zh = J(qh, [ ['render', zh] ]), Kh = {}, Jh = { 'class': "w-5 h-5", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; function Yh(rndr18, v5687) { return openBlock(), createBlock("svg", Jh, [...v5687[0] || (v5687[0] = [e("path", { 'fill-rule': "evenodd", 'd': "M5.005 10.19a1 1 0 0 1 1 1v.233l5.998 3.464L18 11.423v-.232a1 1 0 1 1 2 0V12a1 1 0 0 1-.5.866l-6.997 4.042a1 1 0 0 1-1 0l-6.998-4.042a1 1 0 0 1-.5-.866v-.81a1 1 0 0 1 1-1ZM5 15.15a1 1 0 0 1 1 1v.232l5.997 3.464 5.998-3.464v-.232a1 1 0 1 1 2 0v.81a1 1 0 0 1-.5.865l-6.998 4.042a1 1 0 0 1-1 0L4.5 17.824a1 1 0 0 1-.5-.866v-.81a1 1 0 0 1 1-1Z", 'clip-rule': "evenodd" }, null, -1), e("path", { 'd': "M12.503 2.134a1 1 0 0 0-1 0L4.501 6.17A1 1 0 0 0 4.5 7.902l7.002 4.047a1 1 0 0 0 1 0l6.998-4.04a1 1 0 0 0 0-1.732l-6.997-4.042Z" }, null, -1)])]); } const Qh = J(Kh, [ ['render', Yh] ]), Xh = { '__name': "EpgTimezoneSelector", 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ["update:modelValue"], 'setup'(rndr19) { v5931 = Pagination(rndr19, "modelValue"), v5932 = [{ 'label': "(GMT-12:00) Etc/GMT+12", 'value': "Etc/GMT+12" }, { 'label': "(GMT-11:00) Etc/GMT+11", 'value': "Etc/GMT+11" }, { 'label': "(GMT-11:00) Pacific/Midway", 'value': "Pacific/Midway" }, { 'label': "(GMT-11:00) Pacific/Niue", 'value': "Pacific/Niue" }, { 'label': '(GMT-11:00) Pacific/Pago_Pago', 'value': "Pacific/Pago_Pago" }, { 'label': "(GMT-11:00) Pacific/Samoa", 'value': "Pacific/Samoa" }, { 'label': "(GMT-10:00) Etc/GMT+10", 'value': "Etc/GMT+10" }, { 'label': "(GMT-10:00) Pacific/Honolulu", 'value': "Pacific/Honolulu" }, { 'label': "(GMT-10:00) Pacific/Johnston", 'value': "Pacific/Johnston" }, { 'label': "(GMT-10:00) Pacific/Rarotonga", 'value': "Pacific/Rarotonga" }, { 'label': "(GMT-10:00) Pacific/Tahiti", 'value': "Pacific/Tahiti" }, { 'label': "(GMT-09:30) Pacific/Marquesas", 'value': "Pacific/Marquesas" }, { 'label': "(GMT-09:00) America/Adak", 'value': "America/Adak" }, { 'label': "(GMT-09:00) Etc/GMT+9", 'value': "Etc/GMT+9" }, { 'label': "(GMT-09:00) Pacific/Gambier", 'value': "Pacific/Gambier" }, { 'label': '(GMT-08:00) America/Anchorage', 'value': "America/Anchorage" }, { 'label': "(GMT-08:00) America/Juneau", 'value': "America/Juneau" }, { 'label': "(GMT-08:00) America/Metlakatla", 'value': "America/Metlakatla" }, { 'label': "(GMT-08:00) America/Nome", 'value': "America/Nome" }, { 'label': "(GMT-08:00) America/Sitka", 'value': "America/Sitka" }, { 'label': "(GMT-08:00) America/Yakutat", 'value': "America/Yakutat" }, { 'label': '(GMT-08:00) Etc/GMT+8', 'value': "Etc/GMT+8" }, { 'label': "(GMT-08:00) Pacific/Pitcairn", 'value': "Pacific/Pitcairn" }, { 'label': "(GMT-07:00) America/Creston", 'value': "America/Creston" }, { 'label': "(GMT-07:00) America/Dawson", 'value': "America/Dawson" }, { 'label': "(GMT-07:00) America/Dawson_Creek", 'value': "America/Dawson_Creek" }, { 'label': "(GMT-07:00) America/Fort_Nelson", 'value': "America/Fort_Nelson" }, { 'label': "(GMT-07:00) America/Hermosillo", 'value': "America/Hermosillo" }, { 'label': '(GMT-07:00) America/Los_Angeles', 'value': "America/Los_Angeles" }, { 'label': "(GMT-07:00) America/Phoenix", 'value': "America/Phoenix" }, { 'label': "(GMT-07:00) America/Tijuana", 'value': "America/Tijuana" }, { 'label': "(GMT-07:00) America/Vancouver", 'value': "America/Vancouver" }, { 'label': "(GMT-07:00) America/Whitehorse", 'value': "America/Whitehorse" }, { 'label': "(GMT-07:00) Etc/GMT+7", 'value': "Etc/GMT+7" }, { 'label': "(GMT-06:00) America/Belize", 'value': "America/Belize" }, { 'label': "(GMT-06:00) America/Boise", 'value': "America/Boise" }, { 'label': "(GMT-06:00) America/Cambridge_Bay", 'value': "America/Cambridge_Bay" }, { 'label': "(GMT-06:00) America/Chihuahua", 'value': "America/Chihuahua" }, { 'label': "(GMT-06:00) America/Ciudad_Juarez", 'value': "America/Ciudad_Juarez" }, { 'label': "(GMT-06:00) America/Costa_Rica", 'value': "America/Costa_Rica" }, { 'label': "(GMT-06:00) America/Denver", 'value': "America/Denver" }, { 'label': "(GMT-06:00) America/Edmonton", 'value': "America/Edmonton" }, { 'label': "(GMT-06:00) America/El_Salvador", 'value': "America/El_Salvador" }, { 'label': "(GMT-06:00) America/Guatemala", 'value': "America/Guatemala" }, { 'label': "(GMT-06:00) America/Inuvik", 'value': "America/Inuvik" }, { 'label': "(GMT-06:00) America/Managua", 'value': "America/Managua" }, { 'label': "(GMT-06:00) America/Matamoros", 'value': "America/Matamoros" }, { 'label': "(GMT-06:00) America/Mazatlan", 'value': "America/Mazatlan" }, { 'label': "(GMT-06:00) America/Menominee", 'value': "America/Menominee" }, { 'label': '(GMT-06:00) America/Merida', 'value': "America/Merida" }, { 'label': "(GMT-06:00) America/Mexico_City", 'value': "America/Mexico_City" }, { 'label': "(GMT-06:00) America/Monterrey", 'value': "America/Monterrey" }, { 'label': '(GMT-06:00) America/North_Dakota/Beulah', 'value': "America/North_Dakota/Beulah" }, { 'label': '(GMT-06:00) America/North_Dakota/Center', 'value': "America/North_Dakota/Center" }, { 'label': "(GMT-06:00) America/North_Dakota/New_Salem", 'value': "America/North_Dakota/New_Salem" }, { 'label': "(GMT-06:00) America/Ojinaga", 'value': "America/Ojinaga" }, { 'label': "(GMT-06:00) America/Regina", 'value': "America/Regina" }, { 'label': "(GMT-06:00) America/Swift_Current", 'value': "America/Swift_Current" }, { 'label': "(GMT-06:00) America/Tegucigalpa", 'value': "America/Tegucigalpa" }, { 'label': "(GMT-06:00) America/Yellowknife", 'value': 'America/Yellowknife' }, { 'label': "(GMT-06:00) Etc/GMT+6", 'value': 'Etc/GMT+6' }, { 'label': '(GMT-06:00) Pacific/Easter', 'value': "Pacific/Easter" }, { 'label': "(GMT-06:00) Pacific/Galapagos", 'value': "Pacific/Galapagos" }, { 'label': "(GMT-05:00) America/Atikokan", 'value': "America/Atikokan" }, { 'label': "(GMT-05:00) America/Bahia_Banderas", 'value': "America/Bahia_Banderas" }, { 'label': "(GMT-05:00) America/Bogota", 'value': "America/Bogota" }, { 'label': "(GMT-05:00) America/Cancun", 'value': "America/Cancun" }, { 'label': "(GMT-05:00) America/Cayman", 'value': "America/Cayman" }, { 'label': "(GMT-05:00) America/Chicago", 'value': 'America/Chicago' }, { 'label': "(GMT-05:00) America/Eirunepe", 'value': "America/Eirunepe" }, { 'label': "(GMT-05:00) America/Guayaquil", 'value': "America/Guayaquil" }, { 'label': "(GMT-05:00) America/Havana", 'value': "America/Havana" }, { 'label': "(GMT-05:00) America/Indiana/Knox", 'value': "America/Indiana/Knox" }, { 'label': "(GMT-05:00) America/Indiana/Tell_City", 'value': "America/Indiana/Tell_City" }, { 'label': "(GMT-05:00) America/Jamaica", 'value': "America/Jamaica" }, { 'label': "(GMT-05:00) America/Lima", 'value': "America/Lima" }, { 'label': "(GMT-05:00) America/Nassau", 'value': "America/Nassau" }, { 'label': "(GMT-05:00) America/New_York", 'value': "America/New_York" }, { 'label': "(GMT-05:00) America/Panama", 'value': "America/Panama" }, { 'label': "(GMT-05:00) America/Port-au-Prince", 'value': "America/Port-au-Prince" }, { 'label': "(GMT-05:00) America/Rankin_Inlet", 'value': "America/Rankin_Inlet" }, { 'label': "(GMT-05:00) America/Resolute", 'value': "America/Resolute" }, { 'label': '(GMT-05:00) America/Rio_Branco', 'value': "America/Rio_Branco" }, { 'label': "(GMT-05:00) America/Toronto", 'value': "America/Toronto" }, { 'label': "(GMT-05:00) America/Winnipeg", 'value': "America/Winnipeg" }, { 'label': '(GMT-05:00) Etc/GMT+5', 'value': "Etc/GMT+5" }, { 'label': "(GMT-04:00) America/Anguilla", 'value': "America/Anguilla" }, { 'label': "(GMT-04:00) America/Antigua", 'value': "America/Antigua" }, { 'label': "(GMT-04:00) America/Aruba", 'value': "America/Aruba" }, { 'label': "(GMT-04:00) America/Asuncion", 'value': "America/Asuncion" }, { 'label': "(GMT-04:00) America/Barbados", 'value': "America/Barbados" }, { 'label': "(GMT-04:00) America/Blanc-Sablon", 'value': 'America/Blanc-Sablon' }, { 'label': "(GMT-04:00) America/Boa_Vista", 'value': "America/Boa_Vista" }, { 'label': "(GMT-04:00) America/Campo_Grande", 'value': "America/Campo_Grande" }, { 'label': "(GMT-04:00) America/Caracas", 'value': "America/Caracas" }, { 'label': "(GMT-04:00) America/Cuiaba", 'value': "America/Cuiaba" }, { 'label': "(GMT-04:00) America/Curacao", 'value': 'America/Curacao' }, { 'label': "(GMT-04:00) America/Detroit", 'value': "America/Detroit" }, { 'label': "(GMT-04:00) America/Dominica", 'value': "America/Dominica" }, { 'label': "(GMT-04:00) America/Grand_Turk", 'value': "America/Grand_Turk" }, { 'label': "(GMT-04:00) America/Grenada", 'value': "America/Grenada" }, { 'label': "(GMT-04:00) America/Guadeloupe", 'value': "America/Guadeloupe" }, { 'label': "(GMT-04:00) America/Guyana", 'value': "America/Guyana" }, { 'label': "(GMT-04:00) America/Indiana/Indianapolis", 'value': "America/Indiana/Indianapolis" }, { 'label': "(GMT-04:00) America/Indiana/Marengo", 'value': "America/Indiana/Marengo" }, { 'label': '(GMT-04:00) America/Indiana/Petersburg', 'value': "America/Indiana/Petersburg" }, { 'label': "(GMT-04:00) America/Indiana/Vevay", 'value': "America/Indiana/Vevay" }, { 'label': "(GMT-04:00) America/Indiana/Vincennes", 'value': "America/Indiana/Vincennes" }, { 'label': '(GMT-04:00) America/Indiana/Winamac', 'value': "America/Indiana/Winamac" }, { 'label': "(GMT-04:00) America/Iqaluit", 'value': "America/Iqaluit" }, { 'label': "(GMT-04:00) America/Kentucky/Louisville", 'value': "America/Kentucky/Louisville" }, { 'label': '(GMT-04:00) America/Kentucky/Monticello', 'value': "America/Kentucky/Monticello" }, { 'label': "(GMT-04:00) America/Kralendijk", 'value': 'America/Kralendijk' }, { 'label': "(GMT-04:00) America/La_Paz", 'value': "America/La_Paz" }, { 'label': "(GMT-04:00) America/Lower_Princes", 'value': "America/Lower_Princes" }, { 'label': "(GMT-04:00) America/Manaus", 'value': "America/Manaus" }, { 'label': "(GMT-04:00) America/Marigot", 'value': "America/Marigot" }, { 'label': "(GMT-04:00) America/Martinique", 'value': "America/Martinique" }, { 'label': "(GMT-04:00) America/Moncton", 'value': "America/Moncton" }, { 'label': "(GMT-04:00) America/Montserrat", 'value': "America/Montserrat" }, { 'label': "(GMT-04:00) America/Nipigon", 'value': "America/Nipigon" }, { 'label': "(GMT-04:00) America/Pangnirtung", 'value': "America/Pangnirtung" }, { 'label': "(GMT-04:00) America/Port_of_Spain", 'value': "America/Port_of_Spain" }, { 'label': "(GMT-04:00) America/Porto_Velho", 'value': "America/Porto_Velho" }, { 'label': "(GMT-04:00) America/Puerto_Rico", 'value': "America/Puerto_Rico" }, { 'label': "(GMT-04:00) America/Santo_Domingo", 'value': "America/Santo_Domingo" }, { 'label': '(GMT-04:00) America/St_Barthelemy', 'value': "America/St_Barthelemy" }, { 'label': "(GMT-04:00) America/St_Kitts", 'value': "America/St_Kitts" }, { 'label': "(GMT-04:00) America/St_Lucia", 'value': "America/St_Lucia" }, { 'label': "(GMT-04:00) America/St_Thomas", 'value': "America/St_Thomas" }, { 'label': "(GMT-04:00) America/St_Vincent", 'value': "America/St_Vincent" }, { 'label': "(GMT-04:00) America/Thunder_Bay", 'value': "America/Thunder_Bay" }, { 'label': "(GMT-04:00) America/Tortola", 'value': 'America/Tortola' }, { 'label': "(GMT-04:00) Atlantic/Bermuda", 'value': 'Atlantic/Bermuda' }, { 'label': "(GMT-04:00) Etc/GMT+4", 'value': "Etc/GMT+4" }, { 'label': "(GMT-03:00) America/Araguaina", 'value': "America/Araguaina" }, { 'label': "(GMT-03:00) America/Argentina/Buenos_Aires", 'value': "America/Argentina/Buenos_Aires" }, { 'label': "(GMT-03:00) America/Argentina/Catamarca", 'value': "America/Argentina/Catamarca" }, { 'label': "(GMT-03:00) America/Argentina/Cordoba", 'value': "America/Argentina/Cordoba" }, { 'label': "(GMT-03:00) America/Argentina/Jujuy", 'value': "America/Argentina/Jujuy" }, { 'label': "(GMT-03:00) America/Argentina/La_Rioja", 'value': "America/Argentina/La_Rioja" }, { 'label': "(GMT-03:00) America/Argentina/Mendoza", 'value': "America/Argentina/Mendoza" }, { 'label': "(GMT-03:00) America/Argentina/Rio_Gallegos", 'value': "America/Argentina/Rio_Gallegos" }, { 'label': "(GMT-03:00) America/Argentina/Salta", 'value': "America/Argentina/Salta" }, { 'label': "(GMT-03:00) America/Argentina/San_Juan", 'value': "America/Argentina/San_Juan" }, { 'label': "(GMT-03:00) America/Argentina/San_Luis", 'value': "America/Argentina/San_Luis" }, { 'label': "(GMT-03:00) America/Argentina/Tucuman", 'value': "America/Argentina/Tucuman" }, { 'label': "(GMT-03:00) America/Argentina/Ushuaia", 'value': "America/Argentina/Ushuaia" }, { 'label': "(GMT-03:00) America/Bahia", 'value': "America/Bahia" }, { 'label': "(GMT-03:00) America/Belem", 'value': 'America/Belem' }, { 'label': "(GMT-03:00) America/Cayenne", 'value': "America/Cayenne" }, { 'label': "(GMT-03:00) America/Fortaleza", 'value': "America/Fortaleza" }, { 'label': "(GMT-03:00) America/Glace_Bay", 'value': "America/Glace_Bay" }, { 'label': "(GMT-03:00) America/Goose_Bay", 'value': "America/Goose_Bay" }, { 'label': "(GMT-03:00) America/Halifax", 'value': "America/Halifax" }, { 'label': "(GMT-03:00) America/Maceio", 'value': "America/Maceio" }, { 'label': "(GMT-03:00) America/Miquelon", 'value': 'America/Miquelon' }, { 'label': "(GMT-03:00) America/Montevideo", 'value': "America/Montevideo" }, { 'label': "(GMT-03:00) America/Nuuk", 'value': "America/Nuuk" }, { 'label': "(GMT-03:00) America/Paramaribo", 'value': "America/Paramaribo" }, { 'label': "(GMT-03:00) America/Punta_Arenas", 'value': "America/Punta_Arenas" }, { 'label': "(GMT-03:00) America/Recife", 'value': "America/Recife" }, { 'label': "(GMT-03:00) America/Santarem", 'value': "America/Santarem" }, { 'label': "(GMT-03:00) America/Santiago", 'value': "America/Santiago" }, { 'label': "(GMT-03:00) America/Sao_Paulo", 'value': "America/Sao_Paulo" }, { 'label': "(GMT-03:00) America/Thule", 'value': "America/Thule" }, { 'label': "(GMT-03:00) Antarctica/Palmer", 'value': "Antarctica/Palmer" }, { 'label': "(GMT-03:00) Antarctica/Rothera", 'value': "Antarctica/Rothera" }, { 'label': "(GMT-03:00) Atlantic/Stanley", 'value': "Atlantic/Stanley" }, { 'label': '(GMT-03:00) Etc/GMT+3', 'value': "Etc/GMT+3" }, { 'label': "(GMT-02:30) America/St_Johns", 'value': "America/St_Johns" }, { 'label': '(GMT-02:00) America/Noronha', 'value': "America/Noronha" }, { 'label': "(GMT-02:00) Atlantic/South_Georgia", 'value': 'Atlantic/South_Georgia' }, { 'label': "(GMT-02:00) Etc/GMT+2", 'value': "Etc/GMT+2" }, { 'label': "(GMT-01:00) Atlantic/Cape_Verde", 'value': "Atlantic/Cape_Verde" }, { 'label': "(GMT-01:00) Etc/GMT+1", 'value': "Etc/GMT+1" }, { 'label': "(GMT+00:00) Africa/Abidjan", 'value': "Africa/Abidjan" }, { 'label': "(GMT+00:00) Africa/Accra", 'value': "Africa/Accra" }, { 'label': "(GMT+00:00) Africa/Bamako", 'value': "Africa/Bamako" }, { 'label': "(GMT+00:00) Africa/Banjul", 'value': "Africa/Banjul" }, { 'label': "(GMT+00:00) Africa/Bissau", 'value': "Africa/Bissau" }, { 'label': '(GMT+00:00) Africa/Conakry', 'value': "Africa/Conakry" }, { 'label': "(GMT+00:00) Africa/Dakar", 'value': "Africa/Dakar" }, { 'label': "(GMT+00:00) Africa/Freetown", 'value': "Africa/Freetown" }, { 'label': "(GMT+00:00) Africa/Lome", 'value': "Africa/Lome" }, { 'label': "(GMT+00:00) Africa/Monrovia", 'value': "Africa/Monrovia" }, { 'label': "(GMT+00:00) Africa/Nouakchott", 'value': "Africa/Nouakchott" }, { 'label': "(GMT+00:00) Africa/Ouagadougou", 'value': "Africa/Ouagadougou" }, { 'label': "(GMT+00:00) Africa/Sao_Tome", 'value': "Africa/Sao_Tome" }, { 'label': "(GMT+00:00) America/Danmarkshavn", 'value': "America/Danmarkshavn" }, { 'label': "(GMT+00:00) America/Scoresbysund", 'value': "America/Scoresbysund" }, { 'label': "(GMT+00:00) Atlantic/Azores", 'value': "Atlantic/Azores" }, { 'label': "(GMT+00:00) Atlantic/Reykjavik", 'value': "Atlantic/Reykjavik" }, { 'label': "(GMT+00:00) Atlantic/St_Helena", 'value': "Atlantic/St_Helena" }, { 'label': "(GMT+00:00) Etc/GMT", 'value': "Etc/GMT" }, { 'label': "(GMT+00:00) Etc/GMT+0", 'value': "Etc/GMT+0" }, { 'label': "(GMT+00:00) Etc/GMT-0", 'value': "Etc/GMT-0" }, { 'label': "(GMT+00:00) Etc/GMT0", 'value': "Etc/GMT0" }, { 'label': "(GMT+00:00) Etc/Greenwich", 'value': "Etc/Greenwich" }, { 'label': "(GMT+00:00) Etc/UCT", 'value': "Etc/UCT" }, { 'label': "(GMT+00:00) Etc/UTC", 'value': '' }, { 'label': "(GMT+00:00) Etc/Universal", 'value': "Etc/Universal" }, { 'label': "(GMT+00:00) Etc/Zulu", 'value': "Etc/Zulu" }, { 'label': "(GMT+01:00) Africa/Algiers", 'value': "Africa/Algiers" }, { 'label': "(GMT+01:00) Africa/Bangui", 'value': "Africa/Bangui" }, { 'label': "(GMT+01:00) Africa/Brazzaville", 'value': "Africa/Brazzaville" }, { 'label': "(GMT+01:00) Africa/Casablanca", 'value': "Africa/Casablanca" }, { 'label': "(GMT+01:00) Africa/Ceuta", 'value': "Africa/Ceuta" }, { 'label': "(GMT+01:00) Africa/Douala", 'value': "Africa/Douala" }, { 'label': "(GMT+01:00) Africa/El_Aaiun", 'value': "Africa/El_Aaiun" }, { 'label': "(GMT+01:00) Africa/Kinshasa", 'value': "Africa/Kinshasa" }, { 'label': "(GMT+01:00) Africa/Lagos", 'value': "Africa/Lagos" }, { 'label': "(GMT+01:00) Africa/Libreville", 'value': "Africa/Libreville" }, { 'label': "(GMT+01:00) Africa/Luanda", 'value': "Africa/Luanda" }, { 'label': "(GMT+01:00) Africa/Malabo", 'value': "Africa/Malabo" }, { 'label': "(GMT+01:00) Africa/Ndjamena", 'value': "Africa/Ndjamena" }, { 'label': "(GMT+01:00) Africa/Niamey", 'value': "Africa/Niamey" }, { 'label': "(GMT+01:00) Africa/Porto-Novo", 'value': "Africa/Porto-Novo" }, { 'label': "(GMT+01:00) Africa/Tunis", 'value': "Africa/Tunis" }, { 'label': "(GMT+01:00) Atlantic/Canary", 'value': "Atlantic/Canary" }, { 'label': "(GMT+01:00) Atlantic/Faroe", 'value': "Atlantic/Faroe" }, { 'label': "(GMT+01:00) Atlantic/Madeira", 'value': "Atlantic/Madeira" }, { 'label': '(GMT+01:00) Etc/GMT-1', 'value': "Etc/GMT-1" }, { 'label': "(GMT+01:00) Europe/Amsterdam", 'value': "Europe/Amsterdam" }, { 'label': "(GMT+01:00) Europe/Andorra", 'value': "Europe/Andorra" }, { 'label': "(GMT+01:00) Europe/Belgrade", 'value': "Europe/Belgrade" }, { 'label': "(GMT+01:00) Europe/Berlin", 'value': "Europe/Berlin" }, { 'label': "(GMT+01:00) Europe/Bratislava", 'value': "Europe/Bratislava" }, { 'label': "(GMT+01:00) Europe/Brussels", 'value': "Europe/Brussels" }, { 'label': "(GMT+01:00) Europe/Budapest", 'value': "Europe/Budapest" }, { 'label': "(GMT+01:00) Europe/Busingen", 'value': 'Europe/Busingen' }, { 'label': "(GMT+01:00) Europe/Copenhagen", 'value': "Europe/Copenhagen" }, { 'label': "(GMT+01:00) Europe/Dublin", 'value': "Europe/Dublin" }, { 'label': "(GMT+01:00) Europe/Gibraltar", 'value': "Europe/Gibraltar" }, { 'label': "(GMT+01:00) Europe/Guernsey", 'value': "Europe/Guernsey" }, { 'label': "(GMT+01:00) Europe/Isle_of_Man", 'value': 'Europe/Isle_of_Man' }, { 'label': "(GMT+01:00) Europe/Jersey", 'value': "Europe/Jersey" }, { 'label': "(GMT+01:00) Europe/Lisbon", 'value': "Europe/Lisbon" }, { 'label': "(GMT+01:00) Europe/Ljubljana", 'value': "Europe/Ljubljana" }, { 'label': "(GMT+01:00) Europe/London", 'value': "Europe/London" }, { 'label': "(GMT+01:00) Europe/Luxembourg", 'value': "Europe/Luxembourg" }, { 'label': "(GMT+01:00) Europe/Madrid", 'value': "Europe/Madrid" }, { 'label': "(GMT+01:00) Europe/Malta", 'value': "Europe/Malta" }, { 'label': "(GMT+01:00) Europe/Monaco", 'value': "Europe/Monaco" }, { 'label': "(GMT+01:00) Europe/Oslo", 'value': "Europe/Oslo" }, { 'label': "(GMT+01:00) Europe/Paris", 'value': "Europe/Paris" }, { 'label': "(GMT+01:00) Europe/Podgorica", 'value': "Europe/Podgorica" }, { 'label': "(GMT+01:00) Europe/Prague", 'value': "Europe/Prague" }, { 'label': "(GMT+01:00) Europe/Rome", 'value': "Europe/Rome" }, { 'label': "(GMT+01:00) Europe/San_Marino", 'value': "Europe/San_Marino" }, { 'label': "(GMT+01:00) Europe/Sarajevo", 'value': "Europe/Sarajevo" }, { 'label': "(GMT+01:00) Europe/Skopje", 'value': "Europe/Skopje" }, { 'label': "(GMT+01:00) Europe/Stockholm", 'value': "Europe/Stockholm" }, { 'label': "(GMT+01:00) Europe/Tirane", 'value': "Europe/Tirane" }, { 'label': "(GMT+01:00) Europe/Vaduz", 'value': "Europe/Vaduz" }, { 'label': '(GMT+01:00) Europe/Vatican', 'value': "Europe/Vatican" }, { 'label': "(GMT+01:00) Europe/Vienna", 'value': "Europe/Vienna" }, { 'label': "(GMT+01:00) Europe/Warsaw", 'value': "Europe/Warsaw" }, { 'label': "(GMT+01:00) Europe/Zagreb", 'value': "Europe/Zagreb" }, { 'label': '(GMT+01:00) Europe/Zurich', 'value': "Europe/Zurich" }, { 'label': "(GMT+02:00) Africa/Blantyre", 'value': "Africa/Blantyre" }, { 'label': "(GMT+02:00) Africa/Bujumbura", 'value': "Africa/Bujumbura" }, { 'label': "(GMT+02:00) Africa/Cairo", 'value': "Africa/Cairo" }, { 'label': "(GMT+02:00) Africa/Gaborone", 'value': "Africa/Gaborone" }, { 'label': "(GMT+02:00) Africa/Harare", 'value': "Africa/Harare" }, { 'label': "(GMT+02:00) Africa/Johannesburg", 'value': 'Africa/Johannesburg' }, { 'label': "(GMT+02:00) Africa/Juba", 'value': "Africa/Juba" }, { 'label': "(GMT+02:00) Africa/Khartoum", 'value': 'Africa/Khartoum' }, { 'label': "(GMT+02:00) Africa/Kigali", 'value': "Africa/Kigali" }, { 'label': "(GMT+02:00) Africa/Lubumbashi", 'value': "Africa/Lubumbashi" }, { 'label': "(GMT+02:00) Africa/Lusaka", 'value': "Africa/Lusaka" }, { 'label': "(GMT+02:00) Africa/Maputo", 'value': "Africa/Maputo" }, { 'label': "(GMT+02:00) Africa/Maseru", 'value': "Africa/Maseru" }, { 'label': "(GMT+02:00) Africa/Mbabane", 'value': 'Africa/Mbabane' }, { 'label': "(GMT+02:00) Africa/Tripoli", 'value': "Africa/Tripoli" }, { 'label': "(GMT+02:00) Africa/Windhoek", 'value': "Africa/Windhoek" }, { 'label': "(GMT+02:00) Asia/Amman", 'value': "Asia/Amman" }, { 'label': "(GMT+02:00) Asia/Beirut", 'value': "Asia/Beirut" }, { 'label': "(GMT+02:00) Asia/Damascus", 'value': 'Asia/Damascus' }, { 'label': "(GMT+02:00) Asia/Famagusta", 'value': "Asia/Famagusta" }, { 'label': "(GMT+02:00) Asia/Gaza", 'value': "Asia/Gaza" }, { 'label': "(GMT+02:00) Asia/Hebron", 'value': "Asia/Hebron" }, { 'label': "(GMT+02:00) Asia/Jerusalem", 'value': "Asia/Jerusalem" }, { 'label': "(GMT+02:00) Asia/Nicosia", 'value': "Asia/Nicosia" }, { 'label': "(GMT+02:00) Etc/GMT-2", 'value': "Etc/GMT-2" }, { 'label': "(GMT+02:00) Europe/Athens", 'value': "Europe/Athens" }, { 'label': "(GMT+02:00) Europe/Bucharest", 'value': "Europe/Bucharest" }, { 'label': '(GMT+02:00) Europe/Chisinau', 'value': "Europe/Chisinau" }, { 'label': "(GMT+02:00) Europe/Helsinki", 'value': "Europe/Helsinki" }, { 'label': "(GMT+02:00) Europe/Kaliningrad", 'value': "Europe/Kaliningrad" }, { 'label': "(GMT+02:00) Europe/Kyiv", 'value': "Europe/Kyiv" }, { 'label': "(GMT+02:00) Europe/Mariehamn", 'value': "Europe/Mariehamn" }, { 'label': "(GMT+02:00) Europe/Riga", 'value': 'Europe/Riga' }, { 'label': "(GMT+02:00) Europe/Sofia", 'value': "Europe/Sofia" }, { 'label': "(GMT+02:00) Europe/Tallinn", 'value': "Europe/Tallinn" }, { 'label': "(GMT+02:00) Europe/Vilnius", 'value': "Europe/Vilnius" }, { 'label': "(GMT+03:00) Africa/Addis_Ababa", 'value': "Africa/Addis_Ababa" }, { 'label': "(GMT+03:00) Africa/Asmara", 'value': "Africa/Asmara" }, { 'label': "(GMT+03:00) Africa/Dar_es_Salaam", 'value': "Africa/Dar_es_Salaam" }, { 'label': "(GMT+03:00) Africa/Djibouti", 'value': "Africa/Djibouti" }, { 'label': '(GMT+03:00) Africa/Kampala', 'value': "Africa/Kampala" }, { 'label': "(GMT+03:00) Africa/Mogadishu", 'value': "Africa/Mogadishu" }, { 'label': "(GMT+03:00) Africa/Nairobi", 'value': 'Africa/Nairobi' }, { 'label': "(GMT+03:00) Antarctica/Syowa", 'value': "Antarctica/Syowa" }, { 'label': "(GMT+03:00) Asia/Aden", 'value': "Asia/Aden" }, { 'label': "(GMT+03:00) Asia/Baghdad", 'value': "Asia/Baghdad" }, { 'label': "(GMT+03:00) Asia/Bahrain", 'value': "Asia/Bahrain" }, { 'label': "(GMT+03:00) Asia/Kuwait", 'value': "Asia/Kuwait" }, { 'label': "(GMT+03:00) Asia/Qatar", 'value': "Asia/Qatar" }, { 'label': "(GMT+03:00) Asia/Riyadh", 'value': "Asia/Riyadh" }, { 'label': '(GMT+03:00) Etc/GMT-3', 'value': "Etc/GMT-3" }, { 'label': "(GMT+03:00) Europe/Istanbul", 'value': "Europe/Istanbul" }, { 'label': '(GMT+03:00) Europe/Kirov', 'value': "Europe/Kirov" }, { 'label': "(GMT+03:00) Europe/Minsk", 'value': 'Europe/Minsk' }, { 'label': "(GMT+03:00) Europe/Moscow", 'value': "Europe/Moscow" }, { 'label': "(GMT+03:00) Europe/Simferopol", 'value': "Europe/Simferopol" }, { 'label': "(GMT+03:00) Europe/Volgograd", 'value': "Europe/Volgograd" }, { 'label': "(GMT+03:00) Indian/Antananarivo", 'value': "Indian/Antananarivo" }, { 'label': "(GMT+03:00) Indian/Comoro", 'value': "Indian/Comoro" }, { 'label': "(GMT+03:00) Indian/Mayotte", 'value': "Indian/Mayotte" }, { 'label': "(GMT+03:30) Asia/Tehran", 'value': 'Asia/Tehran' }, { 'label': "(GMT+04:00) Asia/Baku", 'value': "Asia/Baku" }, { 'label': "(GMT+04:00) Asia/Dubai", 'value': "Asia/Dubai" }, { 'label': "(GMT+04:00) Asia/Muscat", 'value': "Asia/Muscat" }, { 'label': "(GMT+04:00) Asia/Tbilisi", 'value': "Asia/Tbilisi" }, { 'label': "(GMT+04:00) Asia/Yerevan", 'value': "Asia/Yerevan" }, { 'label': "(GMT+04:00) Etc/GMT-4", 'value': "Etc/GMT-4" }, { 'label': "(GMT+04:00) Europe/Astrakhan", 'value': "Europe/Astrakhan" }, { 'label': "(GMT+04:00) Europe/Samara", 'value': "Europe/Samara" }, { 'label': "(GMT+04:00) Europe/Saratov", 'value': "Europe/Saratov" }, { 'label': "(GMT+04:00) Europe/Ulyanovsk", 'value': "Europe/Ulyanovsk" }, { 'label': "(GMT+04:00) Indian/Mahe", 'value': 'Indian/Mahe' }, { 'label': "(GMT+04:00) Indian/Mauritius", 'value': "Indian/Mauritius" }, { 'label': "(GMT+04:00) Indian/Reunion", 'value': "Indian/Reunion" }, { 'label': "(GMT+04:30) Asia/Kabul", 'value': "Asia/Kabul" }, { 'label': "(GMT+05:00) Antarctica/Mawson", 'value': "Antarctica/Mawson" }, { 'label': "(GMT+05:00) Asia/Aqtau", 'value': "Asia/Aqtau" }, { 'label': "(GMT+05:00) Asia/Aqtobe", 'value': "Asia/Aqtobe" }, { 'label': "(GMT+05:00) Asia/Ashgabat", 'value': "Asia/Ashgabat" }, { 'label': "(GMT+05:00) Asia/Atyrau", 'value': "Asia/Atyrau" }, { 'label': "(GMT+05:00) Asia/Dushanbe", 'value': "Asia/Dushanbe" }, { 'label': "(GMT+05:00) Asia/Karachi", 'value': 'Asia/Karachi' }, { 'label': "(GMT+05:00) Asia/Oral", 'value': "Asia/Oral" }, { 'label': '(GMT+05:00) Asia/Qyzylorda', 'value': "Asia/Qyzylorda" }, { 'label': "(GMT+05:00) Asia/Samarkand", 'value': "Asia/Samarkand" }, { 'label': "(GMT+05:00) Asia/Tashkent", 'value': "Asia/Tashkent" }, { 'label': "(GMT+05:00) Asia/Yekaterinburg", 'value': "Asia/Yekaterinburg" }, { 'label': "(GMT+05:00) Etc/GMT-5", 'value': "Etc/GMT-5" }, { 'label': "(GMT+05:00) Indian/Kerguelen", 'value': "Indian/Kerguelen" }, { 'label': "(GMT+05:00) Indian/Maldives", 'value': "Indian/Maldives" }, { 'label': "(GMT+05:30) Asia/Colombo", 'value': "Asia/Colombo" }, { 'label': "(GMT+05:30) Asia/Kolkata", 'value': "Asia/Kolkata" }, { 'label': "(GMT+05:45) Asia/Kathmandu", 'value': "Asia/Kathmandu" }, { 'label': "(GMT+06:00) Antarctica/Vostok", 'value': 'Antarctica/Vostok' }, { 'label': "(GMT+06:00) Asia/Almaty", 'value': "Asia/Almaty" }, { 'label': "(GMT+06:00) Asia/Bishkek", 'value': "Asia/Bishkek" }, { 'label': "(GMT+06:00) Asia/Dhaka", 'value': 'Asia/Dhaka' }, { 'label': "(GMT+06:00) Asia/Omsk", 'value': "Asia/Omsk" }, { 'label': "(GMT+06:00) Asia/Qostanay", 'value': "Asia/Qostanay" }, { 'label': "(GMT+06:00) Asia/Thimphu", 'value': "Asia/Thimphu" }, { 'label': "(GMT+06:00) Asia/Urumqi", 'value': "Asia/Urumqi" }, { 'label': "(GMT+06:00) Etc/GMT-6", 'value': "Etc/GMT-6" }, { 'label': "(GMT+06:00) Indian/Chagos", 'value': "Indian/Chagos" }, { 'label': "(GMT+06:30) Asia/Yangon", 'value': "Asia/Yangon" }, { 'label': "(GMT+06:30) Indian/Cocos", 'value': "Indian/Cocos" }, { 'label': "(GMT+07:00) Antarctica/Davis", 'value': "Antarctica/Davis" }, { 'label': "(GMT+07:00) Asia/Bangkok", 'value': "Asia/Bangkok" }, { 'label': "(GMT+07:00) Asia/Barnaul", 'value': "Asia/Barnaul" }, { 'label': "(GMT+07:00) Asia/Ho_Chi_Minh", 'value': "Asia/Ho_Chi_Minh" }, { 'label': "(GMT+07:00) Asia/Hovd", 'value': "Asia/Hovd" }, { 'label': "(GMT+07:00) Asia/Jakarta", 'value': "Asia/Jakarta" }, { 'label': "(GMT+07:00) Asia/Krasnoyarsk", 'value': "Asia/Krasnoyarsk" }, { 'label': "(GMT+07:00) Asia/Novokuznetsk", 'value': "Asia/Novokuznetsk" }, { 'label': '(GMT+07:00) Asia/Novosibirsk', 'value': "Asia/Novosibirsk" }, { 'label': "(GMT+07:00) Asia/Phnom_Penh", 'value': "Asia/Phnom_Penh" }, { 'label': "(GMT+07:00) Asia/Pontianak", 'value': "Asia/Pontianak" }, { 'label': "(GMT+07:00) Asia/Tomsk", 'value': "Asia/Tomsk" }, { 'label': '(GMT+07:00) Asia/Vientiane', 'value': "Asia/Vientiane" }, { 'label': "(GMT+07:00) Etc/GMT-7", 'value': "Etc/GMT-7" }, { 'label': "(GMT+07:00) Indian/Christmas", 'value': "Indian/Christmas" }, { 'label': "(GMT+08:00) Antarctica/Casey", 'value': "Antarctica/Casey" }, { 'label': "(GMT+08:00) Asia/Brunei", 'value': "Asia/Brunei" }, { 'label': "(GMT+08:00) Asia/Choibalsan", 'value': "Asia/Choibalsan" }, { 'label': "(GMT+08:00) Asia/Hong_Kong", 'value': "Asia/Hong_Kong" }, { 'label': "(GMT+08:00) Asia/Irkutsk", 'value': "Asia/Irkutsk" }, { 'label': "(GMT+08:00) Asia/Kuala_Lumpur", 'value': "Asia/Kuala_Lumpur" }, { 'label': "(GMT+08:00) Asia/Kuching", 'value': "Asia/Kuching" }, { 'label': "(GMT+08:00) Asia/Macau", 'value': "Asia/Macau" }, { 'label': "(GMT+08:00) Asia/Makassar", 'value': "Asia/Makassar" }, { 'label': "(GMT+08:00) Asia/Manila", 'value': "Asia/Manila" }, { 'label': "(GMT+08:00) Asia/Shanghai", 'value': 'Asia/Shanghai' }, { 'label': "(GMT+08:00) Asia/Singapore", 'value': "Asia/Singapore" }, { 'label': "(GMT+08:00) Asia/Taipei", 'value': "Asia/Taipei" }, { 'label': "(GMT+08:00) Asia/Ulaanbaatar", 'value': "Asia/Ulaanbaatar" }, { 'label': "(GMT+08:00) Australia/Perth", 'value': "Australia/Perth" }, { 'label': "(GMT+08:00) Etc/GMT-8", 'value': "Etc/GMT-8" }, { 'label': "(GMT+08:45) Australia/Eucla", 'value': "Australia/Eucla" }, { 'label': "(GMT+09:00) Asia/Chita", 'value': "Asia/Chita" }, { 'label': '(GMT+09:00) Asia/Dili', 'value': "Asia/Dili" }, { 'label': "(GMT+09:00) Asia/Jayapura", 'value': "Asia/Jayapura" }, { 'label': "(GMT+09:00) Asia/Khandyga", 'value': 'Asia/Khandyga' }, { 'label': "(GMT+09:00) Asia/Pyongyang", 'value': "Asia/Pyongyang" }, { 'label': "(GMT+09:00) Asia/Seoul", 'value': "Asia/Seoul" }, { 'label': '(GMT+09:00) Asia/Tokyo', 'value': 'Asia/Tokyo' }, { 'label': '(GMT+09:00) Asia/Yakutsk', 'value': "Asia/Yakutsk" }, { 'label': "(GMT+09:00) Etc/GMT-9", 'value': "Etc/GMT-9" }, { 'label': "(GMT+09:00) Pacific/Palau", 'value': "Pacific/Palau" }, { 'label': "(GMT+09:30) Australia/Adelaide", 'value': "Australia/Adelaide" }, { 'label': "(GMT+09:30) Australia/Broken_Hill", 'value': "Australia/Broken_Hill" }, { 'label': "(GMT+09:30) Australia/Darwin", 'value': "Australia/Darwin" }, { 'label': "(GMT+10:00) Antarctica/DumontDUrville", 'value': "Antarctica/DumontDUrville" }, { 'label': "(GMT+10:00) Antarctica/Macquarie", 'value': "Antarctica/Macquarie" }, { 'label': "(GMT+10:00) Asia/Ust-Nera", 'value': "Asia/Ust-Nera" }, { 'label': "(GMT+10:00) Asia/Vladivostok", 'value': "Asia/Vladivostok" }, { 'label': "(GMT+10:00) Australia/Brisbane", 'value': "Australia/Brisbane" }, { 'label': "(GMT+10:00) Australia/Currie", 'value': "Australia/Currie" }, { 'label': "(GMT+10:00) Australia/Hobart", 'value': "Australia/Hobart" }, { 'label': "(GMT+10:00) Australia/Lindeman", 'value': "Australia/Lindeman" }, { 'label': "(GMT+10:00) Australia/Melbourne", 'value': "Australia/Melbourne" }, { 'label': "(GMT+10:00) Australia/Sydney", 'value': "Australia/Sydney" }, { 'label': "(GMT+10:00) Etc/GMT-10", 'value': "Etc/GMT-10" }, { 'label': '(GMT+10:00) Pacific/Chuuk', 'value': "Pacific/Chuuk" }, { 'label': "(GMT+10:00) Pacific/Guam", 'value': "Pacific/Guam" }, { 'label': "(GMT+10:00) Pacific/Port_Moresby", 'value': "Pacific/Port_Moresby" }, { 'label': "(GMT+10:00) Pacific/Saipan", 'value': "Pacific/Saipan" }, { 'label': "(GMT+10:30) Australia/Lord_Howe", 'value': "Australia/Lord_Howe" }, { 'label': "(GMT+11:00) Antarctica/Casey", 'value': "Antarctica/Casey" }, { 'label': "(GMT+11:00) Asia/Magadan", 'value': "Asia/Magadan" }, { 'label': "(GMT+11:00) Asia/Sakhalin", 'value': "Asia/Sakhalin" }, { 'label': "(GMT+11:00) Asia/Srednekolymsk", 'value': "Asia/Srednekolymsk" }, { 'label': "(GMT+11:00) Etc/GMT-11", 'value': "Etc/GMT-11" }, { 'label': "(GMT+11:00) Pacific/Bougainville", 'value': "Pacific/Bougainville" }, { 'label': "(GMT+11:00) Pacific/Efate", 'value': "Pacific/Efate" }, { 'label': "(GMT+11:00) Pacific/Guadalcanal", 'value': "Pacific/Guadalcanal" }, { 'label': "(GMT+11:00) Pacific/Kosrae", 'value': "Pacific/Kosrae" }, { 'label': "(GMT+11:00) Pacific/Norfolk", 'value': "Pacific/Norfolk" }, { 'label': "(GMT+11:00) Pacific/Noumea", 'value': "Pacific/Noumea" }, { 'label': "(GMT+11:00) Pacific/Pohnpei", 'value': "Pacific/Pohnpei" }, { 'label': "(GMT+12:00) Antarctica/McMurdo", 'value': "Antarctica/McMurdo" }, { 'label': "(GMT+12:00) Asia/Anadyr", 'value': "Asia/Anadyr" }, { 'label': "(GMT+12:00) Asia/Kamchatka", 'value': "Asia/Kamchatka" }, { 'label': "(GMT+12:00) Etc/GMT-12", 'value': "Etc/GMT-12" }, { 'label': "(GMT+12:00) Pacific/Auckland", 'value': "Pacific/Auckland" }, { 'label': "(GMT+12:00) Pacific/Fiji", 'value': "Pacific/Fiji" }, { 'label': "(GMT+12:00) Pacific/Funafuti", 'value': "Pacific/Funafuti" }, { 'label': "(GMT+12:00) Pacific/Kwajalein", 'value': "Pacific/Kwajalein" }, { 'label': "(GMT+12:00) Pacific/Majuro", 'value': "Pacific/Majuro" }, { 'label': "(GMT+12:00) Pacific/Nauru", 'value': "Pacific/Nauru" }, { 'label': "(GMT+12:00) Pacific/Tarawa", 'value': "Pacific/Tarawa" }, { 'label': "(GMT+12:00) Pacific/Wake", 'value': "Pacific/Wake" }, { 'label': "(GMT+12:00) Pacific/Wallis", 'value': "Pacific/Wallis" }, { 'label': '(GMT+12:45) Pacific/Chatham', 'value': "Pacific/Chatham" }, { 'label': "(GMT+13:00) Etc/GMT-13", 'value': "Etc/GMT-13" }, { 'label': "(GMT+13:00) Pacific/Apia", 'value': "Pacific/Apia" }, { 'label': "(GMT+13:00) Pacific/Enderbury", 'value': "Pacific/Enderbury" }, { 'label': "(GMT+13:00) Pacific/Fakaofo", 'value': "Pacific/Fakaofo" }, { 'label': "(GMT+13:00) Pacific/Kanton", 'value': "Pacific/Kanton" }, { 'label': "(GMT+13:00) Pacific/Tongatapu", 'value': "Pacific/Tongatapu" }, { 'label': "(GMT+14:00) Etc/GMT-14", 'value': "Etc/GMT-14" }, { 'label': "(GMT+14:00) Pacific/Kiritimati", 'value': "Pacific/Kiritimati" }]; return (v5933, v5934) => (openBlock(), Modal(Ee, { 'data': v5932, 'id': "config-epg-timezone", 'modelValue': v5931.value, 'onUpdate:modelValue': v5934[0] || (v5934[0] = updRef113 => v5931.value = updRef113), 'logos-disabled': '' }, null, 8, .modelValue)); } }, e2 = { '__name': 'HwAccelSelector', 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ['update:modelValue'], 'setup'(selRef19) { const selRef20 = { 'nnXCc': 'modelValue', 'heXVz': "None", 'DWWFh': 'Nvidia', 'zrivT': "qsv" }, updRef114 = Pagination(selRef19, "modelValue"), v5935 = [{ 'label': "None", 'value': "none" }, { 'label': "Nvidia", 'value': "nvidia" }, { 'label': "QSV", 'value': "qsv" }]; return (v5936, v5937) => (openBlock(), Modal(Ee, { 'data': v5935, 'id': "config-hw-accel", 'modelValue': updRef114.value, 'onUpdate:modelValue': v5937[0] || (v5937[0] = updRef115 => updRef114.value = updRef115), 'logos-disabled': '' }, null, 8, .modelValue)); } }, t2 = { '__name': 'DvbSubsQualitySelector', 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ["update:modelValue"], 'setup'(selRef21) { const selRef22 = { 'OaboS': "Low", 'pYLlw': 'Medium' }, v5938 = Pagination(selRef21, "modelValue"), v5939 = [{ 'label': selRef22.OaboS, 'value': 1 }, { 'label': selRef22.pYLlw, 'value': 2 }, { 'label': 'High', 'value': 3 }]; return (v5940, v5941) => (openBlock(), Modal(Ee, { 'data': v5939, 'id': 'config-dvb-dubs-quality', 'modelValue': v5938.value, 'onUpdate:modelValue': v5941[0] || (v5941[0] = cfg10 => v5938.value = cfg10), 'logos-disabled': '' }, null, 8, .modelValue)); } }, l2 = { '__name': 'CdmTypeSelector', 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ["update:modelValue"], 'setup'(selRef23) { v5946 = Pagination(selRef23, "modelValue"), v5947 = [{ 'label': "Widevine", 'value': "widevine" }, { 'label': "PlayReady", 'value': "playready" }, { 'label': "Verimatrix", 'value': "verimatrix" }, { 'label': "FairPlay", 'value': "fairplay" }]; return (v5948, v5949) => (openBlock(), Modal(Ee, { 'data': v5947, 'id': "config-modal-cdm-type", 'modelValue': v5946.value, 'onUpdate:modelValue': v5949[0] || (v5949[0] = updRef116 => v5946.value = updRef116), 'logos-disabled': '' }, null, 8, .modelValue)); } }, o2 = { '__name': "CdmModeSelector", 'props': { 'modelValue': {}, 'modelModifiers': {} }, 'emits': ["update:modelValue"], 'setup'(v5950) { v5957 = Pagination(v5950, "modelValue"), v5958 = [{ 'label': "Internal", 'value': "internal" }, { 'label': "External", 'value': "external" }]; return (v5959, v5960) => (openBlock(), Modal(Ee, { 'data': v5958, 'id': "config-modal-cdm-mode", 'modelValue': v5957.value, 'onUpdate:modelValue': v5960[0] || (v5960[0] = updRef117 => v5957.value = updRef117), 'logos-disabled': '' }, null, 8, .modelValue)); } }, s2 = { '__name': 'CdnSelector', 'props': Toggle({ 'id': String, 'cdns': Object }, { 'modelValue': {}, 'modelModifiers': {} }), 'emits': ["update:modelValue"], 'setup'(selRef27) { v5965 = Pagination(selRef27, "modelValue"), v5966 = selRef27, v5967 = Sidebar(() => { let v5968 = [{ 'label': "Custom", 'value': "custom" }]; for (const v5969 of v5966.cdns) v5968.push({ 'label': v5969.Name, 'value': v5969.Name }); return v5968; }); return (v5970, v5971) => (openBlock(), Modal(Ee, { 'data': v5967.value, 'id': selRef27.id, 'modelValue': v5965.value, 'onUpdate:modelValue': v5971[0] || (v5971[0] = updRef118 => v5965.value = updRef118), 'logos-disabled': '' }, null, 8, ['data', 'id', "modelValue"])); } }, a2 = .id, r2 = { 'class': "relative p-4 w-full max-w-md max-h-full" }, n2 = { 'class': "relative rounded-xl shadow-xl bg-black" }, i2 = { 'class': 'p-4 md:p-5 text-center' }, d2 = { 'class': "mb-3 text-white whitespace-pre-wrap break-words" }, u2 = { 'class': "flex justify-center gap-4" }, c2 = { '__name': "PairingModal", 'props': ['id', "message"], 'emits': ['confirmation', "sendInput"], 'setup'(v5972, { expose: v5973, emit: v5974 }) { v5986 = v5972, v5987 = v5974, v5988 = withCtx(''); let v5989 = {}; const elRef33 = () => { const elRef34 = document.getElementById("pairing-modal-" + v5986.id), elRef35 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, modal28 = { 'id': 'confirmation-modal-' + v5986.id, 'override': true }; v5989 = new initFlowbite(elRef34, elRef35, modal28); }, modal29 = () => { v5989.toggle(); }, v5990 = () => { (true) ? (v5987("sendInput", v5988.value), v5988.value = '') : this.isLoading = false; }, loadRef76 = () => { v5987("confirmation"), v5989.hide(); }; return v5973({ 'toggleModal': modal29 }), withDirectives(() => { z_util(), elRef33(); }), (modal30, modal31) => (openBlock(), createBlock("div", { 'id': "pairing-modal-" + v5986.id, 'tabindex': '-1', 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, [e("div", r2, [e("div", n2, [e("div", i2, [createVNode(At), e('h3', d2, useAttrs(v5986.message), 1), isRef(e('input', { 'type': 'text', 'onUpdate:modelValue': modal31[0] || (modal31[0] = updRef119 => v5988.value = updRef119), 'class': 'block w-full p-2 border rounded-xl bg-linear-to-b bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300 mb-5', 'placeholder': "Pairing code (if needed)" }, null, 512), [ [Dropdown, v5988.value] ]), e("div", u2, [createVNode(he, { 'onClick': loadRef76, 'text': "Close", 'data-modal-hide': "logout-modal" }), createVNode(ke, { 'onClick': v5990, 'text': "Send input" })])])])])], 8, a2)); } }, m2 = {}, p2 = { 'class': "w-5 h-5 me-2", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }; function v2(v5991, v5992) { v5995 = { 'BfALs': function(v5996) { return v5996(); }, 'MJaOl': function(v5997, v5998, v5999, v6000) { return v5997(v5998, v5999, v6000); }, 'zeYaI': 'svg', 'EJLVi': "evenodd" }; return openBlock(), v5995.MJaOl(createBlock, "svg", p2, [...v5992[0] || (v5992[0] = [e("path", { 'fill-rule': "evenodd", 'd': "M8.64 4.737A7.97 7.97 0 0 1 12 4a7.997 7.997 0 0 1 6.933 4.006h-.738c-.65 0-1.177.25-1.177.9 0 .33 0 2.04-2.026 2.008-1.972 0-1.972-1.732-1.972-2.008 0-1.429-.787-1.65-1.752-1.923-.374-.105-.774-.218-1.166-.411-1.004-.497-1.347-1.183-1.461-1.835ZM6 4a10.06 10.06 0 0 0-2.812 3.27A9.956 9.956 0 0 0 2 12c0 5.289 4.106 9.619 9.304 9.976l.054.004a10.12 10.12 0 0 0 1.155.007h.002a10.024 10.024 0 0 0 1.5-.19 9.925 9.925 0 0 0 2.259-.754 10.041 10.041 0 0 0 4.987-5.263A9.917 9.917 0 0 0 22 12a10.025 10.025 0 0 0-.315-2.5A10.001 10.001 0 0 0 12 2a9.964 9.964 0 0 0-6 2Zm13.372 11.113a2.575 2.575 0 0 0-.75-.112h-.217A3.405 3.405 0 0 0 15 18.405v1.014a8.027 8.027 0 0 0 4.372-4.307ZM12.114 20H12A8 8 0 0 1 5.1 7.95c.95.541 1.421 1.537 1.835 2.415.209.441.403.853.637 1.162.54.712 1.063 1.019 1.591 1.328.52.305 1.047.613 1.6 1.316 1.44 1.825 1.419 4.366 1.35 5.828Z", 'clip-rule': "evenodd" }, null, -1)])]); } const f2 = J(m2, [ ["render", v2] ]), g2 = {}, h2 = { 'class': 'w-5 h-5 me-2', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function b2(v6001, v6002) { return openBlock(), createBlock("svg", h2, [...v6002[0] || (v6002[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M21 13v-2a1 1 0 0 0-1-1h-.757l-.707-1.707.535-.536a1 1 0 0 0 0-1.414l-1.414-1.414a1 1 0 0 0-1.414 0l-.536.535L14 4.757V4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v.757l-1.707.707-.536-.535a1 1 0 0 0-1.414 0L4.929 6.343a1 1 0 0 0 0 1.414l.536.536L4.757 10H4a1 1 0 0 0-1 1v2a1 1 0 0 0 1 1h.757l.707 1.707-.535.536a1 1 0 0 0 0 1.414l1.414 1.414a1 1 0 0 0 1.414 0l.536-.535 1.707.707V20a1 1 0 0 0 1 1h2a1 1 0 0 0 1-1v-.757l1.707-.708.536.536a1 1 0 0 0 1.414 0l1.414-1.414a1 1 0 0 0 0-1.414l-.535-.536.707-1.707H20a1 1 0 0 0 1-1Z" }, null, -1), e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z" }, null, -1)])]); } const w2 = J(g2, [ ["render", b2] ]), x2 = {}, y2 = { 'class': "w-5 h-5 me-2", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function k2(v6020, v6021) { v6023 = { 'BEcch': function(v6024, v6025, v6026, v6027) { return v6024(v6025, v6026, v6027); }, 'UsoJl': 'svg', 'mWclB': function(v6028, v6029, v6030, v6031, v6032) { return v6028(v6029, v6030, v6031, v6032); } }; return openBlock(), v6023.BEcch(createBlock, "svg", y2, [...v6021[0] || (v6021[0] = [v6023.mWclB(e, "path", { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-width': '2', 'd': "M6 4v10m0 0a2 2 0 1 0 0 4m0-4a2 2 0 1 1 0 4m0 0v2m6-16v2m0 0a2 2 0 1 0 0 4m0-4a2 2 0 1 1 0 4m0 0v10m6-16v10m0 0a2 2 0 1 0 0 4m0-4a2 2 0 1 1 0 4m0 0v2" }, null, -1)])]); } const S2 = J(x2, [ ["render", k2] ]), $2 = {}, C2 = { 'class': 'w-5 h-5 me-2', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': '0 0 24 24' }; function M2(v6033, v6034) { v6036 = { 'UTtHe': "svg", 'snRnc': function(v6037, v6038, v6039, v6040, v6041) { return v6037(v6038, v6039, v6040, v6041); }, 'OkJoj': "path", 'ZKizO': 'evenodd', 'CLTmC': "M12 6a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7Zm-1.5 8a4 4 0 0 0-4 4 2 2 0 0 0 2 2h7a2 2 0 0 0 2-2 4 4 0 0 0-4-4h-3Zm6.82-3.096a5.51 5.51 0 0 0-2.797-6.293 3.5 3.5 0 1 1 2.796 6.292ZM19.5 18h.5a2 2 0 0 0 2-2 4 4 0 0 0-4-4h-1.1a5.503 5.503 0 0 1-.471.762A5.998 5.998 0 0 1 19.5 18ZM4 7.5a3.5 3.5 0 0 1 5.477-2.889 5.5 5.5 0 0 0-2.796 6.293A3.501 3.501 0 0 1 4 7.5ZM7.1 12H6a4 4 0 0 0-4 4 2 2 0 0 0 2 2h.5a5.998 5.998 0 0 1 3.071-5.238A5.505 5.505 0 0 1 7.1 12Z" }; return openBlock(), createBlock("svg", C2, [...v6034[0] || (v6034[0] = [v6036.snRnc(e, "path", { 'fill-rule': "evenodd", 'd': "M12 6a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7Zm-1.5 8a4 4 0 0 0-4 4 2 2 0 0 0 2 2h7a2 2 0 0 0 2-2 4 4 0 0 0-4-4h-3Zm6.82-3.096a5.51 5.51 0 0 0-2.797-6.293 3.5 3.5 0 1 1 2.796 6.292ZM19.5 18h.5a2 2 0 0 0 2-2 4 4 0 0 0-4-4h-1.1a5.503 5.503 0 0 1-.471.762A5.998 5.998 0 0 1 19.5 18ZM4 7.5a3.5 3.5 0 0 1 5.477-2.889 5.5 5.5 0 0 0-2.796 6.293A3.501 3.501 0 0 1 4 7.5ZM7.1 12H6a4 4 0 0 0-4 4 2 2 0 0 0 2 2h.5a5.998 5.998 0 0 1 3.071-5.238A5.505 5.505 0 0 1 7.1 12Z", 'clip-rule': "evenodd" }, null, -1)])]); } const A2 = J($2, [ ['render', M2] ]), I2 = { 'name': "IconCode" }, T2 = { 'class': "w-5 h-5 text-neutral-300", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function P2(v6042, v6043, v6044, v6045, v6046, v6047) { return openBlock(), createBlock("svg", T2, [...v6043[0] || (v6043[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m5 4-2 2 2 2m4-4 2 2-2 2m5-12v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1Z" }, null, -1)])]); } const xl = J(I2, [ ["render", P2] ]), V2 = { 'class': "text-yellow-300 text-lg font-medium" }, U2 = { 'class': "flex flex-row justify-between mt-5" }, _2 = { 'class': "flex grow gap-2 justify-between" }, E2 = { 'class': 'flex flex-col lg:flex-row gap-2' }, L2 = { 'class': "flex flex-col lg:flex-row gap-2" }, D2 = { 'class': "mt-5" }, G2 = { 'class': "mb-4 border-b border-white/15" }, R2 = { 'class': 'flex flex-wrap -mb-px text-sm font-medium text-center', 'id': "default-tab", 'data-tabs-toggle': "#default-tab-content", 'role': "tablist", 'data-tabs-active-classes': "text-yellow-300 font-bold border-yellow-300", 'data-tabs-inactive-classes': "border-none font-medium text-white" }, N2 = { 'class': 'me-2', 'role': "presentation" }, j2 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': 'network-tab', 'data-tabs-target': "#network", 'type': "button", 'role': "tab", 'aria-controls': "network", 'aria-selected': 'false' }, O2 = { 'class': "me-2", 'role': 'presentation' }, B2 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': 'settings-tab', 'data-tabs-target': "#settings", 'type': "button", 'role': 'tab', 'aria-controls': 'settings', 'aria-selected': "false" }, H2 = { 'class': 'me-2', 'role': "presentation" }, F2 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': "parameters-tab", 'data-tabs-target': "#parameters", 'type': "button", 'role': "tab", 'aria-controls': "parameters", 'aria-selected': 'false' }, q2 = { 'role': 'presentation' }, W2 = { 'class': "inline-flex items-center justify-center p-2 border-b-2 rounded-t-lg", 'id': 'accounts-tab', 'data-tabs-target': '#accounts', 'type': "button", 'role': "tab", 'aria-controls': 'accounts', 'aria-selected': "false" }, z2 = { 'id': "default-tab-content" }, Z2 = { 'class': "hidden p-4 rounded-xl border border-white/15 bg-black", 'id': "network", 'role': "tabpanel", 'aria-labelledby': 'network-tab' }, K2 = { 'class': "hidden p-4 rounded-xl border border-white/15 bg-black", 'id': "settings", 'role': 'tabpanel', 'aria-labelledby': "settings-tab" }, J2 = { 'class': "grid grid-cols-1 xl:grid-cols-8 gap-4 mt-3" }, Y2 = { 'class': 'col-span-2' }, Q2 = { 'class': "relative" }, X2 = { 'class': 'absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none' }, eb = { 'class': "col-span-2" }, tb = { 'class': "col-span-2" }, lb = { 'class': "relative" }, ob = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none" }, sb = { 'class': "hidden p-4 rounded-xl border border-white/15 bg-black", 'id': "parameters", 'role': "tabpanel", 'aria-labelledby': "parameters-tab" }, ab = { 'class': "grid grid-cols-1 lg:grid-cols-5 gap-4" }, rb = { 'class': "space-y-2" }, nb = { 'class': "space-y-2" }, ib = { 'class': "space-y-2" }, db = { 'class': "space-y-2" }, ub = { 'class': "space-y-2" }, cb = { 'class': "grid grid-cols-1 lg:grid-cols-5 gap-4" }, mb = { 'class': "space-y-2" }, pb = { 'class': "space-y-2" }, vb = { 'class': "space-y-2" }, fb = { 'class': "space-y-2" }, gb = { 'class': "space-y-2" }, hb = { 'class': 'grid grid-cols-1 lg:grid-cols-5 gap-4' }, bb = { 'class': "space-y-2" }, wb = { 'class': "space-y-2" }, xb = { 'class': "space-y-2" }, yb = { 'class': "grid grid-cols-1 lg:grid-cols-5 gap-4" }, kb = { 'class': "space-y-2" }, Sb = { 'class': "space-y-2" }, $b = { 'class': "space-y-2" }, Cb = { 'class': 'space-y-2' }, Mb = { 'class': "grid grid-cols-1 lg:grid-cols-5 col-span-4 gap-4" }, Ab = { 'class': "space-y-2" }, Ib = { 'class': "space-y-2" }, Tb = { 'class': "space-y-2 col-span-2" }, Pb = { 'class': 'space-y-2' }, Vb = { 'class': "grid grid-cols-2 gap-4 mt-3" }, Ub = { 'class': "col-span-2" }, _b = { 'class': 'hidden p-4 rounded-xl border border-white/15 bg-black', 'id': 'accounts', 'role': "tabpanel", 'aria-labelledby': "accounts-tab" }, Eb = { 'class': "flex flex-col lg:flex-row gap-4 mb-5" }, Lb = { 'key': 0, 'class': 'grid grid-cols-1 md:grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-4 gap-4' }, Db = { 'class': "flex gap-2 mt-3 justify-between mt-3" }, Gb = { 'class': "flex lg:flex-row flex-col gap-2" }, Rb = { 'key': 0, 'class': "flex lg:flex-row flex-col gap-2" }, Nb = { 'class': "flex flex-col lg:flex-row mt-5 gap-2" }, jb = { 'key': 0 }, Ob = { 'class': "grid grid-cols-1 gap-4" }, Bb = { 'id': "add-edit-stream-modal", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, Hb = { 'class': "relative p-4 w-full max-w-6xl max-h-full" }, Fb = { 'key': 0, 'class': 'relative rounded-xl shadow-xl bg-black' }, qb = { 'class': 'flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15 gap-2' }, Wb = { 'class': 'flex flex-col' }, zb = { 'class': "text-lg font-semibold text-white" }, Zb = { 'class': "text-neutral-500 text-sm" }, Kb = { 'class': "p-4 md:p-5 space-y-2" }, Jb = { 'class': 'grid grid-cols-1 lg:grid-cols-2 gap-4' }, Yb = { 'class': "grid col-span-1 gap-3" }, Qb = { 'class': 'grid grid-cols-1 lg:grid-cols-2 gap-4' }, Xb = { 'class': "grid col-span-1 gap-3" }, ew = { 'for': "dropzone-file-stream-logo", 'class': "flex flex-col items-center overflow-hidden justify-center w-full max-h-32 border-white/15 border rounded-xl cursor-pointer bg-black hover:bg-white/5 transition-all ease-in-out" }, tw = .src, lw = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, ow = { 'class': "grid grid-cols-1 lg:grid-cols-2 gap-4" }, sw = { 'class': "space-y-3" }, aw = { 'class': "grid lg:grid-cols-3 gap-4" }, rw = { 'class': "grid lg:grid-cols-4 gap-4" }, nw = { 'key': 0, 'class': "flex flex-row items-start gap-4 lg:col-span-1" }, iw = .rows, dw = { 'key': 0, 'class': "block mb-2 text-sm font-medium text-white" }, uw = { 'key': 1, 'class': 'grid grid-cold-1 lg:grid-cols-3 gap-4' }, cw = { 'key': 2 }, mw = { 'key': 3 }, pw = { 'key': 4 }, vw = { 'class': "space-y-3" }, fw = { 'class': "columns-2" }, gw = { 'class': "relative" }, hw = { 'class': 'absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none' }, bw = { 'class': "relative" }, ww = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, xw = { 'class': 'columns-2' }, yw = { 'class': "relative" }, kw = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none" }, Sw = { 'class': 'relative' }, $w = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, Cw = { 'key': 5, 'class': "space-y-3" }, Mw = { 'class': 'grid lg:grid-cols-2 gap-4' }, Aw = { 'class': "columns-2" }, Iw = { 'class': 'relative' }, Tw = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, Pw = { 'class': 'relative' }, Vw = { 'class': 'absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none' }, Uw = { 'key': 6 }, _w = { 'key': 7 }, Ew = { 'class': "p-4 border border-white/15 rounded-xl" }, Lw = { 'class': "p-2 border border-white/15 rounded-xl" }, Dw = { 'class': "grid grid-cols-1 lg:grid-cols-3 xl:grid-cols-4" }, Gw = { 'class': "flex flex-row justify-end gap-4 pb-10 mt-5" }, Rw = { 'id': "add-edit-account-modal", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, Nw = { 'class': "relative p-4 w-full max-w-3xl max-h-full" }, jw = { 'class': "relative rounded-xl shadow-xl bg-linear-to-b bg-black" }, Ow = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, Bw = { 'class': "text-lg font-semibold text-white" }, Hw = { 'class': 'space-y-2' }, Fw = { 'key': 0, 'class': "my-5" }, qw = { 'class': 'flex flex-row justify-end gap-4' }, Ww = { 'id': 'import-provider-accounts', 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, zw = { 'class': "relative p-4 w-full max-w-md max-h-full" }, Zw = { 'class': 'relative rounded-xl shadow-xl bg-black' }, Kw = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, Jw = { 'class': "p-4 md:p-5" }, Yw = { 'class': 'grid space-y-4 grid-cols-1' }, Qw = { 'class': "col-span-2" }, Xw = { 'for': "dropzone-import-file", 'class': 'flex flex-col items-center overflow-hidden justify-center w-full h-32 border-white/15 border rounded-xl cursor-pointer bg-black/50 hover:bg-white/5 transition-all ease-in-out' }, ex = { 'key': 0, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, tx = { 'key': 1, 'class': "flex flex-col items-center justify-center pt-5 pb-6" }, lx = { 'class': "flex flex-row justify-end gap-4" }, ox = { '__name': 'ConfigView', 'setup'(cfg11) { v6596 = mergeProps(), v6597 = Ae(), v6598 = Le(), v6599 = cv(), v6600 = He(), v6601 = wo(), v6602 = it(); let v6603, v6604, v6605, v6606, v6607, v6608; const v6609 = withCtx(''), v6610 = withCtx(null); let v6611 = null, v6612 = null, v6613 = null, v6614 = withCtx(Object), v6615 = withCtx({ 'Enabled': false, 'User': '', 'Password': '', 'Device': '', 'Pin': '', 'Description': '', 'NetworkOverride': false, 'ScriptNetwork': '', 'ScriptProxy': '', 'ScriptBind': '', 'ScriptDoh': '', 'ScriptDns': '', 'ScriptWorker': '', 'ManifestNetwork': '', 'ManifestProxy': '', 'ManifestBind': '', 'ManifestDoh': '', 'ManifestDns': '', 'ManifestWorker': '', 'MediaNetwork': '', 'MediaProxy': '', 'MediaBind': '', 'MediaDoh': '', 'MediaDns': '', 'MediaWorker': '' }), manif11 = withCtx(''), proxyRef2 = withCtx(false), v6616 = withCtx(false); const v6617 = withCtx([]), v6618 = withCtx(), v6619 = withCtx(), v6620 = withCtx(), v6621 = withCtx("Are you sure want to delete selected items?"), v6622 = withCtx(), v6623 = withCtx(), v6624 = withCtx(), v6625 = withCtx(), v6626 = withCtx(), v6627 = withCtx(); let v6628 = withCtx(null), v6629 = withCtx(null), v6630 = withCtx(false), v6631 = withCtx(false), v6632 = Object; const v6633 = withCtx(''), v6634 = withCtx(''), v6635 = withCtx(''), v6636 = withCtx(''), v6637 = withCtx(''), v6638 = withCtx(''), v6639 = withCtx(''), v6640 = withCtx(''), v6641 = withCtx(''), v6642 = withCtx(null), v6643 = withCtx(null); let v6644 = {}; const v6645 = withCtx(false); withCtx({ 'startDate': '', 'endDate': '', 'startTime': '', 'endTime': '' }); const v6646 = v6647 => { const v6648 = v6647.target.files[0]; if (v6648 && v6648.type.startsWith("image/")) { const v6649 = new FileReader(); v6649.onload = v6650 => { v6614.value.LogoBase64 = v6650.target.result; }, v6649.readAsDataURL(v6648); } else console.error("Invalid image file"); }, v6651 = Sidebar(() => v6614.value.ModeOverride ? v6614.value.OutputMode === 'protooutput' : v6597.provider.OutputMode === "protooutput"), prov195 = Sidebar(() => v6614.value.ModeOverride ? v6614.value.OutputMode === "custom" : v6597.provider.OutputMode === "custom"), v6652 = Sidebar(() => v6617.value.map(v6653 => v6653.Name).join(', ')), v6654 = Sidebar(() => v6617.value.map(v6655 => v6655.Id).join(',')), v6656 = () => { v6642.value = null, v6644.toggle(); }, v6657 = v6658 => { if (v6642.value = v6658.target.files[0], v6642.value) { const v6659 = new FileReader(); v6659.onload = v6660 => { v6643.value = v6660.target.result; }, v6659.readAsText(v6642.value); } }, v6661 = async () => { await v6599.importAccounts(v6597.getSelectedProviderId, v6642.value.name, v6643.value), await v6681(), v6656() }, v6682 = async () => { const v6683 = await v6599.exportAccounts(v6597.getSelectedProviderId); if (!v6683) { if ((false)) v6684.getAllProviders(); else { v6628.value = "Error exporting accounts.", v6624.value.toggleModal(); return; } } const prov196 = "o11-accounts-" + v6597.getSelectedProviderId + ".txt", prov197 = new Blob([v6683], { 'type': "text/plain" }), prov198 = URL.createObjectURL(prov197), prov199 = document.createElement('a'); prov199.href = prov198, prov199.download = prov196, prov199.click(), setTimeout(() => URL.revokeObjectURL(prov198), 0); }, v6685 = () => { const v6686 = document.getElementById("import-provider-accounts"), v6687 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v6688 = { 'id': "import-provider", 'override': true }; v6644 = new initFlowbite(v6686, v6687, v6688); }, v6689 = v6690 => { (true) ? (v6629.value = v6690, v6626.value.toggleModal()) : (v6691(), v6692(), v6693()); }, v6694 = v6695 => dayjs(v6695 * (1000)).format("DD/MM/YYYY"), v6696 = v6697 => dayjs(v6697 * (1000)).format("HH:mm"), v6698 = withCtx({ 'currentPage': 1, 'rowsPerPage': 42 }), v6699 = v6700 => { const v6701 = { 'tOZFL': function(v6702) { return v6702(); } }; (true) ? (v6596.replace({ 'name': "config", 'params': { 'provider': v6597.getSelectedProviderId, 'type': v6700 }, 'query': { 'server': v6600.getSelectedServer.Id } }), srv106()) : (srv107.value = !srv108.value, srv109.value ? v6701.tOZFL(srv110) : srv111.closeWsClient()); }, srv112 = srv113 => { v6698.value.currentPage = srv113, v6703(); }, v6704 = Sidebar(() => { if ((true)) { const v6705 = ((v6698.value.currentPage - 1) * v6698.value.rowsPerPage), v6706 = v6705 + v6698.value.rowsPerPage; return v6598.streams?..Providers ? [] : v6598.streams ? v6598.streams.slice(v6705, v6706) : []; } else { const stream284 = stream285("router-link"); return stream286(), stream287(stream288, null, [v6707("nav", v6708, [v6709("div", v6710, [v6711("div", v6712, [v6713("div", v6714, [v6715('button', { 'id': "o11-navbar", 'onClick': v6716, 'data-drawer-backdrop': "true", 'type': "button", 'class': "inline-flex items-center p-2 text-sm text-white hover:text-white/75 active:text-white/75 rounded-xl sm:hidden focus:outline-hidden transition-opacity" }, [v6717[5] || (v6718[5] = v6719("span", { 'class': "sr-only" }, "Open sidebar", -1)), v6720(v6721)]), v6722(stream284, { 'to': "/providers" }, { 'default': v6723(() => [...v6724[6] || (v6725[6] = [v6726('img', { 'class': "h-6 mx-3", 'src': v6727, 'alt': "o11-logo" }, null, -1)])]), '_': 1 }), v6728(stream284, { 'to': "/providers" }, { 'default': v6729(() => [...v6730[7] || (v6731[7] = [v6732('div', { 'class': 'flex flex-col justify-start' }, [v6733("span", { 'class': 'font-black text-sm text-white h-auto' }, "PRO"), v6734('div', { 'class': 'text-[0.65rem] font-medium text-white' }, " OTT Streamer ")], -1)])]), '_': 1 })]), v6735("div", v6736, [v6737(v6738).currentSelectedServer.Id ? (v6739(), v6740("div", { 'key': 0, 'class': v6741(["max-w-14 lg:max-w-fit font-mono font-bold text-[9px] lg:text-xs rounded-sm p-0.5 px-1 text-center", { 'bg-blue-600 text-white': (v6742(v6743).currentSelectedServer.Id !== "local"), 'bg-yellow-300 text-black': (srv114(srv115).currentSelectedServer.Id === "local") }]) }, srv116(srv117(srv118).currentSelectedServer.Name), 3)) : srv119('', true), srv120('div', v6744, [v6745(v6746).isAuth ? (v6747(), v6748("div", v6749, [v6750[8] || (v6751[8] = v6752("svg", { 'class': "w-5 h-5 text-white", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }, [v6753("path", { 'fill-rule': "evenodd", 'd': "M12 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4h-4Z", 'clip-rule': "evenodd" })], -1)), v6754("span", v6755, v6756(v6757(v6758).username), 1)])) : v6759('', true), v6760(v6761, { 'class': "text-xs text-center" })])])])])]), v6762("aside", v6763, [v6764("div", v6765, [v6766('ul', v6767, [v6768('li', { 'onClick': v6769 }, [v6770(stream284, { 'to': "/providers", 'class': v6771(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6772.$route.path.includes("/providers"), 'text-white hover:bg-neutral-50/10 font-bold': !v6773.$route.path.includes("/providers") }]) }, { 'default': v6774(() => [(v6775(), v6776('svg', { 'class': v6777(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': !prov200.$route.path.includes('/providers'), 'text-white': !prov201.$route.path.includes("/providers") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': "0 0 24 24" }, [...v6778[9] || (v6779[9] = [v6780('path', { 'fill-rule': "evenodd", 'd': 'M2 6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6Zm4.996 2a1 1 0 0 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 8a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Zm-4.004 3a1 1 0 1 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 11a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Zm-4.004 3a1 1 0 1 0 0 2h.01a1 1 0 1 0 0-2h-.01ZM11 14a1 1 0 1 0 0 2h6a1 1 0 1 0 0-2h-6Z', 'clip-rule': 'evenodd' }, null, -1)])], 2)), v6781[10] || (v6782[10] = v6783("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Providers", -1))]), '_': 1 }, 8, ["class"])]), v6784.value ? (v6785(), v6786('li', { 'key': 0, 'onClick': v6787 }, [v6788(stream284, { 'to': "/linear", 'class': v6789(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6790.$route.path.startsWith("/linear"), 'text-white hover:bg-neutral-50/10': !v6791.$route.path.startsWith("/linear") }]) }, { 'default': v6792(() => [(v6793(), v6794("svg", { 'class': v6795(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6796.$route.path.startsWith("/linear"), 'text-white': !v6797.$route.path.startsWith("/linear") }]), 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'viewBox': "0 0 24 24", 'fill': "none" }, [...v6798[11] || (v6799[11] = [v6800('path', { 'd': "M21.0254 8.40554C20.7987 8.20998 20.5218 8.09678 20.3141 8.02584C20.0833 7.94703 19.8184 7.88184 19.5383 7.82624C18.9764 7.71473 18.2727 7.62624 17.4908 7.55704C15.9221 7.41822 13.955 7.34998 12 7.34998C10.045 7.34997 8.0779 7.41821 6.50923 7.55704C5.7273 7.62623 5.02357 7.71473 4.46174 7.82624C4.18161 7.88184 3.91672 7.94703 3.68594 8.02583C3.4782 8.09677 3.20126 8.20998 2.97462 8.40553C2.76112 8.58976 2.63916 8.81815 2.56971 8.97159C2.49263 9.14189 2.43333 9.32752 2.38581 9.50895C2.29052 9.87283 2.21854 10.3144 2.16365 10.7872C2.05319 11.7386 2 12.9242 2 14.1032C2 15.283 2.05326 16.4858 2.16311 17.4726C2.21784 17.9643 2.28883 18.4229 2.38053 18.807C2.46043 19.1416 2.59126 19.5854 2.85131 19.906C3.08981 20.2 3.43086 20.3352 3.60561 20.3981C3.82965 20.4789 4.09015 20.5429 4.36115 20.596C4.90739 20.703 5.60964 20.7873 6.39637 20.853C7.97657 20.9851 9.99449 21.05 12 21.05C14.0055 21.05 16.0234 20.9851 17.6036 20.853C18.3904 20.7873 19.0926 20.703 19.6388 20.596C19.9098 20.5429 20.1703 20.4789 20.3944 20.3981C20.5691 20.3352 20.9102 20.2 21.1487 19.906C21.4087 19.5854 21.5396 19.1416 21.6195 18.807C21.7112 18.4229 21.7822 17.9643 21.8369 17.4726C21.9467 16.4858 22 15.283 22 14.1032C22 12.9242 21.9468 11.7386 21.8363 10.7872C21.7815 10.3144 21.7095 9.87284 21.6142 9.50896C21.5667 9.32752 21.5074 9.14189 21.4303 8.9716C21.3608 8.81815 21.2389 8.58976 21.0254 8.40554Z", 'stroke': 'currentColor', 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1), v6801("line", { 'x1': '11.4858', 'y1': "6.44995", 'x2': "8.39999", 'y2': "3.36416", 'stroke': 'currentColor', 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1), v6802("line", { 'x1': '1', 'y1': '-1', 'x2': "5.36396", 'y2': '-1', 'transform': 'matrix(0.707107 -0.707107 -0.707107 -0.707107 11.1 6.44995)', 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': 'round' }, null, -1)])], 2)), v6803[12] || (v6804[12] = v6805("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "Linear", -1))]), '_': 1 }, 8, ["class"])])) : v6806('', true), v6807.value ? (v6808(), v6809('li', { 'key': 1, 'onClick': v6810 }, [v6811(stream284, { 'to': "/events", 'class': v6812(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6813.$route.path.startsWith("/events"), 'text-white hover:bg-neutral-50/10': !v6814["$route"].path.startsWith("/events") }]) }, { 'default': v6815(() => [(v6816(), v6817("svg", { 'class': v6818(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6819.$route.path.startsWith("/events"), 'text-white': !v6820.$route.path.startsWith("/events") }]), 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v6821[13] || (v6822[13] = [v6823("path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M4 10h16m-8-3V4M7 7V4m10 3V4M5 20h14a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H5a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1Zm3-7h.01v.01H8V13Zm4 0h.01v.01H12V13Zm4 0h.01v.01H16V13Zm-8 4h.01v.01H8V17Zm4 0h.01v.01H12V17Zm4 0h.01v.01H16V17Z" }, null, -1)])], 2)), v6824[14] || (v6825[14] = v6826('span', { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "Events", -1))]), '_': 1 }, 8, ["class"])])) : v6827('', true), v6828.value ? (v6829(), v6830('li', { 'key': 2, 'onClick': v6831 }, [v6832(stream284, { 'to': "/vod", 'class': v6833(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6834.$route.path.startsWith("/vod"), 'text-white hover:bg-neutral-50/10': !v6835.$route.path.startsWith("/vod") }]) }, { 'default': v6836(() => [(v6837(), v6838("svg", { 'class': v6839(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6840.$route.path.startsWith("/vod"), 'text-white': !v6841.$route.path.startsWith('/vod') }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v6842[15] || (v6843[15] = [v6844("path", { 'stroke': "currentColor", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m14-4v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1ZM9 12h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Zm5.697 2.395v-.733l1.269-1.219v2.984l-1.268-1.032Z" }, null, -1)])], 2)), v6845[16] || (v6846[16] = v6847("span", { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, "VOD", -1))]), '_': 1 }, 8, ["class"])])) : v6848('', true), v6849.value ? (v6850(), v6851('li', { 'key': 3, 'onClick': v6852 }, [v6853(stream284, { 'to': "/recordings", 'class': v6854(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6855.$route.path.startsWith("/recordings"), 'text-white hover:bg-neutral-50/10': !v6856["$route"].path.startsWith("/recordings") }]) }, { 'default': v6857(() => [(v6858(), v6859("svg", { 'class': v6860(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6861.$route.path.startsWith("/recordings"), 'text-white': !v6862.$route.path.startsWith("/recordings") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v6863[17] || (v6864[17] = [v6865('path', { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M14 6H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1Zm7 11-6-2V9l6-2v10Z" }, null, -1)])], 2)), v6866[18] || (v6867[18] = v6868('span', { 'class': 'flex-1 ms-3 whitespace-nowrap font-semibold' }, 'Recordings', -1))]), '_': 1 }, 8, ["class"])])) : rec104('', true), rec105.value ? (rec106(), v6869('li', { 'key': 4, 'onClick': v6870 }, [v6871(stream284, { 'to': "/epg", 'class': v6872(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6873.$route.path.startsWith("/epg"), 'text-white hover:bg-neutral-50/10': !v6874.$route.path.startsWith("/epg") }]) }, { 'default': v6875(() => [(v6876(), v6877('svg', { 'class': v6878(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': epg49.$route.path.startsWith('/epg'), 'text-white': !epg50.$route.path.startsWith('/epg') }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v6879[19] || (v6880[19] = [v6881('path', { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M11 9h6m-6 3h6m-6 3h6M6.996 9h.01m-.01 3h.01m-.01 3h.01M4 5h16a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z" }, null, -1)])], 2)), v6882[20] || (v6883[20] = v6884("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, 'EPG', -1))]), '_': 1 }, 8, ["class"])])) : epg51('', true), epg52.value ? (epg53(), v6885('li', { 'key': 5, 'onClick': v6886 }, [v6887(stream284, { 'to': "/monitoring", 'class': v6888(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6889.$route.path === "/monitoring", 'text-white hover:bg-neutral-50/10': (v6890.$route.path !== "/monitoring") }]) }, { 'default': v6891(() => [(v6892(), v6893("svg", { 'class': v6894(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6895.$route.path === "/monitoring", 'text-white': v6896.$route.path !== "/monitoring" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': '0 0 24 24' }, [...v6897[21] || (v6898[21] = [v6899("path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-linejoin': "round", 'stroke-width': '2', 'd': 'M3 15v4m6-6v6m6-4v4m6-6v6M3 11l6-5 6 5 5.5-5.5' }, null, -1)])], 2)), v6900[22] || (v6901[22] = v6902('span', { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Monitoring", -1))]), '_': 1 }, 8, ["class"])])) : v6903('', true), v6904.value ? (v6905(), v6906('li', { 'key': 6, 'onClick': v6907 }, [v6908(stream284, { 'to': "/logs", 'class': v6909(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v6910.$route.path === "/logs"), 'text-white hover:bg-neutral-50/10': (v6911.$route.path !== "/logs") }]) }, { 'default': v6912(() => [(v6913(), v6914("svg", { 'class': transRef23(['shrink-0 w-5 h-5 transition duration-75', { 'text-black': transRef24.$route.path === "/logs", 'text-white': transRef25.$route.path !== "/logs" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v6915[23] || (v6916[23] = [v6917("path", { 'stroke': 'currentColor', 'stroke-linecap': "round", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m4 8h6m-6-4h6m4-8v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1Z" }, null, -1)])], 2)), v6918[24] || (v6919[24] = v6920('span', { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, 'Logs', -1))]), '_': 1 }, 8, ["class"])])) : v6921('', true), v6922.value ? (v6923(), v6924('li', { 'key': 7, 'onClick': v6925 }, [v6926(stream284, { 'to': "/users", 'class': v6927(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v6928.$route.path === "/users"), 'text-white hover:bg-neutral-50/10': (v6929.$route.path !== "/users") }]) }, { 'default': v6930(() => [(v6931(), v6932("svg", { 'class': transRef26(['shrink-0 w-5 h-5 transition duration-75', { 'text-black': transRef27.$route.path === "/users", 'text-white': usr63.$route.path !== '/users' }]), 'aria-hidden': 'true', 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': '0 0 24 24' }, [...v6933[25] || (v6934[25] = [v6935("path", { 'fill-rule': "evenodd", 'd': "M8 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm-2 9a4 4 0 0 0-4 4v1a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-1a4 4 0 0 0-4-4H6Zm7.25-2.095c.478-.86.75-1.85.75-2.905a5.973 5.973 0 0 0-.75-2.906 4 4 0 1 1 0 5.811ZM15.466 20c.34-.588.535-1.271.535-2v-1a5.978 5.978 0 0 0-1.528-4H18a4 4 0 0 1 4 4v1a2 2 0 0 1-2 2h-4.535Z", 'clip-rule': "evenodd" }, null, -1)])], 2)), v6936[26] || (v6937[26] = v6938('span', { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Users", -1))]), '_': 1 }, 8, ["class"])])) : v6939('', true), v6940.value && v6941.value ? (v6942(), v6943('li', { 'key': 8, 'onClick': v6944 }, [v6945(stream284, { 'to': "/provider/config", 'class': v6946(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6947.$route.path.includes("/config"), 'text-white hover:bg-neutral-50/10': !v6948.$route.path.includes("/config") }]) }, { 'default': v6949(() => [(v6950(), v6951("svg", { 'class': v6952(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v6953.$route.path.includes("/config"), 'text-white': !v6954.$route.path.includes("/config") }]), 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "currentColor", 'viewBox': '0 0 24 24' }, [...v6955[27] || (v6956[27] = [v6957("path", { 'fill-rule': "evenodd", 'd': "M9.586 2.586A2 2 0 0 1 11 2h2a2 2 0 0 1 2 2v.089l.473.196.063-.063a2.002 2.002 0 0 1 2.828 0l1.414 1.414a2 2 0 0 1 0 2.827l-.063.064.196.473H20a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-.089l-.196.473.063.063a2.002 2.002 0 0 1 0 2.828l-1.414 1.414a2 2 0 0 1-2.828 0l-.063-.063-.473.196V20a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2v-.089l-.473-.196-.063.063a2.002 2.002 0 0 1-2.828 0l-1.414-1.414a2 2 0 0 1 0-2.827l.063-.064L4.089 15H4a2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2h.09l.195-.473-.063-.063a2 2 0 0 1 0-2.828l1.414-1.414a2 2 0 0 1 2.827 0l.064.063L9 4.089V4a2 2 0 0 1 .586-1.414ZM8 12a4 4 0 1 1 8 0 4 4 0 0 1-8 0Z", 'clip-rule': 'evenodd' }, null, -1)])], 2)), v6958[28] || (v6959[28] = v6960('span', { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, 'Config', -1))]), '_': 1 }, 8, ["class"])])) : cfg22('', true), cfg23.value ? (cfg24(), v6961('li', { 'key': 9, 'onClick': v6962 }, [v6963(stream284, { 'to': "/servers", 'class': v6964(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v6965.$route.path === "/servers"), 'text-white hover:bg-gray-100 hover:bg-neutral-50/10 font-bold': (srv121["$route"].path !== '/servers') }]) }, { 'default': srv122(() => [(srv123(), srv124("svg", { 'class': srv125(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': srv126.$route.path === '/servers', 'text-white': srv127.$route.path !== "/servers" }]), 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }, [...v6966[29] || (v6967[29] = [v6968("path", { 'd': "M18 7H18.01M15 7H15.01M18 17H18.01M15 17H15.01M6 10H18C18.9319 10 19.3978 10 19.7654 9.84776C20.2554 9.64477 20.6448 9.25542 20.8478 8.76537C21 8.39782 21 7.93188 21 7C21 6.06812 21 5.60218 20.8478 5.23463C20.6448 4.74458 20.2554 4.35523 19.7654 4.15224C19.3978 4 18.9319 4 18 4H6C5.06812 4 4.60218 4 4.23463 4.15224C3.74458 4.35523 3.35523 4.74458 3.15224 5.23463C3 5.60218 3 6.06812 3 7C3 7.93188 3 8.39782 3.15224 8.76537C3.35523 9.25542 3.74458 9.64477 4.23463 9.84776C4.60218 10 5.06812 10 6 10ZM6 20H18C18.9319 20 19.3978 20 19.7654 19.8478C20.2554 19.6448 20.6448 19.2554 20.8478 18.7654C21 18.3978 21 17.9319 21 17C21 16.0681 21 15.6022 20.8478 15.2346C20.6448 14.7446 20.2554 14.3552 19.7654 14.1522C19.3978 14 18.9319 14 18 14H6C5.06812 14 4.60218 14 4.23463 14.1522C3.74458 14.3552 3.35523 14.7446 3.15224 15.2346C3 15.6022 3 16.0681 3 17C3 17.9319 3 18.3978 3.15224 18.7654C3.35523 19.2554 3.74458 19.6448 4.23463 19.8478C4.60218 20 5.06812 20 6 20Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': 'round' }, null, -1)])], 2)), v6969[30] || (v6970[30] = v6971('span', { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Servers", -1))]), '_': 1 }, 8, ["class"])])) : v6972('', true), v6973.value ? (v6974(), v6975('li', { 'key': 10, 'onClick': v6976 }, [v6977(stream284, { 'to': "/jobs", 'class': v6978(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6979.$route.path.includes('/jobs'), 'text-white hover:bg-neutral-50/10 font-bold': !v6980.$route.path.includes("/jobs") }]) }, { 'default': v6981(() => [(v6982(), v6983("svg", { 'class': transRef28(['w-5 h-5 transition duration-75', { 'text-black': !transRef29.$route.path.includes("/jobs"), 'text-white': !transRef30.$route.path.includes("/jobs") }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [...v6984[31] || (v6985[31] = [v6986('path', { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m20.9532 11.7634-2.0523-2.05225-2.0523 2.05225 2.0523 2.0523 2.0523-2.0523Zm-1.3681-2.73651-4.1046-4.10457L12.06 8.3428l4.1046 4.1046 3.4205-3.42051Zm-4.1047 2.73651-2.7363-2.73638-8.20919 8.20918 2.73639 2.7364 8.2091-8.2092Z" }, null, -1), v6987("path", { 'stroke': 'currentColor', 'stroke-linejoin': "round", 'stroke-width': '2', 'd': 'm12.9306 3.74083 1.8658 1.86571-2.0523 2.05229-1.5548-1.55476c-.995-.99505-3.23389-.49753-3.91799.18657l2.73639-2.73639c.6841-.68409 1.9901-.74628 2.9229.18658Z' }, null, -1)])], 2)), v6988[32] || (v6989[32] = v6990("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Jobs", -1))]), '_': 1 }, 8, ["class"])])) : v6991('', true), v6992.value ? (v6993(), v6994('li', { 'key': 11, 'onClick': v6995 }, [v6996(stream284, { 'to': "/search", 'class': v6997(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': v6998.$route.path.includes("/search"), 'text-white hover:bg-gray-100 hover:bg-neutral-50/10 font-bold': !v6999["$route"].path.includes("/search") }]) }, { 'default': v7000(() => [(v7001(), v7002('svg', { 'class': transRef31(['shrink-0 w-5 h-5 transition duration-75', { 'text-black': !transRef32.$route.path.includes("/search"), 'text-white': !transRef33.$route.path.includes('/search') }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }, [...v7003[33] || (v7004[33] = [v7005("path", { 'stroke': "currentColor", 'stroke-linecap': 'round', 'stroke-width': '2', 'd': "m21 21-3.5-3.5M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0Z" }, null, -1)])], 2)), v7006[34] || (v7007[34] = v7008("span", { 'class': "flex-1 ms-3 whitespace-nowrap font-semibold" }, "Search", -1))]), '_': 1 }, 8, ["class"])])) : v7009('', true)]), v7010('ul', v7011, [v7012('li', null, [v7013("div", v7014, [v7015.value ? (v7016(), v7017(srv128, { 'key': 0, 'onOnServerSelected': srv129 })) : srv130('', true), srv131(srv132, { 'id': "sidebar", 'name': "Playlist" })])])]), v7018('ul', v7019, [v7020.value ? (v7021(), v7022('li', { 'key': 0, 'onClick': v7023 }, [v7024(stream284, { 'to': "/help", 'class': v7025(["flex items-center p-2 text-gray-900 rounded-xl group", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400': (v7026["$route"].path === "/help"), 'text-white hover:bg-neutral-50/10': (v7027.$route.path !== "/help") }]) }, { 'default': v7028(() => [(v7029(), v7030('svg', { 'class': v7031(["shrink-0 w-5 h-5 transition duration-75", { 'text-black': v7032.$route.path === "/help", 'text-white': v7033.$route.path !== "/help" }]), 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'fill': 'currentColor', 'viewBox': "0 0 21 21" }, [...v7034[35] || (v7035[35] = [v7036("path", { 'd': 'm5.4 2.736 3.429 3.429A5.046 5.046 0 0 1 10.134 6c.356.01.71.06 1.056.147l3.41-3.412c.136-.133.287-.248.45-.344A9.889 9.889 0 0 0 10.269 1c-1.87-.041-3.713.44-5.322 1.392a2.3 2.3 0 0 1 .454.344Zm11.45 1.54-.126-.127a.5.5 0 0 0-.706 0l-2.932 2.932c.029.023.049.054.078.077.236.194.454.41.65.645.034.038.078.067.11.107l2.927-2.927a.5.5 0 0 0 0-.707Zm-2.931 9.81c-.024.03-.057.052-.081.082a4.963 4.963 0 0 1-.633.639c-.041.036-.072.083-.115.117l2.927 2.927a.5.5 0 0 0 .707 0l.127-.127a.5.5 0 0 0 0-.707l-2.932-2.931Zm-1.442-4.763a3.036 3.036 0 0 0-1.383-1.1l-.012-.007a2.955 2.955 0 0 0-1-.213H10a2.964 2.964 0 0 0-2.122.893c-.285.29-.509.634-.657 1.013l-.01.016a2.96 2.96 0 0 0-.21 1 2.99 2.99 0 0 0 .489 1.716c.009.014.022.026.032.04a3.04 3.04 0 0 0 1.384 1.1l.012.007c.318.129.657.2 1 .213.392.015.784-.05 1.15-.192.012-.005.02-.013.033-.018a3.011 3.011 0 0 0 1.676-1.7v-.007a2.89 2.89 0 0 0 0-2.207 2.868 2.868 0 0 0-.27-.515c-.007-.012-.02-.025-.03-.039Zm6.137-3.373a2.53 2.53 0 0 1-.35.447L14.84 9.823c.112.428.166.869.16 1.311-.01.356-.06.709-.147 1.054l3.413 3.412c.132.134.249.283.347.444A9.88 9.88 0 0 0 20 11.269a9.912 9.912 0 0 0-1.386-5.319ZM14.6 19.264l-3.421-3.421c-.385.1-.781.152-1.18.157h-.134c-.356-.01-.71-.06-1.056-.147l-3.41 3.412a2.503 2.503 0 0 1-.443.347A9.884 9.884 0 0 0 9.732 21H10a9.9 9.9 0 0 0 5.044-1.388 2.519 2.519 0 0 1-.444-.348ZM1.735 15.6l3.426-3.426a4.608 4.608 0 0 1-.013-2.367L1.735 6.4a2.507 2.507 0 0 1-.35-.447 9.889 9.889 0 0 0 0 10.1c.1-.164.217-.316.35-.453Zm5.101-.758a4.957 4.957 0 0 1-.651-.645c-.033-.038-.077-.067-.11-.107L3.15 17.017a.5.5 0 0 0 0 .707l.127.127a.5.5 0 0 0 .706 0l2.932-2.933c-.03-.018-.05-.053-.078-.076ZM6.08 7.914c.03-.037.07-.063.1-.1.183-.22.384-.423.6-.609.047-.04.082-.092.129-.13L3.983 4.149a.5.5 0 0 0-.707 0l-.127.127a.5.5 0 0 0 0 .707L6.08 7.914Z' }, null, -1)])], 2)), v7037[36] || (v7038[36] = v7039('span', { 'class': "ms-3 whitespace-nowrap font-semibold" }, "Help", -1))]), '_': 1 }, 8, ["class"])])) : v7040('', true), v7041('li', null, [v7042("button", { 'type': "button", 'onClick': v7043, 'class': "w-full flex items-center p-2 text-white hover:bg-neutral-50/10 rounded-xl group" }, [...v7044[37] || (v7045[37] = [v7046("svg", { 'class': "shrink-0 w-5 h-5 text-white group-hover:text-gray-900 group-hover:text-white transition duration-75", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }, [v7047("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M20 12H8m12 0-4 4m4-4-4-4M9 4H7a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h2" })], -1), v7048("span", { 'class': "ms-3 whitespace-nowrap font-semibold" }, "Log out", -1)])])]), v7049.value ? (v7050(), v7051('li', v7052, [v7053("button", { 'type': "button", 'onClick': v7054, 'class': "w-full flex items-center p-2 text-white hover:bg-neutral-50/10 rounded-xl group" }, [...v7055[38] || (v7056[38] = [v7057("Shutdown", 2)])])])) : v7058('', true)])])]), v7059("div", v7060, [v7061("div", v7062, [v7063("div", v7064, [v7065("button", { 'type': "button", 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center", }, [v7071(v7072), v7073[39] || (v7074[39] = v7075("span", { 'class': "sr-only" }, "Close modal", -1))]), v7076("div", v7077, [v7078(v7079), v7080[40] || (v7081[40] = v7082('h3', { 'class': "mb-5 text-base text-white" }, " Are you sure you want to logout from o11? ", -1)), v7083("div", v7084, [v7085(v7086, { 'onClick': v7087, 'text': "Yes" }), v7088(v7089, { 'text': 'No', })])])])])]), v7095("div", v7096, [v7097("div", v7098, [v7099('div', v7100, [v7101("button", { 'type': "button", 'class': "absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center", }, [v7107(v7108), v7109[41] || (v7110[41] = v7111("span", { 'class': "sr-only" }, "Close modal", -1))]), v7112("div", v7113, [v7114(v7115), v7116[42] || (v7117[42] = v7118('h3', { 'class': "text-base text-white" }, " Are you sure you want to shutdown o11? ", -1)), v7119[43] || (v7120[43] = v7121('h3', { 'class': "text-base text-white" }, " To shutdown insert the code: ", -1)), v7122('h2', v7123, v7124(v7125.value), 1), v7126(v7127("input", { 'type': "text", 'maxlength': '4', 'onUpdate:modelValue': updRef124[3] || (updRef125[3] = updRef126 => updRef127.value = updRef126), 'class': "mb-5 w-auto text-center p-2 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Insert code here" }, null, 512), [ [v7128, v7129.value] ]), v7130("div", v7131, [v7132(v7133, { 'onClick': v7134, 'text': "Shutdown" }), v7135(v7136, { 'text': "Cancel", })])])])])])], 64); } }), v7142 = Sidebar(() => v6704.value.map(v7143 => v7143.Id).join(',')), v7144 = async () => { const v7145 = v6654.value; await v6597.massUpdate(v6597.getSelectedProviderId, (v7145 || "all"), v6632.action, v6632.param, v6632.value), await prov202(), prov203(), v6632 = Object; }, stream289 = Sidebar(() => { switch (v6598.getSelectedStreamType) { case "linear": return "Linear"; case "vod": return "VOD"; case "event": return "Events"; default: return ''; } }), v7146 = Sidebar(() => { switch (v6598.getSelectedStreamType) { case "linear": return "Linear"; case "vod": return "VOD"; case "event": return "Event"; default: return ''; } }), v7147 = async () => { const v7148 = await v6598.refreshStreams(v6597.getSelectedProviderId, v6598.getSelectedStreamType); (v7148.data.Code === 200) ? v7148.data.Message.includes("No change") ? v6624.value.toggleModal() : v6622.value.toggleModal() : v6624.value.toggleModal(), v6628.value = v7148.data.Message; }, stream290 = async () => { await v6598.applyRefreshStreams(v6597.getSelectedProviderId, v6598.getSelectedStreamType), await prov202(), v6622.value.toggleModal(); }, stream291 = async () => { if ((false)) v7149(); else { const prov204 = await v6601.refreshEpg(v6597.getSelectedProviderId); prov204.data && (v6628.value = prov204.data.Message, v6624.value.toggleModal()); } }, prov205 = () => { modal33 = { 'ndIkP': function(modal34, modal35, modal36) { return modal34(modal35, modal36); }, 'zYPIm': "onToggleSelection" }; if ((false)) { const v7150 = { 'aGiwz': "onPlayReplay" }, v7151 = v7152, v7153 = v7154, v7155 = v7156(), v7157 = v7158(v7151.selected); v7159(() => v7155.isAdmin); const v7160 = v7161 => { v7153(v7150.aGiwz, v7161); }, v7162 = () => { v7153(modal33.zYPIm, v7151.event.EventId); }; return evtRef35(() => v7151.selected, evtRef36 => { v7157.value = evtRef36; }), (evtRef37, evtRef38) => (evtRef39(), selRef28('tr', { 'class': selRef29(["bg-linear-to-tr bg-black border-t border-white/15 text-white", { 'from-neutral-600/50 to-black/25': evtRef40.event.Running }]) }, [evtRef41('td', evtRef42, [evtRef43(evtRef44("input", { 'type': 'checkbox', 'onUpdate:modelValue': evtRef38[0] || (evtRef38[0] = updRef128 => v7157.value = updRef128), 'onClick': v7162, 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [v7163, v7157.value] ])]), v7164('td', v7165, [v7166("span", v7167, v7168(v7169.event.EventName), 1)]), v7170('td', v7171, [evtRef45("span", evtRef46, evtRef47(evtRef48(evtRef49).formatDate(evtRef50.event.Start)), 1)]), evtRef51('td', evtRef52, [evtRef53('span', evtRef54, evtRef55(evtRef56(evtRef57).formatDate(evtRef58.event.End)), 1)]), evtRef59('td', evtRef60, [evtRef61("span", v7172, v7173(v7174.event.EventId), 1)]), v7175('td', v7176, [v7177("div", v7178, [v7179("button", { 'onClick': evtRef38[1] || (evtRef38[1] = evtRef62 => v7160(evtRef63.event.StreamingUrl)), 'class': "p-1 hover:bg-blue-500 rounded-full my-auto transition-all ease-in-out" }, [evtRef64(evtRef65)])])]), stream292('td', stream293, [stream294(stream295, { 'stream': stream296.event, 'id': 'm3u-' + stream297.event.EventId, 'name': "Links" }, null, 8, ["stream", 'id'])])], 2)); } else v6630.value = !v6630.value; }, v7180 = () => { v6631.value = !v6631.value; }, v7181 = v7182 => { v6614.value.Video = v7182.map(v7183 => v7183.Id).join(','); }, v7186 = v7187 => { v6614.value.Audio = v7187.map(v7188 => v7188.Id).join(','); }, v7189 = v7190 => { (true) ? v6614.value.Subtitles = v7190.map(v7191 => v7191.Id).join(',') : v7192("onPlayStream", v7193.epg.StreamId); }, v7194 = v7195 => { const v7196 = { 'DpjQr': "onEditStream" }; (true) ? v6614.value.FirstAudioTrack = v7195 : v7197(v7196.DpjQr, v7198.stream); }, v7199 = v7200 => { const v7201 = { 'OrAqP': "logs" }; (true) ? v6614.value.FirstSubtitlesTrack = v7200 : v7202.push({ 'name': v7201.OrAqP, 'params': { 'provider': stream298.provider, 'stream': stream299.event.EventId }, 'query': { 'server': stream300.serverId } }); }, stream301 = Sidebar(() => v6598.streams?..Providers ? [] : v6598.streams ? v6598.streams?..every(stream302 => v6617.value.some(stream303 => stream303.Id === stream302.Id)) : false), stream304 = Sidebar(() => v6704.value ? v6704.value.every(v7203 => v6617.value.some(v7204 => v7204.Id === v7203.Id)) : false), prov203 = v7205 => { v7205 && (v6632 = v7205); let v7206 = "all"; (v6617.value.length > 0) ? v7206 = v6652.value : (v6634.value !== '') && !stream301.value && (v7206 = v6704.value.map(v7207 => v7207.Name).join(', ')), v7206 = (v7206 || "all"), v6633.value = "Are you sure you want to apply changes to:\n " + v7206 + ' ?', v6623.value.toggleModal(); }, v7208 = () => { v6621.value = 'Are you sure want to delete ' + v6652.value + ' ?', v6618.value.toggleModal(); }, modal37 = () => { v6621.value = 'Are you sure want to delete provider ' + v6597.provider.Name + '?', v6619.value.toggleModal(); }, prov206 = prov207 => { (false) ? prov208.setItem("o11-preferences-sort", modal38.stringify(this.sortMode)) : (prov207 && (modal39(), v6617.value.push({ 'Id': prov207.Id, 'Name': prov207.Name }), v6621.value = "Are you sure want to delete " + v6652.value + ' ?'), v6620.value.toggleModal()); }, selRef30 = async () => { await v6598.refresh(v6597.getSelectedProviderId, v6598.getSelectedStreamType), await prov202(); }, prov209 = async () => { await v6598.stopRefresh(v6597.getSelectedProviderId, v6598.getSelectedStreamType); }, prov210 = async prov211 => { (false) ? v7209("onClearManifest", v7210.stream) : (await v6598.refresh(v6597.getSelectedProviderId, prov211.Type, prov211.Id), await v6598.updateStream(v6597.getSelectedProviderId, prov211.Id)); }, v7211 = async () => { const v7212 = v6704.value.map(v7213 => v7213.Id).join(','); await v6598.refresh(v6597.getSelectedProviderId, v6598.getSelectedStreamType, v7212), await prov202(); }, stream305 = async stream306 => { stream306.Manifest = '', await v6598.edit(v6597.getSelectedProviderId, stream306); }, stream307 = async v7214 => { await v6598.flushKeys(v6597.getSelectedProviderId, v7214.Id), await v6598.updateStream(v6597.getSelectedProviderId, v7214.Id); }, stream308 = async stream309 => { await v6598.refreshKeys(v6597.getSelectedProviderId, stream309.Id), await v6598.updateStream(v6597.getSelectedProviderId, stream309.Id); }, stream310 = () => { const stream311 = { 'yjpqM': function(stream312) { return stream312(); }, 'GUabH': function(v7215, v7216, v7217) { return v7215(v7216, v7217); } }; (false) ? (v7218(), stream311.GUabH(prov212, "onDeleteAccount", prov213)) : v6597.edit(v6597.provider.Id, v6597.provider); }, prov214 = async () => { (false) ? (prov215.hide(), prov216("confirmation")) : await v6597.cacheLogos(v6597.getSelectedProviderId, v6598.getSelectedStreamType); }, prov217 = async () => { const prov218 = await v6597.exportProvider(v6597.getSelectedProviderId); if (!prov218) { v6628.value = "Error exporting provider.", v6624.value.toggleModal(); return; } const prov219 = "o11-" + v6597.getSelectedProviderId + '.cfg', prov220 = new Blob([JSON.stringify(prov218, null, 2)], { 'type': "text/plain" }), prov221 = URL.createObjectURL(prov220), elRef36 = document.createElement('a'); elRef36.href = prov221, elRef36.download = prov219, elRef36.click(), setTimeout(() => URL.revokeObjectURL(prov221), 0); }, elRef37 = async () => { await v6597.pushKeys(v6597.getSelectedProviderId); }, v7219 = async () => { const prov222 = await v6597.exportKeys(v6597.getSelectedProviderId); if (!prov222) { v6628.value = "Error exporting keys.", v6624.value.toggleModal(); return; } const prov223 = "o11-" + v6597.getSelectedProviderId + "-keys.txt", v7220 = new Blob([prov222], { 'type': "text/plain" }), v7221 = URL.createObjectURL(v7220), elRef38 = document.createElement('a'); elRef38.href = v7221, elRef38.download = prov223, elRef38.click(), setTimeout(() => URL.revokeObjectURL(v7221), 0); }, elRef39 = async () => { const prov224 = await v6597.exportManifestAndKeys(v6597.getSelectedProviderId); if (!prov224) { v6628.value = "Error exporting provider and manifest keys.", v6624.value.toggleModal(); return; } const prov225 = "o11-" + v6597.getSelectedProviderId + '.txt', v7222 = new Blob([prov224], { 'type': "text/plain" }), v7223 = URL.createObjectURL(v7222), v7224 = document.createElement('a'); v7224.href = v7223, v7224.download = prov225, v7224.click(), setTimeout(() => URL.revokeObjectURL(v7223), 0); }, v7225 = async () => { const v7226 = v6654.value, v7227 = await v6597.exportProvider(v6597.getSelectedProviderId, v7226); if (!v7227) { v6628.value = "Error exporting selected streams.", v6624.value.toggleModal(); return; } const prov226 = "o11-" + v6597.getSelectedProviderId + ".cfg", prov227 = new Blob([JSON.stringify(v7227, null, 2)], { 'type': "text/plain" }), prov228 = URL.createObjectURL(prov227), creRef5 = document.createElement('a'); creRef5.href = prov228, creRef5.download = prov226, creRef5.click(), setTimeout(() => URL.revokeObjectURL(prov228), 0); }, v7228 = async () => { if ((false)) { const prov229 = prov230.Providers[prov231].Streams.find(prov232 => prov232.Id === prov233.Id); return prov229 ? { ...prov234, ...prov229 } : prov235; } else { const v7229 = v6654.value; await v6598["delete"](v6597.getSelectedProviderId, v7229), await prov202(), modal39(), v7208(); } }, v7230 = async () => { const v7231 = v6654.value; await v6598["delete"](v6597.getSelectedProviderId, v7231), await prov202(), modal39(), prov206(); }, v7232 = () => { stream301.value ? v6617.value = [] : v6617.value = v6598.streams.map(v7233 => ({ 'Id': v7233.Id, 'Name': v7233.Name })); }, v7234 = () => { stream304.value ? v6617.value = [] : v6617.value = v6704.value.map(v7235 => ({ 'Id': v7235.Id, 'Name': v7235.Name })); }, modal39 = () => { v6617.value = []; }, delRef30 = async delRef31 => { (false) ? this.error = delRef32 : await v6598.toggleStreamPlayback(delRef31, v6597.getSelectedProviderId, "all", v6598.getSelectedStreamType); const v7239 = v6704.value.map(v7240 => v7240.Id).join(','); await v6598.toggleStreamPlayback(v7238, v6597.getSelectedProviderId, v7239, v6598.getSelectedStreamType); }, v7241 = async () => { await v6598.startAutostarts(v6597.getSelectedProviderId, v6598.getSelectedStreamType); }, v7242 = async () => { await v6598.startOnAirs(v6597.getSelectedProviderId); }, v7243 = v7244 => { const v7245 = v6617.value.findIndex(v7246 => v7246.Id === v7244.Id); (v7245 !== -1) ? v6617.value.splice(v7245, 1) : v6617.value.push({ 'Id': v7244.Id, 'Name': v7244.Name }); }, v7247 = v7248 => { v6610.value = v7248[0].Url, v6627.value.playStream(v6610.value); }, prov202 = async () => { (v6597.getSelectedProviderId != null) && (await v6598.getStreams(v6597.getSelectedProviderId, v6598.getSelectedStreamType, v6609.value, v6634.value, v6645.value), await v6703()); }, v7249 = async () => { (true) ? (v7250(), srv106(), v6634.value = '', await v6596.replace({ 'name': "config", 'params': { 'provider': v6597.getSelectedProviderId, 'type': v6598.getSelectedStreamType }, 'query': { 'server': v6600.getSelectedServer.Id } }), await prov236(), await prov202(), await v6681()) : srv133.value.Headers.Media = srv134.parse(srv135.value); }, v7251 = v7252 => { let v7253 = null; if (v6614.value.Cdn) { for (const v7254 of v6614.value.Cdn) if ((v7254.ManifestUrl === v7252)) { if ((false)) { if (!/^([0-1][0-9]|2[0-3]):([0-5][0-9])$/ .test(v7255)) throw new v7256("Invalid time format. Please use HH:MM format."); const v7257 = v7258(v7259, "HH:mm").utc(), v7260 = v7257.hours(), v7261 = v7257.minutes(); return (v7260 * (60) * (60) + v7261 * (60)); } else { v7253 = v7254.Name, v6614.value.Manifest = v7254.ManifestUrl; break; } } else v7253 = 'custom'; v6614.value.CdnName = v7253; } }; Carousel(() => v6614.value.Manifest, v7262 => { v7251(v7262); }), Carousel(() => v6614.value.CdnName, v7263 => { if ((true)) { if (v6614.value.Cdn) { for (const v7264 of v6614.value.Cdn) if ((v7264.Name === v7263)) { if ((false)) this.error = errRef139; else { v6614.value.Manifest = v7264.ManifestUrl; break; } } } } else { } }), Carousel(() => v6614.value.UseCdm, () => { !v6614.value.CdmMode && !v6614.value.CdmType && !v6614.value.ScriptAccountsUser && !proxyRef2.value && (v6614.value.CdmMode = "internal", v6614.value.CdmType = "widevine", v6614.value.ScriptAccountsUser = "provider"); }); const v7273 = () => { v7280 = { 'XDqhI': function(v7281, v7282, v7283) { return v7281(v7282, v7283); }, 'xBiAL': function(v7284, v7285) { return v7284 === v7285; }, 'NOvQz': "rrlmg", 'QVIhR': "eIUKQ", 'Vhopm': "Error parsing media headers", 'SzEMZ': "error", 'hYHzI': "Audio", 'GQqVJ': "Video", 'cguOd': function(v7286, v7287) { return (v7286 === v7287); }, 'cTpmB': "Subtitles", 'vABeJ': function(v7288, v7289) { return (v7288 !== v7289); }, 'yDCQm': "HcSeI", 'QpmqK': function(v7290, v7291) { return (v7290 !== v7291); }, 'rNTUF': "msoOk", 'FdeZc': "Phvfp", 'VCwwb': "Error parsing HLS key headers" }; Carousel(v6597.provider, Rating((v7292, v7293) => { stream310(); }, 1000)), Carousel(v6639, (v7294, v7295) => { try { if ((true)) v6597.provider.Headers2.Manifest = JSON.parse(v7294); else { } } catch { v6602.showNotification("Error parsing manifest headers", "error"); } }), Carousel(v6640, notif43 => { const notif44 = { 'dwIKi': function(notif45, notif46, notif47) { return notif45(notif46, notif47); } }; try { (false) ? notif44.dwIKi(v7304, "onPlayStream", v7305) : v6597.provider.Headers2.Media = JSON.parse(notif43); } catch { v6602.showNotification("Error parsing media headers", "error"); } }), Carousel(v6641, (v7306, v7307) => { if (v7280.vABeJ("HcSeI", "HcSeI")) { if (v7308.type === "Audio") return v7309.stream.AudioList ? [...v7310.stream.AudioList] : []; if ((v7311.type === "Video")) return v7312.stream.VideoList ? [...vid14.stream.VideoList] : []; if (v7280.cguOd(stream313.type, "Subtitles")) return stream314.stream.SubtitlesList ? [...stream315.stream.SubtitlesList] : []; } else try { v7280.QpmqK("msoOk", "Phvfp") ? v6597.provider.Headers2.HlsKey = JSON.parse(v7306) : this.isLoading = false; } catch { v6602.showNotification("Error parsing HLS key headers", "error"); } }); }, prov236 = async () => { await v6597.get(v6597.getSelectedProviderId), v6639.value = JSON.stringify(v6597.provider.Headers2.Manifest ? v6597.provider.Headers2.Manifest : {}), v6640.value = JSON.stringify(v6597.provider.Headers2.Media ? v6597.provider.Headers2.Media : {}), v6641.value = JSON.stringify(v6597.provider.Headers2.HlsKey ? v6597.provider.Headers2.HlsKey : {}), v7273() }, v7316 = () => { v6637.value = '{}', v6636.value = '{}', v6638.value = '{}', v6635.value = '', selRef31(), v6614.value = { 'Type': v6598.getSelectedStreamType, 'Keys': '', 'Headers': { 'Manifest': '{}', 'Media': '{}' }, 'ScriptNetwork': '', 'ManifestNetwork': '', 'MediaNetwork': '' }, proxyRef2.value = false, v6612.toggle(); }, togRef45 = async () => { prov237() || (await v6598.add(v6597.getSelectedProviderId, v6614.value), await prov202(), v6598.setCurrentSelectedStreamType(v6614.value.Type), v6609.value = v6614.value.Name + '$', v6612.hide()); }; function prov237() { const stream316 = { 'NahkP': function(v7317) { return v7317(); } }; if (v6614.value.Keys = v6635.value ? v6635.value.split(/[\s\n]+/).map(v7318 => v7318.trim()) : [], v6636.value) try { if ((false)) throw v7319.log("response data error", v7320), this.error = v7321, v7322; else v6614.value.Headers.Manifest = JSON.parse(v6636.value); } catch (v7323) { return v6602.showNotification("Error parsing manifest headers", "error"), v7323; } if (v6637.value) try { v6614.value.Headers.Media = JSON.parse(v6637.value); } catch (v7325) { return v6602.showNotification("Error parsing media headers", "error"), v7325; } if (v6638.value) try { v6614.value.Headers.HlsKey = JSON.parse(v6638.value); } catch (v7327) { return v6602.showNotification("Error parsing HLS key headers", "error"), v7327; } if ((v6614.value.Type === "event")) { const v7328 = document.getElementById("start-date"), v7329 = document.getElementById('end-date'), v7330 = document.getElementById("start-time"), v7331 = document.getElementById("end-time"), v7332 = dayjs.tz(v7328.value + ' ' + v7330.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), v7333 = dayjs.tz(v7329.value + ' ' + v7331.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(); v6614.value.Start = v7332, v6614.value.End = v7333; } if (v6614.value.DailyOnAir) { const elRef40 = document.getElementById("onair-end-time"), elRef41 = document.getElementById("onair-start-time"); v6614.value.DailyStartTime = de.getSecondsSinceMidnightUtc(elRef41.value), v6614.value.DailyEndTime = de.getSecondsSinceMidnightUtc(elRef40.value);; } if (v6614.value.Cdn && v6614.value.CdnName && (v6614.value.CdnName !== "Custom")) { for (const v7337 of v6614.value.Cdn) if ((v7337.Name === v6614.value.CdnName)) { v6614.value.Manifest = v7337.ManifestUrl; break; } } } const manif12 = async () => { prov237() || (await v6598.edit(v6597.getSelectedProviderId, v6614.value), v6612.hide(), await v6598.updateStream(v6597.getSelectedProviderId, v6614.value.Id)); }, stream317 = async () => { const stream318 = { 'BXABQ': "recordings" }; (await v6599.edit(v6597.getSelectedProviderId, v6615.value, manif11.value), await v6681(), v6613.toggle()); }, prov242 = async () => { (await v6599.add(v6597.getSelectedProviderId, v6615.value), v6613.toggle(), await v6681(), await prov236()); }, v7342 = async v7343 => { await v6599["delete"](v6597.getSelectedProviderId, v7343.User), await v6681(), await prov236(); }, v7344 = async () => { await v6599.enableAll(v6597.getSelectedProviderId), await v6681(); }, v7345 = async () => { await v6599.disableAll(v6597.getSelectedProviderId), await v6681(); }, delRef33 = async () => { await v6599.deleteDisabled(v6597.getSelectedProviderId), await v6681(); }, delRef34 = async delRef35 => { const delRef36 = await v6599.login(v6597.getSelectedProviderId, delRef35.User); v6628.value = delRef36.data.Message, v6624.value.toggleModal(); }, modal40 = async modal41 => { modal43 = { 'ZVDyK': function(modal44, modal45) { return (modal44 === modal45); }, 'npvRj': "iufiU" }, v7346 = await v6599.pair(v6597.getSelectedProviderId, modal41.User); v6628.value = v7346.data.Message, v6625.value.toggleModal(), v6611 = setInterval(async () => { const modal46 = { 'dhXIN': "Error exporting provider and manifest keys." }; if (modal43.ZVDyK(modal43.npvRj, "naykD")) { v7347.value = modal46.dhXIN, v7348.value.toggleModal(); return; } else { const v7349 = await v6599.getPairStatus(v6597.getSelectedProviderId); v6628.value = v7349.data.Message; } }, 1000); }, v7350 = async v7351 => { const v7352 = await v6599.pairInput(v7351, v6597.getSelectedProviderId); v6628.value = v7352.data.Message; }, v7353 = () => { (v6611 != null) && (v6599.pairStop(v6597.getSelectedProviderId), clearInterval(v6611)); }, v6681 = async () => { v6597.getSelectedProviderId && await v6599.get(v6597.getSelectedProviderId); }, v6703 = async () => { await v6598.updateStreamStatus_WS(v6597.getSelectedProviderId, v6598.getSelectedStreamType, v7142.value); }, stream319 = stream320 => { const stream321 = { 'MJTgX': function(stream322) { return stream322(); } }; (true) ? (v6614.value = { ...stream320 }, v6635.value = v6614.value.Keys?..join('\n'), v6636.value = JSON.stringify(v6614.value.Headers?..Manifest, null, 2), v6637.value = JSON.stringify(v6614.value.Headers?..Media, null, 2), v6638.value = JSON.stringify(v6614.value.Headers?..HlsKey, null, 2), v7251(v6614.value.Manifest), proxyRef2.value = true, v6612.show(), manif13()) : (manif14.value = manif15.value, stream321.MJTgX(manif16)); }, manif17 = () => { v6612.hide(); }, v7358 = (v7359 = null) => { v6616.value = v7359, v6616.value ? (manif11.value = v7359.User, v6615.value = { ...v7359 }) : v6615.value = { 'Enabled': true, 'User': '', 'Password': '', 'Device': '', 'Pin': '', 'Description': '', 'NetworkOverride': false, 'ScriptNetwork': '', 'ScriptProxy': '', 'ScriptBind': '', 'ScriptDoh': '', 'ScriptDns': '', 'ScriptWorker': '', 'ManifestNetwork': '', 'ManifestProxy': '', 'ManifestBind': '', 'ManifestDoh': '', 'ManifestDns': '', 'ManifestWorker': '', 'MediaNetwork': '', 'MediaProxy': '', 'MediaBind': '', 'MediaDoh': '', 'MediaDns': '', 'MediaWorker': '' }, v6613.toggle(); }, togRef46 = () => { if ((false)) return this.APP_URL.split('//')[1]; else { const togRef47 = document.getElementById("add-edit-stream-modal"), v7360 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v7361 = { 'id': "add-edit-stream-modal", 'override': true }; v6612 = new initFlowbite(togRef47, v7360, v7361); } }, v7362 = () => { const v7363 = document.getElementById("add-edit-account-modal"), v7364 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v7365 = { 'id': "add-edit-account-modal", 'override': true }; v6613 = new initFlowbite(v7363, v7364, v7365); }, v7366 = () => { v6596.replace({ 'name': "config", 'params': { 'provider': v6597.getSelectedProviderId, 'type': v6598.getSelectedStreamType }, 'query': { ...v6609.value ? { 's': v6609.value } : {}, 'server': v6600.getSelectedServer.Id } }); }, srv136 = () => { const srv137 = v6596.currentRoute.value.params.provider || v6597.getSelectedProviderId; srv137 ? v6597.setCurrentSelectedProvider(srv137) : v6597.setDefaultCurrentSelectedProvider(); const prov243 = v6596.currentRoute.value.params.type ? v6596.currentRoute.value.params.type : v6598.getSelectedStreamType; (prov243 != null) && v6598.setCurrentSelectedStreamType(prov243), v6609.value = v6596.currentRoute.value.query.s ? v6596.currentRoute.value.query.s : '', v6596.replace({ 'name': "config", 'params': { 'provider': v6597.getSelectedProviderId, 'type': v6598.getSelectedStreamType }, 'query': { ...v6609.value ? { 's': v6609.value } : {}, 'server': v6600.getSelectedServer.Id } }); }, srv138 = async () => { const srv139 = { 'uNojb': "add-edit-account-modal", 'MBceX': "dynamic", 'GcCTD': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111" }; if ((false)) { } else srv136(), await prov236(), await prov202(), await v6681(); }, v7373 = () => { const v7374 = document.getElementById("start-date"), v7375 = document.getElementById("end-date"); (v7374 && v7375) && (new useRoute(v7374, { 'format': "dd/mm/yyyy", 'autohide': true }), new useRoute(v7375, { 'format': "dd/mm/yyyy", 'autohide': true })); }, v7376 = async () => { if ((true)) await v6597.deleteProvider(v6597.provider), await v6597.getAllProviders(), v6619.value.toggleModal(), v6597.setDefaultCurrentSelectedProvider(), await v7249(); else return (v7377, v7378) => v7379.isLive ? (v7380(), v7381("div", v7382, [...v7378[0] || (v7378[0] = [v7383('span', { 'class': "animate-pulse font-bold" }, "LIVE", -1)])])) : v7384('', true); }, manif13 = () => { const v7385 = document.getElementById("start-date"), v7386 = document.getElementById("end-date"), v7387 = document.getElementById("start-time"), v7388 = document.getElementById("end-time"), elRef42 = document.getElementById("onair-end-time"), elRef43 = document.getElementById("onair-start-time"); v7385 && v7386 && v7387 && v7388 && (v7385.value = v6694(v6614.value.Start), v7386.value = v6694(v6614.value.End), v7387.value = v6696(v6614.value.Start), v7388.value = v6696(v6614.value.End)), elRef43 && elRef42 && v6614.value.DailyStartTime && v6614.value.DailyEndTime && (elRef43.value = de.formatSecondsToTimeUtc(v6614.value.DailyStartTime), elRef42.value = de.formatSecondsToTimeUtc(v6614.value.DailyEndTime)); }, selRef31 = () => { const v7389 = document.getElementById("start-date"), v7390 = document.getElementById("end-date"), elRef44 = document.getElementById("start-time"), elRef45 = document.getElementById("end-time"), elRef46 = document.getElementById('onair-end-time'), elRef47 = document.getElementById("onair-start-time"); v7389.value = '', v7390.value = '', elRef44.value = '', elRef45.value = '', elRef46.value = '', elRef47.value = ''; }; Carousel(() => v6598.getSelectedStreamType, async () => { await prov202(); }), Carousel(v6634, () => { v7250(), prov202(); }); const v7250 = () => { v6698.value.currentPage = 1; }, srv106 = () => { v6609.value = ''; }; Carousel(v6609, Rating(async () => { (true) ? (v7250(), await prov202(), v7366()) : v7391(); }, 100)); const v7392 = async () => { await prov236(), await prov202(), await v6681(), await v6596.replace({ 'name': "config", 'params': { 'provider': v6597.getSelectedProviderId, 'type': v6598.getSelectedStreamType }, 'query': { 'server': v6600.getSelectedServer.Id } }); }; Carousel(v6645, () => { if ((true)) prov202(); else { const v7393 = v7394.target.files[0]; if (v7393 && v7393.type.startsWith("image/")) { const v7395 = new v7396(); v7395.onload = v7397 => { v7398.value.LogoBase64 = v7397.target.result; }, v7395.readAsDataURL(v7393); } else v7399.error("Invalid image file"); } }), withDirectives(() => { v7373(), useI18n(), z_util(), togRef46(), v7362(), v6685(), v7400(), srv138(); }), Table(() => { v6598.closeWsClient(); }); const v7400 = () => { document.addEventListener("copy", v7403 => { if ((v7403.target.type === "textarea") && (v7403.target.className === '') || v7403.target.id.includes("keys-poppin")) { const v7404 = document.getSelection(); v7403.clipboardData.setData("text/plain", v7404.toString().replaceAll(' ', '\n')), v7403.preventDefault(); } }); }; return (v7405, v7406) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "Config" }), e("span", V2, useAttrs(createTextVNode(v6597).provider.Name) + ' (' + useAttrs(stream289.value) + ')', 1), createVNode(Kt, { 'onOnProviderSelected': v7249, 'onOnServerChanged': v7392 }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v6627 }, null, 512), e("div", U2, [e("div", _2, [e("div", E2, [v7406[176] || (v7406[176] = toDisplayString(" \u00a0 ", -1)), createVNode(bo, { 'onOnTypeSelected': v6699 }), v7406[177] || (v7406[177] = toDisplayString(' \u00a0 ', -1)), createVNode(ke, { 'Icon': Et, 'text': 'Add ' + v7146.value, 'onClick': v7316 }, null, 8, .text), v7406[178] || (v7406[178] = toDisplayString(' \u00a0 ', -1)), createVNode(ke, { 'Icon': Dh, 'text': createTextVNode(v6630) ? "Hide Settings" : "Show Settings", 'class': classNames({ 'bg-white/15 text-red': createTextVNode(v6630) }), 'onClick': prov205 }, null, 8, ['text', "class"]), toDisplayString(' ' + useAttrs(createTextVNode(v6604)) + ' ', 1), createVNode(ke, { 'Icon': Qh, 'text': createTextVNode(v6631) ? "Hide Mass Config" : "Show Mass Config", 'class': classNames({ 'bg-white/15 text-red': createTextVNode(v6631) }), 'onClick': v7180 }, null, 8, ["text", "class"]), createTextVNode(v6597).isSaving || createTextVNode(v6597).isLoading || createTextVNode(v6598).isLoading ? (openBlock(), Modal(cl, { 'key': 0 })) : normalizeProps('', true)]), e('div', L2, [createVNode(Ht, { 'id': "streams-actions", 'name': "Stream Actions" }, { 'default': withModifiers(() => [e('li', { 'class': "flex gap-2 text-green-400 hover:text-green-500 items-center cursor-pointer transition-colors" }, [createVNode(at), v7406[179] || (v7406[179] = toDisplayString(" Start all ", -1))]), e('li', { 'onClick': v7241, 'class': 'flex gap-2 text-green-400 hover:text-green-500 items-center cursor-pointer transition-colors' }, [createVNode(Uh), v7406[180] || (v7406[180] = toDisplayString(" Start Autostarts ", -1))]), e('li', { 'onClick': v7242, 'class': "flex gap-2 text-green-400 hover:text-green-500 items-center cursor-pointer transition-colors" }, [createVNode(Zh), v7406[181] || (v7406[181] = toDisplayString(" Start OnAirs ", -1))]), e('li', { 'class': "flex gap-2 text-red-700 hover:text-red-800 items-center cursor-pointer transition-colors" }, [createVNode(We), v7406[182] || (v7406[182] = toDisplayString(' Stop all ', -1))]), e('li', { 'onClick': selRef30, 'class': "flex gap-2 text-blue-600 hover:text-blue-700 items-center cursor-pointer transition-colors" }, [createVNode(ot), v7406[183] || (v7406[183] = toDisplayString(" Refresh all ", -1))]), e('li', { 'onClick': prov209, 'class': 'flex gap-2 text-red-700 hover:text-red-800 items-center cursor-pointer transition-colors' }, [createVNode(We), v7406[184] || (v7406[184] = toDisplayString(" Stop Refresh ", -1))]), e('li', { 'class': "flex gap-2 text-green-400 hover:text-green-500 items-center cursor-pointer transition-colors" }, [createVNode(at), v7406[185] || (v7406[185] = toDisplayString(" Start Page ", -1))]), e('li', { 'class': "flex gap-2 text-red-700 hover:text-red-800 items-center cursor-pointer transition-colors" }, [createVNode(We), v7406[186] || (v7406[186] = toDisplayString(' Stop page ', -1))]), e('li', { 'onClick': v7211, 'class': "flex gap-2 text-blue-600 hover:text-blue-700 items-center cursor-pointer transition-colors" }, [createVNode(ot), v7406[187] || (v7406[187] = toDisplayString(" Refresh Page ", -1))]), e('li', { 'onClick': v7225, 'class': "flex gap-2 text-yellow-300 hover:text-yellow-400 items-center cursor-pointer transition-colors" }, [createVNode(sl), v7406[188] || (v7406[188] = toDisplayString(" Export selection ", -1))]), e('li', { 'onClick': v7208, 'class': "flex gap-2 text-red-700 hover:text-red-800 items-center cursor-pointer transition-colors" }, [createVNode(Ke), v7406[189] || (v7406[189] = toDisplayString(" Delete selection ", -1))])]), '_': 1 }), toDisplayString(' ' + useAttrs(createTextVNode(v6608)) + ' ', 1), createVNode(Ht, { 'id': "provider-actions", 'name': 'Provider Actions' }, { 'default': withModifiers(() => [e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': stream310 }, [createVNode(Mt), v7406[190] || (v7406[190] = toDisplayString(" Save ", -1))]), e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': prov217 }, [createVNode(sl), v7406[191] || (v7406[191] = toDisplayString(" Export Provider ", -1))]), e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': v7219 }, [createVNode(Xt, { 'class': "w-5! h-5!" }), v7406[192] || (v7406[192] = toDisplayString(" Export Keys ", -1))]), e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': elRef37 }, [createVNode(Xt, { 'class': "w-5! h-5!" }), v7406[193] || (v7406[193] = toDisplayString(" Push Keys ", -1))]), e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': elRef39 }, [createVNode(Xt, { 'class': 'w-5! h-5!' }), v7406[194] || (v7406[194] = toDisplayString(" Export Manifest and Keys ", -1))]), e('li', { 'class': 'flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors', 'onClick': prov214 }, [createVNode(Fh), v7406[195] || (v7406[195] = toDisplayString(" Cache Logos ", -1))]), e('li', { 'class': "flex gap-2 text-white hover:text-yellow-300 items-center cursor-pointer transition-colors", 'onClick': modal37 }, [createVNode(Ke), v7406[196] || (v7406[196] = toDisplayString(" Delete Provider ", -1))])]), '_': 1 }), toDisplayString(' ' + useAttrs(createTextVNode(v6607)) + ' ', 1), createVNode(Zt, { 'id': "config-page", 'name': 'Playlist', 'provider': createTextVNode(v6597).getSelectedProviderId, 'streamIds': v6654.value }, null, 8, ["provider", "streamIds"]), toDisplayString(' ' + useAttrs(createTextVNode(v6606)) + ' ', 1), createTextVNode(v6598).getSelectedStreamType !== 'event' ? (openBlock(), Modal(ll, { 'key': 0, 'modelValue': v6645.value, 'onUpdate:modelValue': v7406[4] || (v7406[4] = evtRef66 => v6645.value = evtRef66) }, null, 8, .modelValue)) : normalizeProps('', true)])])]), createVNode(Alert, { 'enter-from-class': "transform -translate-x-full", 'leave-to-class': 'transform -translate-x-full', 'enter-active-class': "transition transform duration-300", 'leave-active-class': "transition transform duration-300" }, { 'default': withModifiers(() => [isRef(e('div', D2, [e('div', G2, [e('ul', R2, [e('li', N2, [e("button", j2, [createVNode(f2), v7406[197] || (v7406[197] = toDisplayString(' Network ', -1))])]), e('li', O2, [e("button", B2, [createVNode(w2), v7406[198] || (v7406[198] = toDisplayString(" Settings ", -1))])]), e('li', H2, [e('button', F2, [createVNode(S2), v7406[199] || (v7406[199] = toDisplayString(" Parameters ", -1))])]), e('li', q2, [e('button', W2, [createVNode(A2), v7406[200] || (v7406[200] = toDisplayString(" Accounts ", -1))])])])]), e('div', z2, [e('div', Z2, [createVNode(bl, { 'id': 'config', 'modelValue': createTextVNode(v6597).provider, 'onUpdate:modelValue': v7406[5] || (v7406[5] = prov244 => createTextVNode(v6597).provider = prov244) }, null, 8, .modelValue), createVNode(Z, { 'class': "inline-flex mt-3", 'label': "Use IPv6", 'modelValue': createTextVNode(v6597).provider.UseIPV6, 'onUpdate:modelValue': v7406[6] || (v7406[6] = prov245 => createTextVNode(v6597).provider.UseIPV6 = prov245) }, null, 8, .modelValue), createVNode(Z, { 'class': "inline-flex mt-3", 'label': "Random from list", 'modelValue': createTextVNode(v6597).provider.RandomNetworkParam, 'onUpdate:modelValue': v7406[7] || (v7406[7] = updRef129 => createTextVNode(v6597).provider.RandomNetworkParam = updRef129) }, null, 8, .modelValue)]), e("div", K2, [createVNode(Jl, { 'id': "config", 'modelValue': createTextVNode(v6597).provider, 'onUpdate:modelValue': v7406[8] || (v7406[8] = prov246 => createTextVNode(v6597).provider = prov246) }, null, 8, .modelValue), e("div", J2, [e("div", Y2, [v7406[201] || (v7406[201] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Script with parameters", -1)), e('div', Q2, [e("div", X2, [createVNode(xl)]), isRef(e('input', { 'type': "text", 'onUpdate:modelValue': v7406[9] || (v7406[9] = updRef130 => createTextVNode(v6597).provider.Script = updRef130), 'class': 'block w-full p-2 ps-10 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "name param1=value1..." }, null, 512), [ [Dropdown, createTextVNode(v6597).provider.Script] ])])]), e("div", eb, [createVNode(Yl, { 'id': "dropdown-config-script-accounts-user", 'is-config': '', 'modelValue': createTextVNode(v6597).provider, 'onUpdate:modelValue': v7406[10] || (v7406[10] = prov247 => createTextVNode(v6597).provider = prov247), 'accounts': createTextVNode(v6599).accounts }, null, 8, ['modelValue', "accounts"])]), e("div", tb, [v7406[202] || (v7406[202] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "External CDM Script", -1)), e("div", lb, [e("div", ob, [createVNode(xl)]), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[11] || (v7406[11] = prov248 => createTextVNode(v6597).provider.ExternalCdmScript = prov248), 'class': "block w-full p-2 ps-10 text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "name" }, null, 512), [ [Dropdown, createTextVNode(v6597).provider.ExternalCdmScript] ])])])])]), e("div", sb, [v7406[209] || (v7406[209] = e('p', { 'class': "text-yellow-300 text-base font-semibold mb-3" }, " Streaming parameters ", -1)), e("div", ab, [e("div", rb, [createVNode(Z, { 'name': "cbSsai", 'label': 'Detect SSAI', 'modelValue': createTextVNode(v6597).provider.SSAI, 'onUpdate:modelValue': v7406[12] || (v7406[12] = prov249 => createTextVNode(v6597).provider.SSAI = prov249) }, null, 8, .modelValue), createVNode(Z, { 'name': 'cbCtv', 'label': "Detect CTV", 'modelValue': createTextVNode(v6597).provider.CTV, 'onUpdate:modelValue': v7406[13] || (v7406[13] = updRef131 => createTextVNode(v6597).provider.CTV = updRef131) }, null, 8, .modelValue), createVNode(Z, { 'name': "hlsists", 'label': "Force HLS TS", 'modelValue': createTextVNode(v6597).provider.HlsIsTs, 'onUpdate:modelValue': v7406[14] || (v7406[14] = prov250 => createTextVNode(v6597).provider.HlsIsTs = prov250) }, null, 8, .modelValue), createVNode(Z, { 'name': "hlsismp4", 'label': "Force HLS FMP4", 'modelValue': createTextVNode(v6597).provider.HlsIsMp4, 'onUpdate:modelValue': v7406[15] || (v7406[15] = prov251 => createTextVNode(v6597).provider.HlsIsMp4 = prov251) }, null, 8, .modelValue), createVNode(Z, { 'name': "ignorestaticdash", 'label': "Ignore DASH static flag", 'modelValue': createTextVNode(v6597).provider.IgnoreStaticDash, 'onUpdate:modelValue': v7406[16] || (v7406[16] = updRef132 => createTextVNode(v6597).provider.IgnoreStaticDash = updRef132) }, null, 8, .modelValue), createVNode(Z, { 'name': 'ignoredashsegmenttimeline', 'label': "Ignore DASH SegmentTimeline", 'modelValue': createTextVNode(v6597).provider.IgnoreDashSegmentTimeline, 'onUpdate:modelValue': v7406[17] || (v7406[17] = updRef133 => createTextVNode(v6597).provider.IgnoreDashSegmentTimeline = updRef133) }, null, 8, .modelValue), createVNode(Z, { 'name': "usedashdelay", 'label': "Use DASH delay", 'modelValue': createTextVNode(v6597).provider.UseDashDelay, 'onUpdate:modelValue': v7406[18] || (v7406[18] = updRef134 => createTextVNode(v6597).provider.UseDashDelay = updRef134) }, null, 8, .modelValue), createVNode(Z, { 'name': 'usenewestdashperiod', 'label': 'Use newest DASH period', 'modelValue': createTextVNode(v6597).provider.UseNewestDashPeriod, 'onUpdate:modelValue': v7406[19] || (v7406[19] = updRef135 => createTextVNode(v6597).provider.UseNewestDashPeriod = updRef135) }, null, 8, .modelValue), createVNode(Z, { 'name': 'usesessioncookies', 'label': "Use session cookies", 'modelValue': createTextVNode(v6597).provider.UseSessionCookies, 'onUpdate:modelValue': v7406[20] || (v7406[20] = prov252 => createTextVNode(v6597).provider.UseSessionCookies = prov252) }, null, 8, .modelValue), createVNode(Z, { 'name': 'norefererinredirects', 'label': "No referer in redirects", 'modelValue': createTextVNode(v6597).provider.NoRefererInRedirects, 'onUpdate:modelValue': v7406[21] || (v7406[21] = updRef136 => createTextVNode(v6597).provider.NoRefererInRedirects = updRef136) }, null, 8, .modelValue), createVNode(Z, { 'name': "legacydashparser", 'label': "Legacy DASH parser", 'modelValue': createTextVNode(v6597).provider.LegacyDashParser, 'onUpdate:modelValue': v7406[22] || (v7406[22] = prov253 => createTextVNode(v6597).provider.LegacyDashParser = prov253) }, null, 8, .modelValue), createVNode(Z, { 'name': "usedashlocation", 'label': "Use DASH Location", 'modelValue': createTextVNode(v6597).provider.UseDashLocation, 'onUpdate:modelValue': v7406[23] || (v7406[23] = updRef137 => createTextVNode(v6597).provider.UseDashLocation = updRef137) }, null, 8, .modelValue), createVNode(Z, { 'name': 'downloadmanifestscript', 'label': "Call script to download manifest", 'modelValue': createTextVNode(v6597).provider.DownloadManifestScript, 'onUpdate:modelValue': v7406[24] || (v7406[24] = manif18 => createTextVNode(v6597).provider.DownloadManifestScript = manif18) }, null, 8, .modelValue), createVNode(Z, { 'name': "downloadmediascript", 'label': "Call script to download media", 'modelValue': createTextVNode(v6597).provider.DownloadMediaScript, 'onUpdate:modelValue': v7406[25] || (v7406[25] = updRef138 => createTextVNode(v6597).provider.DownloadMediaScript = updRef138) }, null, 8, .modelValue)]), e("div", nb, [createVNode(Z, { 'name': 'propagatemanifesturlparams', 'label': "Use manifest URL params for segments", 'modelValue': createTextVNode(v6597).provider.PropagateManifestUrlParams, 'onUpdate:modelValue': v7406[26] || (v7406[26] = manif19 => createTextVNode(v6597).provider.PropagateManifestUrlParams = manif19) }, null, 8, .modelValue), createVNode(Z, { 'name': "forcepropagatemanifesturlparams", 'label': 'Force manifest URL params for segments', 'modelValue': createTextVNode(v6597).provider.ForcePropagateManifestUrlParams, 'onUpdate:modelValue': v7406[27] || (v7406[27] = manif20 => createTextVNode(v6597).provider.ForcePropagateManifestUrlParams = manif20) }, null, 8, .modelValue), createVNode(Z, { 'name': "InvalidPatDetection", 'label': "Detect invalid PAT in MpegTS", 'modelValue': createTextVNode(v6597).provider.InvalidPatDetection, 'onUpdate:modelValue': v7406[28] || (v7406[28] = prov254 => createTextVNode(v6597).provider.InvalidPatDetection = prov254) }, null, 8, .modelValue), createVNode(Z, { 'name': "usejsonredirecturl", 'label': "Detect special JSON redirect URL", 'modelValue': createTextVNode(v6597).provider.UseJsonRedirectUrl, 'onUpdate:modelValue': v7406[29] || (v7406[29] = prov255 => createTextVNode(v6597).provider.UseJsonRedirectUrl = prov255) }, null, 8, .modelValue), createVNode(Z, { 'name': "nowaitfullplaylist", 'label': "Don't wait for full playlist", 'modelValue': createTextVNode(v6597).provider.NoWaitFullPlaylist, 'onUpdate:modelValue': v7406[30] || (v7406[30] = updRef139 => createTextVNode(v6597).provider.NoWaitFullPlaylist = updRef139) }, null, 8, .modelValue), createVNode(Z, { 'label': "Pre-process PSSH", 'modelValue': createTextVNode(v6597).provider.PreProcessPssh, 'onUpdate:modelValue': v7406[31] || (v7406[31] = updRef140 => createTextVNode(v6597).provider.PreProcessPssh = updRef140) }, null, 8, .modelValue), createVNode(Z, { 'label': "Force PSSH from manifest", 'modelValue': createTextVNode(v6597).provider.ForcePsshFromManifest, 'onUpdate:modelValue': v7406[32] || (v7406[32] = prov256 => createTextVNode(v6597).provider.ForcePsshFromManifest = prov256) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Don\x27t use keys cache', 'modelValue': createTextVNode(v6597).provider.IgnoreKeysCache, 'onUpdate:modelValue': v7406[33] || (v7406[33] = updRef141 => createTextVNode(v6597).provider.IgnoreKeysCache = updRef141) }, null, 8, .modelValue), createVNode(Z, { 'label': "Always select default tracks", 'modelValue': createTextVNode(v6597).provider.AlwaysSelectDefaultTracks, 'onUpdate:modelValue': v7406[34] || (v7406[34] = selRef32 => createTextVNode(v6597).provider.AlwaysSelectDefaultTracks = selRef32) }, null, 8, .modelValue), createVNode(Z, { 'label': "Only match first default track", 'modelValue': createTextVNode(v6597).provider.DefaultTracksFirstMatch, 'onUpdate:modelValue': v7406[35] || (v7406[35] = prov257 => createTextVNode(v6597).provider.DefaultTracksFirstMatch = prov257) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Push keys to archive', 'modelValue': createTextVNode(v6597).provider.PushKeysToArchive, 'onUpdate:modelValue': v7406[36] || (v7406[36] = prov258 => createTextVNode(v6597).provider.PushKeysToArchive = prov258) }, null, 8, .modelValue), createVNode(Z, { 'label': "Use media network for HLS key", 'modelValue': createTextVNode(v6597).provider.UseMediaNetworkForHlsKey, 'onUpdate:modelValue': v7406[37] || (v7406[37] = updRef142 => createTextVNode(v6597).provider.UseMediaNetworkForHlsKey = updRef142) }, null, 8, .modelValue), createVNode(Z, { 'label': "Ignore oldest fragment", 'modelValue': createTextVNode(v6597).provider.IgnoreOldestFragment, 'onUpdate:modelValue': v7406[38] || (v7406[38] = updRef143 => createTextVNode(v6597).provider.IgnoreOldestFragment = updRef143) }, null, 8, .modelValue)]), e("div", ib, [createVNode(ne, { 'label': "Default CDN", 'placeholder': "CDN Name", 'modelValue': createTextVNode(v6597).provider.DefaultCdn, 'onUpdate:modelValue': v7406[39] || (v7406[39] = updRef144 => createTextVNode(v6597).provider.DefaultCdn = updRef144) }, null, 8, .modelValue), createVNode(ne, { 'label': "Default video", 'placeholder': "filter1|filter2|...", 'modelValue': createTextVNode(v6597).provider.DefaultVideo, 'onUpdate:modelValue': v7406[40] || (v7406[40] = prov259 => createTextVNode(v6597).provider.DefaultVideo = prov259) }, null, 8, .modelValue), createVNode(ne, { 'label': "Default audio", 'placeholder': "filter1|filter2|...", 'modelValue': createTextVNode(v6597).provider.DefaultAudio, 'onUpdate:modelValue': v7406[41] || (v7406[41] = updRef145 => createTextVNode(v6597).provider.DefaultAudio = updRef145) }, null, 8, .modelValue), createVNode(ne, { 'label': "Default subtitles", 'placeholder': 'filter1|filter2|...', 'modelValue': createTextVNode(v6597).provider.DefaultSubtitles, 'onUpdate:modelValue': v7406[42] || (v7406[42] = filtRef5 => createTextVNode(v6597).provider.DefaultSubtitles = filtRef5) }, null, 8, .modelValue), createVNode(ne, { 'label': "HLS playlist duration (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.PlaylistDuration, 'onUpdate:modelValue': v7406[43] || (v7406[43] = updRef146 => createTextVNode(v6597).provider.PlaylistDuration = updRef146), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "CDM certificate", 'placeholder': 'base64', 'modelValue': createTextVNode(v6597).provider.CdmCert, 'onUpdate:modelValue': v7406[44] || (v7406[44] = updRef147 => createTextVNode(v6597).provider.CdmCert = updRef147), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "CDM provider ID", 'placeholder': "name", 'modelValue': createTextVNode(v6597).provider.KeysArchiveProviderId, 'onUpdate:modelValue': v7406[45] || (v7406[45] = updRef148 => createTextVNode(v6597).provider.KeysArchiveProviderId = updRef148) }, null, 8, .modelValue)]), e("div", db, [createVNode(ne, { 'label': "HTTP get tentatives count", 'placeholder': 'count', 'modelValue': createTextVNode(v6597).provider.HttpGetRetries, 'onUpdate:modelValue': v7406[46] || (v7406[46] = prov260 => createTextVNode(v6597).provider.HttpGetRetries = prov260), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "HLS fragments duration (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.HlsFragmentsDuration, 'onUpdate:modelValue': v7406[47] || (v7406[47] = prov261 => createTextVNode(v6597).provider.HlsFragmentsDuration = prov261), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'Output fragments count', 'placeholder': "count", 'modelValue': createTextVNode(v6597).provider.NbAnnouncedFragments, 'onUpdate:modelValue': v7406[48] || (v7406[48] = updRef149 => createTextVNode(v6597).provider.NbAnnouncedFragments = updRef149), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'Stalled stream timeout (s)', 'placeholder': 'seconds', 'modelValue': createTextVNode(v6597).provider.StallDetectTimeout, 'onUpdate:modelValue': v7406[49] || (v7406[49] = updRef150 => createTextVNode(v6597).provider.StallDetectTimeout = updRef150), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Playback Delay (s)", 'placeholder': 'seconds', 'modelValue': createTextVNode(v6597).provider.PlaybackDelay, 'onUpdate:modelValue': v7406[50] || (v7406[50] = updRef151 => createTextVNode(v6597).provider.PlaybackDelay = updRef151), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "DASH time offset (ms)", 'placeholder': "milliseconds", 'modelValue': createTextVNode(v6597).provider.DashTimeOffsetMs, 'onUpdate:modelValue': v7406[51] || (v7406[51] = updRef152 => createTextVNode(v6597).provider.DashTimeOffsetMs = updRef152), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'DRM level', 'placeholder': 'level', 'modelValue': createTextVNode(v6597).provider.DRMLevel, 'onUpdate:modelValue': v7406[52] || (v7406[52] = updRef153 => createTextVNode(v6597).provider.DRMLevel = updRef153) }, null, 8, .modelValue)]), e("div", ub, [createVNode(ne, { 'label': "Max streams concurrency", 'placeholder': "count", 'modelValue': createTextVNode(v6597).provider.MaxConcurrentStreams, 'onUpdate:modelValue': v7406[53] || (v7406[53] = stream323 => createTextVNode(v6597).provider.MaxConcurrentStreams = stream323), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Retry new manifest count", 'placeholder': "count", 'modelValue': createTextVNode(v6597).provider.RetryDownloadWithNewManifestCount, 'onUpdate:modelValue': v7406[54] || (v7406[54] = updRef154 => createTextVNode(v6597).provider.RetryDownloadWithNewManifestCount = updRef154), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Max streams per account", 'placeholder': "count", 'modelValue': createTextVNode(v6597).provider.MaxStreamsPerAccount, 'onUpdate:modelValue': v7406[55] || (v7406[55] = stream324 => createTextVNode(v6597).provider.MaxStreamsPerAccount = stream324), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Max download concurrency", 'placeholder': 'count', 'modelValue': createTextVNode(v6597).provider.MaxDownloadConcurrency, 'onUpdate:modelValue': v7406[56] || (v7406[56] = prov262 => createTextVNode(v6597).provider.MaxDownloadConcurrency = prov262), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Max concurrent script calls", 'placeholder': 'count', 'modelValue': createTextVNode(v6597).provider.MaxConcurrentScript, 'onUpdate:modelValue': v7406[57] || (v7406[57] = updRef155 => createTextVNode(v6597).provider.MaxConcurrentScript = updRef155), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'HTTP get timeout', 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.HttpGetTimeout, 'onUpdate:modelValue': v7406[58] || (v7406[58] = updRef156 => createTextVNode(v6597).provider.HttpGetTimeout = updRef156), 'modelModifiers': { 'number': true } }, null, 8, .modelValue)])]), v7406[210] || (v7406[210] = e('hr', { 'class': 'my-5' }, null, -1)), v7406[211] || (v7406[211] = e('p', { 'class': "text-yellow-300 text-base font-semibold mb-3" }, " Channels/events parameters ", -1)), e('div', cb, [e("div", mb, [createVNode(Z, { 'label': "Reuse event index", 'modelValue': createTextVNode(v6597).provider.ReuseEventIndex, 'onUpdate:modelValue': v7406[59] || (v7406[59] = evtRef67 => createTextVNode(v6597).provider.ReuseEventIndex = evtRef67) }, null, 8, .modelValue), createVNode(Z, { 'label': "Reversed events ids", 'modelValue': createTextVNode(v6597).provider.EventsReversedIds, 'onUpdate:modelValue': v7406[60] || (v7406[60] = prov263 => createTextVNode(v6597).provider.EventsReversedIds = prov263) }, null, 8, .modelValue), createVNode(Z, { 'label': "Reset events list on refresh", 'modelValue': createTextVNode(v6597).provider.CleanEventsOnRefresh, 'onUpdate:modelValue': v7406[61] || (v7406[61] = updRef157 => createTextVNode(v6597).provider.CleanEventsOnRefresh = updRef157) }, null, 8, .modelValue), createVNode(Z, { 'label': "Auto-remove missing channels", 'modelValue': createTextVNode(v6597).provider.ChannelsAutoremove, 'onUpdate:modelValue': v7406[62] || (v7406[62] = updRef158 => createTextVNode(v6597).provider.ChannelsAutoremove = updRef158) }, null, 8, .modelValue), createVNode(Z, { 'label': "Don't add new channels on refresh", 'modelValue': createTextVNode(v6597).provider.DontAddNewChannels, 'onUpdate:modelValue': v7406[63] || (v7406[63] = updRef159 => createTextVNode(v6597).provider.DontAddNewChannels = updRef159) }, null, 8, .modelValue), createVNode(Z, { 'label': "Auto-refresh channels", 'modelValue': createTextVNode(v6597).provider.ChannelsAutorefresh, 'onUpdate:modelValue': v7406[64] || (v7406[64] = updRef160 => createTextVNode(v6597).provider.ChannelsAutorefresh = updRef160) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Auto-refresh events', 'modelValue': createTextVNode(v6597).provider.EventsAutorefresh, 'onUpdate:modelValue': v7406[65] || (v7406[65] = prov264 => createTextVNode(v6597).provider.EventsAutorefresh = prov264) }, null, 8, .modelValue), createVNode(Z, { 'label': "Auto-refresh EPG", 'modelValue': createTextVNode(v6597).provider.EpgAutorefresh, 'onUpdate:modelValue': v7406[66] || (v7406[66] = prov265 => createTextVNode(v6597).provider.EpgAutorefresh = prov265) }, null, 8, .modelValue), createVNode(Z, { 'label': "Don't auto-remove finished events", 'modelValue': createTextVNode(v6597).provider.KeepEndedEvents, 'onUpdate:modelValue': v7406[67] || (v7406[67] = updRef161 => createTextVNode(v6597).provider.KeepEndedEvents = updRef161) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Remove events not returned by script', 'modelValue': createTextVNode(v6597).provider.RemoveMissingEvents, 'onUpdate:modelValue': v7406[68] || (v7406[68] = evtRef68 => createTextVNode(v6597).provider.RemoveMissingEvents = evtRef68) }, null, 8, .modelValue), createVNode(Z, { 'label': "Allow duplicate events", 'modelValue': createTextVNode(v6597).provider.AllowDuplicateEvents, 'onUpdate:modelValue': v7406[69] || (v7406[69] = evtRef69 => createTextVNode(v6597).provider.AllowDuplicateEvents = evtRef69) }, null, 8, .modelValue)]), e("div", pb, [createVNode(Z, { 'label': "Don't auto-cache logos", 'modelValue': createTextVNode(v6597).provider.DontAutoCacheLogos, 'onUpdate:modelValue': v7406[70] || (v7406[70] = prov266 => createTextVNode(v6597).provider.DontAutoCacheLogos = prov266) }, null, 8, .modelValue), createVNode(Z, { 'label': "Append date to event name", 'modelValue': createTextVNode(v6597).provider.EventsAppendDate, 'onUpdate:modelValue': v7406[71] || (v7406[71] = updRef162 => createTextVNode(v6597).provider.EventsAppendDate = updRef162) }, null, 8, .modelValue), createVNode(Z, { 'label': "Append resolution to channel name in playlist", 'modelValue': createTextVNode(v6597).provider.AppendResolution, 'onUpdate:modelValue': v7406[72] || (v7406[72] = prov267 => createTextVNode(v6597).provider.AppendResolution = prov267) }, null, 8, .modelValue), createVNode(Z, { 'label': "Off air event fallback", 'modelValue': createTextVNode(v6597).provider.OffAirFallback, 'onUpdate:modelValue': v7406[73] || (v7406[73] = prov268 => createTextVNode(v6597).provider.OffAirFallback = prov268) }, null, 8, .modelValue), createVNode(Z, { 'label': "Don't Gzip EPG in playlist", 'modelValue': createTextVNode(v6597).provider.DontGzipEpgInPlaylist, 'onUpdate:modelValue': v7406[74] || (v7406[74] = prov269 => createTextVNode(v6597).provider.DontGzipEpgInPlaylist = prov269) }, null, 8, .modelValue), createVNode(Z, { 'label': "Use event number as name in playlist", 'modelValue': createTextVNode(v6597).provider.NoEventNameInPlaylist, 'onUpdate:modelValue': v7406[75] || (v7406[75] = updRef163 => createTextVNode(v6597).provider.NoEventNameInPlaylist = updRef163) }, null, 8, .modelValue), createVNode(Z, { 'label': "Delete removed streams logs", 'modelValue': createTextVNode(v6597).provider.DeleteRemovedStreamLogs, 'onUpdate:modelValue': v7406[76] || (v7406[76] = stream325 => createTextVNode(v6597).provider.DeleteRemovedStreamLogs = stream325) }, null, 8, .modelValue), createVNode(Z, { 'label': "Don't cool down event start", 'modelValue': createTextVNode(v6597).provider.DontCooldownEventStart, 'onUpdate:modelValue': v7406[77] || (v7406[77] = evtRef70 => createTextVNode(v6597).provider.DontCooldownEventStart = evtRef70) }, null, 8, .modelValue)]), e('div', vb, [createVNode(ne, { 'label': "Channels refresh cron", 'placeholder': 'cron', 'modelValue': createTextVNode(v6597).provider.ChannelsRefreshCron, 'onUpdate:modelValue': v7406[78] || (v7406[78] = updRef164 => createTextVNode(v6597).provider.ChannelsRefreshCron = updRef164) }, null, 8, .modelValue), createVNode(ne, { 'label': "Events refresh cron", 'placeholder': "cron", 'modelValue': createTextVNode(v6597).provider.EventsRefreshCron, 'onUpdate:modelValue': v7406[79] || (v7406[79] = updRef165 => createTextVNode(v6597).provider.EventsRefreshCron = updRef165) }, null, 8, .modelValue), createVNode(ne, { 'label': "EPG refresh cron", 'placeholder': "cron", 'modelValue': createTextVNode(v6597).provider.EpgRefreshCron, 'onUpdate:modelValue': v7406[80] || (v7406[80] = epg54 => createTextVNode(v6597).provider.EpgRefreshCron = epg54) }, null, 8, .modelValue), createVNode(ne, { 'label': "Max events count", 'placeholder': "count", 'modelValue': createTextVNode(v6597).provider.MaxEventsCount, 'onUpdate:modelValue': v7406[81] || (v7406[81] = prov270 => createTextVNode(v6597).provider.MaxEventsCount = prov270), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Max events hours", 'placeholder': "hours", 'modelValue': createTextVNode(v6597).provider.MaxEventsHours, 'onUpdate:modelValue': v7406[82] || (v7406[82] = updRef166 => createTextVNode(v6597).provider.MaxEventsHours = updRef166), 'modelModifiers': { 'number': true } }, null, 8, .modelValue)]), e("div", fb, [createVNode(ne, { 'label': 'Events SQL URL', 'placeholder': "url", 'modelValue': createTextVNode(v6597).provider.EventsSqlUrl, 'onUpdate:modelValue': v7406[83] || (v7406[83] = prov271 => createTextVNode(v6597).provider.EventsSqlUrl = prov271) }, null, 8, .modelValue), createVNode(ne, { 'label': "SQL Stream URL", 'placeholder': "url", 'modelValue': createTextVNode(v6597).provider.EventsSqlStreamingUrl, 'onUpdate:modelValue': v7406[84] || (v7406[84] = stream326 => createTextVNode(v6597).provider.EventsSqlStreamingUrl = stream326) }, null, 8, .modelValue), createVNode(ne, { 'label': 'Logo URL', 'placeholder': 'url', 'modelValue': createTextVNode(v6597).provider.LogoUrl, 'onUpdate:modelValue': v7406[85] || (v7406[85] = updRef167 => createTextVNode(v6597).provider.LogoUrl = updRef167) }, null, 8, .modelValue), v7406[203] || (v7406[203] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "EPG Timezone", -1)), createVNode(Xh, { 'modelValue': createTextVNode(v6597).provider.EpgTimezone, 'onUpdate:modelValue': v7406[86] || (v7406[86] = epg55 => createTextVNode(v6597).provider.EpgTimezone = epg55) }, null, 8, .modelValue)]), e("div", gb, [createVNode(ne, { 'label': "Script timeout (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.ScriptTimeout, 'onUpdate:modelValue': v7406[87] || (v7406[87] = prov272 => createTextVNode(v6597).provider.ScriptTimeout = prov272), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Events first ID", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.EventsFirstId, 'onUpdate:modelValue': v7406[88] || (v7406[88] = updRef168 => createTextVNode(v6597).provider.EventsFirstId = updRef168), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'Event filters', 'placeholder': "filter1#alt1#...|filter2|...", 'modelValue': createTextVNode(v6597).provider.EventFilters, 'onUpdate:modelValue': v7406[89] || (v7406[89] = prov273 => createTextVNode(v6597).provider.EventFilters = prov273) }, null, 8, .modelValue), createVNode(ne, { 'label': "Default events duration", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.DefaultEventDuration, 'onUpdate:modelValue': v7406[90] || (v7406[90] = evtRef71 => createTextVNode(v6597).provider.DefaultEventDuration = evtRef71), 'modelModifiers': { 'number': true } }, null, 8, .modelValue)])]), v7406[212] || (v7406[212] = e('hr', { 'class': "my-5" }, null, -1)), v7406[213] || (v7406[213] = e('p', { 'class': "text-yellow-300 text-base font-semibold mb-3" }, " Start parameters ", -1)), e('div', hb, [e('div', bb, [createVNode(Z, { 'label': 'Always reset session', 'modelValue': createTextVNode(v6597).provider.AlwaysResetSession, 'onUpdate:modelValue': v7406[91] || (v7406[91] = prov274 => createTextVNode(v6597).provider.AlwaysResetSession = prov274) }, null, 8, .modelValue), createVNode(Z, { 'label': "No restart on error", 'modelValue': createTextVNode(v6597).provider.NoRestartOnError, 'onUpdate:modelValue': v7406[92] || (v7406[92] = updRef169 => createTextVNode(v6597).provider.NoRestartOnError = updRef169) }, null, 8, .modelValue), createVNode(Z, { 'label': "Restart finished broadcast", 'modelValue': createTextVNode(v6597).provider.RestartFinished, 'onUpdate:modelValue': v7406[93] || (v7406[93] = updRef170 => createTextVNode(v6597).provider.RestartFinished = updRef170) }, null, 8, .modelValue), createVNode(Z, { 'label': 'No restart on track change', 'modelValue': createTextVNode(v6597).provider.NoRestartOnTrackChange, 'onUpdate:modelValue': v7406[94] || (v7406[94] = prov275 => createTextVNode(v6597).provider.NoRestartOnTrackChange = prov275) }, null, 8, .modelValue), createVNode(Z, { 'label': "Always auto-restart on failure", 'modelValue': createTextVNode(v6597).provider.AlwaysAutorestart, 'onUpdate:modelValue': v7406[95] || (v7406[95] = updRef171 => createTextVNode(v6597).provider.AlwaysAutorestart = updRef171) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Cooldown streams auto-restart', 'modelValue': createTextVNode(v6597).provider.RestartCoolDown, 'onUpdate:modelValue': v7406[96] || (v7406[96] = stream327 => createTextVNode(v6597).provider.RestartCoolDown = stream327) }, null, 8, .modelValue), createVNode(Z, { 'label': "Try next CDN on failure", 'modelValue': createTextVNode(v6597).provider.TryAllCdn, 'onUpdate:modelValue': v7406[97] || (v7406[97] = prov276 => createTextVNode(v6597).provider.TryAllCdn = prov276) }, null, 8, .modelValue)]), e("div", wb, [createVNode(ne, { 'label': "Restart delay (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.RestartDelay, 'onUpdate:modelValue': v7406[98] || (v7406[98] = updRef172 => createTextVNode(v6597).provider.RestartDelay = updRef172), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Autorestart random offset (s)", 'placeholder': 'seconds', 'modelValue': createTextVNode(v6597).provider.RandomAutorestartOffset, 'onUpdate:modelValue': v7406[99] || (v7406[99] = prov277 => createTextVNode(v6597).provider.RandomAutorestartOffset = prov277), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Max autorestart tentatives", 'placeholder': 'count', 'modelValue': createTextVNode(v6597).provider.MaxAutorestart, 'onUpdate:modelValue': v7406[100] || (v7406[100] = prov278 => createTextVNode(v6597).provider.MaxAutorestart = prov278), 'modelModifiers': { 'number': true } }, null, 8, .modelValue)]), e("div", xb, [createVNode(ne, { 'label': "Random autostart period (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.RandomAutostartPeriod, 'onUpdate:modelValue': v7406[101] || (v7406[101] = updRef173 => createTextVNode(v6597).provider.RandomAutostartPeriod = updRef173), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "Seq autostart period (s)", 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.SequencialAutostartPeriod, 'onUpdate:modelValue': v7406[102] || (v7406[102] = updRef174 => createTextVNode(v6597).provider.SequencialAutostartPeriod = updRef174), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'Events start offset (s)', 'placeholder': 'seconds', 'modelValue': createTextVNode(v6597).provider.EventsStartOffset, 'onUpdate:modelValue': v7406[103] || (v7406[103] = updRef175 => createTextVNode(v6597).provider.EventsStartOffset = updRef175), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': 'Events end offset (s)', 'placeholder': "seconds", 'modelValue': createTextVNode(v6597).provider.EventsEndOffset, 'onUpdate:modelValue': v7406[104] || (v7406[104] = prov279 => createTextVNode(v6597).provider.EventsEndOffset = prov279), 'modelModifiers': { 'number': true } }, null, 8, .modelValue)])]), v7406[214] || (v7406[214] = e('hr', { 'class': 'my-5' }, null, -1)), v7406[215] || (v7406[215] = e('p', { 'class': "text-yellow-300 text-base font-semibold mb-3" }, " DVB Subtitles ", -1)), e("div", yb, [e("div", kb, [createVNode(Z, { 'label': 'Disable DVBSubs colors', 'modelValue': createTextVNode(v6597).provider.DVBSubsNoColors, 'onUpdate:modelValue': v7406[105] || (v7406[105] = prov280 => createTextVNode(v6597).provider.DVBSubsNoColors = prov280) }, null, 8, .modelValue), createVNode(Z, { 'label': "Disable DVBSubs style", 'modelValue': createTextVNode(v6597).provider.DVBSubsNoStyleParsing, 'onUpdate:modelValue': v7406[106] || (v7406[106] = prov281 => createTextVNode(v6597).provider.DVBSubsNoStyleParsing = prov281) }, null, 8, .modelValue), createVNode(Z, { 'label': "Use provider script for DVBSubs", 'modelValue': createTextVNode(v6597).provider.UseProviderScriptForSubtitles, 'onUpdate:modelValue': v7406[107] || (v7406[107] = prov282 => createTextVNode(v6597).provider.UseProviderScriptForSubtitles = prov282) }, null, 8, .modelValue), createVNode(Z, { 'label': "Add overlay on picture", 'modelValue': createTextVNode(v6597).provider.AddOverlay, 'onUpdate:modelValue': v7406[108] || (v7406[108] = updRef176 => createTextVNode(v6597).provider.AddOverlay = updRef176) }, null, 8, .modelValue), createVNode(Z, { 'label': "Always transcode", 'modelValue': createTextVNode(v6597).provider.AlwaysTranscode, 'onUpdate:modelValue': v7406[109] || (v7406[109] = prov283 => createTextVNode(v6597).provider.AlwaysTranscode = prov283) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Use X-TIMESTAMP-MAP for VTT', 'modelValue': createTextVNode(v6597).provider.UseVttTimestampMap, 'onUpdate:modelValue': v7406[110] || (v7406[110] = prov284 => createTextVNode(v6597).provider.UseVttTimestampMap = prov284) }, null, 8, .modelValue)]), e("div", Sb, [createVNode(ne, { 'label': 'DVBSubs colors filter', 'placeholder': 'color1, color2,...', 'modelValue': createTextVNode(v6597).provider.DVBSubsColorsFilter, 'onUpdate:modelValue': v7406[111] || (v7406[111] = prov285 => createTextVNode(v6597).provider.DVBSubsColorsFilter = prov285) }, null, 8, .modelValue), createVNode(ne, { 'label': 'DVBSubs translation src', 'placeholder': "lang", 'modelValue': createTextVNode(v6597).provider.DVBSubsTranslationSrcLang, 'onUpdate:modelValue': v7406[112] || (v7406[112] = updRef177 => createTextVNode(v6597).provider.DVBSubsTranslationSrcLang = updRef177) }, null, 8, .modelValue), createVNode(ne, { 'label': "DVBSubs translation dest", 'placeholder': "lang", 'modelValue': createTextVNode(v6597).provider.DVBSubsTranslationDstLang, 'onUpdate:modelValue': v7406[113] || (v7406[113] = updRef178 => createTextVNode(v6597).provider.DVBSubsTranslationDstLang = updRef178) }, null, 8, .modelValue)]), e('div', $b, [createVNode(ne, { 'label': 'DVBSubs size', 'placeholder': "size", 'modelValue': createTextVNode(v6597).provider.DVBSubsSizePercentage, 'onUpdate:modelValue': v7406[114] || (v7406[114] = updRef179 => createTextVNode(v6597).provider.DVBSubsSizePercentage = updRef179), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), createVNode(ne, { 'label': "DVBSubs Vertical Offset", 'placeholder': "offset", 'modelValue': createTextVNode(v6597).provider.DVBSubsVerticalOffsetPercentage, 'onUpdate:modelValue': v7406[115] || (v7406[115] = prov286 => createTextVNode(v6597).provider.DVBSubsVerticalOffsetPercentage = prov286), 'modelModifiers': { 'number': true } }, null, 8, .modelValue), v7406[204] || (v7406[204] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "DVBSubs quality", -1)), createVNode(t2, { 'modelValue': createTextVNode(v6597).provider.DVBSubsQuality, 'onUpdate:modelValue': v7406[116] || (v7406[116] = prov287 => createTextVNode(v6597).provider.DVBSubsQuality = prov287) }, null, 8, .modelValue)]), e("div", Cb, [createVNode(ne, { 'label': 'Burn message', 'placeholder': "message", 'modelValue': createTextVNode(v6597).provider.BurnMessage, 'onUpdate:modelValue': v7406[117] || (v7406[117] = updRef180 => createTextVNode(v6597).provider.BurnMessage = updRef180) }, null, 8, .modelValue), v7406[205] || (v7406[205] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "HW accel for burned subtitles", -1)), createVNode(e2, { 'modelValue': createTextVNode(v6597).provider.HwAccel, 'onUpdate:modelValue': v7406[118] || (v7406[118] = prov288 => createTextVNode(v6597).provider.HwAccel = prov288) }, null, 8, .modelValue)])]), v7406[216] || (v7406[216] = e('hr', { 'class': 'my-5' }, null, -1)), v7406[217] || (v7406[217] = e('p', { 'class': "text-yellow-300 text-base font-semibold mb-3" }, "Misc", -1)), e('div', Mb, [e("div", Ab, [createVNode(ne, { 'label': "X-Forwarded-For", 'placeholder': 'ip', 'modelValue': createTextVNode(v6597).provider.XForwardedFor, 'onUpdate:modelValue': v7406[119] || (v7406[119] = prov289 => createTextVNode(v6597).provider.XForwardedFor = prov289) }, null, 8, .modelValue)]), e('div', Ib, [createVNode(ne, { 'label': "Pipe command", 'placeholder': 'pipe command', 'modelValue': createTextVNode(v6597).provider.PipeOutputCmdFormated, 'onUpdate:modelValue': v7406[120] || (v7406[120] = prov290 => createTextVNode(v6597).provider.PipeOutputCmdFormated = prov290), 'disabled': "true" }, null, 8, .modelValue)]), e('div', Tb, [createVNode(ne, { 'label': 'User Agent', 'placeholder': "User Agent", 'modelValue': createTextVNode(v6597).provider.UserAgent, 'onUpdate:modelValue': v7406[121] || (v7406[121] = usr64 => createTextVNode(v6597).provider.UserAgent = usr64) }, null, 8, .modelValue)]), e("div", Pb, [createVNode(ne, { 'label': 'Unique ID', 'placeholder': "AABBCCDDEEFF", 'modelValue': createTextVNode(v6597).provider.VmxUniqueId, 'onUpdate:modelValue': v7406[122] || (v7406[122] = prov291 => createTextVNode(v6597).provider.VmxUniqueId = prov291) }, null, 8, .modelValue)])]), e("div", Vb, [e('div', null, [v7406[206] || (v7406[206] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Manifest Headers", -1)), isRef(e('textarea', { 'onUpdate:modelValue': v7406[123] || (v7406[123] = updRef181 => v6639.value = updRef181), 'rows': '3', 'placeholder': '{}', 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512), [ [Dropdown, v6639.value] ])]), e('div', null, [v7406[207] || (v7406[207] = e('label', { 'class': 'block mb-2 text-sm font-medium text-white' }, "Media Headers", -1)), isRef(e("textarea", { 'onUpdate:modelValue': v7406[124] || (v7406[124] = updRef182 => v6640.value = updRef182), 'rows': '3', 'placeholder': '{}', 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512), [ [Dropdown, v6640.value] ])]), e('div', Ub, [v7406[208] || (v7406[208] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, 'HlsKey Headers', -1)), isRef(e('textarea', { 'onUpdate:modelValue': v7406[125] || (v7406[125] = updRef183 => v6641.value = updRef183), 'rows': '3', 'placeholder': '{}', 'class': 'border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300' }, null, 512), [ [Dropdown, v6641.value] ])])])]), e("div", _b, [e('div', Eb, [createVNode(he, { 'Icon': Et, 'text': "Add Account", }), createVNode(he, { 'Icon': It, 'text': "Import Accounts", 'onClick': v6656 }), createVNode(he, { 'Icon': sl, 'text': "Export Accounts", 'onClick': v6682 }), createTextVNode(v6599).accounts ? (openBlock(), Modal(ke, { 'key': 0, 'Icon': Bt, 'text': 'Enable all', 'onClick': v7344 })) : normalizeProps('', true), createTextVNode(v6599).accounts ? (openBlock(), Modal(ke, { 'key': 1, 'Icon': Xe, 'text': 'Disable all', 'onClick': v7345 })) : normalizeProps('', true), createTextVNode(v6599).accounts ? (openBlock(), Modal(Ft, { 'key': 2, 'Icon': Ke, 'text': "Delete disabled", 'onClick': delRef33 })) : normalizeProps('', true)]), createTextVNode(v6599).accounts?..length ? (openBlock(), createBlock("div", Lb, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(v6599).accounts, acct39 => (openBlock(), Modal(nh, { 'key': acct39.User, 'account': acct39, 'onOnEditAccount': acct40 => v7358(acct39), 'onOnDeleteAccount': acct41 => v7342(acct39), 'onOnLogin': acct42 => delRef34(acct39), 'onOnPair': acct43 => modal40(acct39) }, null, 8, ["account", "onOnEditAccount", "onOnDeleteAccount", "onOnLogin", "onOnPair"]))), 128))])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': jh, 'message': "No accounts added yet." }))])])], 512), [ [Spinner, createTextVNode(v6630)] ])]), '_': 1 }), e('div', null, [createVNode(Alert, { 'enter-from-class': "transform -translate-x-full", 'leave-to-class': "transform -translate-x-full", 'enter-active-class': "transition duration-300", 'leave-active-class': "transition duration-300" }, { 'default': withModifiers(() => [isRef(createVNode(hh, { 'onOnStateChange': prov203 }, null, 512), [ [Spinner, createTextVNode(v6631)] ])]), '_': 1 }), e("div", Db, [e('div', Gb, [toDisplayString(useAttrs(createTextVNode(v6603)) + ' ', 1), createVNode(he, { 'onClick': v7147 }, { 'default': withModifiers(() => [createVNode(ot, { 'class': classNames([{ 'animate-spin': createTextVNode(v6598).isRefreshingStreams }, "mr-1"]) }, null, 8, ["class"]), toDisplayString(" Update " + useAttrs(stream289.value), 1)]), '_': 1 }), createTextVNode(v6598).getSelectedStreamType === "linear" ? (openBlock(), Modal(he, { 'key': 0, 'onClick': stream291 }, { 'default': withModifiers(() => [createVNode(ot, { 'class': classNames([{ 'animate-spin': createTextVNode(v6601).isRefreshingEpg }, 'mr-1']) }, null, 8, ["class"]), v7406[218] || (v7406[218] = toDisplayString(" Refresh EPG ", -1))]), '_': 1 })) : normalizeProps('', true)]), v6704.value.length ? (openBlock(), createBlock("div", Rb, [stream301.value ? normalizeProps('', true) : (openBlock(), Modal(ke, { 'key': 0, 'class': classNames(["w-40", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400 hover:from-yellow-400 text-black!': stream304.value }]), 'onClick': v7234 }, { 'default': withModifiers(() => [isRef(createVNode(Xe, { 'class': "mr-4" }, null, 512), [ [Spinner, stream304.value] ]), isRef(createVNode(Bt, { 'class': "mr-4" }, null, 512), [ [Spinner, !stream304.value] ]), toDisplayString(' ' + useAttrs(stream304.value ? 'Deselect Page' : "Select Page"), 1)]), '_': 1 }, 8, ['class'])), toDisplayString(' ' + useAttrs(createTextVNode(v6605)) + ' ', 1), createVNode(ke, { 'class': classNames(["w-40", { 'bg-linear-to-r/srgb from-yellow-300 to-yellow-400 hover:from-yellow-400 text-black!': stream301.value }]), 'onClick': v7232 }, { 'default': withModifiers(() => [isRef(createVNode(Xe, { 'class': "mr-4" }, null, 512), [ [Spinner, stream301.value] ]), isRef(createVNode(Bt, { 'class': "mr-4" }, null, 512), [ [Spinner, !stream301.value] ]), toDisplayString(' ' + useAttrs(stream301.value ? "Deselect All" : "Select All"), 1)]), '_': 1 }, 8, ["class"]), v7406[219] || (v7406[219] = toDisplayString(" \u00a0 ", -1))])) : normalizeProps('', true)]), e('div', Nb, [createVNode(ut, { 'placeholder': "Search for streams", 'modelValue': v6609.value, 'onUpdate:modelValue': v7406[127] || (v7406[127] = updRef184 => v6609.value = updRef184) }, null, 8, .modelValue), createVNode(ul, { 'modelValue': v6634.value, 'onUpdate:modelValue': v7406[128] || (v7406[128] = updRef185 => v6634.value = updRef185) }, null, 8, .modelValue)]), v6704.value.length > 0 ? (openBlock(), createBlock("div", jb, [createVNode(tl, { 'totalFilteredItems': v6704.value.length, 'currentPage': v6698.value.currentPage, 'totalItems': createTextVNode(v6598).streams.length, 'totalPages': Math.ceil((createTextVNode(v6598).streams?..length ?? 0) / v6698.value.rowsPerPage) || 1, 'onOnPageChange': srv112 }, null, 8, ["totalFilteredItems", "currentPage", 'totalItems', 'totalPages']), e("div", Ob, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v6704.value, v7412 => (openBlock(), Modal(zf, { 'key': v7412.Id, 'stream': v7412, 'serverId': createTextVNode(v6600).getSelectedServer.Id, 'provider': createTextVNode(v6597)?..getSelectedProviderId, 'onOnPlayStream': v7247, 'onOnToggleSelection': v7243, 'onOnEditStream': stream319, 'onOnDeleteStream': prov206, 'onOnCheckFullStatus': v6689, 'onOnRefreshStream': prov210, 'onOnRefreshKeys': stream308, 'onOnFlushKeys': stream307, 'onOnClearManifest': stream305, 'selected': v6617.value.some(stream328 => stream328.Id === v7412.Id) }, null, 8, ["stream", "serverId", "provider", "selected"]))), 128))])])) : !createTextVNode(v6598).isLoading && !createTextVNode(v6597).isLoading && !v6704.value.length ? (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': 'There\x27s no ' + createTextVNode(v6598).getSelectedStreamType + " streams on this provider." }, null, 8, .message)) : normalizeProps('', true)]), e("div", Bb, [e("div", Hb, [createTextVNode(v6614) != null ? (openBlock(), createBlock('div', Fb, [e("div", qb, [e("div", Wb, [e('h3', zb, useAttrs(createTextVNode(proxyRef2) ? "Edit" : "Add " + v7146.value) + ' ' + useAttrs(createTextVNode(v6614).Name), 1), e('span', Zb, 'ID: ' + useAttrs(createTextVNode(v6614).Id), 1)]), e("button", { 'type': 'button', 'onClick': manif17, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center transition-all" }, [createVNode(Re), v7406[220] || (v7406[220] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("div", Kb, [e("div", Jb, [e('div', Yb, [e("div", null, [v7406[221] || (v7406[221] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Name", -1)), isRef(e("input", { 'type': 'text', 'name': 'name', 'id': "name", 'onUpdate:modelValue': v7406[129] || (v7406[129] = updRef186 => createTextVNode(v6614).Name = updRef186), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': "Type stream name" }, null, 512), [ [Dropdown, createTextVNode(v6614).Name] ])]), e('div', null, [v7406[222] || (v7406[222] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'Logo URL', -1)), isRef(e("input", { 'type': 'text', 'name': "name", 'id': 'name', 'onUpdate:modelValue': v7406[130] || (v7406[130] = updRef187 => createTextVNode(v6614).LogoUrl = updRef187), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-logo", 'placeholder': "Type Logo URL" }, null, 512), [ [Dropdown, createTextVNode(v6614).LogoUrl] ])]), e('div', Qb, [e("div", null, [v7406[223] || (v7406[223] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "EPG Id", -1)), isRef(e('input', { 'type': "text", 'name': "name", 'id': "name", 'onUpdate:modelValue': v7406[131] || (v7406[131] = updRef188 => createTextVNode(v6614).EpgId = updRef188), 'class': 'border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "new-epgid", 'placeholder': "Type EPG Id" }, null, 512), [ [Dropdown, createTextVNode(v6614).EpgId] ])]), e("div", null, [v7406[224] || (v7406[224] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Sort Id", -1)), isRef(e("input", { 'type': "text", 'name': "name", 'id': "name", 'onUpdate:modelValue': v7406[132] || (v7406[132] = updRef189 => createTextVNode(v6614).SortId = updRef189), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': 'new-sortid', 'placeholder': 'Type Sort Id' }, null, 512), [ [Dropdown, createTextVNode(v6614).SortId, void(0), { 'number': true }] ])])])]), e("div", Xb, [e("div", null, [v7406[226] || (v7406[226] = e("label", { 'for': "img", 'class': 'block mb-2 text-sm font-medium text-white' }, "Logo File", -1)), e('label', ew, [createTextVNode(v6614).LogoBase64 ? (openBlock(), createBlock("img", { 'key': 0, 'class': 'w-full object-contain overflow-hidden', 'src': createTextVNode(v6614).LogoBase64, 'alt': "Image Preview" }, null, 8, tw)) : (openBlock(), createBlock("div", lw, [createVNode(qt), v7406[225] || (v7406[225] = e('p', { 'class': 'mb-2 text-sm text-neutral-400' }, [e("span", { 'class': 'font-semibold' }, 'Click to upload')], -1))])), e("input", { 'onClick': v7406[133] || (v7406[133] = v7413 => v7413.target.value = ''), 'onChange': v6646, 'id': "dropzone-file-stream-logo", 'type': "file", 'class': "hidden" }, null, 32)])]), e("div", ow, [e('div', null, [v7406[227] || (v7406[227] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "HW Accel Device Id", -1)), isRef(e("input", { 'type': "text", 'name': 'name', 'id': "name", 'onUpdate:modelValue': v7406[134] || (v7406[134] = updRef190 => createTextVNode(v6614).HwAccelDeviceIndex = updRef190), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-hwid", 'placeholder': "Type HW Id" }, null, 512), [ [Dropdown, createTextVNode(v6614).HwAccelDeviceIndex, void(0), { 'number': true }] ])]), e("div", null, [v7406[228] || (v7406[228] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, 'Subtitles offset (ms)', -1)), isRef(e("input", { 'type': "text", 'name': "name", 'id': 'name', 'onUpdate:modelValue': v7406[135] || (v7406[135] = updRef191 => createTextVNode(v6614).SubtitlesOffset = updRef191), 'class': 'border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "new-subtitlesoffset", 'placeholder': "Offset in ms" }, null, 512), [ [Dropdown, createTextVNode(v6614).SubtitlesOffset, void(0), { 'number': true }] ])])])])]), e('div', sw, [v7406[249] || (v7406[249] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'Manifest', -1)), isRef(e('input', { 'type': 'text', 'onUpdate:modelValue': v7406[136] || (v7406[136] = manif21 => createTextVNode(v6614).Manifest = manif21), 'class': "h-full border text-white text-sm font-mono rounded-xl block w-full p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'Manifest URL' }, null, 512), [ [Dropdown, createTextVNode(v6614).Manifest] ]), e('div', aw, [e("div", null, [v7406[229] || (v7406[229] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, 'Manifest Headers', -1)), isRef(e("textarea", { 'onUpdate:modelValue': v7406[137] || (v7406[137] = manif22 => v6636.value = manif22), 'rows': '3', 'class': "border text-white text-sm font-mono rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512), [ [Dropdown, v6636.value] ])]), e("div", null, [v7406[230] || (v7406[230] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "Media Headers", -1)), isRef(e('textarea', { 'onUpdate:modelValue': v7406[138] || (v7406[138] = updRef192 => v6637.value = updRef192), 'rows': '3', 'class': "border text-white text-sm font-mono rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512), [ [Dropdown, v6637.value] ])]), e('div', null, [v7406[231] || (v7406[231] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "HlsKey Headers", -1)), isRef(e("textarea", { 'onUpdate:modelValue': v7406[139] || (v7406[139] = updRef193 => v6638.value = updRef193), 'rows': '3', 'class': "border text-white text-sm font-mono rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512), [ [Dropdown, v6638.value] ])])]), v7406[250] || (v7406[250] = e("label", { 'class': 'block text-sm font-medium text-white' }, "Keys", -1)), e('div', rw, [createTextVNode(v6614).UseCdm ? (openBlock(), createBlock('div', nw, [createVNode(l2, { 'modelValue': createTextVNode(v6614).CdmType, 'onUpdate:modelValue': v7406[140] || (v7406[140] = updRef194 => createTextVNode(v6614).CdmType = updRef194) }, null, 8, .modelValue), createTextVNode(v6614).HasInternalDrm ? (openBlock(), Modal(o2, { 'key': 0, 'modelValue': createTextVNode(v6614).CdmMode, 'onUpdate:modelValue': v7406[141] || (v7406[141] = updRef195 => createTextVNode(v6614).CdmMode = updRef195) }, null, 8, .modelValue)) : normalizeProps('', true)])) : normalizeProps('', true), isRef(e("textarea", { 'onUpdate:modelValue': v7406[142] || (v7406[142] = updRef196 => v6635.value = updRef196), 'class': classNames(["h-full border text-white text-sm font-mono rounded-xl block w-full p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", createTextVNode(v6614).UseCdm ? "lg:col-span-3" : "lg:col-span-4"]), 'rows': createTextVNode(v6614).Keys?..length ?? 2, 'cols': '70', 'placeholder': 'kid1:key1,\nkid2:key2...' }, null, 10, iw), [ [Dropdown, v6635.value] ])]), createTextVNode(proxyRef2) ? (openBlock(), createBlock("label", dw, "Audio, Video & Subtitles Tracks")) : normalizeProps('', true), createTextVNode(v6614) && createTextVNode(proxyRef2) ? (openBlock(), createBlock("div", uw, [createVNode(hl, { 'stream': createTextVNode(v6614), 'onOnSelectedTrack': v7181, 'type': 'Video' }, null, 8, .stream), createVNode(hl, { 'stream': createTextVNode(v6614), 'onOnSelectedTrack': v7186, 'onOnSelectedFirstAudio': v7194, 'type': "Audio" }, null, 8, .stream), createVNode(hl, { 'stream': createTextVNode(v6614), 'onOnSelectedTrack': v7189, 'onOnSelectedFirstSubtitle': v7199, 'type': "Subtitles" }, null, 8, .stream)])) : normalizeProps('', true), v7406[251] || (v7406[251] = e("div", null, null, -1)), createTextVNode(v6614).Cdn ? (openBlock(), createBlock("div", cw, [v7406[232] || (v7406[232] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'CDN', -1)), createVNode(s2, { 'id': "modal-config-cdn", 'cdns': createTextVNode(v6614).Cdn, 'modelValue': createTextVNode(v6614).CdnName, 'onUpdate:modelValue': v7406[143] || (v7406[143] = updRef197 => createTextVNode(v6614).CdnName = updRef197) }, null, 8, ['cdns', "modelValue"])])) : normalizeProps('', true), prov195.value ? (openBlock(), createBlock("div", mw, [v7406[233] || (v7406[233] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Pipe", -1)), isRef(e("input", { 'type': 'text', 'onUpdate:modelValue': v7406[144] || (v7406[144] = updRef198 => createTextVNode(v6614).PipeOutputParams = updRef198), 'class': 'block w-full p-2 text-sm text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white', 'placeholder': "Pipe" }, null, 512), [ [Dropdown, createTextVNode(v6614).PipeOutputParams] ])])) : normalizeProps('', true), v6651.value ? (openBlock(), createBlock('div', pw, [v7406[234] || (v7406[234] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "UDP/SRT", -1)), isRef(e('input', { 'type': 'text', 'onUpdate:modelValue': v7406[145] || (v7406[145] = updRef199 => createTextVNode(v6614).ProtoOutputParams = updRef199), 'class': "block w-full p-2 text-sm text-white border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white", 'placeholder': "UDP/SRT" }, null, 512), [ [Dropdown, createTextVNode(v6614).ProtoOutputParams] ])])) : normalizeProps('', true), isRef(e("div", vw, [e("div", fw, [e('div', null, [v7406[236] || (v7406[236] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Start date", -1)), e("div", gw, [e('div', hw, [createVNode(Wt)]), v7406[235] || (v7406[235] = e('input', { 'id': "start-date", 'autocomplete': "off", 'type': "text", 'class': 'border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': 'Start date' }, null, -1))])]), e("div", null, [v7406[238] || (v7406[238] = e('label', { 'for': "start-time", 'class': "block mb-2 text-sm font-medium text-white" }, "Start time", -1)), e("div", bw, [e('div', ww, [createVNode(bt)]), v7406[237] || (v7406[237] = e('input', { 'type': 'time', 'id': 'start-time', 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, -1))])])]), e('div', xw, [e("div", null, [v7406[240] || (v7406[240] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "End", -1)), e('div', yw, [e("div", kw, [createVNode(Wt)]), v7406[239] || (v7406[239] = e("input", { 'id': "end-date", 'autocomplete': "off", 'type': 'text', 'class': 'border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "End date" }, null, -1))])]), e("div", null, [v7406[242] || (v7406[242] = e("label", { 'for': "end-time", 'class': "block mb-2 text-sm font-medium text-white" }, 'End time', -1)), e("div", Sw, [e("div", $w, [createVNode(bt)]), v7406[241] || (v7406[241] = e("input", { 'type': 'time', 'id': "end-time", 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, -1))])])])], 512), [ [Spinner, createTextVNode(v6614).Type === "event"] ]), createTextVNode(v6614).SessionManifest || createTextVNode(v6614).UseCdm ? (openBlock(), createBlock('div', Cw, [e("div", Mw, [e("div", null, [v7406[243] || (v7406[243] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "Script Params", -1)), isRef(e("input", { 'type': 'text', 'onUpdate:modelValue': v7406[146] || (v7406[146] = updRef200 => createTextVNode(v6614).ScriptParams = updRef200), 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black/50 border-white/15 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'id=foo' }, null, 512), [ [Dropdown, createTextVNode(v6614).ScriptParams] ])]), createVNode(Yl, { 'id': 'dropdown-modal-script-accounts-user', 'modelValue': createTextVNode(v6614), 'onUpdate:modelValue': v7406[147] || (v7406[147] = acct44 => onMounted(v6614) ? v6614.value = acct44 : v6614 = acct44), 'accounts': createTextVNode(v6599).accounts }, null, 8, ['modelValue', "accounts"])])])) : normalizeProps('', true), isRef(e("div", Aw, [e("div", null, [v7406[245] || (v7406[245] = e("label", { 'for': "onair-start-time", 'class': 'block mb-2 text-sm font-medium text-white' }, 'Start time', -1)), e("div", Iw, [e("div", Tw, [createVNode(bt)]), v7406[244] || (v7406[244] = e("input", { 'type': "time", 'id': "onair-start-time", 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black/50 border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, -1))])]), e("div", null, [v7406[247] || (v7406[247] = e('label', { 'for': "onair-end-time", 'class': 'block mb-2 text-sm font-medium text-white' }, "End time", -1)), e("div", Pw, [e("div", Vw, [createVNode(bt)]), v7406[246] || (v7406[246] = e('input', { 'type': 'time', 'id': "onair-end-time", 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black/50 border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, -1))])])], 512), [ [Spinner, createTextVNode(v6614).DailyOnAir] ]), createTextVNode(v6614).ModeOverride ? (openBlock(), createBlock('div', Uw, [createVNode(Jl, { 'id': 'modal', 'mode': "full", 'modelValue': createTextVNode(v6614), 'onUpdate:modelValue': v7406[148] || (v7406[148] = modal47 => onMounted(v6614) ? v6614.value = modal47 : v6614 = modal47) }, null, 8, .modelValue)])) : normalizeProps('', true), createTextVNode(v6614).NetworkOverride ? (openBlock(), createBlock("div", _w, [v7406[248] || (v7406[248] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "Network Override", -1)), e('div', Ew, [createVNode(bl, { 'id': 'modal', 'modelValue': createTextVNode(v6614), 'onUpdate:modelValue': v7406[149] || (v7406[149] = modal48 => onMounted(v6614) ? v6614.value = modal48 : v6614 = modal48) }, null, 8, .modelValue)])])) : normalizeProps('', true), v7406[252] || (v7406[252] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "Auto-restart Cron", -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[150] || (v7406[150] = updRef201 => createTextVNode(v6614).AutorestartCron = updRef201), 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black/50 border-white/15 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'cron' }, null, 512), [ [Dropdown, createTextVNode(v6614).AutorestartCron] ]), v7406[253] || (v7406[253] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, 'Options', -1)), e('div', Lw, [e("div", Dw, [e("div", null, [createVNode(Z, { 'label': "Autostart", 'modelValue': createTextVNode(v6614).Autostart, 'onUpdate:modelValue': v7406[151] || (v7406[151] = updRef202 => createTextVNode(v6614).Autostart = updRef202) }, null, 8, .modelValue), createVNode(Z, { 'label': 'On demand', 'modelValue': createTextVNode(v6614).OnDemand, 'onUpdate:modelValue': v7406[152] || (v7406[152] = updRef203 => createTextVNode(v6614).OnDemand = updRef203) }, null, 8, .modelValue), createVNode(Z, { 'label': "Speed up", 'modelValue': createTextVNode(v6614).SpeedUp, 'onUpdate:modelValue': v7406[153] || (v7406[153] = updRef204 => createTextVNode(v6614).SpeedUp = updRef204) }, null, 8, .modelValue)]), e("div", null, [createVNode(Z, { 'label': 'Session manifest', 'modelValue': createTextVNode(v6614).SessionManifest, 'onUpdate:modelValue': v7406[154] || (v7406[154] = manif23 => createTextVNode(v6614).SessionManifest = manif23) }, null, 8, .modelValue), createVNode(Z, { 'label': "Use CDM", 'modelValue': createTextVNode(v6614).UseCdm, 'onUpdate:modelValue': v7406[155] || (v7406[155] = updRef205 => createTextVNode(v6614).UseCdm = updRef205) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Network override', 'modelValue': createTextVNode(v6614).NetworkOverride, 'onUpdate:modelValue': v7406[156] || (v7406[156] = updRef206 => createTextVNode(v6614).NetworkOverride = updRef206) }, null, 8, .modelValue)]), e("div", null, [createVNode(Z, { 'label': "Process DVBSubs", 'modelValue': createTextVNode(v6614).ProcessDVBSubs, 'onUpdate:modelValue': v7406[157] || (v7406[157] = updRef207 => createTextVNode(v6614).ProcessDVBSubs = updRef207) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Mode override', 'modelValue': createTextVNode(v6614).ModeOverride, 'onUpdate:modelValue': v7406[158] || (v7406[158] = updRef208 => createTextVNode(v6614).ModeOverride = updRef208) }, null, 8, .modelValue), createVNode(Z, { 'label': "Record TS", 'modelValue': createTextVNode(v6614).RecordTs, 'onUpdate:modelValue': v7406[159] || (v7406[159] = updRef209 => createTextVNode(v6614).RecordTs = updRef209) }, null, 8, .modelValue)]), e("div", null, [createTextVNode(v6614).Type === "event" ? (openBlock(), Modal(Z, { 'key': 0, 'label': "Record event", 'modelValue': createTextVNode(v6614).RecordEvent, 'onUpdate:modelValue': v7406[160] || (v7406[160] = updRef210 => createTextVNode(v6614).RecordEvent = updRef210) }, null, 8, .modelValue)) : normalizeProps('', true), createVNode(Z, { 'label': 'Ignore update', 'modelValue': createTextVNode(v6614).IgnoreUpdate, 'onUpdate:modelValue': v7406[161] || (v7406[161] = updRef211 => createTextVNode(v6614).IgnoreUpdate = updRef211) }, null, 8, .modelValue), createTextVNode(v6614).Type === "event" ? (openBlock(), Modal(Z, { 'key': 1, 'label': "Manual event", 'modelValue': createTextVNode(v6614).ManualEvent, 'onUpdate:modelValue': v7406[162] || (v7406[162] = updRef212 => createTextVNode(v6614).ManualEvent = updRef212) }, null, 8, .modelValue)) : normalizeProps('', true), createTextVNode(v6614).Type === 'linear' ? (openBlock(), Modal(Z, { 'key': 2, 'label': 'Daily OnAir', 'modelValue': createTextVNode(v6614).DailyOnAir, 'onUpdate:modelValue': v7406[163] || (v7406[163] = updRef213 => createTextVNode(v6614).DailyOnAir = updRef213) }, null, 8, .modelValue)) : normalizeProps('', true)])])])]), e('div', Gw, [createVNode(ke, { 'Icon': Xe, 'text': 'Cancel', 'onClick': manif17 }), createVNode(he, { 'Icon': Mt, 'text': createTextVNode(proxyRef2) ? 'Save' : "Create" }, null, 8, .text)])])])) : normalizeProps('', true)])]), e('div', Rw, [e('div', Nw, [e("div", jw, [e("div", Ow, [e('h3', Bw, useAttrs(createTextVNode(v6616) ? 'Edit' : "Add") + " Account ", 1), e("button", { 'type': "button", 'onClick': v7358, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), v7406[254] || (v7406[254] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("form", { 'onSubmit': v7406[174] || (v7406[174] = useConfigStore(evtRef72 => createTextVNode(v6616) ? stream317() : prov242(), .prevent)), 'class': 'p-4 md:p-5 space-y-2' }, [e("div", Hw, [v7406[255] || (v7406[255] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, 'User', -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[165] || (v7406[165] = usr65 => createTextVNode(v6615).User = usr65), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black/50 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Type account name" }, null, 512), [ [Dropdown, createTextVNode(v6615).User] ]), v7406[256] || (v7406[256] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, "Password", -1)), isRef(e('input', { 'type': "text", 'onUpdate:modelValue': v7406[166] || (v7406[166] = updRef214 => createTextVNode(v6615).Password = updRef214), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black/50 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Type account password" }, null, 512), [ [Dropdown, createTextVNode(v6615).Password] ]), v7406[257] || (v7406[257] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Device", -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[167] || (v7406[167] = updRef215 => createTextVNode(v6615).Device = updRef215), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black/50 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Type account device" }, null, 512), [ [Dropdown, createTextVNode(v6615).Device] ]), v7406[258] || (v7406[258] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "PIN", -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[168] || (v7406[168] = updRef216 => createTextVNode(v6615).Pin = updRef216), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black/50 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Type account PIN" }, null, 512), [ [Dropdown, createTextVNode(v6615).Pin] ]), v7406[259] || (v7406[259] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Description", -1)), isRef(e("input", { 'type': "text", 'onUpdate:modelValue': v7406[169] || (v7406[169] = updRef217 => createTextVNode(v6615).Description = updRef217), 'class': "border border-white/15 text-sm rounded-xl block w-full p-2.5 bg-black/50 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Type account description" }, null, 512), [ [Dropdown, createTextVNode(v6615).Description] ]), createVNode(Z, { 'class': "p-0", 'label': "Enabled", 'modelValue': createTextVNode(v6615).Enabled, 'onUpdate:modelValue': v7406[170] || (v7406[170] = updRef218 => createTextVNode(v6615).Enabled = updRef218) }, null, 8, .modelValue), createVNode(Z, { 'label': 'Network Override', 'modelValue': createTextVNode(v6615).NetworkOverride, 'onUpdate:modelValue': v7406[171] || (v7406[171] = updRef219 => createTextVNode(v6615).NetworkOverride = updRef219) }, null, 8, .modelValue), createTextVNode(v6615).NetworkOverride ? (openBlock(), createBlock('div', Fw, [createVNode(bl, { 'id': "account", 'modelValue': createTextVNode(v6615), 'onUpdate:modelValue': v7406[172] || (v7406[172] = updRef220 => onMounted(v6615) ? v6615.value = updRef220 : v6615 = updRef220) }, null, 8, .modelValue)])) : normalizeProps('', true)]), e("div", qw, [createVNode(ke, { 'Icon': Xe, 'text': "Cancel", 'onClick': v7358 }), createVNode(he, { 'Icon': Mt, 'text': createTextVNode(v6616) ? "Save" : "Create", }, null, 8, .text)])], 32)])])]), e('div', Ww, [e("div", zw, [e("div", Zw, [e('div', Kw, [v7406[261] || (v7406[261] = e('h3', { 'class': "text-lg font-semibold text-white" }, ' Import Accounts ', -1)), e("button", { 'type': "button", 'onClick': v6656, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), v7406[260] || (v7406[260] = e('span', { 'class': 'sr-only' }, "Close modal", -1))])]), e("div", Jw, [e('div', Yw, [e("div", Qw, [v7406[264] || (v7406[264] = e('label', { 'for': "img", 'class': "block mb-2 text-sm font-medium text-white" }, "Accounts file", -1)), e("label", Xw, [v6642.value ? (openBlock(), createBlock("div", ex, [e('span', null, useAttrs(v6642.value.name), 1)])) : (openBlock(), createBlock('div', tx, [createVNode(qt), v7406[262] || (v7406[262] = e('p', { 'class': 'mb-2 text-sm text-neutral-400' }, [e("span", { 'class': "font-semibold" }, "Click to upload")], -1)), v7406[263] || (v7406[263] = e('p', { 'class': 'text-xs text-neutral-400' }, ' .txt file only ', -1))])), e('input', { 'onClick': v7406[175] || (v7406[175] = v7416 => v7416.target.value = ''), 'onChange': v6657, 'id': "dropzone-import-file", 'type': "file", 'class': "hidden" }, null, 32)])]), e("div", lx, [createVNode(ke, { 'text': "Cancel", 'onClick': v6656 }), createVNode(he, { 'text': "Import", 'onClick': v6661 })])])])])])]), createVNode(gt, { 'ref_key': "deleteProviderModal", 'ref': v6619, 'message': v6621.value, 'id': "delete-provider", 'onClick': v7376 }, null, 8, .message), createVNode(gt, { 'ref_key': "deleteModal", 'ref': v6618, 'message': v6621.value, 'id': "delete", 'onClick': v7228 }, null, 8, .message), createVNode(gt, { 'ref_key': 'deleteModalSingle', 'ref': v6620, 'message': v6621.value, 'id': "delete-single", 'onClick': v7230 }, null, 8, .message), createVNode(gt, { 'ref_key': "refreshConfirmationModal", 'ref': v6622, 'message': createTextVNode(v6628), 'id': "refreshConfirmationModal", 'onClick': stream290 }, null, 8, .message), createVNode(gt, { 'ref_key': "confirmationMassUpdateModal", 'ref': v6623, 'message': v6633.value, 'id': 'confirmationMassUpdateModal', 'onClick': v7144 }, null, 8, .message), createVNode(c2, { 'ref_key': "pairingModal", 'ref': v6625, 'message': createTextVNode(v6628), 'id': "pairingModal", 'onConfirmation': v7353, 'onSendInput': v7350 }, null, 8, .message), createVNode(st, { 'ref_key': 'informationModal', 'ref': v6624, 'message': createTextVNode(v6628), 'id': "informationModal" }, null, 8, .message), createVNode(st, { 'ref_key': "fullStatusModal", 'ref': v6626, 'message': createTextVNode(v6629), 'id': 'fullStatusModal' }, null, 8, .message)], 64)); } }, sx = { 'class': 'flex flex-row justify-end gap-4 items-center' }, ax = { 'class': 'flex flex-row gap-4' }, rx = { 'class': "flex flex-col justify-around gap-2" }, nx = { 'class': "flex flex-col grow justify-around gap-4" }, ix = { 'class': "flex flex-row justify-start gap-2" }, dx = { 'class': "font-bold text-sm text-white" }, ux = { 'key': 0, 'class': "font-mono font-bold text-[10px] text-left text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, cx = { 'key': 0, 'class': "flex gap-2" }, mx = { 'key': 0, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, px = { 'key': 1, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, vx = { 'class': "flex flex-row justify-between items-center" }, fx = { 'class': "flex justify-end gap-2" }, gx = { '__name': "ItemVod", 'props': ["stream", "provider", "serverId", "selected"], 'emits': ["onPlayStream", "onCheckFullStatus"], 'setup'(v7417, { emit: v7418 }) { v7431 = v7417, v7432 = v7418, v7433 = Le(), v7434 = Be(), v7435 = Sidebar(() => v7434.isAdmin), v7436 = () => { v7432("onPlayStream", v7431.stream.StreamingUrl); }, stream329 = () => { const stream330 = document.createElement('a'); stream330.href = v7431.stream.StreamingUrl[0].Url, stream330.target = "_blank", stream330.download = v7431.stream.Id, stream330.click(); }, stream331 = () => { v7432("onCheckFullStatus", v7431.stream.Status); }, stream332 = () => { me.push({ 'name': "config", 'params': { 'provider': v7431.provider, 'type': "vod" }, 'query': { 's': v7431.stream.Id + '$', 'server': v7431.serverId } }); }, srv140 = () => { me.push({ 'name': "logs", 'params': { 'provider': v7431.provider, 'stream': v7431.stream.Id }, 'query': { 'server': v7431.serverId } }); }, stream333 = async (stream334, stream335, stream336) => { await v7433.toggleStreamPlayback(stream334, stream336, stream335); }; return (srv141, srv142) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-black/25': v7417.stream.Running }, "h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto relative transition-all ease-in-out border-white/15 border"]) }, [e('div', sx, [e("div", { 'class': classNames(["rounded-full w-3 h-3", createTextVNode(ge).getColorByStatus(v7417.stream.StatusColor, 'bg')]) }, " \u00a0\u00a0 ", 2)]), e("div", ax, [e("div", rx, [v7417.stream.Running ? (openBlock(), createBlock("button", { 'key': 1, 'class': 'text-white hover:text-red-500 rounded-full m-auto transition-all ease-in-out' }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'onClick': srv142[0] || (srv142[0] = transRef34 => stream333("start", v7417.stream, v7417.provider)), 'class': 'text-white hover:text-green-500 rounded-full m-auto transition-all ease-in-out' }, [createVNode(at)])), e('button', { 'onClick': v7436, 'class': "hover:text-blue-500 rounded-full m-auto transition-all ease-in-out text-white" }, [createVNode(Ie)]), v7417.stream.Status === "VOD ready\n" ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': stream329, 'class': 'text-white hover:text-blue-600 rounded-full transition-all ease-in-out' }, [createVNode(It)])) : normalizeProps('', true)]), e("div", nx, [e("div", ix, [e('p', dx, useAttrs(v7417.stream.Name), 1), v7417.stream.CurrentVideo ? (openBlock(), createBlock("span", ux, useAttrs(v7417.stream.ManifestInfo2.BestVideo), 1)) : normalizeProps('', true)]), !v7417.stream.HasKeys || !v7417.stream.HasManifest ? (openBlock(), createBlock("div", cx, [v7417.stream.HasKeys ? normalizeProps('', true) : (openBlock(), createBlock("span", mx, " No keys ")), v7417.stream.HasManifest ? normalizeProps('', true) : (openBlock(), createBlock("span", px, " No Manifest "))])) : normalizeProps('', true), e("div", vx, [e('p', { 'onClick': stream331, 'class': classNames(["text-xs font-bold line-clamp-3 overflow-y-scroll no-scrollbar whitespace-pre-wrap max-w-[8rem] self-end cursor-pointer hover:opacity-75 transition-all", createTextVNode(ge).getColorByStatus(v7417.stream.StatusColor, 'text')]) }, useAttrs(v7417.stream.Status), 3), e("div", fx, [v7435.value ? (openBlock(), createBlock("button", { 'key': 0, 'onClick': srv142[2] || (srv142[2] = stream337 => srv140(v7417.provider, v7417.stream)), 'class': 'hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5' }, [createVNode(Tt)])) : normalizeProps('', true), v7435.value ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': stream332, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': 'w-5 h-5' })])) : normalizeProps('', true)])])])])], 2)); } }, hx = { 'intervalPoolingIds': [], 'clearPooling'() { this.intervalPoolingIds.length && (this.intervalPoolingIds.forEach(clearInterval), this.intervalPoolingIds = []); }, 'startPooling'(v7439, v7440 = 750) { v7446 = setInterval(() => { v7439(); }, v7440); this.intervalPoolingIds.push(v7446); } }, bx = { 'class': "flex flex-col justify-between lg:flex-row lg:space-x-2 space-y-2 lg:space-y-0 mt-5" }, wx = { 'class': "flex lg:flex-row flex-col gap-2 flex-1" }, xx = { 'class': "w-full lg:w-96 relative" }, yx = { 'class': 'flex gap-2 grow justify-end' }, kx = { 'key': 0 }, Sx = { 'class': 'flex justify-end items-center gap-2' }, $x = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 gap-4 mt-4" }, Cx = { '__name': "VodView", 'setup'(v7447) { v7555 = Le(), v7556 = Ae(), v7557 = Be(), v7558 = He(), v7559 = withCtx(''), v7560 = withCtx(), v7561 = withCtx(''), v7562 = withCtx(); let v7563 = withCtx(null); const v7564 = withCtx(I.getSortMode().vod), v7565 = withCtx({ 'currentPage': 1, 'rowsPerPage': 84 }), v7566 = withCtx(I.getViewMode().vod === "list"), v7567 = Sidebar(() => v7557.isAdmin), v7568 = () => { if ((false)) { const v7569 = {}; return v7570.integrity && (v7569.integrity = v7571.integrity), v7572.referrerPolicy && (v7569.referrerPolicy = v7573.referrerPolicy), (v7574.crossOrigin === "use-credentials") ? v7569.credentials = "include" : (v7575.crossOrigin === "anonymous") ? v7569.credentials = "omit" : v7569.credentials = "same-origin", v7569; } else v7576(), v7577(); }, v7576 = () => { me.replace({ 'name': "vod", 'params': { 'provider': v7556.getSelectedProviderId }, 'query': { 'server': v7558.getSelectedServer.Id } }) }, v7589 = () => { const prov292 = me.currentRoute.value.params.provider || v7556.getSelectedProviderId; prov292 ? v7556.setCurrentSelectedProvider(prov292) : v7556.setDefaultCurrentSelectedProvider(), v7576(); }, prov293 = prov294 => { if ((true)) v7560.value.playVideo(prov294[0].Url); else return v7590(), v7591("svg", v7592, [...v7593[0] || (v7594[0] = [v7595("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M13.213 9.787a3.391 3.391 0 0 0-4.795 0l-3.425 3.426a3.39 3.39 0 0 0 4.795 4.794l.321-.304m-.321-4.49a3.39 3.39 0 0 0 4.795 0l3.424-3.426a3.39 3.39 0 0 0-4.794-4.795l-1.028.961" }, null, -1)])]); }, v7596 = v7597 => { v7565.value.currentPage = v7597; }, v7598 = Sidebar(() => v7599.value.map(v7600 => v7600.Id).join(',')), v7599 = Sidebar(() => { const v7616 = ((v7565.value.currentPage - 1) * v7565.value.rowsPerPage), v7617 = (v7616 + v7565.value.rowsPerPage); return v7555.streams && (v7555.streams.Providers?..length > 0) ? v7555.streams?..Providers[0].Streams ? v7555.streams?..Providers[0].Streams.slice(v7616, v7617) : [] : [];; }), v7618 = v7619 => { v7563.value = v7619, v7562.value.toggleModal(); }; Carousel(v7561, () => { if ((true)) v7577(); else { v7640 = v7641(); return v7640.getToken(), (v7642, v7643) => { const v7644 = v7645("RouterView"); return v7646(), v7647("div", null, [v7648(v7640).isAuth ? (v7649(), v7650(v7651, { 'key': 0 })) : v7652('', true), v7653(v7640).isAuth ? (v7654(), v7655("div", v7656, [v7657(v7658), v7659(v7644)])) : (v7660(), v7661("div", v7662, [v7663(v7644)])), v7664(v7640).isAuth ? (v7665(), v7666(v7667, { 'key': 3 })) : v7668('', true)]); }; } }), Carousel(v7559, () => { const v7669 = { 'xrPUI': "hidden" }; (true) ? v7577() : (v7670.classList.add(v7669.xrPUI), v7671.classList.remove(v7669.xrPUI)); }), Carousel(v7564, () => { (true) ? v7577() : this.error = v7672; }); const v7673 = Sidebar(() => v7555.streams?..Providers?..length ? v7555.streams?..Providers[0].Streams : []), v7577 = async () => { await v7555.getStatus(v7556.getSelectedProviderId, v7559.value, v7561.value, "vod", v7564.value) }, v7695 = async () => { const v7696 = { 'TFrwz': "Error parsing HLS key headers" }; if ((true)) await v7555.updateStreamStatusV2_WS(v7556.getSelectedProviderId, "vod", v7598.value); else return v7697.showNotification(v7696.TFrwz, "error"), v7698; }, v7699 = () => { v7577() }, v7707 = async () => { (true) ? (await v7555.closeWsClient(), v7589(), await v7577(), await me.replace({ 'name': "vod", 'params': { 'provider': v7556.getSelectedProviderId }, 'query': { 'server': v7558.getSelectedServer.Id } }), await v7695()) : this.error = prov295; }; return withDirectives(async () => { v7589(), await v7577(), await v7695(); }), Table(() => { hx.clearPooling(); }), computed(() => { if ((true)) v7555.resetStreams(); else { const v7708 = v7709(); return (v7710, v7711) => (v7712(), v7713("span", v7714, v7715(v7716(v7708).serverVersion), 1)); } }), (v7717, v7718) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "VOD" }), createVNode(Kt, { 'onOnProviderSelected': v7568, 'onOnServerChanged': v7707 }), createVNode(ho, { 'ref_key': "mp4Player", 'ref': v7560 }, null, 512), e("div", bx, [e('div', wx, [e("div", xx, [createVNode(ut, { 'placeholder': 'Search for VOD', 'modelValue': v7559.value, 'onUpdate:modelValue': v7718[0] || (v7718[0] = updRef225 => v7559.value = updRef225) }, null, 8, .modelValue)]), createVNode(ul, { 'modelValue': v7561.value, 'onUpdate:modelValue': v7718[1] || (v7718[1] = updRef226 => v7561.value = updRef226) }, null, 8, .modelValue), e("div", yx, [v7567.value ? (openBlock(), Modal(Sl, { 'key': 0, 'isRefreshing': createTextVNode(v7555).isRefreshingStreams, 'onOnApply': v7699, 'type': "vod" }, null, 8, .isRefreshing)) : normalizeProps('', true), createVNode(Zt, { 'id': "vod-page", 'name': "Playlist", 'type': "vod", 'provider': createTextVNode(v7556).getSelectedProviderId }, null, 8, .provider)])])]), v7599.value.length > 0 ? (openBlock(), createBlock("div", kx, [createVNode(tl, { 'totalItems': createTextVNode(v7555).streams?..Providers[0].Streams.length, 'currentPage': v7565.value.currentPage, 'totalPages': Math.ceil((createTextVNode(v7555).streams?..Providers[0].Streams.length ?? 0) / v7565.value.rowsPerPage) || 1, 'onOnPageChange': v7596 }, null, 8, ['totalItems', "currentPage", "totalPages"]), e("div", Sx, [createVNode(Al, { 'modelValue': v7566.value, 'onUpdate:modelValue': v7718[2] || (v7718[2] = updRef227 => v7566.value = updRef227), 'type': "vod" }, null, 8, .modelValue), createVNode(ll, { 'modelValue': v7564.value, 'onUpdate:modelValue': v7718[3] || (v7718[3] = updRef228 => v7564.value = updRef228), 'page': "vod" }, null, 8, .modelValue)]), v7566.value ? (openBlock(), Modal(Ml, { 'key': 0, 'type': "vod", 'provider': createTextVNode(v7556).getSelectedProviderId, 'streams': v7599.value, 'serverId': createTextVNode(v7558).getSelectedServer.Id, 'onOnPlayStream': prov293, 'onOnCheckFullStatus': v7618 }, null, 8, ["provider", 'streams', "serverId"])) : normalizeProps('', true), v7566.value ? normalizeProps('', true) : (openBlock(), createBlock("div", $x, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v7673.value, v7719 => (openBlock(), Modal(gx, { 'key': v7719.Id, 'stream': v7719, 'serverId': createTextVNode(v7558).getSelectedServer.Id, 'provider': createTextVNode(v7556).getSelectedProviderId, 'onOnPlayStream': prov293, 'onOnCheckFullStatus': v7618 }, null, 8, ['stream', "serverId", "provider"]))), 128))]))])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': 'There\x27s no VOD streams on this provider.' })), createVNode(st, { 'ref_key': 'fullStatusModal', 'ref': v7562, 'message': createTextVNode(v7563), 'id': "fullStatusModal" }, null, 8, .message)], 64)); } }, Mx = resolveComponent("events", { 'state': () => ({ 'notificationStore': it(), 'events': renderList([]), 'eventsReplays': renderList([]), 'isLoading': withCtx(false), 'error': withCtx(null), 'wsClients': {} }), 'actions': { async 'getSchedule_WS'(errRef140, errRef141) { v7731 = { 'reaQM': function(v7732, v7733, v7734) { return v7732(v7733, v7734); }, 'yIiWi': "modelValue", 'LDXXU': function(v7735, v7736) { return v7735(v7736); }, 'xfXZe': "All", 'cMEaH': "1080p", 'WXHpj': "Ready", 'dxRzz': "ready", 'yUWAd': 'Incomplete', 'robMW': "incomplete", 'NqlPQ': "With Keys", 'gDVCK': "withkeys", 'nnxIV': "Without Keys", 'KjTiE': "Missing Keys", 'tadHQ': "No missing Key", 'aeivq': 'nomissingkey', 'DCQOs': 'With Manifest', 'BOAZX': "withmanifest", 'MTXuu': 'withoutmanifest', 'hIwQR': "In Error", 'xVjDJ': "error", 'HJBGk': "Subscribed", 'uNSQf': 'subscribed', 'DiMJY': "unsubscribed", 'mxHcX': 'Running', 'aNUFr': 'Stopped', 'rwxDT': 'stopped', 'xpgVO': 'Autostart', 'wXEgF': 'On Air', 'wQVvm': 'onair', 'WXpao': function(v7737, v7738) { return v7737 !== v7738; }, 'AYIUb': 'ewprb', 'WfHPY': "MuchZ", 'jIDzk': "eventget", 'HnYNj': function(v7739, v7740) { return v7739 === v7740; }, 'TgSsa': "azEDD" }; this.isLoading = true, this.error = null; try { v7731.WXpao("ewprb", "MuchZ") ? (await this.closeWsClient(errRef140), this.wsClients[errRef140] = ht({ 'payload': { 'Action': "eventget", 'ProviderId': errRef141 }, 'onMessage': prov296 => { this.events = prov296; } }), this.wsClients[errRef140].open()) : this.error = v7741; } catch (v7742) { if (v7731.HnYNj("azEDD", "bNZon")) { const v7743 = v7744(v7745, "modelValue"), v7746 = v7747([{ 'label': "All", 'value': '' }, { 'label': "2160p (4K)", 'value': '4k' }, { 'label': "1080p", 'value': '1080p' }, { 'label': "720p", 'value': "720p" }, { 'label': 'SD', 'value': 'sd' }, { 'label': "Ready", 'value': "ready" }, { 'label': "Incomplete", 'value': "incomplete" }, { 'label': "With Keys", 'value': "withkeys" }, { 'label': "Without Keys", 'value': "withoutkeys" }, { 'label': "Missing Keys", 'value': "missingkeys" }, { 'label': "No missing Key", 'value': "nomissingkey" }, { 'label': "With Manifest", 'value': "withmanifest" }, { 'label': "Without Manifest", 'value': "withoutmanifest" }, { 'label': "In Error", 'value': "error" }, { 'label': "Subscribed", 'value': "subscribed" }, { 'label': "Unsubscribed", 'value': "unsubscribed" }, { 'label': "Starting", 'value': "starting" }, { 'label': "Running", 'value': 'running' }, { 'label': "Stopped", 'value': "stopped" }, { 'label': "Autostart", 'value': 'autostart' }, { 'label': "On Air", 'value': "onair" }]); return (v7748, v7749) => (v7750(), v7751('div', v7752, [v7753(v7754, { 'data': v7746, 'id': 'filter-streams', 'modelValue': v7743.value, 'onUpdate:modelValue': v7749[0] || (v7749[0] = stream338 => v7743.value = stream338), 'logos-disabled': '' }, null, 8, ['data', "modelValue"])])); } else this.error = v7742; } finally { this.isLoading = false; } }, async 'getReplays_WS'(loadRef77, loadRef78) { this.isLoading = true, this.error = null; try { await this.closeWsClient(loadRef77), this.wsClients[loadRef77] = ht({ 'payload': { 'Action': "replayget", 'ProviderId': loadRef78 }, 'onMessage': prov297 => { this.eventsReplays = prov297.Replays; } }), this.wsClients[loadRef77].open(); } catch (v7771) { if ((true)) this.error = v7771; else return v7772(), v7773('svg', v7774, [...v7775[0] || (v7776[0] = [v7777("path", { 'clip-rule': "evenodd", 'fill-rule': "evenodd", 'd': "M2 4.75A.75.75 0 012.75 4h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 4.75zm0 10.5a.75.75 0 01.75-.75h7.5a.75.75 0 010 1.5h-7.5a.75.75 0 01-.75-.75zM2 10a.75.75 0 01.75-.75h14.5a.75.75 0 010 1.5H2.75A.75.75 0 012 10z" }, null, -1)])]); } finally { (false) ? v7778.value = '' : this.isLoading = false; } }, async 'deleteReplay'(delRef37, delRef38) { delRef43 = { 'TTcDp': function(v7779) { return v7779(); }, 'xanUs': function(v7780, v7781, v7782, v7783) { return v7780(v7781, v7782, v7783); }, 'FlmFu': "svg", 'ToMiQ': "path", 'rgnZJ': "currentColor", 'nMZIF': "round", 'yGhWl': function(v7784, v7785) { return v7784 === v7785; }, 'YvYWt': "sEmwn", 'mIhFD': "success", 'NZmZm': "sKgtw", 'BqLZg': "ykxMh" }, stream339 = { 'ProviderId': delRef37, 'StreamId': delRef38 }; this.isLoading = true, this.error = null; try { delRef43.yGhWl("sEmwn", 'nFzbj') ? stream340.replace({ 'name': "recordings", 'params': { 'provider': prov299.getSelectedProviderId }, 'query': { 'server': prov300.getSelectedServer.Id } }) : (await q.req(I.getApiUrl() + "/replay/delete", stream339), this.notificationStore.showNotification('Deleted replay ' + delRef38 + " successfully.", "success")); } catch (notif48) { this.error = notif48, this.notificationStore.showNotification(notif48, 'error'); } finally { if (delRef43.yGhWl("sKgtw", "ykxMh")) return notif49(), delRef43.xanUs(notif50, "svg", errRef145, [...errRef146[0] || (v7786[0] = [v7787("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 3v4a1 1 0 0 1-1 1H5m14-4v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V7.914a1 1 0 0 1 .293-.707l3.914-3.914A1 1 0 0 1 9.914 3H18a1 1 0 0 1 1 1ZM9 12h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1v-2a1 1 0 0 1 1-1Zm5.697 2.395v-.733l1.269-1.219v2.984l-1.268-1.032Z" }, null, -1)])]); else this.isLoading = false; } }, async 'closeWsClient'(loadRef82) { this.wsClients[loadRef82] && this.wsClients[loadRef82].close && (this.wsClients[loadRef82].close(), delete this.wsClients[loadRef82]); }, async 'closeAllWsClients'() { for (const delRef44 in this.wsClients) await this.closeWsClient(delRef44); } } }), Ax = { 'key': 0, 'class': "text-white text-xs rounded-full font-bold bg-red-600 px-2 py-0.5 w-11 h-5" }, Il = { '__name': "LiveIndicator", 'props': .isLive, 'setup'(v7788) { return (v7789, v7790) => v7788.isLive ? (openBlock(), createBlock('div', Ax, [...v7790[0] || (v7790[0] = [e("span", { 'class': "animate-pulse font-bold" }, 'LIVE', -1)])])) : normalizeProps('', true); } }, Ix = { 'class': "flex flex-row gap-4 h-full" }, Tx = { 'key': 0, 'class': "flex flex-col justify-evenly items-center" }, Px = { 'key': 0, 'class': "h-4 w-4 text-center rounded-full bg-yellow-300 text-xs font-bold text-black" }, Vx = { 'class': 'flex flex-col flex-1 gap-2' }, Ux = { 'class': "flex flex-row justify-between gap-4" }, _x = { 'class': "flex flex-col gap-2" }, Ex = { 'class': "flex gap-4 items-center" }, Lx = { 'class': 'font-mono text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1' }, Dx = { 'key': 0, 'class': 'w-fit font-mono text-[8px] text-white border border-white rounded-sm p-0.5 px-1' }, Gx = { 'key': 1, 'class': 'flex gap-2' }, Rx = { 'key': 0, 'class': 'inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1' }, Nx = { 'key': 1, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, jx = { 'class': "font-bold text-[11px] text-left text-amber-100" }, Ox = { 'class': "flex flex-col gap-2 justify-center grow" }, Bx = { 'key': 0, 'class': "flex gap-2 items-center" }, Hx = { 'key': 1, 'class': "flex gap-2 items-center" }, Fx = { 'key': 0, 'class': "flex flex-col" }, qx = { 'class': 'flex flex-row justify-between items-center gap-2 h-full' }, Wx = { 'class': "flex flex-col" }, zx = { 'class': "flex self-end gap-2" }, Zx = { 'class': 'flex justify-end gap-2' }, Kx = { '__name': "ItemEvent", 'props': ['event', "provider", "isAdmin", "serverId"], 'emits': ['onPlayStream', 'onCheckFullStatus'], 'setup'(stream341, { emit: stream342 }) { v7796 = { 'uNzZC': "Error exporting accounts.", 'jKexv': function(v7797, v7798) { return v7797 !== v7798; }, 'jReiH': "lFtpQ", 'XcxQd': function(v7799, v7800, v7801) { return v7799(v7800, v7801); }, 'LUJft': "onCheckFullStatus", 'qcMfB': 'event', 'lksXG': "\\+\\+ *(?:[a-zA-Z_$][0-9a-zA-Z_$]*)", 'KRmqD': function(evtRef73, evtRef74) { return evtRef73(evtRef74); }, 'axbMW': "init", 'Aqhmv': function(evtRef75, v7802) { return evtRef75 + v7802; }, 'aKwqZ': "chain", 'owXqi': function(v7803, v7804) { return v7803 + v7804; }, 'mUgjs': "input", 'TYiur': function(v7805, v7806) { return v7805(v7806); }, 'JFSKG': function(v7807) { return v7807(); }, 'JtLgJ': "ieMeG", 'OqRSS': "logs" }, v7808 = Le(), v7809 = stream341, evtRef76 = stream342, evtRef77 = Sidebar(() => v7809.event.LogoUrl.startsWith("http") ? v7809.event.LogoUrl : v7809.event.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v7809.event.LogoUrl + "?token=" + Me.getToken() : null), v7810 = () => { const v7811 = { 'qsBow': "Error exporting accounts." }; if (v7796.jKexv("lFtpQ", 'lFtpQ')) { modal49.value = v7811.qsBow, modal50.value.toggleModal(); return; } else evtRef76("onCheckFullStatus", v7809.event.Status); }, modal51 = modal52 => { v7796.XcxQd(evtRef76, "onPlayStream", modal52); }, evtRef78 = async (evtRef79, evtRef80, evtRef81) => { await v7808.toggleStreamPlayback(evtRef79, evtRef81, evtRef80, "event"); }, v7812 = () => { me.push({ 'name': "logs", 'params': { 'provider': v7809.provider, 'stream': v7809.event.EventId }, 'query': { 'server': v7809.serverId } }) }, stream346 = () => { me.push({ 'name': "config", 'params': { 'provider': v7809.provider, 'type': "event" }, 'query': { 's': v7809.event.EventId + '$', 'server': v7809.serverId } }); }; return (srv148, srv149) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-black/25 border-green-500': stream341.event.IsStreaming, 'border-white/15': !stream341.event.IsStreaming }, "h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border"]) }, [e("div", Ix, [stream341.event.FilteredEventId === '' ? (openBlock(), createBlock("div", Tx, [stream341.event.ConnectedClients ? (openBlock(), createBlock("div", Px, useAttrs(stream341.event.ConnectedClients), 1)) : normalizeProps('', true), stream341.event.Running ? (openBlock(), createBlock('button', { 'key': 2, 'onClick': srv149[1] || (srv149[1] = evtRef82 => evtRef78("stop", stream341.event, stream341.provider)), 'class': "text-white hover:text-red-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 1, 'class': "text-white hover:text-green-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(at)])), stream341.event.Running || stream341.event.OnDemand || stream341.event.OnAirId ? (openBlock(), createBlock("button", { 'key': 3, 'class': 'text-white hover:text-blue-500 rounded-full my-auto transition-all ease-in-out' }, [createVNode(Ie)])) : normalizeProps('', true)])) : normalizeProps('', true), e("div", Vx, [e("div", Ux, [e("div", _x, [e("div", Ex, [e('span', Lx, useAttrs(stream341.event.ChannelName), 1), createVNode(Il, { 'isLive': stream341.event.OnAirId }, null, 8, .isLive)]), stream341.event.LinearStreamName ? (openBlock(), createBlock("span", Dx, useAttrs(stream341.event.LinearStreamName), 1)) : normalizeProps('', true), e("span", { 'class': classNames(['font-bold text-sm line-clamp-2', { 'text-green-500': stream341.event.OnAirId, 'text-white': !stream341.event.OnAirId }]) }, useAttrs(stream341.event.Title), 3), !stream341.event.HasKeys || !stream341.event.HasManifest ? (openBlock(), createBlock('div', Gx, [stream341.event.HasKeys ? normalizeProps('', true) : (openBlock(), createBlock("span", Rx, " No Keys ")), stream341.event.HasManifest ? normalizeProps('', true) : (openBlock(), createBlock('span', Nx, ' No Manifest '))])) : normalizeProps('', true), e("span", jx, useAttrs(createTextVNode(de).formatDate(stream341.event.Start)) + ' to ' + useAttrs(createTextVNode(de).formatDate(stream341.event.End)), 1), e("div", Ox, [stream341.event.IsStreaming && stream341.event.Uptime ? (openBlock(), createBlock('div', Bx, [createVNode(Gt, { 'class': "text-white" }), e('span', { 'class': classNames(['text-xs font-bold', createTextVNode(ge).getColorByStatus(stream341.event.StatusColor, "text")]) }, useAttrs(stream341.event.Uptime), 3)])) : normalizeProps('', true), stream341.event.IsStreaming && stream341.event.Bw ? (openBlock(), createBlock("div", Hx, [createVNode(Rt, { 'class': "text-white" }), e('span', { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream341.event.StatusColor, "text")]) }, useAttrs(stream341.event.Bw), 3)])) : normalizeProps('', true)])]), evtRef77.value ? (openBlock(), createBlock("div", Fx, [evtRef77.value ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': "h-14 w-14 object-contain", 'src': evtRef77.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : normalizeProps('', true)])) : normalizeProps('', true)]), e('div', qx, [e("div", Wx, [stream341.event.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock('div', { 'key': 0, 'onClick': v7810, 'class': classNames(["text-left text-xs font-bold line-clamp-2 overflow-y-scroll no-scrollbar whitespace-pre-line break-all cursor-pointer hover:opacity-75 transition-all", createTextVNode(ge).getColorByStatus(stream341.event.StatusColor, "text")]) }, useAttrs(stream341.event.Status), 3))]), e("div", zx, [e("div", Zx, [stream341.isAdmin && stream341.event.FilteredEventId === '' ? (openBlock(), createBlock("button", { 'key': 0, 'onClick': v7812, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), stream341.isAdmin && stream341.event.FilteredEventId === '' ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': stream346, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true)]), createVNode(rt, { 'stream': stream341.event, 'id': "m3u-" + stream341.provider + '-' + stream341.event.EventId, 'name': 'Links' }, null, 8, ["stream", 'id']), stream341.event.OnAirId ? (openBlock(), Modal(rt, { 'key': 0, 'stream': stream341.event, 'onair': true, 'id': "m3u-onair-" + stream341.provider + '-' + stream341.event.EventId, 'name': "OnAir" }, null, 8, ["stream", 'id'])) : normalizeProps('', true)])])])])], 2)); } }, Jx = { 'class': 'flex flex-col' }, Yx = { 'class': 'flex flex-row justify-between' }, Qx = { 'class': "flex flex-row gap-2 h-full" }, Xx = { 'class': "flex flex-col" }, ey = { 'class': 'flex flex-col flex-1 gap-2' }, ty = { 'class': "flex flex-row justify-between gap-2 h-full" }, ly = { 'class': "font-mono text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, oy = { 'class': 'flex flex-row justify-between' }, sy = { 'class': "flex flex-col gap-2" }, ay = { 'class': "font-bold text-sm text-white line-clamp-2" }, ry = { 'class': 'font-bold text-[11px] text-left text-amber-100' }, ny = { 'class': "flex flex-col self-end gap-2" }, iy = { '__name': "ItemEventReplay", 'props': ["event", "selected"], 'emits': ["onPlayReplay", "onCheckFullStatus"], 'setup'(v7822, { emit: v7823 }) { v7835 = v7822, v7836 = v7823; Be(); const v7837 = withCtx(v7835.selected); Carousel(() => v7835.selected, v7838 => { (false) ? (modal53 && (modal54.value = modal55), modal56.value.toggleModal()) : v7837.value = v7838; }); const modal57 = () => { v7836("onToggleSelection", v7835.event.EventId); }, modal58 = () => { v7836("onCheckFullStatus", v7835.event.Status); }, v7839 = v7840 => { v7836("onPlayReplay", v7840); }; return (v7841, v7842) => (openBlock(), createBlock("div", { 'class': classNames([{ 'border border-yellow-300/50': v7822.selected }, "h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border-white/15 border"]) }, [e("div", Jx, [e("div", Yx, [isRef(e("input", { 'type': "checkbox", 'onUpdate:modelValue': v7842[0] || (v7842[0] = updRef229 => v7837.value = updRef229), 'onClick': modal57, 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [renderSlot, v7837.value] ]), e("div", { 'class': classNames(["rounded-full w-2.5 h-2.5", createTextVNode(ge).getColorByStatus(v7822.event.StatusColor, 'bg')]) }, ' \u00a0\u00a0 ', 2)]), e("div", Qx, [e("div", Xx, [e("button", { 'onClick': v7842[1] || (v7842[1] = statRef53 => v7839(v7822.event.StreamingUrl)), 'class': "p-1 hover:bg-blue-500 rounded-full my-auto transition-all ease-in-out text-white" }, [createVNode(Ie)])]), e("div", ey, [e("div", ty, [e("span", ly, useAttrs(v7822.event.EventId + " Replay"), 1)]), e('div', oy, [e("div", sy, [e('span', ay, useAttrs(v7822.event.EventName), 1), e('span', ry, useAttrs(createTextVNode(de).formatDate(v7822.event.Start)) + " to " + useAttrs(createTextVNode(de).formatDate(v7822.event.End)), 1), e('span', { 'onClick': modal58, 'class': classNames(['text-left text-xs font-bold line-clamp-3 overflow-y-scroll no-scrollbar whitespace-pre-wrap max-w-[9rem] cursor-pointer hover:opacity-75 transition-all', createTextVNode(ge).getColorByStatus(v7822.event.StatusColor, "text")]) }, useAttrs(v7822.event.Status), 3)]), e("div", ny, [createVNode(rt, { 'stream': v7822.event, 'id': 'm3u-replay-' + v7822.event.EventId, 'name': "Links" }, null, 8, ['stream', 'id'])])])])])])], 2)); } }, dy = { 'class': "px-6 py-4" }, uy = { 'key': 1 }, cy = { 'class': 'px-6 py-4 max-w-xs' }, my = { 'class': "flex flex-col gap-2" }, py = { 'class': "w-fit font-mono text-xs text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, vy = { 'key': 0, 'class': "w-fit font-mono text-[8px] text-white border border-white rounded-sm my-auto p-0.5 px-1 whitespace-nowrap" }, fy = { 'class': "px-6 py-4 max-w-xs" }, gy = { 'class': "px-6 py-4 max-w-40" }, hy = { 'key': 1, 'class': "flex gap-2 items-center" }, by = { 'key': 2, 'class': "flex gap-2 items-center" }, wy = { 'class': "px-6 py-4" }, xy = { 'class': 'font-bold whitespace-nowrap' }, yy = { 'class': "px-6 py-4" }, ky = { 'class': 'font-bold whitespace-nowrap' }, Sy = { 'class': 'px-6 py-4' }, $y = { 'key': 0, 'class': 'flex gap-2' }, Cy = { 'class': "px-6 py-4" }, My = { 'class': 'flex gap-2' }, Ay = { 'class': "px-6 py-4" }, Iy = { 'key': 0, 'class': 'inline-flex justify-center text-center font-mono font-bold text-[10px] text-black bg-yellow-300 rounded-sm p-0.5 px-1' }, Ty = { '__name': "ItemTableEvent", 'props': ['event', 'provider', "serverId", "isAdmin"], 'emits': ['onPlayStream', "onCheckFullStatus"], 'setup'(stream347, { emit: stream348 }) { stream351 = { 'ZbAVv': function(stream352, v7843, v7844) { return stream352(v7843, v7844); }, 'EIuNA': 'onCheckFullStatus', 'gwsgq': "event", 'dDMYO': "onPlayStream", 'XnTsq': function(statRef54, statRef55) { return statRef54 !== statRef55; }, 'gSRyT': "logs", 'vbDaD': "config", 'sthLl': function(v7845) { return v7845(); }, 'tJzyU': function(v7846, v7847) { return v7846(v7847); } }, v7848 = stream347, v7849 = stream348, evtRef83 = Sidebar(() => v7848.event.LogoUrl.startsWith('http') ? v7848.event.LogoUrl : v7848.event.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v7848.event.LogoUrl + '?token=' + Me.getToken() : null), evtRef84 = () => { v7849("onCheckFullStatus", v7848.event.Status); }, return (srv151, srv152) => (openBlock(), createBlock('tr', { 'class': classNames(["bg-linear-to-tr bg-black border-t text-white", { 'from-neutral-600/50 to-black/25 border-green-500 border': stream347.event.IsStreaming, 'border-white/15': !stream347.event.IsStreaming }]) }, [e('td', dy, [evtRef83.value ? (openBlock(), Modal(createTextVNode(JSON_util), { 'key': 0, 'class': "h-12 w-12 object-contain", 'src': evtRef83.value, 'src-placeholder': "/o11-placeholder.svg" }, null, 8, .src)) : (openBlock(), createBlock("div", uy, 'N/A'))]), e('td', cy, [e("div", my, [e("span", py, useAttrs(stream347.event.ChannelName), 1), stream347.event.LinearStreamName ? (openBlock(), createBlock("span", vy, useAttrs(stream347.event.LinearStreamName), 1)) : normalizeProps('', true)])]), e('td', fy, [e("span", { 'class': classNames(['font-bold', { 'text-green-500': stream347.event.OnAirId, 'text-white': !stream347.event.OnAirId }]) }, useAttrs(stream347.event.Title), 3)]), e('td', gy, [stream347.event.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock("div", { 'key': 0, 'onClick': evtRef84, 'class': classNames([ [createTextVNode(ge).getColorByStatus(stream347.event.StatusColor, 'text')], "text-xs font-bold line-clamp-3 max-w-xs overflow-y-scroll overflow-x-scroll no-scrollbar whitespace-pre-line text-nowrap break-all cursor-pointer hover:opacity-75 transition-all" ]) }, useAttrs(stream347.event.Status), 3)), stream347.event.IsStreaming && stream347.event.Uptime ? (openBlock(), createBlock("div", hy, [createVNode(Gt, { 'class': 'text-white' }), e("span", { 'class': classNames(['text-xs font-bold', createTextVNode(ge).getColorByStatus(stream347.event.StatusColor, 'text')]) }, useAttrs(stream347.event.Uptime), 3)])) : normalizeProps('', true), stream347.event.IsStreaming && stream347.event.Bw ? (openBlock(), createBlock("div", by, [createVNode(Rt, { 'class': 'text-white' }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(stream347.event.StatusColor, "text")]) }, useAttrs(stream347.event.Bw), 3)])) : normalizeProps('', true)]), e('td', wy, [e("span", xy, useAttrs(createTextVNode(de).formatDate(stream347.event.Start)), 1)]), e('td', yy, [e("span", ky, useAttrs(createTextVNode(de).formatDate(stream347.event.End)), 1)]), e('td', Sy, [stream347.event.FilteredEventId === '' ? (openBlock(), createBlock("div", $y, [stream347.event.Running ? (openBlock(), createBlock("button", { 'key': 1, 'class': "text-white hover:text-red-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(We, { 'class': 'text-white' })])) : (openBlock(), createBlock("button", { 'key': 0, 'class': 'text-white hover:text-green-500 rounded-full my-auto transition-all ease-in-out' }, [createVNode(at)])), stream347.event.Running || stream347.event.OnDemand || stream347.event.OnAirId ? (openBlock(), createBlock('button', { 'key': 2, 'onClick': srv152[2] || (srv152[2] = evtRef85 => v7855(stream347.event.StreamingUrl)), 'class': 'hover:text-blue-500 rounded-full my-auto transition-all ease-in-out' }, [createVNode(Ie)])) : normalizeProps('', true), stream347.isAdmin ? (openBlock(), createBlock("button", { 'key': 3, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), stream347.isAdmin ? (openBlock(), createBlock('button', { 'key': 4, 'onClick': srv150, 'class': 'hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5' }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true)])) : normalizeProps('', true)]), e('td', Cy, [e('div', My, [createVNode(rt, { 'stream': stream347.event, 'id': 'm3u-' + stream347.provider + '-' + stream347.event.EventId, 'name': "Links" }, null, 8, ["stream", 'id']), stream347.event.OnAirId ? (openBlock(), Modal(rt, { 'key': 0, 'stream': stream347.event, 'onair': true, 'id': "m3u-onair-" + stream347.provider + '-' + stream347.event.EventId, 'name': "OnAir" }, null, 8, ["stream", 'id'])) : normalizeProps('', true)])]), e('td', Ay, [stream347.event.ConnectedClients ? (openBlock(), createBlock("div", Iy, useAttrs(stream347.event.ConnectedClients), 1)) : normalizeProps('', true)])], 2)); } }, Py = { 'class': 'overflow-x-auto shadow-md rounded-xl mt-5 border border-white/15' }, Vy = { 'class': 'w-full text-sm text-left rtl:text-right text-neutral-400' }, Uy = { '__name': "TableEvents", 'props': ["events", "provider", "isAdmin", "serverId"], 'emits': ["onPlayStream", "onCheckFullStatus"], 'setup'(v7864, { emit: v7865 }) { v7868 = { 'GyvbX': function(v7869, v7870) { return v7869 === v7870; }, 'qARHQ': "MnLGN", 'KDLVA': function(v7871, v7872, v7873) { return v7871(v7872, v7873); }, 'GQPfw': "onPlayStream" }, v7874 = v7865, v7875 = v7876 => { v7868.GyvbX("MnLGN", "MnLGN") ? v7874("onPlayStream", v7876) : this.isLoading = false; }, v7877 = v7878 => { v7874("onCheckFullStatus", v7878); }; return (v7879, v7880) => (openBlock(), createBlock('div', Py, [e("table", Vy, [v7880[0] || (v7880[0] = e("thead", { 'class': "text-xs text-yellow-300 uppercase bg-black" }, [e('tr', null, [e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Logo"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'Channel'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Title"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'Status'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Start"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'End'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Actions"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Links"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Clients")])], -1)), e('tbody', null, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v7864.events, evtRef86 => (openBlock(), Modal(Ty, { 'key': evtRef86.EventId, 'provider': v7864.provider, 'event': evtRef86, 'serverId': v7864.serverId, 'onOnPlayStream': v7875, 'onOnCheckFullStatus': v7877, 'isAdmin': v7864.isAdmin }, null, 8, ["provider", "event", "serverId", "isAdmin"]))), 128))])])])); } }, _y = { 'class': 'px-6 py-4' }, Ey = { 'class': "px-6 py-4" }, Ly = { 'class': 'font-bold text-white' }, Dy = { 'class': "px-6 py-4" }, Gy = { 'class': "font-bold whitespace-nowrap" }, Ry = { 'class': "px-6 py-4" }, Ny = { 'class': 'font-bold whitespace-nowrap' }, jy = { 'class': "px-6 py-4" }, Oy = { 'class': "font-mono text-xs text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1" }, By = { 'class': "px-6 py-4" }, Hy = { 'class': "flex gap-2" }, Fy = { 'class': "px-6 py-4" }, qy = { '__name': "ItemTableEventReplay", 'props': ["event", "selected"], 'emits': ["onToggleSelection", "onPlayReplay", 'onCheckFullStatus'], 'setup'(statRef56, { emit: statRef57 }) { v7913 = statRef56, v7914 = statRef57, v7915 = Be(), v7916 = withCtx(v7913.selected); Sidebar(() => v7915.isAdmin); v7939 = () => { (true) ? v7914("onToggleSelection", v7913.event.EventId) : statRef62("onCheckFullStatus", statRef63.stream.Status); }; return Carousel(() => v7913.selected, statRef64 => { const statRef65 = { 'ZaCDD': function(statRef66) { return statRef66(); }, 'tpZTB': function(v7944, v7945, v7946, v7947) { return v7944(v7945, v7946, v7947); }, 'MgUyv': "svg", 'GjNgG': "File-Video (openBlock(), createBlock('tr', { 'class': classNames(["bg-linear-to-tr bg-black border-t border-white/15 text-white", { 'from-neutral-600/50 to-black/25': statRef56.event.Running }]) }, [e('td', _y, [isRef(e("input", { 'type': "checkbox", 'onUpdate:modelValue': v7955[0] || (v7955[0] = updRef230 => v7916.value = updRef230), 'onClick': v7939, 'class': "w-4 h-4 text-yellow-300 bg-black/30 border-white rounded-sm cursor-pointer focus:ring-0 focus:ring-offset-0 transition ease-in-out" }, null, 512), [ [renderSlot, v7916.value] ])]), e('td', Ey, [e('span', Ly, useAttrs(statRef56.event.EventName), 1)]), e('td', Dy, [e("span", Gy, useAttrs(createTextVNode(de).formatDate(statRef56.event.Start)), 1)]), e('td', Ry, [e("span", Ny, useAttrs(createTextVNode(de).formatDate(statRef56.event.End)), 1)]), e('td', jy, [e("span", Oy, useAttrs(statRef56.event.EventId), 1)]), e('td', By, [e("div", Hy, [e('button', { 'class': "p-1 hover:bg-blue-500 rounded-full my-auto transition-all ease-in-out" }, [createVNode(Ie)])])]), e('td', Fy, [createVNode(rt, { 'stream': statRef56.event, 'id': "m3u-" + statRef56.event.EventId, 'name': "Links" }, null, 8, ["stream", 'id'])])], 2)); } }, Wy = { 'class': 'overflow-x-auto shadow-md rounded-xl mt-5 border border-white/15' }, zy = { 'class': 'w-full text-sm text-left rtl:text-right text-neutral-400' }, Zy = { '__name': "TableEventReplay", 'props': ["events", "selectedItems"], 'emits': ["onToggleSelection", "onPlayReplay"], 'setup'(v7957, { emit: v7958 }) { v7966 = v7958, v7967 = v7968 => { v7966("onPlayReplay", v7968); }, v7969 = v7970 => { v7966("onToggleSelection", v7970); }; return (v7971, v7972) => (openBlock(), createBlock("div", Wy, [e("table", zy, [v7972[0] || (v7972[0] = e('thead', { 'class': "text-xs text-yellow-300 uppercase bg-black" }, [e('tr', null, [e('th', { 'scope': 'col', 'class': 'px-6 py-3 font-bold' }), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Event name"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Start"), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "End"), e('th', { 'scope': "col", 'class': 'px-6 py-3 font-bold' }, "Event Id"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Actions"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Links")])], -1)), e("tbody", null, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v7957.events, evtRef87 => (openBlock(), Modal(qy, { 'key': evtRef87.EventId, 'event': evtRef87, 'selected': v7957.selectedItems.includes(evtRef87.EventId), 'onOnPlayReplay': v7967, 'onOnToggleSelection': v7969 }, null, 8, ["event", "selected"]))), 128))])])])); } }, Ky = { 'class': 'h-full flex flex-col gap-2 justify-evenly items-center' }, Jy = { 'class': "flex justify-between items-center gap-2" }, Yy = { 'key': 0, 'class': "h-4 w-4 text-center rounded-sm bg-yellow-300 hover:bg-yellow-300 text-xs font-bold text-black" }, Qy = { 'class': 'font-mono text-[10px] text-yellow-300 border border-yellow-300 rounded-sm my-auto p-0.5 px-1' }, Xy = { 'class': "flex" }, e4 = { 'key': 0, 'class': 'w-fit font-mono text-[8px] text-white border border-white rounded-sm my-auto p-0.5 px-1' }, t4 = { 'class': "flex gap-2" }, l4 = { 'class': "flex flex-col gap-2" }, o4 = { 'class': "font-bold text-[11px] text-left text-amber-100" }, s4 = { 'class': "font-bold text-[11px] text-left text-amber-100" }, a4 = { 'key': 0, 'class': "flex gap-2" }, r4 = { 'key': 0, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, n4 = { 'key': 1, 'class': "inline-flex font-mono font-bold text-[10px] text-left text-red-600 border border-red-600 rounded-sm my-auto p-0.5 px-1" }, i4 = { 'class': "flex gap-2" }, d4 = { 'key': 1, 'class': 'w-full flex justify-evenly gap-2' }, u4 = { 'class': "w-full flex items-center justify-center gap-2" }, c4 = { 'class': "flex flex-col gap-2" }, m4 = { 'key': 0, 'class': "flex gap-2 items-center" }, p4 = { 'key': 1, 'class': "flex gap-2 items-center" }, v4 = { '__name': 'ItemEventCompact', 'props': ["event", "provider", 'isAdmin', "serverId"], 'emits': ["onPlayStream", "onCheckFullStatus"], 'setup'(evtRef88, { emit: evtRef89 }) { v7988 = Le(), v7989 = evtRef88, v7990 = evtRef89; Be(); const v7991 = () => { v7990("onCheckFullStatus", v7989.event.Status); }, statRef67 = statRef68 => { (false) ? statRef69.value = statRef70 : v7990("onPlayStream", statRef68); }, v7992 = async (v7993, v7994, v7995) => { await v7988.toggleStreamPlayback(v7993, v7995, v7994, "event"); }, v7996 = () => { (true) ? me.push({ 'name': "logs", 'params': { 'provider': v7989.provider, 'stream': v7989.event.EventId }, 'query': { 'server': v7989.serverId } }) : (stream355(), stream356()); }, srv153 = () => { me.push({ 'name': "config", 'params': { 'provider': v7989.provider, 'type': "event" }, 'query': { 's': v7989.event.EventId + '$', 'server': v7989.serverId } }); }; return (srv154, srv155) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-neutral-600/50 to-black/25 border-green-500': evtRef88.event.IsStreaming, 'border-white/15': !evtRef88.event.IsStreaming }, "h-full bg-linear-to-tr hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border"]) }, [e("div", Ky, [e("div", Jy, [evtRef88.event.ConnectedClients ? (openBlock(), createBlock("span", Yy, useAttrs(evtRef88.event.ConnectedClients), 1)) : normalizeProps('', true), e("span", Qy, useAttrs(evtRef88.event.ChannelName), 1)]), e("div", Xy, [evtRef88.event.LinearStreamName ? (openBlock(), createBlock("span", e4, useAttrs(evtRef88.event.LinearStreamName), 1)) : normalizeProps('', true)]), e("div", t4, [e('p', { 'class': classNames(["font-bold text-sm text-center break-words h-10 overflow-y-scroll no-scrollbar", { 'text-green-500': evtRef88.event.OnAirId, 'text-white': !evtRef88.event.OnAirId }]) }, useAttrs(evtRef88.event.Title), 3)]), e("div", l4, [e("span", o4, useAttrs(createTextVNode(de).formatDate(evtRef88.event.Start)), 1), e("span", s4, useAttrs(createTextVNode(de).formatDate(evtRef88.event.End)), 1)]), !evtRef88.event.HasKeys || !evtRef88.event.HasManifest ? (openBlock(), createBlock("div", a4, [evtRef88.event.HasKeys ? normalizeProps('', true) : (openBlock(), createBlock('span', r4, [createVNode(Xt)])), evtRef88.event.HasManifest ? normalizeProps('', true) : (openBlock(), createBlock('span', n4, [createVNode(po)]))])) : normalizeProps('', true), e('div', i4, [createVNode(rt, { 'stream': evtRef88.event, 'id': "m3u-" + evtRef88.provider + '-' + evtRef88.event.EventId, 'name': "Links" }, null, 8, ["stream", 'id']), evtRef88.event.OnAirId ? (openBlock(), Modal(rt, { 'key': 0, 'stream': evtRef88.event, 'onair': true, 'id': "m3u-onair-" + evtRef88.provider + '-' + evtRef88.event.EventId, 'name': "OnAir" }, null, 8, ["stream", 'id'])) : normalizeProps('', true)]), evtRef88.event.FilteredEventId === '' ? (openBlock(), createBlock("div", d4, [evtRef88.event.Running ? (openBlock(), createBlock("button", { 'key': 1, 'class': 'text-white hover:text-red-500 rounded-full transition-all ease-in-out' }, [createVNode(We)])) : (openBlock(), createBlock("button", { 'key': 0, 'onClick': srv155[0] || (srv155[0] = prov301 => v7992("start", evtRef88.event, evtRef88.provider)), 'class': "text-white hover:text-green-500 rounded-full transition-all ease-in-out" }, [createVNode(at)])), evtRef88.event.Running || evtRef88.event.OnDemand || evtRef88.event.OnAirId ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': srv155[2] || (srv155[2] = evtRef91 => statRef67(evtRef88.event.StreamingUrl)), 'class': 'text-white hover:text-blue-500 rounded-full transition-all ease-in-out' }, [createVNode(Ie)])) : normalizeProps('', true), evtRef88.isAdmin ? (openBlock(), createBlock("button", { 'key': 3, 'onClick': v7996, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(Tt)])) : normalizeProps('', true), evtRef88.isAdmin ? (openBlock(), createBlock('button', { 'key': 4, 'onClick': srv153, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true)])) : normalizeProps('', true), e("div", u4, [evtRef88.event.IsStreaming ? normalizeProps('', true) : (openBlock(), createBlock("div", { 'key': 0, 'onClick': v7991, 'class': classNames(["text-xs font-bold text-center line-clamp-1 cursor-pointer hover:opacity-75 transition-opacity", createTextVNode(ge).getColorByStatus(evtRef88.event.StatusColor, "text")]) }, useAttrs(evtRef88.event.Status), 3))]), e("div", c4, [evtRef88.event.IsStreaming && evtRef88.event.Uptime ? (openBlock(), createBlock("div", m4, [createVNode(Gt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(evtRef88.event.StatusColor, "text")]) }, useAttrs(evtRef88.event.Uptime), 3)])) : normalizeProps('', true), evtRef88.event.IsStreaming && evtRef88.event.Bw ? (openBlock(), createBlock('div', p4, [createVNode(Rt, { 'class': "text-white" }), e("span", { 'class': classNames(["text-xs font-bold", createTextVNode(ge).getColorByStatus(evtRef88.event.StatusColor, "text")]) }, useAttrs(evtRef88.event.Bw), 3)])) : normalizeProps('', true)])])], 2)); } }, f4 = { 'class': 'flex flex-row mb-4 rounded-xl justify-center' }, g4 = { 'class': 'flex justify-end gap-2 mb-3' }, h4 = { 'class': 'inline-flex gap-2 justify-end' }, b4 = { 'key': 0 }, w4 = { 'class': "flex flex-col justify-between lg:flex-row lg:space-x-2 space-y-2 lg:space-y-0 mb-5" }, x4 = { 'class': "flex gap-2" }, y4 = { 'class': "w-full lg:w-96 relative" }, k4 = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-4 3xl:grid-cols-5 gap-4" }, S4 = { 'key': 2, 'class': "grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7 2xl:grid-cols-8 3xl:grid-cols-12 gap-4" }, $4 = { 'key': 2 }, C4 = { 'class': "flex flex-row gap-4 mt-5" }, M4 = { 'class': "w-full lg:w-96 relative my-5" }, A4 = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-4 3xl:grid-cols-5 gap-4" }, I4 = { '__name': 'EventsView', 'setup'(evtRef92) { v8081 = Mx(), v8082 = Le(), v8083 = Ae(), v8084 = He(), v8085 = Be(), v8086 = withCtx(), v8087 = withCtx(''), v8088 = withCtx(''), v8089 = withCtx(false), v8090 = withCtx(null), v8091 = withCtx(), v8092 = withCtx(0), v8093 = withCtx(); let v8094 = withCtx(null); const v8095 = withCtx([]), v8096 = withCtx(), v8097 = withCtx(''); let v8098 = withCtx(I.getViewMode().events); const v8099 = v8100 => { v8098.value = v8100; }, v8101 = Sidebar(() => v8085.isAdmin), v8102 = withCtx({ 'currentPage': 1, 'rowsPerPage': 84 }); withCtx({ 'currentPage': 1, 'rowsPerPage': 84 }); const v8103 = async () => { const v8117 = v8095.value.join(','); await v8081.deleteReplay(v8083.getSelectedProviderId, v8117), await v8118(), v8119(), v8120(); }, v8121 = Sidebar(() => v8095.value.length), v8120 = () => { v8097.value = "Are you sure want to delete " + v8095.value.join(',') + ' ?', v8096.value.toggleModal(); }, v8119 = () => { v8095.value = []; }, modal59 = modal60 => { const modal61 = v8095.value.indexOf(modal60); (modal61 !== -1) ? v8095.value.splice(modal61, 1) : v8095.value.push(modal60); }, v8122 = () => { evtRef98.value ? v8095.value = [] : v8095.value = v8081.eventsReplays.map(evtRef99 => evtRef99.EventId); }, evtRef98 = Sidebar(() => v8081.eventsReplays.every(evtRef100 => v8095.value.includes(evtRef100.EventId))), evtRef101 = async evtRef102 => { await evtRef103(), await v8118(), evtRef104(), evtRef105(), evtRef106(); }, evtRef106 = () => { v8102.value.currentPage = 1; }, v8123 = v8124 => { v8094.value = v8124, v8093.value.toggleModal(); }, v8125 = v8126 => { if ((false)) return v8134(), v8135("svg", v8136, [...v8137[0] || (v8138[0] = [v8139("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m1 1 4 4 4-4" }, null, -1)])]); else v8102.value.currentPage = v8126; }, v8140 = Sidebar(() => { const v8141 = (v8102.value.currentPage - 1) * v8102.value.rowsPerPage, v8142 = (v8141 + v8102.value.rowsPerPage); return v8092.value = v8081.events?..Entries?..filter(filtRef6 => filtRef6.Title.toLowerCase().includes(v8087.value.toLowerCase())).length, v8081.events?..Entries ? v8081.events?..Entries.filter(evtRef107 => evtRef107.Title.toLowerCase().includes(v8087.value.toLowerCase()) || evtRef107.ChannelName.toLowerCase().includes(v8087.value.toLowerCase()) || evtRef107.LinearStreamName.toLowerCase().includes(v8087.value.toLowerCase())).slice(v8141, v8142) : []; }), v8143 = v8144 => { v8090.value = v8144[0].Url, v8091.value.playStream(v8090.value); }, v8145 = Sidebar(() => v8081.eventsReplays.filter(v8146 => v8146.EventName.toLowerCase().includes(v8088.value.toLowerCase()))), evtRef103 = async () => { await v8081.getSchedule_WS("events", v8083.getSelectedProviderId); }, v8118 = async () => { await v8081.getReplays_WS("replays", v8083.getSelectedProviderId); }, evtRef104 = () => { (true) ? (v8087.value = '', v8088.value = '') : this.isLoading = false; }, evtRef105 = () => { me.replace({ 'name': "events", 'params': { 'provider': v8083.getSelectedProviderId }, 'query': { 'server': v8084.getSelectedServer.Id } }); }, prov310 = async () => { if ((false)) srv156("onServerSelected", srv157), srv158.setSelectedServer(v8151), v8152(); else { const v8153 = me.currentRoute.value.params.provider || v8083.getSelectedProviderId; v8153 ? v8083.setCurrentSelectedProvider(v8153) : v8083.setDefaultCurrentSelectedProvider(), evtRef105(); } }, v8154 = () => { const v8155 = { 'qhCeU': "o11-token", 'SRHbl': function(v8156, v8157) { return (v8156 != v8157); } }; if ((true)) evtRef103(); else { const v8158 = v8159.getItem(v8155.qhCeU); if (v8155.SRHbl(v8158, null)) return this.isAuth = true, this.token = v8158, this.token; } }; withDirectives(async () => { 'd': "M15 9H15.01M15 15C18.3137 15 21 12.3137 21 9C21 5.68629 18.3137 3 15 3C11.6863 3 9 5.68629 9 9C9 9.27368 9.01832 9.54308 9.05381 9.80704C9.11218 10.2412 9.14136 10.4583 9.12172 10.5956C9.10125 10.7387 9.0752 10.8157 9.00469 10.9419C8.937 11.063 8.81771 11.1823 8.57913 11.4209L3.46863 16.5314C3.29568 16.7043 3.2092 16.7908 3.14736 16.8917C3.09253 16.9812 3.05213 17.0787 3.02763 17.1808C3 17.2959 3 17.4182 3 17.6627V19.4C3 19.9601 3 20.2401 3.10899 20.454C3.20487 20.6422 3.35785 20.7951 3.54601 20.891C3.75992 21 4.03995 21 4.6 21H6.33726C6.58185 21 6.70414 21 6.81923 20.9724C6.92127 20.9479 7.01881 20.9075 7.10828 20.8526C7.2092 20.7908 7.29568 20.7043 7.46863 20.5314L12.5791 15.4209C12.8177 15.1823 12.937 15.063 13.0581 14.9953C13.1843 14.9248 13.2613 14.8987 13.4044 14.8783C13.5417 14.8586 13.7588 14.8878 14.193 14.9462C14.4569 14.9817 14.7263 15 15 15Z", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round", 'stroke-linejoin': "round" }, null, -1)])]); else await prov310(), await evtRef103(), await v8118(); }); const v8166 = async () => { await evtRef103(), await v8118(), await me.replace({ 'name': "events", 'params': { 'provider': v8083.getSelectedProviderId }, 'query': { 'server': v8084.getSelectedServer.Id } }); }; return Table(() => { v8081.closeAllWsClients(); }), (srv159, srv160) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "Events" }), createVNode(Kt, { 'onOnProviderSelected': evtRef101, 'onOnServerChanged': v8166 }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v8091 }, null, 512), isRef(e("div", f4, [e('video', { 'ref_key': 'video', 'ref': v8086, 'class': "lg:w-2/5 rounded-xl", 'controls': '', 'autoplay': '', 'playsinline': '' }, null, 512)], 512), [ [Spinner, v8089.value] ]), srv160[2] || (srv160[2] = e('p', { 'class': "text-white font-bold text-lg my-3" }, "Scheduled", -1)), e("div", g4, [e("div", h4, [v8101.value ? (openBlock(), Modal(Sl, { 'key': 0, 'isRefreshing': createTextVNode(v8082).isRefreshingStreams, 'onOnApply': v8154, 'type': "event" }, null, 8, .isRefreshing)) : normalizeProps('', true)]), createVNode(Zt, { 'id': 'events-page', 'name': 'Playlist', 'type': "event", 'provider': createTextVNode(v8083).getSelectedProviderId }, null, 8, .provider)]), createTextVNode(v8081).events.Entries ? (openBlock(), createBlock("div", b4, [createVNode(tl, { 'currentPage': v8102.value.currentPage, 'totalPages': Math.ceil((v8092.value ?? 0) / v8102.value.rowsPerPage) || 1, 'onOnPageChange': v8125 }, null, 8, ['currentPage', "totalPages"]), createVNode(Cl, { 'page': 'events', 'onOnViewTypeSelected': v8099 }), e("div", w4, [e("div", x4, [e("div", y4, [createVNode(ut, { 'placeholder': "Search for events", 'modelValue': v8087.value, 'onUpdate:modelValue': srv160[0] || (srv160[0] = updRef231 => v8087.value = updRef231) }, null, 8, .modelValue)])])]), createTextVNode(v8098) === 'list' ? (openBlock(), Modal(Uy, { 'key': 0, 'events': v8140.value, 'provider': createTextVNode(v8083).getSelectedProviderId, 'serverId': createTextVNode(v8084).getSelectedServer.Id, 'onOnPlayStream': v8143, 'onOnCheckFullStatus': v8123, 'isAdmin': v8101.value }, null, 8, ['events', "provider", "serverId", "isAdmin"])) : normalizeProps('', true), createTextVNode(v8098) === "grid" ? (openBlock(), createBlock("div", k4, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v8140.value, v8167 => (openBlock(), createBlock("div", { 'key': v8167.EventId }, [createVNode(Kx, { 'event': v8167, 'serverId': createTextVNode(v8084).getSelectedServer.Id, 'onOnPlayStream': v8143, 'onOnCheckFullStatus': v8123, 'provider': createTextVNode(v8083).getSelectedProviderId, 'isAdmin': v8101.value }, null, 8, ["event", "serverId", "provider", "isAdmin"])]))), 128))])) : normalizeProps('', true), createTextVNode(v8098) === 'grid-compact' ? (openBlock(), createBlock("div", S4, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v8140.value, v8168 => (openBlock(), createBlock("div", { 'key': v8168.EventId }, [createVNode(v4, { 'event': v8168, 'serverId': createTextVNode(v8084).getSelectedServer.Id, 'onOnPlayStream': v8143, 'onOnCheckFullStatus': v8123, 'provider': createTextVNode(v8083).getSelectedProviderId, 'isAdmin': v8101.value }, null, 8, ["event", "serverId", "provider", "isAdmin"])]))), 128))])) : normalizeProps('', true)])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': "There's no scheduled events on this provider." })), srv160[3] || (srv160[3] = e('p', { 'class': "text-white font-bold text-lg my-3" }, "Replays", -1)), createTextVNode(v8081).eventsReplays ? (openBlock(), createBlock("div", $4, [e("div", C4, [createVNode(he, { 'onClick': v8122 }, { 'default': withModifiers(() => [isRef(createVNode(Xe, null, null, 512), [ [Spinner, evtRef98.value] ]), isRef(createVNode(Bt, null, null, 512), [ [Spinner, !evtRef98.value] ]), toDisplayString(' ' + useAttrs(evtRef98.value ? "Deselect All" : "Select All"), 1)]), '_': 1 }), v8121.value ? (openBlock(), Modal(Ft, { 'key': 0, 'Icon': Ke, 'onClick': v8120, 'text': "Delete selection" })) : normalizeProps('', true)]), e("div", M4, [createVNode(ut, { 'placeholder': "Search for events replays", 'modelValue': v8088.value, 'onUpdate:modelValue': srv160[1] || (srv160[1] = updRef232 => v8088.value = updRef232) }, null, 8, .modelValue)]), createTextVNode(v8098) === "list" ? (openBlock(), Modal(Zy, { 'key': 0, 'events': v8145.value, 'serverId': createTextVNode(v8084).getSelectedServer.Id, 'selectedItems': v8095.value, 'onOnPlayReplay': v8143, 'onOnToggleSelection': modal59 }, null, 8, ["events", 'serverId', 'selectedItems'])) : normalizeProps('', true), createTextVNode(v8098) === 'grid' ? (openBlock(), createBlock("div", A4, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v8145.value, srv161 => (openBlock(), Modal(iy, { 'key': JSON.stringify(srv161), 'event': srv161, 'provider': createTextVNode(v8083)?..getSelectedProviderId, 'selected': v8095.value.includes(srv161.EventId), 'onOnPlayReplay': v8143, 'onOnToggleSelection': modal59 }, null, 8, ["event", "provider", "selected"]))), 128))])) : normalizeProps('', true)])) : (openBlock(), Modal(Fe, { 'key': 3, 'Icon': wt, 'message': "There's no replay events on this provider." })), createVNode(st, { 'ref_key': "fullStatusModal", 'ref': v8093, 'message': createTextVNode(v8094), 'id': "fullStatusModal" }, null, 8, .message), createVNode(gt, { 'ref_key': "deleteModal", 'ref': v8096, 'message': v8097.value, 'id': "delete", 'onClick': v8103 }, null, 8, .message)], 64)); } }, T4 = { 'name': "IconHelp" }, P4 = { 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '20', 'height': '20', 'fill': 'none', 'viewBox': "0 0 24 24" }; function V4(v8169, v8170, v8171, v8172, v8173, v8174) { v8179 = { 'vmIGR': function(v8180, v8181, v8182, v8183) { return v8180(v8181, v8182, v8183); }, 'NhFDA': 'svg', 'vCWmE': function(v8184, v8185, v8186, v8187, v8188) { return v8184(v8185, v8186, v8187, v8188); }, 'kxjFl': "path", 'qAhFB': "currentColor", 'ACCog': "round", 'zFnaD': "M13.213 9.787a3.391 3.391 0 0 0-4.795 0l-3.425 3.426a3.39 3.39 0 0 0 4.795 4.794l.321-.304m-.321-4.49a3.39 3.39 0 0 0 4.795 0l3.424-3.426a3.39 3.39 0 0 0-4.794-4.795l-1.028.961" }; return openBlock(), v8179.vmIGR(createBlock, "svg", P4, [...v8170[0] || (v8170[0] = [v8179.vCWmE(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M13.213 9.787a3.391 3.391 0 0 0-4.795 0l-3.425 3.426a3.39 3.39 0 0 0 4.795 4.794l.321-.304m-.321-4.49a3.39 3.39 0 0 0 4.795 0l3.424-3.426a3.39 3.39 0 0 0-4.794-4.795l-1.028.961" }, null, -1)])]); } const U4 = J(T4, [ ['render', V4] ]), _4 = .id, E4 = { 'class': "p-3 border border-white/15 rounded-xl space-y-2" }, L4 = { 'class': "flex justify-between border border-yellow-300/75 text-white items-center rounded-xl p-2 mb-3" }, D4 = { 'class': "font-bold text-lg text-yellow-300" }, G4 = .href, ft = { '__name': "ItemHelp", 'props': ['id', "title", 'url'], 'setup'(v8189) { const v8190 = v8189; return (v8191, v8192) => (openBlock(), createBlock('div', { 'id': v8190.id }, [e("div", E4, [e("div", L4, [e("span", D4, useAttrs(v8190.title), 1), e('a', { 'href': v8190.url, 'target': "_blank", 'class': "bg-yellow-300 rounded-xl p-2 text-black hover:opacity-75 text-decoration-none icon-link-hover justify-content-end transition-opacity" }, [createVNode(U4)], 8, G4)]), createStaticVNode(v8191.$slots, "default")])], 8, _4)); } }, R4 = { 'class': "flex lg:flex-row flex-col gap-4" }, N4 = { 'class': 'flex flex-col text-white gap-4 basis-10/12' }, j4 = { 'class': 'flex lg:flex-row flex-col gap-4' }, O4 = { 'class': "flex flex-col gap-4" }, B4 = { 'class': "flex flex-col gap-4" }, H4 = { 'id': "config-update-channels" }, F4 = { 'class': "text-lg font-semibold mb-4 inline-flex items-center gap-2" }, q4 = { 'id': 'config-refresh-events' }, W4 = { 'class': 'text-lg font-semibold mb-4 inline-flex items-center gap-2' }, z4 = { 'id': "config-stream-config" }, Z4 = { 'class': "mb-2" }, K4 = { 'id': 'config-scripts', 'class': "space-y-2" }, J4 = .href, Y4 = .href, Q4 = { '__name': "HelpView", 'setup'(cfg25) { return (cfg26, cfg27) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "Help" }), cfg27[73] || (cfg27[73] = e('p', { 'class': 'text-3xl font-bold text-white mb-3' }, "Getting Started", -1)), e("div", R4, [e('div', N4, [cfg27[71] || (cfg27[71] = StaticHTML('

The main goal of o11 is to convert LIVE and VOD streams to a friendly protocol such as HLS and/or direct HTTP MPEG-TS.

The following input formats are currently supported:

  • DASH
  • HLS
  • Microsoft Smooth Streaming

Dependencies

FFmpeg must be installed when not using internal remuxer

Executing o11

You can list command line options using: ./o11 -h

Main pages

In this section will be described the main features of each page from taskbar.

', 2)), e("div", j4, [e("div", O4, [createVNode(ft, { 'id': 'page-providers', 'title': "Providers", 'url': "/providers" }, { 'default': withModifiers(() => [...cfg27[0] || (cfg27[0] = [e('p', null, " This page is the default one, it\u2019s a clickable list of the available providers. ", -1), e('p', null, " o11 supports multiple providers. Each provider will have its own set of streams and its own network configuration. ", -1), e('p', null, [toDisplayString(' Go to '), e('kbd', null, "Providers"), toDisplayString(" tab, select a provider name and click on "), e("kbd", null, "Add New Provider"), toDisplayString(". Provider configuration files will be stored into "), e("kbd", null, "providers/"), toDisplayString(" by default. This path can be changed using "), e("kbd", null, "-providers [path]"), toDisplayString(" from command-line. ")], -1), e('p', null, [toDisplayString(' You can also import a new proviser using the '), e("kbd", null, "Import"), toDisplayString(' button. The format is either a text file, a m3u or an o11 cfg file. ')], -1)])]), '_': 1 }), createVNode(ft, { 'id': 'page-vod', 'title': "VOD", 'url': '/vod' }, { 'default': withModifiers(() => [...cfg27[1] || (cfg27[1] = [e('p', null, " You will find on this page the list of VOD available in the selected provider. ", -1)])]), '_': 1 }), createVNode(ft, { 'id': "page-recordings", 'title': "Recordings", 'url': '/recordings' }, { 'default': withModifiers(() => [...cfg27[2] || (cfg27[2] = [e('p', null, "In this page you can setup stream recordings.", -1)])]), '_': 1 }), createVNode(ft, { 'id': "page-users", 'title': "Users", 'url': "/users" }, { 'default': withModifiers(() => [...cfg27[3] || (cfg27[3] = [e('p', null, "This page is used to manage users access.", -1), e('p', null, "When adding a new user, the following options are available:", -1), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "Password"), toDisplayString(" the password for the selected user. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Providers"), toDisplayString(" the list of providers the user has access to. If the "), e("kbd", null, 'Admin'), toDisplayString(" option is selected, the user has access to all providers ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Networks"), toDisplayString(" allowed network for user. If nothing is selected, the user can access o11 from any ip. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Admin"), toDisplayString(" set user as admin. Only admin users can access the "), e("kbd", null, "Users"), toDisplayString(' and '), e('kbd', null, "Config"), toDisplayString(" pages. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "WebAccess"), toDisplayString(" allow Web UI access to user. ")])], -1)])]), '_': 1 })]), e("div", B4, [createVNode(ft, { 'id': "page-linear", 'title': "Linear", 'url': "/linear" }, { 'default': withModifiers(() => [...cfg27[4] || (cfg27[4] = [e('p', null, 'All linear streams are listed in this page.', -1), e('p', null, " Eeach linear channel can be started from this page. You can also play it using the internal player, go to logs or settings. You will also be able to copy the link to this stream. Note that playback will mostly fail under Chrome if the audio track is AC3 or other type of complex audios. ", -1)])]), '_': 1 }), createVNode(ft, { 'id': "page-events", 'title': "Events", 'url': '/events' }, { 'default': withModifiers(() => [...cfg27[5] || (cfg27[5] = [e('p', null, " You will find on this page the Schedule list for events and the available recorded events (Replays). The list of events is retrieved using the provider script, please look at section below. ", -1), e('p', null, [toDisplayString(" Schedule can also be accessed using the "), e("kbd", null, "-epgport"), toDisplayString(" command line option and going to "), e('kbd', null, "http://ip:epgport/providerid"), toDisplayString(". An XMLEPG version is also accessible at "), e("kbd", null, "http://ip:epgport/providerid.xml"), toDisplayString(" or "), e('kbd', null, "http://ip:epgport/providerid.xml.gz"), toDisplayString('. ')], -1), e('p', null, [toDisplayString(' Each new event gets a '), e("kbd", null, "eventN"), toDisplayString(" id. N is an unique incremental number. If you want to access on air events, you should use the special id "), e("kbd", null, 'onairN'), toDisplayString(", where N will never exceed the number of events running simultaneously. This "), e("kbd", null, 'onairN'), toDisplayString(" id is only valid during the live window of the event. ")], -1), e('p', null, " The second table is the list of replays (recorded events). They are accessible trough the given link or will be automatically played using their original event link when finished. ", -1)])]), '_': 1 }), createVNode(ft, { 'id': 'page-monitoring', 'title': 'Monitoring', 'url': "/monitoring" }, { 'default': withModifiers(() => [...cfg27[6] || (cfg27[6] = [e('p', null, " You will find on this page all active connections and some informations about the system status. ", -1)])]), '_': 1 }), createVNode(ft, { 'id': 'page-logs', 'title': "EPG", 'url': "/epg" }, { 'default': withModifiers(() => [...cfg27[7] || (cfg27[7] = [e('p', null, " In this page, you will be able to access EPG for each channel. ", -1)])]), '_': 1 }), createVNode(ft, { 'id': 'page-logs', 'title': 'Logs', 'url': "/logs" }, { 'default': withModifiers(() => [...cfg27[8] || (cfg27[8] = [e('p', null, " In this page, you will be able to access logs for each channel as well as the main log. The channel logging verbosity can be configured on the configuration page. ", -1)])]), '_': 1 })])]), createVNode(ft, { 'id': "page-config", 'title': "Config", 'url': "/config" }, { 'default': withModifiers(() => [cfg27[40] || (cfg27[40] = e("div", { 'id': 'config-providers', 'class': "space-y-2" }, [e("div", { 'id': 'config-running-output-mode', 'class': "space-y-2" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "Running/Output Mode"), e('p', null, "o11 supports 5 running modes:"), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "Internal remuxer"), toDisplayString(' - (default mode) this mode works without FFmpeg, the remuxing operations are done internally. All output modes are available in this this mode. No file is written on disk. ')]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'FFmpeg resident'), toDisplayString(" - FFmpeg must be installed. A FFmpeg process is spawned when the stream is started and will keep running until the channel is stopped. All output modes are available in this this mode. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "FFmpeg TS HLS/Direct"), toDisplayString(" - FFmpeg must be installed. On each new segment, FFmpeg is spawn to convert it to a HLS fragment. CPU load is higher in this mode because FFmpeg is started on every new segment. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "FFmpeg MultiTS HLS"), toDisplayString(' - FFmpeg must be installed. On each new segment, FFmpeg is spawn to convert it to a HLS video or audio fragment. It results in a multi TS HLS playlist. ')]), e('li', { 'class': "mb-2" }, [e('kbd', null, "FMP4 HLS"), toDisplayString(" - this mode works without FFmpeg. The input stream is converted to FMP4 HLS. No file is written on disk. ")])]), e('p', null, " o11 supports 4 output modes when Internal Remuxer or Resident FFmpeg running modes are selected: "), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "HLS/Direct"), toDisplayString(" - the input stream is converted to HLS and can also be retrieved in direct HTTP mode. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "SRT Server"), toDisplayString(' - the stream is available through the SRT server. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Custom Pipe"), toDisplayString(" - the stream is pushed to a linux pipe and processed by a custom command defined by the -pipeoutputcmd command line parameter. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "UDP/SRT Push"), toDisplayString(" - the stream is pushed to a linux pipe and processed by tsplay when using FFmpeg mode. When using internal remuxer, it does not use tsplay. The output destination is defined per channel by the Output field. It should be a space separated list of udp://ip:port or srt://ip:port. ")])])])], -1)), cfg27[41] || (cfg27[41] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[42] || (cfg27[42] = e('div', { 'id': 'config-script' }, [e('p', { 'class': 'text-lg font-semibold mb-4' }, "Script"), e('p', null, [toDisplayString(" Script name (without it's extension, so "), e("kbd", null, "example.py"), toDisplayString(" becomes "), e('kbd', null, "example"), toDisplayString("), followed that parameters that will be passed to that script). Other parameters like the action, the network config, etc., are automatically passed as parameters too. Check the "), e('a', { 'href': "#config-scripts" }, 'Scripts'), toDisplayString(" paragraph for more details. ")])], -1)), cfg27[43] || (cfg27[43] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[44] || (cfg27[44] = e("div", { 'id': "config-script" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, 'External CDM Script'), e('p', null, [toDisplayString(' External CDM Script name (without it\x27s extension, so '), e("kbd", null, 'example.py'), toDisplayString(" becomes "), e("kbd", null, "example"), toDisplayString("). ")])], -1)), cfg27[45] || (cfg27[45] = e('hr', { 'class': 'my-8!' }, null, -1)), e('div', H4, [e('p', F4, [cfg27[9] || (cfg27[9] = toDisplayString(" Update Linear ", -1)), createVNode(ot)]), cfg27[10] || (cfg27[10] = e('p', null, [toDisplayString(" Call the script to update the channels list. If you select "), e("kbd", null, "auto refresh"), toDisplayString(', channels that are not in the list sent by the script will be removed unless the '), e('kbd', null, "Ignore Update"), toDisplayString(' option is checked. ')], -1))]), cfg27[46] || (cfg27[46] = e('hr', { 'class': "my-8!" }, null, -1)), e("div", q4, [e('p', W4, [cfg27[11] || (cfg27[11] = toDisplayString(" Refresh Events ", -1)), createVNode(ot)]), cfg27[12] || (cfg27[12] = e('p', null, [toDisplayString(" Call the script to udpate the events list. It can be automated by clicking on "), e("kbd", null, "auto refresh"), toDisplayString(". If you select "), e('kbd', null, 'auto refresh'), toDisplayString(', channels that are not in the list sent by the script will be removed unless the '), e("kbd", null, "Ignore Update"), toDisplayString(" option is checked. ")], -1))]), cfg27[47] || (cfg27[47] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[48] || (cfg27[48] = e("div", { 'id': "config-network-parameters", 'class': "space-y-2" }, [e('p', { 'class': 'text-lg font-semibold mb-4' }, "Network"), e('p', null, ' Network options can be configured globally for a provider and then overridden per stream. '), e('p', null, [toDisplayString(' All these network parameters can be overridden per channel, selecting the '), e('kbd', null, "NetworkOverride"), toDisplayString(" option. ")]), e('p', null, [toDisplayString(" Don't forget to press "), e("kbd", null, 'APPLY NETWORK'), toDisplayString(" for the changes to take effect. If you set global network parameters while streams are running some streams can crash. ")]), e('p', null, [toDisplayString(' You can select individually a network connection for Scripts/Manifests/Media calls. You can also set a '), e('kbd', null, "Worker"), toDisplayString(" host for each of them, every request will use this host. The real host is passed as an extra header "), e('kbd', null, 'Original-Host'), toDisplayString('. ')]), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "System"), toDisplayString(" - use system network configuration. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Same as ... "), toDisplayString(" - use the same network configuration as... ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'HTTP/SOCKS5 Proxy'), toDisplayString(' - coma separated list of proxies. Format is '), e('kbd', null, "http://user:pass@ip:port"), toDisplayString(" for HTTP proxies and "), e("kbd", null, "socks5://user:pass@ip:port"), toDisplayString(" for SOCKS5 proxies. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Bind"), toDisplayString(' - coma separated list of ips or interface names. ')]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "DNS over HTTPS"), toDisplayString(' - coma separated list of DOH servers. ')])])], -1)), cfg27[49] || (cfg27[49] = e('hr', { 'class': 'my-8!' }, null, -1)), cfg27[50] || (cfg27[50] = e("div", { 'id': "config-additional-parameters" }, [e('p', { 'class': 'text-lg font-semibold mb-4' }, "Parameters"), e('p', null, " A bunch of additional parameters can be set here. For more info, put your cursor on the parameter to bring the tooltip. ")], -1)), cfg27[51] || (cfg27[51] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[52] || (cfg27[52] = e("div", { 'id': "config-script-accounts", 'class': 'space-y-2' }, [e('p', { 'class': 'text-lg font-semibold mb-4' }, "Script accounts"), e('p', null, [toDisplayString(" A list of accounts to use with the script. If the account is enabled and selected (next to the script field or per channel next to the script params field), it's info will be passed when calling the script. For instance, "), e("kbd", null, "user=john@mail.com password=mypassword device=123456 pin=1234")]), e('p', null, [toDisplayString(' The '), e("kbd", null, "login"), toDisplayString(' button can be used to call the script with the login action, to test if the account works. The script must print '), e('kbd', null, '\x27logged in\x27'), toDisplayString(" to validate the login. The "), e("kbd", null, "pair"), toDisplayString(" button can be used to call the script with the pair action. ")])], -1)), cfg27[53] || (cfg27[53] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[54] || (cfg27[54] = e("div", { 'id': "config-channels", 'class': "space-y-2" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "Channels"), e('p', null, [toDisplayString(' To add a new channel to a provider, go to '), e("kbd", null, "Config"), toDisplayString(' tab and press '), e("kbd", null, "ADD NEW STREAM"), toDisplayString(' after entering its name in the field. ')]), e('p', null, [toDisplayString(' To delete a stream, click on its checkbox and press '), e("kbd", null, 'DELETE SELECTION'), toDisplayString(". If the stream was running, it will be stopped first, then deleted. ")])], -1)), cfg27[55] || (cfg27[55] = e('hr', { 'class': 'my-8!' }, null, -1)), e("div", z4, [cfg27[29] || (cfg27[29] = e('p', { 'class': "text-lg font-semibold mb-4" }, "Stream configuration", -1)), e('ul', null, [cfg27[22] || (cfg27[22] = e('li', { 'class': "mb-2" }, [e("kbd", null, "Start/Stop"), toDisplayString(" - to start or stop the stream. ")], -1)), cfg27[23] || (cfg27[23] = e('li', { 'class': 'mb-2' }, [e('kbd', null, "Name"), toDisplayString(' - the name of the stream. This is also a clickable link that will start the internal player. You can also copy this link (HLS) to use in another player. ')], -1)), cfg27[24] || (cfg27[24] = e('li', { 'class': "mb-2" }, [e("kbd", null, "Status"), toDisplayString(" - the status of the stream.")], -1)), cfg27[25] || (cfg27[25] = e('li', { 'class': "mb-2" }, [e("kbd", null, "Mode"), toDisplayString(" - "), e("strong", null, "Linear"), toDisplayString(', '), e('strong', null, 'Replay'), toDisplayString(' or '), e("strong", null, "VOD"), toDisplayString('. '), e("strong", null, "Linear"), toDisplayString(" mode is for a live channel. "), e("kbd", null, "Replay"), toDisplayString(' will trigger a fetch of all the fragments from the manifest and generate a HLS output stream. '), e("strong", null, 'VOD'), toDisplayString(" can be used to get VOD stream and generate mp4 file. ")], -1)), e('li', Z4, [cfg27[13] || (cfg27[13] = e('kbd', null, "Manifest", -1)), cfg27[14] || (cfg27[14] = toDisplayString(" - setup the manifest url. If ", -1)), cfg27[15] || (cfg27[15] = e("kbd", null, "SessionManifest", -1)), cfg27[16] || (cfg27[16] = toDisplayString(" - option is selected, the provider script will be called if needed. please check the ", -1)), cfg27[17] || (cfg27[17] = e("strong", null, "Scripts", -1)), cfg27[18] || (cfg27[18] = toDisplayString(" section for more details. Network ovverride fields will also appear in the box when the ", -1)), cfg27[19] || (cfg27[19] = e("kbd", null, "NetworkOverride", -1)), cfg27[20] || (cfg27[20] = toDisplayString(" option is selected. Press the ", -1)), createVNode(ot, { 'class': 'inline' }), cfg27[21] || (cfg27[21] = toDisplayString(" button to parse the manifest and refresh the tracks list. ", -1))]), cfg27[26] || (cfg27[26] = e('li', { 'class': "mb-2" }, [e("kbd", null, "Tracks"), toDisplayString(" - list of selectable Video/Audio/Subtitles tracks. The "), e("strong", null, "Best quality"), toDisplayString(" option is seletected by default and let o11 take the best resolution/bandwidth/framrate. Multiple audio and subtiltes tracks can be selected. ")], -1)), cfg27[27] || (cfg27[27] = e('li', { 'class': 'mb-2' }, [e("kbd", null, "Keys or CDM Script"), toDisplayString(" - set the decryption keys for the stream. On line per kid:key. If "), e("kbd", null, "UseCdm"), toDisplayString(" is selected, o11 will try to call the selected provider script to get keys using the specified parametersm. Please check the "), e("strong", null, "Scripts"), toDisplayString(" section for more detail. ")], -1)), cfg27[28] || (cfg27[28] = e('li', { 'class': "mb-2" }, [e("kbd", null, 'Options'), toDisplayString(' - please see the '), e("strong", null, "Stream options"), toDisplayString(" section. ")], -1))])]), cfg27[56] || (cfg27[56] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[57] || (cfg27[57] = e('div', { 'id': "streaming-parameters" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, 'Streaming Parameters'), e('ul', null, [e('li', { 'class': "mb-2" }, [e('kbd', null, "Detect SSAI"), toDisplayString(' - Try to detect Server Side Insertion inside manifest. Some streams require this option to work correctly. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Detect CTV"), toDisplayString(" - Try to detect CTV stream inside manifest. Some streams require this option to work correctly. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Force HLS TS"), toDisplayString(" - Force fragment type of HLS input streams to MPEG-TS. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Force HLS FMP4"), toDisplayString(' - Force fragment type of HLS input streams to fragmented MP4. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Ignore DASH static flag"), toDisplayString(" - Treat all DASH input streams as live/linear, regardless of their mode. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Ignore DASH SegmentTimeline"), toDisplayString(' - Treat all DASH input streams removing the SegmentTimeline for local manifest playback. ')]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Use DASH Location"), toDisplayString(' - Use Location value from DASH manifest to grab next manifest. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Call script to download manifest"), toDisplayString(" - Call provider script with downloadmanifest action to download a manifest. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Call script to download media"), toDisplayString(" - Call provider script with downloadmanifest action to download a media. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Use session cookies'), toDisplayString(" - Use cookies set by manifest retrieval for media files retrieval. Mandatory for some providers. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, 'No referer in redirects'), toDisplayString(' - Don\x27t set the Referer header during http redirects files retrieval. Mandatory for some providers. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Use DASH delay"), toDisplayString(" - Delay DASH playback based on manifest info."), e('br')]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "Use DASH newest period"), toDisplayString(" - Always use the newest period in DASH manifest."), e('br')]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Legacy DASH parser'), toDisplayString(" - Use legacy DASH parser. This parser should be slower but may be worth a try if a DASH parsing issue occurs. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Use manifest URL params for segments"), toDisplayString(" - When manifest URL comes with URL parameters (?param1=...\u00b6m2=...), forward these parameters to the HLS sub-manifests and the HLS/DASH media files, only if they don't already include any. Mandatory for some providers. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Force manifest URL params for segments"), toDisplayString(" - When manifest URL comes with URL parameters (?param1=...\u00b6m2=...), always forward these parameters to the HLS sub-manifests and the HLS/DASH media files. Mandatory for some providers. This option overrides the previous one. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Detect invalid PAT in MpegTS"), toDisplayString(" - Some HLS/TS streams have a bad PAT, this option try to detect the PMT. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Detect special JSON redirect URL'), toDisplayString(" - Some providers use a special way to redirect manifest URL. They return a 200 with a JSON that includes the URL to use. Format is a string array named 'Locations'. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Don't wait for full playlist"), toDisplayString(" - When a stream starts, the output stream becomes available when at least 'Output fragments count' are available (look below). This option allows to make the output stream available without waiting for this value to be reached. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Pre-process PSSH"), toDisplayString(" - Call script with action=pssh and the pssh value before processing it. This allows a pre-processing on the PSSH. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Force PSSH from manifest"), toDisplayString(" - Use PSSH from manifest even if a media embeds one. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Don\x27t use keys cache'), toDisplayString(" - For providers using the same KID for all streams, use this option. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Always select default tracks'), toDisplayString(" - Always select default tracks on stream start. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Only match first default track"), toDisplayString(' - Only select first track matching the tracks filte. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Push keys to archive"), toDisplayString(" - Call archive script with action=pushkey for each new key from CDM. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Use media network for HLS key"), toDisplayString(" - Use media network for HLS key instead of manifest one. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Ignore oldest fragment"), toDisplayString(" - Don't use oldest fragment from stream source manifest (it can happen that this fragment disappears before we try to grab it. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Default CDN"), toDisplayString(" - CDN name to be used by default, when multiple CDN manifest URLs are available. The name must match the name of the CDN defined in the stream config. Default is Empty (no filter). ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Default video"), toDisplayString(" - Default video streams to select. Each filter can be an extract of the real stream description. For example, '720p' will match '720p30', '720p60',...'. Multiple filters can be defined, '|' separated. Default is Empty (no filter). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Default audio'), toDisplayString(" - Default audio streams to select. Each filter can be an extract of the real stream description. For example, 'Eng' will match 'English'. Multiple filters can be defined, '|' separated. Default is Empty (no filter). ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'Default subtitles'), toDisplayString(" - Default subtitles streams to select. Each filter can be an extract of the real stream description. For example, 'Eng' will match 'English'. Multiple filters can be defined, '|' separated. Default is Empty (no filter). ")]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "HLS playlist duration (s)"), toDisplayString(' - Duration of the HLS output playlist. Duration is the sum of all fragments\x27 duration. For instance, 15 means 5 fragments if they are 3 seconds each. There can\x27t be fewer than 5 fragments. This value is ignored if \x27Output fragments count\x27 is not 0. Default is 15 seconds. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "HTTP get timeout"), toDisplayString(" - HTTP call timeout. This value is automatically increased to 24 hours for VOD streams. Default is 30 seconds. ")]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "HTTP get tentatives count"), toDisplayString(" - Number of times to retry to get a manifest or a media file. Default is 2 times. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "HLS fragments duration (s)"), toDisplayString(' - Duration of output fragments. This value is ignored in FFmpeg TS HLS/Direct output mode that will use the value from input stream. Default is 0 (HLS playlist duration). ')]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "Output fragments count"), toDisplayString(" - Force the number of fragments in the HLS output playlist. Default is auto, using HLS playlist duration. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Stalled stream timeout (s)'), toDisplayString(" - Time to wait before detecting an input stream as stalled (no new fragment). Default is 60. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Playback Delay (s)"), toDisplayString(" - Add a playback delay to the input stream, ignoring newest fragments. Default is 0 (no delay). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "\"DASH time offset (ms)"), toDisplayString(' - Add an offset to the wall clock to compute dash fragments time. ')]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "CDM provider ID"), toDisplayString(" - provider ID to pass when calling keys archive and external CDM scripts. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'DRM level'), toDisplayString(" - DRM level to pass to external CDM script. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "CDM certificate"), toDisplayString(' - CDM certificate base64 to pass to external CDM script. ')]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Max streams concurrency"), toDisplayString(" - Max number of streams that can run simultaneously in this provider. Default is 0 (no limit). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Retry new manifest count'), toDisplayString(" - Number of times to re-try to get a new manifest (using the script), if the current one fails. This only works when 'Session Manifest' is enabled. Default is 1 (re-try once). ")]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "Max streams per account"), toDisplayString(" - Max number of streams that can be started for a unique script account. Default is 0 (no limit). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Max download concurrency"), toDisplayString(" - Max number of concurrent media retrieval per stream (when using SpeedUp mode). Default is 50. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Max concurrent script calls"), toDisplayString(" - Max number of concurrent calls to the provider script. Default is 0 (no limit). ")])])], -1)), cfg27[58] || (cfg27[58] = e("div", { 'id': "channels-events-parameters" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, 'Channels/events parameters'), e('ul', null, [e('li', { 'class': "mb-2" }, [e('kbd', null, 'Reuse event index'), toDisplayString(' - Events retrieved from a script get an autogenerated stream id called \x22eventN\x22 where N is an always increasing number. If this option is set, N will reuse available numbers, that were freed by deleted events. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Reversed events ids"), toDisplayString(" - Instead of an always increasing number, N from 'eventN' will be decreased for each new event. Don't forget to set 'Events first ID' to a high value or you will quickly run out of possible numbers (1 being the lower one). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Reset events list on refresh"), toDisplayString(" - When refreshing events remove all current ones and start a new list. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Auto-remove missing channels'), toDisplayString(" - When updating linear channels from script, remove from O11 the channels that are not listed anymore. This option is ignored for channels with the 'Ignore update' option set. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'Don\x27t add new channels on refresh'), toDisplayString(" - When updating linear channels from script, don't add new ones, only update existing ones. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Auto-refresh channels"), toDisplayString(" - Periodically refresh channels from script. Refresh period is defined in 'Channels refresh con'. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Auto-refresh events'), toDisplayString(" - Periodically refresh events from script. Refresh periodicity is defined in 'Events refresh cron'. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Auto-refresh EPG"), toDisplayString(' - Periodically refresh EPG from script. Refresh periodicity is defined in \x27EPG refresh cron\x27. ')]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Don't auto-remove finished events"), toDisplayString(" - Do not remove from O11 the events that are finished. This option is ignored for events with the 'Ignore update' option set. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Remove events not returned by script"), toDisplayString(" - Remove events that are listed in O11 but not returned by the provider script. This option is ignored for events with the 'Ignore update' option set. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Allow duplicate events'), toDisplayString(" - When updating events from script, allow 2 events with the the same config and similar start time. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Events first ID"), toDisplayString(" - The first ID number to use for eventN streams. Default is 0. ")]), e('li', { 'class': 'mb-2' }, [e('kbd', null, "Channels update period (s)"), toDisplayString(" - Period to update channels list (linear streams). Default is 0 (no auto-update). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Channels refresh cron"), toDisplayString(" - Cron defining the time where the channels list is refreshed. This is used only if 'Auto-refresh channels' is set. Default is daily. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Events refresh cron'), toDisplayString(" - Cron defining the time where the events list is refreshed. This is used only if 'Auto-refresh events' is set. Default is daily. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Max events count"), toDisplayString(" - Max number of events to add from script. Default is 0 (no limit). ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Max events hours"), toDisplayString(' - Maximum hours of events to retrieve. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "EPG refresh cron"), toDisplayString(" - Cron defining the time where the EPG is refreshed. This is used only if 'Auto-refresh EPG' is set. Default is daily. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Timezone"), toDisplayString(" - Timezone used to generate dates. This is used for XML EPG, remote DB update, replays. Default is UTC. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Events SQL URL"), toDisplayString(" - SQL URL where to send new events. Format is user:password@tcp(ip:port)/dbname. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "SQL Stream URL"), toDisplayString(" - Stream URL to use when sending it to SQL URL. Format is https://user:pass@ip. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Logo URL"), toDisplayString(" - Logo path for provider URL. Default is /logos/[providerid].png ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Script timeout (s)"), toDisplayString(' - Max time to wait for a script call to return. When the timeout is reached, the call exits with a \x27killed\x27 error. Default is 30 seconds. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Events first ID'), toDisplayString(" - First ID for events. This ID is the N value from 'eventN'. This is important when setting 'Reversed events ids'. Default is 0 (this must be changed). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Event filters"), toDisplayString(" - Events filtering allows creating special static links for events. These events are called 'Filtered events'. For instance, let\u2019s say that you want a static link for every daily news on Channel1. You know that the event is always called '[DATE] Channel1 News'. Then you must create a filter called 'Channel1 News'. This will auto-create a new event (available in the events tab and in EPG). This special event will always point to the events that match the filter, when they are On-Air. Multiple events can be defined | separated. Additional words ca be added & separated It is also possible to define multiple filters per entry, '#' separated. For instance 'Channel1 News#Channel1 Daily News'. The filter match is on words, not on each char and is case sensitive. Final format is: filter1#alt1#...|filter2|... ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, 'Default events duration'), toDisplayString(" - Duration in seconds for events which don't have a end date. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Don\x27t Gzip EPG in playlist'), toDisplayString(" - Send EPG as non-gzipped XML in playlist. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Use event number as name in playlist"), toDisplayString(" - In M3U playlist print event names as \"Event N\". ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Dont' cool down event start"), toDisplayString(' - Dont\x27 cool down event start. That could cause script call flood. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Delete removed streams logs"), toDisplayString(" - Remove logs from a stream when it's deleted. ")])])], -1)), cfg27[59] || (cfg27[59] = e("div", { 'id': "start-parameters" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "Start parameters"), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "Always reset session"), toDisplayString(" - When starting a stream and if 'Session Manifest' is selected, always call the provider script to get a fresh session manifest. Mandatory for some providers. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "No restart on error"), toDisplayString(" - Don't auto-restart a stream when it exits due to an error. Useful for debugging failing streams. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Restart finished broadcast'), toDisplayString(" - When a stream exits because it was detected that the broadcast ended (due to a static flag in the DASH manifest, for instance), auto-restart it. The default behavior is to NOT restart it. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'No restart on track change'), toDisplayString(" - When the tracks list changes in a stream, it is restarted unless this option is set. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Always auto-restart on failure'), toDisplayString(" - When a stream fails to start, without even successfully getting the first media file, it is not auto-restarted because it usually means that subsequent starts will also fail. This option makes the stream always restart regardless of the failing reason. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Cooldown streams auto-restart"), toDisplayString(" - Try to cooldown streams auto-restart to avoid 2 streams restarting at the same time. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Try next CDN on failure'), toDisplayString(' - When a stream fails to start, jump to next CDN on next run. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Restart delay (s)"), toDisplayString(' - Time to wait before restarting a stream. Default is 30 seconds. ')]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Autorestart random offset (s)"), toDisplayString(" Add a random offset in seconds to the stream auto-restart cron. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Random autostart period (s)'), toDisplayString(" - When starting O11 for the first time, start all streams with a random delay between 0 and this value. Default is 0 (no random delay). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Seq autostart period (s)"), toDisplayString(" - When starting O11 for the first time, start all streams sequentially every N seconds. Default is 0 (no sequential start). ")])])], -1)), cfg27[60] || (cfg27[60] = e('div', { 'id': "dvb-subtitles" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "DVB Subtitles"), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, "Disable DVBSubs colors"), toDisplayString(" - Ignore color tags in the input subtitles description. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Disable DVBSubs style'), toDisplayString(" - Ignore special styles in the input subtitles. This fixes some providers with complex subtitles. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'Use provider script for DVBSubs'), toDisplayString(' - Call provider script for each subtitle. This allows for operations like translations. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Add overlay on picture'), toDisplayString(" - Add a picture overlay on the output stream. The picture must be stored in 'overlay/[providerid.png'. This option only works with FFmpeg TS HLS/Direct and resident modes. Warning: This option consumes a lot of CPU as all frames are transcoded. Consider using a GPU by selecting the right option in 'HW accel for burned subtitles'. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'Always transcode'), toDisplayString(' - Always transcode all frames when burning subtitles. This resolves some output stream issues. If not set, only frames with subtitles will be transcoded. This option only works with FFmpeg TS HLS/Direct mode. ')]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Use X-TIMESTAMP-MAP for VTT"), toDisplayString(" - Use X-TIMESTAMP-MAP from VTT input streams to extract subtitles timestamps. Mandatory for some providers. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "DVBSubs colors filter"), toDisplayString(' - Only output the specified subtitles colors (as well as the default color). Format is color1, color2,... Default is all colors. ')]), e('li', { 'class': "mb-2" }, [e('kbd', null, "DVBSubs translation src"), toDisplayString(' - When \x27Use provider script for DVBSubs\x27 is selected, select the input stream subtitles language to be passed to the script. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Max autorestart tentative"), toDisplayString(' - How many times it will try to restart a failing stream before giving up. 0 means no limit. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Events start offset (s)"), toDisplayString(" - Add an offset to event on-air start date in seconds. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, 'Events end offset (s)'), toDisplayString(" - Add an offset to event on-air end date in seconds. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "DVBSubs translation dest"), toDisplayString(" - When 'Use provider script for DVBSubs' is selected, select the output stream subtitles language to be passed to the script. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "DVBSubs size"), toDisplayString(" - DVBSubs size can be adjusted with this value, from 0 to 100%. Default is 100 (%). ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "DVBSubs Vertical Offset"), toDisplayString(" - DVBSubs vertical offset can be adjusted with this value, from 0 to 100%. Default is 96 (%). ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, 'DVBSubs quality'), toDisplayString(" - Select DVBSubs subtitles quality from low to high. A better quality means higher CPU consumption. Default is medium. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Burn message"), toDisplayString(' - Burn a static message in the output stream. This option only works with FFmpeg TS HLS/Direct and resident modes. Default is no message. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'HW accel for burned subtitles'), toDisplayString(" - Select HW acceleration to burn subtitles, overlay, or messages. Nvidia and QSV are currently supported options. This defines the options passed to FFmpeg. This option only works with FFmpeg TS HLS/Direct and resident modes. Default is no HW acceleration (full CPU). ")])])], -1)), cfg27[61] || (cfg27[61] = e("div", { 'id': "misc" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "Misc"), e('ul', null, [e('li', { 'class': "mb-2" }, [e("kbd", null, 'X-Forwarded-For'), toDisplayString(" - Default X-Forwarded-For to be sent to all HTTP requests, unless overridden by the Headers defined below and in each stream. Default is none. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Pipe command (READ-ONLY)"), toDisplayString(" - When using 'Custom' 'Output Mode', this is the command that will be run using the stream as input PIPE. The %s value is replaced by the 'Pipe' field for each channel. This allows, for instance, to define a custom UDP destination. Default is 'tsplay -stdin %s'. This value CAN'T be edited for obvious security reasons. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "User Agent"), toDisplayString(" - Default User-Agent header to be sent to all HTTP requests, unless overridden by the Headers defined below and in each stream. Default value can be changed from the command-line. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Manifest Headers"), toDisplayString(" - Headers to be passed to every manifest HTTP call. Format is { 'Header1': 'Value', 'Header2': 'Value' } ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Media Headers"), toDisplayString(" - Headers to be passed to every media HTTP call. Format is { 'Header1': 'Value', 'Header2': 'Value' } ")])])], -1)), cfg27[62] || (cfg27[62] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[63] || (cfg27[63] = e('div', { 'id': "config-stream-options" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, "Stream options"), e('p', null, "Several options can be selected for each stream."), e('ul', null, [e('li', { 'class': 'mb-2' }, [e("kbd", null, "First audio track\""), toDisplayString(" - First audio track to the output stream when multiple audio are selected. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, 'Script params/Account selection'), toDisplayString(' - set the script parameters to be added to the other parameters for this channel (typically id=channelid). The account to use with this channel can be selected here, if Provider is chosen, it will use the same account as the providers\x27one. ')]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Autostart"), toDisplayString(" - auto start the stream when starting o11. It is possible to override this option globally using the "), e("kbd", null, "-noautostart"), toDisplayString(" command-line option. If the stream is an event, it will be autostarted only during live window. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "On demand"), toDisplayString(" - automatically start a stream when the internal or a remote player request for it. The stream is then automatically stops when it is not used anymore. Use this option to avoid having all streams running for nothing 24/24. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Speed up'), toDisplayString(" - run all segments download in parallel. It speeds up stream start. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, 'Session manifest'), toDisplayString(" - call the script to automatically get the manifest URL. Usefull when the manifest is changing (check the "), e("strong", null, "Scripts"), toDisplayString(" paragraph for more details). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'CDM script'), toDisplayString(" - call the script automatically get keys when needed (check the "), e("strong", null, 'Scripts'), toDisplayString(" paragraph for more details). ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Network override'), toDisplayString(" - add new fields to override the global network configuration (check the "), e('strong', null, "Scripts"), toDisplayString(" paragraph for more details). ")]), e('li', { 'class': 'mb-2' }, [e('kbd', null, 'Mode override'), toDisplayString(' - override running and output modes. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, 'Record event'), toDisplayString(" - record the event and convert it in real-time to a replay. If checked, the event will auto start during it's live window to be recorded. ")]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Record TS"), toDisplayString(' - record the stream on the fly and streamsStore it as a MpegTs in rec/. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Replay manifest"), toDisplayString(" - get all fragments from the manifest. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Ignore update"), toDisplayString(' - don’t autoremove/modify this channel when using the channels or events script (check the '), e('strong', null, "Scripts"), toDisplayString(" section for more details). ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Time range"), toDisplayString(" - select a time range to extract from a manifest. Only works with DASH using times and not numbers. ")]), e('li', { 'class': 'mb-2' }, [e("kbd", null, "Daily OnAir"), toDisplayString(" - select a time range where the live will be automatically started every day. It will be stopped when not in this daily range. Time is localized based on browser. ")]), e('li', { 'class': "mb-2" }, [e('kbd', null, "Output field"), toDisplayString(' - list of UPD/SRT outputs or Custom command parameters. ')]), e('li', { 'class': "mb-2" }, [e("kbd", null, "Logs"), toDisplayString(' - set the channel logging verbosity. This will not be saved, so on next reboot, it will use the global value (set with -v N at startup). ')])])], -1)), cfg27[64] || (cfg27[64] = e('hr', { 'class': "my-8!" }, null, -1)), e('div', K4, [cfg27[35] || (cfg27[35] = e('p', { 'class': "text-lg font-semibold mb-4" }, "Scripts", -1)), cfg27[36] || (cfg27[36] = e('p', null, " Scripts play a big role for o11. Each provider should have each own script. It can be either a shell script (.sh) or a python3 script (.py). ", -1)), e('p', null, [cfg27[30] || (cfg27[30] = toDisplayString(" An example of script can be found here ", -1)), e("kbd", null, [e('a', { 'download': "example.py", 'href': '/static/example.py?token=' + createTextVNode(Me).getToken(), 'class': "underline hover:opacity-75 transition-opacity" }, "example.py", 8, J4)]), cfg27[31] || (cfg27[31] = toDisplayString('. It uses ', -1)), e("kbd", null, [e('a', { 'download': 'o11.py', 'href': '/static/o11.py?token=' + createTextVNode(Me).getToken(), 'class': "underline hover:opacity-75 transition-opacity" }, "o11.py", 8, Y4)]), cfg27[32] || (cfg27[32] = toDisplayString(". When a script is configured, only it\u2019s name body must be specify. o11 will first try to start the .sh extension and then .py one if not available. Scripts must be stored in the ", -1)), cfg27[33] || (cfg27[33] = e("kbd", null, "scripts", -1)), cfg27[34] || (cfg27[34] = toDisplayString(" directory. ", -1))]), cfg27[37] || (cfg27[37] = e('p', null, [toDisplayString(" Let say we have a provider called "), e('kbd', null, "Provider 1"), toDisplayString(" which script name is "), e("kbd", null, "provider1.py"), toDisplayString(", stored in "), e('kbd', null, "scripts/provider1.py"), toDisplayString(". This script must then be referenced as "), e("kbd", null, "provider1"), toDisplayString(' in the '), e('kbd', null, "Script"), toDisplayString(" field. Some script extra parameters can be specified. ")], -1)), cfg27[38] || (cfg27[38] = e('p', null, ' Depending on the type of script, it will automatically receive the following parameters, additionally to the ones configured by user. ', -1)), cfg27[39] || (cfg27[39] = e('ul', null, [e('li', { 'class': "mb-2" }, [toDisplayString(" Common to all scripts: "), e("kbd", null, "action=[action type] bind=[bind] proxy=[proxy] doh=[doh] worker-[worker]"), e('ul', null, [e('li', { 'class': "mt-2" }, [toDisplayString(" Action type can be one of: "), e("kbd", null, "login, pair, manifest, cdm, events, channels or heartbeat")])])]), e('li', { 'class': "mb-2" }, [toDisplayString("Manifest script: "), e('kbd', null, "action=manifest")]), e('li', { 'class': "mb-2" }, [toDisplayString(' Cdm script: '), e("kbd", null, "action=cdm drm=[widevine or playready] challenge=[drm challenge] pssh=[pssh used to extract needed keys]")]), e('li', { 'class': "mb-2" }, [toDisplayString("Events: "), e("kbd", null, "action=events")]), e('li', { 'class': "mb-2" }, [toDisplayString("Channels: "), e("kbd", null, 'action=channels')]), e('li', { 'class': "mb-2" }, [toDisplayString(" Heartbeat: "), e("kbd", null, "action=heartbeat heartbeaturl=[heartbeat url returned by manifest script] heartbeatparams=[heartbeat parms returned by manifest script]")])], -1))]), cfg27[65] || (cfg27[65] = e('hr', { 'class': "my-8!" }, null, -1)), cfg27[66] || (cfg27[66] = e("div", { 'id': "config-manifest-script" }, [e('p', { 'class': 'text-lg font-semibold mb-4' }, "Manifest script specifics"), e('p', null, "A manifest script should return a json formatted as followed:"), e("pre", { 'class': 'mb-3 rounded-xl whitespace-pre-wrap' }, [e("code", { 'class': 'language-json' }, "{\n \"ManifestUrl\" : [manifest url],\n \"Cdn\" : [\n\t{\n\t 'Name': 'akamai',\n\t 'ManifestUrl': 'http://...'\n\t},\n\t...\n },\n \"Headers\": {\n \"manifest\": {\n 'user-agent': 'mozilla/5.0 (macintosh; intel mac os x 10_15_7) applewebkit/537.36 (khtml, like gecko) chrome/107.0.0.0 safari/537.36',\n 'custom-header': 'it's me',\n ...\n },\n \"media\": {\n 'user-agent': 'mozilla/5.0 (macintosh; intel mac os x 10_15_7) applewebkit/537.36 (khtml, like gecko) chrome/107.0.0.0 safari/537.36'\n 'custom-header': 'it's me',\n ...\n }\n },\n \"Heartbeat\": {\n\t\"Url\" : [heartbeat url],\n\t\"Params\": [param1,param2,...],\n\t\"PeriodMs\" : 5*60*1000\n }\n}")])], -1)), cfg27[67] || (cfg27[67] = e('hr', { 'class': 'my-8!' }, null, -1)), cfg27[68] || (cfg27[68] = e("div", { 'id': "config-cdm-script" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, 'CDM script specifics'), e('p', null, " A CDM script should return a list of kid:key formatted as followed: "), e("pre", { 'class': "mb-3 rounded-xl" }, [toDisplayString(''), e('code', { 'class': "language-json" }, "kid1:key1\nkid2:key2")])], -1)), cfg27[69] || (cfg27[69] = e('hr', { 'class': 'my-8!' }, null, -1)), cfg27[70] || (cfg27[70] = e("div", { 'id': "config-events-channels-script" }, [e('p', { 'class': "text-lg font-semibold mb-4" }, " Events/Channels script specifics "), e('p', null, " A events or channels script should return a list of streams following the same format as the o11 config files: "), e("pre", { 'class': 'mb-3 rounded-xl whitespace-pre-wrap' }, [toDisplayString(''), e('code', { 'class': "language-json" }, "{\n \"[Channels or Events]\": [\n {\n // Name of the channel or the title of the event\n \"Name\": \"[name]\",\n // Mode: live or vod\n \"Mode\": \"live\",\n // Use session manifest\n \"SessionManifest\": true,\n // Script parameters to use to retrieve the manifest or keys\n \"ScriptParams\": \"id=123 country=fr\",\n // CDM type (widevine, playready or verimatrix)\n \"CdmType\": \"widevine\",\n // Use cdm script to get keys\n \"UseCdm\": true,\n // Script parameters to use to retrieve keys\n \"Video\": \"best\",\n // Set the audio stream which desc includes 'en'\n \"Audio\": \"desc:en\",\n // Enable On Demand\n \"OnDemand\": false,\n // Enable fragments download speed up (download all required fragments simultaneously to speed up start)\n \"SpeedUp\": true,\n // Autostart stream. For events, this will autostart the stream when in the on air range (time >= Start and time <= End)\n \"Autostart\": true,\n // For events, define UTC start and stop timestamp. They will be autostarted in the onAir window if Autostart or RecordEvent is true\n \"Start\": 1682631577,\n \"End\": 1682632577,\n // For events, define if the event must be recorded and become a replay (only works in direct/hls mode with internal remuxer)\n \"RecordEvent\": true\n },\n ...\n ]\n}")])], -1))]), '_': 1 })]), cfg27[72] || (cfg27[72] = StaticHTML("
", 1))])], 64)); } }, X4 = J(Q4, [ ["__scopeId", "data-v-3d97f87b"] ]), e5 = { 'name': "IconInfo" }, t5 = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function l5(v8193, v8194, v8195, v8196, v8197, v8198) { v8202 = { 'bYvab': function(v8203) { return v8203(); }, 'UVxQv': function(v8204, v8205, v8206, v8207) { return v8204(v8205, v8206, v8207); }, 'nMlJa': "svg", 'JmBeM': "path", 'aoZyJ': 'currentColor', 'GXyZN': "round", 'IAAJL': "M10 11h2v5m-2 0h4m-2.592-8.5h.01M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }; return openBlock(), v8202.UVxQv(createBlock, "svg", t5, [...v8194[0] || (v8194[0] = [e("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M10 11h2v5m-2 0h4m-2.592-8.5h.01M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z" }, null, -1)])]); } const o5 = J(e5, [ ["render", l5] ]), s5 = { 'class': "h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto relative transition-all ease-in-out border-white/15 border" }, a5 = { 'class': "flex flex-row gap-4 grow h-full" }, r5 = { 'class': "flex flex-col justify-between grow gap-1" }, n5 = { 'key': 0, 'class': "max-w-12 font-mono text-[10px] text-white bg-blue-600 rounded-sm p-0.5 px-1 text-center" }, i5 = { 'key': 1, 'class': "max-w-12 font-mono text-[10px] text-black bg-yellow-300 rounded-sm p-0.5 px-1 text-center" }, d5 = { 'class': "font-bold text-white" }, u5 = { 'key': 0, 'class': "text-white" }, c5 = { 'class': 'flex flex-col justify-start gap-2' }, m5 = { '__name': "ItemServer", 'props': .server, 'emits': ["onEditServer", "onDeleteServer", 'onGetServerInfo'], 'setup'(srv162, { emit: srv163 }) { srv166 = { 'fKqyk': 'JZbdG', 'CqTeP': function(v8208, v8209, v8210) { return v8208(v8209, v8210); }, 'leWan': "onGetServerInfo", 'FopBf': function(v8211, v8212, v8213) { return v8211(v8212, v8213); }, 'ubqKO': 'onEditServer', 'DVyVh': "onDeleteServer", 'kyNYg': function(srv167, srv168) { return srv167(srv168); } }, srv169 = srv162, srv170 = srv163, v8214 = Sidebar(() => srv169.server.Url ? "text-white" : "text-red-500"), v8215 = Sidebar(() => srv169.server.Id !== "local"), v8216 = () => { srv170("onGetServerInfo", srv169.server); }, v8217 = () => { srv170("onEditServer", srv169.server); }, srv171 = () => { srv170("onDeleteServer", srv169.server); }; return (srv172, srv173) => (openBlock(), createBlock("div", s5, [e("div", a5, [e("div", r5, [v8215.value ? (openBlock(), createBlock('div', n5, useAttrs(v8215.value ? "Remote" : ''), 1)) : (openBlock(), createBlock("div", i5, useAttrs(v8215.value ? "Remote" : "Local"), 1)), e("div", null, [e('p', d5, useAttrs(srv162.server.Name), 1), srv162.server.User && srv162.server.Password ? (openBlock(), createBlock('p', u5, useAttrs(srv162.server.User) + ':' + useAttrs(srv162.server.Password), 1)) : normalizeProps('', true)]), e('p', { 'class': classNames(["font-light text-xs", v8214.value]) }, useAttrs(srv162.server.Url ? srv162.server.Url : "No URL"), 3)]), e("div", c5, [v8215.value ? (openBlock(), createBlock("button", { 'key': 0, 'onClick': v8217, 'class': "p-1.5 rounded-full hover:bg-yellow-300 text-white hover:text-black transition ease-in-out" }, [createVNode(Jt)])) : normalizeProps('', true), v8215.value ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': srv171, 'class': "p-1.5 rounded-full hover:bg-red-700 transition ease-in-out" }, [createVNode(Ke, { 'class': "text-white" })])) : normalizeProps('', true), e("button", { 'onClick': v8216, 'class': "p-1.5 rounded-full hover:bg-yellow-300 text-white hover:text-black transition ease-in-out" }, [createVNode(o5)])])])])); } }, p5 = { 'class': 'flex grow gap-2 justify-between' }, v5 = { 'class': 'flex flex-col lg:flex-row gap-2 mt-5' }, f5 = { 'key': 0 }, g5 = { 'class': "grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-4 mt-4" }, h5 = { 'id': "add-edit-server", 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, b5 = { 'class': "relative p-4 w-full max-w-xl max-h-full" }, w5 = { 'class': 'relative rounded-xl shadow-xl bg-linear-to-b bg-black/75' }, x5 = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, y5 = { 'class': "text-lg font-semibold text-white" }, k5 = { 'class': "p-4 md:p-5" }, S5 = { 'class': "grid gap-4 mb-4 grid-cols-1" }, $5 = { 'class': 'flex flex-row justify-end gap-4 items-center' }, C5 = { '__name': "ServerView", 'setup'(v8218) { let v8247 = withCtx(null), v8248 = withCtx(); const v8249 = withCtx(null), v8250 = withCtx({ 'Name': '', 'Url': '', 'User': '', 'Password': '' }), usr66 = withCtx(false), usr67 = withCtx(), usr68 = withCtx({ 'text': '', 'error': false }), errRef151 = He(); let errRef152 = {}; const errRef153 = Sidebar(() => v8250."" !== ''), errRef154 = async v8251 => { const v8252 = await errRef151.getInfo(v8251); v8247.value = Object.entries(v8252).map(([v8253, v8254]) => v8253 + ': ' + v8254).join('\n'), v8248.value.toggleModal(); }, v8255 = async () => { const v8256 = await errRef151.testLogin(v8250."", v8250."", v8250.value.Password); console.log("result", v8256), v8256.status === 200 ? (usr68.value.text = "Connection successful - " + v8256.status, usr68.value.error = false) : (usr68.value.text = 'Connection failed - ' + (v8256.status ? v8256.status : v8256.message), usr68.value.error = true), usr68.value.result = setTimeout(() => { usr68.value.text = ''; }, 5000); }, v8257 = async () => { await errRef151.getAll(); }, v8258 = async () => { await errRef151.add(v8250), await v8257(), errRef152.hide(); }, v8259 = async () => { await errRef151.edit(v8250), await v8257(), errRef152.hide(); }, v8260 = async () => { await errRef151["delete"](v8250), await v8257(), usr67.value.toggleModal(); }, v8261 = v8262 => { (v8262 ? (usr66.value = true, v8249.value = v8262.Name, v8250.value = v8262) : (v8263(), usr66.value = false, v8249.value = null), errRef152.toggle()); }, v8263 = () => { v8250.value = { 'Name': '', 'Url': '', 'User': '', 'Password': '' }; }, usr69 = usr70 => { usr70 && (v8250.value = usr70), usr67.value.toggleModal(); }, usr71 = () => { errRef152.hide(); }, v8264 = () => { const v8265 = document.getElementById("add-edit-server"), v8266 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v8267 = { 'id': "add-edit-server", 'override': true }; errRef152 = new initFlowbite(v8265, v8266, v8267); }; return withDirectives(async () => { if ((false)) { modal62.value = "Error exporting provider.", modal63.value.toggleModal(); return; } else z_util(), v8264(), await v8257(); }), (modal64, modal65) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "Servers" }), e('div', p5, [e("div", v5, [createVNode(he, { 'Icon': Et, 'text': "Add Server", 'onClick': v8261 })])]), createTextVNode(errRef151).servers ? (openBlock(), createBlock("div", f5, [e('div', g5, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(createTextVNode(errRef151).servers, v8268 => (openBlock(), Modal(m5, { 'key': v8268.Id, 'server': v8268, 'onOnEditServer': v8261, 'onOnDeleteServer': usr69, 'onOnGetServerInfo': errRef154 }, null, 8, .server))), 128))])])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': wt, 'message': 'Currently there\x27s no servers.' })), e('div', h5, [e("div", b5, [e("div", w5, [e("div", x5, [e('h3', y5, useAttrs(usr66.value ? "Edit " + v8249.value : 'Add Server'), 1), e("button", { 'type': 'button', 'onClick': usr71, 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), modal65[5] || (modal65[5] = e("span", { 'class': 'sr-only' }, 'Close modal', -1))])]), e("div", k5, [e("div", S5, [e("div", null, [modal65[6] || (modal65[6] = e("label", { 'for': "name", 'class': "block mb-2 text-sm font-medium text-white" }, "Name", -1)), isRef(e('input', { 'onUpdate:modelValue': modal65[0] || (modal65[0] = updRef233 => v8250.value.Name = updRef233), 'type': "text", 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-servername", 'placeholder': 'Type a server name' }, null, 512), [ [Dropdown, v8250.""] ])]), e("div", null, [modal65[7] || (modal65[7] = e("label", { 'for': 'serverurl', 'class': "block mb-2 text-sm font-medium text-white" }, 'URL', -1)), isRef(e("input", { 'onUpdate:modelValue': modal65[1] || (modal65[1] = srv174 => v8250."" = srv174), 'type': "text", 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-serverurl", 'placeholder': "Type a server URL" }, null, 512), [ [Dropdown, v8250.""] ])]), e("div", null, [modal65[8] || (modal65[8] = e("label", { 'for': "user", 'class': "block mb-2 text-sm font-medium text-white" }, "User", -1)), isRef(e('input', { 'onUpdate:modelValue': modal65[2] || (modal65[2] = usr72 => v8250."" = usr72), 'type': 'text', 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-user", 'placeholder': "Type a user" }, null, 512), [ [Dropdown, v8250.""] ])]), e("div", null, [modal65[9] || (modal65[9] = e("label", { 'for': "password", 'class': "block mb-2 text-sm font-medium text-white" }, "Password", -1)), isRef(e("input", { 'onUpdate:modelValue': modal65[3] || (modal65[3] = updRef234 => v8250."" = updRef234), 'type': "text", 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': 'new-password', 'placeholder': "Type a password" }, null, 512), [ [Dropdown, v8250.""] ])]), createVNode(Alert, { 'enter-from-class': "opacity-0", 'leave-to-class': "opacity-0", 'enter-active-class': "transition duration-300", 'leave-active-class': 'transition duration-300' }, { 'default': withModifiers(() => [usr68.value.text ? (openBlock(), createBlock("span", { 'key': 0, 'class': classNames([{ 'text-green-400': !usr68.value.error, 'text-red-500': usr68.value.error }, "text-sm text-center font-semibold p-3 border border-white/15 rounded-xl my-auto"]) }, useAttrs(usr68.value.text), 3)) : normalizeProps('', true)]), '_': 1 })]), e("div", $5, [createVNode(ke, { 'disabled': !errRef153.value, 'class': "disabled:bg-red-700/15", 'text': "Test Connection", 'onClick': v8255 }, null, 8, .disabled), createVNode(ke, { 'text': "Cancel", 'onClick': usr71 }), createVNode(he, { 'text': usr66.value ? "Save" : 'Create', 'onClick': modal65[4] || (modal65[4] = creRef6 => usr66.value ? v8259() : v8258()), 'disabled': createTextVNode(errRef151).isLoading }, null, 8, ["text", 'disabled'])])])])])]), createVNode(gt, { 'ref_key': "deleteModal", 'ref': usr67, 'message': "Are you sure want to delete " + v8250."?", 'id': "delete", 'onClick': v8260 }, null, 8, .message), createVNode(st, { 'ref_key': "serverInfoModal", 'ref': v8248, 'message': createTextVNode(v8247), 'id': "serverInfoModal" }, null, 8, .message)], 64)); } }, M5 = {}, A5 = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': 'none', 'viewBox': "0 0 24 24" }; function I5(v8269, v8270) { v8275 = { 'VKleu': function(v8276) { return v8276(); }, 'HuDes': function(v8277, v8278, v8279, v8280) { return v8277(v8278, v8279, v8280); }, 'Dryax': "svg", 'WWncq': 'path', 'mFcMu': 'M18.5 12C18.5 13.3807 17.3807 14.5 16 14.5C14.6193 14.5 13.5 13.3807 13.5 12C13.5 10.6193 14.6193 9.5 16 9.5C17.3807 9.5 18.5 10.6193 18.5 12Z', 'ILuOs': "currentColor", 'AKmuo': function(v8281, v8282, v8283, v8284, v8285) { return v8281(v8282, v8283, v8284, v8285); }, 'ujkRR': 'M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z', 'bsqDK': "M10.5 12C10.5 13.3807 9.38071 14.5 8 14.5C6.61929 14.5 5.5 13.3807 5.5 12C5.5 10.6193 6.61929 9.5 8 9.5C9.38071 9.5 10.5 10.6193 10.5 12Z", 'WnioJ': "M8 14.5H16", 'SWfxL': 'round' }; return openBlock(), v8275.HuDes(createBlock, "svg", A5, [...v8270[0] || (v8270[0] = [e("path", { 'd': "M18.5 12C18.5 13.3807 17.3807 14.5 16 14.5C14.6193 14.5 13.5 13.3807 13.5 12C13.5 10.6193 14.6193 9.5 16 9.5C17.3807 9.5 18.5 10.6193 18.5 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), v8275.AKmuo(e, "path", { 'd': "M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), e("path", { 'd': "M10.5 12C10.5 13.3807 9.38071 14.5 8 14.5C6.61929 14.5 5.5 13.3807 5.5 12C5.5 10.6193 6.61929 9.5 8 9.5C9.38071 9.5 10.5 10.6193 10.5 12Z", 'stroke': "currentColor", 'stroke-width': '2' }, null, -1), e("path", { 'd': "M8 14.5H16", 'stroke': "currentColor", 'stroke-width': '2', 'stroke-linecap': "round" }, null, -1)])]); } const xo = J(M5, [ ["render", I5] ]), T5 = { 'class': "flex flex-row gap-2 h-full" }, P5 = { 'class': "flex flex-col flex-1 gap-3" }, V5 = { 'class': "flex gap-2" }, U5 = { 'class': "flex" }, _5 = { 'class': "font-bold text-white break-words" }, E5 = { 'class': 'font-medium text-xs text-white max-h-12 overflow-x-scroll no-scrollbar' }, L5 = { 'class': 'flex flex-1 gap-2 justify-between items-end' }, D5 = { 'class': "font-medium text-white text-xs bold" }, G5 = { 'class': "font-medium text-white text-xs bold" }, R5 = { 'class': "w-full bg-white/15 rounded-full h-1.5" }, N5 = { '__name': "ItemEpg", 'props': ["epg", 'all', "provider", "serverId", "isAdmin"], 'emits': ["onStartRecording", 'onPlayStream', "onFilterStream"], 'setup'(stream357, { emit: stream358 }) { v8314 = stream357, v8315 = stream358, v8316 = Sidebar(() => { const v8317 = Math.floor((Date.now() / 1000)); return (v8317 >= v8314.epg.Start) && v8317 <= v8314.epg.End; }), epg56 = Sidebar(() => { const epg57 = Math.floor((Date.now() / 1000)), v8318 = (v8314.epg.End - v8314.epg.Start), v8319 = (epg57 >= v8314.epg.Start) ? (epg57 - v8314.epg.Start) : 0; if ((v8318 > 0)) { let v8320 = ((v8319 / v8318) * 100); return (v8320 > 100) ? 100 : v8320; } else return 0; }), v8321 = () => { (false) ? v8322.push({ 'name': "logs", 'params': { 'provider': stream362.provider, 'stream': stream363.stream.Id }, 'query': { 'server': stream364.serverId } }) : me.push({ 'name': "config", 'params': { 'provider': v8314.provider, 'type': v8314.epg.StreamType }, 'query': { 's': v8314.epg.StreamId + '$', 'server': v8314.serverId } }); }, srv175 = () => { v8315("onStartRecording", v8314.epg); }, epg58 = () => { v8315("onPlayStream", v8314.epg.StreamId); }, epg59 = epg60 => { v8315("onFilterStream", epg60); }; return (epg61, epg62) => (openBlock(), createBlock("div", { 'class': classNames([{ 'from-white/15 to-black/25': v8316.value }, 'h-full bg-linear-to-tr bg-black hover:from-white-100 p-3 rounded-xl shadow-lg overflow-auto transition-all ease-in-out border-white/15 border']) }, [e("div", T5, [e("div", P5, [e('div', { 'class': classNames(["flex gap-2", { 'justify-between': stream357.all, 'justify-end': !stream357.all }]) }, [stream357.all ? (openBlock(), createBlock('p', { 'key': 0, 'class': "font-bold text-xs text-yellow-300 break-words cursor-pointer hover:opacity-75 transition-opacity" }, useAttrs(stream357.epg.ChannelName), 1)) : normalizeProps('', true), e('div', V5, [createVNode(Il, { 'isLive': v8316.value }, null, 8, .isLive), stream357.epg.StreamType !== 'fevent' ? (openBlock(), Modal(xo, { 'key': 0, 'onClick': srv175, 'class': "text-white hover:text-yellow-300 cursor-pointer h-5 w-5 transition-colors" })) : normalizeProps('', true), stream357.isAdmin && stream357.epg.StreamType !== "fevent" ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': v8321, 'class': "hover:text-yellow-300 rounded-full text-white transition-all ease-in-out" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true), v8316.value ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': epg58, 'class': "text-white hover:text-yellow-300 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true)])], 2), e("div", U5, [e('p', _5, useAttrs(stream357.epg.Title), 1)]), e('p', E5, useAttrs(stream357.epg.Description), 1), e("div", L5, [e('span', D5, useAttrs(createTextVNode(de).formatDate(stream357.epg.Start)), 1), e('span', G5, useAttrs(createTextVNode(de).formatDate(stream357.epg.End)), 1)]), e("div", null, [e("div", R5, [e("div", { 'class': "bg-linear-to-r from-yellow-300 to-yellow-400 h-1.5 rounded-full", 'style': Avatar("width:" + epg56.value + '%') }, null, 4)])])])])], 2)); } }, j5 = {}, O5 = { 'class': "w-14 h-14 text-white", 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function B5(v8324, v8325) { v8329 = { 'EEmCu': function(v8330, v8331, v8332, v8333) { return v8330(v8331, v8332, v8333); }, 'UEmYy': "svg", 'CLnFX': function(v8334, v8335, v8336, v8337, v8338) { return v8334(v8335, v8336, v8337, v8338); }, 'LJMRx': "path", 'Koayx': "currentColor", 'pmFzQ': "round", 'uzZEJ': "M11 9h6m-6 3h6m-6 3h6M6.996 9h.01m-.01 3h.01m-.01 3h.01M4 5h16a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z" }; return openBlock(), v8329.EEmCu(createBlock, "svg", O5, [...v8325[0] || (v8325[0] = [v8329.CLnFX(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': 'round', 'stroke-width': '2', 'd': "M11 9h6m-6 3h6m-6 3h6M6.996 9h.01m-.01 3h.01m-.01 3h.01M4 5h16a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1Z" }, null, -1)])]); } const H5 = J(j5, [ ["render", B5] ]), F5 = { 'class': "px-6 py-4" }, q5 = { 'class': "px-6 py-4 max-w-xs" }, W5 = { 'class': "px-6 py-4 max-w-xs" }, z5 = { 'class': "text-white" }, Z5 = { 'class': "px-6 py-2 max-w-sm" }, K5 = { 'class': "text-white overflow-x-scroll no-scrollbar max-h-14" }, J5 = { 'class': "px-6 py-4" }, Y5 = { 'class': "font-bold whitespace-nowrap" }, Q5 = { 'class': "px-6 py-4" }, X5 = { 'class': 'font-bold whitespace-nowrap' }, e3 = { 'class': "px-6 py-4" }, t3 = { 'class': 'font-bold whitespace-nowrap' }, l3 = { 'class': 'px-6 py-4' }, o3 = { 'class': "flex gap-4 items-center" }, s3 = { '__name': "ItemTableEpg", 'props': ["epg", "provider", 'serverId', "isAdmin"], 'emits': ["onPlayStream", 'onFilterStream'], 'setup'(stream365, { emit: stream366 }) { v8367 = stream365, v8368 = stream366; Be(), withCtx(v8367.selected); const v8369 = Sidebar(() => { const v8370 = Math.floor((Date.now() / 1000)); return (v8370 >= v8367.epg.Start) && (v8370 <= v8367.epg.End); }), v8371 = () => { if ((false)) { const v8372 = prov314.currentRoute.value.params.provider || prov315.getSelectedProviderId; v8372 ? prov316.setCurrentSelectedProvider(v8372) : prov317.setDefaultCurrentSelectedProvider(), prov318(); } else v8368("onStartRecording", v8367.epg); }, prov319 = () => { me.push({ 'name': "config", 'params': { 'provider': v8367.provider, 'type': v8367.epg.StreamType }, 'query': { 's': v8367.epg.StreamId + '$', 'server': v8367.serverId } }); }, srv176 = () => { (false) ? this.isLoading = false : v8368("onPlayStream", v8367.epg.StreamId); }, return (v8380, v8381) => (openBlock(), createBlock('tr', { 'class': classNames([{ 'from-white/15 to-black/25': v8369.value }, "bg-linear-to-tr bg-black border-t border-white/15 text-white"]) }, [e('td', F5, [createVNode(Il, { 'isLive': v8369.value }, null, 8, .isLive)]), e('td', q5, [e('span', { 'class': "font-bold text-yellow-300 cursor-pointer hover:opacity-75" }, useAttrs(stream365.epg.ChannelName), 1)]), e('td', W5, [e("span", z5, useAttrs(stream365.epg.Title), 1)]), e('td', Z5, [e("div", K5, useAttrs(stream365.epg.Description), 1)]), e('td', J5, [e("span", Y5, useAttrs(createTextVNode(de).formatDate(stream365.epg.Start)), 1)]), e('td', Q5, [e("span", X5, useAttrs(createTextVNode(de).formatDate(stream365.epg.End)), 1)]), e('td', e3, [e("span", t3, useAttrs(stream365.epg.EpgId), 1)]), e('td', l3, [e("div", o3, [stream365.epg.StreamType !== "fevent" ? (openBlock(), Modal(xo, { 'key': 0, 'onClick': v8371, 'class': "text-white hover:text-yellow-300 cursor-pointer h-5 w-5 transition-colors" })) : normalizeProps('', true), stream365.isAdmin && stream365.epg.StreamType !== "fevent" ? (openBlock(), createBlock("button", { 'key': 1, 'onClick': prov319, 'class': "hover:text-yellow-300 rounded-full text-white my-auto transition-all ease-in-out p-0.5" }, [createVNode(xt, { 'class': "w-5 h-5" })])) : normalizeProps('', true), v8369.value ? (openBlock(), createBlock("button", { 'key': 2, 'onClick': srv176, 'class': "text-white hover:text-yellow-300 rounded-full transition-all ease-in-out" }, [createVNode(Ie)])) : normalizeProps('', true)])])], 2)); } }, a3 = { 'class': "overflow-x-auto shadow-md rounded-xl mt-5 border border-white/15" }, r3 = { 'class': 'w-full text-sm text-left rtl:text-right text-neutral-400' }, n3 = { '__name': "TableEpg", 'props': ['epgs', "provider", "serverId", "isAdmin"], 'emits': ["onStartRecording", 'onPlayStream', 'onFilterStream'], 'setup'(stream371, { emit: stream372 }) { v8383 = { 'jsPPR': function(v8384, v8385, v8386) { return v8384(v8385, v8386); }, 'LUkqx': "onStartRecording", 'RErPf': "onPlayStream", 'rEJaJ': function(v8387, v8388, v8389) { return v8387(v8388, v8389); }, 'EqmBS': "onFilterStream" }, v8390 = stream372, v8391 = v8392 => { v8390("onStartRecording", v8392); }, v8393 = v8394 => { v8383.jsPPR(v8390, "onPlayStream", v8394); }, v8395 = v8396 => { v8390("onFilterStream", v8396); }; return (v8397, v8398) => (openBlock(), createBlock('div', a3, [e("table", r3, [v8398[0] || (v8398[0] = e('thead', { 'class': "text-xs text-yellow-300 uppercase bg-black" }, [e('tr', null, [e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }), e('th', { 'scope': "col", 'class': 'px-6 py-3 font-bold' }, "Stream"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Title"), e('th', { 'scope': 'col', 'class': 'px-6 py-3 font-bold' }, "Description"), e('th', { 'scope': "col", 'class': 'px-6 py-3 font-bold' }, 'Start'), e('th', { 'scope': 'col', 'class': "px-6 py-3 font-bold" }, "End"), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, 'EPG ID'), e('th', { 'scope': "col", 'class': "px-6 py-3 font-bold" }, "Actions")])], -1)), e("tbody", null, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(stream371.epgs, epg63 => (openBlock(), Modal(s3, { 'key': createTextVNode(de).generateRandomString(10), 'serverId': stream371.serverId, 'epg': epg63, 'isAdmin': stream371.isAdmin, 'provider': stream371.provider, 'onOnStartRecording': v8391, 'onOnPlayStream': v8393, 'onOnFilterStream': v8395 }, null, 8, ["serverId", "epg", "isAdmin", "provider"]))), 128))])])])); } }, i3 = { 'class': 'flex lg:flex-row flex-col gap-2 justify-between' }, d3 = { 'class': "flex flex-col lg:flex-row gap-2" }, u3 = { 'key': 0, 'class': "flex lg:flex-row flex-col gap-2" }, c3 = { 'key': 0, 'class': "flex" }, m3 = { 'class': "flex gap-2 justify-between items-center" }, p3 = { 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, v3 = { 'id': "dl-url-epg-all", 'class': "hidden" }, f3 = { 'id': "copy-clipboard-button-epg-all", 'class': 'text-white hover:text-yellow-300 rounded-xl p-1 flex flex-col flex-1 items-end transition-all' }, g3 = { 'id': "default-icon-epg-all" }, h3 = { 'id': "success-icon-epg-all", 'class': "hidden items-center" }, b3 = { 'class': "flex gap-2 text-white hover:bg-neutral-50/10 rounded-xl items-center cursor-pointer transition-colors" }, w3 = .id, x3 = .id, y3 = .id, k3 = .id, S3 = { 'key': 0 }, $3 = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-3 2xl:grid-cols-4 gap-4 mt-4" }, C3 = { 'id': 'add-recording', 'tabindex': '-1', 'aria-hidden': "true", 'class': "hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full" }, M3 = { 'class': "relative p-4 w-full max-w-md max-h-full" }, A3 = { 'class': "relative rounded-xl shadow-xl bg-black" }, I3 = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, T3 = { 'class': "p-4 md:p-5" }, P3 = { 'class': 'grid space-y-4 grid-cols-1' }, V3 = { 'class': 'col-span-2 space-y-2' }, U3 = { 'class': "columns-2" }, _3 = { 'class': "relative max-w-sm" }, E3 = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none" }, L3 = { 'class': "relative max-w-sm" }, D3 = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, G3 = { 'class': 'col-span-2 columns-2' }, R3 = { 'class': "relative max-w-sm" }, N3 = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3.5 pointer-events-none" }, j3 = { 'class': "relative max-w-sm" }, O3 = { 'class': "absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none" }, B3 = { 'key': 0, 'class': 'w-full' }, H3 = .value, F3 = { 'class': "flex flex-row justify-end gap-4 mt-5" }, q3 = { '__name': 'EpgView', 'setup'(epg64) { v8518 = Ae(), v8519 = Le(), v8520 = He(), v8521 = wo(), v8522 = go(), v8523 = Be(), v8524 = withCtx(''), v8525 = withCtx("best"); let v8526 = withCtx([]), v8527 = renderList({}); const v8528 = withCtx(''), v8529 = withCtx([]); let v8530 = {}, v8531 = withCtx({}); const v8532 = withCtx(''), v8533 = withCtx(); let v8534 = withCtx(null), v8535 = withCtx(I.getViewMode().epg === "list"); const v8536 = withCtx(), v8537 = withCtx(), v8538 = withCtx(), v8539 = withCtx(), v8540 = withCtx(), v8541 = withCtx({ 'currentPage': 1, 'rowsPerPage': 84 }), v8542 = Sidebar(() => v8523.isAdmin), v8543 = v8544 => v8544.LogoUrl.startsWith('http') ? v8544.LogoUrl : v8544.LogoUrl.startsWith("/logos") ? '' + I.getAppUrl() + v8544.LogoUrl + "?token=" + Me.getToken() : null, v8545 = Sidebar(() => { if (v8526.value.length) { const v8546 = v8526.value.map(v8547 => ({ 'label': v8547.Name, 'value': v8547.Id, 'logo': v8543(v8547) })); return v8546.unshift({ 'label': "All", 'value': '' }), v8546; } return []; }), v8548 = Sidebar(() => { if (v8521.availableDates.length) { if ((true)) { const v8549 = v8521.availableDates.map(v8550 => ({ 'label': dayjs(v8550).format("DD MMM YYYY"), 'value': v8550 })); return v8549.unshift({ 'label': "All", 'value': '' }), v8549; } else this.error = v8551, this.notificationStore.showNotification(this.error, "error"); } return []; }), v8552 = v8553 => { v8541.value.currentPage = v8553; }, v8554 = Sidebar(() => { const v8555 = ((v8541.value.currentPage - 1) * v8541.value.rowsPerPage), v8556 = (v8555 + v8541.value.rowsPerPage); return v8521.epg && v8521.epg.length > 0 ? v8521.epg ? v8521.epg.slice(v8555, v8556) : [] : []; }), epg72 = epg73 => { v8524.value = epg73; }, epg74 = async () => { const epg75 = { 'gbHjz': "svg", 'fDrid': function(v8557, v8558, v8559) { return v8557(v8558, v8559); } }; if ((true)) v8560(), v8561(), v8521.epg = [], v8524.value = '', await v8562(), await v8563(), await v8564(); else return v8565(), v8566(epg75.gbHjz, v8567, [...v8568[0] || (v8569[0] = [epg75.fDrid(v8570, "", 12)])]); }, v8563 = async () => { await me.replace({ 'name': "epg", 'params': { 'provider': v8518.getSelectedProviderId, 'stream': v8524.value }, 'query': { 'server': v8520.getSelectedServer.Id } }) }, stream376 = async () => { if ((true)) { const srv177 = me.currentRoute.value.params.provider || v8518.getSelectedProviderId; if (srv177 ? v8518.setCurrentSelectedProvider(srv177) : v8518.setDefaultCurrentSelectedProvider(), me.currentRoute.value.params.stream) { const stream377 = me.currentRoute.value.params.stream; v8524.value = stream377; } await v8563(), await v8564(), await v8576(); } else { if (v8577.target.type === 'textarea' && v8578.target.className === '' || v8579.target.id.includes("keys-poppin")) { const v8580 = v8581.getSelection(); v8582.clipboardData.setData("text/plain", v8580.toString().replaceAll(' ', '\n')), v8583.preventDefault(); } } }; Carousel(v8524, async () => { if ((true)) v8561(), await v8563(), await v8576(), await v8564(), (v8527.Type !== "fevent") && await v8585(); else { if (v8586.value = v8587.target.files[0], v8588.value) { const v8589 = new v8590(); v8589.onload = v8591 => { v8592.value = v8591.target.result; }, v8589.readAsText(v8593.value); } } }), Carousel(v8528, Rating(() => { if ((false)) return v8594(), v8595("svg", v8596, [...v8597[0] || (v8598[0] = [v8599("path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "M4 15v2a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-2m-8 1V4m0 12-4-4m4 4 4-4" }, null, -1)])]); else v8561(), v8564(); }, 500)), Carousel(v8532, () => { v8564(); }); const prov320 = () => { v8518.getAllProviders(); }, v8562 = async () => { if ((true)) v8526.value = [], v8518.getSelectedProviderId !== '' ? (await v8519.getStreams(v8518.getSelectedProviderId, "linear,event,fevent"), v8526.value = v8519.streams) : v8524.value = null; else return (prov321, prov322) => (prov323(), prov324('div', { 'class': v8600(["flex p-6 mb-4 bg-black rounded-xl border border-white/15", { 'h-[25vh] my-5': !v8601.small }]) }, [v8602("div", v8603, [v8604(v8605(v8606.Icon), { 'class': 'mx-auto text-white' }), v8607('p', v8608, v8609(v8610.message), 1)])], 2)); }, v8576 = async () => { (true) ? v8527 = await v8519.getStream(v8518.getSelectedProviderId, v8524.value) : (v8611.value = "Are you sure want to delete " + v8612.value + ' ?', v8613.value.toggleModal()); }, v8564 = async () => { const v8614 = { 'YWnPn': function(v8615, v8616, v8617, v8618, v8619, v8620) { return v8615(v8616, v8617, v8618, v8619, v8620); }, 'GkTwT': "all" }; if ((true)) { const v8621 = dayjs.tz.guess(); await v8521.getEpg(v8518.getSelectedProviderId, v8524.value, v8621, v8532.value, v8528.value); } else v8614.YWnPn(prov325, prov326.value, prov327.value, prov328, v8614.GkTwT, v8622.value); }, v8585 = async () => { const v8623 = { 'YPfUb': "error" }, prov329 = (await v8522.getStatus(v8518.getSelectedProviderId, v8524.value))[0]; if (prov329.AvailableQualities) { const prov330 = prov329.AvailableQualities; if (prov330) { if ((false)) this.error = errRef159, this.notificationStore.showNotification(this.error, v8623.YPfUb); else { v8529.value = []; for (const errRef160 of prov330) v8529.value.push({ 'Id': errRef160.Id, 'Desc': errRef160.Desc }); } } else v8529.value = []; } else v8529.value = []; }, v8624 = async () => { const v8625 = { 'OVTNf': function(v8626, v8627) { return (v8626 !== v8627); } }; if ((false)) { const v8628 = v8629.value.findIndex(v8630 => v8630.Id === v8631.Id); v8625.OVTNf(v8628, -1) ? v8632.value.splice(v8628, 1) : v8633.value.push({ 'Id': v8634.Id, 'Name': v8635.Name }); } else { const v8636 = dayjs.tz(v8537.value.value + ' ' + v8539.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), v8637 = dayjs.tz(v8538.value.value + ' ' + v8540.value.value, "DD/MM/YYYY HH:mm", dayjs.tz.guess()).unix(), prov331 = { 'ProviderId': v8518.getSelectedProviderId, 'StreamId': v8531.value.StreamId, 'Start': v8636, 'End': v8637, 'VideoId': v8525.value, 'Title': v8531.value.Title, 'Description': v8531.value.Description }; await v8522.add(prov331), v8638(); } }, v8639 = v8640 => { (true) ? (v8531.value = v8640, v8641(), v8530.show()) : this.isLoading = false; }, v8641 = () => { const v8647 = dayjs.unix(v8531.value.Start), v8648 = dayjs.unix(v8531.value.End), v8649 = v8647.format("DD/MM/YYYY"), v8650 = v8648.format("DD/MM/YYYY"), v8651 = v8647.format("HH:mm"), v8652 = v8648.format("HH:mm"); v8537.value.value = v8649, v8538.value.value = v8650, v8539.value.value = v8651, v8540.value.value = v8652; }, v8638 = () => { v8530.hide(); }, rec107 = () => { const rec108 = document.getElementById('add-recording'), rec109 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': true }, v8653 = { 'id': "add-recording", 'override': true }; v8530 = new initFlowbite(rec108, rec109, v8653); }, v8561 = () => { v8541.value.currentPage = 1; }, v8560 = () => { v8528.value = ''; }, v8654 = async () => { if ((true)) { const prov332 = await v8521.refreshEpg(v8518.getSelectedProviderId); prov332.data && (v8534.value = prov332.data.Message, v8533.value.toggleModal()); } else this.wsClient && (this.wsClient.close(), this.wsClient = null); if ((true)) { const v8657 = document.createElement('a'); v8657.href = I.getAppUrl() + "/epg/" + v8656 + ".xml?token=" + Me.getToken(), v8657.target = "_blank", v8657.download = v8518.getSelectedProviderId + '.xml', v8657.click(); } else KSJOrm.hynnm(v8658, '0'); }, v8659 = v8660 => '' + (I.isRemote ? '' : window.location.protocol) + I.getAppUrl() + "/epg/" + v8660 + ".xml.gz?token=" + Me.getToken(), v8661 = () => { v8519.resetStreams(), prov320(), v8562(); }, v8662 = async v8663 => { if ((false)) v8664.hide(); else { const stream378 = await v8519.getStream(v8518.getSelectedProviderId, v8663); stream378 && v8536.value.playStream(stream378.StreamingUrl[0].Url); } }, stream379 = stream380 => { const stream381 = { 'lcmIC': function(stream382) { return stream382(); }, 'fePcl': function(v8665, v8666, v8667) { return v8665(v8666, v8667); }, 'lCAKu': "kZELL", 'iVVel': function(v8668) { return v8668(); } }, v8669 = document.getElementById("copy-clipboard-button-epg-" + stream380), v8670 = document.getElementById("dl-url-epg-" + stream380), v8671 = document.getElementById("default-icon-epg-" + stream380), elRef48 = document.getElementById("success-icon-epg-" + stream380), elRef49 = { 'contentType': "textContent", 'htmlEntities': false, 'onCopy': () => { const elRef50 = { 'zuAXp': function(v8672, v8673) { return v8672 * v8673; }, 'lNumQ': function(v8674, v8675) { return (v8674 - v8675); }, 'PhkGo': function(v8676, v8677) { return (v8676 + v8677); }, 'jIQQj': function(v8678, v8679) { return (v8678 > v8679); } }; if ((true)) v8680(), setTimeout(() => { v8690() }, 2000); else { const v8691 = elRef50.zuAXp(elRef50.lNumQ(v8692.value.currentPage, 1), v8693.value.rowsPerPage), v8694 = elRef50.PhkGo(v8691, v8695.value.rowsPerPage); return v8696.streams && elRef50.jIQQj(v8697.streams.Providers?..length, 0) ? prov333.streams?..Providers[0].Streams ? prov334.streams?..Providers[0].Streams.slice(v8691, v8694) : [] : []; } } }, v8680 = () => { v8671.classList.add('hidden'), elRef48.classList.remove("hidden"); }, v8690 = () => { v8671.classList.remove("hidden"), elRef48.classList.add("hidden"); }; new Tooltip(v8669, v8670, elRef49); }; return withDirectives(async () => { await stream376(), await v8562(), rec107(), stream379("all"), stream379(v8518.getSelectedProviderId); }), (prov335, prov336) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': "mb-5", 'text': "EPG" }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v8536 }, null, 512), createVNode(Kt, { 'onOnProviderSelected': epg74, 'onOnServerChanged': v8661 }), e("div", i3, [e("div", d3, [createVNode(ut, { 'placeholder': "Search for title or description", 'modelValue': v8528.value, 'onUpdate:modelValue': prov336[0] || (prov336[0] = updRef235 => v8528.value = updRef235) }, null, 8, .modelValue), createTextVNode(v8518).getSelectedProviderId && createTextVNode(v8526).length ? (openBlock(), createBlock("div", u3, [createVNode(Ee, { 'data': v8545.value, 'id': "providers-streams", 'modelValue': v8524.value, 'onUpdate:modelValue': prov336[1] || (prov336[1] = updRef236 => v8524.value = updRef236) }, null, 8, ["data", "modelValue"]), createTextVNode(v8521).availableDates.length ? (openBlock(), createBlock("div", c3, [createVNode(Ee, { 'data': v8548.value, 'id': "date", 'modelValue': v8532.value, 'onUpdate:modelValue': prov336[2] || (prov336[2] = updRef237 => v8532.value = updRef237), 'logos-disabled': '' }, null, 8, ["data", "modelValue"])])) : normalizeProps('', true)])) : normalizeProps('', true), createTextVNode(v8521).isLoading ? (openBlock(), Modal(cl, { 'key': 1 })) : normalizeProps('', true)]), e("div", m3, [v8542.value ? (openBlock(), Modal(he, { 'key': 0, 'onClick': v8654 }, { 'default': withModifiers(() => [createVNode(ot, { 'class': classNames({ 'animate-spin': createTextVNode(v8521).isRefreshingEpg }) }, null, 8, ["class"]), prov336[12] || (prov336[12] = toDisplayString(" Refresh EPG ", -1))]), '_': 1 })) : normalizeProps('', true), createVNode(Ht, { 'id': "epg", 'name': "XMLTV", 'Icon': It }, { 'default': withModifiers(() => [e('li', p3, [e('button', { 'class': "p-1.5 text-sm capitalize" }, " All "), e('span', v3, useAttrs(v8659("all")), 1), e('button', f3, [e('span', g3, [createVNode(Ye)]), e("span", h3, [createVNode(Qe)])])]), e('li', b3, [e("button", { 'class': 'p-1.5 text-sm capitalize' }, useAttrs(createTextVNode(v8518).getSelectedProviderId), 1), e('span', { 'id': "dl-url-epg-" + createTextVNode(v8518).getSelectedProviderId, 'class': 'hidden' }, useAttrs(v8659(createTextVNode(v8518).getSelectedProviderId)), 9, w3), e("button", { 'id': "copy-clipboard-button-epg-" + createTextVNode(v8518).getSelectedProviderId, 'class': "text-white hover:text-yellow-300 rounded-xl p-1 flex flex-col flex-1 items-end transition-all" }, [e('span', { 'id': 'default-icon-epg-' + createTextVNode(v8518).getSelectedProviderId }, [createVNode(Ye)], 8, y3), e("span", { 'id': "success-icon-epg-" + createTextVNode(v8518).getSelectedProviderId, 'class': 'hidden items-center' }, [createVNode(Qe)], 8, k3)], 8, x3)])]), '_': 1 })])]), createVNode(tl, { 'totalItems': createTextVNode(v8521).epg.length, 'currentPage': v8541.value.currentPage, 'totalPages': Math.ceil((createTextVNode(v8521).epg.length ?? 0) / v8541.value.rowsPerPage) || 1, 'onOnPageChange': v8552 }, null, 8, ["totalItems", "currentPage", "totalPages"]), createTextVNode(v8521).epg.length ? (openBlock(), createBlock("div", S3, [createVNode(Al, { 'modelValue': createTextVNode(v8535), 'onUpdate:modelValue': prov336[5] || (prov336[5] = epg76 => onMounted(v8535) ? v8535.value = epg76 : v8535 = epg76), 'type': "epg" }, null, 8, .modelValue), createTextVNode(v8535) ? (openBlock(), Modal(n3, { 'key': 0, 'epgs': v8554.value, 'serverId': createTextVNode(v8520).getSelectedServer.Id, 'provider': createTextVNode(v8518).getSelectedProviderId, 'isAdmin': v8542.value, 'onOnStartRecording': v8639, 'onOnPlayStream': v8662, 'onOnFilterStream': epg72 }, null, 8, ["epgs", "serverId", "provider", "isAdmin"])) : normalizeProps('', true), createTextVNode(v8535) ? normalizeProps('', true) : (openBlock(), createBlock('div', $3, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v8554.value, v8700 => (openBlock(), Modal(N5, { 'key': createTextVNode(de).generateRandomString(10), 'epg': v8700, 'serverId': createTextVNode(v8520).getSelectedServer.Id, 'all': v8524.value === '', 'provider': createTextVNode(v8518).getSelectedProviderId, 'isAdmin': v8542.value, 'onOnStartRecording': v8639, 'onOnPlayStream': v8662, 'onOnFilterStream': epg72 }, null, 8, ["epg", "serverId", "all", "provider", "isAdmin"]))), 128))]))])) : !createTextVNode(v8521).isLoading && !v8554.value.length ? (openBlock(), Modal(Fe, { 'key': 1, 'Icon': H5, 'message': 'No EPG available.' })) : normalizeProps('', true), e("div", C3, [e("div", M3, [e('div', A3, [e("div", I3, [prov336[14] || (prov336[14] = e('h3', { 'class': "text-lg font-semibold text-white" }, " Add Recording ", -1)), e('button', { 'type': "button", 'class': "text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center" }, [createVNode(Re), prov336[13] || (prov336[13] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("div", T3, [e("div", P3, [e('div', V3, [prov336[15] || (prov336[15] = e("label", { 'class': 'block mb-2 text-sm font-medium text-white' }, "Title", -1)), isRef(e('input', { 'type': "text", 'onUpdate:modelValue': prov336[7] || (prov336[7] = updRef238 => createTextVNode(v8531).Title = updRef238), 'class': "block w-full -ps-2 py-1.5 border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Title" }, null, 512), [ [Dropdown, createTextVNode(v8531).Title] ]), prov336[16] || (prov336[16] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Description", -1)), isRef(e('input', { 'type': "text", 'onUpdate:modelValue': prov336[8] || (prov336[8] = updRef239 => createTextVNode(v8531).Description = updRef239), 'class': 'block w-full -ps-2 py-1.5 border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'placeholder': "Description" }, null, 512), [ [Dropdown, createTextVNode(v8531).Description] ])]), e('div', U3, [e("div", null, [prov336[17] || (prov336[17] = e('label', { 'class': "block mb-2 text-sm font-medium text-white" }, 'Start date', -1)), e("div", _3, [e("div", E3, [createVNode(Wt)]), e("input", { 'ref_key': "startDate", 'ref': v8537, 'id': 'start-date', 'datepicker': '', 'type': "text", 'value': '', 'class': "border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "Start date" }, null, 512)])]), e("div", null, [prov336[18] || (prov336[18] = e('label', { 'for': "start-time", 'class': 'block mb-2 text-sm font-medium text-white' }, 'Start time', -1)), e("div", L3, [e("div", D3, [createVNode(bt)]), e("input", { 'ref_key': "startTime", 'ref': v8539, 'type': 'time', 'id': "start-time", 'value': '', 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512)])])]), e("div", G3, [e("div", null, [prov336[19] || (prov336[19] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "End date", -1)), e("div", R3, [e('div', N3, [createVNode(Wt)]), e("input", { 'ref_key': "endDate", 'ref': v8538, 'id': "end-date", 'datepicker': '', 'type': "text", 'value': '', 'class': "border text-white text-sm rounded-xl block w-full ps-10 p-2.5 bg-black border-white/15 placeholder-neutral-400 focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': 'End date' }, null, 512)])]), e("div", null, [prov336[20] || (prov336[20] = e("label", { 'for': 'start-time', 'class': "block mb-2 text-sm font-medium text-white" }, "End time", -1)), e("div", j3, [e("div", O3, [createVNode(bt)]), e('input', { 'ref_key': "endTime", 'ref': v8540, 'type': "time", 'id': "end-time", 'value': '', 'class': "border text-white text-sm rounded-xl block w-full p-2.5 bg-black border-white/15 focus:ring-yellow-300 focus:border-yellow-300" }, null, 512)])])]), v8524.value !== null ? (openBlock(), createBlock('div', B3, [prov336[22] || (prov336[22] = e("label", { 'class': "block mb-2 text-sm font-medium text-white" }, "Quality", -1)), isRef(e("select", { 'id': "type", 'onUpdate:modelValue': prov336[9] || (prov336[9] = updRef240 => v8525.value = updRef240), 'class': "bg-black border border-white/15 text-sm rounded-xl block px-3 py-2 placeholder-neutral-400 text-white w-full focus:ring-yellow-300 focus:border-yellow-300" }, [prov336[21] || (prov336[21] = e("option", { 'selected': '', 'value': "best" }, "Best", -1)), (openBlock(true), createBlock(Fragment, null, createCommentVNode(v8529.value, selRef33 => (openBlock(), createBlock('option', { 'selected': '', 'value': selRef33.Id, 'key': selRef33 }, useAttrs(selRef33.Desc), 9, H3))), 128))], 512), [ [onUnmounted, v8525.value] ])])) : normalizeProps('', true)]), e("div", F3, [createVNode(ke, { 'text': "Cancel", 'onClick': prov336[10] || (prov336[10] = creRef7 => v8638()) }), createVNode(he, { 'text': 'Create', 'onClick': prov336[11] || (prov336[11] = creRef8 => v8624()) })])])])])]), createVNode(st, { 'ref_key': "informationModal", 'ref': v8533, 'message': createTextVNode(v8534), 'id': 'informationModal', 'onConfirmation': v8564 }, null, 8, .message)], 64)); } }, W3 = {}, z3 = { 'class': "w-14 h-14 text-white", 'aria-hidden': 'true', 'xmlns': 'http://www.w3.org/2000/svg', 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Z3(v8702, v8703) { v8705 = { 'GCWOH': function(v8706) { return v8706(); }, 'YvvEa': function(v8707, v8708, v8709, v8710) { return v8707(v8708, v8709, v8710); }, 'rcFvx': "svg", 'Edprd': function(v8711, v8712, v8713, v8714, v8715) { return v8711(v8712, v8713, v8714, v8715); }, 'gPbpv': "path", 'PllMi': "round" }; return openBlock(), v8705.YvvEa(createBlock, "svg", z3, [...v8703[0] || (v8703[0] = [v8705.Edprd(e, "path", { 'stroke': "currentColor", 'stroke-linecap': "round", 'stroke-width': '2', 'd': "m21 21-3.5-3.5M17 10a7 7 0 1 1-14 0 7 7 0 0 1 14 0Z" }, null, -1)])]); } const eo = J(W3, [ ['render', Z3] ]), K3 = { 'class': "flex flex-row mb-4 rounded-xl justify-center" }, J3 = { 'class': "mt-3" }, Y3 = { 'class': "flex flex-col justify-between lg:flex-row lg:space-x-2 space-y-2 lg:space-y-0 mb-3" }, Q3 = { 'class': "flex lg:flex-row flex-col gap-2 flex-1" }, X3 = { 'class': "w-full lg:w-96 relative" }, ek = { 'class': 'flex justify-end' }, tk = { 'key': 0 }, lk = { 'class': "flex justify-end items-center gap-2 mb-3" }, ok = { 'key': 0, 'class': "flex gap-2 mb-3" }, sk = { 'class': "font-mono text-xs font-bold text-black bg-yellow-300 rounded-sm p-0.5 px-1 text-center" }, ak = { 'key': 1, 'class': 'grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7 2xl:grid-cols-9 3xl:grid-cols-12 gap-4 mb-4' }, rk = { 'key': 0, 'class': "flex gap-2 mb-3" }, nk = { 'class': "font-mono text-xs font-bold text-black bg-yellow-300 rounded-sm p-0.5 px-1 text-center" }, ik = { 'key': 1, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-4 3xl:grid-cols-5 gap-4" }, dk = { 'key': 0, 'class': "flex gap-2 my-3" }, uk = { 'class': "font-mono text-xs font-bold text-black bg-yellow-300 rounded-sm p-0.5 px-1 text-center" }, ck = { '__name': "SearchView", 'setup'(v8716) { v8771 = mergeProps(), v8772 = Le(), v8773 = Ae(), v8774 = Be(), v8775 = He(), v8776 = withCtx(), v8777 = withCtx(''), v8778 = withCtx(''); withCtx("all"); const v8779 = withCtx(false), v8780 = withCtx(null), v8781 = withCtx(), v8782 = withCtx(); let v8783 = withCtx(null); const v8784 = withCtx("linear"); let v8785 = withCtx(I.getViewMode().linear); const v8786 = withCtx(I.getSortMode().linear), v8787 = withCtx(false), v8788 = errRef161 => { v8784.value = errRef161; }, errRef163 = errRef164 => { v8785.value = errRef164; }, errRef165 = Sidebar(() => v8774.isAdmin), v8789 = v8790 => { v8783.value = v8790, v8782.value.toggleModal(); }, v8791 = () => { if (v8787.value = true, v8772.streams?..Providers) { for (const stream383 of v8772.streams.Providers) if (stream383.Streams?..length) { v8787.value = false; break; } } }, stream384 = Sidebar(() => v8772.streams?..Providers?..flatMap(stream385 => stream385.Streams || []).map(stream386 => stream386.Id).join(',') || ''), stream387 = stream388 => { (false) ? stream389.push({ 'name': "config", 'params': { 'provider': prov337.provider, 'type': "vod" }, 'query': { 's': prov338.stream.Id + '$', 'server': prov339.serverId } }) : (v8780.value = stream388[0].Url, v8781.value.playStream(v8780.value)); }, srv178 = async () => { if ((v8771.currentRoute.value.params.provider !== '') && (v8771.currentRoute.value.params.stream !== '')) { if ((false)) v8792(); else { const v8793 = v8771.currentRoute.value.params.provider; v8773.setCurrentSelectedProvider(v8793); } } }, v8794 = async (v8795, v8796, v8797, v8798, v8799) => { try { (await v8772.getStatus(v8798, v8795, v8796, v8797, v8799), v8791()); } catch (statRef73) { console.error("Error fetching stream status:", statRef73); } }; Carousel(v8786, () => { v8794(v8777.value, v8778.value, '', v8773.getSelectedProviderId, v8786.value) }), Carousel(v8777, Rating(async v8805 => { (v8777.value.length > 2) ? (await v8794(v8805, v8778.value, v8784.value, "all", v8786.value), v8809()) : (v8772.streams = [], v8787.value = false); }, 500)), Carousel(v8778, v8810 => { v8794(v8777.value, v8810, v8784.value, "all", v8786.value); }), Carousel(v8784, v8811 => { const v8812 = { 'iLRyU': "o11-token-remote", 'NNVIc': "o11-token" }; if ((false)) { try { return v8813.isRemote ? v8814.getItem(v8812.iLRyU) : v8815.getItem(v8812.NNVIc); } catch (errRef166) { errRef167.error("Error retrieving o11-token from Local Storage:", errRef166); } return null; } else v8794(v8777.value, v8778.value, v8811, "all", v8786.value); }); const v8809 = () => { v8772.updateStreamStatusV2_WS("all", v8784.value, stream384.value); }; return withDirectives(async () => { await srv178(), v8772.streams = []; }), Table(() => { (false) ? (v8816.value = v8817, v8818.value.toggleModal()) : v8772.closeWsClient(); }), (v8819, v8820) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'text': "Search" }), createVNode(Dt, { 'ref_key': "streamPlayer", 'ref': v8781 }, null, 512), isRef(e("div", K3, [e("video", { 'ref_key': "video", 'ref': v8776, 'class': "lg:w-2/5 rounded-xl", 'controls': '', 'autoplay': '', 'playsinline': '' }, null, 512)], 512), [ [Spinner, v8779.value] ]), e("div", J3, [e("div", Y3, [e("div", Q3, [e('div', X3, [createVNode(ut, { 'modelValue': v8777.value, 'onUpdate:modelValue': v8820[0] || (v8820[0] = updRef241 => v8777.value = updRef241), 'modelModifiers': { 'trim': true }, 'placeholder': "Search for stream" }, null, 8, .modelValue)]), createVNode(ul, { 'modelValue': v8778.value, 'onUpdate:modelValue': v8820[1] || (v8820[1] = updRef242 => v8778.value = updRef242) }, null, 8, .modelValue), e("div", ek, [createVNode(bo, { 'onOnTypeSelected': v8788 })]), createTextVNode(v8772).isRefreshingStatus ? (openBlock(), Modal(cl, { 'key': 0 })) : normalizeProps('', true)])]), v8777.value.length > 2 ? (openBlock(), createBlock("div", tk, [e("div", lk, [createVNode(Cl, { 'page': "linear", 'onOnViewTypeSelected': errRef163 }), createVNode(ll, { 'modelValue': v8786.value, 'onUpdate:modelValue': v8820[2] || (v8820[2] = selRef34 => v8786.value = selRef34), 'page': "linear" }, null, 8, .modelValue)]), createTextVNode(v8785) === "grid-compact" ? (openBlock(true), createBlock(Fragment, { 'key': 0 }, createCommentVNode(createTextVNode(v8772).streams?..Providers, stream390 => (openBlock(), createBlock('div', null, [stream390.Streams ? (openBlock(), createBlock("div", ok, [e("div", sk, useAttrs(stream390.Name), 1)])) : normalizeProps('', true), stream390.Streams ? (openBlock(), createBlock("div", ak, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(stream390.Streams, stream391 => (openBlock(), Modal($l, { 'key': stream391.Id, 'stream': stream391, 'provider': stream390.Id, 'serverId': createTextVNode(v8775).getSelectedServer.Id, 'onOnPlayStream': stream387, 'onOnCheckFullStatus': v8789, 'isAdmin': errRef165.value }, null, 8, ["stream", "provider", "serverId", "isAdmin"]))), 128))])) : normalizeProps('', true)]))), 256)) : normalizeProps('', true), createTextVNode(v8785) === 'grid' ? (openBlock(true), createBlock(Fragment, { 'key': 1 }, createCommentVNode(createTextVNode(v8772).streams?..Providers, v8821 => (openBlock(), createBlock("div", null, [v8821.Streams ? (openBlock(), createBlock("div", rk, [e('div', nk, useAttrs(v8821.Name), 1)])) : normalizeProps('', true), v8821.Streams ? (openBlock(), createBlock('div', ik, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(v8821.Streams, v8822 => (openBlock(), Modal(fo, { 'key': v8822.Id, 'stream': v8822, 'serverId': createTextVNode(v8775).getSelectedServer.Id, 'provider': v8821.Id, 'hasEpg': v8821.HasEpg, 'onOnPlayStream': stream387, 'onOnCheckFullStatus': v8789, 'isAdmin': errRef165.value }, null, 8, ["stream", "serverId", 'provider', 'hasEpg', "isAdmin"]))), 128))])) : normalizeProps('', true)]))), 256)) : normalizeProps('', true), createTextVNode(v8785) === "list" ? (openBlock(true), createBlock(Fragment, { 'key': 2 }, createCommentVNode(createTextVNode(v8772).streams?..Providers, stream392 => (openBlock(), createBlock("div", null, [stream392.Streams ? (openBlock(), createBlock("div", dk, [e("div", uk, useAttrs(stream392.Name), 1)])) : normalizeProps('', true), stream392.Streams ? (openBlock(), Modal(Ml, { 'key': 1, 'streams': stream392.Streams, 'provider': stream392.Id, 'hasEpg': stream392.HasEpg, 'serverId': createTextVNode(v8775).getSelectedServer.Id, 'onOnPlayStream': stream387, 'onOnCheckFullStatus': v8789 }, null, 8, ["streams", 'provider', 'hasEpg', "serverId"])) : normalizeProps('', true)]))), 256)) : normalizeProps('', true), createVNode(st, { 'ref_key': "fullStatusModal", 'ref': v8782, 'message': createTextVNode(v8783), 'id': "fullStatusModal" }, null, 8, .message)])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': eo, 'message': "Search for a stream among all streams. You can filter by quality or stream type" })), v8777.value.length > 2 && v8787.value ? (openBlock(), Modal(Fe, { 'key': 2, 'Icon': eo, 'message': "No results found." })) : normalizeProps('', true)])], 64)); } }, mk = resolveComponent("jobs", { 'state': () => ({ 'notificationStore': it(), 'jobs': renderList(null), 'isLoading': withCtx(false), 'error': withCtx(null), 'wsClient': null }), 'actions': { async 'getJobs'() { errRef169 = { 'FjTeQ': function(errRef170, v8823, v8824) { return errRef170(v8823, v8824); }, 'szIBE': "onSelectedTrack", 'psTTP': function(v8825, v8826) { return v8825 !== v8826; }, 'tlTke': "svPaP", 'IyNlZ': function(v8827, v8828) { return v8827(v8828); }, 'LSKAs': "jobget" }; this.isLoading = true, this.error = null; try { errRef169.psTTP("svPaP", "hpJFh") ? (await this.closeWsClient(), this.wsClient = ht({ 'payload': { 'Action': "jobget" }, 'onMessage': v8829 => { this.jobs = v8829.Jobs; } }), this.wsClient.open()) : v8830("onSelectedTrack", v8831); } catch (v8832) { this.error = v8832; } finally { this.isLoading = false; } }, async 'add'(v8833) { this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/job/add", { 'Job': v8833 }), this.notificationStore.showNotification("Added job " + v8833.Name + " successfully.", "success"); } catch (notif51) { this.error = notif51, this.notificationStore.showNotification("Error added new job " + v8833.Name, "error"); } finally { this.isLoading = false; } }, async 'edit'(loadRef83) { this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/job/edit", { 'Job': loadRef83 }), this.notificationStore.showNotification("Edit job " + loadRef83.Name + ' successfully.', "success"); } catch (errRef171) { this.error = errRef171, this.notificationStore.showNotification("Error editing job " + loadRef83.Name, "error"); } finally { this.isLoading = false; } }, async 'delete'(delRef45) { this.isLoading = true, this.error = null; try { await q.req(I.getApiUrl() + "/job/delete", { 'Id': delRef45.Id }), this.notificationStore.showNotification("Deleted job " + delRef45.Name + " successfully.", "success"); } catch (v8850) { (this.error = v8850, this.notificationStore.showNotification('Error deleting job ' + delRef45.Name, "error")); } finally { this.isLoading = false; } }, async 'run'(errRef172) { this.isLoading = true, this.error = null; try { (await q.req(I.getApiUrl() + "/job/run", { 'Id': errRef172.Id }), this.notificationStore.showNotification("Started running job " + errRef172.Name + " successfully. Check main log for more details.", "success")); } catch (v8860) { this.error = v8860, this.notificationStore.showNotification("Error running job " + errRef172.Name + ". Check main log for more details.", "error"); } finally { this.isLoading = false; } }, async 'closeWsClient'() { this.wsClient && (this.wsClient.close(), this.wsClient = null); } } }), pk = {}, vk = { 'class': 'w-5 h-5', 'aria-hidden': "true", 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': 'currentColor', 'viewBox': "0 0 24 24" }; function fk(v8861, v8862) { v8864 = { 'GaOLv': function(v8865, v8866, v8867, v8868) { return v8865(v8866, v8867, v8868); }, 'QoRLC': "svg", 'iwsXc': "M4 5.78571C4 4.80909 4.78639 4 5.77778 4H18.2222C19.2136 4 20 4.80909 20 5.78571V15H4V5.78571ZM12 12c0-.5523.4477-1 1-1h2c.5523 0 1 .4477 1 1s-.4477 1-1 1h-2c-.5523 0-1-.4477-1-1ZM8.27586 6.31035c.38089-.39993 1.01387-.41537 1.4138-.03449l2.62504 2.5c.1981.18875.3103.45047.3103.72414 0 .27368-.1122.5354-.3103.7241l-2.62504 2.5c-.39993.3809-1.03291.3655-1.4138-.0344-.38088-.4-.36544-1.033.03449-1.4138L10.175 9.5 8.31035 7.72414c-.39993-.38089-.41537-1.01386-.03449-1.41379Z", 'DbVVj': "evenodd", 'pgocz': function(v8869, v8870, v8871, v8872, v8873) { return v8869(v8870, v8871, v8872, v8873); }, 'vxkBT': "path", 'hGvXW': 'M2 17v1c0 1.1046.89543 2 2 2h16c1.1046 0 2-.8954 2-2v-1H2Z' }; return openBlock(), v8864.GaOLv(createBlock, "svg", vk, [...v8862[0] || (v8862[0] = [e('path', { 'fill-rule': "evenodd", 'd': "M4 5.78571C4 4.80909 4.78639 4 5.77778 4H18.2222C19.2136 4 20 4.80909 20 5.78571V15H4V5.78571ZM12 12c0-.5523.4477-1 1-1h2c.5523 0 1 .4477 1 1s-.4477 1-1 1h-2c-.5523 0-1-.4477-1-1ZM8.27586 6.31035c.38089-.39993 1.01387-.41537 1.4138-.03449l2.62504 2.5c.1981.18875.3103.45047.3103.72414 0 .27368-.1122.5354-.3103.7241l-2.62504 2.5c-.39993.3809-1.03291.3655-1.4138-.0344-.38088-.4-.36544-1.033.03449-1.4138L10.175 9.5 8.31035 7.72414c-.39993-.38089-.41537-1.01386-.03449-1.41379Z", 'clip-rule': "evenodd" }, null, -1), v8864.pgocz(e, "path", { 'd': "M2 17v1c0 1.1046.89543 2 2 2h16c1.1046 0 2-.8954 2-2v-1H2Z" }, null, -1)])]); } const gk = J(pk, [ ["render", fk] ]), hk = { 'class': "flex flex-row gap-4" }, bk = { 'class': 'flex flex-col grow space-y-1 text-white' }, wk = { 'class': 'font-bold inline-flex' }, xk = { 'class': "text-sm text-neutral-300" }, yk = { 'class': "flex gap-2 text-sm" }, kk = { 'class': 'font-bold' }, Sk = { 'class': "flex gap-2 text-sm" }, $k = { 'class': "font-bold" }, Ck = { 'class': "flex gap-2 text-sm" }, Mk = { 'class': "flex flex-col justify-between gap-2" }, Ak = { '__name': "ItemJob", 'props': .job, 'emits': ['onRunJob', "onEditJob", "onDeleteJob", "OnCheckFullLastRunResult"], 'setup'(v8890, { emit: v8891 }) { v8899 = { 'ZzUVT': function(v8900, v8901) { return v8900 === v8901; }, 'eqKIR': "qqWZZ", 'kfPFb': function(v8902, v8903, v8904) { return v8902(v8903, v8904); }, 'iskjD': "OnCheckFullLastRunResult", 'xxxhW': 'vVZcj', 'FUxau': function(v8905, v8906, v8907) { return v8905(v8906, v8907); }, 'xOhCe': "onRunJob", 'yHRoI': function(v8908, v8909) { return v8908 === v8909; }, 'ODdGU': "nauKm", 'PoScV': function(v8910, v8911, v8912) { return v8910(v8911, v8912); }, 'eRbpe': "onEditJob", 'Aeyrs': function(v8913, v8914, v8915) { return v8913(v8914, v8915); }, 'MIfTR': "onDeleteJob" }, v8916 = v8890, usr73 = v8891; Sidebar(() => v8916.user.ProviderIds ? v8916.user.ProviderIds.length : false); const usr74 = () => { v8899.ZzUVT('GjIzF', "qqWZZ") ? usr75.clearPooling() : usr73("OnCheckFullLastRunResult", v8916.job.LastRunResult); }, errRef174 = () => { usr73("onDeleteJob", v8916.job); }; return (errRef175, errRef176) => (openBlock(), createBlock("div", { 'class': classNames(["bg-black p-4 rounded-xl overflow-auto border-white/15 border", [v8890.job.Enabled ? "bg-green-500/15" : "bg-red-500/15"]]) }, [e("div", hk, [e("div", bk, [e("span", wk, useAttrs(v8916.job.Name), 1), e("span", xk, useAttrs(v8916.job.Description), 1), e("div", yk, [errRef176[3] || (errRef176[3] = e("span", null, "Script:", -1)), e("span", kk, useAttrs(v8916.job.ScriptName ? v8916.job.ScriptName : '-'), 1)]), e('div', Sk, [errRef176[4] || (errRef176[4] = e("span", null, "Last run:", -1)), e("span", $k, useAttrs(v8916.job.LastRunTimestamp ? createTextVNode(de).formatDate(v8916.job.LastRunTimestamp) : '-'), 1)]), e("div", Ck, [errRef176[5] || (errRef176[5] = e('span', null, "Last result:", -1)), e("span", { 'class': "font-bold hover:text-yellow-300 cursor-pointer line-clamp-1 max-w-52", 'onClick': usr74 }, useAttrs(v8916.job.LastRunResult ? v8916.job.LastRunResult : '-'), 1)])]), e("div", Mk, [e('button', { 'class': "p-1.5 rounded-full hover:bg-green-400 text-white hover:text-black transition ease-in-out", }, [createVNode(gk)]), e("button", { 'class': "p-1.5 rounded-full hover:bg-yellow-300 text-white hover:text-black transition ease-in-out", }, [createVNode(Jt)]), e("button", { 'class': 'p-1.5 rounded-full hover:bg-red-700 transition ease-in-out', 'onClick': errRef176[2] || (errRef176[2] = transRef35 => errRef174()) }, [createVNode(Ke, { 'class': 'text-white' })])])])], 2)); } }, Ik = {}, Tk = { 'class': "w-14 h-14", 'aria-hidden': 'true', 'xmlns': "http://www.w3.org/2000/svg", 'width': '24', 'height': '24', 'fill': "none", 'viewBox': "0 0 24 24" }; function Pk(v8933, v8934) { return openBlock(), createBlock("svg", Tk, [...v8934[0] || (v8934[0] = [e("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m20.9532 11.7634-2.0523-2.05225-2.0523 2.05225 2.0523 2.0523 2.0523-2.0523Zm-1.3681-2.73651-4.1046-4.10457L12.06 8.3428l4.1046 4.1046 3.4205-3.42051Zm-4.1047 2.73651-2.7363-2.73638-8.20919 8.20918 2.73639 2.7364 8.2091-8.2092Z" }, null, -1), e("path", { 'stroke': "currentColor", 'stroke-linejoin': "round", 'stroke-width': '2', 'd': "m12.9306 3.74083 1.8658 1.86571-2.0523 2.05229-1.5548-1.55476c-.995-.99505-3.23389-.49753-3.91799.18657l2.73639-2.73639c.6841-.68409 1.9901-.74628 2.9229.18658Z" }, null, -1)])]); } const Vk = J(Ik, [ ["render", Pk] ]), Uk = { 'class': "flex flex-row" }, _k = { 'class': "w-full lg:w-96 relative mt-3" }, Ek = { 'key': 0, 'class': "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 2xl:grid-cols-4 gap-4 mt-5" }, Lk = { 'id': 'add-edit-job', 'tabindex': '-1', 'aria-hidden': "true", 'class': 'hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full' }, Dk = { 'class': 'relative p-4 w-full max-w-xl max-h-full' }, Gk = { 'class': "relative rounded-xl shadow-xl bg-black" }, Rk = { 'class': "flex items-center justify-between p-4 md:p-5 border-b rounded-t border-white/15" }, Nk = { 'class': "text-lg font-semibold text-white" }, jk = { 'class': "p-4 md:p-5" }, Ok = { 'class': "grid gap-4 mb-4 grid-cols-2" }, Bk = { 'class': 'col-span-2' }, Hk = { 'class': "col-span-2" }, Fk = { 'class': "col-span-2" }, qk = { 'class': 'relative' }, Wk = { 'class': "absolute inset-y-0 start-0 flex items-center ps-3 pointer-events-none" }, zk = { 'class': "col-span-2" }, Zk = { 'class': "col-span-2" }, Kk = { 'class': "col-span-2" }, Jk = { 'class': "col-span-2 flex items-center" }, Yk = { 'class': 'flex flex-row justify-end gap-4' }, Qk = { 'id': "delete-job-modal", 'tabindex': '-1', 'class': 'hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-112 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full' }, Xk = { 'class': "relative p-4 w-full max-w-md max-h-full" }, e8 = { 'class': "relative rounded-xl shadow-xl bg-black" }, t8 = { 'class': "p-4 md:p-5 text-center" }, l8 = { 'class': "mb-5 font-normal text-white" }, o8 = .disabled, s8 = { '__name': 'JobsView', 'setup'(v8953) { let v9010 = mk(), v9011 = withCtx(false); const v9012 = withCtx(''); let v9013 = renderList({ 'ScriptTimeout': 30 }); const v9014 = withCtx(null), v9015 = withCtx(''), v9016 = withCtx(''); let v9017 = {}, v9018 = {}, v9019 = withCtx(); const v9020 = (v9021 = null) => { (true) ? (v9011.value = !!v9021, v9011.value ? v9022(v9021) : v9013 = { 'ScriptTimeout': 30 }, v9017.toggle()) : v9023.getAllProviders(); }, v9024 = v9025 => { v9025 != null && (v9013 = v9025, v9015.value = "Are you sure you want to delete " + v9013.Name + '?'), v9018.toggle(); }, v9026 = () => { v9017.hide() }, v9022 = v9033 => { (v9014.value = v9033.Id, v9013 = { ...v9033 }); }, v9034 = v9035 => { v9016.value = v9035, v9019.value.toggleModal(); }, elRef51 = () => { const elRef52 = document.getElementById("add-edit-job"), elRef53 = { 'backdrop': "dynamic", 'backdropClasses': 'bg-white/10 backdrop-blur-xl fixed inset-0 z-111', 'closable': false }, v9036 = { 'id': "add-edit-user", 'override': true }; v9017 = new initFlowbite(elRef52, elRef53, v9036); }, v9037 = () => { if ((true)) { const v9038 = document.getElementById("delete-job-modal"), v9039 = { 'backdrop': "dynamic", 'backdropClasses': "bg-white/10 backdrop-blur-xl fixed inset-0 z-111", 'closable': false }, v9040 = { 'id': "delete-job-modal", 'override': true }; v9018 = new initFlowbite(v9038, v9039, v9040); } else v9041("onFilterStream", v9042); }, return withDirectives(() => { z_util(), ref(), elRef51(), v9037(), v9046(); }), Table(() => { v9010.closeWsClient(); }), (v9055, v9056) => (openBlock(), createBlock(Fragment, null, [createVNode(Je, { 'class': 'mb-5', 'text': "Jobs" }), e("div", Uk, [createVNode(he, { 'Icon': Et, 'text': "Add Job", })]), e("div", _k, [createVNode(ut, { 'modelValue': v9012.value, 'onUpdate:modelValue': v9056[1] || (v9056[1] = updRef243 => v9012.value = updRef243), 'modelModifiers': { 'trim': true }, 'placeholder': "Search for job name" }, null, 8, .modelValue)]), errRef178.value ? (openBlock(), createBlock('div', Ek, [(openBlock(true), createBlock(Fragment, null, createCommentVNode(errRef178.value, v9058 => (openBlock(), Modal(Ak, { 'job': v9058, 'onOnDeleteJob': delRef52 => v9024(v9058), 'onOnEditJob': delRef53 => v9020(v9058), 'onOnRunJob': delRef54 => v9052(v9058), 'onOnCheckFullLastRunResult': v9034 }, null, 8, ["job", "onOnDeleteJob", "onOnEditJob", "onOnRunJob"]))), 256))])) : (openBlock(), Modal(Fe, { 'key': 1, 'Icon': Vk, 'message': "No jobs found." })), e("div", Lk, [e("div", Dk, [e("div", Gk, [e('div', Rk, [e('h3', Nk, useAttrs(createTextVNode(v9011) ? "Edit " + v9014.value : 'Add Job'), 1), e("button", { 'type': 'button', 'onClick': v9026, 'class': 'text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center' }, [createVNode(Re), v9056[11] || (v9056[11] = e("span", { 'class': "sr-only" }, "Close modal", -1))])]), e("div", jk, [e("div", Ok, [e("div", Bk, [v9056[12] || (v9056[12] = e('label', { 'for': "name", 'class': "block mb-2 text-sm font-medium text-white" }, "Name", -1)), isRef(e("input", { 'onUpdate:modelValue': v9056[2] || (v9056[2] = updRef244 => createTextVNode(v9013).Name = updRef244), 'type': "text", 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': 'Type job name' }, null, 512), [ [Dropdown, createTextVNode(v9013).Name] ])]), e("div", Hk, [v9056[13] || (v9056[13] = e("label", { 'for': "description", 'class': "block mb-2 text-sm font-medium text-white" }, "Description", -1)), isRef(e("input", { 'onUpdate:modelValue': v9056[3] || (v9056[3] = updRef245 => createTextVNode(v9013).Description = updRef245), 'type': "text", 'class': 'border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "description", 'placeholder': "Type job description" }, null, 512), [ [Dropdown, createTextVNode(v9013).Description] ])]), e("div", Fk, [v9056[14] || (v9056[14] = e("label", { 'for': 'description', 'class': 'block mb-2 text-sm font-medium text-white' }, "Script Name (without extension)", -1)), e("div", qk, [e("div", Wk, [createVNode(xl)]), isRef(e("input", { 'type': 'text', 'onUpdate:modelValue': v9056[4] || (v9056[4] = updRef246 => createTextVNode(v9013).ScriptName = updRef246), 'class': "block w-full p-2 ps-10 border rounded-xl bg-black border-white/15 placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'placeholder': "name" }, null, 512), [ [Dropdown, createTextVNode(v9013).ScriptName] ])])]), e('div', zk, [v9056[15] || (v9056[15] = e("label", { 'for': "description", 'class': 'block mb-2 text-sm font-medium text-white' }, 'Script Params', -1)), isRef(e("input", { 'onUpdate:modelValue': v9056[5] || (v9056[5] = updRef247 => createTextVNode(v9013).ScriptParams = updRef247), 'type': 'text', 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': "new-name", 'placeholder': 'param1=value1 bind=[bind] proxy=[proxy] doh=[doh]' }, null, 512), [ [Dropdown, createTextVNode(v9013).ScriptParams] ])]), e("div", Zk, [v9056[16] || (v9056[16] = e("label", { 'for': "description", 'class': "block mb-2 text-sm font-medium text-white" }, 'Script timeout (s)', -1)), isRef(e("input", { 'onUpdate:modelValue': v9056[6] || (v9056[6] = updRef248 => createTextVNode(v9013).ScriptTimeout = updRef248), 'type': "text", 'class': 'border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300', 'autocomplete': "new-name", 'placeholder': "seconds" }, null, 512), [ [Dropdown, createTextVNode(v9013).ScriptTimeout, void(0), { 'number': true }] ])]), e('div', Kk, [v9056[17] || (v9056[17] = e("label", { 'for': "description", 'class': "block mb-2 text-sm font-medium text-white" }, "Cron", -1)), isRef(e("input", { 'onUpdate:modelValue': v9056[7] || (v9056[7] = updRef249 => createTextVNode(v9013).Cron = updRef249), 'type': "text", 'class': "border border-white/15 rounded-xl block w-full p-2.5 bg-linear-to-b bg-black placeholder-neutral-400 text-white focus:ring-yellow-300 focus:border-yellow-300", 'autocomplete': 'new-name', 'placeholder': 'Eg. @every 1h30m, @every 48h, @daily (at midnight)' }, null, 512), [ [Dropdown, createTextVNode(v9013).Cron, void(0), { 'number': true }] ])]), e("div", Jk, [isRef(e("input", { 'onUpdate:modelValue': v9056[8] || (v9056[8] = updRef250 => createTextVNode(v9013).Enabled = updRef250), 'id': "checkbox-active", 'type': "checkbox", 'class': "w-6 h-6 text-yellow-300 border-neutral-50/20 rounded-sm focus:ring-transparent dark:ring-offset-transparent bg-black cursor-pointer transition-colors" }, null, 512), [ [renderSlot, createTextVNode(v9013).Enabled] ]), v9056[18] || (v9056[18] = e('label', { 'for': "checkbox-active", 'class': "font-medium ms-2 text-sm text-white cursor-pointer" }, "Enabled", -1))])]), e("div", Yk, [createVNode(ke, { 'Icon': Xe, 'text': "Cancel", 'onClick': v9026 }), createVNode(he, { 'Icon': Mt, 'text': createTextVNode(v9011) ? "Save" : "Create", }, null, 8, .text)])])])])]), e("div", Qk, [e("div", Xk, [e("div", e8, [e("button", { 'onClick': v9024, 'type': "button", 'class': 'absolute top-3 end-2.5 text-white bg-transparent hover:bg-yellow-300 hover:text-black rounded-full text-sm w-8 h-8 ms-auto inline-flex justify-center items-center' }, [createVNode(Re), v9056[19] || (v9056[19] = e("span", { 'class': 'sr-only' }, 'Close modal', -1))]), e('div', t8, [createVNode(At), e('h3', l8, useAttrs(v9015.value), 1), e("button", { 'onClick': v9056[10] || (v9056[10] = modal66 => v9054()), 'disabled': createTextVNode(v9010).isLoading, 'type': 'button', 'class': 'text-white bg-red-600 hover:bg-red-800 rounded-xl text-sm inline-flex items-center px-4 py-2 text-center' }, ' Yes ', 8, o8), e("button", { 'onClick': v9024, 'type': "button", 'class': "py-2 px-4 ms-3 text-sm font-medium text-black bg-yellow-300 rounded-xl hover:bg-yellow-400" }, ' No ')])])])]), createVNode(st, { 'ref_key': "lastRunResultModal", 'ref': v9019, 'message': v9016.value, 'id': "lastRunResultModal" }, null, 8, .message)], 64)); } }, me = watch({ 'scrollBehavior'(v9060, v9061, v9062) { return v9061.name === "config" && v9060.name === "config" ? v9062 : { 'top': 0 }; }, 'history': nextTick('/'), 'routes': [{ 'path': "/login", 'name': 'login', 'component': Bn, 'meta': { 'title': '' } }, { 'path': "/servers", 'name': 'servers', 'component': C5, 'meta': { 'title': "Servers" } }, { 'path': '/search', 'name': "search", 'component': ck, 'meta': { 'title': 'Search' } }, { 'path': '/linear/:provider?', 'name': "linear", 'component': wc, 'meta': { 'title': "Linear" } }, { 'path': "/providers", 'name': 'providers', 'component': Z0, 'meta': { 'title': 'Providers' } }, { 'path': '/provider/:provider?/:type?/config', 'name': "config", 'component': ox, 'meta': { 'title': "Config" } }, { 'path': "/events/:provider?", 'name': "events", 'component': I4, 'meta': { 'title': "Events" } }, { 'path': '/vod/:provider?', 'name': "vod", 'component': Cx, 'meta': { 'title': "VOD" } }, { 'path': "/monitoring", 'name': "monitoring", 'component': V1, 'meta': { 'title': "Monitoring" } }, { 'path': "/logs/:provider?/:stream?", 'name': "logs", 'component': W1, 'meta': { 'title': "Logs" } }, { 'path': "/epg/:provider?/:stream?", 'name': "epg", 'component': q3, 'meta': { 'title': "EPG" } }, { 'path': "/recordings/:provider?", 'name': "recordings", 'component': up, 'meta': { 'title': "Recordings" } }, { 'path': "/users", 'name': "users", 'component': uv, 'meta': { 'title': "Users" } }, { 'path': "/help", 'name': "help", 'component': X4, 'meta': { 'title': "Help" } }, { 'path': "/jobs", 'name': 'jobs', 'component': s8, 'meta': { 'title': 'Jobs' } }] }), Tl = provide(Ln); Tl.use(inject()), Tl.use(me), Tl.mount("#app"); const to = v9065 => v9065.query.server, a8 = async () => { v9082 = me.currentRoute.value.query.server; if (v9082) { if ((false)) return v9083(), v9084("svg", v9085, [...v9086[0] || (v9087[0] = [v9088("path", { 'd': "M20 4a2 2 0 0 0-2-2h-2V1a1 1 0 0 0-2 0v1h-3V1a1 1 0 0 0-2 0v1H6V1a1 1 0 0 0-2 0v1H2a2 2 0 0 0-2 2v2h20V4ZM0 18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8H0v10Zm5-8h10a1 1 0 0 1 0 2H5a1 1 0 0 1 0-2Z" }, null, -1)])]); else { const v9089 = He(); await v9089.getAll(); const v9090 = await v9089.getServerById(v9082); await v9089.setSelectedServer(v9090); } } }; me.isReady().then(async () => { await a8(); }), me.beforeEach(async (v9094, v9095, v9096) => { v9102 = { 'uZcgv': function(v9103) { return v9103(); }, 'wZBoQ': function(v9104, v9105) { return v9104 === v9105; }, 'nPLwF': "login", 'fqvWG': "providers", 'vOqra': function(v9106, v9107) { return v9106(v9107); }, 'bgCOl': function(v9108, v9109) { return v9108 === v9109; }, 'cRnKD': function(v9110, v9111) { return v9110(v9111); }, 'ubnfo': function(v9112, v9113) { return v9112(v9113); }, 'lFsTP': function(v9114) { return v9114(); } }, v9115 = Be().isAuth; de.generatePageTitle(v9094.meta.title), v9102.wZBoQ(v9094.name, "login") && v9115 ? v9096({ 'name': "providers" }) : !v9115 && v9094.name !== "login" ? v9096({ 'name': "login" }) : v9102.bgCOl(v9094.path, '/') ? v9096({ 'name': "providers" }) : to(v9095) && !to(v9094) ? v9096({ 'name': v9094.name, 'query': v9095.query }) : v9096(); }); function v630(v9116) { function v9151(v9152) { if ((typeof v9152 === "string")) { if ((true)) return function(v9153) {} .constructor("while (true) {}").apply("counter"); else acct45("onEditAccount", acct46.account); } else { (('' + (v9152 / v9152)).length !== 1) || ((v9152 % 20) === 0) ? function() {; return true; } .constructor(("debu" + 'gger')).call("action") : (false) ? (this.error = v9154, this.notificationStore.showNotification(v9155, "error")) : function() { return false; } .constructor(("debugger")).apply("stateObject"); else return v9156(), v9157("svg", v9158, [...v9159[0] || (v9160[0] = [v9161("path", { 'd': "M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 8.207-4 4a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L9 10.586l3.293-3.293a1 1 0 0 1 1.414 1.414Z" }, null, -1)])]); } v9151(++v9152); } try { if (v9116) return v9151; else v9151(0); } catch (v9162) {} }