=t?t:Number(n)}},{key:"getShowSizeChanger",value:function(){var e=this.props,n=e.showSizeChanger,t=e.total,r=e.totalBoundaryShowSizeChanger;return"undefined"!==typeof n?n:t>r}},{key:"renderPrev",value:function(e){var n=this.props,t=n.prevIcon,r=(0,n.itemRender)(e,"prev",this.getItemIcon(t,"prev page")),o=!this.hasPrev();return(0,l.isValidElement)(r)?(0,l.cloneElement)(r,{disabled:o}):r}},{key:"renderNext",value:function(e){var n=this.props,t=n.nextIcon,r=(0,n.itemRender)(e,"next",this.getItemIcon(t,"next page")),o=!this.hasNext();return(0,l.isValidElement)(r)?(0,l.cloneElement)(r,{disabled:o}):r}},{key:"render",value:function(){var e=this,n=this.props,t=n.prefixCls,r=n.className,a=n.style,c=n.disabled,s=n.hideOnSinglePage,d=n.total,f=n.locale,p=n.showQuickJumper,v=n.showLessItems,m=n.showTitle,h=n.showTotal,y=n.simple,g=n.itemRender,b=n.showPrevNextJumpers,x=n.jumpPrevIcon,C=n.jumpNextIcon,E=n.selectComponentClass,w=n.selectPrefixCls,Z=n.pageSizeOptions,N=this.state,k=N.current,S=N.pageSize,O=N.currentInputValue;if(!0===s&&d<=S)return null;var P=Je(void 0,this.state,this.props),K=[],I=null,D=null,R=null,M=null,T=null,L=p&&p.goButton,j=v?1:2,A=k-1>0?k-1:0,_=k+1=2*j&&3!==k&&(K[0]=(0,l.cloneElement)(K[0],{className:"".concat(t,"-item-after-jump-prev")}),K.unshift(I)),P-k>=2*j&&k!==P-2&&(K[K.length-1]=(0,l.cloneElement)(K[K.length-1],{className:"".concat(t,"-item-before-jump-next")}),K.push(D)),1!==W&&K.unshift(R),G!==P&&K.push(M)}var q=null;h&&(q=l.createElement("li",{className:"".concat(t,"-total-text")},h(d,[0===d?0:(k-1)*S+1,k*S>d?d:k*S])));var J=!this.hasPrev()||!P,Q=!this.hasNext()||!P;return l.createElement("ul",(0,i.Z)({className:u()(t,r,(0,o.Z)({},"".concat(t,"-disabled"),c)),style:a,unselectable:"unselectable",ref:this.savePaginationNode},H),q,l.createElement("li",{title:m?f.prev_page:null,onClick:this.prev,tabIndex:J?null:0,onKeyPress:this.runIfEnterPrev,className:u()("".concat(t,"-prev"),(0,o.Z)({},"".concat(t,"-disabled"),J)),"aria-disabled":J},this.renderPrev(A)),K,l.createElement("li",{title:m?f.next_page:null,onClick:this.next,tabIndex:Q?null:0,onKeyPress:this.runIfEnterNext,className:u()("".concat(t,"-next"),(0,o.Z)({},"".concat(t,"-disabled"),Q)),"aria-disabled":Q},this.renderNext(_)),l.createElement(Ye,{disabled:c,locale:f,rootPrefixCls:t,selectComponentClass:E,selectPrefixCls:w,changeSize:this.getShowSizeChanger()?this.changePageSize:null,current:k,pageSize:S,pageSizeOptions:Z,quickGo:this.shouldDisplayQuickJumper()?this.handleChange:null,goButton:L}))}}],[{key:"getDerivedStateFromProps",value:function(e,n){var t={};if("current"in e&&(t.current=e.current,e.current!==n.current&&(t.currentInputValue=t.current)),"pageSize"in e&&e.pageSize!==n.pageSize){var r=n.current,o=Je(e.pageSize,n,e);r=r>o?o:r,"current"in e||(t.current=r,t.currentInputValue=r),t.pageSize=e.pageSize}return t}}]),t}(l.Component);Qe.defaultProps={defaultCurrent:1,total:0,defaultPageSize:10,onChange:Xe,className:"",selectPrefixCls:"rc-select",prefixCls:"rc-pagination",selectComponentClass:null,hideOnSinglePage:!1,showPrevNextJumpers:!0,showQuickJumper:!1,showLessItems:!1,showTitle:!0,onShowSizeChange:Xe,locale:{items_per_page:"\u6761/\u9875",jump_to:"\u8df3\u81f3",jump_to_confirm:"\u786e\u5b9a",page:"\u9875",prev_page:"\u4e0a\u4e00\u9875",next_page:"\u4e0b\u4e00\u9875",prev_5:"\u5411\u524d 5 \u9875",next_5:"\u5411\u540e 5 \u9875",prev_3:"\u5411\u524d 3 \u9875",next_3:"\u5411\u540e 3 \u9875",page_size:"\u9875\u7801"},style:{},itemRender:function(e,n,t){return t},totalBoundaryShowSizeChanger:50};var $e=Qe,en=t(62906),nn=t(6171),tn=t(18073),rn={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M272.9 512l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L186.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H532c6.7 0 10.4-7.7 6.3-12.9L272.9 512zm304 0l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L490.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H836c6.7 0 10.4-7.7 6.3-12.9L576.9 512z"}}]},name:"double-left",theme:"outlined"},on=t(42135),an=function(e,n){return l.createElement(on.Z,(0,d.Z)((0,d.Z)({},e),{},{ref:n,icon:rn}))};an.displayName="DoubleLeftOutlined";var ln=l.forwardRef(an),cn={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1A7.98 7.98 0 00188 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5zm304 0L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1A7.98 7.98 0 00492 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5z"}}]},name:"double-right",theme:"outlined"},un=function(e,n){return l.createElement(on.Z,(0,d.Z)((0,d.Z)({},e),{},{ref:n,icon:cn}))};un.displayName="DoubleRightOutlined";var sn=l.forwardRef(un),dn=t(38939),fn=function(e){return l.createElement(dn.Z,(0,i.Z)({size:"small"},e))};fn.Option=dn.Z.Option;var pn=fn,vn=t(23715),mn=t(59844),hn=t(25378),yn=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0?u:e}),h=Math.ceil((u||e)/m.pageSize);m.current>h&&(m.current=h||1);var y=function(e,n){v({current:null!==e&&void 0!==e?e:1,pageSize:n||m.pageSize})};return!1===n?[{},function(){}]:[(0,i.Z)((0,i.Z)({},m),{onChange:function(e,r){var o;n&&(null===(o=n.onChange)||void 0===o||o.call(n,e,r)),y(e,r),t(e,r||(null===m||void 0===m?void 0:m.pageSize))}}),y]}var Cn=t(84506),En=t(80882),wn=t(97326),Zn=l.createContext(null),Nn=function(e){for(var n=e.prefixCls,t=e.level,r=e.isStart,a=e.isEnd,i="".concat(n,"-indent-unit"),c=[],s=0;s=0&&t.splice(r,1),t}function Mn(e,n){var t=(e||[]).slice();return-1===t.indexOf(n)&&t.push(n),t}function Tn(e){return e.split("-")}function Ln(e,n){return"".concat(e,"-").concat(n)}function jn(e,n){var t=[];return function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];n.forEach((function(n){var r=n.key,o=n.children;t.push(r),e(o)}))}(n[e].children),t}function An(e){if(e.parent){var n=Tn(e.pos);return Number(n[n.length-1])===e.parent.children.length-1}return!1}function _n(e,n,t,r,o,a,i,l,c,u){var s,d=e.clientX,f=e.clientY,p=e.target.getBoundingClientRect(),v=p.top,m=p.height,h=(("rtl"===u?-1:1)*(((null===o||void 0===o?void 0:o.x)||0)-d)-12)/r,y=l[t.props.eventKey];if(f-1.5?a({dragNode:k,dropNode:S,dropPosition:1})?w=1:O=!1:a({dragNode:k,dropNode:S,dropPosition:0})?w=0:a({dragNode:k,dropNode:S,dropPosition:1})?w=1:O=!1:a({dragNode:k,dropNode:S,dropPosition:1})?w=1:O=!1,{dropPosition:w,dropLevelOffset:Z,dropTargetKey:y.key,dropTargetPos:y.pos,dragOverNodeKey:E,dropContainerKey:0===w?null:(null===(s=y.parent)||void 0===s?void 0:s.key)||null,dropAllowed:O}}function Hn(e,n){if(e)return n.multiple?e.slice():e.length?[e[0]]:e}function zn(e){if(!e)return null;var n;if(Array.isArray(e))n={checkedKeys:e,halfCheckedKeys:void 0};else{if("object"!==(0,r.Z)(e))return(0,g.ZP)(!1,"`checkedKeys` is not an array or an object"),null;n={checkedKeys:e.checked||void 0,halfCheckedKeys:e.halfChecked||void 0}}return n}function Vn(e,n){var t=new Set;function r(e){if(!t.has(e)){var o=n[e];if(o){t.add(e);var a=o.parent;o.node.disabled||a&&r(a.key)}}}return(e||[]).forEach((function(e){r(e)})),(0,f.Z)(t)}var Fn=["children"];function Bn(e,n){return null!==e&&void 0!==e?e:n}function Un(e){var n=e||{},t=n.title||"title";return{title:t,_title:n._title||[t],key:n.key||"key",children:n.children||"children"}}function Wn(e){return function e(n){return(0,re.Z)(n).map((function(n){if(!function(e){return e&&e.type&&e.type.isTreeNode}(n))return(0,g.ZP)(!n,"Tree/TreeNode can only accept TreeNode as children."),null;var t=n.key,r=n.props,o=r.children,a=(0,w.Z)(r,Fn),i=(0,d.Z)({key:t},a),l=e(o);return l.length&&(i.children=l),i})).filter((function(e){return e}))}(e)}function Gn(e,n,t){var r=Un(t),o=r._title,a=r.key,i=r.children,l=new Set(!0===n?[]:n),c=[];return function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t.map((function(u,p){for(var v,m=Ln(r?r.pos:"0",p),h=Bn(u[a],m),y=0;y1&&void 0!==arguments[1]?arguments[1]:{},t=n.initWrapper,r=n.processEntity,o=n.onProcessFinished,a=n.externalGetKey,i=n.childrenPropName,l=n.fieldNames,c=arguments.length>2?arguments[2]:void 0,u=a||c,s={},d={},f={posEntities:s,keyEntities:d};return t&&(f=t(f)||f),Yn(e,(function(e){var n=e.node,t=e.index,o=e.pos,a=e.key,i=e.parentPos,l=e.level,c={node:n,nodes:e.nodes,index:t,key:a,pos:o,level:l},u=Bn(a,o);s[o]=c,d[u]=c,c.parent=s[i],c.parent&&(c.parent.children=c.parent.children||[],c.parent.children.push(c)),r&&r(c,f)}),{externalGetKey:u,childrenPropName:i,fieldNames:l}),o&&o(f),f}function qn(e,n){var t=n.expandedKeys,r=n.selectedKeys,o=n.loadedKeys,a=n.loadingKeys,i=n.checkedKeys,l=n.halfCheckedKeys,c=n.dragOverNodeKey,u=n.dropPosition,s=n.keyEntities[e];return{eventKey:e,expanded:-1!==t.indexOf(e),selected:-1!==r.indexOf(e),loaded:-1!==o.indexOf(e),loading:-1!==a.indexOf(e),checked:-1!==i.indexOf(e),halfChecked:-1!==l.indexOf(e),pos:String(s?s.pos:""),dragOver:c===e&&0===u,dragOverGapTop:c===e&&-1===u,dragOverGapBottom:c===e&&1===u}}function Jn(e){var n=e.data,t=e.expanded,r=e.selected,o=e.checked,a=e.loaded,i=e.loading,l=e.halfChecked,c=e.dragOver,u=e.dragOverGapTop,s=e.dragOverGapBottom,f=e.pos,p=e.active,v=e.eventKey,m=(0,d.Z)((0,d.Z)({},n),{},{expanded:t,selected:r,checked:o,loaded:a,loading:i,halfChecked:l,dragOver:c,dragOverGapTop:u,dragOverGapBottom:s,pos:f,active:p,key:v});return"props"in m||Object.defineProperty(m,"props",{get:function(){return(0,g.ZP)(!1,"Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`."),e}}),m}function Qn(e,n){var t=new Set;return e.forEach((function(e){n.has(e)||t.add(e)})),t}function $n(e){var n=e||{},t=n.disabled,r=n.disableCheckbox,o=n.checkable;return!(!t&&!r)||!1===o}function et(e,n,t,r){var o,a=[];o=r||$n;var i,l=new Set(e.filter((function(e){var n=!!t[e];return n||a.push(e),n}))),c=new Map,u=0;return Object.keys(t).forEach((function(e){var n=t[e],r=n.level,o=c.get(r);o||(o=new Set,c.set(r,o)),o.add(n),u=Math.max(u,r)})),(0,g.ZP)(!a.length,"Tree missing follow keys: ".concat(a.slice(0,100).map((function(e){return"'".concat(e,"'")})).join(", "))),i=!0===n?function(e,n,t,r){for(var o=new Set(e),a=new Set,i=0;i<=t;i+=1)(n.get(i)||new Set).forEach((function(e){var n=e.key,t=e.node,a=e.children,i=void 0===a?[]:a;o.has(n)&&!r(t)&&i.filter((function(e){return!r(e.node)})).forEach((function(e){o.add(e.key)}))}));for(var l=new Set,c=t;c>=0;c-=1)(n.get(c)||new Set).forEach((function(e){var n=e.parent,t=e.node;if(!r(t)&&e.parent&&!l.has(e.parent.key))if(r(e.parent.node))l.add(n.key);else{var i=!0,c=!1;(n.children||[]).filter((function(e){return!r(e.node)})).forEach((function(e){var n=e.key,t=o.has(n);i&&!t&&(i=!1),c||!t&&!a.has(n)||(c=!0)})),i&&o.add(n.key),c&&a.add(n.key),l.add(n.key)}}));return{checkedKeys:Array.from(o),halfCheckedKeys:Array.from(Qn(a,o))}}(l,c,u,o):function(e,n,t,r,o){for(var a=new Set(e),i=new Set(n),l=0;l<=r;l+=1)(t.get(l)||new Set).forEach((function(e){var n=e.key,t=e.node,r=e.children,l=void 0===r?[]:r;a.has(n)||i.has(n)||o(t)||l.filter((function(e){return!o(e.node)})).forEach((function(e){a.delete(e.key)}))}));i=new Set;for(var c=new Set,u=r;u>=0;u-=1)(t.get(u)||new Set).forEach((function(e){var n=e.parent,t=e.node;if(!o(t)&&e.parent&&!c.has(e.parent.key))if(o(e.parent.node))c.add(n.key);else{var r=!0,l=!1;(n.children||[]).filter((function(e){return!o(e.node)})).forEach((function(e){var n=e.key,t=a.has(n);r&&!t&&(r=!1),l||!t&&!i.has(n)||(l=!0)})),r||a.delete(n.key),l&&i.add(n.key),c.add(n.key)}}));return{checkedKeys:Array.from(a),halfCheckedKeys:Array.from(Qn(i,a))}}(l,n.halfCheckedKeys,c,u,o),i}var nt=t(21770),tt=t(32808),rt=t(38504),ot=t(61709),at=t(50132),it=l.createContext(null),lt=it.Provider,ct=it,ut=t(21687),st=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0){var O="button"===m?"".concat(N,"-button"):N;S=v.map((function(e){return"string"===typeof e||"number"===typeof e?l.createElement(pt,{key:e.toString(),prefixCls:O,disabled:g,value:e,checked:p===e},e):l.createElement(pt,{key:"radio-group-value-options-".concat(e.value),prefixCls:O,disabled:e.disabled||g,value:e.value,checked:p===e.value,style:e.style},e.label)}))}var P=x||s,K=u()(k,"".concat(k,"-").concat(y),(t={},(0,o.Z)(t,"".concat(k,"-").concat(P),P),(0,o.Z)(t,"".concat(k,"-rtl"),"rtl"===c),t),f);return l.createElement("div",(0,i.Z)({},(0,mt.Z)(e),{className:K,style:C,onMouseEnter:w,onMouseLeave:Z,id:E,ref:n}),S)}())})),yt=l.memo(ht),gt=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],t=e.length,r=n.length;if(1!==Math.abs(t-r))return{add:!1,key:null};function o(e,n){var t=new Map;e.forEach((function(e){t.set(e,!0)}));var r=n.filter((function(e){return!t.has(e)}));return 1===r.length?r[0]:null}return t ").concat(n);return n}(Z)),l.createElement("div",null,l.createElement("input",{style:pr,disabled:!1===E||v,tabIndex:!1!==E?k:null,onKeyDown:S,onFocus:O,onBlur:P,value:"",onChange:vr,"aria-label":"for screen reader"})),l.createElement("div",{className:"".concat(t,"-treenode"),"aria-hidden":!0,style:{position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden"}},l.createElement("div",{className:"".concat(t,"-indent")},l.createElement("div",{ref:T,className:"".concat(t,"-indent-unit")}))),l.createElement(ir.Z,(0,i.Z)({},R,{data:re,itemKey:xr,height:b,fullHeight:!1,virtual:C,itemHeight:x,prefixCls:"".concat(t,"-list"),ref:M,onVisibleChange:function(e,n){var t=new Set(e);n.filter((function(e){return!t.has(e)})).some((function(e){return xr(e)===mr}))&&te()}}),(function(e){var n=e.pos,t=(0,i.Z)({},e.data),r=e.title,o=e.key,a=e.isStart,c=e.isEnd,u=Bn(o,n);delete t.key,delete t.children;var s=qn(u,oe);return l.createElement(sr,(0,i.Z)({},t,s,{title:r,active:!!Z&&o===Z.key,pos:n,data:e.data,isStart:a,isEnd:c,motion:g,motionNodes:o===mr?q:null,motionType:ee,onMotionStart:I,onMotionEnd:te,treeNodeRequiredProps:oe,onMouseMove:function(){K(null)}}))})))},Er=l.forwardRef(Cr);Er.displayName="NodeList";var wr=Er;var Zr=function(e){(0,ze.Z)(t,e);var n=(0,Ve.Z)(t);function t(){var e;(0,_e.Z)(this,t);for(var r=arguments.length,o=new Array(r),a=0;a2&&void 0!==arguments[2]&&arguments[2],a=e.state,i=a.dragChildrenKeys,l=a.dropPosition,c=a.dropTargetKey,u=a.dropTargetPos,s=a.dropAllowed;if(s){var f=e.props.onDrop;if(e.setState({dragOverNodeKey:null}),e.cleanDragState(),null!==c){var p=(0,d.Z)((0,d.Z)({},qn(c,e.getTreeNodeRequiredProps())),{},{active:(null===(r=e.getActiveItem())||void 0===r?void 0:r.data.key)===c,data:e.state.keyEntities[c].node}),v=-1!==i.indexOf(c);(0,g.ZP)(!v,"Can not drop to dragNode's children node. This is a bug of rc-tree. Please report an issue.");var m=Tn(u),h={event:n,node:Jn(p),dragNode:e.dragNode?Jn(e.dragNode.props):null,dragNodesKeys:[e.dragNode.props.eventKey].concat(i),dropToGap:0!==l,dropPosition:l+Number(m[m.length-1])};o||null===f||void 0===f||f(h),e.dragNode=null}}},e.cleanDragState=function(){null!==e.state.draggingNodeKey&&e.setState({draggingNodeKey:null,dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null}),e.dragStartMousePosition=null,e.currentMouseOverDroppableNodeKey=null},e.onNodeClick=function(n,t){var r=e.props.onClick;null===r||void 0===r||r(n,t)},e.onNodeDoubleClick=function(n,t){var r=e.props.onDoubleClick;null===r||void 0===r||r(n,t)},e.onNodeSelect=function(n,t){var r=e.state.selectedKeys,o=e.state,a=o.keyEntities,i=o.fieldNames,l=e.props,c=l.onSelect,u=l.multiple,s=t.selected,d=t[i.key],f=!s,p=(r=f?u?Mn(r,d):[d]:Rn(r,d)).map((function(e){var n=a[e];return n?n.node:null})).filter((function(e){return e}));e.setUncontrolledState({selectedKeys:r}),null===c||void 0===c||c(r,{event:"select",selected:f,node:t,selectedNodes:p,nativeEvent:n.nativeEvent})},e.onNodeCheck=function(n,t,r){var o,a=e.state,i=a.keyEntities,l=a.checkedKeys,c=a.halfCheckedKeys,u=e.props,s=u.checkStrictly,d=u.onCheck,p=t.key,v={event:"check",node:t,checked:r,nativeEvent:n.nativeEvent};if(s){var m=r?Mn(l,p):Rn(l,p);o={checked:m,halfChecked:Rn(c,p)},v.checkedNodes=m.map((function(e){return i[e]})).filter((function(e){return e})).map((function(e){return e.node})),e.setUncontrolledState({checkedKeys:m})}else{var h=et([].concat((0,f.Z)(l),[p]),!0,i),y=h.checkedKeys,g=h.halfCheckedKeys;if(!r){var b=new Set(y);b.delete(p);var x=et(Array.from(b),{checked:!1,halfCheckedKeys:g},i);y=x.checkedKeys,g=x.halfCheckedKeys}o=y,v.checkedNodes=[],v.checkedNodesPositions=[],v.halfCheckedKeys=g,y.forEach((function(e){var n=i[e];if(n){var t=n.node,r=n.pos;v.checkedNodes.push(t),v.checkedNodesPositions.push({node:t,pos:r})}})),e.setUncontrolledState({checkedKeys:y},!1,{halfCheckedKeys:g})}null===d||void 0===d||d(o,v)},e.onNodeLoad=function(n){var t=n.key,r=new Promise((function(r,o){e.setState((function(a){var i=a.loadedKeys,l=void 0===i?[]:i,c=a.loadingKeys,u=void 0===c?[]:c,s=e.props,d=s.loadData,f=s.onLoad;return d&&-1===l.indexOf(t)&&-1===u.indexOf(t)?(d(n).then((function(){var o=Mn(e.state.loadedKeys,t);null===f||void 0===f||f(o,{event:"load",node:n}),e.setUncontrolledState({loadedKeys:o}),e.setState((function(e){return{loadingKeys:Rn(e.loadingKeys,t)}})),r()})).catch((function(n){if(e.setState((function(e){return{loadingKeys:Rn(e.loadingKeys,t)}})),e.loadingRetryTimes[t]=(e.loadingRetryTimes[t]||0)+1,e.loadingRetryTimes[t]>=10){var a=e.state.loadedKeys;(0,g.ZP)(!1,"Retry for `loadData` many times but still failed. No more retry."),e.setUncontrolledState({loadedKeys:Mn(a,t)}),r()}o(n)})),{loadingKeys:Mn(u,t)}):null}))}));return r.catch((function(){})),r},e.onNodeMouseEnter=function(n,t){var r=e.props.onMouseEnter;null===r||void 0===r||r({event:n,node:t})},e.onNodeMouseLeave=function(n,t){var r=e.props.onMouseLeave;null===r||void 0===r||r({event:n,node:t})},e.onNodeContextMenu=function(n,t){var r=e.props.onRightClick;r&&(n.preventDefault(),r({event:n,node:t}))},e.onFocus=function(){var n=e.props.onFocus;e.setState({focused:!0});for(var t=arguments.length,r=new Array(t),o=0;o1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(!e.destroyed){var o=!1,a=!0,i={};Object.keys(n).forEach((function(t){t in e.props?a=!1:(o=!0,i[t]=n[t])})),!o||t&&!a||e.setState((0,d.Z)((0,d.Z)({},i),r))}},e.scrollTo=function(n){e.listRef.current.scrollTo(n)},e}return(0,He.Z)(t,[{key:"componentDidMount",value:function(){this.onUpdated()}},{key:"componentDidUpdate",value:function(){this.onUpdated()}},{key:"onUpdated",value:function(){var e=this.props.activeKey;void 0!==e&&e!==this.state.activeKey&&(this.setState({activeKey:e}),null!==e&&this.scrollTo({key:e}))}},{key:"componentWillUnmount",value:function(){window.removeEventListener("dragend",this.onWindowDragEnd),this.destroyed=!0}},{key:"resetDragState",value:function(){this.setState({dragOverNodeKey:null,dropPosition:null,dropLevelOffset:null,dropTargetKey:null,dropContainerKey:null,dropTargetPos:null,dropAllowed:!1})}},{key:"render",value:function(){var e,n,t=this.state,a=t.focused,c=t.flattenNodes,s=t.keyEntities,d=t.draggingNodeKey,f=t.activeKey,p=t.dropLevelOffset,m=t.dropContainerKey,h=t.dropTargetKey,y=t.dropPosition,g=t.dragOverNodeKey,b=t.indent,x=this.props,C=x.prefixCls,E=x.className,w=x.style,Z=x.showLine,N=x.focusable,k=x.tabIndex,S=void 0===k?0:k,O=x.selectable,P=x.showIcon,K=x.icon,I=x.switcherIcon,D=x.draggable,R=x.checkable,M=x.checkStrictly,T=x.disabled,L=x.motion,j=x.loadData,A=x.filterTreeNode,_=x.height,H=x.itemHeight,z=x.virtual,V=x.titleRender,F=x.dropIndicatorRender,B=x.onContextMenu,U=x.onScroll,W=x.direction,G=(0,v.Z)(this.props,{aria:!0,data:!0});return D&&(n="object"===(0,r.Z)(D)?D:"function"===typeof D?{nodeDraggable:D}:{}),l.createElement(Zn.Provider,{value:{prefixCls:C,selectable:O,showIcon:P,icon:K,switcherIcon:I,draggable:n,draggingNodeKey:d,checkable:R,checkStrictly:M,disabled:T,keyEntities:s,dropLevelOffset:p,dropContainerKey:m,dropTargetKey:h,dropPosition:y,dragOverNodeKey:g,indent:b,direction:W,dropIndicatorRender:F,loadData:j,filterTreeNode:A,titleRender:V,onNodeClick:this.onNodeClick,onNodeDoubleClick:this.onNodeDoubleClick,onNodeExpand:this.onNodeExpand,onNodeSelect:this.onNodeSelect,onNodeCheck:this.onNodeCheck,onNodeLoad:this.onNodeLoad,onNodeMouseEnter:this.onNodeMouseEnter,onNodeMouseLeave:this.onNodeMouseLeave,onNodeContextMenu:this.onNodeContextMenu,onNodeDragStart:this.onNodeDragStart,onNodeDragEnter:this.onNodeDragEnter,onNodeDragOver:this.onNodeDragOver,onNodeDragLeave:this.onNodeDragLeave,onNodeDragEnd:this.onNodeDragEnd,onNodeDrop:this.onNodeDrop}},l.createElement("div",{role:"tree",className:u()(C,E,(e={},(0,o.Z)(e,"".concat(C,"-show-line"),Z),(0,o.Z)(e,"".concat(C,"-focused"),a),(0,o.Z)(e,"".concat(C,"-active-focused"),null!==f),e))},l.createElement(wr,(0,i.Z)({ref:this.listRef,prefixCls:C,style:w,data:c,disabled:T,selectable:O,checkable:!!R,motion:L,dragging:null!==d,height:_,itemHeight:H,virtual:z,focusable:N,focused:a,tabIndex:S,activeItem:this.getActiveItem(),onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,onActiveChange:this.onActiveChange,onListChangeStart:this.onListChangeStart,onListChangeEnd:this.onListChangeEnd,onContextMenu:B,onScroll:U},this.getTreeNodeRequiredProps(),G))))}}],[{key:"getDerivedStateFromProps",value:function(e,n){var t,r=n.prevProps,a={prevProps:e};function i(n){return!r&&n in e||r&&r[n]!==e[n]}var l=n.fieldNames;if(i("fieldNames")&&(l=Un(e.fieldNames),a.fieldNames=l),i("treeData")?t=e.treeData:i("children")&&((0,g.ZP)(!1,"`children` of Tree is deprecated. Please use `treeData` instead."),t=Wn(e.children)),t){a.treeData=t;var c=Xn(t,{fieldNames:l});a.keyEntities=(0,d.Z)((0,o.Z)({},mr,yr),c.keyEntities)}var u,s=a.keyEntities||n.keyEntities;if(i("expandedKeys")||r&&i("autoExpandParent"))a.expandedKeys=e.autoExpandParent||!r&&e.defaultExpandParent?Vn(e.expandedKeys,s):e.expandedKeys;else if(!r&&e.defaultExpandAll){var f=(0,d.Z)({},s);delete f[mr],a.expandedKeys=Object.keys(f).map((function(e){return f[e].key}))}else!r&&e.defaultExpandedKeys&&(a.expandedKeys=e.autoExpandParent||e.defaultExpandParent?Vn(e.defaultExpandedKeys,s):e.defaultExpandedKeys);if(a.expandedKeys||delete a.expandedKeys,t||a.expandedKeys){var p=Gn(t||n.treeData,a.expandedKeys||n.expandedKeys,l);a.flattenNodes=p}if((e.selectable&&(i("selectedKeys")?a.selectedKeys=Hn(e.selectedKeys,e):!r&&e.defaultSelectedKeys&&(a.selectedKeys=Hn(e.defaultSelectedKeys,e))),e.checkable)&&(i("checkedKeys")?u=zn(e.checkedKeys)||{}:!r&&e.defaultCheckedKeys?u=zn(e.defaultCheckedKeys)||{}:t&&(u=zn(e.checkedKeys)||{checkedKeys:n.checkedKeys,halfCheckedKeys:n.halfCheckedKeys}),u)){var v=u,m=v.checkedKeys,h=void 0===m?[]:m,y=v.halfCheckedKeys,b=void 0===y?[]:y;if(!e.checkStrictly){var x=et(h,!0,s);h=x.checkedKeys,b=x.halfCheckedKeys}a.checkedKeys=h,a.halfCheckedKeys=b}return i("loadedKeys")&&(a.loadedKeys=e.loadedKeys),a}}]),t}(l.Component);Zr.defaultProps={prefixCls:"rc-tree",showLine:!1,showIcon:!0,selectable:!0,multiple:!1,checkable:!1,disabled:!1,checkStrictly:!1,draggable:!1,defaultExpandParent:!0,autoExpandParent:!1,defaultExpandAll:!1,defaultExpandedKeys:[],defaultCheckedKeys:[],defaultSelectedKeys:[],dropIndicatorRender:function(e){var n=e.dropPosition,t=e.dropLevelOffset,r=e.indent,o={pointerEvents:"none",position:"absolute",right:0,backgroundColor:"red",height:2};switch(n){case-1:o.top=0,o.left=-t*r;break;case 1:o.bottom=0,o.left=-t*r;break;case 0:o.bottom=0,o.left=r}return l.createElement("div",{style:o})},allowDrop:function(){return!0}},Zr.TreeNode=Dn;var Nr=Zr,kr=t(23279),Sr=t.n(kr),Or={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file",theme:"outlined"},Pr=function(e,n){return l.createElement(on.Z,(0,d.Z)((0,d.Z)({},e),{},{ref:n,icon:Or}))};Pr.displayName="FileOutlined";var Kr=l.forwardRef(Pr),Ir={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z"}}]},name:"folder-open",theme:"outlined"},Dr=function(e,n){return l.createElement(on.Z,(0,d.Z)((0,d.Z)({},e),{},{ref:n,icon:Ir}))};Dr.displayName="FolderOpenOutlined";var Rr=l.forwardRef(Dr),Mr={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"},Tr=function(e,n){return l.createElement(on.Z,(0,d.Z)((0,d.Z)({},e),{},{ref:n,icon:Mr}))};Tr.displayName="FolderOutlined";var Lr,jr=l.forwardRef(Tr);function Ar(e,n){e.forEach((function(e){var t=e.key,r=e.children;!1!==n(t,e)&&Ar(r||[],n)}))}function _r(e){var n=e.treeData,t=e.expandedKeys,r=e.startKey,o=e.endKey,a=[],i=Lr.None;if(r&&r===o)return[r];if(!r||!o)return[];return Ar(n,(function(e){if(i===Lr.End)return!1;if(function(e){return e===r||e===o}(e)){if(a.push(e),i===Lr.None)i=Lr.Start;else if(i===Lr.Start)return i=Lr.End,!1}else i===Lr.Start&&a.push(e);return-1!==t.indexOf(e)})),a}function Hr(e,n){var t=(0,f.Z)(n),r=[];return Ar(e,(function(e,n){var o=t.indexOf(e);return-1!==o&&(r.push(n),t.splice(o,1)),!!t.length})),r}!function(e){e[e.None=0]="None",e[e.Start=1]="Start",e[e.End=2]="End"}(Lr||(Lr={}));var zr=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0&&void 0!==arguments[0]?arguments[0]:{closeDropdown:!0}).closeDropdown&&O(!1),q(R())},clearFilters:Q,filters:i.filters,visible:P});else if(i.filterDropdown)X=i.filterDropdown;else{var te=R()||[];X=l.createElement(l.Fragment,null,0===(i.filters||[]).length?l.createElement(uo.Z,{image:uo.Z.PRESENTED_IMAGE_SIMPLE,description:g.filterEmptyText,imageStyle:{height:24},style:{margin:0,padding:"16px 0"}}):"tree"===p?l.createElement(l.Fragment,null,l.createElement(vo,{filterSearch:m,value:W,onChange:Y,tablePrefixCls:t,locale:g}),l.createElement("div",{className:"".concat(t,"-filter-dropdown-tree")},d?l.createElement(tt.Z,{className:"".concat(t,"-filter-dropdown-checkall"),onChange:ee},g.filterCheckall):null,l.createElement(co,{checkable:!0,selectable:!1,blockNode:!0,multiple:d,checkStrictly:!d,className:"".concat(c,"-menu"),onCheck:L,checkedKeys:te,selectedKeys:te,showIcon:!1,treeData:ne({filters:i.filters}),autoExpandParent:!0,defaultExpandAll:!0,filterTreeNode:W.trim()?function(e){return ho(W,e.title)}:void 0}))):l.createElement(l.Fragment,null,l.createElement(vo,{filterSearch:m,value:W,onChange:Y,tablePrefixCls:t,locale:g}),l.createElement(ot.Z,{multiple:d,prefixCls:"".concat(c,"-menu"),className:$,onClick:F,onSelect:T,onDeselect:T,selectedKeys:te,getPopupContainer:x,openKeys:_,onOpenChange:V},yo({filters:i.filters||[],prefixCls:r,filteredKeys:R(),filterMultiple:d,searchValue:W}))),l.createElement("div",{className:"".concat(r,"-dropdown-btns")},l.createElement(nr.Z,{type:"link",size:"small",disabled:0===te.length,onClick:Q},g.filterReset),l.createElement(nr.Z,{type:"primary",size:"small",onClick:J},g.filterConfirm)))}var re,oe=l.createElement(so,{className:"".concat(r,"-dropdown")},X);re="function"===typeof i.filterIcon?i.filterIcon(S):i.filterIcon?i.filterIcon:l.createElement(er,null);var ae=l.useContext(mn.E_).direction;return l.createElement("div",{className:"".concat(r,"-column")},l.createElement("span",{className:"".concat(t,"-column-title")},b),l.createElement(rt.Z,{overlay:oe,trigger:["click"],visible:P,onVisibleChange:function(e){e&&void 0!==K&&M(K||[]),O(e),e||i.filterDropdown||J()},getPopupContainer:x,placement:"rtl"===ae?"bottomLeft":"bottomRight"},l.createElement("span",{role:"button",tabIndex:-1,className:u()("".concat(r,"-trigger"),{active:S}),onClick:function(e){e.stopPropagation()}},re)))};function bo(e,n,t){var r=[];return(e||[]).forEach((function(e,o){var a,i=At(o,t);if(e.filters||"filterDropdown"in e||"onFilter"in e)if("filteredValue"in e){var l=e.filteredValue;"filterDropdown"in e||(l=null!==(a=null===l||void 0===l?void 0:l.map(String))&&void 0!==a?a:l),r.push({column:e,key:jt(e,i),filteredKeys:l,forceFiltered:e.filtered})}else r.push({column:e,key:jt(e,i),filteredKeys:n&&e.defaultFilteredValue?e.defaultFilteredValue:void 0,forceFiltered:e.filtered});"children"in e&&(r=[].concat((0,f.Z)(r),(0,f.Z)(bo(e.children,n,i))))})),r}function xo(e,n,t,r,o,a,c,u){return t.map((function(t,s){var d=At(s,u),f=t.filterMultiple,p=void 0===f||f,v=t.filterMode,m=t.filterSearch,h=t;if(h.filters||h.filterDropdown){var y=jt(h,d),g=r.find((function(e){var n=e.key;return y===n}));h=(0,i.Z)((0,i.Z)({},h),{title:function(r){return l.createElement(go,{tablePrefixCls:e,prefixCls:"".concat(e,"-filter"),dropdownPrefixCls:n,column:h,columnKey:y,filterState:g,filterMultiple:p,filterMode:v,filterSearch:m,triggerFilter:o,locale:c,getPopupContainer:a},_t(t.title,r))}})}return"children"in h&&(h=(0,i.Z)((0,i.Z)({},h),{children:xo(e,n,h.children,r,o,a,c,d)})),h}))}function Co(e){var n=[];return(e||[]).forEach((function(e){var t=e.value,r=e.children;n.push(t),r&&(n=[].concat((0,f.Z)(n),(0,f.Z)(Co(r))))})),n}function Eo(e){var n={};return e.forEach((function(e){var t=e.key,r=e.filteredKeys,o=e.column,a=o.filters;if(o.filterDropdown)n[t]=r||null;else if(Array.isArray(r)){var i=Co(a);n[t]=i.filter((function(e){return r.includes(String(e))}))}else n[t]=null})),n}function wo(e,n){return n.reduce((function(e,n){var t=n.column,r=t.onFilter,o=t.filters,a=n.filteredKeys;return r&&a&&a.length?e.filter((function(e){return a.some((function(n){var t=Co(o),a=t.findIndex((function(e){return String(e)===String(n)})),i=-1!==a?t[a]:n;return r(i,e)}))})):e}),e)}var Zo=function(e){var n=e.prefixCls,t=e.dropdownPrefixCls,r=e.mergedColumns,o=e.onFilterChange,i=e.getPopupContainer,c=e.locale,u=l.useState(bo(r,!0)),s=(0,a.Z)(u,2),d=s[0],f=s[1],p=l.useMemo((function(){var e=bo(r,!1),n=e.every((function(e){return void 0===e.filteredKeys}));if(n)return d;var t=e.every((function(e){return void 0!==e.filteredKeys}));return(0,ut.Z)(n||t,"Table","`FilteredKeys` should all be controlled or not controlled."),e}),[r,d]),v=l.useCallback((function(){return Eo(p)}),[p]),m=function(e){var n=p.filter((function(n){return n.key!==e.key}));n.push(e),f(n),o(Eo(n),n)};return[function(e){return xo(n,t,e,p,m,i,c)},p,v]};function No(e,n){return e.map((function(e){var t=(0,i.Z)({},e);return t.title=_t(e.title,n),"children"in t&&(t.children=No(t.children,n)),t}))}function ko(e){return[l.useCallback((function(n){return No(n,e)}),[e])]}var So=function(e){return function(n){var t,r=n.prefixCls,a=n.onExpand,i=n.record,c=n.expanded,s=n.expandable,d="".concat(r,"-row-expand-icon");return l.createElement("button",{type:"button",onClick:function(e){a(i,e),e.stopPropagation()},className:u()(d,(t={},(0,o.Z)(t,"".concat(d,"-spaced"),!s),(0,o.Z)(t,"".concat(d,"-expanded"),s&&c),(0,o.Z)(t,"".concat(d,"-collapsed"),s&&!c),t)),"aria-label":c?e.collapse:e.expand})}};function Oo(e){return null!==e&&void 0!==e&&e===e.window}function Po(e,n){var t;if("undefined"===typeof window)return 0;var r=n?"scrollTop":"scrollLeft",o=0;return Oo(e)?o=e[n?"pageYOffset":"pageXOffset"]:e instanceof Document?o=e.documentElement[r]:e&&(o=e[r]),e&&!Oo(e)&&"number"!==typeof o&&(o=null===(t=(e.ownerDocument||e).documentElement)||void 0===t?void 0:t[r]),o}function Ko(e,n,t,r){var o=t-n;return(e/=r/2)<1?o/2*e*e*e+n:o/2*((e-=2)*e*e+2)+n}function Io(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=n.getContainer,r=void 0===t?function(){return window}:t,o=n.callback,a=n.duration,i=void 0===a?450:a,l=r(),c=Po(l,!0),u=Date.now(),s=function n(){var t=Date.now()-u,r=Ko(t>i?i:t,c,e,i);Oo(l)?l.scrollTo(window.pageXOffset,r):l instanceof HTMLDocument||"HTMLDocument"===l.constructor.name?l.documentElement.scrollTop=r:l.scrollTop=r,t1),"Table","`index` parameter of `rowKey` function is deprecated. There is no guarantee that it will work as expected.");var j=l.useMemo((function(){return C||ue(E)}),[C,E]),A=l.useMemo((function(){return j.some((function(e){return e.responsive}))}),[j]),_=(0,hn.Z)(A),H=l.useMemo((function(){var e=new Set(Object.keys(_).filter((function(e){return _[e]})));return j.filter((function(n){return!n.responsive||n.responsive.some((function(n){return e.has(n)}))}))}),[j,_]),z=(0,s.Z)(e,["className","style","columns"]),V=l.useContext(vt.Z),F=l.useContext(mn.E_),B=F.locale,U=void 0===B?Do:B,W=F.renderEmpty,G=F.direction,Y=p||V,X=(0,i.Z)((0,i.Z)({},U.Table),M),q=h||To,J=l.useContext(mn.E_).getPrefixCls,Q=J("table",c),$=J("dropdown",m),ee=(0,i.Z)({childrenColumnName:w,expandIconColumnIndex:K},O),ne=ee.childrenColumnName,te=void 0===ne?"children":ne,re=l.useMemo((function(){return q.some((function(e){var n;return null===(n=e)||void 0===n?void 0:n[te]}))?"nest":P||O&&O.expandedRowRender?"row":null}),[q]),oe={body:l.useRef()},ae=l.useMemo((function(){return"function"===typeof b?b:function(e){var n;return null===(n=e)||void 0===n?void 0:n[b]}}),[b]),ie=function(e,n,t){var o=l.useRef({});return[function(a){if(!o.current||o.current.data!==e||o.current.childrenColumnName!==n||o.current.getRowKey!==t){var i=new Map;function a(e){e.forEach((function(e,o){var l=t(e,o);i.set(l,e),e&&"object"===(0,r.Z)(e)&&n in e&&a(e[n]||[])}))}a(e),o.current={data:e,childrenColumnName:n,kvMap:i,getRowKey:t}}return o.current.kvMap.get(a)}]}(q,te,ae),le=(0,a.Z)(ie,1)[0],ce={},se=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=(0,i.Z)((0,i.Z)({},ce),e);t&&(ce.resetPagination(),r.pagination.current&&(r.pagination.current=1),y&&y.onChange&&y.onChange(1,r.pagination.pageSize)),D&&!1!==D.scrollToFirstRowOnChange&&oe.body.current&&Io(0,{getContainer:function(){return oe.body.current}}),null===Z||void 0===Z||Z(r.pagination,r.filters,r.sorter,{currentDataSource:wo(Yt(q,r.sorterStates,te),r.filterStates),action:n})},de=Xt({prefixCls:Q,mergedColumns:H,onSorterChange:function(e,n){se({sorter:e,sorterStates:n},"sort",!1)},sortDirections:R||["ascend","descend"],tableLocale:X,showSorterTooltip:L}),fe=(0,a.Z)(de,4),pe=fe[0],ve=fe[1],me=fe[2],he=fe[3],ye=l.useMemo((function(){return Yt(q,ve,te)}),[q,ve]);ce.sorter=he(),ce.sorterStates=ve;var ge=Zo({prefixCls:Q,locale:X,dropdownPrefixCls:$,mergedColumns:H,onFilterChange:function(e,n){se({filters:e,filterStates:n},"filter",!0)},getPopupContainer:N}),be=(0,a.Z)(ge,3),xe=be[0],Ce=be[1],Ee=be[2],we=wo(ye,Ce);ce.filters=Ee(),ce.filterStates=Ce;var Ze=ko(l.useMemo((function(){return(0,i.Z)({},me)}),[me])),Ne=(0,a.Z)(Ze,1)[0],ke=xn(we.length,y,(function(e,n){se({pagination:(0,i.Z)((0,i.Z)({},ce.pagination),{current:e,pageSize:n})},"paginate")})),Se=(0,a.Z)(ke,2),Oe=Se[0],Pe=Se[1];ce.pagination=!1===y?{}:function(e,n){var t={current:n.current,pageSize:n.pageSize},o=e&&"object"===(0,r.Z)(e)?e:{};return Object.keys(o).forEach((function(e){var r=n[e];"function"!==typeof r&&(t[e]=r)})),t}(y,Oe),ce.resetPagination=Pe;var Ke=l.useMemo((function(){if(!1===y||!Oe.pageSize)return we;var e=Oe.current,n=void 0===e?1:e,t=Oe.total,r=Oe.pageSize,o=void 0===r?10:r;return(0,ut.Z)(n>0,"Table","`current` should be positive number."),we.lengtho?((0,ut.Z)(!1,"Table","`dataSource` length is less than `pagination.total` but large than `pagination.pageSize`. Please make sure your config correct data with async mode."),we.slice((n-1)*o,n*o)):we:we.slice((n-1)*o,n*o)}),[!!y,we,Oe&&Oe.current,Oe&&Oe.pageSize,Oe&&Oe.total]),Ie=Pt(g,{prefixCls:Q,data:we,pageData:Ke,getRowKey:ae,getRecordByKey:le,expandType:re,childrenColumnName:te,locale:X,getPopupContainer:N}),De=(0,a.Z)(Ie,2),Re=De[0],Te=De[1];ee.__PARENT_RENDER_ICON__=ee.expandIcon,ee.expandIcon=ee.expandIcon||S||So(X),"nest"===re&&void 0===ee.expandIconColumnIndex?ee.expandIconColumnIndex=g?1:0:ee.expandIconColumnIndex>0&&g&&(ee.expandIconColumnIndex-=1),"number"!==typeof ee.indentSize&&(ee.indentSize="number"===typeof I?I:15);var Le,_e,He,ze=l.useCallback((function(e){return Ne(Re(xe(pe(e))))}),[pe,xe,Re]);if(!1!==y&&(null===Oe||void 0===Oe?void 0:Oe.total)){var Ve;Ve=Oe.size?Oe.size:"small"===Y||"middle"===Y?"small":void 0;var Fe=function(e){return l.createElement(gn,(0,i.Z)({},Oe,{className:u()("".concat(Q,"-pagination ").concat(Q,"-pagination-").concat(e),Oe.className),size:Ve}))},Be="rtl"===G?"left":"right",Ue=Oe.position;if(null!==Ue&&Array.isArray(Ue)){var We=Ue.find((function(e){return-1!==e.indexOf("top")})),Ge=Ue.find((function(e){return-1!==e.indexOf("bottom")})),Ye=Ue.every((function(e){return"none"==="".concat(e)}));We||Ge||Ye||(_e=Fe(Be)),We&&(Le=Fe(We.toLowerCase().replace("top",""))),Ge&&(_e=Fe(Ge.toLowerCase().replace("bottom","")))}else _e=Fe(Be)}"boolean"===typeof k?He={spinning:k}:"object"===(0,r.Z)(k)&&(He=(0,i.Z)({spinning:!0},k));var Xe=u()("".concat(Q,"-wrapper"),(0,o.Z)({},"".concat(Q,"-wrapper-rtl"),"rtl"===G),d);return l.createElement("div",{ref:n,className:Xe,style:f},l.createElement(Ae.Z,(0,i.Z)({spinning:!1},He),Le,l.createElement(je,(0,i.Z)({},z,{columns:H,direction:G,expandable:ee,prefixCls:Q,className:u()((t={},(0,o.Z)(t,"".concat(Q,"-middle"),"middle"===Y),(0,o.Z)(t,"".concat(Q,"-small"),"small"===Y),(0,o.Z)(t,"".concat(Q,"-bordered"),v),(0,o.Z)(t,"".concat(Q,"-empty"),0===q.length),t)),data:Ke,rowKey:ae,rowClassName:function(e,n,t){var r;return r="function"===typeof x?u()(x(e,n,t)):u()(x),u()((0,o.Z)({},"".concat(Q,"-row-selected"),Te.has(ae(e,n))),r)},emptyText:M&&M.emptyText||W("Table"),internalHooks:Me,internalRefs:oe,transformColumns:ze})),_e))}var jo=l.forwardRef(Lo);jo.defaultProps={rowKey:"key"},jo.SELECTION_COLUMN=wt,jo.EXPAND_COLUMN=je.EXPAND_COLUMN,jo.SELECTION_ALL=Zt,jo.SELECTION_INVERT=Nt,jo.SELECTION_NONE=kt,jo.Column=Ro,jo.ColumnGroup=Mo,jo.Summary=Ee;var Ao=jo},50132:function(e,n,t){var r=t(87462),o=t(4942),a=t(91),i=t(1413),l=t(15671),c=t(43144),u=t(60136),s=t(3289),d=t(67294),f=t(94184),p=t.n(f),v=function(e){(0,u.Z)(t,e);var n=(0,s.Z)(t);function t(e){var r;(0,l.Z)(this,t),(r=n.call(this,e)).handleChange=function(e){var n=r.props,t=n.disabled,o=n.onChange;t||("checked"in r.props||r.setState({checked:e.target.checked}),o&&o({target:(0,i.Z)((0,i.Z)({},r.props),{},{checked:e.target.checked}),stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},nativeEvent:e.nativeEvent}))},r.saveInput=function(e){r.input=e};var o="checked"in e?e.checked:e.defaultChecked;return r.state={checked:o},r}return(0,c.Z)(t,[{key:"focus",value:function(){this.input.focus()}},{key:"blur",value:function(){this.input.blur()}},{key:"render",value:function(){var e,n=this.props,t=n.prefixCls,i=n.className,l=n.style,c=n.name,u=n.id,s=n.type,f=n.disabled,v=n.readOnly,m=n.tabIndex,h=n.onClick,y=n.onFocus,g=n.onBlur,b=n.onKeyDown,x=n.onKeyPress,C=n.onKeyUp,E=n.autoFocus,w=n.value,Z=n.required,N=(0,a.Z)(n,["prefixCls","className","style","name","id","type","disabled","readOnly","tabIndex","onClick","onFocus","onBlur","onKeyDown","onKeyPress","onKeyUp","autoFocus","value","required"]),k=Object.keys(N).reduce((function(e,n){return"aria-"!==n.substr(0,5)&&"data-"!==n.substr(0,5)&&"role"!==n||(e[n]=N[n]),e}),{}),S=this.state.checked,O=p()(t,i,(e={},(0,o.Z)(e,"".concat(t,"-checked"),S),(0,o.Z)(e,"".concat(t,"-disabled"),f),e));return d.createElement("span",{className:O,style:l},d.createElement("input",(0,r.Z)({name:c,id:u,type:s,required:Z,readOnly:v,disabled:f,tabIndex:m,className:"".concat(t,"-input"),checked:!!S,onClick:h,onFocus:y,onBlur:g,onKeyUp:C,onKeyDown:b,onKeyPress:x,onChange:this.handleChange,autoFocus:E,ref:this.saveInput,value:w},k)),d.createElement("span",{className:"".concat(t,"-inner")}))}}],[{key:"getDerivedStateFromProps",value:function(e,n){return"checked"in e?(0,i.Z)((0,i.Z)({},n),{},{checked:e.checked}):null}}]),t}(d.Component);v.defaultProps={prefixCls:"rc-checkbox",className:"",style:{},type:"checkbox",defaultChecked:!1,onFocus:function(){},onBlur:function(){},onChange:function(){},onKeyDown:function(){},onKeyPress:function(){},onKeyUp:function(){}},n.Z=v},73453:function(e,n,t){t.d(n,{Z:function(){return X}});var r=t(67294),o=t(94184),a=t.n(o),i=t(48555);function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function c(e){for(var n=1;nt},e}return n=l,(t=[{key:"componentDidMount",value:function(){this.scrollbarRef.current.addEventListener("touchstart",this.onScrollbarTouchStart),this.thumbRef.current.addEventListener("touchstart",this.onMouseDown)}},{key:"componentDidUpdate",value:function(e){e.scrollTop!==this.props.scrollTop&&this.delayHidden()}},{key:"componentWillUnmount",value:function(){this.removeEvents(),clearTimeout(this.visibleTimeout)}},{key:"render",value:function(){var e=this.state,n=e.dragging,t=e.visible,o=this.props.prefixCls,i=this.getSpinHeight(),l=this.getTop(),c=this.showScroll(),u=c&&t;return r.createElement("div",{ref:this.scrollbarRef,className:a()("".concat(o,"-scrollbar"),v({},"".concat(o,"-scrollbar-show"),c)),style:{width:8,top:0,bottom:0,right:0,position:"absolute",display:u?null:"none"},onMouseDown:this.onContainerMouseDown,onMouseMove:this.delayHidden},r.createElement("div",{ref:this.thumbRef,className:a()("".concat(o,"-scrollbar-thumb"),v({},"".concat(o,"-scrollbar-thumb-moving"),n)),style:{width:"100%",height:i,top:l,left:0,position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"},onMouseDown:this.onMouseDown}))}}])&&h(n.prototype,t),o&&h(n,o),Object.defineProperty(n,"prototype",{writable:!1}),l}(r.Component);function w(e){var n=e.children,t=e.setRef,o=r.useCallback((function(e){t(e)}),[]);return r.cloneElement(n,{ref:o})}var Z=t(34203);function N(e,n){for(var t=0;te.length)&&(n=e.length);for(var t=0,r=new Array(n);te.length)&&(n=e.length);for(var t=0,r=new Array(n);t1&&void 0!==arguments[1]&&arguments[1],r=e<0&&i.current.top||e>0&&i.current.bottom;return n&&r?(clearTimeout(o.current),t.current=!1):r&&!t.current||a(),!t.current&&r}};var L=t(8410);var j=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","component","onScroll","onVisibleChange"];function A(){return A=Object.assign||function(e){for(var n=1;ne.length)&&(n=e.length);for(var t=0,r=new Array(n);t=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var U=[],W={overflowY:"auto",overflowAnchor:"none"};function G(e,n){var t=e.prefixCls,o=void 0===t?"rc-virtual-list":t,i=e.className,l=e.height,c=e.itemHeight,u=e.fullHeight,s=void 0===u||u,p=e.style,v=e.data,m=e.children,h=e.itemKey,y=e.virtual,g=e.component,b=void 0===g?"div":g,x=e.onScroll,C=e.onVisibleChange,N=B(e,j),O=!(!1===y||!l||!c),K=O&&v&&c*v.length>l,I=V((0,r.useState)(0),2),R=I[0],_=I[1],F=V((0,r.useState)(!1),2),G=F[0],Y=F[1],X=a()(o,i),q=v||U,J=(0,r.useRef)(),Q=(0,r.useRef)(),$=(0,r.useRef)(),ee=r.useCallback((function(e){return"function"===typeof h?h(e):null===e||void 0===e?void 0:e[h]}),[h]),ne={getKey:ee};function te(e){_((function(n){var t=function(e){var n=e;Number.isNaN(ge.current)||(n=Math.min(n,ge.current));return n=Math.max(n,0)}("function"===typeof e?e(n):e);return J.current.scrollTop=t,t}))}var re=(0,r.useRef)({start:0,end:q.length}),oe=(0,r.useRef)(),ae=V(D(q,ee),1)[0];oe.current=ae;var ie=function(e,n,t){var o=S(r.useState(0),2),a=o[0],i=o[1],l=(0,r.useRef)(new Map),c=(0,r.useRef)(new k),u=(0,r.useRef)();function s(){f.Z.cancel(u.current)}function d(){s(),u.current=(0,f.Z)((function(){l.current.forEach((function(e,n){if(e&&e.offsetParent){var t=(0,Z.Z)(e),r=t.offsetHeight;c.current.get(n)!==r&&c.current.set(n,t.offsetHeight)}})),i((function(e){return e+1}))}))}return(0,r.useEffect)((function(){return s}),[]),[function(r,o){var a=e(r),i=l.current.get(a);o?(l.current.set(a,o),d()):l.current.delete(a),!i!==!o&&(o?null===n||void 0===n||n(r):null===t||void 0===t||t(r))},d,c.current,a]}(ee,null,null),le=V(ie,4),ce=le[0],ue=le[1],se=le[2],de=le[3],fe=r.useMemo((function(){if(!O)return{scrollHeight:void 0,start:0,end:q.length-1,offset:void 0};var e;if(!K)return{scrollHeight:(null===(e=Q.current)||void 0===e?void 0:e.offsetHeight)||0,start:0,end:q.length-1,offset:void 0};for(var n,t,r,o=0,a=q.length,i=0;i=R&&void 0===n&&(n=i,t=o),f>R+l&&void 0===r&&(r=i),o=f}return void 0===n&&(n=0,t=0),void 0===r&&(r=q.length-1),{scrollHeight:o,start:n,end:r=Math.min(r+1,q.length),offset:t}}),[K,O,R,q,de,l]),pe=fe.scrollHeight,ve=fe.start,me=fe.end,he=fe.offset;re.current.start=ve,re.current.end=me;var ye=pe-l,ge=(0,r.useRef)(ye);ge.current=ye;var be=R<=0,xe=R>=ye,Ce=T(be,xe);var Ee=function(e,n,t,o){var a=(0,r.useRef)(0),i=(0,r.useRef)(null),l=(0,r.useRef)(null),c=(0,r.useRef)(!1),u=T(n,t);return[function(n){if(e){f.Z.cancel(i.current);var t=n.deltaY;a.current+=t,l.current=t,u(t)||(M||n.preventDefault(),i.current=(0,f.Z)((function(){var e=c.current?10:1;o(a.current*e),a.current=0})))}},function(n){e&&(c.current=n.detail===l.current)}]}(O,be,xe,(function(e){te((function(n){return n+e}))})),we=V(Ee,2),Ze=we[0],Ne=we[1];!function(e,n,t){var o,a=(0,r.useRef)(!1),i=(0,r.useRef)(0),l=(0,r.useRef)(null),c=(0,r.useRef)(null),u=function(e){if(a.current){var n=Math.ceil(e.touches[0].pageY),r=i.current-n;i.current=n,t(r)&&e.preventDefault(),clearInterval(c.current),c.current=setInterval((function(){(!t(r*=.9333333333333333,!0)||Math.abs(r)<=.1)&&clearInterval(c.current)}),16)}},s=function(){a.current=!1,o()},d=function(e){o(),1!==e.touches.length||a.current||(a.current=!0,i.current=Math.ceil(e.touches[0].pageY),l.current=e.target,l.current.addEventListener("touchmove",u),l.current.addEventListener("touchend",s))};o=function(){l.current&&(l.current.removeEventListener("touchmove",u),l.current.removeEventListener("touchend",s))},(0,L.Z)((function(){return e&&n.current.addEventListener("touchstart",d),function(){n.current.removeEventListener("touchstart",d),o(),clearInterval(c.current)}}),[e])}(O,J,(function(e,n){return!Ce(e,n)&&(Ze({preventDefault:function(){},deltaY:e}),!0)})),(0,L.Z)((function(){function e(e){O&&e.preventDefault()}return J.current.addEventListener("wheel",Ze),J.current.addEventListener("DOMMouseScroll",Ne),J.current.addEventListener("MozMousePixelScroll",e),function(){J.current.removeEventListener("wheel",Ze),J.current.removeEventListener("DOMMouseScroll",Ne),J.current.removeEventListener("MozMousePixelScroll",e)}}),[O]);var ke=function(e,n,t,o,a,i,l,c){var u=r.useRef();return function(r){if(null!==r&&void 0!==r){if(f.Z.cancel(u.current),"number"===typeof r)l(r);else if(r&&"object"===P(r)){var s,d=r.align;s="index"in r?r.index:n.findIndex((function(e){return a(e)===r.key}));var p=r.offset,v=void 0===p?0:p;!function r(c,p){if(!(c<0)&&e.current){var m=e.current.clientHeight,h=!1,y=p;if(m){for(var g=p||d,b=0,x=0,C=0,E=Math.min(n.length,s),w=0;w<=E;w+=1){var Z=a(n[w]);x=b;var N=t.get(Z);b=C=x+(void 0===N?o:N),w===s&&void 0===N&&(h=!0)}var k=null;switch(g){case"top":k=x-v;break;case"bottom":k=C-m+v;break;default:var S=e.current.scrollTop;xS+m&&(y="bottom")}null!==k&&k!==e.current.scrollTop&&l(k)}u.current=(0,f.Z)((function(){h&&i(),r(c-1,y)}))}}(3)}}else c()}}(J,q,se,c,ee,ue,te,(function(){var e;null===(e=$.current)||void 0===e||e.delayHidden()}));r.useImperativeHandle(n,(function(){return{scrollTo:ke}})),(0,L.Z)((function(){if(C){var e=q.slice(ve,me+1);C(e,q)}}),[ve,me,q]);var Se=function(e,n,t,o,a,i){var l=i.getKey;return e.slice(n,t+1).map((function(e,t){var i=a(e,n+t,{}),c=l(e);return r.createElement(w,{key:c,setRef:function(n){return o(e,n)}},i)}))}(q,ve,me,ce,m,ne),Oe=null;return l&&(Oe=H(z({},s?"height":"maxHeight",l),W),O&&(Oe.overflowY="hidden",G&&(Oe.pointerEvents="none"))),r.createElement("div",A({style:H(H({},p),{},{position:"relative"}),className:X},N),r.createElement(b,{className:"".concat(o,"-holder"),style:Oe,ref:J,onScroll:function(e){var n=e.currentTarget.scrollTop;n!==R&&te(n),null===x||void 0===x||x(e)}},r.createElement(d,{prefixCls:o,height:pe,offset:he,onInnerResize:ue,ref:Q},Se)),O&&r.createElement(E,{ref:$,prefixCls:o,scrollTop:R,height:l,scrollHeight:pe,count:q.length,onScroll:function(e){te(e)},onStartMove:function(){Y(!0)},onStopMove:function(){Y(!1)}}))}var Y=r.forwardRef(G);Y.displayName="List";var X=Y}}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/741-888085a8444671a5.js b/static/admin/_next/static/chunks/741-888085a8444671a5.js
new file mode 100644
index 000000000..84b4e7903
--- /dev/null
+++ b/static/admin/_next/static/chunks/741-888085a8444671a5.js
@@ -0,0 +1 @@
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[741],{24308:function(e,n,t){"use strict";t.d(n,{c4:function(){return a}});var i=t(4942),r=t(87462),a=["xxl","xl","lg","md","sm","xs"],o={xs:"(max-width: 575px)",sm:"(min-width: 576px)",md:"(min-width: 768px)",lg:"(min-width: 992px)",xl:"(min-width: 1200px)",xxl:"(min-width: 1600px)"},c=new Map,s=-1,l={},u={matchHandlers:{},dispatch:function(e){return l=e,c.forEach((function(e){return e(l)})),c.size>=1},subscribe:function(e){return c.size||this.register(),s+=1,c.set(s,e),e(l),s},unsubscribe:function(e){c.delete(e),c.size||this.unregister()},unregister:function(){var e=this;Object.keys(o).forEach((function(n){var t=o[n],i=e.matchHandlers[t];null===i||void 0===i||i.mql.removeListener(null===i||void 0===i?void 0:i.listener)})),c.clear()},register:function(){var e=this;Object.keys(o).forEach((function(n){var t=o[n],a=function(t){var a=t.matches;e.dispatch((0,r.Z)((0,r.Z)({},l),(0,i.Z)({},n,a)))},c=window.matchMedia(t);c.addListener(a),e.matchHandlers[t]={mql:c,listener:a},a(c)}))}};n.ZP=u},11382:function(e,n,t){"use strict";var i=t(87462),r=t(4942),a=t(15671),o=t(43144),c=t(60136),s=t(3289),l=t(67294),u=t(94184),p=t.n(u),f=t(98423),m=t(23279),d=t.n(m),v=t(59844),g=t(93355),h=t(96159),y=function(e,n){var t={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&n.indexOf(i)<0&&(t[i]=e[i]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(e);r=n||t<0||g&&e-d>=u}function N(){var e=r();if(x(e))return w(e);f=setTimeout(N,function(e){var t=n-(e-m);return g?c(t,u-(e-d)):t}(e))}function w(e){return f=void 0,h&&s?y(e):(s=l=void 0,p)}function C(){var e=r(),t=x(e);if(s=arguments,l=this,m=e,t){if(void 0===f)return b(m);if(g)return clearTimeout(f),f=setTimeout(N,n),y(m)}return void 0===f&&(f=setTimeout(N,n)),p}return n=a(n)||0,i(t)&&(v=!!t.leading,u=(g="maxWait"in t)?o(a(t.maxWait)||0,n):u,h="trailing"in t?!!t.trailing:h),C.cancel=function(){void 0!==f&&clearTimeout(f),d=0,s=m=l=f=void 0},C.flush=function(){return void 0===f?p:w(r())},C}},33448:function(e,n,t){var i=t(44239),r=t(37005);e.exports=function(e){return"symbol"==typeof e||r(e)&&"[object Symbol]"==i(e)}},7771:function(e,n,t){var i=t(55639);e.exports=function(){return i.Date.now()}},14841:function(e,n,t){var i=t(27561),r=t(13218),a=t(33448),o=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,s=/^0o[0-7]+$/i,l=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(r(e)){var n="function"==typeof e.valueOf?e.valueOf():e;e=r(n)?n+"":n}if("string"!=typeof e)return 0===e?e:+e;e=i(e);var t=c.test(e);return t||s.test(e)?l(e.slice(2),t?2:8):o.test(e)?NaN:+e}},56180:function(e,n,t){"use strict";t.d(n,{Z:function(){return g}});var i=t(4942),r=t(1413),a=t(97685),o=t(91),c=t(67294),s=t(82532),l=t(94184),u=t.n(l),p={adjustX:1,adjustY:1},f=[0,0],m={topLeft:{points:["bl","tl"],overflow:p,offset:[0,-4],targetOffset:f},topCenter:{points:["bc","tc"],overflow:p,offset:[0,-4],targetOffset:f},topRight:{points:["br","tr"],overflow:p,offset:[0,-4],targetOffset:f},bottomLeft:{points:["tl","bl"],overflow:p,offset:[0,4],targetOffset:f},bottomCenter:{points:["tc","bc"],overflow:p,offset:[0,4],targetOffset:f},bottomRight:{points:["tr","br"],overflow:p,offset:[0,4],targetOffset:f}},d=["arrow","prefixCls","transitionName","animation","align","placement","placements","getPopupContainer","showAction","hideAction","overlayClassName","overlayStyle","visible","trigger"];function v(e,n){var t=e.arrow,l=void 0!==t&&t,p=e.prefixCls,f=void 0===p?"rc-dropdown":p,v=e.transitionName,g=e.animation,h=e.align,y=e.placement,b=void 0===y?"bottomLeft":y,x=e.placements,N=void 0===x?m:x,w=e.getPopupContainer,C=e.showAction,E=e.hideAction,Z=e.overlayClassName,S=e.overlayStyle,O=e.visible,k=e.trigger,P=void 0===k?["hover"]:k,T=(0,o.Z)(e,d),j=c.useState(),A=(0,a.Z)(j,2),M=A[0],U=A[1],z="visible"in e?O:M,W=c.useRef(null);c.useImperativeHandle(n,(function(){return W.current}));var L=function(){var n=e.overlay;return"function"===typeof n?n():n},$=function(n){var t=e.onOverlayClick,i=L().props;U(!1),t&&t(n),i.onClick&&i.onClick(n)},D=function(){var e=L(),n={prefixCls:"".concat(f,"-menu"),onClick:$};return"string"===typeof e.type&&delete n.prefixCls,c.createElement(c.Fragment,null,l&&c.createElement("div",{className:"".concat(f,"-arrow")}),c.cloneElement(e,n))},H=E;return H||-1===P.indexOf("contextMenu")||(H=["click"]),c.createElement(s.Z,(0,r.Z)((0,r.Z)({builtinPlacements:N},T),{},{prefixCls:f,ref:W,popupClassName:u()(Z,(0,i.Z)({},"".concat(f,"-show-arrow"),l)),popupStyle:S,action:P,showAction:C,hideAction:H||[],popupPlacement:b,popupAlign:h,popupTransitionName:v,popupAnimation:g,popupVisible:z,stretch:function(){var n=e.minOverlayWidthMatchTrigger,t=e.alignPoint;return"minOverlayWidthMatchTrigger"in e?n:!t}()?"minWidth":"",popup:"function"===typeof e.overlay?D:D(),onPopupVisibleChange:function(n){var t=e.onVisibleChange;U(n),"function"===typeof t&&t(n)},getPopupContainer:w}),function(){var n=e.children,t=n.props?n.props:{},i=u()(t.className,function(){var n=e.openClassName;return void 0!==n?n:"".concat(f,"-open")}());return z&&n?c.cloneElement(n,{className:i}):n}())}var g=c.forwardRef(v)}}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/access-tokens-7709f1c46dced872.js b/static/admin/_next/static/chunks/pages/access-tokens-26d25d8e8c57e652.js
similarity index 99%
rename from static/admin/_next/static/chunks/pages/access-tokens-7709f1c46dced872.js
rename to static/admin/_next/static/chunks/pages/access-tokens-26d25d8e8c57e652.js
index 9c375018c..ab55a75ad 100644
--- a/static/admin/_next/static/chunks/pages/access-tokens-7709f1c46dced872.js
+++ b/static/admin/_next/static/chunks/pages/access-tokens-26d25d8e8c57e652.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[874],{48689:function(e,t,n){"use strict";n.d(t,{Z:function(){return i}});var r=n(1413),c=n(67294),o={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"},a=n(42135),s=function(e,t){return c.createElement(a.Z,(0,r.Z)((0,r.Z)({},e),{},{ref:t,icon:o}))};s.displayName="DeleteOutlined";var i=c.forwardRef(s)},6226:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var r=n(4942),c=n(87462),o=n(71002),a=n(67294),s=n(94184),i=n.n(s),l=n(99134),u=n(59844),f=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var c=0;for(r=Object.getOwnPropertySymbols(e);c0){var I=m[0]/2;A.paddingLeft=I,A.paddingRight=I}if(m&&m[1]>0&&!x){var R=m[1]/2;A.paddingTop=R,A.paddingBottom=R}return E&&(A.flex=function(e){return"number"===typeof e?"".concat(e," ").concat(e," auto"):/^\d+(\.\d+)?(px|em|rem|%)$/.test(e)?"0 0 ".concat(e):e}(E),!1!==y||A.minWidth||(A.minWidth=0)),a.createElement("div",(0,c.Z)({},S,{style:(0,c.Z)((0,c.Z)({},A),N),className:T,ref:t}),O)}));d.displayName="Col";var h=d},99134:function(e,t,n){"use strict";var r=(0,n(67294).createContext)({});t.Z=r},25968:function(e,t,n){"use strict";n.d(t,{Z:function(){return y}});var r=n(87462),c=n(4942),o=n(71002),a=n(97685),s=n(67294),i=n(94184),l=n.n(i),u=n(59844),f=n(99134),p=n(93355),d=n(24308),h=n(98082),v=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var c=0;for(r=Object.getOwnPropertySymbols(e);c0?I[0]/-2:void 0,H=I[1]>0?I[1]/-2:void 0;if(G&&(M.marginLeft=G,M.marginRight=G),_){var z=(0,a.Z)(I,2);M.rowGap=z[1]}else H&&(M.marginTop=H,M.marginBottom=H);var D=(0,a.Z)(I,2),B=D[0],F=D[1],U=s.useMemo((function(){return{gutter:[B,F],wrap:w,supportFlexGap:_}}),[B,F,w,_]);return s.createElement(f.Z.Provider,{value:U},s.createElement("div",(0,r.Z)({},k,{className:R,style:(0,r.Z)((0,r.Z)({},M),x),ref:t}),b))})));m.displayName="Row";var y=m},20550:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var r=n(4942),c=n(87462),o=n(97685),a=n(67294),s=n(94184),i=n.n(s),l=n(98423),u=n(97937),f=n(59844),p=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var c=0;for(r=Object.getOwnPropertySymbols(e);c0){var I=m[0]/2;A.paddingLeft=I,A.paddingRight=I}if(m&&m[1]>0&&!x){var R=m[1]/2;A.paddingTop=R,A.paddingBottom=R}return E&&(A.flex=function(e){return"number"===typeof e?"".concat(e," ").concat(e," auto"):/^\d+(\.\d+)?(px|em|rem|%)$/.test(e)?"0 0 ".concat(e):e}(E),!1!==y||A.minWidth||(A.minWidth=0)),a.createElement("div",(0,c.Z)({},S,{style:(0,c.Z)((0,c.Z)({},A),N),className:T,ref:t}),O)}));d.displayName="Col";var h=d},99134:function(e,t,n){"use strict";var r=(0,n(67294).createContext)({});t.Z=r},25968:function(e,t,n){"use strict";n.d(t,{Z:function(){return y}});var r=n(87462),c=n(4942),o=n(71002),a=n(97685),s=n(67294),i=n(94184),l=n.n(i),u=n(59844),f=n(99134),p=n(93355),d=n(24308),h=n(98082),v=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var c=0;for(r=Object.getOwnPropertySymbols(e);c0?I[0]/-2:void 0,H=I[1]>0?I[1]/-2:void 0;if(G&&(M.marginLeft=G,M.marginRight=G),_){var z=(0,a.Z)(I,2);M.rowGap=z[1]}else H&&(M.marginTop=H,M.marginBottom=H);var D=(0,a.Z)(I,2),B=D[0],F=D[1],U=s.useMemo((function(){return{gutter:[B,F],wrap:w,supportFlexGap:_}}),[B,F,w,_]);return s.createElement(f.Z.Provider,{value:U},s.createElement("div",(0,r.Z)({},k,{className:R,style:(0,r.Z)((0,r.Z)({},M),x),ref:t}),b))})));m.displayName="Row";var y=m},20550:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var r=n(4942),c=n(87462),o=n(97685),a=n(67294),s=n(94184),i=n.n(s),l=n(98423),u=n(97937),f=n(59844),p=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var c=0;for(r=Object.getOwnPropertySymbols(e);ce.length)&&(n=e.length);for(var t=0,r=new Array(n);te.length)&&(n=e.length);for(var t=0,r=new Array(n);t0?(0,s.jsx)(l.Z,{style:{color:"var(--ant-success)"}}):(0,s.jsx)(f.Z,{style:{color:"var(--ant-warning)"}}));var S="Click to ".concat(t?"hide":"show"," this message");return(0,s.jsxs)("div",{className:"toggle-switch ".concat(t?"":"hidden"),children:[(0,s.jsx)("span",{className:"outcome-icon",children:O}),(0,s.jsx)(y.Z,{title:S,placement:"topRight",children:(0,s.jsx)(u.Z,{shape:"circle",size:"small",type:"text",icon:t?(0,s.jsx)(g.Z,{}):(0,s.jsx)(b.Z,{}),onClick:x})})]})}var S=n(31386);function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nr?1:0}))}(t),D={selectedRowKeys:o,onChange:function(e){d(e)}},U=function(e){var r=t.findIndex((function(t){return t.id===e.id}));t.splice(r,1,e),n(Z(t))},Q=function(){A=setTimeout((function(){j(null),T("")}),E)},H=function(){var e=P(i().mark((function e(r){var a,u;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return b(!0),e.next=3,(0,p.rQ)(p.hn,{auth:!0,method:"POST",data:{visible:r,idArray:o}});case 3:(a=e.sent).success&&"changed"===a.message?(j((0,s.jsx)(l.Z,{})),Q(),u=Z(t),o.map((function(e){var n=u.findIndex((function(t){return t.id===e})),i=C({},t[n],{visible:r});return u.splice(n,1,i),null})),n(u),d([])):(j((0,s.jsx)(f.Z,{})),Q()),b(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),V=[{title:"Time",dataIndex:"timestamp",key:"timestamp",className:"timestamp-col",defaultSortOrder:"descend",render:function(e){var t=new Date(e);return(0,h.Z)(t,"PP pp")},sorter:function(e,t){return new Date(e.timestamp).getTime()-new Date(t.timestamp).getTime()},width:90},{title:"User",dataIndex:"user",key:"user",className:"name-col",filters:z,onFilter:function(e,t){return t.user.id===e},sorter:function(e,t){return e.user.displayName.localeCompare(t.user.displayName)},sortDirections:["ascend","descend"],ellipsis:!0,render:function(e){var t=e.displayName;return(0,s.jsx)(S.Z,{user:e,children:t})},width:110},{title:"Message",dataIndex:"body",key:"body",className:"message-col",width:320,render:function(e){return(0,s.jsx)("div",{className:"message-contents",dangerouslySetInnerHTML:{__html:e}})}},{title:"",dataIndex:"hiddenAt",key:"hiddenAt",className:"toggle-col",filters:[{text:"Visible messages",value:!0},{text:"Hidden messages",value:!1}],onFilter:function(e,t){return t.visible===e},render:function(e,t){return(0,s.jsx)(O,{isVisible:!e,message:t,setMessage:U})},width:30}],F=m()({"bulk-editor":!0,active:o.length});return(0,s.jsxs)("div",{className:"chat-messages",children:[(0,s.jsx)(_,{children:"Chat Messages"}),(0,s.jsx)("p",{children:"Manage the messages from viewers that show up on your stream."}),(0,s.jsxs)("div",{className:F,children:[(0,s.jsx)("span",{className:"label",children:"Check multiple messages to change their visibility to: "}),(0,s.jsx)(u.Z,{type:"primary",size:"small",shape:"round",className:"button",loading:"show"===k&&g,icon:"show"===k&&x,disabled:!o.length||k&&"show"!==k,onClick:function(){T("show"),H(!0)},children:"Show"}),(0,s.jsx)(u.Z,{type:"primary",size:"small",shape:"round",className:"button",loading:"hide"===k&&g,icon:"hide"===k&&x,disabled:!o.length||k&&"hide"!==k,onClick:function(){T("hide"),H(!1)},children:"Hide"})]}),(0,s.jsx)(c.Z,{size:"small",className:"table-container",pagination:{defaultPageSize:100,showSizeChanger:!0},scroll:{y:540},rowClassName:function(e){return e.hiddenAt?"hidden":""},dataSource:t,columns:V,rowKey:function(e){return e.id},rowSelection:D})]})}}},function(e){e.O(0,[662,3,91,533,464,774,888,179],(function(){return t=9007,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[145],{9007:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/chat/messages",function(){return n(40625)}])},40625:function(e,t,n){"use strict";n.r(t),n.d(t,{OUTCOME_TIMEOUT:function(){return E},default:function(){return A}});var r=n(34051),i=n.n(r),s=n(85893),a=n(67294),o=n(84485),u=n(71577),c=n(96003),l=n(89739),f=n(21640),d=n(94184),m=n.n(d),h=n(58091),p=n(58827),v=n(2766),y=n(56266),g=n(99611),b=n(90420);function w(e,t,n,r,i,s,a){try{var o=e[s](a),u=o.value}catch(c){return void n(c)}o.done?t(u):Promise.resolve(u).then(r,i)}function x(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function j(e){for(var t=1;t0?(0,s.jsx)(l.Z,{style:{color:"var(--ant-success)"}}):(0,s.jsx)(f.Z,{style:{color:"var(--ant-warning)"}}));var S="Click to ".concat(t?"hide":"show"," this message");return(0,s.jsxs)("div",{className:"toggle-switch ".concat(t?"":"hidden"),children:[(0,s.jsx)("span",{className:"outcome-icon",children:O}),(0,s.jsx)(y.Z,{title:S,placement:"topRight",children:(0,s.jsx)(u.Z,{shape:"circle",size:"small",type:"text",icon:t?(0,s.jsx)(g.Z,{}):(0,s.jsx)(b.Z,{}),onClick:x})})]})}var S=n(31386);function N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nr?1:0}))}(t),D={selectedRowKeys:o,onChange:function(e){d(e)}},U=function(e){var r=t.findIndex((function(t){return t.id===e.id}));t.splice(r,1,e),n(Z(t))},Q=function(){A=setTimeout((function(){j(null),T("")}),E)},H=function(){var e=P(i().mark((function e(r){var a,u;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return b(!0),e.next=3,(0,p.rQ)(p.hn,{auth:!0,method:"POST",data:{visible:r,idArray:o}});case 3:(a=e.sent).success&&"changed"===a.message?(j((0,s.jsx)(l.Z,{})),Q(),u=Z(t),o.map((function(e){var n=u.findIndex((function(t){return t.id===e})),i=C({},t[n],{visible:r});return u.splice(n,1,i),null})),n(u),d([])):(j((0,s.jsx)(f.Z,{})),Q()),b(!1);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),V=[{title:"Time",dataIndex:"timestamp",key:"timestamp",className:"timestamp-col",defaultSortOrder:"descend",render:function(e){var t=new Date(e);return(0,h.Z)(t,"PP pp")},sorter:function(e,t){return new Date(e.timestamp).getTime()-new Date(t.timestamp).getTime()},width:90},{title:"User",dataIndex:"user",key:"user",className:"name-col",filters:z,onFilter:function(e,t){return t.user.id===e},sorter:function(e,t){return e.user.displayName.localeCompare(t.user.displayName)},sortDirections:["ascend","descend"],ellipsis:!0,render:function(e){var t=e.displayName;return(0,s.jsx)(S.Z,{user:e,children:t})},width:110},{title:"Message",dataIndex:"body",key:"body",className:"message-col",width:320,render:function(e){return(0,s.jsx)("div",{className:"message-contents",dangerouslySetInnerHTML:{__html:e}})}},{title:"",dataIndex:"hiddenAt",key:"hiddenAt",className:"toggle-col",filters:[{text:"Visible messages",value:!0},{text:"Hidden messages",value:!1}],onFilter:function(e,t){return t.visible===e},render:function(e,t){return(0,s.jsx)(O,{isVisible:!e,message:t,setMessage:U})},width:30}],F=m()({"bulk-editor":!0,active:o.length});return(0,s.jsxs)("div",{className:"chat-messages",children:[(0,s.jsx)(_,{children:"Chat Messages"}),(0,s.jsx)("p",{children:"Manage the messages from viewers that show up on your stream."}),(0,s.jsxs)("div",{className:F,children:[(0,s.jsx)("span",{className:"label",children:"Check multiple messages to change their visibility to: "}),(0,s.jsx)(u.Z,{type:"primary",size:"small",shape:"round",className:"button",loading:"show"===k&&g,icon:"show"===k&&x,disabled:!o.length||k&&"show"!==k,onClick:function(){T("show"),H(!0)},children:"Show"}),(0,s.jsx)(u.Z,{type:"primary",size:"small",shape:"round",className:"button",loading:"hide"===k&&g,icon:"hide"===k&&x,disabled:!o.length||k&&"hide"!==k,onClick:function(){T("hide"),H(!1)},children:"Hide"})]}),(0,s.jsx)(c.Z,{size:"small",className:"table-container",pagination:{defaultPageSize:100,showSizeChanger:!0},scroll:{y:540},rowClassName:function(e){return e.hiddenAt?"hidden":""},dataSource:t,columns:V,rowKey:function(e){return e.id},rowSelection:D})]})}}},function(e){e.O(0,[662,741,3,91,533,464,774,888,179],(function(){return t=9007,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/chat/users-2143353ec127275b.js b/static/admin/_next/static/chunks/pages/chat/users-b0b51b68a34a13e5.js
similarity index 97%
rename from static/admin/_next/static/chunks/pages/chat/users-2143353ec127275b.js
rename to static/admin/_next/static/chunks/pages/chat/users-b0b51b68a34a13e5.js
index a7f718724..889bd57d7 100644
--- a/static/admin/_next/static/chunks/pages/chat/users-2143353ec127275b.js
+++ b/static/admin/_next/static/chunks/pages/chat/users-b0b51b68a34a13e5.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[255],{22494:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/chat/users",function(){return t(59673)}])},59673:function(e,n,t){"use strict";t.r(n),t.d(n,{FETCH_INTERVAL:function(){return C},default:function(){return I}});var r=t(34051),a=t.n(r),s=t(85893),c=t(67294),o=t(88879),i=t(35159),u=t(58827),d=t(20643),l=t(96003),f=t(85533),h=t(31386),p=t(66192),v=t(2766);function x(e){var n=e.data,t=[{title:"Display Name",key:"username",render:function(e){var n=e.user,t={connectedAt:e.connectedAt,messageCount:e.messageCount,userAgent:e.userAgent};return(0,s.jsx)(h.Z,{user:n,connectionInfo:t,children:(0,s.jsx)("span",{className:"display-name",children:n.displayName})})},sorter:function(e,n){return e.user.displayName-n.user.displayName},sortDirections:["descend","ascend"]},{title:"Messages sent",dataIndex:"messageCount",key:"messageCount",className:"number-col",width:"12%",sorter:function(e,n){return e.messageCount-n.messageCount},sortDirections:["descend","ascend"],render:function(e){return(0,s.jsx)("div",{style:{textAlign:"center"},children:e})}},{title:"Connected Time",dataIndex:"connectedAt",key:"connectedAt",defaultSortOrder:"ascend",render:function(e){return(0,f.Z)(new Date(e))},sorter:function(e,n){return new Date(e.connectedAt).getTime()-new Date(n.connectedAt).getTime()},sortDirections:["descend","ascend"]},{title:"User Agent",dataIndex:"userAgent",key:"userAgent",render:function(e){return(0,v.AB)(e)}},{title:"Location",dataIndex:"geo",key:"geo",render:function(e){return e?"".concat(e.regionName,", ").concat(e.countryCode):"-"}},{title:"",key:"block",className:"actions-col",render:function(e,n){return(0,s.jsx)(p.Z,{user:n.user,isEnabled:!n.user.disabledAt})}}];return(0,s.jsx)(l.Z,{className:"table-container",pagination:{hideOnSinglePage:!0},columns:t,dataSource:n,size:"small",rowKey:"id"})}var m=t(71577),g=t(58091),y=t(84674);function w(e,n,t,r,a,s,c){try{var o=e[s](c),i=o.value}catch(u){return void t(u)}o.done?n(i):Promise.resolve(i).then(r,a)}function k(e){return function(){var n=this,t=arguments;return new Promise((function(r,a){var s=e.apply(n,t);function c(e){w(s,r,a,c,o,"next",e)}function o(e){w(s,r,a,c,o,"throw",e)}c(void 0)}))}}function b(){return(b=k(a().mark((function e(n){return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,u.rQ)(u.RB,{data:{value:n},method:"POST",auth:!0});case 3:e.next=8;break;case 5:e.prev=5,e.t0=e.catch(0),console.error(e.t0);case 8:case"end":return e.stop()}}),e,null,[[0,5]])})))).apply(this,arguments)}function A(e){var n=e.data,t=[{title:"IP Address",dataIndex:"ipAddress",key:"ipAddress"},{title:"Reason",dataIndex:"notes",key:"notes"},{title:"Created",dataIndex:"createdAt",key:"createdAt",render:function(e){return function(e){return(0,g.Z)(new Date(e),"MMM d H:mma")}(e)},sorter:function(e,n){return new Date(e.createdAt).getTime()-new Date(n.createdAt).getTime()},sortDirections:["descend","ascend"]},{title:"",key:"block",className:"actions-col",render:function(e,n){return(0,s.jsx)(m.Z,{title:"Remove IP Address Ban",onClick:function(){return function(e){return b.apply(this,arguments)}(n.ipAddress)},icon:(0,s.jsx)(y.Z,{twoToneColor:"#ff4d4f"}),className:"block-user-button"})}}];return(0,s.jsx)(l.Z,{pagination:{hideOnSinglePage:!0},className:"table-container",columns:t,dataSource:n,size:"large",rowKey:"ipAddress"})}function j(e,n,t,r,a,s,c){try{var o=e[s](c),i=o.value}catch(u){return void t(u)}o.done?n(i):Promise.resolve(i).then(r,a)}var N=o.Z.TabPane,C=1e4;function I(){var e=((0,c.useContext)(i.aC)||{}).online,n=(0,c.useState)([]),t=n[0],r=n[1],l=(0,c.useState)([]),f=l[0],h=l[1],p=(0,c.useState)([]),v=p[0],m=p[1],g=(0,c.useState)([]),y=g[0],w=g[1],k=function(){var e,n=(e=a().mark((function e(){var n,t,s,c;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,u.rQ)(u.qk);case 3:n=e.sent,r(n),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),console.log("==== error",e.t0);case 10:return e.prev=10,e.next=13,(0,u.rQ)(u.Kp);case 13:t=e.sent,m(t),e.next=20;break;case 17:e.prev=17,e.t1=e.catch(10),console.log("==== error",e.t1);case 20:return e.prev=20,e.next=23,(0,u.rQ)(u.GC);case 23:s=e.sent,w(s),e.next=30;break;case 27:e.prev=27,e.t2=e.catch(20),console.error("error fetching moderators",e.t2);case 30:return e.prev=30,e.next=33,(0,u.rQ)(u.Bu);case 33:c=e.sent,h(c),e.next=40;break;case 37:e.prev=37,e.t3=e.catch(30),console.error("error fetching banned ips",e.t3);case 40:case"end":return e.stop()}}),e,null,[[0,7],[10,17],[20,27],[30,37]])})),function(){var n=this,t=arguments;return new Promise((function(r,a){var s=e.apply(n,t);function c(e){j(s,r,a,c,o,"next",e)}function o(e){j(s,r,a,c,o,"throw",e)}c(void 0)}))});return function(){return n.apply(this,arguments)}}();(0,c.useEffect)((function(){var e;return k(),e=setInterval(k,C),function(){clearInterval(e)}}),[e]);var b=e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x,{data:v}),(0,s.jsxs)("p",{className:"description",children:["Visit the"," ",(0,s.jsx)("a",{href:"https://owncast.online/docs/viewers/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"documentation"})," ","to configure additional details about your viewers."]})]}):(0,s.jsx)("p",{className:"description",children:"When a stream is active and chat is enabled, connected chat clients will be displayed here."});return(0,s.jsxs)(o.Z,{defaultActiveKey:"1",children:[(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Connected ",e?"(".concat(v.length,")"):"(offline)"]}),children:b},"1"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Banned Users (",t.length,")"]}),children:(0,s.jsx)(d.Z,{data:t})},"2"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["IP Bans (",f.length,")"]}),children:(0,s.jsx)(A,{data:f})},"3"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Moderators (",y.length,")"]}),children:(0,s.jsx)(d.Z,{data:y})},"4")]})}}},function(e){e.O(0,[662,3,91,879,533,464,774,888,179],(function(){return n=22494,e(e.s=n);var n}));var n=e.O();_N_E=n}]);
\ No newline at end of file
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[255],{22494:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/chat/users",function(){return t(59673)}])},59673:function(e,n,t){"use strict";t.r(n),t.d(n,{FETCH_INTERVAL:function(){return C},default:function(){return I}});var r=t(34051),a=t.n(r),s=t(85893),c=t(67294),o=t(88879),i=t(35159),u=t(58827),d=t(20643),l=t(96003),f=t(85533),h=t(31386),p=t(66192),v=t(2766);function x(e){var n=e.data,t=[{title:"Display Name",key:"username",render:function(e){var n=e.user,t={connectedAt:e.connectedAt,messageCount:e.messageCount,userAgent:e.userAgent};return(0,s.jsx)(h.Z,{user:n,connectionInfo:t,children:(0,s.jsx)("span",{className:"display-name",children:n.displayName})})},sorter:function(e,n){return e.user.displayName-n.user.displayName},sortDirections:["descend","ascend"]},{title:"Messages sent",dataIndex:"messageCount",key:"messageCount",className:"number-col",width:"12%",sorter:function(e,n){return e.messageCount-n.messageCount},sortDirections:["descend","ascend"],render:function(e){return(0,s.jsx)("div",{style:{textAlign:"center"},children:e})}},{title:"Connected Time",dataIndex:"connectedAt",key:"connectedAt",defaultSortOrder:"ascend",render:function(e){return(0,f.Z)(new Date(e))},sorter:function(e,n){return new Date(e.connectedAt).getTime()-new Date(n.connectedAt).getTime()},sortDirections:["descend","ascend"]},{title:"User Agent",dataIndex:"userAgent",key:"userAgent",render:function(e){return(0,v.AB)(e)}},{title:"Location",dataIndex:"geo",key:"geo",render:function(e){return e?"".concat(e.regionName,", ").concat(e.countryCode):"-"}},{title:"",key:"block",className:"actions-col",render:function(e,n){return(0,s.jsx)(p.Z,{user:n.user,isEnabled:!n.user.disabledAt})}}];return(0,s.jsx)(l.Z,{className:"table-container",pagination:{hideOnSinglePage:!0},columns:t,dataSource:n,size:"small",rowKey:"id"})}var m=t(71577),g=t(58091),y=t(84674);function w(e,n,t,r,a,s,c){try{var o=e[s](c),i=o.value}catch(u){return void t(u)}o.done?n(i):Promise.resolve(i).then(r,a)}function k(e){return function(){var n=this,t=arguments;return new Promise((function(r,a){var s=e.apply(n,t);function c(e){w(s,r,a,c,o,"next",e)}function o(e){w(s,r,a,c,o,"throw",e)}c(void 0)}))}}function b(){return(b=k(a().mark((function e(n){return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,u.rQ)(u.RB,{data:{value:n},method:"POST",auth:!0});case 3:e.next=8;break;case 5:e.prev=5,e.t0=e.catch(0),console.error(e.t0);case 8:case"end":return e.stop()}}),e,null,[[0,5]])})))).apply(this,arguments)}function A(e){var n=e.data,t=[{title:"IP Address",dataIndex:"ipAddress",key:"ipAddress"},{title:"Reason",dataIndex:"notes",key:"notes"},{title:"Created",dataIndex:"createdAt",key:"createdAt",render:function(e){return function(e){return(0,g.Z)(new Date(e),"MMM d H:mma")}(e)},sorter:function(e,n){return new Date(e.createdAt).getTime()-new Date(n.createdAt).getTime()},sortDirections:["descend","ascend"]},{title:"",key:"block",className:"actions-col",render:function(e,n){return(0,s.jsx)(m.Z,{title:"Remove IP Address Ban",onClick:function(){return function(e){return b.apply(this,arguments)}(n.ipAddress)},icon:(0,s.jsx)(y.Z,{twoToneColor:"#ff4d4f"}),className:"block-user-button"})}}];return(0,s.jsx)(l.Z,{pagination:{hideOnSinglePage:!0},className:"table-container",columns:t,dataSource:n,size:"large",rowKey:"ipAddress"})}function j(e,n,t,r,a,s,c){try{var o=e[s](c),i=o.value}catch(u){return void t(u)}o.done?n(i):Promise.resolve(i).then(r,a)}var N=o.Z.TabPane,C=1e4;function I(){var e=((0,c.useContext)(i.aC)||{}).online,n=(0,c.useState)([]),t=n[0],r=n[1],l=(0,c.useState)([]),f=l[0],h=l[1],p=(0,c.useState)([]),v=p[0],m=p[1],g=(0,c.useState)([]),y=g[0],w=g[1],k=function(){var e,n=(e=a().mark((function e(){var n,t,s,c;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,u.rQ)(u.qk);case 3:n=e.sent,r(n),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),console.log("==== error",e.t0);case 10:return e.prev=10,e.next=13,(0,u.rQ)(u.Kp);case 13:t=e.sent,m(t),e.next=20;break;case 17:e.prev=17,e.t1=e.catch(10),console.log("==== error",e.t1);case 20:return e.prev=20,e.next=23,(0,u.rQ)(u.GC);case 23:s=e.sent,w(s),e.next=30;break;case 27:e.prev=27,e.t2=e.catch(20),console.error("error fetching moderators",e.t2);case 30:return e.prev=30,e.next=33,(0,u.rQ)(u.Bu);case 33:c=e.sent,h(c),e.next=40;break;case 37:e.prev=37,e.t3=e.catch(30),console.error("error fetching banned ips",e.t3);case 40:case"end":return e.stop()}}),e,null,[[0,7],[10,17],[20,27],[30,37]])})),function(){var n=this,t=arguments;return new Promise((function(r,a){var s=e.apply(n,t);function c(e){j(s,r,a,c,o,"next",e)}function o(e){j(s,r,a,c,o,"throw",e)}c(void 0)}))});return function(){return n.apply(this,arguments)}}();(0,c.useEffect)((function(){var e;return k(),e=setInterval(k,C),function(){clearInterval(e)}}),[e]);var b=e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x,{data:v}),(0,s.jsxs)("p",{className:"description",children:["Visit the"," ",(0,s.jsx)("a",{href:"https://owncast.online/docs/viewers/?source=admin",target:"_blank",rel:"noopener noreferrer",children:"documentation"})," ","to configure additional details about your viewers."]})]}):(0,s.jsx)("p",{className:"description",children:"When a stream is active and chat is enabled, connected chat clients will be displayed here."});return(0,s.jsxs)(o.Z,{defaultActiveKey:"1",children:[(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Connected ",e?"(".concat(v.length,")"):"(offline)"]}),children:b},"1"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Banned Users (",t.length,")"]}),children:(0,s.jsx)(d.Z,{data:t})},"2"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["IP Bans (",f.length,")"]}),children:(0,s.jsx)(A,{data:f})},"3"),(0,s.jsx)(N,{tab:(0,s.jsxs)("span",{children:["Moderators (",y.length,")"]}),children:(0,s.jsx)(d.Z,{data:y})},"4")]})}}},function(e){e.O(0,[662,741,3,91,879,533,464,774,888,179],(function(){return n=22494,e(e.s=n);var n}));var n=e.O();_N_E=n}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/config-public-details-c4e4bae47bd12588.js b/static/admin/_next/static/chunks/pages/config-public-details-16b40a5c72065f1b.js
similarity index 99%
rename from static/admin/_next/static/chunks/pages/config-public-details-c4e4bae47bd12588.js
rename to static/admin/_next/static/chunks/pages/config-public-details-16b40a5c72065f1b.js
index b08e2ecd0..fec6cd5f7 100644
--- a/static/admin/_next/static/chunks/pages/config-public-details-c4e4bae47bd12588.js
+++ b/static/admin/_next/static/chunks/pages/config-public-details-16b40a5c72065f1b.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[721],{85344:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/config-public-details",function(){return t(99928)}])},10063:function(e,n,t){"use strict";t.d(n,{Q:function(){return u},Z:function(){return d}});var r=t(85893),a=t(67294),i=t(84485),s=t(20550),o=t(48419),c=t(78464),l=i.Z.Title,u="#5a67d8";function d(e){var n=(0,a.useState)(""),t=n[0],i=n[1],d=e.title,f=e.description,h=e.placeholder,m=e.maxLength,p=e.values,v=e.handleDeleteIndex,g=e.handleCreateString,x=e.submitStatus,j=e.continuousStatusMessage;return(0,r.jsxs)("div",{className:"edit-string-array-container",children:[(0,r.jsx)(l,{level:3,className:"section-title",children:d}),(0,r.jsx)("p",{className:"description",children:f}),(0,r.jsx)("div",{className:"edit-current-strings",children:null===p||void 0===p?void 0:p.map((function(e,n){return(0,r.jsx)(s.Z,{closable:!0,onClose:function(){v(n)},color:u,children:e},"tag-".concat(e,"-").concat(n))}))}),j&&(0,r.jsx)("div",{className:"continuous-status-section",children:(0,r.jsx)(c.Z,{status:j})}),(0,r.jsx)("div",{className:"add-new-string-section",children:(0,r.jsx)(o.ZP,{fieldName:"string-input",value:t,onChange:function(e){var n=e.value;i(n)},onPressEnter:function(){var e=t.trim();g(e),i("")},maxLength:m,placeholder:h,status:x})})]})}d.defaultProps={maxLength:50,description:null,submitStatus:null,continuousStatusMessage:null}},15976:function(e,n,t){"use strict";t.d(n,{Z:function(){return h}});var r=t(34051),a=t.n(r),i=t(85893),s=t(67294),o=t(94594),c=t(83192),l=t(78464),u=t(25964),d=t(35159);function f(e,n,t,r,a,i,s){try{var o=e[i](s),c=o.value}catch(l){return void t(l)}o.done?n(c):Promise.resolve(c).then(r,a)}function h(e){var n=(0,s.useState)(null),t=n[0],r=n[1],h=null,m=((0,s.useContext)(d.aC)||{}).setFieldInConfigState,p=e.apiPath,v=e.checked,g=e.reversed,x=void 0!==g&&g,j=e.configPath,y=void 0===j?"":j,w=e.disabled,b=void 0!==w&&w,N=e.fieldName,S=e.label,C=e.tip,k=e.useSubmit,P=e.onChange,T=function(){r(null),clearTimeout(h),h=null},Z=function(){var e,n=(e=a().mark((function e(n){var t;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!k){e.next=6;break}return r((0,c.kg)(c.Jk)),t=x?!n:n,e.next=5,(0,u.Si)({apiPath:p,data:{value:t},onSuccess:function(){m({fieldName:N,value:t,path:y}),r((0,c.kg)(c.zv))},onError:function(e){r((0,c.kg)(c.Un,"There was an error: ".concat(e)))}});case 5:h=setTimeout(T,u.sI);case 6:P&&P(n);case 7:case"end":return e.stop()}}),e)})),function(){var n=this,t=arguments;return new Promise((function(r,a){var i=e.apply(n,t);function s(e){f(i,r,a,s,o,"next",e)}function o(e){f(i,r,a,s,o,"throw",e)}s(void 0)}))});return function(e){return n.apply(this,arguments)}}(),E=null!==t&&t.type===c.Jk;return(0,i.jsxs)("div",{className:"formfield-container toggleswitch-container",children:[S&&(0,i.jsx)("div",{className:"label-side",children:(0,i.jsx)("span",{className:"formfield-label",children:S})}),(0,i.jsxs)("div",{className:"input-side",children:[(0,i.jsxs)("div",{className:"input-group",children:[(0,i.jsx)(o.Z,{className:"switch field-".concat(N),loading:E,onChange:Z,defaultChecked:v,checked:v,checkedChildren:"ON",unCheckedChildren:"OFF",disabled:b}),(0,i.jsx)(l.Z,{status:t})]}),(0,i.jsx)("p",{className:"field-tip",children:C})]})]})}h.defaultProps={apiPath:"",checked:!1,reversed:!1,configPath:"",disabled:!1,label:"",tip:"",useSubmit:!1,onChange:null}},99928:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return q}});var r=t(85893),a=t(67294),i=t(84485),s=t(50197),o=t(35159),c=t(25964),l=t(15976),u=t(34051),d=t.n(u),f=t(77916),h=t(71577),m=t(50888),p=t(88484),v=t(78464),g=t(83192),x=t(58827);function j(e,n,t,r,a,i,s){try{var o=e[i](s),c=o.value}catch(l){return void t(l)}o.done?n(c):Promise.resolve(c).then(r,a)}var y=["image/png","image/jpeg","image/gif"];function w(){var e,n=(0,a.useState)(null),t=n[0],i=n[1],s=(0,a.useState)(!1),l=s[0],u=s[1],w=(0,a.useState)(0),b=w[0],N=w[1],S=(0,a.useContext)(o.aC)||{},C=S.setFieldInConfigState,k=S.serverConfig,P=null===k||void 0===k||null===(e=k.instanceDetails)||void 0===e?void 0:e.logo,T=(0,a.useState)(null),Z=T[0],E=T[1],_=null,I=c.ZQ.apiPath,O=c.ZQ.tip,U=function(){E(null),clearTimeout(_),_=null},L=function(){var e,n=(e=d().mark((function e(){return d().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t===P){e.next=5;break}return E((0,g.kg)(g.Jk)),e.next=4,(0,c.Si)({apiPath:I,data:{value:t},onSuccess:function(){C({fieldName:"logo",value:t,path:""}),E((0,g.kg)(g.zv)),u(!1),N(Math.floor(100*Math.random()))},onError:function(e){E((0,g.kg)(g.Un,"There was an error: ".concat(e))),u(!1)}});case 4:_=setTimeout(U,c.sI);case 5:case"end":return e.stop()}}),e)})),function(){var n=this,t=arguments;return new Promise((function(r,a){var i=e.apply(n,t);function s(e){j(i,r,a,s,o,"next",e)}function o(e){j(i,r,a,s,o,"throw",e)}s(void 0)}))});return function(){return n.apply(this,arguments)}}(),A="".concat(x.WB,"logo?random=").concat(b);return(0,r.jsxs)("div",{className:"formfield-container logo-upload-container",children:[(0,r.jsx)("div",{className:"label-side",children:(0,r.jsx)("span",{className:"formfield-label",children:"Logo"})}),(0,r.jsxs)("div",{className:"input-side",children:[(0,r.jsxs)("div",{className:"input-group",children:[(0,r.jsx)("img",{src:A,alt:"avatar",className:"logo-preview"}),(0,r.jsx)(f.Z,{name:"logo",listType:"picture",className:"avatar-uploader",showUploadList:!1,accept:y.join(","),beforeUpload:function(e){return u(!0),new Promise((function(n,t){if(!y.includes(e.type)){var r="File type is not supported: ".concat(e.type);return E((0,g.kg)(g.Un,"There was an error: ".concat(r))),_=setTimeout(U,c.sI),u(!1),t()}!function(e,n){var t=new FileReader;t.addEventListener("load",(function(){return n(t.result)})),t.readAsDataURL(e)}(e,(function(e){return i(e),n()}))}))},customRequest:L,disabled:l,children:l?(0,r.jsx)(m.Z,{style:{color:"white"}}):(0,r.jsx)(h.Z,{icon:(0,r.jsx)(p.Z,{})})})]}),(0,r.jsx)(v.Z,{status:Z}),(0,r.jsx)("p",{className:"field-tip",children:O})]})]})}function b(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function N(e){for(var n=1;ne.length)&&(n=e.length);for(var t=0,r=new Array(n);te.length)&&(n=e.length);for(var t=0,r=new Array(n);te.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n2),"Avatar","`icon` is using ReactNode instead of string naming in v4. Please check `".concat(q,"` at https://ant.design/components/icon"));var $,J=I("avatar",D),ee=f()((n={},(0,s.Z)(n,"".concat(J,"-lg"),"large"===Y),(0,s.Z)(n,"".concat(J,"-sm"),"small"===Y),n)),te=i.isValidElement(M),ne=f()(J,ee,(r={},(0,s.Z)(r,"".concat(J,"-").concat(R),!!R),(0,s.Z)(r,"".concat(J,"-image"),te||M&&P),(0,s.Z)(r,"".concat(J,"-icon"),!!q),r),H),re="number"===typeof Y?{width:Y,height:Y,lineHeight:"".concat(Y,"px"),fontSize:q?Y/2:18}:{};if("string"===typeof M&&P)$=i.createElement("img",{src:M,draggable:U,srcSet:F,onError:function(){var t=e.onError;!1!==(t?t():void 0)&&z(!1)},alt:B,crossOrigin:X});else if(te)$=M;else if(q)$=q;else if(S||1!==x){var ae="scale(".concat(x,") translateX(-50%)"),ce={msTransform:ae,WebkitTransform:ae,transform:ae},ie="number"===typeof Y?{lineHeight:"".concat(Y,"px")}:{};$=i.createElement(p.default,{onResize:_},i.createElement("span",{className:"".concat(J,"-string"),ref:function(e){A.current=e},style:(0,o.Z)((0,o.Z)({},ie),ce)},W))}else $=i.createElement("span",{className:"".concat(J,"-string"),style:{opacity:0},ref:function(e){A.current=e}},W);return delete K.onError,delete K.gap,i.createElement("span",(0,o.Z)({},K,{style:(0,o.Z)((0,o.Z)((0,o.Z)({},re),V),K.style),className:ne,ref:N}),$)},Z=i.forwardRef(j);Z.displayName="Avatar",Z.defaultProps={shape:"circle",size:"default"};var S=Z,E=n(50344),C=n(96159),O=n(55241),P=function(e){var t=i.useContext(h.E_),n=t.getPrefixCls,r=t.direction,a=e.prefixCls,c=e.className,o=void 0===c?"":c,l=e.maxCount,u=e.maxStyle,d=e.size,p=n("avatar-group",a),m=f()(p,(0,s.Z)({},"".concat(p,"-rtl"),"rtl"===r),o),v=e.children,g=e.maxPopoverPlacement,y=void 0===g?"top":g,x=e.maxPopoverTrigger,k=void 0===x?"hover":x,b=(0,E.Z)(v).map((function(e,t){return(0,C.Tm)(e,{key:"avatar-key-".concat(t)})})),j=b.length;if(l&&le.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&"(".concat(n.length,")")]}),children:[(0,c.jsxs)("p",{children:["The following people are requesting to follow your Owncast server on the"," ",(0,c.jsx)("a",{href:"https://en.wikipedia.org/wiki/Fediverse",target:"_blank",rel:"noopener noreferrer",children:"Fediverse"})," ","and be alerted to when you go live. Each must be approved."]}),e(n,E)]},"2");return(0,c.jsx)("div",{className:"followers-section",children:(0,c.jsxs)(A.Z,{defaultActiveKey:"1",children:[(0,c.jsxs)(V,{tab:(0,c.jsxs)("span",{children:["Followers ",d.length>0&&"(".concat(d.length,")")]}),children:[(0,c.jsx)("p",{children:"The following accounts get notified when you go live or send a post."}),e(d,O)," "]},"1"),P,(0,c.jsxs)(V,{tab:(0,c.jsxs)("span",{children:["Blocked ",s.length>0&&"(".concat(s.length,")")]}),children:[(0,c.jsx)("p",{children:"The following people were either rejected or blocked by you. You can approve them as a follower."}),(0,c.jsx)("p",{children:e(s,C)})]},"3")]})})}}},function(e){e.O(0,[3,91,879,774,888,179],(function(){return t=1481,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[480],{1481:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/federation/followers",function(){return n(38403)}])},38403:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return $}});var r=n(34051),a=n.n(r),c=n(85893),i=n(67294),o=n(87462),s=n(4942),l=n(71002),u=n(97685),d=n(94184),f=n.n(d),p=n(48555),m=n(42550),h=n(59844),v=n(21687),g=n(24308),y=n(25378),x=i.createContext("default"),w=function(e){var t=e.children,n=e.size;return i.createElement(x.Consumer,null,(function(e){return i.createElement(x.Provider,{value:n||e},t)}))},k=x,b=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a2),"Avatar","`icon` is using ReactNode instead of string naming in v4. Please check `".concat(q,"` at https://ant.design/components/icon"));var $,J=I("avatar",D),ee=f()((n={},(0,s.Z)(n,"".concat(J,"-lg"),"large"===Y),(0,s.Z)(n,"".concat(J,"-sm"),"small"===Y),n)),te=i.isValidElement(M),ne=f()(J,ee,(r={},(0,s.Z)(r,"".concat(J,"-").concat(R),!!R),(0,s.Z)(r,"".concat(J,"-image"),te||M&&P),(0,s.Z)(r,"".concat(J,"-icon"),!!q),r),H),re="number"===typeof Y?{width:Y,height:Y,lineHeight:"".concat(Y,"px"),fontSize:q?Y/2:18}:{};if("string"===typeof M&&P)$=i.createElement("img",{src:M,draggable:U,srcSet:F,onError:function(){var t=e.onError;!1!==(t?t():void 0)&&z(!1)},alt:B,crossOrigin:X});else if(te)$=M;else if(q)$=q;else if(S||1!==x){var ae="scale(".concat(x,") translateX(-50%)"),ce={msTransform:ae,WebkitTransform:ae,transform:ae},ie="number"===typeof Y?{lineHeight:"".concat(Y,"px")}:{};$=i.createElement(p.default,{onResize:_},i.createElement("span",{className:"".concat(J,"-string"),ref:function(e){A.current=e},style:(0,o.Z)((0,o.Z)({},ie),ce)},W))}else $=i.createElement("span",{className:"".concat(J,"-string"),style:{opacity:0},ref:function(e){A.current=e}},W);return delete K.onError,delete K.gap,i.createElement("span",(0,o.Z)({},K,{style:(0,o.Z)((0,o.Z)((0,o.Z)({},re),V),K.style),className:ne,ref:N}),$)},Z=i.forwardRef(j);Z.displayName="Avatar",Z.defaultProps={shape:"circle",size:"default"};var S=Z,E=n(50344),C=n(96159),O=n(55241),P=function(e){var t=i.useContext(h.E_),n=t.getPrefixCls,r=t.direction,a=e.prefixCls,c=e.className,o=void 0===c?"":c,l=e.maxCount,u=e.maxStyle,d=e.size,p=n("avatar-group",a),m=f()(p,(0,s.Z)({},"".concat(p,"-rtl"),"rtl"===r),o),v=e.children,g=e.maxPopoverPlacement,y=void 0===g?"top":g,x=e.maxPopoverTrigger,k=void 0===x?"hover":x,b=(0,E.Z)(v).map((function(e,t){return(0,C.Tm)(e,{key:"avatar-key-".concat(t)})})),j=b.length;if(l&&le.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&"(".concat(n.length,")")]}),children:[(0,c.jsxs)("p",{children:["The following people are requesting to follow your Owncast server on the"," ",(0,c.jsx)("a",{href:"https://en.wikipedia.org/wiki/Fediverse",target:"_blank",rel:"noopener noreferrer",children:"Fediverse"})," ","and be alerted to when you go live. Each must be approved."]}),e(n,E)]},"2");return(0,c.jsx)("div",{className:"followers-section",children:(0,c.jsxs)(A.Z,{defaultActiveKey:"1",children:[(0,c.jsxs)(V,{tab:(0,c.jsxs)("span",{children:["Followers ",d.length>0&&"(".concat(d.length,")")]}),children:[(0,c.jsx)("p",{children:"The following accounts get notified when you go live or send a post."}),e(d,O)," "]},"1"),P,(0,c.jsxs)(V,{tab:(0,c.jsxs)("span",{children:["Blocked ",s.length>0&&"(".concat(s.length,")")]}),children:[(0,c.jsx)("p",{children:"The following people were either rejected or blocked by you. You can approve them as a follower."}),(0,c.jsx)("p",{children:e(s,C)})]},"3")]})})}}},function(e){e.O(0,[741,3,91,879,774,888,179],(function(){return t=1481,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/index-279c3b5bf5851b91.js b/static/admin/_next/static/chunks/pages/index-279c3b5bf5851b91.js
new file mode 100644
index 000000000..2b8b1a7b7
--- /dev/null
+++ b/static/admin/_next/static/chunks/pages/index-279c3b5bf5851b91.js
@@ -0,0 +1 @@
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[405],{45301:function(e,n,t){(window.__NEXT_P=window.__NEXT_P||[]).push(["/",function(){return t(94831)}])},824:function(e,n,t){"use strict";t.d(n,{Z:function(){return h}});var r=t(85893),s=(t(67294),t(84485)),i=t(20550),a=t(96003),o=t(53731),l=t(58091),c=s.Z.Title;function d(e,n){var t="black";return"warning"===n.level?t="orange":"error"===n.level&&(t="red"),(0,r.jsx)(i.Z,{color:t,children:e})}function u(e){return(0,r.jsx)(o.Z,{children:e})}function h(e){var n=e.logs,t=e.pageSize;if(!(null===n||void 0===n?void 0:n.length))return null;var s=[{title:"Level",dataIndex:"level",key:"level",filters:[{text:"Info",value:"info"},{text:"Warning",value:"warning"},{text:"Error",value:"Error"}],onFilter:function(e,n){return 0===n.level.indexOf(e)},render:d},{title:"Timestamp",dataIndex:"time",key:"time",render:function(e){var n=new Date(e);return(0,l.Z)(n,"pp P")},sorter:function(e,n){return new Date(e.time).getTime()-new Date(n.time).getTime()},sortDirections:["descend","ascend"],defaultSortOrder:"descend"},{title:"Message",dataIndex:"message",key:"message",render:u}];return(0,r.jsxs)("div",{className:"logs-section",children:[(0,r.jsx)(c,{children:"Logs"}),(0,r.jsx)(a.Z,{size:"middle",dataSource:n,columns:s,rowKey:function(e){return e.time},pagination:{pageSize:t||20}})]})}},14880:function(e,n,t){"use strict";t.d(n,{Z:function(){return x}});var r=t(85893),s=t(8751),i=t(11475),a=t(25968),o=t(6226),l=t(74763),c=t(84485),d=t(14670),u=t(71577),h=t(41664),f=t(67294),m=t(35159);function x(e){var n=e.showTroubleshootButton,t=(0,f.useContext)(m.aC).health;if(!t)return null;var x=t.healthy,v=t.healthPercentage,p=t.message,j=t.representation,g="#3f8600",w="info";return v<80?(g="#cf000f",w="error"):v<30&&(g="#f0ad4e",w="error"),(0,r.jsxs)("div",{children:[(0,r.jsxs)(a.Z,{gutter:8,children:[(0,r.jsx)(o.Z,{span:12,children:(0,r.jsx)(l.Z,{title:"Healthy Stream",value:x?"Yes":"No",valueStyle:{color:g},prefix:x?(0,r.jsx)(s.Z,{}):(0,r.jsx)(i.Z,{})})}),(0,r.jsx)(o.Z,{span:12,children:(0,r.jsx)(l.Z,{title:"Playback Health",value:v,valueStyle:{color:g},suffix:"%"})})]}),(0,r.jsx)(a.Z,{style:{display:j<100&&0!==j?"grid":"none"},children:(0,r.jsxs)(c.Z.Text,{type:"secondary",style:{textAlign:"center",fontSize:"0.7em",opacity:"0.3"},children:["Stream health represents ",j,"% of all known players. Other player status is unknown."]})}),(0,r.jsx)(a.Z,{gutter:16,style:{width:"100%",display:p?"grid":"none",marginTop:"10px"},children:(0,r.jsx)(o.Z,{span:24,children:(0,r.jsx)(d.Z,{message:p,type:w,showIcon:!0,action:n&&(0,r.jsx)(h.default,{passHref:!0,href:"/stream-health",children:(0,r.jsx)(u.Z,{size:"small",type:"text",style:{color:"black"},children:"TROUBLESHOOT"})})})})})]})}x.defaultProps={showTroubleshootButton:!0}},94831:function(e,n,t){"use strict";t.r(n),t.d(n,{default:function(){return V}});var r=t(34051),s=t.n(r),i=t(85893),a=t(67294),o=t(41080),l=t(74763),c=t(97751),d=t(25968),u=t(6226),h=t(24019),f=t(87547),m=t(26555),x=t(85533),v=t(35159),p=t(824),j=t(66567),g=t(63179),w=t(78346),Z=t(27482),y=t(84485),b=t(41664),k=t(92659),N=t(54907),S=t(58091),O=t(58827);function C(e,n,t,r,s,i,a){try{var o=e[i](a),l=o.value}catch(c){return void t(c)}o.done?n(l):Promise.resolve(l).then(r,s)}function P(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}var T=N.Z.Panel,_=y.Z.Title,E=y.Z.Link;function D(e){var n=e.title,t=e.url,r=e.content_html,s=e.date_published,a=new Date(s),o=(0,S.Z)(a,"MMM dd, yyyy, HH:mm");return(0,i.jsx)("article",{children:(0,i.jsx)(N.Z,{children:(0,i.jsxs)(T,{header:n,children:[(0,i.jsxs)("p",{className:"timestamp",children:[o," (",(0,i.jsx)(E,{href:"".concat("https://owncast.online").concat(t),target:"_blank",rel:"noopener noreferrer",children:"Link"}),")"]}),(0,i.jsx)("div",{dangerouslySetInnerHTML:{__html:r}})]},t)})})}function U(){var e=(0,a.useState)([]),n=e[0],t=e[1],r=(0,a.useState)(!0),l=r[0],c=r[1],d=function(){var e,n=(e=s().mark((function e(){var n;return s().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c(!1),e.prev=1,e.next=4,(0,O.kg)("https://owncast.online/news/index.json");case 4:(null===(n=e.sent)||void 0===n?void 0:n.items.length)>0&&t(n.items),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(1),console.log("==== error",e.t0);case 11:case"end":return e.stop()}}),e,null,[[1,8]])})),function(){var n=this,t=arguments;return new Promise((function(r,s){var i=e.apply(n,t);function a(e){C(i,r,s,a,o,"next",e)}function o(e){C(i,r,s,a,o,"throw",e)}a(void 0)}))});return function(){return n.apply(this,arguments)}}();(0,a.useEffect)((function(){d()}),[]);var u=l?(0,i.jsx)(o.Z,{loading:!0,active:!0}):null,h=l||0!==n.length?null:(0,i.jsx)("div",{children:"No news."});return(0,i.jsxs)("section",{className:"news-feed form-module",children:[(0,i.jsx)(_,{level:2,children:"News & Updates from Owncast"}),u,n.map((function(e){return(0,a.createElement)(D,function(e){for(var n=1;n0&&t(n.items),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(1),console.log("==== error",e.t0);case 11:case"end":return e.stop()}}),e,null,[[1,8]])})),function(){var n=this,t=arguments;return new Promise((function(r,s){var i=e.apply(n,t);function a(e){C(i,r,s,a,o,"next",e)}function o(e){C(i,r,s,a,o,"throw",e)}a(void 0)}))});return function(){return n.apply(this,arguments)}}();(0,a.useEffect)((function(){d()}),[]);var u=l?(0,i.jsx)(o.Z,{loading:!0,active:!0}):null,h=l||0!==n.length?null:(0,i.jsx)("div",{children:"No news."});return(0,i.jsxs)("section",{className:"news-feed form-module",children:[(0,i.jsx)(T,{level:2,children:"News & Updates from Owncast"}),u,n.map((function(e){return(0,a.createElement)(D,function(e){for(var n=1;n=1},subscribe:function(e){return s.size||this.register(),l+=1,s.set(l,e),e(c),l},unsubscribe:function(e){s.delete(e),s.size||this.unregister()},unregister:function(){var e=this;Object.keys(o).forEach((function(t){var n=o[t],r=e.matchHandlers[n];null===r||void 0===r||r.mql.removeListener(null===r||void 0===r?void 0:r.listener)})),s.clear()},register:function(){var e=this;Object.keys(o).forEach((function(t){var n=o[t],a=function(n){var a=n.matches;e.dispatch((0,i.Z)((0,i.Z)({},c),(0,r.Z)({},t,a)))},s=window.matchMedia(n);s.addListener(a),e.matchHandlers[n]={mql:s,listener:a},a(s)}))}};t.ZP=u},27561:function(e,t,n){var r=n(67990),i=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(i,""):e}},67990:function(e){var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},33448:function(e,t,n){var r=n(44239),i=n(37005);e.exports=function(e){return"symbol"==typeof e||i(e)&&"[object Symbol]"==r(e)}},14841:function(e,t,n){var r=n(27561),i=n(13218),a=n(33448),o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(i(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=i(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):o.test(e)?NaN:+e}},86401:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/stream-health",function(){return n(26102)}])},89270:function(e,t,n){"use strict";n.d(t,{Z:function(){return u}});var r=n(85893),i=n(31877),a=n(92616),o=n.n(a),s=n(58091),l=n(60727);function c(e){var t={};return e.forEach((function(e){var n=new Date(e.time),r=(0,s.Z)(n,"H:mma");t[r]=e.value})),t}function u(e){var t=e.data,n=e.title,i=e.color,a=e.unit,o=e.dataCollections,s=e.yFlipped,u=e.yLogarithmic,d=[];t&&t.length>0&&d.push({name:n,color:i,data:c(t)}),o.forEach((function(e){d.push({name:e.name,data:c(e.data),color:e.color,dataset:e.options})}));var f={scales:{y:{reverse:!1,type:"linear"},x:{type:"time"}}};return f.scales.y.reverse=s,f.scales.y.type=u?"logarithmic":"linear",(0,r.jsx)("div",{className:"line-chart-container",children:(0,r.jsx)(l.wW,{xtitle:"Time",ytitle:n,suffix:a,legend:"bottom",color:i,data:d,download:n,library:f})})}o().use(i.Z),u.defaultProps={dataCollections:[],data:[],title:"",yFlipped:!1,yLogarithmic:!1}},26102:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return C}});var r=n(34051),i=n.n(r),a=n(85893),o=n(84485),s=n(26713),l=n(25968),c=n(6226),u=n(97751),d=n(74763),f=n(14670),p=n(67294),h=n(1413),m={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M723 620.5C666.8 571.6 593.4 542 513 542s-153.8 29.6-210.1 78.6a8.1 8.1 0 00-.8 11.2l36 42.9c2.9 3.4 8 3.8 11.4.9C393.1 637.2 450.3 614 513 614s119.9 23.2 163.5 61.5c3.4 2.9 8.5 2.5 11.4-.9l36-42.9c2.8-3.3 2.4-8.3-.9-11.2zm117.4-140.1C751.7 406.5 637.6 362 513 362s-238.7 44.5-327.5 118.4a8.05 8.05 0 00-1 11.3l36 42.9c2.8 3.4 7.9 3.8 11.2 1C308 472.2 406.1 434 513 434s205 38.2 281.2 101.6c3.4 2.8 8.4 2.4 11.2-1l36-42.9c2.8-3.4 2.4-8.5-1-11.3zm116.7-139C835.7 241.8 680.3 182 511 182c-168.2 0-322.6 59-443.7 157.4a8 8 0 00-1.1 11.4l36 42.9c2.8 3.3 7.8 3.8 11.1 1.1C222 306.7 360.3 254 511 254c151.8 0 291 53.5 400 142.7 3.4 2.8 8.4 2.3 11.2-1.1l36-42.9c2.9-3.4 2.4-8.5-1.1-11.3zM448 778a64 64 0 10128 0 64 64 0 10-128 0z"}}]},name:"wifi",theme:"outlined"},v=n(42135),y=function(e,t){return p.createElement(v.Z,(0,h.Z)((0,h.Z)({},e),{},{ref:t,icon:m}))};y.displayName="WifiOutlined";var g=p.forwardRef(y),w=n(24019),x=n(28058),b=n(58827),j=n(89270);function Z(e,t,n,r,i,a,o){try{var s=e[a](o),l=s.value}catch(c){return void n(c)}s.done?t(l):Promise.resolve(l).then(r,i)}function F(e){var t=e.title,n=e.description;return(0,a.jsxs)("div",{className:"description-box",children:[(0,a.jsx)(o.Z.Title,{children:t}),(0,a.jsx)(o.Z.Paragraph,{children:n})]})}function C(){var e,t,n,r,h,m,v,y=(0,p.useState)([]),C=y[0],k=y[1],P=(0,p.useState)([]),S=P[0],N=P[1],E=(0,p.useState)(),O=E[0],L=E[1],D=(0,p.useState)(),M=D[0],T=D[1],A=(0,p.useState)([]),q=A[0],I=A[1],z=(0,p.useState)([]),B=z[0],_=z[1],R=(0,p.useState)([]),V=R[0],H=R[1],W=(0,p.useState)([]),Q=W[0],$=W[1],X=(0,p.useState)([]),Y=X[0],G=X[1],J=(0,p.useState)([]),K=J[0],U=J[1],ee=(0,p.useState)([]),te=ee[0],ne=ee[1],re=(0,p.useState)([]),ie=re[0],ae=re[1],oe=(0,p.useState)(0),se=oe[0],le=oe[1],ce=(0,p.useState)(0),ue=ce[0],de=ce[1],fe=function(){var e,t=(e=i().mark((function e(){var t;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,b.rQ)(b.N$);case 3:t=e.sent,k(t.errors),N(t.qualityVariantChanges),T(t.highestLatency),L(t.lowestLatency),I(t.medianLatency),_(t.medianSegmentDownloadDuration),H(t.maximumSegmentDownloadDuration),$(t.minimumSegmentDownloadDuration),G(t.minPlayerBitrate),U(t.medianPlayerBitrate),ne(t.maxPlayerBitrate),ae(t.availableBitrates),le(t.segmentLength-.3),de(t.representation),e.next=23;break;case 20:e.prev=20,e.t0=e.catch(0),console.error(e.t0);case 23:case"end":return e.stop()}}),e,null,[[0,20]])})),function(){var t=this,n=arguments;return new Promise((function(r,i){var a=e.apply(t,n);function o(e){Z(a,r,i,o,s,"next",e)}function s(e){Z(a,r,i,o,s,"throw",e)}o(void 0)}))});return function(){return t.apply(this,arguments)}}();(0,p.useEffect)((function(){var e;return fe(),e=setInterval(fe,b.NE),function(){clearInterval(e)}}),[]);var pe=(0,a.jsxs)("div",{children:[(0,a.jsx)(o.Z.Title,{children:"Stream Performance"}),(0,a.jsx)(o.Z.Paragraph,{children:"Data has not yet been collected. Once a stream has begun and viewers are watching this page will be available."})]});if(!(null===C||void 0===C?void 0:C.length))return pe;if(!(null===q||void 0===q?void 0:q.length))return pe;if(!(null===B||void 0===B?void 0:B.length))return pe;var he=[{name:"Errors",color:"#B63FFF",options:{radius:3},data:C},{name:"Quality changes",color:"#2087E2",options:{radius:2},data:S}],me=[{name:"Median stream latency",color:"#00FFFF",options:{radius:2},data:q},{name:"Lowest stream latency",color:"#02FD0D",options:{radius:2},data:O},{name:"Highest stream latency",color:"#B63FFF",options:{radius:2},data:M}],ve=[{name:"Max download duration",color:"#B63FFF",options:{radius:2},data:V},{name:"Median download duration",color:"#00FFFF",options:{radius:2},data:B},{name:"Min download duration",color:"#02FD0D",options:{radius:2},data:Q},{name:"Approximate limit",color:"#003FFF",data:B.map((function(e){return{time:e.time,value:se}})),options:{radius:0}}],ye=[{name:"Lowest viewer bitrate",color:"#B63FFF",data:Y,options:{radius:2}},{name:"Median viewer bitrate",color:"#00FFFF",data:K,options:{radius:2}},{name:"Maximum viewer bitrate",color:"#02FD0D",data:te,options:{radius:2}}];ie.forEach((function(e){ye.push({name:"Available bitrate",color:"#003FFF",data:Y.map((function(t){return{time:t.time,value:e}})),options:{radius:0}})}));var ge=null===(t=null===(e=ye[0])||void 0===e?void 0:e.data[ye[0].data.length-1])||void 0===t?void 0:t.value,we=null===(n=B[B.length-1])||void 0===n?void 0:n.value,xe=ie[0],be=(null===(r=q[q.length-1])||void 0===r?void 0:r.value)||0,je=(null===(h=M[M.length-1])||void 0===h?void 0:h.value)||0,Ze=(null===(m=O[O.length-1])||void 0===m?void 0:m.value)||0,Fe=(Number(je)+Number(Ze)+Number(be))/3,Ce=0;((null===(v=he[0])||void 0===v?void 0:v.data.length)||0)>5?Ce=he[0].data.slice(-5).reduce((function(e,t){return e+Number(t.value)}),0):Ce=he[0].data.reduce((function(e,t){return e+Number(t.value)}),0);var ke=ge>0||we>0||Ce>0,Pe=null,Se=null;0!==ge&&gese&&(Se="Your viewers may be consuming your video slower than required. This may be due to slow networks or your latency configuration. You need to decrease the amount of time viewers are taking to consume your video. Consider adding a lower quality with a lower bitrate or experiment with increasing the latency buffer setting.");var Ne=Ce>0?"#B63FFF":"#FFFFFF",Ee={display:"flex",alignItems:"center",justifyContent:"center",height:"80px"};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z.Title,{children:"Stream Performance"}),(0,a.jsx)(o.Z.Paragraph,{children:"This tool hopes to help you identify and troubleshoot problems you may be experiencing with your stream. It aims to aggregate experiences across your viewers, meaning one viewer with an exceptionally bad experience may throw off numbers for the whole, especially with a low number of viewers."}),(0,a.jsx)(o.Z.Paragraph,{children:"The data is only collected by those using the Owncast web interface and is unable to gain insight into external players people may be using such as VLC, MPV, QuickTime, etc."}),(0,a.jsxs)(s.Z,{direction:"vertical",size:"middle",children:[(0,a.jsxs)(l.Z,{gutter:[16,16],justify:"space-around",style:{display:ke?"flex":"none"},children:[(0,a.jsx)(c.Z,{children:(0,a.jsx)(u.Z,{type:"inner",children:(0,a.jsx)("div",{style:Ee,children:(0,a.jsx)(d.Z,{title:"Viewer Playback Speed",value:"".concat(ge),prefix:(0,a.jsx)(g,{style:{marginRight:"5px"}}),precision:0,suffix:"kbps"})})})}),(0,a.jsx)(c.Z,{children:(0,a.jsx)(u.Z,{type:"inner",children:(0,a.jsx)("div",{style:Ee,children:(0,a.jsx)(d.Z,{title:"Viewer Latency",value:"".concat(Fe),prefix:(0,a.jsx)(w.Z,{style:{marginRight:"5px"}}),precision:0,suffix:"seconds"})})})}),(0,a.jsx)(c.Z,{children:(0,a.jsx)(u.Z,{type:"inner",children:(0,a.jsxs)("div",{style:Ee,children:[(0,a.jsx)(d.Z,{title:"Recent Playback Errors",value:"".concat(Ce||0),valueStyle:{color:Ne},prefix:(0,a.jsx)(x.Z,{style:{marginRight:"5px"}}),suffix:""})," "]})})})]}),(0,a.jsx)("div",{style:{textAlign:"center",display:ue<100?"grid":"none"},children:(0,a.jsxs)(o.Z.Paragraph,{style:{opacity:"0.7",fontSize:"0.7em"},children:["Provided playback metrics represent ",ue,"% of all known players. Specifics around other players consuming this video stream are unknown."]})}),(0,a.jsxs)(u.Z,{children:[(0,a.jsx)(F,{title:"Video Segment Download",description:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z.Paragraph,{children:"Once a video segment takes too long to download a viewer will experience buffering. If you see slow downloads you should offer a lower quality for your viewers, or find other ways, possibly an external storage provider, a CDN or a faster network, to improve your stream quality. Increasing your latency buffer can also help for some viewers."}),(0,a.jsx)(o.Z.Paragraph,{children:"In short, once the pink line consistently gets near the blue line, your stream is likely experiencing problems for viewers."})]})}),Se&&(0,a.jsx)(f.Z,{message:"Slow downloads",description:Se,type:"error",showIcon:!0}),(0,a.jsx)(j.Z,{title:"Seconds",dataCollections:ve,color:"#FF7700",unit:"s",yLogarithmic:!0})]}),(0,a.jsxs)(u.Z,{children:[(0,a.jsx)(F,{title:"Player Network Speed",description:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z.Paragraph,{children:"The playback bitrate of your viewers. Once somebody's bitrate drops below the lowest video variant bitrate they will experience buffering. If you see viewers with slow connections trying to play your video you should consider offering an additional, lower quality."}),(0,a.jsx)(o.Z.Paragraph,{children:"In short, once the pink line gets near the lowest blue line, your stream is likely experiencing problems for at least one of your viewers."})]})}),Pe&&(0,a.jsx)(f.Z,{message:"Low bandwidth viewers",description:Pe,type:"error",showIcon:!0}),(0,a.jsx)(j.Z,{title:"Lowest Player Bitrate",dataCollections:ye,color:"#FF7700",unit:"kbps",yLogarithmic:!0})]}),(0,a.jsxs)(u.Z,{children:[(0,a.jsx)(F,{title:"Errors and Quality Changes",description:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.Z.Paragraph,{children:"Recent number of errors, including buffering, and quality changes from across all your viewers. Errors can occur for many reasons, including browser issues, plugins, wifi problems, and they don't all represent fatal issues or something you have control over."}),"A quality change is not necessarily a negative thing, but if it's excessive and coinciding with errors you should consider adding another quality variant.",(0,a.jsx)(o.Z.Paragraph,{})]})}),(0,a.jsx)(j.Z,{title:"#",dataCollections:he,color:"#FF7700",unit:""})]}),(0,a.jsxs)(u.Z,{children:[(0,a.jsx)(F,{title:"Viewer Latency",description:"An approximate number of seconds that your viewers are behind your live video. The more people buffer the further behind they will be. High latency itself is not a problem, but some people care about this more than others."}),(0,a.jsx)(j.Z,{title:"Seconds",dataCollections:me,color:"#FF7700",unit:"s"})]})]})]})}},56180:function(e,t,n){"use strict";n.d(t,{Z:function(){return v}});var r=n(4942),i=n(1413),a=n(97685),o=n(91),s=n(67294),l=n(82532),c=n(94184),u=n.n(c),d={adjustX:1,adjustY:1},f=[0,0],p={topLeft:{points:["bl","tl"],overflow:d,offset:[0,-4],targetOffset:f},topCenter:{points:["bc","tc"],overflow:d,offset:[0,-4],targetOffset:f},topRight:{points:["br","tr"],overflow:d,offset:[0,-4],targetOffset:f},bottomLeft:{points:["tl","bl"],overflow:d,offset:[0,4],targetOffset:f},bottomCenter:{points:["tc","bc"],overflow:d,offset:[0,4],targetOffset:f},bottomRight:{points:["tr","br"],overflow:d,offset:[0,4],targetOffset:f}},h=["arrow","prefixCls","transitionName","animation","align","placement","placements","getPopupContainer","showAction","hideAction","overlayClassName","overlayStyle","visible","trigger"];function m(e,t){var n=e.arrow,c=void 0!==n&&n,d=e.prefixCls,f=void 0===d?"rc-dropdown":d,m=e.transitionName,v=e.animation,y=e.align,g=e.placement,w=void 0===g?"bottomLeft":g,x=e.placements,b=void 0===x?p:x,j=e.getPopupContainer,Z=e.showAction,F=e.hideAction,C=e.overlayClassName,k=e.overlayStyle,P=e.visible,S=e.trigger,N=void 0===S?["hover"]:S,E=(0,o.Z)(e,h),O=s.useState(),L=(0,a.Z)(O,2),D=L[0],M=L[1],T="visible"in e?P:D,A=s.useRef(null);s.useImperativeHandle(t,(function(){return A.current}));var q=function(){var t=e.overlay;return"function"===typeof t?t():t},I=function(t){var n=e.onOverlayClick,r=q().props;M(!1),n&&n(t),r.onClick&&r.onClick(t)},z=function(){var e=q(),t={prefixCls:"".concat(f,"-menu"),onClick:I};return"string"===typeof e.type&&delete t.prefixCls,s.createElement(s.Fragment,null,c&&s.createElement("div",{className:"".concat(f,"-arrow")}),s.cloneElement(e,t))},B=F;return B||-1===N.indexOf("contextMenu")||(B=["click"]),s.createElement(l.Z,(0,i.Z)((0,i.Z)({builtinPlacements:b},E),{},{prefixCls:f,ref:A,popupClassName:u()(C,(0,r.Z)({},"".concat(f,"-show-arrow"),c)),popupStyle:k,action:N,showAction:Z,hideAction:B||[],popupPlacement:w,popupAlign:y,popupTransitionName:m,popupAnimation:v,popupVisible:T,stretch:function(){var t=e.minOverlayWidthMatchTrigger,n=e.alignPoint;return"minOverlayWidthMatchTrigger"in e?t:!n}()?"minWidth":"",popup:"function"===typeof e.overlay?z:z(),onPopupVisibleChange:function(t){var n=e.onVisibleChange;M(t),"function"===typeof n&&n(t)},getPopupContainer:j}),function(){var t=e.children,n=t.props?t.props:{},r=u()(n.className,function(){var t=e.openClassName;return void 0!==t?t:"".concat(f,"-open")}());return T&&t?s.cloneElement(t,{className:r}):t}())}var v=s.forwardRef(m)}},function(e){e.O(0,[570,91,879,751,763,80,774,888,179],(function(){return t=86401,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/stream-health-68eee3394ab8d535.js b/static/admin/_next/static/chunks/pages/stream-health-68eee3394ab8d535.js
new file mode 100644
index 000000000..16455d758
--- /dev/null
+++ b/static/admin/_next/static/chunks/pages/stream-health-68eee3394ab8d535.js
@@ -0,0 +1 @@
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[632],{24019:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var a=r(1413),n=r(67294),i={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"}}]},name:"clock-circle",theme:"outlined"},o=r(42135),s=function(e,t){return n.createElement(o.Z,(0,a.Z)((0,a.Z)({},e),{},{ref:t,icon:i}))};s.displayName="ClockCircleOutlined";var l=n.forwardRef(s)},86401:function(e,t,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/stream-health",function(){return r(26102)}])},89270:function(e,t,r){"use strict";r.d(t,{Z:function(){return u}});var a=r(85893),n=r(31877),i=r(92616),o=r.n(i),s=r(58091),l=r(60727);function c(e){var t={};return e.forEach((function(e){var r=new Date(e.time),a=(0,s.Z)(r,"H:mma");t[a]=e.value})),t}function u(e){var t=e.data,r=e.title,n=e.color,i=e.unit,o=e.dataCollections,s=e.yFlipped,u=e.yLogarithmic,d=[];t&&t.length>0&&d.push({name:r,color:n,data:c(t)}),o.forEach((function(e){d.push({name:e.name,data:c(e.data),color:e.color,dataset:e.options})}));var h={scales:{y:{reverse:!1,type:"linear"},x:{type:"time"}}};return h.scales.y.reverse=s,h.scales.y.type=u?"logarithmic":"linear",(0,a.jsx)("div",{className:"line-chart-container",children:(0,a.jsx)(l.wW,{xtitle:"Time",ytitle:r,suffix:i,legend:"bottom",color:n,data:d,download:r,library:h})})}o().use(n.Z),u.defaultProps={dataCollections:[],data:[],title:"",yFlipped:!1,yLogarithmic:!1}},14880:function(e,t,r){"use strict";r.d(t,{Z:function(){return m}});var a=r(85893),n=r(8751),i=r(11475),o=r(25968),s=r(6226),l=r(74763),c=r(84485),u=r(14670),d=r(71577),h=r(41664),p=r(67294),y=r(35159);function m(e){var t=e.showTroubleshootButton,r=(0,p.useContext)(y.aC).health;if(!r)return null;var m=r.healthy,f=r.healthPercentage,v=r.message,x=r.representation,g="#3f8600",w="info";return f<80?(g="#cf000f",w="error"):f<30&&(g="#f0ad4e",w="error"),(0,a.jsxs)("div",{children:[(0,a.jsxs)(o.Z,{gutter:8,children:[(0,a.jsx)(s.Z,{span:12,children:(0,a.jsx)(l.Z,{title:"Healthy Stream",value:m?"Yes":"No",valueStyle:{color:g},prefix:m?(0,a.jsx)(n.Z,{}):(0,a.jsx)(i.Z,{})})}),(0,a.jsx)(s.Z,{span:12,children:(0,a.jsx)(l.Z,{title:"Playback Health",value:f,valueStyle:{color:g},suffix:"%"})})]}),(0,a.jsx)(o.Z,{style:{display:x<100&&0!==x?"grid":"none"},children:(0,a.jsxs)(c.Z.Text,{type:"secondary",style:{textAlign:"center",fontSize:"0.7em",opacity:"0.3"},children:["Stream health represents ",x,"% of all known players. Other player status is unknown."]})}),(0,a.jsx)(o.Z,{gutter:16,style:{width:"100%",display:v?"grid":"none",marginTop:"10px"},children:(0,a.jsx)(s.Z,{span:24,children:(0,a.jsx)(u.Z,{message:v,type:w,showIcon:!0,action:t&&(0,a.jsx)(h.default,{passHref:!0,href:"/stream-health",children:(0,a.jsx)(d.Z,{size:"small",type:"text",style:{color:"black"},children:"TROUBLESHOOT"})})})})})]})}m.defaultProps={showTroubleshootButton:!0}},26102:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return P}});var a=r(34051),n=r.n(a),i=r(85893),o=r(84485),s=r(14670),l=r(11382),c=r(26713),u=r(25968),d=r(6226),h=r(97751),p=r(74763),y=r(67294),m=r(1413),f={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M723 620.5C666.8 571.6 593.4 542 513 542s-153.8 29.6-210.1 78.6a8.1 8.1 0 00-.8 11.2l36 42.9c2.9 3.4 8 3.8 11.4.9C393.1 637.2 450.3 614 513 614s119.9 23.2 163.5 61.5c3.4 2.9 8.5 2.5 11.4-.9l36-42.9c2.8-3.3 2.4-8.3-.9-11.2zm117.4-140.1C751.7 406.5 637.6 362 513 362s-238.7 44.5-327.5 118.4a8.05 8.05 0 00-1 11.3l36 42.9c2.8 3.4 7.9 3.8 11.2 1C308 472.2 406.1 434 513 434s205 38.2 281.2 101.6c3.4 2.8 8.4 2.4 11.2-1l36-42.9c2.8-3.4 2.4-8.5-1-11.3zm116.7-139C835.7 241.8 680.3 182 511 182c-168.2 0-322.6 59-443.7 157.4a8 8 0 00-1.1 11.4l36 42.9c2.8 3.3 7.8 3.8 11.1 1.1C222 306.7 360.3 254 511 254c151.8 0 291 53.5 400 142.7 3.4 2.8 8.4 2.3 11.2-1.1l36-42.9c2.9-3.4 2.4-8.5-1.1-11.3zM448 778a64 64 0 10128 0 64 64 0 10-128 0z"}}]},name:"wifi",theme:"outlined"},v=r(42135),x=function(e,t){return y.createElement(v.Z,(0,m.Z)((0,m.Z)({},e),{},{ref:t,icon:f}))};x.displayName="WifiOutlined";var g=y.forwardRef(x),w=r(24019),b=r(28058),j=r(58827),Z=r(89270),F=r(14880);function S(e,t,r,a,n,i,o){try{var s=e[i](o),l=s.value}catch(c){return void r(c)}s.done?t(l):Promise.resolve(l).then(a,n)}function k(e){var t=e.title,r=e.description;return(0,i.jsxs)("div",{className:"description-box",children:[(0,i.jsx)(o.Z.Title,{children:t}),(0,i.jsx)(o.Z.Paragraph,{children:r})]})}function P(){var e,t,r,a,m,f,v,x=(0,y.useState)([]),P=x[0],C=x[1],T=(0,y.useState)([]),N=T[0],E=T[1],L=(0,y.useState)(),B=L[0],D=L[1],O=(0,y.useState)(),z=O[0],I=O[1],_=(0,y.useState)([]),q=_[0],M=_[1],H=(0,y.useState)([]),R=H[0],V=H[1],A=(0,y.useState)([]),Q=A[0],Y=A[1],W=(0,y.useState)([]),X=W[0],U=W[1],$=(0,y.useState)([]),G=$[0],J=$[1],K=(0,y.useState)([]),ee=K[0],te=K[1],re=(0,y.useState)([]),ae=re[0],ne=re[1],ie=(0,y.useState)([]),oe=ie[0],se=ie[1],le=(0,y.useState)(0),ce=le[0],ue=le[1],de=(0,y.useState)(0),he=de[0],pe=de[1],ye=function(){var e,t=(e=n().mark((function e(){var t;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,j.rQ)(j.N$);case 3:t=e.sent,C(t.errors),E(t.qualityVariantChanges),I(t.highestLatency),D(t.lowestLatency),M(t.medianLatency),V(t.medianSegmentDownloadDuration),Y(t.maximumSegmentDownloadDuration),U(t.minimumSegmentDownloadDuration),J(t.minPlayerBitrate),te(t.medianPlayerBitrate),ne(t.maxPlayerBitrate),se(t.availableBitrates),ue(t.segmentLength-.3),pe(t.representation),e.next=23;break;case 20:e.prev=20,e.t0=e.catch(0),console.error(e.t0);case 23:case"end":return e.stop()}}),e,null,[[0,20]])})),function(){var t=this,r=arguments;return new Promise((function(a,n){var i=e.apply(t,r);function o(e){S(i,a,n,o,s,"next",e)}function s(e){S(i,a,n,o,s,"throw",e)}o(void 0)}))});return function(){return t.apply(this,arguments)}}();(0,y.useEffect)((function(){var e;return ye(),e=setInterval(ye,j.NE),function(){clearInterval(e)}}),[]);var me=(0,i.jsxs)("div",{children:[(0,i.jsx)(o.Z.Title,{children:"Stream Performance"}),(0,i.jsx)(s.Z,{type:"info",message:" Data has not yet been collected. Once a stream has begun and viewers are watching this page will be available."}),(0,i.jsx)(l.Z,{size:"large",children:(0,i.jsx)("div",{style:{marginTop:"50px",height:"100px"}})})]});if(!(null===P||void 0===P?void 0:P.length))return me;if(!(null===q||void 0===q?void 0:q.length))return me;if(!(null===R||void 0===R?void 0:R.length))return me;var fe=[{name:"Errors",color:"#B63FFF",options:{radius:3},data:P},{name:"Quality changes",color:"#2087E2",options:{radius:2},data:N}],ve=[{name:"Median stream latency",color:"#00FFFF",options:{radius:2},data:q},{name:"Lowest stream latency",color:"#02FD0D",options:{radius:2},data:B},{name:"Highest stream latency",color:"#B63FFF",options:{radius:2},data:z}],xe=[{name:"Max download duration",color:"#B63FFF",options:{radius:2},data:Q},{name:"Median download duration",color:"#00FFFF",options:{radius:2},data:R},{name:"Min download duration",color:"#02FD0D",options:{radius:2},data:X},{name:"Approximate limit",color:"#003FFF",data:R.map((function(e){return{time:e.time,value:ce}})),options:{radius:0}}],ge=[{name:"Lowest viewer bitrate",color:"#B63FFF",data:G,options:{radius:2}},{name:"Median viewer bitrate",color:"#00FFFF",data:ee,options:{radius:2}},{name:"Maximum viewer bitrate",color:"#02FD0D",data:ae,options:{radius:2}}];oe.forEach((function(e){ge.push({name:"Available bitrate",color:"#003FFF",data:G.map((function(t){return{time:t.time,value:e}})),options:{radius:0}})}));var we=null===(t=null===(e=ge[0])||void 0===e?void 0:e.data[ge[0].data.length-1])||void 0===t?void 0:t.value,be=null===(r=R[R.length-1])||void 0===r?void 0:r.value,je=oe[0],Ze=(null===(a=q[q.length-1])||void 0===a?void 0:a.value)||0,Fe=(null===(m=z[z.length-1])||void 0===m?void 0:m.value)||0,Se=(null===(f=B[B.length-1])||void 0===f?void 0:f.value)||0,ke=(Number(Fe)+Number(Se)+Number(Ze))/3,Pe=0;((null===(v=fe[0])||void 0===v?void 0:v.data.length)||0)>5?Pe=fe[0].data.slice(-5).reduce((function(e,t){return e+Number(t.value)}),0):Pe=fe[0].data.reduce((function(e,t){return e+Number(t.value)}),0);var Ce=we>0||be>0||Pe>0,Te=null,Ne=null;0!==we&&wece&&(Ne="Your viewers may be consuming your video slower than required. This may be due to slow networks or your latency configuration. You need to decrease the amount of time viewers are taking to consume your video. Consider adding a lower quality with a lower bitrate or experiment with increasing the latency buffer setting.");var Ee=Pe>0?"#B63FFF":"#FFFFFF",Le={display:"flex",alignItems:"center",justifyContent:"center",height:"80px"};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.Z.Title,{children:"Stream Performance"}),(0,i.jsx)(o.Z.Paragraph,{children:"This tool hopes to help you identify and troubleshoot problems you may be experiencing with your stream. It aims to aggregate experiences across your viewers, meaning one viewer with an exceptionally bad experience may throw off numbers for the whole, especially with a low number of viewers."}),(0,i.jsx)(o.Z.Paragraph,{children:"The data is only collected by those using the Owncast web interface and is unable to gain insight into external players people may be using such as VLC, MPV, QuickTime, etc."}),(0,i.jsxs)(c.Z,{direction:"vertical",size:"middle",children:[(0,i.jsx)(u.Z,{justify:"space-around",children:(0,i.jsx)(d.Z,{style:{width:"100%"},children:(0,i.jsx)(h.Z,{type:"inner",children:(0,i.jsx)(F.Z,{showTroubleshootButton:!1})})})}),(0,i.jsxs)(u.Z,{gutter:[16,16],justify:"space-around",style:{display:Ce?"flex":"none"},children:[(0,i.jsx)(d.Z,{children:(0,i.jsx)(h.Z,{type:"inner",children:(0,i.jsx)("div",{style:Le,children:(0,i.jsx)(p.Z,{title:"Viewer Playback Speed",value:"".concat(we),prefix:(0,i.jsx)(g,{style:{marginRight:"5px"}}),precision:0,suffix:"kbps"})})})}),(0,i.jsx)(d.Z,{children:(0,i.jsx)(h.Z,{type:"inner",children:(0,i.jsx)("div",{style:Le,children:(0,i.jsx)(p.Z,{title:"Viewer Latency",value:"".concat(ke),prefix:(0,i.jsx)(w.Z,{style:{marginRight:"5px"}}),precision:0,suffix:"seconds"})})})}),(0,i.jsx)(d.Z,{children:(0,i.jsx)(h.Z,{type:"inner",children:(0,i.jsx)("div",{style:Le,children:(0,i.jsx)(p.Z,{title:"Recent Playback Errors",value:"".concat(Pe||0),valueStyle:{color:Ee},prefix:(0,i.jsx)(b.Z,{style:{marginRight:"5px"}}),suffix:""})})})})]}),(0,i.jsx)("div",{style:{textAlign:"center",display:he<100?"grid":"none"},children:0!==he&&(0,i.jsxs)(o.Z.Paragraph,{style:{opacity:"0.7",fontSize:"0.7em"},children:["Provided playback metrics represent ",he,"% of all known players. Specifics around other players consuming this video stream are unknown."]})}),(0,i.jsxs)(h.Z,{children:[(0,i.jsx)(k,{title:"Video Segment Download",description:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.Z.Paragraph,{children:"Once a video segment takes too long to download a viewer will experience buffering. If you see slow downloads you should offer a lower quality for your viewers, or find other ways, possibly an external storage provider, a CDN or a faster network, to improve your stream quality. Increasing your latency buffer can also help for some viewers."}),(0,i.jsx)(o.Z.Paragraph,{children:"In short, once the pink line consistently gets near the blue line, your stream is likely experiencing problems for viewers."})]})}),Ne&&(0,i.jsx)(s.Z,{message:"Slow downloads",description:Ne,type:"error",showIcon:!0}),(0,i.jsx)(Z.Z,{title:"Seconds",dataCollections:xe,color:"#FF7700",unit:"s",yLogarithmic:!0})]}),(0,i.jsxs)(h.Z,{children:[(0,i.jsx)(k,{title:"Player Network Speed",description:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.Z.Paragraph,{children:"The playback bitrate of your viewers. Once somebody's bitrate drops below the lowest video variant bitrate they will experience buffering. If you see viewers with slow connections trying to play your video you should consider offering an additional, lower quality."}),(0,i.jsx)(o.Z.Paragraph,{children:"In short, once the pink line gets near the lowest blue line, your stream is likely experiencing problems for at least one of your viewers."})]})}),Te&&(0,i.jsx)(s.Z,{message:"Low bandwidth viewers",description:Te,type:"error",showIcon:!0}),(0,i.jsx)(Z.Z,{title:"Lowest Player Bitrate",dataCollections:ge,color:"#FF7700",unit:"kbps",yLogarithmic:!0})]}),(0,i.jsxs)(h.Z,{children:[(0,i.jsx)(k,{title:"Errors and Quality Changes",description:(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.Z.Paragraph,{children:"Recent number of errors, including buffering, and quality changes from across all your viewers. Errors can occur for many reasons, including browser issues, plugins, wifi problems, and they don't all represent fatal issues or something you have control over."}),"A quality change is not necessarily a negative thing, but if it's excessive and coinciding with errors you should consider adding another quality variant.",(0,i.jsx)(o.Z.Paragraph,{})]})}),(0,i.jsx)(Z.Z,{title:"#",dataCollections:fe,color:"#FF7700",unit:""})]}),(0,i.jsxs)(h.Z,{children:[(0,i.jsx)(k,{title:"Viewer Latency",description:"An approximate number of seconds that your viewers are behind your live video. The more people buffer the further behind they will be. High latency itself is not a problem, but some people care about this more than others."}),(0,i.jsx)(Z.Z,{title:"Seconds",dataCollections:ve,color:"#FF7700",unit:"s"})]})]})]})}}},function(e){e.O(0,[570,741,91,879,751,763,80,774,888,179],(function(){return t=86401,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/upgrade-4c9bbde46b42158e.js b/static/admin/_next/static/chunks/pages/upgrade-eead66aad0fb9621.js
similarity index 95%
rename from static/admin/_next/static/chunks/pages/upgrade-4c9bbde46b42158e.js
rename to static/admin/_next/static/chunks/pages/upgrade-eead66aad0fb9621.js
index 14f384aa9..0c8962461 100644
--- a/static/admin/_next/static/chunks/pages/upgrade-4c9bbde46b42158e.js
+++ b/static/admin/_next/static/chunks/pages/upgrade-eead66aad0fb9621.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[69],{20014:function(e,n,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/upgrade",function(){return r(9103)}])},9103:function(e,n,r){"use strict";r.r(n),r.d(n,{default:function(){return w}});var t=r(34051),a=r.n(t),u=r(85893),o=r(67294),c=r(29655),i=r(84485),s=r(96003),l=r(58827);function f(e,n,r,t,a,u,o){try{var c=e[u](o),i=c.value}catch(s){return void r(s)}c.done?n(i):Promise.resolve(i).then(t,a)}function d(e,n,r){return n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function h(e){for(var n=1;n0&&d.push({name:r,color:a,data:u(t)}),s.forEach((function(e){d.push({name:e.name,data:u(e.data),color:e.color,dataset:e.options})}));var f={scales:{y:{reverse:!1,type:"linear"},x:{type:"time"}}};return f.scales.y.reverse=o,f.scales.y.type=l?"logarithmic":"linear",(0,n.jsx)("div",{className:"line-chart-container",children:(0,n.jsx)(c.wW,{xtitle:"Time",ytitle:r,suffix:i,legend:"bottom",color:a,data:d,download:r,library:f})})}s().use(a.Z),l.defaultProps={dataCollections:[],data:[],title:"",yFlipped:!1,yLogarithmic:!1}},34440:function(e,t,r){"use strict";r.d(t,{Z:function(){return h}});var n=r(85893),a=r(84485),i=r(97910),s=r(74763),o=r(97751);function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e){for(var t=1;t90?"red":o,u=(0,n.jsxs)("div",{children:[a,(0,n.jsx)("div",{children:(0,n.jsx)(l,{type:"secondary",children:t})}),(0,n.jsx)("div",{children:(0,n.jsxs)(l,{type:"secondary",children:[r,s||"%"]})})]});return(0,n.jsx)(i.Z,{type:"dashboard",percent:r,width:120,strokeColor:{"0%":o,"90%":c},format:function(){return u}})}function v(e){var t=e.title,r=e.value,a=e.prefix,i=e.formatter;return(0,n.jsx)(s.Z,{title:t,value:r,prefix:a,formatter:i})}function h(e){var t=e.progress?f:v,r=e.centered?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,n.jsx)(o.Z,{type:"inner",children:(0,n.jsx)("div",{style:r,children:(0,n.jsx)(t,u({},e))})})}f.defaultProps=d,v.defaultProps=d,h.defaultProps=d},51237:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return L}});var n=r(34051),a=r.n(n),i=r(85893),s=r(67294),o=r(61709),c=r(84485),u=r(25968),l=r(6226),d=r(14670),f=r(11382),v=r(38504),h=r(87547),x=r(80882),p=r(83946),m=r(19013),y=r(13882);function Z(e,t){(0,y.Z)(2,arguments);var r=(0,m.Z)(e),n=(0,p.Z)(t);return isNaN(n)?new Date(NaN):n?(r.setDate(r.getDate()+n),r):r}function g(e,t){(0,y.Z)(2,arguments);var r=(0,p.Z)(t);return Z(e,-r)}function w(e,t){(0,y.Z)(2,arguments);var r=(0,m.Z)(e),n=(0,p.Z)(t);if(isNaN(n))return new Date(NaN);if(!n)return r;var a=r.getDate(),i=new Date(r.getTime());i.setMonth(r.getMonth()+n+1,0);var s=i.getDate();return a>=s?i:(r.setFullYear(i.getFullYear(),i.getMonth(),a),r)}function j(e,t){(0,y.Z)(2,arguments);var r=(0,p.Z)(t);return w(e,-r)}function b(e,t){if((0,y.Z)(2,arguments),!t||"object"!==typeof t)return new Date(NaN);var r=t.years?(0,p.Z)(t.years):0,n=t.months?(0,p.Z)(t.months):0,a=t.weeks?(0,p.Z)(t.weeks):0,i=t.days?(0,p.Z)(t.days):0,s=t.hours?(0,p.Z)(t.hours):0,o=t.minutes?(0,p.Z)(t.minutes):0,c=t.seconds?(0,p.Z)(t.seconds):0,u=j(e,n+12*r),l=g(u,i+7*a),d=o+60*s,f=c+60*d,v=1e3*f,h=new Date(l.getTime()-v);return h}function D(e){(0,y.Z)(1,arguments);var t=(0,m.Z)(e),r=t.getTime();return r}function S(e){return(0,y.Z)(1,arguments),Math.floor(D(e)/1e3)}var k=r(89270),N=r(34440),C=r(96003),P=r(85533),O=r(2766);function _(e){var t=e.data,r=[{title:"User Agent",dataIndex:"userAgent",key:"userAgent",render:function(e){return(0,O.AB)(e)}},{title:"Location",dataIndex:"geo",key:"geo",render:function(e){return e?"".concat(e.regionName,", ").concat(e.countryCode):"-"}},{title:"Watch Time",dataIndex:"firstSeen",key:"firstSeen",defaultSortOrder:"ascend",render:function(e){return(0,P.Z)(new Date(e))},sorter:function(e,t){return new Date(e.firstSeen).getTime()-new Date(t.firstSeen).getTime()},sortDirections:["descend","ascend"]}];return(0,i.jsx)(C.Z,{pagination:{hideOnSinglePage:!0},className:"table-container",columns:r,dataSource:t,size:"small",rowKey:"id"})}var T=r(35159),E=r(58827);function I(e,t,r,n,a,i,s){try{var o=e[i](s),c=o.value}catch(u){return void r(u)}o.done?t(c):Promise.resolve(c).then(n,a)}function L(){var e,t=(0,s.useContext)(T.aC)||{},r=t.online,n=t.broadcaster,p=t.viewerCount,m=t.overallPeakViewerCount,y=t.sessionPeakViewerCount;n&&n.time&&(e=new Date(n.time));var Z=[{title:"Current stream",start:e},{title:"Last 12 hours",start:b(new Date,{hours:12})},{title:"Last 24 hours",start:b(new Date,{hours:24})},{title:"Last 7 days",start:b(new Date,{days:7})},{title:"Last 30 days",start:b(new Date,{days:30})},{title:"Last 3 months",start:b(new Date,{months:3})},{title:"Last 6 months",start:b(new Date,{months:6})}],g=(0,s.useState)(!0),w=g[0],j=g[1],D=(0,s.useState)([]),C=D[0],P=D[1],O=(0,s.useState)([]),L=O[0],M=O[1],A=(0,s.useState)(Z[1]),F=A[0],V=A[1],z=function(){var e,t=(e=a().mark((function e(){var t,r,n;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t="".concat(E.iV,"?windowStart=").concat(S(F.start)),e.next=4,(0,E.rQ)(t);case 4:r=e.sent,P(r),j(!1),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(0),console.log("==== error",e.t0);case 12:return e.prev=12,e.next=15,(0,E.rQ)(E.a_);case 15:n=e.sent,M(n),e.next=22;break;case 19:e.prev=19,e.t1=e.catch(12),console.log("==== error",e.t1);case 22:case"end":return e.stop()}}),e,null,[[0,9],[12,19]])})),function(){var t=this,r=arguments;return new Promise((function(n,a){var i=e.apply(t,r);function s(e){I(i,n,a,s,o,"next",e)}function o(e){I(i,n,a,s,o,"throw",e)}s(void 0)}))});return function(){return t.apply(this,arguments)}}();(0,s.useEffect)((function(){var e=null;return z(),r?(e=setInterval(z,6e4),function(){clearInterval(e)}):function(){return[]}}),[r,F]);var B=function(e){var t=e.key;V(Z[t])},Q=(0,i.jsxs)(o.Z,{children:[r&&e&&(0,i.jsx)(o.Z.Item,{onClick:B,children:Z[0].title},"0"),Z.slice(1).map((function(e,t){return(0,i.jsx)(o.Z.Item,{onClick:B,children:e.title},t+1)}))]});return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(c.Z.Title,{children:"Viewer Info"}),(0,i.jsx)("br",{}),(0,i.jsxs)(u.Z,{gutter:[16,16],justify:"space-around",children:[r&&(0,i.jsx)(l.Z,{span:8,md:8,children:(0,i.jsx)(N.Z,{title:"Current viewers",value:p.toString(),prefix:(0,i.jsx)(h.Z,{})})}),(0,i.jsx)(l.Z,{md:r?8:12,children:(0,i.jsx)(N.Z,{title:r?"Max viewers this stream":"Max viewers last stream",value:y.toString(),prefix:(0,i.jsx)(h.Z,{})})}),(0,i.jsx)(l.Z,{md:r?8:12,children:(0,i.jsx)(N.Z,{title:"All-time max viewers",value:m.toString(),prefix:(0,i.jsx)(h.Z,{})})})]}),!C.length&&(0,i.jsx)(d.Z,{style:{marginTop:"10px"},banner:!0,message:"Please wait",description:"No viewer data has been collected yet.",type:"info"}),(0,i.jsxs)(f.Z,{spinning:!C.length||w,children:[(0,i.jsx)(v.Z,{overlay:Q,trigger:["click"],children:(0,i.jsxs)("button",{type:"button",style:{float:"right",background:"transparent",border:"unset"},children:[F.title," ",(0,i.jsx)(x.Z,{})]})}),C.length>0&&(0,i.jsx)(k.Z,{title:"Viewers",data:C,color:"#2087E2",unit:""}),(0,i.jsx)(_,{data:L})]})]})}}},function(e){e.O(0,[570,3,91,879,751,763,533,80,910,774,888,179],(function(){return t=31709,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
+(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[194],{87547:function(e,t,r){"use strict";r.d(t,{Z:function(){return c}});var n=r(1413),a=r(67294),i={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"}}]},name:"user",theme:"outlined"},s=r(42135),o=function(e,t){return a.createElement(s.Z,(0,n.Z)((0,n.Z)({},e),{},{ref:t,icon:i}))};o.displayName="UserOutlined";var c=a.forwardRef(o)},31709:function(e,t,r){(window.__NEXT_P=window.__NEXT_P||[]).push(["/viewer-info",function(){return r(51237)}])},89270:function(e,t,r){"use strict";r.d(t,{Z:function(){return l}});var n=r(85893),a=r(31877),i=r(92616),s=r.n(i),o=r(58091),c=r(60727);function u(e){var t={};return e.forEach((function(e){var r=new Date(e.time),n=(0,o.Z)(r,"H:mma");t[n]=e.value})),t}function l(e){var t=e.data,r=e.title,a=e.color,i=e.unit,s=e.dataCollections,o=e.yFlipped,l=e.yLogarithmic,d=[];t&&t.length>0&&d.push({name:r,color:a,data:u(t)}),s.forEach((function(e){d.push({name:e.name,data:u(e.data),color:e.color,dataset:e.options})}));var f={scales:{y:{reverse:!1,type:"linear"},x:{type:"time"}}};return f.scales.y.reverse=o,f.scales.y.type=l?"logarithmic":"linear",(0,n.jsx)("div",{className:"line-chart-container",children:(0,n.jsx)(c.wW,{xtitle:"Time",ytitle:r,suffix:i,legend:"bottom",color:a,data:d,download:r,library:f})})}s().use(a.Z),l.defaultProps={dataCollections:[],data:[],title:"",yFlipped:!1,yLogarithmic:!1}},34440:function(e,t,r){"use strict";r.d(t,{Z:function(){return h}});var n=r(85893),a=r(84485),i=r(97910),s=r(74763),o=r(97751);function c(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e){for(var t=1;t90?"red":o,u=(0,n.jsxs)("div",{children:[a,(0,n.jsx)("div",{children:(0,n.jsx)(l,{type:"secondary",children:t})}),(0,n.jsx)("div",{children:(0,n.jsxs)(l,{type:"secondary",children:[r,s||"%"]})})]});return(0,n.jsx)(i.Z,{type:"dashboard",percent:r,width:120,strokeColor:{"0%":o,"90%":c},format:function(){return u}})}function v(e){var t=e.title,r=e.value,a=e.prefix,i=e.formatter;return(0,n.jsx)(s.Z,{title:t,value:r,prefix:a,formatter:i})}function h(e){var t=e.progress?f:v,r=e.centered?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,n.jsx)(o.Z,{type:"inner",children:(0,n.jsx)("div",{style:r,children:(0,n.jsx)(t,u({},e))})})}f.defaultProps=d,v.defaultProps=d,h.defaultProps=d},51237:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return L}});var n=r(34051),a=r.n(n),i=r(85893),s=r(67294),o=r(61709),c=r(84485),u=r(25968),l=r(6226),d=r(14670),f=r(11382),v=r(38504),h=r(87547),x=r(80882),p=r(83946),m=r(19013),y=r(13882);function Z(e,t){(0,y.Z)(2,arguments);var r=(0,m.Z)(e),n=(0,p.Z)(t);return isNaN(n)?new Date(NaN):n?(r.setDate(r.getDate()+n),r):r}function g(e,t){(0,y.Z)(2,arguments);var r=(0,p.Z)(t);return Z(e,-r)}function w(e,t){(0,y.Z)(2,arguments);var r=(0,m.Z)(e),n=(0,p.Z)(t);if(isNaN(n))return new Date(NaN);if(!n)return r;var a=r.getDate(),i=new Date(r.getTime());i.setMonth(r.getMonth()+n+1,0);var s=i.getDate();return a>=s?i:(r.setFullYear(i.getFullYear(),i.getMonth(),a),r)}function j(e,t){(0,y.Z)(2,arguments);var r=(0,p.Z)(t);return w(e,-r)}function b(e,t){if((0,y.Z)(2,arguments),!t||"object"!==typeof t)return new Date(NaN);var r=t.years?(0,p.Z)(t.years):0,n=t.months?(0,p.Z)(t.months):0,a=t.weeks?(0,p.Z)(t.weeks):0,i=t.days?(0,p.Z)(t.days):0,s=t.hours?(0,p.Z)(t.hours):0,o=t.minutes?(0,p.Z)(t.minutes):0,c=t.seconds?(0,p.Z)(t.seconds):0,u=j(e,n+12*r),l=g(u,i+7*a),d=o+60*s,f=c+60*d,v=1e3*f,h=new Date(l.getTime()-v);return h}function D(e){(0,y.Z)(1,arguments);var t=(0,m.Z)(e),r=t.getTime();return r}function S(e){return(0,y.Z)(1,arguments),Math.floor(D(e)/1e3)}var k=r(89270),N=r(34440),C=r(96003),P=r(85533),O=r(2766);function _(e){var t=e.data,r=[{title:"User Agent",dataIndex:"userAgent",key:"userAgent",render:function(e){return(0,O.AB)(e)}},{title:"Location",dataIndex:"geo",key:"geo",render:function(e){return e?"".concat(e.regionName,", ").concat(e.countryCode):"-"}},{title:"Watch Time",dataIndex:"firstSeen",key:"firstSeen",defaultSortOrder:"ascend",render:function(e){return(0,P.Z)(new Date(e))},sorter:function(e,t){return new Date(e.firstSeen).getTime()-new Date(t.firstSeen).getTime()},sortDirections:["descend","ascend"]}];return(0,i.jsx)(C.Z,{pagination:{hideOnSinglePage:!0},className:"table-container",columns:r,dataSource:t,size:"small",rowKey:"id"})}var T=r(35159),E=r(58827);function I(e,t,r,n,a,i,s){try{var o=e[i](s),c=o.value}catch(u){return void r(u)}o.done?t(c):Promise.resolve(c).then(n,a)}function L(){var e,t=(0,s.useContext)(T.aC)||{},r=t.online,n=t.broadcaster,p=t.viewerCount,m=t.overallPeakViewerCount,y=t.sessionPeakViewerCount;n&&n.time&&(e=new Date(n.time));var Z=[{title:"Current stream",start:e},{title:"Last 12 hours",start:b(new Date,{hours:12})},{title:"Last 24 hours",start:b(new Date,{hours:24})},{title:"Last 7 days",start:b(new Date,{days:7})},{title:"Last 30 days",start:b(new Date,{days:30})},{title:"Last 3 months",start:b(new Date,{months:3})},{title:"Last 6 months",start:b(new Date,{months:6})}],g=(0,s.useState)(!0),w=g[0],j=g[1],D=(0,s.useState)([]),C=D[0],P=D[1],O=(0,s.useState)([]),L=O[0],M=O[1],A=(0,s.useState)(Z[1]),F=A[0],V=A[1],z=function(){var e,t=(e=a().mark((function e(){var t,r,n;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t="".concat(E.iV,"?windowStart=").concat(S(F.start)),e.next=4,(0,E.rQ)(t);case 4:r=e.sent,P(r),j(!1),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(0),console.log("==== error",e.t0);case 12:return e.prev=12,e.next=15,(0,E.rQ)(E.a_);case 15:n=e.sent,M(n),e.next=22;break;case 19:e.prev=19,e.t1=e.catch(12),console.log("==== error",e.t1);case 22:case"end":return e.stop()}}),e,null,[[0,9],[12,19]])})),function(){var t=this,r=arguments;return new Promise((function(n,a){var i=e.apply(t,r);function s(e){I(i,n,a,s,o,"next",e)}function o(e){I(i,n,a,s,o,"throw",e)}s(void 0)}))});return function(){return t.apply(this,arguments)}}();(0,s.useEffect)((function(){var e=null;return z(),r?(e=setInterval(z,6e4),function(){clearInterval(e)}):function(){return[]}}),[r,F]);var B=function(e){var t=e.key;V(Z[t])},Q=(0,i.jsxs)(o.Z,{children:[r&&e&&(0,i.jsx)(o.Z.Item,{onClick:B,children:Z[0].title},"0"),Z.slice(1).map((function(e,t){return(0,i.jsx)(o.Z.Item,{onClick:B,children:e.title},t+1)}))]});return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(c.Z.Title,{children:"Viewer Info"}),(0,i.jsx)("br",{}),(0,i.jsxs)(u.Z,{gutter:[16,16],justify:"space-around",children:[r&&(0,i.jsx)(l.Z,{span:8,md:8,children:(0,i.jsx)(N.Z,{title:"Current viewers",value:p.toString(),prefix:(0,i.jsx)(h.Z,{})})}),(0,i.jsx)(l.Z,{md:r?8:12,children:(0,i.jsx)(N.Z,{title:r?"Max viewers this stream":"Max viewers last stream",value:y.toString(),prefix:(0,i.jsx)(h.Z,{})})}),(0,i.jsx)(l.Z,{md:r?8:12,children:(0,i.jsx)(N.Z,{title:"All-time max viewers",value:m.toString(),prefix:(0,i.jsx)(h.Z,{})})})]}),!C.length&&(0,i.jsx)(d.Z,{style:{marginTop:"10px"},banner:!0,message:"Please wait",description:"No viewer data has been collected yet.",type:"info"}),(0,i.jsxs)(f.Z,{spinning:!C.length||w,children:[(0,i.jsx)(v.Z,{overlay:Q,trigger:["click"],children:(0,i.jsxs)("button",{type:"button",style:{float:"right",background:"transparent",border:"unset"},children:[F.title," ",(0,i.jsx)(x.Z,{})]})}),C.length>0&&(0,i.jsx)(k.Z,{title:"Viewers",data:C,color:"#2087E2",unit:""}),(0,i.jsx)(_,{data:L})]})]})}}},function(e){e.O(0,[570,741,3,91,879,751,763,533,80,910,774,888,179],(function(){return t=31709,e(e.s=t);var t}));var t=e.O();_N_E=t}]);
\ No newline at end of file
diff --git a/static/admin/_next/static/chunks/pages/webhooks-ee32c13358a57117.js b/static/admin/_next/static/chunks/pages/webhooks-ba06849b846329a3.js
similarity index 99%
rename from static/admin/_next/static/chunks/pages/webhooks-ee32c13358a57117.js
rename to static/admin/_next/static/chunks/pages/webhooks-ba06849b846329a3.js
index e3b77460b..8263ae2fa 100644
--- a/static/admin/_next/static/chunks/pages/webhooks-ee32c13358a57117.js
+++ b/static/admin/_next/static/chunks/pages/webhooks-ba06849b846329a3.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[462],{48689:function(e,t,n){"use strict";n.d(t,{Z:function(){return s}});var r=n(1413),o=n(67294),c={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"},a=n(42135),i=function(e,t){return o.createElement(a.Z,(0,r.Z)((0,r.Z)({},e),{},{ref:t,icon:c}))};i.displayName="DeleteOutlined";var s=o.forwardRef(i)},6226:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var r=n(4942),o=n(87462),c=n(71002),a=n(67294),i=n(94184),s=n.n(i),l=n(99134),u=n(59844),f=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0){var R=m[0]/2;A.paddingLeft=R,A.paddingRight=R}if(m&&m[1]>0&&!y){var I=m[1]/2;A.paddingTop=I,A.paddingBottom=I}return E&&(A.flex=function(e){return"number"===typeof e?"".concat(e," ").concat(e," auto"):/^\d+(\.\d+)?(px|em|rem|%)$/.test(e)?"0 0 ".concat(e):e}(E),!1!==b||A.minWidth||(A.minWidth=0)),a.createElement("div",(0,o.Z)({},N,{style:(0,o.Z)((0,o.Z)({},A),P),className:T,ref:t}),C)}));d.displayName="Col";var h=d},99134:function(e,t,n){"use strict";var r=(0,n(67294).createContext)({});t.Z=r},25968:function(e,t,n){"use strict";n.d(t,{Z:function(){return b}});var r=n(87462),o=n(4942),c=n(71002),a=n(97685),i=n(67294),s=n(94184),l=n.n(s),u=n(59844),f=n(99134),p=n(93355),d=n(24308),h=n(98082),v=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0?R[0]/-2:void 0,G=R[1]>0?R[1]/-2:void 0;if(M&&(W.marginLeft=M,W.marginRight=M),_){var H=(0,a.Z)(R,2);W.rowGap=H[1]}else G&&(W.marginTop=G,W.marginBottom=G);var B=(0,a.Z)(R,2),D=B[0],U=B[1],z=i.useMemo((function(){return{gutter:[D,U],wrap:w,supportFlexGap:_}}),[D,U,w,_]);return i.createElement(f.Z.Provider,{value:z},i.createElement("div",(0,r.Z)({},j,{className:I,style:(0,r.Z)((0,r.Z)({},W),y),ref:t}),x))})));m.displayName="Row";var b=m},20550:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var r=n(4942),o=n(87462),c=n(97685),a=n(67294),i=n(94184),s=n.n(i),l=n(98423),u=n(97937),f=n(59844),p=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0){var R=m[0]/2;A.paddingLeft=R,A.paddingRight=R}if(m&&m[1]>0&&!y){var I=m[1]/2;A.paddingTop=I,A.paddingBottom=I}return E&&(A.flex=function(e){return"number"===typeof e?"".concat(e," ").concat(e," auto"):/^\d+(\.\d+)?(px|em|rem|%)$/.test(e)?"0 0 ".concat(e):e}(E),!1!==b||A.minWidth||(A.minWidth=0)),a.createElement("div",(0,o.Z)({},N,{style:(0,o.Z)((0,o.Z)({},A),P),className:T,ref:t}),C)}));d.displayName="Col";var h=d},99134:function(e,t,n){"use strict";var r=(0,n(67294).createContext)({});t.Z=r},25968:function(e,t,n){"use strict";n.d(t,{Z:function(){return b}});var r=n(87462),o=n(4942),c=n(71002),a=n(97685),i=n(67294),s=n(94184),l=n.n(s),u=n(59844),f=n(99134),p=n(93355),d=n(24308),h=n(98082),v=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o0?R[0]/-2:void 0,G=R[1]>0?R[1]/-2:void 0;if(M&&(W.marginLeft=M,W.marginRight=M),_){var H=(0,a.Z)(R,2);W.rowGap=H[1]}else G&&(W.marginTop=G,W.marginBottom=G);var B=(0,a.Z)(R,2),D=B[0],U=B[1],z=i.useMemo((function(){return{gutter:[D,U],wrap:w,supportFlexGap:_}}),[D,U,w,_]);return i.createElement(f.Z.Provider,{value:z},i.createElement("div",(0,r.Z)({},j,{className:I,style:(0,r.Z)((0,r.Z)({},W),y),ref:t}),x))})));m.displayName="Row";var b=m},20550:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var r=n(4942),o=n(87462),c=n(97685),a=n(67294),i=n(94184),s=n.n(i),l=n(98423),u=n(97937),f=n(59844),p=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);oOwncast Admin 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.
Create Access Token
\ No newline at end of file
+Owncast Admin 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.
Create Access Token
\ No newline at end of file
diff --git a/static/admin/actions/index.html b/static/admin/actions/index.html
index 4ee38fe7c..29dbd1a8f 100644
--- a/static/admin/actions/index.html
+++ b/static/admin/actions/index.html
@@ -1 +1 @@
-Owncast Admin 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.
Name Description URL Icon Color Opens
Create New Action
\ No newline at end of file
+Owncast Admin 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.
Name Description URL Icon Color Opens
Create New Action
\ No newline at end of file
diff --git a/static/admin/chat/messages/index.html b/static/admin/chat/messages/index.html
index 19de291a1..553ee429a 100644
--- a/static/admin/chat/messages/index.html
+++ b/static/admin/chat/messages/index.html
@@ -1 +1 @@
-Owncast Admin Chat Messages Manage the messages from viewers that show up on your stream.
Check multiple messages to change their visibility to: Show Hide
\ No newline at end of file
+Owncast Admin Chat Messages Manage the messages from viewers that show up on your stream.
Check multiple messages to change their visibility to: Show Hide
\ No newline at end of file
diff --git a/static/admin/chat/users/index.html b/static/admin/chat/users/index.html
index ddeb165b1..037681a26 100644
--- a/static/admin/chat/users/index.html
+++ b/static/admin/chat/users/index.html
@@ -1 +1 @@
-Owncast Admin When a stream is active and chat is enabled, connected chat clients will be displayed here.
\ No newline at end of file
+Owncast Admin 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/admin/config-chat/index.html b/static/admin/config-chat/index.html
index 9cea476b9..5485b3422 100644
--- a/static/admin/config-chat/index.html
+++ b/static/admin/config-chat/index.html
@@ -1 +1 @@
-Owncast Admin
\ No newline at end of file
+Owncast Admin
\ No newline at end of file
diff --git a/static/admin/config-federation/index.html b/static/admin/config-federation/index.html
index 2ed2d98d5..dab8f729f 100644
--- a/static/admin/config-federation/index.html
+++ b/static/admin/config-federation/index.html
@@ -1 +1 @@
-Owncast Admin
\ No newline at end of file
+Owncast Admin
\ No newline at end of file
diff --git a/static/admin/config-notify/index.html b/static/admin/config-notify/index.html
index 2167603d6..7ec8f8d79 100644
--- a/static/admin/config-notify/index.html
+++ b/static/admin/config-notify/index.html
@@ -1 +1 @@
-Owncast Admin Notifications Let your viewers know when you go live by supporting some of the following notification channels.
You must set your server URL before you can enable this feature.
\ No newline at end of file
+Owncast Admin Notifications Let your viewers know when you go live by supporting some of the following notification channels.
You must set your server URL before you can enable this feature.
\ No newline at end of file
diff --git a/static/admin/config-public-details/index.html b/static/admin/config-public-details/index.html
index 564382755..70cf1b31d 100644
--- a/static/admin/config-public-details/index.html
+++ b/static/admin/config-public-details/index.html
@@ -1 +1 @@
-Owncast Admin General Settings 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 .
Customize your page styling with CSS Customize the look and feel of your Owncast instance by overriding the CSS styles of various components on the page. Refer to the CSS & Components guide .
Please input plain CSS text, as this will be directly injected onto your page during load.
\ No newline at end of file
+Owncast Admin General Settings 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 .
Customize your page styling with CSS Customize the look and feel of your Owncast instance by overriding the CSS styles of various components on the page. Refer to the CSS & Components guide .
Please input plain CSS text, as this will be directly injected onto your page during load.
\ No newline at end of file
diff --git a/static/admin/config-server-details/index.html b/static/admin/config-server-details/index.html
index f52515760..57dc2d68f 100644
--- a/static/admin/config-server-details/index.html
+++ b/static/admin/config-server-details/index.html
@@ -1 +1 @@
-Owncast Admin
\ No newline at end of file
+Owncast Admin
\ No newline at end of file
diff --git a/static/admin/config-social-items/index.html b/static/admin/config-social-items/index.html
index c70fb28a4..5a5bf5856 100644
--- a/static/admin/config-social-items/index.html
+++ b/static/admin/config-social-items/index.html
@@ -1 +1 @@
-Owncast Admin Social Items Your Social Handles Add all your social media handles and links to your other profiles here.
Add a new social link
\ No newline at end of file
+Owncast Admin Social Items Your Social Handles Add all your social media handles and links to your other profiles here.
Add a new social link
\ No newline at end of file
diff --git a/static/admin/config-storage/index.html b/static/admin/config-storage/index.html
index 42ce0ae39..f7f871b60 100644
--- a/static/admin/config-storage/index.html
+++ b/static/admin/config-storage/index.html
@@ -1 +1 @@
-Owncast Admin Storage 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 Storage 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/admin/config-video/index.html b/static/admin/config-video/index.html
index e7ebadcc9..b3bc28bd7 100644
--- a/static/admin/config-video/index.html
+++ b/static/admin/config-video/index.html
@@ -1 +1 @@
-Owncast Admin 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.
\ No newline at end of file
+Owncast Admin 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.
\ No newline at end of file
diff --git a/static/admin/federation/actions/index.html b/static/admin/federation/actions/index.html
index abd78cd62..d4dea9fa2 100644
--- a/static/admin/federation/actions/index.html
+++ b/static/admin/federation/actions/index.html
@@ -1 +1 @@
-Owncast Admin 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.
\ No newline at end of file
+Owncast Admin 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.
\ No newline at end of file
diff --git a/static/admin/federation/followers/index.html b/static/admin/federation/followers/index.html
index 2143d8c7a..a9cc6e2f2 100644
--- a/static/admin/federation/followers/index.html
+++ b/static/admin/federation/followers/index.html
@@ -1 +1 @@
-Owncast Admin The following accounts get notified when you go live or send a post.
\ No newline at end of file
+Owncast Admin The following accounts get notified when you go live or send a post.
\ No newline at end of file
diff --git a/static/admin/hardware-info/index.html b/static/admin/hardware-info/index.html
index 23cd6d0ce..47c43500d 100644
--- a/static/admin/hardware-info/index.html
+++ b/static/admin/hardware-info/index.html
@@ -1,4 +1,4 @@
-Owncast Admin Hardware Info Owncast Admin
\ No newline at end of file
+ a 47,47 0 1 1 0,94" stroke="" stroke-linecap="round" stroke-width="6" opacity="0" fill-opacity="0" style="stroke:#52C41A;stroke-dasharray:0px 295.3097094374406px;stroke-dashoffset:-37.5px;transition:stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s, opacity .3s ease 0s">