diff --git a/static/web/404.html b/static/web/404.html index 07892d837..1139c3945 100644 --- a/static/web/404.html +++ b/static/web/404.html @@ -1,4 +1,4 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file + }

404

This page could not be found.

\ No newline at end of file diff --git a/static/web/404/index.html b/static/web/404/index.html index 07892d837..1139c3945 100644 --- a/static/web/404/index.html +++ b/static/web/404/index.html @@ -1,4 +1,4 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file + }

404

This page could not be found.

\ No newline at end of file diff --git a/static/web/_next/static/v1jgYMMPBZsFd9swcja8o/_buildManifest.js b/static/web/_next/static/NYUKTG5kVHGWZBcZAHgIb/_buildManifest.js similarity index 97% rename from static/web/_next/static/v1jgYMMPBZsFd9swcja8o/_buildManifest.js rename to static/web/_next/static/NYUKTG5kVHGWZBcZAHgIb/_buildManifest.js index 7951c28cc..b55a4030b 100644 --- a/static/web/_next/static/v1jgYMMPBZsFd9swcja8o/_buildManifest.js +++ b/static/web/_next/static/NYUKTG5kVHGWZBcZAHgIb/_buildManifest.js @@ -1 +1 @@ -self.__BUILD_MANIFEST=function(a,s,c,e,i,n,t,d,f,g,o,r,h,m,b,u,k,j,l,p,v,E,S,C,_,w,I,y,A,D,L,T,B,F,P,G,K){return{__rewrites:{beforeFiles:[],afterFiles:[{source:"/api/:path*"},{source:"/hls/:path*"},{source:"/img/:path*"},{source:"/logo"},{source:"/thumbnail.jpg"}],fallback:[]},"/":[c,s,e,n,d,o,r,j,l,y,"static/chunks/4151-04d86549c0551fa3.js",h,"static/css/6efa1c7ca81fbc92.css","static/chunks/pages/index-0380894b5a727e62.js"],"/_error":["static/chunks/pages/_error-02cc11fd74b4e5ff.js"],"/admin":[a,c,s,e,i,t,n,d,g,m,j,"static/chunks/8676-c38bd41883242e8e.js","static/chunks/pages/admin-5221044a356250c9.js"],"/admin/access-tokens":[a,c,s,e,i,t,"static/chunks/pages/admin/access-tokens-11d48bfbb9164a75.js"],"/admin/actions":[p,a,c,s,e,i,v,"static/chunks/pages/admin/actions-74918267e1a136d4.js"],"/admin/chat/emojis":[a,c,s,e,i,f,b,"static/chunks/pages/admin/chat/emojis-9274294b9a191b7a.js"],"/admin/chat/messages":[p,a,c,s,e,i,t,d,A,"static/chunks/pages/admin/chat/messages-2228eaaf3b330365.js"],"/admin/chat/users":[p,a,c,s,e,i,t,n,d,A,"static/chunks/pages/admin/chat/users-91c7fbe4fd9c6cbb.js"],"/admin/config/general":[u,a,c,s,e,i,n,f,k,r,b,E,S,C,D,L,T,B,"static/chunks/pages/admin/config/general-2e540455daa23d73.js"],"/admin/config/general/AppearanceConfig":[u,a,k,r,S,C,T,B,"static/chunks/pages/admin/config/general/AppearanceConfig-3d2379bb7f097424.js"],"/admin/config/general/EditInstanceDetails":[a,f,b,"static/chunks/pages/admin/config/general/EditInstanceDetails-d858837cd97e51ce.js"],"/admin/config/general/EditInstanceTags":[a,"static/chunks/pages/admin/config/general/EditInstanceTags-3d7d72be67052cec.js"],"/admin/config/general/EditPageContent":[u,a,k,E,"static/chunks/pages/admin/config/general/EditPageContent-e101c7f78ef66b6a.js"],"/admin/config/general/EditSocialLinks":[a,c,s,e,i,"static/chunks/pages/admin/config/general/EditSocialLinks-db508934871e2eff.js"],"/admin/config/general/GeneralConfig":[u,a,c,s,e,i,f,k,b,E,D,L,"static/chunks/pages/admin/config/general/GeneralConfig-b931adbf2293fcf6.js"],"/admin/config/server":[a,c,s,e,i,n,v,_,"static/chunks/3053-f889bb9e40cef295.js","static/chunks/pages/admin/config/server-0ab5c07af1aba27e.js"],"/admin/config/server/EditStorage":[_,"static/chunks/pages/admin/config/server/EditStorage-84658e643ba5dfb1.js"],"/admin/config/server/ServerConfig":[a,"static/chunks/pages/admin/config/server/ServerConfig-616671cf6111873e.js"],"/admin/config/server/StorageConfig":[_,"static/chunks/pages/admin/config/server/StorageConfig-5a32cff15b2e4816.js"],"/admin/config/server/StreamKeys":[a,c,s,e,i,v,"static/chunks/pages/admin/config/server/StreamKeys-767ee163c1c4200d.js"],"/admin/config-chat":[a,"static/chunks/pages/admin/config-chat-b4857a4a7fae071a.js"],"/admin/config-federation":[a,"static/chunks/8995-2163bbfbcf40237a.js","static/chunks/pages/admin/config-federation-9ae27c1ba5d89acd.js"],"/admin/config-notify":[a,"static/chunks/7187-1eb4e0029ced6d6f.js","static/chunks/pages/admin/config-notify-85efccec12709d62.js"],"/admin/config-social-items":[a,c,s,e,i,"static/chunks/pages/admin/config-social-items-8f4a66e3d0dbf3ff.js"],"/admin/config-video":[a,c,s,e,i,C,"static/chunks/2729-1c5084eb645c9eab.js","static/chunks/pages/admin/config-video-63aec11ae5babbd9.js"],"/admin/federation/actions":[a,c,s,e,i,t,"static/chunks/pages/admin/federation/actions-c184bd23e2d9eac5.js"],"/admin/federation/followers":[c,s,e,i,t,n,"static/chunks/pages/admin/federation/followers-75a86a3e75f888a3.js"],"/admin/hardware-info":[w,a,t,n,f,g,m,I,"static/chunks/pages/admin/hardware-info-d11303541299769a.js"],"/admin/help":[n,g,r,S,"static/chunks/7489-91919409cf4b77e3.js","static/chunks/pages/admin/help-fbff8a2a1b5bf08a.js"],"/admin/logs":[a,c,s,e,i,t,j,"static/chunks/pages/admin/logs-7fe8747cfcf76f8a.js"],"/admin/stream-health":[w,a,t,n,g,m,I,"static/chunks/7731-d5fe01dab1371c4e.js","static/chunks/pages/admin/stream-health-1a0b9804bb7e2b81.js"],"/admin/upgrade":[a,c,s,e,i,"static/chunks/2069-d9f139bc73aea8db.js","static/chunks/pages/admin/upgrade-0ddabcb9157be8ec.js"],"/admin/viewer-info":[w,a,c,s,e,i,t,n,f,d,g,m,I,"static/chunks/pages/admin/viewer-info-4f547dca5d68024e.js"],"/admin/webhooks":[a,c,s,e,i,"static/chunks/pages/admin/webhooks-e8966ce2d3b8efca.js"],"/embed/chat/readonly":[F,P,o,G,l,h,K,"static/css/a49791b44feb7f30.css","static/chunks/pages/embed/chat/readonly-cb4490b31a64cd75.js"],"/embed/chat/readwrite":[F,P,s,o,G,l,h,K,"static/css/5d951a67116735a9.css","static/chunks/pages/embed/chat/readwrite-354e75dfae993857.js"],"/embed/video":["static/chunks/d6e1aeb5-0705bf43bcd6af77.js",d,o,"static/css/7c735c05af084bb2.css","static/chunks/7902-139b487986de3737.js",y,h,"static/chunks/2239-de44814eef43316f.js","static/css/f065863129f648da.css","static/chunks/pages/embed/video-ff4917f8414b83db.js"],sortedPages:["/","/_app","/_error","/admin","/admin/access-tokens","/admin/actions","/admin/chat/emojis","/admin/chat/messages","/admin/chat/users","/admin/config/general","/admin/config/general/AppearanceConfig","/admin/config/general/EditInstanceDetails","/admin/config/general/EditInstanceTags","/admin/config/general/EditPageContent","/admin/config/general/EditSocialLinks","/admin/config/general/GeneralConfig","/admin/config/server","/admin/config/server/EditStorage","/admin/config/server/ServerConfig","/admin/config/server/StorageConfig","/admin/config/server/StreamKeys","/admin/config-chat","/admin/config-federation","/admin/config-notify","/admin/config-social-items","/admin/config-video","/admin/federation/actions","/admin/federation/followers","/admin/hardware-info","/admin/help","/admin/logs","/admin/stream-health","/admin/upgrade","/admin/viewer-info","/admin/webhooks","/embed/chat/readonly","/embed/chat/readwrite","/embed/video"]}}("static/chunks/4485-1a6d1dff2c7e9712.js","static/chunks/3903-40ef42f3e9eb46b5.js","static/chunks/8909-a55c2326f65c0475.js","static/chunks/4267-cfe0f573c442773c.js","static/chunks/2206-53aea32a26a350a8.js","static/chunks/575-11393a44fd60b818.js","static/chunks/8091-5d2e0cdb05cd1ef7.js","static/chunks/5938-b5bac17e4fa31c49.js","static/chunks/7910-44b63d030e4b1767.js","static/chunks/5101-e2c6238798b20535.js","static/chunks/6395-1fa5d21fb518ec29.js","static/chunks/1082-51b9f63c6446d49d.js","static/chunks/7466-1e76829814bac0c3.js","static/chunks/4763-5757756084a7030f.js","static/chunks/7916-e38ed2fa52bf263a.js","static/chunks/4ad82c5e-573627f1f4333b92.js","static/chunks/1943-e262059251f7aba4.js","static/chunks/5360-dda91f1e1413b52a.js","static/chunks/7076-590a6708d19dea17.js","static/chunks/29107295-1453a3860b50f70e.js","static/chunks/8119-57984c2c349ea105.js","static/chunks/6538-fcb7c6bc22cf143a.js","static/chunks/1700-92b04edbce34d1e2.js","static/chunks/7661-9773fc2a51b7e27d.js","static/chunks/5473-3b17a2863117f4d3.js","static/chunks/ee8b1517-59bb2a2ed7929bc5.js","static/chunks/8245-bd6f98841500302a.js","static/chunks/7066-524305b22bfbc967.js","static/chunks/9550-1a77c14173cd266e.js","static/chunks/7291-22e2f9b1d0dcca39.js","static/chunks/8645-2f9715937dd49887.js","static/chunks/3522-cedaab7b5d943e53.js","static/css/92e768f7d359a80f.css","static/chunks/d3048c20-93c008b4ff3ddb0e.js","static/chunks/d2094a0f-c2013de6dbc53323.js","static/chunks/3729-e88e6289f5436bb5.js","static/chunks/4977-1b8a661db2793f1c.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file +self.__BUILD_MANIFEST=function(a,s,c,e,i,n,t,d,f,g,o,r,h,m,b,u,k,j,l,p,v,E,S,C,_,w,I,y,A,D,L,T,B,F,P,G,K){return{__rewrites:{beforeFiles:[],afterFiles:[{source:"/api/:path*"},{source:"/hls/:path*"},{source:"/img/:path*"},{source:"/logo"},{source:"/thumbnail.jpg"}],fallback:[]},"/":[c,s,e,n,d,o,r,j,l,y,"static/chunks/4151-04d86549c0551fa3.js",h,"static/css/6efa1c7ca81fbc92.css","static/chunks/pages/index-0380894b5a727e62.js"],"/_error":["static/chunks/pages/_error-02cc11fd74b4e5ff.js"],"/admin":[a,c,s,e,i,t,n,d,g,m,j,"static/chunks/8676-c38bd41883242e8e.js","static/chunks/pages/admin-5221044a356250c9.js"],"/admin/access-tokens":[a,c,s,e,i,t,"static/chunks/pages/admin/access-tokens-11d48bfbb9164a75.js"],"/admin/actions":[p,a,c,s,e,i,v,"static/chunks/pages/admin/actions-74918267e1a136d4.js"],"/admin/chat/emojis":[a,c,s,e,i,f,b,"static/chunks/pages/admin/chat/emojis-9274294b9a191b7a.js"],"/admin/chat/messages":[p,a,c,s,e,i,t,d,A,"static/chunks/pages/admin/chat/messages-2228eaaf3b330365.js"],"/admin/chat/users":[p,a,c,s,e,i,t,n,d,A,"static/chunks/pages/admin/chat/users-91c7fbe4fd9c6cbb.js"],"/admin/config/general":[u,a,c,s,e,i,n,f,k,r,b,E,S,C,D,L,T,B,"static/chunks/pages/admin/config/general-2e540455daa23d73.js"],"/admin/config/general/AppearanceConfig":[u,a,k,r,S,C,T,B,"static/chunks/pages/admin/config/general/AppearanceConfig-3d2379bb7f097424.js"],"/admin/config/general/EditInstanceDetails":[a,f,b,"static/chunks/pages/admin/config/general/EditInstanceDetails-0b324244b9978a07.js"],"/admin/config/general/EditInstanceTags":[a,"static/chunks/pages/admin/config/general/EditInstanceTags-3d7d72be67052cec.js"],"/admin/config/general/EditPageContent":[u,a,k,E,"static/chunks/pages/admin/config/general/EditPageContent-e101c7f78ef66b6a.js"],"/admin/config/general/EditSocialLinks":[a,c,s,e,i,"static/chunks/pages/admin/config/general/EditSocialLinks-db508934871e2eff.js"],"/admin/config/general/GeneralConfig":[u,a,c,s,e,i,f,k,b,E,D,L,"static/chunks/pages/admin/config/general/GeneralConfig-b931adbf2293fcf6.js"],"/admin/config/server":[a,c,s,e,i,n,v,_,"static/chunks/3053-f889bb9e40cef295.js","static/chunks/pages/admin/config/server-0ab5c07af1aba27e.js"],"/admin/config/server/EditStorage":[_,"static/chunks/pages/admin/config/server/EditStorage-84658e643ba5dfb1.js"],"/admin/config/server/ServerConfig":[a,"static/chunks/pages/admin/config/server/ServerConfig-616671cf6111873e.js"],"/admin/config/server/StorageConfig":[_,"static/chunks/pages/admin/config/server/StorageConfig-5a32cff15b2e4816.js"],"/admin/config/server/StreamKeys":[a,c,s,e,i,v,"static/chunks/pages/admin/config/server/StreamKeys-767ee163c1c4200d.js"],"/admin/config-chat":[a,"static/chunks/pages/admin/config-chat-b4857a4a7fae071a.js"],"/admin/config-federation":[a,"static/chunks/8995-2163bbfbcf40237a.js","static/chunks/pages/admin/config-federation-9ae27c1ba5d89acd.js"],"/admin/config-notify":[a,"static/chunks/7187-1eb4e0029ced6d6f.js","static/chunks/pages/admin/config-notify-85efccec12709d62.js"],"/admin/config-social-items":[a,c,s,e,i,"static/chunks/pages/admin/config-social-items-8f4a66e3d0dbf3ff.js"],"/admin/config-video":[a,c,s,e,i,C,"static/chunks/2729-1c5084eb645c9eab.js","static/chunks/pages/admin/config-video-63aec11ae5babbd9.js"],"/admin/federation/actions":[a,c,s,e,i,t,"static/chunks/pages/admin/federation/actions-c184bd23e2d9eac5.js"],"/admin/federation/followers":[c,s,e,i,t,n,"static/chunks/pages/admin/federation/followers-75a86a3e75f888a3.js"],"/admin/hardware-info":[w,a,t,n,f,g,m,I,"static/chunks/pages/admin/hardware-info-d11303541299769a.js"],"/admin/help":[n,g,r,S,"static/chunks/7489-91919409cf4b77e3.js","static/chunks/pages/admin/help-fbff8a2a1b5bf08a.js"],"/admin/logs":[a,c,s,e,i,t,j,"static/chunks/pages/admin/logs-7fe8747cfcf76f8a.js"],"/admin/stream-health":[w,a,t,n,g,m,I,"static/chunks/7731-d5fe01dab1371c4e.js","static/chunks/pages/admin/stream-health-1a0b9804bb7e2b81.js"],"/admin/upgrade":[a,c,s,e,i,"static/chunks/2069-d9f139bc73aea8db.js","static/chunks/pages/admin/upgrade-0ddabcb9157be8ec.js"],"/admin/viewer-info":[w,a,c,s,e,i,t,n,f,d,g,m,I,"static/chunks/pages/admin/viewer-info-4f547dca5d68024e.js"],"/admin/webhooks":[a,c,s,e,i,"static/chunks/pages/admin/webhooks-e8966ce2d3b8efca.js"],"/embed/chat/readonly":[F,P,o,G,l,h,K,"static/css/a49791b44feb7f30.css","static/chunks/pages/embed/chat/readonly-cb4490b31a64cd75.js"],"/embed/chat/readwrite":[F,P,s,o,G,l,h,K,"static/css/5d951a67116735a9.css","static/chunks/pages/embed/chat/readwrite-354e75dfae993857.js"],"/embed/video":["static/chunks/d6e1aeb5-0705bf43bcd6af77.js",d,o,"static/css/7c735c05af084bb2.css","static/chunks/7902-139b487986de3737.js",y,h,"static/chunks/2239-de44814eef43316f.js","static/css/f065863129f648da.css","static/chunks/pages/embed/video-ff4917f8414b83db.js"],sortedPages:["/","/_app","/_error","/admin","/admin/access-tokens","/admin/actions","/admin/chat/emojis","/admin/chat/messages","/admin/chat/users","/admin/config/general","/admin/config/general/AppearanceConfig","/admin/config/general/EditInstanceDetails","/admin/config/general/EditInstanceTags","/admin/config/general/EditPageContent","/admin/config/general/EditSocialLinks","/admin/config/general/GeneralConfig","/admin/config/server","/admin/config/server/EditStorage","/admin/config/server/ServerConfig","/admin/config/server/StorageConfig","/admin/config/server/StreamKeys","/admin/config-chat","/admin/config-federation","/admin/config-notify","/admin/config-social-items","/admin/config-video","/admin/federation/actions","/admin/federation/followers","/admin/hardware-info","/admin/help","/admin/logs","/admin/stream-health","/admin/upgrade","/admin/viewer-info","/admin/webhooks","/embed/chat/readonly","/embed/chat/readwrite","/embed/video"]}}("static/chunks/4485-1a6d1dff2c7e9712.js","static/chunks/3903-40ef42f3e9eb46b5.js","static/chunks/8909-a55c2326f65c0475.js","static/chunks/4267-cfe0f573c442773c.js","static/chunks/2206-53aea32a26a350a8.js","static/chunks/575-11393a44fd60b818.js","static/chunks/8091-5d2e0cdb05cd1ef7.js","static/chunks/5938-b5bac17e4fa31c49.js","static/chunks/7910-44b63d030e4b1767.js","static/chunks/5101-e2c6238798b20535.js","static/chunks/6395-1fa5d21fb518ec29.js","static/chunks/1082-51b9f63c6446d49d.js","static/chunks/7466-1e76829814bac0c3.js","static/chunks/4763-5757756084a7030f.js","static/chunks/7916-e38ed2fa52bf263a.js","static/chunks/4ad82c5e-573627f1f4333b92.js","static/chunks/1943-e262059251f7aba4.js","static/chunks/5360-dda91f1e1413b52a.js","static/chunks/7076-590a6708d19dea17.js","static/chunks/29107295-1453a3860b50f70e.js","static/chunks/8119-57984c2c349ea105.js","static/chunks/6538-fcb7c6bc22cf143a.js","static/chunks/1700-92b04edbce34d1e2.js","static/chunks/7661-9773fc2a51b7e27d.js","static/chunks/5473-3b17a2863117f4d3.js","static/chunks/ee8b1517-59bb2a2ed7929bc5.js","static/chunks/8245-bd6f98841500302a.js","static/chunks/7066-524305b22bfbc967.js","static/chunks/9550-1a77c14173cd266e.js","static/chunks/7291-22e2f9b1d0dcca39.js","static/chunks/8645-46c7af6239989048.js","static/chunks/3522-cedaab7b5d943e53.js","static/css/92e768f7d359a80f.css","static/chunks/d3048c20-93c008b4ff3ddb0e.js","static/chunks/d2094a0f-c2013de6dbc53323.js","static/chunks/3729-e88e6289f5436bb5.js","static/chunks/4977-1b8a661db2793f1c.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB(); \ No newline at end of file diff --git a/static/web/_next/static/v1jgYMMPBZsFd9swcja8o/_ssgManifest.js b/static/web/_next/static/NYUKTG5kVHGWZBcZAHgIb/_ssgManifest.js similarity index 100% rename from static/web/_next/static/v1jgYMMPBZsFd9swcja8o/_ssgManifest.js rename to static/web/_next/static/NYUKTG5kVHGWZBcZAHgIb/_ssgManifest.js diff --git a/static/web/_next/static/chunks/8645-2f9715937dd49887.js b/static/web/_next/static/chunks/8645-2f9715937dd49887.js deleted file mode 100644 index f3f2f6b6d..000000000 --- a/static/web/_next/static/chunks/8645-2f9715937dd49887.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8645],{80894:function(e,a,s){s.d(a,{Q:function(){return d},Y:function(){return u}});var t=s(85893),n=s(67294),l=s(84485),i=s(20550),r=s(40117),o=s(39664);let{Title:c}=l.Z,d="#5a67d8",u=e=>{let{title:a,description:s,placeholder:l,maxLength:u,values:m,handleDeleteIndex:h,handleCreateString:p,submitStatus:f,continuousStatusMessage:x}=e,[j,g]=(0,n.useState)(""),v=e=>{let{value:a}=e;g(a)},N=()=>{let e=j.trim();p(e),g("")};return(0,t.jsxs)("div",{className:"edit-string-array-container",children:[(0,t.jsx)(c,{level:3,className:"section-title",children:a}),(0,t.jsx)("p",{className:"description",children:s}),(0,t.jsx)("div",{className:"edit-current-strings",children:null==m?void 0:m.map((e,a)=>{let s=()=>{h(a)};return(0,t.jsx)(i.Z,{closable:!0,onClose:s,color:d,children:e},"tag-".concat(e,"-").concat(a))})}),x&&(0,t.jsx)("div",{className:"continuous-status-section",children:(0,t.jsx)(o.E,{status:x})}),(0,t.jsx)("div",{className:"add-new-string-section",children:(0,t.jsx)(r.nv,{fieldName:"string-input",value:j,onChange:v,onPressEnter:N,maxLength:u,placeholder:l,status:f})})]})};u.defaultProps={maxLength:50,description:null,submitStatus:null,continuousStatusMessage:null}},73706:function(e,a,s){s.d(a,{Z:function(){return d}});var t=s(85893),n=s(67294),l=s(94594),i=s(41983),r=s(39664),o=s(90745),c=s(99519);let d=e=>{let{apiPath:a,checked:s,reversed:d=!1,configPath:u="",disabled:m=!1,fieldName:h,label:p,tip:f,useSubmit:x,onChange:j}=e,[g,v]=(0,n.useState)(null),N=null,k=(0,n.useContext)(c.aC),{setFieldInConfigState:y}=k||{},b=()=>{v(null),clearTimeout(N),N=null},w=async e=>{if(x){v((0,i.kg)(i.Jk));let s=d?!e:e;await (0,o.Si)({apiPath:a,data:{value:s},onSuccess(){y({fieldName:h,value:s,path:u}),v((0,i.kg)(i.zv))},onError(e){v((0,i.kg)(i.Un,"There was an error: ".concat(e)))}}),N=setTimeout(b,o.sI)}j&&j(e)},C=null!==g&&g.type===i.Jk;return(0,t.jsxs)("div",{className:"formfield-container toggleswitch-container",children:[p&&(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:p})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)(l.Z,{className:"switch field-".concat(h),loading:C,onChange:w,defaultChecked:s,checked:s,checkedChildren:"ON",unCheckedChildren:"OFF",disabled:m}),(0,t.jsx)(r.E,{status:g})]}),(0,t.jsx)("p",{className:"field-tip",children:f})]})]})};d.defaultProps={apiPath:"",checked:!1,reversed:!1,configPath:"",disabled:!1,label:"",tip:"",useSubmit:!1,onChange:null}},67650:function(e,a,s){s.r(a),s.d(a,{default:function(){return N}});var t=s(85893),n=s(67294),l=s(84485),i=s(10135),r=s(99519),o=s(90745),c=s(73706),d=s(77916),u=s(71577),m=s(50888),h=s(88484),p=s(39664),f=s(41983),x=s(64777),j=s(60956);let g=()=>{var e;let[a,s]=(0,n.useState)(null),[l,i]=(0,n.useState)(!1),[c,g]=(0,n.useState)(0),v=(0,n.useContext)(r.aC),{setFieldInConfigState:N,serverConfig:k}=v||{},y=null==k?void 0:null===(e=k.instanceDetails)||void 0===e?void 0:e.logo,[b,w]=(0,n.useState)(null),C=null,{apiPath:S,tip:Z}=o.ZQ,T=()=>{w(null),clearTimeout(C),C=null},E=e=>(i(!0),new Promise((a,t)=>{if(e.size>j.Z7){let n="File size is too big: ".concat((0,j.kR)(e.size));return w((0,f.kg)(f.Un,"There was an error: ".concat(n))),C=setTimeout(T,o.sI),i(!1),t()}if(!j.dr.includes(e.type)){let l="File type is not supported: ".concat(e.type);return w((0,f.kg)(f.Un,"There was an error: ".concat(l))),C=setTimeout(T,o.sI),i(!1),t()}(0,j.y3)(e,e=>(s(e),a()))})),P=async()=>{a!==y&&(w((0,f.kg)(f.Jk)),await (0,o.Si)({apiPath:S,data:{value:a},onSuccess(){N({fieldName:"logo",value:a,path:""}),w((0,f.kg)(f.zv)),i(!1),g(Math.floor(100*Math.random()))},onError(e){w((0,f.kg)(f.Un,"There was an error: ".concat(e))),i(!1)}}),C=setTimeout(T,o.sI))},z="".concat(x.WB,"logo?random=").concat(c);return(0,t.jsxs)("div",{className:"formfield-container logo-upload-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Logo"})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)("img",{src:z,alt:"avatar",className:"logo-preview"}),(0,t.jsx)(d.Z,{name:"logo",listType:"picture",className:"avatar-uploader",showUploadList:!1,accept:j.dr.join(","),beforeUpload:E,customRequest:P,disabled:l,children:l?(0,t.jsx)(m.Z,{style:{color:"white"}}):(0,t.jsx)(u.Z,{icon:(0,t.jsx)(h.Z,{})})})]}),(0,t.jsx)(p.E,{status:b}),(0,t.jsx)("p",{className:"field-tip",children:Z})]})]})},{Title:v}=l.Z;function N(){let[e,a]=(0,n.useState)(null),s=(0,n.useContext)(r.aC),{serverConfig:l}=s||{},{instanceDetails:d,yp:u}=l,{instanceUrl:m}=u;if((0,n.useEffect)(()=>{a({...d,...u})},[d,u]),!e)return null;let h=()=>{""===e.instanceUrl&&!0===u.enabled&&(0,o.Si)({apiPath:o.AP,data:{value:!1}})},p=s=>{let{fieldName:t,value:n}=s;a({...e,[t]:n})},f=""!==m;return(0,t.jsxs)("div",{className:"edit-general-settings",children:[(0,t.jsx)(v,{level:3,className:"section-title",children:"Configure Instance Details"}),(0,t.jsx)("br",{}),(0,t.jsx)(i.$7,{fieldName:"name",...o.RE,value:e.name,initialValue:d.name,onChange:p}),(0,t.jsx)(i.$7,{fieldName:"instanceUrl",...o.cj,value:e.instanceUrl,initialValue:u.instanceUrl,type:i.xA,onChange:p,onSubmit:h}),(0,t.jsx)(i.$7,{fieldName:"summary",...o.rs,type:i.Sk,value:e.summary,initialValue:d.summary,onChange:p}),(0,t.jsx)(i.$7,{fieldName:"offlineMessage",...o.rd,type:i.Sk,value:e.offlineMessage,initialValue:d.offlineMessage,onChange:p}),(0,t.jsx)(g,{}),(0,t.jsx)(c.Z,{fieldName:"hideViewerCount",useSubmit:!0,...o._X,checked:e.hideViewerCount,onChange:function(e){p({fieldName:"hideViewerCount",value:e})}}),(0,t.jsx)("br",{}),(0,t.jsxs)("p",{className:"description",children:["Increase your audience by appearing in the"," ",(0,t.jsx)("a",{href:"https://directory.owncast.online",target:"_blank",rel:"noreferrer",children:(0,t.jsx)("strong",{children:"Owncast Directory"})}),". This is an external service run by the Owncast project."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/directory/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more"}),"."]}),!u.instanceUrl&&(0,t.jsxs)("p",{className:"description",children:["You must set your ",(0,t.jsx)("strong",{children:"Server URL"})," above to enable the directory."]}),(0,t.jsxs)("div",{className:"config-yp-container",children:[(0,t.jsx)(c.Z,{fieldName:"enabled",useSubmit:!0,...o.P,checked:e.enabled,disabled:!f}),(0,t.jsx)(c.Z,{fieldName:"nsfw",useSubmit:!0,...o.EY,checked:e.nsfw,disabled:!f})]})]})}},99683:function(e,a,s){s.r(a),s.d(a,{default:function(){return h}});var t=s(85893),n=s(67294),l=s(84485),i=s(20550),r=s(99519),o=s(90745),c=s(40117),d=s(41983),u=s(80894);let{Title:m}=l.Z;function h(){let[e,a]=(0,n.useState)(""),[s,l]=(0,n.useState)(null),h=(0,n.useContext)(r.aC),{serverConfig:p,setFieldInConfigState:f}=h||{},{instanceDetails:x}=p,{tags:j=[]}=x,{apiPath:g,maxLength:v,placeholder:N,configPath:k}=o.y_,y=null;(0,n.useEffect)(()=>()=>{clearTimeout(y)},[]);let b=()=>{l(null),clearTimeout(y=null)},w=async e=>{l((0,d.kg)(d.Jk)),await (0,o.Si)({apiPath:g,data:{value:e},onSuccess(){f({fieldName:"tags",value:e,path:k}),l((0,d.kg)(d.zv,"Tags updated.")),a(""),y=setTimeout(b,o.sI)},onError(e){l((0,d.kg)(d.Un,e)),y=setTimeout(b,o.sI)}})},C=e=>{let{value:t}=e;s||l(null),a(t)},S=()=>{b();let a=e.trim();if(""===a){l((0,d.kg)(d.dG,"Please enter a tag"));return}if(j.some(e=>e.toLowerCase()===a.toLowerCase())){l((0,d.kg)(d.dG,"This tag is already used!"));return}let s=[...j,a];w(s)},Z=e=>{b();let a=[...j];a.splice(e,1),w(a)};return(0,t.jsxs)("div",{className:"tag-editor-container",children:[(0,t.jsx)(m,{level:3,className:"section-title",children:"Add Tags"}),(0,t.jsx)("p",{className:"description",children:"This is a great way to categorize your Owncast server on the Directory!"}),(0,t.jsx)("div",{className:"edit-current-strings",children:j.map((e,a)=>{let s=()=>{Z(a)};return(0,t.jsx)(i.Z,{closable:!0,onClose:s,color:u.Q,children:e},"tag-".concat(e,"-").concat(a))})}),(0,t.jsx)("div",{className:"add-new-string-section",children:(0,t.jsx)(c.nv,{fieldName:"tag-input",value:e,className:"new-tag-input",onChange:C,onPressEnter:S,maxLength:v,placeholder:N,status:s})})]})}},42441:function(e,a,s){s.r(a),s.d(a,{default:function(){return x}});var t=s(85893),n=s(67294),l=s(84485),i=s(71577),r=s(87685),o=s(58909),c=s(48825),d=s(76538),u=s(99519),m=s(90745),h=s(41983),p=s(39664);let{Title:f}=l.Z;function x(){let[e,a]=(0,n.useState)(""),[s,l]=(0,n.useState)(null),[x,j]=(0,n.useState)(!1),g=(0,n.useContext)(u.aC),{serverConfig:v,setFieldInConfigState:N}=g||{},{instanceDetails:k}=v,{extraPageContent:y}=k,b=null,w=()=>{l(null),j(!1),clearTimeout(b),b=null};async function C(){l((0,h.kg)(h.Jk)),await (0,m.Si)({apiPath:m.AA,data:{value:e},onSuccess(a){N({fieldName:"extraPageContent",value:e,path:"instanceDetails"}),l((0,h.kg)(h.zv,a))},onError(e){l((0,h.kg)(h.Un,e))}}),b=setTimeout(w,m.sI)}return(0,n.useEffect)(()=>{a(y)},[k]),(0,t.jsxs)("div",{className:"edit-page-content",children:[(0,t.jsx)(f,{level:3,className:"section-title",children:"Custom Page Content"}),(0,t.jsxs)("p",{className:"description",children:["Edit the content of your page by using simple"," ",(0,t.jsx)("a",{href:"https://www.markdownguide.org/basic-syntax/",target:"_blank",rel:"noopener noreferrer",children:"Markdown syntax"}),"."]}),(0,t.jsx)(r.ZP,{value:e,placeholder:"Enter your custom page content here...",theme:o.F,onChange:function(e){a(e),e===y||x?e===y&&x&&j(!1):j(!0)},extensions:[(0,c.markdown)({base:c.markdownLanguage,codeLanguages:d.M})]}),(0,t.jsx)("br",{}),(0,t.jsxs)("div",{className:"page-content-actions",children:[x&&(0,t.jsx)(i.Z,{type:"primary",onClick:C,children:"Save"}),(0,t.jsx)(p.E,{status:s})]})]})}},51353:function(e,a,s){s.r(a),s.d(a,{default:function(){return b}});var t=s(85893),n=s(67294),l=s(84485),i=s(71577),r=s(69677),o=s(52206),c=s(85402),d=s(10010),u=s(39398),m=s(48689),h=s(38939),p=s(90745);let f=e=>{let{iconList:a,selectedOption:s,onSelected:n}=e,l=e=>{n&&n(e)},i=""===s?null:s;return(0,t.jsxs)("div",{className:"social-dropdown-container",children:[(0,t.jsx)("p",{className:"description",children:"If you are looking for a platform name not on this list, please select Other and type in your own name. A logo will not be provided."}),(0,t.jsxs)("div",{className:"formfield-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Social Platform"})}),(0,t.jsx)("div",{className:"input-side",children:(0,t.jsxs)(h.Z,{style:{width:240},className:"social-dropdown",placeholder:"Social platform...",defaultValue:i,value:i,onSelect:l,children:[a.map(e=>{let{platform:a,icon:s,key:n}=e;return(0,t.jsxs)(h.Z.Option,{className:"social-option",value:n,children:[(0,t.jsx)("span",{className:"option-icon",children:(0,t.jsx)("img",{src:s,alt:"",className:"option-icon"})}),(0,t.jsx)("span",{className:"option-label",children:a})]},"platform-".concat(n))}),(0,t.jsx)(h.Z.Option,{className:"social-option",value:p.z_,children:"Other..."},"platform-".concat(p.z_))]})})]})]})};var x=s(64777),j=s(99519),g=s(37174),v=s(40117),N=s(41983),k=s(39664);let{Title:y}=l.Z;function b(){var e,a;let[s,l]=(0,n.useState)([]),[h,b]=(0,n.useState)([]),[w,C]=(0,n.useState)(!1),[S,Z]=(0,n.useState)(!1),[T,E]=(0,n.useState)(!1),[P,z]=(0,n.useState)(-1),[L,U]=(0,n.useState)(p.wC),[I,_]=(0,n.useState)(null),M=(0,n.useContext)(j.aC),{serverConfig:O,setFieldInConfigState:B}=M||{},{instanceDetails:A}=O,{socialHandles:V}=A,R=async()=>{try{let e=await (0,x.rQ)(x.$i,{auth:!1}),a=Object.keys(e).map(a=>({key:a,...e[a]}));l(a)}catch(s){console.log(s)}},D=e=>s.find(a=>a.key===e)||!1,F=""!==L.platform&&!s.find(e=>e.key===L.platform);(0,n.useEffect)(()=>{R()},[]),(0,n.useEffect)(()=>{A.socialHandles&&b(V)},[A]);let H=()=>{_(null),clearTimeout(null)},J=()=>{C(!1),z(-1),Z(!1),E(!1),U({...p.wC})},Y=()=>{J()},$=(e,a)=>{U({...L,[e]:a})},Q=e=>{e===p.z_?(Z(!0),$("platform","")):(Z(!1),$("platform",e))},G=e=>{let{value:a}=e.target;$("platform",a)},K=e=>{let{value:a}=e;$("url",a)},q=async e=>{await (0,p.Si)({apiPath:p.c9,data:{value:e},onSuccess(){B({fieldName:"socialHandles",value:e,path:"instanceDetails"}),E(!1),Y(),_((0,N.kg)(N.zv)),setTimeout(H,p.sI)},onError(e){_((0,N.kg)(N.Un,"There was an error: ".concat(e))),E(!1),setTimeout(H,p.sI)}})},W=()=>{E(!0);let e=h.length?[...h]:[];-1===P?e.push(L):e.splice(P,1,L),q(e)},X=e=>{let a=[...h];a.splice(e,1),q(a)},ee=e=>{if(e<=0||e>=h.length)return;let a=[...h],s=a[e-1];a[e-1]=a[e],a[e]=s,q(a)},ea=e=>{if(e<0||e>=h.length-1)return;let a=[...h],s=a[e+1];a[e+1]=a[e],a[e]=s,q(a)},es={disabled:(e=L.url,"xmpp"===(a=L.platform)?!(0,g.Kf)(e,"xmpp"):"matrix"===a?!(0,g.bu)(e):!(0,g.jv)(e))},et=(0,t.jsxs)("div",{className:"other-field-container formfield-container",children:[(0,t.jsx)("div",{className:"label-side"}),(0,t.jsx)("div",{className:"input-side",children:(0,t.jsx)(r.Z,{placeholder:"Other platform name",defaultValue:L.platform,onChange:G})})]});return(0,t.jsxs)("div",{className:"social-links-edit-container",children:[(0,t.jsx)(y,{level:3,className:"section-title",children:"Your Social Handles"}),(0,t.jsx)("p",{className:"description",children:"Add all your social media handles and links to your other profiles here."}),(0,t.jsx)(k.E,{status:I}),(0,t.jsx)(o.Z,{className:"social-handles-table",pagination:!1,size:"small",rowKey:e=>"".concat(e.platform,"-").concat(e.url),columns:[{title:"Social Link",dataIndex:"",key:"combo",render(e,a){let{platform:s,url:n}=a,l=D(s);if(!l)return(0,t.jsx)("div",{className:"social-handle-cell",children:(0,t.jsxs)("p",{className:"option-label",children:[(0,t.jsx)("strong",{children:s}),(0,t.jsx)("span",{className:"handle-url",title:n,children:n})]})});let{icon:i,platform:r}=l;return(0,t.jsxs)("div",{className:"social-handle-cell",children:[(0,t.jsx)("span",{className:"option-icon",children:(0,t.jsx)("img",{src:i,alt:"",className:"option-icon"})}),(0,t.jsxs)("p",{className:"option-label",children:[(0,t.jsx)("strong",{children:r}),(0,t.jsx)("span",{className:"handle-url",title:n,children:n})]})]})}},{title:"",dataIndex:"",key:"edit",render:(e,a,s)=>(0,t.jsxs)("div",{className:"actions",children:[(0,t.jsx)(i.Z,{size:"small",onClick(){let e=h[s];z(s),U({...e}),C(!0),D(e.platform)||Z(!0)},children:"Edit"}),(0,t.jsx)(i.Z,{icon:(0,t.jsx)(d.Z,{}),size:"small",hidden:0===s,onClick:()=>ee(s)}),(0,t.jsx)(i.Z,{icon:(0,t.jsx)(u.Z,{}),size:"small",hidden:s===h.length-1,onClick:()=>ea(s)}),(0,t.jsx)(i.Z,{className:"delete-button",icon:(0,t.jsx)(m.Z,{}),size:"small",onClick:()=>X(s)})]})}],dataSource:h}),(0,t.jsx)(c.Z,{title:"Edit Social Handle",open:w,onOk:W,onCancel:Y,confirmLoading:T,okButtonProps:es,children:(0,t.jsxs)("div",{className:"social-handle-modal-content",children:[(0,t.jsx)(f,{iconList:s,selectedOption:F?p.z_:L.platform,onSelected:Q}),S&&et,(0,t.jsx)("br",{}),(0,t.jsx)(v.nv,{fieldName:"social-url",label:"URL",placeholder:{mastodon:"https://mastodon.social/@username",twitter:"https://twitter.com/username"}[L.platform]||"Url to page",value:L.url,onChange:K,useTrim:!0,type:"url",pattern:g.ax}),(0,t.jsx)(k.E,{status:I})]})}),(0,t.jsx)("br",{}),(0,t.jsx)(i.Z,{type:"primary",onClick(){J(),C(!0)},children:"Add a new social link"})]})}},98645:function(e,a,s){s.r(a),s.d(a,{default:function(){return o}});var t=s(85893);s(67294);var n=s(67650),l=s(99683),i=s(51353),r=s(42441);function o(){return(0,t.jsxs)("div",{className:"config-public-details-page",children:[(0,t.jsxs)("p",{className:"description",children:["The following are displayed on your site to describe your stream and its content."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/website/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more."})]}),(0,t.jsxs)("div",{className:"top-container",children:[(0,t.jsx)("div",{className:"form-module instance-details-container",children:(0,t.jsx)(n.default,{})}),(0,t.jsxs)("div",{className:"form-module social-items-container ",children:[(0,t.jsx)("div",{className:"form-module tags-module",children:(0,t.jsx)(l.default,{})}),(0,t.jsx)("div",{className:"form-module social-handles-container",children:(0,t.jsx)(i.default,{})})]})]}),(0,t.jsx)("div",{className:"form-module page-content-module",children:(0,t.jsx)(r.default,{})})]})}},60956:function(e,a,s){s.d(a,{Z7:function(){return t},dr:function(){return n},kR:function(){return i},y3:function(){return l}});let t=2097152,n=["image/png","image/jpeg","image/gif"];function l(e,a){let s=new FileReader;s.addEventListener("load",()=>a(s.result)),s.readAsDataURL(e)}function i(e){let a=Math.floor(Math.log(e)/Math.log(1024)),s=1*Number((e/Math.pow(1024,a)).toFixed(2));return"".concat(s," ").concat(["B","KB","MB","GB","TB","PB","EB","ZB","YB"][a])}}}]); \ No newline at end of file diff --git a/static/web/_next/static/chunks/8645-46c7af6239989048.js b/static/web/_next/static/chunks/8645-46c7af6239989048.js new file mode 100644 index 000000000..7b9ecaa73 --- /dev/null +++ b/static/web/_next/static/chunks/8645-46c7af6239989048.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8645],{80894:function(e,a,s){s.d(a,{Q:function(){return d},Y:function(){return u}});var t=s(85893),n=s(67294),l=s(84485),i=s(20550),r=s(40117),o=s(39664);let{Title:c}=l.Z,d="#5a67d8",u=e=>{let{title:a,description:s,placeholder:l,maxLength:u,values:m,handleDeleteIndex:h,handleCreateString:p,submitStatus:f,continuousStatusMessage:x}=e,[j,g]=(0,n.useState)(""),v=e=>{let{value:a}=e;g(a)},N=()=>{let e=j.trim();p(e),g("")};return(0,t.jsxs)("div",{className:"edit-string-array-container",children:[(0,t.jsx)(c,{level:3,className:"section-title",children:a}),(0,t.jsx)("p",{className:"description",children:s}),(0,t.jsx)("div",{className:"edit-current-strings",children:null==m?void 0:m.map((e,a)=>{let s=()=>{h(a)};return(0,t.jsx)(i.Z,{closable:!0,onClose:s,color:d,children:e},"tag-".concat(e,"-").concat(a))})}),x&&(0,t.jsx)("div",{className:"continuous-status-section",children:(0,t.jsx)(o.E,{status:x})}),(0,t.jsx)("div",{className:"add-new-string-section",children:(0,t.jsx)(r.nv,{fieldName:"string-input",value:j,onChange:v,onPressEnter:N,maxLength:u,placeholder:l,status:f})})]})};u.defaultProps={maxLength:50,description:null,submitStatus:null,continuousStatusMessage:null}},73706:function(e,a,s){s.d(a,{Z:function(){return d}});var t=s(85893),n=s(67294),l=s(94594),i=s(41983),r=s(39664),o=s(90745),c=s(99519);let d=e=>{let{apiPath:a,checked:s,reversed:d=!1,configPath:u="",disabled:m=!1,fieldName:h,label:p,tip:f,useSubmit:x,onChange:j}=e,[g,v]=(0,n.useState)(null),N=null,k=(0,n.useContext)(c.aC),{setFieldInConfigState:y}=k||{},b=()=>{v(null),clearTimeout(N),N=null},w=async e=>{if(x){v((0,i.kg)(i.Jk));let s=d?!e:e;await (0,o.Si)({apiPath:a,data:{value:s},onSuccess(){y({fieldName:h,value:s,path:u}),v((0,i.kg)(i.zv))},onError(e){v((0,i.kg)(i.Un,"There was an error: ".concat(e)))}}),N=setTimeout(b,o.sI)}j&&j(e)},C=null!==g&&g.type===i.Jk;return(0,t.jsxs)("div",{className:"formfield-container toggleswitch-container",children:[p&&(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:p})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)(l.Z,{className:"switch field-".concat(h),loading:C,onChange:w,defaultChecked:s,checked:s,checkedChildren:"ON",unCheckedChildren:"OFF",disabled:m}),(0,t.jsx)(r.E,{status:g})]}),(0,t.jsx)("p",{className:"field-tip",children:f})]})]})};d.defaultProps={apiPath:"",checked:!1,reversed:!1,configPath:"",disabled:!1,label:"",tip:"",useSubmit:!1,onChange:null}},67650:function(e,a,s){s.r(a),s.d(a,{default:function(){return N}});var t=s(85893),n=s(67294),l=s(84485),i=s(10135),r=s(99519),o=s(90745),c=s(73706),d=s(77916),u=s(71577),m=s(50888),h=s(88484),p=s(39664),f=s(41983),x=s(64777),j=s(60956);let g=()=>{var e;let[a,s]=(0,n.useState)(null),[l,i]=(0,n.useState)(!1),[c,g]=(0,n.useState)(0),v=(0,n.useContext)(r.aC),{setFieldInConfigState:N,serverConfig:k}=v||{},y=null==k?void 0:null===(e=k.instanceDetails)||void 0===e?void 0:e.logo,[b,w]=(0,n.useState)(null),C=null,{apiPath:S,tip:Z}=o.ZQ,T=()=>{w(null),clearTimeout(C),C=null},E=e=>(i(!0),new Promise((a,t)=>{if(e.size>j.Z7){let n="File size is too big: ".concat((0,j.kR)(e.size));return w((0,f.kg)(f.Un,"There was an error: ".concat(n))),C=setTimeout(T,o.sI),i(!1),t()}if(!j.dr.includes(e.type)){let l="File type is not supported: ".concat(e.type);return w((0,f.kg)(f.Un,"There was an error: ".concat(l))),C=setTimeout(T,o.sI),i(!1),t()}(0,j.y3)(e,e=>{s(e),setTimeout(()=>a(),100)})})),P=async()=>{a!==y&&(w((0,f.kg)(f.Jk)),await (0,o.Si)({apiPath:S,data:{value:a},onSuccess(){N({fieldName:"logo",value:a,path:""}),w((0,f.kg)(f.zv)),i(!1),g(Math.floor(100*Math.random()))},onError(e){w((0,f.kg)(f.Un,"There was an error: ".concat(e))),i(!1)}}),C=setTimeout(T,o.sI))},z="".concat(x.WB,"logo?random=").concat(c);return(0,t.jsxs)("div",{className:"formfield-container logo-upload-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Logo"})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)("img",{src:z,alt:"avatar",className:"logo-preview"}),(0,t.jsx)(d.Z,{name:"logo",listType:"picture",className:"avatar-uploader",showUploadList:!1,accept:j.dr.join(","),beforeUpload:E,customRequest:P,disabled:l,children:l?(0,t.jsx)(m.Z,{style:{color:"white"}}):(0,t.jsx)(u.Z,{icon:(0,t.jsx)(h.Z,{})})})]}),(0,t.jsx)(p.E,{status:b}),(0,t.jsx)("p",{className:"field-tip",children:Z})]})]})},{Title:v}=l.Z;function N(){let[e,a]=(0,n.useState)(null),s=(0,n.useContext)(r.aC),{serverConfig:l}=s||{},{instanceDetails:d,yp:u}=l,{instanceUrl:m}=u;if((0,n.useEffect)(()=>{a({...d,...u})},[d,u]),!e)return null;let h=()=>{""===e.instanceUrl&&!0===u.enabled&&(0,o.Si)({apiPath:o.AP,data:{value:!1}})},p=s=>{let{fieldName:t,value:n}=s;a({...e,[t]:n})},f=""!==m;return(0,t.jsxs)("div",{className:"edit-general-settings",children:[(0,t.jsx)(v,{level:3,className:"section-title",children:"Configure Instance Details"}),(0,t.jsx)("br",{}),(0,t.jsx)(i.$7,{fieldName:"name",...o.RE,value:e.name,initialValue:d.name,onChange:p}),(0,t.jsx)(i.$7,{fieldName:"instanceUrl",...o.cj,value:e.instanceUrl,initialValue:u.instanceUrl,type:i.xA,onChange:p,onSubmit:h}),(0,t.jsx)(i.$7,{fieldName:"summary",...o.rs,type:i.Sk,value:e.summary,initialValue:d.summary,onChange:p}),(0,t.jsx)(i.$7,{fieldName:"offlineMessage",...o.rd,type:i.Sk,value:e.offlineMessage,initialValue:d.offlineMessage,onChange:p}),(0,t.jsx)(g,{}),(0,t.jsx)(c.Z,{fieldName:"hideViewerCount",useSubmit:!0,...o._X,checked:e.hideViewerCount,onChange:function(e){p({fieldName:"hideViewerCount",value:e})}}),(0,t.jsx)("br",{}),(0,t.jsxs)("p",{className:"description",children:["Increase your audience by appearing in the"," ",(0,t.jsx)("a",{href:"https://directory.owncast.online",target:"_blank",rel:"noreferrer",children:(0,t.jsx)("strong",{children:"Owncast Directory"})}),". This is an external service run by the Owncast project."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/directory/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more"}),"."]}),!u.instanceUrl&&(0,t.jsxs)("p",{className:"description",children:["You must set your ",(0,t.jsx)("strong",{children:"Server URL"})," above to enable the directory."]}),(0,t.jsxs)("div",{className:"config-yp-container",children:[(0,t.jsx)(c.Z,{fieldName:"enabled",useSubmit:!0,...o.P,checked:e.enabled,disabled:!f}),(0,t.jsx)(c.Z,{fieldName:"nsfw",useSubmit:!0,...o.EY,checked:e.nsfw,disabled:!f})]})]})}},99683:function(e,a,s){s.r(a),s.d(a,{default:function(){return h}});var t=s(85893),n=s(67294),l=s(84485),i=s(20550),r=s(99519),o=s(90745),c=s(40117),d=s(41983),u=s(80894);let{Title:m}=l.Z;function h(){let[e,a]=(0,n.useState)(""),[s,l]=(0,n.useState)(null),h=(0,n.useContext)(r.aC),{serverConfig:p,setFieldInConfigState:f}=h||{},{instanceDetails:x}=p,{tags:j=[]}=x,{apiPath:g,maxLength:v,placeholder:N,configPath:k}=o.y_,y=null;(0,n.useEffect)(()=>()=>{clearTimeout(y)},[]);let b=()=>{l(null),clearTimeout(y=null)},w=async e=>{l((0,d.kg)(d.Jk)),await (0,o.Si)({apiPath:g,data:{value:e},onSuccess(){f({fieldName:"tags",value:e,path:k}),l((0,d.kg)(d.zv,"Tags updated.")),a(""),y=setTimeout(b,o.sI)},onError(e){l((0,d.kg)(d.Un,e)),y=setTimeout(b,o.sI)}})},C=e=>{let{value:t}=e;s||l(null),a(t)},S=()=>{b();let a=e.trim();if(""===a){l((0,d.kg)(d.dG,"Please enter a tag"));return}if(j.some(e=>e.toLowerCase()===a.toLowerCase())){l((0,d.kg)(d.dG,"This tag is already used!"));return}let s=[...j,a];w(s)},Z=e=>{b();let a=[...j];a.splice(e,1),w(a)};return(0,t.jsxs)("div",{className:"tag-editor-container",children:[(0,t.jsx)(m,{level:3,className:"section-title",children:"Add Tags"}),(0,t.jsx)("p",{className:"description",children:"This is a great way to categorize your Owncast server on the Directory!"}),(0,t.jsx)("div",{className:"edit-current-strings",children:j.map((e,a)=>{let s=()=>{Z(a)};return(0,t.jsx)(i.Z,{closable:!0,onClose:s,color:u.Q,children:e},"tag-".concat(e,"-").concat(a))})}),(0,t.jsx)("div",{className:"add-new-string-section",children:(0,t.jsx)(c.nv,{fieldName:"tag-input",value:e,className:"new-tag-input",onChange:C,onPressEnter:S,maxLength:v,placeholder:N,status:s})})]})}},42441:function(e,a,s){s.r(a),s.d(a,{default:function(){return x}});var t=s(85893),n=s(67294),l=s(84485),i=s(71577),r=s(87685),o=s(58909),c=s(48825),d=s(76538),u=s(99519),m=s(90745),h=s(41983),p=s(39664);let{Title:f}=l.Z;function x(){let[e,a]=(0,n.useState)(""),[s,l]=(0,n.useState)(null),[x,j]=(0,n.useState)(!1),g=(0,n.useContext)(u.aC),{serverConfig:v,setFieldInConfigState:N}=g||{},{instanceDetails:k}=v,{extraPageContent:y}=k,b=null,w=()=>{l(null),j(!1),clearTimeout(b),b=null};async function C(){l((0,h.kg)(h.Jk)),await (0,m.Si)({apiPath:m.AA,data:{value:e},onSuccess(a){N({fieldName:"extraPageContent",value:e,path:"instanceDetails"}),l((0,h.kg)(h.zv,a))},onError(e){l((0,h.kg)(h.Un,e))}}),b=setTimeout(w,m.sI)}return(0,n.useEffect)(()=>{a(y)},[k]),(0,t.jsxs)("div",{className:"edit-page-content",children:[(0,t.jsx)(f,{level:3,className:"section-title",children:"Custom Page Content"}),(0,t.jsxs)("p",{className:"description",children:["Edit the content of your page by using simple"," ",(0,t.jsx)("a",{href:"https://www.markdownguide.org/basic-syntax/",target:"_blank",rel:"noopener noreferrer",children:"Markdown syntax"}),"."]}),(0,t.jsx)(r.ZP,{value:e,placeholder:"Enter your custom page content here...",theme:o.F,onChange:function(e){a(e),e===y||x?e===y&&x&&j(!1):j(!0)},extensions:[(0,c.markdown)({base:c.markdownLanguage,codeLanguages:d.M})]}),(0,t.jsx)("br",{}),(0,t.jsxs)("div",{className:"page-content-actions",children:[x&&(0,t.jsx)(i.Z,{type:"primary",onClick:C,children:"Save"}),(0,t.jsx)(p.E,{status:s})]})]})}},51353:function(e,a,s){s.r(a),s.d(a,{default:function(){return b}});var t=s(85893),n=s(67294),l=s(84485),i=s(71577),r=s(69677),o=s(52206),c=s(85402),d=s(10010),u=s(39398),m=s(48689),h=s(38939),p=s(90745);let f=e=>{let{iconList:a,selectedOption:s,onSelected:n}=e,l=e=>{n&&n(e)},i=""===s?null:s;return(0,t.jsxs)("div",{className:"social-dropdown-container",children:[(0,t.jsx)("p",{className:"description",children:"If you are looking for a platform name not on this list, please select Other and type in your own name. A logo will not be provided."}),(0,t.jsxs)("div",{className:"formfield-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Social Platform"})}),(0,t.jsx)("div",{className:"input-side",children:(0,t.jsxs)(h.Z,{style:{width:240},className:"social-dropdown",placeholder:"Social platform...",defaultValue:i,value:i,onSelect:l,children:[a.map(e=>{let{platform:a,icon:s,key:n}=e;return(0,t.jsxs)(h.Z.Option,{className:"social-option",value:n,children:[(0,t.jsx)("span",{className:"option-icon",children:(0,t.jsx)("img",{src:s,alt:"",className:"option-icon"})}),(0,t.jsx)("span",{className:"option-label",children:a})]},"platform-".concat(n))}),(0,t.jsx)(h.Z.Option,{className:"social-option",value:p.z_,children:"Other..."},"platform-".concat(p.z_))]})})]})]})};var x=s(64777),j=s(99519),g=s(37174),v=s(40117),N=s(41983),k=s(39664);let{Title:y}=l.Z;function b(){var e,a;let[s,l]=(0,n.useState)([]),[h,b]=(0,n.useState)([]),[w,C]=(0,n.useState)(!1),[S,Z]=(0,n.useState)(!1),[T,E]=(0,n.useState)(!1),[P,z]=(0,n.useState)(-1),[L,U]=(0,n.useState)(p.wC),[I,_]=(0,n.useState)(null),M=(0,n.useContext)(j.aC),{serverConfig:O,setFieldInConfigState:B}=M||{},{instanceDetails:A}=O,{socialHandles:V}=A,R=async()=>{try{let e=await (0,x.rQ)(x.$i,{auth:!1}),a=Object.keys(e).map(a=>({key:a,...e[a]}));l(a)}catch(s){console.log(s)}},D=e=>s.find(a=>a.key===e)||!1,F=""!==L.platform&&!s.find(e=>e.key===L.platform);(0,n.useEffect)(()=>{R()},[]),(0,n.useEffect)(()=>{A.socialHandles&&b(V)},[A]);let H=()=>{_(null),clearTimeout(null)},J=()=>{C(!1),z(-1),Z(!1),E(!1),U({...p.wC})},Y=()=>{J()},$=(e,a)=>{U({...L,[e]:a})},Q=e=>{e===p.z_?(Z(!0),$("platform","")):(Z(!1),$("platform",e))},G=e=>{let{value:a}=e.target;$("platform",a)},K=e=>{let{value:a}=e;$("url",a)},q=async e=>{await (0,p.Si)({apiPath:p.c9,data:{value:e},onSuccess(){B({fieldName:"socialHandles",value:e,path:"instanceDetails"}),E(!1),Y(),_((0,N.kg)(N.zv)),setTimeout(H,p.sI)},onError(e){_((0,N.kg)(N.Un,"There was an error: ".concat(e))),E(!1),setTimeout(H,p.sI)}})},W=()=>{E(!0);let e=h.length?[...h]:[];-1===P?e.push(L):e.splice(P,1,L),q(e)},X=e=>{let a=[...h];a.splice(e,1),q(a)},ee=e=>{if(e<=0||e>=h.length)return;let a=[...h],s=a[e-1];a[e-1]=a[e],a[e]=s,q(a)},ea=e=>{if(e<0||e>=h.length-1)return;let a=[...h],s=a[e+1];a[e+1]=a[e],a[e]=s,q(a)},es={disabled:(e=L.url,"xmpp"===(a=L.platform)?!(0,g.Kf)(e,"xmpp"):"matrix"===a?!(0,g.bu)(e):!(0,g.jv)(e))},et=(0,t.jsxs)("div",{className:"other-field-container formfield-container",children:[(0,t.jsx)("div",{className:"label-side"}),(0,t.jsx)("div",{className:"input-side",children:(0,t.jsx)(r.Z,{placeholder:"Other platform name",defaultValue:L.platform,onChange:G})})]});return(0,t.jsxs)("div",{className:"social-links-edit-container",children:[(0,t.jsx)(y,{level:3,className:"section-title",children:"Your Social Handles"}),(0,t.jsx)("p",{className:"description",children:"Add all your social media handles and links to your other profiles here."}),(0,t.jsx)(k.E,{status:I}),(0,t.jsx)(o.Z,{className:"social-handles-table",pagination:!1,size:"small",rowKey:e=>"".concat(e.platform,"-").concat(e.url),columns:[{title:"Social Link",dataIndex:"",key:"combo",render(e,a){let{platform:s,url:n}=a,l=D(s);if(!l)return(0,t.jsx)("div",{className:"social-handle-cell",children:(0,t.jsxs)("p",{className:"option-label",children:[(0,t.jsx)("strong",{children:s}),(0,t.jsx)("span",{className:"handle-url",title:n,children:n})]})});let{icon:i,platform:r}=l;return(0,t.jsxs)("div",{className:"social-handle-cell",children:[(0,t.jsx)("span",{className:"option-icon",children:(0,t.jsx)("img",{src:i,alt:"",className:"option-icon"})}),(0,t.jsxs)("p",{className:"option-label",children:[(0,t.jsx)("strong",{children:r}),(0,t.jsx)("span",{className:"handle-url",title:n,children:n})]})]})}},{title:"",dataIndex:"",key:"edit",render:(e,a,s)=>(0,t.jsxs)("div",{className:"actions",children:[(0,t.jsx)(i.Z,{size:"small",onClick(){let e=h[s];z(s),U({...e}),C(!0),D(e.platform)||Z(!0)},children:"Edit"}),(0,t.jsx)(i.Z,{icon:(0,t.jsx)(d.Z,{}),size:"small",hidden:0===s,onClick:()=>ee(s)}),(0,t.jsx)(i.Z,{icon:(0,t.jsx)(u.Z,{}),size:"small",hidden:s===h.length-1,onClick:()=>ea(s)}),(0,t.jsx)(i.Z,{className:"delete-button",icon:(0,t.jsx)(m.Z,{}),size:"small",onClick:()=>X(s)})]})}],dataSource:h}),(0,t.jsx)(c.Z,{title:"Edit Social Handle",open:w,onOk:W,onCancel:Y,confirmLoading:T,okButtonProps:es,children:(0,t.jsxs)("div",{className:"social-handle-modal-content",children:[(0,t.jsx)(f,{iconList:s,selectedOption:F?p.z_:L.platform,onSelected:Q}),S&&et,(0,t.jsx)("br",{}),(0,t.jsx)(v.nv,{fieldName:"social-url",label:"URL",placeholder:{mastodon:"https://mastodon.social/@username",twitter:"https://twitter.com/username"}[L.platform]||"Url to page",value:L.url,onChange:K,useTrim:!0,type:"url",pattern:g.ax}),(0,t.jsx)(k.E,{status:I})]})}),(0,t.jsx)("br",{}),(0,t.jsx)(i.Z,{type:"primary",onClick(){J(),C(!0)},children:"Add a new social link"})]})}},98645:function(e,a,s){s.r(a),s.d(a,{default:function(){return o}});var t=s(85893);s(67294);var n=s(67650),l=s(99683),i=s(51353),r=s(42441);function o(){return(0,t.jsxs)("div",{className:"config-public-details-page",children:[(0,t.jsxs)("p",{className:"description",children:["The following are displayed on your site to describe your stream and its content."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/website/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more."})]}),(0,t.jsxs)("div",{className:"top-container",children:[(0,t.jsx)("div",{className:"form-module instance-details-container",children:(0,t.jsx)(n.default,{})}),(0,t.jsxs)("div",{className:"form-module social-items-container ",children:[(0,t.jsx)("div",{className:"form-module tags-module",children:(0,t.jsx)(l.default,{})}),(0,t.jsx)("div",{className:"form-module social-handles-container",children:(0,t.jsx)(i.default,{})})]})]}),(0,t.jsx)("div",{className:"form-module page-content-module",children:(0,t.jsx)(r.default,{})})]})}},60956:function(e,a,s){s.d(a,{Z7:function(){return t},dr:function(){return n},kR:function(){return i},y3:function(){return l}});let t=2097152,n=["image/png","image/jpeg","image/gif"];function l(e,a){let s=new FileReader;s.addEventListener("load",()=>a(s.result)),s.readAsDataURL(e)}function i(e){let a=Math.floor(Math.log(e)/Math.log(1024)),s=1*Number((e/Math.pow(1024,a)).toFixed(2));return"".concat(s," ").concat(["B","KB","MB","GB","TB","PB","EB","ZB","YB"][a])}}}]); \ No newline at end of file diff --git a/static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-d858837cd97e51ce.js b/static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-0b324244b9978a07.js similarity index 62% rename from static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-d858837cd97e51ce.js rename to static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-0b324244b9978a07.js index 7fe4c965b..9b4e8fddb 100644 --- a/static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-d858837cd97e51ce.js +++ b/static/web/_next/static/chunks/pages/admin/config/general/EditInstanceDetails-0b324244b9978a07.js @@ -1 +1 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3353],{63606:function(e,n,a){"use strict";a.d(n,{Z:function(){return c}});var t=a(1413),i=a(67294),l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"},s=a(42135),r=function(e,n){return i.createElement(s.Z,(0,t.Z)((0,t.Z)({},e),{},{ref:n,icon:l}))};r.displayName="CheckOutlined";var c=i.forwardRef(r)},88484:function(e,n,a){"use strict";a.d(n,{Z:function(){return c}});var t=a(1413),i=a(67294),l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"upload",theme:"outlined"},s=a(42135),r=function(e,n){return i.createElement(s.Z,(0,t.Z)((0,t.Z)({},e),{},{ref:n,icon:l}))};r.displayName="UploadOutlined";var c=i.forwardRef(r)},57838:function(e,n,a){"use strict";a.d(n,{Z:function(){return l}});var t=a(97685),i=a(67294);function l(){var e=i.useReducer(function(e){return e+1},0);return(0,t.Z)(e,2)[1]}},94594:function(e,n,a){"use strict";a.d(n,{Z:function(){return N}});var t=a(87462),i=a(4942),l=a(50888),s=a(94184),r=a.n(s),c=a(97685),o=a(45987),u=a(67294),d=a(21770),f=a(15105),h=u.forwardRef(function(e,n){var a,t=e.prefixCls,l=void 0===t?"rc-switch":t,s=e.className,h=e.checked,m=e.defaultChecked,p=e.disabled,g=e.loadingIcon,v=e.checkedChildren,x=e.unCheckedChildren,b=e.onClick,N=e.onChange,j=e.onKeyDown,w=(0,o.Z)(e,["prefixCls","className","checked","defaultChecked","disabled","loadingIcon","checkedChildren","unCheckedChildren","onClick","onChange","onKeyDown"]),C=(0,d.Z)(!1,{value:h,defaultValue:m}),k=(0,c.Z)(C,2),y=k[0],Z=k[1];function E(e,n){var a=y;return p||(Z(a=e),null==N||N(a,n)),a}var S=r()(l,s,(a={},(0,i.Z)(a,"".concat(l,"-checked"),y),(0,i.Z)(a,"".concat(l,"-disabled"),p),a));return u.createElement("button",Object.assign({},w,{type:"button",role:"switch","aria-checked":y,disabled:p,className:S,ref:n,onKeyDown:function(e){e.which===f.Z.LEFT?E(!1,e):e.which===f.Z.RIGHT&&E(!0,e),null==j||j(e)},onClick:function(e){var n=E(!y,e);null==b||b(n,e)}}),g,u.createElement("span",{className:"".concat(l,"-inner")},y?v:x))});h.displayName="Switch";var m=a(53124),p=a(98866),g=a(97647),v=a(68349),x=function(e,n){var a={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&0>n.indexOf(t)&&(a[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var i=0,t=Object.getOwnPropertySymbols(e);in.indexOf(t[i])&&Object.prototype.propertyIsEnumerable.call(e,t[i])&&(a[t[i]]=e[t[i]]);return a},b=u.forwardRef(function(e,n){var a,s=e.prefixCls,c=e.size,o=e.disabled,d=e.loading,f=e.className,b=x(e,["prefixCls","size","disabled","loading","className"]),N=u.useContext(m.E_),j=N.getPrefixCls,w=N.direction,C=u.useContext(g.Z),k=u.useContext(p.Z),y=j("switch",s),Z=u.createElement("div",{className:"".concat(y,"-handle")},d&&u.createElement(l.Z,{className:"".concat(y,"-loading-icon")})),E=r()((a={},(0,i.Z)(a,"".concat(y,"-small"),"small"===(c||C)),(0,i.Z)(a,"".concat(y,"-loading"),d),(0,i.Z)(a,"".concat(y,"-rtl"),"rtl"===w),a),void 0===f?"":f);return u.createElement(v.Z,{insertExtraNode:!0},u.createElement(h,(0,t.Z)({},b,{prefixCls:y,className:E,disabled:(null!=o?o:k)||d,ref:n,loadingIcon:Z})))});b.__ANT_SWITCH=!0;var N=b},84202:function(e,n,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/config/general/EditInstanceDetails",function(){return a(67650)}])},73706:function(e,n,a){"use strict";a.d(n,{Z:function(){return u}});var t=a(85893),i=a(67294),l=a(94594),s=a(41983),r=a(39664),c=a(90745),o=a(99519);let u=e=>{let{apiPath:n,checked:a,reversed:u=!1,configPath:d="",disabled:f=!1,fieldName:h,label:m,tip:p,useSubmit:g,onChange:v}=e,[x,b]=(0,i.useState)(null),N=null,j=(0,i.useContext)(o.aC),{setFieldInConfigState:w}=j||{},C=()=>{b(null),clearTimeout(N),N=null},k=async e=>{if(g){b((0,s.kg)(s.Jk));let a=u?!e:e;await (0,c.Si)({apiPath:n,data:{value:a},onSuccess(){w({fieldName:h,value:a,path:d}),b((0,s.kg)(s.zv))},onError(e){b((0,s.kg)(s.Un,"There was an error: ".concat(e)))}}),N=setTimeout(C,c.sI)}v&&v(e)},y=null!==x&&x.type===s.Jk;return(0,t.jsxs)("div",{className:"formfield-container toggleswitch-container",children:[m&&(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:m})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)(l.Z,{className:"switch field-".concat(h),loading:y,onChange:k,defaultChecked:a,checked:a,checkedChildren:"ON",unCheckedChildren:"OFF",disabled:f}),(0,t.jsx)(r.E,{status:x})]}),(0,t.jsx)("p",{className:"field-tip",children:p})]})]})};u.defaultProps={apiPath:"",checked:!1,reversed:!1,configPath:"",disabled:!1,label:"",tip:"",useSubmit:!1,onChange:null}},67650:function(e,n,a){"use strict";a.r(n),a.d(n,{default:function(){return N}});var t=a(85893),i=a(67294),l=a(84485),s=a(10135),r=a(99519),c=a(90745),o=a(73706),u=a(77916),d=a(71577),f=a(50888),h=a(88484),m=a(39664),p=a(41983),g=a(64777),v=a(60956);let x=()=>{var e;let[n,a]=(0,i.useState)(null),[l,s]=(0,i.useState)(!1),[o,x]=(0,i.useState)(0),b=(0,i.useContext)(r.aC),{setFieldInConfigState:N,serverConfig:j}=b||{},w=null==j?void 0:null===(e=j.instanceDetails)||void 0===e?void 0:e.logo,[C,k]=(0,i.useState)(null),y=null,{apiPath:Z,tip:E}=c.ZQ,S=()=>{k(null),clearTimeout(y),y=null},T=e=>(s(!0),new Promise((n,t)=>{if(e.size>v.Z7){let i="File size is too big: ".concat((0,v.kR)(e.size));return k((0,p.kg)(p.Un,"There was an error: ".concat(i))),y=setTimeout(S,c.sI),s(!1),t()}if(!v.dr.includes(e.type)){let l="File type is not supported: ".concat(e.type);return k((0,p.kg)(p.Un,"There was an error: ".concat(l))),y=setTimeout(S,c.sI),s(!1),t()}(0,v.y3)(e,e=>(a(e),n()))})),_=async()=>{n!==w&&(k((0,p.kg)(p.Jk)),await (0,c.Si)({apiPath:Z,data:{value:n},onSuccess(){N({fieldName:"logo",value:n,path:""}),k((0,p.kg)(p.zv)),s(!1),x(Math.floor(100*Math.random()))},onError(e){k((0,p.kg)(p.Un,"There was an error: ".concat(e))),s(!1)}}),y=setTimeout(S,c.sI))},O="".concat(g.WB,"logo?random=").concat(o);return(0,t.jsxs)("div",{className:"formfield-container logo-upload-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Logo"})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)("img",{src:O,alt:"avatar",className:"logo-preview"}),(0,t.jsx)(u.Z,{name:"logo",listType:"picture",className:"avatar-uploader",showUploadList:!1,accept:v.dr.join(","),beforeUpload:T,customRequest:_,disabled:l,children:l?(0,t.jsx)(f.Z,{style:{color:"white"}}):(0,t.jsx)(d.Z,{icon:(0,t.jsx)(h.Z,{})})})]}),(0,t.jsx)(m.E,{status:C}),(0,t.jsx)("p",{className:"field-tip",children:E})]})]})},{Title:b}=l.Z;function N(){let[e,n]=(0,i.useState)(null),a=(0,i.useContext)(r.aC),{serverConfig:l}=a||{},{instanceDetails:u,yp:d}=l,{instanceUrl:f}=d;if((0,i.useEffect)(()=>{n({...u,...d})},[u,d]),!e)return null;let h=()=>{""===e.instanceUrl&&!0===d.enabled&&(0,c.Si)({apiPath:c.AP,data:{value:!1}})},m=a=>{let{fieldName:t,value:i}=a;n({...e,[t]:i})},p=""!==f;return(0,t.jsxs)("div",{className:"edit-general-settings",children:[(0,t.jsx)(b,{level:3,className:"section-title",children:"Configure Instance Details"}),(0,t.jsx)("br",{}),(0,t.jsx)(s.$7,{fieldName:"name",...c.RE,value:e.name,initialValue:u.name,onChange:m}),(0,t.jsx)(s.$7,{fieldName:"instanceUrl",...c.cj,value:e.instanceUrl,initialValue:d.instanceUrl,type:s.xA,onChange:m,onSubmit:h}),(0,t.jsx)(s.$7,{fieldName:"summary",...c.rs,type:s.Sk,value:e.summary,initialValue:u.summary,onChange:m}),(0,t.jsx)(s.$7,{fieldName:"offlineMessage",...c.rd,type:s.Sk,value:e.offlineMessage,initialValue:u.offlineMessage,onChange:m}),(0,t.jsx)(x,{}),(0,t.jsx)(o.Z,{fieldName:"hideViewerCount",useSubmit:!0,...c._X,checked:e.hideViewerCount,onChange:function(e){m({fieldName:"hideViewerCount",value:e})}}),(0,t.jsx)("br",{}),(0,t.jsxs)("p",{className:"description",children:["Increase your audience by appearing in the"," ",(0,t.jsx)("a",{href:"https://directory.owncast.online",target:"_blank",rel:"noreferrer",children:(0,t.jsx)("strong",{children:"Owncast Directory"})}),". This is an external service run by the Owncast project."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/directory/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more"}),"."]}),!d.instanceUrl&&(0,t.jsxs)("p",{className:"description",children:["You must set your ",(0,t.jsx)("strong",{children:"Server URL"})," above to enable the directory."]}),(0,t.jsxs)("div",{className:"config-yp-container",children:[(0,t.jsx)(o.Z,{fieldName:"enabled",useSubmit:!0,...c.P,checked:e.enabled,disabled:!p}),(0,t.jsx)(o.Z,{fieldName:"nsfw",useSubmit:!0,...c.EY,checked:e.nsfw,disabled:!p})]})]})}},60956:function(e,n,a){"use strict";a.d(n,{Z7:function(){return t},dr:function(){return i},kR:function(){return s},y3:function(){return l}});let t=2097152,i=["image/png","image/jpeg","image/gif"];function l(e,n){let a=new FileReader;a.addEventListener("load",()=>n(a.result)),a.readAsDataURL(e)}function s(e){let n=Math.floor(Math.log(e)/Math.log(1024)),a=1*Number((e/Math.pow(1024,n)).toFixed(2));return"".concat(a," ").concat(["B","KB","MB","GB","TB","PB","EB","ZB","YB"][n])}}},function(e){e.O(0,[4485,7910,7916,9774,2888,179],function(){return e(e.s=84202)}),_N_E=e.O()}]); \ No newline at end of file +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3353],{63606:function(e,n,a){"use strict";a.d(n,{Z:function(){return c}});var t=a(1413),i=a(67294),l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"},s=a(42135),r=function(e,n){return i.createElement(s.Z,(0,t.Z)((0,t.Z)({},e),{},{ref:n,icon:l}))};r.displayName="CheckOutlined";var c=i.forwardRef(r)},88484:function(e,n,a){"use strict";a.d(n,{Z:function(){return c}});var t=a(1413),i=a(67294),l={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"upload",theme:"outlined"},s=a(42135),r=function(e,n){return i.createElement(s.Z,(0,t.Z)((0,t.Z)({},e),{},{ref:n,icon:l}))};r.displayName="UploadOutlined";var c=i.forwardRef(r)},57838:function(e,n,a){"use strict";a.d(n,{Z:function(){return l}});var t=a(97685),i=a(67294);function l(){var e=i.useReducer(function(e){return e+1},0);return(0,t.Z)(e,2)[1]}},94594:function(e,n,a){"use strict";a.d(n,{Z:function(){return N}});var t=a(87462),i=a(4942),l=a(50888),s=a(94184),r=a.n(s),c=a(97685),o=a(45987),u=a(67294),d=a(21770),f=a(15105),h=u.forwardRef(function(e,n){var a,t=e.prefixCls,l=void 0===t?"rc-switch":t,s=e.className,h=e.checked,m=e.defaultChecked,p=e.disabled,g=e.loadingIcon,v=e.checkedChildren,x=e.unCheckedChildren,b=e.onClick,N=e.onChange,j=e.onKeyDown,w=(0,o.Z)(e,["prefixCls","className","checked","defaultChecked","disabled","loadingIcon","checkedChildren","unCheckedChildren","onClick","onChange","onKeyDown"]),C=(0,d.Z)(!1,{value:h,defaultValue:m}),k=(0,c.Z)(C,2),y=k[0],Z=k[1];function E(e,n){var a=y;return p||(Z(a=e),null==N||N(a,n)),a}var S=r()(l,s,(a={},(0,i.Z)(a,"".concat(l,"-checked"),y),(0,i.Z)(a,"".concat(l,"-disabled"),p),a));return u.createElement("button",Object.assign({},w,{type:"button",role:"switch","aria-checked":y,disabled:p,className:S,ref:n,onKeyDown:function(e){e.which===f.Z.LEFT?E(!1,e):e.which===f.Z.RIGHT&&E(!0,e),null==j||j(e)},onClick:function(e){var n=E(!y,e);null==b||b(n,e)}}),g,u.createElement("span",{className:"".concat(l,"-inner")},y?v:x))});h.displayName="Switch";var m=a(53124),p=a(98866),g=a(97647),v=a(68349),x=function(e,n){var a={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&0>n.indexOf(t)&&(a[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var i=0,t=Object.getOwnPropertySymbols(e);in.indexOf(t[i])&&Object.prototype.propertyIsEnumerable.call(e,t[i])&&(a[t[i]]=e[t[i]]);return a},b=u.forwardRef(function(e,n){var a,s=e.prefixCls,c=e.size,o=e.disabled,d=e.loading,f=e.className,b=x(e,["prefixCls","size","disabled","loading","className"]),N=u.useContext(m.E_),j=N.getPrefixCls,w=N.direction,C=u.useContext(g.Z),k=u.useContext(p.Z),y=j("switch",s),Z=u.createElement("div",{className:"".concat(y,"-handle")},d&&u.createElement(l.Z,{className:"".concat(y,"-loading-icon")})),E=r()((a={},(0,i.Z)(a,"".concat(y,"-small"),"small"===(c||C)),(0,i.Z)(a,"".concat(y,"-loading"),d),(0,i.Z)(a,"".concat(y,"-rtl"),"rtl"===w),a),void 0===f?"":f);return u.createElement(v.Z,{insertExtraNode:!0},u.createElement(h,(0,t.Z)({},b,{prefixCls:y,className:E,disabled:(null!=o?o:k)||d,ref:n,loadingIcon:Z})))});b.__ANT_SWITCH=!0;var N=b},84202:function(e,n,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/config/general/EditInstanceDetails",function(){return a(67650)}])},73706:function(e,n,a){"use strict";a.d(n,{Z:function(){return u}});var t=a(85893),i=a(67294),l=a(94594),s=a(41983),r=a(39664),c=a(90745),o=a(99519);let u=e=>{let{apiPath:n,checked:a,reversed:u=!1,configPath:d="",disabled:f=!1,fieldName:h,label:m,tip:p,useSubmit:g,onChange:v}=e,[x,b]=(0,i.useState)(null),N=null,j=(0,i.useContext)(o.aC),{setFieldInConfigState:w}=j||{},C=()=>{b(null),clearTimeout(N),N=null},k=async e=>{if(g){b((0,s.kg)(s.Jk));let a=u?!e:e;await (0,c.Si)({apiPath:n,data:{value:a},onSuccess(){w({fieldName:h,value:a,path:d}),b((0,s.kg)(s.zv))},onError(e){b((0,s.kg)(s.Un,"There was an error: ".concat(e)))}}),N=setTimeout(C,c.sI)}v&&v(e)},y=null!==x&&x.type===s.Jk;return(0,t.jsxs)("div",{className:"formfield-container toggleswitch-container",children:[m&&(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:m})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)(l.Z,{className:"switch field-".concat(h),loading:y,onChange:k,defaultChecked:a,checked:a,checkedChildren:"ON",unCheckedChildren:"OFF",disabled:f}),(0,t.jsx)(r.E,{status:x})]}),(0,t.jsx)("p",{className:"field-tip",children:p})]})]})};u.defaultProps={apiPath:"",checked:!1,reversed:!1,configPath:"",disabled:!1,label:"",tip:"",useSubmit:!1,onChange:null}},67650:function(e,n,a){"use strict";a.r(n),a.d(n,{default:function(){return N}});var t=a(85893),i=a(67294),l=a(84485),s=a(10135),r=a(99519),c=a(90745),o=a(73706),u=a(77916),d=a(71577),f=a(50888),h=a(88484),m=a(39664),p=a(41983),g=a(64777),v=a(60956);let x=()=>{var e;let[n,a]=(0,i.useState)(null),[l,s]=(0,i.useState)(!1),[o,x]=(0,i.useState)(0),b=(0,i.useContext)(r.aC),{setFieldInConfigState:N,serverConfig:j}=b||{},w=null==j?void 0:null===(e=j.instanceDetails)||void 0===e?void 0:e.logo,[C,k]=(0,i.useState)(null),y=null,{apiPath:Z,tip:E}=c.ZQ,S=()=>{k(null),clearTimeout(y),y=null},T=e=>(s(!0),new Promise((n,t)=>{if(e.size>v.Z7){let i="File size is too big: ".concat((0,v.kR)(e.size));return k((0,p.kg)(p.Un,"There was an error: ".concat(i))),y=setTimeout(S,c.sI),s(!1),t()}if(!v.dr.includes(e.type)){let l="File type is not supported: ".concat(e.type);return k((0,p.kg)(p.Un,"There was an error: ".concat(l))),y=setTimeout(S,c.sI),s(!1),t()}(0,v.y3)(e,e=>{a(e),setTimeout(()=>n(),100)})})),_=async()=>{n!==w&&(k((0,p.kg)(p.Jk)),await (0,c.Si)({apiPath:Z,data:{value:n},onSuccess(){N({fieldName:"logo",value:n,path:""}),k((0,p.kg)(p.zv)),s(!1),x(Math.floor(100*Math.random()))},onError(e){k((0,p.kg)(p.Un,"There was an error: ".concat(e))),s(!1)}}),y=setTimeout(S,c.sI))},O="".concat(g.WB,"logo?random=").concat(o);return(0,t.jsxs)("div",{className:"formfield-container logo-upload-container",children:[(0,t.jsx)("div",{className:"label-side",children:(0,t.jsx)("span",{className:"formfield-label",children:"Logo"})}),(0,t.jsxs)("div",{className:"input-side",children:[(0,t.jsxs)("div",{className:"input-group",children:[(0,t.jsx)("img",{src:O,alt:"avatar",className:"logo-preview"}),(0,t.jsx)(u.Z,{name:"logo",listType:"picture",className:"avatar-uploader",showUploadList:!1,accept:v.dr.join(","),beforeUpload:T,customRequest:_,disabled:l,children:l?(0,t.jsx)(f.Z,{style:{color:"white"}}):(0,t.jsx)(d.Z,{icon:(0,t.jsx)(h.Z,{})})})]}),(0,t.jsx)(m.E,{status:C}),(0,t.jsx)("p",{className:"field-tip",children:E})]})]})},{Title:b}=l.Z;function N(){let[e,n]=(0,i.useState)(null),a=(0,i.useContext)(r.aC),{serverConfig:l}=a||{},{instanceDetails:u,yp:d}=l,{instanceUrl:f}=d;if((0,i.useEffect)(()=>{n({...u,...d})},[u,d]),!e)return null;let h=()=>{""===e.instanceUrl&&!0===d.enabled&&(0,c.Si)({apiPath:c.AP,data:{value:!1}})},m=a=>{let{fieldName:t,value:i}=a;n({...e,[t]:i})},p=""!==f;return(0,t.jsxs)("div",{className:"edit-general-settings",children:[(0,t.jsx)(b,{level:3,className:"section-title",children:"Configure Instance Details"}),(0,t.jsx)("br",{}),(0,t.jsx)(s.$7,{fieldName:"name",...c.RE,value:e.name,initialValue:u.name,onChange:m}),(0,t.jsx)(s.$7,{fieldName:"instanceUrl",...c.cj,value:e.instanceUrl,initialValue:d.instanceUrl,type:s.xA,onChange:m,onSubmit:h}),(0,t.jsx)(s.$7,{fieldName:"summary",...c.rs,type:s.Sk,value:e.summary,initialValue:u.summary,onChange:m}),(0,t.jsx)(s.$7,{fieldName:"offlineMessage",...c.rd,type:s.Sk,value:e.offlineMessage,initialValue:u.offlineMessage,onChange:m}),(0,t.jsx)(x,{}),(0,t.jsx)(o.Z,{fieldName:"hideViewerCount",useSubmit:!0,...c._X,checked:e.hideViewerCount,onChange:function(e){m({fieldName:"hideViewerCount",value:e})}}),(0,t.jsx)("br",{}),(0,t.jsxs)("p",{className:"description",children:["Increase your audience by appearing in the"," ",(0,t.jsx)("a",{href:"https://directory.owncast.online",target:"_blank",rel:"noreferrer",children:(0,t.jsx)("strong",{children:"Owncast Directory"})}),". This is an external service run by the Owncast project."," ",(0,t.jsx)("a",{href:"https://owncast.online/docs/directory/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"Learn more"}),"."]}),!d.instanceUrl&&(0,t.jsxs)("p",{className:"description",children:["You must set your ",(0,t.jsx)("strong",{children:"Server URL"})," above to enable the directory."]}),(0,t.jsxs)("div",{className:"config-yp-container",children:[(0,t.jsx)(o.Z,{fieldName:"enabled",useSubmit:!0,...c.P,checked:e.enabled,disabled:!p}),(0,t.jsx)(o.Z,{fieldName:"nsfw",useSubmit:!0,...c.EY,checked:e.nsfw,disabled:!p})]})]})}},60956:function(e,n,a){"use strict";a.d(n,{Z7:function(){return t},dr:function(){return i},kR:function(){return s},y3:function(){return l}});let t=2097152,i=["image/png","image/jpeg","image/gif"];function l(e,n){let a=new FileReader;a.addEventListener("load",()=>n(a.result)),a.readAsDataURL(e)}function s(e){let n=Math.floor(Math.log(e)/Math.log(1024)),a=1*Number((e/Math.pow(1024,n)).toFixed(2));return"".concat(a," ").concat(["B","KB","MB","GB","TB","PB","EB","ZB","YB"][n])}}},function(e){e.O(0,[4485,7910,7916,9774,2888,179],function(){return e(e.s=84202)}),_N_E=e.O()}]); \ No newline at end of file diff --git a/static/web/admin/access-tokens/index.html b/static/web/admin/access-tokens/index.html index d10786ac4..211cbf73a 100644 --- a/static/web/admin/access-tokens/index.html +++ b/static/web/admin/access-tokens/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Access Tokens

Access tokens are used to allow external, 3rd party tools to perform specific actions on your Owncast server. They should be kept secure and never included in client code, instead they should be kept on a server that you control.
Read more about how to use these tokens, with examples, at our documentation.
NameTokenScopesLast Used
No data

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Access Tokens

Access tokens are used to allow external, 3rd party tools to perform specific actions on your Owncast server. They should be kept secure and never included in client code, instead they should be kept on a server that you control.
Read more about how to use these tokens, with examples, at our documentation.
NameTokenScopesLast Used
No data

\ No newline at end of file diff --git a/static/web/admin/actions/index.html b/static/web/admin/actions/index.html index 0b64a8822..400316a92 100644 --- a/static/web/admin/actions/index.html +++ b/static/web/admin/actions/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

External Actions

External action URLs are 3rd party UI you can display, embedded, into your Owncast page when a user clicks on a button to launch your action.
Read more about how to use actions, with examples, at our documentation.
NameDescriptionURLIconColorOpens
No data

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

External Actions

External action URLs are 3rd party UI you can display, embedded, into your Owncast page when a user clicks on a button to launch your action.
Read more about how to use actions, with examples, at our documentation.
NameDescriptionURLIconColorOpens
No data

\ No newline at end of file diff --git a/static/web/admin/chat/emojis/index.html b/static/web/admin/chat/emojis/index.html index 0165f2870..880154763 100644 --- a/static/web/admin/chat/emojis/index.html +++ b/static/web/admin/chat/emojis/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Emojis

Here you can upload new custom emojis for usage in the chat. When uploading a new emoji, the filename will be used as emoji name.
NameEmoji
No data

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Emojis

Here you can upload new custom emojis for usage in the chat. When uploading a new emoji, the filename will be used as emoji name.
NameEmoji
No data

\ No newline at end of file diff --git a/static/web/admin/chat/messages/index.html b/static/web/admin/chat/messages/index.html index 344e5bb4d..b68c3926a 100644 --- a/static/web/admin/chat/messages/index.html +++ b/static/web/admin/chat/messages/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Chat Messages

Manage the messages from viewers that show up on your stream.

Check multiple messages to change their visibility to:
Time
User
Message
No data
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Chat Messages

Manage the messages from viewers that show up on your stream.

Check multiple messages to change their visibility to:
Time
User
Message
No data
\ No newline at end of file diff --git a/static/web/admin/chat/users/index.html b/static/web/admin/chat/users/index.html index 0022f1d13..0910744ad 100644 --- a/static/web/admin/chat/users/index.html +++ b/static/web/admin/chat/users/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

When a stream is active and chat is enabled, connected chat clients will be displayed here.

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

When a stream is active and chat is enabled, connected chat clients will be displayed here.

\ No newline at end of file diff --git a/static/web/admin/config-chat/index.html b/static/web/admin/config-chat/index.html index f3117ac6e..3a17b7663 100644 --- a/static/web/admin/config-chat/index.html +++ b/static/web/admin/config-chat/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/config-federation/index.html b/static/web/admin/config-federation/index.html index 348722e66..6314bb6e6 100644 --- a/static/web/admin/config-federation/index.html +++ b/static/web/admin/config-federation/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/config-notify/index.html b/static/web/admin/config-notify/index.html index 9dee1b4e3..19017c6bb 100644 --- a/static/web/admin/config-notify/index.html +++ b/static/web/admin/config-notify/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Notifications

Let your viewers know when you go live by supporting any of the below notification channels. Learn more about live notifications.


The full url to your Owncast server is required to enable social features. Must use SSL (https). Once people start following your instance you should not change this.

The full url to your Owncast server is required to enable social features. Must use SSL (https). Once people start following your instance you should not change this.

Browser Alerts

Viewers can opt into being notified when you go live with their browser.

Not all browsers support this.

Enable browser notifications

The text to send when you go live.

Twitter

Let your Twitter followers know each time you go live.

Enable Twitter

The text to send when you go live.

Discord

Let your Discord channel know each time you go live.

Create a webhook under Edit Channel / Integrations on your Discord channel and provide it below.

Enable Discord

The webhook assigned to your channel.

The text to send when you go live.

Fediverse Social

Enabling the Fediverse social features will not just alert people to when you go live, but also enable other functionality.

Fediverse social features: Disabled

Custom

Build your own notifications by using custom webhooks.

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Notifications

Let your viewers know when you go live by supporting any of the below notification channels. Learn more about live notifications.


The full url to your Owncast server is required to enable social features. Must use SSL (https). Once people start following your instance you should not change this.

The full url to your Owncast server is required to enable social features. Must use SSL (https). Once people start following your instance you should not change this.

Browser Alerts

Viewers can opt into being notified when you go live with their browser.

Not all browsers support this.

Enable browser notifications

The text to send when you go live.

Twitter

Let your Twitter followers know each time you go live.

Enable Twitter

The text to send when you go live.

Discord

Let your Discord channel know each time you go live.

Create a webhook under Edit Channel / Integrations on your Discord channel and provide it below.

Enable Discord

The webhook assigned to your channel.

The text to send when you go live.

Fediverse Social

Enabling the Fediverse social features will not just alert people to when you go live, but also enable other functionality.

Fediverse social features: Disabled

Custom

Build your own notifications by using custom webhooks.

\ No newline at end of file diff --git a/static/web/admin/config-social-items/index.html b/static/web/admin/config-social-items/index.html index 70e4af98f..fda80ddb1 100644 --- a/static/web/admin/config-social-items/index.html +++ b/static/web/admin/config-social-items/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Social Items

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Social Items

\ No newline at end of file diff --git a/static/web/admin/config-video/index.html b/static/web/admin/config-video/index.html index cf5076021..001c5f3f7 100644 --- a/static/web/admin/config-video/index.html +++ b/static/web/admin/config-video/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Video configuration

Before changing your video configuration visit the video documentation to learn how it impacts your stream performance. The general rule is to start conservatively by having one middle quality stream output variant and experiment with adding more of varied qualities.

Stream output

NameVideo bitrateCPU Usage
No name800 kbpsMedium

Latency Buffer

While it's natural to want to keep your latency as low as possible, you may experience reduced error tolerance and stability the lower you go. The lowest setting is not recommended.

For interactive live streams you may want to experiment with a lower latency, for non-interactive broadcasts you may want to increase it. Read to learn more.

LowestHighest

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Video configuration

Before changing your video configuration visit the video documentation to learn how it impacts your stream performance. The general rule is to start conservatively by having one middle quality stream output variant and experiment with adding more of varied qualities.

Stream output

NameVideo bitrateCPU Usage
No name800 kbpsMedium

Latency Buffer

While it's natural to want to keep your latency as low as possible, you may experience reduced error tolerance and stability the lower you go. The lowest setting is not recommended.

For interactive live streams you may want to experiment with a lower latency, for non-interactive broadcasts you may want to increase it. Read to learn more.

LowestHighest

\ No newline at end of file diff --git a/static/web/admin/config/general/AppearanceConfig/index.html b/static/web/admin/config/general/AppearanceConfig/index.html index 52eb19c8d..c439f4edf 100644 --- a/static/web/admin/config/general/AppearanceConfig/index.html +++ b/static/web/admin/config/general/AppearanceConfig/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
Loading...
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
Loading...
\ No newline at end of file diff --git a/static/web/admin/config/general/EditInstanceDetails/index.html b/static/web/admin/config/general/EditInstanceDetails/index.html index fc8994dd5..635ee5724 100644 --- a/static/web/admin/config/general/EditInstanceDetails/index.html +++ b/static/web/admin/config/general/EditInstanceDetails/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/config/general/EditInstanceTags/index.html b/static/web/admin/config/general/EditInstanceTags/index.html index 225274d9d..626728ddc 100644 --- a/static/web/admin/config/general/EditInstanceTags/index.html +++ b/static/web/admin/config/general/EditInstanceTags/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Add Tags

This is a great way to categorize your Owncast server on the Directory!

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Add Tags

This is a great way to categorize your Owncast server on the Directory!

\ No newline at end of file diff --git a/static/web/admin/config/general/EditPageContent/index.html b/static/web/admin/config/general/EditPageContent/index.html index c136803c8..aedd6d851 100644 --- a/static/web/admin/config/general/EditPageContent/index.html +++ b/static/web/admin/config/general/EditPageContent/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file diff --git a/static/web/admin/config/general/EditSocialLinks/index.html b/static/web/admin/config/general/EditSocialLinks/index.html index 1146b9ede..88bf117a0 100644 --- a/static/web/admin/config/general/EditSocialLinks/index.html +++ b/static/web/admin/config/general/EditSocialLinks/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/config/general/GeneralConfig/index.html b/static/web/admin/config/general/GeneralConfig/index.html index 6eab0053c..81ccde4d8 100644 --- a/static/web/admin/config/general/GeneralConfig/index.html +++ b/static/web/admin/config/general/GeneralConfig/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following are displayed on your site to describe your stream and its content. Learn more.

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following are displayed on your site to describe your stream and its content. Learn more.

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file diff --git a/static/web/admin/config/general/index.html b/static/web/admin/config/general/index.html index 9ce69ff47..533d1cc68 100644 --- a/static/web/admin/config/general/index.html +++ b/static/web/admin/config/general/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following are displayed on your site to describe your stream and its content. Learn more.

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following are displayed on your site to describe your stream and its content. Learn more.

Custom Page Content

Edit the content of your page by using simple Markdown syntax.


\ No newline at end of file diff --git a/static/web/admin/config/server/EditStorage/index.html b/static/web/admin/config/server/EditStorage/index.html index 8549630ef..15244fe16 100644 --- a/static/web/admin/config/server/EditStorage/index.html +++ b/static/web/admin/config/server/EditStorage/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/config/server/ServerConfig/index.html b/static/web/admin/config/server/ServerConfig/index.html index 3d738b993..d1de746cd 100644 --- a/static/web/admin/config/server/ServerConfig/index.html +++ b/static/web/admin/config/server/ServerConfig/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

You should change your admin password from the default and keep it safe. For most people it's likely the other settings will not need to be changed.

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

You should change your admin password from the default and keep it safe. For most people it's likely the other settings will not need to be changed.

\ No newline at end of file diff --git a/static/web/admin/config/server/StorageConfig/index.html b/static/web/admin/config/server/StorageConfig/index.html index 39920e301..d2d4f8ed5 100644 --- a/static/web/admin/config/server/StorageConfig/index.html +++ b/static/web/admin/config/server/StorageConfig/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Owncast supports optionally using external storage providers to stream your video. Learn more about this by visiting our Storage Documentation.

Configuring this incorrectly will likely cause your video to be unplayable. Double check the documentation for your storage provider on how to configure the bucket you created for Owncast.

Keep in mind this is for live streaming, not for archival, recording or VOD purposes.

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Owncast supports optionally using external storage providers to stream your video. Learn more about this by visiting our Storage Documentation.

Configuring this incorrectly will likely cause your video to be unplayable. Double check the documentation for your storage provider on how to configure the bucket you created for Owncast.

Keep in mind this is for live streaming, not for archival, recording or VOD purposes.

\ No newline at end of file diff --git a/static/web/admin/config/server/StreamKeys/index.html b/static/web/admin/config/server/StreamKeys/index.html index 4551a2fcc..36fe60711 100644 --- a/static/web/admin/config/server/StreamKeys/index.html +++ b/static/web/admin/config/server/StreamKeys/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
A streaming key is used with your broadcasting software to authenticate itself to Owncast. Most people will only need one. However, if you share a server with others or you want different keys for different broadcasting sources you can add more here.
These keys are unrelated to the admin password and will not grant you access to make changes to Owncast's configuration.
Read more about broadcasting at the documentation.
KeyComment
No data

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
A streaming key is used with your broadcasting software to authenticate itself to Owncast. Most people will only need one. However, if you share a server with others or you want different keys for different broadcasting sources you can add more here.
These keys are unrelated to the admin password and will not grant you access to make changes to Owncast's configuration.
Read more about broadcasting at the documentation.
KeyComment
No data

\ No newline at end of file diff --git a/static/web/admin/config/server/index.html b/static/web/admin/config/server/index.html index 397fab44f..f5a04553d 100644 --- a/static/web/admin/config/server/index.html +++ b/static/web/admin/config/server/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

You should change your admin password from the default and keep it safe. For most people it's likely the other settings will not need to be changed.

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

You should change your admin password from the default and keep it safe. For most people it's likely the other settings will not need to be changed.

\ No newline at end of file diff --git a/static/web/admin/federation/actions/index.html b/static/web/admin/federation/actions/index.html index ad9020c2b..efdba7e5a 100644 --- a/static/web/admin/federation/actions/index.html +++ b/static/web/admin/federation/actions/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Fediverse Actions

Below is a list of actions that were taken by others in response to your posts as well as people who requested to follow you.
ActionFromWhen
No data
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Fediverse Actions

Below is a list of actions that were taken by others in response to your posts as well as people who requested to follow you.
ActionFromWhen
No data
\ No newline at end of file diff --git a/static/web/admin/federation/followers/index.html b/static/web/admin/federation/followers/index.html index f204bfd23..ecd2569ba 100644 --- a/static/web/admin/federation/followers/index.html +++ b/static/web/admin/federation/followers/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following accounts get notified when you go live or send a post.

NameURL
Added
Remove
No data
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

The following accounts get notified when you go live or send a post.

NameURL
Added
Remove
No data
\ No newline at end of file diff --git a/static/web/admin/hardware-info/index.html b/static/web/admin/hardware-info/index.html index fc5ae77ae..4acd25c1e 100644 --- a/static/web/admin/hardware-info/index.html +++ b/static/web/admin/hardware-info/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Hardware Info


CPU
0%
Memory
0%
Disk
0%
Loading...
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Hardware Info


CPU
0%
Memory
0%
Disk
0%
Loading...
\ No newline at end of file diff --git a/static/web/admin/help/index.html b/static/web/admin/help/index.html index 8cb638552..d90185e5e 100644 --- a/static/web/admin/help/index.html +++ b/static/web/admin/help/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

How can we help you?

Troubleshooting

Fix your problems

Documentation

Read the Docs

Common tasks

I want to configure my owncast instance
Help configuring my broadcasting software
I want to embed my stream into another site
I want to customize my website
I want to tweak my video output
I want to use an external storage provider

Other

I found a bug
If you found a bug, then please let us know
I have a general question
Most general questions are answered in our FAQ or exist in our discussions
I want to build add-ons for Owncast
You can build your own bots, overlays, tools and add-ons with our developer APIs. 
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

How can we help you?

Troubleshooting

Fix your problems

Documentation

Read the Docs

Common tasks

I want to configure my owncast instance
Help configuring my broadcasting software
I want to embed my stream into another site
I want to customize my website
I want to tweak my video output
I want to use an external storage provider

Other

I found a bug
If you found a bug, then please let us know
I have a general question
Most general questions are answered in our FAQ or exist in our discussions
I want to build add-ons for Owncast
You can build your own bots, overlays, tools and add-ons with our developer APIs. 
\ No newline at end of file diff --git a/static/web/admin/index.html b/static/web/admin/index.html index 063da8bcb..a5075326e 100644 --- a/static/web/admin/index.html +++ b/static/web/admin/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

No stream is active

You should start one.

Chat is disabled
Chat will continue to be disabled until you begin a live stream.
Find an audience on the Owncast Directory
List yourself in the Owncast Directory and show off your stream. Enable it in settings.
fediverse
Add your Owncast instance to the Fediverse
Enable Owncast social features to have your instance join the Fediverse, allowing people to follow, share and engage with your live stream.

News & Updates from Owncast

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

No stream is active

You should start one.

Chat is disabled
Chat will continue to be disabled until you begin a live stream.
Find an audience on the Owncast Directory
List yourself in the Owncast Directory and show off your stream. Enable it in settings.
fediverse
Add your Owncast instance to the Fediverse
Enable Owncast social features to have your instance join the Fediverse, allowing people to follow, share and engage with your live stream.

News & Updates from Owncast

\ No newline at end of file diff --git a/static/web/admin/logs/index.html b/static/web/admin/logs/index.html index 9400c78fe..aede7c444 100644 --- a/static/web/admin/logs/index.html +++ b/static/web/admin/logs/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline
\ No newline at end of file diff --git a/static/web/admin/stream-health/index.html b/static/web/admin/stream-health/index.html index 733907449..8a9907d33 100644 --- a/static/web/admin/stream-health/index.html +++ b/static/web/admin/stream-health/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Stream Performance

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Stream Performance

\ No newline at end of file diff --git a/static/web/admin/upgrade/index.html b/static/web/admin/upgrade/index.html index 670d3863d..aa2a904c5 100644 --- a/static/web/admin/upgrade/index.html +++ b/static/web/admin/upgrade/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Thu Jan 01 1970

Downloads

NameSize
No data
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Thu Jan 01 1970

Downloads

NameSize
No data
\ No newline at end of file diff --git a/static/web/admin/viewer-info/index.html b/static/web/admin/viewer-info/index.html index 7291ce1e8..cc78632e6 100644 --- a/static/web/admin/viewer-info/index.html +++ b/static/web/admin/viewer-info/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Viewer Info


Max viewers last stream
0
All-time max viewers
0
User AgentLocation
Watch Time
No data
\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Viewer Info


Max viewers last stream
0
All-time max viewers
0
User AgentLocation
Watch Time
No data
\ No newline at end of file diff --git a/static/web/admin/webhooks/index.html b/static/web/admin/webhooks/index.html index 9f294a8be..d408fd001 100644 --- a/static/web/admin/webhooks/index.html +++ b/static/web/admin/webhooks/index.html @@ -1 +1 @@ -Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Webhooks

A webhook is a callback made to an external API in response to an event that takes place within Owncast. This can be used to build chat bots or sending automatic notifications that you've started streaming.
Read more about how to use webhooks, with examples, at our documentation.
URLEvents
No data

\ No newline at end of file +Owncast Admin

What is your stream about today?

What is your stream about today?
Offline

Webhooks

A webhook is a callback made to an external API in response to an event that takes place within Owncast. This can be used to build chat bots or sending automatic notifications that you've started streaming.
Read more about how to use webhooks, with examples, at our documentation.
URLEvents
No data

\ No newline at end of file diff --git a/static/web/embed/chat/readonly/index.html b/static/web/embed/chat/readonly/index.html index e8cb0642d..e0c9b4b86 100644 --- a/static/web/embed/chat/readonly/index.html +++ b/static/web/embed/chat/readonly/index.html @@ -1 +1 @@ -
\ No newline at end of file +
\ No newline at end of file diff --git a/static/web/embed/chat/readwrite/index.html b/static/web/embed/chat/readwrite/index.html index ea820ef7f..7c633960d 100644 --- a/static/web/embed/chat/readwrite/index.html +++ b/static/web/embed/chat/readwrite/index.html @@ -1 +1 @@ -
\ No newline at end of file +
\ No newline at end of file diff --git a/static/web/embed/video/index.html b/static/web/embed/video/index.html index 62b3d8ac9..9688c77e6 100644 --- a/static/web/embed/video/index.html +++ b/static/web/embed/video/index.html @@ -1 +1 @@ -
This stream is offline. Check back soon!
\ No newline at end of file +
This stream is offline. Check back soon!
\ No newline at end of file diff --git a/static/web/index.html b/static/web/index.html index 93073b81e..e47637415 100644 --- a/static/web/index.html +++ b/static/web/index.html @@ -1,9 +1,9 @@ {{.Name}}
{{.Name}}

Logo
Preview
\ No newline at end of file +

Logo
Preview
\ No newline at end of file