Files
mediacms/static/video_js/video-js.js
T

850 lines
1.2 MiB
JavaScript
Raw Normal View History

(function(){"use strict";var Of=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Gc(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}function Db(s){if(s.__esModule)return s;var e=s.default;if(typeof e=="function"){var i=function r(){return this instanceof r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};i.prototype=e.prototype}else i={};return Object.defineProperty(i,"__esModule",{value:!0}),Object.keys(s).forEach(function(r){var o=Object.getOwnPropertyDescriptor(s,r);Object.defineProperty(i,r,o.get?o:{enumerable:!0,get:function(){return s[r]}})}),i}var Cb={exports:{}},Xc={},Ab={exports:{}},Wc={exports:{}};/**
2025-09-22 23:18:02 +03:00
* @license React
* react.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/Wc.exports;var wb;function IA(){return wb||(wb=1,function(s,e){(function(){function i(A,Q){Object.defineProperty(u.prototype,A,{get:function(){console.warn("%s(...) is deprecated in plain JavaScript React classes. %s",Q[0],Q[1])}})}function r(A){return A===null||typeof A!="object"?null:(A=vt&&A[vt]||A["@@iterator"],typeof A=="function"?A:null)}function o(A,Q){A=(A=A.constructor)&&(A.displayName||A.name)||"ReactClass";var Te=A+"."+Q;At[Te]||(console.error("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",Q,A),At[Te]=!0)}function u(A,Q,Te){this.props=A,this.context=Q,this.refs=jt,this.updater=Te||Je}function c(){}function h(A,Q,Te){this.props=A,this.context=Q,this.refs=jt,this.updater=Te||Je}function m(A){return""+A}function v(A){try{m(A);var Q=!1}catch{Q=!0}if(Q){Q=console;var Te=Q.error,De=typeof Symbol=="function"&&Symbol.toStringTag&&A[Symbol.toStringTag]||A.constructor.name||"Object";return Te.call(Q,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",De),m(A)}}function S(A){if(A==null)return null;if(typeof A=="function")return A.$$typeof===Vt?null:A.displayName||A.name||null;if(typeof A=="string")return A;switch(A){case re:return"Fragment";case be:return"Profiler";case Oe:return"StrictMode";case Me:return"Suspense";case Gt:return"SuspenseList";case Ae:return"Activity"}if(typeof A=="object")switch(typeof A.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),A.$$typeof){case Pe:return"Portal";case He:return(A.displayName||"Context")+".Provider";case Fe:return(A._context.displayName||"Context")+".Consumer";case Qe:var Q=A.render;return A=A.displayName,A||(A=Q.displayName||Q.name||"",A=A!==""?"ForwardRef("+A+")":"ForwardRef"),A;case ft:return Q=A.displayName||null,Q!==null?Q:S(A.type)||"Memo";case Ce:Q=A._payload,A=A._init;try{return S(A(Q))}catch{}}return null}function x(A){if(A===re)return"<>";if(typeof A=="object"&&A!==null&&A.$$typeof===Ce)return"<...>";try{var Q=S(A);return Q?"<"+Q+">":"<...>"}catch{return"<...>"}}function D(){var A=_e.A;return A===null?null:A.getOwner()}function k(){return Error("react-stack-top-frame")}function O(A){if(Zi.call(A,"key")){var Q=Object.getOwnPropertyDescriptor(A,"key").get;if(Q&&Q.isReactWarning)return!1}return A.key!==void 0}function C(A,Q){function Te(){gi||(gi=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",Q))}Te.isReactWarning=!0,Object.defineProperty(A,"key",{get:Te,configurable:!0})}function U(){var A=S(this.type);return Wt[A]||(Wt[A]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),A=this.props.ref,A!==void 0?A:null}function P(A,Q,Te,De,ze,tt,Ge,dt){return Te=tt.ref,A={$$typeof:ke,type:A,key:Q,props:tt,_owner:ze},(Te!==void 0?Te:null)!==null?Object.defineProperty(A,"ref",{enumerable:!1,get:U}):Object.defineProperty(A,"ref",{enumerable:!1,value:null}),A._store={},Object.defineProperty(A._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(A,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(A,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Ge}),Object.defineProperty(A,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:dt}),Object.freeze&&(Object.freeze(A.props),Object.freeze(A)),A}function Y(A,Q){return Q=P(A.type,Q,void 0,void 0,A._owner,A.props,A._debugStack,A._debugTask),A._store&&(Q._store.validated=A._store.validated),Q}function $(A){return typeof A=="object"&&A!==null&&A.$$typeof===ke}function G(A){var Q={"=":"=0
2025-09-22 23:18:02 +03:00
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))
Did you accidentally put curly braces around the import?`,Q),"default"in Q||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
2025-09-22 23:18:02 +03:00
Your code should look like:
const MyComponent = lazy(() => import('./MyComponent'))`,Q),Q.default;throw A._result}function ue(){var A=_e.H;return A===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
2025-09-22 23:18:02 +03:00
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),A}function pe(){}function de(A){if(mt===null)try{var Q=("require"+Math.random()).slice(0,7);mt=(s&&s[Q]).call(s,"timers").setImmediate}catch{mt=function(De){Ua===!1&&(Ua=!0,typeof MessageChannel>"u"&&console.error("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var ze=new MessageChannel;ze.port1.onmessage=De,ze.port2.postMessage(void 0)}}return mt(A)}function Ee(A){return 1<A.length&&typeof AggregateError=="function"?new AggregateError(A):A[0]}function $e(A,Q){Q!==nr-1&&console.error("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),nr=Q}function ee(A,Q,Te){var De=_e.actQueue;if(De!==null)if(De.length!==0)try{ve(De),de(function(){return ee(A,Q,Te)});return}catch(ze){_e.thrownErrors.push(ze)}else _e.actQueue=null;0<_e.thrownErrors.length?(De=Ee(_e.thrownErrors),_e.thrownErrors.length=0,Te(De)):Q(A)}function ve(A){if(!qn){qn=!0;var Q=0;try{for(;Q<A.length;Q++){var Te=A[Q];do{_e.didUsePromise=!1;var De=Te(!1);if(De!==null){if(_e.didUsePromise){A[Q]=Te,A.splice(0,Q);return}Te=De}else break}while(1)}A.length=0}catch(ze){A.splice(0,Q+1),_e.thrownErrors.push(ze)}finally{qn=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var ke=Symbol.for("react.transitional.element"),Pe=Symbol.for("react.portal"),re=Symbol.for("react.fragment"),Oe=Symbol.for("react.strict_mode"),be=Symbol.for("react.profiler"),Fe=Symbol.for("react.consumer"),He=Symbol.for("react.context"),Qe=Symbol.for("react.forward_ref"),Me=Symbol.for("react.suspense"),Gt=Symbol.for("react.suspense_list"),ft=Symbol.for("react.memo"),Ce=Symbol.for("react.lazy"),Ae=Symbol.for("react.activity"),vt=Symbol.iterator,At={},Je={isMounted:function(){return!1},enqueueForceUpdate:function(A){o(A,"forceUpdate")},enqueueReplaceState:function(A){o(A,"replaceState")},enqueueSetState:function(A){o(A,"setState")}},pt=Object.assign,jt={};Object.freeze(jt),u.prototype.isReactComponent={},u.prototype.setState=function(A,Q){if(typeof A!="object"&&typeof A!="function"&&A!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,A,Q,"setState")},u.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};var nt={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},Ci;for(Ci in nt)nt.hasOwnProperty(Ci)&&i(Ci,nt[Ci]);c.prototype=u.prototype,nt=h.prototype=new c,nt.constructor=h,pt(nt,u.prototype),nt.isPureReactComponent=!0;var Xt=Array.isArray,Vt=Symbol.for("react.client.reference"),_e={H:null,A:null,T:null,S:null,V:null,actQueue:null,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},Zi=Object.prototype.hasOwnProperty,qt=console.createTask?console.createTask:function(){return null};nt={"react-stack-bottom-frame":function(A){return A()}};var gi,Ai,Wt={},wi=nt["react-stack-bottom-frame"].bind(nt,k)(),ir=qt(x(k)),Hr=!1,ja=/\/+/g,Vr=typeof reportError=="function"?reportError:function(A){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var Q=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof A=="object"&&A!==null&&typeof A.message=="string"?String(A.message):String(A),error:A});if(!window.dispatchEvent(Q))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",A);return}console.error(A)},Ua=!1,mt=null,nr=0,J
2025-09-22 23:18:02 +03:00
* @license React
* react-jsx-runtime.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Nb;function LA(){return Nb||(Nb=1,function(){function s(re){if(re==null)return null;if(typeof re=="function")return re.$$typeof===ge?null:re.displayName||re.name||null;if(typeof re=="string")return re;switch(re){case C:return"Fragment";case P:return"Profiler";case U:return"StrictMode";case W:return"Suspense";case le:return"SuspenseList";case K:return"Activity"}if(typeof re=="object")switch(typeof re.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),re.$$typeof){case O:return"Portal";case $:return(re.displayName||"Context")+".Provider";case Y:return(re._context.displayName||"Context")+".Consumer";case G:var Oe=re.render;return re=re.displayName,re||(re=Oe.displayName||Oe.name||"",re=re!==""?"ForwardRef("+re+")":"ForwardRef"),re;case Z:return Oe=re.displayName||null,Oe!==null?Oe:s(re.type)||"Memo";case fe:Oe=re._payload,re=re._init;try{return s(re(Oe))}catch{}}return null}function e(re){return""+re}function i(re){try{e(re);var Oe=!1}catch{Oe=!0}if(Oe){Oe=console;var be=Oe.error,Fe=typeof Symbol=="function"&&Symbol.toStringTag&&re[Symbol.toStringTag]||re.constructor.name||"Object";return be.call(Oe,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",Fe),e(re)}}function r(re){if(re===C)return"<>";if(typeof re=="object"&&re!==null&&re.$$typeof===fe)return"<...>";try{var Oe=s(re);return Oe?"<"+Oe+">":"<...>"}catch{return"<...>"}}function o(){var re=ue.A;return re===null?null:re.getOwner()}function u(){return Error("react-stack-top-frame")}function c(re){if(pe.call(re,"key")){var Oe=Object.getOwnPropertyDescriptor(re,"key").get;if(Oe&&Oe.isReactWarning)return!1}return re.key!==void 0}function h(re,Oe){function be(){$e||($e=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",Oe))}be.isReactWarning=!0,Object.defineProperty(re,"key",{get:be,configurable:!0})}function m(){var re=s(this.type);return ee[re]||(ee[re]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),re=this.props.ref,re!==void 0?re:null}function v(re,Oe,be,Fe,He,Qe,Me,Gt){return be=Qe.ref,re={$$typeof:k,type:re,key:Oe,props:Qe,_owner:He},(be!==void 0?be:null)!==null?Object.defineProperty(re,"ref",{enumerable:!1,get:m}):Object.defineProperty(re,"ref",{enumerable:!1,value:null}),re._store={},Object.defineProperty(re._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(re,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(re,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Me}),Object.defineProperty(re,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Gt}),Object.freeze&&(Object.freeze(re.props),Object.freeze(re)),re}function S(re,Oe,be,Fe,He,Qe,Me,Gt){var ft=Oe.children;if(ft!==void 0)if(Fe)if(de(ft)){for(Fe=0;Fe<ft.length;Fe++)x(ft[Fe]);Object.freeze&&Object.freeze(ft)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else x(ft);if(pe.call(Oe,"key")){ft=s(re);var Ce=Object.keys(Oe).filter(function(vt){return vt!=="key"});Fe=0<Ce.length?"{key: someKey, "+Ce.join(": ..., ")+": ...}":"{key: someKey}",Pe[ft+Fe]||(Ce=0<Ce.length?"{"+Ce.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
2025-09-22 23:18:02 +03:00
let props = %s;
<%s {...props} />
React keys must be passed directly to JSX without using spread:
let props = %s;
<%s key={someKey} {...props} />`,Fe,ft,Ce,ft),Pe[ft+Fe]=!0)}if(ft=null,be!==void 0&&(i(be),ft=""+be),c(Oe)&&(i(Oe.key),ft=""+Oe.key),"key"in Oe){be={};for(var Ae in Oe)Ae!=="key"&&(be[Ae]=Oe[Ae])}else be=Oe;return ft&&h(be,typeof re=="function"?re.displayName||re.name||"Unknown":re),v(re,ft,Qe,He,o(),be,Me,Gt)}function x(re){typeof re=="object"&&re!==null&&re.$$typeof===k&&re._store&&(re._store.validated=1)}var D=Si,k=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),C=Symbol.for("react.fragment"),U=Symbol.for("react.strict_mode"),P=Symbol.for("react.profiler"),Y=Symbol.for("react.consumer"),$=Symbol.for("react.context"),G=Symbol.for("react.forward_ref"),W=Symbol.for("react.suspense"),le=Symbol.for("react.suspense_list"),Z=Symbol.for("react.memo"),fe=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),ge=Symbol.for("react.client.reference"),ue=D.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,pe=Object.prototype.hasOwnProperty,de=Array.isArray,Ee=console.createTask?console.createTask:function(){return null};D={"react-stack-bottom-frame":function(re){return re()}};var $e,ee={},ve=D["react-stack-bottom-frame"].bind(D,u)(),ke=Ee(r(u)),Pe={};Xc.Fragment=C,Xc.jsx=function(re,Oe,be,Fe,He){var Qe=1e4>ue.recentlyCreatedOwnerStacks++;return S(re,Oe,be,!1,Fe,He,Qe?Error("react-stack-top-frame"):ve,Qe?Ee(r(re)):ke)},Xc.jsxs=function(re,Oe,be,Fe,He){var Qe=1e4>ue.recentlyCreatedOwnerStacks++;return S(re,Oe,be,!0,Fe,He,Qe?Error("react-stack-top-frame"):ve,Qe?Ee(r(re)):ke)}}()),Xc}Cb.exports=LA();var Bl=Cb.exports,kb={exports:{}},Rg={exports:{}},zg={};/**
2025-09-22 23:18:02 +03:00
* @license React
* scheduler.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Ob;function RA(){return Ob||(Ob=1,function(s){(function(){function e(){if(W=!1,K){var ee=s.unstable_now();pe=ee;var ve=!0;try{e:{$=!1,G&&(G=!1,Z(ge),ge=-1),Y=!0;var ke=P;try{t:{for(c(ee),U=r(k);U!==null&&!(U.expirationTime>ee&&m());){var Pe=U.callback;if(typeof Pe=="function"){U.callback=null,P=U.priorityLevel;var re=Pe(U.expirationTime<=ee);if(ee=s.unstable_now(),typeof re=="function"){U.callback=re,c(ee),ve=!0;break t}U===r(k)&&o(k),c(ee)}else o(k);U=r(k)}if(U!==null)ve=!0;else{var Oe=r(O);Oe!==null&&v(h,Oe.startTime-ee),ve=!1}}break e}finally{U=null,P=ke,Y=!1}ve=void 0}}finally{ve?de():K=!1}}}function i(ee,ve){var ke=ee.length;ee.push(ve);e:for(;0<ke;){var Pe=ke-1>>>1,re=ee[Pe];if(0<u(re,ve))ee[Pe]=ve,ee[ke]=re,ke=Pe;else break e}}function r(ee){return ee.length===0?null:ee[0]}function o(ee){if(ee.length===0)return null;var ve=ee[0],ke=ee.pop();if(ke!==ve){ee[0]=ke;e:for(var Pe=0,re=ee.length,Oe=re>>>1;Pe<Oe;){var be=2*(Pe+1)-1,Fe=ee[be],He=be+1,Qe=ee[He];if(0>u(Fe,ke))He<re&&0>u(Qe,Fe)?(ee[Pe]=Qe,ee[He]=ke,Pe=He):(ee[Pe]=Fe,ee[be]=ke,Pe=be);else if(He<re&&0>u(Qe,ke))ee[Pe]=Qe,ee[He]=ke,Pe=He;else break e}}return ve}function u(ee,ve){var ke=ee.sortIndex-ve.sortIndex;return ke!==0?ke:ee.id-ve.id}function c(ee){for(var ve=r(O);ve!==null;){if(ve.callback===null)o(O);else if(ve.startTime<=ee)o(O),ve.sortIndex=ve.expirationTime,i(k,ve);else break;ve=r(O)}}function h(ee){if(G=!1,c(ee),!$)if(r(k)!==null)$=!0,K||(K=!0,de());else{var ve=r(O);ve!==null&&v(h,ve.startTime-ee)}}function m(){return W?!0:!(s.unstable_now()-pe<ue)}function v(ee,ve){ge=le(function(){ee(s.unstable_now())},ve)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var S=performance;s.unstable_now=function(){return S.now()}}else{var x=Date,D=x.now();s.unstable_now=function(){return x.now()-D}}var k=[],O=[],C=1,U=null,P=3,Y=!1,$=!1,G=!1,W=!1,le=typeof setTimeout=="function"?setTimeout:null,Z=typeof clearTimeout=="function"?clearTimeout:null,fe=typeof setImmediate<"u"?setImmediate:null,K=!1,ge=-1,ue=5,pe=-1;if(typeof fe=="function")var de=function(){fe(e)};else if(typeof MessageChannel<"u"){var Ee=new MessageChannel,$e=Ee.port2;Ee.port1.onmessage=e,de=function(){$e.postMessage(null)}}else de=function(){le(e,0)};s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(ee){ee.callback=null},s.unstable_forceFrameRate=function(ee){0>ee||125<ee?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ue=0<ee?Math.floor(1e3/ee):5},s.unstable_getCurrentPriorityLevel=function(){return P},s.unstable_next=function(ee){switch(P){case 1:case 2:case 3:var ve=3;break;default:ve=P}var ke=P;P=ve;try{return ee()}finally{P=ke}},s.unstable_requestPaint=function(){W=!0},s.unstable_runWithPriority=function(ee,ve){switch(ee){case 1:case 2:case 3:case 4:case 5:break;default:ee=3}var ke=P;P=ee;try{return ve()}finally{P=ke}},s.unstable_scheduleCallback=function(ee,ve,ke){var Pe=s.unstable_now();switch(typeof ke=="object"&&ke!==null?(ke=ke.delay,ke=typeof ke=="number"&&0<ke?Pe+ke:Pe):ke=Pe,ee){case 1:var re=-1;break;case 2:re=250;break;case 5:re=1073741823;break;case 4:re=1e4;break;default:re=5e3}return re=ke+re,ee={id:C++,callback:ve,priorityLevel:ee,startTime:ke,expirationTime:re,sortIndex:-1},ke>Pe?(ee.sortIndex=ke,i(O,ee),r(k)===null&&ee===r(O)&&(G?(Z(ge),ge=-1):G=!0,v(h,ke-Pe))):(ee.sortIndex=re,i(k,ee),$||Y||($=!0,K||(K=!0,de()))),ee},s.unstable_shouldYield=m,s.unstable_wrapCallback=function(ee){var ve=P;return function(){var ke=P;P=ve;try{return ee.apply(this,arguments)}finally{P=ke}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_H
2025-09-22 23:18:02 +03:00
* @license React
* react-dom.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Lb;function jA(){return Lb||(Lb=1,function(){function s(){}function e(x){return""+x}function i(x,D,k){var O=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{e(O);var C=!1}catch{C=!0}return C&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol=="function"&&Symbol.toStringTag&&O[Symbol.toStringTag]||O.constructor.name||"Object"),e(O)),{$$typeof:v,key:O==null?null:""+O,children:x,containerInfo:D,implementation:k}}function r(x,D){if(x==="font")return"";if(typeof D=="string")return D==="use-credentials"?D:""}function o(x){return x===null?"`null`":x===void 0?"`undefined`":x===""?"an empty string":'something with type "'+typeof x+'"'}function u(x){return x===null?"`null`":x===void 0?"`undefined`":x===""?"an empty string":typeof x=="string"?JSON.stringify(x):typeof x=="number"?"`"+x+"`":'something with type "'+typeof x+'"'}function c(){var x=S.H;return x===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
2025-09-22 23:18:02 +03:00
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),x}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var h=Si,m={d:{f:s,r:function(){throw Error("Invalid form element. requestFormReset must be passed a form that was rendered by React.")},D:s,C:s,L:s,m:s,X:s,S:s,M:s},p:0,findDOMNode:null},v=Symbol.for("react.portal"),S=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map=="function"&&Map.prototype!=null&&typeof Map.prototype.forEach=="function"&&typeof Set=="function"&&Set.prototype!=null&&typeof Set.prototype.clear=="function"&&typeof Set.prototype.forEach=="function"||console.error("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),Qi.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=m,Qi.createPortal=function(x,D){var k=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!D||D.nodeType!==1&&D.nodeType!==9&&D.nodeType!==11)throw Error("Target container is not a DOM element.");return i(x,D,null,k)},Qi.flushSync=function(x){var D=S.T,k=m.p;try{if(S.T=null,m.p=2,x)return x()}finally{S.T=D,m.p=k,m.d.f()&&console.error("flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.")}},Qi.preconnect=function(x,D){typeof x=="string"&&x?D!=null&&typeof D!="object"?console.error("ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",u(D)):D!=null&&typeof D.crossOrigin!="string"&&console.error("ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",o(D.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",o(x)),typeof x=="string"&&(D?(D=D.crossOrigin,D=typeof D=="string"?D==="use-credentials"?D:"":void 0):D=null,m.d.C(x,D))},Qi.prefetchDNS=function(x){if(typeof x!="string"||!x)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",o(x));else if(1<arguments.length){var D=arguments[1];typeof D=="object"&&D.hasOwnProperty("crossOrigin")?console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",u(D)):console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",u(D))}typeof x=="string"&&m.d.D(x)},Qi.preinit=function(x,D){if(typeof x=="string"&&x?D==null||typeof D!="object"?console.error("ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",u(D)):D.as!=="style"&&D.as!=="script"&&console.error('ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',u(D.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered
2025-09-22 23:18:02 +03:00
* @license React
* react-dom-client.development.js
*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var zb;function PA(){return zb||(zb=1,function(){function s(t,n){for(t=t.memoizedState;t!==null&&0<n;)t=t.next,n--;return t}function e(t,n,a,l){if(a>=n.length)return l;var d=n[a],p=Hi(t)?t.slice():rt({},t);return p[d]=e(t[d],n,a+1,l),p}function i(t,n,a){if(n.length!==a.length)console.warn("copyWithRename() expects paths of the same length");else{for(var l=0;l<a.length-1;l++)if(n[l]!==a[l]){console.warn("copyWithRename() expects paths to be the same except for the deepest key");return}return r(t,n,a,0)}}function r(t,n,a,l){var d=n[l],p=Hi(t)?t.slice():rt({},t);return l+1===n.length?(p[a[l]]=p[d],Hi(p)?p.splice(d,1):delete p[d]):p[d]=r(t[d],n,a,l+1),p}function o(t,n,a){var l=n[a],d=Hi(t)?t.slice():rt({},t);return a+1===n.length?(Hi(d)?d.splice(l,1):delete d[l],d):(d[l]=o(t[l],n,a+1),d)}function u(){return!1}function c(){return null}function h(){}function m(){console.error("Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks")}function v(){console.error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().")}function S(){}function x(t){var n=[];return t.forEach(function(a){n.push(a)}),n.sort().join(", ")}function D(t,n,a,l){return new Jy(t,n,a,l)}function k(t,n){t.context===ho&&(ZT(t.current,2,n,t,null,null),sc())}function O(t,n){if(ps!==null){var a=n.staleFamilies;n=n.updatedFamilies,Lh(),Gd(t.current,n,a),sc()}}function C(t){ps=t}function U(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function P(t){var n=t,a=t;if(t.alternate)for(;n.return;)n=n.return;else{t=n;do n=t,n.flags&4098&&(a=n.return),t=n.return;while(t)}return n.tag===3?a:null}function Y(t){if(t.tag===13){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function $(t){if(P(t)!==t)throw Error("Unable to find node on an unmounted component.")}function G(t){var n=t.alternate;if(!n){if(n=P(t),n===null)throw Error("Unable to find node on an unmounted component.");return n!==t?null:t}for(var a=t,l=n;;){var d=a.return;if(d===null)break;var p=d.alternate;if(p===null){if(l=d.return,l!==null){a=l;continue}break}if(d.child===p.child){for(p=d.child;p;){if(p===a)return $(d),t;if(p===l)return $(d),n;p=p.sibling}throw Error("Unable to find node on an unmounted component.")}if(a.return!==l.return)a=d,l=p;else{for(var _=!1,M=d.child;M;){if(M===a){_=!0,a=d,l=p;break}if(M===l){_=!0,l=d,a=p;break}M=M.sibling}if(!_){for(M=p.child;M;){if(M===a){_=!0,a=p,l=d;break}if(M===l){_=!0,l=p,a=d;break}M=M.sibling}if(!_)throw Error("Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}if(a.alternate!==l)throw Error("Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}if(a.tag!==3)throw Error("Unable to find node on an unmounted component.");return a.stateNode.current===a?t:n}function W(t){var n=t.tag;if(n===5||n===26||n===27||n===6)return t;for(t=t.child;t!==null;){if(n=W(t),n!==null)return n;t=t.sibling}return null}function le(t){return t===null||typeof t!="object"?null:(t=tD&&t[tD]||t["@@iterator"],typeof t=="function"?t:null)}function Z(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===l5?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case dc:return"Fragment";case rv:return"Profiler";case qm:return"StrictMode";case ov:return"Suspense";case lv:return"SuspenseList";case uv:return"Activity"}if(typeof t=="object")switch(typeof t.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),t.$$typeof){case cc:return"Portal";case Er:return(t.displayName||"Context")+".Provider";c
2025-09-22 23:18:02 +03:00
at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
`+Tv+t+fD}function Pd(t,n){if(!t||vv)return"";var a=bv.get(t);if(a!==void 0)return a;vv=!0,a=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var l=null;l=ne.H,ne.H=null,jd();try{var d={DetermineComponentFrameRoot:function(){try{if(n){var X=function(){throw Error()};if(Object.defineProperty(X.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(X,[])}catch(Ie){var ae=Ie}Reflect.construct(t,[],X)}else{try{X.call()}catch(Ie){ae=Ie}t.call(X.prototype)}}else{try{throw Error()}catch(Ie){ae=Ie}(X=t())&&typeof X.catch=="function"&&X.catch(function(){})}}catch(Ie){if(Ie&&ae&&typeof Ie.stack=="string")return[Ie.stack,ae.stack]}return[null,null]}};d.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var p=Object.getOwnPropertyDescriptor(d.DetermineComponentFrameRoot,"name");p&&p.configurable&&Object.defineProperty(d.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var _=d.DetermineComponentFrameRoot(),M=_[0],N=_[1];if(M&&N){var L=M.split(`
`),J=N.split(`
`);for(_=p=0;p<L.length&&!L[p].includes("DetermineComponentFrameRoot");)p++;for(;_<J.length&&!J[_].includes("DetermineComponentFrameRoot");)_++;if(p===L.length||_===J.length)for(p=L.length-1,_=J.length-1;1<=p&&0<=_&&L[p]!==J[_];)_--;for(;1<=p&&0<=_;p--,_--)if(L[p]!==J[_]){if(p!==1||_!==1)do if(p--,_--,0>_||L[p]!==J[_]){var se=`
`+L[p].replace(" at new "," at ");return t.displayName&&se.includes("<anonymous>")&&(se=se.replace("<anonymous>",t.displayName)),typeof t=="function"&&bv.set(t,se),se}while(1<=p&&0<=_);break}}}finally{vv=!1,ne.H=l,Ud(),Error.prepareStackTrace=a}return L=(L=t?t.displayName||t.name:"")?Dn(L):"",typeof t=="function"&&bv.set(t,L),L}function Bd(t){var n=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,t=t.stack,Error.prepareStackTrace=n,t.startsWith(`Error: react-stack-top-frame
2025-09-22 23:18:02 +03:00
`)&&(t=t.slice(29)),n=t.indexOf(`
`),n!==-1&&(t=t.slice(n+1)),n=t.indexOf("react-stack-bottom-frame"),n!==-1&&(n=t.lastIndexOf(`
`,n)),n!==-1)t=t.slice(0,n);else return"";return t}function qd(t){switch(t.tag){case 26:case 27:case 5:return Dn(t.type);case 16:return Dn("Lazy");case 13:return Dn("Suspense");case 19:return Dn("SuspenseList");case 0:case 15:return Pd(t.type,!1);case 11:return Pd(t.type.render,!1);case 1:return Pd(t.type,!0);case 31:return Dn("Activity");default:return""}}function Bo(t){try{var n="";do{n+=qd(t);var a=t._debugInfo;if(a)for(var l=a.length-1;0<=l;l--){var d=a[l];if(typeof d.name=="string"){var p=n,_=d.env,M=Dn(d.name+(_?" ["+_+"]":""));n=p+M}}t=t.return}while(t);return n}catch(N){return`
Error generating stack: `+N.message+`
`+N.stack}}function zi(t){return(t=t?t.displayName||t.name:"")?Dn(t):""}function Cu(){if(Kn===null)return null;var t=Kn._debugOwner;return t!=null?fe(t):null}function qy(){if(Kn===null)return"";var t=Kn;try{var n="";switch(t.tag===6&&(t=t.return),t.tag){case 26:case 27:case 5:n+=Dn(t.type);break;case 13:n+=Dn("Suspense");break;case 19:n+=Dn("SuspenseList");break;case 31:n+=Dn("Activity");break;case 30:case 0:case 15:case 1:t._debugOwner||n!==""||(n+=zi(t.type));break;case 11:t._debugOwner||n!==""||(n+=zi(t.type.render))}for(;t;)if(typeof t.tag=="number"){var a=t;t=a._debugOwner;var l=a._debugStack;t&&l&&(typeof l!="string"&&(a._debugStack=l=Bd(l)),l!==""&&(n+=`
2025-09-22 23:18:02 +03:00
`+l))}else if(t.debugStack!=null){var d=t.debugStack;(t=t.owner)&&d&&(n+=`
`+Bd(d))}else break;var p=n}catch(_){p=`
Error generating stack: `+_.message+`
`+_.stack}return p}function Re(t,n,a,l,d,p,_){var M=Kn;Fn(t);try{return t!==null&&t._debugTask?t._debugTask.run(n.bind(null,a,l,d,p,_)):n(a,l,d,p,_)}finally{Fn(M)}throw Error("runWithFiberInDEV should never be called in production. This is a bug in React.")}function Fn(t){ne.getCurrentStack=t===null?null:qy,Ar=!1,Kn=t}function ji(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return He(t),t;default:return""}}function Et(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Fy(t){var n=Et(t)?"checked":"value",a=Object.getOwnPropertyDescriptor(t.constructor.prototype,n);He(t[n]);var l=""+t[n];if(!t.hasOwnProperty(n)&&typeof a<"u"&&typeof a.get=="function"&&typeof a.set=="function"){var d=a.get,p=a.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return d.call(this)},set:function(_){He(_),l=""+_,p.call(this,_)}}),Object.defineProperty(t,n,{enumerable:a.enumerable}),{getValue:function(){return l},setValue:function(_){He(_),l=""+_},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function $r(t){t._valueTracker||(t._valueTracker=Fy(t))}function qo(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var a=n.getValue(),l="";return t&&(l=Et(t)?t.checked?"true":"false":t.value),t=l,t!==a?(n.setValue(t),!0):!1}function Au(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function hi(t){return t.replace(x5,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function It(t,n){n.checked===void 0||n.defaultChecked===void 0||mD||(console.error("%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",Cu()||"A component",n.type),mD=!0),n.value===void 0||n.defaultValue===void 0||pD||(console.error("%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",Cu()||"A component",n.type),pD=!0)}function wu(t,n,a,l,d,p,_,M){t.name="",_!=null&&typeof _!="function"&&typeof _!="symbol"&&typeof _!="boolean"?(be(_,"type"),t.type=_):t.removeAttribute("type"),n!=null?_==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+ji(n)):t.value!==""+ji(n)&&(t.value=""+ji(n)):_!=="submit"&&_!=="reset"||t.removeAttribute("value"),n!=null?Fd(t,_,ji(n)):a!=null?Fd(t,_,ji(a)):l!=null&&t.removeAttribute("value"),d==null&&p!=null&&(t.defaultChecked=!!p),d!=null&&(t.checked=d&&typeof d!="function"&&typeof d!="symbol"),M!=null&&typeof M!="function"&&typeof M!="symbol"&&typeof M!="boolean"?(be(M,"name"),t.name=""+ji(M)):t.removeAttribute("name")}function Fo(t,n,a,l,d,p,_,M){if(p!=null&&typeof p!="function"&&typeof p!="symbol"&&typeof p!="boolean"&&(be(p,"type"),t.type=p),n!=null||a!=null){if(!(p!=="submit"&&p!=="reset"||n!=null))return;a=a!=null?""+ji(a):"",n=n!=null?""+ji(n):a,M||n===t.value||(t.value=n),t.defaultValue=n}l=l??d,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=M?t.checked:!!l,t.defaultChecked=!!l,_!=null&&typeof _!="function"&&typeof _!="symbol"&&typeof _!="boolean"&&(be(_,"name"),t.name=_)}function Fd(t,n,a){n==="number"&&Au(t.ownerDocument)===t||t.defaultValue===""+a||(t.defaultValue=""+a)}function Bp(t,n){n.value==null&&(typeof n.children=="object"&&n.children!==null?sv.Children.forEach(n.children,function(a){a==null||typeof a=="string"||typeof a=="number"||typeof a=="bigint"||yD||(yD=!0,console.error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>.
Check the render method of \``+t+"`.":""}function Yr(t,n,a,l){if(t=t.options,n){n={};for(var d=0;d<a.length;d++)n["$"+a[d]]=!0;for(a=0;a<t.length;a++)d=n.hasOwnProperty("$"+t[a].value),t[a].selected!==d&&(t[a].selected=d),d&&l&&(t[a].defaultSelected=!0)}else{for(a=""+ji(a),n=null,d=0;d<t.length;d++){if(t[d].value===a){t[d].selected=!0,l&&(t[d].defaultSelected=!0);return}n!==null||t[d].disabled||(n=t[d])}n!==null&&(n.selected=!0)}}function Nu(t,n){for(t=0;t<bD.length;t++){var a=bD[t];if(n[a]!=null){var l=Hi(n[a]);n.multiple&&!l?console.error("The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",a,qp()):!n.multiple&&l&&console.error("The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",a,qp())}}n.value===void 0||n.defaultValue===void 0||vD||(console.error("Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components"),vD=!0)}function ku(t,n){n.value===void 0||n.defaultValue===void 0||_D||(console.error("%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components",Cu()||"A component"),_D=!0),n.children!=null&&n.value==null&&console.error("Use the `defaultValue` or `value` props instead of setting children on <textarea>.")}function Hd(t,n,a){if(n!=null&&(n=""+ji(n),n!==t.value&&(t.value=n),a==null)){t.defaultValue!==n&&(t.defaultValue=n);return}t.defaultValue=a!=null?""+ji(a):""}function Fp(t,n,a,l){if(n==null){if(l!=null){if(a!=null)throw Error("If you supply `defaultValue` on a <textarea>, do not pass children.");if(Hi(l)){if(1<l.length)throw Error("<textarea> can only have at most one child.");l=l[0]}a=l}a==null&&(a=""),n=a}a=ji(n),t.defaultValue=a,l=t.textContent,l===a&&l!==""&&l!==null&&(t.value=l)}function Hp(t,n){return t.serverProps===void 0&&t.serverTail.length===0&&t.children.length===1&&3<t.distanceFromLeaf&&t.distanceFromLeaf>15-n?Hp(t.children[0],n):t}function Ni(t){return" "+" ".repeat(t)}function ws(t){return"+ "+" ".repeat(t)}function rr(t){return"- "+" ".repeat(t)}function Pa(t){switch(t.tag){case 26:case 27:case 5:return t.type;case 16:return"Lazy";case 13:return"Suspense";case 19:return"SuspenseList";case 0:case 15:return t=t.type,t.displayName||t.name||null;case 11:return t=t.type.render,t.displayName||t.name||null;case 1:return t=t.type,t.displayName||t.name||null;default:return null}}function Ns(t,n){return SD.test(t)?(t=JSON.stringify(t),t.length>n-2?8>n?'{"..."}':"{"+t.slice(0,n-7)+'..."}':"{"+t+"}"):t.length>n?5>n?'{"..."}':t.slice(0,n-3)+"...":t}function ar(t,n,a){var l=120-2*a;if(n===null)return ws(a)+Ns(t,l)+`
`;if(typeof n=="string"){for(var d=0;d<n.length&&d<t.length&&n.charCodeAt(d)===t.charCodeAt(d);d++);return d>l-8&&10<d&&(t="..."+t.slice(d-8),n="..."+n.slice(d-8)),ws(a)+Ns(t,l)+`
`+rr(a)+Ns(n,l)+`
`}return Ni(a)+Ns(t,l)+`
`}function Qr(t){return Object.prototype.toString.call(t).replace(/^\[object (.*)\]$/,function(n,a){return a})}function Ho(t,n){switch(typeof t){case"string":return t=JSON.stringify(t),t.length>n?5>n?'"..."':t.slice(0,n-4)+'..."':t;case"object":if(t===null)return"null";if(Hi(t))return"[...]";if(t.$$typeof===ro)return(n=Z(t.type))?"<"+n+">":"<...>";var a=Qr(t);if(a==="Object"){a="",n-=2;for(var l in t)if(t.hasOwnProperty(l)){var d=JSON.stringify(l);if(d!=='"'+l+'"'&&(l=d),n-=l.length-2,d=Ho(t[l],15>n?n:15),n-=d.length,0>n){a+=a===""?"...":", ...";break}a+=(a===""?"":",")+l+":"+d}return"{"+a+"}"}return a;case"function":return(n=t.displayName||t.name)?"function "+n:"function";default:return String(t)}}function Gr(t,n){return typeof t!="string"||SD.test(t)?"{"+Ho(t,n-2)+"}":t.length>n-2?5>n?'"..."':'"'+t.slice(0,n-5)+'..."':'"'+t+'"'}function Vd(t,n,a){var l=120-a.length-t.length,d=[],p;for(p in n)if(n.hasOwnProperty(p)&&p!=="children"){var _=Gr(n[p],120-a.length-p.length-1);l-=p.length+_.length+2,d.push(p+"="+_)}return d.length===0?a+"<"+t+`>
2025-09-22 23:18:02 +03:00
`:0<l?a+"<"+t+" "+d.join(" ")+`>
`:a+"<"+t+`
`+a+" "+d.join(`
`+a+" ")+`
`+a+`>
`}function Hy(t,n,a){var l="",d=rt({},n),p;for(p in t)if(t.hasOwnProperty(p)){delete d[p];var _=120-2*a-p.length-2,M=Ho(t[p],_);n.hasOwnProperty(p)?(_=Ho(n[p],_),l+=ws(a)+p+": "+M+`
`,l+=rr(a)+p+": "+_+`
`):l+=ws(a)+p+": "+M+`
`}for(var N in d)d.hasOwnProperty(N)&&(t=Ho(d[N],120-2*a-N.length-2),l+=rr(a)+N+": "+t+`
`);return l}function or(t,n,a,l){var d="",p=new Map;for(L in a)a.hasOwnProperty(L)&&p.set(L.toLowerCase(),L);if(p.size===1&&p.has("children"))d+=Vd(t,n,Ni(l));else{for(var _ in n)if(n.hasOwnProperty(_)&&_!=="children"){var M=120-2*(l+1)-_.length-1,N=p.get(_.toLowerCase());if(N!==void 0){p.delete(_.toLowerCase());var L=n[_];N=a[N];var J=Gr(L,M);M=Gr(N,M),typeof L=="object"&&L!==null&&typeof N=="object"&&N!==null&&Qr(L)==="Object"&&Qr(N)==="Object"&&(2<Object.keys(L).length||2<Object.keys(N).length||-1<J.indexOf("...")||-1<M.indexOf("..."))?d+=Ni(l+1)+_+`={{
`+Hy(L,N,l+2)+Ni(l+1)+`}}
`:(d+=ws(l+1)+_+"="+J+`
`,d+=rr(l+1)+_+"="+M+`
`)}else d+=Ni(l+1)+_+"="+Gr(n[_],M)+`
`}p.forEach(function(se){if(se!=="children"){var X=120-2*(l+1)-se.length-1;d+=rr(l+1)+se+"="+Gr(a[se],X)+`
`}}),d=d===""?Ni(l)+"<"+t+`>
`:Ni(l)+"<"+t+`
`+d+Ni(l)+`>
`}return t=a.children,n=n.children,typeof t=="string"||typeof t=="number"||typeof t=="bigint"?(p="",(typeof n=="string"||typeof n=="number"||typeof n=="bigint")&&(p=""+n),d+=ar(p,""+t,l+1)):(typeof n=="string"||typeof n=="number"||typeof n=="bigint")&&(d=t==null?d+ar(""+n,null,l+1):d+ar(""+n,void 0,l+1)),d}function Vo(t,n){var a=Pa(t);if(a===null){for(a="",t=t.child;t;)a+=Vo(t,n),t=t.sibling;return a}return Ni(n)+"<"+a+`>
`}function $d(t,n){var a=Hp(t,n);if(a!==t&&(t.children.length!==1||t.children[0]!==a))return Ni(n)+`...
`+$d(a,n+1);a="";var l=t.fiber._debugInfo;if(l)for(var d=0;d<l.length;d++){var p=l[d].name;typeof p=="string"&&(a+=Ni(n)+"<"+p+`>
`,n++)}if(l="",d=t.fiber.pendingProps,t.fiber.tag===6)l=ar(d,t.serverProps,n),n++;else if(p=Pa(t.fiber),p!==null)if(t.serverProps===void 0){l=n;var _=120-2*l-p.length-2,M="";for(L in d)if(d.hasOwnProperty(L)&&L!=="children"){var N=Gr(d[L],15);if(_-=L.length+N.length+2,0>_){M+=" ...";break}M+=" "+L+"="+N}l=Ni(l)+"<"+p+M+`>
`,n++}else t.serverProps===null?(l=Vd(p,d,ws(n)),n++):typeof t.serverProps=="string"?console.error("Should not have matched a non HostText fiber to a Text node. This is a bug in React."):(l=or(p,d,t.serverProps,n),n++);var L="";for(d=t.fiber.child,p=0;d&&p<t.children.length;)_=t.children[p],_.fiber===d?(L+=$d(_,n),p++):L+=Vo(d,n),d=d.sibling;for(d&&0<t.children.length&&(L+=Ni(n)+`...
`),d=t.serverTail,t.serverProps===null&&n--,t=0;t<d.length;t++)p=d[t],L=typeof p=="string"?L+(rr(n)+Ns(p,120-2*n)+`
`):L+Vd(p.type,p.props,rr(n));return a+l+L}function $o(t){try{return`
`+$d(t,0)}catch{return""}}function Ou(t,n,a){for(var l=n,d=null,p=0;l;)l===t&&(p=0),d={fiber:l,children:d!==null?[d]:[],serverProps:l===n?a:l===t?null:void 0,serverTail:[],distanceFromLeaf:p},p++,l=l.return;return d!==null?$o(d).replaceAll(/^[+-]/gm,">"):""}function Cn(t,n){var a=rt({},t||ED),l={tag:n};return xD.indexOf(n)!==-1&&(a.aTagInScope=null,a.buttonTagInScope=null,a.nobrTagInScope=null),M5.indexOf(n)!==-1&&(a.pTagInButtonScope=null),E5.indexOf(n)!==-1&&n!=="address"&&n!=="div"&&n!=="p"&&(a.listItemTagAutoclosing=null,a.dlItemTagAutoclosing=null),a.current=l,n==="form"&&(a.formTag=l),n==="a"&&(a.aTagInScope=l),n==="button"&&(a.buttonTagInScope=l),n==="nobr"&&(a.nobrTagInScope=l),n==="p"&&(a.pTagInButtonScope=l),n==="li"&&(a.listItemTagAutoclosing=l),(n==="dd"||n==="dt")&&(a.dlItemTagAutoclosing=l),n==="#document"||n==="html"?a.containerTagInScope=null:a.containerTagInScope||(a.containerTagInScope=l),t!==null||n!=="#document"&&n!=="html"&&n!=="body"?a.implicitRootScope===!0&&(a.implicitRootScope=!1):a.implicitRootScope=!0,a}function Vp(t,n,a){switch(n){case"select":return t==="hr"||t==="option"||t==="optgroup"||t==="script"||t==="template"||t==="#text";case"optgroup":return t==="option"||t==="#text";case"option":return t==="#text";case"tr":return t==="th"||t==="td"||t==="style"||t==="script"||t==="template";case"tbody":case"thead":case"tfoot":return t==="tr"||t==="style"||t==="script"||t==="template";case"colgroup":return t==="col"||t==="template";case"table":return t==="caption"||t==="colgroup"||t==="tbody"||t==="tfoot"||t==="thead"||t==="style"||t==="script"||t==="template";case"head":return t==="base"||t==="basefont"||t==="bgsound"||t==="link"||t==="meta"||t==="title"||t==="noscript"||t==="noframes"||t==="style"||t==="script"||t==="template";case"html":if(a)break;return t==="head"||t==="body"||t==="frameset";case"frameset":return t==="frame";case"#document":if(!a)return t==="html"}switch(t){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return n!=="h1"&&n!=="h2"&&n!=="h3"&&n!=="h4"&&n!=="h5"&&n!=="h6";case"rp":case"rt":return D5.indexOf(n)===-1;case"caption":case"col":case"colgroup":case"frameset":case"frame":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return n==null;case"head":return a||n===null;case"html":return a&&n==="#document"||n===null;case"body":return a&&(n==="#document"||n==="html")||n===null}return!0}function Iu(t,n){switch(t){case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dialog":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"main":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":case"pre":case"listing":case"table":case"hr":case"xmp":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":return n.pTagInButtonScope;case"form":return n.formTag||n.pTagInButtonScope;case"li":return n.listItemTagAutoclosing;case"dd":case"dt":return n.dlItemTagAutoclosing;case"button":return n.buttonTagInScope;case"a":return n.aTagInScope;case"nobr":return n.nobrTagInScope}return null}function Ba(t,n){for(;t;){switch(t.tag){case 5:case 26:case 27:if(t.type===n)return t}t=t.return}return null}function qa(t,n){n=n||ED;var a=n.current;if(n=(a=Vp(t,a&&a.tag,n.implicitRootScope)?null:a)?null:Iu(t,n),n=a||n,!n)return!0;var l=n.tag;if(n=String(!!a)+"|"+t+"|"+l,Qm[n])return!1;Qm[n]=!0;var d=(n=Kn)?Ba(n.return,l):null,p=n!==null&&d!==null?Ou(d,n,null):"",_="<"+t+">";return a?(a="",l==="table"&&t==="tr"&&(a+=" Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser."),console.error(`In HTML, %s cannot be a child of <%s>.%s
This will cause a hydration error.%s`,_,l,a,p)):console.error(`In HTML, %s cannot be a descendant of <%s>.
This will cause a hydration error.%s`,_,l,p),n&&(t=n.return,d===null||t===null||d===t&&t._debugOwner===n._debugOwner||Re(d,function(){console.error(`<%s> cannot contain a nested %s.
See this log for the ancestor stack trace.`,l,_)})),!1}function ks(t,n,a){if(a||Vp("#text",n,!1))return!0;if(a="#text|"+n,Qm[a])return!1;Qm[a]=!0;var l=(a=Kn)?Ba(a,n):null;return a=a!==null&&l!==null?Ou(l,a,a.tag!==6?{children:null}:null):"",/\S/.test(t)?console.error(`In HTML, text nodes cannot be a child of <%s>.
2025-09-22 23:18:02 +03:00
This will cause a hydration error.%s`,n,a):console.error(`In HTML, whitespace text nodes cannot be a child of <%s>. Make sure you don't have any extra whitespace between tags on each line of your source code.
This will cause a hydration error.%s`,n,a),!1}function Xr(t,n){if(n){var a=t.firstChild;if(a&&a===t.lastChild&&a.nodeType===3){a.nodeValue=n;return}}t.textContent=n}function $p(t){return t.replace(w5,function(n,a){return a.toUpperCase()})}function Lu(t,n,a){var l=n.indexOf("--")===0;l||(-1<n.indexOf("-")?pc.hasOwnProperty(n)&&pc[n]||(pc[n]=!0,console.error("Unsupported style property %s. Did you mean %s?",n,$p(n.replace(A5,"ms-")))):C5.test(n)?pc.hasOwnProperty(n)&&pc[n]||(pc[n]=!0,console.error("Unsupported vendor-prefixed style property %s. Did you mean %s?",n,n.charAt(0).toUpperCase()+n.slice(1))):!CD.test(a)||Sv.hasOwnProperty(a)&&Sv[a]||(Sv[a]=!0,console.error(`Style property values shouldn't contain a semicolon. Try "%s: %s" instead.`,n,a.replace(CD,""))),typeof a=="number"&&(isNaN(a)?AD||(AD=!0,console.error("`NaN` is an invalid value for the `%s` css style property.",n)):isFinite(a)||wD||(wD=!0,console.error("`Infinity` is an invalid value for the `%s` css style property.",n)))),a==null||typeof a=="boolean"||a===""?l?t.setProperty(n,""):n==="float"?t.cssFloat="":t[n]="":l?t.setProperty(n,a):typeof a!="number"||a===0||ND.has(n)?n==="float"?t.cssFloat=a:(Fe(a,n),t[n]=(""+a).trim()):t[n]=a+"px"}function Yp(t,n,a){if(n!=null&&typeof n!="object")throw Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");if(n&&Object.freeze(n),t=t.style,a!=null){if(n){var l={};if(a){for(var d in a)if(a.hasOwnProperty(d)&&!n.hasOwnProperty(d))for(var p=_v[d]||[d],_=0;_<p.length;_++)l[p[_]]=d}for(var M in n)if(n.hasOwnProperty(M)&&(!a||a[M]!==n[M]))for(d=_v[M]||[M],p=0;p<d.length;p++)l[d[p]]=M;M={};for(var N in n)for(d=_v[N]||[N],p=0;p<d.length;p++)M[d[p]]=N;N={};for(var L in l)if(d=l[L],(p=M[L])&&d!==p&&(_=d+","+p,!N[_])){N[_]=!0,_=console;var J=n[d];_.error.call(_,"%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.",J==null||typeof J=="boolean"||J===""?"Removing":"Updating",d,p)}}for(var se in a)!a.hasOwnProperty(se)||n!=null&&n.hasOwnProperty(se)||(se.indexOf("--")===0?t.setProperty(se,""):se==="float"?t.cssFloat="":t[se]="");for(var X in n)L=n[X],n.hasOwnProperty(X)&&a[X]!==L&&Lu(t,X,L)}else for(l in n)n.hasOwnProperty(l)&&Lu(t,l,n[l])}function Yo(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function Qp(t){return N5.get(t)||t}function Ru(t,n){if(ha.call(gc,n)&&gc[n])return!0;if(O5.test(n)){if(t="aria-"+n.slice(4).toLowerCase(),t=kD.hasOwnProperty(t)?t:null,t==null)return console.error("Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",n),gc[n]=!0;if(n!==t)return console.error("Invalid ARIA attribute `%s`. Did you mean `%s`?",n,t),gc[n]=!0}if(k5.test(n)){if(t=n.toLowerCase(),t=kD.hasOwnProperty(t)?t:null,t==null)return gc[n]=!0,!1;n!==t&&(console.error("Unknown ARIA attribute `%s`. Did you mean `%s`?",n,t),gc[n]=!0)}return!0}function Gp(t,n){var a=[],l;for(l in n)Ru(t,l)||a.push(l);n=a.map(function(d){return"`"+d+"`"}).join(", "),a.length===1?console.error("Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",n,t):1<a.length&&console.error("Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",n,t)}function Vy(t,n,a,l){if(ha.call(fn,n)&&fn[n])return!0;var d=n.toLowerCase();if(d==="onfocusin"||d==="onfocusout")return console.error("React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React."),fn[n]=!0;if(typeof a=="function"&&(t==="form"&&n==="action"||t==="input"&&n==="formAction"||t==="button"&&n==="formAction"))return!0
2025-09-22 23:18:02 +03:00
Check the render method of \``+_+"`."),_=29,a=Error("Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: "+(a+"."+M)),M=null}return n=D(_,a,n,d),n.elementType=t,n.type=M,n.lanes=p,n._debugOwner=l,n}function Qu(t,n,a){return n=Xd(t.type,t.key,t.props,t._owner,n,a),n._debugOwner=t._owner,n._debugStack=t._debugStack,n._debugTask=t._debugTask,n}function hr(t,n,a,l){return t=D(7,t,l,n),t.lanes=a,t}function Va(t,n,a){return t=D(6,t,null,n),t.lanes=a,t}function Wd(t,n,a){return n=D(4,t.children!==null?t.children:[],t.key,n),n.lanes=a,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}function Zr(t,n){Rs(),Ec[Mc++]=tg,Ec[Mc++]=eg,eg=t,tg=n}function sm(t,n,a){Rs(),ms[gs++]=ma,ms[gs++]=ga,ms[gs++]=Sl,Sl=t;var l=ma;t=ga;var d=32-hn(l)-1;l&=~(1<<d),a+=1;var p=32-hn(n)+d;if(30<p){var _=d-d%5;p=(l&(1<<_)-1).toString(32),l>>=_,d-=_,ma=1<<32-hn(n)+d|a<<d|l,ga=p+t}else ma=1<<p|a<<d|l,ga=t}function el(t){Rs(),t.return!==null&&(Zr(t,1),sm(t,1,0))}function Kd(t){for(;t===eg;)eg=Ec[--Mc],Ec[Mc]=null,tg=Ec[--Mc],Ec[Mc]=null;for(;t===Sl;)Sl=ms[--gs],ms[gs]=null,ga=ms[--gs],ms[gs]=null,ma=ms[--gs],ms[gs]=null}function Rs(){ht||console.error("Expected to be hydrating. This is a bug in React. Please file an issue.")}function fr(t,n){if(t.return===null){if(ys===null)ys={fiber:t,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:n};else{if(ys.fiber!==t)throw Error("Saw multiple hydration diff roots in a pass. This is a bug in React.");ys.distanceFromLeaf>n&&(ys.distanceFromLeaf=n)}return ys}var a=fr(t.return,n+1).children;return 0<a.length&&a[a.length-1].fiber===t?(a=a[a.length-1],a.distanceFromLeaf>n&&(a.distanceFromLeaf=n),a):(n={fiber:t,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:n},a.push(n),n)}function Zd(t,n){ya||(t=fr(t,0),t.serverProps=null,n!==null&&(n=IM(n),t.serverTail.push(n)))}function Jr(t){var n="",a=ys;throw a!==null&&(ys=null,n=$o(a)),il(Pi(Error(`Hydration failed because the server rendered HTML didn't match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:
2025-09-22 23:18:02 +03:00
- A server/client branch \`if (typeof window !== 'undefined')\`.
- Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
- Date formatting in a user's locale which doesn't match the server.
- External changing data without sending a snapshot of it along with the HTML.
- Invalid HTML tag nesting.
It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
https://react.dev/link/hydration-mismatch`+n),t)),zv}function rm(t){var n=t.stateNode,a=t.type,l=t.memoizedProps;switch(n[nn]=t,n[kn]=l,qT(a,l),a){case"dialog":ut("cancel",n),ut("close",n);break;case"iframe":case"object":case"embed":ut("load",n);break;case"video":case"audio":for(a=0;a<Mf.length;a++)ut(Mf[a],n);break;case"source":ut("error",n);break;case"img":case"image":case"link":ut("error",n),ut("load",n);break;case"details":ut("toggle",n);break;case"input":ze("input",l),ut("invalid",n),It(n,l),Fo(n,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0),$r(n);break;case"option":Bp(n,l);break;case"select":ze("select",l),ut("invalid",n),Nu(n,l);break;case"textarea":ze("textarea",l),ut("invalid",n),ku(n,l),Fp(n,l.value,l.defaultValue,l.children),$r(n)}a=l.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||n.textContent===""+a||l.suppressHydrationWarning===!0||xM(n.textContent,a)?(l.popover!=null&&(ut("beforetoggle",n),ut("toggle",n)),l.onScroll!=null&&ut("scroll",n),l.onScrollEnd!=null&&ut("scrollend",n),l.onClick!=null&&(n.onclick=Om),n=!0):n=!1,n||Jr(t)}function am(t){for(mn=t.return;mn;)switch(mn.tag){case 5:case 13:Nr=!1;return;case 27:case 3:Nr=!0;return;default:mn=mn.return}}function $a(t){if(t!==mn)return!1;if(!ht)return am(t),ht=!0,!1;var n=t.tag,a;if((a=n!==3&&n!==27)&&((a=n===5)&&(a=t.type,a=!(a!=="form"&&a!=="button")||YT(t.type,t.memoizedProps)),a=!a),a&&ii){for(a=ii;a;){var l=fr(t,0),d=IM(a);l.serverTail.push(d),a=d.type==="Suspense"?RM(a):ds(a.nextSibling)}Jr(t)}if(am(t),n===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");ii=RM(t)}else n===27?(n=ii,so(t.type)?(t=xb,xb=null,ii=t):ii=n):ii=mn?ds(t.stateNode.nextSibling):null;return!0}function tl(){ii=mn=null,ya=ht=!1}function Jd(){var t=xl;return t!==null&&(Tn===null?Tn=t:Tn.push.apply(Tn,t),xl=null),t}function il(t){xl===null?xl=[t]:xl.push(t)}function eh(){var t=ys;if(t!==null){ys=null;for(var n=$o(t);0<t.children.length;)t=t.children[0];Re(t.fiber,function(){console.error(`A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up. This can happen if a SSR-ed Client Component used:
2025-09-22 23:18:02 +03:00
- A server/client branch \`if (typeof window !== 'undefined')\`.
- Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
- Date formatting in a user's locale which doesn't match the server.
- External changing data without sending a snapshot of it along with the HTML.
- Invalid HTML tag nesting.
It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
%s%s`,"https://react.dev/link/hydration-mismatch",n)})}}function oi(){Dc=ig=null,Cc=!1}function os(t,n,a){pe(jv,n._currentValue,t),n._currentValue=a,pe(Uv,n._currentRenderer,t),n._currentRenderer!==void 0&&n._currentRenderer!==null&&n._currentRenderer!==eC&&console.error("Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."),n._currentRenderer=eC}function ei(t,n){t._currentValue=jv.current;var a=Uv.current;ue(Uv,n),t._currentRenderer=a,ue(jv,n)}function ea(t,n,a){for(;t!==null;){var l=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,l!==null&&(l.childLanes|=n)):l!==null&&(l.childLanes&n)!==n&&(l.childLanes|=n),t===a)break;t=t.return}t!==a&&console.error("Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.")}function th(t,n,a,l){var d=t.child;for(d!==null&&(d.return=t);d!==null;){var p=d.dependencies;if(p!==null){var _=d.child;p=p.firstContext;e:for(;p!==null;){var M=p;p=d;for(var N=0;N<n.length;N++)if(M.context===n[N]){p.lanes|=a,M=p.alternate,M!==null&&(M.lanes|=a),ea(p.return,a,t),l||(_=null);break e}p=M.next}}else if(d.tag===18){if(_=d.return,_===null)throw Error("We just came from a parent so we must have had a parent. This is a bug in React.");_.lanes|=a,p=_.alternate,p!==null&&(p.lanes|=a),ea(_,a,t),_=null}else _=d.child;if(_!==null)_.return=d;else for(_=d;_!==null;){if(_===t){_=null;break}if(d=_.sibling,d!==null){d.return=_.return,_=d;break}_=_.return}d=_}}function nl(t,n,a,l){t=null;for(var d=n,p=!1;d!==null;){if(!p){if(d.flags&524288)p=!0;else if(d.flags&262144)break}if(d.tag===10){var _=d.alternate;if(_===null)throw Error("Should have a current fiber. This is a bug in React.");if(_=_.memoizedProps,_!==null){var M=d.type;pn(d.pendingProps.value,_.value)||(t!==null?t.push(M):t=[M])}}else if(d===Hm.current){if(_=d.alternate,_===null)throw Error("Should have a current fiber. This is a bug in React.");_.memoizedState.memoizedState!==d.memoizedState.memoizedState&&(t!==null?t.push(wf):t=[wf])}d=d.return}t!==null&&th(n,t,a,l),n.flags|=262144}function Vn(t){for(t=t.firstContext;t!==null;){if(!pn(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function pr(t){ig=t,Dc=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function Ut(t){return Cc&&console.error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."),sl(ig,t)}function Gu(t,n){return ig===null&&pr(t),sl(t,n)}function sl(t,n){var a=n._currentValue;if(n={context:n,memoizedValue:a,next:null},Dc===null){if(t===null)throw Error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");Dc=n,t.dependencies={lanes:0,firstContext:n,_debugThenableState:null},t.flags|=524288}else Dc=Dc.next=n;return a}function ih(){return{controller:new yR,data:new Map,refCount:0}}function ta(t){t.controller.signal.aborted&&console.warn("A cache instance was retained after it was already freed. This likely indicates a bug in React."),t.refCount++}function rl(t){t.refCount--,0>t.refCount&&console.warn("A cache instance was released after it was already freed. This likely indicates a bug in React."),t.refCount===0&&TR(vR,function(){t.controller.abort()})}function zs(){var t=El;return El=0,t}function al(t){var n=El;return El=t,n}function ol(t){var n=El;return El+=t,n}function ia(t){On=Ac(),0>t.actualStartTime&&(t.actualStartTime=On)}function Xu(t){if(0<=On){var n=Ac()-On;t.actualDuration+=n,t.selfBaseDuration=n,On=-1}}function ll(t){if(0<=On){var n=Ac()-On;t.actualDuration+=n,On=-1}}function en(){if(0<=On){var t=Ac()-On;On=-1,El+=t}}function gt(){On=Ac()}function js(t){for(var n=t.child;n;)t.actualDuration+=n.actualDuration,n=n.siblin
2025-09-22 23:18:02 +03:00
Please update the following component: %s`,d),lC=!0}return(_t&yn)!==Zn?(d=l.pending,d===null?n.next=n:(n.next=d.next,d.next=n),l.pending=n,n=Hu(t),cr(t,null,a),n):(lr(t,l,n,a),Hu(t))}function Ya(t,n,a){if(n=n.updateQueue,n!==null&&(n=n.shared,(a&4194048)!==0)){var l=n.lanes;l&=t.pendingLanes,a|=l,n.lanes=a,wi(t,a)}}function dl(t,n){var a=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,a===l)){var d=null,p=null;if(a=a.firstBaseUpdate,a!==null){do{var _={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};p===null?d=p=_:p=p.next=_,a=a.next}while(a!==null);p===null?d=p=n:p=p.next=n}else d=p=n;a={baseState:l.baseState,firstBaseUpdate:d,lastBaseUpdate:p,shared:l.shared,callbacks:l.callbacks},t.updateQueue=a;return}t=a.lastBaseUpdate,t===null?a.firstBaseUpdate=n:t.next=n,a.lastBaseUpdate=n}function hl(){if(Hv){var t=wc;if(t!==null)throw t}}function fl(t,n,a,l){Hv=!1;var d=t.updateQueue;fo=!1,Fv=d.shared;var p=d.firstBaseUpdate,_=d.lastBaseUpdate,M=d.shared.pending;if(M!==null){d.shared.pending=null;var N=M,L=N.next;N.next=null,_===null?p=L:_.next=L,_=N;var J=t.alternate;J!==null&&(J=J.updateQueue,M=J.lastBaseUpdate,M!==_&&(M===null?J.firstBaseUpdate=L:M.next=L,J.lastBaseUpdate=N))}if(p!==null){var se=d.baseState;_=0,J=L=N=null,M=p;do{var X=M.lane&-536870913,ae=X!==M.lane;if(ae?(lt&X)===X:(l&X)===X){X!==0&&X===Ml&&(Hv=!0),J!==null&&(J=J.next={lane:0,tag:M.tag,payload:M.payload,callback:null,next:null});e:{X=t;var Ie=M,Ve=n,Rt=a;switch(Ie.tag){case aC:if(Ie=Ie.payload,typeof Ie=="function"){Cc=!0;var ct=Ie.call(Rt,se,Ve);if(X.mode&sn){Me(!0);try{Ie.call(Rt,se,Ve)}finally{Me(!1)}}Cc=!1,se=ct;break e}se=Ie;break e;case qv:X.flags=X.flags&-65537|128;case rC:if(ct=Ie.payload,typeof ct=="function"){if(Cc=!0,Ie=ct.call(Rt,se,Ve),X.mode&sn){Me(!0);try{ct.call(Rt,se,Ve)}finally{Me(!1)}}Cc=!1}else Ie=ct;if(Ie==null)break e;se=rt({},se,Ie);break e;case oC:fo=!0}}X=M.callback,X!==null&&(t.flags|=64,ae&&(t.flags|=8192),ae=d.callbacks,ae===null?d.callbacks=[X]:ae.push(X))}else ae={lane:X,tag:M.tag,payload:M.payload,callback:M.callback,next:null},J===null?(L=J=ae,N=se):J=J.next=ae,_|=X;if(M=M.next,M===null){if(M=d.shared.pending,M===null)break;ae=M,M=ae.next,ae.next=null,d.lastBaseUpdate=ae,d.shared.pending=null}}while(1);J===null&&(N=se),d.baseState=N,d.firstBaseUpdate=L,d.lastBaseUpdate=J,p===null&&(d.shared.lanes=0),yo|=_,t.lanes=_,t.memoizedState=se}Fv=null}function dh(t,n){if(typeof t!="function")throw Error("Invalid argument passed as callback. Expected a function. Instead received: "+t);t.call(n)}function tT(t,n){var a=t.shared.hiddenCallbacks;if(a!==null)for(t.shared.hiddenCallbacks=null,t=0;t<a.length;t++)dh(a[t],n)}function lm(t,n){var a=t.callbacks;if(a!==null)for(t.callbacks=null,t=0;t<a.length;t++)dh(a[t],n)}function Zu(t,n){var a=Ir;pe(ug,a,t),pe(Nc,n,t),Ir=a|n.baseLanes}function hh(t){pe(ug,Ir,t),pe(Nc,Nc.current,t)}function fh(t){Ir=ug.current,ue(Nc,t),ue(ug,t)}function st(){var t=ie;bs===null?bs=[t]:bs.push(t)}function me(){var t=ie;if(bs!==null&&(va++,bs[va]!==t)){var n=K(Ye);if(!uC.has(n)&&(uC.add(n),bs!==null)){for(var a="",l=0;l<=va;l++){var d=bs[l],p=l===va?t:d;for(d=l+1+". "+d;30>d.length;)d+=" ";d+=p+`
2025-09-22 23:18:02 +03:00
`,a+=d}console.error(`React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks
Previous render Next render
------------------------------------------------------
%s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
`,n,a)}}}function Qa(t){t==null||Hi(t)||console.error("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",ie,typeof t)}function Ju(){var t=K(Ye);dC.has(t)||(dC.add(t),console.error("ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.",t))}function Kt(){throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
2025-09-22 23:18:02 +03:00
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function ph(t,n){if(hf)return!1;if(n===null)return console.error("%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.",ie),!1;t.length!==n.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.
2025-09-22 23:18:02 +03:00
Previous: %s
Incoming: %s`,ie,"["+n.join(", ")+"]","["+t.join(", ")+"]");for(var a=0;a<n.length&&a<t.length;a++)if(!pn(t[a],n[a]))return!1;return!0}function mh(t,n,a,l,d,p){po=p,Ye=n,bs=t!==null?t._debugHookTypes:null,va=-1,hf=t!==null&&t.type!==n.type,(Object.prototype.toString.call(a)==="[object AsyncFunction]"||Object.prototype.toString.call(a)==="[object AsyncGeneratorFunction]")&&(p=K(Ye),Vv.has(p)||(Vv.add(p),console.error("%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.",p===null?"An unknown Component":"<"+p+">"))),n.memoizedState=null,n.updateQueue=null,n.lanes=0,ne.H=t!==null&&t.memoizedState!==null?Yv:bs!==null?hC:$v,Al=p=(n.mode&sn)!==Pt;var _=Qv(a,l,d);if(Al=!1,Oc&&(_=gh(n,a,l,d)),p){Me(!0);try{_=gh(n,a,l,d)}finally{Me(!1)}}return um(t,n),_}function um(t,n){n._debugHookTypes=bs,n.dependencies===null?Ta!==null&&(n.dependencies={lanes:0,firstContext:null,_debugThenableState:Ta}):n.dependencies._debugThenableState=Ta,ne.H=hg;var a=Ot!==null&&Ot.next!==null;if(po=0,bs=ie=pi=Ot=Ye=null,va=-1,t!==null&&(t.flags&65011712)!==(n.flags&65011712)&&console.error("Internal React error: Expected static flag was missing. Please notify the React team."),cg=!1,df=0,Ta=null,a)throw Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");t===null||Ii||(t=t.dependencies,t!==null&&Vn(t)&&(Ii=!0)),lg?(lg=!1,t=!0):t=!1,t&&(n=K(n)||"Unknown",cC.has(n)||Vv.has(n)||(cC.add(n),console.error("`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary.")))}function gh(t,n,a,l){Ye=t;var d=0;do{if(Oc&&(Ta=null),df=0,Oc=!1,d>=_R)throw Error("Too many re-renders. React limits the number of renders to prevent an infinite loop.");if(d+=1,hf=!1,pi=Ot=null,t.updateQueue!=null){var p=t.updateQueue;p.lastEffect=null,p.events=null,p.stores=null,p.memoCache!=null&&(p.memoCache.index=0)}va=-1,ne.H=fC,p=Qv(n,a,l)}while(Oc);return p}function gr(){var t=ne.H,n=t.useState()[0];return n=typeof n.then=="function"?Ga(n):n,t=t.useState()[0],(Ot!==null?Ot.memoizedState:null)!==t&&(Ye.flags|=1024),n}function yh(){var t=dg!==0;return dg=0,t}function Th(t,n,a){n.updateQueue=t.updateQueue,n.flags=(n.mode&Ps)!==Pt?n.flags&-402655237:n.flags&-2053,t.lanes&=~a}function vh(t){if(cg){for(t=t.memoizedState;t!==null;){var n=t.queue;n!==null&&(n.pending=null),t=t.next}cg=!1}po=0,bs=pi=Ot=Ye=null,va=-1,ie=null,Oc=!1,df=dg=0,Ta=null}function cn(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return pi===null?Ye.memoizedState=pi=t:pi=pi.next=t,pi}function yt(){if(Ot===null){var t=Ye.alternate;t=t!==null?t.memoizedState:null}else t=Ot.next;var n=pi===null?Ye.memoizedState:pi.next;if(n!==null)pi=n,Ot=t;else{if(t===null)throw Ye.alternate===null?Error("Update hook called on initial render. This is likely a bug in React. Please file an issue."):Error("Rendered more hooks than during the previous render.");Ot=t,t={memoizedState:Ot.memoizedState,baseState:Ot.baseState,baseQueue:Ot.baseQueue,queue:Ot.queue,next:null},pi===null?Ye.memoizedState=pi=t:pi=pi.next=t}return pi}function pl(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Ga(t){var n=df;return df+=1,Ta===null&&(Ta=ah()),t=lh(Ta,t,n),n=Ye,(pi===null?n.memoizedState:pi.next)===null&&(n=n.alternate,ne.H=n!==null&&n.memoizedState!==null?Yv:$v),t}function $n(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return Ga(t);if(t.$$typeof===Er)return Ut(t)}throw Error("An unsupported type was passed to use(): "+String(t))}function ls(t){var n=null,a=Ye.updateQueue;if(a!==null&&(n=a.memoCache),n==null){var l=Ye.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(n={data:l.data.map(function(d){return d.slice()}),index:0})))}if(n==null&&(n={data:[],index:0}),a===null&&(a=pl(),Ye.updateQueue=a),a.memoCache=n,a=n.data[n.index],a===void
2025-09-22 23:18:02 +03:00
- Multiple copies of the "react" package is used.
- A library pre-bundled an old copy of "react" or "react/jsx-runtime".
- A compiler tries to "inline" JSX instead of using the runtime.`):(t=Object.prototype.toString.call(n),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead."))}function bm(t,n){var a=K(t)||"Component";AC[a]||(AC[a]=!0,n=n.displayName||n.name||"Component",t.tag===3?console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
2025-09-22 23:18:02 +03:00
root.render(%s)`,n,n,n):console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
<%s>{%s}</%s>`,n,n,a,n,a))}function _m(t,n){var a=K(t)||"Component";wC[a]||(wC[a]=!0,n=String(n),t.tag===3?console.error(`Symbols are not valid as a React child.
2025-09-22 23:18:02 +03:00
root.render(%s)`,n):console.error(`Symbols are not valid as a React child.
<%s>%s</%s>`,a,n,a))}function tE(t){function n(B,q){if(t){var V=B.deletions;V===null?(B.deletions=[q],B.flags|=16):V.push(q)}}function a(B,q){if(!t)return null;for(;q!==null;)n(B,q),q=q.sibling;return null}function l(B){for(var q=new Map;B!==null;)B.key!==null?q.set(B.key,B):q.set(B.index,B),B=B.sibling;return q}function d(B,q){return B=Ls(B,q),B.index=0,B.sibling=null,B}function p(B,q,V){return B.index=V,t?(V=B.alternate,V!==null?(V=V.index,V<q?(B.flags|=67108866,q):V):(B.flags|=67108866,q)):(B.flags|=1048576,q)}function _(B){return t&&B.alternate===null&&(B.flags|=67108866),B}function M(B,q,V,oe){return q===null||q.tag!==6?(q=Va(V,B.mode,oe),q.return=B,q._debugOwner=B,q._debugTask=B._debugTask,q._debugInfo=it,q):(q=d(q,V),q.return=B,q._debugInfo=it,q)}function N(B,q,V,oe){var xe=V.type;return xe===dc?(q=J(B,q,V.props.children,oe,V.key),ym(V,q,B),q):q!==null&&(q.elementType===xe||$u(q,V)||typeof xe=="object"&&xe!==null&&xe.$$typeof===Wn&&mo(xe)===q.type)?(q=d(q,V.props),Ah(q,V),q.return=B,q._debugOwner=V._owner,q._debugInfo=it,q):(q=Qu(V,B.mode,oe),Ah(q,V),q.return=B,q._debugInfo=it,q)}function L(B,q,V,oe){return q===null||q.tag!==4||q.stateNode.containerInfo!==V.containerInfo||q.stateNode.implementation!==V.implementation?(q=Wd(V,B.mode,oe),q.return=B,q._debugInfo=it,q):(q=d(q,V.children||[]),q.return=B,q._debugInfo=it,q)}function J(B,q,V,oe,xe){return q===null||q.tag!==7?(q=hr(V,B.mode,oe,xe),q.return=B,q._debugOwner=B,q._debugTask=B._debugTask,q._debugInfo=it,q):(q=d(q,V),q.return=B,q._debugInfo=it,q)}function se(B,q,V){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return q=Va(""+q,B.mode,V),q.return=B,q._debugOwner=B,q._debugTask=B._debugTask,q._debugInfo=it,q;if(typeof q=="object"&&q!==null){switch(q.$$typeof){case ro:return V=Qu(q,B.mode,V),Ah(V,q),V.return=B,B=Bi(q._debugInfo),V._debugInfo=it,it=B,V;case cc:return q=Wd(q,B.mode,V),q.return=B,q._debugInfo=it,q;case Wn:var oe=Bi(q._debugInfo);return q=mo(q),B=se(B,q,V),it=oe,B}if(Hi(q)||le(q))return V=hr(q,B.mode,V,null),V.return=B,V._debugOwner=B,V._debugTask=B._debugTask,B=Bi(q._debugInfo),V._debugInfo=it,it=B,V;if(typeof q.then=="function")return oe=Bi(q._debugInfo),B=se(B,Tm(q),V),it=oe,B;if(q.$$typeof===Er)return se(B,Gu(B,q),V);vm(B,q)}return typeof q=="function"&&bm(B,q),typeof q=="symbol"&&_m(B,q),null}function X(B,q,V,oe){var xe=q!==null?q.key:null;if(typeof V=="string"&&V!==""||typeof V=="number"||typeof V=="bigint")return xe!==null?null:M(B,q,""+V,oe);if(typeof V=="object"&&V!==null){switch(V.$$typeof){case ro:return V.key===xe?(xe=Bi(V._debugInfo),B=N(B,q,V,oe),it=xe,B):null;case cc:return V.key===xe?L(B,q,V,oe):null;case Wn:return xe=Bi(V._debugInfo),V=mo(V),B=X(B,q,V,oe),it=xe,B}if(Hi(V)||le(V))return xe!==null?null:(xe=Bi(V._debugInfo),B=J(B,q,V,oe,null),it=xe,B);if(typeof V.then=="function")return xe=Bi(V._debugInfo),B=X(B,q,Tm(V),oe),it=xe,B;if(V.$$typeof===Er)return X(B,q,Gu(B,V),oe);vm(B,V)}return typeof V=="function"&&bm(B,V),typeof V=="symbol"&&_m(B,V),null}function ae(B,q,V,oe,xe){if(typeof oe=="string"&&oe!==""||typeof oe=="number"||typeof oe=="bigint")return B=B.get(V)||null,M(q,B,""+oe,xe);if(typeof oe=="object"&&oe!==null){switch(oe.$$typeof){case ro:return V=B.get(oe.key===null?V:oe.key)||null,B=Bi(oe._debugInfo),q=N(q,V,oe,xe),it=B,q;case cc:return B=B.get(oe.key===null?V:oe.key)||null,L(q,B,oe,xe);case Wn:var We=Bi(oe._debugInfo);return oe=mo(oe),q=ae(B,q,V,oe,xe),it=We,q}if(Hi(oe)||le(oe))return V=B.get(V)||null,B=Bi(oe._debugInfo),q=J(q,V,oe,xe,null),it=B,q;if(typeof oe.then=="function")return We=Bi(oe._debugInfo),q=ae(B,q,V,Tm(oe),xe),it=We,q;if(oe.$$typeof===Er)return ae(B,q,V,Gu(q,oe),xe);vm(q,oe)}return typeof oe=="function"&&bm(q,oe),typeof oe=="symbol"&&_m(q,oe),null}function Ie(B,q,V,oe){if(typeof V!="object"||V===null)return oe;switch(V.$$typeof){case ro:case cc:h(B,q,V);var xe=V.key;if(typeof xe!="string")break;if(oe===null){oe=new Set,oe.add(xe);break}if(!oe.has(xe)){oe.add(xe);break}Re(q,function(){console.error("Encountered two children with the same key, `%s`. Keys should be unique so that compo
2025-09-22 23:18:02 +03:00
%s
`,zc?"An error occurred in the <"+zc+"> component.":"An error occurred in one of your React components.",`Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://react.dev/link/error-boundaries to learn more about error boundaries.`)}function aE(t){var n=zc?"The above error occurred in the <"+zc+"> component.":"The above error occurred in one of your React components.",a="React will try to recreate this component tree from scratch using the error boundary you provided, "+((Zv||"Anonymous")+".");if(typeof t=="object"&&t!==null&&typeof t.environmentName=="string"){var l=t.environmentName;t=[`%o
2025-09-22 23:18:02 +03:00
%s
%s
`,t,n,a].slice(0),typeof t[0]=="string"?t.splice(0,1,vA+t[0],bA,kg+l+kg,_A):t.splice(0,0,vA,bA,kg+l+kg,_A),t.unshift(console),l=$R.apply(console.error,t),l()}else console.error(`%o
2025-09-22 23:18:02 +03:00
%s
%s
`,t,n,a)}function oE(t){Kv(t)}function xm(t,n){try{zc=n.source?K(n.source):null,Zv=null;var a=n.value;if(ne.actQueue!==null)ne.thrownErrors.push(a);else{var l=t.onUncaughtError;l(a,{componentStack:n.stack})}}catch(d){setTimeout(function(){throw d})}}function lE(t,n,a){try{zc=a.source?K(a.source):null,Zv=K(n);var l=t.onCaughtError;l(a.value,{componentStack:a.stack,errorBoundary:n.tag===1?n.stateNode:null})}catch(d){setTimeout(function(){throw d})}}function uT(t,n,a){return a=wn(a),a.tag=qv,a.payload={element:null},a.callback=function(){Re(n.source,xm,t,n)},a}function cT(t){return t=wn(t),t.tag=qv,t}function dT(t,n,a,l){var d=a.type.getDerivedStateFromError;if(typeof d=="function"){var p=l.value;t.payload=function(){return d(p)},t.callback=function(){nm(a),Re(l.source,lE,n,a,l)}}var _=a.stateNode;_!==null&&typeof _.componentDidCatch=="function"&&(t.callback=function(){nm(a),Re(l.source,lE,n,a,l),typeof d!="function"&&(vo===null?vo=new Set([this]):vo.add(this)),SR(this,l),typeof d=="function"||!(a.lanes&2)&&console.error("%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.",K(a)||"Unknown")})}function tL(t,n,a,l,d){if(a.flags|=32768,Us&&Rh(t,d),l!==null&&typeof l=="object"&&typeof l.then=="function"){if(n=a.alternate,n!==null&&nl(n,a,d,!0),ht&&(ya=!0),a=_s.current,a!==null){switch(a.tag){case 13:return Or===null?NT():a.alternate===null&&ni===_a&&(ni=ib),a.flags&=-257,a.flags|=65536,a.lanes=d,l===Bv?a.flags|=16384:(n=a.updateQueue,n===null?a.updateQueue=new Set([l]):n.add(l),IT(t,l,d)),!1;case 22:return a.flags|=65536,l===Bv?a.flags|=16384:(n=a.updateQueue,n===null?(n={transitions:null,markerInstances:null,retryQueue:new Set([l])},a.updateQueue=n):(a=n.retryQueue,a===null?n.retryQueue=new Set([l]):a.add(l)),IT(t,l,d)),!1}throw Error("Unexpected Suspense handler tag ("+a.tag+"). This is a bug in React.")}return IT(t,l,d),NT(),!1}if(ht)return ya=!0,n=_s.current,n!==null?(!(n.flags&65536)&&(n.flags|=256),n.flags|=65536,n.lanes=d,l!==zv&&il(Pi(Error("There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.",{cause:l}),a))):(l!==zv&&il(Pi(Error("There was an error while hydrating but React was able to recover by instead client rendering the entire root.",{cause:l}),a)),t=t.current.alternate,t.flags|=65536,d&=-d,t.lanes|=d,l=Pi(l,a),d=uT(t.stateNode,l,d),dl(t,d),ni!==wl&&(ni=Bc)),!1;var p=Pi(Error("There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.",{cause:l}),a);if(_f===null?_f=[p]:_f.push(p),ni!==wl&&(ni=Bc),n===null)return!0;l=Pi(l,a),a=n;do{switch(a.tag){case 3:return a.flags|=65536,t=d&-d,a.lanes|=t,t=uT(a.stateNode,l,t),dl(a,t),!1;case 1:if(n=a.type,p=a.stateNode,(a.flags&128)===0&&(typeof n.getDerivedStateFromError=="function"||p!==null&&typeof p.componentDidCatch=="function"&&(vo===null||!vo.has(p))))return a.flags|=65536,d&=-d,a.lanes|=d,d=cT(d),dT(d,t,a,l),dl(a,d),!1}a=a.return}while(a!==null);return!1}function qi(t,n,a,l){n.child=t===null?NC(n,null,a,l):Lc(n,t.child,a,l)}function uE(t,n,a,l,d){a=a.render;var p=n.ref;if("ref"in l){var _={};for(var M in l)M!=="ref"&&(_[M]=l[M])}else _=l;return pr(n),Ce(n),l=mh(t,n,a,_,p,d),M=yh(),Ae(),t!==null&&!Ii?(Th(t,n,d),aa(t,n,d)):(ht&&M&&el(n),n.flags|=1,qi(t,n,l,d),n.child)}function cE(t,n,a,l,d){if(t===null){var p=a.type;return typeof p=="function"&&!Ha(p)&&p.defaultProps===void 0&&a.compare===null?(a=dr(p),n.tag=15,n.type=a,fT(n,p),dE(t,n,a,l,d)):(t=Xd(a.type,null,l,n,n.mode,d),t.ref=n.ref,t.return=n,n.child=t)}if(p=t.child,!vT(t,d)){var _=p.memoizedProps;if(a=a.compare,a=a!==null?a:Is,a(_,l)&&t.ref===n.ref)return aa(t,n,d)}return n.flags|=1,t=Ls(p,l),t.ref=n.ref,t.return=n,n.child=t}function dE(t,n,a,l,d){if(t!==null){var p=t.memoizedProps;if(Is(p,l)&&t.ref===n.ref&&n.type===t.type)if(Ii=!1,n.pendingProps=l=p,vT(t,d))t.flags&131072&&(Ii=!0);else return n.lanes=t.lanes,aa(t,n,d)}return hT(t,n,a,l,d)}function hE(t,n,a){var l=n.pendingPro
2025-09-22 23:18:02 +03:00
%s uses %s but also contains the following legacy lifecycles:%s%s%s
The above lifecycles should be removed. Learn more about this warning here:
https://react.dev/link/unsafe-component-lifecycles`,p,L,_!==null?`
`+_:"",M!==null?`
`+M:"",N!==null?`
`+N:""))}}p=n.stateNode,_=Z(a)||"Component",p.render||(a.prototype&&typeof a.prototype.render=="function"?console.error("No `render` method found on the %s instance: did you accidentally return an object from the constructor?",_):console.error("No `render` method found on the %s instance: you may have forgotten to define `render`.",_)),!p.getInitialState||p.getInitialState.isReactClassApproved||p.state||console.error("getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?",_),p.getDefaultProps&&!p.getDefaultProps.isReactClassApproved&&console.error("getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.",_),p.contextType&&console.error("contextType was defined as an instance property on %s. Use a static property to define contextType instead.",_),a.childContextTypes&&!PC.has(a)&&(PC.add(a),console.error("%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)",_)),a.contextTypes&&!UC.has(a)&&(UC.add(a),console.error("%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)",_)),typeof p.componentShouldUpdate=="function"&&console.error("%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",_),a.prototype&&a.prototype.isPureReactComponent&&typeof p.shouldComponentUpdate<"u"&&console.error("%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.",Z(a)||"A pure component"),typeof p.componentDidUnmount=="function"&&console.error("%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?",_),typeof p.componentDidReceiveProps=="function"&&console.error("%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().",_),typeof p.componentWillRecieveProps=="function"&&console.error("%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",_),typeof p.UNSAFE_componentWillRecieveProps=="function"&&console.error("%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?",_),M=p.props!==l,p.props!==void 0&&M&&console.error("When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",_),p.defaultProps&&console.error("Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.",_,_),typeof p.getSnapshotBeforeUpdate!="function"||typeof p.componentDidUpdate=="function"||LC.has(a)||(LC.add(a),console.error("%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.",Z(a))),typeof p.getDerivedStateFromProps=="function"&&console.error("%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.",_),typeof p.getDerivedStateFromError=="function"&&console.error("%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.",_),typeof a.getSnapshotBeforeUpdate=="function"&&console.error("%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.",_),(M=p.state)&&(typeof M!=
%s.childContextTypes = ...`,n.displayName||n.name||"Component"),typeof n.getDerivedStateFromProps=="function"&&(t=Z(n)||"Unknown",YC[t]||(console.error("%s: Function components do not support getDerivedStateFromProps.",t),YC[t]=!0)),typeof n.contextType=="object"&&n.contextType!==null&&(n=Z(n)||"Unknown",VC[n]||(console.error("%s: Function components do not support contextType.",n),VC[n]=!0))}function pT(t){return{baseLanes:t,cachePool:rh()}}function mT(t,n,a){return t=t!==null?t.childLanes&~a:0,n&&(t|=es),t}function yE(t,n,a){var l,d=n.pendingProps;u(n)&&(n.flags|=128);var p=!1,_=(n.flags&128)!==0;if((l=_)||(l=t!==null&&t.memoizedState===null?!1:(_i.current&pf)!==0),l&&(p=!0,n.flags&=-129),l=(n.flags&32)!==0,n.flags&=-33,t===null){if(ht){if(p?eo(n):to(n),ht){var M=ii,N;if(!(N=!M)){e:{var L=M;for(N=Nr;L.nodeType!==8;){if(!N){N=null;break e}if(L=ds(L.nextSibling),L===null){N=null;break e}}N=L}N!==null?(Rs(),n.memoizedState={dehydrated:N,treeContext:Sl!==null?{id:ma,overflow:ga}:null,retryLane:536870912,hydrationErrors:null},L=D(18,null,null,Pt),L.stateNode=N,L.return=n,n.child=L,mn=n,ii=null,N=!0):N=!1,N=!N}N&&(Zd(n,M),Jr(n))}if(M=n.memoizedState,M!==null&&(M=M.dehydrated,M!==null))return GT(M)?n.lanes=32:n.lanes=536870912,null;ra(n)}return M=d.children,d=d.fallback,p?(to(n),p=n.mode,M=Mm({mode:"hidden",children:M},p),d=hr(d,p,a,null),M.return=n,d.return=n,M.sibling=d,n.child=M,p=n.child,p.memoizedState=pT(a),p.childLanes=mT(t,l,a),n.memoizedState=eb,d):(eo(n),gT(n,M))}var J=t.memoizedState;if(J!==null&&(M=J.dehydrated,M!==null)){if(_)n.flags&256?(eo(n),n.flags&=-257,n=yT(t,n,a)):n.memoizedState!==null?(to(n),n.child=t.child,n.flags|=128,n=null):(to(n),p=d.fallback,M=n.mode,d=Mm({mode:"visible",children:d.children},M),p=hr(p,M,a,null),p.flags|=2,d.return=n,p.return=n,d.sibling=p,n.child=d,Lc(n,t.child,null,a),d=n.child,d.memoizedState=pT(a),d.childLanes=mT(t,l,a),n.memoizedState=eb,n=p);else if(eo(n),ht&&console.error("We should not be hydrating here. This is a bug in React. Please file a bug."),GT(M)){if(l=M.nextSibling&&M.nextSibling.dataset,l){N=l.dgst;var se=l.msg;L=l.stck;var X=l.cstck}M=se,l=N,d=L,N=p=X,p=Error(M||"The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."),p.stack=d||"",p.digest=l,l=N===void 0?null:N,d={value:p,source:null,stack:l},typeof l=="string"&&Lv.set(p,d),il(d),n=yT(t,n,a)}else if(Ii||nl(t,n,a,!1),l=(a&t.childLanes)!==0,Ii||l){if(l=Lt,l!==null&&(d=a&-a,d=d&42?1:ir(d),d=d&(l.suspendedLanes|a)?0:d,d!==0&&d!==J.retryLane))throw J.retryLane=d,yi(t,d),li(l,t,d),FC;M.data===Sa||NT(),n=yT(t,n,a)}else M.data===Sa?(n.flags|=192,n.child=t.child,n=null):(t=J.treeContext,ii=ds(M.nextSibling),mn=n,ht=!0,xl=null,ya=!1,ys=null,Nr=!1,t!==null&&(Rs(),ms[gs++]=ma,ms[gs++]=ga,ms[gs++]=Sl,ma=t.id,ga=t.overflow,Sl=n),n=gT(n,d.children),n.flags|=4096);return n}return p?(to(n),p=d.fallback,M=n.mode,N=t.child,L=N.sibling,d=Ls(N,{mode:"hidden",children:d.children}),d.subtreeFlags=N.subtreeFlags&65011712,L!==null?p=Ls(L,p):(p=hr(p,M,a,null),p.flags|=2),p.return=n,d.return=n,d.sibling=p,n.child=d,d=p,p=n.child,M=t.child.memoizedState,M===null?M=pT(a):(N=M.cachePool,N!==null?(L=vi._currentValue,N=N.parent!==L?{parent:L,pool:L}:N):N=rh(),M={baseLanes:M.baseLanes|a,cachePool:N}),p.memoizedState=M,p.childLanes=mT(t,l,a),n.memoizedState=eb,d):(eo(n),a=t.child,t=a.sibling,a=Ls(a,{mode:"visible",children:d.children}),a.return=n,a.sibling=null,t!==null&&(l=n.deletions,l===null?(n.deletions=[t],n.flags|=16):l.push(t)),n.child=a,n.memoizedState=null,a)}function gT(t,n){return n=Mm({mode:"visible",children:n},t.mode),n.return=t,t.child=n}function Mm(t,n){return t=D(22,t,null,n),t.lanes=0,t.stateNode={_visibility:Jm,_pendingMarkers:null,_retryCache:null,_transitions:null},t}function yT(t,n,a){return Lc(n,t.child,null,a),t=gT(n,n.pendingProps.children),t.flags|=2,n.memoizedState=null,t}function TE(t,n,a){t.lanes|=n;var l=t.alternate;l!==null&&(l.lanes|=n),ea(t.return,n,a)}function vE(t,n){var a=Hi(t);return t=!a&&typeof le(t)=="function",a||t?(a=a?"array":
2025-09-22 23:18:02 +03:00
It looks like you wrote `+p+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:
`+p+`(() => {
async function fetchData() {
// You can await here
const response = await MyAPI.getData(someId);
// ...
}
fetchData();
}, [someId]); // Or [] if effect doesn't need props or state
Learn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching`:" You returned: "+l,Re(n,function(M,N){console.error("%s must not return anything besides a function, which is used for clean-up.%s",M,N)},p,_)}a=a.next}while(a!==d)}}catch(M){Nt(n,n.return,M)}}function tc(t,n,a){try{var l=n.updateQueue,d=l!==null?l.lastEffect:null;if(d!==null){var p=d.next;l=p;do{if((l.tag&t)===t){var _=l.inst,M=_.destroy;M!==void 0&&(_.destroy=void 0,(t&bi)!==Ts?we!==null&&typeof we.markComponentPassiveEffectUnmountStarted=="function"&&we.markComponentPassiveEffectUnmountStarted(n):(t&$i)!==Ts&&we!==null&&typeof we.markComponentLayoutEffectUnmountStarted=="function"&&we.markComponentLayoutEffectUnmountStarted(n),(t&gn)!==Ts&&(Vc=!0),d=n,Re(d,ER,d,a,M),(t&gn)!==Ts&&(Vc=!1),(t&bi)!==Ts?we!==null&&typeof we.markComponentPassiveEffectUnmountStopped=="function"&&we.markComponentPassiveEffectUnmountStopped():(t&$i)!==Ts&&we!==null&&typeof we.markComponentLayoutEffectUnmountStopped=="function"&&we.markComponentLayoutEffectUnmountStopped())}l=l.next}while(l!==p)}}catch(N){Nt(n,n.return,N)}}function EE(t,n){vr(t)?(gt(),Nh(n,t),en()):Nh(n,t)}function ST(t,n,a){vr(t)?(gt(),tc(a,t,n),en()):tc(a,t,n)}function ME(t){var n=t.updateQueue;if(n!==null){var a=t.stateNode;t.type.defaultProps||"ref"in t.memoizedProps||jc||(a.props!==t.memoizedProps&&console.error("Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",K(t)||"instance"),a.state!==t.memoizedState&&console.error("Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",K(t)||"instance"));try{Re(t,lm,n,a)}catch(l){Nt(t,t.return,l)}}}function rL(t,n,a){return t.getSnapshotBeforeUpdate(n,a)}function aL(t,n){var a=n.memoizedProps,l=n.memoizedState;n=t.stateNode,t.type.defaultProps||"ref"in t.memoizedProps||jc||(n.props!==t.memoizedProps&&console.error("Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",K(t)||"instance"),n.state!==t.memoizedState&&console.error("Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",K(t)||"instance"));try{var d=Tl(t.type,a,t.elementType===t.type),p=Re(t,rL,n,d,l);a=XC,p!==void 0||a.has(t.type)||(a.add(t.type),Re(t,function(){console.error("%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.",K(t))})),n.__reactInternalSnapshotBeforeUpdate=p}catch(_){Nt(t,t.return,_)}}function DE(t,n,a){a.props=Tl(t.type,t.memoizedProps),a.state=t.memoizedState,vr(t)?(gt(),Re(t,SC,t,n,a),en()):Re(t,SC,t,n,a)}function oL(t){var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var a=t.stateNode;break;case 30:a=t.stateNode;break;default:a=t.stateNode}if(typeof n=="function")if(vr(t))try{gt(),t.refCleanup=n(a)}finally{en()}else t.refCleanup=n(a);else typeof n=="string"?console.error("String refs are no longer supported."):n.hasOwnProperty("current")||console.error("Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().",K(t)),n.current=a}}function kh(t,n){try{Re(t,oL,t)}catch(a){Nt(t,n,a)}}function br(t,n){var a=t.ref,l=t.refCleanup;if(a!==null)if(typeof l=="function")try{if(vr(t))try{gt(),Re(t,l)}finally{en(t)}else Re(t,l)}catch(d){Nt(t,n,d)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof a=="function")try{if(vr(t))try{gt(),Re(t,a,null)}finally{en(t)}else Re(t,a,null)}catch(d){Nt(t,n,d)}else a.current=null}function CE(t,n,a,l){var d=t.memoizedProps,p=d.id,_=d.onCommit;d=d.onRender,n=n===null?"mount":"update",sg&&(n="nested-update"),typeof d=="function"&&
2025-09-22 23:18:02 +03:00
Error message:
%s`,a)}}function IT(t,n,a){var l=t.pingCache;if(l===null){l=t.pingCache=new CR;var d=new Set;l.set(n,d)}else d=l.get(n),d===void 0&&(d=new Set,l.set(n,d));d.has(a)||(rb=!0,d.add(a),l=TL.bind(null,t,n,a),Us&&Rh(t,a),n.then(l,l))}function TL(t,n,a){var l=t.pingCache;l!==null&&l.delete(n),t.pingedLanes|=t.suspendedLanes&a,t.warmLanes&=~a,YE()&&ne.actQueue===null&&console.error(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...).
2025-09-22 23:18:02 +03:00
When testing, code that resolves suspended data should be wrapped into act(...):
act(() => {
/* finish loading suspended data */
});
/* assert on the output */
This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`),Lt===t&&(lt&a)===a&&(ni===wl||ni===ib&&(lt&62914560)===lt&&Mr()-ob<JC?(_t&yn)===Zn&&rc(t,0):ab|=a,Ol===lt&&(Ol=0)),Sr(t)}function uM(t,n){n===0&&(n=Zi()),t=yi(t,n),t!==null&&(gi(t,n),Sr(t))}function vL(t){var n=t.memoizedState,a=0;n!==null&&(a=n.retryLane),uM(t,a)}function bL(t,n){var a=0;switch(t.tag){case 13:var l=t.stateNode,d=t.memoizedState;d!==null&&(a=d.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error("Pinged unknown suspense boundary type. This is probably a bug in React.")}l!==null&&l.delete(n),uM(t,a)}function LT(t,n,a){if(n.subtreeFlags&67117056)for(n=n.child;n!==null;){var l=t,d=n,p=d.type===qm;p=a||p,d.tag!==22?d.flags&67108864?p&&Re(d,cM,l,d,(d.mode&XD)===Pt):LT(l,d,p):d.memoizedState===null&&(p&&d.flags&8192?Re(d,cM,l,d):d.subtreeFlags&67108864&&Re(d,LT,l,d,p)),n=n.sibling}}function cM(t,n){var a=2<arguments.length&&arguments[2]!==void 0?arguments[2]:!0;Me(!0);try{jE(n),a&&VE(n),UE(t,n.alternate,n,!1),a&&BE(t,n,0,null,!1,0)}finally{Me(!1)}}function dM(t){var n=!0;t.current.mode&(sn|Ps)||(n=!1),LT(t,t.current,n)}function hM(t){if((_t&yn)===Zn){var n=t.tag;if(n===3||n===1||n===0||n===11||n===14||n===15){if(n=K(t)||"ReactComponent",Tg!==null){if(Tg.has(n))return;Tg.add(n)}else Tg=new Set([n]);Re(t,function(){console.error("Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously later calls tries to update the component. Move this work to useEffect instead.")})}}}function Rh(t,n){Us&&t.memoizedUpdaters.forEach(function(a){Hr(t,a,n)})}function _L(t,n){var a=ne.actQueue;return a!==null?(a.push(n),LR):hv(t,n)}function SL(t){YE()&&ne.actQueue===null&&Re(t,function(){console.error(`An update to %s inside a test was not wrapped in act(...).
2025-09-22 23:18:02 +03:00
When testing, code that causes React state updates should be wrapped into act(...):
act(() => {
/* fire events that update state */
});
/* assert on the output */
This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`,K(t))})}function Sr(t){t!==$c&&t.next===null&&($c===null?vg=$c=t:$c=$c.next=t),bg=!0,ne.actQueue!==null?pb||(pb=!0,gM()):fb||(fb=!0,gM())}function zh(t,n){if(!mb&&bg){mb=!0;do for(var a=!1,l=vg;l!==null;){if(!n)if(t!==0){var d=l.pendingLanes;if(d===0)var p=0;else{var _=l.suspendedLanes,M=l.pingedLanes;p=(1<<31-hn(42|t)+1)-1,p&=d&~(_&~M),p=p&201326741?p&201326741|1:p?p|2:0}p!==0&&(a=!0,mM(l,p))}else p=lt,p=Ci(l,l===Lt?p:0,l.cancelPendingCommit!==null||l.timeoutHandle!==jl),!(p&3)||Xt(l,p)||(a=!0,mM(l,p));l=l.next}while(a);mb=!1}}function xL(){RT()}function RT(){bg=pb=fb=!1;var t=0;Rl!==0&&(AL()&&(t=Rl),Rl=0);for(var n=Mr(),a=null,l=vg;l!==null;){var d=l.next,p=fM(l,n);p===0?(l.next=null,a===null?vg=d:a.next=d,d===null&&($c=a)):(a=l,(t!==0||p&3)&&(bg=!0)),l=d}zh(t,!1)}function fM(t,n){for(var a=t.suspendedLanes,l=t.pingedLanes,d=t.expirationTimes,p=t.pendingLanes&-62914561;0<p;){var _=31-hn(p),M=1<<_,N=d[_];N===-1?(!(M&a)||M&l)&&(d[_]=Vt(M,n)):N<=n&&(t.expiredLanes|=M),p&=~M}if(n=Lt,a=lt,a=Ci(t,t===n?a:0,t.cancelPendingCommit!==null||t.timeoutHandle!==jl),l=t.callbackNode,a===0||t===n&&(Mt===Nl||Mt===kl)||t.cancelPendingCommit!==null)return l!==null&&zT(l),t.callbackNode=null,t.callbackPriority=0;if(!(a&3)||Xt(t,a)){if(n=a&-a,n!==t.callbackPriority||ne.actQueue!==null&&l!==gb)zT(l);else return n;switch(Vr(a)){case hs:case Cr:a=pv;break;case fa:a=hc;break;case Ym:a=mv;break;default:a=hc}return l=pM.bind(null,t),ne.actQueue!==null?(ne.actQueue.push(l),a=gb):a=hv(a,l),t.callbackPriority=n,t.callbackNode=a,n}return l!==null&&zT(l),t.callbackPriority=2,t.callbackNode=null,2}function pM(t,n){if(rg=sg=!1,Yi!==Il&&Yi!==lb)return t.callbackNode=null,t.callbackPriority=0,null;var a=t.callbackNode;if(Lh()&&t.callbackNode!==a)return null;var l=lt;return l=Ci(t,t===Lt?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==jl),l===0?null:(GE(t,l,n),fM(t,Mr()),t.callbackNode!=null&&t.callbackNode===a?pM.bind(null,t):null)}function mM(t,n){if(Lh())return null;sg=rg,rg=!1,GE(t,n,!0)}function zT(t){t!==gb&&t!==null&&c5(t)}function gM(){ne.actQueue!==null&&ne.actQueue.push(function(){return RT(),null}),VR(function(){(_t&(yn|Hs))!==Zn?hv(fv,xL):RT()})}function jT(){return Rl===0&&(Rl=_e()),Rl}function yM(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:(be(t,"action"),Qo(""+t))}function TM(t,n){var a=n.ownerDocument.createElement("input");return a.name=n.name,a.value=n.value,t.id&&a.setAttribute("form",t.id),n.parentNode.insertBefore(a,n),t=new FormData(t),a.parentNode.removeChild(a),t}function EL(t,n,a,l,d){if(n==="submit"&&a&&a.stateNode===d){var p=yM((d[kn]||null).action),_=l.submitter;_&&(n=(n=_[kn]||null)?yM(n.formAction):_.getAttribute("formAction"),n!==null&&(p=n,_=null));var M=new Km("action","action",null,l,d);t.push({event:M,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(Rl!==0){var N=_?TM(d,_):new FormData(d),L={pending:!0,data:N,method:d.method,action:p};Object.freeze(L),dn(a,L,null,N)}}else typeof p=="function"&&(M.preventDefault(),N=_?TM(d,_):new FormData(d),L={pending:!0,data:N,method:d.method,action:p},Object.freeze(L),dn(a,L,p,N))},currentTarget:d}]})}}function Nm(t,n,a){t.currentTarget=a;try{n(t)}catch(l){Kv(l)}t.currentTarget=null}function vM(t,n){n=(n&4)!==0;for(var a=0;a<t.length;a++){var l=t[a];e:{var d=void 0,p=l.event;if(l=l.listeners,n)for(var _=l.length-1;0<=_;_--){var M=l[_],N=M.instance,L=M.currentTarget;if(M=M.listener,N!==d&&p.isPropagationStopped())break e;N!==null?Re(N,Nm,p,M,L):Nm(p,M,L),d=N}else for(_=0;_<l.length;_++){if(M=l[_],N=M.instance,L=M.currentTarget,M=M.listener,N!==d&&p.isPropagationStopped())break e;N!==null?Re(N,Nm,p,M,L):Nm(p,M,L),d=N}}}}function ut(t,n){yb.has(t)||console.error('Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.',t);var a=n[gv];a===void 0&&(a=n[gv]=new Set);var l=t+"__bubble";a.has(l)||(bM(n,t,2,!1),a.add(l))}function UT(t,n,a)
`).replace(zR,"")}function xM(t,n){return n=no(n),no(t)===n}function Om(){}function kt(t,n,a,l,d,p){switch(a){case"children":typeof l=="string"?(ks(l,n,!1),n==="body"||n==="textarea"&&l===""||Xr(t,l)):(typeof l=="number"||typeof l=="bigint")&&(ks(""+l,n,!1),n!=="body"&&Xr(t,""+l));break;case"className":Xe(t,"class",l);break;case"tabIndex":Xe(t,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":Xe(t,a,l);break;case"style":Yp(t,l,p);break;case"data":if(n!=="object"){Xe(t,"data",l);break}case"src":case"href":if(l===""&&(n!=="a"||a!=="href")){console.error(a==="src"?'An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.':'An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',a,a),t.removeAttribute(a);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(a);break}be(l,a),l=Qo(""+l),t.setAttribute(a,l);break;case"action":case"formAction":if(l!=null&&(n==="form"?a==="formAction"?console.error("You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>."):typeof l=="function"&&(d.encType==null&&d.method==null||Eg||(Eg=!0,console.error("Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden.")),d.target==null||xg||(xg=!0,console.error("Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window."))):n==="input"||n==="button"?a==="action"?console.error("You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>."):n!=="input"||d.type==="submit"||d.type==="image"||Sg?n!=="button"||d.type==null||d.type==="submit"||Sg?typeof l=="function"&&(d.name==null||uA||(uA=!0,console.error('Cannot specify a "name" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.')),d.formEncType==null&&d.formMethod==null||Eg||(Eg=!0,console.error("Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden.")),d.formTarget==null||xg||(xg=!0,console.error("Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window."))):(Sg=!0,console.error('A button can only specify a formAction along with type="submit" or no type.')):(Sg=!0,console.error('An input can only specify a formAction along with type="submit" or type="image".')):console.error(a==="action"?"You can only pass the action prop to <form>.":"You can only pass the formAction prop to <input> or <button>.")),typeof l=="function"){t.setAttribute(a,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof p=="function"&&(a==="formAction"?(n!=="input"&&kt(t,n,"name",d.name,d,null),kt(t,n,"formEncType",d.formEncType,d,null),kt(t,n,"formMethod",d.formMethod,d,null),kt(t,n,"formTarget",d.formTarget,d,null)):(kt(t,n,"encType",d.encType,d,null),kt(t,n,"method",d.method,d,null),kt(t,n,"target",d.target,d,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(a);break}be(l,a),l=Qo(""+l),t.setAttribute(a,l);break;case"onClick":l!=null&&(typeof l!="function"&&xr(a,l),t.onclick=Om);break;case"onScroll":l!=null&&(typeof l!="function"&&xr(a,l),ut("scroll",t));break;case"onScrollEnd":l!=null&&(typeof l!="function"&&xr(a,l),ut("scrollend",t));break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))
2025-09-22 23:18:02 +03:00
- `+Rm(n)+`
+ `+Rm(a),Error("Expected <link> not to update to be updated to a stylesheet with precedence. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key."+a);return _}if(n&&l!==null)throw a=`
2025-09-22 23:18:02 +03:00
- `+Rm(n)+`
+ `+Rm(a),Error("Expected stylesheet with precedence to not be updated to a different kind of <link>. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key."+a);return null;case"script":return n=a.async,a=a.src,typeof a=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(a=uc(a),n=A(d).hoistableScripts,l=n.get(a),l||(l={type:"script",instance:null,count:0,state:null},n.set(a,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error('getResource encountered a type it did not expect: "'+t+'". this is a bug in React.')}}function Rm(t){var n=0,a="<link";return typeof t.rel=="string"?(n++,a+=' rel="'+t.rel+'"'):ha.call(t,"rel")&&(n++,a+=' rel="'+(t.rel===null?"null":"invalid type "+typeof t.rel)+'"'),typeof t.href=="string"?(n++,a+=' href="'+t.href+'"'):ha.call(t,"href")&&(n++,a+=' href="'+(t.href===null?"null":"invalid type "+typeof t.href)+'"'),typeof t.precedence=="string"?(n++,a+=' precedence="'+t.precedence+'"'):ha.call(t,"precedence")&&(n++,a+=" precedence={"+(t.precedence===null?"null":"invalid type "+typeof t.precedence)+"}"),Object.getOwnPropertyNames(t).length>n&&(a+=" ..."),a+" />"}function lc(t){return'href="'+hi(t)+'"'}function Ph(t){return'link[rel="stylesheet"]['+t+"]"}function BM(t){return rt({},t,{"data-precedence":t.precedence,precedence:null})}function $L(t,n,a,l){t.querySelector('link[rel="preload"][as="style"]['+n+"]")?l.loading=Cf:(n=t.createElement("link"),l.preload=n,n.addEventListener("load",function(){return l.loading|=Cf}),n.addEventListener("error",function(){return l.loading|=gA}),Fi(n,"link",a),Q(n),t.head.appendChild(n))}function uc(t){return'[src="'+hi(t)+'"]'}function Bh(t){return"script[async]"+t}function qM(t,n,a){if(n.count++,n.instance===null)switch(n.type){case"style":var l=t.querySelector('style[data-href~="'+hi(a.href)+'"]');if(l)return n.instance=l,Q(l),l;var d=rt({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Q(l),Fi(l,"style",d),zm(l,a.precedence,t),n.instance=l;case"stylesheet":d=lc(a.href);var p=t.querySelector(Ph(d));if(p)return n.state.loading|=Ss,n.instance=p,Q(p),p;l=BM(a),(d=xs.get(d))&&XT(l,d),p=(t.ownerDocument||t).createElement("link"),Q(p);var _=p;return _._p=new Promise(function(M,N){_.onload=M,_.onerror=N}),Fi(p,"link",l),n.state.loading|=Ss,zm(p,a.precedence,t),n.instance=p;case"script":return p=uc(a.src),(d=t.querySelector(Bh(p)))?(n.instance=d,Q(d),d):(l=a,(d=xs.get(p))&&(l=rt({},a),WT(l,d)),t=t.ownerDocument||t,d=t.createElement("script"),Q(d),Fi(d,"link",l),t.head.appendChild(d),n.instance=d);case"void":return null;default:throw Error('acquireResource encountered a resource type it did not expect: "'+n.type+'". this is a bug in React.')}else n.type==="stylesheet"&&(n.state.loading&Ss)===Ul&&(l=n.instance,n.state.loading|=Ss,zm(l,a.precedence,t));return n.instance}function zm(t,n,a){for(var l=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),d=l.length?l[l.length-1]:null,p=d,_=0;_<l.length;_++){var M=l[_];if(M.dataset.precedence===n)p=M;else if(p!==d)break}p?p.parentNode.insertBefore(t,p.nextSibling):(n=a.nodeType===9?a.head:a,n.insertBefore(t,n.firstChild))}function XT(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.title==null&&(t.title=n.title)}function WT(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.integrity==null&&(t.integrity=n.integrity)}function FM(t,n,a){if(wg===null){var l=new Map,d=wg=new Map;d.set(a,l)}else d=wg,l=d.get(a),l||(l=new Map,d.set(a,l));if(l.has(t))return l;for(l.set(t,null),a=a.getElementsByTagName(t),d=0;d<a.length;d++){var p=a[d];if(!(p[$h]||p[nn]||t==="link"&&p.getAttribute("rel")==="stylesheet")&&p.namespaceURI!==mc){var _=p.getAttribute(n)||"";_=t+_;var M=l.get(_);M?M.push(p):l.set(_,[p])}}return l}function HM(t,n,a){t=t.ownerDocumen
2025-09-22 23:18:02 +03:00
Check the render method of %s.`,K(Kn)||"Unknown")),l=wn(n),l.payload={element:a},p=p===void 0?null:p,p!==null&&(typeof p!="function"&&console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",p),l.callback=p),a=mr(t,l,n),a!==null&&(li(a,t,n),Ya(a,t,n))}function QM(t,n){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var a=t.retryLane;t.retryLane=a!==0&&a<n?a:n}}function JT(t,n){QM(t,n),(t=t.alternate)&&QM(t,n)}function GM(t){if(t.tag===13){var n=yi(t,67108864);n!==null&&li(n,t,67108864),JT(t,67108864)}}function ZL(){return Kn}function JL(){for(var t=new Map,n=1,a=0;31>a;a++){var l=jt(n);t.set(n,l),n*=2}return t}function e5(t,n,a,l){var d=ne.T;ne.T=null;var p=bt.p;try{bt.p=hs,ev(t,n,a,l)}finally{bt.p=p,ne.T=d}}function t5(t,n,a,l){var d=ne.T;ne.T=null;var p=bt.p;try{bt.p=Cr,ev(t,n,a,l)}finally{bt.p=p,ne.T=d}}function ev(t,n,a,l){if(Og){var d=tv(l);if(d===null)BT(t,n,l,Ig,a),WM(t,l);else if(i5(d,t,n,a,l))l.stopPropagation();else if(WM(t,l),n&4&&-1<YR.indexOf(t)){for(;d!==null;){var p=qn(d);if(p!==null)switch(p.tag){case 3:if(p=p.stateNode,p.current.memoizedState.isDehydrated){var _=nt(p.pendingLanes);if(_!==0){var M=p;for(M.pendingLanes|=2,M.entangledLanes|=2;_;){var N=1<<31-hn(_);M.entanglements[1]|=N,_&=~N}Sr(p),(_t&(yn|Hs))===Zn&&(gg=Mr()+eA,zh(0,!1))}}break;case 13:M=yi(p,2),M!==null&&li(M,p,2),sc(),JT(p,2)}if(p=tv(l),p===null&&BT(t,n,l,Ig,a),p===d)break;d=p}d!==null&&l.stopPropagation()}else BT(t,n,l,null,a)}}function tv(t){return t=zu(t),iv(t)}function iv(t){if(Ig=null,t=Ji(t),t!==null){var n=P(t);if(n===null)t=null;else{var a=n.tag;if(a===13){if(t=Y(n),t!==null)return t;t=null}else if(a===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;t=null}else n!==t&&(t=null)}}return Ig=t,null}function XM(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return hs;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return Cr;case"message":switch(f5()){case fv:return hs;case pv:return Cr;case hc:case p5:return fa;case mv:return Ym;default:return fa}default:return fa}}function WM(t,n){switch(t){case"focusin":case"focusout":So=null;break;case"dragenter":case"dragleave":xo=null;break;case"mouseover":case"mouseout":Eo=null;break;case"pointerover":case"pointerout":Nf.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":kf.delete(n.pointerId)}}function qh(t,n,a,l,d,p){return t===null||t.nativeEvent!==p?(t={blockedOn:n,domEventName:a,eventSystemFlags:l,nativeEvent:p,targetContainers:[d]},n!==null&&(n=qn(n),n!==null&&GM(n)),t):(t.eventSystemFlags|=l,n=t.targetContainers,d!==null&&n.indexOf(d)===-1&&n.push(d),t)}function i5(t,n,a,l,d){switch(n){case"focusin":return So=qh(So,t,n,a,l,d),!0;case"dragenter":return xo=qh(xo,t,n,a,l,d),!0;case"mouseover":return Eo=qh(Eo,t,n,a,l,d),!0;case"pointerover":var p=d.pointerId;return Nf.set(p,qh(Nf.get(p)||null,t,n,a,l,d)),!0;case"gotpointercapture":return p=d.pointerId,kf.set(p,qh(kf.get(p)||null,t,n,a,l,d)),!0}return!1}function KM(t){var n=Ji(t.target);if(n!==null){var a=P(n);if(a!==null){i
2025-09-22 23:18:02 +03:00
* Move code with side effects to componentDidMount, and set initial state in the constructor.
Please update the following components: %s`,_)}0<l.size&&(_=x(l),console.error(`Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
2025-09-22 23:18:02 +03:00
* Move data fetching code or side effects to componentDidUpdate.
* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
Please update the following components: %s`,_)),0<p.size&&(_=x(p),console.error(`Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
2025-09-22 23:18:02 +03:00
* Move data fetching code or side effects to componentDidUpdate.
Please update the following components: %s`,_)),0<t.size&&(_=x(t),console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
2025-09-22 23:18:02 +03:00
* Move code with side effects to componentDidMount, and set initial state in the constructor.
* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
Please update the following components: %s`,_)),0<a.size&&(_=x(a),console.warn(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
2025-09-22 23:18:02 +03:00
* Move data fetching code or side effects to componentDidUpdate.
* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
Please update the following components: %s`,_)),0<d.size&&(_=x(d),console.warn(`componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
2025-09-22 23:18:02 +03:00
* Move data fetching code or side effects to componentDidUpdate.
* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
Please update the following components: %s`,_))};var ag=new Map,nC=new Set;Bs.recordLegacyContextWarning=function(t,n){for(var a=null,l=t;l!==null;)l.mode&sn&&(a=l),l=l.return;a===null?console.error("Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue."):!nC.has(t.type)&&(l=ag.get(a),t.type.contextTypes!=null||t.type.childContextTypes!=null||n!==null&&typeof n.getChildContext=="function")&&(l===void 0&&(l=[],ag.set(a,l)),l.push(t))},Bs.flushLegacyContextWarning=function(){ag.forEach(function(t){if(t.length!==0){var n=t[0],a=new Set;t.forEach(function(d){a.add(K(d)||"Component"),nC.add(d.type)});var l=x(a);Re(n,function(){console.error(`Legacy context API has been detected within a strict-mode tree.
2025-09-22 23:18:02 +03:00
The old API will be supported in all 16.x releases, but applications using it should migrate to the new version.
Please update the following components: %s
Learn more about this warning here: https://react.dev/link/legacy-context`,l)})}})},Bs.discardPendingWarnings=function(){nf=[],sf=[],rf=[],af=[],of=[],lf=[],ag=new Map};var uf=Error("Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."),sC=Error("Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."),og=Error("Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."),Bv={then:function(){console.error('Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.')}},cf=null,lg=!1,Ts=0,vs=1,gn=2,$i=4,bi=8,rC=0,aC=1,oC=2,qv=3,fo=!1,lC=!1,Fv=null,Hv=!1,Nc=ge(null),ug=ge(0),kc,uC=new Set,cC=new Set,Vv=new Set,dC=new Set,po=0,Ye=null,Ot=null,pi=null,cg=!1,Oc=!1,Al=!1,dg=0,df=0,Ta=null,bR=0,_R=25,ie=null,bs=null,va=-1,hf=!1,hg={readContext:Ut,use:$n,useCallback:Kt,useContext:Kt,useEffect:Kt,useImperativeHandle:Kt,useLayoutEffect:Kt,useInsertionEffect:Kt,useMemo:Kt,useReducer:Kt,useRef:Kt,useState:Kt,useDebugValue:Kt,useDeferredValue:Kt,useTransition:Kt,useSyncExternalStore:Kt,useId:Kt,useHostTransitionStatus:Kt,useFormState:Kt,useActionState:Kt,useOptimistic:Kt,useMemoCache:Kt,useCacheRefresh:Kt},$v=null,hC=null,Yv=null,fC=null,kr=null,qs=null,fg=null;$v={readContext:function(t){return Ut(t)},use:$n,useCallback:function(t,n){return ie="useCallback",st(),Qa(n),ti(t,n)},useContext:function(t){return ie="useContext",st(),Ut(t)},useEffect:function(t,n){return ie="useEffect",st(),Qa(n),te(t,n)},useImperativeHandle:function(t,n,a){return ie="useImperativeHandle",st(),Qa(a),je(t,n,a)},useInsertionEffect:function(t,n){ie="useInsertionEffect",st(),Qa(n),z(4,gn,t,n)},useLayoutEffect:function(t,n){return ie="useLayoutEffect",st(),Qa(n),Se(t,n)},useMemo:function(t,n){ie="useMemo",st(),Qa(n);var a=ne.H;ne.H=kr;try{return us(t,n)}finally{ne.H=a}},useReducer:function(t,n,a){ie="useReducer",st();var l=ne.H;ne.H=kr;try{return bh(t,n,a)}finally{ne.H=l}},useRef:function(t){return ie="useRef",st(),R(t)},useState:function(t){ie="useState",st();var n=ne.H;ne.H=kr;try{return Nn(t)}finally{ne.H=n}},useDebugValue:function(){ie="useDebugValue",st()},useDeferredValue:function(t,n){return ie="useDeferredValue",st(),sa(t,n)},useTransition:function(){return ie="useTransition",st(),nT()},useSyncExternalStore:function(t,n,a){return ie="useSyncExternalStore",st(),gl(t,n,a)},useId:function(){return ie="useId",st(),sT()},useFormState:function(t,n){return ie="useFormState",st(),Ju(),g(t,n)},useActionState:function(t,n){return ie="useActionState",st(),g(t,n)},useOptimistic:function(t){return ie="useOptimistic",st(),xh(t)},useHostTransitionStatus:yl,useMemoCache:ls,useCacheRefresh:function(){return ie="useCacheRefresh",st(),rT()}},hC={readContext:function(t){return Ut(t)},use:$n,useCallback:function(t,n){return ie="useCallback",me(),ti(t,n)},useContext:function(t){return ie="useContext",me(),Ut(t)},useEffect:function(t,n){return ie="useEffect",me(),te(t,n)},useImperativeHandle:function(t,n,a){return ie="useImperativeHandle",me(),je(t,n,a)},useInsertionEffect:function(t,n){ie="useInsertionEffect",me(),z(4,gn,t,n)},useLayoutEffect:function(t,n){return ie="useLayoutEffect",me(),Se(t,n)},useMemo:function(t,n){ie="useMemo",me();var a=ne.H;ne.H=kr;try{return us(t,n)}finally{ne.H=a}},useReducer:function(t,n,a){ie="useReducer",me();var l=ne.H;ne.H=kr;try{return bh(t
2025-09-22 23:18:02 +03:00
Check the render method of \``+d+"`."),p||l&&(p=`
Check the top-level render call using <`+l+">.");var _="";a!=null&&t!==a&&(l=null,typeof a.tag=="number"?l=K(a):typeof a.name=="string"&&(l=a.name),l&&(_=" It was passed a child from "+l+".")),Re(n,function(){console.error('Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',p,_)})}}};var Lc=tE(!0),NC=tE(!1),_s=ge(null),Or=null,Rc=1,pf=2,_i=ge(0),kC={},OC=new Set,IC=new Set,LC=new Set,RC=new Set,zC=new Set,jC=new Set,UC=new Set,PC=new Set,BC=new Set,qC=new Set;Object.freeze(kC);var Wv={enqueueSetState:function(t,n,a){t=t._reactInternals;var l=Xn(t),d=wn(l);d.payload=n,a!=null&&(oT(a),d.callback=a),n=mr(t,d,l),n!==null&&(li(n,t,l),Ya(n,t,l)),Je(t,l)},enqueueReplaceState:function(t,n,a){t=t._reactInternals;var l=Xn(t),d=wn(l);d.tag=aC,d.payload=n,a!=null&&(oT(a),d.callback=a),n=mr(t,d,l),n!==null&&(li(n,t,l),Ya(n,t,l)),Je(t,l)},enqueueForceUpdate:function(t,n){t=t._reactInternals;var a=Xn(t),l=wn(a);l.tag=oC,n!=null&&(oT(n),l.callback=n),n=mr(t,l,a),n!==null&&(li(n,t,a),Ya(n,t,a)),we!==null&&typeof we.markForceUpdateScheduled=="function"&&we.markForceUpdateScheduled(t,a)}},Kv=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(n))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},zc=null,Zv=null,FC=Error("This is not a real error. It's an implementation detail of React's selective hydration feature. If this leaks into userspace, it's a bug in React. Please file an issue."),Ii=!1,HC={},VC={},$C={},YC={},jc=!1,QC={},Jv={},eb={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},GC=!1,XC=null;XC=new Set;var ba=!1,ui=!1,tb=!1,WC=typeof WeakSet=="function"?WeakSet:Set,Li=null,Uc=null,Pc=null,mi=null,In=!1,Fs=null,mf=8192,MR={getCacheForType:function(t){var n=Ut(vi),a=n.data.get(t);return a===void 0&&(a=t(),n.data.set(t,a)),a},getOwner:function(){return Kn}};if(typeof Symbol=="function"&&Symbol.for){var gf=Symbol.for;gf("selector.component"),gf("selector.has_pseudo_class"),gf("selector.role"),gf("selector.test_id"),gf("selector.text")}var DR=[],CR=typeof WeakMap=="function"?WeakMap:Map,Zn=0,yn=2,Hs=4,_a=0,yf=1,Bc=2,ib=3,wl=4,pg=6,KC=5,_t=Zn,Lt=null,ot=null,lt=0,Ln=0,Tf=1,Nl=2,vf=3,ZC=4,nb=5,qc=6,bf=7,sb=8,kl=9,Mt=Ln,Jn=null,go=!1,Fc=!1,rb=!1,Ir=0,ni=_a,yo=0,To=0,ab=0,es=0,Ol=0,_f=null,Tn=null,mg=!1,ob=0,JC=300,gg=1/0,eA=500,Sf=null,vo=null,AR=0,wR=1,NR=2,Il=0,tA=1,iA=2,nA=3,kR=4,lb=5,Yi=0,bo=null,Hc=null,_o=0,ub=0,cb=null,sA=null,OR=50,xf=0,db=null,hb=!1,yg=!1,IR=50,Ll=0,Ef=null,Vc=!1,Tg=null,rA=!1,aA=new Set,LR={},vg=null,$c=null,fb=!1,pb=!1,bg=!1,mb=!1,Rl=0,gb={};(function(){for(var t=0;t<Iv.length;t++){var n=Iv[t],a=n.toLowerCase();n=n[0].toUpperCase()+n.slice(1),Hn(a,"on"+n)}Hn(VD,"onAnimationEnd"),Hn($D,"onAnimationIteration"),Hn(YD,"onAnimationStart"),Hn("dblclick","onDoubleClick"),Hn("focusin","onFocus"),Hn("focusout","onBlur"),Hn(dR,"onTransitionRun"),Hn(hR,"onTransitionStart"),Hn(fR,"onTransitionCancel"),Hn(QD,"onTransitionEnd")})(),De("onMouseEnter",["mouseout","mouseover"]),De("onMouseLeave",["mouseout","mouseover"]),De("onPointerEnter",["pointerout","pointerover"]),De("onPointerLeave",["pointerout","pointerover"]),Te("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Te("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Te("onBeforeInput",["compositionend","keypress","textInput","paste"]),Te("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Te("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Te("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Mf="abort canplay canplay
2025-09-22 23:18:02 +03:00
- react: `+(t+`
- react-dom: 19.1.0
Learn more: https://react.dev/warnings/version-mismatch`))}(),typeof Map=="function"&&Map.prototype!=null&&typeof Map.prototype.forEach=="function"&&typeof Set=="function"&&Set.prototype!=null&&typeof Set.prototype.clear=="function"&&typeof Set.prototype.forEach=="function"||console.error("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://react.dev/link/react-polyfills"),bt.findDOMNode=function(t){var n=t._reactInternals;if(n===void 0)throw typeof t.render=="function"?Error("Unable to find node on an unmounted component."):(t=Object.keys(t).join(","),Error("Argument appears to not be a ReactComponent. Keys: "+t));return t=G(n),t=t!==null?W(t):null,t=t===null?null:t.stateNode,t},!function(){var t={bundleType:1,version:"19.1.0",rendererPackageName:"react-dom",currentDispatcherRef:ne,reconcilerVersion:"19.1.0"};return t.overrideHookState=xA,t.overrideHookStateDeletePath=EA,t.overrideHookStateRenamePath=MA,t.overrideProps=DA,t.overridePropsDeletePath=CA,t.overridePropsRenamePath=AA,t.scheduleUpdate=wA,t.setErrorHandler=NA,t.setSuspenseHandler=kA,t.scheduleRefresh=O,t.scheduleRoot=k,t.setRefreshHandler=C,t.getCurrentFiber=ZL,t.getLaneLabelMap=JL,t.injectProfilingHooks=Gt,Qe(t)}()&&wr&&window.top===window.self&&(-1<navigator.userAgent.indexOf("Chrome")&&navigator.userAgent.indexOf("Edge")===-1||-1<navigator.userAgent.indexOf("Firefox"))){var OA=window.location.protocol;/^(https?|file):$/.test(OA)&&console.info("%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools"+(OA==="file:"?`
You might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq`:""),"font-weight:bold")}Kc.createRoot=function(t,n){if(!U(t))throw Error("Target container is not a DOM element.");eD(t);var a=!1,l="",d=rE,p=aE,_=oE,M=null;return n!=null&&(n.hydrate?console.warn("hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead."):typeof n=="object"&&n!==null&&n.$$typeof===ro&&console.error(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:
2025-09-22 23:18:02 +03:00
let root = createRoot(domContainer);
root.render(<App />);`),n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(l=n.identifierPrefix),n.onUncaughtError!==void 0&&(d=n.onUncaughtError),n.onCaughtError!==void 0&&(p=n.onCaughtError),n.onRecoverableError!==void 0&&(_=n.onRecoverableError),n.unstable_transitionCallbacks!==void 0&&(M=n.unstable_transitionCallbacks)),n=$M(t,1,!1,null,null,a,l,d,p,_,M,null),t[uo]=n.current,PT(t),new nv(n)},Kc.hydrateRoot=function(t,n,a){if(!U(t))throw Error("Target container is not a DOM element.");eD(t),n===void 0&&console.error("Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)");var l=!1,d="",p=rE,_=aE,M=oE,N=null,L=null;return a!=null&&(a.unstable_strictMode===!0&&(l=!0),a.identifierPrefix!==void 0&&(d=a.identifierPrefix),a.onUncaughtError!==void 0&&(p=a.onUncaughtError),a.onCaughtError!==void 0&&(_=a.onCaughtError),a.onRecoverableError!==void 0&&(M=a.onRecoverableError),a.unstable_transitionCallbacks!==void 0&&(N=a.unstable_transitionCallbacks),a.formState!==void 0&&(L=a.formState)),n=$M(t,1,!0,n,a??null,l,d,p,_,M,N,L),n.context=YM(null),a=n.current,l=Xn(a),l=ir(l),d=wn(l),d.callback=null,mr(a,d,l),a=l,n.current.lanes=a,gi(n,a),Sr(n),t[uo]=n.current,PT(t),new Bm(n)},Kc.version="19.1.0",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Kc}kb.exports=PA();var jb=kb.exports;const GR="";var Zc;typeof window<"u"?Zc=window:typeof Of<"u"?Zc=Of:typeof self<"u"?Zc=self:Zc={};var If=Zc;const j=Gc(If),BA=Db(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));var Ub=typeof Of<"u"?Of:typeof window<"u"?window:{},qA=BA,Jc;typeof document<"u"?Jc=document:(Jc=Ub["__GLOBAL_DOCUMENT_CACHE@4"],Jc||(Jc=Ub["__GLOBAL_DOCUMENT_CACHE@4"]=qA));var Pb=Jc;const ye=Gc(Pb);var Ug={exports:{}};function Zt(){return Zt=Object.assign?Object.assign.bind():function(s){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var r in i)({}).hasOwnProperty.call(i,r)&&(s[r]=i[r])}return s},Zt.apply(null,arguments)}const FA=Db(Object.freeze(Object.defineProperty({__proto__:null,get default(){return Zt}},Symbol.toStringTag,{value:"Module"})));var HA=$A,VA=Object.prototype.toString;function $A(s){if(!s)return!1;var e=VA.call(s);return e==="[object Function]"||typeof s=="function"&&e!=="[object RegExp]"||typeof window<"u"&&(s===window.setTimeout||s===window.alert||s===window.confirm||s===window.prompt)}function YA(s,e){var i=typeof Symbol<"u"&&s[Symbol.iterator]||s["@@iterator"];if(i)return(i=i.call(s)).next.bind(i);if(Array.isArray(s)||(i=QA(s))||e&&s&&typeof s.length=="number"){i&&(s=i);var r=0;return function(){return r>=s.length?{done:!0}:{done:!1,value:s[r++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function QA(s,e){if(s){if(typeof s=="string")return Bb(s,e);var i=Object.prototype.toString.call(s).slice(8,-1);if(i==="Object"&&s.constructor&&(i=s.constructor.name),i==="Map"||i==="Set")return Array.from(s);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return Bb(s,e)}}function Bb(s,e){(e==null||e>s.length)&&(e=s.length);for(var i=0,r=new Array(e);i<e;i++)r[i]=s[i];return r}var GA=function(){function s(){this.typeToInterceptorsMap_=new Map,this.enabled_=!1}var e=s.prototype;return e.getIsEnabled=function(){return this.enabled_},e.enable=function(){this.enabled_=!0},e.disable=function(){this.enabled_=!1},e.reset=function(){this.typeToInterceptorsMap_=new Map,this.enabled_=!1},e.addInterceptor=function(r,o){this.typeToInterceptorsMap_.has(r)||this.typeToInterceptorsMap_.set(r,new Set);var u=this.typeToInterceptorsMap_.get(r);return u.has(o)?!1:(u.add(o),!0)},e.removeInterceptor=function(r,o){var u=this.typeToInterceptorsMap_.get(r);return u&&u.has(o)?(u.delete(o),!0):!1},e.clearInterceptorsByType=function(r){var o=this.typeToInterceptorsMap_.get(r);return o?(this.typeToInterceptorsMap_.delete(r),this.typeToInterceptorsMap_.set(r,new Set),!0):!1},e.clear=function(){return this.typeToInterceptorsMap_.size?(this.typeToInterceptorsMap_=new Map,!0):!1},e.getForType=function(r){return this.typeToInterceptorsMap_.get(r)||new Set},e.execute=function(r,o){for(var u=this.getForType(r),c=YA(u),h;!(h=c()).done;){var m=h.value;try{o=m(o)}catch{}}return o},s}(),XA=GA,WA=function(){function s(){this.maxAttempts_=1,this.delayFactor_=.1,this.fuzzFactor_=.1,this.initialDelay_=1e3,this.enabled_=!1}var e=s.prototype;return e.getIsEnabled=function(){return this.enabled_},e.enable=function(){this.enabled_=!0},e.disable=function(){this.enabled_=!1},e.reset=function(){this.maxAttempts_=1,this.delayFactor_=.1,this.fuzzFactor_=.1,this.initialDelay_=1e3,this.enabled_=!1},e.getMaxAttempts=function(){return this.maxAttempts_},e.setMaxAttempts=function(r){this.maxAttempts_=r},e.getDelayFactor=function(){return this.delayFactor_},e.setDelayFactor=function(r){this.delayFactor_=r},e.getFuzzFactor=function(){return this.fuzzFactor_},e.setFuzzFactor=function(r){this.fuzzFactor_=r},e.getInitialDelay=function(){return this.initialDelay_},e.setInitialDelay=function(r){this.initialDelay_=r},e.createRetry=function(r){var o=r===void 0?{}:r,u=o.maxAttempts,c=o.delayFactor,h=o.fuzzFactor,m=o.initialDelay;return new KA({maxAttempts:u||this.maxAttempts_,delayFactor:c||this.delayFactor_,fuzzFactor:h||this.fuzzFactor_,initialDelay:m||this.initialDelay_})},s}(),KA=function(){function s(i){this.maxAttempts_=i.maxAttempts,this.delayFactor_=i.delayFactor,this.fuzzFactor_=i.fuzzFactor,this.currentDelay_=i.initialDelay,this.currentAttempt_=1}var e=s.prototype;return e.moveToNextAttempt=function(){this.currentAttempt_++;var r=this.currentDelay_*this.delayFactor_;this.currentDelay_=this.currentDelay_+r},e.shouldRetry=function(){return this.currentAttempt_<this.maxAttempts_},e.getCurrentDelay=function(){return this.currentDelay_},e.getCurrentMinPossibleDelay=function(){return(1-this.fuzzFactor_)*this.currentDelay_},e.getCurrentMaxPossibleDelay=function(){return(1+this.fuzzFactor_)*this.currentDelay_},e.getCurrentFuzzedDelay=function(){var r=this.getCurrentMinPossibleDelay(),o=this.getCurrentMaxPossibleDelay();return r+Math.random()*(o-r)},s}(),ZA=WA,JA=If,ew=function(e,i){return i===void 0&&(i=!1),function(r,o,u){if(r){e(r);return}if(o.statusCode>=400&&o.statusCode<=599){var c=u;if(i)if(JA.TextDecoder){var h=tw(o.headers&&o.headers["content-type"]);try{c=new TextDecoder(h).decode(u)}catch{}}else c=String.fromCharCode.apply(null,new Uint8Array(u));e({cause:c});return}e(null,u)}};function tw(s){return s===void 0&&(s=""),s.toLowerCase().split(";").reduce(function(e,i){var r=i.split("="),o=r[0],u=r[1];return o.trim()==="charset"?u.trim():e},"utf-8")}var iw=ew,qb=If,nw=FA,sw=HA,Fb=XA,rw=ZA;si.httpHandler=iw,si.requestInterceptorsStorage=new Fb,si.responseInterceptorsStorag
2025-09-22 23:18:02 +03:00
* @license
* slighly modified parse-headers 2.0.2 <https://github.com/kesla/parse-headers/>
* Copyright (c) 2014 David Björklund
* Available under the MIT license
* <https://github.com/kesla/parse-headers/blob/master/LICENCE>
*/var aw=function(e){var i={};return e&&e.trim().split(`
`).forEach(function(r){var o=r.indexOf(":"),u=r.slice(0,o).trim().toLowerCase(),c=r.slice(o+1).trim();typeof i[u]>"u"?i[u]=c:Array.isArray(i[u])?i[u].push(c):i[u]=[i[u],c]}),i};Ug.exports=si,Ug.exports.default=si,si.XMLHttpRequest=qb.XMLHttpRequest||cw,si.XDomainRequest="withCredentials"in new si.XMLHttpRequest?si.XMLHttpRequest:qb.XDomainRequest,ow(["get","put","post","patch","head","delete"],function(s){si[s==="delete"?"del":s]=function(e,i,r){return i=Hb(e,i,r),i.method=s.toUpperCase(),Pg(i)}});function ow(s,e){for(var i=0;i<s.length;i++)e(s[i])}function lw(s){for(var e in s)if(s.hasOwnProperty(e))return!1;return!0}function Hb(s,e,i){var r=s;return sw(e)?(i=e,typeof s=="string"&&(r={uri:s})):r=nw({},e,{uri:s}),r.callback=i,r}function si(s,e,i){return e=Hb(s,e,i),Pg(e)}function Pg(s){if(typeof s.callback>"u")throw new Error("callback argument missing");if(s.requestType&&si.requestInterceptorsStorage.getIsEnabled()){var e={uri:s.uri||s.url,headers:s.headers||{},body:s.body,metadata:s.metadata||{},retry:s.retry,timeout:s.timeout},i=si.requestInterceptorsStorage.execute(s.requestType,e);s.uri=i.uri,s.headers=i.headers,s.body=i.body,s.metadata=i.metadata,s.retry=i.retry,s.timeout=i.timeout}var r=!1,o=function(W,le,Z){r||(r=!0,s.callback(W,le,Z))};function u(){v.readyState===4&&!si.responseInterceptorsStorage.getIsEnabled()&&setTimeout(m,0)}function c(){var G=void 0;if(v.response?G=v.response:G=v.responseText||uw(v),P)try{G=JSON.parse(G)}catch{}return G}function h(G){if(clearTimeout(Y),clearTimeout(s.retryTimeout),G instanceof Error||(G=new Error(""+(G||"Unknown XMLHttpRequest Error"))),G.statusCode=0,!x&&si.retryManager.getIsEnabled()&&s.retry&&s.retry.shouldRetry()){s.retryTimeout=setTimeout(function(){s.retry.moveToNextAttempt(),s.xhr=v,Pg(s)},s.retry.getCurrentFuzzedDelay());return}if(s.requestType&&si.responseInterceptorsStorage.getIsEnabled()){var W={headers:$.headers||{},body:$.body,responseUrl:v.responseURL,responseType:v.responseType},le=si.responseInterceptorsStorage.execute(s.requestType,W);$.body=le.body,$.headers=le.headers}return o(G,$)}function m(){if(!x){var G;clearTimeout(Y),clearTimeout(s.retryTimeout),s.useXDR&&v.status===void 0?G=200:G=v.status===1223?204:v.status;var W=$,le=null;if(G!==0?(W={body:c(),statusCode:G,method:k,headers:{},url:D,rawRequest:v},v.getAllResponseHeaders&&(W.headers=aw(v.getAllResponseHeaders()))):le=new Error("Internal XMLHttpRequest Error"),s.requestType&&si.responseInterceptorsStorage.getIsEnabled()){var Z={headers:W.headers||{},body:W.body,responseUrl:v.responseURL,responseType:v.responseType},fe=si.responseInterceptorsStorage.execute(s.requestType,Z);W.body=fe.body,W.headers=fe.headers}return o(le,W,W.body)}}var v=s.xhr||null;v||(s.cors||s.useXDR?v=new si.XDomainRequest:v=new si.XMLHttpRequest);var S,x,D=v.url=s.uri||s.url,k=v.method=s.method||"GET",O=s.body||s.data,C=v.headers=s.headers||{},U=!!s.sync,P=!1,Y,$={body:void 0,headers:{},statusCode:0,method:k,url:D,rawRequest:v};if("json"in s&&s.json!==!1&&(P=!0,C.accept||C.Accept||(C.Accept="application/json"),k!=="GET"&&k!=="HEAD"&&(C["content-type"]||C["Content-Type"]||(C["Content-Type"]="application/json"),O=JSON.stringify(s.json===!0?O:s.json))),v.onreadystatechange=u,v.onload=m,v.onerror=h,v.onprogress=function(){},v.onabort=function(){x=!0,clearTimeout(s.retryTimeout)},v.ontimeout=h,v.open(k,D,!U,s.username,s.password),U||(v.withCredentials=!!s.withCredentials),!U&&s.timeout>0&&(Y=setTimeout(function(){if(!x){x=!0,v.abort("timeout");var G=new Error("XMLHttpRequest timeout");G.code="ETIMEDOUT",h(G)}},s.timeout)),v.setRequestHeader)for(S in C)C.hasOwnProperty(S)&&v.setRequestHeader(S,C[S]);else if(s.headers&&!lw(s.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in s&&(v.responseType=s.responseType),"beforeSend"in s&&typeof s.beforeSend=="function"&&s.beforeSend(v),v.send(O||null),v}function uw(s){try{if(s.responseType==="document")return s.responseXML;var e=s.responseXML&&s.responseXML.documentElement.nodeName==="parsererror";if(s.responseType===""&&!e)return s.responseXML}c
`;)++x;var D=S.substr(0,x);return S[x]==="\r"&&++x,S[x]===`
`&&++x,e.buffer=S.substr(x),D}function r(S){var x=new ed;if(td(S,function(k,O){switch(k){case"id":x.set(k,O);break;case"width":x.percent(k,O);break;case"lines":x.integer(k,O);break;case"regionanchor":case"viewportanchor":var C=O.split(",");if(C.length!==2)break;var U=new ed;if(U.percent("x",C[0]),U.percent("y",C[1]),!U.has("x")||!U.has("y"))break;x.set(k+"X",U.get("x")),x.set(k+"Y",U.get("y"));break;case"scroll":x.alt(k,O,["up"]);break}},/=/,/\s/),x.has("id")){var D=new(e.vttjs.VTTRegion||e.window.VTTRegion);D.width=x.get("width",100),D.lines=x.get("lines",3),D.regionAnchorX=x.get("regionanchorX",0),D.regionAnchorY=x.get("regionanchorY",100),D.viewportAnchorX=x.get("viewportanchorX",0),D.viewportAnchorY=x.get("viewportanchorY",100),D.scroll=x.get("scroll",""),e.onregion&&e.onregion(D),e.regionList.push({id:x.get("id"),region:D})}}function o(S){var x=new ed;td(S,function(D,k){switch(D){case"MPEGT":x.integer(D+"S",k);break;case"LOCA":x.set(D+"L",qg(k));break}},/[^\d]:/,/,/),e.ontimestampmap&&e.ontimestampmap({MPEGTS:x.get("MPEGTS"),LOCAL:x.get("LOCAL")})}function u(S){S.match(/X-TIMESTAMP-MAP/)?td(S,function(x,D){switch(x){case"X-TIMESTAMP-MAP":o(D);break}},/=/):td(S,function(x,D){switch(x){case"Region":r(D);break}},/:/)}try{var c;if(e.state==="INITIAL"){if(!/\r\n|\n/.test(e.buffer))return this;c=i();var h=c.match(/^WEBVTT([ \t].*)?$/);if(!h||!h[0])throw new zn(zn.Errors.BadSignature);e.state="HEADER"}for(var m=!1;e.buffer;){if(!/\r\n|\n/.test(e.buffer))return this;switch(m?m=!1:c=i(),e.state){case"HEADER":/:/.test(c)?u(c):c||(e.state="ID");continue;case"NOTE":c||(e.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(c)){e.state="NOTE";break}if(!c)continue;e.cue=new(e.vttjs.VTTCue||e.window.VTTCue)(0,0,"");try{e.cue.align="center"}catch{e.cue.align="middle"}if(e.state="CUE",c.indexOf("-->")===-1){e.cue.id=c;continue}case"CUE":try{hw(c,e.cue,e.regionList)}catch(S){e.reportOrThrowError(S),e.cue=null,e.state="BADCUE";continue}e.state="CUETEXT";continue;case"CUETEXT":var v=c.indexOf("-->")!==-1;if(!c||v&&(m=!0)){e.oncue&&e.oncue(e.cue),e.cue=null,e.state="ID";continue}e.cue.text&&(e.cue.text+=`
2025-09-22 23:18:02 +03:00
`),e.cue.text+=c.replace(/\u2028/g,`
`).replace(/u2029/g,`
`);continue;case"BADCUE":c||(e.state="ID");continue}}}catch(S){e.reportOrThrowError(S),e.state==="CUETEXT"&&e.cue&&e.oncue&&e.oncue(e.cue),e.cue=null,e.state=e.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},flush:function(){var s=this;try{if(s.buffer+=s.decoder.decode(),(s.cue||s.state==="HEADER")&&(s.buffer+=`
`,s.parse()),s.state==="INITIAL")throw new zn(zn.Errors.BadSignature)}catch(e){s.reportOrThrowError(e)}return s.onflush&&s.onflush(),this}};var Sw=ql,xw="auto",Ew={"":1,lr:1,rl:1},Mw={start:1,center:1,end:1,left:1,right:1,auto:1,"line-left":1,"line-right":1};function Dw(s){if(typeof s!="string")return!1;var e=Ew[s.toLowerCase()];return e?s.toLowerCase():!1}function Hg(s){if(typeof s!="string")return!1;var e=Mw[s.toLowerCase()];return e?s.toLowerCase():!1}function Kb(s,e,i){this.hasBeenReset=!1;var r="",o=!1,u=s,c=e,h=i,m=null,v="",S=!0,x="auto",D="start",k="auto",O="auto",C=100,U="center";Object.defineProperties(this,{id:{enumerable:!0,get:function(){return r},set:function(P){r=""+P}},pauseOnExit:{enumerable:!0,get:function(){return o},set:function(P){o=!!P}},startTime:{enumerable:!0,get:function(){return u},set:function(P){if(typeof P!="number")throw new TypeError("Start time must be set to a number.");u=P,this.hasBeenReset=!0}},endTime:{enumerable:!0,get:function(){return c},set:function(P){if(typeof P!="number")throw new TypeError("End time must be set to a number.");c=P,this.hasBeenReset=!0}},text:{enumerable:!0,get:function(){return h},set:function(P){h=""+P,this.hasBeenReset=!0}},region:{enumerable:!0,get:function(){return m},set:function(P){m=P,this.hasBeenReset=!0}},vertical:{enumerable:!0,get:function(){return v},set:function(P){var Y=Dw(P);if(Y===!1)throw new SyntaxError("Vertical: an invalid or illegal direction string was specified.");v=Y,this.hasBeenReset=!0}},snapToLines:{enumerable:!0,get:function(){return S},set:function(P){S=!!P,this.hasBeenReset=!0}},line:{enumerable:!0,get:function(){return x},set:function(P){if(typeof P!="number"&&P!==xw)throw new SyntaxError("Line: an invalid number or illegal string was specified.");x=P,this.hasBeenReset=!0}},lineAlign:{enumerable:!0,get:function(){return D},set:function(P){var Y=Hg(P);Y?(D=Y,this.hasBeenReset=!0):console.warn("lineAlign: an invalid or illegal string was specified.")}},position:{enumerable:!0,get:function(){return k},set:function(P){if(P<0||P>100)throw new Error("Position must be between 0 and 100.");k=P,this.hasBeenReset=!0}},positionAlign:{enumerable:!0,get:function(){return O},set:function(P){var Y=Hg(P);Y?(O=Y,this.hasBeenReset=!0):console.warn("positionAlign: an invalid or illegal string was specified.")}},size:{enumerable:!0,get:function(){return C},set:function(P){if(P<0||P>100)throw new Error("Size must be between 0 and 100.");C=P,this.hasBeenReset=!0}},align:{enumerable:!0,get:function(){return U},set:function(P){var Y=Hg(P);if(!Y)throw new SyntaxError("align: an invalid or illegal alignment string was specified.");U=Y,this.hasBeenReset=!0}}}),this.displayState=void 0}Kb.prototype.getCueAsHTML=function(){return WebVTT.convertCueToDOMTree(window,this.text)};var Cw=Kb,Aw={"":!0,up:!0};function ww(s){if(typeof s!="string")return!1;var e=Aw[s.toLowerCase()];return e?s.toLowerCase():!1}function id(s){return typeof s=="number"&&s>=0&&s<=100}function Nw(){var s=100,e=3,i=0,r=100,o=0,u=100,c="";Object.defineProperties(this,{width:{enumerable:!0,get:function(){return s},set:function(h){if(!id(h))throw new Error("Width must be between 0 and 100.");s=h}},lines:{enumerable:!0,get:function(){return e},set:function(h){if(typeof h!="number")throw new TypeError("Lines must be set to a number.");e=h}},regionAnchorY:{enumerable:!0,get:function(){return r},set:function(h){if(!id(h))throw new Error("RegionAnchorX must be between 0 and 100.");r=h}},regionAnchorX:{enumerable:!0,get:function(){return i},set:function(h){if(!id(h))throw new Error("RegionAnchorY must be between 0 and 100.");i=h}},viewportAnchorY:{enumerable:!0,get:function(){return u},set:function(h){if(!id(h))throw new Error("ViewportAnchorY must be between 0 and 100.");u=h}},viewportAnchorX:{enumerable:!0,get:function(){return o},set:function(h){if(!id(h))throw new Error("ViewportAnchorX must be between 0 and 100.");o=h}},scroll:{enumerable:!0,get:function(){return c},set:function(h){var m=ww(h);m===!1?console.warn("Scroll: an invalid or illegal string was specified."):c=m}}})}var kw=Nw,Lr=If,Do=
2025-09-22 23:18:02 +03:00
`);i>-1;i=this.buffer.indexOf(`
`))this.trigger("data",this.buffer.substring(0,i)),this.buffer=this.buffer.substring(i+1)}}const Pw=String.fromCharCode(9),$g=function(s){const e=/([0-9.]*)?@?([0-9.]*)?/.exec(s||""),i={};return e[1]&&(i.length=parseInt(e[1],10)),e[2]&&(i.offset=parseInt(e[2],10)),i},Bw=function(){const s="[^=]*",e='"[^"]*"|[^,]*',i="(?:"+s+")=(?:"+e+")";return new RegExp("(?:^|,)("+i+")")},an=function(s){const e={};if(!s)return e;const i=s.split(Bw());let r=i.length,o;for(;r--;)i[r]!==""&&(o=/([^=]*)=(.*)/.exec(i[r]).slice(1),o[0]=o[0].replace(/^\s+|\s+$/g,""),o[1]=o[1].replace(/^\s+|\s+$/g,""),o[1]=o[1].replace(/^['"](.*)['"]$/g,"$1"),e[o[0]]=o[1]);return e},t1=s=>{const e=s.split("x"),i={};return e[0]&&(i.width=parseInt(e[0],10)),e[1]&&(i.height=parseInt(e[1],10)),i};class qw extends Vg{constructor(){super(),this.customParsers=[],this.tagMappers=[]}push(e){let i,r;if(e=e.trim(),e.length===0)return;if(e[0]!=="#"){this.trigger("data",{type:"uri",uri:e});return}this.tagMappers.reduce((u,c)=>{const h=c(e);return h===e?u:u.concat([h])},[e]).forEach(u=>{for(let c=0;c<this.customParsers.length;c++)if(this.customParsers[c].call(this,u))return;if(u.indexOf("#EXT")!==0){this.trigger("data",{type:"comment",text:u.slice(1)});return}if(u=u.replace("\r",""),i=/^#EXTM3U/.exec(u),i){this.trigger("data",{type:"tag",tagType:"m3u"});return}if(i=/^#EXTINF:([0-9\.]*)?,?(.*)?$/.exec(u),i){r={type:"tag",tagType:"inf"},i[1]&&(r.duration=parseFloat(i[1])),i[2]&&(r.title=i[2]),this.trigger("data",r);return}if(i=/^#EXT-X-TARGETDURATION:([0-9.]*)?/.exec(u),i){r={type:"tag",tagType:"targetduration"},i[1]&&(r.duration=parseInt(i[1],10)),this.trigger("data",r);return}if(i=/^#EXT-X-VERSION:([0-9.]*)?/.exec(u),i){r={type:"tag",tagType:"version"},i[1]&&(r.version=parseInt(i[1],10)),this.trigger("data",r);return}if(i=/^#EXT-X-MEDIA-SEQUENCE:(\-?[0-9.]*)?/.exec(u),i){r={type:"tag",tagType:"media-sequence"},i[1]&&(r.number=parseInt(i[1],10)),this.trigger("data",r);return}if(i=/^#EXT-X-DISCONTINUITY-SEQUENCE:(\-?[0-9.]*)?/.exec(u),i){r={type:"tag",tagType:"discontinuity-sequence"},i[1]&&(r.number=parseInt(i[1],10)),this.trigger("data",r);return}if(i=/^#EXT-X-PLAYLIST-TYPE:(.*)?$/.exec(u),i){r={type:"tag",tagType:"playlist-type"},i[1]&&(r.playlistType=i[1]),this.trigger("data",r);return}if(i=/^#EXT-X-BYTERANGE:(.*)?$/.exec(u),i){r=Zt($g(i[1]),{type:"tag",tagType:"byterange"}),this.trigger("data",r);return}if(i=/^#EXT-X-ALLOW-CACHE:(YES|NO)?/.exec(u),i){r={type:"tag",tagType:"allow-cache"},i[1]&&(r.allowed=!/NO/.test(i[1])),this.trigger("data",r);return}if(i=/^#EXT-X-MAP:(.*)$/.exec(u),i){if(r={type:"tag",tagType:"map"},i[1]){const c=an(i[1]);c.URI&&(r.uri=c.URI),c.BYTERANGE&&(r.byterange=$g(c.BYTERANGE))}this.trigger("data",r);return}if(i=/^#EXT-X-STREAM-INF:(.*)$/.exec(u),i){r={type:"tag",tagType:"stream-inf"},i[1]&&(r.attributes=an(i[1]),r.attributes.RESOLUTION&&(r.attributes.RESOLUTION=t1(r.attributes.RESOLUTION)),r.attributes.BANDWIDTH&&(r.attributes.BANDWIDTH=parseInt(r.attributes.BANDWIDTH,10)),r.attributes["FRAME-RATE"]&&(r.attributes["FRAME-RATE"]=parseFloat(r.attributes["FRAME-RATE"])),r.attributes["PROGRAM-ID"]&&(r.attributes["PROGRAM-ID"]=parseInt(r.attributes["PROGRAM-ID"],10))),this.trigger("data",r);return}if(i=/^#EXT-X-MEDIA:(.*)$/.exec(u),i){r={type:"tag",tagType:"media"},i[1]&&(r.attributes=an(i[1])),this.trigger("data",r);return}if(i=/^#EXT-X-ENDLIST/.exec(u),i){this.trigger("data",{type:"tag",tagType:"endlist"});return}if(i=/^#EXT-X-DISCONTINUITY/.exec(u),i){this.trigger("data",{type:"tag",tagType:"discontinuity"});return}if(i=/^#EXT-X-PROGRAM-DATE-TIME:(.*)$/.exec(u),i){r={type:"tag",tagType:"program-date-time"},i[1]&&(r.dateTimeString=i[1],r.dateTimeObject=new Date(i[1])),this.trigger("data",r);return}if(i=/^#EXT-X-KEY:(.*)$/.exec(u),i){r={type:"tag",tagType:"key"},i[1]&&(r.attributes=an(i[1]),r.attributes.IV&&(r.attributes.IV.substring(0,2).toLowerCase()==="0x"&&(r.attributes.IV=r.attributes.IV.substring(2)),r.attributes.IV=r.attributes.IV.match(/.{8}/g),r.attributes.IV[0]=parseInt(r.attributes.IV[0],16),r.attributes.IV[1]=parseInt(r.attributes.IV[1]
`),this.manifest.dateRanges.length&&this.lastProgramDateTime===null&&this.trigger("warn",{message:"A playlist with EXT-X-DATERANGE tag must contain atleast one EXT-X-PROGRAM-DATE-TIME tag"}),this.lastProgramDateTime=null,this.trigger("end")}addParser(e){this.parseStream.addParser(e)}addTagMapper(e){this.parseStream.addTagMapper(e)}}var Co={mp4:/^(av0?1|avc0?[1234]|vp0?9|flac|opus|mp3|mp4a|mp4v|stpp.ttml.im1t)/,webm:/^(vp0?[89]|av0?1|opus|vorbis)/,ogg:/^(vp0?[89]|theora|flac|opus|vorbis)/,video:/^(av0?1|avc0?[1234]|vp0?[89]|hvc1|hev1|theora|mp4v)/,audio:/^(mp4a|flac|vorbis|opus|ac-[34]|ec-3|alac|mp3|speex|aac)/,text:/^(stpp.ttml.im1t)/,muxerVideo:/^(avc0?1)/,muxerAudio:/^(mp4a)/,muxerText:/a^/},Vw=["video","audio","text"],i1=["Video","Audio","Text"],n1=function(e){return e&&e.replace(/avc1\.(\d+)\.(\d+)/i,function(i,r,o){var u=("00"+Number(r).toString(16)).slice(-2),c=("00"+Number(o).toString(16)).slice(-2);return"avc1."+u+"00"+c})},Vs=function(e){e===void 0&&(e="");var i=e.split(","),r=[];return i.forEach(function(o){o=o.trim();var u;Vw.forEach(function(c){var h=Co[c].exec(o.toLowerCase());if(!(!h||h.length<=1)){u=c;var m=o.substring(0,h[1].length),v=o.replace(m,"");r.push({type:m,details:v,mediaType:c})}}),u||r.push({type:o,details:"",mediaType:"unknown"})}),r},$w=function(e,i){if(!e.mediaGroups.AUDIO||!i)return null;var r=e.mediaGroups.AUDIO[i];if(!r)return null;for(var o in r){var u=r[o];if(u.default&&u.playlists)return Vs(u.playlists[0].attributes.CODECS)}return null},s1=function(e){return e===void 0&&(e=""),Co.audio.test(e.trim().toLowerCase())},Yw=function(e){return e===void 0&&(e=""),Co.text.test(e.trim().toLowerCase())},Fl=function(e){if(!(!e||typeof e!="string")){var i=e.toLowerCase().split(",").map(function(u){return n1(u.trim())}),r="video";i.length===1&&s1(i[0])?r="audio":i.length===1&&Yw(i[0])&&(r="application");var o="mp4";return i.every(function(u){return Co.mp4.test(u)})?o="mp4":i.every(function(u){return Co.webm.test(u)})?o="webm":i.every(function(u){return Co.ogg.test(u)})&&(o="ogg"),r+"/"+o+';codecs="'+e+'"'}},nd=function(e,i){return e===void 0&&(e=""),i===void 0&&(i=!1),j.MediaSource&&j.MediaSource.isTypeSupported&&j.MediaSource.isTypeSupported(Fl(e))||i&&j.ManagedMediaSource&&j.ManagedMediaSource.isTypeSupported&&j.ManagedMediaSource.isTypeSupported(Fl(e))||!1},Qg=function(e){return e===void 0&&(e=""),e.toLowerCase().split(",").every(function(i){i=i.trim();for(var r=0;r<i1.length;r++){var o=i1[r];if(Co["muxer"+o].test(i))return!0}return!1})},r1="mp4a.40.2",Qw="avc1.4d400d",Gw=/^(audio|video|application)\/(x-|vnd\.apple\.)?mpegurl/i,Xw=/^application\/dash\+xml/i,a1=function(e){return Gw.test(e)?"hls":Xw.test(e)?"dash":e==="application/vnd.videojs.vhs+json"?"vhs-json":null},Ww=function(e){return e.toString(2).length},Kw=function(e){return Math.ceil(Ww(e)/8)},o1=function(e){return ArrayBuffer.isView==="function"?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer},Zw=function(e){return o1(e)},Ue=function(e){return e instanceof Uint8Array?e:(!Array.isArray(e)&&!Zw(e)&&!(e instanceof ArrayBuffer)&&(typeof e!="number"||typeof e=="number"&&e!==e?e=0:e=[e]),new Uint8Array(e&&e.buffer||e,e&&e.byteOffset||0,e&&e.byteLength||0))},Ri=j.BigInt||Number,Gg=[Ri("0x1"),Ri("0x100"),Ri("0x10000"),Ri("0x1000000"),Ri("0x100000000"),Ri("0x10000000000"),Ri("0x1000000000000"),Ri("0x100000000000000"),Ri("0x10000000000000000")];(function(){var s=new Uint16Array([65484]),e=new Uint8Array(s.buffer,s.byteOffset,s.byteLength);return e[0]===255?"big":e[0]===204?"little":"unknown"})();var Jw=function(e,i){var r=i===void 0?{}:i,o=r.signed,u=o===void 0?!1:o,c=r.le,h=c===void 0?!1:c;e=Ue(e);var m=h?"reduce":"reduceRight",v=e[m]?e[m]:Array.prototype[m],S=v.call(e,function(D,k,O){var C=h?O:Math.abs(O+1-e.length);return D+Ri(k)*Gg[C]},Ri(0));if(u){var x=Gg[e.length]/Ri(2)-Ri(1);S=Ri(S),S>x&&(S-=x,S-=x,S-=Ri(2))}return Number(S)},e4=function(e,i){var r=i===void 0?{}:i,o=r.le,u=o===void 0?!1:o;(typeof e!="bigint"&&typeof e!="number"||typeof e=="number"&&e!==e)&&(e=0),e=Ri(e);for(var c=Kw(e),h=new Uint8Array(new ArrayBuffer(c)),m=0;m<
`,nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nhArr:"⇎",nharr:"↮",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlArr:"⇍",nlarr:"↚",nldr:"‥",nlE:"≦̸",nle:"≰",nLeftarrow:"⇍",nleftarrow:"↚",nLeftrightarrow:"⇎",nleftrightarrow:"↮",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"⁠",NonBreakingSpace:" ",Nopf:"ℕ",nopf:"𝕟",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangle:"⋪",NotLeftTriangleBar:"⧏̸",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangle:"⋫",NotRightTriangleBar:"⧐̸",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",npar:"∦",nparallel:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",npre:"⪯̸",nprec:"⊀",npreceq:"⪯̸",nrArr:"⇏",nrarr:"↛",nrarrc:"⤳̸",nrarrw:"↝̸",nRightarrow:"⇏",nrightarrow:"↛",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:" ",nvap:"≍⃒",nVDash:"⊯",nVdash:"⊮",nvDash:"⊭",nvdash:"⊬",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwArr:"⇖",nwarr:"↖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",ocir:"⊚",Ocirc:"Ô",ocirc:"ô",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"‘",operp:"⦹",oplus:"⊕",Or:"⩔",or:"∨",orarr:"↻",ord:"⩝",order:"ℴ",orderof:"ℴ",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"ℴ",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",Otimes:"⨷",otimes:"⊗",otimesas:"⨶",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",par:"∥",para:"¶",parallel:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п"
2025-09-22 23:18:02 +03:00
`).replace(/[\r\u0085\u2028]/g,`
`)}function W1(s){this.options=s||{locator:{}}}W1.prototype.parseFromString=function(s,e){var i=this.options,r=new A4,o=i.domBuilder||new fd,u=i.errorHandler,c=i.locator,h=i.xmlns||{},m=/\/x?html?$/.test(e),v=m?Y1.HTML_ENTITIES:Y1.XML_ENTITIES;c&&o.setDocumentLocator(c),r.errorHandler=w4(u,o,c),r.domBuilder=i.domBuilder||o,m&&(h[""]=G1.HTML),h.xml=h.xml||G1.XML;var S=i.normalizeLineEndings||X1;return s&&typeof s=="string"?r.parse(S(s),h,v):r.errorHandler.error("invalid doc source"),o.doc};function w4(s,e,i){if(!s){if(e instanceof fd)return e;s=e}var r={},o=s instanceof Function;i=i||{};function u(c){var h=s[c];!h&&o&&(h=s.length==2?function(m){s(c,m)}:s),r[c]=h&&function(m){h("[xmldom "+c+"] "+m+l0(i))}||function(){}}return u("warning"),u("error"),u("fatalError"),r}function fd(){this.cdata=!1}function Wl(s,e){e.lineNumber=s.lineNumber,e.columnNumber=s.columnNumber}fd.prototype={startDocument:function(){this.doc=new D4().createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(s,e,i,r){var o=this.doc,u=o.createElementNS(s,i||e),c=r.length;$f(this,u),this.currentElement=u,this.locator&&Wl(this.locator,u);for(var h=0;h<c;h++){var s=r.getURI(h),m=r.getValue(h),i=r.getQName(h),v=o.createAttributeNS(s,i);this.locator&&Wl(r.getLocator(h),v),v.value=v.nodeValue=m,u.setAttributeNode(v)}},endElement:function(s,e,i){var r=this.currentElement;r.tagName,this.currentElement=r.parentNode},startPrefixMapping:function(s,e){},endPrefixMapping:function(s){},processingInstruction:function(s,e){var i=this.doc.createProcessingInstruction(s,e);this.locator&&Wl(this.locator,i),$f(this,i)},ignorableWhitespace:function(s,e,i){},characters:function(s,e,i){if(s=K1.apply(this,arguments),s){if(this.cdata)var r=this.doc.createCDATASection(s);else var r=this.doc.createTextNode(s);this.currentElement?this.currentElement.appendChild(r):/^\s*$/.test(s)&&this.doc.appendChild(r),this.locator&&Wl(this.locator,r)}},skippedEntity:function(s){},endDocument:function(){this.doc.normalize()},setDocumentLocator:function(s){(this.locator=s)&&(s.lineNumber=0)},comment:function(s,e,i){s=K1.apply(this,arguments);var r=this.doc.createComment(s);this.locator&&Wl(this.locator,r),$f(this,r)},startCDATA:function(){this.cdata=!0},endCDATA:function(){this.cdata=!1},startDTD:function(s,e,i){var r=this.doc.implementation;if(r&&r.createDocumentType){var o=r.createDocumentType(s,e,i);this.locator&&Wl(this.locator,o),$f(this,o),this.doc.doctype=o}},warning:function(s){console.warn("[xmldom warning] "+s,l0(this.locator))},error:function(s){console.error("[xmldom error] "+s,l0(this.locator))},fatalError:function(s){throw new C4(s,this.locator)}};function l0(s){if(s)return`
@`+(s.systemId||"")+"#[line:"+s.lineNumber+",col:"+s.columnNumber+"]"}function K1(s,e,i){return typeof s=="string"?s.substr(e,i):s.length>=e+i||e?new java.lang.String(s,e,i)+"":s}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(s){fd.prototype[s]=function(){return null}});function $f(s,e){s.currentElement?s.currentElement.appendChild(e):s.doc.appendChild(e)}Hf.__DOMHandler=fd,Hf.normalizeLineEndings=X1,Hf.DOMParser=W1;var N4=Hf.DOMParser;/*! @name mpd-parser @version 1.3.1 @license Apache-2.0 */const Z1=s=>!!s&&typeof s=="object",Ei=(...s)=>s.reduce((e,i)=>(typeof i!="object"||Object.keys(i).forEach(r=>{Array.isArray(e[r])&&Array.isArray(i[r])?e[r]=e[r].concat(i[r]):Z1(e[r])&&Z1(i[r])?e[r]=Ei(e[r],i[r]):e[r]=i[r]}),e),{}),J1=s=>Object.keys(s).map(e=>s[e]),k4=(s,e)=>{const i=[];for(let r=s;r<e;r++)i.push(r);return i},Kl=s=>s.reduce((e,i)=>e.concat(i),[]),e_=s=>{if(!s.length)return[];const e=[];for(let i=0;i<s.length;i++)e.push(s[i]);return e},O4=(s,e)=>s.reduce((i,r,o)=>(r[e]&&i.push(o),i),[]),I4=(s,e)=>J1(s.reduce((i,r)=>(r.forEach(o=>{i[e(o)]=o}),i),{}));var Zl={INVALID_NUMBER_OF_PERIOD:"INVALID_NUMBER_OF_PERIOD",INVALID_NUMBER_OF_CONTENT_STEERING:"INVALID_NUMBER_OF_CONTENT_STEERING",DASH_EMPTY_MANIFEST:"DASH_EMPTY_MANIFEST",DASH_INVALID_XML:"DASH_INVALID_XML",NO_BASE_URL:"NO_BASE_URL",MISSING_SEGMENT_INFORMATION:"MISSING_SEGMENT_INFORMATION",SEGMENT_TIME_UNSPECIFIED:"SEGMENT_TIME_UNSPECIFIED",UNSUPPORTED_UTC_TIMING_SCHEME:"UNSUPPORTED_UTC_TIMING_SCHEME"};const pd=({baseUrl:s="",source:e="",range:i="",indexRange:r=""})=>{const o={uri:e,resolvedUri:zf(s||"",e)};if(i||r){const c=(i||r).split("-");let h=j.BigInt?j.BigInt(c[0]):parseInt(c[0],10),m=j.BigInt?j.BigInt(c[1]):parseInt(c[1],10);h<Number.MAX_SAFE_INTEGER&&typeof h=="bigint"&&(h=Number(h)),m<Number.MAX_SAFE_INTEGER&&typeof m=="bigint"&&(m=Number(m));let v;typeof m=="bigint"||typeof h=="bigint"?v=j.BigInt(m)-j.BigInt(h)+j.BigInt(1):v=m-h+1,typeof v=="bigint"&&v<Number.MAX_SAFE_INTEGER&&(v=Number(v)),o.byterange={length:v,offset:h}}return o},L4=s=>{let e;return typeof s.offset=="bigint"||typeof s.length=="bigint"?e=j.BigInt(s.offset)+j.BigInt(s.length)-j.BigInt(1):e=s.offset+s.length-1,`${s.offset}-${e}`},t_=s=>(s&&typeof s!="number"&&(s=parseInt(s,10)),isNaN(s)?null:s),R4={static(s){const{duration:e,timescale:i=1,sourceDuration:r,periodDuration:o}=s,u=t_(s.endNumber),c=e/i;return typeof u=="number"?{start:0,end:u}:typeof o=="number"?{start:0,end:o/c}:{start:0,end:r/c}},dynamic(s){const{NOW:e,clientOffset:i,availabilityStartTime:r,timescale:o=1,duration:u,periodStart:c=0,minimumUpdatePeriod:h=0,timeShiftBufferDepth:m=1/0}=s,v=t_(s.endNumber),S=(e+i)/1e3,x=r+c,k=S+h-x,O=Math.ceil(k*o/u),C=Math.floor((S-x-m)*o/u),U=Math.floor((S-x)*o/u);return{start:Math.max(0,C),end:typeof v=="number"?v:Math.min(O,U)}}},z4=s=>e=>{const{duration:i,timescale:r=1,periodStart:o,startNumber:u=1}=s;return{number:u+e,duration:i/r,timeline:o,time:e*i}},u0=s=>{const{type:e,duration:i,timescale:r=1,periodDuration:o,sourceDuration:u}=s,{start:c,end:h}=R4[e](s),m=k4(c,h).map(z4(s));if(e==="static"){const v=m.length-1,S=typeof o=="number"?o:u;m[v].duration=S-i/r*v}return m},i_=s=>{const{baseUrl:e,initialization:i={},sourceDuration:r,indexRange:o="",periodStart:u,presentationTime:c,number:h=0,duration:m}=s;if(!e)throw new Error(Zl.NO_BASE_URL);const v=pd({baseUrl:e,source:i.sourceURL,range:i.range}),S=pd({baseUrl:e,source:e,indexRange:o});if(S.map=v,m){const x=u0(s);x.length&&(S.duration=x[0].duration,S.timeline=x[0].timeline)}else r&&(S.duration=r,S.timeline=u);return S.presentationTime=c||u,S.number=h,[S]},c0=(s,e,i)=>{const r=s.sidx.map?s.sidx.map:null,o=s.sidx.duration,u=s.timeline||0,c=s.sidx.byterange,h=c.offset+c.length,m=e.timescale,v=e.references.filter(U=>U.referenceType!==1),S=[],x=s.endList?"static":"dynamic",D=s.sidx.timeline;let k=D,O=s.mediaSequence||0,C;typeof e.firstOffset=="bigint"?C=j.BigInt(h)+e.firstOffset:C=h+e.firstOffset;for(let U=0;U<v.lengt
2025-09-22 23:18:02 +03:00
* @license
* Video.js 8.23.3 <http://videojs.com/>
* Copyright Brightcove, Inc. <https://www.brightcove.com/>
* Available under Apache License Version 2.0
* <https://github.com/videojs/video.js/blob/main/LICENSE>
*
* Includes vtt.js <https://github.com/mozilla/vtt.js>
* Available under Apache License Version 2.0
* <https://github.com/mozilla/vtt.js/blob/main/LICENSE>
*/var _0="8.23.3";const Pr={},wa=function(s,e){return Pr[s]=Pr[s]||[],e&&(Pr[s]=Pr[s].concat(e)),Pr[s]},VN=function(s,e){wa(s,e)},b_=function(s,e){const i=wa(s).indexOf(e);return i<=-1?!1:(Pr[s]=Pr[s].slice(),Pr[s].splice(i,1),!0)},$N=function(s,e){wa(s,[].concat(e).map(i=>{const r=(...o)=>(b_(s,r),i(...o));return r}))},Kf={prefixed:!0},Zf=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror","fullscreen"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror","-webkit-full-screen"]],__=Zf[0];let yd;for(let s=0;s<Zf.length;s++)if(Zf[s][1]in ye){yd=Zf[s];break}if(yd){for(let s=0;s<yd.length;s++)Kf[__[s]]=yd[s];Kf.prefixed=yd[0]!==__[0]}let Sn=[];const YN=(s,e,i)=>(r,o,u)=>{const c=e.levels[o],h=new RegExp(`^(${c})$`);let m=s;if(r!=="log"&&u.unshift(r.toUpperCase()+":"),i&&(m=`%c${s}`,u.unshift(i)),u.unshift(m+":"),Sn){Sn.push([].concat(u));const S=Sn.length-1e3;Sn.splice(0,S>0?S:0)}if(!j.console)return;let v=j.console[r];!v&&r==="debug"&&(v=j.console.info||j.console.log),!(!v||!c||!h.test(r))&&v[Array.isArray(u)?"apply":"call"](j.console,u)};function S0(s,e=":",i=""){let r="info",o;function u(...c){o("log",r,c)}return o=YN(s,u,i),u.createLogger=(c,h,m)=>{const v=h!==void 0?h:e,S=m!==void 0?m:i,x=`${s} ${v} ${c}`;return S0(x,v,S)},u.createNewLogger=(c,h,m)=>S0(c,h,m),u.levels={all:"debug|log|warn|error",off:"",debug:"debug|log|warn|error",info:"log|warn|error",warn:"warn|error",error:"error",DEFAULT:r},u.level=c=>{if(typeof c=="string"){if(!u.levels.hasOwnProperty(c))throw new Error(`"${c}" in not a valid log level`);r=c}return r},u.history=()=>Sn?[].concat(Sn):[],u.history.filter=c=>(Sn||[]).filter(h=>new RegExp(`.*${c}.*`).test(h[0])),u.history.clear=()=>{Sn&&(Sn.length=0)},u.history.disable=()=>{Sn!==null&&(Sn.length=0,Sn=null)},u.history.enable=()=>{Sn===null&&(Sn=[])},u.error=(...c)=>o("error",r,c),u.warn=(...c)=>o("warn",r,c),u.debug=(...c)=>o("debug",r,c),u}const at=S0("VIDEOJS"),S_=at.createLogger,QN=Object.prototype.toString,x_=function(s){return Qs(s)?Object.keys(s):[]};function tu(s,e){x_(s).forEach(i=>e(s[i],i))}function E_(s,e,i=0){return x_(s).reduce((r,o)=>e(r,s[o],o),i)}function Qs(s){return!!s&&typeof s=="object"}function iu(s){return Qs(s)&&QN.call(s)==="[object Object]"&&s.constructor===Object}function Ct(...s){const e={};return s.forEach(i=>{i&&tu(i,(r,o)=>{if(!iu(r)){e[o]=r;return}iu(e[o])||(e[o]={}),e[o]=Ct(e[o],r)})}),e}function M_(s={}){const e=[];for(const i in s)if(s.hasOwnProperty(i)){const r=s[i];e.push(r)}return e}function Jf(s,e,i,r=!0){const o=c=>Object.defineProperty(s,e,{value:c,enumerable:!0,writable:!0}),u={configurable:!0,enumerable:!0,get(){const c=i();return o(c),c}};return r&&(u.set=o),Object.defineProperty(s,e,u)}var GN=Object.freeze({__proto__:null,each:tu,reduce:E_,isObject:Qs,isPlain:iu,merge:Ct,values:M_,defineLazyProperty:Jf});let x0=!1,D_=null,Ms=!1,C_,A_=!1,nu=!1,su=!1,Gs=!1,E0=null,ep=null;const XN=!!(j.cast&&j.cast.framework&&j.cast.framework.CastReceiverContext);let w_=null,tp=!1,ip=!1,np=!1,sp=!1,rp=!1,ap=!1,op=!1;const Td=!!(ru()&&("ontouchstart"in j||j.navigator.maxTouchPoints||j.DocumentTouch&&j.document instanceof j.DocumentTouch)),Na=j.navigator&&j.navigator.userAgentData;if(Na&&Na.platform&&Na.brands&&(Ms=Na.platform==="Android",nu=!!Na.brands.find(s=>s.brand==="Microsoft Edge"),su=!!Na.brands.find(s=>s.brand==="Chromium"),Gs=!nu&&su,E0=ep=(Na.brands.find(s=>s.brand==="Chromium")||{}).version||null,ip=Na.platform==="Windows"),!su){const s=j.navigator&&j.navigator.userAgent||"";x0=/iPod/i.test(s),D_=function(){const e=s.match(/OS (\d+)_/i);return e&&e[1]?e[1]:null}(),Ms=/Android/i.test(s),C_=function(){const e=s.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i);if(!e)return null;const i=e[1]&&parseFloat(e[1]),r=e[2]&&parseFloat(e[2]);return i&&r?parseFloat(e[1]+"."+e[2]):i||null}(),A_=/Firefox/i.test(s),nu=/Edg/i.test(s),su=/Chrome/i.test(s)||/CriOS/i.test(s),Gs=!nu&&su,E0=ep=function(){const e=s.match(/(Chrome|C
2025-09-22 23:18:02 +03:00
<defs>
<symbol viewBox="0 0 48 48" id="vjs-icon-play">
<path d="M16 10v28l22-14z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-pause">
<path d="M12 38h8V10h-8v28zm16-28v28h8V10h-8z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-audio">
<path d="M24 2C14.06 2 6 10.06 6 20v14c0 3.31 2.69 6 6 6h6V24h-8v-4c0-7.73 6.27-14 14-14s14 6.27 14 14v4h-8v16h6c3.31 0 6-2.69 6-6V20c0-9.94-8.06-18-18-18z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-captions">
<path d="M38 8H10c-2.21 0-4 1.79-4 4v24c0 2.21 1.79 4 4 4h28c2.21 0 4-1.79 4-4V12c0-2.21-1.79-4-4-4zM22 22h-3v-1h-4v6h4v-1h3v2a2 2 0 0 1-2 2h-6a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v2zm14 0h-3v-1h-4v6h4v-1h3v2a2 2 0 0 1-2 2h-6a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v2z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-subtitles">
<path d="M40 8H8c-2.21 0-4 1.79-4 4v24c0 2.21 1.79 4 4 4h32c2.21 0 4-1.79 4-4V12c0-2.21-1.79-4-4-4zM8 24h8v4H8v-4zm20 12H8v-4h20v4zm12 0h-8v-4h8v4zm0-8H20v-4h20v4z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-fullscreen-enter">
<path d="M14 28h-4v10h10v-4h-6v-6zm-4-8h4v-6h6v-4H10v10zm24 14h-6v4h10V28h-4v6zm-6-24v4h6v6h4V10H28z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-fullscreen-exit">
<path d="M10 32h6v6h4V28H10v4zm6-16h-6v4h10V10h-4v6zm12 22h4v-6h6v-4H28v10zm4-22v-6h-4v10h10v-4h-6z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-play-circle">
<path d="M20 33l12-9-12-9v18zm4-29C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm0 36c-8.82 0-16-7.18-16-16S15.18 8 24 8s16 7.18 16 16-7.18 16-16 16z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-volume-mute">
<path d="M33 24c0-3.53-2.04-6.58-5-8.05v4.42l4.91 4.91c.06-.42.09-.85.09-1.28zm5 0c0 1.88-.41 3.65-1.08 5.28l3.03 3.03C41.25 29.82 42 27 42 24c0-8.56-5.99-15.72-14-17.54v4.13c5.78 1.72 10 7.07 10 13.41zM8.55 6L6 8.55 15.45 18H6v12h8l10 10V26.55l8.51 8.51c-1.34 1.03-2.85 1.86-4.51 2.36v4.13a17.94 17.94 0 0 0 7.37-3.62L39.45 42 42 39.45l-18-18L8.55 6zM24 8l-4.18 4.18L24 16.36V8z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-volume-low">
<path d="M14 18v12h8l10 10V8L22 18h-8z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-volume-medium">
<path d="M37 24c0-3.53-2.04-6.58-5-8.05v16.11c2.96-1.48 5-4.53 5-8.06zm-27-6v12h8l10 10V8L18 18h-8z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-volume-high">
<path d="M6 18v12h8l10 10V8L14 18H6zm27 6c0-3.53-2.04-6.58-5-8.05v16.11c2.96-1.48 5-4.53 5-8.06zM28 6.46v4.13c5.78 1.72 10 7.07 10 13.41s-4.22 11.69-10 13.41v4.13c8.01-1.82 14-8.97 14-17.54S36.01 8.28 28 6.46z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-spinner">
<path d="M18.8 21l9.53-16.51C26.94 4.18 25.49 4 24 4c-4.8 0-9.19 1.69-12.64 4.51l7.33 12.69.11-.2zm24.28-3c-1.84-5.85-6.3-10.52-11.99-12.68L23.77 18h19.31zm.52 2H28.62l.58 1 9.53 16.5C41.99 33.94 44 29.21 44 24c0-1.37-.14-2.71-.4-4zm-26.53 4l-7.8-13.5C6.01 14.06 4 18.79 4 24c0 1.37.14 2.71.4 4h14.98l-2.31-4zM4.92 30c1.84 5.85 6.3 10.52 11.99 12.68L24.23 30H4.92zm22.54 0l-7.8 13.51c1.4.31 2.85.49 4.34.49 4.8 0 9.19-1.69 12.64-4.51L29.31 26.8 27.46 30z"></path>
</symbol>
<symbol viewBox="0 0 24 24" id="vjs-icon-hd">
<path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-8 12H9.5v-2h-2v2H6V9h1.5v2.5h2V9H11v6zm2-6h4c.55 0 1 .45 1 1v4c0 .55-.45 1-1 1h-4V9zm1.5 4.5h2v-3h-2v3z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-chapters">
<path d="M6 26h4v-4H6v4zm0 8h4v-4H6v4zm0-16h4v-4H6v4zm8 8h28v-4H14v4zm0 8h28v-4H14v4zm0-20v4h28v-4H14z"></path>
</symbol>
<symbol viewBox="0 0 40 40" id="vjs-icon-downloading">
<path d="M18.208 36.875q-3.208-.292-5.979-1.729-2.771-1.438-4.812-3.729-2.042-2.292-3.188-5.229-1.146-2.938-1.146-6.23 0-6.583 4.334-11.416 4.333-4.834 10.833-5.5v3.166q-5.167.75-8.583 4.646Q6.25 14.75 6.25 19.958q0 5.209 3.396 9.104 3.396 3.896 8.562 4.646zM20 28.417L11.542 20l2.083-2.083 4.917 4.916v-11.25h2.916v11.25l4.875-4.916L28.417 20zm1.792 8.458v-3.167q1.833-.25 3.541-.958 1.709-.708 3.167-1.875l2.333 2.292q-1.958 1.583-4.25 2.541-2.291.959-4.791 1.167zm6.791-27.792q-1.541-1.125-3.25-1.854-1.708-.729-3.541-1.021V3.042q2.5.25 4.77 1.208 2.271.958 4.271 2.5zm4.584 21.584l-2.25-2.25q1.166-1.5 1.854-3.209.687-1.708.937-3.541h3.209q-.292 2.5-1.229 4.791-.938 2.292-2.521 4.209zm.541-12.417q-.291-1.833-.958-3.562-.667-1.73-1.833-3.188l2.375-2.208q1.541 1.916 2.458 4.208.917 2.292 1.167 4.75z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-file-download">
<path d="M10.8 40.55q-1.35 0-2.375-1T7.4 37.15v-7.7h3.4v7.7h26.35v-7.7h3.4v7.7q0 1.4-1 2.4t-2.4 1zM24 32.1L13.9 22.05l2.45-2.45 5.95 5.95V7.15h3.4v18.4l5.95-5.95 2.45 2.45z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-file-download-done">
<path d="M9.8 40.5v-3.45h28.4v3.45zm9.2-9.05L7.4 19.85l2.45-2.35L19 26.65l19.2-19.2 2.4 2.4z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-file-download-off">
<path d="M4.9 4.75L43.25 43.1 41 45.3l-4.75-4.75q-.05.05-.075.025-.025-.025-.075-.025H10.8q-1.35 0-2.375-1T7.4 37.15v-7.7h3.4v7.7h22.05l-7-7-1.85 1.8L13.9 21.9l1.85-1.85L2.7 7zm26.75 14.7l2.45 2.45-3.75 3.8-2.45-2.5zM25.7 7.15V21.1l-3.4-3.45V7.15z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-share">
<path d="M36 32.17c-1.52 0-2.89.59-3.93 1.54L17.82 25.4c.11-.45.18-.92.18-1.4s-.07-.95-.18-1.4l14.1-8.23c1.07 1 2.5 1.62 4.08 1.62 3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6c0 .48.07.95.18 1.4l-14.1 8.23c-1.07-1-2.5-1.62-4.08-1.62-3.31 0-6 2.69-6 6s2.69 6 6 6c1.58 0 3.01-.62 4.08-1.62l14.25 8.31c-.1.42-.16.86-.16 1.31A5.83 5.83 0 1 0 36 32.17z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-cog">
<path d="M38.86 25.95c.08-.64.14-1.29.14-1.95s-.06-1.31-.14-1.95l4.23-3.31c.38-.3.49-.84.24-1.28l-4-6.93c-.25-.43-.77-.61-1.22-.43l-4.98 2.01c-1.03-.79-2.16-1.46-3.38-1.97L29 4.84c-.09-.47-.5-.84-1-.84h-8c-.5 0-.91.37-.99.84l-.75 5.3a14.8 14.8 0 0 0-3.38 1.97L9.9 10.1a1 1 0 0 0-1.22.43l-4 6.93c-.25.43-.14.97.24 1.28l4.22 3.31C9.06 22.69 9 23.34 9 24s.06 1.31.14 1.95l-4.22 3.31c-.38.3-.49.84-.24 1.28l4 6.93c.25.43.77.61 1.22.43l4.98-2.01c1.03.79 2.16 1.46 3.38 1.97l.75 5.3c.08.47.49.84.99.84h8c.5 0 .91-.37.99-.84l.75-5.3a14.8 14.8 0 0 0 3.38-1.97l4.98 2.01a1 1 0 0 0 1.22-.43l4-6.93c.25-.43.14-.97-.24-1.28l-4.22-3.31zM24 31c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-square">
<path d="M36 8H12c-2.21 0-4 1.79-4 4v24c0 2.21 1.79 4 4 4h24c2.21 0 4-1.79 4-4V12c0-2.21-1.79-4-4-4zm0 28H12V12h24v24z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-circle">
<circle cx="24" cy="24" r="20"></circle>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-circle-outline">
<path d="M24 4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm0 36c-8.82 0-16-7.18-16-16S15.18 8 24 8s16 7.18 16 16-7.18 16-16 16z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-circle-inner-circle">
<path d="M24 4C12.97 4 4 12.97 4 24s8.97 20 20 20 20-8.97 20-20S35.03 4 24 4zm0 36c-8.82 0-16-7.18-16-16S15.18 8 24 8s16 7.18 16 16-7.18 16-16 16zm6-16c0 3.31-2.69 6-6 6s-6-2.69-6-6 2.69-6 6-6 6 2.69 6 6z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-cancel">
<path d="M24 4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm10 27.17L31.17 34 24 26.83 16.83 34 14 31.17 21.17 24 14 16.83 16.83 14 24 21.17 31.17 14 34 16.83 26.83 24 34 31.17z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-replay">
<path d="M24 10V2L14 12l10 10v-8c6.63 0 12 5.37 12 12s-5.37 12-12 12-12-5.37-12-12H8c0 8.84 7.16 16 16 16s16-7.16 16-16-7.16-16-16-16z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-repeat">
<path d="M14 14h20v6l8-8-8-8v6H10v12h4v-8zm20 20H14v-6l-8 8 8 8v-6h24V26h-4v8z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-replay-5">
<path d="M17.689 98l-8.697 8.696 8.697 8.697 2.486-2.485-4.32-4.319h1.302c4.93 0 9.071 1.722 12.424 5.165 3.352 3.443 5.029 7.638 5.029 12.584h3.55c0-2.958-.553-5.73-1.658-8.313-1.104-2.583-2.622-4.841-4.555-6.774-1.932-1.932-4.19-3.45-6.773-4.555-2.584-1.104-5.355-1.657-8.313-1.657H15.5l4.615-4.615zm-8.08 21.659v13.861h11.357v5.008H9.609V143h12.7c.834 0 1.55-.298 2.146-.894.596-.597.895-1.31.895-2.145v-7.781c0-.835-.299-1.55-.895-2.147a2.929 2.929 0 0 0-2.147-.894h-8.227v-5.096H25.35v-4.384z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-replay-10">
<path d="M42.315 125.63c0-4.997-1.694-9.235-5.08-12.713-3.388-3.479-7.571-5.218-12.552-5.218h-1.315l4.363 4.363-2.51 2.51-8.787-8.786L25.221 97l2.45 2.45-4.662 4.663h1.375c2.988 0 5.788.557 8.397 1.673 2.61 1.116 4.892 2.65 6.844 4.602 1.953 1.953 3.487 4.234 4.602 6.844 1.116 2.61 1.674 5.41 1.674 8.398zM8.183 142v-19.657H3.176V117.8h9.643V142zm13.63 0c-1.156 0-2.127-.393-2.912-1.178-.778-.778-1.168-1.746-1.168-2.902v-16.04c0-1.156.393-2.127 1.178-2.912.779-.779 1.746-1.168 2.902-1.168h7.696c1.156 0 2.126.392 2.911 1.177.779.78 1.168 1.747 1.168 2.903v16.04c0 1.156-.392 2.127-1.177 2.912-.779.779-1.746 1.168-2.902 1.168zm.556-4.636h6.583v-15.02H22.37z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-replay-30">
<path d="M26.047 97l-8.733 8.732 8.733 8.733 2.496-2.494-4.336-4.338h1.307c4.95 0 9.108 1.73 12.474 5.187 3.367 3.458 5.051 7.668 5.051 12.635h3.565c0-2.97-.556-5.751-1.665-8.346-1.109-2.594-2.633-4.862-4.574-6.802-1.94-1.941-4.208-3.466-6.803-4.575-2.594-1.109-5.375-1.664-8.345-1.664H23.85l4.634-4.634zM2.555 117.531v4.688h10.297v5.25H5.873v4.687h6.979v5.156H2.555V142H13.36c1.061 0 1.95-.395 2.668-1.186.718-.79 1.076-1.772 1.076-2.94v-16.218c0-1.168-.358-2.149-1.076-2.94-.717-.79-1.607-1.185-2.668-1.185zm22.482.14c-1.149 0-2.11.39-2.885 1.165-.78.78-1.172 1.744-1.172 2.893v15.943c0 1.149.388 2.11 1.163 2.885.78.78 1.745 1.172 2.894 1.172h7.649c1.148 0 2.11-.388 2.884-1.163.78-.78 1.17-1.745 1.17-2.894v-15.943c0-1.15-.386-2.111-1.16-2.885-.78-.78-1.746-1.172-2.894-1.172zm.553 4.518h6.545v14.93H25.59z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-forward-5">
<path d="M29.508 97l-2.431 2.43 4.625 4.625h-1.364c-2.965 0-5.742.554-8.332 1.66-2.589 1.107-4.851 2.629-6.788 4.566-1.937 1.937-3.458 4.2-4.565 6.788-1.107 2.59-1.66 5.367-1.66 8.331h3.557c0-4.957 1.68-9.16 5.04-12.611 3.36-3.45 7.51-5.177 12.451-5.177h1.304l-4.326 4.33 2.49 2.49 8.715-8.716zm-9.783 21.61v13.89h11.382v5.018H19.725V142h12.727a2.93 2.93 0 0 0 2.15-.896 2.93 2.93 0 0 0 .896-2.15v-7.798c0-.837-.299-1.554-.896-2.152a2.93 2.93 0 0 0-2.15-.896h-8.245V123h11.29v-4.392z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-forward-10">
<path d="M23.119 97l-2.386 2.383 4.538 4.538h-1.339c-2.908 0-5.633.543-8.173 1.63-2.54 1.085-4.76 2.577-6.66 4.478-1.9 1.9-3.392 4.12-4.478 6.66-1.085 2.54-1.629 5.264-1.629 8.172h3.49c0-4.863 1.648-8.986 4.944-12.372 3.297-3.385 7.368-5.078 12.216-5.078h1.279l-4.245 4.247 2.443 2.442 8.55-8.55zm-9.52 21.45v4.42h4.871V142h4.513v-23.55zm18.136 0c-1.125 0-2.066.377-2.824 1.135-.764.764-1.148 1.709-1.148 2.834v15.612c0 1.124.38 2.066 1.139 2.824.764.764 1.708 1.145 2.833 1.145h7.489c1.125 0 2.066-.378 2.824-1.136.764-.764 1.145-1.709 1.145-2.833v-15.612c0-1.125-.378-2.067-1.136-2.825-.764-.764-1.708-1.145-2.833-1.145zm.54 4.42h6.408v14.617h-6.407z"></path>
</symbol>
<symbol viewBox="0 96 48 48" id="vjs-icon-forward-30">
<path d="M25.549 97l-2.437 2.434 4.634 4.635H26.38c-2.97 0-5.753.555-8.347 1.664-2.594 1.109-4.861 2.633-6.802 4.574-1.94 1.94-3.465 4.207-4.574 6.802-1.109 2.594-1.664 5.377-1.664 8.347h3.565c0-4.967 1.683-9.178 5.05-12.636 3.366-3.458 7.525-5.187 12.475-5.187h1.307l-4.335 4.338 2.495 2.494 8.732-8.732zm-11.553 20.53v4.689h10.297v5.249h-6.978v4.688h6.978v5.156H13.996V142h10.808c1.06 0 1.948-.395 2.666-1.186.718-.79 1.077-1.771 1.077-2.94v-16.217c0-1.169-.36-2.15-1.077-2.94-.718-.79-1.605-1.186-2.666-1.186zm21.174.168c-1.149 0-2.11.389-2.884 1.163-.78.78-1.172 1.745-1.172 2.894v15.942c0 1.15.388 2.11 1.162 2.885.78.78 1.745 1.17 2.894 1.17h7.649c1.149 0 2.11-.386 2.885-1.16.78-.78 1.17-1.746 1.17-2.895v-15.942c0-1.15-.387-2.11-1.161-2.885-.78-.78-1.745-1.172-2.894-1.172zm.552 4.516h6.542v14.931h-6.542z"></path>
</symbol>
<symbol viewBox="0 0 512 512" id="vjs-icon-audio-description">
<g fill-rule="evenodd"><path d="M227.29 381.351V162.993c50.38-1.017 89.108-3.028 117.631 17.126 27.374 19.342 48.734 56.965 44.89 105.325-4.067 51.155-41.335 94.139-89.776 98.475-24.085 2.155-71.972 0-71.972 0s-.84-1.352-.773-2.568m48.755-54.804c31.43 1.26 53.208-16.633 56.495-45.386 4.403-38.51-21.188-63.552-58.041-60.796v103.612c-.036 1.466.575 2.22 1.546 2.57"></path><path d="M383.78 381.328c13.336 3.71 17.387-11.06 23.215-21.408 12.722-22.571 22.294-51.594 22.445-84.774.221-47.594-18.343-82.517-35.6-106.182h-8.51c-.587 3.874 2.226 7.315 3.865 10.276 13.166 23.762 25.367 56.553 25.54 94.194.2 43.176-14.162 79.278-30.955 107.894"></path><path d="M425.154 381.328c13.336 3.71 17.384-11.061 23.215-21.408 12.721-22.571 22.291-51.594 22.445-84.774.221-47.594-18.343-82.517-35.6-106.182h-8.511c-.586 3.874 2.226 7.315 3.866 10.276 13.166 23.762 25.367 56.553 25.54 94.194.2 43.176-14.162 79.278-30.955 107.894"></path><path d="M466.26 381.328c13.337 3.71 17.385-11.061 23.216-21.408 12.722-22.571 22.292-51.594 22.445-84.774.221-47.594-18.343-82.517-35.6-106.182h-8.51c-.587 3.874 2.225 7.315 3.865 10.276 13.166 23.762 25.367 56.553 25.54 94.194.2 43.176-14.162 79.278-30.955 107.894M4.477 383.005H72.58l18.573-28.484 64.169-.135s.065 19.413.065 28.62h48.756V160.307h-58.816c-5.653 9.537-140.85 222.697-140.85 222.697zm152.667-145.282v71.158l-40.453-.27 40.453-70.888z"></path></g>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-next-item">
<path d="M12 36l17-12-17-12v24zm20-24v24h4V12h-4z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-previous-item">
<path d="M12 12h4v24h-4zm7 12l17 12V12z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-shuffle">
<path d="M21.17 18.34L10.83 8 8 10.83l10.34 10.34 2.83-2.83zM29 8l4.09 4.09L8 37.17 10.83 40l25.09-25.09L40 19V8H29zm.66 18.83l-2.83 2.83 6.26 6.26L29 40h11V29l-4.09 4.09-6.25-6.26z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-cast">
<path d="M42 6H6c-2.21 0-4 1.79-4 4v6h4v-6h36v28H28v4h14c2.21 0 4-1.79 4-4V10c0-2.21-1.79-4-4-4zM2 36v6h6c0-3.31-2.69-6-6-6zm0-8v4c5.52 0 10 4.48 10 10h4c0-7.73-6.27-14-14-14zm0-8v4c9.94 0 18 8.06 18 18h4c0-12.15-9.85-22-22-22z"></path>
</symbol>
<symbol viewBox="0 0 48 48" id="vjs-icon-picture-in-picture-enter">
<path d="M38 22H22v11.99h16V22zm8 16V9.96C46 7.76 44.2 6 42 6H6C3.8 6 2 7.76 2 9.96V38c0 2.2 1.8 4 4 4h36c2.2 0 4-1.8 4-4zm-4 .04H6V9.94h36v28.1z"></path>
</symbol>
<symbol viewBox="0 0 22 18" id="vjs-icon-picture-in-picture-exit">
<path d="M18 4H4v10h14V4zm4 12V1.98C22 .88 21.1 0 20 0H2C.9 0 0 .88 0 1.98V16c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2zm-2 .02H2V1.97h18v14.05z"></path>
<path fill="none" d="M-1-3h24v24H-1z"></path>
</symbol>
<symbol viewBox="0 0 1792 1792" id="vjs-icon-facebook">
<path d="M1343 12v264h-157q-86 0-116 36t-30 108v189h293l-39 296h-254v759H734V905H479V609h255V391q0-186 104-288.5T1115 0q147 0 228 12z"></path>
</symbol>
<symbol viewBox="0 0 1792 1792" id="vjs-icon-linkedin">
<path d="M477 625v991H147V625h330zm21-306q1 73-50.5 122T312 490h-2q-82 0-132-49t-50-122q0-74 51.5-122.5T314 148t133 48.5T498 319zm1166 729v568h-329v-530q0-105-40.5-164.5T1168 862q-63 0-105.5 34.5T999 982q-11 30-11 81v553H659q2-399 2-647t-1-296l-1-48h329v144h-2q20-32 41-56t56.5-52 87-43.5T1285 602q171 0 275 113.5t104 332.5z"></path>
</symbol>
<symbol viewBox="0 0 1200 1227" id="vjs-icon-twitter">
<path d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z"/>
</symbol>
<symbol viewBox="0 0 1792 1792" id="vjs-icon-tumblr">
<path d="M1328 1329l80 237q-23 35-111 66t-177 32q-104 2-190.5-26T787 1564t-95-106-55.5-120-16.5-118V676H452V461q72-26 129-69.5t91-90 58-102 34-99T779 12q1-5 4.5-8.5T791 0h244v424h333v252h-334v518q0 30 6.5 56t22.5 52.5 49.5 41.5 81.5 14q78-2 134-29z"></path>
</symbol>
<symbol viewBox="0 0 1792 1792" id="vjs-icon-pinterest">
<path d="M1664 896q0 209-103 385.5T1281.5 1561 896 1664q-111 0-218-32 59-93 78-164 9-34 54-211 20 39 73 67.5t114 28.5q121 0 216-68.5t147-188.5 52-270q0-114-59.5-214T1180 449t-255-63q-105 0-196 29t-154.5 77-109 110.5-67 129.5T377 866q0 104 40 183t117 111q30 12 38-20 2-7 8-31t8-30q6-23-11-43-51-61-51-151 0-151 104.5-259.5T904 517q151 0 235.5 82t84.5 213q0 170-68.5 289T980 1220q-61 0-98-43.5T859 1072q8-35 26.5-93.5t30-103T927 800q0-50-27-83t-77-33q-62 0-105 57t-43 142q0 73 25 122l-99 418q-17 70-13 177-206-91-333-281T128 896q0-209 103-385.5T510.5 231 896 128t385.5 103T1561 510.5 1664 896z"></path>
</symbol>
</defs>
</svg>`;const y2=rp?10009:ap?461:8,fu={codes:{play:415,pause:19,ff:417,rw:412,back:y2},names:{415:"play",19:"pause",417:"ff",412:"rw",[y2]:"back"},isEventKey(s,e){return e=e.toLowerCase(),!!(this.names[s.keyCode]&&this.names[s.keyCode]===e)},getEventName(s){if(this.names[s.keyCode])return this.names[s.keyCode];if(this.codes[s.code]){const e=this.codes[s.code];return this.names[e]}return null}},T2=5;class Ak extends Un{constructor(e){super(),this.player_=e,this.focusableComponents=[],this.isListening_=!1,this.isPaused_=!1,this.onKeyDown_=this.onKeyDown_.bind(this),this.lastFocusedComponent_=null}start(){this.isListening_||(this.player_.on("keydown",this.onKeyDown_),this.player_.on("modalKeydown",this.onKeyDown_),this.player_.on("loadedmetadata",()=>{this.focus(this.updateFocusableComponents()[0])}),this.player_.on("modalclose",()=>{this.refocusComponent()}),this.player_.on("focusin",this.handlePlayerFocus_.bind(this)),this.player_.on("focusout",this.handlePlayerBlur_.bind(this)),this.isListening_=!0,this.player_.errorDisplay&&this.player_.errorDisplay.on("aftermodalfill",()=>{this.updateFocusableComponents(),this.focusableComponents.length&&(this.focusableComponents.length>1?this.focusableComponents[1].focus():this.focusableComponents[0].focus())}))}stop(){this.player_.off("keydown",this.onKeyDown_),this.isListening_=!1}onKeyDown_(e){const i=e.originalEvent?e.originalEvent:e;if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(i.key)){if(this.isPaused_)return;i.preventDefault();const r=i.key.substring(5).toLowerCase();this.move(r)}else if(fu.isEventKey(i,"play")||fu.isEventKey(i,"pause")||fu.isEventKey(i,"ff")||fu.isEventKey(i,"rw")){i.preventDefault();const r=fu.getEventName(i);this.performMediaAction_(r)}else fu.isEventKey(i,"Back")&&e.target&&typeof e.target.closeable=="function"&&e.target.closeable()&&(i.preventDefault(),e.target.close())}performMediaAction_(e){if(this.player_)switch(e){case"play":this.player_.paused()&&this.player_.play();break;case"pause":this.player_.paused()||this.player_.pause();break;case"ff":this.userSeek_(this.player_.currentTime()+T2);break;case"rw":this.userSeek_(this.player_.currentTime()-T2);break}}userSeek_(e){this.player_.liveTracker&&this.player_.liveTracker.isLive()&&this.player_.liveTracker.nextSeekedFromUser(),this.player_.currentTime(e)}pause(){this.isPaused_=!0}resume(){this.isPaused_=!1}handlePlayerBlur_(e){const i=e.relatedTarget;let r=null;const o=this.getCurrentComponent(e.target);i&&(r=!!i.closest(".video-js"),i.classList.contains("vjs-text-track-settings")&&!this.isPaused_&&this.searchForTrackSelect_()),(!e.currentTarget.contains(e.relatedTarget)&&!r||!i)&&(o&&o.name()==="CloseButton"?this.refocusComponent():(this.pause(),o&&o.el()&&(this.lastFocusedComponent_=o)))}handlePlayerFocus_(){this.getCurrentComponent()&&this.getCurrentComponent().getIsFocusable()&&this.resume()}updateFocusableComponents(){const e=this.player_,i=[];function r(o){for(const u of o)u.hasOwnProperty("el_")&&u.getIsFocusable()&&u.getIsAvailableToBeFocused(u.el())&&i.push(u),u.hasOwnProperty("children_")&&u.children_.length>0&&r(u.children_)}return e.children_.forEach(o=>{if(o.hasOwnProperty("el_"))if(o.getIsFocusable&&o.getIsAvailableToBeFocused&&o.getIsFocusable()&&o.getIsAvailableToBeFocused(o.el())){i.push(o);return}else o.hasOwnProperty("children_")&&o.children_.length>0?r(o.children_):o.hasOwnProperty("items")&&o.items.length>0?r(o.items):this.findSuitableDOMChild(o)&&i.push(o);if(o.name_==="ErrorDisplay"&&o.opened_){const u=o.el_.querySelector(".vjs-errors-ok-button-container");u&&u.querySelectorAll("button").forEach((h,m)=>{i.push({name:()=>"ModalButton"+(m+1),el:()=>h,getPositions:()=>{const v=h.getBoundingClientRect(),S={x:v.x,y:v.y,width:v.width,height:v.height,top:v.top,right:v.right,bottom:v.bottom,left:v.left},x={x:v.left+v.width/2,y:v.top+v.height/2,width:0,height:0,top:v.top+v.height/2,right:v.left+v.width/2,bottom:v.top+v.height/2,left:v.left+v.width/2};return{boundingClientRect:S,center:x}},getIsAvailableToBeFocused:()=>!0,getIsFocusable:v=>!0,focus:()=>h.focus()})})}}),this.focu
This may prevent text tracks from loading.`),this.restoreMetadataTracksInIOSNativePlayer_(),(Td||sp)&&e.nativeControlsForTouch===!0&&this.setControls(!0),this.proxyWebkitFullscreen_(),this.triggerReady()}dispose(){this.el_&&this.el_.resetSourceset_&&this.el_.resetSourceset_(),Ne.disposeMediaElement(this.el_),this.options_=null,super.dispose()}setupSourcesetHandling_(){nO(this)}restoreMetadataTracksInIOSNativePlayer_(){const e=this.textTracks();let i;const r=()=>{i=[];for(let u=0;u<e.length;u++){const c=e[u];c.kind==="metadata"&&i.push({track:c,storedMode:c.mode})}};r(),e.addEventListener("change",r),this.on("dispose",()=>e.removeEventListener("change",r));const o=()=>{for(let u=0;u<i.length;u++){const c=i[u];c.track.mode==="disabled"&&c.track.mode!==c.storedMode&&(c.track.mode=c.storedMode)}e.removeEventListener("change",o)};this.on("webkitbeginfullscreen",()=>{e.removeEventListener("change",r),e.removeEventListener("change",o),e.addEventListener("change",o)}),this.on("webkitendfullscreen",()=>{e.removeEventListener("change",r),e.addEventListener("change",r),e.removeEventListener("change",o)})}overrideNative_(e,i){if(i!==this[`featuresNative${e}Tracks`])return;const r=e.toLowerCase();this[`${r}TracksListeners_`]&&Object.keys(this[`${r}TracksListeners_`]).forEach(o=>{this.el()[`${r}Tracks`].removeEventListener(o,this[`${r}TracksListeners_`][o])}),this[`featuresNative${e}Tracks`]=!i,this[`${r}TracksListeners_`]=null,this.proxyNativeTracksForType_(r)}overrideNativeAudioTracks(e){this.overrideNative_("Audio",e)}overrideNativeVideoTracks(e){this.overrideNative_("Video",e)}proxyNativeTracksForType_(e){const i=ns[e],r=this.el()[i.getterName],o=this[i.getterName]();if(!this[`featuresNative${i.capitalName}Tracks`]||!r||!r.addEventListener)return;const u={change:h=>{const m={type:"change",target:o,currentTarget:o,srcElement:o};o.trigger(m),e==="text"&&this[hu.remoteText.getterName]().trigger(m)},addtrack(h){o.addTrack(h.track)},removetrack(h){o.removeTrack(h.track)}},c=function(){const h=[];for(let m=0;m<o.length;m++){let v=!1;for(let S=0;S<r.length;S++)if(r[S]===o[m]){v=!0;break}v||h.push(o[m])}for(;h.length;)o.removeTrack(h.shift())};this[i.getterName+"Listeners_"]=u,Object.keys(u).forEach(h=>{const m=u[h];r.addEventListener(h,m),this.on("dispose",v=>r.removeEventListener(h,m))}),this.on("loadstart",c),this.on("dispose",h=>this.off("loadstart",c))}proxyNativeTracks_(){ns.names.forEach(e=>{this.proxyNativeTracksForType_(e)})}createEl(){let e=this.options_.tag;if(!e||!(this.options_.playerElIngest||this.movingMediaElementInDOM)){if(e){const r=e.cloneNode(!0);e.parentNode&&e.parentNode.insertBefore(r,e),Ne.disposeMediaElement(e),e=r}else{e=ye.createElement("video");const r=this.options_.tag&&Oa(this.options_.tag),o=Ct({},r);(!Td||this.options_.nativeControlsForTouch!==!0)&&delete o.controls,R_(e,Object.assign(o,{id:this.options_.techId,class:"vjs-tech"}))}e.playerId=this.options_.playerId}typeof this.options_.preload<"u"&&ou(e,"preload",this.options_.preload),this.options_.disablePictureInPicture!==void 0&&(e.disablePictureInPicture=this.options_.disablePictureInPicture);const i=["loop","muted","playsinline","autoplay"];for(let r=0;r<i.length;r++){const o=i[r],u=this.options_[o];typeof u<"u"&&(u?ou(e,o,o):cp(e,o),e[o]=u)}return e}handleLateInit_(e){if(e.networkState===0||e.networkState===3)return;if(e.readyState===0){let r=!1;const o=function(){r=!0};this.on("loadstart",o);const u=function(){r||this.trigger("loadstart")};this.on("loadedmetadata",u),this.ready(function(){this.off("loadstart",o),this.off("loadedmetadata",u),r||this.trigger("loadstart")});return}const i=["loadstart"];i.push("loadedmetadata"),e.readyState>=2&&i.push("loadeddata"),e.readyState>=3&&i.push("canplay"),e.readyState>=4&&i.push("canplaythrough"),this.ready(function(){i.forEach(function(r){this.trigger(r)},this)})}setScrubbing(e){this.isScrubbing_=e}scrubbing(){return this.isScrubbing_}setCurrentTime(e){try{this.isScrubbing_&&this.el_.fastSeek&&lp?this.el_.fastSeek(e):this.el_.currentTime=e}catch(i){at(i,"Video is not ready. (Video.js)")}}duration(){if(this.e
2025-09-22 23:18:02 +03:00
.${o} {
width: ${e}px;
height: ${i}px;
}
.${o}.vjs-fluid:not(.vjs-audio-only-mode) {
padding-top: ${c*100}%;
}
`)}loadTech_(e,i){this.tech_&&this.unloadTech_();const r=Jt(e),o=e.charAt(0).toLowerCase()+e.slice(1);r!=="Html5"&&this.tag&&(Ze.getTech("Html5").disposeMediaElement(this.tag),this.tag.player=null,this.tag=null),this.techName_=r,this.isReady_=!1;let u=this.autoplay();(typeof this.autoplay()=="string"||this.autoplay()===!0&&this.options_.normalizeAutoplay)&&(u=!1);const c={source:i,autoplay:u,nativeControlsForTouch:this.options_.nativeControlsForTouch,playerId:this.id(),techId:`${this.id()}_${o}_api`,playsinline:this.options_.playsinline,preload:this.options_.preload,loop:this.options_.loop,disablePictureInPicture:this.options_.disablePictureInPicture,muted:this.options_.muted,poster:this.poster(),language:this.language(),playerElIngest:this.playerElIngest_||!1,"vtt.js":this.options_["vtt.js"],canOverridePoster:!!this.options_.techCanOverridePoster,enableSourceset:this.options_.enableSourceset};un.names.forEach(m=>{const v=un[m];c[v.getterName]=this[v.privateName]}),Object.assign(c,this.options_[r]),Object.assign(c,this.options_[o]),Object.assign(c,this.options_[e.toLowerCase()]),this.tag&&(c.tag=this.tag),i&&i.src===this.cache_.src&&this.cache_.currentTime>0&&(c.startTime=this.cache_.currentTime);const h=Ze.getTech(e);if(!h)throw new Error(`No Tech named '${r}' exists! '${r}' should be registered using videojs.registerTech()'`);this.tech_=new h(c),this.tech_.ready(zt(this,this.handleTechReady_),!0),U0.jsonToTextTracks(this.textTracksJson_||[],this.tech_),aS.forEach(m=>{this.on(this.tech_,m,v=>this[`handleTech${Jt(m)}_`](v))}),Object.keys(py).forEach(m=>{this.on(this.tech_,m,v=>{if(this.tech_.playbackRate()===0&&this.tech_.seeking()){this.queuedCallbacks_.push({callback:this[`handleTech${py[m]}_`].bind(this),event:v});return}this[`handleTech${py[m]}_`](v)})}),this.on(this.tech_,"loadstart",m=>this.handleTechLoadStart_(m)),this.on(this.tech_,"sourceset",m=>this.handleTechSourceset_(m)),this.on(this.tech_,"waiting",m=>this.handleTechWaiting_(m)),this.on(this.tech_,"ended",m=>this.handleTechEnded_(m)),this.on(this.tech_,"seeking",m=>this.handleTechSeeking_(m)),this.on(this.tech_,"play",m=>this.handleTechPlay_(m)),this.on(this.tech_,"pause",m=>this.handleTechPause_(m)),this.on(this.tech_,"durationchange",m=>this.handleTechDurationChange_(m)),this.on(this.tech_,"fullscreenchange",(m,v)=>this.handleTechFullscreenChange_(m,v)),this.on(this.tech_,"fullscreenerror",(m,v)=>this.handleTechFullscreenError_(m,v)),this.on(this.tech_,"enterpictureinpicture",m=>this.handleTechEnterPictureInPicture_(m)),this.on(this.tech_,"leavepictureinpicture",m=>this.handleTechLeavePictureInPicture_(m)),this.on(this.tech_,"error",m=>this.handleTechError_(m)),this.on(this.tech_,"posterchange",m=>this.handleTechPosterChange_(m)),this.on(this.tech_,"textdata",m=>this.handleTechTextData_(m)),this.on(this.tech_,"ratechange",m=>this.handleTechRateChange_(m)),this.on(this.tech_,"loadedmetadata",this.boundUpdateStyleEl_),this.usingNativeControls(this.techGet_("controls")),this.controls()&&!this.usingNativeControls()&&this.addTechControlsListeners_(),this.tech_.el().parentNode!==this.el()&&(r!=="Html5"||!this.tag)&&M0(this.tech_.el(),this.el()),this.tag&&(this.tag.player=null,this.tag=null)}unloadTech_(){un.names.forEach(e=>{const i=un[e];this[i.privateName]=this[i.getterName]()}),this.textTracksJson_=U0.textTracksToJson(this.tech_),this.isReady_=!1,this.tech_.dispose(),this.tech_=!1,this.isPosterFromTech_&&(this.poster_="",this.trigger("posterchange")),this.isPosterFromTech_=!1}tech(e){return e===void 0&&at.warn(`Using the tech directly can be dangerous. I hope you know what you're doing.
2025-09-22 23:18:02 +03:00
See https://github.com/videojs/video.js/issues/2617 for more info.
`),this.tech_}version(){return{"video.js":_0}}addTechControlsListeners_(){this.removeTechControlsListeners_(),this.on(this.tech_,"click",this.boundHandleTechClick_),this.on(this.tech_,"dblclick",this.boundHandleTechDoubleClick_),this.on(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.on(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.on(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.on(this.tech_,"tap",this.boundHandleTechTap_)}removeTechControlsListeners_(){this.off(this.tech_,"tap",this.boundHandleTechTap_),this.off(this.tech_,"touchstart",this.boundHandleTechTouchStart_),this.off(this.tech_,"touchmove",this.boundHandleTechTouchMove_),this.off(this.tech_,"touchend",this.boundHandleTechTouchEnd_),this.off(this.tech_,"click",this.boundHandleTechClick_),this.off(this.tech_,"dblclick",this.boundHandleTechDoubleClick_)}handleTechReady_(){this.triggerReady(),this.cache_.volume&&this.techCall_("setVolume",this.cache_.volume),this.handleTechPosterChange_(),this.handleTechDurationChange_()}handleTechLoadStart_(){this.removeClass("vjs-ended","vjs-seeking"),this.error(null),this.handleTechDurationChange_(),this.paused()?(this.hasStarted(!1),this.trigger("loadstart")):this.trigger("loadstart"),this.manualAutoplay_(this.autoplay()===!0&&this.options_.normalizeAutoplay?"play":this.autoplay())}manualAutoplay_(e){if(!this.tech_||typeof e!="string")return;const i=()=>{const o=this.muted();this.muted(!0);const u=()=>{this.muted(o)};this.playTerminatedQueue_.push(u);const c=this.play();if(Ed(c))return c.catch(h=>{throw u(),new Error(`Rejection at manualAutoplay. Restoring muted value. ${h||""}`)})};let r;if(e==="any"&&!this.muted()?(r=this.play(),Ed(r)&&(r=r.catch(i))):e==="muted"&&!this.muted()?r=i():r=this.play(),!!Ed(r))return r.then(()=>{this.trigger({type:"autoplay-success",autoplay:e})}).catch(()=>{this.trigger({type:"autoplay-failure",autoplay:e})})}updateSourceCaches_(e=""){let i=e,r="";typeof i!="string"&&(i=e.src,r=e.type),this.cache_.source=this.cache_.source||{},this.cache_.sources=this.cache_.sources||[],i&&!r&&(r=Dk(this,i)),this.cache_.source=Ct({},e,{src:i,type:r});const o=this.cache_.sources.filter(m=>m.src&&m.src===i),u=[],c=this.$$("source"),h=[];for(let m=0;m<c.length;m++){const v=Oa(c[m]);u.push(v),v.src&&v.src===i&&h.push(v.src)}h.length&&!o.length?this.cache_.sources=u:o.length||(this.cache_.sources=[this.cache_.source]),this.cache_.src=i}handleTechSourceset_(e){if(!this.changingSrc_){let i=u=>this.updateSourceCaches_(u);const r=this.currentSource().src,o=e.src;r&&!/^blob:/.test(r)&&/^blob:/.test(o)&&(!this.lastSource_||this.lastSource_.tech!==o&&this.lastSource_.player!==r)&&(i=()=>{}),i(o),e.src||this.tech_.any(["sourceset","loadstart"],u=>{if(u.type==="sourceset")return;const c=this.techGet_("currentSrc");this.lastSource_.tech=c,this.updateSourceCaches_(c)})}this.lastSource_={player:this.currentSource().src,tech:e.src},this.trigger({src:e.src,type:"sourceset"})}hasStarted(e){if(e===void 0)return this.hasStarted_;e!==this.hasStarted_&&(this.hasStarted_=e,this.hasStarted_?this.addClass("vjs-has-started"):this.removeClass("vjs-has-started"))}handleTechPlay_(){this.removeClass("vjs-ended","vjs-paused"),this.addClass("vjs-playing"),this.hasStarted(!0),this.trigger("play")}handleTechRateChange_(){this.tech_.playbackRate()>0&&this.cache_.lastPlaybackRate===0&&(this.queuedCallbacks_.forEach(e=>e.callback(e.event)),this.queuedCallbacks_=[]),this.cache_.lastPlaybackRate=this.tech_.playbackRate(),this.trigger("ratechange")}handleTechWaiting_(){this.addClass("vjs-waiting"),this.trigger("waiting");const e=this.currentTime(),i=()=>{e!==this.currentTime()&&(this.removeClass("vjs-waiting"),this.off("timeupdate",i))};this.on("timeupdate",i)}handleTechCanPlay_(){this.removeClass("vjs-waiting"),this.trigger("canplay")}handleTechCanPlayThrough_(){this.removeClass("vjs-waiting"),this.trigger("canplaythrough")}handleTechPlaying_(){this.removeClass("vjs-waiting"),this.trigger("playing")}handleTechSeeking_(){this.addClass("vjs-seeking"),this.trigger("seeking")}handleTechSeeked_(){this.removeClass("
2025-09-22 23:18:02 +03:00
.video-js {
width: 300px;
height: 150px;
}
.vjs-fluid:not(.vjs-audio-only-mode) {
padding-top: 56.25%
}
`)}}A0(1,F),F.VERSION=_0,F.options=St.prototype.options_,F.getPlayers=()=>St.players,F.getPlayer=s=>{const e=St.players;let i;if(typeof s=="string"){const r=uS(s),o=e[r];if(o)return o;i=Ia("#"+r)}else i=s;if(au(i)){const{player:r,playerId:o}=i;if(r||e[o])return r||e[o]}},F.getAllPlayers=()=>Object.keys(St.players).map(s=>St.players[s]).filter(Boolean),F.players=St.players,F.getComponent=he.getComponent,F.registerComponent=(s,e)=>(Ze.isTech(e)&&at.warn(`The ${s} tech was registered as a component. It should instead be registered using videojs.registerTech(name, tech)`),he.registerComponent.call(he,s,e)),F.getTech=Ze.getTech,F.registerTech=Ze.registerTech,F.use=mk,Object.defineProperty(F,"middleware",{value:{},writeable:!1,enumerable:!0}),Object.defineProperty(F.middleware,"TERMINATOR",{value:_p,writeable:!1,enumerable:!0}),F.browser=N_,F.obj=GN,F.mergeOptions=Cs(9,"videojs.mergeOptions","videojs.obj.merge",Ct),F.defineLazyProperty=Cs(9,"videojs.defineLazyProperty","videojs.obj.defineLazyProperty",Jf),F.bind=Cs(9,"videojs.bind","native Function.prototype.bind",zt),F.registerPlugin=xn.registerPlugin,F.deregisterPlugin=xn.deregisterPlugin,F.plugin=(s,e)=>(at.warn("videojs.plugin() is deprecated; use videojs.registerPlugin() instead"),xn.registerPlugin(s,e)),F.getPlugins=xn.getPlugins,F.getPlugin=xn.getPlugin,F.getPluginVersion=xn.getPluginVersion,F.addLanguage=function(s,e){return s=(""+s).toLowerCase(),F.options.languages=Ct(F.options.languages,{[s]:e}),F.options.languages[s]},F.log=at,F.createLogger=S_,F.time=lk,F.createTimeRange=Cs(9,"videojs.createTimeRange","videojs.time.createTimeRanges",Ds),F.createTimeRanges=Cs(9,"videojs.createTimeRanges","videojs.time.createTimeRanges",Ds),F.formatTime=Cs(9,"videojs.formatTime","videojs.time.formatTime",Oo),F.setFormatTime=Cs(9,"videojs.setFormatTime","videojs.time.setFormatTime",i2),F.resetFormatTime=Cs(9,"videojs.resetFormatTime","videojs.time.resetFormatTime",n2),F.parseUrl=Cs(9,"videojs.parseUrl","videojs.url.parseUrl",V0),F.isCrossOrigin=Cs(9,"videojs.isCrossOrigin","videojs.url.isCrossOrigin",vp),F.EventTarget=Un,F.any=k0,F.on=jn,F.one=mp,F.off=Wi,F.trigger=cu,F.xhr=Vb,F.TrackList=Io,F.TextTrack=Md,F.TextTrackList=F0,F.AudioTrack=d2,F.AudioTrackList=r2,F.VideoTrack=h2,F.VideoTrackList=a2,["isEl","isTextNode","createEl","hasClass","addClass","removeClass","toggleClass","setAttributes","getAttributes","emptyEl","appendContent","insertContent"].forEach(s=>{F[s]=function(){return at.warn(`videojs.${s}() is deprecated; use videojs.dom.${s}() instead`),V_[s].apply(null,arguments)}}),F.computedStyle=Cs(9,"videojs.computedStyle","videojs.dom.computedStyle",uu),F.dom=V_,F.fn=ik,F.num=zk,F.str=ak,F.url=fk,F.Error=oO;/*! @name videojs-contrib-quality-levels @version 4.1.0 @license Apache-2.0 */class lO{constructor(e){let i=this;return i.id=e.id,i.label=i.id,i.width=e.width,i.height=e.height,i.bitrate=e.bandwidth,i.frameRate=e.frameRate,i.enabled_=e.enabled,Object.defineProperty(i,"enabled",{get(){return i.enabled_()},set(r){i.enabled_(r)}}),i}}class kp extends F.EventTarget{constructor(){super();let e=this;return e.levels_=[],e.selectedIndex_=-1,Object.defineProperty(e,"selectedIndex",{get(){return e.selectedIndex_}}),Object.defineProperty(e,"length",{get(){return e.levels_.length}}),e[Symbol.iterator]=()=>e.levels_.values(),e}addQualityLevel(e){let i=this.getQualityLevelById(e.id);if(i)return i;const r=this.levels_.length;return i=new lO(e),""+r in this||Object.defineProperty(this,r,{get(){return this.levels_[r]}}),this.levels_.push(i),this.trigger({qualityLevel:i,type:"addqualitylevel"}),i}removeQualityLevel(e){let i=null;for(let r=0,o=this.length;r<o;r++)if(this[r]===e){i=this.levels_.splice(r,1)[0],this.selectedIndex_===r?this.selectedIndex_=-1:this.selectedIndex_>r&&this.selectedIndex_--;break}return i&&this.trigger({qualityLevel:e,type:"removequalitylevel"}),i}getQualityLevelById(e){for(let i=0,r=this.length;i<r;i++){const o=this[i];if(o.id===e)return o}return null}dispose(){this.selectedIndex_=-1,this.levels_.length=0}}kp.prototype.allowedEvents_={change:"change",addqualityl
2025-09-22 23:18:02 +03:00
`;for(let i=0;i<s.length;i++){const r=s.start(i),o=s.end(i);e+=`${r} --> ${o}. Duration (${o-r})
`}return e}const Zs=1/30,Js=Zs*3,hS=function(s,e){const i=[];let r;if(s&&s.length)for(r=0;r<s.length;r++)e(s.start(r),s.end(r))&&i.push([s.start(r),s.end(r)]);return Mi(i)},Tu=function(s,e){return hS(s,function(i,r){return i-Js<=e&&r+Js>=e})},Ip=function(s,e){return hS(s,function(i){return i-Zs>=e})},dO=function(s){if(s.length<2)return Mi();const e=[];for(let i=1;i<s.length;i++){const r=s.end(i-1),o=s.start(i);e.push([r,o])}return Mi(e)},hO=function(s,e){let i=null,r=null,o=0;const u=[],c=[];if(!s||!s.length||!e||!e.length)return Mi();let h=s.length;for(;h--;)u.push({time:s.start(h),type:"start"}),u.push({time:s.end(h),type:"end"});for(h=e.length;h--;)u.push({time:e.start(h),type:"start"}),u.push({time:e.end(h),type:"end"});for(u.sort(function(m,v){return m.time-v.time}),h=0;h<u.length;h++)u[h].type==="start"?(o++,o===2&&(i=u[h].time)):u[h].type==="end"&&(o--,o===1&&(r=u[h].time)),i!==null&&r!==null&&(c.push([i,r]),i=null,r=null);return Mi(c)},fS=s=>{const e=[];if(!s||!s.length)return"";for(let i=0;i<s.length;i++)e.push(s.start(i)+" => "+s.end(i));return e.join(", ")},fO=function(s,e,i=1){return((s.length?s.end(s.length-1):0)-e)/i},jo=s=>{const e=[];for(let i=0;i<s.length;i++)e.push({start:s.start(i),end:s.end(i)});return e},pO=function(s,e){if(s===e)return!1;if(!s&&e||!e&&s||s.length!==e.length)return!0;for(let i=0;i<s.length;i++)if(s.start(i)!==e.start(i)||s.end(i)!==e.end(i))return!0;return!1},gy=function(s){if(!(!s||!s.length||!s.end))return s.end(s.length-1)},yy=function(s,e){let i=0;if(!s||!s.length)return i;for(let r=0;r<s.length;r++){const o=s.start(r),u=s.end(r);if(!(e>u)){if(e>o&&e<=u){i+=u-e;continue}i+=u-o}}return i},Ty=(s,e)=>{if(!e.preload)return e.duration;let i=0;return(e.parts||[]).forEach(function(r){i+=r.duration}),(e.preloadHints||[]).forEach(function(r){r.type==="PART"&&(i+=s.partTargetDuration)}),i},vy=s=>(s.segments||[]).reduce((e,i,r)=>(i.parts?i.parts.forEach(function(o,u){e.push({duration:o.duration,segmentIndex:r,partIndex:u,part:o,segment:i})}):e.push({duration:i.duration,segmentIndex:r,partIndex:null,segment:i,part:null}),e),[]),pS=s=>{const e=s.segments&&s.segments.length&&s.segments[s.segments.length-1];return e&&e.parts||[]},mS=({preloadSegment:s})=>{if(!s)return;const{parts:e,preloadHints:i}=s;let r=(i||[]).reduce((o,u)=>o+(u.type==="PART"?1:0),0);return r+=e&&e.length?e.length:0,r},gS=(s,e)=>{if(e.endList)return 0;if(s&&s.suggestedPresentationDelay)return s.suggestedPresentationDelay;const i=pS(e).length>0;return i&&e.serverControl&&e.serverControl.partHoldBack?e.serverControl.partHoldBack:i&&e.partTargetDuration?e.partTargetDuration*3:e.serverControl&&e.serverControl.holdBack?e.serverControl.holdBack:e.targetDuration?e.targetDuration*3:0},mO=function(s,e){let i=0,r=e-s.mediaSequence,o=s.segments[r];if(o){if(typeof o.start<"u")return{result:o.start,precise:!0};if(typeof o.end<"u")return{result:o.end-o.duration,precise:!0}}for(;r--;){if(o=s.segments[r],typeof o.end<"u")return{result:i+o.end,precise:!0};if(i+=Ty(s,o),typeof o.start<"u")return{result:i+o.start,precise:!0}}return{result:i,precise:!1}},gO=function(s,e){let i=0,r,o=e-s.mediaSequence;for(;o<s.segments.length;o++){if(r=s.segments[o],typeof r.start<"u")return{result:r.start-i,precise:!0};if(i+=Ty(s,r),typeof r.end<"u")return{result:r.end-i,precise:!0}}return{result:-1,precise:!1}},yS=function(s,e,i){if(typeof e>"u"&&(e=s.mediaSequence+s.segments.length),e<s.mediaSequence)return 0;const r=mO(s,e);if(r.precise)return r.result;const o=gO(s,e);return o.precise?o.result:r.result+i},TS=function(s,e,i){if(!s)return 0;if(typeof i!="number"&&(i=0),typeof e>"u"){if(s.totalDuration)return s.totalDuration;if(!s.endList)return j.Infinity}return yS(s,e,i)},Nd=function({defaultDuration:s,durationList:e,startIndex:i,endIndex:r}){let o=0;if(i>r&&([i,r]=[r,i]),i<0){for(let u=i;u<Math.min(0,r);u++)o+=s;i=0}for(let u=i;u<r;u++)o+=e[u].duration;return o},vS=function(s,e,i,r){if(!s||!s.segments)return null;if(s.endList)return TS(s);if(e===null)return null;e=e||0;let o=yS(s,s.mediaSequence+s.segments.length,e);return i&&(r=typeof r=="number"?r:gS(null
`;return r};var UO=Object.freeze({__proto__:null,createTransferableMessage:jS,initSegmentId:Rp,segmentKeyId:US,hexDump:PS,tagDump:({bytes:s})=>PS(s),textRanges:s=>{let e="",i;for(i=0;i<s.length;i++)e+=RO(s,i)+" ";return e}});const BS=.25,PO=(s,e)=>{if(!e.dateTimeObject)return null;const i=e.videoTimingInfo.transmuxerPrependedSeconds,o=e.videoTimingInfo.transmuxedPresentationStart+i,u=s-o;return new Date(e.dateTimeObject.getTime()+u*1e3)},BO=s=>s.transmuxedPresentationEnd-s.transmuxedPresentationStart-s.transmuxerPrependedSeconds,qO=(s,e)=>{let i;try{i=new Date(s)}catch{return null}if(!e||!e.segments||e.segments.length===0)return null;let r=e.segments[0];if(i<new Date(r.dateTimeObject))return null;for(let m=0;m<e.segments.length-1;m++){r=e.segments[m];const v=new Date(e.segments[m+1].dateTimeObject);if(i<v)break}const o=e.segments[e.segments.length-1],u=o.dateTimeObject,c=o.videoTimingInfo?BO(o.videoTimingInfo):o.duration+o.duration*BS,h=new Date(u.getTime()+c*1e3);return i>h?null:(i>new Date(u)&&(r=o),{segment:r,estimatedStart:r.videoTimingInfo?r.videoTimingInfo.transmuxedPresentationStart:Mn.duration(e,e.mediaSequence+e.segments.indexOf(r)),type:r.videoTimingInfo?"accurate":"estimate"})},FO=(s,e)=>{if(!e||!e.segments||e.segments.length===0)return null;let i=0,r;for(let u=0;u<e.segments.length&&(r=e.segments[u],i=r.videoTimingInfo?r.videoTimingInfo.transmuxedPresentationEnd:i+r.duration,!(s<=i));u++);const o=e.segments[e.segments.length-1];if(o.videoTimingInfo&&o.videoTimingInfo.transmuxedPresentationEnd<s)return null;if(s>i){if(s>i+o.duration*BS)return null;r=o}return{segment:r,estimatedStart:r.videoTimingInfo?r.videoTimingInfo.transmuxedPresentationStart:i-r.duration,type:r.videoTimingInfo?"accurate":"estimate"}},HO=(s,e)=>{let i,r;try{i=new Date(s),r=new Date(e)}catch{}const o=i.getTime();return(r.getTime()-o)/1e3},VO=s=>{if(!s.segments||s.segments.length===0)return!1;for(let e=0;e<s.segments.length;e++)if(!s.segments[e].dateTimeObject)return!1;return!0},$O=({playlist:s,time:e=void 0,callback:i})=>{if(!i)throw new Error("getProgramTime: callback must be provided");if(!s||e===void 0)return i({message:"getProgramTime: playlist and time must be provided"});const r=FO(e,s);if(!r)return i({message:"valid programTime was not found"});if(r.type==="estimate")return i({message:"Accurate programTime could not be determined. Please seek to e.seekTime and try again",seekTime:r.estimatedStart});const o={mediaSeconds:e},u=PO(e,r.segment);return u&&(o.programDateTime=u.toISOString()),i(null,o)},qS=({programTime:s,playlist:e,retryCount:i=2,seekTo:r,pauseAfterSeek:o=!0,tech:u,callback:c})=>{if(!c)throw new Error("seekToProgramTime: callback must be provided");if(typeof s>"u"||!e||!r)return c({message:"seekToProgramTime: programTime, seekTo and playlist must be provided"});if(!e.endList&&!u.hasStarted_)return c({message:"player must be playing a live stream to start buffering"});if(!VO(e))return c({message:"programDateTime tags must be provided in the manifest "+e.resolvedUri});const h=qO(s,e);if(!h)return c({message:`${s} was not found in the stream`});const m=h.segment,v=HO(m.dateTimeObject,s);if(h.type==="estimate"){if(i===0)return c({message:`${s} is not buffered yet. Try again`});r(h.estimatedStart+v),u.one("seeked",()=>{qS({programTime:s,playlist:e,retryCount:i-1,seekTo:r,pauseAfterSeek:o,tech:u,callback:c})});return}const S=m.start+v,x=()=>c(null,u.currentTime());u.one("seeked",x),o&&u.pause(),r(S)},Cy=(s,e)=>{if(s.readyState===4)return e()},YO=(s,e,i,r)=>{let o=[],u,c=!1;const h=function(x,D,k,O){return D.abort(),c=!0,i(x,D,k,O)},m=function(x,D){if(c)return;if(x)return x.metadata=Uo({requestType:r,request:D,error:x}),h(x,D,"",o);const k=D.responseText.substring(o&&o.byteLength||0,D.responseText.length);if(o=t4(o,l1(k,!0)),u=u||gd(o),o.length<10||u&&o.length<u+2)return Cy(D,()=>h(x,D,"",o));const O=g0(o);return O==="ts"&&o.length<188?Cy(D,()=>h(x,D,"",o)):!O&&o.length<376?Cy(D,()=>h(x,D,"",o)):h(null,D,O,o)},S=e({uri:s,beforeSend(x){x.overrideMimeType("text/plain; charset=x-user-defined"),x.addEventListener("progress",function(
2025-09-22 23:18:02 +03:00
browserWorkerPolyFill(self);
`+s},QS=function(s){return s.toString().replace(/^function.+?{/,"").slice(0,-1)},iI=YS(QS(function(){var s=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},e=function(){this.init=function(){var f={};this.on=function(g,y){f[g]||(f[g]=[]),f[g]=f[g].concat(y)},this.off=function(g,y){var T;return f[g]?(T=f[g].indexOf(y),f[g]=f[g].slice(),f[g].splice(T,1),T>-1):!1},this.trigger=function(g){var y,T,b,E;if(y=f[g],!!y)if(arguments.length===2)for(b=y.length,T=0;T<b;++T)y[T].call(this,arguments[1]);else{for(E=[],T=arguments.length,T=1;T<arguments.length;++T)E.push(arguments[T]);for(b=y.length,T=0;T<b;++T)y[T].apply(this,E)}},this.dispose=function(){f={}}}};e.prototype.pipe=function(f){return this.on("data",function(g){f.push(g)}),this.on("done",function(g){f.flush(g)}),this.on("partialdone",function(g){f.partialFlush(g)}),this.on("endedtimeline",function(g){f.endTimeline(g)}),this.on("reset",function(g){f.reset(g)}),f},e.prototype.push=function(f){this.trigger("data",f)},e.prototype.flush=function(f){this.trigger("done",f)},e.prototype.partialFlush=function(f){this.trigger("partialdone",f)},e.prototype.endTimeline=function(f){this.trigger("endedtimeline",f)},e.prototype.reset=function(f){this.trigger("reset",f)};var i=e,r=Math.pow(2,32),o=function(f){var g=new DataView(f.buffer,f.byteOffset,f.byteLength),y;return g.getBigUint64?(y=g.getBigUint64(0),y<Number.MAX_SAFE_INTEGER?Number(y):y):g.getUint32(0)*r+g.getUint32(4)},u={getUint64:o,MAX_UINT32:r},c=u.MAX_UINT32,h,m,v,S,x,D,k,O,C,U,P,Y,$,G,W,le,Z,fe,K,ge,ue,pe,de,Ee,$e,ee,ve,ke,Pe,re,Oe,be,Fe,He,Qe,Me;(function(){var f;if(de={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],pasp:[],sdtp:[],smhd:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],styp:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[]},!(typeof Uint8Array>"u")){for(f in de)de.hasOwnProperty(f)&&(de[f]=[f.charCodeAt(0),f.charCodeAt(1),f.charCodeAt(2),f.charCodeAt(3)]);Ee=new Uint8Array(["i".charCodeAt(0),"s".charCodeAt(0),"o".charCodeAt(0),"m".charCodeAt(0)]),ee=new Uint8Array(["a".charCodeAt(0),"v".charCodeAt(0),"c".charCodeAt(0),"1".charCodeAt(0)]),$e=new Uint8Array([0,0,0,1]),ve=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),ke=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),Pe={video:ve,audio:ke},be=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),Oe=new Uint8Array([0,0,0,0,0,0,0,0]),Fe=new Uint8Array([0,0,0,0,0,0,0,0]),He=Fe,Qe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Me=Fe,re=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}})(),h=function(f){var g=[],y=0,T,b,E;for(T=1;T<arguments.length;T++)g.push(arguments[T]);for(T=g.length;T--;)y+=g[T].byteLength;for(b=new Uint8Array(y+8),E=new DataView(b.buffer,b.byteOffset,b.byteLength),E.setUint32(0,b.byteLength),b.set(f,4),T=0,y=8;T<g.length;T++)b.set(g[T],y),y+=g[T].byteLength;return b},m=function(){return h(de.dinf,h(de.dref,be))},v=function(f){return h(de.esds,new Uint8Array([0,0,0,0,3,25,0,0,0,4,17,64,21,0,6,0,0,0,218,192,0,0,218,192,5,2,f.audioobjecttype<<3|f.samplingfrequencyindex>>>1,f.samplingfrequencyindex<<7|f.channelcount<<3,6,1,2]))},S=function(){return h(de.ftyp,Ee,$e,Ee,ee)},le=function(f){return h(de.hdlr,Pe[f])},x=function(f){return h(de.mdat,f)},W=function(f){var g=new Uint8Array([0,0,0,0,0,0,0,2,0,0,0,3,0,1,95,144,f.duration>>>24&255,f.duration>>>16&255,f.duration>>>8&255,f.duration&255,85,196,0,0]);return f.samplerate&&(g[12]=f.samplerate>>>24&255,g[13]=f.samplerate>>>16&255,g[14]=f.samplerate>>>8&255,g[15]=f.samplerate&255),h(de.mdhd,g)},G=function(f){return h(de.mdia,W(f),le(f.type),k(f))},D=function(f){return h(de.mfhd,new Uint8Array([0,0,0,0,(f&4278190080)>>24,(f&16711680)>>16,(f&65280)>>8,f&255]))},k=function(f){return h(de.minf,f.type==="video"?h(de.vmhd,re):h(de.smhd,Oe),m(),fe(f))},O=function(f,g){for(var y=[],T=g.length;
`)},Fn.prototype.clearText=function(){this.rows=[""],this.rowIdx=0},Fn.prototype.newLine=function(f){for(this.rows.length>=this.virtualRowCount&&typeof this.beforeRowOverflow=="function"&&this.beforeRowOverflow(f),this.rows.length>0&&(this.rows.push(""),this.rowIdx++);this.rows.length>this.virtualRowCount;)this.rows.shift(),this.rowIdx--},Fn.prototype.isEmpty=function(){return this.rows.length===0?!0:this.rows.length===1?this.rows[0]==="":!1},Fn.prototype.addText=function(f){this.rows[this.rowIdx]+=f},Fn.prototype.backspace=function(){if(!this.isEmpty()){var f=this.rows[this.rowIdx];this.rows[this.rowIdx]=f.substr(0,f.length-1)}};var ji=function(f,g,y){this.serviceNum=f,this.text="",this.currentWindow=new Fn(-1),this.windows=[],this.stream=y,typeof g=="string"&&this.createTextDecoder(g)};ji.prototype.init=function(f,g){this.startPts=f;for(var y=0;y<8;y++)this.windows[y]=new Fn(y),typeof g=="function"&&(this.windows[y].beforeRowOverflow=g)},ji.prototype.setCurrentWindow=function(f){this.currentWindow=this.windows[f]},ji.prototype.createTextDecoder=function(f){if(typeof TextDecoder>"u")this.stream.trigger("log",{level:"warn",message:"The `encoding` option is unsupported without TextDecoder support"});else try{this.textDecoder_=new TextDecoder(f)}catch(g){this.stream.trigger("log",{level:"warn",message:"TextDecoder could not be created with "+f+" encoding. "+g})}};var Et=function(f){f=f||{},Et.prototype.init.call(this);var g=this,y=f.captionServices||{},T={},b;Object.keys(y).forEach(E=>{b=y[E],/^SERVICE/.test(E)&&(T[E]=b.encoding)}),this.serviceEncodings=T,this.current708Packet=null,this.services={},this.push=function(E){E.type===3?(g.new708Packet(),g.add708Bytes(E)):(g.current708Packet===null&&g.new708Packet(),g.add708Bytes(E))}};Et.prototype=new qd,Et.prototype.new708Packet=function(){this.current708Packet!==null&&this.push708Packet(),this.current708Packet={data:[],ptsVals:[]}},Et.prototype.add708Bytes=function(f){var g=f.ccData,y=g>>>8,T=g&255;this.current708Packet.ptsVals.push(f.pts),this.current708Packet.data.push(y),this.current708Packet.data.push(T)},Et.prototype.push708Packet=function(){var f=this.current708Packet,g=f.data,y=null,T=null,b=0,E=g[b++];for(f.seq=E>>6,f.sizeCode=E&63;b<g.length;b++)E=g[b++],y=E>>5,T=E&31,y===7&&T>0&&(E=g[b++],y=E),this.pushServiceBlock(y,b,T),T>0&&(b+=T-1)},Et.prototype.pushServiceBlock=function(f,g,y){var T,b=g,E=this.current708Packet.data,w=this.services[f];for(w||(w=this.initService(f,b));b<g+y&&b<E.length;b++)T=E[b],Re(T)?b=this.handleText(b,w):T===24?b=this.multiByteCharacter(b,w):T===16?b=this.extendedCommands(b,w):128<=T&&T<=135?b=this.setCurrentWindow(b,w):152<=T&&T<=159?b=this.defineWindow(b,w):T===136?b=this.clearWindows(b,w):T===140?b=this.deleteWindows(b,w):T===137?b=this.displayWindows(b,w):T===138?b=this.hideWindows(b,w):T===139?b=this.toggleWindows(b,w):T===151?b=this.setWindowAttributes(b,w):T===144?b=this.setPenAttributes(b,w):T===145?b=this.setPenColor(b,w):T===146?b=this.setPenLocation(b,w):T===143?w=this.reset(b,w):T===8?w.currentWindow.backspace():T===12?w.currentWindow.clearText():T===13?w.currentWindow.pendingNewLine=!0:T===14?w.currentWindow.clearText():T===141&&b++},Et.prototype.extendedCommands=function(f,g){var y=this.current708Packet.data,T=y[++f];return Re(T)&&(f=this.handleText(f,g,{isExtended:!0})),f},Et.prototype.getPts=function(f){return this.current708Packet.ptsVals[Math.floor(f/2)]},Et.prototype.initService=function(f,g){var T="SERVICE"+f,y=this,T,b;return T in this.serviceEncodings&&(b=this.serviceEncodings[T]),this.services[f]=new ji(f,b,y),this.services[f].init(this.getPts(g),function(E){y.flushDisplayed(E,y.services[f])}),this.services[f]},Et.prototype.handleText=function(f,g,y){var T=y&&y.isExtended,b=y&&y.isMultiByte,E=this.current708Packet.data,w=T?4096:0,I=E[f],R=E[f+1],z=g.currentWindow,H,te;function Se(ce){return ce.map(je=>("0"+(je&255).toString(16)).slice(-2)).join("")}if(b?(te=[I,R],f++):te=[I],g.textDecoder_&&!T)H=g.textDecoder_.decode(new Uint8Array(te));else if(b){const ce=Se(te);H=String.fromCharCode(parseInt(ce,16))}else H=qy(w|I);re
2025-09-22 23:18:02 +03:00
`),this.pushCaption(g),g.startPts=f},Et.prototype.pushCaption=function(f){f.text!==""&&(this.trigger("data",{startPts:f.startPts,endPts:f.endPts,text:f.text,stream:"cc708_"+f.serviceNum}),f.text="",f.startPts=f.endPts)},Et.prototype.displayWindows=function(f,g){var y=this.current708Packet.data,T=y[++f],b=this.getPts(f);this.flushDisplayed(b,g);for(var E=0;E<8;E++)T&1<<E&&(g.windows[E].visible=1);return f},Et.prototype.hideWindows=function(f,g){var y=this.current708Packet.data,T=y[++f],b=this.getPts(f);this.flushDisplayed(b,g);for(var E=0;E<8;E++)T&1<<E&&(g.windows[E].visible=0);return f},Et.prototype.toggleWindows=function(f,g){var y=this.current708Packet.data,T=y[++f],b=this.getPts(f);this.flushDisplayed(b,g);for(var E=0;E<8;E++)T&1<<E&&(g.windows[E].visible^=1);return f},Et.prototype.clearWindows=function(f,g){var y=this.current708Packet.data,T=y[++f],b=this.getPts(f);this.flushDisplayed(b,g);for(var E=0;E<8;E++)T&1<<E&&g.windows[E].clearText();return f},Et.prototype.deleteWindows=function(f,g){var y=this.current708Packet.data,T=y[++f],b=this.getPts(f);this.flushDisplayed(b,g);for(var E=0;E<8;E++)T&1<<E&&g.windows[E].reset();return f},Et.prototype.setPenAttributes=function(f,g){var y=this.current708Packet.data,T=y[f],b=g.currentWindow.penAttr;return T=y[++f],b.textTag=(T&240)>>4,b.offset=(T&12)>>2,b.penSize=T&3,T=y[++f],b.italics=(T&128)>>7,b.underline=(T&64)>>6,b.edgeType=(T&56)>>3,b.fontStyle=T&7,f},Et.prototype.setPenColor=function(f,g){var y=this.current708Packet.data,T=y[f],b=g.currentWindow.penColor;return T=y[++f],b.fgOpacity=(T&192)>>6,b.fgRed=(T&48)>>4,b.fgGreen=(T&12)>>2,b.fgBlue=T&3,T=y[++f],b.bgOpacity=(T&192)>>6,b.bgRed=(T&48)>>4,b.bgGreen=(T&12)>>2,b.bgBlue=T&3,T=y[++f],b.edgeRed=(T&48)>>4,b.edgeGreen=(T&12)>>2,b.edgeBlue=T&3,f},Et.prototype.setPenLocation=function(f,g){var y=this.current708Packet.data,T=y[f],b=g.currentWindow.penLoc;return g.currentWindow.pendingNewLine=!0,T=y[++f],b.row=T&15,T=y[++f],b.column=T&63,f},Et.prototype.reset=function(f,g){var y=this.getPts(f);return this.flushDisplayed(y,g),this.initService(g.serviceNum,f)};var Fy={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,304:174,305:176,306:189,307:191,308:8482,309:162,310:163,311:9834,312:224,313:160,314:232,315:226,316:234,317:238,318:244,319:251,544:193,545:201,546:211,547:218,548:220,549:252,550:8216,551:161,552:42,553:39,554:8212,555:169,556:8480,557:8226,558:8220,559:8221,560:192,561:194,562:199,563:200,564:202,565:203,566:235,567:206,568:207,569:239,570:212,571:217,572:249,573:219,574:171,575:187,800:195,801:227,802:205,803:204,804:236,805:210,806:242,807:213,808:245,809:123,810:125,811:92,812:94,813:95,814:124,815:126,816:196,817:228,818:214,819:246,820:223,821:165,822:164,823:9474,824:197,825:229,826:216,827:248,828:9484,829:9488,830:9492,831:9496},$r=function(f){return f===null?"":(f=Fy[f]||f,String.fromCharCode(f))},qo=14,Au=[4352,4384,4608,4640,5376,5408,5632,5664,5888,5920,4096,4864,4896,5120,5152],hi=function(){for(var f=[],g=qo+1;g--;)f.push({text:"",indent:0,offset:0});return f},It=function(f,g){It.prototype.init.call(this),this.field_=f||0,this.dataChannel_=g||0,this.name_="CC"+((this.field_<<1|this.dataChannel_)+1),this.setConstants(),this.reset(),this.push=function(y){var T,b,E,w,I;if(T=y.ccData&32639,T===this.lastControlCode_){this.lastControlCode_=null;return}if((T&61440)===4096?this.lastControlCode_=T:T!==this.PADDING_&&(this.lastControlCode_=null),E=T>>>8,w=T&255,T!==this.PADDING_)if(T===this.RESUME_CAPTION_LOADING_)this.mode_="popOn";else if(T===this.END_OF_CAPTION_)this.mode_="popOn",this.clearFormatting(y.pts),this.flushDisplayed(y.pts),b=this.displayed_,this.displayed_=this.nonDisplayed_,this.nonDisplayed_=b,this.startPts_=y.pts;else if(T===this.ROLL_UP_2_ROWS_)this.rollUpRows_=2,this.setRollUp(y.pts);else if(T===this.ROLL_UP_3_ROWS_)this.rollUpRows_=3,this.setRollUp(y.pts);else if(T===this.ROLL_UP_4_ROWS_)this.rollUpRows_=4,this.setRollUp(y.pts);else if(T===this.CARRIAGE_RETURN_)this.clearFormatting(y.pts),this.flushDisplayed(y.pts),this.shiftRowsUp_(),this.startPts_=y.pts;else
`+Object.keys(T).filter(function(E){return E!=="type"&&E!=="boxes"}).map(function(E){var w=y+" "+E+": ",I=T[E];if(I instanceof Uint8Array||I instanceof Uint32Array){var R=Array.prototype.slice.call(new Uint8Array(I.buffer,I.byteOffset,I.byteLength)).map(function(z){return" "+("00"+z.toString(16)).slice(-2)}).join("").match(/.{1,24}/g);return R?R.length===1?w+"<"+R.join("").slice(1)+">":w+`<
`+R.map(function(z){return y+" "+z}).join(`
2025-09-22 23:18:02 +03:00
`)+`
`+y+" >":w+"<>"}return w+JSON.stringify(I,null,2).split(`
`).map(function(z,H){return H===0?z:y+" "+z}).join(`
2025-09-22 23:18:02 +03:00
`)}).join(`
`)+(T.boxes?`
`+os(T.boxes,g+1):"")}).join(`
`)};var pr={inspect:oi,textify:os,parseType:ea,findBox:th,parseTraf:Vn.traf,parseTfdt:Vn.tfdt,parseHdlr:Vn.hdlr,parseTfhd:Vn.tfhd,parseTrun:Vn.trun,parseSidx:Vn.sidx},Ut=function(f){for(var g=0,y=String.fromCharCode(f[g]),T="";y!=="\0";)T+=y,g++,y=String.fromCharCode(f[g]);return T+=y,T},Gu={uint8ToCString:Ut},sl=Gu.uint8ToCString,ih=u.getUint64,ta=function(f){var g=4,y=f[0],T,b,E,w,I,R,z,H;if(y===0){T=sl(f.subarray(g)),g+=T.length,b=sl(f.subarray(g)),g+=b.length;var te=new DataView(f.buffer);E=te.getUint32(g),g+=4,I=te.getUint32(g),g+=4,R=te.getUint32(g),g+=4,z=te.getUint32(g),g+=4}else if(y===1){var te=new DataView(f.buffer);E=te.getUint32(g),g+=4,w=ih(f.subarray(g)),g+=8,R=te.getUint32(g),g+=4,z=te.getUint32(g),g+=4,T=sl(f.subarray(g)),g+=T.length,b=sl(f.subarray(g)),g+=b.length}H=new Uint8Array(f.subarray(g,f.byteLength));var Se={scheme_id_uri:T,value:b,timescale:E||1,presentation_time:w,presentation_time_delta:I,event_duration:R,id:z,message_data:H};return zs(y,Se)?Se:void 0},rl=function(f,g,y,T){return f||f===0?f/g:T+y/g},zs=function(f,g){var y=g.scheme_id_uri!=="\0",T=f===0&&al(g.presentation_time_delta)&&y,b=f===1&&al(g.presentation_time)&&y;return!(f>1)&&T||b},al=function(f){return f!==void 0||f!==null},ol={parseEmsgBox:ta,scaleTime:rl},ia;typeof window<"u"?ia=window:typeof s<"u"?ia=s:typeof self<"u"?ia=self:ia={};var Xu=ia,ll=Ha.toUnsigned,en=Ha.toHexString,gt=Va,js=Yu,nh=ol,om=Rs,eT=Jd,sh=el,Wu=u.getUint64,rh,ah,oh,ul,lh,Ku,uh,cl=Xu,ch=Gr.parseId3Frames;rh=function(f){var g={},y=gt(f,["moov","trak"]);return y.reduce(function(T,b){var E,w,I,R,z;return E=gt(b,["tkhd"])[0],!E||(w=E[0],I=w===0?12:20,R=ll(E[I]<<24|E[I+1]<<16|E[I+2]<<8|E[I+3]),z=gt(b,["mdia","mdhd"])[0],!z)?null:(w=z[0],I=w===0?12:20,T[R]=ll(z[I]<<24|z[I+1]<<16|z[I+2]<<8|z[I+3]),T)},g)},ah=function(f,g){var y;y=gt(g,["moof","traf"]);var T=y.reduce(function(b,E){var w=gt(E,["tfhd"])[0],I=ll(w[4]<<24|w[5]<<16|w[6]<<8|w[7]),R=f[I]||9e4,z=gt(E,["tfdt"])[0],H=new DataView(z.buffer,z.byteOffset,z.byteLength),te;z[0]===1?te=Wu(z.subarray(4,12)):te=H.getUint32(4);let Se;return typeof te=="bigint"?Se=te/cl.BigInt(R):typeof te=="number"&&!isNaN(te)&&(Se=te/R),Se<Number.MAX_SAFE_INTEGER&&(Se=Number(Se)),Se<b&&(b=Se),b},1/0);return typeof T=="bigint"||isFinite(T)?T:0},oh=function(f,g){var y=gt(g,["moof","traf"]),T=0,b=0,E;if(y&&y.length){var w=gt(y[0],["tfhd"])[0],I=gt(y[0],["trun"])[0],R=gt(y[0],["tfdt"])[0];if(w){var z=om(w);E=z.trackId}if(R){var H=sh(R);T=H.baseMediaDecodeTime}if(I){var te=eT(I);te.samples&&te.samples.length&&(b=te.samples[0].compositionTimeOffset||0)}}var Se=f[E]||9e4;typeof T=="bigint"&&(b=cl.BigInt(b),Se=cl.BigInt(Se));var ce=(T+b)/Se;return typeof ce=="bigint"&&ce<Number.MAX_SAFE_INTEGER&&(ce=Number(ce)),ce},ul=function(f){var g=gt(f,["moov","trak"]),y=[];return g.forEach(function(T){var b=gt(T,["mdia","hdlr"]),E=gt(T,["tkhd"]);b.forEach(function(w,I){var R=js(w.subarray(8,12)),z=E[I],H,te,Se;R==="vide"&&(H=new DataView(z.buffer,z.byteOffset,z.byteLength),te=H.getUint8(0),Se=te===0?H.getUint32(12):H.getUint32(20),y.push(Se))})}),y},Ku=function(f){var g=f[0],y=g===0?12:20;return ll(f[y]<<24|f[y+1]<<16|f[y+2]<<8|f[y+3])},lh=function(f){var g=gt(f,["moov","trak"]),y=[];return g.forEach(function(T){var b={},E=gt(T,["tkhd"])[0],w,I;E&&(w=new DataView(E.buffer,E.byteOffset,E.byteLength),I=w.getUint8(0),b.id=I===0?w.getUint32(12):w.getUint32(20));var R=gt(T,["mdia","hdlr"])[0];if(R){var z=js(R.subarray(8,12));z==="vide"?b.type="video":z==="soun"?b.type="audio":b.type=z}var H=gt(T,["mdia","minf","stbl","stsd"])[0];if(H){var te=H.subarray(8);b.codec=js(te.subarray(4,8));var Se=gt(te,[b.codec])[0],ce,je;Se&&(/^[asm]vc[1-9]$/i.test(b.codec)?(ce=Se.subarray(78),je=js(ce.subarray(4,8)),je==="avcC"&&ce.length>11?(b.codec+=".",b.codec+=en(ce[9]),b.codec+=en(ce[10]),b.codec+=en(ce[11])):b.codec="avc1.4d400d"):/^mp4[a,v]$/i.test(b.codec)?(ce=Se.subarray(28),je=js(ce.subarray(4,8)),je==="esds"&&ce.length>20&&ce[19]!==0?(b.codec+="."+en(ce[19]),b.codec+="."+en(ce[20]>>>2&63).replace(/^0/,"")):b.codec="mp4a.40.2"):b.codec=b.codec.toLowerCase())}var Be=gt(T
2025-09-22 23:18:02 +03:00
currentTime: ${this.currentTime_()}
bufferedEnd: ${gy(this.buffered_())}
`,this.mediaSequenceSync_.diagnostics)),this.trigger("syncinfoupdate"),this.state==="INIT"&&this.couldBeginLoading_())return this.init_();if(!r||r.uri!==e.uri){this.mediaIndex!==null&&(!e.endList&&typeof e.partTargetDuration=="number"?this.resetLoader():this.resyncLoader()),this.currentMediaInfo_=void 0,this.trigger("playlistupdate");return}const c=e.mediaSequence-r.mediaSequence;if(this.logger_(`live window shift [${c}]`),this.mediaIndex!==null)if(this.mediaIndex-=c,this.mediaIndex<0)this.mediaIndex=null,this.partIndex=null;else{const h=this.playlist_.segments[this.mediaIndex];if(this.partIndex&&(!h.parts||!h.parts.length||!h.parts[this.partIndex])){const m=this.mediaIndex;this.logger_(`currently processing part (index ${this.partIndex}) no longer exists.`),this.resetLoader(),this.mediaIndex=m}}o&&(o.mediaIndex-=c,o.mediaIndex<0?(o.mediaIndex=null,o.partIndex=null):(o.mediaIndex>=0&&(o.segment=e.segments[o.mediaIndex]),o.partIndex>=0&&o.segment.parts&&(o.part=o.segment.parts[o.partIndex]))),this.syncController_.saveExpiredSegmentInfo(r,e)}pause(){this.checkBufferTimeout_&&(j.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=null)}paused(){return this.checkBufferTimeout_===null}resetEverything(e){this.ended_=!1,this.activeInitSegmentId_=null,this.appendInitSegment_={audio:!0,video:!0},this.resetLoader(),this.remove(0,1/0,e),this.transmuxer_&&(this.transmuxer_.postMessage({action:"clearAllMp4Captions"}),this.transmuxer_.postMessage({action:"reset"}))}resetLoader(){this.fetchAtBuffer_=!1,this.mediaSequenceSync_&&this.mediaSequenceSync_.resetAppendedStatus(),this.resyncLoader()}resyncLoader(){this.transmuxer_&&wy.reset(this.transmuxer_),this.mediaIndex=null,this.partIndex=null,this.syncPoint_=null,this.isPendingTimestampOffset_=!1;const e=this.currentMediaInfo_&&this.currentMediaInfo_.isFmp4;this.sourceType_==="hls"&&!e&&(this.shouldForceTimestampOffsetAfterResync_=!0),this.callQueue_=[],this.loadQueue_=[],this.metadataQueue_.id3=[],this.metadataQueue_.caption=[],this.abort(),this.transmuxer_&&this.transmuxer_.postMessage({action:"clearParsedMp4Captions"})}remove(e,i,r=()=>{},o=!1){if(i===1/0&&(i=this.duration_()),i<=e){this.logger_("skipping remove because end ${end} is <= start ${start}");return}if(!this.sourceUpdater_||!this.getMediaInfo_()){this.logger_("skipping remove because no source updater or starting media info");return}let u=1;const c=()=>{u--,u===0&&r()};(o||!this.audioDisabled_)&&(u++,this.sourceUpdater_.removeAudio(e,i,c)),(o||this.loaderType_==="main")&&(this.gopBuffer_=zI(this.gopBuffer_,e,i,this.timeMapping_),u++,this.sourceUpdater_.removeVideo(e,i,c));for(const h in this.inbandTextTracks_)Ld(e,i,this.inbandTextTracks_[h]);Ld(e,i,this.segmentMetadataTrack_),c()}monitorBuffer_(){this.checkBufferTimeout_&&j.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=j.setTimeout(this.monitorBufferTick_.bind(this),1)}monitorBufferTick_(){this.state==="READY"&&this.fillBuffer_(),this.checkBufferTimeout_&&j.clearTimeout(this.checkBufferTimeout_),this.checkBufferTimeout_=j.setTimeout(this.monitorBufferTick_.bind(this),PI)}fillBuffer_(){if(this.sourceUpdater_.updating())return;const e=this.chooseNextRequest_();if(!e)return;const i={segmentInfo:Po({type:this.loaderType_,segment:e})};this.trigger({type:"segmentselected",metadata:i}),typeof e.timestampOffset=="number"&&(this.isPendingTimestampOffset_=!1,this.timelineChangeController_.pendingTimelineChange({type:this.loaderType_,from:this.currentTimeline_,to:e.timeline})),this.loadSegment_(e)}isEndOfStream_(e=this.mediaIndex,i=this.playlist_,r=this.partIndex){if(!i||!this.mediaSource_)return!1;const o=typeof e=="number"&&i.segments[e],u=e+1===i.segments.length,c=!o||!o.parts||r+1===o.parts.length;return i.endList&&this.mediaSource_.readyState==="open"&&u&&c}chooseNextRequest_(){const e=this.buffered_(),i=gy(e)||0,r=yy(e,this.currentTime_()),o=!this.hasPlayed_()&&r>=1,u=r>=this.goalBufferLength_(),c=this.playlist_.segments;if(!c.length||o||u)return null;this.syncPoint_=this.syncPoint_||this.syncController_.getSyncPoint(this.playlist_,this.duration_(
For TargetTime: ${C}.
2025-09-22 23:18:02 +03:00
CurrentTime: ${this.currentTime_()}
BufferedEnd: ${i}
Fetch At Buffer: ${this.fetchAtBuffer_}
`,this.mediaSequenceSync_.diagnostics),this.mediaSequenceSync_&&this.mediaSequenceSync_.isReliable){const U=this.getSyncInfoFromMediaSequenceSync_(C);if(!U){const P="No sync info found while using media sequence sync";return this.error({message:P,metadata:{errorType:F.Error.StreamingFailedToSelectNextSegment,error:new Error(P)}}),this.logger_("chooseNextRequest_ - no sync info found using media sequence sync"),null}this.logger_(`chooseNextRequest_ mediaSequence syncInfo (${U.start} --> ${U.end})`),D=U.segmentIndex,k=U.partIndex,O=U.start}else{this.logger_("chooseNextRequest_ - fallback to a regular segment selection algorithm, based on a syncPoint.");const U=Mn.getMediaInfoForTime({exactManifestTimings:this.exactManifestTimings,playlist:this.playlist_,currentTime:C,startingPartIndex:this.syncPoint_.partIndex,startingSegmentIndex:this.syncPoint_.segmentIndex,startTime:this.syncPoint_.time});D=U.segmentIndex,k=U.partIndex,O=U.startTime}h.getMediaInfoForTime=this.fetchAtBuffer_?`bufferedEnd ${C}`:`currentTime ${C}`,h.mediaIndex=D,h.startOfSegment=O,h.partIndex=k,this.logger_(`choose next request. Playlist switched and we have a sync point. Media Index: ${h.mediaIndex} `)}const m=c[h.mediaIndex];let v=m&&typeof h.partIndex=="number"&&m.parts&&m.parts[h.partIndex];if(!m||typeof h.partIndex=="number"&&!v)return null;typeof h.partIndex!="number"&&m.parts&&(h.partIndex=0,v=m.parts[0]);const S=this.vhs_.playlists&&this.vhs_.playlists.main&&this.vhs_.playlists.main.independentSegments||this.playlist_.independentSegments;if(!r&&v&&!S&&!v.independent)if(h.partIndex===0){const D=c[h.mediaIndex-1],k=D.parts&&D.parts.length&&D.parts[D.parts.length-1];k&&k.independent&&(h.mediaIndex-=1,h.partIndex=D.parts.length-1,h.independent="previous segment")}else m.parts[h.partIndex-1].independent&&(h.partIndex-=1,h.independent="previous part");const x=this.mediaSource_&&this.mediaSource_.readyState==="ended";return h.mediaIndex>=c.length-1&&x&&!this.seeking_()?null:(this.shouldForceTimestampOffsetAfterResync_&&(this.shouldForceTimestampOffsetAfterResync_=!1,h.forceTimestampOffset=!0,this.logger_("choose next request. Force timestamp offset after loader resync")),this.generateSegmentInfo_(h))}getSyncInfoFromMediaSequenceSync_(e){if(!this.mediaSequenceSync_)return null;const i=Math.max(e,this.mediaSequenceSync_.start);e!==i&&this.logger_(`getSyncInfoFromMediaSequenceSync_. Pulled target time from ${e} to ${i}`);const r=this.mediaSequenceSync_.getSyncInfoForTime(i);if(!r)return null;if(!r.isAppended)return r;const o=this.mediaSequenceSync_.getSyncInfoForTime(r.end);return o?(o.isAppended&&this.logger_("getSyncInfoFromMediaSequenceSync_: We encounter unexpected scenario where next media sequence sync info is also appended!"),o):null}generateSegmentInfo_(e){const{independent:i,playlist:r,mediaIndex:o,startOfSegment:u,isSyncRequest:c,partIndex:h,forceTimestampOffset:m,getMediaInfoForTime:v}=e,S=r.segments[o],x=typeof h=="number"&&S.parts[h],D={requestId:"segment-loader-"+Math.random(),uri:x&&x.resolvedUri||S.resolvedUri,mediaIndex:o,partIndex:x?h:null,isSyncRequest:c,startOfSegment:u,playlist:r,bytes:null,encryptedBytes:null,timestampOffset:null,timeline:S.timeline,duration:x&&x.duration||S.duration,segment:S,part:x,byteLength:0,transmuxer:this.transmuxer_,getMediaInfoForTime:v,independent:i},k=typeof m<"u"?m:this.isPendingTimestampOffset_;D.timestampOffset=this.timestampOffsetForSegment_({segmentTimeline:S.timeline,currentTimeline:this.currentTimeline_,startOfSegment:u,buffered:this.buffered_(),overrideCheck:k});const O=gy(this.sourceUpdater_.audioBuffered());return typeof O=="number"&&(D.audioAppendStart=O-this.sourceUpdater_.audioTimestampOffset()),this.sourceUpdater_.videoBuffered().length&&(D.gopsToAlignWith=LI(this.gopBuffer_,this.currentTime_()-this.sourceUpdater_.videoTimestampOffset(),this.timeMapping_)),D}timestampOffsetForSegment_(e){return FI(e)}earlyAbortWhenNeeded_(e){if(this.vhs_.tech_.paused()||!this.xhrOptions_.timeout||!this.playlist_.attributes.BANDWIDTH||Date.now()-(e.firstBytesReceivedAt||Date.now())<1e3)return;const i=this.curren
2025-09-22 23:18:02 +03:00
${ox(e.uri)}
${Mu(e)}`),i.map&&!i.map.bytes&&(this.logger_("going to request init segment."),this.appendInitSegment_={video:!0,audio:!0}),e.abortRequests=bI({xhr:this.vhs_.xhr,xhrOptions:this.xhrOptions_,decryptionWorker:this.decrypter_,segment:i,abortFn:this.handleAbort_.bind(this,e),progressFn:this.handleProgress_.bind(this),trackInfoFn:this.handleTrackInfo_.bind(this),timingInfoFn:this.handleTimingInfo_.bind(this),videoSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"video",e.requestId),audioSegmentTimingInfoFn:this.handleSegmentTimingInfo_.bind(this,"audio",e.requestId),captionsFn:this.handleCaptions_.bind(this),isEndOfTimeline:c,endedTimelineFn:()=>{this.logger_("received endedtimeline callback")},id3Fn:this.handleId3_.bind(this),dataFn:this.handleData_.bind(this),doneFn:this.segmentRequestFinished_.bind(this),onTransmuxerLog:({message:h,level:m,stream:v})=>{this.logger_(`${Mu(e)} logged from transmuxer stream ${v} as a ${m}: ${h}`)},triggerSegmentEventFn:({type:h,segment:m,keyInfo:v,trackInfo:S,timingInfo:x})=>{const k={segmentInfo:Po({segment:m})};v&&(k.keyInfo=v),S&&(k.trackInfo=S),x&&(k.timingInfo=x),this.trigger({type:h,metadata:k})}})}trimBackBuffer_(e){const i=qI(this.seekable_(),this.currentTime_(),this.playlist_.targetDuration||10);i>0&&this.remove(0,i)}createSimplifiedSegmentObj_(e){const i=e.segment,r=e.part,o=e.segment.key||e.segment.map&&e.segment.map.key,u=e.segment.map&&!e.segment.map.bytes,c={resolvedUri:r?r.resolvedUri:i.resolvedUri,byterange:r?r.byterange:i.byterange,requestId:e.requestId,transmuxer:e.transmuxer,audioAppendStart:e.audioAppendStart,gopsToAlignWith:e.gopsToAlignWith,part:e.part,type:this.loaderType_,start:e.startOfSegment,duration:e.duration,isEncrypted:o,isMediaInitialization:u},h=e.playlist.segments[e.mediaIndex-1];if(h&&h.timeline===i.timeline&&(h.videoTimingInfo?c.baseStartTime=h.videoTimingInfo.transmuxedDecodeEnd:h.audioTimingInfo&&(c.baseStartTime=h.audioTimingInfo.transmuxedDecodeEnd)),i.key){const m=i.key.iv||new Uint32Array([0,0,0,e.mediaIndex+e.playlist.mediaSequence]);c.key=this.segmentKey(i.key),c.key.iv=m}return i.map&&(c.map=this.initSegmentForMap(i.map)),c}saveTransferStats_(e){this.mediaRequests+=1,e&&(this.mediaBytesTransferred+=e.bytesReceived,this.mediaTransferDuration+=e.roundTripTime)}saveBandwidthRelatedStats_(e,i){if(this.pendingSegment_.byteLength=i.bytesReceived,e<jp){this.logger_(`Ignoring segment's bandwidth because its duration of ${e} is less than the min to record ${jp}`);return}const r={bandwidthInfo:{from:this.bandwidth,to:i.bandwidth}};this.trigger({type:"bandwidthupdated",metadata:r}),this.bandwidth=i.bandwidth,this.roundTrip=i.roundTripTime}handleTimeout_(){this.mediaRequestsTimedout+=1,this.bandwidth=1,this.roundTrip=NaN,this.trigger("bandwidthupdate"),this.trigger("timeout")}segmentRequestFinished_(e,i,r){if(this.callQueue_.length){this.callQueue_.push(this.segmentRequestFinished_.bind(this,e,i,r));return}if(this.saveTransferStats_(i.stats),!this.pendingSegment_||i.requestId!==this.pendingSegment_.requestId)return;if(e){if(this.pendingSegment_=null,this.state="READY",e.code===er.ABORTED)return;if(this.pause(),e.code===er.TIMEOUT){this.handleTimeout_();return}this.mediaRequestsErrored+=1,this.error(e),this.trigger("error");return}const o=this.pendingSegment_;this.saveBandwidthRelatedStats_(o.duration,i.stats),o.endOfAllRequests=i.endOfAllRequests,r.gopInfo&&(this.gopBuffer_=RI(this.gopBuffer_,r.gopInfo,this.safeAppend_)),this.state="APPENDING",this.trigger("appending"),this.waitForAppendsToComplete_(o)}setTimeMapping_(e){const i=this.syncController_.mappingForTimeline(e);i!==null&&(this.timeMapping_=i)}updateMediaSecondsLoaded_(e){typeof e.start=="number"&&typeof e.end=="number"?this.mediaSecondsLoaded+=e.end-e.start:this.mediaSecondsLoaded+=e.duration}shouldUpdateTransmuxerTimestampOffset_(e){return e===null?!1:this.loaderType_==="main"&&e!==this.sourceUpdater_.videoTimestampOffset()||!this.audioDisabled_&&e!==this.sourceUpdater_.audioTimestampOffset()}trueSegmentStart_({currentStart:e,playlist:i,mediaIndex:r,firstVideoFrameTimeForData:o,currentV
2025-09-22 23:18:02 +03:00
`.split("").map(s=>s.charCodeAt(0)));class WI extends Error{constructor(){super("Trying to parse received VTT cues, but there is no WebVTT. Make sure vtt.js is loaded.")}}class KI extends Ly{constructor(e,i={}){super(e,i),this.mediaSource_=null,this.subtitlesTrack_=null,this.featuresNativeTextTracks_=e.featuresNativeTextTracks,this.loadVttJs=e.loadVttJs,this.shouldSaveSegmentTimingInfo_=!1}buffered_(){if(!this.subtitlesTrack_||!this.subtitlesTrack_.cues||!this.subtitlesTrack_.cues.length)return Mi();const e=this.subtitlesTrack_.cues,i=e[0].startTime,r=e[e.length-1].startTime;return Mi([[i,r]])}initSegmentForMap(e,i=!1){if(!e)return null;const r=Rp(e);let o=this.initSegments_[r];if(i&&!o&&e.bytes){const u=yx.byteLength+e.bytes.byteLength,c=new Uint8Array(u);c.set(e.bytes),c.set(yx,e.bytes.byteLength),this.initSegments_[r]=o={resolvedUri:e.resolvedUri,byterange:e.byterange,bytes:c}}return o||e}couldBeginLoading_(){return this.playlist_&&this.subtitlesTrack_&&!this.paused()}init_(){return this.state="READY",this.resetEverything(),this.monitorBuffer_()}track(e){return typeof e>"u"?this.subtitlesTrack_:(this.subtitlesTrack_=e,this.state==="INIT"&&this.couldBeginLoading_()&&this.init_(),this.subtitlesTrack_)}remove(e,i){Ld(e,i,this.subtitlesTrack_)}fillBuffer_(){const e=this.chooseNextRequest_();if(e){if(this.syncController_.timestampOffsetForTimeline(e.timeline)===null){const i=()=>{this.state="READY",this.paused()||this.monitorBuffer_()};this.syncController_.one("timestampoffset",i),this.state="WAITING_ON_TIMELINE";return}this.loadSegment_(e)}}timestampOffsetForSegment_(){return null}chooseNextRequest_(){return this.skipEmptySegments_(super.chooseNextRequest_())}skipEmptySegments_(e){for(;e&&e.segment.empty;){if(e.mediaIndex+1>=e.playlist.segments.length){e=null;break}e=this.generateSegmentInfo_({playlist:e.playlist,mediaIndex:e.mediaIndex+1,startOfSegment:e.startOfSegment+e.duration,isSyncRequest:e.isSyncRequest})}return e}stopForError(e){this.error(e),this.state="READY",this.pause(),this.trigger("error")}segmentRequestFinished_(e,i,r){if(!this.subtitlesTrack_){this.state="READY";return}if(this.saveTransferStats_(i.stats),!this.pendingSegment_){this.state="READY",this.mediaRequestsAborted+=1;return}if(e){e.code===er.TIMEOUT&&this.handleTimeout_(),e.code===er.ABORTED?this.mediaRequestsAborted+=1:this.mediaRequestsErrored+=1,this.stopForError(e);return}const o=this.pendingSegment_,u=r.mp4VttCues&&r.mp4VttCues.length;u&&(o.mp4VttCues=r.mp4VttCues),this.saveBandwidthRelatedStats_(o.duration,i.stats),i.key&&this.segmentKey(i.key,!0),this.state="APPENDING",this.trigger("appending");const c=o.segment;if(c.map&&(c.map.bytes=i.map.bytes),o.bytes=i.bytes,typeof j.WebVTT!="function"&&typeof this.loadVttJs=="function"){this.state="WAITING_ON_VTTJS",this.loadVttJs().then(()=>this.segmentRequestFinished_(e,i,r),()=>this.stopForError({message:"Error loading vtt.js"}));return}c.requested=!0;try{this.parseVTTCues_(o)}catch(h){this.stopForError({message:h.message,metadata:{errorType:F.Error.StreamingVttParserError,error:h}});return}if(u||this.updateTimeMapping_(o,this.syncController_.timelines[o.timeline],this.playlist_),o.cues.length?o.timingInfo={start:o.cues[0].startTime,end:o.cues[o.cues.length-1].endTime}:o.timingInfo={start:o.startOfSegment,end:o.startOfSegment+o.duration},o.isSyncRequest){this.trigger("syncinfoupdate"),this.pendingSegment_=null,this.state="READY";return}o.byteLength=o.bytes.byteLength,this.mediaSecondsLoaded+=c.duration,o.cues.forEach(h=>{this.subtitlesTrack_.addCue(this.featuresNativeTextTracks_?new j.VTTCue(h.startTime,h.endTime,h.text):h)}),II(this.subtitlesTrack_),this.handleAppendsDone_()}handleData_(e,i){const r=e&&e.type==="vtt",o=i&&i.type==="text";r&&o&&super.handleData_(e,i)}updateTimingInfoEnd_(){}parseMp4VttCues_(e){const i=this.sourceUpdater_.videoTimestampOffset()===null?this.sourceUpdater_.audioTimestampOffset():this.sourceUpdater_.videoTimestampOffset();e.mp4VttCues.forEach(r=>{const o=r.start+i,u=r.end+i,c=new j.VTTCue(o,u,r.cueText);r.settings&&r.settings.split(" ").forEach(h=>{const m=h.split(":"),
`,c=r,h=i;this.start_=c,e.forEach((m,v)=>{const S=this.storage_.get(h),x=c,D=x+m.duration,k=!!(S&&S.segmentSyncInfo&&S.segmentSyncInfo.isAppended),O=new Tx({start:x,end:D,appended:k,segmentIndex:v});m.syncInfo=O;let C=c;const U=(m.parts||[]).map((P,Y)=>{const $=C,G=C+P.duration,W=!!(S&&S.partsSyncInfo&&S.partsSyncInfo[Y]&&S.partsSyncInfo[Y].isAppended),le=new Tx({start:$,end:G,appended:W,segmentIndex:v,partIndex:Y});return C=G,u+=`Media Sequence: ${h}.${Y} | Range: ${$} --> ${G} | Appended: ${W}
`,P.syncInfo=le,le});o.set(h,new e3(O,U)),u+=`${ox(m.resolvedUri)} | Media Sequence: ${h} | Range: ${x} --> ${D} | Appended: ${k}
`,h++,c=D}),this.end_=c,this.storage_=o,this.diagnostics_=u}calculateBaseTime_(e,i,r){if(!this.storage_.size)return 0;if(this.storage_.has(e))return this.storage_.get(e).segmentSyncInfo.start;const o=Math.min(...this.storage_.keys());if(e<o){const u=o-e;let c=this.storage_.get(o).segmentSyncInfo.start;for(let h=0;h<u;h++){const m=i[h];c-=m.duration}return c}return r}isReliablePlaylist_(e,i){return e!=null&&Array.isArray(i)&&i.length}}class bx extends vx{constructor(e){super(),this.parent_=e}calculateBaseTime_(e,i,r){if(!this.storage_.size){const o=this.parent_.getSyncInfoForMediaSequence(e);return o?o.segmentSyncInfo.start:0}return super.calculateBaseTime_(e,i,r)}}const t3=86400,zy=[{name:"VOD",run:(s,e,i,r,o)=>i!==1/0?{time:0,segmentIndex:0,partIndex:null}:null},{name:"MediaSequence",run:(s,e,i,r,o,u)=>{const c=s.getMediaSequenceSync(u);if(!c||!c.isReliable)return null;const h=c.getSyncInfoForTime(o);return h?{time:h.start,partIndex:h.partIndex,segmentIndex:h.segmentIndex}:null}},{name:"ProgramDateTime",run:(s,e,i,r,o)=>{if(!Object.keys(s.timelineToDatetimeMappings).length)return null;let u=null,c=null;const h=vy(e);o=o||0;for(let m=0;m<h.length;m++){const v=e.endList||o===0?m:h.length-(m+1),S=h[v],x=S.segment,D=s.timelineToDatetimeMappings[x.timeline];if(!D||!x.dateTimeObject)continue;let O=x.dateTimeObject.getTime()/1e3+D;if(x.parts&&typeof S.partIndex=="number")for(let U=0;U<S.partIndex;U++)O+=x.parts[U].duration;const C=Math.abs(o-O);if(c!==null&&(C===0||c<C))break;c=C,u={time:O,segmentIndex:S.segmentIndex,partIndex:S.partIndex}}return u}},{name:"Segment",run:(s,e,i,r,o)=>{let u=null,c=null;o=o||0;const h=vy(e);for(let m=0;m<h.length;m++){const v=e.endList||o===0?m:h.length-(m+1),S=h[v],x=S.segment,D=S.part&&S.part.start||x&&x.start;if(x.timeline===r&&typeof D<"u"){const k=Math.abs(o-D);if(c!==null&&c<k)break;(!u||c===null||c>=k)&&(c=k,u={time:D,segmentIndex:S.segmentIndex,partIndex:S.partIndex})}}return u}},{name:"Discontinuity",run:(s,e,i,r,o)=>{let u=null;if(o=o||0,e.discontinuityStarts&&e.discontinuityStarts.length){let c=null;for(let h=0;h<e.discontinuityStarts.length;h++){const m=e.discontinuityStarts[h],v=e.discontinuitySequence+h+1,S=s.discontinuities[v];if(S){const x=Math.abs(o-S.time);if(c!==null&&c<x)break;(!u||c===null||c>=x)&&(c=x,u={time:S.time,segmentIndex:m,partIndex:null})}}}return u}},{name:"Playlist",run:(s,e,i,r,o)=>e.syncInfo?{time:e.syncInfo.time,segmentIndex:e.syncInfo.mediaSequence-e.mediaSequence,partIndex:null}:null}];class i3 extends F.EventTarget{constructor(e={}){super(),this.timelines=[],this.discontinuities=[],this.timelineToDatetimeMappings={};const i=new vx,r=new bx(i),o=new bx(i);this.mediaSequenceStorage_={main:i,audio:r,vtt:o},this.logger_=rs("SyncController")}getMediaSequenceSync(e){return this.mediaSequenceStorage_[e]||null}getSyncPoint(e,i,r,o,u){if(i!==1/0)return zy.find(({name:m})=>m==="VOD").run(this,e,i);const c=this.runStrategies_(e,i,r,o,u);if(!c.length)return null;for(const h of c){const{syncPoint:m,strategy:v}=h,{segmentIndex:S,time:x}=m;if(S<0)continue;const D=e.segments[S],k=x,O=k+D.duration;if(this.logger_(`Strategy: ${v}. Current time: ${o}. selected segment: ${S}. Time: [${k} -> ${O}]}`),o>=k&&o<O)return this.logger_("Found sync point with exact match: ",m),m}return this.selectSyncPoint_(c,{key:"time",value:o})}getExpiredTime(e,i){if(!e||!e.segments)return null;const r=this.runStrategies_(e,i,e.discontinuitySequence,0);if(!r.length)return null;const o=this.selectSyncPoint_(r,{key:"segmentIndex",value:0});return o.segmentIndex>0&&(o.time*=-1),Math.abs(o.time+Nd({defaultDuration:e.targetDuration,durationList:e.segments,startIndex:o.segmentIndex,endIndex:0}))}runStrategies_(e,i,r,o,u){const c=[];for(let h=0;h<zy.length;h++){const m=zy[h],v=m.run(this,e,i,r,o,u);v&&(v.strategy=m.name,c.push({strategy:m.name,syncPoint:v}))}return c}selectSyncPoint_(e,i){let r=e[0].syncPoint,o=Math.abs(e[0].syncPoint[i.key]-i.value),u=e[0].strategy;for(let c=1;c<e.length;c++){const h=Math.abs(e[c].syncPoint[i.key]-i.value);h<o&&(o=h,r=e[c].syncPoint,u=e[c].strategy)}return this.logger_(
2025-09-22 23:18:02 +03:00
<div class="autoplay-countdown-content">
<div class="autoplay-countdown-header">
<h3>Up next in <span class="countdown-timer">${this.countdownSeconds}</span></h3>
</div>
<div class="autoplay-countdown-video-info">
${r?`<div class="next-video-thumbnail">
<img src="${r}" alt="${i}" />
<div class="play-overlay">
<svg viewBox="0 0 24 24" width="28" height="28" fill="currentColor">
<path d="M8 5v14l11-7z"/>
</svg>
</div>
</div>`:""}
<div class="next-video-details">
<h4 class="next-video-title">${i}</h4>
${(m=this.nextVideoData)!=null&&m.author?`<p class="next-video-author">${this.nextVideoData.author}</p>`:""}
${(v=this.nextVideoData)!=null&&v.duration?`<p class="next-video-duration">${this.formatDuration(this.nextVideoData.duration)}</p>`:""}
2025-09-22 23:18:02 +03:00
</div>
</div>
<div class="autoplay-countdown-actions">
<button class="autoplay-play-button" type="button">
<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" fill="currentColor">
<path d="M8 5v14l11-7z"/>
</svg>
Play Now
</button>
<button class="autoplay-cancel-button" type="button">
<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" fill="currentColor">
<path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/>
</svg>
Cancel
</button>
</div>
</div>
`;const o=e.querySelector(".autoplay-play-button"),u=e.querySelector(".autoplay-cancel-button");return o&&o.addEventListener("click",S=>{S.preventDefault(),this.handlePlayNext()}),u&&u.addEventListener("click",S=>{S.preventDefault(),this.handleCancel()}),e.style.display="none",e}startCountdown(){this.isActive=!0,this.currentCountdown=this.countdownSeconds,this.show(),this.updateCountdownDisplay(),this.countdownInterval=setInterval(()=>{this.currentCountdown--,this.updateCountdownDisplay(),this.currentCountdown<=0&&(this.stopCountdown(),this.handlePlayNext())},1e3)}stopCountdown(){this.isActive=!1,this.countdownInterval&&(clearInterval(this.countdownInterval),this.countdownInterval=null),this.hide()}updateCountdownDisplay(){const e=this.el().querySelector(".countdown-timer");e&&(e.textContent=this.currentCountdown)}handlePlayNext(){try{this.stopCountdown(),this.onPlayNext()}catch(e){console.error("Error in handlePlayNext:",e)}}handleCancel(){try{this.stopCountdown(),this.onCancel()}catch(e){console.error("Error in handleCancel:",e)}}show(){this.el()&&(this.el().style.display="flex",this.el().classList.add("autoplay-countdown-show"))}hide(){this.el()&&(this.el().style.display="none",this.el().classList.remove("autoplay-countdown-show"))}formatDuration(e){if(!e||e===0)return"";const i=Math.floor(e/3600),r=Math.floor(e%3600/60),o=e%60;return i>0?`${i}:${r.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`:`${r}:${o.toString().padStart(2,"0")}`}updateNextVideoData(e){var i,r,o,u;if(this.nextVideoData=e,this.el()){const c=((i=this.nextVideoData)==null?void 0:i.title)||"Next Video",h=((r=this.nextVideoData)==null?void 0:r.thumbnail)||"",m=this.el().querySelector(".autoplay-countdown-video-info");m&&(m.innerHTML=`
${h?`<div class="next-video-thumbnail">
<img src="${h}" alt="${c}" />
<div class="play-overlay">
<svg viewBox="0 0 24 24" width="28" height="28" fill="currentColor">
<path d="M8 5v14l11-7z"/>
</svg>
</div>
</div>`:""}
<div class="next-video-details">
<h4 class="next-video-title">${c}</h4>
${(o=this.nextVideoData)!=null&&o.author?`<p class="next-video-author">${this.nextVideoData.author}</p>`:""}
${(u=this.nextVideoData)!=null&&u.duration?`<p class="next-video-duration">${this.formatDuration(this.nextVideoData.duration)}</p>`:""}
</div>
`)}}dispose(){this.stopCountdown(),super.dispose()}}F.registerComponent("AutoplayCountdownOverlay",jx);const H3=F.getComponent("Component");class Ux extends H3{constructor(e,i){super(e,i),this.authorName=i.authorName||"Unknown",this.authorProfile=i.authorProfile||"",this.authorThumbnail=i.authorThumbnail||"",this.videoTitle=i.videoTitle||"Video",this.videoUrl=i.videoUrl||"",this.player().ready(()=>{this.createOverlay()})}createEl(){const e=document.createElement("div");return e.className="vjs-embed-info-overlay",e}createOverlay(){const e=this.player().el(),i=this.el();if(i.style.cssText=`
2025-09-22 23:18:02 +03:00
position: absolute;
top: 10px;
left: 10px;
z-index: 1000;
display: flex;
align-items: center;
gap: 10px;
padding: 8px 12px;
max-width: calc(100% - 40px);
box-sizing: border-box;
transition: opacity 0.3s ease-in-out;
`,this.authorThumbnail){const o=document.createElement("div");if(o.className="embed-avatar-container",o.style.cssText=`
flex-shrink: 0;
width: 32px;
height: 32px;
border-radius: 50%;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.2);
`,this.authorProfile){const u=document.createElement("a");u.href=this.authorProfile,u.target="_blank",u.rel="noopener noreferrer",u.title=this.authorName,u.style.cssText=`
display: block;
width: 100%;
height: 100%;
`;const c=document.createElement("img");c.src=this.authorThumbnail,c.alt=this.authorName,c.title=this.authorName,c.style.cssText=`
width: 100%;
height: 100%;
object-fit: cover;
display: block;
`,c.onerror=()=>{c.style.display="none",o.style.display="none"},u.appendChild(c),o.appendChild(u)}else{const u=document.createElement("img");u.src=this.authorThumbnail,u.alt=this.authorName,u.title=this.authorName,u.style.cssText=`
width: 100%;
height: 100%;
object-fit: cover;
display: block;
`,u.onerror=()=>{u.style.display="none",o.style.display="none"},o.appendChild(u)}i.appendChild(o)}const r=document.createElement("div");if(r.className="embed-title-container",r.style.cssText=`
flex: 1;
min-width: 0;
overflow: hidden;
`,this.videoUrl){const o=document.createElement("a");o.href=this.videoUrl,o.target="_blank",o.rel="noopener noreferrer",o.textContent=this.videoTitle,o.title=this.videoTitle,o.style.cssText=`
color: #fff;
text-decoration: none;
font-size: 14px;
font-weight: 500;
line-height: 1.3;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
transition: color 0.2s ease;
2025-09-25 12:52:44 +03:00
`,o.addEventListener("mouseenter",()=>{o.style.color="#ccc"}),o.addEventListener("mouseleave",()=>{o.style.color="#fff"}),r.appendChild(o)}else{const o=document.createElement("span");o.textContent=this.videoTitle,o.title=this.videoTitle,o.style.cssText=`
2025-09-22 23:18:02 +03:00
color: #fff;
font-size: 14px;
font-weight: 500;
line-height: 1.3;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
`,r.appendChild(o)}i.appendChild(r),e.appendChild(i),this.setupAutoHide()}setupAutoHide(){const e=this.player(),i=this.el();e.on("useractive",()=>{i.style.opacity="1",i.style.visibility="visible"}),e.on("userinactive",()=>{i.style.opacity="0",i.style.visibility="hidden"}),e.on("pause",()=>{i.style.opacity="1",i.style.visibility="visible"}),e.on("fullscreenchange",()=>{setTimeout(()=>{e.isFullscreen()?e.userActive()?(i.style.opacity="1",i.style.visibility="visible"):(i.style.opacity="0",i.style.visibility="hidden"):(i.style.opacity="1",i.style.visibility="visible")},100)})}updateContent(e){e.authorName&&(this.authorName=e.authorName),e.authorProfile&&(this.authorProfile=e.authorProfile),e.authorThumbnail&&(this.authorThumbnail=e.authorThumbnail),e.videoTitle&&(this.videoTitle=e.videoTitle),e.videoUrl&&(this.videoUrl=e.videoUrl);const i=this.el();i.innerHTML="",this.createOverlay()}show(){this.el().style.display="flex"}hide(){this.el().style.display="none"}dispose(){const e=this.el();e&&e.parentNode&&e.parentNode.removeChild(e),super.dispose()}}F.registerComponent("EmbedInfoOverlay",Ux);const V3=F.getComponent("Component");class Px extends V3{constructor(e,i){super(e,i),this.on(e,"loadedmetadata",this.updateChapterMarkers),this.on(e,"texttrackchange",this.updateChapterMarkers),this.chaptersData=[],this.tooltip=null,this.isHovering=!1,this.previewSprite=i.previewSprite||null}createEl(){const e=super.createEl("div",{className:"vjs-chapter-markers-track"});return this.tooltip=null,e}updateChapterMarkers(){const e=this.player(),i=e.textTracks();let r=null;for(let u=0;u<i.length;u++)if(i[u].kind==="chapters"){r=i[u];break}if(!r||!r.cues)return;this.chaptersData=[];for(let u=0;u<r.cues.length;u++){const c=r.cues[u];this.chaptersData.push({startTime:c.startTime,endTime:c.endTime,chapterTitle:c.text})}this.el().innerHTML="";const o=e.duration();if(!(!o||o===1/0)){for(let u=0;u<r.cues.length;u++){const c=r.cues[u],h=this.createMarker(c,o);this.el().appendChild(h)}this.setupProgressBarHover()}}setupProgressBarHover(){const e=this.player().getChild("controlBar").getChild("progressControl");if(!e)return;const i=e.getChild("seekBar");if(!i)return;const r=i.el();if((!this.tooltip||!this.tooltip.nodeType)&&(this.tooltip=F.dom.createEl("div",{className:"vjs-chapter-floating-tooltip"}),Object.assign(this.tooltip.style,{position:"absolute",zIndex:"1000",bottom:"45px",transform:"translateX(-50%)",display:"none",minWidth:"160px",maxWidth:"200px",width:"auto"}),this.chapterTitle=F.dom.createEl("div",{className:"chapter-title"}),this.chapterInfo=F.dom.createEl("div",{className:"chapter-info"}),this.positionInfo=F.dom.createEl("div",{className:"position-info"}),this.chapterImage=F.dom.createEl("div",{className:"chapter-image-sprite"}),Object.assign(this.chapterImage.style,{display:"block",overflow:"hidden"}),this.tooltip.appendChild(this.chapterTitle),this.tooltip.appendChild(this.chapterImage),this.tooltip.appendChild(this.chapterInfo),this.tooltip.appendChild(this.positionInfo)),!r.querySelector(".vjs-chapter-floating-tooltip"))try{r.appendChild(this.tooltip)}catch{return}const o=e.el();o.removeEventListener("mouseenter",this.handleMouseEnter),o.removeEventListener("mouseleave",this.handleMouseLeave),o.removeEventListener("mousemove",this.handleMouseMove),this.handleMouseEnter=()=>{this.isHovering=!0,this.tooltip.style.display="block"},this.handleMouseLeave=()=>{this.isHovering=!1,this.tooltip.style.display="none"},this.handleMouseMove=u=>{this.isHovering&&this.updateChapterTooltip(u,r,o)},o.addEventListener("mouseenter",this.handleMouseEnter),o.addEventListener("mouseleave",this.handleMouseLeave),o.addEventListener("mousemove",this.handleMouseMove)}updateChapterTooltip(e,i,r){if(!this.tooltip||!this.isHovering)return;const o=this.player().duration();if(!o)return;const u=i.getBoundingClientRect(),c=r.getBoundingClientRect(),h=e.clientX-u.left,v=Math.max(0,Math.min(1,h/u.width))*o,S=e.clientX-c.left,x=this.findChapterAtTime(v);if(x){const U=G=>{const W=Math.floor(G/60),le=Math.floor(G%60);return`${W}:${le.toString().padStart(2,"0")
2025-09-22 23:18:02 +03:00
<svg width="34" height="34" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14 34L28.1667 24L14 14V34ZM30.6667 14V34H34V14H30.6667Z" fill="currentColor"/>
</svg>
2025-09-25 12:52:44 +03:00
`;const r=F.dom.createEl("span",{className:"vjs-control-text"});return r.textContent="Next Video",e.appendChild(i),e.appendChild(r),e}handleClick(){this.player().trigger("nextVideo")}}F.registerComponent("NextVideoButton",qx);const Fx="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiPgo8cGF0aCBkPSJNMCAwIEMtMC40MzMxMjUgLTEuMzQxOTE0MDYgLTAuNDMzMTI1IC0xLjM0MTkxNDA2IC0wLjg3NSAtMi43MTA5Mzc1IEMtNi4wOTg4MTk0MSAtMTkuNzI0NjI3MTIgLTYuMDk4ODE5NDEgLTE5LjcyNDYyNzEyIC0yLjMxMjUgLTI3LjQzNzUgQzEuMjkxODE4NTggLTMxLjQzMTQ3NDY0IDMuNDY3MDUzMjggLTMyLjgyNjkyNTM3IDguODc1IC0zMy40Mzc1IEMxNC4wMzA3MDcxNCAtMzMuMjMyODMxMSAxNy45MzY4NTMzOCAtMzEuMTUyNDA1OTQgMjEuNTMzNTA4MyAtMjcuNDAwMTQ2NDggQzIzLjY2MTM2MDY4IC0yMy45MTc1NzgyNiAyNC41Nzk1NTU4NyAtMjAuMjY1ODc4MzEgMjUuNjUxMzY3MTkgLTE2LjM0NzY1NjI1IEMyNS44OTcyNTA4MiAtMTUuNDc1Njc1OTYgMjYuMTQzMTM0NDYgLTE0LjYwMzY5NTY4IDI2LjM5NjQ2OTEyIC0xMy43MDUyOTE3NSBDMjcuMjA1NDk0MyAtMTAuODI2NzY1NDQgMjguMDAxNjE2MDIgLTcuOTQ0ODU3MzggMjguNzk2ODc1IC01LjA2MjUgQzI5LjM1NTAwNTU0IC0zLjA1OTg0MjM5IDI5LjkxMzYyNjUgLTEuMDU3MzIxMzkgMzAuNDcyNzE3MjkgMC45NDUwNjgzNiBDMzEuNjQxNzIzMzggNS4xMzk4NTkyOSAzMi44MDQyNjUzOCA5LjMzNjM3NTM5IDMzLjk2MjQwMjM0IDEzLjUzNDE3OTY5IEMzNS40NDg0MTI2IDE4LjkxODEwMzY4IDM2Ljk1MTEyMjM5IDI0LjI5NzE5ODY4IDM4LjQ1ODc4MjIgMjkuNjc1MDk0NiBDMzkuNjE1MzE1MjkgMzMuODA4MDY1MTIgNDAuNzYyNjA2ODIgMzcuOTQzNTU3MiA0MS45MDcxNDI2NCA0Mi4wNzk4NjQ1IEM0Mi40NTc2MTk3NCA0NC4wNjQ2NDI0NSA0My4wMTEwNzE3MyA0Ni4wNDg1OTc3NyA0My41Njc1Mjc3NyA0OC4wMzE3MDc3NiBDNDQuMzQzMjIyMTIgNTAuODAxMTc2NDMgNDUuMTA2MzMxNDEgNTMuNTczODEzMjYgNDUuODY2MjEwOTQgNTYuMzQ3NjU2MjUgQzQ2LjA5ODg2MTU0IDU3LjE2ODU1NzQzIDQ2LjMzMTUxMjE1IDU3Ljk4OTQ1ODYyIDQ2LjU3MTIxMjc3IDU4LjgzNTIzNTYgQzQ3LjU5NzA1OTYyIDYyLjYyOTkxNzMyIDQ4LjE3Njk1NCA2NS4yNDE1Njk1OCA0NyA2OSBDNDUuODE2NjQwNjIgNjguNjAxNjc5NjkgNDQuNjMzMjgxMjUgNjguMjAzMzU5MzcgNDMuNDE0MDYyNSA2Ny43OTI5Njg3NSBDMzMuNTAyODU4MTIgNjQuNDM5MjkzODYgMzMuNTAyODU4MTIgNjQuNDM5MjkzODYgMjMuNSA2MS4zNzUgQzIwLjM5MzIzOTMzIDYwLjQ3MTA2NzcyIDE3LjQzNTQwNDA3IDU5LjM5ODY4MjA5IDE0LjQ0Nzk5ODA1IDU4LjE1NzcxNDg0IEM4LjgyMDg4MDM4IDU1Ljg4MzYwNTg4IDMuMTAwNzAxOTEgNTMuOTgxMTgwNiAtMi42Njc5Njg3NSA1Mi4xMDE1NjI1IEMtNC44ODI0MzI4NyA1MS4zNjgwMDYzNCAtNy4wOTY2MTc1MyA1MC42MzM2MDYwOCAtOS4zMTA1NDY4OCA0OS44OTg0Mzc1IEMtMTIuNzU3NDc4NzkgNDguNzU2MjY0NyAtMTYuMjA1NzAxMjkgNDcuNjE5MDgwOTYgLTE5LjY1ODkzNTU1IDQ2LjQ5NjA5Mzc1IEMtMjMuMDIxMzExNDEgNDUuNDAwNTEyMjYgLTI2LjM3NjE3OTYzIDQ0LjI4NDEyMDY5IC0yOS43MzA0Njg3NSA0My4xNjQwNjI1IEMtMzAuNzU2NjU4MTcgNDIuODM1NzI0MTggLTMxLjc4Mjg0NzYgNDIuNTA3Mzg1ODYgLTMyLjg0MDEzMzY3IDQyLjE2OTA5NzkgQy0zOC44MDgxMjY4IDQwLjE1MzYwMjQ3IC00My44NTcyNDQ2OCAzNy45MDM0OTM3NCAtNDggMzMgQy00OS42NTExMjQ1NCAyOC4wNDY2MjYzOSAtNDkuODU5NjcxMzggMjMuMDM2MDYzOCAtNDcuODEyNSAxOC4xODc1IEMtNDQuMjg2MTM3NTIgMTMuOTMxNTQ1MjggLTQxLjcyNTM5ODI5IDExLjg3NTk0NzY5IC0zNi4xODc1IDExLjI1IEMtMzQuNzkyNzY5NiAxMS4xNDk4ODg4NSAtMzMuMzk2OTkzMTQgMTEuMDYwODcxMTYgLTMyIDExIEMtNTQuODU5ODA4MjUgLTMuMTg4ODQ2NSAtNzguNDIzNjc1OCAtMTMuOTIxOTA5NTQgLTEwNSAtMTkgQy0xMDUuODU2MDk4NjMgLTE5LjE2MzcxMDk0IC0xMDYuNzEyMTk3MjcgLTE5LjMyNzQyMTg3IC0xMDcuNTk0MjM4MjggLTE5LjQ5NjA5Mzc1IEMtMTU3LjgwNzgwMzE2IC0yOC42MzQ0MTUwMSAtMjExLjk2NDMxMzk3IC0xNy4wMTg1MTAwNiAtMjU0LjE1NzcxNDg0IDExLjcwNzAzMTI1IEMtMjY0LjExNDI0NjA3IDE4LjY5NDgxMTQ1IC0yNzMuMjA4NTU4OTggMjYuNjEzMTg1OTcgLTI4MiAzNSBDLTI4Mi44NTIwNzAzMSAzNS43OTkyMTg3NSAtMjgzLjcwNDE0MDYyIDM2LjU5ODQzNzUgLTI4NC41ODIwMzEyNSAzNy40MjE4NzUgQy0zMTkuMzk4Mjc0NTYgNzAuOTc3MDU3NTIgLTM0MC4wNTk1NzA1NyAxMjEuMTczMjExNjUgLTM0MS4yMDMxMjUgMTY5LjI5Mjk2ODc1IEMtMzQxLjY5OTk0NDYgMjEzLjAwOTkyODgzIC0zMzEuMzU4Nzg5MjYgMjU2LjMzNTA1MDQyIC0zMDUgMjkyIEMtMzA0LjIzMzAwNzgxIDI5My4wNDkyOTY4NyAtMzAzLjQ2NjAxNTYzIDI5NC4wOTg1OTM3NSAtMzAyLjY3NTc4MTI1IDI5NS4xNzk2ODc1IEMtMjk2LjkyNzc3ODc1IDMwMi45MTE3NjYyOSAtMjkwLjY0ODMwNzkgMzEwLjAzNTEwNjAxIC0yODQgMzE3IEMtMjgzLjE5OTQ5MjE5IDMxNy44NTMzNTkzOCAtMjgyLjM5ODk4NDM3IDMxOC43MDY3MTg3NSAtMjgxLjU3NDIxODc1IDMxOS41ODU5Mzc1IEMtMjQ4LjAyMjExOTY2IDM1NC40MDEwNDUyMyAtMTk3LjgyMjkzNDM1IDM3NS4wNTk2NjIxNiAtMTQ5LjcwNzAzMTI1IDM3Ni4yMDMxMjUgQy0xMDEuNzQ0MzQwNTEgMzc2Ljc0ODE1NTU4IC01NS42ODY4NTMgMzYzLjM2NjAxNDI1IC0xOCAzMzMgQy0xNy4yMjE5NzAyMSAzMzIuMzc0MjQwNzIgLTE3LjIyMTk3MDIxIDMzMi4zNzQyNDA3M
2025-09-22 23:18:02 +03:00
<span class="vjs-control-text" role="presentation">Time Display&nbsp;</span>
<span class="vjs-remaining-time-display" role="presentation">0:00 / 0:00</span>
`,e}updateContent(){const e=this.player(),i=e.currentTime(),r=e.duration(),o=this.el().querySelector(".vjs-remaining-time-display");if(o){const u=this.formatTime(isNaN(i)?0:i),c=this.formatTime(isNaN(r)?0:r);o.textContent=`${u} / ${c}`}}formatTime(e){const{customPrefix:i,customSuffix:r}=this.options_,o=Math.floor(e/3600),u=Math.floor(e%3600/60),c=Math.floor(e%60);let h;return o>0?h=`${o}:${u.toString().padStart(2,"0")}:${c.toString().padStart(2,"0")}`:h=`${u}:${c.toString().padStart(2,"0")}`,`${i}${h}${r}`}dispose(){super.dispose()}}Uy.prototype.controlText_="Time Display",F.registerComponent("CustomRemainingTime",Uy);const X3=F.getComponent("Component");class Py extends X3{constructor(e,i){super(e,i),this.chaptersData=i.chaptersData||[],this.overlay=null,this.chaptersList=null,this.seriesTitle=i.seriesTitle||"Chapters",this.channelName=i.channelName||"",this.thumbnail=i.thumbnail||"",this.isScrolling=!1,this.createOverlay=this.createOverlay.bind(this),this.updateCurrentChapter=this.updateCurrentChapter.bind(this),this.toggleOverlay=this.toggleOverlay.bind(this),this.formatTime=this.formatTime.bind(this),this.getChapterTimeRange=this.getChapterTimeRange.bind(this),this.player().ready(()=>{this.createOverlay(),this.setupChaptersButton()})}formatTime(e){const i=Math.max(0,Math.floor(e)),r=Math.floor(i/3600),o=Math.floor(i%3600/60),u=i%60;return`${String(r).padStart(2,"0")}:${String(o).padStart(2,"0")}:${String(u).padStart(2,"0")}`}getChapterTimeRange(e){const i=this.formatTime(e.startTime),r=this.formatTime(e.endTime||e.startTime);return`${i} - ${r}`}createOverlay(){if(!this.chaptersData||this.chaptersData.length===0)return;const e=this.player().el();this.overlay=document.createElement("div"),this.overlay.className="custom-chapters-overlay",this.overlay.style.cssText=`
2025-09-22 23:18:02 +03:00
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
z-index: 9999;
display: none;
pointer-events: auto;
background: rgba(0, 0, 0, 0.35);
`,this.overlay.addEventListener("click",S=>{S.target===this.overlay&&this.closeOverlay()});const i=document.createElement("div");i.className="video-chapter",i.style.cssText=`
pointer-events: auto;
z-index: 9999999;
`,this.overlay.appendChild(i);const r=document.createElement("div");r.className="chapter-head",i.appendChild(r);const o=document.createElement("div");o.className="playlist-title",r.appendChild(o);const u=document.createElement("div");u.className="chapter-title",u.innerHTML=`
<h3><a href="#">${this.seriesTitle}</a></h3>
<p><a href="#">${this.channelName}</a> <span>1 / ${this.chaptersData.length}</span></p>
`,o.appendChild(u),this.currentChapterSpan=u.querySelector("span");const c=document.createElement("div");c.className="chapter-close";const h=document.createElement("button");h.setAttribute("aria-label","Close chapters"),h.innerHTML=`
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.7096 12L20.8596 20.15L20.1496 20.86L11.9996 12.71L3.84965 20.86L3.13965 20.15L11.2896 12L3.14965 3.85001L3.85965 3.14001L11.9996 11.29L20.1496 3.14001L20.8596 3.85001L12.7096 12Z" fill="currentColor"/>
</svg>
`,h.onclick=()=>{this.overlay.style.display="none";const S=this.player().el();S&&S.classList.remove("chapters-open")},c.appendChild(h),o.appendChild(c);const m=document.createElement("div");m.className="chapter-body",m.style.cssText+=`
-webkit-overflow-scrolling: touch;
touch-action: pan-y;
overscroll-behavior: contain;
`,i.appendChild(m);const v=document.createElement("ul");m.appendChild(v),this.chaptersList=v,this.chaptersData.forEach((S,x)=>{const D=document.createElement("li"),k=document.createElement("div");k.className=`playlist-items ${x===0?"selected":""}`;const O=document.createElement("a");O.href="#",O.onclick=Ee=>Ee.preventDefault();const C=document.createElement("div");C.className="playlist-drag-handle",C.textContent=x===0?"▶":String(x+1);const U=document.createElement("div");U.className="thumbnail-meta";const P=Math.max(0,Math.floor((S.endTime||S.startTime)-S.startTime)),Y=Math.floor(P/3600),$=Math.floor(P%3600/60),G=P%60,W=Y>0?`${String(Y).padStart(2,"0")}:${String($).padStart(2,"0")}:${String(G).padStart(2,"0")}`:`${String($).padStart(2,"0")}:${String(G).padStart(2,"0")}`,le=document.createElement("h4");le.textContent=S.chapterTitle;const Z=document.createElement("div");Z.className="meta-sub";const fe=document.createElement("span");fe.className="meta-dynamic";const K=this.getChapterTimeRange(S);fe.textContent=K,fe.setAttribute("data-duration",W),fe.setAttribute("data-time-range",K),Z.appendChild(fe),U.appendChild(le),U.appendChild(Z);const ge=document.createElement("div");ge.className="thumbnail-action";const ue=document.createElement("button");ue.innerHTML=`
2025-09-22 23:18:02 +03:00
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 16.5C12.83 16.5 13.5 17.17 13.5 18C13.5 18.83 12.83 19.5 12 19.5C11.17 19.5 10.5 18.83 10.5 18C10.5 17.17 11.17 16.5 12 16.5ZM10.5 12C10.5 12.83 11.17 13.5 12 13.5C12.83 13.5 13.5 12.83 13.5 12C13.5 11.17 12.83 10.5 12 10.5C11.17 10.5 10.5 11.17 10.5 12ZM10.5 6C10.5 6.83 11.17 7.5 12 7.5C12.83 7.5 13.5 6.83 13.5 6C13.5 5.17 12.83 4.5 12 4.5C11.17 4.5 10.5 5.17 10.5 6Z" fill="currentColor"/>
</svg>`,ge.appendChild(ue);const pe=Ee=>{(Ee.type==="click"||Ee.type==="touchend"&&!this.isScrolling)&&(Ee.preventDefault(),this.player().currentTime(S.startTime),this.overlay.style.display="none",this.updateActiveItem(x))};let de=0;k.addEventListener("touchstart",Ee=>{de=Ee.touches[0].clientY,this.isScrolling=!1},{passive:!0}),k.addEventListener("touchmove",Ee=>{const $e=Ee.touches[0].clientY;Math.abs($e-de)>10&&(this.isScrolling=!0)},{passive:!0}),k.addEventListener("touchend",pe,{passive:!1}),k.addEventListener("click",pe),O.appendChild(C),O.appendChild(U),O.appendChild(ge),k.appendChild(O),D.appendChild(k),this.chaptersList.appendChild(D)}),e.appendChild(this.overlay),this.player().on("timeupdate",this.updateCurrentChapter)}setupChaptersButton(){const e=this.player().getChild("controlBar").getChild("chaptersButton");e&&(e.off("click"),e.on("click",this.toggleOverlay),e.on("touchstart",this.toggleOverlay))}toggleOverlay(){if(!this.overlay)return;const e=this.player().el(),i=this.overlay.style.display==="none"||!this.overlay.style.display;this.overlay.style.display=i?"block":"none",e&&e.classList.toggle("chapters-open",i);try{this.player().el().querySelectorAll(".vjs-menu").forEach(r=>{r.classList.remove("vjs-lock-showing"),r.style.display="none"})}catch{}}updateCurrentChapter(){if(!this.chaptersList||!this.chaptersData)return;const e=this.player().currentTime(),i=this.chaptersList.querySelectorAll(".playlist-items");let r=-1;i.forEach((o,u)=>{const c=this.chaptersData[u],h=e>=c.startTime&&(u===this.chaptersData.length-1||e<this.chaptersData[u+1].startTime),m=o.querySelector(".playlist-drag-handle"),v=o.querySelector(".meta-dynamic");h?(r=u,o.classList.add("selected"),m&&(m.textContent="▶"),v&&(v.textContent=v.getAttribute("data-time-range")||this.getChapterTimeRange(c))):(o.classList.remove("selected"),m&&(m.textContent=String(u+1)),v&&(v.textContent=v.getAttribute("data-time-range")||this.getChapterTimeRange(c)))}),this.currentChapterSpan&&r!==-1&&(this.currentChapterSpan.textContent=`${r+1} / ${this.chaptersData.length}`)}updateActiveItem(e){this.chaptersList.querySelectorAll(".playlist-items").forEach((r,o)=>{const u=r.querySelector(".playlist-drag-handle"),c=r.querySelector(".meta-dynamic");if(o===e)r.classList.add("selected"),u&&(u.textContent="▶"),c&&(c.textContent=c.getAttribute("data-duration")||"");else if(r.classList.remove("selected"),u&&(u.textContent=String(o+1)),c){const h=c.getAttribute("data-time-range");if(h)c.textContent=h;else{const m=this.chaptersData[o];m&&(c.textContent=this.getChapterTimeRange(m))}}}),this.currentChapterSpan&&(this.currentChapterSpan.textContent=`${e+1} / ${this.chaptersData.length}`)}closeOverlay(){if(this.overlay){this.overlay.style.display="none";const e=this.player().el();e&&e.classList.remove("chapters-open")}}dispose(){this.overlay&&this.overlay.remove();const e=this.player().el();e&&e.classList.remove("chapters-open"),super.dispose()}}Py.prototype.controlText_="Chapters Overlay",F.registerComponent("CustomChaptersOverlay",Py);const o8="";class $x{constructor(){this.storageKey="videojs_user_preferences",this.isRestoringSubtitles=!1,this.subtitleAutoSaveDisabled=!1,this.defaultPreferences={volume:1,playbackRate:1,quality:"auto",subtitleLanguage:null,subtitleEnabled:!1,muted:!1,autoplay:!0}}getPreferences(){try{const e=localStorage.getItem(this.storageKey);if(e){const i=JSON.parse(e);return{...this.defaultPreferences,...i}}}catch(e){console.warn("Error reading user preferences from localStorage:",e)}return{...this.defaultPreferences}}savePreferences(e){try{const r={...this.getPreferences(),...e};localStorage.setItem(this.storageKey,JSON.stringify(r))}catch(i){console.warn("Error saving user preferences to localStorage:",i)}}getPreference(e){return this.getPreferences()[e]}setPreference(e,i,r=!1){if(e==="subtitleLanguage"){if(this.isRestoringSubtitles||this.subtitleAutoSaveDisabled&&!r)return;console.trace("Subtitle preference change stack trace")}this.savePreferences({[e]:i})}resetPreferences(){try{localStorage.removeItem(this.storageKey)}catch(e){consol
2025-09-22 23:18:02 +03:00
<span><svg height="100%" version="1.1" viewBox="0 0 36 36" width="100%"><use class="ytp-svg-shadow" xlink:href="#ytp-id-19"></use><path d="m 23.94,18.78 c .03,-0.25 .05,-0.51 .05,-0.78 0,-0.27 -0.02,-0.52 -0.05,-0.78 l 1.68,-1.32 c .15,-0.12 .19,-0.33 .09,-0.51 l -1.6,-2.76 c -0.09,-0.17 -0.31,-0.24 -0.48,-0.17 l -1.99,.8 c -0.41,-0.32 -0.86,-0.58 -1.35,-0.78 l -0.30,-2.12 c -0.02,-0.19 -0.19,-0.33 -0.39,-0.33 l -3.2,0 c -0.2,0 -0.36,.14 -0.39,.33 l -0.30,2.12 c -0.48,.2 -0.93,.47 -1.35,.78 l -1.99,-0.8 c -0.18,-0.07 -0.39,0 -0.48,.17 l -1.6,2.76 c -0.10,.17 -0.05,.39 .09,.51 l 1.68,1.32 c -0.03,.25 -0.05,.52 -0.05,.78 0,.26 .02,.52 .05,.78 l -1.68,1.32 c -0.15,.12 -0.19,.33 -0.09,.51 l 1.6,2.76 c .09,.17 .31,.24 .48,.17 l 1.99,-0.8 c .41,.32 .86,.58 1.35,.78 l .30,2.12 c .02,.19 .19,.33 .39,.33 l 3.2,0 c .2,0 .36,-0.14 .39,-0.33 l .30,-2.12 c .48,-0.2 .93,-0.47 1.35,-0.78 l 1.99,.8 c .18,.07 .39,0 .48,-0.17 l 1.6,-2.76 c .09,-0.17 .05,-0.39 -0.09,-0.51 l -1.68,-1.32 0,0 z m -5.94,2.01 c -1.54,0 -2.8,-1.25 -2.8,-2.8 0,-1.54 1.25,-2.8 2.8,-2.8 1.54,0 2.8,1.25 2.8,2.8 0,1.54 -1.25,2.8 -2.8,2.8 l 0,0 z" fill="#fff" id="ytp-id-19"></path></svg></span>
<span class="vjs-control-text">Settings</span>
`,this.positionButton();const r=this.settingsButton.el();if(r){r.style.pointerEvents="auto",r.style.cursor="pointer",r.style.touchAction="manipulation",r.style.webkitTapHighlightColor="transparent";let o=0,u={x:0,y:0},c=!1;r.addEventListener("touchstart",h=>{o=Date.now(),c=!1;const m=h.touches[0];u={x:m.clientX,y:m.clientY}},{passive:!0}),r.addEventListener("touchend",h=>{if(Date.now()-o<500){const S=h.changedTouches[0],x={x:S.clientX,y:S.clientY};Math.sqrt(Math.pow(x.x-u.x,2)+Math.pow(x.y-u.y,2))<50&&(h.preventDefault(),h.stopPropagation(),c=!0,this.toggleSettings(h))}},{passive:!1}),r.addEventListener("click",h=>{c||(h.preventDefault(),h.stopPropagation(),this.toggleSettings(h)),c=!1})}}createSettingsOverlay(){this.player().getChild("controlBar"),this.settingsOverlay=document.createElement("div"),this.settingsOverlay.className="custom-settings-overlay";const e=this.userPreferences.getPreference("playbackRate"),i=this.userPreferences.getPreference("quality");let r="Off";try{const D=this.player().textTracks();for(let k=0;k<D.length;k++){const O=D[k];if(O.kind==="subtitles"&&O.mode==="showing"){r=O.label||O.language||"Subtitles";break}}}catch{}const o=e===1?"Normal":`${e}`,u=this.getAvailableQualities(),c=u.find(D=>D.value===i)||u[0],h=(c==null?void 0:c.displayLabel)||(c==null?void 0:c.label)||(i?String(i):"Auto"),m=`
2025-09-22 23:18:02 +03:00
<div class="settings-header">
<span>Settings</span>
<button class="settings-close-btn" aria-label="Close settings">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.7096 12L20.8596 20.15L20.1496 20.86L11.9996 12.71L3.84965 20.86L3.13965 20.15L11.2896 12L3.14965 3.85001L3.85965 3.14001L11.9996 11.29L20.1496 3.14001L20.8596 3.85001L12.7096 12Z" fill="currentColor"/>
</svg>
</button>
</div>`,v=`
2025-09-22 23:18:02 +03:00
<div class="settings-item" data-setting="playback-speed">
<span class="settings-left">
<span class="vjs-icon-placeholder settings-item-svg">
<svg height="24" viewBox="0 0 24 24" width="24"><path d="M10,8v8l6-4L10,8L10,8z M6.3,5L5.7,4.2C7.2,3,9,2.2,11,2l0.1,1C9.3,3.2,7.7,3.9,6.3,5z M5,6.3L4.2,5.7C3,7.2,2.2,9,2,11 l1,.1C3.2,9.3,3.9,7.7,5,6.3z M5,17.7c-1.1-1.4-1.8-3.1-2-4.8L2,13c0.2,2,1,3.8,2.2,5.4L5,17.7z M11.1,21c-1.8-0.2-3.4-0.9-4.8-2 l-0.6,.8C7.2,21,9,21.8,11,22L11.1,21z M22,12c0-5.2-3.9-9.4-9-10l-0.1,1c4.6,.5,8.1,4.3,8.1,9s-3.5,8.5-8.1,9l0.1,1 C18.2,21.5,22,17.2,22,12z" fill="white"></path></svg>
</span>
<span>Playback speed</span></span>
<span class="settings-right">
<span class="current-speed">${o}</span>
<span class="vjs-icon-placeholder vjs-icon-navigate-next"></span>
</span>
</div>`,S=`
<div class="settings-item" data-setting="quality">
<span class="settings-left">
<span class="vjs-icon-placeholder settings-item-svg">
<svg height="24" viewBox="0 0 24 24" width="24"><path d="M15,17h6v1h-6V17z M11,17H3v1h8v2h1v-2v-1v-2h-1V17z M14,8h1V6V5V3h-1v2H3v1h11V8z M18,5v1h3V5H18z M6,14h1v-2v-1V9H6v2H3v1 h3V14z M10,12h11v-1H10V12z" fill="white"></path></svg>
</span>
<span>Quality</span></span>
<span class="settings-right">
<span class="current-quality">${h}</span>
<span class="vjs-icon-placeholder vjs-icon-navigate-next"></span>
</span>
</div>`,x=`
<div class="settings-item" data-setting="subtitles">
<span class="settings-left">
<span class="vjs-icon-placeholder settings-item-svg">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19 4H5C3.9 4 3 4.9 3 6V18C3 19.1 3.9 20 5 20H19C20.1 20 21 19.1 21 18V6C21 4.9 20.1 4 19 4ZM11 17H5V15H11V17ZM19 13H5V11H19V13ZM19 9H5V7H19V9Z" fill="white"/></svg>
</span>
<span>Subtitles</span></span>
<span class="settings-right">
<span class="current-subtitles">${r}</span>
<span class="vjs-icon-placeholder vjs-icon-navigate-next"></span>
</span>
</div>`;this.settingsOverlay.innerHTML=m,this.settingsOverlay.innerHTML+=v,this.settingsOverlay.innerHTML+=S,this.hasSubtitles&&(this.settingsOverlay.innerHTML+=x),this.createSpeedSubmenu(),this.createQualitySubmenu(u,c==null?void 0:c.value),this.createSubtitlesSubmenu(),this.player().el().appendChild(this.settingsOverlay)}createSpeedSubmenu(){const e=[{label:"0.25",value:.25},{label:"0.5",value:.5},{label:"0.75",value:.75},{label:"Normal",value:1},{label:"1.25",value:1.25},{label:"1.5",value:1.5},{label:"1.75",value:1.75},{label:"2",value:2}];this.speedSubmenu=document.createElement("div"),this.speedSubmenu.className="speed-submenu";const i=this.userPreferences.getPreference("playbackRate");this.speedSubmenu.innerHTML=`
2025-09-22 23:18:02 +03:00
<div class="submenu-header">
<span style="margin-right: 8px;">←</span>
<span>Playback speed</span>
</div>
${e.map(r=>`
<div class="speed-option ${r.value===i?"active":""}" data-speed="${r.value}">
<span>${r.label}</span>
${r.value===i?'<span class="checkmark">✓</span>':""}
</div>
`).join("")}
`,this.settingsOverlay.appendChild(this.speedSubmenu)}createQualitySubmenu(e,i){this.qualitySubmenu=document.createElement("div"),this.qualitySubmenu.className="quality-submenu";const r=`
<div class="submenu-header">
<span style="margin-right: 8px;">←</span>
<span>Quality</span>
</div>
`,o=e.map(u=>`
<div class="quality-option ${u.value===i?"active":""}" data-quality="${u.value}">
<span class="quality-label">${u.displayLabel||u.label}</span>
${u.value===i?'<span class="checkmark">✓</span>':""}
</div>
`).join("");this.qualitySubmenu.innerHTML=r+o,this.settingsOverlay.appendChild(this.qualitySubmenu)}createSubtitlesSubmenu(){this.subtitlesSubmenu=document.createElement("div"),this.subtitlesSubmenu.className="subtitles-submenu";const e=`
<div class="submenu-header">
<span style="margin-right: 8px;">←</span>
<span>Subtitles/CC</span>
</div>
`;this.subtitlesSubmenu.innerHTML=e+'<div class="submenu-body"></div>',this.settingsOverlay.appendChild(this.subtitlesSubmenu),this.refreshSubtitlesSubmenu()}refreshSubtitlesSubmenu(){if(!this.subtitlesSubmenu)return;const e=this.subtitlesSubmenu.querySelector(".submenu-body");if(!e)return;const r=this.player().textTracks();let o=null;for(let c=0;c<r.length;c++){const h=r[c];if(h.kind==="subtitles"&&h.mode==="showing"){o=h.language;break}}const u=[];u.push({label:"Off",lang:null});for(let c=0;c<r.length;c++){const h=r[c];h.kind==="subtitles"&&u.push({label:h.label||h.language||`Track ${c}`,lang:h.language,track:h})}e.innerHTML=u.map(c=>`
<div class="subtitle-option ${c.lang===o?"active":""}" data-lang="${c.lang||""}">
<span>${c.label}</span>
${c.lang===o?'<span class="checkmark">✓</span>':""}
</div>
`).join(""),this.updateCurrentSubtitleDisplay()}updateCurrentSubtitleDisplay(){try{const i=this.player().textTracks();let r="Off";for(let u=0;u<i.length;u++){const c=i[u];if(c.kind==="subtitles"&&c.mode==="showing"){r=c.label||c.language||"Subtitles";break}}const o=this.settingsOverlay.querySelector(".current-subtitles");o&&(o.textContent=r)}catch(e){console.error("Error updating current subtitle display:",e)}}startSubtitleSync(){this.updateCurrentSubtitleDisplay(),this.player().on("texttrackchange",()=>{this.updateCurrentSubtitleDisplay(),this.refreshSubtitlesSubmenu()}),this.subtitleSyncInterval=setInterval(()=>{this.updateCurrentSubtitleDisplay()},2e3)}stopSubtitleSync(){this.subtitleSyncInterval&&(clearInterval(this.subtitleSyncInterval),this.subtitleSyncInterval=null)}dispose(){this.stopSubtitleSync(),document.removeEventListener("click",this.handleClickOutside),this.player()&&this.player().off("texttrackchange")}getAvailableQualities(){var r;const e=["auto","144p","240p","360p","480p","720p","1080p"];if(Array.isArray(this.providedQualities)&&this.providedQualities.length)return this.sortAndDecorateQualities(this.providedQualities,e);try{const o=typeof window<"u"?window.MEDIA_DATA:null,u=(r=o==null?void 0:o.data)==null?void 0:r.qualities;if(Array.isArray(u)&&u.length){const c=u.map(h=>({label:h.label||h.value||"Auto",value:(h.value||h.label||"auto").toString().toLowerCase(),src:h.src||h.url||h.href,type:h.type||"video/mp4"}));return this.sortAndDecorateQualities(c,e)}}catch{}const i=this.player().currentSources?this.player().currentSources():this.player().currentSrc();if(Array.isArray(i)&&i.length>0){const o=i.map((u,c)=>{const h=u.label||u.res||this.inferLabelFromSrc(u.src)||(c===0?"Auto":`Source ${c+1}`),m=String(h).toLowerCase();return{label:h,value:m,src:u.src,type:u.type||"video/mp4"}});return this.sortAndDecorateQualities(o,e)}return[]}sortAndDecorateQualities(e,i){const r=c=>{const h=i.indexOf(String(c).toLowerCase());return h===-1?999:h};return e.filter(c=>c.src).map(c=>{const h=(c.value||c.label||"").toString().toLowerCase(),m=c.label||c.value||"",S=h==="1080p"?`${m} <sup class="hd-badge">HD</sup>`:m;return{...c,value:h,label:m,displayLabel:S}}).sort((c,h)=>r(c.value)-r(h.value))}inferLabelFromSrc(e){if(!e)return null;const i=/(?:_|\.|\/)\D*(1440p|1080p|720p|480p|360p|240p|144p)/i.exec(e);if(i&&i[1])return i[1].toUpperCase();const r=/(\b\d{3,4})p\b/i.exec(e);return r&&r[1]?`${r[1]}p`:null}positionButton(){const e=this.player().getChild("controlBar"),i=e.getChild("fullscreenToggle");this.settingsButton&&i&&setTimeout(()=>{const r=e.children().indexOf(i);e.removeChild(this.settingsButton),e.addChild(this.settingsButton,{},r+1)},50)}setupEventListeners(){const e=this.settingsOverlay.querySelector(".settings-close-btn");if(e){const u=c=>{var m;c.stopPropagation(),this.settingsOverlay.classList.remove("show"),this.settingsOverlay.style.display="none",this.speedSubmenu.style.display="none",this.qualitySubmenu&&(this.qualitySubmenu.style.display="none"),this.subtitlesSubmenu&&(this.subtitlesSubmenu.style.display="none");const h=(m=this.settingsButton)==null?void 0:m.el();h&&h.classList.remove("settings-clicked")};e.addEventListener("click",u),e.addEventListener("touchend",c=>{c.preventDefault(),u(c)},{passive:!1})}this.settingsOverlay.addEventListener("click",u=>{u.stopPropagation(),u.target.closest('[data-setting="playback-speed"]')&&(this.speedSubmenu.style.display="flex",this.qualitySubmenu.style.display="none"),u.target.closest('[data-setting="quality"]')&&(this.qualitySubmenu.style.display="flex",this.speedSubmenu.style.display="none"),u.target.closest('[data-setting="subtitles"]')&&(this.refreshSubtitlesSubmenu(),this.subtitlesSubmenu.style.display="flex",this.speedSubmenu.style.display="none",this.qualitySubmenu.style.display="none")}),this.settingsOverlay.addEventListener("touchstart",u=>{this.touchStartY=u.touches[0].clientY,this.isTouchScrolling=!1},{passive:!0}),this.settingsOverlay.addEventListener("touchmove",u=>{Math.abs(u.touches[0].clientY-this.touchStartY)>10&&(this.isTouchScrolling=!0)},{pas
2025-09-22 23:18:02 +03:00
<div class="vjs-seek-indicator-content">
<div class="vjs-seek-indicator-icon"></div>
<div class="vjs-seek-indicator-text"></div>
</div>
`,e.style.display="none",e.style.opacity="0",e.style.visibility="hidden",e}show(e,i=this.seekAmount){const r=this.el(),o=r.querySelector(".vjs-seek-indicator-icon"),u=r.querySelector(".vjs-seek-indicator-text");this.showTimeout&&clearTimeout(this.showTimeout),e==="forward"?o.innerHTML=`
<div style="display: flex; align-items: center; justify-content: center; animation: youtubeSeekPulse 0.3s ease-out;">
<div style="
width: 80px;
height: 80px;
border-radius: 50%;
background: rgba(0, 0, 0, 0.3);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
border: none;
outline: none;
box-sizing: border-box;
overflow: hidden;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
">
<div style="display: flex; align-items: center; justify-content: center; margin-bottom: 4px;">
<svg viewBox="0 0 24 24" width="24" height="24" fill="white" style="filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));">
<path d="M8 5v14l11-7z"/>
<path d="M13 5v14l11-7z" opacity="0.6"/>
</svg>
</div>
<div style="
color: white;
font-size: 10px;
font-weight: 500;
text-align: center;
line-height: 1.2;
opacity: 0.9;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
">${i} seconds</div>
</div>
</div>
`:e==="backward"?o.innerHTML=`
<div style="display: flex; align-items: center; justify-content: center; animation: youtubeSeekPulse 0.3s ease-out;">
<div style="
width: 80px;
height: 80px;
border-radius: 50%;
background: rgba(0, 0, 0, 0.3);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
border: none;
outline: none;
box-sizing: border-box;
overflow: hidden;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
">
<div style="display: flex; align-items: center; justify-content: center; margin-bottom: 4px;">
<svg viewBox="0 0 24 24" width="24" height="24" fill="white" style="filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));">
<path d="M16 19V5l-11 7z"/>
<path d="M11 19V5L0 12z" opacity="0.6"/>
</svg>
</div>
<div style="
color: white;
font-size: 10px;
font-weight: 500;
text-align: center;
line-height: 1.2;
opacity: 0.9;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
">${i} seconds</div>
</div>
</div>
`:e==="play"?(o.innerHTML=`
<div style="display: flex; align-items: center; justify-content: center; animation: youtubeSeekPulse 0.3s ease-out;">
<div style="
width: 80px;
height: 80px;
border-radius: 50%;
background: rgba(0, 0, 0, 0.3);
display: flex;
align-items: center;
justify-content: center;
border: none;
outline: none;
box-sizing: border-box;
overflow: hidden;
">
<svg viewBox="0 0 24 24" width="32" height="32" fill="white" style="filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));">
<path d="M8 5v14l11-7z"/>
</svg>
</div>
</div>
`,u.textContent="Play"):e==="pause"&&(o.innerHTML=`
<div style="display: flex; align-items: center; justify-content: center; animation: youtubeSeekPulse 0.3s ease-out;">
<div style="
width: 80px;
height: 80px;
border-radius: 50%;
background: rgba(0, 0, 0, 0.3);
display: flex;
align-items: center;
justify-content: center;
border: none;
outline: none;
box-sizing: border-box;
overflow: hidden;
">
<svg viewBox="0 0 24 24" width="32" height="32" fill="white" style="filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));">
<path d="M6 19h4V5H6v14zm8-14v14h4V5h-4z"/>
</svg>
</div>
</div>
`,u.textContent="Pause"),u.textContent="",r.style.cssText=`
position: absolute !important;
top: 50% !important;
left: 50% !important;
transform: translate(-50%, -50%) !important;
z-index: 99999 !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
visibility: visible !important;
opacity: 1 !important;
pointer-events: none !important;
width: auto !important;
height: auto !important;
`,this.showTimeout=setTimeout(()=>{this.hide()},1e3)}hide(){const e=this.el();e.style.opacity="0",setTimeout(()=>{e.style.display="none",e.style.visibility="hidden"},200)}dispose(){this.showTimeout&&clearTimeout(this.showTimeout),super.dispose()}}F.registerComponent("SeekIndicator",Yx);function Z3({videoId:s="default-video"}){var le,Z,fe;const e=Si.useRef(null),i=Si.useRef(null),r=Si.useRef(new $x),o=Si.useRef({}),u=s==="video-embed",c={}.VITE_DEV_MODE==="true"||window.location.hostname.includes("vercel.app"),h=Si.useMemo(()=>typeof window<"u"&&window.MEDIA_DATA?window.MEDIA_DATA:{data:{title:"Modi tempora est quaerat numquam",author_name:"Markos Gogoulos",author_profile:"/user/markos/",author_thumbnail:"/media/userlogos/2024/10/02/markos.jpeg",url:"https://demo.mediacms.io/view?m=zK2nirNLC",poster_url:"/media/original/thumbnails/user/markos/6497e960081b4b8abddcf4cbdf2bf4eb_btbR39g.20250604_080632.mp4.jpg",chapter_data:[{startTime:"00:00:00.000",endTime:"00:00:08.295",chapterTitle:"A1 Lorem ipsum dolor sit amet consectetur adipisicing elit."},{startTime:"00:00:24.295",endTime:"00:00:48.590",chapterTitle:"A2 of Marine Life"},{startTime:"00:00:48.590",endTime:"00:01:12.885",chapterTitle:"A3 Reef Ecosystems"}],related_media:[{friendly_token:"dktSm7iEo",url:"https://demo.mediacms.io/view?m=dktSm7iEo",api_url:"https://demo.mediacms.io/api/v1/media/dktSm7iEo",user:"markos",title:"Sed aliquam consectetur dolor.",description:"Voluptatem quiquia dolorem labore dolore. Dolor etincidunt non etincidunt etincidunt sed. Adipisci eius etincidunt dolor magnam dolor. Dolorem porro etincidunt quaerat. Eius magnam dolorem tempora voluptatem labore. Dolore sed porro ipsum aliquam numquam non dolor. Labore aliquam labore dolor sit quisquam quaerat.",add_date:"2024-10-02T05:28:18.784775-04:00",views:803,media_type:"video",state:"public",duration:12,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/8624c4080afc46eba8b4f27a81eccf27.Birch.mp4_myELKan.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/8624c4080afc46eba8b4f27a81eccf27.tmpb7kerjb2.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:13,dislikes:2,reported_times:0,featured:!0,user_featured:!1,size:"124.5MB"},{friendly_token:"zK2nirNLC",url:"https://demo.mediacms.io/view?m=zK2nirNLC",api_url:"https://demo.mediacms.io/api/v1/media/zK2nirNLC",user:"markos",title:"University of Copenhagen Mærsk Tower",description:"https://maps.app.goo.gl/ewVAGgqdrb1MD1sF7",add_date:"2025-06-06T00:00:00-04:00",views:632,media_type:"video",state:"public",duration:27,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/6497e960081b4b8abddcf4cbdf2bf4eb_38hpsj6.20250604_080632.mp4.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/6497e960081b4b8abddcf4cbdf2bf4eb.tmpjc3_yx1g.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:13,dislikes:0,reported_times:0,featured:!1,user_featured:!1,size:"58.8MB"},{friendly_token:"o7lKzt664",url:"https://demo.mediacms.io/view?m=o7lKzt664",api_url:"https://demo.mediacms.io/api/v1/media/o7lKzt664",user:"markos",title:"Magnam velit ipsum quisquam amet magnam etincidunt.",description:"Magnam sed quisquam quiquia dolor est. Tempora sit etincidunt dolor dolore magnam. Numquam non dolorem eius aliquam non. Consectetur sit consectetur dolor quaerat est. Consectetur amet dolor ut dolor ipsum. Mpla mpla antalya",add_date:"2024-10-02T05:35:10-04:00",views:1378,media_type:"video",state:"public",duration:6,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/95eb092b57c24f52b75691fa382d16bb_Bg99UmX.20240526_123312.mp4.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/95eb092b57c24f52b75691fa382d16bb.tmpthrejon6
2025-09-22 23:18:02 +03:00
`,add_date:"2024-10-02T05:33:26-04:00",views:713,media_type:"image",state:"public",duration:0,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/7a9ec6be9ce24a569a246c61d9b03690.IMG_20220528_135153.jpg.jpg",is_reviewed:!0,preview_url:null,author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:9,dislikes:1,reported_times:1,featured:!0,user_featured:!1,size:null},{friendly_token:"TAdmfDUlu",url:"https://demo.mediacms.io/view?m=TAdmfDUlu",api_url:"https://demo.mediacms.io/api/v1/media/TAdmfDUlu",user:"markos",title:"Sed neque adipisci dolorem sed.",description:`Quiquia ipsum velit amet. Consectetur porro numquam numquam magnam adipisci dolore. Dolor ipsum ut ut consectetur modi labore. Neque est non amet. Sit quiquia quisquam dolorem. Modi dolore modi dolorem ipsum ipsum. Neque modi modi dolorem quisquam numquam modi quaerat.\r
\r
best scenes at 00:00:12 and 00:14`,add_date:"2024-10-02T00:00:00-04:00",views:821,media_type:"video",state:"public",duration:30,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/f371a6b2c157451d924bc4f612bf2667_Kh4GigX.Pexels_Videos_2079217_1.mp4.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/f371a6b2c157451d924bc4f612bf2667.tmp2jqxf9sr.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:20,dislikes:4,reported_times:0,featured:!0,user_featured:!1,size:"90.0MB"},{friendly_token:"kHd7EKAVH",url:"https://demo.mediacms.io/view?m=kHd7EKAVH",api_url:"https://demo.mediacms.io/api/v1/media/kHd7EKAVH",user:"markos",title:"Tempora magnam velit ipsum neque aliquam adipisci.",description:"Porro dolorem eius sed non eius. Non dolor quiquia dolorem. Modi ut dolor aliquam dolor. Non est dolorem amet consectetur neque quiquia numquam. Aliquam adipisci quiquia voluptatem ipsum quisquam magnam adipisci. Sit adipisci dolor consectetur dolor quaerat. Magnam ut modi tempora. Modi non ipsum tempora etincidunt porro. Ut ut dolor ipsum non consectetur neque quiquia.",add_date:"2024-10-02T05:33:57.651288-04:00",views:1051,media_type:"video",state:"public",duration:54,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/9d3b8425eb08400fa08d90f988bc5ff4.VID_20220821_110509.mp4_JzAol5C.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/9d3b8425eb08400fa08d90f988bc5ff4.tmpwlnjum5k.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:26,dislikes:8,reported_times:1,featured:!0,user_featured:!1,size:"136.8MB"},{friendly_token:"Otbc37Yj4",url:"https://demo.mediacms.io/view?m=Otbc37Yj4",api_url:"https://demo.mediacms.io/api/v1/media/Otbc37Yj4",user:"markos",title:"Kastania Evrytanias, Central Greece",description:"",add_date:"2025-05-19T00:00:00-04:00",views:311,media_type:"video",state:"public",duration:25,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/dd3af0e1dece43b490bbafc9400a407a_YtfxVr4.20250517_105515.mp4.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/dd3af0e1dece43b490bbafc9400a407a.tmpl3iqzl10.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:12,dislikes:1,reported_times:0,featured:!1,user_featured:!1,size:"54.3MB"},{friendly_token:"a1BP6J0fM",url:"https://demo.mediacms.io/view?m=a1BP6J0fM",api_url:"https://demo.mediacms.io/api/v1/media/a1BP6J0fM",user:"markos",title:"Velit sed magnam quiquia amet.",description:"Numquam quiquia numquam ut etincidunt numquam. Dolore ut sit eius dolorem sed. Neque porro modi dolor ipsum amet dolore quisquam. Ipsum dolore dolor voluptatem eius quiquia etincidunt. Dolore etincidunt amet velit amet ipsum ut. Aliquam etincidunt consectetur est. Consectetur non quiquia voluptatem velit sed quisquam.",add_date:"2024-10-02T05:35:15.434023-04:00",views:997,media_type:"video",state:"public",duration:11,thumbnail_url:"https://demo.mediacms.io/media/original/thumbnails/user/markos/32e2cf3ff5fe498da93251034e977d9c.20240527_090548.mp4_qiF5S9H.jpg",is_reviewed:!0,preview_url:"https://demo.mediacms.io/media/encoded/1/markos/32e2cf3ff5fe498da93251034e977d9c.tmpheuxmj3y.gif",author_name:"Markos Gogoulos",author_profile:"https://demo.mediacms.io/user/markos/",author_thumbnail:"https://demo.mediacms.io/media/userlogos/2024/10/02/markos.jpeg",encoding_status:"success",likes:14,dislikes:1,reported_times:0,featured:!0,user_featured:!1,size:"3.5MB"}],media_type:"video",original_media_url:"/media/original/user/markos/6497e960081b4b8abddcf4cbdf2bf4eb.20250604_080632.mp4",hls_info:{master_file:"/media/hls/649
2025-09-22 23:18:02 +03:00
//# sourceMappingURL=video-js.js.map