1var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o(((e,t)=>{(function(){function n(e,t){Object.defineProperty(a.prototype,e,{get:function(){console.warn(`%s(...) is deprecated in plain JavaScript React classes. %s`,t[0],t[1])}})}function r(e){return typeof e!=`object`||!e?null:(e=Se&&e[Se]||e[`@@iterator`],typeof e==`function`?e:null)}function i(e,t){e=(e=e.constructor)&&(e.displayName||e.name)||`ReactClass`;var n=e+`.`+t;Ce[n]||(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.",t,e),Ce[n]=!0)}function a(e,t,n){this.props=e,this.context=t,this.refs=Ee,this.updater=n||we}function o(){}function s(e,t,n){this.props=e,this.context=t,this.refs=Ee,this.updater=n||we}function c(){}function l(e){return``+e}function u(e){try{l(e);var t=!1}catch{t=!0}if(t){t=console;var n=t.error,r=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return n.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,r),l(e)}}function d(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ke?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case de:return`Fragment`;case pe:return`Profiler`;case fe:return`StrictMode`;case _e:return`Suspense`;case ve:return`SuspenseList`;case xe:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case ue:return`Portal`;case he:return e.displayName||`Context`;case me:return(e._context.displayName||`Context`)+`.Consumer`;case ge:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case ye:return t=e.displayName||null,t===null?d(e.type)||`Memo`:t;case be:t=e._payload,e=e._init;try{return d(e(t))}catch{}}return null}function f(e){if(e===de)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===be)return`<...>`;try{var t=d(e);return t?`<`+t+`>`:`<...>`}catch{return`<...>`}}function p(){var e=Ae.A;return e===null?null:e.getOwner()}function m(){return Error(`react-stack-top-frame`)}function h(e){if(je.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function g(e,t){function n(){Ne||(Ne=!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)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function _(){var e=d(this.type);return Fe[e]||(Fe[e]=!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.`)),e=this.props.ref,e===void 0?null:e}function v(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:le,type:e,key:t,props:n,_owner:r}
vendor: 10,356 bytes, lines 1-13
1,(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:_}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function y(e,t){return t=v(e.type,t,e.props,e._owner,e._debugStack,e._debugTask),e._store&&(t._store.validated=e._store.validated),t}function b(e){x(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===be&&(e._payload.status===`fulfilled`?x(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function x(e){return typeof e==`object`&&!!e&&e.$$typeof===le}function S(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}function ee(e,t){return typeof e==`object`&&e&&e.key!=null?(u(e.key),S(``+e.key)):t.toString(36)}function te(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(c,c):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ne(e,t,n,i,a){var o=typeof e;(o===`undefined`||o===`boolean`)&&(e=null);var s=!1;if(e===null)s=!0;else switch(o){case`bigint`:case`string`:case`number`:s=!0;break;case`object`:switch(e.$$typeof){case le:case ue:s=!0;break;case be:return s=e._init,ne(s(e._payload),t,n,i,a)}}if(s){s=e,a=a(s);var c=i===``?`.`+ee(s,0):i;return Oe(a)?(n=``,c!=null&&(n=c.replace(ze,`$&/`)+`/`),ne(a,t,n,``,function(e){return e})):a!=null&&(x(a)&&(a.key!=null&&(s&&s.key===a.key||u(a.key)),n=y(a,n+(a.key==null||s&&s.key===a.key?``:(``+a.key).replace(ze,`$&/`)+`/`)+c),i!==``&&s!=null&&x(s)&&s.key==null&&s._store&&!s._store.validated&&(n._store.validated=2),a=n),t.push(a)),1}if(s=0,c=i===``?`.`:i+`:`,Oe(e))for(var l=0;l<e.length;l++)i=e[l],o=c+ee(i,l),s+=ne(i,t,n,o,a);else if(l=r(e),typeof l==`function`)for(l===e.entries&&(Re||console.warn(`Using Maps as children is not supported. Use an array of keyed ReactElements instead.`),Re=!0),e=l.call(e),l=0;!(i=e.next()).done;)i=i.value,o=c+ee(i,l++),s+=ne(i,t,n,o,a);else if(o===`object`){if(typeof e.then==`function`)return ne(te(e),t,n,i,a);throw t=String(e),Error(`Objects are not valid as a React child (found: `+(t===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:t)+`). If you meant to render a collection of children, use an array instead.`)}return s}function re(e,t,n){if(e==null)return e;var r=[],i=0;return ne(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function ie(e){if(e._status===-1){var t=e._ioInfo;t!=null&&(t.start=t.end=performance.now()),t=e._result;var n=t();if(n.then(function(t){if(e._status===0||e._status===-1){e._status=1,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`fulfilled`,n.value=t)}},function(t){if(e._status===0||e._status===-1){e._status=2,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`rejected`,n.reason=t)}}),t=e._ioInfo,t!=null){t.value=n;var r=n.displayName;typeof r==`string`&&(t.name=r)}e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return t=e._result,t===void 0&&console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s 2 3Your code should look like: 4 const MyComponent = lazy(() => import('./MyComponent')) 5 6Did you accidentally put curly braces around the import?`,t),`default`in t||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s 7 8Your code should look like: 9 const MyComponent = lazy(() => import('./MyComponent'))`,t),t.default;throw e._result}function C(){var e=Ae.H;return e===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: 101. You might have mismatching versions of React and the renderer (such as React DOM) 112. You might be breaking the Rules of Hooks 123. You might have more than one copy of React in the same app 13See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}function ae(){Ae.asyncTransitions--}function w(e){if(He===null)try{var n=(`require`+Math.random()).slice(0,7);He=(t&&t[n]).call(t,`timers`).setImmediate}catch{He=function(e){!1===Ve&&(Ve=!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 t=new MessageChannel;t.port1.onmessage=e,t.port2.postMessage(void 0)}}return He(e)}function oe(e){return 1<e.length&&typeof AggregateError==`function`?AggregateError(e):e[0]}function T(e,t){t!==Ue-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. `),Ue=t}function se(e,t,n){var r=Ae.actQueue;if(r!==null)if(r.length!==0)try{ce(r),w(function(){return se(e,t,n)});return}catch(e){Ae.thrownErrors.push(e)}else Ae.actQueue=null;0<Ae.thrownErrors.length?(r=oe(Ae.thrownErrors),Ae.thrownErrors.length=0,n(r)):t(e)}function ce(e){if(!Ge){Ge=!0;var t=0;try{for(;t<e.length;t++){var n=e[t];do{Ae.didUsePromise=!1;var r=n(!1);if(r!==null){if(Ae.didUsePromise){e[t]=n,e.splice(0,t);return}n=r}else break}while(1)}e.length=0}catch(n){e.splice(0,t+1),Ae.thrownErrors.push(n)}finally{Ge=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var le=Symbol.for(`react.transitional.element`),ue=Symbol.for(`react.portal`),de=Symbol.for(`react.fragment`),fe=Symbol.for(`react.strict_mode`),pe=Symbol.for(`react.profiler`),me=Symbol.for(`react.consumer`),he=Symbol.for(`react.context`),ge=Symbol.for(`react.forward_ref`),_e=Symbol.for(`react.suspense`),ve=Symbol.for(`react.suspense_list`),ye=Symbol.for(`react.memo`),be=Symbol.for(`react.lazy`),xe=Symbol.for(`react.activity`),Se=Symbol.iterator,Ce={},we={isMounted:function(){return!1},enqueueForceUpdate:function(e){i(e,`forceUpdate`)},enqueueReplaceState:function(e){i(e,`replaceState`)},enqueueSetState:function(e){i(e,`setState`)}},Te=Object.assign,Ee={};Object.freeze(Ee),a.prototype.isReactComponent={},a.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=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,e,t,`setState`)},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};var De={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).`]};for(qe in De)De.hasOwnProperty(qe)&&n(qe,De[qe]);o.prototype=a.prototype,De=s.prototype=new o,De.constructor=s,Te(De,a.prototype),De.isPureReactComponent=!0;var Oe=Array.isArray,ke=Symbol.for(`react.client.reference`),Ae={H:null,A:null,T:null,S:null,actQueue:null,asyncTransitions:0,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},je=Object.prototype.hasOwnProperty,Me=console.createTask?console.createTask:function(){return null};De={react_stack_bottom_frame:function(e){return e()}};var Ne,Pe,Fe={},Ie=De.react_stack_bottom_frame.bind(De,m)(),Le=Me(f(m)),Re=!1,ze=/\/+/g,Be=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Ve=!1,He=null,Ue=0,We=!1,Ge=!1,Ke=typeof queueMicrotask==`function`?function(e){queueMicrotask(function(){return queueMicrotask(e)})}:w;De=Object.freeze({__proto__:null,c:function(e){return C().useMemoCache(e)}});var qe={map:re,forEach:function(e,t,n){re(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return re(e,function(){t++}),t},toArray:function(e){return re(e,function(e){return e})||[]},only:function(e){if(!x(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=xe,e.Children=qe,e.Component=a,e.Fragment=de,e.Profiler=pe,e.PureComponent=s,e.StrictMode=fe,e.Suspense=_e,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=Ae,e.__COMPILER_RUNTIME=De,e.act=function(e){var t=Ae.actQueue,n=Ue;Ue++;var r=Ae.actQueue=t===null?[]:t,i=!1;try{var a=e()}catch(e){Ae.thrownErrors.push(e)}if(0<Ae.thrownErrors.length)throw T(t,n),e=oe(Ae.thrownErrors),Ae.thrownErrors.length=0,e;if(typeof a==`object`&&a&&typeof a.then==`function`){var o=a;return Ke(function(){i||We||(We=!0,console.error(`You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);`))}),{then:function(e,a){i=!0,o.then(function(i){if(T(t,n),n===0){try{ce(r),w(function(){return se(i,e,a)})}catch(e){Ae.thrownErrors.push(e)}if(0<Ae.thrownErrors.length){var o=oe(Ae.thrownErrors);Ae.thrownErrors.length=0,a(o)}}else e(i)},function(e){T(t,n),0<Ae.thrownErrors.length?(e=oe(Ae.thrownErrors),Ae.thrownErrors.length=0,a(e)):a(e)})}}}var s=a;if(T(t,n),n===0&&(ce(r),r.length!==0&&Ke(function(){i||We||(We=!0,console.error("A component suspended inside an `act` scope, but the `act` c
13all was not awaited. When testing React components that depend on asynchronous data, you must await the result:\n\nawait act(() => ...)"))}),Ae.actQueue=null),0<Ae.thrownErrors.length)throw e=oe(Ae.thrownErrors),Ae.thrownErrors.length=0,e;return{then:function(e,t){i=!0,n===0?(Ae.actQueue=r,w(function(){return se(s,e,t)})):e(s)}}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.captureOwnerStack=function(){var e=Ae.getCurrentStack;return e===null?null:e()},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=Te({},e.props),i=e.key,a=e._owner;if(t!=null){var o;a:{if(je.call(t,`ref`)&&(o=Object.getOwnPropertyDescriptor(t,`ref`).get)&&o.isReactWarning){o=!1;break a}o=t.ref!==void 0}for(s in o&&(a=p()),h(t)&&(u(t.key),i=``+t.key),t)!je.call(t,s)||s===`key`||s===`__self`||s===`__source`||s===`ref`&&t.ref===void 0||(r[s]=t[s])}var s=arguments.length-2;if(s===1)r.children=n;else if(1<s){o=Array(s);for(var c=0;c<s;c++)o[c]=arguments[c+2];r.children=o}for(r=v(e.type,i,r,a,e._debugStack,e._debugTask),i=2;i<arguments.length;i++)b(arguments[i]);return r},e.createContext=function(e){return e={$$typeof:he,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:me,_context:e},e._currentRenderer=null,e._currentRenderer2=null,e},e.createElement=function(e,t,n){for(var r=2;r<arguments.length;r++)b(arguments[r]);r={};var i=null;if(t!=null)for(c in Pe||!(`__self`in t)||`key`in t||(Pe=!0,console.warn(`Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform`)),h(t)&&(u(t.key),i=``+t.key),t)je.call(t,c)&&c!==`key`&&c!==`__self`&&c!==`__source`&&(r[c]=t[c]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];Object.freeze&&Object.freeze(o),r.children=o}if(e&&e.defaultProps)for(c in a=e.defaultProps,a)r[c]===void 0&&(r[c]=a[c]);i&&g(r,typeof e==`function`?e.displayName||e.name||`Unknown`:e);var c=1e4>Ae.recentlyCreatedOwnerStacks++;return v(e,i,r,p(),c?Error(`react-stack-top-frame`):Ie,c?Me(f(e)):Le)},e.createRef=function(){var e={current:null};return Object.seal(e),e},e.forwardRef=function(e){e!=null&&e.$$typeof===ye?console.error("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof e==`function`?e.length!==0&&e.length!==2&&console.error(`forwardRef render functions accept exactly two parameters: props and ref. %s`,e.length===1?`Did you forget to use the ref parameter?`:`Any additional parameter will be undefined.`):console.error(`forwardRef requires a render function but was given %s.`,e===null?`null`:typeof e),e!=null&&e.defaultProps!=null&&console.error(`forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?`);var t={$$typeof:ge,render:e},n;return Object.defineProperty(t,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,"name",{value:t}),e.displayName=t)}}),t},e.isValidElement=x,e.lazy=function(e){e={_status:-1,_result:e};var t={$$typeof:be,_payload:e,_init:ie},n={name:`lazy`,start:-1,end:-1,value:null,owner:null,debugStack:Error(`react-stack-top-frame`),debugTask:console.createTask?console.createTask(`lazy()`):null};return e._ioInfo=n,t._debugInfo=[{awaited:n}],t},e.memo=function(e,t){e??console.error(`memo: The first argument must be a component. Instead received: %s`,e===null?`null`:typeof e),t={$$typeof:ye,type:e,compare:t===void 0?null:t};var n;return Object.defineProperty(t,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,"name",{value:t}),e.displayName=t)}}),t},e.startTransition=function(e){var t=Ae.T,n={};n._updatedFibers=new Set,Ae.T=n;try{var r=e(),i=Ae.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&(Ae.asyncTransitions++,r.then(ae,ae),r.then(c,Be))}catch(e){Be(e)}finally{t===null&&n._updatedFibers&&(e=n._updatedFibers.size,n._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`)),t!==null&&n.types!==null&&(t.types!==null&&t.types!==n.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),t.types=n.types),Ae.T=t}},e.unstable_useCacheRefresh=function(){return C().useCacheRefresh()},e.use=function(e){return C().use(e)},e.useActionState=function(e,t,n){return C().useActionState(e,t,n)},e.useCallback=function(e,t){return C().useCallback(e,t)},e.useContext=function(e){var t=C();return e.$$typeof===me&&console.error(`Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?`),t.useContext(e)},e.useDebugValue=function(e,t){return C().useDebugValue(e,t)},e.useDeferredValue=function(e,t){return C().useDeferredValue(e,t)},e.useEffect=function(e,t){return e??console.warn(`React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useEffect(e,t)},e.useEffectEvent=function(e){return C().useEffectEvent(e)},e.useId=function(){return C().useId()},e.useImperativeHandle=function(e,t,n){return C().useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return e??console.warn(`React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return e??console.warn(`React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useLayoutEffect(e,t)},e.useMemo=function(e,t){return C().useMemo(e,t)},e.useOptimistic=function(e,t){return C().useOptimistic(e,t)},e.useReducer=function(e,t,n){return C().useReducer(e,t,n)},e.useRef=function(e){return C().useRef(e)},e.useState=function(e){return C().useState(e)},e.useSyncExternalStore=function(e,t,n){return C().useSyncExternalStore(e,t,n)},e.useTransition=function(){return C().useTransition()}
vendor: 10,287 bytes, lines 13-17
13,e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{(function(){function t(){if(x=!1,ne){var t=e.unstable_now();C=t;var n=!0;try{a:{y=!1,b&&(b=!1,ee(re),re=-1),v=!0;var a=_;try{b:{for(o(t),g=r(p);g!==null&&!(g.expirationTime>t&&c());){var u=g.callback;if(typeof u==`function`){g.callback=null,_=g.priorityLevel;var d=u(g.expirationTime<=t);if(t=e.unstable_now(),typeof d==`function`){g.callback=d,o(t),n=!0;break b}g===r(p)&&i(p),o(t)}else i(p);g=r(p)}if(g!==null)n=!0;else{var f=r(m);f!==null&&l(s,f.startTime-t),n=!1}}break a}finally{g=null,_=a,v=!1}}}finally{n?ae():ne=!1}}}function n(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,i=e[r];if(0<a(i,t))e[r]=t,e[n]=i,n=r;else break a}}function r(e){return e.length===0?null:e[0]}function i(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,i=e.length,o=i>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>a(c,n))l<i&&0>a(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<i&&0>a(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}function o(e){for(var t=r(m);t!==null;){if(t.callback===null)i(m);else if(t.startTime<=e)i(m),t.sortIndex=t.expirationTime,n(p,t);else break;t=r(m)}}function s(e){if(b=!1,o(e),!y)if(r(p)!==null)y=!0,ne||(ne=!0,ae());else{var t=r(m);t!==null&&l(s,t.startTime-e)}}function c(){return x?!0:!(e.unstable_now()-C<ie)}function l(t,n){re=S(function(){t(e.unstable_now())},n)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var p=[],m=[],h=1,g=null,_=3,v=!1,y=!1,b=!1,x=!1,S=typeof setTimeout==`function`?setTimeout:null,ee=typeof clearTimeout==`function`?clearTimeout:null,te=typeof setImmediate<`u`?setImmediate:null,ne=!1,re=-1,ie=5,C=-1;if(typeof te==`function`)var ae=function(){te(t)};else if(typeof MessageChannel<`u`){var w=new MessageChannel,oe=w.port2;w.port1.onmessage=t,ae=function(){oe.postMessage(null)}}else ae=function(){S(t,0)};e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):ie=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return _},e.unstable_next=function(e){switch(_){case 1:case 2:case 3:var t=3;break;default:t=_}var n=_;_=t;try{return e()}finally{_=n}},e.unstable_requestPaint=function(){x=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=_;_=e;try{return t()}finally{_=n}},e.unstable_scheduleCallback=function(t,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,t){case 1:var c=-1;break;case 2:c=250;break;case 5:c=1073741823;break;case 4:c=1e4;break;default:c=5e3}return c=a+c,t={id:h++,callback:i,priorityLevel:t,startTime:a,expirationTime:c,sortIndex:-1},a>o?(t.sortIndex=a,n(m,t),r(p)===null&&t===r(m)&&(b?(ee(re),re=-1):b=!0,l(s,a-o))):(t.sortIndex=c,n(p,t),y||v||(y=!0,ne||(ne=!0,ae()))),t},e.unstable_shouldYield=c,e.unstable_wrapCallback=function(e){var t=_;return function(){var n=_;_=t;try{return e.apply(this,arguments)}finally{_=n}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{(function(){function t(){}function n(e){return``+e}function r(e,t,r){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{n(i);var a=!1}catch{a=!0}return a&&(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&&i[Symbol.toStringTag]||i.constructor.name||`Object`),n(i)),{$$typeof:u,key:i==null?null:``+i,children:e,containerInfo:t,implementation:r}}function i(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}function a(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:`something with type "`+typeof e+`"`}function o(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:typeof e==`string`?JSON.stringify(e):typeof e==`number`?"`"+e+"`":`something with type "`+typeof e+`"`}function s(){var e=f.H;return e===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: 141. You might have mismatching versions of React and the renderer (such as React DOM) 152. You might be breaking the Rules of Hooks 163. You might have more than one copy of React in the same app 17See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var c=d(),l={d:{f:t,r:function(){throw Error(`Invalid form element. requestFormReset must be passed a form that was rendered by React.`)},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},u=Symbol.for(`react.portal`),f=c.__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`),e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=l,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(`Target container is not a DOM element.`);return r(e,t,null,n)},e.flushSync=function(e){var t=f.T,n=l.p;try{if(f.T=null,l.p=2,e)return e()}finally{f.T=t,l.p=n,l.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.`)}},e.preconnect=function(e,t){typeof e==`string`&&e?t!=null&&typeof t!=`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.",o(t)):t!=null&&typeof t.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.",a(t.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e)),typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,l.d.C(e,t))},e.prefetchDNS=function(e){if(typeof e!=`string`||!e)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e));else if(1<arguments.length){var t=arguments[1];typeof t==`object`&&t.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`.",o(t)):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`.",o(t))}typeof e==`string`&&l.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&e?typeof t!=`object`||!t?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.",o(t)):t.as!==`style`&&t.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".',o(t.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e)),typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=i(n,t.crossOrigin),s=typeof t.integrity==`string`?t.integrity:void 0,c=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?l.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:s,fetchPriority:c}):n===`script`&&l.d.X(e,{crossOrigin:r,integrity:s,fetchPriority:c,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+a(t)+`.`:t&&`as`in t&&t.as!==`script`&&(n+=" The `as` option encountered was "+o(t.as)+`.`),n)console.error("ReactDOM.preinitModule(
17): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",n);else switch(n=t&&typeof t.as==`string`?t.as:`script`,n){case`script`:break;default:n=o(n),console.error('ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',n,e)}typeof e==`string`&&(typeof t==`object`&&t?(t.as==null||t.as===`script`)&&(n=i(t.as,t.crossOrigin),l.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})):t??l.d.M(e))},e.preload=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),typeof t!=`object`||!t?n+=" The `options` argument encountered was "+a(t)+`.`:typeof t.as==`string`&&t.as||(n+=" The `as` option encountered was "+a(t.as)+`.`),n&&console.error('ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',n),typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){n=t.as;var r=i(n,t.crossOrigin);l.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){var n=``;typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+a(t)+`.`:t&&`as`in t&&typeof t.as!=`string`&&(n+=" The `as` option encountered was "+a(t.as)+`.`),n&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',n),typeof e==`string`&&(t?(n=i(t.as,t.crossOrigin),l.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})):l.d.m(e))},e.requestFormReset=function(e){l.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s().useFormState(e,t,n)},e.useFormStatus=function(){return s().useHostTransitionStatus()},e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),h=o(((e,t)=>{t.exports=m()})),g=o((e=>{(function(){function t(e,t){for(e=e.memoizedState;e!==null&&0<t;)e=e.next,t--;return e}function n(e,t,r,i){if(r>=t.length)return i;var a=t[r],o=Zf(e)?e.slice():Nf({},e);return o[a]=n(e[a],t,r+1,i),o}function r(e,t,n){if(t.length!==n.length)console.warn(`copyWithRename() expects paths of the same length`);else{for(var r=0;r<n.length-1;r++)if(t[r]!==n[r]){console.warn(`copyWithRename() expects paths to be the same except for the deepest key`);return}return i(e,t,n,0)}}function i(e,t,n,r){var a=t[r],o=Zf(e)?e.slice():Nf({},e);return r+1===t.length?(o[n[r]]=o[a],Zf(o)?o.splice(a,1):delete o[a]):o[a]=i(e[a],t,n,r+1),o}function a(e,t,n){var r=t[n],i=Zf(e)?e.slice():Nf({},e);return n+1===t.length?(Zf(i)?i.splice(r,1):delete i[r],i):(i[r]=a(e[r],t,n+1),i)}function o(){return!1}function s(){return null}function c(){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`)}
vendor: 12,452 bytes, lines 17-33
17function l(){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 u(){}function f(){}function m(e){var t=[];return e.forEach(function(e){t.push(e)}),t.sort().join(`, `)}function g(e,t,n,r){return new D(e,t,n,r)}function _(e,t){e.context===Bg&&(rf(e.current,2,t,e,null,null),cl())}function v(e,t){if(Vg!==null){var n=t.staleFamilies;t=t.updatedFamilies,Pl(),wr(e.current,t,n),cl()}}function y(e){Vg=e}function b(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function x(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function S(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function ee(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function te(e){if(x(e)!==e)throw Error(`Unable to find node on an unmounted component.`)}function ne(e){var t=e.alternate;if(!t){if(t=x(e),t===null)throw Error(`Unable to find node on an unmounted component.`);return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return te(i),e;if(a===r)return te(i),t;a=a.sibling}throw Error(`Unable to find node on an unmounted component.`)}if(n.return!==r.return)n=i,r=a;else{for(var o=!1,s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o){for(s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o)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(n.alternate!==r)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(n.tag!==3)throw Error(`Unable to find node on an unmounted component.`);return n.stateNode.current===n?e:t}function re(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=re(e),t!==null)return t;e=e.sibling}return null}function ie(e){return typeof e!=`object`||!e?null:(e=Yf&&e[Yf]||e[`@@iterator`],typeof e==`function`?e:null)}function C(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===Xf?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case Lf:return`Fragment`;case zf:return`Profiler`;case Rf:return`StrictMode`;case Uf:return`Suspense`;case Wf:return`SuspenseList`;case qf:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case If:return`Portal`;case Vf:return e.displayName||`Context`;case Bf:return(e._context.displayName||`Context`)+`.Consumer`;case Hf:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case Gf:return t=e.displayName||null,t===null?C(e.type)||`Memo`:t;case Kf:t=e._payload,e=e._init;try{return C(e(t))}catch{}}return null}function ae(e){return typeof e.tag==`number`?w(e):typeof e.name==`string`?e.name:null}function w(e){var t=e.type;switch(e.tag){case 31:return`Activity`;case 24:return`Cache`;case 9:return(t._context.displayName||`Context`)+`.Consumer`;case 10:return t.displayName||`Context`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 26:case 27:case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return C(t);case 8:return t===Rf?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t;break;case 29:if(t=e._debugInfo,t!=null){for(var n=t.length-1;0<=n;n--)if(typeof t[n].name==`string`)return t[n].name}if(e.return!==null)return w(e.return)}return null}function oe(e){return{current:e}}function T(e,t){0>np?console.error(`Unexpected pop.`):(t!==tp[np]&&console.error(`Unexpected Fiber popped.`),e.current=ep[np],ep[np]=null,tp[np]=null,np--)}function se(e,t,n){np++,ep[np]=e.current,tp[np]=n,e.current=t}function ce(e){return e===null&&console.error(`Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.`),e}function le(e,t){se(ap,t,e),se(ip,e,e),se(rp,null,e);var n=t.nodeType;switch(n){case 9:case 11:n=n===9?`#document`:`#fragment`,t=(t=t.documentElement)&&(t=t.namespaceURI)?Uu(t):iC;break;default:if(n=t.tagName,t=t.namespaceURI)t=Uu(t),t=Wu(t,n);else switch(n){case`svg`:t=aC;break;case`math`:t=oC;break;default:t=iC}}n=n.toLowerCase(),n=Jt(null,n),n={context:t,ancestorInfo:n},T(rp,e),se(rp,n,e)}function ue(e){T(rp,e),T(ip,e),T(ap,e)}function de(){return ce(rp.current)}function fe(e){e.memoizedState!==null&&se(op,e,e);var t=ce(rp.current),n=e.type,r=Wu(t.context,n);n=Jt(t.ancestorInfo,n),r={context:r,ancestorInfo:n},t!==r&&(se(ip,e,e),se(rp,r,e))}function pe(e){ip.current===e&&(T(rp,e),T(ip,e)),op.current===e&&(T(op,e),FC._currentValue=PC)}function me(){}function he(){if(sp===0){cp=console.log,lp=console.info,up=console.warn,dp=console.error,fp=console.group,pp=console.groupCollapsed,mp=console.groupEnd;var e={configurable:!0,enumerable:!0,value:me,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}sp++}function ge(){if(sp--,sp===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Nf({},e,{value:cp}),info:Nf({},e,{value:lp}),warn:Nf({},e,{value:up}),error:Nf({},e,{value:dp}),group:Nf({},e,{value:fp}),groupCollapsed:Nf({},e,{value:pp}),groupEnd:Nf({},e,{value:mp})})}0>sp&&console.error(`disabledDepth fell below zero. This is a bug in React. Please file an issue.`)}function _e(e){var t=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,e=e.stack,Error.prepareStackTrace=t,e.startsWith(`Error: react-stack-top-frame 18`)&&(e=e.slice(29)),t=e.indexOf(` 19`),t!==-1&&(e=e.slice(t+1)),t=e.indexOf(`react_stack_bottom_frame`),t!==-1&&(t=e.lastIndexOf(` 20`,t)),t!==-1)e=e.slice(0,t);else return``;return e}function ve(e){if(hp===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);hp=t&&t[1]||``,gp=-1<e.stack.indexOf(` 21 at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return` 22`+hp+e+gp}function ye(e,t){if(!e||_p)return``;var n=vp.get(e);if(n!==void 0)return n;_p=!0,n=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var r=null;r=L.H,L.H=null,he();try{var i={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};i.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var a=Object.getOwnPropertyDescriptor(i.DetermineComponentFrameRoot,`name`);a&&a.configurable&&Object.defineProperty(i.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var o=i.DetermineComponentFrameRoot(),s=o[0],c=o[1];if(s&&c){var l=s.split(` 23`),u=c.split(` 24`);for(o=a=0;a<l.length&&!l[a].includes(`DetermineComponentFrameRoot`);)a++;for(;o<u.length&&!u[o].includes(`DetermineComponentFrameRoot`);)o++;if(a===l.length||o===u.length)for(a=l.length-1,o=u.length-1;1<=a&&0<=o&&l[a]!==u[o];)o--;for(;1<=a&&0<=o;a--,o--)if(l[a]!==u[o]){if(a!==1||o!==1)do if(a--,o--,0>o||l[a]!==u[o]){var d=` 25`+l[a].replace(` at new `,` at `);return e.displayName&&d.includes(`<anonymous>`)&&(d=d.replace(`<anonymous>`,e.displayName)),typeof e==`function`&&vp.set(e,d),d}while(1<=a&&0<=o);break}}}finally{_p=!1,L.H=r,ge(),Error.prepareStackTrace=n}return l=(l=e?e.displayName||e.name:``)?ve(l):``,typeof e==`function`&&vp.set(e,l),l}function be(e,t){switch(e.tag){case 26:case 27:case 5:return ve(e.type);case 16:return ve(`Lazy`);case 13:return e.child!==t&&t!==null?ve(`Suspense Fallback`):ve(`Suspense`);case 19:return ve(`SuspenseList`);case 0:case 15:return ye(e.type,!1);case 11:return ye(e.type.render,!1);case 1:return ye(e.type,!0);case 31:return ve(`Activity`);default:return``}}function xe(e){try{var t=``,n=null;do{t+=be(e,n);var r=e._debugInfo;if(r)for(var i=r.length-1;0<=i;i--){var a=r[i];if(typeof a.name==`string`){var o=t;a:{var s=a.name,c=a.env,l=a.debugLocation;if(l!=null){var u=_e(l),d=u.lastIndexOf(` 26`),f=d===-1?u:u.slice(d+1);if(f.indexOf(s)!==-1){var p=` 27`+f;break a}}p=ve(s+(c?` [`+c+`]`:``))}t=o+p}}n=e,e=e.return}while(e);return t}catch(e){return` 28Error generating stack: `+e.message+` 29`+e.stack}}function Se(e){return(e=e?e.displayName||e.name:``)?ve(e):``}function Ce(){if(yp===null)return null;var e=yp._debugOwner;return e==null?null:ae(e)}function we(){if(yp===null)return``;var e=yp;try{var t=``;switch(e.tag===6&&(e=e.return),e.tag){case 26:case 27:case 5:t+=ve(e.type);break;case 13:t+=ve(`Suspense`);break;case 19:t+=ve(`SuspenseList`);break;case 31:t+=ve(`Activity`);break;case 30:case 0:case 15:case 1:e._debugOwner||t!==``||(t+=Se(e.type));break;case 11:e._debugOwner||t!==``||(t+=Se(e.type.render))}for(;e;)if(typeof e.tag==`number`){var n=e;e=n._debugOwner;var r=n._debugStack;if(e&&r){var i=_e(r);i!==``&&(t+=` 30`+i)}}else if(e.debugStack!=null){var a=e.debugStack;(e=e.owner)&&a&&(t+=` 31`+_e(a))}else break;var o=t}catch(e){o=` 32Error generating stack: `+e.message+` 33`+e.stack}return o}function Te(e,t,n,r,i,a,o){var s=yp;Ee(e);try{return e!==null&&e._debugTask?e._debugTask.run(t.bind(null,n,r,i,a,o)):t(n,r,i,a,o)}finally{Ee(s)}}function Ee(e){L.getCurrentStack=e===null?null:we,bp=!1,yp=e}function De(e){return typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`}function Oe(e){try{return ke(e),!1}catch{return!0}}function ke(e){return``+e}function Ae(e,t){if(Oe(e))return console.error("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",t,De(e)),ke(e)}function je(e,t){if(Oe(e))return console.error("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",t,De(e)),ke(e)}function Me(e){if(Oe(e))return console.error(`Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.`,De(e)),ke(e)}function Ne(e){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled)return!0;if(!t.supportsFiber)return console.error(`The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools`),!0;try{Fp=t.inject(e),Ip=t}catch(e){console.error(`React instrumentation encountered an error: %o.`,e)}return!!t.checkDCE}function Pe(e){if(typeof Np==`function`&&Pp(e),Ip&&typeof Ip.setStrictMode==`function`)try{Ip.setStrictMode(Fp,e)}catch(e){Lp||(Lp=!0,console.error(`React instrumentation encountered an error: %o`,e))}}function Fe(e){return e>>>=0,e===0?32:31-(Bp(e)/Vp|0)|0}function Ie(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;
33case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return console.error(`Should have found matching lanes. This is a bug in React.`),e}}function Le(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ie(n))):i=Ie(o):i=Ie(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ie(n))):i=Ie(o)):i=Ie(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Re(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function ze(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return console.error(`Should have found matching lanes. This is a bug in React.`),-1}}function Be(){var e=Wp;return Wp<<=1,!(Wp&62914560)&&(Wp=4194304),e}function Ve(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function He(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Ue(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-zp(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&We(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function We(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-zp(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Ge(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-zp(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function Ke(e,t){var n=t&-t;return n=n&42?1:qe(n),(n&(e.suspendedLanes|t))===0?n:0}function qe(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Je(e,t,n){if(Rp)for(e=e.pendingUpdatersLaneMap;0<n;){var r=31-zp(n),i=1<<r;e[r].add(t),n&=~i}}function Ye(e,t){if(Rp)for(var n=e.pendingUpdatersLaneMap,r=e.memoizedUpdaters;0<t;){var i=31-zp(t);e=1<<i,i=n[i],0<i.size&&(i.forEach(function(e){var t=e.alternate;t!==null&&r.has(t)||r.add(e)}),i.clear()),t&=~e}}function Xe(e){return e&=-e,Gp!==0&&Gp<e?Kp!==0&&Kp<e?e&134217727?qp:Jp:Kp:Gp}function Ze(){var e=Qf.p;return e===0?(e=window.event,e===void 0?qp:hf(e.type)):e}function Qe(e,t){var n=Qf.p;try{return Qf.p=e,t()}finally{Qf.p=n}}function $e(e){delete e[Xp],delete e[Zp],delete e[$p],delete e[em],delete e[tm]}function et(e){var t=e[Xp];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Qp]||n[Xp]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=wd(e);e!==null;){if(n=e[Xp])return n;e=wd(e)}return t}e=n,n=e.parentNode}return null}function tt(e){if(e=e[Xp]||e[Qp]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function nt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(`getNodeFromInstance: Invalid argument.`)}function rt(e){var t=e[nm];return t||=e[nm]={hoistableStyles:new Map,hoistableScripts:new Map},t}function it(e){e[rm]=!0}function at(e,t){ot(e,t),ot(e+`Capture`,t)}function ot(e,t){am[e]&&console.error("EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",e),am[e]=t;var n=e.toLowerCase();for(om[n]=e,e===`onDoubleClick`&&(om.ondblclick=e),e=0;e<t.length;e++)im.add(t[e])}function st(e,t){sm[t.type]||t.onChange||t.onInput||t.readOnly||t.disabled||t.value==null||console.error(e===`select`?"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`.":"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."),t.onChange||t.readOnly||t.disabled||t.checked==null||console.error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")}function ct(e){return xp.call(um,e)?!0:xp.call(lm,e)?!1:cm.test(e)?um[e]=!0:(lm[e]=!0,console.error("Invalid attribute name: `%s`",e),!1)}function lt(e,t,n){if(ct(t)){if(!e.hasAttribute(t)){switch(typeof n){case`symbol`:case`object`:return n;case`function`:return n;case`boolean`:if(!1===n)return n}return n===void 0?void 0:null}return e=e.getAttribute(t),e===``&&!0===n||(Ae(n,t),e===``+n?n:e)}}function ut(e,t,n){if(ct(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}Ae(n,t),e.setAttribute(t,``+n)}}function dt(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}Ae(n,t),e.setAttribute(t,``+n)}}function ft(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}Ae(r,n),e.setAttributeNS(t,n,``+r)}}function pt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return Me(e),e;default:return``}}function mt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function ht(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){Me(e),n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){Me(e),n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function gt(e){if(!e._valueTracker){var t=mt(e)?`checked`:`value`;e._valueTracker=ht(e,t,``+e[t])}}function _t(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=mt(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}function vt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function yt(e){return e.replace(dm,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function bt(e,t){t.checked===void 0||t.defaultChecked===void 0||pm||(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`,Ce()||`A component`,t.type),pm=!0),t.value===void 0||t.defaultValue===void 0||fm||(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`,Ce()||`A component`,t.type),fm=!0)}
vendor: 22,818 bytes, lines 33-75
33function xt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?(Ae(o,`type`),e.type=o):e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+pt(t)):e.value!==``+pt(t)&&(e.value=``+pt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Ct(e,o,pt(n)):Ct(e,o,pt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?(Ae(s,`name`),e.name=``+pt(s)):e.removeAttribute(`name`)}function St(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(Ae(a,`type`),e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){gt(e);return}n=n==null?``:``+pt(n),t=t==null?n:``+pt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(Ae(o,`name`),e.name=o),gt(e)}function Ct(e,t,n){t===`number`&&vt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function wt(e,t){t.value??(typeof t.children==`object`&&t.children!==null?jf.Children.forEach(t.children,function(e){e==null||typeof e==`string`||typeof e==`number`||typeof e==`bigint`||hm||(hm=!0,console.error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>."))}):t.dangerouslySetInnerHTML==null||gm||(gm=!0,console.error("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected."))),t.selected==null||mm||(console.error("Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>."),mm=!0)}function Tt(){var e=Ce();return e?` 34 35Check the render method of \``+e+"`.":``}function Et(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+pt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Dt(e,t){for(e=0;e<vm.length;e++){var n=vm[e];if(t[n]!=null){var r=Zf(t[n]);t.multiple&&!r?console.error("The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",n,Tt()):!t.multiple&&r&&console.error("The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",n,Tt())}}t.value===void 0||t.defaultValue===void 0||_m||(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`),_m=!0)}function Ot(e,t){t.value===void 0||t.defaultValue===void 0||ym||(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`,Ce()||`A component`),ym=!0),t.children!=null&&t.value==null&&console.error("Use the `defaultValue` or `value` props instead of setting children on <textarea>.")}function kt(e,t,n){if(t!=null&&(t=``+pt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+pt(n)}function At(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error("If you supply `defaultValue` on a <textarea>, do not pass children.");if(Zf(r)){if(1<r.length)throw Error(`<textarea> can only have at most one child.`);r=r[0]}n=r}n??=``,t=n}n=pt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),gt(e)}function jt(e,t){return e.serverProps===void 0&&e.serverTail.length===0&&e.children.length===1&&3<e.distanceFromLeaf&&e.distanceFromLeaf>15-t?jt(e.children[0],t):e}function Mt(e){return` `+` `.repeat(e)}function Nt(e){return`+ `+` `.repeat(e)}function Pt(e){return`- `+` `.repeat(e)}function Ft(e){switch(e.tag){case 26:case 27:case 5:return e.type;case 16:return`Lazy`;case 31:return`Activity`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 0:case 15:return e=e.type,e.displayName||e.name||null;case 11:return e=e.type.render,e.displayName||e.name||null;case 1:return e=e.type,e.displayName||e.name||null;default:return null}}function It(e,t){return bm.test(e)?(e=JSON.stringify(e),e.length>t-2?8>t?`{"..."}`:`{`+e.slice(0,t-7)+`..."}`:`{`+e+`}`):e.length>t?5>t?`{"..."}`:e.slice(0,t-3)+`...`:e}function Lt(e,t,n){var r=120-2*n;if(t===null)return Nt(n)+It(e,r)+` 36`;if(typeof t==`string`){for(var i=0;i<t.length&&i<e.length&&t.charCodeAt(i)===e.charCodeAt(i);i++);return i>r-8&&10<i&&(e=`...`+e.slice(i-8),t=`...`+t.slice(i-8)),Nt(n)+It(e,r)+` 37`+Pt(n)+It(t,r)+` 38`}return Mt(n)+It(e,r)+` 39`}function Rt(e){return Object.prototype.toString.call(e).replace(/^\[object (.*)\]$/,function(e,t){return t})}function zt(e,t){switch(typeof e){case`string`:return e=JSON.stringify(e),e.length>t?5>t?`"..."`:e.slice(0,t-4)+`..."`:e;case`object`:if(e===null)return`null`;if(Zf(e))return`[...]`;if(e.$$typeof===Ff)return(t=C(e.type))?`<`+t+`>`:`<...>`;var n=Rt(e);if(n===`Object`){for(var r in n=``,t-=2,e)if(e.hasOwnProperty(r)){var i=JSON.stringify(r);if(i!==`"`+r+`"`&&(r=i),t-=r.length-2,i=zt(e[r],15>t?t:15),t-=i.length,0>t){n+=n===``?`...`:`, ...`;break}n+=(n===``?``:`,`)+r+`:`+i}return`{`+n+`}`}return n;case`function`:return(t=e.displayName||e.name)?`function `+t:`function`;default:return String(e)}}function Bt(e,t){return typeof e!=`string`||bm.test(e)?`{`+zt(e,t-2)+`}`:e.length>t-2?5>t?`"..."`:`"`+e.slice(0,t-5)+`..."`:`"`+e+`"`}function Vt(e,t,n){var r=120-n.length-e.length,i=[],a;for(a in t)if(t.hasOwnProperty(a)&&a!==`children`){var o=Bt(t[a],120-n.length-a.length-1);r-=a.length+o.length+2,i.push(a+`=`+o)}return i.length===0?n+`<`+e+`> 40`:0<r?n+`<`+e+` `+i.join(` `)+`> 41`:n+`<`+e+` 42`+n+` `+i.join(` 43`+n+` `)+` 44`+n+`> 45`}function Ht(e,t,n){var r=``,i=Nf({},t),a;for(a in e)if(e.hasOwnProperty(a)){delete i[a];var o=120-2*n-a.length-2,s=zt(e[a],o);t.hasOwnProperty(a)?(o=zt(t[a],o),r+=Nt(n)+a+`: `+s+` 46`,r+=Pt(n)+a+`: `+o+` 47`):r+=Nt(n)+a+`: `+s+` 48`}for(var c in i)i.hasOwnProperty(c)&&(e=zt(i[c],120-2*n-c.length-2),r+=Pt(n)+c+`: `+e+` 49`);return r}function Ut(e,t,n,r){var i=``,a=new Map;for(l in n)n.hasOwnProperty(l)&&a.set(l.toLowerCase(),l);if(a.size===1&&a.has(`children`))i+=Vt(e,t,Mt(r));else{for(var o in t)if(t.hasOwnProperty(o)&&o!==`children`){var s=120-2*(r+1)-o.length-1,c=a.get(o.toLowerCase());if(c!==void 0){a.delete(o.toLowerCase());var l=t[o];c=n[c];var u=Bt(l,s);s=Bt(c,s),typeof l==`object`&&l&&typeof c==`object`&&c&&Rt(l)===`Object`&&Rt(c)===`Object`&&(2<Object.keys(l).length||2<Object.keys(c).length||-1<u.indexOf(`...`)||-1<s.indexOf(`...`))?i+=Mt(r+1)+o+`={{ 50`+Ht(l,c,r+2)+Mt(r+1)+`}} 51`:(i+=Nt(r+1)+o+`=`+u+` 52`,i+=Pt(r+1)+o+`=`+s+` 53`)}else i+=Mt(r+1)+o+`=`+Bt(t[o],s)+` 54`}a.forEach(function(e){if(e!==`children`){var t=120-2*(r+1)-e.length-1;i+=Pt(r+1)+e+`=`+Bt(n[e],t)+` 55`}}),i=i===``?Mt(r)+`<`+e+`> 56`:Mt(r)+`<`+e+` 57`+i+Mt(r)+`> 58`}return e=n.children,t=t.children,typeof e==`string`||typeof e==`number`||typeof e==`bigint`?(a=``,(typeof t==`string`||typeof t==`number`||typeof t==`bigint`)&&(a=``+t),i+=Lt(a,``+e,r+1)):(typeof t==`string`||typeof t==`number`||typeof t==`bigint`)&&(i=e==null?i+Lt(``+t,null,r+1):i+Lt(``+t,void 0,r+1)),i}function Wt(e,t){var n=Ft(e);if(n===null){for(n=``,e=e.child;e;)n+=Wt(e,t),e=e.sibling;return n}return Mt(t)+`<`+n+`> 59`}function Gt(e,t){var n=jt(e,t);if(n!==e&&(e.children.length!==1||e.children[0]!==n))return Mt(t)+`... 60`+Gt(n,t+1);n=``;var r=e.fiber._debugInfo;if(r)for(var i=0;i<r.length;i++){var a=r[i].name;typeof a==`string`&&(n+=Mt(t)+`<`+a+`> 61`,t++)}if(r=``,i=e.fiber.pendingProps,e.fiber.tag===6)r=Lt(i,e.serverProps,t),t++;else if(a=Ft(e.fiber),a!==null)if(e.serverProps===void 0){r=t;var o=120-2*r-a.length-2,s=``;for(l in i)if(i.hasOwnProperty(l)&&l!==`children`){var c=Bt(i[l],15);if(o-=l.length+c.length+2,0>o){s+=` ...`;break}s+=` `+l+`=`+c}r=Mt(r)+`<`+a+s+`> 62`,t++}else e.serverProps===null?(r=Vt(a,i,Nt(t)),t++):typeof e.serverProps==`string`?console.error(`Should not have matched a non HostText fiber to a Text node. This is a bug in React.`):(r=Ut(a,i,e.serverProps,t),t++);var l=``;for(i=e.fiber.child,a=0;i&&a<e.children.length;)o=e.children[a],o.fiber===i?(l+=Gt(o,t),a++):l+=Wt(i,t),i=i.sibling;for(i&&0<e.children.length&&(l+=Mt(t)+`... 63`),i=e.serverTail,e.serverProps===null&&t--,e=0;e<i.length;e++)a=i[e],l=typeof a==`string`?l+(Pt(t)+It(a,120-2*t)+` 64`):l+Vt(a.type,a.props,Pt(t));return n+r+l}function Kt(e){try{return` 65 66`+Gt(e,0)}catch{return``}}function qt(e,t,n){for(var r=t,i=null,a=0;r;)r===e&&(a=0),i={fiber:r,children:i===null?[]:[i],serverProps:r===t?n:r===e?null:void 0,serverTail:[],distanceFromLeaf:a},a++,r=r.return;return i===null?``:Kt(i).replaceAll(/^[+-]/gm,`>`)}function Jt(e,t){var n=Nf({},e||Tm),r={tag:t};return Sm.indexOf(t)!==-1&&(n.aTagInScope=null,n.buttonTagInScope=null,n.nobrTagInScope=null),Cm.indexOf(t)!==-1&&(n.pTagInButtonScope=null),xm.indexOf(t)!==-1&&t!==`address`&&t!==`div`&&t!==`p`&&(n.listItemTagAutoclosing=null,n.dlItemTagAutoclosing=null),n.current=r,t===`form`&&(n.formTag=r),t===`a`&&(n.aTagInScope=r),t===`button`&&(n.buttonTagInScope=r),t===`nobr`&&(n.nobrTagInScope=r),t===`p`&&(n.pTagInButtonScope=r),t===`li`&&(n.listItemTagAutoclosing=r),(t===`dd`||t===`dt`)&&(n.dlItemTagAutoclosing=r),t===`#document`||t===`html`?n.containerTagInScope=null:n.containerTagInScope||=r,e!==null||t!==`#document`&&t!==`html`&&t!==`body`?!0===n.implicitRootScope&&(n.implicitRootScope=!1):n.implicitRootScope=!0,n}function Yt(e,t,n){switch(t){case`select`:return e===`hr`||e===`option`||e===`optgroup`||e===`script`||e===`template`||e===`#text`;case`optgroup`:return e===`option`||e===`#text`;case`option`:return e===`#text`;case`tr`:return e===`th`||e===`td`||e===`style`||e===`script`||e===`template`;case`tbody`:case`thead`:case`tfoot`:return e===`tr`||e===`style`||e===`script`||e===`template`;case`colgroup`:return e===`col`||e===`template`;case`table`:return e===`caption`||e===`colgroup`||e===`tbody`||e===`tfoot`||e===`thead`||e===`style`||e===`script`||e===`template`;case`head`:return e===`base`||e===`basefont`||e===`bgsound`||e===`link`||e===`meta`||e===`title`||e===`noscript`||e===`noframes`||e===`style`||e===`script`||e===`template`;case`html`:if(n)break;return e===`head`||e===`body`||e===`frameset`;case`frameset`:return e===`frame`;case`#document`:if(!n)return e===`html`}switch(e){case`h1`:case`h2`:case`h3`:case`h4`:case`h5`:case`h6`:return t!==`h1`&&t!==`h2`&&t!==`h3`&&t!==`h4`&&t!==`h5`&&t!==`h6`;case`rp`:case`rt`:return wm.indexOf(t)===-1;case`caption`:case`col`:case`colgroup`:case`frameset`:case`frame`:case`tbody`:case`td`:case`tfoot`:case`th`:case`thead`:case`tr`:return t==null;case`head`:return n||t===null;case`html`:return n&&t===`#document`||t===null;case`body`:return n&&(t===`#document`||t===`html`)||t===null}return!0}function Xt(e,t){switch(e){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 t.pTagInButtonScope;case`form`:return t.formTag||t.pTagInButtonScope;case`li`:return t.listItemTagAutoclosing;case`dd`:case`dt`:return t.dlItemTagAutoclosing;case`button`:return t.buttonTagInScope;case`a`:return t.aTagInScope;case`nobr`:return t.nobrTagInScope}return null}function Zt(e,t){for(;e;){switch(e.tag){case 5:case 26:case 27:if(e.type===t)return e}e=e.return}return null}function Qt(e,t){t||=Tm;var n=t.current;if(t=(n=Yt(e,n&&n.tag,t.implicitRootScope)?null:n)?null:Xt(e,t),t=n||t,!t)return!0;var r=t.tag;if(t=String(!!n)+`|`+e+`|`+r,Em[t])return!1;Em[t]=!0;var i=(t=yp)?Zt(t.return,r):null,a=t!==null&&i!==null?qt(i,t,null):``,o=`<`+e+`>`;return n?(n=``,r===`table`&&e===`tr`&&(n+=` 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 67This will cause a hydration error.%s`,o,r,n,a)):console.error(`In HTML, %s cannot be a descendant of <%s>. 68This will cause a hydration error.%s`,o,r,a),t&&(e=t.return,i===null||e===null||i===e&&e._debugOwner===t._debugOwner||Te(i,function(){console.error(`<%s> cannot contain a nested %s. 69See this log for the ancestor stack trace.`,r,o)})),!1}function $t(e,t,n){if(n||Yt(`#text`,t,!1))return!0;if(n=`#text|`+t,Em[n])return!1;Em[n]=!0;var r=(n=yp)?Zt(n,t):null;return n=n!==null&&r!==null?qt(r,n,n.tag===6?null:{children:null}):``,/\S/.test(e)?console.error(`In HTML, text nodes cannot be a child of <%s>. 70This will cause a hydration error.%s`,t,n):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. 71This will cause a hydration error.%s`,t,n),!1}function en(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}function tn(e){return e.replace(Mm,function(e,t){return t.toUpperCase()})}function nn(e,t,n){var r=t.indexOf(`--`)===0;r||(-1<t.indexOf(`-`)?Pm.hasOwnProperty(t)&&Pm[t]||(Pm[t]=!0,console.error(`Unsupported style property %s. Did you mean %s?`,t,tn(t.replace(jm,`ms-`)))):Am.test(t)?Pm.hasOwnProperty(t)&&Pm[t]||(Pm[t]=!0,console.error(`Unsupported vendor-prefixed style property %s. Did you mean %s?`,t,t.charAt(0).toUpperCase()+t.slice(1))):!Nm.test(n)||Fm.hasOwnProperty(n)&&Fm[n]||(Fm[n]=!0,console.error(`Style property values shouldn't contain a semicolon. Try "%s: %s" instead.`,t,n.replace(Nm,``))),typeof n==`number`&&(isNaN(n)?Im||(Im=!0,console.error("`NaN` is an invalid value for the `%s` css style property.",t)):isFinite(n)||Lm||(Lm=!0,console.error("`Infinity` is an invalid value for the `%s` css style property.",t)))),n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Rm.has(t)?t===`float`?e.cssFloat=n:(je(n,t),e[t]=(``+n).trim()):e[t]=n+`px`}function rn(e,t,n){if(t!=null&&typeof t!=`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(t&&Object.freeze(t),e=e.style,n!=null){if(t){var r={};if(n){for(var i in n)if(n.hasOwnProperty(i)&&!t.hasOwnProperty(i))for(var a=Dm[i]||[i],o=0;o<a.length;o++)r[a[o]]=i}for(var s in t)if(t.hasOwnProperty(s)&&(!n||n[s]!==t[s]))for(i=Dm[s]||[s],a=0;a<i.length;a++)r[i[a]]=s;for(var c in s={},t)for(i=Dm[c]||[c],a=0;a<i.length;a++)s[i[a]]=c;for(var l in c={},r)if(i=r[l],(a=s[l])&&i!==a&&(o=i+`,`+a,!c[o])){c[o]=!0,o=console;var u=t[i];o.error.call(o,`%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.`,u==null||typeof u==`boolean`||u===``?`Removing`:`Updating`,i,a)}}for(var d in n)!n.hasOwnProperty(d)||t!=null&&t.hasOwnProperty(d)||(d.indexOf(`--`)===0?e.setProperty(d,``):d===`float`?e.cssFloat=``:e[d]=``);for(var f in t)l=t[f],t.hasOwnProperty(f)&&n[f]!==l&&nn(e,f,l)}else for(r in t)t.hasOwnProperty(r)&&nn(e,r,t[r])}function an(e){if(e.indexOf(`-`)===-1)return!1;switch(e){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 on(e){return Vm.get(e)||e}function sn(e,t){if(xp.call(Wm,t)&&Wm[t])return!0;if(Km.test(t)){if(e=`aria-`+t.slice(4).toLowerCase(),e=Um.hasOwnProperty(e)?e:null,e==null)return console.error("Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",t),Wm[t]=!0;if(t!==e)return console.error("Invalid ARIA attribute `%s`. Did you mean `%s`?",t,e),Wm[t]=!0}if(Gm.test(t)){if(e=t.toLowerCase(),e=Um.hasOwnProperty(e)?e:null,e==null)return Wm[t]=!0,!1;t!==e&&(console.error("Unknown ARIA attribute `%s`. Did you mean `%s`?",t,e),Wm[t]=!0)}return!0}function cn(e,t){var n=[],r;for(r in t)sn(e,r)||n.push(r);t=n.map(function(e){return"`"+e+"`"}).join(`, `),n.length===1?console.error(`Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props`,t,e):1<n.length&&console.error(`Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props`,t,e)}function ln(e,t,n,r){if(xp.call(Jm,t)&&Jm[t])return!0;var i=t.toLowerCase();if(i===`onfocusin`||i===`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.`),Jm[t]=!0;if(typeof n==`function`&&(e===`form`&&t===`action`||e===`input`&&t===`formAction`||e===`button`&&t===`formAction`))return!0;if(r!=null){if(e=r.possibleRegistrationNames,r.registrationNameDependencies.hasOwnProperty(t))return!0;if(r=e.hasOwnProperty(i)?e[i]:null,r!=null)return console.error("Invalid event handler property `%s`. Did you mean `%s`?",t,r),Jm[t]=!0;if(Ym.test(t))return console.error("Unknown event handler property `%s`. It will be ignored.",t),Jm[t]=!0}else if(Ym.test(t))return Xm.test(t)&&console.error("Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.",t),Jm[t]=!0;if(Zm.test(t)||Qm.test(t))return!0;if(i===`innerhtml`)return console.error("Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`."),Jm[t]=!0;if(i===`aria`)return console.error("The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead."),Jm[t]=!0;if(i===`is`&&n!=null&&typeof n!=`string`)return console.error("Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.",typeof n),Jm[t]=!0;if(typeof n==`number`&&isNaN(n))return console.error("Received NaN for the `%s` attribute. If this is expected, cast the value to a string.",t),Jm[t]=!0;if(Hm.hasOwnProperty(i)){if(i=Hm[i],i!==t)return console.error("Invalid DOM property `%s`. Did you mean `%s`?",t,i),Jm[t]=!0}else if(t!==i)return console.error("React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.",t,i),Jm[t]=!0;switch(t){case`dangerouslySetInnerHTML`:case`children`:case`style`:case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:return!0;case`innerText`:case`textContent`:return!0}switch(typeof n){case`boolean`:switch(t){case`autoFocus`:case`checked`:case`multiple`:case`muted`:case`selected`:case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:case`capture`:case`download`:case`inert`:return!0;default:return i=t.toLowerCase().slice(0,5),i===`data-`||i===`aria-`||(n?console.error('Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.',n,t,t,n,t):console.error(`Received \`%s\` for a non-boolean attribute \`%s\`. 72 73If you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}. 74 75If you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.`,n,t,t,n,t,t,t),Jm[t]=!0)}case`function`:case`symbol`:return Jm[t]=!0,!1;case`string`:if(n===`false`||n===`true`){switch(t){case`checked`:case`selected`:case`multiple`:case`muted`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:case`inert`:break;default:return!0}console.error("Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?",n,t,n===`false`?`The browser will interpret it as a truthy value.`:`Although this works, it will not work as expected if you pass the string "false".`,t,n),Jm[t]=!0}}return!0}function un(e,t,n){var r=[],i;for(i in t)ln(e,i,t[i],n)||r.push(i);t=r.map(function(e){return"`"+e+"`"}).join(`, `),r.length===1?console.error(`Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior `,t,e):1<r.length&&console.error(`Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior `,t,e)}function dn(e){return $m.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function fn(){}function pn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}function mn(e){var t=tt(e);if(t&&(e=t.stateNode)){var n=e[Zp]||null;a:switch(e=t.stateNode,t.type){case`input`:if(xt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(Ae(t,`name`),n=n.querySelectorAll(`input[name="`+yt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=r[Zp]||null;
75if(!i)throw Error("ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.");xt(r,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&_t(r)}break a;case`textarea`:kt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Et(e,!!n.multiple,t,!1)}}}function hn(e,t,n){if(rh)return e(t,n);rh=!0;try{return e(t)}finally{if(rh=!1,(th!==null||nh!==null)&&(cl(),th&&(t=th,e=nh,nh=th=null,mn(t),e)))for(t=0;t<e.length;t++)mn(e[t])}}function gn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[Zp]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=e!==`button`&&e!==`input`&&e!==`select`&&e!==`textarea`),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error("Expected `"+t+"` listener to be a function, instead got a value of `"+typeof n+"` type.");return n}function _n(){if(lh)return lh;var e,t=ch,n=t.length,r,i=`value`in sh?sh.value:sh.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return lh=i.slice(e,1<r?1-r:void 0)}function vn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function yn(){return!0}function bn(){return!1}function xn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?yn:bn,this.isPropagationStopped=bn,this}return Nf(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=yn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=yn)},persist:function(){},isPersistent:yn}),t}function Sn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Dh[e])?!!t[e]:!1}function Cn(){return Sn}function wn(e,t){switch(e){case`keyup`:return Ph.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==Fh;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Tn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}function En(e,t){switch(e){case`compositionend`:return Tn(t);case`keypress`:return t.which===Bh?(Hh=!0,Vh):null;case`textInput`:return e=t.data,e===Vh&&Hh?null:e;default:return null}}function Dn(e,t){if(Uh)return e===`compositionend`||!Ih&&wn(e,t)?(e=_n(),lh=ch=sh=null,Uh=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return zh&&t.locale!==`ko`?null:t.data;default:return null}}function On(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Wh[e.type]:t===`textarea`}function kn(e){if(!ih)return!1;e=`on`+e;var t=e in document;return t||=(t=document.createElement(`div`),t.setAttribute(e,`return;`),typeof t[e]==`function`),t}function An(e,t,n,r){th?nh?nh.push(r):nh=[r]:th=r,t=gu(t,`onChange`),0<t.length&&(n=new dh(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}function jn(e){uu(e,0)}function Mn(e){if(_t(nt(e)))return e}function Nn(e,t){if(e===`change`)return t}function Pn(){Gh&&(Gh.detachEvent(`onpropertychange`,Fn),Kh=Gh=null)}function Fn(e){if(e.propertyName===`value`&&Mn(Kh)){var t=[];An(t,Kh,e,pn(e)),hn(jn,t)}}function In(e,t,n){e===`focusin`?(Pn(),Gh=t,Kh=n,Gh.attachEvent(`onpropertychange`,Fn)):e===`focusout`&&Pn()}function Ln(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Mn(Kh)}function Rn(e,t){if(e===`click`)return Mn(t)}function zn(e,t){if(e===`input`||e===`change`)return Mn(t)}function Bn(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}function Vn(e,t){if(Jh(e,t))return!0;
vendor: 4,941 bytes, line 75
75if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!xp.call(t,i)||!Jh(e[i],t[i]))return!1}return!0}function Hn(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Un(e,t){var n=Hn(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Hn(n)}}function Wn(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Wn(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Gn(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=vt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=vt(e.document)}return t}function Kn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function qn(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;$h||Xh==null||Xh!==vt(r)||(r=Xh,`selectionStart`in r&&Kn(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Qh&&Vn(Qh,r)||(Qh=r,r=gu(Zh,`onSelect`),0<r.length&&(t=new dh(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Xh)))}function E(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}function Jn(e){if(tg[e])return tg[e];if(!eg[e])return e;var t=eg[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in ng)return tg[e]=t[n];return e}function Yn(e,t){ug.set(e,t),at(t,[e])}function Xn(e){for(var t=vg,n=0;n<e.length;n++){var r=e[n];if(typeof r==`object`&&r)if(Zf(r)&&r.length===2&&typeof r[0]==`string`){if(t!==vg&&t!==xg)return yg;t=xg}else return yg;else{if(typeof r==`function`||typeof r==`string`&&50<r.length||t!==vg&&t!==bg)return yg;t=bg}}return t}function Zn(e,t,n,r){for(var i in e)xp.call(e,i)&&i[0]!==`_`&&Qn(i,e[i],t,n,r)}function Qn(e,t,n,r,i){switch(typeof t){case`object`:if(t===null){t=`null`;break}if(t.$$typeof===Ff){var a=C(t.type)||`â¦`,o=t.key;t=t.props;var s=Object.keys(t),c=s.length;if(o==null&&c===0){t=`<`+a+` />`;break}if(3>r||c===1&&s[0]===`children`&&o==null){t=`<`+a+` ⦠/>`;break}for(var l in n.push([i+`\xA0\xA0`.repeat(r)+e,`<`+a]),o!==null&&Qn(`key`,o,n,r+1,i),e=!1,t)l===`children`?t.children!=null&&(!Zf(t.children)||0<t.children.length)&&(e=!0):xp.call(t,l)&&l[0]!==`_`&&Qn(l,t[l],n,r+1,i);n.push([``,e?`>â¦</`+a+`>`:`/>`]);return}if(a=Object.prototype.toString.call(t),a=a.slice(8,a.length-1),a===`Array`){if(l=Xn(t),l===bg||l===vg){t=JSON.stringify(t);break}if(l===xg){for(n.push([i+`\xA0\xA0`.repeat(r)+e,``]),e=0;e<t.length;e++)a=t[e],Qn(a[0],a[1],n,r+1,i);return}}if(a===`Promise`){if(t.status===`fulfilled`){if(a=n.length,Qn(e,t.value,n,r,i),n.length>a){n=n[a],n[1]=`Promise<`+(n[1]||`Object`)+`>`;return}}else if(t.status===`rejected`&&(a=n.length,Qn(e,t.reason,n,r,i),n.length>a)){n=n[a],n[1]=`Rejected Promise<`+n[1]+`>`;return}n.push([`\xA0\xA0`.repeat(r)+e,`Promise`]);return}a===`Object`&&(l=Object.getPrototypeOf(t))&&typeof l.constructor==`function`&&(a=l.constructor.name),n.push([i+`\xA0\xA0`.repeat(r)+e,a===`Object`?3>r?``:`â¦`:a]),3>r&&Zn(t,n,r+1,i);return;case`function`:t=t.name===``?`() => {}`:t.name+`() {}`;break;case`string`:t=t===_g?`â¦`:JSON.stringify(t);break;case`undefined`:t=`undefined`;break;case`boolean`:t=t?`true`:`false`;break;default:t=String(t)}n.push([i+`\xA0\xA0`.repeat(r)+e,t])}function $n(e,t,n,r){var i=!0;for(o in e)o in t||(n.push([Sg+`\xA0\xA0`.repeat(r)+o,`â¦`]),i=!1);for(var a in t)if(a in e){var o=e[a],s=t[a];if(o!==s){if(r===0&&a===`children`)i=`\xA0\xA0`.repeat(r)+a,n.push([Sg+i,`â¦`],[Cg+i,`â¦`]);else{if(!(3<=r)){if(typeof o==`object`&&typeof s==`object`&&o!==null&&s!==null&&o.$$typeof===s.$$typeof)if(s.$$typeof===Ff){if(o.type===s.type&&o.key===s.key){o=C(s.type)||`â¦`,i=`\xA0\xA0`.repeat(r)+a,o=`<`+o+` ⦠/>`,n.push([Sg+i,o],[Cg+i,o]),i=!1;continue}}else{var c=Object.prototype.toString.call(o),l=Object.prototype.toString.call(s);if(c===l&&(l===`[object Object]`||l===`[object Array]`)){c=[wg+`\xA0\xA0`.repeat(r)+a,l===`[object Array]`?`Array`:``],n.push(c),l=n.length,$n(o,s,n,r+1)?l===n.length&&(c[1]=`Referentially unequal but deeply equal objects. Consider memoization.`):i=!1;continue}}else if(typeof o==`function`&&typeof s==`function`&&o.name===s.name&&o.length===s.length&&(c=Function.prototype.toString.call(o),l=Function.prototype.toString.call(s),c===l)){o=s.name===``?`() => {}
75`:s.name+`() {}`,n.push([wg+`\xA0\xA0`.repeat(r)+a,o+` Referentially unequal function closure. Consider memoization.`]);continue}}Qn(a,o,n,r,Sg),Qn(a,s,n,r,Cg)}i=!1}}else n.push([Cg+`\xA0\xA0`.repeat(r)+a,`â¦`]),i=!1;return i}function er(e){Og=e&63?`Blocking`:e&64?`Gesture`:e&4194176?`Transition`:e&62914560?`Suspense`:e&2080374784?`Idle`:`Other`}function tr(e,t,n,r){Tg&&(jg.start=t,jg.end=n,Ag.color=`warning`,Ag.tooltipText=r,Ag.properties=null,(e=e._debugTask)?e.run(performance.measure.bind(performance,r,jg)):performance.measure(r,jg))}function nr(e,t,n){tr(e,t,n,`Reconnect`)}function rr(e,t,n,r,i){var a=w(e);if(a!==null&&Tg){var o=e.alternate,s=e.actualDuration;if(o===null||o.child!==e.child)for(var c=e.child;c!==null;c=c.sibling)s-=c.actualDuration;r=.5>s?r?`tertiary-light`:`primary-light`:10>s?r?`tertiary`:`primary`:100>s?r?`tertiary-dark`:`primary-dark`:`error`;var l=e.memoizedProps;s=e._debugTask,l!==null&&o!==null&&o.memoizedProps!==l?(c=[Mg],l=$n(o.memoizedProps,l,c,0),1<c.length&&(l&&!kg&&(o.lanes&i)===0&&100<e.actualDuration?(kg=!0,c[0]=Pg,Ag.color=`warning`,Ag.tooltipText=Ng):(Ag.color=r,Ag.tooltipText=a),Ag.properties=c,jg.start=t,jg.end=n,s==null?performance.measure(`â`+a,jg):s.run(performance.measure.bind(performance,`â`+a,jg)))):s==null?console.timeStamp(a,t,n,Eg,void 0,r):s.run(console.timeStamp.bind(console,a,t,n,Eg,void 0,r))}}function ir(e,t,n,r){if(Tg){var i=w(e);if(i!==null){for(var a=null,o=[],s=0;s<r.length;s++){var c=r[s];a==null&&c.source!==null&&(a=c.source._debugTask),c=c.value,o.push([`Error`,typeof c==`object`&&c&&typeof c.message==`string`?String(c.message):String(c)])}e.key!==null&&Qn(`key`,e.key,o,0,``),e.memoizedProps!==null&&Zn(e.memoizedProps,o,0,``),a??=e._debugTask,e={start:t,end:n,detail:{devtools:{color:`error`,track:Eg,tooltipText:e.tag===13?`Hydration failed`:`Error boundary caught an error`,properties:o}}},a?a.run(performance.measure.bind(performance,`â`+i,e)):performance.measure(`â`+i,e)}}}function ar(e,t,n,r,i){if(i!==null){if(Tg){var a=w(e);if(a!==null){r=[];for(var o=0;o<i.length;o++){var s=i[o].value;r.push([`Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}e.key!==null&&Qn(`key`,e.key,r,0,``),e.memoizedProps!==null&&Zn(e.memoizedProps,r,0,``),t={start:t,end:n,detail:{devtools:{color:`error`,track:Eg,tooltipText:`A lifecycle or effect errored`,properties:r}}},(e=e._debugTask)?e.run(performance.measure.bind(performance,`â`+a,t)):performance.measure(`â`+a,t)}}}else a=w(e),a!==null&&Tg&&(i=1>r?`secondary-light`:100>r?`secondary`:500>r?`secondary-dark`:`error`,(e=e._debugTask)?e.run(console.timeStamp.bind(console,a,t,n,Eg,void 0,i)):console.timeStamp(a,t,n,Eg,void 0,i))}function or(e,t,n,r){if(Tg&&!(t<=e)){var i=(n&738197653)===n?`tertiary-dark`:`primary-dark`;n=(n&536870912)===n?`Prepared`:(n&201326741)===n?`Hydrated`:`Render`,r?r.run(console.timeStamp.bind(console,n,e,t,Og,Dg,i)):console.timeStamp(n,e,t,Og,Dg,i)}}function sr(e,t,n,r){!Tg||t<=e||(n=(n&738197653)===n?`tertiary-dark`:`primary-dark`,r?r.run(console.timeStamp.bind(console,`Prewarm`,e,t,Og,Dg,n)):console.timeStamp(`Prewarm`,e,t,Og,Dg,n))}function cr(e,t,n,r){!Tg||t<=e||(n=(n&738197653)===n?`tertiary-dark`:`primary-dark`,r?r.run(console.timeStamp.bind(console,`Suspended`,e,t,Og,Dg,n)):console.timeStamp(`Suspended`,e,t,Og,Dg,n))}function lr(e,t,n,r,i,a){if(Tg&&!(t<=e)){n=[];for(var o=0;o<r.length;o++){var s=r[o].value;n.push([`Recoverable Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}e={start:e,end:t,detail:{devtools:{color:`primary-dark`,track:Og,trackGroup:Dg,tooltipText:i?`Hydration Failed`:`Recovered after Error`,properties:n}}},a?a.run(performance.measure.bind(performance,`Recovered`,e)):performance.measure(`Recovered`,e)}}function ur(e,t,n,r){!Tg||t<=e||(r?r.run(console.timeStamp.bind(console,`Errored`,e,t,Og,Dg,`error`)):console.timeStamp(`Errored`,e,t,Og,Dg,`error`))}function dr(e,t,n,r){!Tg||t<=e||(r?r.run(console.timeStamp.bind(console,n,e,t,Og,Dg,`secondary-light`)):console.timeStamp(n,e,t,Og,Dg,`secondary-light`))}function fr(e,t,n,r,i){if(Tg&&!(t<=e)){for(var a=[],o=0;o<n.length;o++){var s=n[o].value;a.push([`Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}
vendor: 10,515 bytes, lines 75-87
75e={start:e,end:t,detail:{devtools:{color:`error`,track:Og,trackGroup:Dg,tooltipText:r?`Remaining Effects Errored`:`Commit Errored`,properties:a}}},i?i.run(performance.measure.bind(performance,`Errored`,e)):performance.measure(`Errored`,e)}}function pr(e,t,n){!Tg||t<=e||(n?n.run(console.timeStamp.bind(console,`Animating`,e,t,Og,Dg,`secondary-dark`)):console.timeStamp(`Animating`,e,t,Og,Dg,`secondary-dark`))}function mr(){for(var e=Rg,t=zg=Rg=0;t<e;){var n=Lg[t];Lg[t++]=null;var r=Lg[t];Lg[t++]=null;var i=Lg[t];Lg[t++]=null;var a=Lg[t];if(Lg[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&vr(n,i,a)}}function hr(e,t,n,r){Lg[Rg++]=e,Lg[Rg++]=t,Lg[Rg++]=n,Lg[Rg++]=r,zg|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function gr(e,t,n,r){return hr(e,t,n,r),yr(e)}function _r(e,t){return hr(e,null,null,t),yr(e)}function vr(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&Fg||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-zp(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function yr(e){if(sS>oS)throw fS=sS=0,pS=cS=null,Error(`Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.`);fS>dS&&(fS=0,pS=null,console.error(`Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render.`)),e.alternate===null&&e.flags&4098&&Kl(e);for(var t=e,n=t.return;n!==null;)t.alternate===null&&t.flags&4098&&Kl(e),t=n,n=t.return;return t.tag===3?t.stateNode:null}function br(e){if(Vg===null)return e;var t=Vg(e);return t===void 0?e:t.current}function xr(e){if(Vg===null)return e;var t=Vg(e);return t===void 0?e!=null&&typeof e.render==`function`&&(t=br(e.render),e.render!==t)?(t={$$typeof:Hf,render:t},e.displayName!==void 0&&(t.displayName=e.displayName),t):e:t.current}function Sr(e,t){if(Vg===null)return!1;var n=e.elementType;t=t.type;var r=!1,i=typeof t==`object`&&t?t.$$typeof:null;switch(e.tag){case 1:typeof t==`function`&&(r=!0);break;case 0:(typeof t==`function`||i===Kf)&&(r=!0);break;case 11:(i===Hf||i===Kf)&&(r=!0);break;case 14:case 15:(i===Gf||i===Kf)&&(r=!0);break;default:return!1}return!!(r&&(e=Vg(n),e!==void 0&&e===Vg(t)))}function Cr(e){Vg!==null&&typeof WeakSet==`function`&&(Hg===null&&(Hg=new WeakSet),Hg.add(e))}function wr(e,t,n){do{var r=e,i=r.alternate,a=r.child,o=r.sibling,s=r.tag;r=r.type;var c=null;switch(s){case 0:case 15:case 1:c=r;break;case 11:c=r.render}if(Vg===null)throw Error(`Expected resolveFamily to be set during hot reload.`);var l=!1;if(r=!1,c!==null&&(c=Vg(c),c!==void 0&&(n.has(c)?r=!0:t.has(c)&&(s===1?r=!0:l=!0))),Hg!==null&&(Hg.has(e)||i!==null&&Hg.has(i))&&(r=!0),r&&(e._debugNeedsRemount=!0),(r||l)&&(i=_r(e,2),i!==null&&rl(i,e,2)),a===null||r||wr(a,t,n),o===null)break;e=o}while(1)}function D(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null,this.actualDuration=-0,this.actualStartTime=-1.1,this.treeBaseDuration=this.selfBaseDuration=-0,this._debugTask=this._debugStack=this._debugOwner=this._debugInfo=null,this._debugNeedsRemount=!1,this._debugHookTypes=null,Yg||typeof Object.preventExtensions!=`function`||Object.preventExtensions(this)}function Tr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Er(e,t){var n=e.alternate;switch(n===null?(n=g(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n._debugOwner=e._debugOwner,n._debugStack=e._debugStack,n._debugTask=e._debugTask,n._debugHookTypes=e._debugHookTypes,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null,n.actualDuration=-0,n.actualStartTime=-1.1),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext,_debugThenableState:t._debugThenableState},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n.selfBaseDuration=e.selfBaseDuration,n.treeBaseDuration=e.treeBaseDuration,n._debugInfo=e._debugInfo,n._debugNeedsRemount=e._debugNeedsRemount,n.tag){case 0:case 15:n.type=br(e.type);break;case 1:n.type=br(e.type);break;case 11:n.type=xr(e.type)}return n}function Dr(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null,e.selfBaseDuration=0,e.treeBaseDuration=0):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext,_debugThenableState:t._debugThenableState},e.selfBaseDuration=n.selfBaseDuration,e.treeBaseDuration=n.treeBaseDuration),e}function Or(e,t,n,r,i,a){var o=0,s=e;if(typeof e==`function`)Tr(e)&&(o=1),s=br(s);else if(typeof e==`string`)o=de(),o=qd(e,n,o)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case qf:return t=g(31,n,t,i),t.elementType=qf,t.lanes=a,t;case Lf:return Ar(n.children,i,a,t);case Rf:o=8,i|=Kg,i|=qg;break;case zf:return e=n,r=i,typeof e.id!=`string`&&console.error('Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',typeof e.id),t=g(12,e,t,r|Gg),t.elementType=zf,t.lanes=a,t.stateNode={effectDuration:0,passiveEffectDuration:0},t;case Uf:return t=g(13,n,t,i),t.elementType=Uf,t.lanes=a,t;case Wf:return t=g(19,n,t,i),t.elementType=Wf,t.lanes=a,t;default:if(typeof e==`object`&&e)switch(e.$$typeof){case Vf:o=10;break a;case Bf:o=9;break a;case Hf:o=11,s=xr(s);break a;case Gf:o=14;break a;case Kf:o=16,s=null;break a}s=``,(e===void 0||typeof e==`object`&&e&&Object.keys(e).length===0)&&(s+=` You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.`),e===null?n=`null`:Zf(e)?n=`array`:e!==void 0&&e.$$typeof===Ff?(n=`<`+(C(e.type)||`Unknown`)+` />`,s=` Did you accidentally export a JSX literal instead of a component?`):n=typeof e,(o=r?ae(r):null)&&(s+=` 76 77Check the render method of \``+o+"`."),o=29,n=Error(`Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: `+(n+`.`+s)),s=null}return t=g(o,n,t,i),t.elementType=e,t.type=s,t.lanes=a,t._debugOwner=r,t}function kr(e,t,n){return t=Or(e.type,e.key,e.props,e._owner,t,n),t._debugOwner=e._owner,t._debugStack=e._debugStack,t._debugTask=e._debugTask,t}function Ar(e,t,n,r){return e=g(7,e,r,t),e.lanes=n,e}function jr(e,t,n){return e=g(6,e,null,t),e.lanes=n,e}function Mr(e){var t=g(18,null,null,Ug);return t.stateNode=e,t}function Nr(e,t,n){return t=g(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Pr(e,t){if(typeof e==`object`&&e){var n=Xg.get(e);return n===void 0?(t={value:e,source:t,stack:xe(t)},Xg.set(e,t),t):n}return{value:e,source:t,stack:xe(t)}}function Fr(e,t){Vr(),Zg[Qg++]=e_,Zg[Qg++]=$g,$g=e,e_=t}function Ir(e,t,n){Vr(),t_[n_++]=i_,t_[n_++]=a_,t_[n_++]=r_,r_=e;var r=i_;e=a_;var i=32-zp(r)-1;r&=~(1<<i),n+=1;var a=32-zp(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,i_=1<<32-zp(t)+i|n<<i|r,a_=a+e}else i_=1<<a|n<<i|r,a_=e}function Lr(e){Vr(),e.return!==null&&(Fr(e,1),Ir(e,1,0))}function Rr(e){for(;e===$g;)$g=Zg[--Qg],Zg[Qg]=null,e_=Zg[--Qg],Zg[Qg]=null;for(;e===r_;)r_=t_[--n_],t_[n_]=null,a_=t_[--n_],t_[n_]=null,i_=t_[--n_],t_[n_]=null}function zr(){return Vr(),r_===null?null:{id:i_,overflow:a_}}function Br(e,t){Vr(),t_[n_++]=i_,t_[n_++]=a_,t_[n_++]=r_,i_=t.id,a_=t.overflow,r_=e}function Vr(){c_||console.error(`Expected to be hydrating. This is a bug in React. Please file an issue.`)}function Hr(e,t){if(e.return===null){if(u_===null)u_={fiber:e,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:t};else{if(u_.fiber!==e)throw Error(`Saw multiple hydration diff roots in a pass. This is a bug in React.`);u_.distanceFromLeaf>t&&(u_.distanceFromLeaf=t)}return u_}var n=Hr(e.return,t+1).children;return 0<n.length&&n[n.length-1].fiber===e?(n=n[n.length-1],n.distanceFromLeaf>t&&(n.distanceFromLeaf=t),n):(t={fiber:e,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:t},n.push(t),t)}function Ur(){c_&&console.error(`We should not be hydrating here. This is a bug in React. Please file a bug.`)}function Wr(e,t){l_||(e=Hr(e,0),e.serverProps=null,t!==null&&(t=xd(t),e.serverTail.push(t)))}function Gr(e){var t=1<arguments.length&&arguments[1]!==void 0&&arguments[1],n=``,r=u_;throw r!==null&&(u_=null,n=Kt(r)),Zr(Pr(Error(`Hydration failed because the server rendered `+(t?`text`:`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: 78 79- A server/client branch \`if (typeof window !== 'undefined')\`. 80- Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called. 81- Date formatting in a user's locale which doesn't match the server. 82- External changing data without sending a snapshot of it along with the HTML. 83- Invalid HTML tag nesting. 84 85It can also happen if the client has a browser extension installed which messes with the HTML before React loaded. 86 87https://react.dev/link/hydration-mismatch`+n),e)),p_}function Kr(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[Xp]=e,t[Zp]=r,yu(n,r),n){case`dialog`:du(`cancel`,t),du(`close`,t);break;case`iframe`:case`object`:case`embed`:du(`load`,t);break;case`video`:case`audio`:for(n=0;n<DS.length;n++)du(DS[n],t);break;case`source`:du(`error`,t);break;
87case`img`:case`image`:case`link`:du(`error`,t),du(`load`,t);break;case`details`:du(`toggle`,t);break;case`input`:st(`input`,r),du(`invalid`,t),bt(t,r),St(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`option`:wt(t,r);break;case`select`:st(`select`,r),du(`invalid`,t),Dt(t,r);break;case`textarea`:st(`textarea`,r),du(`invalid`,t),Ot(t,r),At(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||Tu(t.textContent,n)?(r.popover!=null&&(du(`beforetoggle`,t),du(`toggle`,t)),r.onScroll!=null&&du(`scroll`,t),r.onScrollEnd!=null&&du(`scrollend`,t),r.onClick!=null&&(t.onclick=fn),t=!0):t=!1,t||Gr(e,!0)}function qr(e){for(o_=e.return;o_;)switch(o_.tag){case 5:case 31:case 13:f_=!1;return;case 27:case 3:f_=!0;return;default:o_=o_.return}}function Jr(e){if(e!==o_)return!1;if(!c_)return qr(e),c_=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Gu(e.type,e.memoizedProps)),n=!n),n&&s_){for(n=s_;n;){var r=Hr(e,0),i=xd(n);r.serverTail.push(i),n=i.type===`Suspense`?Cd(n):bd(n.nextSibling)}Gr(e)}if(qr(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);s_=Cd(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);s_=Cd(e)}else t===27?(t=s_,nd(e.type)?(e=_C,_C=null,s_=e):s_=t):s_=o_?bd(e.stateNode.nextSibling):null;return!0}function Yr(){s_=o_=null,l_=c_=!1}function Xr(){var e=d_;return e!==null&&(kx===null?kx=e:kx.push.apply(kx,e),d_=null),e}function Zr(e){d_===null?d_=[e]:d_.push(e)}function Qr(){var e=u_;if(e!==null){u_=null;for(var t=Kt(e);0<e.children.length;)e=e.children[0];Te(e.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: 88 89- A server/client branch \`if (typeof window !== 'undefined')\`. 90- Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called. 91- Date formatting in a user's locale which doesn't match the server. 92- External changing data without sending a snapshot of it along with the HTML. 93- Invalid HTML tag nesting. 94 95It can also happen if the client has a browser extension installed which messes with the HTML before React loaded. 96 97%s%s`,`https://react.dev/link/hydration-mismatch`,t)})}}function $r(){v_=__=null,y_=!1}function ei(e,t,n){se(m_,t._currentValue,e),t._currentValue=n,se(h_,t._currentRenderer,e),t._currentRenderer!==void 0&&t._currentRenderer!==null&&t._currentRenderer!==g_&&console.error(`Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.`),t._currentRenderer=g_}function ti(e,t){e._currentValue=m_.current;var n=h_.current;T(h_,t),e._currentRenderer=n,T(m_,t)}function ni(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}e!==n&&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 ri(e,t,n,r){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var a=i.dependencies;if(a!==null){var o=i.child;a=a.firstContext;a:for(;a!==null;){var s=a;a=i;for(var c=0;c<t.length;c++)if(s.context===t[c]){a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),ni(a.return,n,e),r||(o=null);break a}a=s.next}}else if(i.tag===18){if(o=i.return,o===null)throw Error(`We just came from a parent so we must have had a parent. This is a bug in React.`);o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),ni(o,n,e),o=null}else o=i.child;if(o!==null)o.return=i;else for(o=i;o!==null;){if(o===e){o=null;break}if(i=o.sibling,i!==null){i.return=o.return,o=i;break}o=o.return}i=o}}function ii(e,t,n,r){e=null;for(var i=t,a=!1;i!==null;){if(!a){if(i.flags&524288)a=!0;else if(i.flags&262144)break}if(i.tag===10){var o=i.alternate;if(o===null)throw Error(`Should have a current fiber. This is a bug in React.`);if(o=o.memoizedProps,o!==null){var s=i.type;Jh(i.pendingProps.value,o.value)||(e===null?e=[s]:e.push(s))}}else if(i===op.current){if(o=i.alternate,o===null)throw Error(`Should have a current fiber. This is a bug in React.`);o.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e===null?e=[FC]:e.push(FC))}i=i.return}e!==null&&ri(t,e,n,r),t.flags|=262144}function ai(e){for(e=e.firstContext;e!==null;){if(!Jh(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}
vendor: 4,766 bytes, line 97
97function oi(e){__=e,v_=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function si(e){return y_&&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().`),li(__,e)}function ci(e,t){return __===null&&oi(e),li(e,t)}function li(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},v_===null){if(e===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().`);v_=t,e.dependencies={lanes:0,firstContext:t,_debugThenableState:null},e.flags|=524288}else v_=v_.next=t;return n}function ui(){return{controller:new b_,data:new Map,refCount:0}}function di(e){e.controller.signal.aborted&&console.warn(`A cache instance was retained after it was already freed. This likely indicates a bug in React.`),e.refCount++}function fi(e){e.refCount--,0>e.refCount&&console.warn(`A cache instance was released after it was already freed. This likely indicates a bug in React.`),e.refCount===0&&x_(S_,function(){e.controller.abort()})}function pi(e,t,n){e&127?0>B_&&(B_=w_(),V_=T_(t),U_=t,n!=null&&(W_=w(n)),(nx&(qb|Jb))!==Kb&&(R_=!0,H_=E_),e=Ju(),t=qu(),e!==q_||t!==K_?q_=-1.1:t!==null&&(H_=E_),G_=e,K_=t):e&4194048&&0>Z_&&(Z_=w_(),$_=T_(t),ev=t,n!=null&&(tv=w(n)),0>X_)&&(e=Ju(),t=qu(),(e!==iv||t!==rv)&&(iv=-1.1),nv=e,rv=t)}function mi(e){if(0>B_){B_=w_(),V_=e._debugTask==null?null:e._debugTask,(nx&(qb|Jb))!==Kb&&(H_=E_);var t=Ju(),n=qu();t!==q_||n!==K_?q_=-1.1:n!==null&&(H_=E_),G_=t,K_=n}0>Z_&&(Z_=w_(),$_=e._debugTask==null?null:e._debugTask,0>X_)&&(e=Ju(),t=qu(),(e!==iv||t!==rv)&&(iv=-1.1),nv=e,rv=t)}function hi(){var e=N_;return N_=0,e}function gi(e){var t=N_;return N_=e,t}function _i(e){var t=N_;return N_+=e,t}function vi(){I_=F_=-1.1}function yi(){var e=F_;return F_=-1.1,e}function bi(e){0<=e&&(F_=e)}function xi(){var e=P_;return P_=-0,e}function Si(e){0<=e&&(P_=e)}function Ci(){var e=L_;return L_=null,e}function wi(){var e=R_;return R_=!1,e}function Ti(e){M_=w_(),0>e.actualStartTime&&(e.actualStartTime=M_)}function Ei(e){if(0<=M_){var t=w_()-M_;e.actualDuration+=t,e.selfBaseDuration=t,M_=-1}}function Di(e){if(0<=M_){var t=w_()-M_;e.actualDuration+=t,M_=-1}}function Oi(){if(0<=M_){var e=w_(),t=e-M_;M_=-1,N_+=t,P_+=t,I_=e}}function ki(e){L_===null&&(L_=[]),L_.push(e),j_===null&&(j_=[]),j_.push(e)}function Ai(){M_=w_(),0>F_&&(F_=M_)}function ji(e){for(var t=e.child;t;)e.actualDuration+=t.actualDuration,t=t.sibling}function Mi(e,t){if(mv===null){var n=mv=[];hv=0,gv=au(),_v={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return hv++,t.then(Ni,Ni),t}function Ni(){if(--hv===0&&(-1<Z_||(X_=-1.1),mv!==null)){_v!==null&&(_v.status=`fulfilled`);var e=mv;mv=null,gv=0,_v=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Pi(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}function Fi(){var e=yv.current;return e===null?rx.pooledCache:e}function Ii(e,t){t===null?se(yv,yv.current,e):se(yv,t.pool,e)}function Li(){var e=Fi();return e===null?null:{parent:C_._currentValue,pool:e}}function Ri(){return{didWarnAboutUncachedPromise:!1,thenables:[]}}function zi(e){return e=e.status,e===`fulfilled`||e===`rejected`}function Bi(e,t,n){L.actQueue!==null&&(L.didUsePromise=!0);var r=e.thenables;if(n=r[n],n===void 0?r.push(t):n!==t&&(e.didWarnAboutUncachedPromise||(e.didWarnAboutUncachedPromise=!0,console.error(`A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework.`)),t.then(fn,fn),t=n),t._debugInfo===void 0){e=performance.now(),r=t.displayName;var i={name:typeof r==`string`?r:`Promise`,start:e,end:e,value:t};t._debugInfo=[{awaited:i}],t.status!==`fulfilled`&&t.status!==`rejected`&&(e=function(){i.end=performance.now()},t.then(e,e))}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Ui(e),e;default:if(typeof t.status==`string`)t.then(fn,fn);else{if(e=rx,e!==null&&100<e.shellSuspendCounter)throw Error("An unknown Component 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.");
97e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Ui(e),e}throw Qv=t,$v=!0,Jv}}function Vi(e){try{return qv(e)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Qv=e,$v=!0,Jv):e}}function Hi(){if(Qv===null)throw Error(`Expected a suspended thenable. This is a bug in React. Please file an issue.`);var e=Qv;return Qv=null,$v=!1,e}function Ui(e){if(e===Jv||e===Xv)throw Error("Hooks are not supported inside an async component. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.")}function Wi(e){var t=ny;return e!=null&&(ny=t===null?e:t.concat(e)),t}function Gi(){var e=ny;if(e!=null){for(var t=e.length-1;0<=t;t--)if(e[t].name!=null){var n=e[t].debugTask;if(n!=null)return n}}return null}function Ki(e,t,n){for(var r=Object.keys(e.props),i=0;i<r.length;i++){var a=r[i];if(a!==`children`&&a!==`key`){t===null&&(t=kr(e,n.mode,0),t._debugInfo=ny,t.return=n),Te(t,function(e){console.error("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",e)},a);break}}}function qi(e){var t=ty;return ty+=1,ey===null&&(ey=Ri()),Bi(ey,e,t)}function Ji(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Yi(e,t){throw t.$$typeof===Pf?Error(`A React Element from an older version of React was rendered. This is not supported. It can happen if: 98- Multiple copies of the "react" package is used. 99- A library pre-bundled an old copy of "react" or "react/jsx-runtime". 100- A compiler tries to "inline" JSX instead of using the runtime.`):(e=Object.prototype.toString.call(t),Error(`Objects are not valid as a React child (found: `+(e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)+`). If you meant to render a collection of children, use an array instead.`))}function Xi(e,t){var n=Gi();n===null?Yi(e,t):n.run(Yi.bind(null,e,t))}function Zi(e,t){var n=w(e)||`Component`;oy[n]||(oy[n]=!0,t=t.displayName||t.name||`Component`,e.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. 101 root.render(%s)`,t,t,t):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. 102 <%s>{%s}</%s>`,t,t,n,t,n))}function Qi(e,t){var n=Gi();n===null?Zi(e,t):n.run(Zi.bind(null,e,t))}function $i(e,t){var n=w(e)||`Component`;sy[n]||(sy[n]=!0,t=String(t),e.tag===3?console.error(`Symbols are not valid as a React child. 103 root.render(%s)`,t):console.error(`Symbols are not valid as a React child. 104 <%s>%s</%s>`,n,t,n))}function ea(e,t){var n=Gi();n===null?$i(e,t):n.run($i.bind(null,e,t))}function ta(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function i(e,t){return e=Er(e,t),e.index=0,e.sibling=null,e}function a(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function o(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function s(e,t,n,r){return t===null||t.tag!==6?(t=jr(n,e.mode,r),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=ny,t):(t=i(t,n),t.return=e,t._debugInfo=ny,t)}function c(e,t,n,r){var a=n.type;return a===Lf?(t=u(e,t,n.props.children,r,n.key),Ki(n,t,e),t):t!==null&&(t.elementType===a||Sr(t,n)||typeof a==`object`&&a&&a.$$typeof===Kf&&Vi(a)===t.type)?(t=i(t,n.props),Ji(t,n),t.return=e,t._debugOwner=n._owner,t._debugInfo=ny,t):(t=kr(n,e.mode,r),Ji(t,n),t.return=e,t._debugInfo=ny,t)}function l(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=Nr(n,e.mode,r),t.return=e,t._debugInfo=ny,t):(t=i(t,n.children||[]),t.return=e,t._debugInfo=ny,t)}function u(e,t,n,r,a){return t===null||t.tag!==7?(t=Ar(n,e.mode,r,a),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=ny,t):(t=i(t,n),t.return=e,t._debugInfo=ny,t)}function d(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=jr(``+t,e.mode,n),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=ny,t;if(typeof t==`object`&&t){switch(t.$$typeof){case Ff:return n=kr(t,e.mode,n),Ji(n,t),n.return=e,e=Wi(t._debugInfo),n._debugInfo=ny,ny=e,n;case If:return t=Nr(t,e.mode,n),t.return=e,t._debugInfo=ny,t;
104case Kf:var r=Wi(t._debugInfo);return t=Vi(t),e=d(e,t,n),ny=r,e}if(Zf(t)||ie(t))return n=Ar(t,e.mode,n,null),n.return=e,n._debugOwner=e,n._debugTask=e._debugTask,e=Wi(t._debugInfo),n._debugInfo=ny,ny=e,n;if(typeof t.then==`function`)return r=Wi(t._debugInfo),e=d(e,qi(t),n),ny=r,e;if(t.$$typeof===Vf)return d(e,ci(e,t),n);Xi(e,t)}return typeof t==`function`&&Qi(e,t),typeof t==`symbol`&&ea(e,t),null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?s(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case Ff:return n.key===i?(i=Wi(n._debugInfo),e=c(e,t,n,r),ny=i,e):null;case If:return n.key===i?l(e,t,n,r):null;case Kf:return i=Wi(n._debugInfo),n=Vi(n),e=p(e,t,n,r),ny=i,e}if(Zf(n)||ie(n))return i===null?(i=Wi(n._debugInfo),e=u(e,t,n,r,null),ny=i,e):null;if(typeof n.then==`function`)return i=Wi(n._debugInfo),e=p(e,t,qi(n),r),ny=i,e;if(n.$$typeof===Vf)return p(e,t,ci(e,n),r);Xi(e,n)}return typeof n==`function`&&Qi(e,n),typeof n==`symbol`&&ea(e,n),null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,s(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case Ff:return n=e.get(r.key===null?n:r.key)||null,e=Wi(r._debugInfo),t=c(t,n,r,i),ny=e,t;case If:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case Kf:var a=Wi(r._debugInfo);return r=Vi(r),t=m(e,t,n,r,i),ny=a,t}if(Zf(r)||ie(r))return n=e.get(n)||null,e=Wi(r._debugInfo),t=u(t,n,r,i,null),ny=e,t;if(typeof r.then==`function`)return a=Wi(r._debugInfo),t=m(e,t,n,qi(r),i),ny=a,t;if(r.$$typeof===Vf)return m(e,t,n,ci(t,r),i);Xi(t,r)}return typeof r==`function`&&Qi(t,r),typeof r==`symbol`&&ea(t,r),null}function h(e,t,n,r){if(typeof n!=`object`||!n)return r;switch(n.$$typeof){case Ff:case If:f(e,t,n);var i=n.key;if(typeof i!=`string`)break;if(r===null){r=new Set,r.add(i);break}if(!r.has(i)){r.add(i);break}Te(t,function(){console.error("Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/
104or omitted â the behavior is unsupported and could change in a future version.",i)});break;case Kf:n=Vi(n),h(e,t,n,r)}return r}function _(i,o,s,c){for(var l=null,u=null,f=null,g=o,_=o=0,v=null;g!==null&&_<s.length;_++){g.index>_?(v=g,g=null):v=g.sibling;var y=p(i,g,s[_],c);if(y===null){g===null&&(g=v);break}l=h(i,y,s[_],l),e&&g&&y.alternate===null&&t(i,g),o=a(y,o,_),f===null?u=y:f.sibling=y,f=y,g=v}if(_===s.length)return n(i,g),c_&&Fr(i,_),u;if(g===null){for(;_<s.length;_++)g=d(i,s[_],c),g!==null&&(l=h(i,g,s[_],l),o=a(g,o,_),f===null?u=g:f.sibling=g,f=g);return c_&&Fr(i,_),u}for(g=r(g);_<s.length;_++)v=m(g,i,_,s[_],c),v!==null&&(l=h(i,v,s[_],l),e&&v.alternate!==null&&g.delete(v.key===null?_:v.key),o=a(v,o,_),f===null?u=v:f.sibling=v,f=v);return e&&g.forEach(function(e){return t(i,e)}),c_&&Fr(i,_),u}function v(i,o,s,c){if(s==null)throw Error(`An iterable object provided no iterator.`);for(var l=null,u=null,f=o,g=o=0,_=null,v=null,y=s.next();f!==null&&!y.done;g++,y=s.next()){f.index>g?(_=f,f=null):_=f.sibling;var b=p(i,f,y.value,c);if(b===null){f===null&&(f=_);break}v=h(i,b,y.value,v),e&&f&&b.alternate===null&&t(i,f),o=a(b,o,g),u===null?l=b:u.sibling=b,u=b,f=_}if(y.done)return n(i,f),c_&&Fr(i,g),l;if(f===null){for(;!y.done;g++,y=s.next())f=d(i,y.value,c),f!==null&&(v=h(i,f,y.value,v),o=a(f,o,g),u===null?l=f:u.sibling=f,u=f);return c_&&Fr(i,g),l}for(f=r(f);!y.done;g++,y=s.next())_=m(f,i,g,y.value,c),_!==null&&(v=h(i,_,y.value,v),e&&_.alternate!==null&&f.delete(_.key===null?g:_.key),o=a(_,o,g),u===null?l=_:u.sibling=_,u=_);return e&&f.forEach(function(e){return t(i,e)}),c_&&Fr(i,g),l}function y(e,r,a,s){if(typeof a==`object`&&a&&a.type===Lf&&a.key===null&&(Ki(a,null,e),a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case Ff:var c=Wi(a._debugInfo);a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===Lf){if(r.tag===7){n(e,r.sibling),s=i(r,a.props.children),s.return=e,s._debugOwner=a._owner,s._debugInfo=ny,Ki(a,s,e),e=s;break a}}else if(r.elementType===l||Sr(r,a)||typeof l==`object`&&l&&l.$$typeof===Kf&&Vi(l)===r.type){n(e,r.sibling),s=i(r,a.props),Ji(s,a),s.return=e,s._debugOwner=a._owner,s._debugInfo=ny,e=s;break a}n(e,r);break}t(e,r),r=r.sibling}a.type===Lf?(s=Ar(a.props.children,e.mode,s,a.key),s.return=e,s._debugOwner=e,s._debugTask=e._debugTask,s._debugInfo=ny,Ki(a,s,e),e=s):(s=kr(a,e.mode,s),Ji(s,a),s.return=e,s._debugInfo=ny,e=s)}return e=o(e),ny=c,e;case If:a:{for(c=a,a=c.key;r!==null;){if(r.key===a)if(r.tag===4&&r.stateNode.containerInfo===c.containerInfo&&r.stateNode.implementation===c.implementation){n(e,r.sibling),s=i(r,c.children||[]),s.return=e,e=s;break a}else{n(e,r);break}t(e,r),r=r.sibling}s=Nr(c,e.mode,s),s.return=e,e=s}return o(e);case Kf:return c=Wi(a._debugInfo),a=Vi(a),e=y(e,r,a,s),ny=c,e}if(Zf(a))return c=Wi(a._debugInfo),e=_(e,r,a,s),ny=c,e;if(ie(a)){if(c=Wi(a._debugInfo),l=ie(a),typeof l!=`function`)throw Error(`An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.`);var u=l.call(a);return u===a?(e.tag!==0||Object.prototype.toString.call(e.type)!==`[object GeneratorFunction]`||Object.prototype.toString.call(u)!==`[object Generator]`)&&(iy||console.error("Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items."),iy=!0):a.entries!==l||ry||(console.error(`Using Maps as children is not supported. Use an array of keyed ReactElements instead.`),ry=!0),e=v(e,r,u,s),ny=c,e}if(typeof a.then==`function`)return c=Wi(a._debugInfo),e=y(e,r,qi(a),s),ny=c,e;if(a.$$typeof===Vf)return y(e,r,ci(e,a),s);Xi(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(c=``+a,r!==null&&r.tag===6?(n(e,r.sibling),s=i(r,c),s.return=e,e=s):(n(e,r),s=jr(c,e.mode,s),s.return=e,s._debugOwner=e,s._debugTask=e._debugTask,s._debugInfo=ny,e=s),o(e)):(typeof a==`function`&&Qi(e,a),typeof a==`symbol`&&ea(e,a),n(e,r))}return function(e,t,n,r){var i=ny;ny=null;try{ty=0;var a=y(e,t,n,r);return ey=null,a}catch(t){if(t===Jv||t===Xv)throw t;var o=g(29,t,null,e.mode);o.lanes=r,o.return=e;var s=o._debugInfo=ny;if(o._debugOwner=e._debugOwner,o._debugTask=e._debugTask,s!=null){for(var c=s.length-1;0<=c;c--)if(typeof s[c].stack==`string`){o._debugOwner=s[c],o._debugTask=s[c].debugTask;break}}return o}finally{ny=i}}}function na(e,t){var n=Zf(e);return e=!n&&typeof ie(e)==`function`,n||e?(n=n?`array`:`iterable`,console.error(`A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>`,n,t,n),!1):!0}function ra(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ia(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function aa(e){return{lane:e,tag:uy,payload:null,callback:null,next:null}}
vendor: 12,190 bytes, lines 104-119
104function oa(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,gy===r&&!hy){var i=w(e);console.error(`An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback. 105 106Please update the following component: %s`,i),hy=!0}return(nx&qb)===Kb?(hr(e,r,t,n),yr(e)):(i=r.pending,i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=yr(e),vr(e,null,n),t)}function sa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ge(e,n)}}function ca(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function la(){if(_y){var e=_v;if(e!==null)throw e}}function ua(e,t,n,r){_y=!1;var i=e.updateQueue;my=!1,gy=i.shared;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(ax&f)===f:(r&f)===f){f!==0&&f===gv&&(_y=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{f=e;var m=s,h=t,g=n;switch(m.tag){case dy:if(m=m.payload,typeof m==`function`){y_=!0;var _=m.call(g,d,h);if(f.mode&Kg){Pe(!0);try{m.call(g,d,h)}finally{Pe(!1)}}y_=!1,d=_;break a}d=m;break a;case py:f.flags=f.flags&-65537|128;case uy:if(_=m.payload,typeof _==`function`){if(y_=!0,m=_.call(g,d,h),f.mode&Kg){Pe(!0);try{_.call(g,d,h)}finally{Pe(!1)}}y_=!1}else m=_;if(m==null)break a;d=Nf({},d,m);break a;case fy:my=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Cx|=o,e.lanes=o,e.memoizedState=d}gy=null}function da(e,t){if(typeof e!=`function`)throw Error(`Invalid argument passed as callback. Expected a function. Instead received: `+e);e.call(t)}function fa(e,t){var n=e.shared.hiddenCallbacks;if(n!==null)for(e.shared.hiddenCallbacks=null,e=0;e<n.length;e++)da(n[e],t)}function pa(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)da(n[e],t)}function ma(e,t){var n=xx;se(yy,n,e),se(vy,t,e),xx=n|t.baseLanes}function ha(e){se(yy,xx,e),se(vy,vy.current,e)}function ga(e){xx=yy.current,T(vy,e),T(yy,e)}function _a(e){var t=e.alternate;se(wy,wy.current&Sy,e),se(by,e,e),xy===null&&(t===null||vy.current!==null||t.memoizedState!==null)&&(xy=e)}function va(e){se(wy,wy.current,e),se(by,e,e),xy===null&&(xy=e)}function ya(e){e.tag===22?(se(wy,wy.current,e),se(by,e,e),xy===null&&(xy=e)):ba(e)}function ba(e){se(wy,wy.current,e),se(by,by.current,e)}function xa(e){T(by,e),xy===e&&(xy=null),T(wy,e)}function Sa(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||_d(n)||vd(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}function Ca(){var e=R;qy===null?qy=[e]:qy.push(e)}function O(){var e=R;if(qy!==null&&(Jy++,qy[Jy]!==e)){var t=w(Iy);if(!jy.has(t)&&(jy.add(t),qy!==null)){for(var n=``,r=0;r<=Jy;r++){var i=qy[r],a=r===Jy?e:i;for(i=r+1+`. `+i;30>i.length;)i+=` `;i+=a+` 107`,n+=i}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 108 109 Previous render Next render 110 ------------------------------------------------------ 111%s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 112`,t,n)}}}function wa(e){e==null||Zf(e)||console.error("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",R,typeof e)}function Ta(){var e=w(Iy);Py.has(e)||(Py.add(e),console.error(`ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.`,e))}function Ea(){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: 1131. You might have mismatching versions of React and the renderer (such as React DOM) 1142. You might be breaking the Rules of Hooks 1153. You might have more than one copy of React in the same app 116See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function Da(e,t){if(Yy)return!1;if(t===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.`,R),!1;e.length!==t.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant. 117 118Previous: %s 119Incoming: %s`,R,`[`+t.join(`, `)+`]`,`[`+e.join(`, `)+`]`);for(var n=0;n<t.length&&n<e.length;n++)if(!Jh(e[n],t[n]))return!1;return!0}function Oa(e,t,n,r,i,a){Fy=a,Iy=t,qy=e===null?null:e._debugHookTypes,Jy=-1,Yy=e!==null&&e.type!==t.type,(Object.prototype.toString.call(n)===`[object AsyncFunction]`||Object.prototype.toString.call(n)===`[object AsyncGeneratorFunction]`)&&(a=w(Iy),Ny.has(a)||(Ny.add(a),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.",a===null?`An unknown Component`:`<`+a+`>`))),t.memoizedState=null,t.updateQueue=null,t.lanes=0,L.H=e!==null&&e.memoizedState!==null?$y:qy===null?Zy:Qy,Vy=a=(t.mode&Kg)!==Ug;var o=jv(n,r,i);if(Vy=!1,By&&(o=Aa(t,n,r,i)),a){Pe(!0);try{o=Aa(t,n,r,i)}finally{Pe(!1)}}return ka(e,t),o}function ka(e,t){t._debugHookTypes=qy,t.dependencies===null?Wy!==null&&(t.dependencies={lanes:0,firstContext:null,_debugThenableState:Wy}):t.dependencies._debugThenableState=Wy,L.H=Xy;var n=Ly!==null&&Ly.next!==null;if(Fy=0,qy=R=Ry=Ly=Iy=null,Jy=-1,e!==null&&(e.flags&65011712)!=(t.flags&65011712)&&console.error(`Internal React error: Expected static flag was missing. Please notify the React team.`),zy=!1,Uy=0,Wy=null,n)throw Error(`Rendered fewer hooks than expected. This may be caused by an accidental early return statement.`);e===null||yb||(e=e.dependencies,e!==null&&ai(e)&&(yb=!0)),$v?($v=!1,e=!0):e=!1,e&&(t=w(t)||`Unknown`,My.has(t)||Ny.has(t)||(My.add(t),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 Aa(e,t,n,r){Iy=e;var i=0;do{if(By&&(Wy=null),Uy=0,By=!1,i>=Ky)throw Error(`Too many re-renders. React limits the number of renders to prevent an infinite loop.`);if(i+=1,Yy=!1,Ry=Ly=null,e.updateQueue!=null){var a=e.updateQueue;a.lastEffect=null,a.events=null,a.stores=null,a.memoCache!=null&&(a.memoCache.index=0)}Jy=-1,L.H=eb,a=jv(t,n,r)}while(By);return a}function ja(){var e=L.H,t=e.useState()[0];return t=typeof t.then==`function`?Ra(t):t,e=e.useState()[0],(Ly===null?null:Ly.memoizedState)!==e&&(Iy.flags|=1024),t}function Ma(){var e=Hy!==0;return Hy=0,e}function Na(e,t,n){t.updateQueue=e.updateQueue,t.flags=(t.mode&qg)===Ug?t.flags&-2053:t.flags&-402655237,e.lanes&=~n}function Pa(e){if(zy){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}zy=!1}Fy=0,qy=Ry=Ly=Iy=null,Jy=-1,R=null,By=!1,Uy=Hy=0,Wy=null}function Fa(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ry===null?Iy.memoizedState=Ry=e:Ry=Ry.next=e,Ry}function Ia(){if(Ly===null){var e=Iy.alternate;e=e===null?null:e.memoizedState}else e=Ly.next;var t=Ry===null?Iy.memoizedState:Ry.next;if(t!==null)Ry=t,Ly=e;else{if(e===null)throw Iy.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.`);Ly=e,e={memoizedState:Ly.memoizedState,baseState:Ly.baseState,baseQueue:Ly.baseQueue,queue:Ly.queue,next:null},Ry===null?Iy.memoizedState=Ry=e:Ry=Ry.next=e}return Ry}function La(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Ra(e){var t=Uy;return Uy+=1,Wy===null&&(Wy=Ri()),e=Bi(Wy,e,t),t=Iy,(Ry===null?t.memoizedState:Ry.next)===null&&(t=t.alternate,L.H=t!==null&&t.memoizedState!==null?$y:Zy),e}function za(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return Ra(e);if(e.$$typeof===Vf)return si(e)}throw Error(`An unsupported type was passed to use(): `+String(e))}function Ba(e){var t=null,n=Iy.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Iy.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=La(),Iy.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0||Yy)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=Jf;else n.length!==e&&console.error(`Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.`,n.length,e);return t.index++,n}function Va(e,t){return typeof t==`function`?t(e):t}function Ha(e,t,n){var r=Fa();if(n!==void 0){var i=n(t);if(Vy){Pe(!0);try{n(t)}finally{Pe(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Jo.bind(null,Iy,e),[r.memoizedState,e]}function Ua(e){return Wa(Ia(),Ly,e)}function Wa(e,t,n){var r=e.queue;if(r===null)throw Error(`Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)`);r.lastRenderedReducer=n;var i=e.baseQueue,a=r.pending;if(a!==null){if(i!==null){var o=i.next;i.next=a.next,a.next=o}t.baseQueue!==i&&console.error(`Internal error: Expected work-in-progress queue to be a clone. This is a bug in React.`),t.baseQueue=i=a,r.pending=null}if(a=e.baseState,i===null)e.memoizedState=a;else{t=i.next;var s=o=null,c=null,l=t,u=!1;do{var d=l.lane&-536870913;if(d===l.lane?(Fy&d)===d:(ax&d)===d){var f=l.revertLane;if(f===0)c!==null&&(c=c.next={lane:0,revertLane:0,gesture:null,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null}),d===gv&&(u=!0);else if((Fy&f)===f){l=l.next,f===gv&&(u=!0);continue}else d={lane:0,revertLane:l.revertLane,gesture:null,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null},c===null?(s=c=d,o=a):c=c.next=d,Iy.lanes|=f,Cx|=f;d=l.action,Vy&&n(a,d),a=l.hasEagerState?l.eagerState:n(a,d)}else f={lane:d,revertLane:l.revertLane,gesture:l.gesture,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null},c===null?(s=c=f,o=a):c=c.next=f,Iy.lanes|=d,Cx|=d;l=l.next}while(l!==null&&l!==t);if(c===null?o=a:c.next=s,!Jh(a,e.memoizedState)&&(yb=!0,u&&(n=_v,n!==null)))throw n;e.memoizedState=a,e.baseState=o,e.baseQueue=c,r.lastRenderedState=a}
119return i===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Ga(e){var t=Ia(),n=t.queue;if(n===null)throw Error(`Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)`);n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,a=t.memoizedState;if(i!==null){n.pending=null;var o=i=i.next;do a=e(a,o.action),o=o.next;while(o!==i);Jh(a,t.memoizedState)||(yb=!0),t.memoizedState=a,t.baseQueue===null&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function Ka(e,t,n){var r=Iy,i=Fa();if(c_){if(n===void 0)throw Error(`Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.`);var a=n();Ay||a===n()||(console.error(`The result of getServerSnapshot should be cached to avoid an infinite loop`),Ay=!0)}else{if(a=t(),Ay||(n=t(),Jh(a,n)||(console.error(`The result of getSnapshot should be cached to avoid an infinite loop`),Ay=!0)),rx===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);ax&127||Ja(r,t,a)}return i.memoizedState=a,n={value:a,getSnapshot:t},i.queue=n,So(Xa.bind(null,r,n,e),[e]),r.flags|=2048,vo(Ey|ky,{destroy:void 0},Ya.bind(null,r,n,a,t),null),a}function qa(e,t,n){var r=Iy,i=Ia(),a=c_;if(a){if(n===void 0)throw Error(`Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.`);n=n()}else if(n=t(),!Ay){var o=t();Jh(n,o)||(console.error(`The result of getSnapshot should be cached to avoid an infinite loop`),Ay=!0)}if((o=!Jh((Ly||i).memoizedState,n))&&(i.memoizedState=n,yb=!0),i=i.queue,xo(2048,ky,Xa.bind(null,r,i,e),[e]),i.getSnapshot!==t||o||Ry!==null&&Ry.memoizedState.tag&Ey){if(r.flags|=2048,vo(Ey|ky,{destroy:void 0},Ya.bind(null,r,i,n,t),null),rx===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);a||Fy&127||Ja(r,t,n)}return n}function Ja(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Iy.updateQueue,t===null?(t=La(),Iy.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Ya(e,t,n,r){t.value=n,t.getSnapshot=r,Za(t)&&Qa(e)}function Xa(e,t,n){return n(function(){Za(t)&&(pi(2,`updateSyncExternalStore()`,e),Qa(e))})}function Za(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Jh(e,n)}catch{return!0}}function Qa(e){var t=_r(e,2);t!==null&&rl(t,e,2)}function $a(e){var t=Fa();if(typeof e==`function`){var n=e;if(e=n(),Vy){Pe(!0);try{n()}finally{Pe(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Va,lastRenderedState:e},t}function eo(e){e=$a(e);var t=e.queue,n=Yo.bind(null,Iy,t);return t.dispatch=n,[e.memoizedState,n]}function to(e){var t=Fa();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Zo.bind(null,Iy,!0,n),n.dispatch=t,[e,t]}function no(e,t){return ro(Ia(),Ly,e,t)}function ro(e,t,n,r){return e.baseState=n,Wa(e,Ly,typeof r==`function`?r:Va)}function io(e,t){var n=Ia();return Ly===null?(n.baseState=e,[e,n.queue.dispatch]):ro(n,Ly,e,t)}function ao(e,t,n,r,i){if(Qo(e))throw Error(`Cannot update form state while rendering.`);if(e=t.action,e!==null){var a={payload:i,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){a.listeners.push(e)}};L.T===null?a.isTransition=!1:n(!0),r(a),n=t.pending,n===null?(a.next=t.pending=a,oo(t,a)):(a.next=n.next,t.pending=n.next=a)}}function oo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=L.T,o={};o._updatedFibers=new Set,L.T=o;try{var s=n(i,r),c=L.S;c!==null&&c(o,s),so(e,t,s)}catch(n){lo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types!==null&&a.types!==o.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),a.types=o.types),L.T=a,a===null&&o._updatedFibers&&(e=o._updatedFibers.size,o._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`))}}else try{o=n(i,r),so(e,t,o)}catch(n){lo(e,t,n)}}function so(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?(L.asyncTransitions++,n.then(Io,Io),n.then(function(n){co(e,t,n)},function(n){return lo(e,t,n)}),t.isTransition||console.error("An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop.")):co(e,t,n
vendor: 9,426 bytes, line 119
119)}function co(e,t,n){t.status=`fulfilled`,t.value=n,uo(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,oo(e,n)))}function lo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,uo(t),t=t.next;while(t!==r)}e.action=null}function uo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function fo(e,t){return t}function po(e,t){if(c_){var n=rx.formState;if(n!==null){a:{var r=Iy;if(c_){if(s_){b:{for(var i=s_,a=f_;i.nodeType!==8;){if(!a){i=null;break b}if(i=bd(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===eC||a===tC?i:null}if(i){s_=bd(i.nextSibling),r=i.data===eC;break a}}Gr(r)}r=!1}r&&(t=n[0])}}return n=Fa(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:fo,lastRenderedState:t},n.queue=r,n=Yo.bind(null,Iy,r),r.dispatch=n,r=$a(!1),a=Zo.bind(null,Iy,!1,r.queue),r=Fa(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=ao.bind(null,Iy,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function mo(e){return ho(Ia(),Ly,e)}function ho(e,t,n){if(t=Wa(e,t,fo)[0],e=Ua(Va)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=Ra(t)}catch(e){throw e===Jv?Xv:e}else r=t;t=Ia();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Iy.flags|=2048,vo(Ey|ky,{destroy:void 0},go.bind(null,i,n),null)),[r,a,e]}function go(e,t){e.action=t}function _o(e){var t=Ia(),n=Ly;if(n!==null)return ho(t,n,e);Ia(),t=t.memoizedState,n=Ia();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function vo(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Iy.updateQueue,t===null&&(t=La(),Iy.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function yo(e){var t=Fa();return e={current:e},t.memoizedState=e}function bo(e,t,n,r){var i=Fa();Iy.flags|=e,i.memoizedState=vo(Ey|t,{destroy:void 0},n,r===void 0?null:r)}function xo(e,t,n,r){var i=Ia();r=r===void 0?null:r;var a=i.memoizedState.inst;Ly!==null&&r!==null&&Da(r,Ly.memoizedState.deps)?i.memoizedState=vo(t,a,n,r):(Iy.flags|=e,i.memoizedState=vo(Ey|t,a,n,r))}function So(e,t){(Iy.mode&qg)===Ug?bo(8390656,ky,e,t):bo(276826112,ky,e,t)}function Co(e){Iy.flags|=4;var t=Iy.updateQueue;if(t===null)t=La(),Iy.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function wo(e){var t=Fa(),n={impl:e};return t.memoizedState=n,function(){if((nx&qb)!==Kb)throw Error(`A function wrapped in useEffectEvent can't be called during rendering.`);return n.impl.apply(void 0,arguments)}}function To(e){var t=Ia().memoizedState;return Co({ref:t,nextImpl:e}),function(){if((nx&qb)!==Kb)throw Error(`A function wrapped in useEffectEvent can't be called during rendering.`);return t.impl.apply(void 0,arguments)}}function Eo(e,t){var n=4194308;return(Iy.mode&qg)!==Ug&&(n|=134217728),bo(n,Oy,e,t)}function Do(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return t.hasOwnProperty(`current`)||console.error(`Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.`,`an object with keys {`+Object.keys(t).join(`, `)+`}`),e=e(),t.current=e,function(){t.current=null}}function k(e,t,n){typeof t!=`function`&&console.error(`Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.`,t===null?`null`:typeof t),n=n==null?null:n.concat([e]);var r=4194308;(Iy.mode&qg)!==Ug&&(r|=134217728),bo(r,Oy,Do.bind(null,t,e),n)}function A(e,t,n){typeof t!=`function`&&console.error(`Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.`,t===null?`null`:typeof t),n=n==null?null:n.concat([e]),xo(4,Oy,Do.bind(null,t,e),n)}function Oo(e,t){return Fa().memoizedState=[e,t===void 0?null:t],e}function ko(e,t){var n=Ia();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&Da(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ao(e,t){var n=Fa();t=t===void 0?null:t;var r=e();if(Vy){Pe(!0);try{e()}finally{Pe(!1)}}return n.memoizedState=[r,t],r}function j(e,t){var n=Ia();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&Da(t,r[1]))return r[0];if(r=e(),Vy){Pe(!0);try{e()}finally{Pe(!1)}}return n.memoizedState=[r,t],r}function jo(e,t){return Po(Fa(),e,t)}function Mo(e,t){return Fo(Ia(),Ly.memoizedState,e,t)}function No(e,t){var n=Ia();return Ly===null?Po(n,e,t):Fo(n,Ly.memoizedState,e,t)}function Po(e,t,n){return n===void 0||Fy&1073741824&&!(ax&261930)?e.memoizedState=t:(e.memoizedState=n,e=nl(),Iy.lanes|=e,Cx|=e,n)}function Fo(e,t,n,r){return Jh(n,t)?n:vy.current===null?!(Fy&42)||Fy&1073741824&&!(ax&261930)?(yb=!0,e.memoizedState=n):(e=nl(),Iy.lanes|=e,Cx|=e,t):(e=Po(e,n,r),Jh(e,t)||(yb=!0),e)}function Io(){L.asyncTransitions--}function Lo(e,t,n,r,i){var a=Qf.p;Qf.p=a!==0&&a<Kp?a:Kp;var o=L.T,s={};s._updatedFibers=new Set,L.T=s,Zo(e,!1,t,n);try{var c=i(),l=L.S;if(l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`){L.asyncTransitions++,c.then(Io,Io);var u=Pi(c,r);Xo(e,t,u,tl(e))}else Xo(e,t,r,tl(e))}catch(n){Xo(e,t,{then:function(){},status:`rejected`,reason:n},tl(e))}finally{Qf.p=a,o!==null&&s.types!==null&&(o.types!==null&&o.types!==s.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),o.types=s.types),L.T=o,o===null&&s._updatedFibers&&(e=s._updatedFibers.size,s._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`))}}function Ro(e,t,n,r){if(e.tag!==5)throw Error(`Expected the form instance to be a HostComponent. This is a bug in React.`);var i=zo(e).queue;mi(e),Lo(e,i,t,PC,n===null?u:function(){return Bo(e),n(r)})}function zo(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:PC,baseState:PC,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Va,lastRenderedState:PC},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Va,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Bo(e){L.T===null&&console.error(`requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition.`);var t=zo(e);t.next===null&&(t=e.alternate.memoizedState),Xo(e,t.next.queue,{},tl(e))}function Vo(){var e=$a(!1);return e=Lo.bind(null,Iy,e.queue,!0,!1),Fa().memoizedState=e,[!1,e]}function Ho(){var e=Ua(Va)[0],t=Ia().memoizedState;return[typeof e==`boolean`?e:Ra(e),t]}function Uo(){var e=Ga(Va)[0],t=Ia().memoizedState;return[typeof e==`boolean`?e:Ra(e),t]}function Wo(){return si(FC)}function Go(){var e=Fa(),t=rx.identifierPrefix;if(c_){var n=a_,r=i_;n=(r&~(1<<32-zp(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=Hy++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=Gy++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t}function Ko(){return Fa().memoizedState=qo.bind(null,Iy)}function qo(e,t){for(var n=e.return;n!==null;){switch(n.tag){case 24:case 3:var r=tl(n),i=aa(r),a=oa(n,i,r);a!==null&&(pi(r,`refresh()`,e),rl(a,n,r),sa(a,n,r)),e=ui(),t!=null&&a!==null&&console.error(`The seed argument is not enabled outside experimental channels.`),i.payload={cache:e};return}n=n.return}}function Jo(e,t,n){var r=arguments;typeof r[3]==`function`&&console.error(`State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().`),r=tl(e);var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};Qo(e)?$o(t,i):(i=gr(e,t,i,r),i!==null&&(pi(r,`dispatch()`,e),rl(i,e,r),es(i,t,r)))}function Yo(e,t,n){var r=arguments;typeof r[3]==`function`&&console.error(`State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().`),r=tl(e),Xo(e,t,n,r)&&pi(r,`setState()`,e)}function Xo(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Qo(e))$o(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null)){var o=L.H;L.H=nb;try{var s=t.lastRenderedState,c=a(s,n);if(i.hasEagerState=!0,i.eagerState=c,Jh(c,s))return hr(e,t,i,0),rx===null&&mr(),!1}catch{}finally{L.H=o}}if(n=gr(e,t,i,r),n!==null)return rl(n,e,r),es(n,t,r),!0}return!1}function Zo(e,t,n,r){if(L.T===null&&gv===0&&console.error(`An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition.`),r={lane:2,revertLane:au(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Qo(e)){if(t)throw Error(`Cannot update optimistic state while rendering.`);console.error(`Cannot call startTransition while rendering.`)}else t=gr(e,n,r,2),t!==null&&(pi(2,`setOptimistic()`,e),rl(t,e,2))}function Qo(e){var t=e.alternate;return e===Iy||t!==null&&t===Iy}function $o(e,t){By=zy=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}
119function es(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ge(e,n)}}function M(e){if(e!==null&&typeof e!=`function`){var t=String(e);mb.has(t)||(mb.add(t),console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",e))}}function ts(e,t,n,r){var i=e.memoizedState,a=n(r,i);if(e.mode&Kg){Pe(!0);try{a=n(r,i)}finally{Pe(!1)}}a===void 0&&(t=C(t)||`Component`,ub.has(t)||(ub.add(t),console.error(`%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.`,t))),i=a==null?i:Nf({},i,a),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}function N(e,t,n,r,i,a,o){var s=e.stateNode;if(typeof s.shouldComponentUpdate==`function`){if(n=s.shouldComponentUpdate(r,a,o),e.mode&Kg){Pe(!0);try{n=s.shouldComponentUpdate(r,a,o)}finally{Pe(!1)}}return n===void 0&&console.error(`%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.`,C(t)||`Component`),n}return t.prototype&&t.prototype.isPureReactComponent?!Vn(n,r)||!Vn(i,a):!0}function ns(e,t,n,r){var i=t.state;typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==i&&(e=w(e)||`Component`,ab.has(e)||(ab.add(e),console.error(`%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.`,e)),hb.enqueueReplaceState(t,t.state,null))}function rs(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=Nf({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function is(e){gg(e),console.warn(`%s 120 121%s 122`,gb?`An error occurred in the <`+gb+`> component.`:`An error occurred in one of your React components.`,`Consider adding an error boundary to your tree to customize error handling behavior. 123Visit https://react.dev/link/error-boundaries to learn more about error boundaries.`)}function as(e){var t=gb?`The above error occurred in the <`+gb+`> component.`:`The above error occurred in one of your React components.`,n=`React will try to recreate this component tree from scratch using the error boundary you provided, `+((_b||`Anonymous`)+`.`);if(typeof e==`object`&&e&&typeof e.environmentName==`string`){var r=e.environmentName;e=[`%o 124 125%s 126 127%s 128`,e,t,n].slice(0),typeof e[0]==`string`?e.splice(0,1,IC+` `+e[0],LC,zC+r+zC,RC):e.splice(0,0,IC,LC,zC+r+zC,RC),e.unshift(console),r=BC.apply(console.error,e),r()}else console.error(`%o 129 130%s 131 132%s 133`,e,t,n)}function os(e){gg(e)}function ss(e,t){try{gb=t.source?w(t.source):null,_b=null;var n=t.value;if(L.actQueue!==null)L.thrownErrors.push(n);else{var r=e.onUncaughtError;r(n,{componentStack:t.stack})}}catch(e){setTimeout(function(){throw e})}}function cs(e,t,n){try{gb=n.source?w(n.source):null,_b=w(t);var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function ls(e,t,n){return n=aa(n),n.tag=py,n.payload={element:null},n.callback=function(){Te(t.source,ss,e,t)},n}function us(e){return e=aa(e),e.tag=py,e}function ds(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Cr(n),Te(r.source,cs,t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Cr(n),Te(r.source,cs,t,n,r),typeof i!=`function`&&(Rx===null?Rx=new Set([this]):Rx.add(this)),zv(this,r),typeof i==`function`||!(n.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.`,w(n)||`Unknown`)})}function fs(e,t,n,r,i){if(n.flags|=32768,Rp&&ql(e,i),typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&ii(t,n,i,!0),c_&&(l_=!0),n=by.current,n!==null){switch(n.tag){case 31:case 13:return xy===null?_l():n.alternate===null&&Sx===Yb&&(Sx=Qb),n.flags&=-257,n.flags|=65536,n.lanes=i,r===Zv?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Rl(e,r,i)),!1;case 22:return n.flags|=65536,r===Zv?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Rl(e,r,i)),!1}throw Error(`Unexpected Suspense handler tag (`+n.tag+`). This is a bug in React.`)}return Rl(e,r,i),_l(),!1}if(c_)return l_=!0,t=by.current,t===null?(r!==p_&&Zr(Pr(Error(`There was an error while hydrating but React was able to re
133cover by instead client rendering the entire root.`,{cause:r}),n)),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,r=Pr(r,n),i=ls(e.stateNode,r,i),ca(e,i),Sx!==$b&&(Sx=Zb)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=i,r!==p_&&Zr(Pr(Error(`There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.`,{cause:r}),n))),!1;var a=Pr(Error(`There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.`,{cause:r}),n);if(Ox===null?Ox=[a]:Ox.push(a),Sx!==$b&&(Sx=Zb),t===null)return!0;r=Pr(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=i&-i,n.lanes|=e,e=ls(n.stateNode,r,e),ca(n,e),!1;case 1:if(t=n.type,a=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||a!==null&&typeof a.componentDidCatch==`function`&&(Rx===null||!Rx.has(a))))return n.flags|=65536,i&=-i,n.lanes|=i,i=us(i),ds(i,e,n,r),ca(n,i),!1}n=n.return}while(n!==null);return!1}function ps(e,t,n,r){t.child=e===null?ly(t,null,n,r):cy(t,e.child,n,r)}function ms(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return oi(t),r=Oa(e,t,n,o,a,i),s=Ma(),e!==null&&!yb?(Na(e,t,i),Ls(e,t,i)):(c_&&s&&Lr(t),t.flags|=1,ps(e,t,r,i),t.child)}function hs(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Tr(a)&&a.defaultProps===void 0&&n.compare===null?(n=br(a),t.tag=15,t.type=n,Ds(t,a),gs(e,t,n,r,i)):(e=Or(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!Rs(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Vn:n,n(o,r)&&e.ref===t.ref)return Ls(e,t,i)}return t.flags|=1,e=Er(a,r),e.ref=t.ref,e.return=t,t.child=e}function gs(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Vn(a,r)&&e.ref===t.ref&&t.type===e.type)if(yb=!1,t.pendingProps=r=a,Rs(e,i))e.flags&131072&&(yb=!0);else return t.lanes=e.lanes,Ls(e,t,i)}return Cs(e,t,n,r,i)}function _s(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:Fg,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return ys(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Ii(t,a===null?null:a.cachePool),a===null?ha(t):ma(t,a),ya(t);else return r=t.lanes=536870912,ys(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&Ii(t,null),ha(t),ba(t)):(Ii(t,a.cachePool),ma(t,a),ba(t),t.memoizedState=null);return ps(e,t,i,n),t.child}function vs(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:Fg,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function ys(e,t,n,r,i){var a=Fi();return a=a===null?null:{parent:C_._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&Ii(t,null),ha(t),ya(t),e!==null&&ii(e,t,r,!0),t.childLanes=i,null}function bs(e,t){var n=t.hidden;return n!==void 0&&console.error(`<Activity> doesn't accept a hidden prop. Use mode="hidden" instead. 134- <Activity %s> 135+ <Activity %s>`,!0===n?`hidden`:!1===n?`hidden={false}`:`hidden={...}`,n?`mode="hidden"`:`mode="visible"`),t=Ms({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function xs(e,t,n){return cy(t,e.child,null,n),e=bs(t,t.pendingProps),e.flags|=2,xa(t),t.memoizedState=null,e}function P(e,t,n){var r=t.pendingProps,i=!!(t.flags&128);if(t.flags&=-129,e===null){if(c_){if(r.mode===`hidden`)return e=bs(t,r),t.lanes=536870912,vs(null,e);if(va(t),(e=s_)?(n=gd(e,f_),n=n!==null&&n.data===WS?n:null,n!==null&&(r={dehydrated:n,treeContext:zr(),retryLane:536870912,hydrationErrors:null},t.memoizedState=r,r=Mr(n),r.return=t,t.child=r,o_=t,s_=null)):n=null,n===null)throw Wr(t,e),Gr(t);return t.lanes=536870912,null}return bs(t,r)}var a=e.memoizedState;if(a!==null){var o=a.dehydrated;if(va(t),i)if(t.flags&256)t.flags&=-257,t=xs(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(`Client rendering an Activity suspended it again. This is a bug in React.`);else if(Ur(),n&536870912&&gl(t),yb||ii(e,t,n,!1),i=(n&e.childLanes)!==0,yb||i){if(r=rx,r!==null&&(o=Ke(r,n),o!==0&&o!==a.retryLane))throw a.retryLane=o,_r(e,o),rl
135(r,e,o),vb;_l(),t=xs(e,t,n)}else e=a.treeContext,s_=bd(o.nextSibling),o_=t,c_=!0,d_=null,l_=!1,u_=null,f_=!1,e!==null&&Br(t,e),t=bs(t,r),t.flags|=4096;return t}return a=e.child,r={mode:r.mode,children:r.children},n&536870912&&(n&e.lanes)!==0&&gl(t),e=Er(a,r),e.ref=t.ref,t.child=e,e.return=t,e}function Ss(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(`Expected ref to be a function, an object returned by React.createRef(), or undefined/null.`);(e===null||e.ref!==n)&&(t.flags|=4194816)}}function Cs(e,t,n,r,i){if(n.prototype&&typeof n.prototype.render==`function`){var a=C(n)||`Unknown`;bb[a]||(console.error(`The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.`,a,a),bb[a]=!0)}return t.mode&Kg&&bv.recordLegacyContextWarning(t,null),e===null&&(Ds(t,t.type),n.contextTypes&&(a=C(n)||`Unknown`,Sb[a]||(Sb[a]=!0,console.error(`%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)`,a)))),oi(t),n=Oa(e,t,n,r,void 0,i),r=Ma(),e!==null&&!yb?(Na(e,t,i),Ls(e,t,i)):(c_&&r&&Lr(t),t.flags|=1,ps(e,t,n,i),t.child)}function ws(e,t,n,r,i,a){return oi(t),Jy=-1,Yy=e!==null&&e.type!==t.type,t.updateQueue=null,n=Aa(t,r,n,i),ka(e,t),r=Ma(),e!==null&&!yb?(Na(e,t,a),Ls(e,t,a)):(c_&&r&&Lr(t),t.flags|=1,ps(e,t,n,a),t.child)}function Ts(e,t,n,r,i){switch(s(t)){case!1:var a=t.stateNode,o=new t.type(t.memoizedProps,a.context).state;a.updater.enqueueSetState(a,o,null);break;case!0:t.flags|=128,t.flags|=65536,a=Error(`Simulated error coming from DevTools`);var c=i&-i;if(t.lanes|=c,o=rx,o===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);c=us(c),ds(c,o,t,Pr(a,t)),ca(t,c)}if(oi(t),t.stateNode===null){if(o=Bg,a=n.contextType,`contextType`in n&&a!==null&&(a===void 0||a.$$typeof!==Vf)&&!pb.has(n)&&(pb.add(n),c=a===void 0?` However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.`:typeof a==`object`?a.$$typeof===Bf?` Did you accidentally pass the Context.Consumer instead?`:` However, it is set to an object with keys {`+Object.keys(a).join(`, `)+`}.`:` However, it is set to a `+typeof a+`.`,console.error(`%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s`,C(n)||`Component`,c)),typeof a==`object`&&a&&(o=si(a)),a=new n(r,o),t.mode&Kg){Pe(!0);try{a=new n(r,o)}finally{Pe(!1)}}if(o=t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=hb,t.stateNode=a,a._reactInternals=t,a._reactInternalInstance=ib,typeof n.getDerivedStateFromProps==`function`&&o===null&&(o=C(n)||`Component`,ob.has(o)||(ob.add(o),console.error("`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",o,a.state===null?`null`:`undefined`,o))),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`){var l=c=o=null;if(typeof a.componentWillMount==`function`&&!0!==a.componentWillMount.__suppressDeprecationWarning?o=`componentWillMount`:typeof a.UNSAFE_componentWillMount==`function`&&(o=`UNSAFE_componentWillMount`),typeof a.componentWillReceiveProps==`function`&&!0!==a.componentWillReceiveProps.__suppressDeprecationWarning?c=`componentWillReceiveProps`:typeof a.UNSAFE_componentWillReceiveProps==`function`&&(c=`UNSAFE_componentWillReceiveProps`),typeof a.componentWillUpdate==`function`&&!0!==a.componentWillUpdate.__suppressDeprecationWarning?l=`componentWillUpdate`:typeof a.UNSAFE_componentWillUpdate==`function`&&(l=`UNSAFE_componentWillUpdate`),o!==null||c!==null||l!==null){a=C(n)||`Component`;var u=typeof n.getDerivedStateFromProps==`function`?`getDerivedStateFromProps()`:`getSnapshotBeforeUpdate()`;cb.has(a)||(cb.add(a),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs. 136 137%s uses %s but also contains the following legacy lifecycles:%s%s%s 138 139The above lifecycles should be removed. Learn more about this warning here: 140https://react.dev/link/unsafe-component-lifecycles`,a,u,o===null?``:` 141 `+o,c===null?``:` 142 `+c,l===null?``:` 143 `+l))}}a=t.stateNode,o=C(n)||`Component`,a.render||(n.prototype&&typeof n.prototype.render==`function`?console.error("No `render` method found on the %s instance: did you accidentally return an object from the constructor?",o):console.error("No `render` method found on the %s instance: you may have forgotten to define `render`.",o)),!a.getInitialState||a.getInitialState.isReactClassApproved||a.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?`,o),a.getDefaultProps&&!a.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.`,o),a.contextType&&console.error(`contextType was defined as an instance property on %s. Use a static property to define contextType instead.`,o),n.childContextTypes&&!fb.has(n)&&(fb.add(n),console.error(`%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)`,o)),n.contextTypes&&!db.has(n)&&(db.add(n),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)`,o)),typeof a.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.`,o),n.prototype&&n.prototype.isPureReactComponent&&a.shouldComponentUpdate!==void 0&&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.`,C(n)||`A pure component`),typeof a.componentDidUnmount==`function`&&console.error(`%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?`,o),typeof a.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().`,o),typeof a.componentWillRecieveProps==`function`&&console.error(`%s has a method called componentWillRecieveProps(). Did
143you mean componentWillReceiveProps()?`,o),typeof a.UNSAFE_componentWillRecieveProps==`function`&&console.error(`%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?`,o),c=a.props!==r,a.props!==void 0&&c&&console.error("When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",o),a.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.`,o,o),typeof a.getSnapshotBeforeUpdate!=`function`||typeof a.componentDidUpdate==`function`||sb.has(n)||(sb.add(n),console.error(`%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.`,C(n))),typeof a.getDerivedStateFromProps==`function`&&console.error(`%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.`,o),typeof a.getDerivedStateFromError==`function`&&console.error(`%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.`,o),typeof n.getSnapshotBeforeUpdate==`function`&&console.error(`%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.`,o),(c=a.state)&&(typeof c!=`object`||Zf(c))&&console.error(`%s.state: must be set to an object or null`,o),typeof a.getChildContext==`function`&&typeof n.childContextTypes!=`object`&&console.error(`%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().`,o),a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},ra(t),o=n.contextType,a.context=typeof o==`object`&&o?si(o):Bg,a.state===r&&(o=C(n)||`Component`,lb.has(o)||(lb.add(o),console.error(`%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.`,o))),t.mode&Kg&&bv.recordLegacyContextWarning(t,a),bv.recordUnsafeLifecycleWarnings(t,a),a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(ts(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&(console.error(`%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.`,w(t)||`Component`),hb.enqueueReplaceState(a,a.state,null)),ua(t,r,a,i),la(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&qg)!==Ug&&(t.flags|=134217728),a=!0}else if(e===null){a=t.stateNode;var d=t.memoizedProps;c=rs(n,d),a.props=c;var f=a.context;l=n.contextType,o=Bg,typeof l==`object`&&l&&(o=si(l)),u=n.getDerivedStateFromProps,l=typeof u==`function`||typeof a.getSnapshotBeforeUpdate==`function`,d=t.pendingProps!==d,l||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(d||f!==o)&&ns(t,a,r,o),my=!1;var p=t.memoizedState;a.state=p,ua(t,r,a,i),la(),f=t.memoizedState,d||p!==f||my?(typeof u==`function`&&(ts(t,n,u,r),f=t.memoizedState),(c=my||N(t,n,c,r,p,f,o))?(l||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&qg)!==Ug&&(t.flags|=134217728)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&qg)!==Ug&&(t.flags|=134217728),t.memoizedProps=r,t.memoizedState=f),a.props=r,a.state=f,a.context=o,a=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&qg)!==Ug&&(t.flags|=134217728),a=!1)}else{a=t.stateNode,ia(e,t),o=t.memoizedProps,l=rs(n,o),a.props=l,u=t.pendingProps,p=a.context,f
vendor: 6,356 bytes, lines 143-144
143=n.contextType,c=Bg,typeof f==`object`&&f&&(c=si(f)),d=n.getDerivedStateFromProps,(f=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==u||p!==c)&&ns(t,a,r,c),my=!1,p=t.memoizedState,a.state=p,ua(t,r,a,i),la();var m=t.memoizedState;o!==u||p!==m||my||e!==null&&e.dependencies!==null&&ai(e.dependencies)?(typeof d==`function`&&(ts(t,n,d,r),m=t.memoizedState),(l=my||N(t,n,l,r,p,m,c)||e!==null&&e.dependencies!==null&&ai(e.dependencies))?(f||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,m,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,m,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),a.props=r,a.state=m,a.context=c,a=l):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),a=!1)}if(c=a,Ss(e,t),o=!!(t.flags&128),c||o){if(c=t.stateNode,Ee(t),o&&typeof n.getDerivedStateFromError!=`function`)n=null,M_=-1;else if(n=Nv(c),t.mode&Kg){Pe(!0);try{Nv(c)}finally{Pe(!1)}}t.flags|=1,e!==null&&o?(t.child=cy(t,e.child,null,i),t.child=cy(t,null,n,i)):ps(e,t,n,i),t.memoizedState=c.state,e=t.child}else e=Ls(e,t,i);return i=t.stateNode,a&&i.props!==r&&(wb||console.error("It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",w(t)||`a component`),wb=!0),e}function Es(e,t,n,r){return Yr(),t.flags|=256,ps(e,t,n,r),t.child}function Ds(e,t){t&&t.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component. 144 %s.childContextTypes = ...`,t.displayName||t.name||`Component`),typeof t.getDerivedStateFromProps==`function`&&(e=C(t)||`Unknown`,Cb[e]||(console.error(`%s: Function components do not support getDerivedStateFromProps.`,e),Cb[e]=!0)),typeof t.contextType==`object`&&t.contextType!==null&&(t=C(t)||`Unknown`,xb[t]||(console.error(`%s: Function components do not support contextType.`,t),xb[t]=!0))}function Os(e){return{baseLanes:e,cachePool:Li()}}function ks(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Ex),e}function As(e,t,n){var r,i=t.pendingProps;o(t)&&(t.flags|=128);var a=!1,s=!!(t.flags&128);if((r=s)||(r=e!==null&&e.memoizedState===null?!1:(wy.current&Cy)!==0),r&&(a=!0,t.flags&=-129),r=!!(t.flags&32),t.flags&=-33,e===null){if(c_){if(a?_a(t):ba(t),(e=s_)?(n=gd(e,f_),n=n!==null&&n.data!==WS?n:null,n!==null&&(r={dehydrated:n,treeContext:zr(),retryLane:536870912,hydrationErrors:null},t.memoizedState=r,r=Mr(n),r.return=t,t.child=r,o_=t,s_=null)):n=null,n===null)throw Wr(t,e),Gr(t);return vd(n)?t.lanes=32:t.lanes=536870912,null}var c=i.children;if(i=i.fallback,a){ba(t);var l=t.mode;return c=Ms({mode:`hidden`,children:c},l),i=Ar(i,l,n,null),c.return=t,i.return=t,c.sibling=i,t.child=c,i=t.child,i.memoizedState=Os(n),i.childLanes=ks(e,r,n),t.memoizedState=Db,vs(null,i)}return _a(t),js(t,c)}var u=e.memoizedState;if(u!==null){var d=u.dehydrated;if(d!==null){if(s)t.flags&256?(_a(t),t.flags&=-257,t=Ns(e,t,n)):t.memoizedState===null?(ba(t),c=i.fallback,l=t.mode,i=Ms({mode:`visible`,children:i.children},l),c=Ar(c,l,n,null),c.flags|=2,i.return=t,c.return=t,i.sibling=c,t.child=i,cy(t,e.child,null,n),i=t.child,i.memoizedState=Os(n),i.childLanes=ks(e,r,n),t.memoizedState=Db,t=vs(null,i)):(ba(t),t.child=e.child,t.flags|=128,t=null);else if(_a(t),Ur(),n&536870912&&gl(t),vd(d)){if(r=d.nextSibling&&d.nextSibling.dataset,r){c=r.dgst;var f=r.msg;l=r.stck;var p=r.cstck}a=f,r=c,i=l,d=p,c=a,l=d,c=Error(c||`The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering.`),c.stack=i||``,c.digest=r,r=l===void 0?null:l,i={value:c,source:null,stack:r},typeof r==`string`&&Xg.set(c,i),Zr(i),t=Ns(e,t,n)}else if(yb||ii(e,t,n,!1),r=(n&e.childLanes)!==0,yb||r){if(r=rx,r!==null&&(i=Ke(r,n),i!==0&&i!==u.retryLane))throw u.retryLane=i,_r(e,i),rl(r,e,i),vb;_d(d)||_l(),t=Ns(e,t,n)}else _d(d)?(t.flags|=192,t.child=e.child,t=null):(e=u.treeContext,s_=bd(d.nextSibling),o_=t,c_=!0,d_=null,l_=!1,u_=null,f_=!1,e!==null&&Br(t,e),t=js(t,i.children),t.flags|=4096);return t}}return a?(ba(t),c=i.fallback,l=t.mode,p=e.child,d=p.sibling,i=Er(p,{mode:`hidden`,children:i.children}),i.subtreeFlags=p.subtreeFlags&65011712,d===null?(c=Ar(c,l,n,null),c.flags|=2):c=Er(d,c),c.return=t,i.return=t,i.sibling=c,t.child=i,vs(null,i),i=t.child,c=e.child.memoizedState,c===null?c=Os(n):(l=c.cachePool,l===null?l=Li():(p=C_._currentValue,l=l.parent===p?l:{parent:p,pool:p}),c={baseLanes:c.baseLanes|n,cachePool:l}),i.memoizedState=c,i.childLanes=ks(e,r,n),t.memoizedState=Db,vs(e.child,i)):(u!==null&&(n&62914560)===n&&(n&e.lanes)!==0&&gl(t),_a(t),n=e.child,e=n.sibling,n=Er(n,{mode:`visible`,children:i.children}),n.return=t,n.sibling=null,e!==null&&(r=t.deletions,r===null?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=n,t.memoizedState=null,n)}function js(e,t){return t=Ms({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Ms(e,t){return e=g(22,e,null,t),e.lanes=0,e}function Ns(e,t,n){return cy(t,e.child,null,n),e=js(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ps(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),ni(e.return,t,n)}function Fs(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function Is(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail,o=r.children,s=wy.current;if((r=(s&Cy)!==0)?(s=s&Sy|Cy,t.flags|=128):s&=Sy,se(wy,s,t),s=i??`null`,i!==`forwards`&&i!==`unstable_legacy-backwards`&&i!==`together`&&i!==`independent`&&!Tb[s])if(Tb[s]=!0,i==null)console.error(`The default for the <Su
144spenseList revealOrder="..."> prop is changing. To be future compatible you must explictly specify either "independent" (the current default), "together", "forwards" or "legacy_unstable-backwards".`);else if(i===`backwards`)console.error(`The rendering order of <SuspenseList revealOrder="backwards"> is changing. To be future compatible you must specify revealOrder="legacy_unstable-backwards" instead.`);else if(typeof i==`string`)switch(i.toLowerCase()){case`together`:case`forwards`:case`backwards`:case`independent`:console.error(`"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.`,i,i.toLowerCase());break;case`forward`:case`backward`:console.error(`"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.`,i,i.toLowerCase());break;default:console.error(`"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?`,i)}else console.error(`%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?`,i);s=a??`null`,Eb[s]||(a==null?(i===`forwards`||i===`backwards`||i===`unstable_legacy-backwards`)&&(Eb[s]=!0,console.error(`The default for the <SuspenseList tail="..."> prop is changing. To be future compatible you must explictly specify either "visible" (the current default), "collapsed" or "hidden".`)):a!==`visible`&&a!==`collapsed`&&a!==`hidden`?(Eb[s]=!0,console.error(`"%s" is not a supported value for tail on <SuspenseList />. Did you mean "visible", "collapsed" or "hidden"?`,a)):i!==`forwards`&&i!==`backwards`&&i!==`unstable_legacy-backwards`&&(Eb[s]=!0,console.error(`<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" or "backwards". Did you mean to specify revealOrder="forwards"?`,a)));a:if((i===`forwards`||i===`backwards`||i===`unstable_legacy-backwards`)&&o!=null&&!1!==o)if(Zf(o)){for(s=0;s<o.length;s++)if(!na(o[s],s))break a}else if(s=ie(o),typeof s==`function`){if(s=s.call(o))for(var c=s.next(),l=0;!c.done;c=s.next()){if(!na(c.value,l))break a;l++}}else console.error(`A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?`,i);if(ps(e,t,o,n),c_?(Vr(),o=e_):o=0,!r&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ps(e,n,t);else if(e.tag===19)Ps(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Sa(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Fs(t,!1,i,n,a,o);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Sa(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Fs(t,!0,n,null,a,o);break;case`together`:Fs(t,!1,null,null,void 0,o);break;default:t.memoizedState=null}return t.child}function Ls(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),M_=-1,Cx|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(ii(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(`Resuming work not yet implemented.`);if(t.child!==null){for(e=t.child,n=Er(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Er(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Rs(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&ai(e)))}function zs(e,t,n){switch(t.tag){case 3:le(t,t.stateNode.containerInfo),ei(t,C_,e.memoizedState.cache),Yr();break;case 27:case 5:fe(t);break;case 4:le(t,t.stateNode.containerInfo);break;case 10:ei(t,t.type,t.memoizedProps.value);break;case 12:(n&t.childLanes)!==0&&(t.flags|=4),t.flags|=2048;var r=t.stateNode;r.effectDuration=-0,r.passiveEffectDuration=-0;break;case 31:if(t.memoizedState!==null)return t.flags|=128,va(t),null;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(_a(t),e=Ls(e,t,n),e===null?null:e.sibling):As(e,t,n):(_a(t),t.flags|=128,null);_a(t);break;case 19:var i=!!(e.flags&128);if(r=(n&t.childLanes)!==0,r||=(ii(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return Is(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),se(wy,wy.current,t),r)break;return null;case 22:return t.lanes=0,_s(e,t,n,t.pendingProps);case 24:ei(t,C_,e.memoizedState.cache)}return Ls(e,t,n)}function Bs(e,t,n){if(t._debugNeedsRemount&&e!==null){n=Or(t.type,t.key,t.pendingProps,t._debugOwner||null,t.mode,t.lanes),n._debugStack=t._debugStack,n._debugTask=t._debugTask;var r=t.return;if(r===null)throw Error(`Cannot swap the root fiber.`);if(e.alternate=null,t.alternate=null,n.index=t.index,n.sibling=t.sibling,n.return=t.return,n.ref=t.ref,n._debugInfo=t._debugInfo,t===r.child)r.child=n;else{var i=r.child;if(i===null)throw Error(`Expected parent to have a child.`);for(;i.sibling!==t;)if(i=i.sibling,i===null)throw Error(`Expected to find the previous sibling.`);i.sibling=n}return t=r.deletions,t===null?(r.deletions=[e],r.flags|=16):t.push(e),n.flags|=2,n}if(e!==null)if(e.memoizedProps!==t.pendingProps||t.type!==e.type)yb=!0;else{if(!Rs(e,n)&&!(t.flags&128))return yb=!1,zs(e,t,n);yb=!!(e.flags&131072)}
vendor: 50,754 bytes, lines 144-157
144else yb=!1,(r=c_)&&(Vr(),r=!!(t.flags&1048576)),r&&(r=t.index,Vr(),Ir(t,e_,r));switch(t.lanes=0,t.tag){case 16:a:if(r=t.pendingProps,e=Vi(t.elementType),t.type=e,typeof e==`function`)Tr(e)?(r=rs(e,r),t.tag=1,t.type=e=br(e),t=Ts(null,t,e,r,n)):(t.tag=0,Ds(t,e),t.type=e=br(e),t=Cs(null,t,e,r,n));else{if(e!=null){if(i=e.$$typeof,i===Hf){t.tag=11,t.type=e=xr(e),t=ms(null,t,e,r,n);break a}if(i===Gf){t.tag=14,t=hs(null,t,e,r,n);break a}}throw t=``,typeof e==`object`&&e&&e.$$typeof===Kf&&(t=` Did you wrap a component in React.lazy() more than once?`),n=C(e)||e,Error(`Element type is invalid. Received a promise that resolves to: `+n+`. Lazy element type must resolve to a class or function.`+t)}return t;case 0:return Cs(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,i=rs(r,t.pendingProps),Ts(e,t,r,i,n);case 3:a:{if(le(t,t.stateNode.containerInfo),e===null)throw Error(`Should have a current fiber. This is a bug in React.`);r=t.pendingProps;var a=t.memoizedState;i=a.element,ia(e,t),ua(t,r,null,n);var o=t.memoizedState;if(r=o.cache,ei(t,C_,r),r!==a.cache&&ri(t,[C_],n,!0),la(),r=o.element,a.isDehydrated)if(a={element:r,isDehydrated:!1,cache:o.cache},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){t=Es(e,t,r,n);break a}else if(r!==i){i=Pr(Error(`This root received an early update, before anything was able hydrate. Switched the entire root to client rendering.`),t),Zr(i),t=Es(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(s_=bd(e.firstChild),o_=t,c_=!0,d_=null,l_=!1,u_=null,f_=!0,n=ly(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Yr(),r===i){t=Ls(e,t,n);break a}ps(e,t,r,n)}t=t.child}return t;case 26:return Ss(e,t),e===null?(n=Nd(t.type,null,t.pendingProps,null))?t.memoizedState=n:c_||(n=t.type,e=t.pendingProps,r=ce(ap.current),r=Hu(r).createElement(n),r[Xp]=t,r[Zp]=e,Ou(r,n,e),it(r),t.stateNode=r):t.memoizedState=Nd(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return fe(t),e===null&&c_&&(r=ce(ap.current),i=de(),r=t.stateNode=Od(t.type,t.pendingProps,r,i,!1),l_||(i=Ru(r,t.type,t.pendingProps,i),i!==null&&(Hr(t,0).serverProps=i)),o_=t,f_=!0,i=s_,nd(t.type)?(_C=i,s_=bd(r.firstChild)):s_=i),ps(e,t,t.pendingProps.children,n),Ss(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&c_&&(a=de(),r=Qt(t.type,a.ancestorInfo),i=s_,(o=!i)||(o=md(i,t.type,t.pendingProps,f_),o===null?a=!1:(t.stateNode=o,l_||(a=Ru(o,t.type,t.pendingProps,a),a!==null&&(Hr(t,0).serverProps=a)),o_=t,s_=bd(o.firstChild),f_=!1,a=!0),o=!a),o&&(r&&Wr(t,i),Gr(t))),fe(t),i=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,r=a.children,Gu(i,a)?r=null:o!==null&&Gu(i,o)&&(t.flags|=32),t.memoizedState!==null&&(i=Oa(e,t,ja,null,null,n),FC._currentValue=i),Ss(e,t),ps(e,t,r,n),t.child;case 6:return e===null&&c_&&(n=t.pendingProps,e=de(),r=e.ancestorInfo.current,n=r==null||$t(n,r.tag,e.ancestorInfo.implicitRootScope),e=s_,(r=!e)||(r=hd(e,t.pendingProps,f_),r===null?r=!1:(t.stateNode=r,o_=t,s_=null,r=!0),r=!r),r&&(n&&Wr(t,e),Gr(t))),null;case 13:return As(e,t,n);case 4:return le(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=cy(t,null,r,n):ps(e,t,r,n),t.child;case 11:return ms(e,t,t.type,t.pendingProps,n);case 7:return ps(e,t,t.pendingProps,n),t.child;case 8:return ps(e,t,t.pendingProps.children,n),t.child;case 12:return t.flags|=4,t.flags|=2048,r=t.stateNode,r.effectDuration=-0,r.passiveEffectDuration=-0,ps(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.type,i=t.pendingProps,a=i.value,`value`in i||Ob||(Ob=!0,console.error("The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?")),ei(t,r,a),ps(e,t,i.children,n),t.child;case 9:return i=t.type._context,r=t.pendingProps.children,typeof r!=`function`&&console.error(`A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.`),oi(t),i=si(i),r=jv(r,i,void 0),t.flags|=1,ps(e,t,r,n),t.child;case 14:return hs(e,t,t.type,t.pendingProps,n);case 15:return gs(e,t,t.type,t.pendingProps,n);case 19:return Is(e,t,n);case 31:return P(e,t,n);case 22:return _s(e,t,n,t.pendingProps);case 24:return oi(t),r=si(C_),e===null?(i=Fi(),i===null&&(i=rx,a=ui(),i.pooledCache=a,di(a),a!==null&&(i.pooledCacheLanes|=n),i=a),t.memoizedState={parent:r,cache:i},ra(t),ei(t,C_,i)):((e.lanes&n)!==0&&(ia(e,t),ua(t,null,null,n),la()),i=e.memoizedState,a=t.memoizedState,i.parent===r?(r=a.cache,ei(t,C_,r),r!==i.cache&&ri(t,[C_],n,!0)):(i={parent:r,cache:r},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),ei(t,C_,r))),ps(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(`Unknown unit of work tag (`+t.tag+`). This error is likely caused by a bug in React. Please file an issue.`)}function Vs(e){e.flags|=4}function Hs(e,t,n,r,i){if((t=(e.mode&Jg)!==Ug)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(pl())e.flags|=8192;else throw Qv=Zv,Yv}else e.flags&=-16777217}function Us(e,t){if(t.type!==`stylesheet`||(t.state.loading&SC)!==vC)e.flags&=-16777217;else if(e.flags|=16777216,!Jd(t))if(pl())e.flags|=8192;else throw Qv=Zv,Yv}function Ws(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Be(),e.lanes|=t,Dx|=t)}function Gs(e,t){if(!c_)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Ks(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)if((e.mode&Gg)!==Ug){for(var i=e.selfBaseDuration,a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags&65011712,r|=a.flags&65011712,i+=a.treeBaseDuration,a=a.sibling;e.treeBaseDuration=i}else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else if((e.mode&Gg)!==Ug){i=e.actualDuration,a=e.selfBaseDuration;for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,i+=o.actualDuration,a+=o.treeBaseDuration,o=o.sibling;e.actualDuration=i,e.treeBaseDuration=a}else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function qs(e,t,n){var r=t.pendingProps;switch(Rr(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ks(t),null;case 1:return Ks(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),ti(C_,t),ue(t),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Jr(t)?(Qr(),Vs(t)):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Xr())),Ks(t),null;case 26:var i=t.type,a=t.memoizedState;return e===null?(Vs(t),a===null?(Ks(t),Hs(t,i,null,r,n)):(Ks(t),Us(t,a))):a?a===e.memoizedState?(Ks(t),t.flags&=-16777217):(Vs(t),Ks(t),Us(t,a)):(e=e.memoizedProps,e!==r&&Vs(t),Ks(t),Hs(t,i,e,r,n)),null;case 27:if(pe(t),n=ce(ap.current),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Vs(t);else{if(!r){if(t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);return Ks(t),null}e=de(),Jr(t)?Kr(t,e):(e=Od(i,r,n,e,!0),t.stateNode=e,Vs(t))}return Ks(t),null;case 5:if(pe(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Vs(t);else{if(!r){if(t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);return Ks(t),null}var o=de();if(Jr(t))Kr(t,o);else{switch(a=ce(ap.current),Qt(i,o.ancestorInfo),o=o.context,a=Hu(a),o){case aC:a=a.createElementNS(Bm,i);break;case oC:a=a.createElementNS(zm,i);break;default:switch(i){case`svg`:a=a.createElementNS(Bm,i);break;case`math`:a=a.createElementNS(zm,i);break;case`script`:a=a.createElement(`div`),a.innerHTML=`<script><\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?a.createElement(`select`,{is:r.is}):a.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?a.createElement(i,{is:r.is}):a.createElement(i),i.indexOf(`-`)===-1&&(i!==i.toLowerCase()&&console.error(`<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.`,i),Object.prototype.toString.call(a)!==`[object HTMLUnknownElement]`||xp.call(lC,i)||(lC[i]=!0,console.error(`The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.`,i)))}}a[Xp]=t,a[Zp]=r;a:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)a.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break a;for(;o.sibling===null;){if(o.return===null||o.return===t)break a;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=a;a:switch(Ou(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Vs(t)}}return Ks(t),Hs(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Vs(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);if(e=ce(ap.current),n=de(),Jr(t)){if(e=t.stateNode,n=t.memoizedProps,i=!l_,r=null,a=o_,a!==null)switch(a.tag){case 3:i&&(i=Sd(e,n,r),i!==null&&(Hr(t,0).serverProps=i));break;case 27:case 5:r=a.memoizedProps,i&&(i=Sd(e,n,r),i!==null&&(Hr(t,0).serverProps=i))}e[Xp]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Tu(e.nodeValue,n)),e||Gr(t,!0)}else i=n.ancestorInfo.current,i!=null&&$t(r,i.tag,n.ancestorInfo.implicitRootScope),e=Hu(e).createTextNode(r),e[Xp]=t,t.stateNode=e}return Ks(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Jr(t),n!==null){if(e===null){if(!r)throw Error(`A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.`);if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue.`);e[Xp]=t,Ks(t),(t.mode&Gg)!==Ug&&n!==null&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration))}else Qr(),Yr(),!(t.flags&128)&&(n=t.memoizedState=null),t.flags|=4,Ks(t),(t.mode&Gg)!==Ug&&n!==null&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration));e=!1}else n=Xr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(xa(t),t):(xa(t),null);if(t.flags&128)throw Error(`Client rendering an Activity suspended it again. This is a bug in React.`)}return Ks(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=r,a=Jr(t),i!==null&&i.dehydrated!==null){if(e===null){if(!a)throw Error(`A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.`);if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);a[Xp]=t,Ks(t),(t.mode&Gg)!==Ug&&i!==null&&(i=t.child,i!==null&&(t.treeBaseDuration-=i.treeBaseDuration))}else Qr(),Yr(),!(t.flags&128)&&(i=t.memoizedState=null),t.flags|=4,Ks(t),(t.mode&Gg)!==Ug&&i!==null&&(i=t.child,i!==null&&(t.treeBaseDuration-=i.treeBaseDuration));i=!1}else i=Xr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(xa(t),t):(xa(t),null)}return xa(t),t.flags&128?(t.lanes=n,(t.mode&Gg)!==Ug&&ji(t),t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ws(t,t.updateQueue),Ks(t),(t.mode&Gg)!==Ug&&n&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration)),null);case 4:return ue(t),e===null&&fu(t.stateNode.containerInfo),Ks(t),null;case 10:return ti(t.type,t),Ks(t),null;case 19:if(T(wy,t),r=t.memoizedState,r===null)return Ks(t),null;if(i=!!(t.flags&128),a=r.rendering,a===null)if(i)Gs(r,!1);else{if(Sx!==Yb||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=Sa(e),a!==null){for(t.flags|=128,Gs(r,!1),e=a.updateQueue,t.updateQueue=e,Ws(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Dr(n,e),n=n.sibling;return se(wy,wy.current&Sy|Cy,t),c_&&Fr(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Ep()>Px&&(t.flags|=128,i=!0,Gs(r,!1),t.lanes=4194304)}else{if(!i)if(e=Sa(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Ws(t,e),Gs(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!c_)return Ks(t),null}else 2*Ep()-r.renderingStartTime>Px&&n!==536870912&&(t.flags|=128,i=!0,Gs(r,!1),t.lanes=4194304);r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(Ks(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Ep(),e.sibling=null,n=wy.current,n=i?n&Sy|Cy:n&Sy,se(wy,n,t),c_&&Fr(t,r.treeForkCount),e);case 22:case 23:return xa(t),ga(t),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Ks(t),t.subtreeFlags&6&&(t.flags|=8192)):Ks(t),n=t.updateQueue,n!==null&&Ws(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&T(yv,t),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),ti(C_,t),Ks(t),null;case 25:return null;case 30:return null}throw Error(`Unknown unit of work tag (`+t.tag+`). This error is likely caused by a bug in React. Please file an issue.`)}function Js(e,t){switch(Rr(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Gg)!==Ug&&ji(t),t):null;case 3:return ti(C_,t),ue(t),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return pe(t),null;case 31:if(t.memoizedState!==null){if(xa(t),t.alternate===null)throw Error(`Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.`);Yr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Gg)!==Ug&&ji(t),t):null;case 13:if(xa(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(`Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.`);Yr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Gg)!==Ug&&ji(t),t):null;case 19:return T(wy,t),null;case 4:return ue(t),null;case 10:return ti(t.type,t),null;case 22:case 23:return xa(t),ga(t),e!==null&&T(yv,t),e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Gg)!==Ug&&ji(t),t):null;case 24:return ti(C_,t),null;case 25:return null;default:return null}}function Ys(e,t){switch(Rr(t),t.tag){case 3:ti(C_,t),ue(t);break;case 26:case 27:case 5:pe(t);break;case 4:ue(t);break;case 31:t.memoizedState!==null&&xa(t);break;case 13:xa(t);break;case 19:T(wy,t);break;case 10:ti(t.type,t);break;case 22:case 23:xa(t),ga(t),e!==null&&T(yv,t);break;case 24:ti(C_,t)}}function Xs(e){return(e.mode&Gg)!==Ug}function Zs(e,t){Xs(e)?(Ai(),$s(t,e),Oi()):$s(t,e)}function Qs(e,t,n){Xs(e)?(Ai(),ec(n,e,t),Oi()):ec(n,e,t)}function $s(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e&&(r=void 0,(e&Dy)!==Ty&&(mS=!0),r=Te(t,Uv,n),(e&Dy)!==Ty&&(mS=!1),r!==void 0&&typeof r!=`function`)){var a=void 0;a=(n.tag&Oy)===0?(n.tag&Dy)===0?`useEffect`:`useInsertionEffect`:`useLayoutEffect`;var o=void 0;o=r===null?` You returned null. If your effect does not require clean up, return undefined (or nothing).`:typeof r.then==`function`?` 145 146It looks like you wrote `+a+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately: 147 148`+a+`(() => { 149 async function fetchData() { 150 // You can await here 151 const response = await MyAPI.getData(someId); 152 // ... 153 } 154 fetchData(); 155}, [someId]); // Or [] if effect doesn't need props or state 156 157Learn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching`:` You returned: `+r,Te(t,function(e,t){console.error(`%s must not return anything besides a function, which is used for clean-up.%s`,e,t)},a,o)}n=n.next}while(n!==i)}}catch(e){Ll(t,t.return,e)}}function ec(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;s!==void 0&&(o.destroy=void 0,(e&Dy)!==Ty&&(mS=!0),i=t,Te(i,Gv,i,n,s),(e&Dy)!==Ty&&(mS=!1))}r=r.next}while(r!==a)}}catch(e){Ll(t,t.return,e)}}function tc(e,t){Xs(e)?(Ai(),$s(t,e),Oi()):$s(t,e)}function nc(e,t,n){Xs(e)?(Ai(),ec(n,e,t),Oi()):ec(n,e,t)}function rc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;e.type.defaultProps||`ref`in e.memoizedProps||wb||(n.props!==e.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.",w(e)||`instance`),n.state!==e.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.",w(e)||`instance`));try{Te(e,pa,t,n)}catch(t){Ll(e,e.return,t)}}}function ic(e,t,n){return e.getSnapshotBeforeUpdate(t,n)}function ac(e,t){var n=t.memoizedProps,r=t.memoizedState;t=e.stateNode,e.type.defaultProps||`ref`in e.memoizedProps||wb||(t.props!==e.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.",w(e)||`instance`),t.state!==e.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.",w(e)||`instance`));try{var i=rs(e.type,n),a=Te(e,ic,t,i,r);n=kb,a!==void 0||n.has(e.type)||(n.add(e.type),Te(e,function(){console.error(`%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.`,w(e))})),t.__reactInternalSnapshotBeforeUpdate=a}catch(t){Ll(e,e.return,t)}}function oc(e,t,n){n.props=rs(e.type,e.memoizedProps),n.state=e.memoizedState,Xs(e)?(Ai(),Te(e,Vv,e,t,n),Oi()):Te(e,Vv,e,t,n)}function sc(e){var t=e.ref;if(t!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}if(typeof t==`function`)if(Xs(e))try{Ai(),e.refCleanup=t(n)}finally{Oi()}else e.refCleanup=t(n);else typeof t==`string`?console.error(`String refs are no longer supported.`):t.hasOwnProperty(`current`)||console.error(`Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().`,w(e)),t.current=n}}function cc(e,t){try{Te(e,sc,e)}catch(n){Ll(e,t,n)}}function lc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{if(Xs(e))try{Ai(),Te(e,r)}finally{Oi(e)}else Te(e,r)}catch(n){Ll(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{if(Xs(e))try{Ai(),Te(e,n,null)}finally{Oi(e)}else Te(e,n,null)}catch(n){Ll(e,t,n)}else n.current=null}function uc(e,t,n,r){var i=e.memoizedProps,a=i.id,o=i.onCommit;i=i.onRender,t=t===null?`mount`:`update`,fv&&(t=`nested-update`),typeof i==`function`&&i(a,t,e.actualDuration,e.treeBaseDuration,e.actualStartTime,n),typeof o==`function`&&o(a,t,r,n)}function dc(e,t,n,r){var i=e.memoizedProps;e=i.id,i=i.onPostCommit,t=t===null?`mount`:`update`,fv&&(t=`nested-update`),typeof i==`function`&&i(e,t,r,n)}function fc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{Te(e,Xu,r,t,n,e)}catch(t){Ll(e,e.return,t)}}function pc(e,t,n){try{Te(e,Qu,e.stateNode,e.type,n,t,e)}catch(t){Ll(e,e.return,t)}}function mc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&nd(e.type)||e.tag===4}function hc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||mc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&nd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function gc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(td(n),(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t)):(td(n),t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=fn));else if(r!==4&&(r===27&&nd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(gc(e,t,n),e=e.sibling;e!==null;)gc(e,t,n),e=e.sibling}function _c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&nd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(_c(e,t,n),e=e.sibling;e!==null;)_c(e,t,n),e=e.sibling}function vc(e){for(var t,n=e.return;n!==null;){if(mc(n)){t=n;break}n=n.return}if(t==null)throw Error(`Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.`);switch(t.tag){case 27:t=t.stateNode,n=hc(e),_c(e,n,t);break;case 5:n=t.stateNode,t.flags&32&&($u(n),t.flags&=-33),t=hc(e),_c(e,t,n);break;case 3:case 4:t=t.stateNode.containerInfo,n=hc(e),gc(e,n,t);break;default:throw Error(`Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.`)}}function yc(e){var t=e.stateNode,n=e.memoizedProps;try{Te(e,kd,e.type,n,t,e)}catch(t){Ll(e,e.return,t)}}function bc(e,t){return t.tag===31?(t=t.memoizedState,e.memoizedState!==null&&t===null):t.tag===13?(e=e.memoizedState,t=t.memoizedState,e!==null&&e.dehydrated!==null&&(t===null||t.dehydrated===null)):t.tag===3&&e.memoizedState.isDehydrated&&!(t.flags&256)}function xc(e,t){if(e=e.containerInfo,sC=QC,e=Gn(e),Kn(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break a}var o=0,s=-1,c=-1,l=0,u=0,d=e,f=null;b:for(;;){for(var p;d!==n||i!==0&&d.nodeType!==3||(s=o+i),d!==a||r!==0&&d.nodeType!==3||(c=o+r),d.nodeType===3&&(o+=d.nodeValue.length),(p=d.firstChild)!==null;)f=d,d=p;for(;;){if(d===e)break b;if(f===n&&++l===i&&(s=o),f===a&&++u===r&&(c=o),(p=d.nextSibling)!==null)break;d=f,f=d.parentNode}d=p}n=s===-1||c===-1?null:{start:s,end:c}}else n=null}n||={start:0,end:0}}else n=null;for(cC={focusedElem:e,selectionRange:n},QC=!1,Pb=t;Pb!==null;)if(t=Pb,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,Pb=e;else for(;Pb!==null;){switch(e=t=Pb,n=e.alternate,i=e.flags,e.tag){case 0:if(i&4&&(e=e.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)i=e[n],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:i&1024&&n!==null&&ac(e,n);break;case 3:if(i&1024){if(e=e.stateNode.containerInfo,n=e.nodeType,n===9)pd(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:pd(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(i&1024)throw Error(`This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.`)}if(e=t.sibling,e!==null){e.return=t.return,Pb=e;break}Pb=t.return}}function Sc(e,t,n){var r=yi(),i=xi(),a=Ci(),o=wi(),s=n.flags;switch(n.tag){case 0:case 11:case 15:Pc(e,n),s&4&&Zs(n,Oy|Ey);break;case 1:if(Pc(e,n),s&4)if(e=n.stateNode,t===null)n.type.defaultProps||`ref`in n.memoizedProps||wb||(e.props!==n.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",w(n)||`instance`),e.state!==n.memoizedState&&console.error("Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",w(n)||`instance`)),Xs(n)?(Ai(),Te(n,Fv,n,e),Oi()):Te(n,Fv,n,e);else{var c=rs(n.type,t.memoizedProps);t=t.memoizedState,n.type.defaultProps||`ref`in n.memoizedProps||wb||(e.props!==n.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",w(n)||`instance`),e.state!==n.memoizedState&&console.error("Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",w(n)||`instance`)),Xs(n)?(Ai(),Te(n,Lv,n,e,c,t,e.__reactInternalSnapshotBeforeUpdate),Oi()):Te(n,Lv,n,e,c,t,e.__reactInternalSnapshotBeforeUpdate)}s&64&&rc(n),s&512&&cc(n,n.return);break;case 3:if(t=hi(),Pc(e,n),s&64&&(s=n.updateQueue,s!==null)){if(c=null,n.child!==null)switch(n.child.tag){case 27:case 5:c=n.child.stateNode;break;case 1:c=n.child.stateNode}try{Te(n,pa,s,c)}catch(e){Ll(n,n.return,e)}}e.effectDuration+=gi(t);break;case 27:t===null&&s&4&&yc(n);case 26:case 5:if(Pc(e,n),t===null){if(s&4)fc(n);else if(s&64){e=n.type,t=n.memoizedProps,c=n.stateNode;try{Te(n,Zu,c,e,t,n)}catch(e){Ll(n,n.return,e)}}}s&512&&cc(n,n.return);break;case 12:if(s&4){s=hi(),Pc(e,n),e=n.stateNode,e.effectDuration+=_i(s);try{Te(n,uc,n,t,k_,e.effectDuration)}catch(e){Ll(n,n.return,e)}}else Pc(e,n);break;case 31:Pc(e,n),s&4&&Ec(e,n);break;case 13:Pc(e,n),s&4&&Dc(e,n),s&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(s=Vl.bind(null,n),yd(e,s))));break;case 22:if(s=n.memoizedState!==null||Ab,!s){t=t!==null&&t.memoizedState!==null||jb,c=Ab;var l=jb;Ab=s,(jb=t)&&!l?(Rc(e,n,!!(n.subtreeFlags&8772)),(n.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&nr(n,F_,I_)):Pc(e,n),Ab=c,jb=l}break;case 30:break;default:Pc(e,n)}(n.mode&Gg)!==Ug&&0<=F_&&0<=I_&&((R_||.05<P_)&&ar(n,F_,I_,P_,L_),n.alternate===null&&n.return!==null&&n.return.alternate!==null&&.05<I_-F_&&(bc(n.return.alternate,n.return)||tr(n,F_,I_,`Mount`))),bi(r),Si(i),L_=a,R_=o}function Cc(e){var t=e.alternate;t!==null&&(e.alternate=null,Cc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&$e(t)),e.stateNode=null,e._debugOwner=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function wc(e,t,n){for(n=n.child;n!==null;)Tc(e,t,n),n=n.sibling}function Tc(e,t,n){if(Ip&&typeof Ip.onCommitFiberUnmount==`function`)try{Ip.onCommitFiberUnmount(Fp,n)}catch(e){Lp||(Lp=!0,console.error(`React instrumentation encountered an error: %o`,e))}var r=yi(),i=xi(),a=Ci(),o=wi();switch(n.tag){case 26:jb||lc(n,t),wc(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(e=n.stateNode,e.parentNode.removeChild(e));break;case 27:jb||lc(n,t);var s=Lb,c=Rb;nd(n.type)&&(Lb=n.stateNode,Rb=!1),wc(e,t,n),Te(n,Ad,n.stateNode),Lb=s,Rb=c;break;case 5:jb||lc(n,t);case 6:if(s=Lb,c=Rb,Lb=null,wc(e,t,n),Lb=s,Rb=c,Lb!==null)if(Rb)try{Te(n,id,Lb,n.stateNode)}catch(e){Ll(n,t,e)}else try{Te(n,rd,Lb,n.stateNode)}catch(e){Ll(n,t,e)}break;case 18:Lb!==null&&(Rb?(e=Lb,ad(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Tf(e)):ad(Lb,n.stateNode));break;case 4:s=Lb,c=Rb,Lb=n.stateNode.containerInfo,Rb=!0,wc(e,t,n),Lb=s,Rb=c;break;case 0:case 11:case 14:case 15:ec(Dy,n,t),jb||Qs(n,t,Oy),wc(e,t,n);break;case 1:jb||(lc(n,t),s=n.stateNode,typeof s.componentWillUnmount==`function`&&oc(n,t,s)),wc(e,t,n);break;case 21:wc(e,t,n);break;case 22:jb=(s=jb)||n.memoizedState!==null,wc(e,t,n),jb=s;break;default:wc(e,t,n)}(n.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(n,F_,I_,P_,L_),bi(r),Si(i),L_=a,R_=o}function Ec(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Te(t,Ed,e)}catch(e){Ll(t,t.return,e)}}}function Dc(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Te(t,Dd,e)}catch(e){Ll(t,t.return,e)}}function Oc(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Nb),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Nb),t;default:throw Error(`Unexpected Suspense handler tag (`+e.tag+`). This is a bug in React.`)}}function kc(e,t){var n=Oc(e);t.forEach(function(t){if(!n.has(t)){if(n.add(t),Rp)if(Fb!==null&&Ib!==null)ql(Ib,Fb);else throw Error(`Expected finished root and lanes to be set. This is a bug in React.`);var r=Hl.bind(null,e,t);t.then(r,r)}})}function Ac(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=e,a=t,o=n[r],s=yi(),c=a;a:for(;c!==null;){switch(c.tag){case 27:if(nd(c.type)){Lb=c.stateNode,Rb=!1;break a}break;case 5:Lb=c.stateNode,Rb=!1;break a;case 3:case 4:Lb=c.stateNode.containerInfo,Rb=!0;break a}c=c.return}if(Lb===null)throw Error(`Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.`);Tc(i,a,o),Lb=null,Rb=!1,(o.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&tr(o,F_,I_,`Unmount`),bi(s),i=o,a=i.alternate,a!==null&&(a.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)jc(t,e),t=t.sibling}function jc(e,t){var n=yi(),r=xi(),i=Ci(),a=wi(),o=e.alternate,s=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:Ac(t,e),Mc(e),s&4&&(ec(Dy|Ey,e,e.return),$s(Dy|Ey,e),Qs(e,e.return,Oy|Ey));break;case 1:if(Ac(t,e),Mc(e),s&512&&(jb||o===null||lc(o,o.return)),s&64&&Ab&&(s=e.updateQueue,s!==null&&(o=s.callbacks,o!==null))){var c=s.shared.hiddenCallbacks;s.shared.hiddenCallbacks=c===null?o:c.concat(o)}break;case 26:if(c=zb,Ac(t,e),Mc(e),s&512&&(jb||o===null||lc(o,o.return)),s&4){var l=o===null?null:o.memoizedState;if(s=e.memoizedState,o===null)if(s===null)if(e.stateNode===null){a:{s=e.type,o=e.memoizedProps,c=c.ownerDocument||c;b:switch(s){case`title`:l=c.getElementsByTagName(`title`)[0],(!l||l[rm]||l[Xp]||l.namespaceURI===Bm||l.hasAttribute(`itemprop`))&&(l=c.createElement(s),c.head.insertBefore(l,c.querySelector(`head > title`))),Ou(l,s,o),l[Xp]=e,it(l),s=l;break a;case`link`:var u=Gd(`link`,`href`,c).get(s+(o.href||``));if(u){for(var d=0;d<u.length;d++)if(l=u[d],l.getAttribute(`href`)===(o.href==null||o.href===``?null:o.href)&&l.getAttribute(`rel`)===(o.rel==null?null:o.rel)&&l.getAttribute(`title`)===(o.title==null?null:o.title)&&l.getAttribute(`crossorigin`)===(o.crossOrigin==null?null:o.crossOrigin)){u.splice(d,1);break b}}l=c.createElement(s),Ou(l,s,o),c.head.appendChild(l);break;case`meta`:if(u=Gd(`meta`,`content`,c).get(s+(o.content||``))){for(d=0;d<u.length;d++)if(l=u[d],Ae(o.content,`content`),l.getAttribute(`content`)===(o.content==null?null:``+o.content)&&l.getAttribute(`name`)===(o.name==null?null:o.name)&&l.getAttribute(`property`)===(o.property==null?null:o.property)&&l.getAttribute(`http-equiv`)===(o.httpEquiv==null?null:o.httpEquiv)&&l.getAttribute(`charset`)===(o.charSet==null?null:o.charSet)){u.splice(d,1);break b}}l=c.createElement(s),Ou(l,s,o),c.head.appendChild(l);break;default:throw Error(`getNodesForType encountered a type it did not expect: "`+s+`". This is a bug in React.`)}l[Xp]=e,it(l),s=l}e.stateNode=s}else Kd(c,e.type,e.stateNode);else e.stateNode=Vd(c,s,e.memoizedProps);else l===s?s===null&&e.stateNode!==null&&pc(e,e.memoizedProps,o.memoizedProps):(l===null?o.stateNode!==null&&(o=o.stateNode,o.parentNode.removeChild(o)):l.count--,s===null?Kd(c,e.type,e.stateNode):Vd(c,s,e.memoizedProps))}break;case 27:Ac(t,e),Mc(e),s&512&&(jb||o===null||lc(o,o.return)),o!==null&&s&4&&pc(e,e.memoizedProps,o.memoizedProps);break;case 5:if(Ac(t,e),Mc(e),s&512&&(jb||o===null||lc(o,o.return)),e.flags&32){c=e.stateNode;try{Te(e,$u,c)}catch(t){Ll(e,e.return,t)}}s&4&&e.stateNode!=null&&(c=e.memoizedProps,pc(e,c,o===null?c:o.memoizedProps)),s&1024&&(Mb=!0,e.type!==`form`&&console.error(`Unexpected host component type. Expected a form. This is a bug in React.`));break;case 6:if(Ac(t,e),Mc(e),s&4){if(e.stateNode===null)throw Error(`This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.`);s=e.memoizedProps,o=o===null?s:o.memoizedProps,c=e.stateNode;try{Te(e,ed,c,o,s)}catch(t){Ll(e,e.return,t)}}break;case 3:if(c=hi(),DC=null,l=zb,zb=jd(t.containerInfo),Ac(t,e),zb=l,Mc(e),s&4&&o!==null&&o.memoizedState.isDehydrated)try{Te(e,Td,t.containerInfo)}catch(t){Ll(e,e.return,t)}Mb&&(Mb=!1,Nc(e)),t.effectDuration+=gi(c);break;case 4:s=zb,zb=jd(e.stateNode.containerInfo),Ac(t,e),Mc(e),zb=s;break;case 12:s=hi(),Ac(t,e),Mc(e),e.stateNode.effectDuration+=_i(s);break;case 31:Ac(t,e),Mc(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,kc(e,s)));break;case 13:Ac(t,e),Mc(e),e.child.flags&8192&&e.memoizedState!==null!=(o!==null&&o.memoizedState!==null)&&(jx=Ep()),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,kc(e,s)));break;case 22:c=e.memoizedState!==null;var f=o!==null&&o.memoizedState!==null,p=Ab,m=jb;if(Ab=p||c,jb=m||f,Ac(t,e),jb=m,Ab=p,f&&!c&&!p&&!m&&(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&nr(e,F_,I_),Mc(e),s&8192)a:for(t=e.stateNode,t._visibility=c?t._visibility&~Fg:t._visibility|Fg,!c||o===null||f||Ab||jb||(Ic(e),(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&tr(e,F_,I_,`Disconnect`)),o=null,t=e;;){if(t.tag===5||t.tag===26){if(o===null){f=o=t;try{l=f.stateNode,c?Te(f,cd,l):Te(f,dd,f.stateNode,f.memoizedProps)}catch(e){Ll(f,f.return,e)}}}else if(t.tag===6){if(o===null){f=t;try{u=f.stateNode,c?Te(f,ld,u):Te(f,fd,u,f.memoizedProps)}catch(e){Ll(f,f.return,e)}}}else if(t.tag===18){if(o===null){f=t;try{d=f.stateNode,c?Te(f,sd,d):Te(f,ud,f.stateNode)}catch(e){Ll(f,f.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;o===t&&(o=null),t=t.return}o===t&&(o=null),t.sibling.return=t.return,t=t.sibling}s&4&&(s=e.updateQueue,s!==null&&(o=s.retryQueue,o!==null&&(s.retryQueue=null,kc(e,o))));break;case 19:Ac(t,e),Mc(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,kc(e,s)));break;case 30:break;case 21:break;default:Ac(t,e),Mc(e)}(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&((R_||.05<P_)&&ar(e,F_,I_,P_,L_),e.alternate===null&&e.return!==null&&e.return.alternate!==null&&.05<I_-F_&&(bc(e.return.alternate,e.return)||tr(e,F_,I_,`Mount`))),bi(n),Si(r),L_=i,R_=a}function Mc(e){var t=e.flags;if(t&2){try{Te(e,vc,e)}catch(t){Ll(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Nc(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Nc(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function Pc(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Sc(e,t.alternate,t),t=t.sibling}function Fc(e){var t=yi(),n=xi(),r=Ci(),i=wi();switch(e.tag){case 0:case 11:case 14:case 15:Qs(e,e.return,Oy),Ic(e);break;case 1:lc(e,e.return);var a=e.stateNode;typeof a.componentWillUnmount==`function`&&oc(e,e.return,a),Ic(e);break;case 27:Te(e,Ad,e.stateNode);case 26:case 5:lc(e,e.return),Ic(e);break;case 22:e.memoizedState===null&&Ic(e);break;case 30:Ic(e);break;default:Ic(e)}(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(e,F_,I_,P_,L_),bi(t),Si(n),L_=r,R_=i}function Ic(e){for(e=e.child;e!==null;)Fc(e),e=e.sibling}function Lc(e,t,n,r){var i=yi(),a=xi(),o=Ci(),s=wi(),c=n.flags;switch(n.tag){case 0:case 11:case 15:Rc(e,n,r),Zs(n,Oy);break;case 1:if(Rc(e,n,r),t=n.stateNode,typeof t.componentDidMount==`function`&&Te(n,Fv,n,t),t=n.updateQueue,t!==null){e=n.stateNode;try{Te(n,fa,t,e)}catch(e){Ll(n,n.return,e)}}r&&c&64&&rc(n),cc(n,n.return);break;case 27:yc(n);case 26:case 5:Rc(e,n,r),r&&t===null&&c&4&&fc(n),cc(n,n.return);break;case 12:if(r&&c&4){c=hi(),Rc(e,n,r),r=n.stateNode,r.effectDuration+=_i(c);try{Te(n,uc,n,t,k_,r.effectDuration)}catch(e){Ll(n,n.return,e)}}else Rc(e,n,r);break;case 31:Rc(e,n,r),r&&c&4&&Ec(e,n);break;case 13:Rc(e,n,r),r&&c&4&&Dc(e,n);break;case 22:n.memoizedState===null&&Rc(e,n,r),cc(n,n.return);break;case 30:break;default:Rc(e,n,r)}(n.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(n,F_,I_,P_,L_),bi(i),Si(a),L_=o,R_=s}function Rc(e,t,n){for(n&&=!!(t.subtreeFlags&8772),t=t.child;t!==null;)Lc(e,t.alternate,t,n),t=t.sibling}function zc(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&di(e),n!=null&&fi(n))}function Bc(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(di(t),e!=null&&fi(e))}function Vc(e,t,n,r,i){if(t.subtreeFlags&10256||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child))for(t=t.child;t!==null;){var a=t.sibling;Hc(e,t,n,r,a===null?i:a.actualStartTime),t=a}}function Hc(e,t,n,r,i){var a=yi(),o=xi(),s=Ci(),c=wi(),l=kg,u=t.flags;switch(t.tag){case 0:case 11:case 15:(t.mode&Gg)!==Ug&&0<t.actualStartTime&&t.flags&1&&rr(t,t.actualStartTime,i,Bb,n),Vc(e,t,n,r,i),u&2048&&tc(t,ky|Ey);break;case 1:(t.mode&Gg)!==Ug&&0<t.actualStartTime&&(t.flags&128?ir(t,t.actualStartTime,i,[]):t.flags&1&&rr(t,t.actualStartTime,i,Bb,n)),Vc(e,t,n,r,i);break;case 3:var d=hi(),f=Bb;Bb=t.alternate!==null&&t.alternate.memoizedState.isDehydrated&&!(t.flags&256),Vc(e,t,n,r,i),Bb=f,u&2048&&(n=null,t.alternate!==null&&(n=t.alternate.memoizedState.cache),r=t.memoizedState.cache,r!==n&&(di(r),n!=null&&fi(n))),e.passiveEffectDuration+=gi(d);break;case 12:if(u&2048){u=hi(),Vc(e,t,n,r,i),e=t.stateNode,e.passiveEffectDuration+=_i(u);try{Te(t,dc,t,t.alternate,k_,e.passiveEffectDuration)}catch(e){Ll(t,t.return,e)}}else Vc(e,t,n,r,i);break;case 31:u=Bb,d=t.alternate===null?null:t.alternate.memoizedState,f=t.memoizedState,d!==null&&f===null?(f=t.deletions,f!==null&&0<f.length&&f[0].tag===18?(Bb=!1,d=d.hydrationErrors,d!==null&&ir(t,t.actualStartTime,i,d)):Bb=!0):Bb=!1,Vc(e,t,n,r,i),Bb=u;break;case 13:u=Bb,d=t.alternate===null?null:t.alternate.memoizedState,f=t.memoizedState,d===null||d.dehydrated===null||f!==null&&f.dehydrated!==null?Bb=!1:(f=t.deletions,f!==null&&0<f.length&&f[0].tag===18?(Bb=!1,d=d.hydrationErrors,d!==null&&ir(t,t.actualStartTime,i,d)):Bb=!0),Vc(e,t,n,r,i),Bb=u;break;case 23:break;case 22:f=t.stateNode,d=t.alternate,t.memoizedState===null?f._visibility&Ig?Vc(e,t,n,r,i):(f._visibility|=Ig,Uc(e,t,n,r,!!(t.subtreeFlags&10256)||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child),i),(t.mode&Gg)===Ug||Bb||(e=t.actualStartTime,0<=e&&.05<i-e&&nr(t,e,i),0<=F_&&0<=I_&&.05<I_-F_&&nr(t,F_,I_))):f._visibility&Ig?Vc(e,t,n,r,i):Gc(e,t,n,r,i),u&2048&&zc(d,t);break;case 24:Vc(e,t,n,r,i),u&2048&&Bc(t.alternate,t);break;default:Vc(e,t,n,r,i)}(t.mode&Gg)!==Ug&&((e=!Bb&&t.alternate===null&&t.return!==null&&t.return.alternate!==null)&&(n=t.actualStartTime,0<=n&&.05<i-n&&tr(t,n,i,`Mount`)),0<=F_&&0<=I_&&((R_||.05<P_)&&ar(t,F_,I_,P_,L_),e&&.05<I_-F_&&tr(t,F_,I_,`Mount`))),bi(a),Si(o),L_=s,R_=c,kg=l}function Uc(e,t,n,r,i,a){for(i&&=!!(t.subtreeFlags&10256)||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child),t=t.child;t!==null;){var o=t.sibling;Wc(e,t,n,r,i,o===null?a:o.actualStartTime),t=o}}function Wc(e,t,n,r,i,a){var o=yi(),s=xi(),c=Ci(),l=wi(),u=kg;i&&(t.mode&Gg)!==Ug&&0<t.actualStartTime&&t.flags&1&&rr(t,t.actualStartTime,a,Bb,n);var d=t.flags;switch(t.tag){case 0:case 11:case 15:Uc(e,t,n,r,i,a),tc(t,ky);break;case 23:break;case 22:var f=t.stateNode;t.memoizedState===null?(f._visibility|=Ig,Uc(e,t,n,r,i,a)):f._visibility&Ig?Uc(e,t,n,r,i,a):Gc(e,t,n,r,a),i&&d&2048&&zc(t.alternate,t);break;case 24:Uc(e,t,n,r,i,a),i&&d&2048&&Bc(t.alternate,t);break;default:Uc(e,t,n,r,i,a)}(t.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(t,F_,I_,P_,L_),bi(o),Si(s),L_=c,R_=l,kg=u}function Gc(e,t,n,r,i){if(t.subtreeFlags&10256||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child))for(var a=t.child;a!==null;){t=a.sibling;var o=e,s=n,c=r,l=t===null?i:t.actualStartTime,u=kg;(a.mode&Gg)!==Ug&&0<a.actualStartTime&&a.flags&1&&rr(a,a.actualStartTime,l,Bb,s);var d=a.flags;switch(a.tag){case 22:Gc(o,a,s,c,l),d&2048&&zc(a.alternate,a);break;case 24:Gc(o,a,s,c,l),d&2048&&Bc(a.alternate,a);break;default:Gc(o,a,s,c,l)}kg=u,a=t}}function Kc(e,t,n){if(e.subtreeFlags&Vb)for(e=e.child;e!==null;)qc(e,t,n),e=e.sibling}function qc(e,t,n){switch(e.tag){case 26:Kc(e,t,n),e.flags&Vb&&e.memoizedState!==null&&Yd(n,zb,e.memoizedState,e.memoizedProps);break;case 5:Kc(e,t,n);break;case 3:case 4:var r=zb;zb=jd(e.stateNode.containerInfo),Kc(e,t,n),zb=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Vb,Vb=16777216,Kc(e,t,n),Vb=r):Kc(e,t,n));break;default:Kc(e,t,n)}}function Jc(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Yc(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n],i=yi();Pb=r,Qc(r,e),(r.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&tr(r,F_,I_,`Unmount`),bi(i)}Jc(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)F(e),e=e.sibling}function F(e){var t=yi(),n=xi(),r=Ci(),i=wi();switch(e.tag){case 0:case 11:case 15:Yc(e),e.flags&2048&&nc(e,e.return,ky|Ey);break;case 3:var a=hi();Yc(e),e.stateNode.passiveEffectDuration+=gi(a);break;case 12:a=hi(),Yc(e),e.stateNode.passiveEffectDuration+=_i(a);break;case 22:a=e.stateNode,e.memoizedState!==null&&a._visibility&Ig&&(e.return===null||e.return.tag!==13)?(a._visibility&=~Ig,Xc(e),(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&tr(e,F_,I_,`Disconnect`)):Yc(e);break;default:Yc(e)}(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(e,F_,I_,P_,L_),bi(t),Si(n),R_=i,L_=r}function Xc(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n],i=yi();Pb=r,Qc(r,e),(r.mode&Gg)!==Ug&&0<=F_&&0<=I_&&.05<I_-F_&&tr(r,F_,I_,`Unmount`),bi(i)}Jc(e)}for(e=e.child;e!==null;)Zc(e),e=e.sibling}function Zc(e){var t=yi(),n=xi(),r=Ci(),i=wi();switch(e.tag){case 0:case 11:case 15:nc(e,e.return,ky),Xc(e);break;case 22:var a=e.stateNode;a._visibility&Ig&&(a._visibility&=~Ig,Xc(e));break;default:Xc(e)}(e.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(e,F_,I_,P_,L_),bi(t),Si(n),R_=i,L_=r}function Qc(e,t){for(;Pb!==null;){var n=Pb,r=n,i=t,a=yi(),o=xi(),s=Ci(),c=wi();switch(r.tag){case 0:case 11:case 15:nc(r,i,ky);break;case 23:case 22:r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(i=r.memoizedState.cachePool.pool,i!=null&&di(i));break;case 24:fi(r.memoizedState.cache)}if((r.mode&Gg)!==Ug&&0<=F_&&0<=I_&&(R_||.05<P_)&&ar(r,F_,I_,P_,L_),bi(a),Si(o),R_=c,L_=s,r=n.child,r!==null)r.return=n,Pb=r;else a:for(n=e;Pb!==null;){if(r=Pb,a=r.sibling,o=r.return,Cc(r),r===n){Pb=null;break a}if(a!==null){a.return=o,Pb=a;break a}Pb=o}}}function $c(){Wb.forEach(function(e){return e()})}function el(){var e=typeof IS_REACT_ACT_ENVIRONMENT<`u`?IS_REACT_ACT_ENVIRONMENT:void 0;return e||L.actQueue===null||console.error(`The current testing environment is not configured to support act(...)`),e}function tl(e){if((nx&qb)!==Kb&&ax!==0)return ax&-ax;var t=L.T;return t===null?Ze():(t._updatedFibers||=new Set,t._updatedFibers.add(e),au())}function nl(){if(Ex===0)if(!(ax&536870912)||c_){var e=Up;Up<<=1,!(Up&3932160)&&(Up=262144),Ex=e}else Ex=536870912;return e=by.current,e!==null&&(e.flags|=32),Ex}function rl(e,t,n){if(mS&&console.error(`useInsertionEffect must not schedule updates.`),lS&&(uS=!0),(e===rx&&(gx===cx||gx===hx)||e.cancelPendingCommit!==null)&&(dl(e,0),sl(e,ax,Ex,!1)),He(e,n),(nx&qb)!==Kb&&e===rx){if(bp)switch(t.tag){case 0:case 11:case 15:e=ix&&w(ix)||`Unknown`,_S.has(e)||(_S.add(e),t=w(t)||`Unknown`,console.error("Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render",t,e,e));break;case 1:gS||=(console.error("Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."),!0)}}else Rp&&Je(e,t,n),Yl(t),e===rx&&((nx&qb)===Kb&&(wx|=n),Sx===$b&&sl(e,ax,Ex,!1)),Xl(e)}function il(e,t,n){if((nx&(qb|Jb))!==Kb)throw Error(`Should not already be working.`);if(ax!==0&&ix!==null){var r=ix,i=Ep();switch(uv){case lx:case cx:var a=dv;Tg&&((r=r._debugTask)?r.run(console.timeStamp.bind(console,`Suspended`,a,i,Eg,void 0,`primary-light`)):console.timeStamp(`Suspended`,a,i,Eg,void 0,`primary-light`));break;case hx:a=dv,Tg&&((r=r._debugTask)?r.run(console.timeStamp.bind(console,`Action`,a,i,Eg,void 0,`primary-light`)):console.timeStamp(`Action`,a,i,Eg,void 0,`primary-light`));break;default:Tg&&(r=i-dv,3>r||console.timeStamp(`Blocked`,dv,i,Eg,void 0,5>r?`primary-light`:10>r?`primary`:100>r?`primary-dark`:`error`))}}a=(n=!n&&!(t&127)&&(t&e.expiredLanes)===0||Re(e,t))?bl(e,t):vl(e,t,!0);var o=n;do{if(a===Yb){yx&&!n&&sl(e,t,0,!1),t=gx,dv=w_(),uv=t;break}if(r=Ep(),i=e.current.alternate,o&&!ol(i)){er(t),i=O_,a=r,!Tg||a<=i||(Lx?Lx.run(console.timeStamp.bind(console,`Teared Render`,i,a,Og,Dg,`error`)):console.timeStamp(`Teared Render`,i,a,Og,Dg,`error`)),ul(t,r),a=vl(e,t,!1),o=!1;continue}if(a===Zb){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){er(t),ur(O_,r,t,Lx),ul(t,r),t=s;a:{r=e,a=o,o=Ox;var c=r.current.memoizedState.isDehydrated;if(c&&(dl(r,s).flags|=256),s=vl(r,s,!1),s!==Zb){if(bx&&!c){r.errorRecoveryDisabledLanes|=a,wx|=a,a=$b;break a}r=kx,kx=o,r!==null&&(kx===null?kx=r:kx.push.apply(kx,r))}a=s}if(o=!1,a!==Zb)continue;r=Ep()}}if(a===Xb){er(t),ur(O_,r,t,Lx),ul(t,r),dl(e,0),sl(e,t,0,!0);break}a:{switch(n=e,a){case Yb:case Xb:throw Error(`Root did not complete. This is a bug in React.`);case $b:if((t&4194048)!==t)break;case ex:er(t),sr(O_,r,t,Lx),ul(t,r),i=t,i&127?J_=r:i&4194048&&(av=r),sl(n,t,Ex,!vx);break a;case Zb:kx=null;break;case Qb:case tx:break;default:throw Error(`Unknown root exit status.`)}if(L.actQueue!==null)Ol(n,i,t,kx,Ix,Ax,Ex,wx,Dx,a,null,null,O_,r);else{if((t&62914560)===t&&(o=jx+Nx-Ep(),10<o)){if(sl(n,t,Ex,!vx),Le(n,0,!0)!==0)break a;Qx=t,n.timeoutHandle=fC(al.bind(null,n,i,kx,Ix,Ax,t,Ex,wx,Dx,vx,a,`Throttled`,O_,r),o);break a}al(n,i,kx,Ix,Ax,t,Ex,wx,Dx,vx,a,null,O_,r)}}break}while(1);Xl(e)}function al(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.timeoutHandle=mC;var m=t.subtreeFlags,h=null;if((m&8192||(m&16785408)==16785408)&&(h={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:fn},qc(t,a,h),m=(a&62914560)===a?jx-Ep():(a&4194048)===a?Mx-Ep():0,m=Xd(h,m),m!==null)){Qx=a,e.cancelPendingCommit=m(Ol.bind(null,e,t,a,n,r,i,o,s,c,u,h,h.waitingForViewTransition?`Waiting for the previous Animation`:0<h.count?0<h.imgCount?`Suspended on CSS and Images`:`Suspended on CSS`:h.imgCount===1?`Suspended on an Image`:0<h.imgCount?`Suspended on Images`:null,f,p)),sl(e,a,o,!l);return}Ol(e,t,a,n,r,i,o,s,c,u,h,d,f,p)}function ol(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Jh(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function sl(e,t,n,r){t&=~Tx,t&=~wx,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-zp(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&We(e,n,t)}function cl(){return(nx&(qb|Jb))!==Kb||(Zl(0,!1),!1)}function ll(){if(ix!==null){if(gx===ox)var e=ix.return;else e=ix,$r(),Pa(e),ey=null,ty=0,e=ix;for(;e!==null;)Ys(e.alternate,e),e=e.return;ix=null}}function ul(e,t){e&127&&(z_=t),e&4194048&&(Y_=t),e&62914560&&(ov=t),e&2080374784&&(sv=t)}function dl(e,t){Tg&&(console.timeStamp(`Blocking Track`,.003,.003,`Blocking`,Dg,`primary-light`),console.timeStamp(`Transition Track`,.003,.003,`Transition`,Dg,`primary-light`),console.timeStamp(`Suspense Track`,.003,.003,`Suspense`,Dg,`primary-light`),console.timeStamp(`Idle Track`,.003,.003,`Idle`,Dg,`primary-light`));var n=O_;if(O_=w_(),ax!==0&&0<n){if(er(ax),Sx===Qb||Sx===$b)sr(n,O_,t,Lx);else{var r=O_,i=Lx;if(Tg&&!(r<=n)){var a=(t&738197653)===t?`tertiary-dark`:`primary-dark`,o=(t&536870912)===t?`Prewarm`:(t&201326741)===t?`Interrupted Hydration`:`Interrupted Render`;i?i.run(console.timeStamp.bind(console,o,n,r,Og,Dg,a)):console.timeStamp(o,n,r,Og,Dg,a)}}ul(ax,O_)}if(n=Lx,Lx=null,t&127){Lx=V_,i=0<=B_&&B_<z_?z_:B_,r=0<=G_&&G_<z_?z_:G_,a=0<=r?r:0<=i?i:O_,0<=J_?(er(2),cr(J_,a,t,n)):cv&127&&(er(2),pr(z_,a,lv)),n=i;var s=r,c=K_,l=0<q_,u=H_===E_,d=H_===D_;if(i=O_,r=V_,a=U_,o=W_,Tg){if(Og=`Blocking`,0<n?n>i&&(n=i):n=i,0<s?s>n&&(s=n):s=n,c!==null&&n>s){var f=l?`secondary-light`:`warning`;r?r.run(console.timeStamp.bind(console,l?`Consecutive`:`Event: `+c,s,n,Og,Dg,f)):console.timeStamp(l?`Consecutive`:`Event: `+c,s,n,Og,Dg,f)}i>n&&(s=u?`error`:(t&738197653)===t?`tertiary-light`:`primary-light`,u=d?`Promise Resolved`:u?`Cascading Update`:5<i-n?`Update Blocked`:`Update`,d=[],o!=null&&d.push([`Component name`,o]),a!=null&&d.push([`Method name`,a]),n={start:n,end:i,detail:{devtools:{properties:d,track:Og,trackGroup:Dg,color:s}}},r?r.run(performance.measure.bind(performance,u,n)):performance.measure(u,n))}B_=-1.1,H_=0,W_=U_=null,J_=-1.1,q_=G_,G_=-1.1,z_=w_()}if(t&4194048&&(Lx=$_,i=0<=X_&&X_<Y_?Y_:X_,n=0<=Z_&&Z_<Y_?Y_:Z_,r=0<=nv&&nv<Y_?Y_:nv,a=0<=r?r
157:0<=n?n:O_,0<=av?(er(256),cr(av,a,t,Lx)):cv&4194048&&(er(256),pr(Y_,a,lv)),d=r,s=rv,c=0<iv,l=Q_===D_,a=O_,r=$_,o=ev,u=tv,Tg&&(Og=`Transition`,0<n?n>a&&(n=a):n=a,0<i?i>n&&(i=n):i=n,0<d?d>i&&(d=i):d=i,i>d&&s!==null&&(f=c?`secondary-light`:`warning`,r?r.run(console.timeStamp.bind(console,c?`Consecutive`:`Event: `+s,d,i,Og,Dg,f)):console.timeStamp(c?`Consecutive`:`Event: `+s,d,i,Og,Dg,f)),n>i&&(r?r.run(console.timeStamp.bind(console,`Action`,i,n,Og,Dg,`primary-dark`)):console.timeStamp(`Action`,i,n,Og,Dg,`primary-dark`)),a>n&&(i=l?`Promise Resolved`:5<a-n?`Update Blocked`:`Update`,d=[],u!=null&&d.push([`Component name`,u]),o!=null&&d.push([`Method name`,o]),n={start:n,end:a,detail:{devtools:{properties:d,track:Og,trackGroup:Dg,color:`primary-light`}}},r?r.run(performance.measure.bind(performance,i,n)):performance.measure(i,n))),Z_=X_=-1.1,Q_=0,av=-1.1,iv=nv,nv=-1.1,Y_=w_()),t&62914560&&cv&62914560&&(er(4194304),pr(ov,O_,lv)),t&2080374784&&cv&2080374784&&(er(268435456),pr(sv,O_,lv)),n=e.timeoutHandle,n!==mC&&(e.timeoutHandle=mC,pC(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Qx=0,ll(),rx=e,ix=n=Er(e.current,null),ax=t,gx=ox,_x=null,vx=!1,yx=Re(e,t),bx=!1,Sx=Yb,Dx=Ex=Tx=wx=Cx=0,kx=Ox=null,Ax=!1,t&8&&(t|=t&32),r=e.entangledLanes,r!==0)for(e=e.entanglements,r&=t;0<r;)i=31-zp(r),a=1<<i,t|=e[i],r&=~a;return xx=t,mr(),e=mg(),1e3<e-fg&&(L.recentlyCreatedOwnerStacks=0,fg=e),bv.discardPendingWarnings(),n}function fl(e,t){Iy=null,L.H=Xy,L.getCurrentStack=null,bp=!1,yp=null,t===Jv||t===Xv?(t=Hi(),gx=lx):t===Yv?(t=Hi(),gx=ux):gx=t===vb?mx:typeof t==`object`&&t&&typeof t.then==`function`?fx:sx,_x=t;var n=ix;n===null?(Sx=Xb,ss(e,Pr(t,e.current))):n.mode&Gg&&Ei(n)}function pl(){var e=by.current;return e===null?!0:(ax&4194048)===ax?xy===null:(ax&62914560)===ax||ax&536870912?e===xy:!1}function ml(){var e=L.H;return L.H=Xy,e===null?Xy:e}function hl(){var e=L.A;return L.A=Hb,e}function gl(e){Lx===null&&(Lx=e._debugTask==null?null:e._debugTask)}function _l(){Sx=$b,vx||(ax&4194048)!==ax&&by.current!==null||(yx=!0),!(Cx&134217727)&&!(wx&134217727)||rx===null||sl(rx,ax,Ex,!1)}function vl(e,t,n){var r=nx;nx|=qb;var i=ml(),a=hl();if(rx!==e||ax!==t){if(Rp){var o=e.memoizedUpdaters;0<o.size&&(ql(e,ax),o.clear()),Ye(e,t)}Ix=null,dl(e,t)}t=!1,o=Sx;a:do try{if(gx!==ox&&ix!==null){var s=ix,c=_x;switch(gx){case mx:ll(),o=ex;break a;case lx:case cx:case hx:case fx:by.current===null&&(t=!0);var l=gx;if(gx=ox,_x=null,Tl(e,s,c,l),n&&yx){o=Yb;break a}break;default:l=gx,gx=ox,_x=null,Tl(e,s,c,l)}}yl(),o=Sx;break}catch(t){fl(e,t)}while(1);return t&&e.shellSuspendCounter++,$r(),nx=r,L.H=i,L.A=a,ix===null&&(rx=null,ax=0,mr()),o}function yl(){for(;ix!==null;)Sl(ix)}function bl(e,t){var n=nx;nx|=qb;var r=ml(),i=hl();if(rx!==e||ax!==t){if(Rp){var a=e.memoizedUpdaters;0<a.size&&(ql(e,ax),a.clear()),Ye(e,t)}Ix=null,Px=Ep()+Fx,dl(e,t)}else yx=Re(e,t);a:do try{if(gx!==ox&&ix!==null)b:switch(t=ix,a=_x,gx){case sx:gx=ox,_x=null,Tl(e,t,a,sx);break;case cx:case hx:if(zi(a)){gx=ox,_x=null,Cl(t);break}t=function(){gx!==cx&&gx!==hx||rx!==e||(gx=px),Xl(e)},a.then(t,t);break a;case lx:gx=px;break a;case ux:gx=dx;break a;case px:zi(a)?(gx=ox,_x=null,Cl(t)):(gx=ox,_x=null,Tl(e,t,a,px));break;case dx:var o=null;switch(ix.tag){case 26:o=ix.memoizedState;case 5:case 27:var s=ix;if(o?Jd(o):s.stateNode.complete){gx=ox,_x=null;var c=s.sibling;if(c!==null)ix=c;else{var l=s.return;l===null?ix=null:(ix=l,El(l))}break b}break;default:console.error(`Unexpected type of fiber triggered a suspensey commit. This is a bug in React.`)}gx=ox,_x=null,Tl(e,t,a,dx);break;case fx:gx=ox,_x=null,Tl(e,t,a,fx);break;case mx:ll(),Sx=ex;break a;default:throw Error(`Unexpected SuspendedReason. This is a bug in React.`)}L.actQueue===null?xl():yl();break}catch(t){fl(e,t)}while(1);return $r(),L.H=r,L.A=i,nx=n,ix===null?(rx=null,ax=0,mr(),Sx):Yb}function xl(){for(;ix!==null&&!wp();)Sl(ix)}function Sl(e){var t=e.alternate;(e.mode&Gg)===Ug?t=Te(e,Bs,t,e,xx):(Ti(e),t=Te(e,Bs,t,e,xx),Ei(e)),e.memoizedProps=e.pendingProps,t===null?El(e):ix=t}function Cl(e){var t=Te(e,wl,e);e.memoizedProps=e.pendingProps,t===null?El(e):ix=t}function wl(e){var t=e.alternate,n=(e.mode&Gg)!==Ug;switch(n&&Ti(e),e.tag){case 15:case 0:t=ws(t,e,e.pendingProps,e.type,void 0,ax);break;case 11:t=ws(t,e,e.pendingProps,e.type.render,e.ref,ax);break;case 5:Pa(e);default:Ys(t,e),e=ix=Dr(e,xx),t=Bs(t,e,xx)}return n&&Ei(e),t}function Tl(e,t,n,r){$r(),Pa(t),ey=null,ty=0;var i=t.return;try{if(fs(e,i,t,n,ax)){Sx=Xb,ss(e,Pr(n,e.current)),ix=null;return}}catch(t){if(i!==null)throw ix=i,t;Sx=Xb,ss(e,Pr(n,e.current)),ix=null;return}t.flags&32768?(c_||r===sx?e=!0:yx||ax&536870912?e=!1:(vx=e=!0,(r===cx||r===hx||r===lx||r===fx)&&(r=by.current,r!==null&&r.tag===13&&(r.flags|=16384))),Dl(t,e)):El(t)}function El(e){var t=e;do{if(t.flags&32768){Dl(t,vx);return}var n=t.alternate;if(e=t.return,Ti(t),n=Te(t,qs,n,t,xx),(t.mode&Gg)!==Ug&&Di(t),n!==null){ix=n;return}if(t=t.sibling,t!==null){ix=t;return}ix=t=e}while(t!==null);Sx===Yb&&(Sx=tx)}function Dl(e,t){do{var n=Js(e.alternate,e);if(n!==null){n.flags&=32767,ix=n;return}if((e.mode&Gg)!==Ug){Di(e),n=e.actualDuration;for(var r=e.child;r!==null;)n+=r.actualDuration,r=r.sibling;e.actualDuration=n}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deleti
157ons=null),!t&&(e=e.sibling,e!==null)){ix=e;return}ix=e=n}while(e!==null);Sx=ex,ix=null}function Ol(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.cancelPendingCommit=null;do Pl();while(Yx!==Ux);if(bv.flushLegacyContextWarning(),bv.flushPendingUnsafeLifecycleWarnings(),(nx&(qb|Jb))!==Kb)throw Error(`Should not already be working.`);if(er(n),l===Zb?ur(f,p,n,Lx):r===null?or(f,p,n,Lx):lr(f,p,n,r,t!==null&&t.alternate!==null&&t.alternate.memoizedState.isDehydrated&&!!(t.flags&256),Lx),t!==null){if(n===0&&console.error(`finishedLanes should not be empty during a commit. This is a bug in React.`),t===e.current)throw Error(`Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.`);if(a=t.lanes|t.childLanes,a|=zg,Ue(e,n,a,o,s,c),e===rx&&(ix=rx=null,ax=0),Zx=t,Xx=e,Qx=n,$x=a,tS=i,nS=r,eS=p,rS=d,iS=zx,aS=null,t.actualDuration!==0||t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Jl(Ap,function(){return dC=window.event,iS===zx&&(iS=Vx),Fl(),null})):(e.callbackNode=null,e.callbackPriority=0),j_=null,k_=w_(),d!==null&&dr(p,k_,d,Lx),r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=L.T,L.T=null,i=Qf.p,Qf.p=Gp,o=nx,nx|=Jb;try{xc(e,t,n)}finally{nx=o,Qf.p=i,L.T=r}}Yx=Wx,kl(),Al(),jl()}}function kl(){if(Yx===Wx){Yx=Ux;var e=Xx,t=Zx,n=Qx,r=!!(t.flags&13878);if(t.subtreeFlags&13878||r){r=L.T,L.T=null;var i=Qf.p;Qf.p=Gp;var a=nx;nx|=Jb;try{Fb=n,Ib=e,vi(),jc(t,e),Ib=Fb=null,n=cC;var o=Gn(e.containerInfo),s=n.focusedElem,c=n.selectionRange;if(o!==s&&s&&s.ownerDocument&&Wn(s.ownerDocument.documentElement,s)){if(c!==null&&Kn(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=Un(s,h),v=Un(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}QC=!!sC,cC=sC=null}finally{nx=a,Qf.p=i,L.T=r}}e.current=t,Yx=Gx}}function Al(){if(Yx===Gx){Yx=Ux;var e=aS;if(e!==null){k_=w_();var t=A_,n=k_;!Tg||n<=t||(lv?lv.run(console.timeStamp.bind(console,e,t,n,Og,Dg,`secondary-light`)):console.timeStamp(e,t,n,Og,Dg,`secondary-light`))}e=Xx,t=Zx,n=Qx;var r=!!(t.flags&8772);if(t.subtreeFlags&8772||r){r=L.T,L.T=null;var i=Qf.p;Qf.p=Gp;var a=nx;nx|=Jb;try{Fb=n,Ib=e,vi(),Sc(e,t.alternate,t),Ib=Fb=null}finally{nx=a,Qf.p=i,L.T=r}}e=eS,t=rS,A_=w_(),e=t===null?e:k_,t=A_,n=iS===Bx,r=Lx,j_===null?!Tg||t<=e||(r?r.run(console.timeStamp.bind(console,n?`Commit Interrupted View Transition`:`Commit`,e,t,Og,Dg,n?`error`:`secondary-dark`)):console.timeStamp(n?`Commit Interrupted View Transition`:`Commit`,e,t,Og,Dg,n?`error`:`secondary-dark`)):fr(e,t,j_,!1,r),Yx=Kx}}function jl(){if(Yx===qx||Yx===Kx){if(Yx===qx){var e=A_;A_=w_();var t=A_,n=iS===Bx;!Tg||t<=e||(lv?lv.run(console.timeStamp.bind(console,n?`Interrupted View Transition`:`Starting Animation`,e,t,Og,Dg,n?`error`:`secondary-light`)):console.timeStamp(n?`Interrupted View Transition`:`Starting Animation`,e,t,Og,Dg,n?` error`:`secondary-light`)),iS!==Bx&&(iS=Hx)}Yx=Ux,Tp(),e=Xx;var r=Zx;t=Qx,n=nS;var i=r.actualDuration!==0||!!(r.subtreeFlags&10256)||!!(r.flags&10256);i?Yx=Jx:(Yx=Ux,Zx=Xx=null,Nl(e,e.pendingLanes),fS=0,pS=null);var a=e.pendingLanes;if(a===0&&(Rx=null),i||Gl(e),a=Xe(t),r=r.stateNode,Ip&&typeof Ip.onCommitFiberRoot==`function`)try{var o=(r.current.flags&128)==128;switch(a){case Gp:var s=Op;break;case Kp:s=kp;break;case qp:s=Ap;break;case Jp:s=Mp;break;default:s=Ap}Ip.onCommitFiberRoot(Fp,r,s,o)}catch(e){Lp||(Lp=!0,console.error(`React instrumentation encountered an error: %o`,e))}if(Rp&&e.memoizedUpdaters.clear(),$c(),n!==null){o=L.T,s=Qf.p,Qf.p=Gp,L.T=null;try{var c=e.onRecoverableError;for(r=0;r<n.length;r++){var l=n[r],u=Ml(l.stack);Te(l.source,c,l.value,u)}}finally{L.T=o,Qf.p=s}}Qx&3&&Pl(),Xl(e),a=e.pendingLanes,t&261930&&a&42?(pv=!0,e===cS?sS++:(sS=0,cS=e)):sS=0,i||ul(t,A_),Zl(0,!1)}}function Ml(e){return e={componentStack:e},Object.defineProperty(e,"digest",{get:function(){console.error(`You are accessing "digest" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.`)}}),e}function Nl(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,fi(t)))}function Pl(){return kl(),Al(),jl(),Fl()}function Fl(){if(Yx!==Jx)return!1;var e=Xx,t=$x;$x=0;var n=Xe(Qx),r=qp===0||qp>n?qp:n;n=L.T;var i=Qf.p;try{Qf.p=r,L.T=null;var a=tS;tS=null,r=Xx;var o=Qx;if(Yx=Ux,Zx=Xx=null,Qx=0,(nx&(qb|Jb))!==Kb)throw Error(`Cannot flush passive effects while already rendering.`);
vendor: 4,299 bytes, lines 157-170
157er(o),lS=!0,uS=!1;var s=0;if(j_=null,s=Ep(),iS===Hx)pr(A_,s,lv);else{var c=A_,l=s,u=iS===Vx;!Tg||l<=c||(Lx?Lx.run(console.timeStamp.bind(console,u?`Waiting for Paint`:`Waiting`,c,l,Og,Dg,`secondary-light`)):console.timeStamp(u?`Waiting for Paint`:`Waiting`,c,l,Og,Dg,`secondary-light`))}c=nx,nx|=Jb;var d=r.current;vi(),F(d);var f=r.current;d=eS,vi(),Hc(r,f,o,a,d),Gl(r),nx=c;var p=Ep();if(f=s,d=Lx,j_===null?!Tg||p<=f||(d?d.run(console.timeStamp.bind(console,`Remaining Effects`,f,p,Og,Dg,`secondary-dark`)):console.timeStamp(`Remaining Effects`,f,p,Og,Dg,`secondary-dark`)):fr(f,p,j_,!0,d),ul(o,p),Zl(0,!1),uS?r===pS?fS++:(fS=0,pS=r):fS=0,uS=lS=!1,Ip&&typeof Ip.onPostCommitFiberRoot==`function`)try{Ip.onPostCommitFiberRoot(Fp,r)}catch(e){Lp||(Lp=!0,console.error(`React instrumentation encountered an error: %o`,e))}var m=r.current.stateNode;return m.effectDuration=0,m.passiveEffectDuration=0,!0}finally{Qf.p=i,L.T=n,Nl(e,t)}}function Il(e,t,n){t=Pr(n,t),ki(t),t=ls(e.stateNode,t,2),e=oa(e,t,2),e!==null&&(He(e,2),Xl(e))}function Ll(e,t,n){if(mS=!1,e.tag===3)Il(e,e,n);else{for(;t!==null;){if(t.tag===3){Il(t,e,n);return}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(Rx===null||!Rx.has(r))){e=Pr(n,e),ki(e),n=us(2),r=oa(t,n,2),r!==null&&(ds(n,r,t,e),He(r,2),Xl(r));return}}t=t.return}console.error(`Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer. 158 159Error message: 160 161%s`,n)}}function Rl(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Gb;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(bx=!0,i.add(n),r=zl.bind(null,e,t,n),Rp&&ql(e,n),t.then(r,r))}function zl(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,n&127?0>B_&&(z_=B_=w_(),V_=T_(`Promise Resolved`),H_=D_):n&4194048&&0>Z_&&(Y_=Z_=w_(),$_=T_(`Promise Resolved`),Q_=D_),el()&&L.actQueue===null&&console.error(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...). 162 163When testing, code that resolves suspended data should be wrapped into act(...): 164 165act(() => { 166 /* finish loading suspended data */ 167}); 168/* assert on the output */ 169 170This 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`),rx===e&&(ax&n)===n&&(Sx===$b||Sx===Qb&&(ax&62914560)===ax&&Ep()-jx<Nx?(nx&qb)===Kb&&dl(e,0):Tx|=n,Dx===ax&&(Dx=0)),Xl(e)}function Bl(e,t){t===0&&(t=Be()),e=_r(e,t),e!==null&&(He(e,t),Xl(e))}function Vl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Bl(e,n)}function Hl(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(`Pinged unknown suspense boundary type. This is probably a bug in React.`)}r!==null&&r.delete(t),Bl(e,n)}function Ul(e,t,n){if(t.subtreeFlags&67117056)for(t=t.child;t!==null;){var r=e,i=t,a=i.type===Rf;a=n||a,i.tag===22?i.memoizedState===null&&(a&&i.flags&8192?Te(i,Wl,r,i):i.subtreeFlags&67108864&&Te(i,Ul,r,i,a)):i.flags&67108864?a&&Te(i,Wl,r,i):Ul(r,i,a),t=t.sibling}}function Wl(e,t){Pe(!0);try{Fc(t),Zc(t),Lc(e,t.alternate,t,!1),Wc(e,t,0,null,!1,0)}finally{Pe(!1)}}function Gl(e){var t=!0;e.current.mode&(Kg|qg)||(t=!1),Ul(e,e.current,t)}function Kl(e){if((nx&qb)===Kb){var t=e.tag;if(t===3||t===1||t===0||t===11||t===14||t===15){if(t=w(e)||`ReactComponent`,hS!==null){if(hS.has(t))return;hS.add(t)}else hS=new Set([t]);Te(e,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 tries to update the component. Move this work to useEffect instead.`)})}}}function ql(e,t){Rp&&e.memoizedUpdaters.forEach(function(n){Je(e,n,t)})}function Jl(e,t){var n=L.actQueue;return n===null?Sp(e,t):(n.push(t),vS)}function Yl(e){el()&&L.actQueue===null&&Te(e,function(){console.error(`An update to %s inside a test was not wrapped in act(...).
171 172When testing, code that causes React state updates should be wrapped into act(...): 173 174act(() => { 175 /* fire events that update state */ 176}); 177/* assert on the output */ 178 179This 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`,w(e))})}function Xl(e){e!==bS&&e.next===null&&(bS===null?yS=bS=e:bS=bS.next=e),CS=!0,L.actQueue===null?xS||(xS=!0,iu()):SS||(SS=!0,iu())}function Zl(e,t){if(!wS&&CS){wS=!0;do for(var n=!1,r=yS;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-zp(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,nu(r,a))}else a=ax,a=Le(r,r===rx?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==mC),!(a&3)||Re(r,a)||(n=!0,nu(r,a));r=r.next}while(n);wS=!1}}function Ql(){dC=window.event,$l()}function $l(){CS=SS=xS=!1;var e=0;TS!==0&&Ku()&&(e=TS);for(var t=Ep(),n=null,r=yS;r!==null;){var i=r.next,a=eu(r,t);a===0?(r.next=null,n===null?yS=i:n.next=i,i===null&&(bS=n)):(n=r,(e!==0||a&3)&&(CS=!0)),r=i}Yx!==Ux&&Yx!==Jx||Zl(e,!1),TS!==0&&(TS=0)}function eu(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-zp(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=ze(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=rx,n=ax,n=Le(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==mC),r=e.callbackNode,n===0||e===t&&(gx===cx||gx===hx)||e.cancelPendingCommit!==null)return r!==null&&ru(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Re(e,n)){if(t=n&-n,t!==e.callbackPriority||L.actQueue!==null&&r!==ES)ru(r);else return t;switch(Xe(n)){case Gp:case Kp:n=kp;break;case qp:n=Ap;break;case Jp:n=Mp;break;default:n=Ap}return r=tu.bind(null,e),L.actQueue===null?n=Sp(n,r):(L.actQueue.push(r),n=ES),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&ru(r),e.callbackPriority=2,e.callbackNode=null,2}function tu(e,t){if(pv=fv=!1,dC=window.event,Yx!==Ux&&Yx!==Jx)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(iS===zx&&(iS=Vx),Pl()&&e.callbackNode!==n)return null;var r=ax;return r=Le(e,e===rx?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==mC),r===0?null:(il(e,r,t),eu(e,Ep()),e.callbackNode!=null&&e.callbackNode===n?tu.bind(null,e):null)}function nu(e,t){if(Pl())return null;fv=pv,pv=!1,il(e,t,!0)}function ru(e){e!==ES&&e!==null&&Cp(e)}function iu(){L.actQueue!==null&&L.actQueue.push(function(){return $l
vendor: 28,005 bytes, lines 179-180
179(),null}),gC(function(){(nx&(qb|Jb))===Kb?$l():Sp(Op,Ql)})}function au(){if(TS===0){var e=gv;e===0&&(e=Hp,Hp<<=1,!(Hp&261888)&&(Hp=256)),TS=e}return TS}function ou(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:(Ae(e,`action`),dn(``+e))}function su(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function cu(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=ou((i[Zp]||null).action),o=r.submitter;o&&(t=(t=o[Zp]||null)?ou(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new dh(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(TS!==0){var e=o?su(i,o):new FormData(i),t={pending:!0,data:e,method:i.method,action:a};Object.freeze(t),Ro(n,t,null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?su(i,o):new FormData(i),t={pending:!0,data:e,method:i.method,action:a},Object.freeze(t),Ro(n,t,a,e))},currentTarget:i}]})}}function lu(e,t,n){e.currentTarget=n;try{t(e)}catch(e){gg(e)}e.currentTarget=null}function uu(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n];a:{var i=void 0,a=r.event;if(r=r.listeners,t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==i&&a.isPropagationStopped())break a;c===null?lu(a,s,l):Te(c,lu,a,s,l),i=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==i&&a.isPropagationStopped())break a;c===null?lu(a,s,l):Te(c,lu,a,s,l),i=c}}}}function du(e,t){OS.has(e)||console.error(`Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.`,e);var n=t[$p];n===void 0&&(n=t[$p]=new Set);var r=e+`__bubble`;n.has(r)||(pu(t,e,2,!1),n.add(r))}function I(e,t,n){OS.has(e)&&!t&&console.error(`Did not expect a listenToNativeEvent() call for "%s" in the bubble phase. This is a bug in React. Please file an issue.`,e);var r=0;t&&(r|=4),pu(n,e,r,t)}function fu(e){if(!e[kS]){e[kS]=!0,im.forEach(function(t){t!==`selectionchange`&&(OS.has(t)||I(t,!1,e),I(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[kS]||(t[kS]=!0,I(`selectionchange`,!1,t))}}function pu(e,t,n,r){switch(hf(t)){case Gp:var i=uf;break;case Kp:i=df;break;default:i=ff}n=i.bind(null,t,n,e),i=void 0,!ah||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function mu(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&o.stateNode.containerInfo===i)return;o=o.return}for(;s!==null;){if(o=et(s),o===null)return;if(c=o.tag,c===5||c===6||c===26||c===27){r=a=o;continue a}s=s.parentNode}}r=r.return}hn(function(){var r=a,i=pn(n),o=[];a:{var s=ug.get(e);if(s!==void 0){var c=dh,l=e;switch(e){case`keypress`:if(vn(n)===0)break a;case`keydown`:case`keyup`:c=Oh;break;case`focusin`:l=`focus`,c=bh;break;case`focusout`:l=`blur`,c=bh;break;case`beforeblur`:case`afterblur`:c=bh;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:c=vh;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:c=yh;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:c=Ah;break;case rg:case ig:case ag:c=xh;break;case lg:c=jh;break;case`scroll`:case`scrollend`:c=ph;break;case`wheel`:c=Mh;break;case`copy`:case`cut`:case`paste`:c=Sh;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:c=kh;break;case`toggle`:case`beforetoggle`:c=Nh}var u=!!(t&4),d=!u&&(e===`scroll`||e===`scrollend`),f=u?s===null?null:s+`Capture`:s;u=[];for(var p=r,m;p!==null;){var h=p;if(m=h.stateNode,h=h.tag,h!==5&&h!==26&&h!==27||m===null||f===null||(h=gn(p,f),h!=null&&u.push(hu(p,h,m))),d)break;p=p.return}0<u.length&&(s=new c(s,l,null,n,i),o.push({event:s,listeners:u}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,s&&n!==eh&&(l=n.relatedTarget||n.fromElement)&&(et(l)||l[Qp]))break a;if((c||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?et(l):null,l!==null&&(d=x(l),u=l.tag,l!==d||u!==5&&u!==27&&u!==6)&&(l=null)):(c=null,l=r),c!==l)){if(u=vh,h=`onMouseLeave`,f=`onMouseEnter`,p=`mouse`,(e===`pointerout`||e===`pointerover`)&&(u=kh,h=`onPointerLeave`,f=`onPointerEnter`,p=`pointer`),d=c==null?s:nt(c),m=l==null?s:nt(l),s=new u(h,p+`leave`,c,n,i),s.target=d,s.relatedTarget=m,h=null,et(i)===r&&(u=new u(f,p+`enter`,l,n,i),u.target=m,u.relatedTarget=d,h=u),d=h,c&&l)b:{for(u=_u,f=c,p=l,m=0,h=f;h;h=u(h))m++;h=0;for(var g=p;g;g=u(g))h++;for(;0<m-h;)f=u(f),m--;for(;0<h-m;)p=u(p),h--;for(;m--;){if(f===p||p!==null&&f===p.alternate){u=f;break b}f=u(f),p=u(p)}u=null}else u=null;c!==null&&vu(o,s,c,u,!1),l!==null&&d!==null&&vu(o,d,l,u,!0)}}a:{if(s=r?nt(r):window,c=s.nodeName&&s.nodeName.toLowerCase(),c===`select`||c===`input`&&s.type===`file`)var _=Nn;else if(On(s))if(qh)_=zn;else{_=Ln;var v=In}else c=s.nodeName,!c||c.toLowerCase()!==`input`||s.type!==`checkbox`&&s.type!==`radio`?r&&an(r.elementType)&&(_=Nn):_=Rn;if(_&&=_(e,r)){An(o,_,n,i);break a}v&&v(e,s,r),e===`focusout`&&r&&s.type===`number`&&r.memoizedProps.value!=null&&Ct(s,`number`,s.value)}switch(v=r?nt(r):window,e){case`focusin`:(On(v)||v.contentEditable===`true`)&&(Xh=v,Zh=r,Qh=null);break;case`focusout`:Qh=Zh=Xh=null;break;case`mousedown`:$h=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:$h=!1,qn(o,n,i);break;case`selectionchange`:if(Yh)break;case`keydown`:case`keyup`:qn(o,n,i)}var y;if(Ih)b:{switch(e){case`compositionstart`:var b=`onCompositionStart`;break b;case`compositionend`:b=`onCompositionEnd`;break b;case`compositionupdate`:b=`onCompositionUpdate`;break b}b=void 0}else Uh?wn(e,n)&&(b=`onCompositionEnd`):e===`keydown`&&n.keyCode===Fh&&(b=`onCompositionStart`);b&&(zh&&n.locale!==`ko`&&(Uh||b!==`onCompositionStart`?b===`onCompositionEnd`&&Uh&&(y=_n()):(sh=i,ch=`value`in sh?sh.value:sh.textContent,Uh=!0)),v=gu(r,b),0<v.length&&(b=new Ch(b,e,null,n,i),o.push({event:b,listeners:v}),y?b.data=y:(y=Tn(n),y!==null&&(b.data=y)))),(y=Rh?En(e,n):Dn(e,n))&&(b=gu(r,`onBeforeInput`),0<b.length&&(v=new wh(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:v,listeners:b}),v.data=y)),cu(o,e,r,n,i)}uu(o,t)})}function hu(e,t,n){return{instance:e,listener:t,currentTarget:n}}function gu(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=gn(e,n),i!=null&&r.unshift(hu(e,i,a)),i=gn(e,t),i!=null&&r.push(hu(e,i,a))),e.tag===3)return r;e=e.return}return[]}function _u(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function vu(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=gn(n,a),l!=null&&o.unshift(hu(n,l,c))):i||(l=gn(n,a),l!=null&&o.push(hu(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}function yu(e,t){cn(e,t),e!==`input`&&e!==`textarea`&&e!==`select`||t==null||t.value!==null||qm||(qm=!0,e===`select`&&t.multiple?console.error("`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.",e):console.error("`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.",e));var n={registrationNameDependencies:am,possibleRegistrationNames:om};an(e)||typeof t.is==`string`||un(e,t,n),t.contentEditable&&!t.suppressContentEditableWarning&&t.children!=null&&console.error("A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.")}function bu(e,t,n,r){t!==n&&(n=wu(n),wu(t)!==n&&(r[e]=t))}function xu(e,t,n){t.forEach(function(t){n[Au(t)]=t===`style`?ju(e):e.getAttribute(t)})}function Su(e,t){!1===t?console.error("Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.",e,e,e):console.error("Expected `%s` listener to be a function, instead got a value of `%s` type.",e,typeof t)}function Cu(e,t){return e=e.namespaceURI===zm||e.namespaceURI===Bm?e.ownerDocument.createElementNS(e.namespaceURI,e.tagName):e.ownerDocument.createElement(e.tagName),e.innerHTML=t,e.innerHTML}function wu(e){return Oe(e)&&(console.error(`The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.`,De(e)),ke(e)),(typeof e==`string`?e:``+e).replace(RS,` 180`).replace(zS,``)}function Tu(e,t){return t=wu(t),wu(e)===t}function Eu(e,t,n,r,i,a){switch(n){case`children`:typeof r==`string`?($t(r,t,!1),t===`body`||t===`textarea`&&r===``||en(e,r)):(typeof r==`number`||typeof r==`bigint`)&&($t(``+r,t,!1),t!==`body`&&en(e,``+r));break;case`className`:dt(e,`class`,r);break;case`tabIndex`:dt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:dt(e,n,r);break;case`style`:rn(e,r,a);break;case`data`:if(t!==`object`){dt(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){console.error(n===`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.`,n,n),e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}Ae(r,n),r=dn(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(r!=null&&(t===`form`?n===`formAction`?console.error(`You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>.`):typeof r==`function`&&(i.encType==null&&i.method==null||FS||(FS=!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.`)),i.target==null||PS||(PS=!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.`))):t===`input`||t===`button`?n===`action`?console.error(`You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>.`):t!==`input`||i.type===`submit`||i.type===`image`||MS?t!==`button`||i.type==null||i.type===`submit`||MS?typeof r==`function`&&(i.name==null||NS||(NS=!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.`)),i.formEncType==null&&i.formMethod==null||FS||(FS=!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.`)),i.formTarget==null||PS||(PS=!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.`))):(MS=!0,console.error(`A button can only specify a formAction along with type="submit" or no type.`)):(MS=!0,console.error(`An input can only specify a formAction along with type="submit" or type="image".`)):console.error(n===`action`?`You can only pass the action prop to <form>.`:`You can only pass the formAction prop to <input> or <button>.`)),typeof r==`function`){e.setAttribute(n,`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}if(typeof a==`function`&&(n===`formAction`?(t!==`input`&&Eu(e,t,`name`,i.name,i,null),Eu(e,t,`formEncType`,i.formEncType,i,null),Eu(e,t,`formMethod`,i.formMethod,i,null),Eu(e,t,`formTarget`,i.formTarget,i,null)):(Eu(e,t,`encType`,i.encType,i,null),Eu(e,t,`method`,i.method,i,null),Eu(e,t,`target`,i.target,i,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}Ae(r,n),r=dn(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(typeof r!=`function`&&Su(n,r),e.onclick=fn);break;case`onScroll`:r!=null&&(typeof r!=`function`&&Su(n,r),du(`scroll`,e));break;case`onScrollEnd`:r!=null&&(typeof r!=`function`&&Su(n,r),du(`scrollend`,e));break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.");if(n=r.__html,n!=null){if(i.children!=null)throw Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}Ae(r,n),n=dn(``+r),e.setAttributeNS(BS,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?(Ae(r,n),e.setAttribute(n,``+r)):e.removeAttribute(n);break;case`inert`:r!==``||LS[n]||(LS[n]=!0,console.error("Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",n));case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?(Ae(r,n),e.setAttribute(n,r)):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?(Ae(r,n),e.setAttribute(n,r)):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):(Ae(r,n),e.setAttribute(n,r));break;case`popover`:du(`beforetoggle`,e),du(`toggle`,e),ut(e,`popover`,r);break;case`xlinkActuate`:ft(e,BS,`xlink:actuate`,r);break;case`xlinkArcrole`:ft(e,BS,`xlink:arcrole`,r);break;case`xlinkRole`:ft(e,BS,`xlink:role`,r);break;case`xlinkShow`:ft(e,BS,`xlink:show`,r);break;case`xlinkTitle`:ft(e,BS,`xlink:title`,r);break;case`xlinkType`:ft(e,BS,`xlink:type`,r);break;case`xmlBase`:ft(e,VS,`xml:base`,r);break;case`xmlLang`:ft(e,VS,`xml:lang`,r);break;case`xmlSpace`:ft(e,VS,`xml:space`,r);break;case`is`:a!=null&&console.error(`Cannot update the "is" prop after it has been initialized.`),ut(e,`is`,r);break;case`innerText`:case`textContent`:break;case`popoverTarget`:IS||typeof r!=`object`||!r||(IS=!0,console.error("The `popoverTarget` prop expects the ID of an Element as a string. Received %s instead.",r));default:!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`?(n=on(n),ut(e,n,r)):am.hasOwnProperty(n)&&r!=null&&typeof r!=`function`&&Su(n,r)}}function Du(e,t,n,r,i,a){switch(n){case`style`:rn(e,r,a);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.");if(n=r.__html,n!=null){if(i.children!=null)throw Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");e.innerHTML=n}}break;case`children`:typeof r==`string`?en(e,r):(typeof r==`number`||typeof r==`bigint`)&&en(e,``+r);break;case`onScroll`:r!=null&&(typeof r!=`function`&&Su(n,r),du(`scroll`,e));break;case`onScrollEnd`:r!=null&&(typeof r!=`function`&&Su(n,r),du(`scrollend`,e));break;case`onClick`:r!=null&&(typeof r!=`function`&&Su(n,r),e.onclick=fn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(am.hasOwnProperty(n))r!=null&&typeof r!=`function`&&Su(n,r);else a:{if(n[0]===`o`&&n[1]===`n`&&(i=n.endsWith(`Capture`),t=n.slice(2,i?n.length-7:void 0),a=e[Zp]||null,a=a==null?null:a[n],typeof a==`function`&&e.removeEventListener(t,a,i),typeof r==`function`)){typeof a!=`function`&&a!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,i);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):ut(e,n,r)}}}function Ou(e,t,n){switch(yu(t,n),t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:du(`error`,e),du(`load`,e);var r=!1,i=!1,a;for(a in n)if(n.hasOwnProperty(a)){var o=n[a];if(o!=null)switch(a){case`src`:r=!0;break;case`srcSet`:i=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");default:Eu(e,t,a,o,n,null)}}i&&Eu(e,t,`srcSet`,n.srcSet,n,null),r&&Eu(e,t,`src`,n.src,n,null);return;case`input`:st(`input`,n),du(`invalid`,e);var s=a=o=i=null,c=null,l=null;for(r in n)if(n.hasOwnProperty(r)){var u=n[r];if(u!=null)switch(r){case`name`:i=u;break;case`type`:o=u;break;case`checked`:c=u;break;case`defaultChecked`:l=u;break;case`value`:a=u;break;case`defaultValue`:s=u;break;case`children`:case`dangerouslySetInnerHTML`:if(u!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:Eu(e,t,r,u,n,null)}}bt(e,n),St(e,a,s,c,l,o,i,!1);return;case`select`:for(i in st(`select`,n),du(`invalid`,e),r=o=a=null,n)if(n.hasOwnProperty(i)&&(s=n[i],s!=null))switch(i){case`value`:a=s;break;case`defaultValue`:o=s;break;case`multiple`:r=s;default:Eu(e,t,i,s,n,null)}Dt(e,n),t=a,n=o,e.multiple=!!r,t==null?n!=null&&Et(e,!!r,n,!0):Et(e,!!r,t,!1);return;case`textarea`:for(o in st(`textarea`,n),du(`invalid`,e),a=i=r=null,n)if(n.hasOwnProperty(o)&&(s=n[o],s!=null))switch(o){case`value`:r=s;break;case`defaultValue`:i=s;break;case`children`:a=s;break;case`dangerouslySetInnerHTML`:if(s!=null)throw Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");break;default:Eu(e,t,o,s,n,null)}Ot(e,n),At(e,r,i,a);return;case`option`:for(c in wt(e,n),n)if(n.hasOwnProperty(c)&&(r=n[c],r!=null))switch(c){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Eu(e,t,c,r,n,null)}return;case`dialog`:du(`beforetoggle`,e),du(`toggle`,e),du(`cancel`,e),du(`close`,e);break;case`iframe`:case`object`:du(`load`,e);break;case`video`:case`audio`:for(r=0;r<DS.length;r++)du(DS[r],e);break;case`image`:du(`error`,e),du(`load`,e);break;case`details`:du(`toggle`,e);break;case`embed`:case`source`:case`link`:du(`error`,e),du(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`children`:case`dangerouslySetInnerHTML`:throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");default:Eu(e,t,l,r,n,null)}return;default:if(an(t)){for(u in n)n.hasOwnProperty(u)&&(r=n[u],r!==void 0&&Du(e,t,u,r,n,void 0));return}}for(s in n)n.hasOwnProperty(s)&&(r=n[s],r!=null&&Eu(e,t,s,r,n,null))}function ku(e,t,n,r){switch(yu(t,r),t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var i=null,a=null,o=null,s=null,c=null,l=null,u=null;for(p in n){var d=n[p];if(n.hasOwnProperty(p)&&d!=null)switch(p){case`checked`:break;case`value`:break;case`defaultValue`:c=d;default:r.hasOwnProperty(p)||Eu(e,t,p,null,r,d)}}for(var f in r){var p=r[f];if(d=n[f],r.hasOwnProperty(f)&&(p!=null||d!=null))switch(f){case`type`:a=p;break;case`name`:i=p;break;case`checked`:l=p;break;case`defaultChecked`:u=p;break;case`value`:o=p;break;case`defaultValue`:s=p;break;case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:p!==d&&Eu(e,t,f,p,r,d)}}t=n.type===`checkbox`||n.type===`radio`?n.checked!=null:n.value!=null,r=r.type===`checkbox`||r.type===`radio`?r.checked!=null:r.value!=null,t||!r||jS||(console.error(`A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components`),jS=!0),!t||r||AS||(console.error(`A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components`),AS=!0),xt(e,o,s,c,l,u,a,i);return;case`select`:for(a in p=o=s=f=null,n)if(c=n[a],n.hasOwnProperty(a)&&c!=null)switch(a){case`value`:break;case`multiple`:p=c;default:r.hasOwnProperty(a)||Eu(e,t,a,null,r,c)}for(i in r)if(a=r[i],c=n[i],r.hasOwnProperty(i)&&(a!=null||c!=null))switch(i){case`value`:f=a;break;case`defaultValue`:s=a;break;case`multiple`:o=a;default:a!==c&&Eu(e,t,i,a,r,c)}r=s,t=o,n=p,f==null?!!n!=!!t&&(r==null?Et(e,!!t,t?[]:``,!1):Et(e,!!t,r,!0)):Et(e,!!t,f,!1);return;case`textarea`:for(s in p=f=null,n)if(i=n[s],n.hasOwnProperty(s)&&i!=null&&!r.hasOwnProperty(s))switch(s){case`value`:break;case`children`:break;default:Eu(e,t,s,null,r,i)}for(o in r)if(i=r[o],a=n[o],r.hasOwnProperty(o)&&(i!=null||a!=null))switch(o){case`value`:f=i;break;case`defaultValue`:p=i;break;case`children`:break;case`dangerouslySetInnerHTML`:if(i!=null)throw Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");break;default:i!==a&&Eu(e,t,o,i,r,a)}kt(e,f,p);return;case`option`:for(var m in n)if(f=n[m],n.hasOwnProperty(m)&&f!=null&&!r.hasOwnProperty(m))switch(m){case`selected`:e.selected=!1;break;default:Eu(e,t,m,null,r,f)}for(c in r)if(f=r[c],p=n[c],r.hasOwnProperty(c)&&f!==p&&(f!=null||p!=null))switch(c){case`selected`:e.selected=f&&typeof f!=`function`&&typeof f!=`symbol`;break;default:Eu(e,t,c,f,r,p)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var h in n)f=n[h],n.hasOwnProperty(h)&&f!=null&&!r.hasOwnProperty(h)&&Eu(e,t,h,null,r,f);for(l in r)if(f=r[l],p=n[l],r.hasOwnProperty(l)&&f!==p&&(f!=null||p!=null))switch(l){case`children`:case`dangerouslySetInnerHTML`:if(f!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:Eu(e,t,l,f,r,p)}return;default:if(an(t)){for(var g in n)f=n[g],n.hasOwnProperty(g)&&f!==void 0&&!r.hasOwnProperty(g)&&Du(e,t,g,void 0,r,f);for(u in r)f=r[u],p=n[u],!r.hasOwnProperty(u)||f===p||f===void 0&&p===void 0||Du(e,t,u,f,r,p);return}}for(var _ in n)f=n[_],n.hasOwnProperty(_)&&f!=null&&!r.hasOwnProperty(_)&&Eu(e,t,_,null,r,f);for(d in r)f=r[d],p=n[d],!r.hasOwnProperty(d)||f===p||f==null&&p==null||Eu(e,t,d,f,r,p)}function Au(e){switch(e){case`class`:return`className`;case`for`:return`htmlFor`;default:return e}}function ju(e){var t={};e=e.style;for(var n=0;n<e.length;n++){var r=e[n];t[r]=e.getPropertyValue(r)}return t}function Mu(e,t,n){if(t!=null&&typeof t!=`object`)console.error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");else{var r,i=r=``,a;for(a in t)if(t.hasOwnProperty(a)){var o=t[a];o!=null&&typeof o!=`boolean`&&o!==``&&(a.indexOf(`--`)===0?(je(o,a),r+=i+a+`:`+(``+o).trim()):typeof o!=`number`||o===0||Rm.has(a)?(je(o,a),r+=i+a.replace(Om,`-$1`).toLowerCase().replace(km,`-ms-`)+`:`+(``+o).trim()):r+=i+a.replace(Om,`-$1`).toLowerCase().replace(km,`-ms-`)+`:`+o+`px`,i=`;`)}r||=null,t=e.getAttribute(`style`),t!==r&&(r=wu(r),wu(t)!==r&&(n.style=ju(e)))}}function Nu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(Ae(r,t),e===``+r)return}bu(t,e,r,a)}function Pu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null){switch(typeof r){case`function`:case`symbol`:return}if(!r)return}else switch(typeof r){case`function`:case`symbol`:break;default:if(r)return}bu(t,e,r,a)}function Fu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:break;default:if(Ae(r,n),e===``+r)return}bu(t,e,r,a)}function Iu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return;default:if(isNaN(r))return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(!isNaN(r)&&(Ae(r,t),e===``+r))return}bu(t,e,r,a)}function Lu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(Ae(r,t),n=dn(``+r),e===n)return}bu(t,e,r,a)}function Ru(e,t,n,r){for(var i={},a=new Set,o=e.attributes,s=0;s<o.length;s++)switch(o[s].name.toLowerCase()){case`value`:break;case`checked`:break;case`selected`:break;default:a.add(o[s].name)}if(an(t)){for(var c in n)if(n.hasOwnProperty(c)){var l=n[c];if(l!=null){if(am.hasOwnProperty(c))typeof l!=`function`&&Su(c,l);else if(!0!==n.suppressHydrationWarning)switch(c){case`children`:typeof l!=`string`&&typeof l!=`number`||bu(`children`,e.textContent,l,i);continue;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:continue;case`dangerouslySetInnerHTML`:o=e.innerHTML,l=l?l.__html:void 0,l!=null&&(l=Cu(e,l),bu(c,o,l,i));continue;case`style`:a.delete(c),Mu(e,l,i);continue;case`offsetParent`:case`offsetTop`:case`offsetLeft`:case`offsetWidth`:case`offsetHeight`:case`isContentEditable`:case`outerText`:case`outerHTML`:a.delete(c.toLowerCase()),console.error("Assignment to read-only property will result in a
180no-op: `%s`",c);continue;case`className`:a.delete(`class`),o=lt(e,`class`,l),bu(`className`,o,l,i);continue;default:r.context===iC&&t!==`svg`&&t!==`math`?a.delete(c.toLowerCase()):a.delete(c),o=lt(e,c,l),bu(c,o,l,i)}}}}else for(l in n)if(n.hasOwnProperty(l)&&(c=n[l],c!=null)){if(am.hasOwnProperty(l))typeof c!=`function`&&Su(l,c);else if(!0!==n.suppressHydrationWarning)switch(l){case`children`:typeof c!=`string`&&typeof c!=`number`||bu(`children`,e.textContent,c,i);continue;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`value`:case`checked`:case`selected`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:continue;case`dangerouslySetInnerHTML`:o=e.innerHTML,c=c?c.__html:void 0,c!=null&&(c=Cu(e,c),o!==c&&(i[l]={__html:o}));continue;case`className`:Nu(e,l,`class`,c,a,i);continue;case`tabIndex`:Nu(e,l,`tabindex`,c,a,i);continue;case`style`:a.delete(l),Mu(e,c,i);continue;case`multiple`:a.delete(l),bu(l,e.multiple,c,i);continue;case`muted`:a.delete(l),bu(l,e.muted,c,i);continue;case`autoFocus`:a.delete(`autofocus`),bu(l,e.autofocus,c,i);continue;case`data`:if(t!==`object`){a.delete(l),o=e.getAttribute(`data`),bu(l,o,c,i);continue}case`src`:case`href`:if(!(c!==``||t===`a`&&l===`href`||t===`object`&&l===`data`)){console.error(l===`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.`,l,l);continue}Lu(e,l,l,c,a,i);continue;case`action`:case`formAction`:if(o=e.getAttribute(l),typeof c==`function`){a.delete(l.toLowerCase()),l===`formAction`?(a.delete(`name`),a.delete(`formenctype`),a.delete(`formmethod`),a.delete(`formtarget`)):(a.delete(`enctype`),a.delete(`method`),a.delete(`target`));continue}if(o===HS){a.delete(l.toLowerCase()),bu(l,`function`,c,i);continue}Lu(e,l,l.toLowerCase(),c,a,i);continue;case`xlinkHref`:Lu(e,l,`xlink:href`,c,a,i);continue;case`contentEditable`:Fu(e,l,`contenteditable`,c,a,i);continue;case`spellCheck`:Fu(e,l,`spellcheck`,c,a,i);continue;case`draggable`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:Fu(e,l,l,c,a,i);continue;case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:Pu(e,l,l.toLowerCase(),c,a,i);continue;case`capture`:case`download`:a:{s=e;var u=o=l,d=i;if(a.delete(u),s=s.getAttribute(u),s===null)switch(typeof c){case`undefined`:case`function`:case`symbol`:break a;default:if(!1===c)break a}else if(c!=null)switch(typeof c){case`function`:case`symbol`:break;case`boolean`:if(!0===c&&s===``)break a;break;default:if(Ae(c,o),s===``+c)break a}bu(o,s,c,d)}continue;case`cols`:case`rows`:case`size`:case`span`:a:{if(s=e,u=o=l,d=i,a.delete(u),s=s.getAttribute(u),s===null)switch(typeof c){case`undefined`:case`function`:case`symbol`:case`boolean`:break a;default:if(isNaN(c)||1>c)break a}else if(c!=null)switch(typeof c){case`function`:case`symbol`:case`boolean`:break;default:if(!(isNaN(c)||1>c)&&(Ae(c,o),s===``+c))break a}bu(o,s,c,d)}continue;case`rowSpan`:Iu(e,l,`rowspan`,c,a,i);continue;case`start`:Iu(e,l,l,c,a,i);continue;case`xHeight`:Nu(e,l,`x-height`,c,a,i);continue;case`xlinkActuate`:Nu(e,l,`xlink:actuate`,c,a,i);continue;case`xlinkArcrole`:Nu(e,l,`xlink:arcrole`,c,a,i);continue;case`xlinkRole`:Nu(e,l,`xlink:role`,c,a,i);continue;case`xlinkShow`:Nu(e,l,`xlink:show`,c,a,i);continue;case`xlinkTitle`:Nu(e,l,`xlink:title`,c,a,i);continue;case`xlinkType`:Nu(e,l,`xlink:type`,c,a,i);continue;case`xmlBase`:Nu(e,l,`xml:base`,c,a,i);continue;case`xmlLang`:Nu(e,l,`xml:lang`,c,a,i);continue;case`xmlSpace`:Nu(e,l,`xml:space`,c,a,i);continue;case`inert`:c!==``||LS[l]||(LS[l]=!0,console.error("Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",l)),Pu(e,l,l,c,a,i);continue;default:if(!(2<l.length)||l[0]!==`o`&&l[0]!==`O`||l[1]!==`n`&&l[1]!==`N`){s=on(l),o=!1,r.context===iC&&t!==`svg`&&t!==`math`?a.delete(s.toLowerCase()):(u=l.toLowerCase(),u=Hm.hasOwnProperty(u)&&Hm[u]||null,u!==null&&u!==l&&(o=!0,a.delete(u)),a.delete(s));a:if(u=e,d=s,s=c,ct(d))if(u.hasAttribute(d))u=u.getAttribute(d),Ae(s,d),s=u===``+s?s:u;else{switch(typeof s){case`function`:case`symbol`:break a;case`boolean`:if(u=d.toLowerCase().slice(0,5),u!==`data-`&&u!==`aria-`)break a}s=s===void 0?void 0:null}else s=void 0;o||bu(l,s,c,i)}}}return 0<a.size&&!0!==n.suppressHydrationWarning&&xu(e,a,i),Object.keys(i).length===0?null:i}function zu(e,t){switch(e.length){case 0:return``;case 1:return e[0];case 2:return e[0]+` `+t+` `+e[1];default:return e.slice(0,-1).join(`, `)+`, `+t+` `+e[e.length-1]}}function Bu(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Vu(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Bu(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Bu(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}
vendor: 13,240 bytes, lines 180-186
180function Hu(e){return e.nodeType===9?e:e.ownerDocument}function Uu(e){switch(e){case Bm:return aC;case zm:return oC;default:return iC}}function Wu(e,t){if(e===iC)switch(t){case`svg`:return aC;case`math`:return oC;default:return iC}return e===aC&&t===`foreignObject`?iC:e}function Gu(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}function Ku(){var e=window.event;return e&&e.type===`popstate`?e!==uC&&(uC=e,!0):(uC=null,!1)}function qu(){var e=window.event;return e&&e!==dC?e.type:null}function Ju(){var e=window.event;return e&&e!==dC?e.timeStamp:-1.1}function Yu(e){setTimeout(function(){throw e})}function Xu(e,t,n){switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&e.focus();break;case`img`:n.src?e.src=n.src:n.srcSet&&(e.srcset=n.srcSet)}}function Zu(){}function Qu(e,t,n,r){ku(e,t,n,r),e[Zp]=r}function $u(e){en(e,``)}function ed(e,t,n){e.nodeValue=n}function td(e){if(!e.__reactWarnedAboutChildrenConflict){var t=e[Zp]||null;if(t!==null){var n=tt(e);n!==null&&(typeof t.children==`string`||typeof t.children==`number`?(e.__reactWarnedAboutChildrenConflict=!0,Te(n,function(){console.error('Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "children" text content using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.')})):t.dangerouslySetInnerHTML!=null&&(e.__reactWarnedAboutChildrenConflict=!0,Te(n,function(){console.error('Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "dangerouslySetInnerHTML" using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.')})))}}}function nd(e){return e===`head`}function rd(e,t){e.removeChild(t)}function id(e,t){(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e).removeChild(t)}function ad(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===qS||n===GS){if(r===0){e.removeChild(i),Tf(t);return}r--}else if(n===KS||n===JS||n===YS||n===XS||n===WS)r++;else if(n===ZS)Ad(e.ownerDocument.documentElement);else if(n===$S){n=e.ownerDocument.head,Ad(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[rm]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===QS&&Ad(e.ownerDocument.body);n=i}while(n);Tf(t)}function od(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===qS){if(e===0)break;e--}else n!==KS&&n!==JS&&n!==YS&&n!==XS||e++;n=r}while(n)}function sd(e){od(e,!0)}function cd(e){e=e.style,typeof e.setProperty==`function`?e.setProperty(`display`,`none`,`important`):e.display=`none`}function ld(e){e.nodeValue=``}function ud(e){od(e,!1)}function dd(e,t){t=t[rC],t=t!=null&&t.hasOwnProperty(`display`)?t.display:null,e.style.display=t==null||typeof t==`boolean`?``:(``+t).trim()}function fd(e,t){e.nodeValue=t}function pd(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:pd(n),$e(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function md(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){Ae(i.name,`name`);var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[rm])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=bd(e.nextSibling),e===null)break}return null}function hd(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=bd(e.nextSibling),e===null))return null;return e}function gd(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=bd(e.nextSibling),e===null))return null;return e}function _d(e){return e.data===JS||e.data===YS}function vd(e){return e.data===XS||e.data===JS&&e.ownerDocument.readyState!==nC}function yd(e,t){var n=e.ownerDocument;if(e.data===YS)e._reactRetry=t;else if(e.data!==JS||n.readyState!==nC)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function bd(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===KS||t===XS||t===JS||t===YS||t===WS||t===eC||t===tC)break;if(t===qS||t===GS)return null}}return e}function xd(e){if(e.nodeType===1){for(var t=e.nodeName.toLowerCase(),n={},r=e.attributes,i=0;i<r.length;i++){var a=r[i];n[Au(a.name)]=a.name.toLowerCase()===`style`?ju(e):a.value}return{type:t,props:n}}return e.nodeType===8?e.data===WS?{type:`Activity`,props:{}}:{type:`Suspense`,props:{}}:e.nodeValue}function Sd(e,t,n){return n===null||!0!==n[US]?(e.nodeValue===t?e=null:(t=wu(t),e=wu(e.nodeValue)===t?null:e.nodeValue),e):null}function Cd(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===qS||n===GS){if(t===0)return bd(e.nextSibling);t--}else n!==KS&&n!==XS&&n!==JS&&n!==YS&&n!==WS||t++}e=e.nextSibling}return null}function wd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===KS||n===XS||n===JS||n===YS||n===WS){if(t===0)return e;t--}else n!==qS&&n!==GS||t++}e=e.previousSibling}return null}function Td(e){Tf(e)}function Ed(e){Tf(e)}function Dd(e){Tf(e)}function Od(e,t,n,r,i){switch(i&&Qt(e,r.ancestorInfo),t=Hu(n),e){case`html`:if(e=t.documentElement,!e)throw Error(`React expected an <html> element (document.documentElement) to exist in the Document but one was not found. React never removes the documentElement for any Document it renders into so the cause is likely in some other script running on this page.`);return e;case`head`:if(e=t.head,!e)throw Error(`React expected a <head> element (document.head) to exist in the Document but one was not found. React never removes the head for any Document it renders into so the cause is likely in some other script running on this page.`);return e;case`body`:if(e=t.body,!e)throw Error(`React expected a <body> element (document.body) to exist in the Document but one was not found. React never removes the body for any Document it renders into so the cause is likely in some other script running on this page.`);return e;default:throw Error(`resolveSingletonInstance was called with an element type that is not supported. This is a bug in React.`)}}function kd(e,t,n,r){if(!n[Qp]&&tt(n)){var i=n.tagName.toLowerCase();console.error(`You are mounting a new %s component when a previous one has not first unmounted. It is an error to render more than one %s component at a time and attributes and children of these components will likely fail in unpredictable ways. Please only render a single instance of <%s> and if you need to mount a new one, ensure any previous ones have unmounted first.`,i,i,i)}switch(e){case`html`:case`head`:case`body`:break;default:console.error(`acquireSingletonInstance was called with an element type that is not supported. This is a bug in React.`)}for(i=n.attributes;i.length;)n.removeAttributeNode(i[0]);Ou(n,e,t),n[Xp]=r,n[Zp]=t}function Ad(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);$e(e)}function jd(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}function Md(e,t,n){var r=EC;if(r&&typeof t==`string`&&t){var i=yt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),wC.has(i)||(wC.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Ou(t,`link`,e),it(t),r.head.appendChild(t)))}}function Nd(e,t,n,r){var i=(i=ap.current)?jd(i):null;if(!i)throw Error(`"resourceRoot" was expected to exist. This is a bug in React.`);switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Fd(n.href),t=rt(i).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Fd(n.href);var a=rt(i).hoistableStyles,o=a.get(e);if(!o&&(i=i.ownerDocument||i,o={type:`stylesheet`,instance:null,count:0,state:{loading:vC,preload:null}},a.set(e,o),(a=i.querySelector(Id(e)))&&!a._p&&(o.instance=a,o.state.loading=yC|SC),!CC.has(e))){var s={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy};CC.set(e,s),a||Rd(i,e,s,o.state)}if(t&&r===null)throw n=` 181 182 - `+Pd(t)+` 183 + `+Pd(n),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."+n);return o}if(t&&r!==null)throw n=` 184 185 - `+Pd(t)+` 186 + `+Pd(n),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."+n);return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=zd(n),t=rt(i).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(`getResource encountered a type it did not expect: "`+e+`". this is a bug in React.`)}}function Pd(e){var t=0,n=`<link`;return typeof e.rel==`string`?(t++,n+=` rel="`+e.rel+`"`):xp.call(e,`rel`)&&(t++,n+=` rel="`+(e.rel===null?`null`:`invalid type `+typeof e.rel)+`"`),typeof e.href==`string`?(t++,n+=` href="`+e.href+`"`):xp.call(e,`href`)&&(t++,n+=` href="`+(e.href===null?`null`:`invalid type `+typeof e.href)+`"`),typeof e.precedence==`string`?(t++,n+=` precedence="`+e.precedence+`"`):xp.call(e,`precedence`)&&(t++,n+=` precedence={`+(e.precedence===null?`null`:`invalid type `+typeof e.precedence)+`}`),Object.getOwnPropertyNames(e).length>t&&(n+=` ...`),n+` />`}function Fd(e){return`href="`+yt(e)+`"`}function Id(e){return`link[rel="stylesheet"][`+e+`]`}function Ld(e){return Nf({},e,{"data-precedence":e.precedence,precedence:null})}function Rd(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=yC:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=yC}),t.addEventListener(`error`,function(){return r.loading|=bC}),Ou(t,`link`,n),it(t),e.head.appendChild(t))}function zd(e){return`[src="`+yt(e)+`"]`}function Bd(e){return`script[async]`+e}function Vd(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+yt(n.href)+`"]`);if(r)return t.instance=r,it(r),r;var i=Nf({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),it(r),Ou(r,`style`,i),Hd(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Fd(n.href);var a=e.querySelector(Id(i));if(a)return t.state.loading|=SC,t.instance=a,it(a),a;r=Ld(n),(i=CC.get(i))&&Ud(r,i),a=(e.ownerDocument||e).createElement(`link`),it(a);var o=a;return o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Ou(a,`link`,r),t.state.loading|=SC,Hd(a,n.precedence,e),t.instance=a;case`script`:return a=zd(n.src),(i=e.querySelector(Bd(a)))?(t.instance=i,it(i),i):(r=n,(i=CC.get(a))&&(r=Nf({},n),Wd(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),it(i),Ou(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(`acquireResource encountered a resource type it did not expect: "`+t.type+`". this is a bug in React.`)}else t.type===`stylesheet`&&(t.state.loading&SC)===vC&&(r=t.instance,t.state.loading|=SC,Hd(r,n.precedence,e));return t.instance}
186function Hd(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Ud(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function Wd(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}function Gd(e,t,n){if(DC===null){var r=new Map,i=DC=new Map;i.set(n,r)}else i=DC,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[rm]||a[Xp]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==Bm){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Kd(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function qd(e,t,n){var r=!n.ancestorInfo.containerTagInScope;if(n.context===aC||t.itemProp!=null)return!r||t.itemProp==null||e!==`meta`&&e!==`title`&&e!==`style`&&e!==`link`&&e!==`script`||console.error("Cannot render a <%s> outside the main document if it has an `itemProp` prop. `itemProp` suggests the tag belongs to an `itemScope` which can appear anywhere in the DOM. If you were intending for React to hoist this <%s> remove the `itemProp` prop. Otherwise, try moving this tag into the <head> or <body> of the Document.",e,e),!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``){r&&console.error('Cannot render a <style> outside the main document without knowing its precedence and a unique href key. React can hoist and deduplicate <style> tags if you provide a `precedence` prop along with an `href` prop that does not conflict with the `href` values used in any other hoisted <style> or <link rel="stylesheet" ...> tags. Note that hoisting <style> tags is considered an advanced feature that most will not use directly. Consider moving the <style> tag to the <head> or consider adding a `precedence="default"` and `href="some unique resource identifier"`.');break}return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError){if(t.rel===`stylesheet`&&typeof t.precedence==`string`){e=t.href;var i=t.onError,a=t.disabled;n=[],t.onLoad&&n.push("`onLoad`"),i&&n.push("`onError`"),a!=null&&n.push("`disabled`"),i=zu(n,`and`),i+=n.length===1?` prop`:` props`,a=n.length===1?`an `+i:`the `+i,n.length&&console.error('React encountered a <link rel="stylesheet" href="%s" ... /> with a `precedence` prop that also included %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.',e,a,i)}r&&(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``?console.error("Cannot render a <link> outside the main document without a `rel` and `href` prop. Try adding a `rel` and/or `href` prop to this <link> or moving the link into the <head> tag"):(t.onError||t.onLoad)&&console.error(`Cannot render a <link> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.`));break}switch(t.rel){case`stylesheet`:return e=t.precedence,t=t.disabled,typeof e!=`string`&&r&&console.error(`Cannot render a <link rel="stylesheet" /> outside the main document without knowing its precedence. Consider adding precedence="default" or moving it into the root <head> tag.`),typeof e==`string`&&t==null;default:return!0}case`script`:if(e=t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`,!e||t.onLoad||t.onError||!t.src||typeof t.src!=`string`){r&&(e?t.onLoad||t.onError?console.error(`Cannot render a <script> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.`):console.error("Cannot render a <script> outside the main document without `async={true}` and a non-empty `src` prop. Ensure there is a valid `src` and either make the script async or move it into the root <head> tag or somewhere in the <body>."):console.error(`Cannot render a sync or defer <script> outside the main document without knowing its order. Try adding async="" or moving it into the root <head> tag.`));break}return!0;case`noscript`:case`template`:r&&console.error(`Cannot render <%s> outside the main document. Try moving it into the root <head> tag.`,e)}return!1}function Jd(e){return e.type!==`stylesheet`||(e.state.loading&xC)!==vC}function Yd(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&(n.state.loading&SC)===vC){if
vendor: 14,197 bytes, lines 186-188
186(n.instance===null){var i=Fd(r.href),a=t.querySelector(Id(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Zd.bind(e),t.then(e,e)),n.state.loading|=SC,n.instance=a,it(a);return}a=t.ownerDocument||t,r=Ld(r),(i=CC.get(i))&&Ud(r,i),a=a.createElement(`link`),it(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Ou(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&xC)===vC&&(e.count++,n=Zd.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}function Xd(e,t){return e.stylesheets&&e.count===0&&Qd(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Qd(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},OC+t);0<e.imgBytes&&jC===0&&(jC=125*Vu()*AC);var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Qd(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>jC?50:kC)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Zd(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Qd(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}function Qd(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,NC=new Map,t.forEach($d,e),NC=null,Zd.call(e))}function $d(e,t){if(!(t.state.loading&SC)){var n=NC.get(e);if(n)var r=n.get(MC);else{n=new Map,NC.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(MC,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(MC,i),n.set(o,i),this.count++,r=Zd.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=SC}}function ef(e,t,n,r,i,a,o,s,c){for(this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=mC,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ve(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ve(0),this.hiddenUpdates=Ve(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map,this.passiveEffectDuration=this.effectDuration=-0,this.memoizedUpdaters=new Set,e=this.pendingUpdatersLaneMap=[],t=0;31>t;t++)e.push(new Set);this._debugRootType=n?`hydrateRoot()`:`createRoot()`}function tf(e,t,n,r,i,a,o,s,c,l,u,d){return e=new ef(e,t,n,o,c,l,u,d,s),t=Wg,!0===a&&(t|=Kg|qg),t|=Gg,a=g(3,null,null,t),e.current=a,a.stateNode=e,t=ui(),di(t),e.pooledCache=t,di(t),a.memoizedState={element:r,isDehydrated:n,cache:t},ra(a),e}function nf(e){return e?(e=Bg,e):Bg}function rf(e,t,n,r,i,a){if(Ip&&typeof Ip.onScheduleFiberRoot==`function`)try{Ip.onScheduleFiberRoot(Fp,r,n)}catch(e){Lp||(Lp=!0,console.error(`React instrumentation encountered an error: %o`,e))}i=nf(i),r.context===null?r.context=i:r.pendingContext=i,bp&&yp!==null&&!VC&&(VC=!0,console.error(`Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate. 187 188Check the render method of %s.`,w(yp)||`Unknown`)),r=aa(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(typeof a!=`function`&&console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",a),r.callback=a),n=oa(e,r,t),n!==null&&(pi(t,`root.render()`,null),rl(n,e,t),sa(n,e,t))}function af(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function of(e,t){af(e,t),(e=e.alternate)&&af(e,t)}function sf(e){if(e.tag===13||e.tag===31){var t=_r(e,67108864);t!==null&&rl(t,e,67108864),of(e,67108864)}}function cf(e){if(e.tag===13||e.tag===31){var t=tl(e);t=qe(t);var n=_r(e,t);n!==null&&rl(n,e,t),of(e,t)}}function lf(){return yp}function uf(e,t,n,r){var i=L.T;L.T=null;var a=Qf.p;try{Qf.p=Gp,ff(e,t,n,r)}finally{Qf.p=a,L.T=i}}function df(e,t,n,r){var i=L.T;L.T=null;var a=Qf.p;try{Qf.p=Kp,ff(e,t,n,r)}finally{Qf.p=a,L.T=i}}function ff(e,t,n,r){if(QC){var i=pf(r);if(i===null)mu(e,t,r,$C,n),gf(e,r);else if(vf(i,e,t,n,r))r.stopPropagation();else if(gf(e,r),t&4&&-1<sw.indexOf(e)){for(;i!==null;){var a=tt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ie(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-zp(o);s.entanglements[1]|=c,o&=~c}Xl(a),(nx&(qb|Jb))===Kb&&(Px=Ep()+Fx,Zl(0,!1))}}break;case 31:case 13:s=_r(a,2),s!==null&&rl(s,a,2),cl(),of(a,2)}if(a=pf(r),a===null&&mu(e,t,r,$C,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else mu(e,t,r,null,n)}}function pf(e){return e=pn(e),mf(e)}function mf(e){if($C=null,e=et(e),e!==null){var t=x(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=S(t),e!==null)return e;e=null}else if(n===31){if(e=ee(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return $C=e,null}function hf(e){switch(e){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 Gp;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 Kp;case`message`:switch(Dp()){case Op:return Gp;case kp:return Kp;case Ap:case jp:return qp;case Mp:return Jp;default:return qp}default:return qp}}function gf(e,t){switch(e){case`focusin`:case`focusout`:tw=null;break;case`dragenter`:case`dragleave`:nw=null;break;case`mouseover`:case`mouseout`:rw=null;break;case`pointerover`:case`pointerout`:iw.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:aw.delete(t.pointerId)}}function _f(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=tt(t),t!==null&&sf(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function vf(e,t,n,r,i){switch(t){case`focusin`:return tw=_f(tw,e,t,n,r,i),!0;case`dragenter`:return nw=_f(nw,e,t,n,r,i),!0;case`mouseover`:return rw=_f(rw,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return iw.set(a,_f(iw.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,aw.set(a,_f(aw.get(a)||null,e,t,n,r,i)),!0}return!1}function yf(e){var t=et(e.target);if(t!==null){var n=x(t);if(n!==null){if(t=n.tag,t===13){if(t=S(n),t!==null){e.blockedOn=t,Qe(e.priority,function(){cf(n)});return}}else if(t===31){if(t=ee(n),t!==null){e.blockedOn=t,Qe(e.priority,function(){cf(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function bf(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=pf(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n),i=r;eh!==null&&console.error(`Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue.`),eh=i,n.target.dispatchEvent(r),eh===null&&console.error(`Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue.`),eh=null}else return t=tt(n),t!==null&&sf(t),e.blockedOn=n,!1;t.shift()}return!0}function xf(e,t,n){bf(e)&&n.delete(t)}function Sf(){ew=!1,tw!==null&&bf(tw)&&(tw=null),nw!==null&&bf(nw)&&(nw=null),rw!==null&&bf(rw)&&(rw=null),iw.forEach(xf),aw.forEach(xf)}function Cf(e,t){e.blockedOn===t&&(e.blockedOn=null,ew||(ew=!0,Af.unstable_scheduleCallback(Af.unstable_NormalPriority,Sf)))}function wf(e){cw!==e&&(cw=e,Af.unstable_scheduleCallback(Af.unstable_NormalPriority,function(){cw===e&&(cw=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(mf(r||n)===null)continue;break}var a=tt(n);a!==null&&(e.splice(t,3),t-=3,n={pending:!0,data:i,method:n.method,action:r},Object.freeze(n),Ro(a,n,r,i))}}))}function Tf(e){function t(t){return Cf(t,e)}tw!==null&&Cf(tw,e),nw!==null&&Cf(nw,e),rw!==null&&Cf(rw,e),iw.forEach(t),aw.forEach(t);for(var n=0;n<ow.length;n++){var r=ow[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<ow.length&&(n=ow[0],n.blockedOn===null);)yf(n),n.blockedOn===null&&ow.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[Zp]||null;if(typeof a==`function`)o||wf(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[Zp]||null)s=o.formAction;else if(mf(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),wf(n)}}}function Ef(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Df(e){this._internalRoot=e}function Of(e){this._internalRoot=e}function kf(e){e[Qp]&&(e._reactRootContainer?console.error(`You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported.`):console.error(`You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it.`))}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var Af=p(),jf=d(),Mf=h(),Nf=Object.assign,Pf=Symbol.for(`react.element`),Ff=Symbol.for(`react.transitional.element`),If=Symbol.for(`react.portal`),Lf=Symbol.for(`react.fragment`),Rf=Symbol.for(`react.strict_mode`),zf=Symbol.for(`react.profiler`),Bf=Symbol.for(`react.consumer`),Vf=Symbol.for(`react.context`),Hf=Symbol.for(`react.forward_ref`),Uf=Symbol.for(`react.suspense`),Wf=Symbol.for(`react.suspense_list`),Gf=Symbol.for(`react.memo`),Kf=Symbol.for(`react.lazy`),qf=Symbol.for(`react.activity`),Jf=Symbol.for(`react.memo_cache_sentinel`),Yf=Symbol.iterator,Xf=Symbol.for(`react.client.reference`),Zf=Array.isArray,L=jf.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Qf=Mf.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,$f=Object.freeze({pending:!1,data:null,method:null,action:null}),ep=[],tp=[],np=-1,rp=oe(null),ip=oe(null),ap=oe(null),op=oe(null),sp=0,cp,lp,up,dp,fp,pp,mp;me.__reactDisabledLog=!0;var hp,gp,_p=!1,vp=new(typeof WeakMap==`function`?WeakMap:Map),yp=null,bp=!1,xp=Object.prototype.hasOwnProperty,Sp=Af.unstable_scheduleCallback,Cp=Af.unstable_cancelCallback,wp=Af.unstable_shouldYield,Tp=Af.unstable_requestPaint,Ep=Af.unstable_now,Dp=Af.unstable_getCurrentPriorityLevel,Op=Af.unstable_ImmediatePriority,kp=Af.unstable_UserBlockingPriority,Ap=Af.unstable_NormalPriority,jp=Af.unstable_LowPriority,Mp=Af.unstable_IdlePriority,Np=Af.log,Pp=Af.unstable_setDisableYieldValue,Fp=null,Ip=null,Lp=!1,Rp=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`,zp=Math.clz32?Math.clz32:Fe,Bp=Math.log,Vp=Math.LN2,Hp=256,Up=262144,Wp=4194304,Gp=2,Kp=8,qp=32,Jp=268435456,Yp=Math.random().toString(36).slice(2),Xp=`__reactFiber$`+Yp,Zp=`__reactProps$`+Yp,Qp=`__reactContainer$`+Yp,$p=`__reactEvents$`+Yp,em=`__reactListeners$`+Yp,tm=`__reactHandles$`+Yp,nm=`__reactResources$`+Yp,rm=`__reactMarker$`+Yp,im=new Set,am={},om={},sm={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},cm=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),lm={},um={},dm=/[\n"\\]/g,fm=!1,pm=!1,mm=!1,hm=!1,gm=!1,_m=!1,vm=[`value`,`defaultValue`],ym=!1,bm=/["'&<>\n\t]|^\s|\s$/,xm=`address applet area article aside base basefont bgsound blockquote body br button caption center col
188colgroup dd details dir div dl dt embed fieldset figcaption figure footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html iframe img input isindex li link listing main marquee menu menuitem meta nav noembed noframes noscript object ol p param plaintext pre script section select source style summary table tbody td template textarea tfoot th thead title tr track ul wbr xmp`.split(` `),Sm=`applet caption html table td th marquee object template foreignObject desc title`.split(` `),Cm=Sm.concat([`button`]),wm=`dd dt li option optgroup p rp rt`.split(` `),Tm={current:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null,containerTagInScope:null,implicitRootScope:!1},Em={},Dm={animation:`animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationPlayState animationTimingFunction`.split(` `),background:`backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPositionX backgroundPositionY backgroundRepeat backgroundSize`.split(` `),backgroundPosition:[`backgroundPositionX`,`backgroundPositionY`],border:`borderBottomColor borderBottomStyle borderBottomWidth borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderTopColor borderTopStyle borderTopWidth`.split(` `),borderBlockEnd:[`borderBlockEndColor`,`borderBlockEndStyle`,`borderBlockEndWidth`],borderBlockStart:[`borderBlockStartColor`,`borderBlockStartStyle`,`borderBlockStartWidth`],borderBottom:[`borderBottomColor`,`borderBottomStyle`,`borderBottomWidth`],borderColor:[`borderBottomColor`,`borderLeftColor`,`borderRightColor`,`borderTopColor`],borderImage:[`borderImageOutset`,`borderImageRepeat`,`borderImageSlice`,`borderImageSource`,`borderImageWidth`],borderInlineEnd:[`borderInlineEndColor`,`borderInlineEndStyle`,`borderInlineEndWidth`],borderInlineStart:[`borderInlineStartColor`,`borderInlineStartStyle`,`borderInlineStartWidth`],borderLeft:[`borderLeftColor`,`borderLeftStyle`,`borderLeftWidth`],borderRadius:[`borderBottomLeftRadius`,`borderBottomRightRadius`,`borderTopLeftRadius`,`borderTopRightRadius`],borderRight:[`borderRightColor`,`borderRightStyle`,`borderRightWidth`],borderStyle:[`borderBottomStyle`,`borderLeftStyle`,`borderRightStyle`,`borderTopStyle`],borderTop:[`borderTopColor`,`borderTopStyle`,`borderTopWidth`],borderWidth:[`borderBottomWidth`,`borderLeftWidth`,`borderRightWidth`,`borderTopWidth`],columnRule:[`columnRuleColor`,`columnRuleStyle`,`columnRuleWidth`],columns:[`columnCount`,`columnWidth`],flex:[`flexBasis`,`flexGrow`,`flexShrink`],flexFlow:[`flexDirection`,`flexWrap`],font:`fontFamily fontFeatureSettings fontKerning fontLanguageOverride fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition fontWeight lineHeight`.split(` `),fontVariant:`fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition`.split(` `),gap:[`columnGap`,`rowGap`],grid:`gridAutoColumns gridAutoFlow gridAutoRows gridTemplateAreas gridTemplateColumns gridTemplateRows`.split(` `),gridArea:[`gridColumnEnd`,`gridColumnStart`,`gridRowEnd`,`gridRowStart`],gridColumn:[`gridColumnEnd`,`gridColumnStart`],gridColumnGap:[`columnGap`],gridGap:[`columnGap`,`rowGap`],gridRow:[`gridRowEnd`,`gridRowStart`],gridRowGap:[`rowGap`],gridTemplate:[`gridTemplateAreas`,`gridTemplateColumns`,`gridTemplateRows`],listStyle:[`listStyleImage`,`listStylePosition`,`listStyleType`],margin:[`marginBottom`,`marginLeft`,`marginRight`,`marginTop`],marker:[`markerEnd`,`markerMid`,`markerStart`],mask:`maskClip maskComposite maskImage maskMode maskOrigin maskPositionX maskPositionY maskRepeat maskSize`.split(` `),maskPosition:[`maskPositionX`,`maskPositionY`],outline:[`outlineColor`,`outlineStyle`,`outlineWidth`],overflow:[`overflowX`,`overflowY`],padding:[`paddingBottom`,`paddingLeft`,`paddingRight`,`paddingTop`],placeContent:[`alignContent`,`justifyContent`],placeItems:[`alignItems`,`justifyItems`],placeSelf:[`alignSelf`,`justifySelf`],textDecoration:[`textDecorationColor`,`textDecorationLine`,`textDecorationStyle`],textEmphasis:[`textEmphasisColor`,`textEmphasisStyle`],transition:[`transitionDelay`,`transitionDuration`,`transitionProperty`,`transitionTimingFunction`],wordWrap:[`overflowWrap`]},Om=/([A-Z])/g,km=/^ms-/,Am=/^(?:webkit|moz|o)[A-Z]/,jm=/^-ms-/,Mm=/-(.)/g,Nm=/;\s*$/,Pm={},Fm={},Im=!1,Lm=!1,Rm=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `)),zm=`http://www.w3.org/1998/Math/MathML`,Bm=`http://www.w3.org/2000/svg`,Vm=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`
188clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),Hm={accept:`accept`,acceptcharset:`acceptCharset`,"accept-charset":`acceptCharset`,accesskey:`accessKey`,action:`action`,allowfullscreen:`allowFullScreen`,alt:`alt`,as:`as`,async:`async`,autocapitalize:`autoCapitalize`,autocomplete:`autoComplete`,autocorrect:`autoCorrect`,autofocus:`autoFocus`,autoplay:`autoPlay`,autosave:`autoSave`,capture:`capture`,cellpadding:`cellPadding`,cellspacing:`cellSpacing`,challenge:`challenge`,charset:`charSet`,checked:`checked`,children:`children`,cite:`cite`,class:`className`,classid:`classID`,classname:`className`,cols:`cols`,colspan:`colSpan`,content:`content`,contenteditable:`contentEditable`,contextmenu:`contextMenu`,controls:`controls`,controlslist:`controlsList`,coords:`coords`,crossorigin:`crossOrigin`,dangerouslysetinnerhtml:`dangerouslySetInnerHTML`,data:`data`,datetime:`dateTime`,default:`default`,defaultchecked:`defaultChecked`,defaultvalue:`defaultValue`,defer:`defer`,dir:`dir`,disabled:`disabled`,disablepictureinpicture:`disablePictureInPicture`,disableremoteplayback:`disableRemotePlayback`,download:`download`,draggable:`draggable`,enctype:`encType`,enterkeyhint:`enterKeyHint`,fetchpriority:`fetchPriority`,for:`htmlFor`,form:`form`,formmethod:`formMethod`,formaction:`formAction`,formenctype:`formEncType`,formnovalidate:`formNoValidate`,formtarget:`formTarget`,frameborder:`frameBorder`,headers:`headers`,height:`height`,hidden:`hidden`,high:`high`,href:`href`,hreflang:`hrefLang`,htmlfor:`htmlFor`,httpequiv:`httpEquiv`,"http-equiv":`httpEquiv`,icon:`icon`,id:`id`,imagesizes:`imageSizes`,imagesrcset:`imageSrcSet`,inert:`inert`,innerhtml:`innerHTML`,inputmode:`inputMode`,integrity:`integrity`,is:`is`,itemid:`itemID`,itemprop:`itemProp`,itemref:`itemRef`,itemscope:`itemScope`,itemtype:`itemType`,keyparams:`keyParams`,keytype:`keyType`,kind:`kind`,label:`label`,lang:`lang`,list:`list`,loop:`loop`,low:`low`,manifest:`manifest`,marginwidth:`marginWidth`,marginheight:`marginHeight`,max:`max`,maxlength:`maxLength`,media:`media`,mediagroup:`mediaGroup`,method:`method`,min:`min`,minlength:`minLength`,multiple:`multiple`,muted:`muted`,name:`name`,nomodule:`noModule`,nonce:`nonce`,novalidate:`noValidate`,open:`open`,optimum:`optimum`,pattern:`pattern`,placeholder:`placeholder`,playsinline:`playsInl
188ine`,poster:`poster`,preload:`preload`,profile:`profile`,radiogroup:`radioGroup`,readonly:`readOnly`,referrerpolicy:`referrerPolicy`,rel:`rel`,required:`required`,reversed:`reversed`,role:`role`,rows:`rows`,rowspan:`rowSpan`,sandbox:`sandbox`,scope:`scope`,scoped:`scoped`,scrolling:`scrolling`,seamless:`seamless`,selected:`selected`,shape:`shape`,size:`size`,sizes:`sizes`,span:`span`,spellcheck:`spellCheck`,src:`src`,srcdoc:`srcDoc`,srclang:`srcLang`,srcset:`srcSet`,start:`start`,step:`step`,style:`style`,summary:`summary`,tabindex:`tabIndex`,target:`target`,title:`title`,type:`type`,usemap:`useMap`,value:`value`,width:`width`,wmode:`wmode`,wrap:`wrap`,about:`about`,accentheight:`accentHeight`,"accent-height":`accentHeight`,accumulate:`accumulate`,additive:`additive`,alignmentbaseline:`alignmentBaseline`,"alignment-baseline":`alignmentBaseline`,allowreorder:`allowReorder`,alphabetic:`alphabetic`,amplitude:`amplitude`,arabicform:`arabicForm`,"arabic-form":`arabicForm`,ascent:`ascent`,attributename:`attributeName`,attributetype:`attributeType`,autoreverse:`autoReverse`,azimuth:`azimuth`,basefrequency:`baseFrequency`,baselineshift:`baselineShift`,"baseline-shift":`baselineShift`,baseprofile:`baseProfile`,bbox:`bbox`,begin:`begin`,bias:`bias`,by:`by`,calcmode:`calcMode`,capheight:`capHeight`,"cap-height":`capHeight`,clip:`clip`,clippath:`clipPath`,"clip-path":`clipPath`,clippathunits:`clipPathUnits`,cliprule:`clipRule`,"clip-rule":`clipRule`,color:`color`,colorinterpolation:`colorInterpolation`,"color-interpolation":`colorInterpolation`,colorinterpolationfilters:`colorInterpolationFilters`,"color-interpolation-filters":`colorInterpolationFilters`,colorprofile:`colorProfile`,"color-profile":`colorProfile`,colorrendering:`colorRendering`,"color-rendering":`colorRendering`,contentscripttype:`contentScriptType`,contentstyletype:`contentStyleType`,cursor:`cursor`,cx:`cx`,cy:`cy`,d:`d`,datatype:`datatype`,decelerate:`decelerate`,descent:`descent`,diffuseconstant:`diffuseConstant`,direction:`direction`,display:`display`,divisor:`divisor`,dominantbaseline:`dominantBaseline`,"dominant-baseline":`dominantBaseline`,dur:`dur`,dx:`dx`,dy:`dy`,edgemode:`edgeMode`,elevation:`elevation`,enablebackground:`enableBackground`,"enable-background":`enableBackground`,end:`end`,exponent:`exponent`,externalresourcesrequired:`externalResourcesRequired`,fill:`fill`,fillopacity:`fillOpacity`,"fill-opacity":`fillOpacity`,fillrule:`fillRule`,"fill-rule":`fillRule`,filter:`filter`,filterres:`filterRes`,filterunits:`filterUnits`,floodopacity:`floodOpacity`,"flood-opacity":`floodOpacity`,floodcolor:`floodColor`,"flood-color":`floodColor`,focusable:`focusable`,fontfamily:`fontFamily`,"font-family":`fontFamily`,fontsize:`fontSize`,"font-size":`fontSize`,fontsizeadjust:`fontSizeAdjust`,"font-size-adjust":`fontSizeAdjust`,fontstretch:`fontStretch`,"font-stretch":`fontStretch`,fontstyle:`fontStyle`,"font-style":`fontStyle`,fontvariant:`fontVariant`,"font-variant":`fontVariant`,fontweight:`fontWeight`,"font-weight":`fontWeight`,format:`format`,from:`from`,fx:`fx`,fy:`fy`,g1:`g1`,g2:`g2`,glyphname:`glyphName`,"glyph-name":`glyphName`,glyphorientationhorizontal:`glyphOrientationHorizontal`,"glyph-orientation-horizontal":`glyphOrientationHorizontal`,glyphorientationvertical:`glyphOrientationVertical`,"glyph-orientation-vertical":`glyphOrientationVertical`,glyphref:`glyphRef`,gradienttransform:`gradientTransform`,gradientunits:`gradientUnits`,hanging:`hanging`,horizadvx:`horizAdvX`,"horiz-adv-x":`horizAdvX`,horizoriginx:`horizOriginX`,"horiz-origin-x":`horizOriginX`,ideographic:`ideographic`,imagerendering:`imageRendering`,"image-rendering":`imageRendering`,in2:`in2`,in:`in`,inlist:`inlist`,intercept:`intercept`,k1:`k1`,k2:`k2`,k3:`k3`,k4:`k4`,k:`k`,kernelmatrix:`kernelMatrix`,kernelunitlength:`kernelUnitLength`,kerning:`kerning`,keypoints:`keyPoints`,keysplines:`keySplines`,keytimes:`keyTimes`,lengthadjust:`lengthAdjust`,letterspacing:`letterSpacing`,"letter-spacing":`letterSpacing`,lightingcolor:`lightingColor`,"lighting-color":`lightingColor`,limitingconeangle:`limitingConeAngle`,local:`local`,markerend:`markerEnd`,"marker-end":`markerEnd`,markerheight:`markerHeight`,markermid:`markerMid`,"marker-mid":`markerMid`,markerstart:`markerStart`,"marker-start":`markerStart`,markerunits:`markerUnits`,markerwidth:`markerWidth`,mask:`mask`,maskcontentunits:`maskContentUnits`,maskunits:`maskUnits`,mathematical:`mathematical`,mode:`mode`,numoctaves:`numOctaves`,offset:`offset`,opacity:`opacity`,operator:`operator`,order:`order`,orient:`orient`,orientation:`orientation`,origin:`origin`,overflow:`overflow`,overlineposition:`overlinePosition`,"overline-position":`overlinePosition`,overlinethickness:`overlineThickness`,"overline-thickness":`overlineThickness`,paintorder:`paintOrder`,"paint-order":`paintOrder`,panose1:`panose1`,"panose-1":`panose1`,pathlength:`pathLength`,patterncontentunits:`patternContentUnits`,patterntransform:`patternTransform`,patternunits:`patternUnits`,pointerevents:`pointerEvents`,"pointer-events":`pointerEvents`,points:`points`,pointsatx:`pointsAtX`,pointsaty:`pointsAtY`,pointsatz:`pointsAtZ`,popover:`popover`,popovertarget:`popoverTarget`,popovertargetaction:`popoverTargetAction`,prefix:`prefix`,preservealpha:`preserveAlpha`,preserveaspectratio:`preserveAspectRatio`,primitiveunits:`primitiveUnits`,property:`property`,r:`r`,radius:`radius`,refx:`refX`,refy:`refY`,renderingintent:`renderingIntent`,"rendering-intent":`renderingIntent`,repeatcount:`repeatCount`,repeatdur:`repeatDur`,requiredextensions:`requiredExtensions`,requiredfeatures:`requiredFeatures`,resource:`resource`,restart:`restart`,result:`result`,results:`results`,rotate:`rotate`,rx:`rx`,ry:`ry`,scale:`scale`,security:`security`,seed:`seed`,shaperendering:`shapeRendering`,"shape-rendering":`shapeRendering`,slope:`slope`,spacing:`spacing`,specularconstant:`specularConstant`,specularexponent:`specularExponent`,
188speed:`speed`,spreadmethod:`spreadMethod`,startoffset:`startOffset`,stddeviation:`stdDeviation`,stemh:`stemh`,stemv:`stemv`,stitchtiles:`stitchTiles`,stopcolor:`stopColor`,"stop-color":`stopColor`,stopopacity:`stopOpacity`,"stop-opacity":`stopOpacity`,strikethroughposition:`strikethroughPosition`,"strikethrough-position":`strikethroughPosition`,strikethroughthickness:`strikethroughThickness`,"strikethrough-thickness":`strikethroughThickness`,string:`string`,stroke:`stroke`,strokedasharray:`strokeDasharray`,"stroke-dasharray":`strokeDasharray`,strokedashoffset:`strokeDashoffset`,"stroke-dashoffset":`strokeDashoffset`,strokelinecap:`strokeLinecap`,"stroke-linecap":`strokeLinecap`,strokelinejoin:`strokeLinejoin`,"stroke-linejoin":`strokeLinejoin`,strokemiterlimit:`strokeMiterlimit`,"stroke-miterlimit":`strokeMiterlimit`,strokewidth:`strokeWidth`,"stroke-width":`strokeWidth`,strokeopacity:`strokeOpacity`,"stroke-opacity":`strokeOpacity`,suppresscontenteditablewarning:`suppressContentEditableWarning`,suppresshydrationwarning:`suppressHydrationWarning`,surfacescale:`surfaceScale`,systemlanguage:`systemLanguage`,tablevalues:`tableValues`,targetx:`targetX`,targety:`targetY`,textanchor:`textAnchor`,"text-anchor":`textAnchor`,textdecoration:`textDecoration`,"text-decoration":`textDecoration`,textlength:`textLength`,textrendering:`textRendering`,"text-rendering":`textRendering`,to:`to`,transform:`transform`,transformorigin:`transformOrigin`,"transform-origin":`transformOrigin`,typeof:`typeof`,u1:`u1`,u2:`u2`,underlineposition:`underlinePosition`,"underline-position":`underlinePosition`,underlinethickness:`underlineThickness`,"underline-thickness":`underlineThickness`,unicode:`unicode`,unicodebidi:`unicodeBidi`,"unicode-bidi":`unicodeBidi`,unicoderange:`unicodeRange`,"unicode-range":`unicodeRange`,unitsperem:`unitsPerEm`,"units-per-em":`unitsPerEm`,unselectable:`unselectable`,valphabetic:`vAlphabetic`,"v-alphabetic":`vAlphabetic`,values:`values`,vectoreffect:`vectorEffect`,"vector-effect":`vectorEffect`,version:`version`,vertadvy:`vertAdvY`,"vert-adv-y":`vertAdvY`,vertoriginx:`vertOriginX`,"vert-origin-x":`vertOriginX`,vertoriginy:`vertOriginY`,"vert-origin-y":`vertOriginY`,vhanging:`vHanging`,"v-hanging":`vHanging`,videographic:`vIdeographic`,"v-ideographic":`vIdeographic`,viewbox:`viewBox`,viewtarget:`viewTarget`,visibility:`visibility`,vmathematical:`vMathematical`,"v-mathematical":`vMathematical`,vocab:`vocab`,widths:`widths`,wordspacing:`wordSpacing`,"word-spacing":`wordSpacing`,writingmode:`writingMode`,"writing-mode":`writingMode`,x1:`x1`,x2:`x2`,x:`x`,xchannelselector:`xChannelSelector`,xheight:`xHeight`,"x-height":`xHeight`,xlinkactuate:`xlinkActuate`,"xlink:actuate":`xlinkActuate`,xlinkarcrole:`xlinkArcrole`,"xlink:arcrole":`xlinkArcrole`,xlinkhref:`xlinkHref`,"xlink:href":`xlinkHref`,xlinkrole:`xlinkRole`,"xlink:role":`xlinkRole`,xlinkshow:`xlinkShow`,"xlink:show":`xlinkShow`,xlinktitle:`xlinkTitle`,"xlink:title":`xlinkTitle`,xlinktype:`xlinkType`,"xlink:type":`xlinkType`,xmlbase:`xmlBase`,"xml:base":`xmlBase`,xmllang:`xmlLang`,"xml:lang":`xmlLang`,xmlns:`xmlns`,"xml:space":`xmlSpace`,xmlnsxlink:`xmlnsXlink`,"xmlns:xlink":`xmlnsXlink`,xmlspace:`xmlSpace`,y1:`y1`,y2:`y2`,y:`y`,ychannelselector:`yChannelSelector`,z:`z`,zoomandpan:`zoomAndPan`},Um={"aria-current":0,"aria-description":0,"aria-details":0,"aria-disabled":0,"aria-hidden":0,"aria-invalid":0,"aria-keyshortcuts":0,"aria-label":0,"aria-roledescription":0,"aria-autocomplete":0,"aria-checked":0,"aria-expanded":0,"aria-haspopup":0,"aria-level":0,"aria-modal":0,"aria-multiline":0,"aria-multiselectable":0,"aria-orientation":0,"aria-placeholder":0,"aria-pressed":0,"aria-readonly":0,"aria-required":0,"aria-selected":0,"aria-sort":0,"aria-valuemax":0,"aria-valuemin":0,"aria-valuenow":0,"aria-valuetext":0,"aria-atomic":0,"aria-busy":0,"aria-live":0,"aria-relevant":0,"aria-dropeffect":0,"aria-grabbed":0,"aria-activedescendant":0,"aria-colcount":0,"aria-colindex":0,"aria-colspan":0,"aria-controls":0,"aria-describedby":0,"aria-errormessage":0,"aria-flowto":0,"aria-labelledby":0,"aria-owns":0,"aria-posinset":0,"aria-rowcount":0,"aria-rowindex":0,"aria-rowspan":0,"aria-setsize":0,"aria-braillelabel":0,"aria-brailleroledescription":0,"aria-colindextext":0,"aria-rowindextext":0},Wm={},Gm=RegExp(`^(aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u
188037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Km=RegExp(`^(aria)[A-Z][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),qm=!1,Jm={},Ym=/^on./,Xm=/^on[^A-Z]/,Zm=RegExp(`^(aria)-[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Qm=RegExp(`^(aria)[A-Z][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),$m=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i,eh=null,th=null,nh=null,rh=!1,ih=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),ah=!1;if(ih)try{var oh={};Object.defineProperty(oh,"passive",{get:function(){ah=!0}}),window.addEventListener(`test`,oh,oh),window.removeEventListener(`test`,oh,oh)}catch{ah=!1}var sh=null,ch=null,lh=null,uh={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},dh=xn(uh),fh=Nf({},uh,{view:0,detail:0}),ph=xn(fh),mh,hh,gh,_h=Nf({},fh,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Cn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==gh&&(gh&&e.type===`mousemove`?(mh=e.screenX-gh.screenX,hh=e.screenY-gh.screenY):hh=mh=0,gh=e),mh)},movementY:function(e){return`movementY`in e?e.movementY:hh}}),vh=xn(_h),yh=xn(Nf({},_h,{dataTransfer:0})),bh=xn(Nf({},fh,{relatedTarget:0})),xh=xn(Nf({},uh,{animationName:0,elapsedTime:0,pseudoElement:0})),Sh=xn(Nf({},uh,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Ch=xn(Nf({},uh,{data:0})),wh=Ch,Th={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Eh={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Dh={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`},Oh=xn(Nf({},fh,{key:function(e){if(e.key){var t=Th[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=vn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Eh[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Cn,charCode:function(e){return e.type===`keypress`?vn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?vn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),kh=xn(Nf({},_h,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Ah=xn(Nf({},fh,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Cn})),jh=xn(Nf({},uh,{propertyName:0,elapsedTime:0,pseudoElement:0})),Mh=xn(Nf({},_h,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Nh=xn(Nf({},uh,{newState:0,oldState:0}
vendor: 7,094 bytes, lines 188-195
188)),Ph=[9,13,27,32],Fh=229,Ih=ih&&`CompositionEvent`in window,Lh=null;ih&&`documentMode`in document&&(Lh=document.documentMode);var Rh=ih&&`TextEvent`in window&&!Lh,zh=ih&&(!Ih||Lh&&8<Lh&&11>=Lh),Bh=32,Vh=String.fromCharCode(Bh),Hh=!1,Uh=!1,Wh={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0},Gh=null,Kh=null,qh=!1;ih&&(qh=kn(`input`)&&(!document.documentMode||9<document.documentMode));var Jh=typeof Object.is==`function`?Object.is:Bn,Yh=ih&&`documentMode`in document&&11>=document.documentMode,Xh=null,Zh=null,Qh=null,$h=!1,eg={animationend:E(`Animation`,`AnimationEnd`),animationiteration:E(`Animation`,`AnimationIteration`),animationstart:E(`Animation`,`AnimationStart`),transitionrun:E(`Transition`,`TransitionRun`),transitionstart:E(`Transition`,`TransitionStart`),transitioncancel:E(`Transition`,`TransitionCancel`),transitionend:E(`Transition`,`TransitionEnd`)},tg={},ng={};ih&&(ng=document.createElement(`div`).style,`AnimationEvent`in window||(delete eg.animationend.animation,delete eg.animationiteration.animation,delete eg.animationstart.animation),`TransitionEvent`in window||delete eg.transitionend.transition);var rg=Jn(`animationend`),ig=Jn(`animationiteration`),ag=Jn(`animationstart`),og=Jn(`transitionrun`),sg=Jn(`transitionstart`),cg=Jn(`transitioncancel`),lg=Jn(`transitionend`),ug=new Map,dg=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);dg.push(`scrollEnd`);var fg=0;if(typeof performance==`object`&&typeof performance.now==`function`)var pg=performance,mg=function(){return pg.now()};else{var hg=Date;mg=function(){return hg.now()}}var gg=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},_g=`This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects.`,vg=0,yg=1,bg=2,xg=3,Sg=`â\xA0`,Cg=`+\xA0`,wg=`â\xA0`,Tg=typeof console<`u`&&typeof console.timeStamp==`function`&&typeof performance<`u`&&typeof performance.measure==`function`,Eg=`Components â`,Dg=`Scheduler â`,Og=`Blocking`,kg=!1,Ag={color:`primary`,properties:null,tooltipText:``,track:Eg},jg={start:-0,end:-0,detail:{devtools:Ag}},Mg=[`Changed Props`,``],Ng=`This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner.`,Pg=[`Changed Props`,Ng],Fg=1,Ig=2,Lg=[],Rg=0,zg=0,Bg={};Object.freeze(Bg);var Vg=null,Hg=null,Ug=0,Wg=1,Gg=2,Kg=8,qg=16,Jg=32,Yg=!1;try{Object.preventExtensions({})}catch{Yg=!0}var Xg=new WeakMap,Zg=[],Qg=0,$g=null,e_=0,t_=[],n_=0,r_=null,i_=1,a_=``,o_=null,s_=null,c_=!1,l_=!1,u_=null,d_=null,f_=!1,p_=Error(`Hydration Mismatch 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.`),m_=oe(null),h_=oe(null),g_={},__=null,v_=null,y_=!1,b_=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},x_=Af.unstable_scheduleCallback,S_=Af.unstable_NormalPriority,C_={$$typeof:Vf,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0,_currentRenderer:null,_currentRenderer2:null},w_=Af.unstable_now,T_=console.createTask?console.createTask:function(){return null},E_=1,D_=2,O_=-0,k_=-0,A_=-0,j_=null,M_=-1.1,N_=-0,P_=-0,F_=-1.1,I_=-1.1,L_=null,R_=!1,z_=-0,B_=-1.1,V_=null,H_=0,U_=null,W_=null,G_=-1.1,K_=null,q_=-1.1,J_=-1.1,Y_=-0,X_=-1.1,Z_=-1.1,Q_=0,$_=null,ev=null,tv=null,nv=-1.1,rv=null,iv=-1.1,av=-1.1,ov=-0,sv=-0,cv=0,lv=null,uv=0,dv=-1.1,fv=!1,pv=!1,mv=null,hv=0,gv=0,_v=null,vv=L.S;L.S=function(e,t){if(Mx=Ep(),typeof t==`object`&&t&&typeof t.then==`function`){if(0>X_&&0>Z_){X_=w_();var n=Ju(),r=qu();(n!==iv||r!==rv)&&(iv=-1.1),nv=n,rv=r}Mi(e,t)}vv!==null&&vv(e,t)};var yv=oe(null),bv={recordUnsafeLifecycleWarnings:function(){},flushPendingUnsafeLifecycleWarnings:function(){},recordLegacyContextWarning:function(){},flushLegacyContextWarning:function(){},discardPendingWarnings:function(){}},xv=[],Sv=[],Cv=[],wv=[],Tv=[],Ev=[],Dv=new Set;bv.recordUnsafeLifecycleWarnings=function(e,t){Dv.has(e.type)||(typeof t.componentWillMount==`function`&&!0!==t.componentWillMount.__suppressDeprecationWarning&&xv.push(e),e.mode&Kg&&typeof t.UNSAFE_componentWillMount==`function`&&Sv.push(e),typeof t.componentWillReceiveProps==`function`&&!0!==t.componentWillReceiveProps.__suppressDeprecationWarning&&Cv.push(e),e.mode&Kg&&typeof t.UNSAFE_componentWillReceiveProps==`function`&&wv.push(e),typeof t.componentWillUpdate==`function`&&!0!==t.componentWillUpdate.__suppressDeprecationWarning&&Tv.push(e),e.mode&Kg&&typeof t.UNSAFE_componentWillUpdate==`function`&&Ev.push(e))},bv.flushPendingUnsafeLifecycleWarnings=function(){var e=new Set;0<xv.length&&(xv.forEach(function(t){e.add(w(t)||`Component`),Dv.add(t.type)}),xv=[]);var t=new Set;0<Sv.length&&(Sv.forEach(function(e){t.add(w(e)||`Component`),Dv.add(e.type)}),Sv=[]);var n=new Set;0<Cv.length&&(Cv.forEach(function(e){n.add(w(e)||`Component`),Dv.add(e.type)}),Cv=[]);var r=new Set;0<wv.length&&(wv.forEach(function(e){r.add(w(e)||`Component`),Dv.add(e.type)}),wv=[]);var i=new Set;0<Tv.length&&(Tv.forEach(function(e){i.add(w(e)||`Component`),Dv.add(e.type)}),Tv=[]);var a=new Set;if(0<Ev.length&&(Ev.forEach(function(e){a.add(w(e)||`Component`),Dv.add(e.type)}),Ev=[]),0<t.size){var o=m(t);console.error(`Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details. 189 190* Move code with side effects to componentDidMount, and set initial state in the constructor. 191 192Please update the following components: %s`,o)}0<r.size&&(o=m(r),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. 193 194* Move data fetching code or side effects to componentDidUpdate. 195* If you're updating state whenever props change, refactor your co
195de to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state 196 197Please update the following components: %s`,o)),0<a.size&&(o=m(a),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. 198 199* Move data fetching code or side effects to componentDidUpdate. 200 201Please update the following components: %s`,o)),0<e.size&&(o=m(e),console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details. 202 203* Move code with side effects to componentDidMount, and set initial state in the constructor. 204* 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. 205 206Please update the following components: %s`,o)),0<n.size&&(o=m(n),console.warn(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details. 207 208* Move data fetching code or side effects to componentDidUpdate. 209* 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 210* 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. 211 212Please update the following components: %s`,o)),0<i.size&&(o=m(i),console.warn(`componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details. 213 214* Move data fetching code or side effects to componentDidUpdate. 215* 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. 216 217Please update the following components: %s`,o))};var Ov=new Map,kv=new Set;bv.recordLegacyContextWarning=function(e,t){for(var n=null,r=e;r!==null;)r.mode&Kg&&(n=r),r=r.return;n===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.`):!kv.has(e.type)&&(r=Ov.get(n),e.type.contextTypes!=null||e.type.childContextTypes!=null||t!==null&&typeof t.getChildContext==`function`)&&(r===void 0&&(r=[],Ov.set(n,r)),r.push(e))},bv.flushLegacyContextWarning=function(){Ov.forEach(function(e){if(e.length!==0){var t=e[0],n=new Set;e.forEach(function(e){n.add(w(e)||`Component`),kv.add(e.type)});var r=m(n);Te(t,function(){console.error(`Legacy context API has been detected within a strict-mode tree. 218 219The old API will be supported in all 16.x releases, but applications using it should migrate to the new version. 220 221Please update the following components: %s 222 223Learn more about this warning here: https://react.dev/link/legacy-context`,r)})}})},bv.discardPendingWarnings=function(){xv=[],Sv=[],Cv=[],wv=[],Tv=[],Ev=[],Ov=new Map};var Av={react_stack_bottom_frame:function(e,t,n){var r=bp;bp=!0;try{return e(t,n)}finally{bp=r}}},jv=Av.react_stack_bottom_frame.bind(Av),Mv={react_stack_bottom_frame:function(e){var t=bp;bp=!0;try{return e.render()}finally{bp=t}}},Nv=Mv.react_stack_bottom_frame.bind(Mv),Pv={react_stack_bottom_frame:function(e,t){try{t.componentDidMount()}catch(t){Ll(e,e.return,t)}}},Fv=Pv.react_stack_bottom_frame.bind(Pv),Iv={react_stack_bottom_frame:function(e,t,n,r,i){try{t.componentDidUpdate(n,r,i)}catch(t){Ll(e,e.return,t)}}},Lv=Iv.react_stack_bottom_frame.bind(Iv),Rv={react_stack_bottom_frame:function(e,t){var n=t.stack;e.componentDidCatch(t.value,{componentStack:n===null?``:n})}},zv=Rv.react_stack_bottom_frame.bind(Rv),Bv={react_stack_bottom_frame:function(e,t,n){try{n.componentWillUnmount()}catch(n){Ll(e,t,n)}}},Vv=Bv.react_stack_bottom_frame.bind(Bv),Hv={react_stack_bottom_frame:function(e){var t=e.create;return e=e.inst,t=t(),e.destroy=t}},Uv=Hv.react_stack_bottom_frame.bind(Hv),Wv={react_stack_bottom_frame:function(e,t,n){try{n()}catch(n){Ll(e,t,n)}}},Gv=Wv.react_stack_bottom_frame.bind(Wv),Kv={react_stack_bottom_frame:function(e){var t=e._init;return t(e._payload)}},qv=Kv.react_stack_bottom_frame.bind(Kv),Jv=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`."),Yv=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.`),Xv=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."),Zv={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.`)}},Qv=null,$v=!1,ey=null,ty=0,ny=null,ry,iy=ry=!1,ay={},oy={},sy={};f=function(e,t,n){if(typeof n==`object`&&n&&n._store&&(!n._store.validated&&n.key==null||n._store.validated===2)){if(typeof n._store!=`object`)throw Error(`React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.`);n._store.validated=1;var r=w(e),i=r||`null`;if(!ay[i]){ay[i]=!0,n=n._owner,e=e._debugOwner;var a=``;e&&typeof e.tag==`number`&&(i=w(e))&&(a=` 224 225Check the render method of \``+i+"`."),a||r&&(a=` 226 227Check the top-level render call using <`+r+`>.`);var o=``;n!=null&&e!==n&&(r=null,typeof n.tag==`number`?r=w(n):typeof n.name==`string`&&(r=n.name),r&&(o=` It was passed a child from `+r+`.`)),Te(t,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.`,a,o)})}}};var cy=ta(!0),ly=ta(!1),uy=0,dy=1,fy=2,py=3,my=!1,hy=!1,gy=null,_y=!1,vy=oe(null),yy=oe(0),by=oe(null),xy=null,Sy=1,Cy=2,wy=oe(0),Ty=0,Ey=1,Dy=2,Oy=4,ky=8,Ay,jy=new Set,My=new Set,
vendor: 24,099 bytes, lines 227-231
227Ny=new Set,Py=new Set,Fy=0,Iy=null,Ly=null,Ry=null,zy=!1,By=!1,Vy=!1,Hy=0,Uy=0,Wy=null,Gy=0,Ky=25,R=null,qy=null,Jy=-1,Yy=!1,Xy={readContext:si,use:za,useCallback:Ea,useContext:Ea,useEffect:Ea,useImperativeHandle:Ea,useLayoutEffect:Ea,useInsertionEffect:Ea,useMemo:Ea,useReducer:Ea,useRef:Ea,useState:Ea,useDebugValue:Ea,useDeferredValue:Ea,useTransition:Ea,useSyncExternalStore:Ea,useId:Ea,useHostTransitionStatus:Ea,useFormState:Ea,useActionState:Ea,useOptimistic:Ea,useMemoCache:Ea,useCacheRefresh:Ea};Xy.useEffectEvent=Ea;var Zy=null,Qy=null,$y=null,eb=null,tb=null,nb=null,rb=null;Zy={readContext:function(e){return si(e)},use:za,useCallback:function(e,t){return R=`useCallback`,Ca(),wa(t),Oo(e,t)},useContext:function(e){return R=`useContext`,Ca(),si(e)},useEffect:function(e,t){return R=`useEffect`,Ca(),wa(t),So(e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,Ca(),wa(n),k(e,t,n)},useInsertionEffect:function(e,t){R=`useInsertionEffect`,Ca(),wa(t),bo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,Ca(),wa(t),Eo(e,t)},useMemo:function(e,t){R=`useMemo`,Ca(),wa(t);var n=L.H;L.H=tb;try{return Ao(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,Ca();var r=L.H;L.H=tb;try{return Ha(e,t,n)}finally{L.H=r}},useRef:function(e){return R=`useRef`,Ca(),yo(e)},useState:function(e){R=`useState`,Ca();var t=L.H;L.H=tb;try{return eo(e)}finally{L.H=t}},useDebugValue:function(){R=`useDebugValue`,Ca()},useDeferredValue:function(e,t){return R=`useDeferredValue`,Ca(),jo(e,t)},useTransition:function(){return R=`useTransition`,Ca(),Vo()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,Ca(),Ka(e,t,n)},useId:function(){return R=`useId`,Ca(),Go()},useFormState:function(e,t){return R=`useFormState`,Ca(),Ta(),po(e,t)},useActionState:function(e,t){return R=`useActionState`,Ca(),po(e,t)},useOptimistic:function(e){return R=`useOptimistic`,Ca(),to(e)},useHostTransitionStatus:Wo,useMemoCache:Ba,useCacheRefresh:function(){return R=`useCacheRefresh`,Ca(),Ko()},useEffectEvent:function(e){return R=`useEffectEvent`,Ca(),wo(e)}},Qy={readContext:function(e){return si(e)},use:za,useCallback:function(e,t){return R=`useCallback`,O(),Oo(e,t)},useContext:function(e){return R=`useContext`,O(),si(e)},useEffect:function(e,t){return R=`useEffect`,O(),So(e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,O(),k(e,t,n)},useInsertionEffect:function(e,t){R=`useInsertionEffect`,O(),bo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,O(),Eo(e,t)},useMemo:function(e,t){R=`useMemo`,O();var n=L.H;L.H=tb;try{return Ao(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,O();var r=L.H;L.H=tb;try{return Ha(e,t,n)}finally{L.H=r}},useRef:function(e){return R=`useRef`,O(),yo(e)},useState:function(e){R=`useState`,O();var t=L.H;L.H=tb;try{return eo(e)}finally{L.H=t}},useDebugValue:function(){R=`useDebugValue`,O()},useDeferredValue:function(e,t){return R=`useDeferredValue`,O(),jo(e,t)},useTransition:function(){return R=`useTransition`,O(),Vo()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,O(),Ka(e,t,n)},useId:function(){return R=`useId`,O(),Go()},useActionState:function(e,t){return R=`useActionState`,O(),po(e,t)},useFormState:function(e,t){return R=`useFormState`,O(),Ta(),po(e,t)},useOptimistic:function(e){return R=`useOptimistic`,O(),to(e)},useHostTransitionStatus:Wo,useMemoCache:Ba,useCacheRefresh:function(){return R=`useCacheRefresh`,O(),Ko()},useEffectEvent:function(e){return R=`useEffectEvent`,O(),wo(e)}},$y={readContext:function(e){return si(e)},use:za,useCallback:function(e,t){return R=`useCallback`,O(),ko(e,t)},useContext:function(e){return R=`useContext`,O(),si(e)},useEffect:function(e,t){R=`useEffect`,O(),xo(2048,ky,e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,O(),A(e,t,n)},useInsertionEffect:function(e,t){return R=`useInsertionEffect`,O(),xo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,O(),xo(4,Oy,e,t)},useMemo:function(e,t){R=`useMemo`,O();var n=L.H;L.H=nb;try{return j(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,O();var r=L.H;L.H=nb;try{return Ua(e,t,n)}finally{L.H=r}},useRef:function(){return R=`useRef`,O(),Ia().memoizedState},useState:function(){R=`useState`,O();var e=L.H;L.H=nb;try{return Ua(Va)}finally{L.H=e}},useDebugValue:function(){R=`useDebugValue`,O()},useDeferredValue:function(e,t){return R=`useDeferredValue`,O(),Mo(e,t)},useTransition:function(){return R=`useTransition`,O(),Ho()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,O(),qa(e,t,n)},useId:function(){return R=`useId`,O(),Ia().memoizedState},useFormState:function(e){return R=`useFormState`,O(),Ta(),mo(e)},useActionState:function(e){return R=`useActionState`,O(),mo(e)},useOptimistic:function(e,t){return R=`useOptimistic`,O(),no(e,t)},useHostTransitionStatus:Wo,useMemoCache:Ba,useCacheRefresh:function(){return R=`useCacheRefresh`,O(),Ia().memoizedState},useEffectEvent:function(e){return R=`useEffectEvent`,O(),To(e)}},eb={readContext:function(e){return si(e)},use:za,useCallback:function(e,t){return R=`useCallback`,O(),ko(e,t)},useContext:function(e){return R=`useContext`,O(),si(e)},useEffect:function(e,t){R=`useEffect`,O(),xo(2048,ky,e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,O(),A(e,t,n)},useInsertionEffect:function(e,t){return R=`useInsertionEffect`,O(),xo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,O(),xo(4,Oy,e,t)},useMemo:function(e,t){R=`useMemo`,O();var n=L.H;L.H=rb;try{return j(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,O();var r=L.H;L.H=rb;try{return Ga(e,t,n)}finally{L.H=r}},useRef:function(){return R=`useRef`,O(),Ia().memoizedState},useState:function(){R=`useState`,O();var e=L.H;L.H=rb;try{return Ga(Va)}finally{L.H=e}},useDebugValue:function(){R=`useDebugValue`,O()},useDeferredValue:function(e,t){return R=`useDeferredValue`,O(),No(e,t)},useTransition:function(){return R=`useTransition`,O(),Uo()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,O(),qa(e,t,n)},useId:function(){return R=`useId`,O(),Ia().memoizedState},useFormState:function(e){return R=`useFormState`,O(),Ta(),_o(e)},useActionState:function(e){return R=`useActionState`,O(),_o(e)},useOptimistic:function(e,t){return R=`useOptimistic`,O(),io(e,t)},useHostTransitionStatus:Wo,useMemoCache:Ba,useCacheRefresh:function(){return R=`useCacheRefresh`,O(),Ia().memoizedState},useEffectEvent:function(e){return R=`useEffectEvent`,O(),To(e)}},tb={readContext:function(e){return l(),si(e)},use:function(e){return c(),za(e)},useCallback:function(e,t){return R=`useCallback`,c(),Ca(),Oo(e,t)},useContext:function(e){return R=`useContext`,c(),Ca(),si(e)},useEffect:function(e,t){return R=`useEffect`,c(),Ca(),So(e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,c(),Ca(),k(e,t,n)},useInsertionEffect:function(e,t){R=`useInsertionEffect`,c(),Ca(),bo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,c(),Ca(),Eo(e,t)},useMemo:function(e,t){R=`useMemo`,c(),Ca();var n=L.H;L.H=tb;try{return Ao(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,c(),Ca();var r=L.H;L.H=tb;try{return Ha(e,t,n)}finally{L.H=r}},useRef:function(e){return R=`useRef`,c(),Ca(),yo(e)},useState:function(e){R=`useState`,c(),Ca();var t=L.H;L.H=tb;try{return eo(e)}finally{L.H=t}},useDebugValue:function(){R=`useDebugValue`,c(),Ca()},useDeferredValue:function(e,t){return R=`useDeferredValue`,c(),Ca(),jo(e,t)},useTransition:function(){return R=`useTransition`,c(),Ca(),Vo()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,c(),Ca(),Ka(e,t,n)},useId:function(){return R=`useId`,c(),Ca(),Go()},useFormState:function(e,t){return R=`useFormState`,c(),Ca(),po(e,t)},useActionState:function(e,t){return R=`useActionState`,c(),Ca(),po(e,t)},useOptimistic:function(e){return R=`useOptimistic`,c(),Ca(),to(e)},useMemoCache:function(e){return c(),Ba(e)},useHostTransitionStatus:Wo,useCacheRefresh:function(){return R=`useCacheRefresh`,Ca(),Ko()},useEffectEvent:function(e){return R=`useEffectEvent`,c(),Ca(),wo(e)}},nb={readContext:function(e){return l(),si(e)},use:function(e){return c(),za(e)},useCallback:function(e,t){return R=`useCallback`,c(),O(),ko(e,t)},useContext:function(e){return R=`useContext`,c(),O(),si(e)},useEffect:function(e,t){R=`useEffect`,c(),O(),xo(2048,ky,e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,c(),O(),A(e,t,n)},useInsertionEffect:function(e,t){return R=`useInsertionEffect`,c(),O(),xo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,c(),O(),xo(4,Oy,e,t)},useMemo:function(e,t){R=`useMemo`,c(),O();var n=L.H;L.H=nb;try{return j(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,c(),O();var r=L.H;L.H=nb;try{return Ua(e,t,n)}finally{L.H=r}},useRef:function(){return R=`useRef`,c(),O(),Ia().memoizedState},useState:function(){R=`useState`,c(),O();var e=L.H;L.H=nb;try{return Ua(Va)}finally{L.H=e}},useDebugValue:function(){R=`useDebugValue`,c(),O()},useDeferredValue:function(e,t){return R=`useDeferredValue`,c(),O(),Mo(e,t)},useTransition:function(){return R=`useTransition`,c(),O(),Ho()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,c(),O(),qa(e,t,n)},useId:function(){return R=`useId`,c(),O(),Ia().memoizedState},useFormState:function(e){return R=`useFormState`,c(),O(),mo(e)},useActionState:function(e){return R=`useActionState`,c(),O(),mo(e)},useOptimistic:function(e,t){return R=`useOptimistic`,c(),O(),no(e,t)},useMemoCache:function(e){return c(),Ba(e)},useHostTransitionStatus:Wo,useCacheRefresh:function(){return R=`useCacheRefresh`,O(),Ia().memoizedState},useEffectEvent:function(e){return R=`useEffectEvent`,c(),O(),To(e)}},rb={readContext:function(e){return l(),si(e)},use:function(e){return c(),za(e)},useCallback:function(e,t){return R=`useCallback`,c(),O(),ko(e,t)},useContext:function(e){return R=`useContext`,c(),O(),si(e)},useEffect:function(e,t){R=`useEffect`,c(),O(),xo(2048,ky,e,t)},useImperativeHandle:function(e,t,n){return R=`useImperativeHandle`,c(),O(),A(e,t,n)},useInsertionEffect:function(e,t){return R=`useInsertionEffect`,c(),O(),xo(4,Dy,e,t)},useLayoutEffect:function(e,t){return R=`useLayoutEffect`,c(),O(),xo(4,Oy,e,t)},useMemo:function(e,t){R=`useMemo`,c(),O();var n=L.H;L.H=nb;try{return j(e,t)}finally{L.H=n}},useReducer:function(e,t,n){R=`useReducer`,c(),O();var r=L.H;L.H=nb;try{return Ga(e,t,n)}finally{L.H=r}},useRef:function(){return R=`useRef`,c(),O(),Ia().memoizedState},useState:function(){R=`useState`,c(),O();var e=L.H;L.H=nb;try{return Ga(Va)}finally{L.H=e}},useDebugValue:function(){R=`useDebugValue`,c(),O()},useDeferredValue:function(e,t){return R=`useDeferredValue`,c(),O(),No(e,t)},useTransition:function(){return R=`useTransition`,c(),O(),Uo()},useSyncExternalStore:function(e,t,n){return R=`useSyncExternalStore`,c(),O(),qa(e,t,n)},useId:function(){return R=`useId`,c(),O(),Ia().memoizedState},useFormState:function(e){return R=`useFormState`,c(),O(),_o(e)},useActionState:function(e){return R=`useActionState`,c(),O(),_o(e)},useOptimistic:function(e,t){return R=`useOptimistic`,c(),O(),io(e,t)},useMemoCache:function(e){return c(),Ba(e)},useHostTransitionStatus:Wo,useCacheRefresh:function(){return R=`useCacheRefresh`,O(),Ia().memoizedState},useEffectEvent:function(e){return R=`useEffectEvent`,c(),O(),To(e)}};var ib={},ab=new Set,ob=new Set,sb=new Set,cb=new Set,lb=new Set,ub=new Set,db=new Set,fb=new Set,pb=new Set,mb=new Set;Object.freeze(ib);var hb={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=tl(e),i=aa(r);i.payload=t,n!=null&&(M(n),i.callback=n),t=oa(e,i,r),t!==null&&(pi(r,`this.setState()`,e),rl(t,e,r),sa(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=tl(e),i=aa(r);i.tag=dy,i.payload=t,n!=null&&(M(n),i.callback=n),t=oa(e,i,r),t!==null&&(pi(r,`this.replaceState()`,e),rl(t,e,r),sa(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=tl(e),r=aa(n);r.tag=fy,t!=null&&(M(t),r.callback=t),t=oa(e,r,n),t!==null&&(pi(n,`this.forceUpdate()`,e),rl(t,e,n),sa(t,e,n))}},gb=null,_b=null,vb=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.`),yb=!1,bb={},xb={},Sb={},Cb={},wb=!1,Tb={},Eb={},Db={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},Ob=!1,kb=null;kb=new Set;var Ab=!1,jb=!1,Mb=!1,Nb=typeof WeakSet==`function`?WeakSet:Set,Pb=null,Fb=null,Ib=null,Lb=null,Rb=!1,zb=null,Bb=!1,Vb=8192,Hb={getCacheForType:function(e){var t=si(C_),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return si(C_).controller.signal},getOwner:function(){return yp}};if(typeof Symbol==`function`&&Symbol.for){var Ub=Symbol.for;Ub(`selector.component`),Ub(`selector.has_pseudo_class`),Ub(`selector.role`),Ub(`selector.test_id`),Ub(`selector.text`)}var Wb=[],Gb=typeof WeakMap==`function`?WeakMap:Map,Kb=0,qb=2,Jb=4,Yb=0,Xb=1,Zb=2,Qb=3,$b=4,ex=6,tx=5,nx=Kb,rx=null,ix=null,ax=0,ox=0,sx=1,cx=2,lx=3,ux=4,dx=5,fx=6,px=7,mx=8,hx=9,gx=ox,_x=null,vx=!1,yx=!1,bx=!1,xx=0,Sx=Yb,Cx=0,wx=0,Tx=0,Ex=0,Dx=0,Ox=null,kx=null,Ax=!1,jx=0,Mx=0,Nx=300,Px=1/0,Fx=500,Ix=null,Lx=null,Rx=null,zx=0,Bx=1,Vx=2,Hx=3,Ux=0,Wx=1,Gx=2,Kx=3,qx=4,Jx=5,Yx=0,Xx=null,Zx=null,Qx=0,$x=0,eS=-0,tS=null,nS=null,rS=null,iS=zx,aS=null,oS=50,sS=0,cS=null,lS=!1,uS=!1,dS=50,fS=0,pS=null,mS=!1,hS=null,gS=!1,_S=new Set,vS={},yS=null,bS=null,xS=!1,SS=!1,CS=!1,wS=!1,TS=0,ES={};(function(){for(var e=0;e<dg.length;e++){var t=dg[e],n=t.toLowerCase();t=t[0].toUpperCase()+t.slice(1),Yn(n,`on`+t)}Yn(rg,`onAnimationEnd`),Yn(ig,`onAnimationIteration`),Yn(ag,`onAnimationStart`),Yn(`dblclick`,`onDoubleClick`),Yn(`focusin`,`onFocus`),Yn(`focusout`,`onBlur`),Yn(og,`onTransitionRun`),Yn(sg,`onTransitionStart`),Yn(cg,`onTransitionCancel`),Yn(lg,`onTransitionEnd`)})(),ot(`onMouseEnter`,[`mouseout`,`mouseover`]),ot(`onMouseLeave`,[`mouseout`,`mouseover`]),ot(`onPointerEnter`,[`pointerout`,`pointerover`]),ot(`onPointerLeave`,[`pointerout`,`pointerover`]),at(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),at(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),at(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),at(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),at(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),at(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var DS=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),OS=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(DS)),kS=`_reactListening`+Math.random().toString(36).slice(2),AS=!1,jS=!1,MS=!1,NS=!1,PS=!1,FS=!1,IS=!1,LS={},RS=/\r\n?/g,zS=/\u0000|\uFFFD/g,BS=`http://www.w3.org/1999/xlink`,VS=`http://www.w3.org/XML/1998/namespace`,HS=`javascript:throw new Error('React form unexpectedly submitted.')`,US=`suppressHydrationWarning`,WS=`&`,GS=`/&`,KS=`$`,qS=`/$`,JS=`$?`,YS=`$~`,XS=`$!`,ZS=`html`,QS=`body`,$S=`head`,eC=`F!`,tC=`F`,nC=`loading`,rC=`style`,iC=0,aC=1,oC=2,sC=null,cC=null,lC={dialog:!0,webview:!0},uC=null,dC=void 0,fC=typeof setTimeout==`function`?setTimeout:void 0,pC=typeof clearTimeout==`function`?clearTimeout:void 0,mC=-1,hC=typeof Promise==`function`?Promise:void 0,gC=typeof queueMicrotask==`function`?queueMicrotask:hC===void 0?fC:function(e){return hC.resolve(null).then(e).catch(Yu)},_C=null,vC=0,yC=1,bC=2,xC=3,SC=4,CC=new Map,wC=new Set,TC=Qf.d;Qf.d={f:function(){var e=TC.f(),t=cl();return e||t},r:function(e){var t=tt(e);t!==null&&t.tag===5&&t.type===`form`?Bo(t):TC.r(e)},D:function(e){TC.D(e),Md(`dns-prefetch`,e,null)},C:function(e,t){TC.C(e,t),Md(`preconnect`,e,t)},L:function(e,t,n){TC.L(e,t,n);var r=EC;if(r&&e&&t){var i=`link[rel="preload"][as="`+yt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+yt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+yt(n.imageSizes)+`"]`)):i+=`[href="`+yt(e)+`"]`;var a=i;switch(t){case`style`:a=Fd(e);break;case`script`:a=zd(e)}CC.has(a)||(e=Nf({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),CC.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Id(a))||t===`script`&&r.querySelector(Bd(a))||(t=r.createElement(`link`),Ou(t,`link`,e),it(t),r.head.appendChild(t)))}},m:function(e,t){TC.m(e,t);var n=EC;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+yt(r)+`"][href="`+yt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=zd(e)}if(!CC.has(a)&&(e=Nf({rel:`modulepreload`,href:e},t),CC.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Bd(a)))return}r=n.createElement(`link`),Ou(r,`link`,e),it(r),n.head.appendChild(r)}}},X:function(e,t){TC.X(e,t);var n=EC;if(n&&e){var r=rt(n).hoistableScripts,i=zd(e),a=r.get(i);a||(a=n.querySelector(Bd(i)),a||(e=Nf({src:e,async:!0},t),(t=CC.get(i))&&Wd(e,t),a=n.createElement(`script`),it(a),Ou(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}},S:function(e,t,n){TC.S(e,t,n);var r=EC;if(r&&e){var i=rt(r).hoistableStyles,a=Fd(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:vC,preload:null};if(o=r.querySelector(Id(a)))s.loading=yC|SC;else{e=Nf({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=CC.get(a))&&Ud(e,n);var c=o=r.createElement(`link`);it(c),Ou(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=yC}),c.addEventListener(`error`,function(){s.loading|=bC}),s.loading|=SC,Hd(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}},M:function(e,t){TC.M(e,t);var n=EC;if(n&&e){var r=rt(n).hoistableScripts,i=zd(e),a=r.get(i);a||(a=n.querySelector(Bd(i)),a||(e=Nf({src:e,async:!0,type:`module`},t),(t=CC.get(i))&&Wd(e,t),a=n.createElement(`script`),it(a),Ou(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}};var EC=typeof document>`u`?null:document,DC=null,OC=6e4,kC=800,AC=500,jC=0,MC=null,NC=null,PC=$f,FC={$$typeof:Vf,Provider:null,Consumer:null,_currentValue:PC,_currentValue2:PC,_threadCount:0},IC=`%c%s%c`,LC=`background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px`,RC=``,zC=` `,BC=Function.prototype.bind,VC=!1,HC=null,UC=null,WC=null,GC=null,KC=null,qC=null,JC=null,YC=null,XC=null,ZC=null;HC=function(e,r,i,a){r=t(e,r),r!==null&&(i=n(r.memoizedState,i,0,a),r.memoizedState=i,r.baseState=i,e.memoizedProps=Nf({},e.memoizedProps),i=_r(e,2),i!==null&&rl(i,e,2))},UC=function(e,n,r){n=t(e,n),n!==null&&(r=a(n.memoizedState,r,0),n.memoizedState=r,n.baseState=r,e.memoizedProps=Nf({},e.memoizedProps),r=_r(e,2),r!==null&&rl(r,e,2))},WC=function(e,n,i,a){n=t(e,n),n!==null&&(i=r(n.memoizedState,i,a),n.memoizedState=i,n.baseState=i,e.memoizedProps=Nf({},e.memoizedProps),i=_r(e,2),i!==null&&rl(i,e,2))},GC=function(e,t,r){e.pendingProps=n(e.memoizedProps,t,0,r),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=_r(e,2),t!==null&&rl(t,e,2)},KC=function(e,t){e.pendingProps=a(e.memoizedProps,t,0),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=_r(e,2),t!==null&&rl(t,e,2)},qC=function(e,t,n){e.pendingProps=r(e.memoizedProps,t,n),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=_r(e,2),t!==null&&rl(t,e,2)},JC=function(e){var t=_r(e,2);t!==null&&rl(t,e,2)},YC=function(e){var t=Be(),n=_r(e,t);n!==null&&rl(n,e,t)},XC=function(e){s=e},ZC=function(e){o=e};var QC=!0,$C=null,ew=!1,tw=null,nw=null,rw=null,iw=new Map,aw=new Map,ow=[],sw=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `),cw=null;if(Of.prototype.render=Df.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(`Cannot update an unmounted root.`);var n=arguments;typeof n[1]==`function`?console.error(`does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().`):b(n[1])?console.error(`You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root.`):n[1]!==void 0&&console.error(`You passed a second argument to root.render(...) but it only accepts one argument.`),n=e;var r=t.current;rf(r,tl(r),n,t,null,null)},Of.prototype.unmount=Df.prototype.unmount=function(){var e=arguments;if(typeof e[0]==`function`&&console.error(`does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().`),e=this._internalRoot,e!==null){this._internalRoot=null;var t=e.containerInfo;(nx&(qb|Jb))!==Kb&&console.error(`Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition.`),rf(e.current,2,null,e,null,null),cl(),t[Qp]=null}},Of.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ze();e={blockedOn:null,target:e,priority:t};for(var n=0;n<ow.length&&t!==0&&t<ow[n].priority;n++);ow.splice(n,0,e),n===0&&yf(e)}},(function(){var e=jf.version;if(e!==`19.2.8`)throw Error(`Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got: 228 - react: `+(e+` 229 - react-dom: 19.2.8 230Learn 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`),Qf.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(`Unable to find node on an unmounted component.`):(e=Object.keys(e).join(`,`),Error(`Argument appears to not be a ReactComponent. Keys: `+e));return e=ne(t),e=e===null?null:re(e),e=e===null?null:e.stateNode,e},!(function(){var e={bundleType:1,version:`19.2.8`,rendererPackageName:`react-dom`,currentDispatcherRef:L,reconcilerVersion:`19.2.8`};return e.overrideHookState=HC,e.overrideHookStateDeletePath=UC,e.overrideHookStateRenamePath=WC,e.overrideProps=GC,e.overridePropsDeletePath=KC,e.overridePropsRenamePath=qC,e.scheduleUpdate=JC,e.scheduleRetry=YC,e.setErrorHandler=XC,e.setSuspenseHandler=ZC,e.scheduleRefresh=v,e.scheduleRoot=_,e.setRefreshHandler=y,e.getCurrentFiber=lf,Ne(e)})()&&ih&&window.top===window.self&&(-1<navigator.userAgent.indexOf(`Chrome`)&&navigator.userAgent.indexOf(`Edge`)===-1||-1<navigator.userAgent.indexOf(`Firefox`))){var lw=window.location.protocol;/^(https?|file):$/.test(lw)&&console.info(`%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools`+(lw===`file:`?` 231You might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq`:``),`font-weight:bold`)}e.createRoot=function(e,t){if(!b(e))throw Error(`Target container is not a DOM element.`);kf(e);var n=!1,r=``,i=is,a=as,o=os;return t!=null&&(t.hydrate?console.warn(`hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />
231) instead.`):typeof t==`object`&&t&&t.$$typeof===Ff&&console.error(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage: 232 233 let root = createRoot(domContainer); 234 root.render(<App />);`),!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(a=t.onCaughtError),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=tf(e,1,!1,null,null,n,r,null,i,a,o,Ef),e[Qp]=t.current,fu(e),new Df(t)},e.hydrateRoot=function(e,t,n){if(!b(e))throw Error(`Target container is not a DOM element.`);kf(e),t===void 0&&console.error(`Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)`);var r=!1,i=``,a=is,o=as,s=os,c=null;return n!=null&&(!0===n.unstable_strictMode&&(r=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onUncaughtError!==void 0&&(a=n.onUncaughtError),n.onCaughtError!==void 0&&(o=n.onCaughtError),n.onRecoverableError!==void 0&&(s=n.onRecoverableError),n.formState!==void 0&&(c=n.formState)),t=tf(e,1,!0,t,n??null,r,i,c,a,o,s,Ef),t.context=nf(null),n=t.current,r=tl(n),r=qe(r),i=aa(r),i.callback=null,oa(n,i,r),pi(r,`hydrateRoot()`,null),n=r,t.current.lanes=n,He(t,n),Xl(t),e[Qp]=t.current,fu(e),new Of(t)},e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),_=o(((e,t)=>{t.exports=g()})),v=`modulepreload`,y=function(e){return`/`+e},b={},x=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=y(t,n),t=s(t),t in b)return;b[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:v,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},S=l(d(),1),ee=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,te=/^[\\/]{2}/;function ne(e,t){return t+e.replace(/\\/g,`/`)}var re=`popstate`;function ie(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function C(e={}){function t(e,t){let n=t.state?.masked,{pathname:r,search:i,hash:a}=n||e.location;return se(``,{pathname:r,search:i,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||`default`,n?{pathname:e.location.pathname,search:e.location.search,hash:e.location.hash}:void 0)}function n(e,t){return typeof t==`string`?t:ce(t)}return ue(t,n,null,e)}function ae(e,t){if(e===!1||e==null)throw Error(t)}function w(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function oe(){return Math.random().toString(36).substring(2,10)}function T(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function se(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?le(t):t,state:n,key:t&&t.key||r||oe(),mask:i}}function ce({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function le(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function ue(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=ie(e)?e:se(h.location,e,t);n&&n(r,e),l=u()+1;let d=T(r,l),f=h.createHref(r.mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=ie(e)?e:se(h.location,e,t);n&&n(r,e),l=u();let i=T(r,l),d=h.createHref(r.mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return de(i,e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(re,d),c=e,()=>{i.removeEventListener(re,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function de(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),ae(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:ce(t);return i=i.replace(/ $/,`%20`),!n&&te.test(i)&&(i=r+i),new URL(i,r)}function fe(e,t,n=`/`){return pe(e,t,n,!1)}function pe(e,t,n,r,i){let a=Me((typeof t==`string`?le(t):t).pathname||`/`,n);if(a==null)return null;let o=i??me(e),s=null,c=je(a);for(let e=0;s==null&&e<o.length;++e)s=De(o[e],c,r);return s}function me(e){let t=he(e);return _e(t),t}function he(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;ae(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}
234" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=Be([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(ae(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),he(e.children,t,u,l,o)),!(e.path==null&&!e.index)&&t.push({path:l,score:Te(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=Ae(e.relativePath,e.caseSensitive,t===u.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of ge(e.path))a(e,t,!0,n)}),t}function ge(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=ge(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function _e(e){e.sort((e,t)=>e.score===t.score?Ee(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var ve=/^:[\w-]+$/,ye=3,be=2,xe=1,Se=10,Ce=-2,we=e=>e===`*`;function Te(e,t){let n=e.split(`/`),r=n.length;return n.some(we)&&(r+=Ce),t&&(r+=be),n.filter(e=>!we(e)).reduce((e,t)=>e+(ve.test(t)?ye:t===``?xe:Se),r)}function Ee(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function De(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u={path:s.relativePath,caseSensitive:s.caseSensitive,end:c},d=s.matcher&&s.compiledParams?ke(u,l,s.matcher,s.compiledParams):Oe(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=Oe({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;
234Object.assign(i,d.params),o.push({params:i,pathname:Be([a,d.pathname]),pathnameBase:He(Be([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=Be([a,d.pathnameBase]))}return o}function Oe(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=Ae(e.path,e.caseSensitive,e.end);return ke(e,t,n,r)}function ke(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=a.replace(/(.)\/+$/,`$1`),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=a.slice(0,a.length-e.length).replace(/(.)\/+$/,`$1`)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function Ae(e,t=!1,n=!0){w(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function je(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return w(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function Me(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function Ne(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?le(e):e,a;return n?(n=ze(n),a=n.startsWith(`/`)?Pe(n.substring(1),`/`):Pe(n,t)):a=t,{pathname:a,search:Ue(r),hash:We(i)}}function Pe(e,t){let n=Ve(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function Fe(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Ie(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function Le(e){let t=Ie(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function Re(e,t,n,r=!1){let i;typeof e==`string`?i=le(e):(i={...e},ae(!i.pathname||!i.pathname.includes(`?`),Fe(`?`,`pathname`,`search`,i)),ae(!i.pathname||!i.pathname.includes(`#`),Fe(`#`,`pathname`,`hash`,i)),ae(!i.search||!i.search.includes(`#`),Fe(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=Ne(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var ze=e=>e.replace(/[\\/]{2,}/g,`/`),Be=e=>ze(e.join(`/`)),Ve=e=>e.replace(/\/+$/,``),He=e=>Ve(e).replace(/^\/*/,`/`),Ue=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,We=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,Ge=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function Ke(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function qe(e){return Be(e.map(e=>e.route.path).filter(Boolean))||`/`}var Je=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function Ye(e,t){let n=e;if(typeof n!=`string`||!ee.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(Je)try{let e=new URL(window.location.href),r=te.test(n)?new URL(ne(n,e.protocol)):new URL(n),a=Me(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{w(!1,`<Link to="${n}">
234 contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var Xe=[`POST`,`PUT`,`PATCH`,`DELETE`];new Set(Xe);var Ze=[`GET`,...Xe];new Set(Ze);var Qe=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function $e(e){try{return Qe.includes(new URL(e).protocol)}catch{return!1}}var et=S.createContext(null);et.displayName=`DataRouter`;var tt=S.createContext(null);tt.displayName=`DataRouterState`;var nt=S.createContext(!1);function rt(){return S.useContext(nt)}var it=S.createContext({isTransitioning:!1});it.displayName=`ViewTransition`;var at=S.createContext(new Map);at.displayName=`Fetchers`;var ot=S.createContext(null);ot.displayName=`Await`;var st=S.createContext(null);st.displayName=`Navigation`;var ct=S.createContext(null);ct.displayName=`Location`;var lt=S.createContext({outlet:null,matches:[],isDataRoute:!1});lt.displayName=`Route`;var ut=S.createContext(null);ut.displayName=`RouteError`;var dt=`REACT_ROUTER_ERROR`,ft=`REDIRECT`,pt=`ROUTE_ERROR_RESPONSE`;function mt(e){if(e.startsWith(`${dt}:${ft}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function ht(e){if(e.startsWith(`${dt}:${pt}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new Ge(t.status,t.statusText,t.data)}catch{}}function gt(e,{relative:t}={}){ae(_t(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=S.useContext(st),{hash:i,pathname:a,search:o}=wt(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:Be([n,a])),r.createHref({pathname:s,search:o,hash:i})}function _t(){return S.useContext(ct)!=null}function vt(){return ae(_t(),`useLocation() may be used only in the context of a <Router> component.`),S.useContext(ct).location}var yt=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function bt(e){S.useContext(st).static||S.useLayoutEffect(e)}function xt(){let{isDataRoute:e}=S.useContext(lt);return e?Vt():St()}function St(){ae(_t(),`useNavigate() may be used only in the context of a <Router> component.`);let e=S.useContext(et),{basename:t,navigator:n}=S.useContext(st),{matches:r}=S.useContext(lt),{pathname:i}=vt(),a=JSON.stringify(Le(r)),o=S.useRef(!1);return bt(()=>{o.current=!0}),S.useCallback((r,s={})=>{if(w(o.current,yt),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=Re(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:Be([t,c.pathname])),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}S.createContext(null);function Ct(){let{matches:e}=S.useContext(lt);return e[e.length-1]?.params??{}}function wt(e,{relative:t}={}){let{matches:n}=S.useContext(lt),{pathname:r}=vt(),i=JSON.stringify(Le(n));return S.useMemo(()=>Re(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function Tt(e,t){return Et(e,t)}function Et(e,t,n){ae(_t(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=S.useContext(st),{matches:i}=S.useContext(lt),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;Ut(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. 235 236Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let u=vt(),d;if(t){let e=typeof t==`string`?le(t):t;ae(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):fe(e,{pathname:p});w(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),w(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let h=Nt(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:Be([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:Be([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?S.createElement(ct.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...d},navigationType:`POP`}},h):h}function Dt(){let e=Bt(),t=Ke(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=S.createElement(S.Fragment,null,S.createElement(`p`,null,`ð¿ Hey developer ð`),S.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,S.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,S.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),S.createElement(S.Fragment,null,S.createElement(`h2`,null,`Unexpected Application
236Error!`),S.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?S.createElement(`pre`,{style:i},n):null,o)}var Ot=S.createElement(Dt,null),kt=class extends S.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=ht(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:S.createElement(lt.Provider,{value:this.props.routeContext},S.createElement(ut.Provider,{value:e,children:this.props.component}));return this.context?S.createElement(jt,{error:e},t):t}};kt.contextType=nt;var At=new WeakMap;function jt({children:e,error:t}){let{basename:n}=S.useContext(st);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=mt(t.digest);if(e){let r=At.get(t);if(r)throw r;let i=Ye(e.location,n),a=i.absoluteURL||i.to;if($e(a))throw Error(`Invalid redirect location`);if(Je&&!At.get(t))if(i.isExternal||e.reloadDocument)window.location.href=a;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(i.to,{replace:e.replace}));throw At.set(t,n),n}return S.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${a}`})}}return e}function Mt({routeContext:e,match:t,children:n}){let r=S.useContext(et);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),S.createElement(lt.Provider,{value:e},n)}function Nt(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);ae(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:qe(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||Ot,o&&(s<0&&c===0?(Ut(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?S.createElement(n.route.Component,null):n.route.element?n.route.element:e,S.createElement(Mt,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?S.createElement(kt,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function Pt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ft(e){let t=S.useContext(et);return ae(t,Pt(e)),t}function It(e){let t=S.useContext(tt);return ae(t,Pt(e)),t}function Lt(e){let t=S.useContext(lt);return ae(t,Pt(e)),t}function Rt(e){let t=Lt(e),n=t.matches[t.matches.length-1];return ae(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function zt(){return Rt(`useRouteId`)}function Bt(){let e=S.useContext(ut),t=It(`useRouteError`),n=Rt(`useRouteError`);return e===void 0?t.errors?.[n]:e}function Vt(){let{router:e}=Ft(`useNavigate`),t=Rt(`useNavigate`),n=S.useRef(!1);return bt(()=>{n.current=!0}),S.useCallback(async(r,i={})=>{w(n.current,yt),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var Ht={};function Ut(e,t,n){!t&&!Ht[e]&&(Ht[e]=!0,w(!1,n))}S.memo(Wt);function Wt({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return Et(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Gt({to:e,replace:t,state:n,relative:r}){ae(_t(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i}=S.useContext(st);w(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:a}=S.useContext(lt),{pathname:o}=vt(),s=xt(),c=Re(e,Le(a),o,r===`path`),l=JSON.stringify(c);return S.useEffect(()=>{s(JSON.parse(l),{replace:t,state:n,relative:r})},[s,l,r,t,n]),null}function Kt(e){ae(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function qt({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){ae(!_t(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=S.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=le(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,mask:m}=n,h=S.useMemo(()=>{let e=Me(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);
236return w(h!=null,`<Router basename="${s}"> is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the <Router> won't render anything.`),h==null?null:S.createElement(st.Provider,{value:c},S.createElement(ct.Provider,{children:t,value:h}))}function Jt({children:e,location:t}){return Tt(Yt(e),t)}S.Component;function Yt(e,t=[]){let n=[];return S.Children.forEach(e,(e,r)=>{if(!S.isValidElement(e))return;let i=[...t,r];if(e.type===S.Fragment){n.push.apply(n,Yt(e.props.children,i));return}ae(e.type===Kt,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),ae(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=Yt(e.props.children,i)),n.push(a)}),n}var Xt=`get`,Zt=`application/x-www-form-urlencoded`;function Qt(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function $t(e){return Qt(e)&&e.tagName.toLowerCase()===`button`}function en(e){return Qt(e)&&e.tagName.toLowerCase()===`form`}function tn(e){return Qt(e)&&e.tagName.toLowerCase()===`input`}function nn(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function rn(e,t){return e.button===0&&(!t||t===`_self`)&&!nn(e)}var an=null;function on(){if(an===null)try{new FormData(document.createElement(`form`),0),an=!1}catch{an=!0}return an}var sn=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function cn(e){return e!=null&&!sn.has(e)?(w(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Zt}"`),null):e}function ln(e,t){let n,r,i,a,o;if(en(e)){let o=e.getAttribute(`action`);r=o?Me(o,t):null,n=e.getAttribute(`method`)||Xt,i=cn(e.getAttribute(`enctype`))||Zt,a=new FormData(e)}else if($t(e)||tn(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?Me(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||Xt,i=cn(e.getAttribute(`formenctype`))||cn(o.getAttribute(`enctype`))||Zt,a=new FormData(o,e),!on()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(Qt(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=Xt,r=null,i=Zt,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function un(e,t){if(e===!1||e==null)throw Error(t)}function dn(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return i.pathname=n?i.pathname.endsWith(`/`)?`${i.pathname}_.${r}`:`${i.pathname}.${r}`:i.pathname===`/`?`_root.${r}`:t&&Me(i.pathname,t)===`/`?`${Ve(t)}/_root.${r}`:`${Ve(i.pathname)}.${r}`,i}async function fn(e,t){if(e.id in t)return t[e.id];try{let n=await x(()=>import(e.module),[]);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function pn(e){return e!=null&&typeof e.page==`string`}function mn(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function hn(e,t,n){return bn((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await fn(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(mn).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function gn(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>
236o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function _n(e,t,{includeHydrateFallback:n}={}){return vn(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function vn(e){return[...new Set(e)]}function yn(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function bn(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!pn(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(yn(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function xn(){let e=S.useContext(et);return un(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function Sn(){let e=S.useContext(tt);return un(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var Cn=S.createContext(void 0);Cn.displayName=`FrameworkContext`;function wn(){let e=S.useContext(Cn);return un(e,`You must render this element inside a <HydratedRouter> element`),e}function Tn(e,t){let n=S.useContext(Cn),[r,i]=S.useState(!1),[a,o]=S.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=S.useRef(null);S.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),S.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:En(s,p),onBlur:En(c,m),onMouseEnter:En(l,p),onMouseLeave:En(u,m),onTouchStart:En(d,p)}]:[a,f,{}]:[!1,f,{}]}function En(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function Dn({page:e,...t}){let n=rt(),{nonce:r}=wn(),{router:i}=xn(),a=S.useMemo(()=>fe(i.routes,e,i.basename),[i.routes,e,i.basename]);return a?(t.nonce==null&&r&&(t={...t,nonce:r}),n?S.createElement(kn,{page:e,matches:a,...t}):S.createElement(An,{page:e,matches:a,...t})):null}function On(e){let{manifest:t,routeModules:n}=wn(),[r,i]=S.useState([]);return S.useEffect(()=>{let r=!1;return hn(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function kn({page:e,matches:t,...n}){let r=vt(),{future:i}=wn(),{basename:a}=xn(),o=S.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=dn(e,a,i.v8_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.v8_trailingSlashAwareDataRequests,e,r,t]);return S.createElement(S.Fragment,null,o.map(e=>S.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function An({page:e,matches:t,...n}){let r=vt(),{future:i,manifest:a,routeModules:o}=wn(),{basename:s}=xn(),{loaderData:c,matches:l}=Sn(),u=S.useMemo(()=>gn(e,t,l,a,r,`data`),[e,t,l,a,r]),d=S.useMemo(()=>gn(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=S.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];!t||!t.hasLoader||(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=dn(e,s,i.v8_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.v8_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=S.useMemo(()=>_n(d,a),[d,a]),m=On(d);return S.createElement(S.Fragment,null,f.map(e=>S.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>S.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>S.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function jn(...e){return t=>
236{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}S.Component;var Mn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{Mn&&(window.__reactRouterVersion=`7.18.2`)}catch{}function Nn({basename:e,children:t,useTransitions:n,window:r}){let i=S.useRef();i.current??=C({window:r,v5Compat:!0});let a=i.current,[o,s]=S.useState({action:a.action,location:a.location}),c=S.useCallback(e=>{n===!1?s(e):S.startTransition(()=>s(e))},[n]);return S.useLayoutEffect(()=>a.listen(c),[a,c]),S.createElement(qt,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:a,useTransitions:n})}var Pn=S.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,useTransitions:_}=S.useContext(st),v=typeof l==`string`&&ee.test(l),y=Ye(l,h);l=y.to;let b=gt(l,{relative:r}),x=vt(),te=null;if(o){let e=Re(o,[],x.mask?x.mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:Be([h,e.pathname])),te=g.createHref(e)}let[ne,re,ie]=Tn(n,p),C=zn(l,{replace:a,mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,defaultShouldRevalidate:f,useTransitions:_});function ae(t){e&&e(t),t.defaultPrevented||C(t)}let w=!(y.isExternal||i),oe=S.createElement(`a`,{...p,...ie,href:(w?te:void 0)||y.absoluteURL||b,onClick:w?ae:e,ref:jn(m,re),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return ne&&!v?S.createElement(S.Fragment,null,oe,S.createElement(Dn,{page:b})):oe});Pn.displayName=`Link`;var Fn=S.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=wt(a,{relative:c.relative}),d=vt(),f=S.useContext(tt),{navigator:p,basename:m}=S.useContext(st),h=f!=null&&Wn(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=Me(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,b=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,x=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),ee={isActive:b,isPending:x,isTransitioning:h},te=b?e:void 0,ne;ne=typeof n==`function`?n(ee):[n,b?`active`:null,x?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let re=typeof i==`function`?i(ee):i;return S.createElement(Pn,{...c,"aria-current":te,className:ne,ref:l,style:re,to:a,viewTransition:o},typeof s==`function`?s(ee):s)});Fn.displayName=`NavLink`;var In=S.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=Xt,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=S.useContext(st),g=Hn(),_=Un(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&ee.test(s);return S.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?S.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})});In.displayName=`Form`;function Ln(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Rn(e){let t=S.useContext(et);return ae(t,Ln(e)),t}function zn(e,{target:t,replace:n,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c,useTransitions:l}={}){let u=xt(),d=vt(),f=wt(e,{relative:o});return S.useCallback(p=>{if(rn(p,t)){p.preventDefault();let t=n===void 0?ce(d)===ce(f):n,m=()=>u(e,{replace:t,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c});l?S.startTransition(()=>m()):m()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}var Bn=0,Vn=()=>`__${String(++Bn)}__`;function Hn(){let{router:e}
236=Rn(`useSubmit`),{basename:t}=S.useContext(st),n=zt(),r=e.fetch,i=e.navigate;return S.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=ln(e,t);if(a.navigate===!1){let e=a.fetcherKey||Vn();await r(e,n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync})}else await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function Un(e,{relative:t}={}){let{basename:n}=S.useContext(st),r=S.useContext(lt);ae(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...wt(e||`.`,{relative:t})},o=vt();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:Be([n,a.pathname])),ce(a)}function Wn(e,{relative:t}={}){let n=S.useContext(it);ae(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Rn(`useViewTransitionState`),i=wt(e,{relative:t});if(!n.isTransitioning)return!1;let a=Me(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=Me(n.nextLocation.pathname,r)||n.nextLocation.pathname;return Oe(i.pathname,o)!=null||Oe(i.pathname,a)!=null}var Gn=_(),Kn={info:(...e)=>{console.info(`[INFO]`,...e)},warn:(...e)=>{console.warn(`[WARN]`,...e)},error:(...e)=>{console.error(`[ERROR]`,...e)}},qn=o((e=>{(function(){function t(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ae?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case te:return`Suspense`;case ne:return`SuspenseList`;case C:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case ee:var n=e.render;return e=e.displayName,e||=(e=n.displayName||n.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return n=e.displayName||null,n===null?t(e.type)||`Memo`:n;case ie:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function n(e){return``+e}function r(e){try{n(e);var t=!1}catch{t=!0}if(t){t=console;var r=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return r.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),n(e)}}function i(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===ie)return`<...>`;try{var n=t(e);return n?`<`+n+`>`:`<...>`}catch{return`<...>`}}function a(){var e=w.A;return e===null?null:e.getOwner()}function o(){return Error(`react-stack-top-frame`)}function s(e){if(oe.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function c(e,t){function n(){ce||(ce=!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)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function l(){var e=t(this.type);return le[e]||(le[e]=!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.`)),e=this.props.ref,e===void 0?null:e}function u(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r}
236,(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:l}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,n,i,o,l,d){var f=n.children;if(f!==void 0)if(o)if(T(f)){for(o=0;o<f.length;o++)p(f[o]);Object.freeze&&Object.freeze(f)}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 p(f);if(oe.call(n,`key`)){f=t(e);var m=Object.keys(n).filter(function(e){return e!==`key`});o=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,fe[f+o]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}`,console.error(`A props object containing a "key" prop is being spread into JSX: 237 let props = %s; 238 <%s {...props} /> 239React keys must be passed directly to JSX without using spread: 240 let props = %s; 241 <%s key={someKey} {...props} />`,o,f,m,f),fe[f+o]=!0)}if(f=null,i!==void 0&&(r(i),f=``+i),s(n)&&(r(n.key),f=``+n.key),`key`in n)for(var h in i={},n)h!==`key`&&(i[h]=n[h]);else i=n;return f&&c(i,typeof e==`function`?e.displayName||e.name||`Unknown`:e),u(e,f,i,a(),l,d)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===ie&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=d(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),ee=Symbol.for(`react.forward_ref`),te=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),C=Symbol.for(`react.activity`),ae=Symbol.for(`react.client.reference`),w=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,oe=Object.prototype.hasOwnProperty,T=Array.isArray,se=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var ce,le={},ue=h.react_stack_bottom_frame.bind(h,o)(),de=se(i(o)),fe={};e.Fragment=v,e.jsxDEV=function(e,t,n,r){var a=1e4>w.recentlyCreatedOwnerStacks++;return f(e,t,n,r,a?Error(`react-stack-top-frame`):ue,a?se(i(e)):de)}})()})),E=o(((e,t)=>{t.exports=qn()}))(),Jn=`/opt/src/frontend/src/contexts/AuthContext.tsx`,Yn=(0,S.createContext)(void 0),Xn=({children:e})=>{let[t,n]=(0,S.useState)(!1),[r,i]=(0,S.useState)(null);(0,S.useEffect)(()=>{let e=localStorage.getItem(`token`);e&&o(e)},[]);let a=async(e,t={})=>{let n=localStorage.getItem(`token`),r=new Headers(t.headers);r.set(`Authorization`,`Bearer ${n}`);let i={...t,headers:r,credentials:`include`};return fetch(e,i)},o=async e=>{try{let e=await a(`/api/auth/validate`,{method:`GET`});if(e.ok){let t=await e.json();n(!0),i(t.user)}else if(e.status===401||e.status===403)c();else{let t=await e.json().catch(()=>({}));Kn.error(`Token validation failed with server error:`,t)}}catch(e){Kn.error(`Network error during token validation:`,e)}},s=async e=>{localStorage.setItem(`token`,e),await o(e)},c=async()=>{try{await a(`/api/auth/logout`,{method:`POST`})}catch(e){Kn.error(`Error logging out:`,e)}finally{localStorage.removeItem(`token`),n(!1),i(null)}};return(0,E.jsxDEV)(Yn.Provider,{value:{isAuthenticated:t,user:r,login:s,logout:c,updateUserPreferences:async e=>{if(!r)throw Error(`User not authenticated`);try{let t=await a(`/api/user/preferences`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});if(t.ok){let{user:e}=await t.json();i(e)}else throw Error(`Failed to update user preferences`)}catch(e){throw Kn.error(`Error updating user preferences:`,e),e}},authenticatedRequest:a},children:e},void 0,!1,{fileName:Jn,lineNumber:142,columnNumber:5},void 0)},Zn=()=>{let e=(0,S.useContext)(Yn);if(e===void 0)throw Error(`useAuth must be used within an AuthProvider`);return e},Qn={common:{backToMenu:`Back to Overview`},header:{about:`About`,blog:`Blog`,games:`Games`,divers:{main:`Interests`,webcams:`Airport Webcams`,drones:`Drones`,testing:`Testing`,"3dPrinters":`3D Printers`,machineLearning:`Machine Learning`,unterwasserrugby:`Underwater Rugby`},services:`Services`,login:`Login`,logout:`Logout`,profile:`Profile`,projects:`Projects`},divers:{webcamDescription:`Live webcams from airports worldwide`,dronesDescription:`Information and technologies about drones`,testingDescription:`Various test pages and experiments`,"3dPrintersDescription":`Insights into 3D printing technology`,machineLearningDescription:`Current AI technologies and applications`,unterwasserrugbyDescription:`Unique team sport underwater`},threeDPrinters:{title:`3D Printers`,sidewinderX1:{overview:`The Artillery Sidewinder X1 is an advanced 3D printer known for precision and reliability. It is excellent for hobbyists and advanced users.`,specifications:{title:`Technical Specifications`,printVolume:`Print Volume: 300 x 300 x 400 mm`,printSpeed:`Print Speed: Up to 150 mm/s`,nozzleDiameter:`Nozzle Diameter: 0.4 mm`,supp
241ortedMaterials:`Supported Materials: PLA, PETG, ABS`,extruder:`Direct Drive Extruder`,mainboard:`Silent Mainboard`},features:{title:`Special Features`,metalFrame:`Robust Metal Frame for Stability`,autoLeveling:`Automatic Bed Leveling`,precision:`High-Precision Print Results`}},bambuLabP1S:{overview:`The BambuLab P1S is a modern 3D printer with advanced features. Generally very satisfying, but has some disadvantages for professionals, especially regarding network configuration.`,specifications:{title:`Technical Specifications`,printVolume:`Print Volume: 256 x 256 x 256 mm`,printSpeed:`Print Speed: Up to 500 mm/s`,nozzleDiameter:`Nozzle Diameter: 0.4 mm (replaceable)`,supportedMaterials:`Supported Materials: PLA, PETG, ABS, ASA, PC, PA, PVA, HIPS`,extruder:`Automatic Material System (AMS)`,connectivity:`WiFi, Ethernet, USB`},features:{title:`Special Features`,autoCalibration:`Fully Automatic Calibration`,aiDetection:`AI-based Error Detection`,multiColor:`Multi-Material/Multi-Color Printing`,cloudIntegration:`Cloud Integration and Remote Monitoring`},professionalLimitations:{title:`Professional Limitations`,lanOnlyLimitation:`No SD card view in LAN-Only mode`,udpDiscovery:`UDP Discovery doesn't work across VLANs`,vlanSolution:`Solution: udpbroadcastrelay for cross-VLAN communication`,wikiReference:`Detailed guide available at:`}}},drones:{title:`Drone Technology and Applications`,overview:`Drones have evolved from military devices to versatile technologies applied in various fields.`,categories:{consumer:{title:`Consumer Drones`,description:`Drones for photography, videography, and recreational activities`,examples:[{name:`DJI FPV`,description:`Immersive First-Person-View drone with impressive speed`,features:[`4K/60fps Super Wide-Angle Camera`,`Maximum speed of 140 km/h`,`Up to 20 minutes flight time`,`Emergency Brake and Hover`]},{name:`Yuneec Typhoon H`,description:`Professional hexacopter drone for demanding aerial shots`,features:[`360-degree Camera Rotation`,`Six Rotors for Increased Stability`,`Intelligent Flight Modes`,`Integrated Thermal Camera`]}]},professional:{title:`Professional Drones`,description:`Drones for industry, agriculture, surveying, and emergency services`,applications:[{sector:`Agriculture`,uses:[`Crop Mapping`,`Precise Irrigation Planning`,`Pest Monitoring`,`Soil Condition Analysis`]},{sector:`Emergency Services`,uses:[`Search and Rescue`,`Disaster Monitoring`,`Aerial Emergency Assessment`,`Temperature Measurement`]}]},military:{title:`Military Drones`,description:`Advanced unmanned aerial vehicles for reconnaissance and operations`,types:[{name:`Reconnaissance Drones`,capabilities:[`High-Resolution Image Capture`,`Real-Time Transmission`,`Night Vision Capabilities`,`Extended Flight Duration`]},{name:`Combat Drones`,capabilities:[`Precision Strikes`,`Remote-Controlled Missions`,`Minimal Risk to Human Crews`]}]}},ethicalConsiderations:{title:`Ethical Considerations`,privacyTitle:`Privacy`,privacyDescription:`Drones raise important questions about privacy protection, especially regarding unintended surveillance and image capture.`,regulationTitle:`Legal Regulations`,regulationDescription:`Many countries have specific laws governing drone usage, including flight altitude, flight zones, and registration requirements.`},futureTrends:{title:`Future Trends`,developments:[`Autonomous Navigation Systems`,`Enhanced Battery Technology`,`AI-Driven Decision Making`,`Miniaturization`,`Swarm Technology`]}},unterwasserrugby:{generalInfoTitle:`Underwater Rugby: A Dynamic Water Sport`,description1:`Underwater Rugby is a fascinating contact sport played in a swimming pool. Two six-player teams compete to place a salt water-filled ball into the opponent's goal at the bottom of the pool.`,description2:`The sport demands exceptional physical fitness, endurance, strength, and tactical skill. Players must be able to dive underwater, control the ball, and simultaneously defend against opposing players.`,keyFact:`A unique team sport combining elements of rugby, swimming, and diving.`,videos:`Videos`,video1Title:`Introduction into Underwater Rugby`,video2Title:`Underwater Rugby in Bonn`,gameplayTitle:`Gameplay and Rules`,gameplayDescription:`The game is played in two 15-minute halves. Each team consists of up to 15 players, with six playing simultaneously in the water. Players alternate in short intervals, typically after 1-3 minutes. The playing field is a swimming pool with at least 3.5m depth and 12-18m length as well as 8-12m width.`,rulesTitle:`Detailed Game Rules`,rulesDescription:`The game follows official VDST rules. The ball may only be held with one hand, passes are allowed in all directions. Body contact is permitted, but hitting, kicking or dangerous actions are prohibited. Rule violations result in free throws or penalty throws. The game is officiated by two referees - one in the water and one at the poolside.`,equipmentTitle:`Equipment`,equipmentDescription:`Players wear specialized gear: swim fins, diving masks, snorkels, and caps with ear protectors in team colors. The ball is handball-sized and filled with saturated salt solution, causing it to sink slowly. The goals consist of heavy metal baskets at the pool bottom.`,positionsTitle:`The Three Player Positions`,positionsDescription:`In Underwater Rugby there are three specialized positions, each requiring different tasks and skills:`,positionDeckel:`Deckel (Goalkeeper): Defends the own goal at the pool bottom. Must have excellent apnea skills and be able to quickly switch between surface and depth.`,positionDackel:`Dackel (Defender): Plays mainly in the depths and disrupts opposing attacks. Requires excellent underwater navigation and physical strength for duels at the pool bottom.`,positionStrum:`Strum (Attacker): Leads attacks and attempts to score goals. Must be able to swim fast and master precise passes as well as goal shots. Often the most agile player on the team.`,tacticsTitle:`Tactics and Strategy`,tacticsDescription:`Successful teams use coordinated attack and defense strategies. Quick position changes, precise passes and teamwork are crucial. Limited breath makes timing and efficie
241ncy critical factors.`,techniquesTitle:`Techniques and Skills`,techniquesDescription:`Players move exclusively using fin strokes underwater. The ball is held with one hand to allow swimming and defensive movements. Passes are made through short, powerful movements. Important techniques include 'diving down', 'ball handling' and 'positional play'.`,challengesTitle:`Challenges of the Sport`,challengesDescription:`Underwater Rugby is an extremely demanding sport requiring excellent apnea skills, spatial orientation, and teamwork. Games are often very defensive and end with narrow results. The three-dimensional gameplay and oxygen deprivation make every play a challenge.`,originTitle:`Origin and Development`,originDescription:`The sport originated in Sweden in the 1960s as a training method for divers and has since spread worldwide. Germany is one of the leading nations in Underwater Rugby. The VDST (German Diving Sports Association) organizes national competitions and provides the official rulebook.`,safetyTitle:`Safety and Fair Play`,safetyDescription:`Despite its physical nature, Underwater Rugby places great emphasis on fairness and safety. Unsportsmanlike behavior such as hitting or dangerous attacks are strictly penalized. All players must be able to swim and have basic diving knowledge.`,competitionTitle:`Competitions and Organization`,competitionDescription:`The VDST organizes state and national championships as well as international tournaments. The competition regulations govern all aspects from team lineup to referee training. Official referees undergo special training according to the VDST referee regulations.`,linupPlannerTitle:`Lineup Planner`,linupPlannerDescription:`A special lineup planner is available for tactical preparation and game planning. This tool helps coaches and teams with optimal positioning and strategy development.`,linupPlannerLink:`To Lineup Planner`,officialResourcesTitle:`Official Resources`,vdstMainPage:`VDST Underwater Rugby Main Page`,officialRules:`Official Rulebook (VDST)`,competitionRules:`Competition Regulations (VDST)`,refereeRules:`Referee Regulations (VDST)`},machineLearning:{title:`Machine Learning & AI`,description:`A comprehensive collection of AI technologies and services revolutionizing modern creativity and productivity. Discover innovative tools transforming communication, image generation, presentation creation, and more.`,categories:{chatBots:{title:`Chat Bots`,description:`Interactive AI assistants capable of complex conversations, answering questions, and helping with various tasks. From scientific research to creative projects.`,items:{chatGPT:{name:`OpenAI ChatGPT`,description:`The most famous AI chatbot that generates texts, answers questions, and supports various tasks.`,extendedInfo:`ChatGPT is an advanced AI language model developed by OpenAI. It can generate texts, answer questions, perform translations, write code, and handle complex tasks in areas like programming, creativity, analysis, and problem-solving. The technology is based on a neural network trained on an extensive text database.`,url:`https://chat.openai.com/`},claude:{name:`Claude`,description:`An advanced AI assistant with a particularly ethical and precise approach to information processing.`,extendedInfo:`Claude is an AI assistant from Anthropic, characterized by particularly ethical and precise information processing. It was developed with a strong focus on safety and responsible AI use. Claude can solve complex tasks, analyze scientific texts, and provides detailed and nuanced answers.`,url:`https://www.anthropic.com/index/introducing-claude`},agentGPT:{name:`AgentGPT`,description:`A goal-oriented AI agent capable of independently planning and executing complex tasks.`,extendedInfo:`AgentGPT is an innovative AI system that enables autonomous task planning and execution. It can independently define goals, develop strategies, and plan steps to achieve them. Particularly useful for complex project management and research tasks.`,url:`https://agentgpt.reworkd.ai/`},forefrontAI:{name:`Forefront AI`,description:`Flexible AI platform with access to various advanced language models.`,extendedInfo:`Forefront AI is a versatile platform offering access to various advanced language models like GPT-3.5, GPT-4, and Claude. It allows users to compare different AI models and use them for various use cases.`,url:`https://www.forefront.ai/`},perplexityAI:{name:`Perplexity AI`,description:`AI research tool focusing on scie
241ntific accuracy and source citations.`,extendedInfo:`Perplexity AI is an AI-powered research tool specializing in scientific accuracy and source citations. It searches extensive databases, generates precise answers, and provides direct references to original sources.`,url:`https://www.perplexity.ai`},poe:{name:`Poe`,description:`Versatile AI platform with multiple chatbots and image generation functions.`,extendedInfo:`Poe is a comprehensive AI platform offering access to various chatbots and image generation functions. Users can switch between different AI models, generate images, and conduct complex conversations.`,url:`https://poe.com`}}},imageGenerator:{title:`Image Generators`,description:`AI-powered tools generating high-quality, creative, and realistic images from text descriptions. Perfect for design, art, and visual communication.`,items:{midjourney:{name:`Midjourney`,description:`Highly advanced image generator with exceptional detail and artistic quality.`,extendedInfo:`Midjourney is an AI image generator known for its exceptional artistic quality and detail precision. It can generate high-quality, often surreal and stylized images from text descriptions. Particularly popular in art and design circles.`,url:`https://www.midjourney.com/home`},stableDiffusion:{name:`Stable Diffusion`,description:`Open-source image generator with high adaptability and self-hosting option.`,extendedInfo:`Stable Diffusion is an open-source image generator that offers users maximum flexibility and control. It can be hosted locally, allows fine-tuning, and is particularly interesting for developers and tinkerers.`,url:`https://stability.ai/`},dallE:{name:`DALL-E`,description:`OpenAI's image generation tool with solid results and user-friendly interface.`,extendedInfo:`DALL-E by OpenAI is a user-friendly image generator that creates realistic and creative images from text descriptions. It is distinguished by its accessibility and solid image quality.`,url:`https://labs.openai.com/`}}},powerpointAI:{title:`Presentation AI`,description:`Intelligent tools for automatically creating professional presentations with AI-powered design and content suggestions.`,items:{beautifulAI:{name:`Beautiful AI`,description:`AI presentation tool creating elegant and professional designs with minimal effort.`,extendedInfo:`Beautiful AI is an AI-powered presentation tool that automatically generates elegant and professional designs. It reduces the time spent on presentation creation and offers intelligent layout and design suggestions.`,url:`https://www.beautiful.ai/`},simplified:{name:`Simplified`,description:`Rapid AI presentation creation with multilingual support and intuitive interface.`,extendedInfo:`Simplified is an AI platform for rapid presentation creation with support for multiple languages. It offers an intuitive user interface, automatic content suggestions, and professional design options.`,url:`https://simplified.com/ai-presentations`}}},tools:{title:`AI Tools`,description:`Specialized AI applications for specific tasks like image editing, text transformation, and more.`,items:{watermarkRemover:{name:`Watermark Remover`,description:`AI-powered tool for intelligently removing watermarks from images.`,extendedInfo:`Watermark Remover is an AI tool that can intelligently and seamlessly remove watermarks from images. It uses advanced image recognition and restoration algorithms to clean up images.`,url:`https://www.watermarkremover.io/`}}},music:{title:`Music AI`,description:`Innovative AI systems for music composition capable of generating complex melodies and arrangements.`,items:{suno:{name:`Suno`,description:`Advanced AI for music generation with high creativity and sound quality.`,extendedInfo:`Suno is an AI platform for music generation that has been able to create high-quality and creative music pieces since version 3. It analyzes music styles, generates original compositions, and provides musicians and creatives with new sources of inspiration.`,url:`https://suno.com`}}}}},footer:{impressum:`Legal Notice`,datenschutz:`Privacy Policy`,copyright:`© 2024-2026 PaBr Webpage. All rights reserved.`},impressum:{title:`Legal Notice`,content:`Legal information about the website operator and responsible parties will be displayed here.`,kekseButton:`Learn More About Our Cookies`,kekseBanner:{title:`This site shamelessly offers you cookies for a better user experience.`,description:`By visiting, you agree to this audacious behavior.`,disclaimer:`* Disclaimer: No actual cookies are offered. This website also doesn't use tracking cookies. This is just a joke about cookie banners. Sorry, buddy! ðª`,acceptButton:`Alright, bro, do it!`,rejectButton:`I hate cookies, dude.`}},datenschutz:{title:`Privacy Policy`,content:`Information about data protection and privacy policies will be displayed here.`},login:{title:`Login`,username:`Username`,password:`Password`,submit:`Login`,register:`Register`,loading:`Logging in...`,error:`Authentication failed. Please try again.`,loginWith:`Login with PaBr SSO`},profile:{title:`Profile Information`,welcome:`Welcome`,loading:`Loading...`,personalDetails:`Personal Details`,groupsAndSettings:`Groups & Settings`,name:`Name`,email:`Email`,username:`Username`,lastLogin:`Last Login`,groups:`Groups`,themePreference:`Theme Preference`,switchToDark:`Switch to Dark Mode`,switchToLight:`Switch to Light Mode`,switchToRainbow:`Switch to Rainbow Mode`,rainbowDiscovered:`You've discovered the rainbow theme! ð`,language:`Language`,logout:`Logout`},about:{title:`About`,role:`System Engineer - Network Security & DevSecOps`,description:`Experienced system engineer specializing in network security and DevSecOps practices. Focused on implementing secure infrastru
241cture solutions and automating security processes in the development pipeline.`,skills:`Technical Expertise`,skillCategories:{virtualization:{title:`Virtualization`,items:[`VMware ESX 6-8`,`vSphere 6-8`,`VMWare Server/Workstation`,`Unraid`,`Proxmox`,`XCP-NG`,`Hyper-V`]},os:{title:`Operating Systems`,items:[`RedHat 6-10`,`RockyLinux 8-10`,`CentOS`,`Ubuntu 16-24`,`Debian 8-13`,`Fedora`,`Arch`,`Windows Server 2008-2025, XP-11`,`Cisco IOS`,`Android 4-16`]},databases:{title:`Databases`,items:[`MySQL 5.x`,`MariaDB 5.x/10.x-11.x`,`Oracle 10.x`,`MongoDB`,`PostgreSQL 12.x-17.x`,`Neo4j`]},programming:{title:`Programming & Scripting`,items:[`Bash`,`SQL`,`JSON`,`YAML`,`Python`,`C/C++/C#`,`Java`,`TypeScript`,`HTML/CSS/JavaScript`,`PowerShell`,`PowerCLI`,`Flutter/Dart`]},security:{title:`Security & Networking`,items:[`Linux iptables`,`Cisco Nexus/Catalyst`,`Cisco ASA`,`OPNSense`,`PfSense`,`FortiGate`,`NSX-T`,`NSX-ALB`,`F5 Big-IP LTM`,`LANCOM WLC`,`Extreme Networks`,`Wireguard/OpenVPN/IPSec/SSL-VPN`]},admin:{title:`Infrastructure & Services`,items:[`Docker/Podman`,`Reverse-Proxy`,`Nagios`,`checkmk`,`git/gitlab`,`NFS`,`DNS/DHCP`,`Samba`,`Email Services`,`IPv4/IPv6`,`Ansible`,`Kubernetes`]}}},blog:{title:`Blog`,readMore:`Read More`,createPost:`Create New Post`,postTitle:`Post Title`,titlePlaceholder:`Enter your post title`,content:`Content`,publish:`Publish Post`,publishing:`Publishing...`,by:`by`,loading:`Loading posts...`,edit:`Edit`,delete:`Delete`,update:`Update Post`,updating:`Updating...`,cancel:`Cancel`,confirmDelete:`Are you sure you want to delete this post?`,lastUpdated:`Last updated`,attachments:`Attachments`,error:{fetch:`Failed to load blog posts`,create:`Failed to create blog post`,update:`Failed to update blog post`,delete:`Failed to delete blog post`,imageUpload:`Failed to upload image. Please try again.`},validation:{titleRequired:`Title is required`,contentRequired:`Content is required`},success:{create:`Post created successfully`,update:`Post updated successfully`,delete:`Post deleted successfully`}},games:{title:`Games`,play:`Play`,loading:`Loading...`,error:`Failed to load the game. Please try again later.`,names:{minecraft:`Minecraft`,"space-invaders":`Space Invaders`,rockets:`Rockets`,minesweeper:`Minesweeper`,rubixCube:`Rubix Cube`,connect4:`Connect 4`,flappyBird:`Flappy Bird AI`,chess:`Chess`,music:`Music`,atc:`ATC`,2048:`2048`,connect5:`Connect 5`,towerBlocks:`Tower Blocks`,jumpAndRun:`Jump and Run`,jumpAndRun2:`Jump & Run 2.0`,pong:`Pong`,reactGame:`React Game`,snake:`Snake`,snake2:`Snake 2.0 (Nokia)`,ticTacToe:`Tic Tac Toe`,tetris:`Tetris`,breakout:`Breakout`,stickHero:`Stick Hero`,tiltingMaze:`Tilting Maze`,"ultimate-tic-tac-toe":`Ultimate Tic Tac Toe`,"train-puzzle":`Train Puzzle`,pacman:`Pacman`,hex:`Hex`,gameOfLife:`Game of Life`}},tools:{title:`Development Tools`,description:`A collection of useful development tools and utilities`,comingSoon:`More tools coming soon...`},services:{title:`Our Services`,searchPlaceholder:`Search services...`,statusPage:`Status`,visitService:`Visit Service`,viewGitRepo:`View Git Repository`,showMore:`Show more information`,serviceDisabled:`Service temporarily disabled`,services:{zammad:{title:`Zammad`,description:`Professional Ticket System`,extendedInfo:`Zammad is an open-source helpdesk/customer support system with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and emails. It provides a clean and intuitive interface for managing support requests efficiently.`},gitlab:{title:`GitLab`,description:`Version Control & CI/CD Platform`,extendedInfo:`GitLab is a complete DevOps platform that enables version control, continuous integration, and continuous deployment. It provides source code management, issue tracking, CI/CD pipelines, and much more in a single application.`},harbor:{title:`Harbor`,description:`Container Registry`,extendedInfo:`Harbor is an open source container image registry that secures artifacts with policies and role-based access control. It ensures images are scanned and free from vulnerabilities, and signs images as trusted.`},bookstack:{title:`Bookstack`,description:`Wiki & Knowledge Base`,extendedInfo:`Bookstack is a free and open-source wiki system that provides a simple, self-hosted platform for organizing and storing information. It uses a book-like organizational structure making it intuitive to use and navigate.`},matrix:{title:`Matrix Synapse`,description:`Secure Communication Server`,extendedInfo:`Matrix Synapse is a reference homeserver implementation of the Matrix protocol, providing real-time communication with strong security and privacy. It supports end-to-e
241nd encryption and decentralized communication.`},planka:{title:`Planka`,description:`Kanban Project Management`,extendedInfo:`Planka is a free open-source Kanban board that helps you manage projects and tasks efficiently. It provides features like drag-and-drop cards, labels, due dates, and team collaboration tools.`},media:{title:`Media Page`,description:`Entertainment Hub (VPN Required)`,extendedInfo:`Comprehensive media center including: 242- Jellyfin: Open-source media streaming (Main platform) 243- Grimmory: Digital book and comic reader 244- Audiobookshelf: Audiobook server 245- Request Center: Request new media`},overleaf:{title:`Overleaf`,description:`Collaborative LaTeX Editor`,extendedInfo:`Overleaf is a collaborative cloud-based LaTeX editor that makes it easy to create, edit, and share scientific documents. Perfect for academic papers, theses, and technical documentation with features like: 246- Real-time collaboration with multiple users 247- Rich text and source code editing modes 248- Thousands of LaTeX templates 249- Automatic compilation and preview 250- Version history and track changes 251- Bibliography management with BibTeX 252- Git integration for version control 253- Direct submission to journals and publishers 254- Cross-referencing and citation support 255 256Ideal for students, researchers, and academics working on scientific and technical documents.`},penpot:{title:`Penpot`,description:`Open-Source Design Platform (Figma Alternative)`,extendedInfo:`Penpot is a powerful open-source design and prototyping platform that serves as a free alternative to Figma. It provides comprehensive tools for UI/UX design with features like: 257- Web-based design interface accessible from anywhere 258- Real-time collaboration with team members 259- Vector editing and design tools 260- Prototyping and interactive mockups 261- Component libraries and design systems 262- CSS-friendly design output 263- SVG standard compliance 264- No vendor lock-in with open formats 265- Self-hosted for complete privacy 266- Export to various formats 267 268Perfect for designers, developers, and teams looking for a flexible, privacy-focused design solution without subscription costs.`},mailcow:{title:`Mailcow`,description:`Mail Server Solution`,extendedInfo:`Mailcow is a comprehensive mail server solution that includes everything needed for handling emails. It provides spam protection, antivirus, webmail, ActiveSync, and administration interface.`},dms:{title:`Nextcloud DMS`,description:`File Management System`,extendedInfo:`Nextcloud DMS (Data Management System) is a comprehensive file management and collaboration platform. It provides secure cloud storage, file synchronization, and sharing capabilities with features like: 269- Secure file storage and organization 270- Real-time collaboration on documents 271- Calendar and contact management 272- Task management and notes 273- Video conferencing integration 274- End-to-end encryption for sensitive data 275- Mobile and desktop synchronization 276- Advanced sharing permissions and access control 277- Integration with office suites for document editing 278- Comprehensive admin controls and user management 279 280Perfect for personal and professional data management with complete control over your files and privacy.`},pelican:{title:`Server Panel`,description:`Game Server Management`,extendedInfo:`Pelican is a game server management panel that supports various game servers and voice servers. It provides an intuitive interface for server deployment, configuration, and monitoring.`},linkShortener:{title:`Link Shortener`,description:`URL Shortening Service`,extendedInfo:`Custom URL shortening service that creates compact, easily shareable links. Track link analytics and manage shortened URLs through a simple interface.`},uwrPlanner:{title:`UWR Planer`,description:`Training Planning for UWR Teams`,extendedInfo:`A specialized tool for planning and organizing training sessions for Underwater Rugby teams. Enables efficient team coordination, training structuring, and performance tracking.`},mealieRecipe:{title:`Mealie Recipes`,description:`Personal Recipe Collection`,extendedInfo:`A comprehensive recipe database with personal favorite recipes. Organize, share, and discover culinary creations with easy navigation and search functions.`},immich:{title:`Immich`,description:`Self-Hosted Photo & Video Backup`,extendedInfo:`Immich is a powerful, open-source photo and video management solution designed for self-hosting. It offers seamless backup from mobile and desktop devices, with advanced features like: 281- AI-powered search and organization 282- Facial recognition technology 283- Secure, private cloud storage 284- Automatic backup and synchronization 285- Support for various media types 286- User-friendly interface 287- Complete data ownership and privacy`},pairdrop:{title:`Pairdrop`,description:`File Sharing & Collaboration`,extendedInfo:`Pairdrop is a secure file sharing and collaboration platform that allows users to share files, folders, and links with others. It provides end-to-e
287nd encryption, access control, and real-time collaboration features.`},pdf:{title:`BentoPDF`,description:`Privacy-Focused PDF Editing Solution`,extendedInfo:`BentoPDF is a privacy-focused, client-based tool for comprehensive PDF editing. All processing happens entirely in your browser - no data is ever sent to a server, ensuring maximum privacy and security. It offers a wide range of features for manipulating and managing PDF documents: 288- Merge and split PDF files 289- Add, remove, and rearrange pages 290- Add watermarks and stamps 291- PDF compression and optimization 292- Convert between various formats 293- Password protection and security settings 294- Edit and manage metadata 295- Create and edit forms 296 297The user-friendly web interface makes it easy to perform complex PDF operations without additional software, while keeping all your documents completely private.`},openwebui:{title:`OpenWebUI`,description:`AI Assistants & LLM Platform`,extendedInfo:`OpenWebUI is a comprehensive platform providing access to various Large Language Models (LLMs) and AI assistants. The platform offers access to a wide range of cutting-edge AI models: 298 299**Available Models:** 300- Phi4: Microsoft's compact yet powerful model 301- Gemma3: Google's advanced language model 302- DeepSeek-R1:8B: Specialized in reasoning and logical thinking 303- Qwen (QwQ): Alibaba's versatile language model 304- Llama2-Uncensored: Uncensored version of Meta's Llama2 305- Mistral: European open-source language model 306- Llama3.2: Latest version of Meta's Llama family 307- And many more models 308 309**Features:** 310- User-friendly chat interface 311- Model comparison and selection 312- Customizable system instructions 313- Conversation history and management 314- Local deployment for privacy 315- API access for developers 316 317Perfect for research, development, creative projects, and professional AI applications.`},vaultwarden:{title:`Vaultwarden`,description:`Password Manager`,extendedInfo:`Vaultwarden is an unofficial Bitwarden-compatible server written in Rust, providing a lightweight and efficient password management solution. It offers comprehensive features for secure password storage and management: 318 319**Key Features:** 320- End-to-end encryption for all stored data 321- Compatible with all Bitwarden clients (desktop, mobile, browser extensions) 322- Secure password generation 323- Two-factor authentication (2FA) support 324- Secure sharing of passwords and notes 325- Organization and collection management 326- Password health reports 327- Emergency access features 328- Self-hosted for complete data control 329- Low resource usage and high performance 330 331**Security:** 332- Zero-knowledge encryption 333- Master password never leaves your device 334- Optional 2FA with authenticator apps, YubiKey, or email 335- Secure vault item sharing 336 337Perfect for individuals and teams who want complete control over their password security with enterprise-grade features.`}}},dronesPage:{pageTitle:`New EU Drone Regulations`,lastUpdate:`Last Update:`,resourcesTitle:`Important Links and Resources`,euRegulationTitle:`Official EU Regulation`,euRegulationLink:`EU Implementing Regulation 2019/947 (Operation of Unmanned Aircraft)`,licenseTitle:`Drone License (A1/A3 Certificate of Competency)`,licenseDescription:`You can obtain the EU drone license (A1/A3 "Small Drone License") online from the German Federal Aviation Office (LBA):`,licenseLink:`LBA Online Drone License`,licenseCost:`Cost: approx. â¬25 | Validity: 5 years | Online exam with 40 questions`,droniqTitle:`Droniq App - Flight Planning and Permits`,droniqDescription:`The Droniq App is essential for flight planning in Germany. It shows no-fly zones, geographical UAS areas and enables the application for flight clearances.`,droniqAndroid:`Android (Google Play Store)`,droniqIOS:`iOS (App Store)`,droniqWarning:`Note: Unfortunately, the app is not available via F-Droid, only through the official app stores from Google and Apple.`,changesTitle:`What has changed?`,changesIntro:`Since December 31, 2020, uniform drone regulations have been in effect throughout the EU in accordance with EU Regulation 2019/947. The most important changes:`,changes:[`New Drone Classes (C0-C4): All new drones must be marked with CE classification from 2024`,`EU-wide Drone License: Mandatory for almost all drones from 250g (A1/A3) or from 500g near people (A2)`,`Registration Requirement: Pilots must register (eID required) - not the drone itself anymore`,`Electronic Identification (Remote ID): Mandatory for new drones from C1 class onwards`,`Geographical Zones (Geo-Fencing): Automatic restriction in no-fly zones for newer drones`,`Self-built Drones: Subject to stricter rules and mostly only allowed up to 250g in the open category`],importantTitle:`What to pay special attention to?`,important:[`Insurance is Mandatory: Drone liability insurance is legally required in Germany`,`Labeling Requirement: From 250g onwards, a fireproof plate with the registration number must be attached to the device`,`120m Height Restriction: Maximum flight altitude of 120m above ground (except in special zones)`,`Visual Line of Sight (VLOS): The drone must always remain in direct line of sight - FPV flights only with spotter`,`Respect Distance Rules: Minimum distances to airports (1.5 km), crowds, residential areas, nature reserves`,`Use Droniq App: Check current no-fly zones and temporary restrictions before each flight`,`Data Protection: No recordings of persons without consent, no violation of privacy`,`Night Flight Ban: Flights are generally only allowed in daylight (exceptions with special permission)`,`Alcohol Ban: Flying under the influence of alcohol or drugs is prohibited (from 0.5 promille criminal offense)`,`Older Drones (Legacy Drones): May still be flown with old rules until end of 2025, then transitional regulations apply`],finderTitle:`Drone Class Finder`,weightLabel:`Drone weight (in grams):`,homemadeLabel:`Self-built drone`,findButton:`Determine class`,resultTitle:`Result:`,droneClass:`Drone Class:`,requiredLicense:`Required License:`,scenariosTitle:`Application Scenarios`,scenariosIntro:`The EU guidelines provide three application scenarios:`,scenarios:[`Open - for drones and flights with low risk`,`Specific - for special operations with exemption permits`,`Certified - for special applications in industry`],droneClassesTitle:`Drone Categories`,pilotClassesTitle:`Pilot Categories`,pilotForClasses:`For drone classes:`,hintsTitle:`Important Notes:`,hints:[`Maximum flight altitude: 120 meters`,`Flight only within visual line of sight (VLOS)`,`Comply with insurance requirements`,`Observe flight restrictions for certain zones`,`Respect privacy - no unauthorized recordings`]}
337,projects:{title:`Projects`,subtitle:`A showcase of cool projects I'm working on`,viewProject:`Read More`,visitRepo:`Visit Repository`,techStack:`Tech Stack`,backToProjects:`Back to Projects`,startedOn:`Started`,availableOn:`Available on`},externalLinkWarning:{title:`External Website`,message:`You are now leaving pabr.de and will be redirected to an external website:`,disclaimer:`We assume no responsibility for the content of external websites.`,cancel:`Cancel`,continue:`Continue`}},$n={common:{backToMenu:`Zurück zur Ãbersicht`},header:{about:`Ãber`,blog:`Blog`,games:`Spiele`,divers:{main:`Interessen`,webcams:`Flughafen Webcams`,drones:`Drohnen`,testing:`Testing`,"3dPrinters":`3D Drucker`,machineLearning:`Maschinelles Lernen`,unterwasserrugby:`Unterwasserrugby`},services:`Dienste`,login:`Anmelden`,logout:`Abmelden`,profile:`Profil`,projects:`Projekte`},divers:{webcamDescription:`Live-Webcams von Flughäfen weltweit`,dronesDescription:`Informationen und Technologien über Drohnen`,testingDescription:`Verschiedene Testseiten und Experimente`,"3dPrintersDescription":`Einblicke in 3D-Drucktechnologie`,machineLearningDescription:`Aktuelle KI-Technologien und Anwendungen`,unterwasserrugbyDescription:`Einzigartiger Teamsport unter Wasser`},threeDPrinters:{title:`3D Drucker`,sidewinderX1:{overview:`Der Artillery Sidewinder X1 ist ein fortschrittlicher 3D-Drucker, der für Präzision und Zuverlässigkeit bekannt ist. Er eignet sich hervorragend für Hobbyisten und fortgeschrittene Benutzer.`,specifications:{title:`Technische Spezifikationen`,printVolume:`Druckvolumen: 300 x 300 x 400 mm`,printSpeed:`Druckgeschwindigkeit: Bis zu 150 mm/s`,nozzleDiameter:`Düsendurchmesser: 0.4 mm`,supportedMaterials:`Unterstützte Materialien: PLA, PETG, ABS`,extruder:`Direct Drive Extruder`,mainboard:`Silent Mainboard`},features:{title:`Besondere Merkmale`,metalFrame:`Robustes Metallgehäuse für Stabilität`,autoLeveling:`Automatische Bett-Nivellierung`,precision:`Hochpräzise Druckergebnisse`}},bambuLabP1S:{overview:`Der BambuLab P1S ist ein moderner 3D-Drucker mit fortschrittlichen Funktionen. Generell sehr zufriedenstellend, hat aber einige Nachteile für Profis, insbesondere bei der Netzwerkkonfiguration.`,specifications:{title:`Technische Spezifikationen`,printVolume:`Druckvolumen: 256 x 256 x 256 mm`,printSpeed:`Druckgeschwindigkeit: Bis zu 500 mm/s`,nozzleDiameter:`Düsendurchmesser: 0.4 mm (austauschbar)`,supportedMaterials:`Unterstützte Materialien: PLA, PETG, ABS, ASA, PC, PA, PVA, HIPS`,extruder:`Automatischer Materialwechsel (AMS)`,connectivity:`WiFi, Ethernet, USB`},features:{title:`Besondere Merkmale`,autoCalibration:`Vollautomatische Kalibrierung`,aiDetection:`KI-basierte Fehlererkennung`,multiColor:`Multi-Material/Multi-Color Druck`,cloudIntegration:`Cloud-Integration und Remote-Ãberwachung`},professionalLimitations:{title:`Einschränkungen für Profis`,lanOnlyLimitation:`Keine SD-Karten-Ansicht im LAN-Only Modus`,udpDiscovery:`UDP Discovery funktioniert nicht über VLANs hinweg`,vlanSolution:`Lösung: udpbroadcastrelay für VLAN-übergreifende Kommunikation`,wikiReference:`Detaillierte Anleitung verfügbar unter:`}}},drones:{title:`Drohnen-Technologie und Anwendungen`,overview:`Drohnen haben sich von militärischen Geräten zu vielseitigen Technologien entwickelt, die in verschiedenen Bereichen Anwendung finden.`,categories:{consumer:{title:`Verbraucher-Drohnen`,description:`Drohnen für Fotografie, Videografie und Freizeitaktivitäten`,examples:[{name:`DJI FPV`,description:`Immersive First-Person-View Drohne mit beeindruckender Geschwindigkeit`,features:[`4K/60fps Super-Weitwinkel-Kamera`,`Maximale Geschwindigkeit von 140 km/h`,`Bis zu 20 Minuten Flugzeit`,`Notfall-Bremsung und Hover`]},{name:`Yuneec Typhoon H`,description:`Professionelle Hexacopter-Drohne für anspruchsvolle Luftaufnahmen`,features:[`360-Grad-Kamerarotation`,`Sechs Rotoren für erhöhte Stabilität`,`Intelligente Flugmodi`,`Integrierte Wärmekamera`]}]},professional:{title:`Professionelle Drohnen`,description:`Drohnen für Industrie, Landwirtschaft, Vermessung und Rettungsdienste`,applications:[{sector:`Landwirtschaft`,uses:[`Erntekartierung`,`Präzise Bewässerungsplanung`,`Schädlingsüberwachung`,`Bodenzustandsanalyse`]},{sector:`Rettungsdienste`,uses:[`Suche und Rettung`,`Katastrophenüberwachung`,`Luftaufnahmen bei Notfällen`,`Temperaturmessung`]}]},military:{title:`Militärische Drohnen`,description:`Fortschrittliche unbemannte Luftfahrzeuge für Aufklärung und Einsätze`,types:[{name:`Aufklärungsdrohnen`,capabilities:[`Hochauflösende Bilderfassung`,`Echtzeit-Ãbertragung`,`Nachtsichtfähigkeiten`,`Lange Flugdauer`]},{name:`Kampfdrohnen`,capabilities:[`Präzisionsangriffe`,`Ferngesteuerte Missionen`,`Minimales Risiko für menschliche Besatzungen`]}]}},ethicalConsiderations:{title:`Ethische Ãberlegungen`,privacyTitle:`Datenschutz`,privacyDescription:`Drohnen werfen wichtige Fragen zum Schutz der Privatsphäre auf, insbesondere in Bezug auf unbeabsichtigte Ãberwachung und Bildaufnahmen.`,regulationTitle:`Rechtliche Regulierungen`,regulationDescription:`Viele Länder haben spez
337ifische Gesetze für den Drohneneinsatz, die Flughöhe, Flugzonen und Registrierungspflichten regeln.`},futureTrends:{title:`Zukünftige Trends`,developments:[`Autonome Navigationssysteme`,`Verbesserte Batterietechnologie`,`KI-gesteuerte Entscheidungsfindung`,`Miniaturisierung`,`Schwarmtechnologie`]}},unterwasserrugby:{generalInfoTitle:`Unterwasser-Rugby: Ein dynamischer Wassersport`,description1:`Unterwasser-Rugby ist ein faszinierender Kontaktsport, der in einem Schwimmbecken ausgetragen wird. Zwei sechsköpfige Mannschaften kämpfen darum, einen mit Salzwasser gefüllten Ball in das gegnerische Tor am Beckenboden zu platzieren.`,description2:`Der Sport erfordert höchste körperliche Fitness, Ausdauer, Kraft und taktisches Geschick. Spieler müssen in der Lage sein, unter Wasser zu tauchen, den Ball zu kontrollieren und gleichzeitig gegnerische Spieler abzuwehren.`,keyFact:`Ein einzigartiger Teamsport, der Elemente aus Rugby, Schwimmen und Tauchen kombiniert.`,videos:`Videos`,video1Title:`Einführung in Unterwasser-Rugby`,video2Title:`Unterwasser-Rugby in Bonn`,gameplayTitle:`Spielablauf und Regeln`,gameplayDescription:`Das Spiel wird in zwei 15-minütigen Halbzeiten ausgetragen. Jede Mannschaft besteht aus maximal 15 Spielern, von denen sechs gleichzeitig im Wasser spielen. Die Spieler wechseln sich in kurzen Intervallen ab, typischerweise nach 1-3 Minuten. Das Spielfeld ist ein Schwimmbecken mit mindestens 3,5m Tiefe und 12-18m Länge sowie 8-12m Breite.`,rulesTitle:`Detaillierte Spielregeln`,rulesDescription:`Das Spiel folgt den offiziellen VDST-Regeln. Der Ball darf nur mit einer Hand gehalten werden, Pässe sind in alle Richtungen erlaubt. Körperkontakt ist erlaubt, aber Schlagen, Treten oder gefährliche Aktionen sind verboten. Bei RegelverstöÃen gibt es FreistöÃe oder StrafstöÃe. Das Spiel wird von zwei Schiedsrichtern geleitet - einem im Wasser und einem am Beckenrand.`,equipmentTitle:`Ausrüstung`,equipmentDescription:`Spieler tragen spezielle Ausrüstung: Schwimmflossen, Tauchmasken, Schnorchel und Kappen mit Ohrenschützern in Teamfarben. Der Ball ist handballgroà und mit gesättigter Kochsalzlösung gefüllt, sodass er langsam sinkt. Die Tore bestehen aus schweren Metallkörben am Beckenboden.`,positionsTitle:`Die drei Spielerpositionen`,positionsDescription:`Im Unterwasser-Rugby gibt es drei spezialisierte Positionen, die jeweils unterschiedliche Aufgaben und Fähigkeiten erfordern:`,positionDeckel:`Deckel (Torwart): Verteidigt das eigene Tor am Beckenboden. Muss exzellente Apnoe-Fähigkeiten haben und schnell zwischen Oberfläche und Tiefe wechseln können.`,positionDackel:`Dackel (Verteidiger): Spielt hauptsächlich in der Tiefe und stört gegnerische Angriffe. Benötigt ausgezeichnete Unterwasser-Navigation und körperliche Stärke für Zweikämpfe am Beckenboden.`,positionStrum:`Strum (Stürmer): Führt Angriffe an und versucht Tore zu erzielen. Muss schnell schwimmen können und präzise Pässe sowie Torschüsse beherrschen. Oft der wendigste Spieler im Team.`,tacticsTitle:`Taktik und Strategie`,tacticsDescription:`Erfolgreiche Teams nutzen koordinierte Angriffs- und Verteidigungsstrategien. Schnelle Positionswechsel, präzise Pässe und Teamwork sind entscheidend. Die begrenzte Atemluft macht Timing und Effizienz zu kritischen Faktoren.`,techniquesTitle:`Techniken und Fertigkeiten`,techniquesDescription:`Spieler bewegen sich ausschlieÃlich mit Flossenschlägen unter Wasser. Der Ball wird mit einer Hand gehalten, um Schwimm- und Abwehrbewegungen zu ermöglichen. Pässe erfolgen durch kurze, kraftvolle Bewegungen. Wichtige Techniken sind das 'Abtauchen', 'Ballführung' und 'Positionsspiel'.`,challengesTitle:`Herausforderungen des Sports`,challengesDescription:`Unterwasser-Rugby ist ein sehr anspruchsvoller Sport, der hervorragende Apnoe-Fähigkeiten, räumliche Orientierung und Teamwork erfordert. Spiele sind oft sehr defensiv und enden mit knappen Ergebnissen. Die dreidimensionale Spielweise und der Sauerstoffmangel machen jeden Spielzug zu einer Herausforderung.`,originTitle:`Ursprung und Entwicklung`,originDescription:`Der Sport entstand in den 1960er Jahren in Schweden als Trainingsmethode für Taucher und hat sich seitdem weltweit verbreitet. Deutschland ist eine der führenden Nationen im Unterwasser-Rugby. Der VDST (Verband Deutscher Sporttaucher) organisiert die nationalen Wettkämpfe und stellt das offizielle Regelwerk bereit.`,safetyTitle:`Sicherheit und Fair Play`,safetyDescription:`Trotz des körperbetonten Charakters legt Unterwasser-Rugby groÃen Wert auf Fairness und Sicherheit. Unsportliches Verhalten wie Schlagen oder gefährliche Angriffe werden streng geahndet. Alle Spieler müssen schwimmen können und über Grundkenntnisse im Tauchen verfügen.`,competitionTitle:`Wettkämpfe und Organisation`,competitionDescription:`Der VDST organisiert Landes- und Bun
337desmeisterschaften sowie internationale Turniere. Die Wettkampfordnung regelt alle Aspekte von der Mannschaftsaufstellung bis zur Schiedsrichterausbildung. Offizielle Schiedsrichter durchlaufen eine spezielle Ausbildung nach der VDST-Schiedsrichterordnung.`,linupPlannerTitle:`Aufstellungsplaner`,linupPlannerDescription:`Für die taktische Vorbereitung und Spielplanung steht ein spezieller Aufstellungsplaner zur Verfügung. Dieses Tool hilft Trainern und Teams bei der optimalen Positionierung und Strategieentwicklung.`,linupPlannerLink:`Zum Aufstellungsplaner`,officialResourcesTitle:`Offizielle Ressourcen`,vdstMainPage:`VDST Unterwasser-Rugby Hauptseite`,officialRules:`Offizielles Regelwerk (VDST)`,competitionRules:`Wettkampfordnung (VDST)`,refereeRules:`Schiedsrichterordnung (VDST)`},machineLearning:{title:`Maschinelles Lernen & KI`,description:`Eine umfassende Sammlung von KI-Technologien und -Diensten, die moderne Kreativität und Produktivität revolutionieren. Entdecken Sie innovative Tools, die Kommunikation, Bildgenerierung, Präsentationserstellung und mehr transformieren.`,categories:{chatBots:{title:`Chat Bots`,description:`Interaktive KI-Assistenten, die komplexe Konversationen führen, Fragen beantworten und bei verschiedensten Aufgaben helfen können. Von wissenschaftlicher Recherche bis hin zu kreativen Projekten.`,items:{chatGPT:{name:`OpenAI ChatGPT`,description:`Der bekannteste KI-Chatbot, der Texte generiert, Fragen beantwortet und bei vielfältigen Aufgaben unterstützt.`,extendedInfo:`ChatGPT ist ein fortschrittliches KI-Sprachmodell, das von OpenAI entwickelt wurde. Es kann Texte generieren, Fragen beantworten, Ãbersetzungen durchführen, Code schreiben und komplexe Aufgaben in verschiedenen Bereichen wie Programmierung, Kreativität, Analyse und Problemlösung bewältigen. Die Technologie basiert auf einem neuronalen Netzwerk, das auf einer umfangreichen Textdatenbank trainiert wurde.`,url:`https://chat.openai.com/`},claude:{name:`Claude`,description:`Ein fortschrittlicher KI-Assistent mit besonders ethischem und präzisem Ansatz bei Informationsverarbeitung.`,extendedInfo:`Claude ist ein KI-Assistent von Anthropic, der sich durch besonders ethische und präzise Informationsverarbeitung auszeichnet. Er wurde mit einem starken Fokus auf Sicherheit und verantwortungsvolle KI-Nutzung entwickelt. Claude kann komplexe Aufgaben lösen, wissenschaftliche Texte analysieren und bietet detaillierte und nuancierte Antworten.`,url:`https://www.anthropic.com/index/introducing-claude`},agentGPT:{name:`AgentGPT`,description:`Ein zielorientierter KI-Agent, der selbstständig komplexe Aufgaben planen und ausführen kann.`,extendedInfo:`AgentGPT ist ein innovatives KI-System, das autonome Aufgabenplanung und -ausführung ermöglicht. Es kann selbstständig Ziele definieren, Strategien entwickeln und Schritte zu deren Erreichung planen. Besonders nützlich für komplexe Projektmanagement- und Forschungsaufgaben.`,url:`https://agentgpt.reworkd.ai/`},forefrontAI:{name:`Forefront AI`,description:`Flexible KI-Plattform mit Zugang zu verschiedenen fortschrittlichen Sprachmodellen.`,extendedInfo:`Forefront AI ist eine vielseitige Plattform, die Zugang zu verschiedenen fortschrittlichen Sprachmodellen wie GPT-3.5, GPT-4 und Claude bietet. Sie ermöglicht Nutzern, verschiedene KI-Modelle zu vergleichen und für unterschiedliche Anwendungsfälle zu nutzen.`,url:`https://www.forefront.ai/`},perplexityAI:{name:`Perplexity AI`,description:`KI-Recherche-Tool mit Fokus auf wissenschaftliche Genauigkeit und Quellenangaben.`,extendedInfo:`Perplexity AI ist ein KI-gestütztes Recherche-Tool, das sich auf wissenschaftliche Genauigkeit und Quellenangaben spezialisiert. Es durchsucht umfangreiche Datenbanken, generiert präzise Antworten und liefert direkte Verweise auf Originalquellen.`,url:`https://www.perplexity.ai`},poe:{name:`Poe`,description:`Vielseitige KI-Plattform mit mehreren Chatbots und Bildgenerierungsfunktionen.`,extendedInfo:`Poe ist eine umfassende KI-Plattform, die Zugang zu verschiedenen Chatbots und Bildgenerierungsfunktionen bietet. Nutzer können zwischen verschiedenen KI-Modellen wechseln, Bilder generieren und komplexe Konversationen führen.`,url:`https://poe.com`}}},imageGenerator:{title:`Bild-Generatoren`,description:`KI-gestützte Tools, die aus Textbeschreibungen hochwertige, kreative und realistische Bilder generieren. Perfekt für Design, Kunst und visuelle Kommunikation.`,items:{midjourney:{name:`Midjourney`,description:`Hochentwickelter Bildgenerator mit auÃergewöhnlicher Detailtreue und künstlerischer Qualität.`,extendedInfo:`Midjourney ist ein KI-Bildgenerator, der für seine auÃergewöhnliche künstlerische Qualität und Detailtreue bekannt ist. Er kann aus Textbeschreibungen hochwertige, oft surreale und stilisierte Bilder generieren. Besonders beliebt in Kunst- und Designkreisen.`,url:`https://www.midjourney.com/home`}
337,stableDiffusion:{name:`Stable Diffusion`,description:`Open-Source-Bildgenerator mit hoher Anpassungsfähigkeit und Selbst-Hosting-Option.`,extendedInfo:`Stable Diffusion ist ein Open-Source-Bildgenerator, der Nutzern maximale Flexibilität und Kontrolle bietet. Er kann lokal gehostet werden, ermöglicht Feinabstimmungen und ist für Entwickler und Tüftler besonders interessant.`,url:`https://stability.ai/`},dallE:{name:`DALL-E`,description:`OpenAIs Bildgenerierungstool mit soliden Ergebnissen und einfacher Bedienung.`,extendedInfo:`DALL-E von OpenAI ist ein benutzerfreundlicher Bildgenerator, der aus Textbeschreibungen realistische und kreative Bilder erstellt. Er zeichnet sich durch seine Zugänglichkeit und solide Bildqualität aus.`,url:`https://labs.openai.com/`}}},powerpointAI:{title:`Präsentations-KI`,description:`Intelligente Tools zur automatischen Erstellung professioneller Präsentationen mit KI-gestütztem Design und Inhaltsvorschlägen.`,items:{beautifulAI:{name:`Beautiful AI`,description:`KI-Präsentationstool, das elegante und professionelle Designs mit minimalem Aufwand erstellt.`,extendedInfo:`Beautiful AI ist ein KI-gestütztes Präsentationstool, das automatisch elegante und professionelle Designs generiert. Es reduziert den Zeitaufwand für Präsentationserstellung und bietet intelligente Layout- und Designvorschläge.`,url:`https://www.beautiful.ai/`},simplified:{name:`Simplified`,description:`Schnelle KI-Präsentationserstellung mit mehrsprachiger Unterstützung und intuitiver Benutzeroberfläche.`,extendedInfo:`Simplified ist eine KI-Plattform für schnelle Präsentationserstellung mit Unterstützung mehrerer Sprachen. Sie bietet intuitive Benutzeroberfläche, automatische Inhaltsvorschläge und professionelle Designoptionen.`,url:`https://simplified.com/ai-presentations`}}},tools:{title:`KI-Werkzeuge`,description:`Spezialisierte KI-Anwendungen für spezifische Aufgaben wie Bildbearbeitung, Textumwandlung und mehr.`,items:{watermarkRemover:{name:`Watermark Remover`,description:`KI-gestütztes Tool zum intelligenten Entfernen von Wasserzeichen aus Bildern.`,extendedInfo:`Watermark Remover ist ein KI-Tool, das Wasserzeichen intelligent und nahtlos aus Bildern entfernen kann. Es nutzt fortschrittliche Bilderkennungs- und Restaurierungsalgorithmen, um Bilder zu bereinigen.`,url:`https://www.watermarkremover.io/`}}},music:{title:`Musik-KI`,description:`Innovative KI-Systeme zur Musikkomposition, die komplexe Melodien und Arrangements generieren können.`,items:{suno:{name:`Suno`,description:`Fortschrittliche KI zur Musikgenerierung mit hoher Kreativität und Klangqualität.`,extendedInfo:`Suno ist eine KI-Plattform zur Musikgenerierung, die seit Version 3 hochwertige und kreative Musikstücke erstellen kann. Sie analysiert Musikstile, generiert originelle Kompositionen und bietet Musikern und Kreativen neue Inspirationsquellen.`,url:`https://suno.com`}}}}},footer:{impressum:`Impressum`,datenschutz:`Datenschutz`,copyright:`© 2024-2026 PaBr Webpage. Alle Rechte vorbehalten.`},impressum:{title:`Impressum`,content:`Rechtliche Informationen über den Website-Betreiber und die verantwortlichen Parteien werden hier angezeigt.`,kekseButton:`Mehr über unsere Kekse erfahren`,kekseBanner:{title:`Diese Seite jubelt Dir schamlos Kekse für ein besseres Nutzererlebnis unter.`,description:`Durch Deinen Besuch stimmst Du diesem unverfrorenen Verhalten zu.`,disclaimer:`* Hinweis: Es werden keine echten Kekse angeboten. Diese Website verwendet auch keine Tracking-Cookies. Dies ist nur ein Scherz über Cookie-Banner. Sorry, Diggi! ðª`,acceptButton:`Einverstanden, Bruder, mach!`,rejectButton:`Ich hasse Kekse, Diggi.`}},datenschutz:{title:`Datenschutzerklärung`,content:`Informationen zum Datenschutz und zu den Datenschutzrichtlinien werden hier angezeigt.`},login:{title:`Anmelden`,username:`Benutzername`,password:`Passwort`,submit:`Anmelden`,register:`Registrieren`,loading:`Anmeldung läuft...`,error:`Authentifizierung fehlgeschlagen. Bitte versuchen Sie es erneut.`,loginWith:`Mit PaBr SSO anmelden`}
337,profile:{title:`Profilinformationen`,welcome:`Willkommen`,loading:`Lädt...`,personalDetails:`Persönliche Daten`,groupsAndSettings:`Gruppen & Einstellungen`,name:`Name`,email:`E-Mail`,username:`Benutzername`,lastLogin:`Letzter Login`,groups:`Gruppen`,themePreference:`Design-Einstellung`,switchToDark:`Zum dunklen Design wechseln`,switchToLight:`Zum hellen Design wechseln`,switchToRainbow:`Zum Regenbogen-Design wechseln`,rainbowDiscovered:`Du hast das Regenbogen-Design entdeckt! ð`,language:`Sprache`,logout:`Abmelden`},about:{title:`Ãber`,role:`System Engineer für Netzwerksicherheit & DevSecOps`,description:`Erfahrener System Engineer mit Spezialisierung auf Netzwerksicherheit und DevSecOps-Praktiken. Fokussiert auf die Implementierung sicherer Infrastrukturlösungen und die Automatisierung von Sicherheitsprozessen in der Entwicklungspipeline.`,skills:`Technische Expertise`,skillCategories:{virtualization:{title:`Virtualisierung`,items:[`VMware ESX 6-8`,`vSphere 6-8`,`VMWare Server/Workstation`,`Unraid`,`Proxmox`,`XCP-NG`,`Hyper-V`]},os:{title:`Betriebssysteme`,items:[`RedHat 6-10`,`RockyLinux 8-10`,`CentOS`,`Ubuntu 16-24`,`Debian 8-13`,`Fedora`,`Arch`,`Windows Server 2008-2025, XP-11`,`Cisco IOS`,`Android 4-16`]},databases:{title:`Datenbanken`,items:[`MySQL 5.x`,`MariaDB 5.x/10.x-11.x`,`Oracle 10.x`,`MongoDB`,`PostgreSQL 12.x-17.x`,`Neo4j`]},programming:{title:`Programmierung & Scripting`,items:[`Bash`,`SQL`,`JSON`,`YAML`,`Python`,`C/C++/C#`,`Java`,`TypeScript`,`HTML/CSS/Javascript`,`PowerShell`,`PowerCLI`,`Flutter/Dart`]},security:{title:`Sicherheit & Netzwerk`,items:[`Linux iptables`,`Cisco Nexus/Catalyst`,`Cisco ASA`,`OPNSense`,`PfSense`,`FortiGate`,`NSX-T`,`NSX-ALB`,`F5 Big-IP LTM`,`LANCOM WLC`,`Extreme Networks`,`Wireguard/OpenVPN/IPSec/SSL-VPN`]},admin:{title:`Infrastruktur & Dienste`,items:[`Docker/Podman`,`Reverse-Proxy`,`Nagios`,`checkmk`,`git/gitlab`,`NFS`,`DNS/DHCP`,`Samba`,`E-Mail-Dienste`,`IPv4/IPv6`,`Ansible`,`Kubernetes`]}}},blog:{title:`Blog`,readMore:`Weiterlesen`,createPost:`Neuen Beitrag erstellen`,postTitle:`Beitragstitel`,titlePlaceholder:`Geben Sie einen Titel ein`,content:`Inhalt`,publish:`Beitrag veröffentlichen`,publishing:`Wird veröffentlicht...`,by:`von`,loading:`Beiträge werden geladen...`,edit:`Bearbeiten`,delete:`Löschen`,update:`Beitrag aktualisieren`,updating:`Wird aktualisiert...`,cancel:`Abbrechen`,confirmDelete:`Möchten Sie diesen Beitrag wirklich löschen?`,lastUpdated:`Zuletzt aktualisiert`,attachments:`Anhänge`,error:{fetch:`Fehler beim Laden der Blogbeiträge`,create:`Fehler beim Erstellen des Blogbeitrags`,update:`Fehler beim Aktualisieren des Blogbeitrags`,delete:`Fehler beim Löschen des Blogbeitrags`,imageUpload:`Fehler beim Hochladen des Bildes. Bitte versuchen Sie es erneut.`},validation:{titleRequired:`Titel ist erforderlich`,contentRequired:`Inhalt ist erforderlich`},success:{create:`Beitrag erfolgreich erstellt`,update:`Beitrag erfolgreich aktualisiert`,delete:`Beitrag erfolgreich gelöscht`}},games:{title:`Spiele`,play:`Spielen`,loading:`Lädt...`,error:`Spiel konnte nicht geladen werden. Bitte versuchen Sie es später erneut.`,names:{minecraft:`Minecraft`,"space-invaders":`Space Invaders`,rockets:`Raketen`,minesweeper:`Minesweeper`,rubixCube:`Zauberwürfel`,connect4:`4 Gewinnt`,flappyBird:`Flappy Bird KI`,chess:`Schach`,music:`Musik`,atc:`Fluglotse`,2048:`2048`,connect5:`5 Gewinnt`,towerBlocks:`Turmblöcke`,jumpAndRun:`Jump and Run`,jumpAndRun2:`Jump & Run 2.0`,pong:`Pong`,reactGame:`React Spiel`,snake:`Snake`,snake2:`Snake 2.0 (Nokia)`,ticTacToe:`Tic Tac Toe`,tetris:`Tetris`,breakout:`Breakout`,stickHero:`Stick Hero`,tiltingMaze:`Neigungslabyrinth`,"ultimate-tic-tac-toe":`Ultimatives Tic Tac Toe`,"train-puzzle":`Zug-Puzzle`,pacman:`Pacman`,hex:`Hex`,gameOfLife:`Spiel des Lebens`}},tools:{title:`Entwicklungswerkzeuge`,description:`Eine Sammlung nützlicher Entwicklungswerkzeuge und Dienstprogramme`,comingSoon:`Weitere Werkzeuge folgen in Kürze...`},services:JSON.parse(`{"title":"Unsere Dienste","searchPlaceholder":"Dienste durchsuchen...","statusPage":"Status","visitService":"Dienst besuchen","viewGitRepo":"Git-Repository ansehen","showMore":"Mehr Informationen anzeigen","serviceDisabled":"Dienst vorübergehend deaktiviert","services":{"zammad":{"title":"Zammad","description":"Professionelles Ticketsystem","extendedInfo":"Zammad ist ein Open-Source-Helpdesk/Kundenservice-System mit vielen Funktionen zur Verwaltung der Kundenkommunikation über verschiedene Kanäle wie Telefon, Facebook, Twitter, Chat und E-Mails. Es bietet eine übersichtliche und intuitive Oberfläche zur effizienten Verwaltung von Support-Anfragen."},"gitlab":{"title":"GitLab","description":"Versionskontrolle & CI/CD-Plattform","extendedInfo":"GitLab ist eine vollständige DevOps-Plattform, die Versionskontrolle, kontinuierliche Integration und kontinuierliche Bereitstellung ermöglicht. Sie bietet Quellcodeverwaltung, Issue-Tracking, CI/CD-Pipelines und vieles mehr in einer einzigen Anwendung."},"harbor":{"title":"Harbor","description":"Container-Registry","extendedInfo":"Harbor ist eine Open-Source-Container-Image-Registry, die Artefakte mit Richtlinien und rollenbasierter Zugriffssteuerung sichert. Sie stellt sicher, dass Images auf Schwachstellen geprüft und als vertrauenswürdig signiert werden."},"bookstack":{"title":"Bookstack","description":"Wiki & Wissensdatenbank","extendedInfo":"Bookstack ist ein kostenloses Open-Source-Wiki-System, das eine einfache, selbst gehostete Plattform zur Organisation und Speicherung von Informationen bietet. Es verwendet eine buchartige Organisationsstruktur, die intuitiv zu bedienen und zu navigieren ist."},"matrix":{"title":"Matrix Synapse","description":"Sicherer Kommunikationsserver","extendedInfo":"Matrix Synapse ist eine Referenz-Homeserver-Implementierung des Matrix-Protokolls, die Echtzeitkommunikation mit hoher Sicherheit und Privatsphäre bietet. Es unterstützt Ende-zu-Ende-Verschlüsselung und dezentrale Kommunikation."},"planka":{"title":"Planka","description":"Kanban-Projektmanagement","extendedInfo":"Planka ist ein kostenloses Open-Source-Kanban-Board, das Ihnen hilft, Projekte und Aufgaben effizient zu verwalten. Es bietet Funktionen wie Drag-and-Drop-Karten, Labels, Fälligkeitsdaten und Team-Collaboration-Tools."},"media":{"title":"Medienseite","description":"Unterhaltungszentrale (VPN erforderlich)","extendedInfo":"Umfassendes Medienzentrum mit:\\n- Jellyfin: Open-Source-Medienstreaming (Hauptplattform)\\n- Grimmory: Digitaler Buch- und Comic-Reader\\n- Audiobookshelf: Hörbuch-Server\\n- Request Center: Neue Medie
337n anfragen"},"overleaf":{"title":"Overleaf","description":"Kollaborativer LaTeX-Editor","extendedInfo":"Overleaf ist ein kollaborativer, cloudbasierter LaTeX-Editor, der das Erstellen, Bearbeiten und Teilen wissenschaftlicher Dokumente erleichtert. Perfekt für wissenschaftliche Arbeiten, Dissertationen und technische Dokumentationen mit Features wie:\\n- Echtzeit-Kollaboration mit mehreren Benutzern\\n- Rich-Text- und Quellcode-Bearbeitungsmodi\\n- Tausende von LaTeX-Vorlagen\\n- Automatische Kompilierung und Vorschau\\n- Versionsverlauf und Ãnderungsverfolgung\\n- Literaturverwaltung mit BibTeX\\n- Git-Integration für Versionskontrolle\\n- Direkte Einreichung bei Zeitschriften und Verlagen\\n- Querverweise und Zitationsunterstützung\\n\\nIdeal für Studierende, Forscher und Akademiker, die an wissenschaftlichen und technischen Dokumenten arbeiten."},"penpot":{"title":"Penpot","description":"Open-Source Design-Plattform (Figma-Alternative)","extendedInfo":"Penpot ist eine leistungsstarke Open-Source-Design- und Prototyping-Plattform, die als kostenlose Alternative zu Figma dient. Sie bietet umfassende Werkzeuge für UI/UX-Design mit Features wie:\\n- Webbasierte Design-Oberfläche von überall zugänglich\\n- Echtzeit-Kollaboration mit Teammitgliedern\\n- Vektor-Bearbeitung und Design-Tools\\n- Prototyping und interaktive Mockups\\n- Komponentenbibliotheken und Design-Systeme\\n- CSS-freundliche Design-Ausgabe\\n- SVG-Standard-Konformität\\n- Keine Vendor-Lock-in mit offenen Formaten\\n- Selbst-gehostet für vollständige Privatsphäre\\n- Export in verschiedene Formate\\n\\nPerfekt für Designer, Entwickler und Teams, die nach einer flexiblen, datenschutzorientierten Design-Lösung ohne Abonnementkosten suchen."},"mailcow":{"title":"Mailcow","description":"Mail-Server-Lösung","extendedInfo":"Mailcow ist eine umfassende Mail-Server-Lösung, die alles Notwendige für die E-Mail-Verwaltung enthält. Sie bietet Spam-Schutz, Antivirus, Webmail, ActiveSync und eine Administrationsoberfläche."},"dms":{"title":"Nextcloud DMS","description":"Dateimanagementsystem","extendedInfo":"Nextcloud DMS (Dateimanagementsystem) ist eine umfassende Dateiverwaltungs- und Kollaborationsplattform. Sie bietet sichere Cloud-Speicherung, Dateisynchronisation und Freigabefunktionen mit Features wie:\\n- Sichere Dateispeicherung und -organisation\\n- Echtzeit-Zusammenarbeit an Dokumenten\\n- Kalender- und Kontaktverwaltung\\n- Aufgabenverwaltung und Notizen\\n- Videokonferenz-Integration\\n- Ende-zu-Ende-Verschlüsselung für sensible Daten\\n- Mobile und Desktop-Synchronisation\\n- Erweiterte Freigabeberechtigungen und Zugriffskontrolle\\n- Integration mit Office-Suiten für Dokumentenbearbeitung\\n- Umfassende Admin-Kontrollen und Benutzerverwaltung\\n\\nPerfekt für persönliches und professionelles Datenmanagement mit vollständiger Kontrolle über Ihre Dateien und Privatsphäre."},"pelican":{"title":"Server Panel","description":"Spielserver-Verwaltung","extendedInfo":"Pelican ist ein Spielserver-Verwaltungspanel, das verschiedene Spiel- und Sprachserver unterstützt. Es bietet eine intuitive Oberfläche für Server-Deployment, Konfiguration und Ãberwachung."},"linkShortener":{"title":"Link-Kürzer","description":"URL-Kürzungsdienst","extendedInfo":"Individueller URL-Kürzungsdienst, der kompakte, einfach zu teilende Links erstellt. Verfolgen Sie Link-Analysen und verwalten Sie gekürzte URLs über eine einfache Oberfläche."},"uwrPlanner":{"title":"UWR Planer","description":"Trainingsplanung für UWR-Teams","extendedInfo":"Ein spezialisiertes Tool zur Planung und Organisation von Trainingseinheiten für Unterwasser-Rugby-Teams. Ermöglicht effiziente Teamkoordination, Trainingsstrukturierung und Leistungsverfolgung."},"mealieRecipe":{"title":"Mealie Rezepte","description":"Persönliche Rezeptsammlung","extendedInfo":"Eine umfassende Rezeptdatenbank mit persönlichen Lieblingsrezepten. Organisieren, teilen und entdecken Sie kulinarische Kreationen mit einfacher Navigation und Suchfunktionen."},"immich":{"title":"Immich","description":"Selbst-Gehostete Foto- & Video-Sicherung","extendedInfo":"Immich ist eine leistungsstarke, Open-Source-Lösung für Foto- und Videomanagement, die für das Selbst-Hosting entwickelt wurde. Sie bietet nahtlose Sicherung von mobilen und Desktop-Geräten mit fortschrittlichen Funktionen wie:\\n- KI-gestützte Suche und Organisation\\n- Gesichtserkennungstechnologie\\n- Sichere, private Cloud-Speicherung\\n- Automatische Sicherung und Synchronisation\\n- Unterstützung verschiedener Medientypen\\n- Benutzerfreundliche Oberfläche\\n- Vollständige Datenhoheit und Privatsphäre"},"pairdrop":{"title":"Pairdrop","description":"Dateiübertragungsdienst","extendedInfo":"Pairdrop ist ein einfacher Dateiübertragungsdienst, der es Benutzern ermöglicht, Dateien schnell und sicher zwischen Geräten zu übertragen. Es bietet eine benutzerfreundliche Oberfläche, schnelle Ãbertragungsgeschwindigkeiten und Ende-zu-Ende-Verschlüsselung."},"pdf":{"title":"BentoPDF","description":"Datenschutzfreundliche PDF-Bearbeitungslösung","extendedInfo":"BentoPDF ist ein datenschutzfreundliches, clientbasiertes Tool für die umfassende PDF-Bearbeitung. Die gesamte Verarbeitung erfolgt vollständig im Browser - es werden keine Daten an einen Server gesendet, was maximalen Datenschutz und Sicherheit gewährleistet. Es bietet eine Vielzahl von Funktionen zur Manipulation und Verwaltung von PDF-Dokumenten:\\n- PDF-Dateien zusammenführen und aufteilen\\n- Seiten hinzufügen, entfernen und neu anordnen\\n- Wasserzeichen und Stempel hinzufügen\\n- PDF-Komprimierung und -Optimierung\\n- Konvertierung zwischen verschiedenen Formaten\\n- Passwort-Schutz und Sicherheitseinstellungen\\n- Metadaten bearbeiten und verwalten\\n- Formulare erstellen und bearbeiten\\n\\nDie benutzerfreundliche Weboberfläche macht es einfach, komplexe PDF-Operationen ohne zusätzliche Software durchzuführen, während alle Ihre Dokumente vollständig privat bleiben."},"openwebui":{"title":"OpenWebUI","description":"KI-Assistenten & LLM-Plattform","extendedInfo":"OpenWebUI ist eine umfassende Plattform für den Zugang zu verschiedenen Large Language Models (LLMs) und KI-Assistenten. Die Plattform bietet Zugang zu einer Vielzahl modernster KI-Modelle:\\n\\n**Verfügbare Modelle:**\\n- Phi4: Microsofts kompaktes aber leistungsstarkes Modell\\n- Gemma3: Googles fortschrittliches Sprachmodell\\n- DeepSeek-R1:8B: Spezialisiert auf Reasoning und logisches Denken\\n- Qwen (QwQ): Alibabas vielseitiges Sprachmodell\\n- Llama2-Uncensored: Unzensierte Version von Metas Llama2\\n- Mistral: Europäisches Open-Source-Sprachmodell\\n- Llama3.2: Neueste Version von Metas Llama-Familie\\n- Und viele weitere Modelle\\n\\n**Features:**\\n- Benutzerfreundliche Chat-Oberfläche\\n- Modellvergleich und -auswahl\\n- Anpassbare Systemanweisungen\\n- Gesprächsverlauf und -verwaltung\\n- Lokale Bereitstellung für Datenschutz\\n- API-Zugang für Entwickler\\n\\nPerfekt für Forschung, Entwicklung, kreative Projekte und professionelle KI-Anwendungen."},"vaultwarden":{"title":"Vaultwarden","description":"Passwort-Manager","extendedInfo":"Vaultwarden ist ein inoffizieller Bitwarden-kompatibler Server in Rust geschrieben, der eine leichtgewichtige und effiziente Passwort-Management-Lösung bietet. Es bietet umfassende Funktionen für sichere Passwortspeicherung und -verwaltung:\\n\\n**Hauptfunktionen:**\\n- Ende-zu-Ende-Verschlüsselung für alle gespeicherten Daten\\n- Kompatibel mit allen Bitwarden-Clients (Desktop, Mobile, Browser-Erweiterungen)\\n- Sichere Passwort-Generierung\\n- Zwei-Faktor-Authentifizierung (2FA) Unterstützung\\n- Sicheres Teilen von Passwörtern und Notizen\\n- Organisations- und Sammlungsverwaltung\\n- Passwort-Gesundheitsberichte\\n- Notfallzugriffsfunktionen\\n- Selbst-gehostet für vollständige Datenkontrolle\\n- Geringer Ressourcenverbrauch und hohe Leistung\\n\\n**Sicherheit:**\\n- Zero-Knowledge-Verschlüsselung\\n- Master-Passwort verlässt nie Ihr Gerät\\n- Optionale 2FA mit Authenticator-Apps, YubiKey oder E-Mail\\n- Sichere Tresor-Element-Freigabe\\n\\nPerfekt für Einzelpersonen und Teams, die vollständige Kontrolle über ihre Passwortsicherheit mit Enterprise-Grade-Funktionen wünschen."}}}`),dronesPage:{pageTitle:`Neue EU Drohnen-Regeln`,lastUpdate:`Letzte Aktualisierung:`,resourcesTitle:`Wichtige Links und Ressourcen`,euRegulationTitle:`Offizielle EU-Verordnung`,euRegulationLink:`EU-Durchführungsverordnung 2019/947 (Betrieb unbemannter Luftfahrzeuge)`,licenseTitle:`Drohnenführerschein (A1/A3 Kompetenznachweis)`,licenseDescription:`Den EU-Drohnenführerschein (A1/A3 "Kleiner Drohnenführerschein") können Sie beim Luftfahrt-Bundesamt (LBA) online ablegen:`,licenseLink:`LBA Online-Drohnenführerschein`,licenseCost:`Kosten: ca. 25⬠| Gültigkeit: 5 Jahre | Online-Prüfung mit 40 Fragen`,droniqTitle:`Droniq App - Flugplanung und Genehmigungen`,droniqDescription:`Die Droniq App ist essentiell für die Flugplanung in Deutschland. Sie zeigt Flugverbotszonen, geografische UAS-Gebiete und ermöglicht die Beantragung von Flugfreigaben.`,droniqAndroid:`Android (Google Play Store)`,droniqIOS:`iOS (App Store)`,droniqWarning:`Hinweis: Die App ist leider nicht über F-Droid verfügbar, sondern nur über die offiziellen App-Stores von Google und Apple.`,changesTitle:`Was hat sich geändert?`,changesIntro:`Seit dem 31. Dezember 2020 gelten in der gesamten EU einheitliche Drohnen-Vorschriften gemäà EU-Verordnung 2019/947. Die wichtigsten Ãnderungen:`,changes:[`Neue Drohnen-Klassen (C0-C4): Alle neuen Drohnen müssen ab 2024 mit einer CE-Klassifizierung gekennzeichnet sein`,`EU-weiter Drohnenführerschein: Pflicht für fast alle Drohnen ab 250g (A1/A3) bzw. ab 500g in der Nähe von Menschen (A2)`,`Registrierungspflicht: Piloten müssen sich registrieren (eID erforderlich) - nicht mehr die Drohne selbst`,`Elektronische Kennzeichnung (Remote ID): Für neue Drohnen ab C1-Klasse verpflichtend`,`Geografische Zonen (Geo-Fencing): Automatische Beschränkung in Flugverbotszonen bei neueren Drohnen`,`Selbstgebaute Drohnen: Unterliegen strengeren Regeln und sind meist nur bis 250g in der offenen Kategorie erlaubt`],importantTitle:`Worauf muss man besonders achten?`,important:[`Versicherung ist Pflicht: Eine Drohnen-Haftpflichtversicherung ist in Deutschland gesetzlich vorgeschrieben`,`Kennzeichnungspflicht: Ab 250g muss eine feuerfeste Plakette mit der Registrierungsnummer am Gerät angebracht sein`,`120m Höhenbeschränkung: Maximale Flughöhe von 120m über Grund (auÃer in speziellen Zonen)`,`Sichtflug (VLOS): Die Drohne muss stets in direkter Sichtweite bleiben - FPV-Flüge nur mit Spotter`,`Abstandsregeln beachten: Mindestabstände zu Flughäfen (1,5 km), Menschenansammlungen, Wohngebieten, Naturschutzgebieten`,`Droniq App nutzen: Vor jedem Flug die aktuellen Flugverbotszonen und temporäre Einschränkungen prüfen`,`Datenschutz: Keine Aufnahmen von Personen ohne Einwilligung, keine Verletzung der Privatsphäre`,`Nachtflugverbot: Flüge sind grundsätzlich nur bei Tageslicht erlaubt (Ausnahmen mit spezieller Genehmigung)`,`Alkoholverbot: Fliegen unter Alkohol- oder Drogeneinfluss ist verboten (ab 0,5 Promille Straftat)`,`Ãltere Drohnen (Bestandsdrohnen): Dürfen noch bis Ende 2025 mit alten Regeln geflogen werden, danach gelten Ãbergangsregelungen`],finderTitle:`Drohnen-Klassen-Finder`,weightLabel:`Gewicht der Drohne (in Gramm):`,homemadeLabel:`Selbstgebaute Drohne`,findButton:`Klasse bestimmen`,resultTitle:`Ergebnis:`,droneClass:`Drohnen-Klasse:`,requiredLicense:`Erforderliche Lizenz:`,scenariosTitle:`Anwendungsszenarien`,scenariosIntro:`Die EU-Richtlinien sehen drei Anwendungsszenarien vor:`,scenarios:[`Open - für Drohnen und Flüge mit geringem Risiko`,`Specific - für spezielle Einsätze mit Ausnahmegenehmigungen`,`Certified - für Spezialanwendungen in der Industrie`],droneClassesTitle:`Drohnen-Kategorien`,pilotClassesTitle:`Piloten-Kategorien`,pilotForClasses:`Für Drohnenklassen:`,hintsTitle:`Wichtige Hinweise:`,hints:[`Maximale Flughöhe: 120 Meter`,`Flug nur in Sichtweite (VLOS)`,`Versicherungspflicht beachten`,`Flugbeschränkungen für bestimmte Zonen beachten`,`Privatsphäre respektieren - keine unerlaubten Aufnahmen`]},projects:{title:`Projekte`,subtitle:`Eine Ãbersicht cooler Projekte, an denen ich arbeite`,viewProject:`Weiterlesen`,visitRepo:`Repository besuchen`,techStack:`Tech Stack`,backToProjects:`Zurück zu Projekten`,startedOn:`Gestartet`,availableOn:`Verfügbar für`},externalLinkWarning:{title:`Externe Webseite`,message:`Sie verlassen jetzt pabr.de und werden zu einer externen Webseite weitergeleitet:`,disclaimer:`Wir übernehmen keine Verantwortung für den Inhalt externer Webseiten.`,cancel:`Abbrechen`,continue:`Fortfahren`}},er=`/opt/src/frontend/src/contexts/LanguageContext.tsx`,tr=(0,S.createContext)(void 0),nr=({children:e})=>{let{user:t}
337=Zn(),[n,r]=(0,S.useState)(`en`),[i,a]=(0,S.useState)(Qn),[o,s]=(0,S.useState)(null);return(0,S.useEffect)(()=>{let e=t?._id||null;if(e!==o){if(s(e),t?.preferences?.language)r(t.preferences.language);else if(!t){let e=navigator.language.split(`-`)[0],t=[`de`,`en`].includes(e)?e:`en`;r(t)}}},[t,o]),(0,S.useEffect)(()=>{a(n===`de`?$n:Qn)},[n]),(0,E.jsxDEV)(tr.Provider,{value:{language:n,setLanguage:r,translations:i},children:e},void 0,!1,{fileName:er,lineNumber:443,columnNumber:5},void 0)},rr=()=>{let e=(0,S.useContext)(tr);if(e===void 0)throw Error(`useLanguage must be used within a LanguageProvider`);return e},ir=`/opt/src/frontend/src/contexts/ThemeContext.tsx`,ar=(0,S.createContext)(null),or=()=>{let e=(0,S.useContext)(ar);if(!e)throw Error(`useTheme must be used within ThemeProvider`);return e},sr=({children:e})=>{let{user:t,updateUserPreferences:n}=Zn(),[r,i]=(0,S.useState)(!1),[a,o]=(0,S.useState)(!1),[s,c]=(0,S.useState)(`light`),[l,u]=(0,S.useState)(0),[d,f]=(0,S.useState)(null);(0,S.useEffect)(()=>{if(t?.preferences?.theme)t.preferences.theme===`rainbow`?(o(!0),i(!1),c(`rainbow`)):t.preferences.theme===`dark`?(o(!1),i(!0),c(`dark`)):(o(!1),i(!1),c(`light`));else{let e=window.matchMedia(`(prefers-color-scheme: dark)`).matches;i(e),o(!1),c(e?`dark`:`light`)}t?.preferences?.discoveredRainbow&&u(0);let e=window.matchMedia(`(prefers-color-scheme: dark)`),n=e=>{t?.preferences?.theme||(i(e.matches),c(e.matches?`dark`:`light`))};return e.addListener(n),()=>e.removeListener(n)},[t]),(0,S.useEffect)(()=>{document.documentElement.classList.toggle(`dark`,r&&!a),a&&document.documentElement.classList.remove(`dark`)},[r,a]),(0,S.useEffect)(()=>{if(!a)return;let e=document.createElement(`style`);return e.id=`rainbow-animation-style`,e.textContent=` 338 @keyframes rainbow-background { 339 0% { background-color: hsl(0, 100%, 85%); } 340 20% { background-color: hsl(72, 100%, 85%); } 341 40% { background-color: hsl(144, 100%, 85%); } 342 60% { background-color: hsl(216, 100%, 85%); } 343 80% { background-color: hsl(288, 100%, 85%); } 344 100% { background-color: hsl(360, 100%, 85%); } 345 } 346 @keyframes rainbow-text { 347 0% { color: hsl(0, 100%, 50%); } 348 20% { color: hsl(72, 100%, 50%); } 349 40% { color: hsl(144, 100%, 50%); } 350 60% { color: hsl(216, 100%, 50%); } 351 80% { color: hsl(288, 100%, 50%); } 352 100% { color: hsl(360, 100%, 50%); } 353 } 354 @keyframes rainbow-border { 355 0% { border-color: hsl(0, 100%, 50%); } 356 20% { border-color: hsl(72, 100%, 50%); } 357 40% { border-color: hsl(144, 100%, 50%); } 358 60% { border-color: hsl(216, 100%, 50%); } 359 80% { border-color: hsl(288, 100%, 50%); } 360 100% { border-color: hsl(360, 100%, 50%); } 361 } 362 @keyframes rainbow-pulse { 363 0% { transform: scale(1); } 364 50% { transform: scale(1.1); } 365 100% { transform: scale(1); } 366 } 367 .rainbow-mode { animation: rainbow-background 10s linear infinite; transition: background-color 2s ease; } 368 .rainbow-mode header { 369 background: linear-gradient(45deg, hsl(0,100%,75%), hsl(60,100%,75%), hsl(120,100%,75%), hsl(180,100%,75%), hsl(240,100%,75%), hsl(300,100%,75%)); 370 background-size: 400% 400%; 371 animation: gradient 15s ease infinite; 372 } 373 @keyframes gradient { 374 0% { background-position: 0% 50%; } 375 50% { background-position: 100% 50%; } 376 100% { background-position: 0% 50%; } 377 } 378 .rainbow-mode h1, .rainbow-mode h2, .rainbow-mode h3 { animation: rainbow-text 8s linear infinite; } 379 .rainbow-mode .bg-white, .rainbow-mode .bg-gray-800 { 380 background: rgba(255, 255, 255, 0.7) !important; 381 border: 2px solid transparent; 382 animation: rainbow-border 6s linear infinite; 383 transition: transform 0.3s ease; 384 } 385 .rainbow-mode .bg-white:hover, .rainbow-mode .bg-gray-800:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.1); } 386 .rainbow-mode button:not(.bg-red-500):not(.bg-blue-500) { 387 background: linear-gradient(45deg, hsl(0,100%,70%), hsl(60,100%,70%), hsl(120,100%,70%), hsl(180,100%,70%), hsl(240,100%,70%), hsl(300,100%,70%)) !important; 388 background-size: 400% 400%; 389 animation: gradient 15s ease infinite; 390 color: white !important; 391 text-shadow: 0 1px 2px rgba(0,0,0,0.3); 392 } 393 `,document.head.appendChild(e),()=>{document.getElementById(`rainbow-animation-style`)?.remove()}},[a]);let p=(0,S.useCallback)(()=>{let e=Date.now();if(l===0||d&&e-d>1e4){f(e),u(1);return}let r=l+1;r===5?(o(!0),i(!1),c(`rainbow`),u(0),f(null),t&&n({theme:`rainbow`,discoveredRainbow:!0}).catch(e=>Kn.error(`Failed to update theme preference:`,e))):u(r)},[t,n,l,d]),m=(0,S.useCallback)(async()=>
393{if(a){if(o(!1),i(!1),c(`light`),t)try{await n({theme:`light`})}catch(e){Kn.error(`Failed to update theme preference:`,e)}return}let e=r?`light`:`dark`;if(i(e=>!e),c(e),t)try{await n({theme:e})}catch(e){Kn.error(`Failed to update theme preference:`,e)}},[r,a,t,n]),h=(0,S.useCallback)(async e=>{if(c(e),o(e===`rainbow`),i(e===`dark`),t)try{await n({theme:e})}catch(e){Kn.error(`Failed to update theme preference:`,e)}},[t,n]);return(0,E.jsxDEV)(ar.Provider,{value:{isDarkMode:r,isRainbowMode:a,currentTheme:s,toggleTheme:m,handleThemeChange:h,handleThemeButtonClick:p},children:e},void 0,!1,{fileName:ir,lineNumber:201,columnNumber:5},void 0)},cr=`/opt/src/frontend/src/contexts/BlogContext.tsx`,lr=(0,S.createContext)(null),ur=()=>{let e=(0,S.useContext)(lr);if(!e)throw Error(`useBlog must be used within BlogProvider`);return e},dr=e=>e?.map(e=>({filename:e.filename,path:e.path,mimetype:e.mimetype,size:e.size,createdAt:e.createdAt??new Date().toISOString()})),fr=({children:e})=>{let{authenticatedRequest:t}=Zn(),n=(0,S.useRef)(null),r=(0,S.useRef)(new Map),i=()=>{n.current=null,r.current.clear()};return(0,E.jsxDEV)(lr.Provider,{value:{listPosts:async()=>{if(n.current)return n.current;let e=await t(`/api/blog/posts`);if(!e.ok)throw Error(`Failed to fetch posts`);let i=await e.json();return n.current=i,i.forEach(e=>r.current.set(e._id,e)),i},getPost:async e=>{if(r.current.has(e))return r.current.get(e);let n=await t(`/api/blog/posts/${e}`);if(!n.ok)throw Error(`Failed to fetch post`);let i=await n.json();return r.current.set(i._id,i),i},createPost:async e=>{let n=await t(`/api/blog/posts`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...e,attachments:dr(e.attachments)})});if(!n.ok)throw Error(`Failed to create post`);let r=await n.json();return i(),r},updatePost:async(e,n)=>{let r=await t(`/api/blog/posts/${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...n,attachments:dr(n.attachments)})});if(!r.ok)throw Error(`Failed to update post`);let a=await r.json();return i(),a},deletePost:async e=>{if(!(await t(`/api/blog/posts/${e}`,{method:`DELETE`})).ok)throw Error(`Failed to delete post`);i()},uploadImage:async e=>{let n=new FormData;n.append(`image`,e);let r=await t(`/api/blog/upload-image`,{method:`POST`,body:n});if(!r.ok)throw Error(`Failed to upload image`);return(await r.json()).imageUrl},uploadAttachments:async e=>{let n=new FormData;e.forEach(e=>n.append(`attachments`,e));let r=await t(`/api/blog/upload-attachments`,{method:`POST`,body:n});if(!r.ok)throw Error(`Failed to upload attachments`);return(await r.json()).attachments},invalidate:i},children:e},void 0,!1,{fileName:cr,lineNumber:142,columnNumber:5},void 0)},pr={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},mr=S.createContext&&S.createContext(pr),hr=[`attr`,`size`,`title`];function gr(e,t){if(e==null)return{};var n,r,i=_r(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function _r(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function vr(){return vr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vr.apply(null,arguments)}function yr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function br(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?yr(Object(n),!0).forEach(function(t){xr(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):yr(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function xr(e,t,n){return(t=Sr(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sr(e){var t=Cr(e,`string`);return typeof t==`symbol`?t:t+``}function Cr(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function wr(e){return e&&e.map((e,t)=>S.createElement(e.tag,br({key:t},e.attr),wr(e.child)))}function D(e){return t=>S.createElement(Tr,vr({attr:br({},e.attr)},t),wr(e.child))}function Tr(e){var t=t=>{var n=e.attr,r=e.size,i=e.title,a=gr(e,hr),o=r||t.size||`1em`,s;return t.className&&(s=t.className),e.className&&(s=(s?s+` `:``)+e.className),S.createElement(`svg`,vr({stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`},t.attr,n,a,{className:s,style:br(br({color:e.color||t.color},t.style),e.style),height:o,width:o,xmlns:`http://www.w3.org/2000/svg`}),i&&S.createElement(`title`,null,i),e.children)};return mr===void 0?t(pr):S.createElement(mr.Consumer,null,e=>t(e))}function Er(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2
39310.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z`},child:[]}]})(e)}function Dr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z`},child:[]}]})(e)}function Or(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z`},child:[]}]})(e)}function kr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z`},child:[]}]})(e)}function Ar(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z`},child:[]}]})(e)}function jr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M634.91 154.88C457.74-8.99 182.19-8.93 5.09 154.88c-6.66 6.16-6.79 16.59-.35 22.98l34.24 33.97c6.14 6.1 16.02 6.23 22.4.38 145.92-133.68 371.3-133.71 517.25 0 6.38 5.85 16.26 5.71 22.4-.38l34.24-33.97c6.43-6.39 6.3-16.82-.36-22.98zM320 352c-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64-28.65-64-64-64zm202.67-83.59c-115.26-101.93-290.21-101.82-405.34 0-6.9 6.1-7.12 16.69-.57 23.15l34.44 33.99c6 5.92 15.66 6.32 22.05.8 83.95-72.57 209.74-72.41 293.49 0 6.39 5.52 16.05 5.13 22.05-.8l34.44-33.99c6.56-6.46 6.33-17.06-.56-23.15z`},child:[]}]})(e)}function Mr(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M336.2 64H47.8C21.4 64 0 85.4 0 111.8v288.4C0 426.6 21.4 448 47.8 448h288.4c26.4 0 47.8-21.4 47.8-47.8V111.8c0-26.4-21.4-47.8-47.8-47.8zm189.4 37.7L416 177.3v157.4l109.6 75.5c21.2 14.6 50.4-.3 50.4-25.8V127.5c0-25.4-29.1-40.4-50.4-25.8z`},child:[]}]})(e)}function Nr(e){return D({tag:`svg`,attr:{viewBox:`0 0 416 512`},child:[{tag:`path`,attr:{d:`M207.9 15.2c.8 4.7 16.1 94.5 16.1 128.8 0 52.3-27.8 89.6-68.9 104.6L168 486.7c.7 13.7-10.2 25.3-24 25.3H80c-13.7 0-24.7-11.5-24-25.3l12.9-238.1C27.7 233.6 0 196.2 0 144 0 109.6 15.3 19.9 16.1 15.2 19.3-5.1 61.4-5.4 64 16.3v141.2c1.3 3.4 15.1 3.2 16 0 1.4-25.3 7.9-139.2 8-141.8 3.3-20.8 44.7-20.8 47.9 0 .2 2.7 6.6 116.5 8 141.8.9 3.2 14.8 3.4 16 0V16.3c2.6-21.6 44.8-21.4 48-1.1zm119.2 285.7l-15 185.1c-1.2 14 9.9 26 23.9 26h56c13.3 0 24-10.7 24-24V24c0-13.2-10.7-24-24-24-82.5 0-221.4 178.5-64.9 300.9z`},child:[]}]})(e)}function Pr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm448 0c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm32 32h-64c-17.6 0-33.5 7.1-45.1 18.6 40.3 22.1 68.9 62 75.1 109.4h66c17.7 0 32-14.3 32-32v-32c0-35.3-28.7-64-64-64zm-256 0c61.9 0 112-50.1 112-112S381.9 32 320 32 208 82.1 208 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zm-223.7-13.4C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z`},child:[]}]})(e)}function Fr(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z`},child:[]}]})(e)}function Ir(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M630.6 364.9l-90.3-90.2c-12-12-28.3-18.7-45.3-18.7h-79.3c-17.7 0-32 14.3-32 32v79.2c0 17 6.7 33.2 18.7 45.2l90.3 90.2c12.5 12.5 32.8 12.5 45.3 0l92.5-92.5c12.6-12.5 12.6-32.7.1-45.2zm-182.8-21c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24c0 13.2-10.7 24-24 24zm-223.8-88c70.7 0 128-57.3 128-128C352 57.3 294.7 0 224 0S96 57.3 96 128c0 70.6 57.3 127.9 128 127.9zm127.8 111.2V294c-12.2-3.6-24.9-6.2-38.2-6.2h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 287.9 0 348.1 0 422.3v41.6c0 26.5 21.5 48 48 48h352c15.5 0 29.1-7.5 37.9-18.9l-58-58c-18.1-18.1-28.1-42.2-28.1-67.9z`},child:[]}]})(e)}function Lr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M622.3 271.1l-115.2-45c-4.1-1.6-12.6-3.7-22.2 0l-115.2 45c-10.7 4.2-17.7 14-17.7 24.9 0 111.
3936 68.7 188.8 132.9 213.9 9.6 3.7 18 1.6 22.2 0C558.4 489.9 640 420.5 640 296c0-10.9-7-20.7-17.7-24.9zM496 462.4V273.3l95.5 37.3c-5.6 87.1-60.9 135.4-95.5 151.8zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm96 40c0-2.5.8-4.8 1.1-7.2-2.5-.1-4.9-.8-7.5-.8h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c6.8 0 13.3-1.5 19.2-4-54-42.9-99.2-116.7-99.2-212z`},child:[]}]})(e)}function Rr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M224 256A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm96 64a63.08 63.08 0 0 1 8.1-30.5c-4.8-.5-9.5-1.5-14.5-1.5h-16.7a174.08 174.08 0 0 1-145.8 0h-16.7A134.43 134.43 0 0 0 0 422.4V464a48 48 0 0 0 48 48h280.9a63.54 63.54 0 0 1-8.9-32zm288-32h-32v-80a80 80 0 0 0-160 0v80h-32a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V320a32 32 0 0 0-32-32zM496 432a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm32-144h-64v-80a32 32 0 0 1 64 0z`},child:[]}]})(e)}function zr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M192 256c61.9 0 112-50.1 112-112S253.9 32 192 32 80 82.1 80 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C51.6 288 0 339.6 0 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zM480 256c53 0 96-43 96-96s-43-96-96-96-96 43-96 96 43 96 96 96zm48 32h-3.8c-13.9 4.8-28.6 8-44.2 8s-30.3-3.2-44.2-8H432c-20.4 0-39.2 5.9-55.7 15.4 24.4 26.3 39.7 61.2 39.7 99.8v38.4c0 2.2-.5 4.3-.6 6.4H592c2
3936.5 0 48-21.5 48-48 0-61.9-50.1-112-112-112z`},child:[]}]})(e)}function Br(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32z`},child:[]}]})(e)}function Vr(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M448 96v256c0 51.815-61.624 96-130.022 96l62.98 49.721C386.905 502.417 383.562 512 376 512H72c-7.578 0-10.892-9.594-4.957-14.279L130.022 448C61.82 448 0 403.954 0 352V96C0 42.981 64 0 128 0h192c65 0 128 42.981 128 96zm-48 136V120c0-13.255-10.745-24-24-24H72c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24zm-176 64c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56z`},child:[]}]})(e)}function Hr(e){return D({tag:`svg`,attr:{viewBox:`0 0 352 512`},child:[{tag:`path`,attr:{d:`M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z`},child:[]}]})(e)}function Ur(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M128 160h320v192H128V160zm400 96c0 26.51 21.49 48 48 48v96c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-96c26.51 0 48-21.49 48-48s-21.49-48-48-48v-96c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v96c-26.51 0-48 21.49-48 48zm-48-104c0-13.255-10.745-24-24-24H120c-13.255 0-24 10.745-24 24v208c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V152z`},child:[]}]})(e)}function Wr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M496.2 296.5C527.7 218.7 512 126.2 449 63.1 365.1-21 229-21 145.1 63.1l-56 56.1 211.5 211.5c46.1-62.1 131.5-77.4 195.6-34.2zm-217.9 79.7L57.9 155.9c-27.3 45.3-21.7 105 17.3 144.1l34.5 34.6L6.7 424c-8.6 7.5-9.1 20.7-1 28.8l53.4 53.5c8 8.1 21.2 7.6 28.7-1L177.1 402l35.7 35.7c19.7 19.7 44.6 30.5 70.3 33.3-7.1-17-11-35.6-11-55.1-.1-13.8 2.5-27 6.2-39.7zM416 320c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96z`},child:[]}]})(e)}function Gr(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M189.61 310.58c3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c16.02-14.77 34.5-22.58 53.46-22.58h16.3c18.96 0 37.45 7.81 53.46 22.58 3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c14.86-13.71 31.88-21.12 49.39-22.16l-112.84-80.6 18-12.86c3.64-2.58 8.28-3.52 12.62-2.61l100.35 21.53c25.91 5.53 51.44-10.97 57-36.88 5.55-25.92-10.95-51.44-36.88-57L437.68 98.47c-30.73-6.58-63.02.12-88.56 18.38l-80.02 57.17c-10.38 7.39-19.36 16.44-26.72 26.94L173.75 299c5.47 3.23 10.82 6.93 15.86 11.58zM624 352h-16c-26.04 0-45.8-8.42-56.09-17.9-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C461.8 343.58 442.04 352 416 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C269.8 343.58 250.04 352 224 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C77.8 343.58 58.04 352 32 352H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-512-96c44.18 0 80-35.82 80-80s-35.82-80-80-80-80 35.82-80 80 35.82 80 80 80z`},child:[]}]})(e)}function Kr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z`},child:[]}]})(e)}function qr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z`},child:[]}]})(e)}function Jr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M497 273L329 441c-15 15-41 4.5-41-17v-96H152c-13.3 0-24-10.7-24-24v-96c0-13.3 10.7-24 24-24h136V88c0-21.4 25.9-32 41-17l168 168c9.3 9.4 9.3 24.6 0 34zM192 436v-40c0-6.6-5.4-12-12-12H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h84c6.6 0 12-5.4 12-12V76c0-6.
3936-5.4-12-12-12H96c-53 0-96 43-96 96v192c0 53 43 96 96 96h84c6.6 0 12-5.4 12-12z`},child:[]}]})(e)}function Yr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M416 448h-84c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h84c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32h-84c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h84c53 0 96 43 96 96v192c0 53-43 96-96 96zm-47-201L201 79c-15-15-41-4.5-41 17v96H24c-13.3 0-24 10.7-24 24v96c0 13.3 10.7 24 24 24h136v96c0 21.5 26 32 41 17l168-168c9.3-9.4 9.3-24.6 0-34z`},child:[]}]})(e)}function Xr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M466.5 83.7l-192-80a48.15 48.15 0 0 0-36.9 0l-192 80C27.7 91.1 16 108.6 16 128c0 198.5 114.5 335.7 221.5 380.3 11.8 4.9 25.1 4.9 36.9 0C360.1 472.6 496 349.3 496 128c0-19.4-11.7-36.9-29.5-44.3zM256.1 446.3l-.1-381 175.9 73.3c-3.3 151.4-82.1 261.1-175.8 307.7z`},child:[]}]})(e)}function Zr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z`},child:[]}]})(e)}function Qr(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M480 160H32c-17.673 0-32-14.327-32-32V64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24z`},child:[]}]})(e)}function $r(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z`},child:[]}]})(e)}function ei(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z`},child:[]}]})(e)}function ti(e){return D({tag:`svg`,attr:{viewBox:`0 0 416 512`},child:[{tag:`path`,attr:{d:`M272 96c26.51 0 48-21.49 48-48S298.51 0 272 0s-48 21.49-48 48 21.49 48 48 48zM113.69 317.47l-14.8 34.52H32c-17.67 0-32 14.33-32 32s14.33 32 32 32h77.45c19.25 0 36.58-11.44 44.11-29.09l8.79-20.52-10.67-6.3c-17.32-10.23-30.06-25.37-37.99-42.61zM384 223.99h-44.03l-26.06-53.25c-12.5-25.55-35.45-44.23-61.78-50.94l-71.08-21.14c-28.3-6.8-57.77-.55-80.84 17.14l-39.67 30.41c-14.03 10.75-16.69 30.83-5.92 44.86s30.84 16.66 44.86 5.92l39.69-30.41c7.67-5.89 17.44-8 25.27-6.14l14.7 4.37-37.46 87.39c-12.62 29.48-1.31 64.01 26.3 80.31l84.98 50.17-27.47 87.73c-5.28 16.86 4.11 34.81 20.97 40.09 3.19 1 6.41 1.48 9.58 1.48 13.61 0 26.23-8.77 30.52-22.45l31.64-101.06c5.91-20.77-2.89-43.08-21.64-54.39l-61.24-36.14 31.31-78.28 20.27 41.43c8 16.34 24.92 26.89 43.11 26.89H384c17.67 0 32-14.33 32-32s-14.33-31.99-32-31.99z`},child:[]}]})(e)}function ni(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M505.12019,19.09375c-1.18945-5.53125-6.65819-11-12.207-12.1875C460.716,0,435.507,0,410.40747,0,307.17523,0,245.26909,55.20312,199.05238,128H94.83772c-16.34763.01562-35.55658,11.875-42.88664,26.48438L2.51562,253.29688A28.4,28.4,0,0,0,0,264a24.00867,24.00867,0,0,0,24.00582,24H127.81618l-22.47457,22.46875c-11.36521,11.36133-12.99607,32.25781,0,45.25L156.24582,406.625c11.15623,11.1875,32.15619,13.15625,45.27726,0l22.47457-22.46875V488a24.00867,24.00867,0,0,0,24.00581,24,28.55934,28.55934,0,0,0,10.707-2.51562l98.72834-49.39063c14.62888-7.29687,26.50776-26.5,26.50776-42.85937V312.79688c72.59753-46.3125,128.03493-108.40626,128.03493-211.09376C512.07526,76.5,512.07526,51.29688,505.12019,19.09375ZM384.04033,168A40,40,0,1,1,424.05,128,40.02322,40.02322,0,0,1,384.04033,168Z`},child:[]}]})(e)}function ri(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M32,224H64V416H32A31.96166,31.96166,0,0,1,0,384V256A31.96166,31.96166,0,0,1,32,224Zm512-48V448a64.06328,64.06328,0,0,1-64,64H160a64.06328,64.06328,0,0,1-64-64V176a79.974,79.974,0,0,1,80-80H288V32a32,32,0,0,1,64,0V96H464A79.974,79.974,0,0,1,544,176ZM264,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,264,256Zm-8,128H192v32h64Zm96,0H288v32h64ZM456,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,456,256Zm-8,128H384v32h64ZM640,256V384a31.96166,31.96166,0,0,1-32,32H576V224h32A31.96166,31.96166,0,0,1,640,256Z`},child:[]}]})(e)}function ii(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M519.442 288.651c-41.519 0-59.5 31.593-82.058 31.593C377.409 320.244 432 144 432 144s-196.288 80-196.288-3.297c0-35.827 36.288-46.25 36.288-85.985C272 19.216 243.885 0 210.539 0c-34.654 0-66.366 18.891-66.366 56.346 0 41.364 31.711 59.277 31.711 81.75C175.885 207.719 0 166.758 0 166.758v333.237s178.635 41.047 178.635-28.662c0-22.473-40-40.107-40-81.471 0-37.456 29.25-56.346 63.577-56.346 33.673 0 61.788 19.216 61.788 54.717 0 39.735-36.288 50.158-36.288 85.985 0 60.803 129.675 25.73 181.23 25.73 0 0-34.725-120.101 25.827-120.101 35.962 0 46.423 36.152 86.308 36.152C556.712 416 576 387.99 576 354.443c0-34.199-18.962-65.792-56.558-65.792z`},child:[]}]})(e)}function ai(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M448 192V77.25c0-8.49-3.37-16.62-9.37-22.63L393.37 9.37c-6-6-14.14-9.37-22.63-9.37H96C78.33 0 64 14.33 64 32v160c-35.35 0-64 28.65-64 64v112c0 8.84 7.16 16 16 16h48v96c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-96h48c8.84 0 16-7.16 16-16V256c0-35.35-28.65-64-64-64zm-64 256H128v-96h256v96zm0-224H128V64h192v48c0 8.84 7.16 16 16 16h48v96zm48 72c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z`},child:[]}]})(e)}function oi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272l-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9 0 42z`},child:[]}]})(e)}function si(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M480 192H365.71L260.61 8.06A16.014 16.014 0 0 0 246.71 0h-65.5c-10.63 0-18.3 10.17-15.38 20.39L214.86 192H112l-43.2-57.6c-3.02-4.03-7.77-6.4-12.8-6.4H16.01C5.6 128-2.04 137.78.49 147.88L32 256 .49 364.12C-2.04 374.22 5.6 384 16.01 384H56c5.04 0 9.78-2.37 12.8-6.4L112 320h102.86l-49.03 171.6c-2.92 10.22 4.75 20.4 15.38 20.4h65.5c5.74 0 11.04-3.08 13.89-8.06L365.71 320H480c35.35 0 96-28.65 96-64s-60.65-64-96-64z`},child:[]}]})(e)}function ci(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z`},child:[]}]})(e)}function li(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M109.46 244.04l134.58-134.56-44.12-44.12-61.
39368 61.68a7.919 7.919 0 0 1-11.21 0l-11.21-11.21c-3.1-3.1-3.1-8.12 0-11.21l61.68-61.68-33.64-33.65C131.47-3.1 111.39-3.1 99 9.29L9.29 99c-12.38 12.39-12.39 32.47 0 44.86l100.17 100.18zm388.47-116.8c18.76-18.76 18.75-49.17 0-67.93l-45.25-45.25c-18.76-18.76-49.18-18.76-67.95 0l-46.02 46.01 113.2 113.2 46.02-46.03zM316.08 82.71l-297 296.96L.32 487.11c-2.53 14.49 10.09 27.11 24.59 24.56l107.45-18.84L429.28 195.9 316.08 82.71zm186.63 285.43l-33.64-33.64-61.68 61.68c-3.1 3.1-8.12 3.1-11.21 0l-11.21-11.21c-3.09-3.1-3.09-8.12 0-11.21l61.68-61.68-44.14-44.14L267.93 402.5l100.21 100.2c12.39 12.39 32.47 12.39 44.86 0l89.71-89.7c12.39-12.39 12.39-32.47 0-44.86z`},child:[]}]})(e)}function ui(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z`},child:[]}]})(e)}function di(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M640 264v-16c0-8.84-7.16-16-16-16H344v-40h72c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H224c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h72v40H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h104v40H64c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h304v40h-56c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h104c8.84 0 16-7.16 16-16zM256 128V64h128v64H256zm-64 320H96v-64h96v64zm352 0h-96v-64h96v64z`},child:[]}]})(e)}function fi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M470.38 1.51L150.41 96A32 32 0 0 0 128 126.51v261.41A139 139 0 0 0 96 384c-53 0-96 28.66-96 64s43 64 96 64 96-28.66 96-64V214.32l256-75v184.61a138.4 138.4 0 0 0-32-3.93c-53 0-96 28.66-96 64s43 64 96 64 96-28.65 96-64V32a32 32 0 0 0-41.62-30.49z`},child:[]}]})(e)}function pi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z`},child:[]}]})(e)}function mi(e){return D({tag:`svg`,attr:{viewBox:`0 0 320 512`},child:[{tag:`path`,attr:{d:`M272 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h224c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm112-108c0 6.6-5.4 12-12 12H60c-6.6 0-12-5.4-12-12V60c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v312z`},child:[]}]})(e)}function hi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M80 368H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm0-320H16A16 16 0 0 0 0 64v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16zm0 160H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm416 176H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z`},child:[]}]})(e)}function gi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.8
39306l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z`},child:[]}]})(e)}function _i(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M152.1 236.2c-3.5-12.1-7.8-33.2-7.8-33.2h-.5s-4.3 21.1-7.8 33.2l-11.1 37.5H163zM616 96H336v320h280c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm-24 120c0 6.6-5.4 12-12 12h-11.4c-6.9 23.6-21.7 47.4-42.7 69.9 8.4 6.4 17.1 12.5 26.1 18 5.5 3.4 7.3 10.5 4.1 16.2l-7.9 13.9c-3.4 5.9-10.9 7.8-16.7 4.3-12.6-7.8-24.5-16.1-35.4-24.9-10.9 8.7-22.7 17.1-35.4 24.9-5.8 3.5-13.3 1.6-16.7-4.3l-7.9-13.9c-3.2-5.6-1.4-12.8 4.2-16.2 9.3-5.7 18-11.7 26.1-18-7.9-8.4-14.9-17-21-25.7-4-5.7-2.2-13.6 3.7-17.1l6.5-3.9 7.3-4.3c5.4-3.2 12.4-1.7 16 3.4 5 7 10.8 14 17.4 20.9 13.5-14.2 23.8-28.9 30-43.2H412c-6.6 0-12-5.4-12-12v-16c0-6.6 5.4-12 12-12h64v-16c0-6.6 5.4-12 12-12h16c6.6 0 12 5.4 12 12v16h64c6.6 0 12 5.4 12 12zM0 120v272c0 13.3 10.7 24 24 24h280V96H24c-13.3 0-24 10.7-24 24zm58.9 216.1L116.4 167c1.7-4.9 6.2-8.1 11.4-8.1h32.5c5.1 0 9.7 3.3 11.4 8.1l57.5 169.1c2.6 7.8-3.1 15.9-11.4 15.9h-22.9a12 12 0 0 1-11.5-8.6l-9.4-31.9h-60.2l-9.1 31.8c-1.5 5.1-6.2 8.7-11.5 8.7H70.3c-8.2 0-14-8.1-11.4-15.9z`},child:[]}]})(e)}function vi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M512 176.001C512 273.203 433.202 352 336 352c-11.22 0-22.19-1.062-32.827-3.069l-24.012 27.014A23.999 23.999 0 0 1 261.223 384H224v40c0 13.255-10.745 24-24 24h-40v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-78.059c0-6.365 2.529-12.47 7.029-16.971l161.802-161.802C163.108 213.814 160 195.271 160 176 160 78.798 238.797.001 335.999 0 433.488-.001 512 78.511 512 176.001zM336 128c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z`},child:[]}]})(e)}function yi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z`},child:[]}]})(e)}function bi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M475.115 163.781L336 252.309v-68.28c0-18.916-20.931-30.399-36.885-20.248L160 252.309V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56v400c0 13.255 10.745 24 24 24h464c13.255 0 24-10.745 24-24V184.029c0-18.917-20.931-30.399-36.885-20.248z`},child:[]}]})(e)}function xi(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v208c0 44.112 35.888 80 80 80h336zm96-80V80c0-26.51-21.49-48-48-48H144c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h384c26.51 0 48-21.49 48-48zM256 128c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-96 144l55.515-55.515c4.686-4.686 12.284-4.686 16.971 0L272 256l135.515-135.515c4.686-4.686 12.284-4.686 16.971 0L512 208v112H160v-48z`},child:[]}]})(e)}function Si(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z`},child:[]}]})(e)}function Ci(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M320.2 243.8l-49.7 99.4c-6 12.1-23.4 11.7-28.9-.6l-56.9-126.3-30 71.7H60.6l182.5 186.5c7.1 7.3 18.6 7.3 25.7 0L451.4 288H342.3l-22.1-44.2zM473.7 73.9l-2.4-2.5c-51.5-52.6-135.8-52.6-187.4 0L256 100l-27.9-28.5c-51.5-52.7-135.9-52.7-187.4 0l-2.4 2.4C-10.4 123.7-12.5 203 31 256h102.4l35.9-86.2c5.4-12.9 23.6-13.2 29.4-.4l58.2 129.3 49-97.9c5.9-11.8 22.7-11.8 28.6 0l27.6 55.2H481c43.5-53 41.4-132.3-7.3-182.1z`},child:[]}]})(e)}function wi(e){return D({tag:`svg`,attr:{viewBox:`0 0 496 512`},child:[{tag:`path`,attr:{d:`M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152h177zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64zm324.7-96c-28.6-67.9-86.5-120.4-158-141.6 24.4 33.8 41.2 84.7 50 141.6h108zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6zM487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64zM120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64zm39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152h-177zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6zM19.3 352c28.6 67.9 86.5 120.4 158 141.6-24.4-33.8-41.2-84.7-50-141.6h-108z`},child:[]}]})(e)}function Ti(e){return D({tag:`svg`,attr:{viewBox:`0 0 496 512`},child:[{tag:`path`,attr:{d:`M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm200 248c0 22.5-3.9 44.2-10.8 64.4h-20.3c-4.3 0-8.4-1.7-11.4-4.8l-32-32.6c-4.5-4.6-4.5-12.1.1-16.7l12.5-12.5v-8.7c0-3-1.2-5.9-3.3-8l-9.4-9.4c-2.1-2.1-5-3.3-8-3.3h-16c-6.2 0-11.3-5.1-11.3-11.3 0-3 1.2-5.9 3.3-8l9.4-9.4c2.1-2.1 5-3.3 8-3.3h32c6.2 0 11.3-5.1 11.3-11.3v-9.4c0-6.2-5.1-11.3-11.3-11.3h-36.7c-8.8 0-16 7.2-16 16v4.5c0 6.9-4.4 13-10.9 15.2l-31.6 10.5c-3.3 1.1-5.5 4.1-5.5 7.6v2.2c0 4.4
393-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8s-3.6-8-8-8H247c-3 0-5.8 1.7-7.2 4.4l-9.4 18.7c-2.7 5.4-8.2 8.8-14.3 8.8H194c-8.8 0-16-7.2-16-16V199c0-4.2 1.7-8.3 4.7-11.3l20.1-20.1c4.6-4.6 7.2-10.9 7.2-17.5 0-3.4 2.2-6.5 5.5-7.6l40-13.3c1.7-.6 3.2-1.5 4.4-2.7l26.8-26.8c2.1-2.1 3.3-5 3.3-8 0-6.2-5.1-11.3-11.3-11.3H258l-16 16v8c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-20c0-2.5 1.2-4.9 3.2-6.4l28.9-21.7c1.9-.1 3.8-.3 5.7-.3C358.3 56 448 145.7 448 256zM130.1 149.1c0-3 1.2-5.9 3.3-8l25.4-25.4c2.1-2.1 5-3.3 8-3.3 6.2 0 11.3 5.1 11.3 11.3v16c0 3-1.2 5.9-3.3 8l-9.4 9.4c-2.1 2.1-5 3.3-8 3.3h-16c-6.2 0-11.3-5.1-11.3-11.3zm128 306.4v-7.1c0-8.8-7.2-16-16-16h-20.2c-10.8 0-26.7-5.3-35.4-11.8l-22.2-16.7c-11.5-8.6-18.2-22.1-18.2-36.4v-23.9c0-16 8.4-30.8 22.1-39l42.9-25.7c7.1-4.2 15.2-6.5 23.4-6.5h31.2c10.9 0 21.4 3.9 29.6 10.9l43.2 37.1h18.3c8.5 0 16.6 3.4 22.6 9.4l17.3 17.3c3.4 3.4 8.1 5.3 12.9 5.3H423c-32.4 58.9-93.8 99.5-164.9 103.1z`},child:[]}]})(e)}function Ei(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M186.1.09C81.01 3.24 0 94.92 0 200.05v263.92c0 14.26 17.23 21.39 27.31 11.31l24.92-18.53c6.66-4.95 16-3.99 21.51 2.21l42.95 48.35c6.25 6.25 16.38 6.25 22.63 0l40.72-45.85c6.37-7.17 17.56-7.17 23.92 0l40.72 45.85c6.25 6.25 16.38 6.25 22.63 0l42.95-48.35c5.51-6.2 14.85-7.17 21.51-2.21l24.92 18.53c10.08 10.08 27.31 2.94 27.31-11.31V192C384 84 294.83-3.17 186.1.09zM128 224c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128 0c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z`},child:[]}]})(e)}function Di(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M504.971 199.362l-22.627-22.627c-9.373-9.373-24.569-9.373-33.941 0l-5.657 5.657L329.608 69.255l5.657-5.657c9.373-9.373 9.373-24.569 0-33.941L312.638 7.029c-9.373-9.373-24.569-9.373-33.941 0L154.246 131.48c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l5.657-5.657 39.598 39.598-81.04 81.04-5.657-5.657c-12.497-12.497-32.758-12.497-45.255 0L9.373 412.118c-12.497 12.497-12.497 32.758 0 45.255l45.255 45.255c12.497 12.497 32.758 12.497 45.255 0l114.745-114.745c12.497-12.497 12.497-32.758 0-45.255l-5.657-5.657 81.04-81.04 39.598 39.598-5.657 5.657c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l124.451-124.451c9.372-9.372 9.372-24.568 0-33.941z`},child:[]}]})(e)}function Oi(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M480.07 96H160a160 160 0 1 0 114.24 272h91.52A160 160 0 1 0 480.07 96zM248 268a12 12 0 0 1-12 12h-52v52a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-52H84a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h52v-52a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12v52h52a12 12 0 0 1 12 12zm216 76a40 40 0 1 1 40-40 40 40 0 0 1-40 40zm64-96a40 40 0 1 1 40-40 40 40 0 0 1-40 40z`},child:[]}]})(e)}function ki(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M572.694 292.093L500.27 416.248A63.997 63.997 0 0 1 444.989 448H45.025c-18.523 0-30.064-20.093-20.731-36.093l72.424-124.155A64 64 0 0 1 152 256h399.964c18.523 0 30.064 20.093 20.73 36.093zM152 224h328v-48c0-26.51-21.49-48-48-48H272l-64-64H48C21.49 64 0 85.49 0 112v278.046l69.077-118.418C86.214 242.25 117.989 224 152 224z`},child:[]}]})(e)}function Ai(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M488 64h-8v20c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V64H96v20c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12V64h-8C10.7 64 0 74.7 0 88v336c0 13.3 10.7 24 24 24h8v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h320v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h8c13.3 0 24-10.7 24-24V88c0-13.3-10.7-24-24-24zM96 372c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm272 208c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm0-168c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm112 152c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40z`},child:[]}]})(e)}function ji(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M181.9 256.1c-5-16-4.9-46.9-2-46.9 8.4 0 7.6 36.9 2 46.9zm-1.7 47.2c-7.7 20.2-17.3 43.3-28.4 62.7 18.3-7 39-17.2 62.9-21.9-12.7-9.6-24.9-23.4-34.5-40.8zM86.1 428.1c0 .8 13.2-5.4 34.9-40.2-6.7 6.3-29.1 24.5-34.9 40.2zM248 160h136v328c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V24C0 10.7 10.7 0 24 0h200v136c0 13.2 10.8 24 24 24zm-8 171.8c-20-12.2-33.3-29-42.7-53.8 4.5-18.5 11.6-46.6 6.2-64.2-4.7-29.4-42.4-26.5-47.8-6.8-5 18.3-.4 44.1 8.1 77-11.6 27.6-28.7 64.6-40.8 85.8-.1 0-.1.1-.2.1-27.1 13.9-73.6 44.5-54.5 68 5.6 6.9 16 10 21.5 10 17.9 0 35.7-18 61.1-61.8 25.8-8.5 54.1-19.1 79-23.2 21.7 11.8 47.1 19.5 64 19.5 29.2 0 3
3931.2-32 19.7-43.4-13.9-13.6-54.3-9.7-73.6-7.2zM377 105L279 7c-4.5-4.5-10.6-7-17-7h-6v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-74.1 255.3c4.1-2.7-2.5-11.9-42.8-9 37.1 15.8 42.8 9 42.8 9z`},child:[]}]})(e)}function Mi(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 236c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-72v8c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm96-114.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z`},child:[]}]})(e)}function Ni(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M432,320H400a16,16,0,0,0-16,16V448H64V128H208a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V336A16,16,0,0,0,432,320ZM488,0h-128c-21.37,0-32.05,25.91-17,41l35.73,35.73L135,320.37a24,24,0,0,0,0,34L157.67,377a24,24,0,0,0,34,0L435.28,133.32,471,169c15,15,41,4.5,41-17V24A24,24,0,0,0,488,0Z`},child:[]}]})(e)}function Pi(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z`},child:[]}]})(e)}function Fi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z`},child:[]}]})(e)}function Ii(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M18.32 255.78L192 223.96l-91.28 68.69c-10.08 10.08-2.94 27.31 11.31 27.31h222.7c-9.44-26.4-14.73-54.47-14.73-83.38v-42.27l-119.73-87.6c-23.82-15.88-55.29-14.01-77.06 4.59L5.81 227.64c-12.38 10.33-3.45 30.42 12.51 28.14zm556.87 34.1l-100.66-50.31A47.992 47.992 0 0 1 448 196.65v-36.69h64l28.09 22.63c6 6 14.14 9.37 22.63 9.37h30.97a32 32 0 0 0 28.62-17.69l14.31-28.62a32.005 32.005 0 0 0-3.02-33.51l-74.53-99.38C553.02 4.7 543.54 0 533.47 0H296.02c-7.13 0-10.7 8.57-5.66 13.61L352 63.96 292.42 88.8c-5.9 2.95-5.9 11.36 0 14.31L352 127.96v108.62c0 72.08 36.03 139.39 96 179.38-195.59 6.81-344.56 41.01-434.1 60.91C5.78 478.67 0 485.88 0 494.2 0 504 7.95 512 17.76 512h499.08c63.29.01 119.61-47.56 122.99-110.76 2.52-47.28-22.73-90.4-64.64-111.36zM489.18 66.25l45.65 11.41c-2.75 10.91-12.47 18.89-24.13 18.26-12.96-.71-25.85-12.53-21.52-29.67z`},child:[]}]})(e)}function Li(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M592 192H473.26c12.69 29.59 7.12 65.2-17 89.32L320 417.58V464c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48V240c0-26.51-21.49-48-48-48zM480 376c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm-46.37-186.7L258.7 14.37c-19.16-19.16-50.23-19.16-69.39 0L14.37 189.3c-19.16 19.16-19.16 50.23 0 69.39L189.3 433.63c19.16 19.16 50.23 19.16 69.39 0L433.63 258.7c19.16-19.17 19.16-50.24 0-69.4zM96 248c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z`},child:[]}]})(e)}function Ri(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M528 0H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h192l-16 48h-72c-13.3 0-24 10.7-24 24s10.7 24 24 24h272c13.3 0 24-10.7 24-24s-10.7-24-24-24h-72l-16-48h192c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm-16 352H64V64h448v288z`},child:[]}]})(e)}function zi(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M448 73.143v45.714C448 159.143 347.667 192 224 192S0 159.143 0 118.857V73.143C0 32.857 100.333 0 224 0s224 32.857 224 73.143zM448 176v102.857C448 319.143 347.667 352 224 352S0 319.143 0 278.857V176c48.125 33.143 136.208 48.572 224 48.572S399.874 209.143 448 176zm0 160v102.857C448 479.143 347.667 512 224 512S0 479.143 0 438.857V336c48.125 33.143 136.208 48.572 224 48.572S399.874 369.143 448 336z`},child:[]}]})(e)}function Bi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M488.6 250.2L392 214V105.5c0-15-9.3-28.4-23.4-33.7l-100-37.5c-8.1-3.1-17.1-3.1-25.3 0l-100 37.5c-14.1 5.3-23.4 18.7-23.4 33.7V214l-96.6 36.2C9.3 255.5 0 268.9 0 283.9V394c0 13.6 7.7 26.1 19.9 32.2l100 50c10.1 5.1 22.1 5.1 32.2 0l103.9-52 103.9 52c10.1 5.1 22.1 5.1 32.2 0l100-50c12.2-6.1 19.9-18.6 19.9-32.2V283.9c0-15-9.3-28.4-23.4-33.7zM358 214.8l-85 31.9v-68.2l85-37v73.3zM154 104.1l102-38.2 102 38.2v.6l-102 41.4-102-41.4v-.6zm84 291.1l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6zm240 112l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6z`},child:[]}]})(e)}function Vi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`},child:[]}]})(e)}function Hi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M510.37 254.79l-12.08-76.26a132.493 132.493 0 0 0-37.16-72.95l-54.76-54.75c-19.73-19.72-45.18-32.7-72.71-37.05l-76.7-12.15c-27.51-4.36-55.69.11-80.52 12.76L107.32 49.6a132.25 132.25 0 0 0-57.79 57.8l-35.1 68.88a132.602 132.602 0 0 0-12.82 80.94l12.08 76.27a132.493 132.493 0 0 0 37.16 72.95l54.76 54.75a132.087 132.087 0 0 0 72.71 37.05l76.7 12.14c27.51 4.36 55.69-.11 80.52-12.75l69.12-35.21a132.302 132.302 0 0 0 57.79-57.8l35.1-68.87c12.71-24.96 17.2-53.3 12.82-80.96zM176 368c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm32-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm160 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z`},child:[]}]})(e)}function Ui(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M416 192c0-88.4-93.1-160-208-160S0 103.6 0 192c0 34.3 14.1 65.9 38 92-13.4 30.2-35.5 54.2-35.8 54.5-2.2 2.3-2.8 5.7-1.5 8.7S4.8 352 8 352c36.6 0 66.9-12.3 88.7-25 32.2 15.7 70.3 25 111.3 25 114.9 0 208-71.6 208-160zm122 220c23.9-26 38-57.7 38-92 0-66.9-53.5-124.2-129.3-148.1.9 6.6 1.3 13.3 1.3 20.1 0 105.9-107.7 192-240 192-10.8 0-21.3-.8-31.7-1.9C207.8 439.6 281.8 480 368 480c41 0 79.1-9.2 111.3-25 21.8 12.7 52.1 25 88.7 25 3.2 0 6.1-1.9 7.3-4.8 1.3-2.9.7-6.3-1.5-8.7-.3-.3-22.4-24.2-35.8-54.5z`},child:[]}]})(e)}function Wi(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M512.1 191l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0L552 6.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zm-10.5-58.8c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.7-82.4 14.3-52.8 52.8zM386.3 286.1l33.7 16.8c10.1 5.8 14.5 18.1 10.5 29.1-8.9 24.2-26.4 46.4-42.6 65.8-7.4 8.9-20.2 11.1-30.3 5.3l-29.1-16.8c-16 13.7-34.6 24.6-54.9 31.7v33.6c0 11.6-8.3 21.6-19.7 23.6-24.6 4.2-50.4 4.4-75.9 0-11.5-2-20-11.9-20-23.6V418c-20.3-7.2-38.9-18-54.9-31.7L74 403c-10 5.8-22.9 3.6-30.3-5.3-16.2-19.4-33.3-41.6-42.2-65.7-4-10.9.4-23.2 10.5-29.1l33.3-16.8c-3.9-20.9-3.9-42.4 0-63.4L12 205.8c-10.1-5.8-14.6-18.1-10.5-29 8.9-24.2 26-46.4 42.2-65.8 7.4-8.9 20.2-11.1 30.3-5.3l29.1 16.8c16-13.7 34.6-24.6 54.9-31.7V57.1c0-11.5 8.2-21.5 19.6-23.5 24.6-4.2 50.5-4.4 76-.1 11.5 2 20 11.9 20 23.6v33.6c20.3 7.2 38.9 18 54.9 31.7l29.1-16.8c10-5.8 22.9-3.6 30.3 5.3 16.2 19.4 33.2 41.6 42.1 65.8 4 10.9.1 23.2-10 29.1l-33.7 16.8c3.9 21 3.9 42.5 0 63.5zm-117.6 21.1c59.2-77-28.7-164.9-105.7-105.7-59.2 77 28.7 164.9 105.7 105.7zm243.4 182.7l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0l8.2-14.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zM501.6 431c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.6-82.4 14.3-52.8 52.8z`},child:[]}]})(e)}function Gi(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z`},child:[]}]})(e)}function Ki(e){return D({tag:`svg`,attr:{viewBox:`0 0 640 512`},child:[{tag:`path`,attr:{d:`M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4z`},child:[]}]})(e)}function qi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm92.49,313h0l-20,25a16,16,0,0,1-22.49,2.5h0l-67-49.72a40,40,0,0,1-15-31.23V112a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16V256l58,42.5A16,16,0,0,1,348.49,321Z`},child:[]}]})(e)}function Ji(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM96 424c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm96-192c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm128 368c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z`},child:[]}]})(e)}function Yi(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z`},child:[]}]})(e)}function Xi(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z`},child:[]}]})(e)}function Zi(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M74 208H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h15.94A535.78 535.78 0 0 1 64 384h128a535.78 535.78 0 0 1-15.94-128H192a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-10l33.89-90.38a16 16 0 0 0-15-21.62H144V64h24a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8h-24V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H55.09a16 16 0 0 0-15 21.62zm173.16 251.58L224 448v-16a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16v16L8.85 459.58A16 16 0 0 0 0 473.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31zm92.77-157.78l-3.29 82.2h126.72l-3.29-82.21 24.6-20.79A32 32 0 0 0 496 256.54V198a6 6 0 0 0-6-6h-26.38a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H373.1a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H310a6 6 0 0 0-6 6v58.6a32 32 0 0 0 11.36 24.4zM384 304a16 16 0 0 1 32 0v32h-32zm119.16 155.58L480 448v-16a16 16 0 0 0-16-16H336a16 16 0 0 0-16 16v16l-23.15 11.58a16 16 0 0 0-8.85 14.31V496a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31z`},child:[]}]})(e)}function Qi(e){return D({tag:`svg`,attr:{viewBox:`0 0 384 512`},child:[{tag:`path`,attr:{d:`M19 272.47l40.63 18.06a32 32 0 0 0 24.88.47l12.78-5.12a32 32 0 0 0 18.76-20.5l9.22-30.65a24 24 0 0 1 12.55-15.65L159.94 208v50.33a48 48 0 0 1-26.53 42.94l-57.22 28.65A80 80 0 0 0 32 401.48V416h319.86V224c0-106-85.92-192-191.92-192H12A12 12 0 0 0 0 44a16.9 16.9 0 0 0 1.79 7.58L16 80l-9 9a24 24 0 0 0-7 17v137.21a32 32 0 0 0 19 29.26zM52 128a20 20 0 1 1-20 20 20 20 0 0 1 20-20zm316 320H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z`},child:[]}]})(e)}function $i(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M255.9.2h-64v64h64zM0 64.17v64h64v-64zM128 .2H64v64h64zm64 255.9v64h64v-64zM0 192.12v64h64v-64zM383.85.2h-64v64h64zm128 0h-64v64h64zM128 256.1H64v64h64zM511.8 448v-64h-64v64zm0-128v-64h-64v64zM383.85 512h64v-64h-64zm128-319.88v-64h-64v64zM128 512h64v-64h-64zM0 512h64v-64H0zm255.9 0h64v-64h-64zM0 320.07v64h64v-64zm319.88-191.92v-64h-64v64zm-64 128h64v-64h-64zm-64 128v64h64v-64zm128-64h64v-64h-64zm0-127.95h64v-64h-64zm0 191.93v64h64v-64zM64 384.05v64h64v-64zm128-255.9v-64h-64v64zm191.92 255.9h64v-64h-64zm-128-191.93v-64h-64v64zm128-127.95v64h64v-64zm-128 255.9v64h64v-64zm-64-127.95H128v64h64zm191.92 64h64v-64h-64zM128 128.15H64v64h64zm0 191.92v64h64v-64z`},child:[]}]})(e)}function ea(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M336 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h320c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm208-320V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-32V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-16c-8.84 0-16 7.16-16 16v32c0 35.76 23.62 65.69 56 75.93v118.49c0 13.95-9.5 26.92-23.26 29.19C431.22 402.5 416 388.99 416 372v-28c0-48.6-39.4-88-88-88h-8V64c0-35.35-28.65-64-64-64H96C60.65 0 32 28.65 32 64v352h288V304h8c22.09 0 40 17.91 40 40v24.61c0 39.67 28.92 75.16 68.41 79.01C481.71 452.05 520 416.41 520 372V251.93c32.38-10.24 56-40.17 56-75.93v-32c0-8.84-7.16-16-16-16h-16zm-283.91 47.76l-93.7 139c-2.2 3.33-6.21 5.24-10.39 5.24-7.67 0-13.47-6.28-11.67-12.92L167.35 224H108c-7.25 0-1
3932.85-5.59-11.89-11.89l16-107C112.9 99.9 117.98 96 124 96h68c7.88 0 13.62 6.54 11.6 13.21L192 160h57.7c9.24 0 15.01 8.78 10.39 15.76z`},child:[]}]})(e)}function ta(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M48 32C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48zm0 32h106c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6V80c0-8.8 7.2-16 16-16zm426 96H38c-3.3 0-6-2.7-6-6v-36c0-3.3 2.7-6 6-6h138l30.2-45.3c1.1-1.7 3-2.7 5-2.7H464c8.8 0 16 7.2 16 16v74c0 3.3-2.7 6-6 6zM256 424c-66.2 0-120-53.8-120-120s53.8-120 120-120 120 53.8 120 120-53.8 120-120 120zm0-208c-48.5 0-88 39.5-88 88s39.5 88 88 88 88-39.5 88-88-39.5-88-88-88zm-48 104c-8.8 0-16-7.2-16-16 0-35.3 28.7-64 64-64 8.8 0 16 7.2 16 16s-7.2 16-16 16c-17.6 0-32 14.4-32 32 0 8.8-7.2 16-16 16z`},child:[]}]})(e)}function na(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M436 480h-20V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v456H12c-6.627 0-12 5.373-12 12v20h448v-20c0-6.627-5.373-12-12-12zM128 76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76zm0 96c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40zm52 148h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12zm76 160h-64v-84c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v84zm64-172c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40z`},child:[]}]})(e)}function ra(e){return D({tag:`svg`,attr:{viewBox:`0 0 576 512`},child:[{tag:`path`,attr:{d:`M208 0c-29.9 0-54.7 20.5-61.8 48.2-.8 0-1.4-.2-2.2-.2-35.3 0-64 28.7-64 64 0 4.8.6 9.5 1.7 14C52.5 138 32 166.6 32 200c0 12.6 3.2 24.3 8.3 34.9C16.3 248.7 0 274.3 0 304c0 33.3 20.4 61.9 49.4 73.9-.9 4.6-1.4 9.3-1.4 14.1 0 39.8 32.2 72 72 72 4.1 0 8.1-.5 12-1.2 9.6 28.5 36.2 49.2 68 49.2 39.8 0 72-32.2 72-72V64c0-35.3-28.7-64-64-64zm368 304c0-29.7-16.3-55.3-40.3-69.1 5.2-10.6 8.3-22.3 8.3-34.9 0-33.4-20.5-62-49.7-74 1-4.5 1.7-9.2 1.7-14 0-35.3-28.7-64-64-64-.8 0-1.5.2-2.2.2C422.7 20.5 397.9 0 368 0c-35.3 0-64 28.6-64 64v376c0 39.8 32.2 72 72 72 31.8 0 58.4-20.7 68-49.2 3.9.7 7.9 1.2 12 1.2 39.8 0 72-32.2 72-72 0-4.8-.5-9.5-1.4-14.1 29-12 49.4-40.6 49.4-73.9z`},child:[]}]})(e)}function ia(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M448 360V24c0-13.3-10.7-24-24-24H96C43 0 0 43 0 96v320c0 53 43 96 96 96h328c13.3 0 24-10.7 24-24v-16c0-7.5-3.5-14.3-8.9-18.7-4.2-15.4-4.2-59.3 0-74.7 5.4-4.3 8.9-11.1 8.9-18.6zM128 134c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm0 64c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm253.4 250H96c-17.7 0-32-14.3-32-32 0-17.6 14.4-32 32-32h285.4c-1.9 17.1-1.9 46.9 0 64z`},child:[]}]})(e)}function aa(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M440.5 88.5l-52 52L415 167c9.4 9.4 9.4 24.6 0 33.9l-17.4 17.4c11.8 26.1 18.4 55.1 18.4 85.6 0 114.9-93.1 208-208 208S0 418.9 0 304 93.1 96 208 96c30.5 0 59.5 6.6 85.6 18.4L311 97c9.4-9.4 24.6-9.4 33.9 0l26.5 26.5 52-52 17.1 17zM500 60h-24c-6.6 0-12 5.4-12 12s5.4 12 12 12h24c6.6 0 12-5.4 12-12s-5.4-12-12-12zM440 0c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12s12-5.4 12-12V12c0-6.6-5.4-12-12-12zm33.9 55l17-17c4.7-4.7 4.7-12.3 0-17-4.7-4.7-12.3-4.7-17 0l-17 17c-4.7 4.7-4.7 12.3 0 17 4.8 4.7 12.4 4.7 17 0zm-67.8 0c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17zm67.8 34c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17zM112 272c0-35.3 28.7-64 64-64 8.8 0 16-7.2 16-16s-7.2-16-16-16c-52.9 0-96 43.1-96 96 0 8.8 7.2 16 16 16s16-
3937.2 16-16z`},child:[]}]})(e)}function oa(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M172.2 226.8c-14.6-2.9-28.2 8.9-28.2 23.8V301c0 10.2 7.1 18.4 16.7 22 18.2 6.8 31.3 24.4 31.3 45 0 26.5-21.5 48-48 48s-48-21.5-48-48V120c0-13.3-10.7-24-24-24H24c-13.3 0-24 10.7-24 24v248c0 89.5 82.1 160.2 175 140.7 54.4-11.4 98.3-55.4 109.7-109.7 17.4-82.9-37-157.2-112.5-172.2zM209 0c-9.2-.5-17 6.8-17 16v31.6c0 8.5 6.6 15.5 15 15.9 129.4 7 233.4 112 240.9 241.5.5 8.4 7.5 15 15.9 15h32.1c9.2 0 16.5-7.8 16-17C503.4 139.8 372.2 8.6 209 0zm.3 96c-9.3-.7-17.3 6.7-17.3 16.1v32.1c0 8.4 6.5 15.3 14.8 15.9 76.8 6.3 138 68.2 144.9 145.2.8 8.3 7.6 14.7 15.9 14.7h32.2c9.3 0 16.8-8 16.1-17.3-8.4-110.1-96.5-198.2-206.6-206.7z`},child:[]}]})(e)}function sa(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z`},child:[]}]})(e)}function ca(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z`},child:[]}]})(e)}function la(e){return D({tag:`svg`,attr:{viewBox:`0 0 448 512`},child:[{tag:`path`,attr:{d:`M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z`},child:[]}]})(e)}function ua(e){return D({tag:`svg`,attr:{viewBox:`0 0 512 512`},child:[{tag:`path`,attr:{d:`M32 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V160H32v288zm160-212c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-8zM480 32H32C14.3 32 0 46.3 0 64v48c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16V64c0-17.7-14.3-32-32-32z`},child:[]}]})(e)}var da=(e,t,n={})=>{let r=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;n.expires&&(r+=`; expires=${n.expires.toUTCString()}`),n.maxAge&&(r+=`; max-age=${n.maxAge}`),n.path&&(r+=`; path=${n.path}`),n.domain&&(r+=`; domain=${n.domain}`),n.secure&&(r+=`; secure`),n.sameSite&&(r+=`; samesite=${n.sameSite}`),document.cookie=r},fa=e=>{let t=encodeURIComponent(e)+`=`,n=document.cookie.split(`;`);for(let e of n)if(e=e.trim(),e.indexOf(t)===0)return decodeURIComponent(e.substring(t.length));return null},pa=(e,t={})=>{da(e,``,{...t,expires:new Date(0)})},ma=(e,t,n)=>{da(e,t,{...n})},ha=`/opt/src/frontend/src/components/Header.tsx`,ga=()=>{let{isDarkMode:e,isRainbowMode:t,currentTheme:n,toggleTheme:r,handleThemeChange:i,handleThemeButtonClick:a}=or(),{isAuthenticated:o,logout:s,user:c,updateUserPreferences:l}=Zn(),{language:u,setLanguage:d,translations:f}=rr(),[p,m]=(0,S.useState)(!1),[h,g]=(0,S.useState)(0),[_,v]=(0,S.useState)(!1),[y,b]=(0,S.useState)(!1),x=vt(),ee=(0,S.useRef)(null),te=(0,S.useRef)(null);(0,S.useEffect)(()=>{let e=fa(`rainbow-advanced-mode`),t=c?.preferences?.discoveredRainbow;(e===`true`||t&&o)&&v(!0)},[c,o]),(0,S.useEffect)(()=>{let e=e=>{te.current&&!te.current.contains(e.target)&&b(!1)};if(y)return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[y]),(0,S.useEffect)(()=>()=>{ee.current&&clearTimeout(ee.current)},[]);let ne=()=>{g(e=>{let t=e+1;return ee.current&&clearTimeout(ee.current),ee.current=setTimeout(()=>{g(0)},5e3),t>=6&&!_&&(v(!0),b(!0),ma(`rainbow-advanced-mode`,`true`),o&&l({discoveredRainbow:!0}).catch(e=>Kn.error(`Failed to save rainbow discovery:`,e)),g(0),ee.current&&clearTimeout(ee.current)),t})},re=async()=>{pa(`rainbow-advanced-mode`),v(!1),b(!1),await s()},ie=()=>{ne(),r(),a()},C=async e=>{await i(e),b(!1)},ae=()=>{_?b(!y):ie()},w=async e=>{let t=e.target.value;if(d(t),o)try{await l({language:t})}catch(e){Kn.error(`Failed to save language preference:`,e)}},oe=()=>{m(!p)},T=e=>!!(e===`/`&&x.pathname===`/`||e!==`/`&&x.pathname.startsWith(e)),se=()=>(0,E.jsxDEV)(`div`,{className:`relative`,ref:te,children:[(0,E.jsxDEV)(`button`,{onClick:ae,className:`p-2 rounded-full focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-gray-800 focus:ring-white mr-4 flex items-center ${t?`bg-gradient-to-r from-red-400 via-yellow-400 to-purple-400 text-white`:`bg-gray-200 dark:bg-gray-700 text-gray-800 dark:text-white`}`,style:t?{animation:`rainbow-pulse 3s infinite`}:{},children:_?(0,E.jsxDEV)(E.Fragment,{children:[n===`rainbow`&&(0,E.jsxDEV)(`span`,{className:`w-5 h-5 flex items-center justify-center mr-1`,style:{fontSize:`1rem`},children:`ð`},void 0,!1,{fileName:ha,lineNumber:184,columnNumber:15},void 0),n===`light`&&(0,E.jsxDEV)(Kr,{className:`w-5 h-5 mr-1`},void 0,!1,{fileName:ha,lineNumber:191,columnNumber:42},void 0),n===`dark`&&(0,E.jsxDEV)(pi,{className:`w-5 h-5 mr-1`},void 0,!1,{fileName:ha,lineNumber:192,columnNumber:41},void 0),(0,E.jsxDEV)(Xi,{className:`w-3 h-3`},void 0,!1,{fileName:ha,lineNumber:193,columnNumber:13},void 0)]},void 0,!0,{fileName:ha,lineNumber:182,columnNumber:11},void 0):(0,E.jsxDEV)(E.Fragment,{children:t?(0,E.jsxDEV)(`span`,{className:`w-5 h-5 flex items-center justify-center`,style:{fontSize:`1.2rem`},children:`ð`},void 0,!1,{fileName:ha,lineNumber:198,columnNumber:15},void 0):e?(0,E.jsxDEV)(Kr,{className:`w-5 h-5`},void 0,!1,{fileName:ha,lineNumber:205,columnNumber:15},void 0):(0,E.jsxDEV)(pi,{className:`w-5 h-5`},void 0,!1,{fileName:ha,lineNumber:207,columnNumber:15},void 0)},void 0,!1,{fileName:ha,lineNumber:196,columnNumber:11},void 0)},void 0,!1,{fileName:ha,lineNumber:172,columnNumber:7},void 0),_&&y&&(0,E.jsxDEV)(`div`,{className:`absolute right-0 mt-2 w-48 bg-white dark:bg-gray-800 rounded-md shadow-lg z-50 border border-gray-200 dark:border-gray-700`,children:(0,E.jsxDEV)(`div`,{className:`py-1`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>C(`light`),className:`flex items-center w-full px-4 py-2 text-sm text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-700 ${n===`light`?`bg-gray-100 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Kr,{className:`w-4 h-4 mr-3 text-yellow-500`},void 0,!1,{fileName:ha,lineNumber:222,columnNumber:15},void 0),`Light Mode`]},void 0,!0,{fileName:ha,lineNumber:216,columnNumber:13},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>C(`dark`),className:`flex items-center w-full px-4 py-2 text-sm text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-700 ${n===`dark`?`bg-gray-100 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(pi,{className:`w-4 h-4 mr-3 text-blue-500`},void 0,!1,{fileName:ha,lineNumber:231,columnNumber:15},void 0),`Dark Mode`]},void 0,!0,{fileName:ha,lineNumber:225,columnNumber:13},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>C(`rainbow`),className:`flex items-center w-full px-4 py-2 text-sm text-gray-700 dark:text-gray-200 hover:bg-gray-100 dark:hover:bg-gray-700 ${n===`rainbow`?`bg-gray-100 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(`span`,{className:`w-4 h-4 mr-3 flex items-center justify-center`,style:{fontSize:`1rem`},children:`ð`},void 0,!1,{fileName:ha,lineNumber:240,columnNumber:15},void 0),`Rainbow Mode`]},void 0,!0,{fileName:ha,lineNumber:234,columnNumber:13},void 0)]},void 0,!0,{fileName:ha,lineNumber:215,columnNumber:11},void 0)},void 0,!1,{fileName:ha,lineNumber:214,columnNumber:9},void 0)]},void 0,!0,{fileName:ha,lineNumber:171,columnNumber:5},void 0),ce=()=>(0,E.jsxDEV)(E.Fragment,{children:[(0,E.jsxDEV)(Pn,{to:`/`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(oa,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:262,columnNumber:9},void 0),` `,f.header.blog]},void 0,!0,{fileName:ha,lineNumber:256,columnNumber:7},void 0),(0,E.jsxDEV)(Pn,{to:`/projects`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/projects`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(ni,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:270,columnNumber:9},void 0),` `,f.header.projects]},void 0,!0,{fileName:ha,lineNumber:264,columnNumber:7},void 0),(0,E.jsxDEV)(Pn,{to:`/divers`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/divers`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Mr,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:278,columnNumber:9},void 0),` `,f.header.divers.main]},void 0,!0,{fileName:ha,lineNumber:272,columnNumber:7},void 0),(0,E.jsxDEV)(Pn,{to:`/game`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/game`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Oi,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:286,columnNumber:9},void 0),` `,f.header.games]},void 0,!0,{fileName:ha,lineNumber:280,columnNumber:7},void 0),(0,E.jsxDEV)(Pn,{to:`/services`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/services`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Wi,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:294,columnNumber:9},void 0),` `,f.header.services]},void 0,!0,{fileName:ha,lineNumber:288,columnNumber:7},void 0),(0,E.jsxDEV)(Pn,{to:`/about`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center relative ${T(`/about`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(yi,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:302,columnNumber:9},void 0),` `,f.header.about]}
393,void 0,!0,{fileName:ha,lineNumber:296,columnNumber:7},void 0)]},void 0,!0,{fileName:ha,lineNumber:255,columnNumber:5},void 0);return(0,E.jsxDEV)(`header`,{className:`bg-white dark:bg-gray-800 shadow-md fixed top-0 left-0 right-0 z-50`,children:(0,E.jsxDEV)(`nav`,{className:`container mx-auto px-4 sm:px-6 lg:px-8 py-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center`,children:[(0,E.jsxDEV)(Pn,{to:`/`,className:`text-xl font-bold text-gray-800 dark:text-white`,children:`PaBr Webpage`},void 0,!1,{fileName:ha,lineNumber:312,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`hidden md:flex ml-10 items-baseline space-x-4`,children:(0,E.jsxDEV)(ce,{},void 0,!1,{fileName:ha,lineNumber:319,columnNumber:15},void 0)},void 0,!1,{fileName:ha,lineNumber:318,columnNumber:13},void 0)]},void 0,!0,{fileName:ha,lineNumber:311,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center`,children:[(0,E.jsxDEV)(`div`,{className:`relative flex items-center mr-4`,children:[(0,E.jsxDEV)(`select`,{value:u,onChange:w,className:`text-gray-600 dark:text-gray-300 hover:text-hover-light dark:hover:text-white px-3 py-2 pl-10 rounded-md text-sm font-medium flex items-center relative w-24 ${u===`en`||u===`de`?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(`option`,{value:`en`,className:`bg-white dark:bg-gray-800`,children:`EN`},void 0,!1,{fileName:ha,lineNumber:334,columnNumber:17},void 0),(0,E.jsxDEV)(`option`,{value:`de`,className:`bg-white dark:bg-gray-800`,children:`DE`},void 0,!1,{fileName:ha,lineNumber:337,columnNumber:17},void 0)]},void 0,!0,{fileName:ha,lineNumber:325,columnNumber:15},void 0),(0,E.jsxDEV)(wi,{className:`absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-600 dark:text-gray-300 pointer-events-none`},void 0,!1,{fileName:ha,lineNumber:341,columnNumber:15},void 0)]},void 0,!0,{fileName:ha,lineNumber:324,columnNumber:13},void 0),(0,E.jsxDEV)(se,{},void 0,!1,{fileName:ha,lineNumber:343,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`hidden md:flex items-center`,children:o?(0,E.jsxDEV)(`div`,{className:`flex items-center`,children:[(0,E.jsxDEV)(Pn,{to:`/profile`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white px-3 py-2 rounded-md text-sm font-medium flex items-center ${T(`/profile`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Fr,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:355,columnNumber:21},void 0),` `,f.header.profile]},void 0,!0,{fileName:ha,lineNumber:347,columnNumber:19},void 0),(0,E.jsxDEV)(`button`,{onClick:re,className:`ml-2 bg-red-500 hover:bg-red-600 text-white px-3 py-2 rounded-md text-sm font-medium flex items-center`,children:[(0,E.jsxDEV)(Jr,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:361,columnNumber:21},void 0),` Logout`]},void 0,!0,{fileName:ha,lineNumber:357,columnNumber:19},void 0)]},void 0,!0,{fileName:ha,lineNumber:346,columnNumber:17},void 0):(0,E.jsxDEV)(Pn,{to:`/login`,className:`bg-blue-500 hover:bg-blue-600 text-white px-3 py-2 rounded-md text-sm font-medium flex items-center ${T(`/login`)?`bg-blue-600`:``}`,children:[(0,E.jsxDEV)(Yr,{className:`mr-2`},void 0,!1,{fileName:ha,lineNumber:371,columnNumber:19},void 0),` `,f.header.login]},void 0,!0,{fileName:ha,lineNumber:365,columnNumber:17},void 0)},void 0,!1,{fileName:ha,lineNumber:344,columnNumber:13},void 0),(0,E.jsxDEV)(`button`,{onClick:oe,className:`md:hidden ml-2 p-2 rounded-md text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white focus:outline-none`,children:p?(0,E.jsxDEV)(Hr,{className:`h-6 w-6`},void 0,!1,{fileName:ha,lineNumber:380,columnNumber:17},void 0):(0,E.jsxDEV)(sa,{className:`h-6 w-6`},void 0,!1,{fileName:ha,lineNumber:382,columnNumber:17},void 0)},void 0,!1,{fileName:ha,lineNumber:375,columnNumber:13},void 0)]},void 0,!0,{fileName:ha,lineNumber:323,columnNumber:11},void 0)]},void 0,!0,{fileName:ha,lineNumber:310,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`md:hidden ${p?`block`:`hidden`}`,children:(0,E.jsxDEV)(`div`,{className:`px-2 pt-2 pb-3 space-y-1 sm:px-3`,children:[(0,E.jsxDEV)(ce,{},void 0,!1,{fileName:ha,lineNumber:391,columnNumber:13},void 0),o?(0,E.jsxDEV)(`div`,{className:`space-y-1`,children:[(0,E.jsxDEV)(Pn,{to:`/profile`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white block px-3 py-2 rounded-md text-sm font-medium ${T(`/profile`)?`bg-gray-200 dark:bg-gray-700`:``}`,children:[(0,E.jsxDEV)(Fr,{className:`inline mr-2`},void 0,!1,{fileName:ha,lineNumber:402,columnNumber:19},void 0),` `,f.header.profile]},void 0,!0,{fileName:ha,lineNumber:394,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{onClick:re,className:`w-full text-left bg-red-500 hover:bg-red-600 text-white px-3 py-2 rounded-md text-sm font-medium`,children:[(0,E.jsxDEV)(Jr,{className:`inline mr-2`},void 0,!1,{fileName:ha,lineNumber:409,columnNumber:19},void 0),` `,f.header.logout]},void 0,!0,{fileName:ha,lineNumber:405,columnNumber:17},void 0)]},void 0,!0,{fileName:ha,lineNumber:393,columnNumber:15},void 0):(0,E.jsxDEV)(Pn,{to:`/login`,className:`bg-blue-500 hover:bg-blue-600 text-white block px-3 py-2 rounded-md text-sm font-medium ${T(`/login`)?`bg-blue-600`:``}`,children:[(0,E.jsxDEV)(Yr,{className:`inline mr-2`},void 0,!1,{fileName:ha,lineNumber:420,columnNumber:17},void 0),` `,f.header.login]},void 0,!0,{fileName:ha,lineNumber:414,columnNumber:15},void 0)]}
393,void 0,!0,{fileName:ha,lineNumber:390,columnNumber:11},void 0)},void 0,!1,{fileName:ha,lineNumber:389,columnNumber:9},void 0)]},void 0,!0,{fileName:ha,lineNumber:309,columnNumber:7},void 0)},void 0,!1,{fileName:ha,lineNumber:308,columnNumber:5},void 0)},_a=`/opt/src/frontend/src/components/Footer.tsx`,va=()=>{let{translations:e}=rr();return(0,E.jsxDEV)(`footer`,{className:`bg-white dark:bg-gray-800 shadow-md mt-auto`,children:(0,E.jsxDEV)(`div`,{className:`container mx-auto px-4 sm:px-6 lg:px-8 py-4`,children:(0,E.jsxDEV)(`div`,{className:`flex flex-col md:flex-row justify-between items-center`,children:[(0,E.jsxDEV)(`div`,{className:`flex flex-col md:flex-row items-center space-y-2 md:space-y-0 md:space-x-4`,children:[(0,E.jsxDEV)(Pn,{to:`/impressum`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white text-sm`,children:e.footer.impressum},void 0,!1,{fileName:_a,lineNumber:13,columnNumber:13},void 0),(0,E.jsxDEV)(Pn,{to:`/datenschutz`,className:`text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white text-sm`,children:e.footer.datenschutz},void 0,!1,{fileName:_a,lineNumber:19,columnNumber:13},void 0)]},void 0,!0,{fileName:_a,lineNumber:12,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`mt-4 md:mt-0`,children:(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 text-sm`,children:e.footer.copyright},void 0,!1,{fileName:_a,lineNumber:27,columnNumber:13},void 0)},void 0,!1,{fileName:_a,lineNumber:26,columnNumber:11},void 0)]},void 0,!0,{fileName:_a,lineNumber:11,columnNumber:9},void 0)},void 0,!1,{fileName:_a,lineNumber:10,columnNumber:7},void 0)},void 0,!1,{fileName:_a,lineNumber:9,columnNumber:5},void 0)},ya=(e,t=`en`)=>new Date(e).toLocaleDateString(t===`de`?`de-DE`:`en-US`,{year:`numeric`,month:`long`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}),ba=(e,t=`en`)=>{let n=new Intl.RelativeTimeFormat(t,{numeric:`auto`}),r=new Date,i=new Date(e).getTime()-r.getTime(),a=Math.round(i/6e4),o=Math.round(i/36e5),s=Math.round(i/864e5),c=Math.round(s/30),l=Math.round(s/365);return Math.abs(l)>=1?n.format(l,`year`):Math.abs(c)>=1?n.format(c,`month`):Math.abs(s)>=1?n.format(s,`day`):Math.abs(o)>=1?n.format(o,`hour`):Math.abs(a)>=1?n.format(a,`minute`):t===`de`?`Gerade eben`:`Just now`},xa=`/opt/src/frontend/src/components/blog/BlogPostItem.tsx`,Sa=({post:e,onEdit:t,onDelete:n})=>{let{translations:r,language:i}=rr(),{isAuthenticated:a,user:o}=Zn(),s=xt(),c=((e,t=200)=>{let n=document.createElement(`div`);n.innerHTML=e;let r=n.textContent||n.innerText||``;return r.length>t?r.substring(0,t)+`...`:r})(e.content);return(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg border border-gray-100 dark:border-gray-700 overflow-hidden transition-all duration-300 hover:shadow-xl cursor-pointer`,children:(0,E.jsxDEV)(`div`,{className:`p-6 relative`,children:[a&&e.author===o?.preferred_username&&(0,E.jsxDEV)(`div`,{className:`absolute top-4 right-4 flex space-x-2 z-10`,children:[t&&(0,E.jsxDEV)(`button`,{onClick:n=>{n.stopPropagation(),t(e)},className:`px-3 py-1 bg-blue-500 text-white rounded-lg hover:bg-blue-600 transition-colors duration-200`,children:r.blog.edit},void 0,!1,{fileName:xa,lineNumber:52,columnNumber:15},void 0),n&&(0,E.jsxDEV)(`button`,{onClick:t=>{t.stopPropagation(),n(e._id)},className:`px-3 py-1 bg-red-500 text-white rounded-lg hover:bg-red-600 transition-colors duration-200`,children:r.blog.delete},void 0,!1,{fileName:xa,lineNumber:63,columnNumber:15},void 0)]},void 0,!0,{fileName:xa,lineNumber:50,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{onClick:()=>s(`/blog/${e._id}`),children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-3 text-gray-900 dark:text-white pr-24`,children:e.title},void 0,!1,{fileName:xa,lineNumber:76,columnNumber:11},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 mb-4`,children:c},void 0,!1,{fileName:xa,lineNumber:79,columnNumber:11},void 0),(0,E.jsxDEV)(`button`,{className:`text-blue-500 hover:text-blue-600 dark:text-blue-400 dark:hover:text-blue-300 font-medium transition-colors duration-200`,children:[r.blog.readMore,` â`]},void 0,!0,{fileName:xa,lineNumber:82,columnNumber:11},void 0)]},void 0,!0,{fileName:xa,lineNumber:75,columnNumber:9},void 0),e.attachments&&e.attachments.length>0&&(0,E.jsxDEV)(`div`,{className:`mt-4 border-t border-gray-200 dark:border-gray-700 pt-4`,children:(0,E.jsxDEV)(`p`,{className:`text-sm text-gray-600 dark:text-gray-400`,children:[`ð `,e.attachments.length,` `,r.blog.attachments||`Attachments`]},void 0,!0,{fileName:xa,lineNumber:88,columnNumber:13},void 0)},void 0,!1,{fileName:xa,lineNumber:87,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-col space-y-2 mt-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsxDEV)(`span`,{className:`text-sm text-gray-500 dark:text-gray-400`,children:ya(e.createdAt,i)},void 0,!1,{fileName:xa,lineNumber:95,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-sm text-gray-500 dark:text-gray-400`,children:[r.blog.by,` `,e.author]},void 0,!0,{fileName:xa,lineNumber:98,columnNumber:13},void 0)]},void 0,!0,{fileName:xa,lineNumber:94,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center`,children:(0,E.jsxDEV)(`span`,{className:`text-sm text-gray-500 dark:text-gray-400`,children:ba(e.createdAt,i)},void 0,!1,{fileName:xa,lineNumber:103,columnNumber:13},void 0)},void 0,!1,{fileName:xa,lineNumber:102,columnNumber:11},void 0),e.updatedAt!==e.createdAt&&(0,E.jsxDEV)(`span`,{className:`text-sm text-gray-500 dark:text-gray-400`,children:[r.blog.lastUpdated,`: `,ya(e.updatedAt,i)]},void 0,!0,{fileName:xa,lineNumber:108,columnNumber:13},void 0)]},void 0,!0,{fileName:xa,lineNumber:93,columnNumber:9},void 0)]},void 0,!0,{fileName:xa,lineNumber:48,columnNumber:7},void 0)},void 0,!1,{fileName:xa,lineNumber:47,columnNumber:5},void 0)},Ca=e=>{if(!e)return`Unknown size`;let t=[`Bytes`,`KB`,`MB`,`GB`,`TB`];if(e===0)return`0 Byte`;let n=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/1024**n).toFixed(2))+` `+t[n]},O=(e,t,n,r=`en`)=>({displayName:e,details:`${Ca(t)} | ${n?new Intl.DateTimeFormat(r,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}).format(new Date(n)):`Unknown date`}`}),wa=`/opt/src/frontend/src/components/blog/BlogPostDetail.tsx`,Ta=({post:e,onEdit:t,onDelete:n})=>{let{translations:r,language:i}=rr(),{isAuthenticated:a,user:o}=Zn(),s=xt();return(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>s(`/blog`),className:`mb-6 px-4 py-2 text-blue-500 hover:text-blue-600 dar
393k:text-blue-400 dark:hover:text-blue-300 transition-colors duration-200 flex items-center`,children:[(0,E.jsxDEV)(`svg`,{className:`w-5 h-5 mr-2`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 19l-7-7m0 0l7-7m-7 7h18`},void 0,!1,{fileName:wa,lineNumber:44,columnNumber:13},void 0)},void 0,!1,{fileName:wa,lineNumber:43,columnNumber:11},void 0),r.common.backToMenu]},void 0,!0,{fileName:wa,lineNumber:39,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg border border-gray-100 dark:border-gray-700 overflow-hidden`,children:(0,E.jsxDEV)(`div`,{className:`p-8 relative`,children:[a&&e.author===o?.preferred_username&&(0,E.jsxDEV)(`div`,{className:`absolute top-6 right-6 flex space-x-2`,children:[t&&(0,E.jsxDEV)(`button`,{onClick:()=>s(`/blog/edit/${e._id}`),className:`px-4 py-2 bg-blue-500 text-white rounded-lg hover:bg-blue-600 transition-colors duration-200`,children:r.blog.edit},void 0,!1,{fileName:wa,lineNumber:54,columnNumber:19},void 0),n&&(0,E.jsxDEV)(`button`,{onClick:()=>n(e._id),className:`px-4 py-2 bg-red-500 text-white rounded-lg hover:bg-red-600 transition-colors duration-200`,children:r.blog.delete},void 0,!1,{fileName:wa,lineNumber:62,columnNumber:19},void 0)]},void 0,!0,{fileName:wa,lineNumber:52,columnNumber:15},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold mb-6 text-gray-900 dark:text-white pr-32`,children:e.title},void 0,!1,{fileName:wa,lineNumber:72,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-4 mb-8 text-sm text-gray-500 dark:text-gray-400`,children:[(0,E.jsxDEV)(`span`,{children:[r.blog.by,` `,e.author]},void 0,!0,{fileName:wa,lineNumber:77,columnNumber:15},void 0),(0,E.jsxDEV)(`span`,{children:`â¢`},void 0,!1,{fileName:wa,lineNumber:78,columnNumber:15},void 0),(0,E.jsxDEV)(`span`,{children:ya(e.createdAt,i)},void 0,!1,{fileName:wa,lineNumber:79,columnNumber:15},void 0),(0,E.jsxDEV)(`span`,{children:`â¢`},void 0,!1,{fileName:wa,lineNumber:80,columnNumber:15},void 0),(0,E.jsxDEV)(`span`,{children:ba(e.createdAt,i)},void 0,!1,{fileName:wa,lineNumber:81,columnNumber:15},void 0)]},void 0,!0,{fileName:wa,lineNumber:76,columnNumber:13},void 0),e.updatedAt!==e.createdAt&&(0,E.jsxDEV)(`div`,{className:`mb-6 text-sm text-gray-500 dark:text-gray-400`,children:[r.blog.lastUpdated,`: `,ya(e.updatedAt,i)]},void 0,!0,{fileName:wa,lineNumber:85,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-700 dark:text-gray-300 prose dark:prose-invert max-w-none prose-lg`,dangerouslySetInnerHTML:{__html:e.content}},void 0,!1,{fileName:wa,lineNumber:90,columnNumber:13},void 0),e.attachments&&e.attachments.length>0&&(0,E.jsxDEV)(`div`,{className:`mt-8 border-t border-gray-200 dark:border-gray-700 pt-6`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:r.blog.attachments||`Attachments`},void 0,!1,{fileName:wa,lineNumber:97,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-3`,children:e.attachments.map((e,t)=>{let{displayName:n,details:r}=O(e.filename,e.size,e.createdAt,i);return(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center text-blue-500 hover:text-blue-600 dark:text-blue-400 dark:hover:text-blue-300 bg-gray-100 dark:bg-gray-700 p-3 rounded-lg transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,E.jsxDEV)(`a`,{href:e.path,target:`_blank`,rel:`noopener noreferrer`,className:`font-medium`,children:n},void 0,!1,{fileName:wa,lineNumber:114,columnNumber:27},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:r},void 0,!1,{fileName:wa,lineNumber:122,columnNumber:27},void 0)]},void 0,!0,{fileName:wa,lineNumber:113,columnNumber:25},void 0)},t,!1,{fileName:wa,lineNumber:109,columnNumber:23},void 0)})},void 0,!1,{fileName:wa,lineNumber:100,columnNumber:17},void 0)]},void 0,!0,{fileName:wa,lineNumber:96,columnNumber:15},void 0)]},void 0,!0,{fileName:wa,lineNumber:50,columnNumber:11},void 0)},void 0,!1,{fileName:wa,lineNumber:49,columnNumber:9},void 0)]},void 0,!0,{fileName:wa,lineNumber:38,columnNumber:7},void 0)},void 0,!1,{fileName:wa,lineNumber:37,columnNumber:5},void 0)},Ea=`/opt/src/frontend/src/components/BlogPage.tsx`,Da=()=>{let{translations:e}=rr(),{isAuthenticated:t}=Zn(),n=ur(),{postId:r}=Ct(),i=xt(),[a,o]=(0,S.useState)([]),[s,c]=(0,S.useState)(null),[l,u]=(0,S.useState)(!0),[d,f]=(0,S.useState)(null),[p,m]=(0,S.useState)(null);(0,S.useEffect)(()=>{h()},[]),(0,S.useEffect)(()=>
393{if(r&&a.length>0){let e=a.find(e=>e._id===r);c(e||null)}else c(null)},[r,a]);let h=async()=>{try{let e=await n.listPosts();o(e),f(null)}catch(t){Kn.error(`Error fetching posts:`,t),f(e.blog.error.fetch)}finally{u(!1)}},g=async t=>{try{await n.deletePost(t),await h(),m(null),r===t&&i(`/blog`)}catch(t){Kn.error(`Error deleting post:`,t),f(e.blog.error.delete)}},_=e=>{i(`/blog/edit/${e._id}`)};return l?(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:(0,E.jsxDEV)(`div`,{className:`text-center text-gray-600 dark:text-gray-400`,children:e.blog.loading},void 0,!1,{fileName:Ea,lineNumber:75,columnNumber:11},void 0)},void 0,!1,{fileName:Ea,lineNumber:74,columnNumber:9},void 0)},void 0,!1,{fileName:Ea,lineNumber:73,columnNumber:7},void 0):r&&s?(0,E.jsxDEV)(E.Fragment,{children:[(0,E.jsxDEV)(Ta,{post:s,onEdit:_,onDelete:e=>m(e)},void 0,!1,{fileName:Ea,lineNumber:87,columnNumber:9},void 0),p&&(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center p-4 z-50`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl p-6 max-w-sm w-full border border-gray-100 dark:border-gray-700`,children:[(0,E.jsxDEV)(`h3`,{className:`text-lg font-semibold mb-4 text-gray-900 dark:text-white`,children:e.blog.confirmDelete},void 0,!1,{fileName:Ea,lineNumber:97,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex justify-end space-x-2`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>m(null),className:`px-4 py-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200 transition-colors duration-200`,children:e.blog.cancel},void 0,!1,{fileName:Ea,lineNumber:101,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>p&&g(p),className:`px-4 py-2 bg-red-500 text-white rounded-lg hover:bg-red-600 transition-colors duration-200`,children:e.blog.delete},void 0,!1,{fileName:Ea,lineNumber:107,columnNumber:17},void 0)]},void 0,!0,{fileName:Ea,lineNumber:100,columnNumber:15},void 0)]},void 0,!0,{fileName:Ea,lineNumber:96,columnNumber:13},void 0)},void 0,!1,{fileName:Ea,lineNumber:95,columnNumber:11},void 0)]},void 0,!0,{fileName:Ea,lineNumber:86,columnNumber:7},void 0):(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center mb-8`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-gray-900 dark:text-white transition-colors duration-200`,children:e.blog.title},void 0,!1,{fileName:Ea,lineNumber:125,columnNumber:11},void 0),t&&(0,E.jsxDEV)(`button`,{onClick:()=>i(`/blog/new`),className:`px-6 py-3 bg-blue-500 text-white rounded-lg hover:bg-blue-600 transition-colors duration-200 font-semibold flex items-center`,children:[(0,E.jsxDEV)(`svg`,{className:`w-5 h-5 mr-2`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 4v16m8-8H4`},void 0,!1,{fileName:Ea,lineNumber:134,columnNumber:17},void 0)},void 0,!1,{fileName:Ea,lineNumber:133,columnNumber:15},void 0),e.blog.createPost]},void 0,!0,{fileName:Ea,lineNumber:129,columnNumber:13},void 0)]},void 0,!0,{fileName:Ea,lineNumber:124,columnNumber:9},void 0),d&&(0,E.jsxDEV)(`div`,{className:`bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded-lg mb-4`,children:d},void 0,!1,{fileName:Ea,lineNumber:142,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-6`,children:a.map(e=>(0,E.jsxDEV)(Sa,{post:e,onEdit:_,onDelete:e=>m(e)},e._id,!1,{fileName:Ea,lineNumber:149,columnNumber:13},void 0))},void 0,!1,{fileName:Ea,lineNumber:147,columnNumber:9},void 0),p&&(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center p-4 z-50`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl p-6 max-w-sm w-full border border-gray-100 dark:border-gray-700`,children:[(0,E.jsxDEV)(`h3`,{className:`text-lg font-semibold mb-4 text-gray-900 dark:text-white`,children:e.blog.confirmDelete},void 0,!1,{fileName:Ea,lineNumber:162,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex justify-end space-x-2`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>m(null),className:`px-4 py-2 text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-gray-200 transition-colors duration-200`,children:e.blog.cancel},void 0,!1,{fileName:Ea,lineNumber:166,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>p&&g(p),className:`px-4 py-2 bg-red-500 text-white rounded-lg hover:bg-red-600 transition-colors duration-200`,children:e.blog.delete},void 0,!1,{fileName:Ea,lineNumber:172,columnNumber:17},void 0)]},void 0,!0,{fileName:Ea,lineNumber:165,columnNumber:15},void 0)]},void 0,!0,{fileName:Ea,lineNumber:161,columnNumber:13},void 0)},void 0,!1,{fileName:Ea,lineNumber:160,columnNumber:11},void 0)]},void 0,!0,{fileName:Ea,lineNumber:123,columnNumber:7},void 0)},void 0,!1,{fileName:Ea,lineNumber:122,columnNumber:5},void 0)},Oa=s({ACCURACY:()=>10,APP_VERSION:()=>ka,BASE_PATH:()=>xo,BASE_PATH_IS_MIN:()=>So,BR:()=>`br`,CLIPBOARD_ID:()=>To,COMMAND_KEYS:()=>ao,EMULATE_DBLCLICK_TIMEOUT:()=>300,ES:()=>Aa,FAT_MODE:()=>!0,HOMEPAGE:()=>Ma,INSEPARABLE_TAGS:()=>qa,INSERT_AS_HTML:()=>fo,INSERT_AS_TEXT:()=>mo,INSERT_CLEAR_HTML:()=>po,INSERT_ONLY_TEXT:()=>ho,INVISIBLE_SPACE:()=>``,INVISIBLE_SPACE_REG_EXP:()=>Fa,INVISIBLE_SPACE_REG_EXP_END:()=>Ia,INVISIBLE_SPACE_REG_EXP_START:()=>La,IS_BLOCK:()=>Ua,IS_ES_MODERN:()=>!0,IS_ES_NEXT:()=>!0,IS_IE:()=>oo,IS_INLINE:()=>Wa,IS_MAC:()=>go,IS_PROD:()=>!0,IS_TEST:()=>ja,KEY_ALIASES:()=>_o,KEY_ALT:()=>`Alt`,KEY_BACKSPACE:()=>Xa,KEY_DELETE:()=>io,KEY_DOWN:()=>no,KEY_ENTER:()=>Za,KEY_ESC:()=>Qa,KEY_F3:()=>`F3`,KEY_LEFT:()=>$a,KEY_META:()=>Ya,KEY_RIGHT:()=>to,KEY_SPACE:()=>ro,KEY_TAB:()=>`Tab`,KEY_UP:()=>eo,LIST_TAGS:()=>Ga,MARKER_CLASS:()=>uo,MODE_SOURCE:()=>2,MODE_SPLIT:()=>3,MODE_WYSIWYG:()=>1,NBSP_SPACE:()=>`\xA0`,NEARBY:()=>5,NO_EMPTY_TAGS:()=>Ja,PARAGRAPH:()=>`p`,PASSIVE_EVENTS:()=>Do,SAFE_COUNT_CHANGE_CALL:()=>10,SET_TEST:()=>Na,SOURCE_CONSUMER:()=>Eo,SPACE_REG_EXP:()=>Ra,SPACE_REG_EXP_END:()=>Ba,SPACE_REG_EXP_START:()=>za,TEMP_ATTR:()=>Co,TEXT_HTML:()=>co,TEXT_PLAIN:()=>so,TEXT_RTF:()=>lo,TOKENS:()=>Pa,globalDocument:()=>Ha,globalWindow:()=>Va,lang:()=>wo}),ka=`4.13.10`,Aa=`es2020`,ja=!1,Ma=`https://xdsoft.net/jodit/`,Na=()=>ja=!0,Pa={},Fa=()=>/[\uFEFF]/g,Ia=()=>/[\uFEFF]+$/g,La=()=>/^[\uFEFF]+/g,Ra=()=>/[\s\n\t\r\uFEFF\u200b]+/g,za=()=>/^[\s\n\t\r\uFEFF\u200b]+/g,Ba=()=>/[\s\n\t\r\uFEFF\u200b]+$/g,Va=typeof window<`u`?window:void 0,Ha=typeof document<`u`?document:void 0,Ua=/^(ADDRESS|ARTICLE|ASIDE|BLOCKQUOTE|CANVAS|DD|DFN|DIV|DL|DT|FIELDSET|FIGCAPTION|FIGURE|FOOTER|FORM|H[1-6]|HEADER|HGROUP|HR|LI|MAIN|NAV|NOSCRIPT|OUTPUT|P|PRE|RUBY|SCRIPT|STYLE|OBJECT|OL|SECTION|IFRAME|JODIT|JODIT-MEDIA|UL|TR|TD|TH|TBODY|THEAD|TFOOT|TABLE|BODY|HTML|VIDEO)$/i,Wa=/^(STRONG|SPAN|I|EM|B|SUP|SUB|A|U)$/i,Ga=new Set([`ul`,`ol`]),Ka=[`img`,`video`,`svg`,`iframe`,`script`,`input`,`textarea`,`link`,`jodit`,`jodit-media`],qa=new Set([...Ka,`br`,`hr`]),Ja=new Set(Ka),Ya=`Meta`,Xa=`Backspace`,Za=`Enter`,Qa=`
393Escape`,$a=`ArrowLeft`,eo=`ArrowUp`,to=`ArrowRight`,no=`ArrowDown`,ro=`Space`,io=`Delete`,ao=[Ya,Xa,io,eo,no,to,$a,Za,Qa,`F3`,`Tab`],oo=typeof navigator<`u`&&(navigator.userAgent.indexOf(`MSIE`)!==-1||/rv:11.0/i.test(navigator.userAgent)),so=oo?`text`:`text/plain`,co=oo?`html`:`text/html`,lo=oo?`rtf`:`text/rtf`,uo=`jodit-selection_marker`,fo=`insert_as_html`,po=`insert_clear_html`,mo=`insert_as_text`,ho=`insert_only_text`,go=Va!==void 0&&/Mac|iPod|iPhone|iPad/.test(Va.navigator.platform),_o={add:`+`,break:`pause`,cmd:`meta`,command:`meta`,ctl:`control`,ctrl:`control`,del:`delete`,down:`arrowdown`,esc:`escape`,ins:`insert`,left:`arrowleft`,mod:go?`meta`:`control`,opt:`alt`,option:`alt`,return:`enter`,right:`arrowright`,space:`space`,spacebar:`space`,up:`arrowup`,win:`meta`,windows:`meta`},vo=e=>{let t=e.split(`/`);return/\.js/.test(t[t.length-1])?{basePath:t.slice(0,t.length-1).join(`/`)+`/`,isMin:!1}:{basePath:e,isMin:!1}},{basePath:yo,isMin:bo}=(()=>{if(typeof document>`u`)return{basePath:``,isMin:!1};let e=Ha.currentScript;if(e)return vo(e.src);let t=Ha.querySelectorAll(`script[src]`);return t&&t.length?vo(t[t.length-1].src):vo(Va.location.href)})(),xo=yo,So=bo,Co=`data-jodit-temp`,wo={},To=`clipboard`,Eo=`source-consumer`,Do=new Set([`touchstart`,`touchend`,`scroll`,`mousewheel`,`mousemove`,`touchmove`]);function k(e){return typeof e==`function`}function A(e,t,n){if(!k(n.value))throw TypeError(`@autobind can only be applied to methods, but "${t}" is not a function`);let r=n.value;return{configurable:!0,get(){let e=r.bind(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e}}}var Oo={beforeInit:`beforeInit`,ready:`ready`,beforeDestruct:`beforeDestruct`,destructed:`destructed`};function ko(e){return!!e&&(typeof e).toLowerCase()===`function`&&(e===Function.prototype||/^\s*function\s*(\b[a-z$_][a-z0-9$_]*\b)*\s*\((|([a-z$_][a-z0-9$_]*)(\s*,[a-z$_][a-z0-9$_]*)*)\)\s*{\s*\[native code]\s*}\s*$/i.test(String(e)))}function Ao(e){return Array.isArray(e)}function j(e){return typeof e==`string`}function jo(e){return Ao(e)&&j(e[0])}function Mo(e){return e==null}function No(e,t){if(!j(e)||!e.length)return null;let n=e.split(`.`),r=t;try{for(let e of n){if(Mo(r[e]))return null;r=r[e]}}catch{return null}return Mo(r)?null:r}var Po={};function Fo(e){var t;if(!(e in Po)){let n=Ha.createElement(`iframe`);try{if(n.src=`about:blank`,Ha.body.appendChild(n),!n.contentWindow)return null;let t=No(e,n.contentWindow),r=No(e.split(`.`).slice(0,-1).join(`.`),n.contentWindow);k(t)&&(Po[e]=t.bind(r))}catch{}finally{(t=n.parentNode)==null||t.removeChild(n)}}return Po[e]??null}var Io=function(...e){return(ko(Array.from)?Array.from:Fo(`Array.from`)??Array.from).apply(Array,e)},Lo=e=>j(e)&&/<([A-Za-z][A-Za-z0-9]*)\b[^>]*>(.*?)<\/\1>/m.test(e.replace(/[\r\n]/g,``));function Ro(e){return!!e&&k(e.has)&&k(e.add)&&k(e.delete)}function zo(e){return e.replace(Ba(),``).replace(za(),``)}function Bo(e,t){return e.replace(RegExp(`[${t}]+$`),``).replace(RegExp(`^[${t}]+`),``)}function Vo(e){return e.replace(Ia(),``).replace(La(),``)}var Ho=class extends Error{constructor(e){super(e),this.name=`AssertionError`}};function Uo(e,t){if(!e)throw new Ho(`Assertion failed: ${t}`)}function Wo(e){return e!=null&&e===e.window}function Go(e){return!e||typeof e!=`object`||e.nodeType||Wo(e)?!1:!(e.constructor&&!{}.hasOwnProperty.call(e.constructor.prototype,`isPrototypeOf`))}var Ko=e=>e.replace(/([A-Z])([A-Z])([a-z])/g,`$1-$2$3`).replace(/([a-z])([A-Z])/g,`$1-$2`).replace(/[\s_]+/g,`-`).toLowerCase(),qo=e=>e.replace(/([A-Z])([A-Z])([a-z])/g,`$1-$2$3`).replace(/([a-z])([A-Z])/g,`$1-$2`).toLowerCase();function Jo(e){return typeof e==`boolean`}function Yo(e){if(j(e)){if(!e.match(/^([+-])?[0-9]+(\.?)([0-9]+)?(e[0-9]+)?$/))return!1;e=parseFloat(e)}return typeof e==`number`&&!isNaN(e)&&isFinite(e)}var Xo=e=>{if(e===`rgba(0, 0, 0, 0)`||e===``)return!1;if(!e)return`#000000`;if(e.substr(0,1)===`#`)return e;let t=/([\s\n\t\r]*?)rgb\((\d+), (\d+), (\d+)\)/.exec(e)||/([\s\n\t\r]*?)rgba\((\d+), (\d+), (\d+), ([\d.]+)\)/.exec(e);if(!t)return`#000000`;let n=parseInt(t[2],10),r=parseInt(t[3],10),i=(parseInt(t[4],10)|r<<8|n<<16).toString(16).toUpperCase();for(;i.length<6;)i=`0`+i;return t[1]+`#`+i},Zo=/^(left|top|bottom|right|width|min|max|height|margin|padding|fontsize|font-size)/i;function Qo(e,t){return!Mo(t)&&Zo.test(e)&&Yo(t.toString())?parseInt(t.toString(),10)+`px`:t}function $o(e,t){if(Ko(e)===`font-weight`){switch(t.toString().toLowerCase()){case`700`:case`bold`:return 700;
393case`400`:case`normal`:return 400;case`900`:case`heavy`:return 900}return Yo(t)?Number(t):t}return/color/i.test(e)&&/^rgb/i.test(t.toString())&&Xo(t.toString())||t}var es=e=>e.replace(/([-_])(.)/g,(e,t,n)=>n.toUpperCase());function M(e,t,n,r=!1){if(Jo(n)&&(r=n,n=void 0),Go(t)||n!==void 0){let r=(e,t,n)=>{n=Qo(t,n),n!==void 0&&(n==null||M(e,t,!0)!==$o(t,n))&&(e.style[t]=n)};if(Go(t)){let n=Object.keys(t);for(let i=0;i<n.length;i+=1)r(e,es(n[i]),t[n[i]])}else r(e,es(t),n);return``}let i=Ko(t),a=e.ownerDocument||document,o=a?a.defaultView||a.parentWindow:!1,s=e.style[t],c=``;return s!==void 0&&s!==``?c=s:o&&!r&&(c=o.getComputedStyle(e).getPropertyValue(i)),Zo.test(t)&&/^[-+]?[0-9.]+px$/.test(c.toString())&&(c=parseInt(c.toString(),10)),$o(t,c)}var ts=e=>{M(e,`display`)===`block`&&M(e,`display`,``);let{style:t}=e;t.marginLeft===`auto`&&t.marginRight===`auto`&&(t.marginLeft=``,t.marginRight=``)};function N(e,t,n){if(!e||!k(e.getAttribute))return null;if(!j(t))return Object.keys(t).forEach(n=>{let r=t[n];Go(r)&&n===`style`?M(e,r):(n===`className`&&(n=`class`),N(e,n,r))}),null;let r=qo(t);if(/^-/.test(r)){let t=N(e,`data${r}`);if(t)return t;r=r.substr(1)}if(n!==void 0)if(n==null)e.hasAttribute(r)&&e.removeAttribute(r);else{let t=n.toString();return e.nodeName===`IMG`&&(r===`width`||r===`height`)&&(t=t.replace(`px`,``)),e.setAttribute(r,t),t}return e.getAttribute(r)}function ns(e){return!!(e&&e instanceof Object&&k(e.constructor)&&e.isView)}var rs=new WeakMap,is=(e,t,n)=>{let r=rs.get(e);if(!r){r={},rs.set(e,r);let t=null;ns(e.j)&&(t=e.j.e),ns(e)&&(t=e.e),t&&t.on(`beforeDestruct`,()=>{rs.delete(e)})}return n===void 0?r[t]:(r[t]=n,n)};function as(e=`Aborted`){return new DOMException(e,`AbortError`)}var os=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}},ss=class e extends TypeError{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype)}};function cs(e){return TypeError(e)}function ls(e){return new os(e)}function us(e){return new ss(e)}function ds(e){return e&&typeof e.then==`function`}function fs(e,...t){return e(...t)}function ps(e,t,...n){return e.apply(t,n)}function ms(e,t){N(t,`data-editor_id`,e.id),!t.component&&Object.defineProperty(t,"jodit",{value:e})}function hs(e,t){return ds(e)?e.then(e=>e,()=>null).finally(t):t?.()}var gs=(e,t)=>t.async.promise((n,r)=>{let i=new Image,a=()=>{t.e.off(i),r?.()},o=()=>{t.e.off(i),n(i)};t.e.one(i,`load`,o).one(i,`error`,a).one(i,`abort`,a),i.src=e,i.complete&&o()}),_s=(e,t=!0)=>{if(t)return Object.keys(e);let n=[];for(let t in e)n.push(t);return n},vs=(e,t,{control:n},r)=>{let i=`button${n.command}`,a=(n.args&&n.args[0])??is(e,i);if(Mo(a))return!1;is(e,i,a),r&&(a=r(a)),e.execCommand(n.command,!1,a??void 0)},ys=e=>{if(e.clipboardData)return e.clipboardData;try{return e.dataTransfer||new DataTransfer}catch{return null}};function bs(e,t){let n;do n=Object.getOwnPropertyDescriptor(e,t),e=Object.getPrototypeOf(e);while(!n&&e);return n}var xs=RegExp(`<([a-z]+)[^>]+${Co}[^>]*>(.+?)</\\1>`,`gi`),P=class e{constructor(){throw Error(`Dom is static module`)}static detach(e){for(;e&&e.firstChild;)e.removeChild(e.firstChild)}static wrapNextInline(t,n,r){let i,a=t,o=t;r.s.save();let s=!1;do s=!1,i=o.nextSibling,i&&!e.isBlock(i)&&!e.isTag(i,`br`)&&(s=!0,o=i);while(s);return e.__wrapElements(n,r,a,o)}static __wrapElements(e,t,n,r){let i=j(e)?t.createInside.element(e):e;n.parentNode&&n.parentNode.insertBefore(i,n);let a=n;for(;a&&(a=n.nextSibling,i.appendChild(n),!(n===r||!a));)n=a;return t.s.restore(),i}static wrapInline(t,n,r){let i,a=t,o=t;r.s.save();let s=!1;do s=!1,i=a.previousSibling,i&&!e.isBlock(i)&&(s=!0,a=i);while(s);do s=!1,i=o.nextSibling,i&&!e.isBlock(i)&&(s=!0,o=i);while(s);return e.__wrapElements(n,r,a,o)}static wrap(t,n,r){let i=j(n)?r.element(n):n;if(e.isNode(t)){if(!t.parentNode)throw cs(`Element should be in DOM`);t.parentNode.insertBefore(i,t),i.appendChild(t)}else{let e=t.extractContents();t.insertNode(i),i.appendChild(e)}return i}static unwrap(t){let n=t.parentNode;if(n){for(;t.firstChild;)n.insertBefore(t.firstChild,t);e.safeRemove(t)}}
393static between(e,t,n){let r=e;for(;r&&r!==t&&!(e!==r&&n(r));){let e=r.firstChild||r.nextSibling;if(!e){for(;r&&!r.nextSibling;)if(r=r.parentNode,r===t)return;e=r?.nextSibling}r=e}}static replace(t,n,r,i=!1,a=!1){Lo(n)&&(Uo(r,`Need create instance for new tag`),n=r.fromHTML(n));let o;if(j(n)?(Uo(r,`Need create instance for new tag`),o=r.element(n)):o=n,!a)for(;t.firstChild;)o.appendChild(t.firstChild);return i&&e.isElement(t)&&e.isElement(o)&&Io(t.attributes).forEach(e=>{o.setAttribute(e.name,e.value)}),t.parentNode&&t.parentNode.replaceChild(o,t),o}static isEmptyTextNode(t){return e.isText(t)&&(!t.nodeValue||t.nodeValue.replace(Fa(),``).trim().length===0)}static isEmptyContent(t){return e.each(t,t=>e.isEmptyTextNode(t))}static isContentEditable(t,n){return e.isNode(t)&&!e.closest(t,t=>e.isElement(t)&&t.getAttribute(`contenteditable`)===`false`,n)}static isEmpty(t,n=Ja){if(!t)return!0;let r;r=k(n)?n:e=>n.has(e.nodeName.toLowerCase());let i=e=>e.nodeValue==null||zo(e.nodeValue).length===0;return e.isText(t)?i(t):!(e.isElement(t)&&r(t))&&e.each(t,t=>{if(e.isText(t)&&!i(t)||e.isElement(t)&&r(t))return!1})}static isNode(e){return!!(e&&j(e.nodeName)&&typeof e.nodeType==`number`&&e.childNodes&&k(e.appendChild))}static isCell(t){return e.isNode(t)&&(t.nodeName===`TD`||t.nodeName===`TH`)}static isList(t){return e.isTag(t,Ga)}static isLeaf(t){return e.isTag(t,`li`)}static isImage(t){return e.isNode(t)&&/^(img|svg|picture|canvas)$/i.test(t.nodeName)}static isBlock(t){return!Mo(t)&&typeof t==`object`&&e.isNode(t)&&Ua.test(t.nodeName)}static isText(e){return!!(e&&e.nodeType===Node.TEXT_NODE)}static isComment(e){return!!(e&&e.nodeType===Node.COMMENT_NODE)}static isElement(t){return e.isNode(t)?t.nodeType===Node.ELEMENT_NODE:!1}static isFragment(t){return e.isNode(t)?t.nodeType===Node.DOCUMENT_FRAGMENT_NODE:!1}static isHTMLElement(t){if(!e.isNode(t))return!1;let n=t.ownerDocument?.defaultView;return t instanceof(n?n.HTMLElement:HTMLElement)}static isInlineBlock(t){return e.isElement(t)&&!/^(BR|HR)$/i.test(t.tagName)&&[`inline`,`inline-block`].indexOf(M(t,`display`).toString())!==-1}static canSplitBlock(t){return!Mo(t)&&e.isHTMLElement(t)&&e.isBlock(t)&&!/^(TD|TH|CAPTION|FORM)$/.test(t.nodeName)&&t.style!==void 0&&!/^(fixed|absolute)/i.test(t.style.position)}static first(e,t){let n=e?.firstChild;if(!n)return null;do{if(t(n))return n;let r=n.firstChild;if(r||=n.nextSibling,!r&&n.parentNode!==e){do n=n.parentNode;while(n&&!n?.nextSibling&&n.parentNode!==e);r=n?.nextSibling}n=r}while(n);return null}static last(e,t){let n=e?.lastChild;if(!n)return null;do{if(t(n))return n;let r=n.lastChild;if(r||=n.previousSibling,!r&&n.parentNode!==e){do n=n.parentNode;while(n&&!n?.previousSibling&&n.parentNode!==e);r=n?.previousSibling}n=r}while(n);return null}static prev(t,n,r,i=!0){return e.find(t,n,r,!1,i)}static next(t,n,r,i=!0){return e.find(t,n,r,!0,i)}static prevWithClass(t,n){return e.prev(t,t=>e.isElement(t)&&t.classList.contains(n),t.parentNode)}static nextWithClass(t,n){return e.next(t,t=>e.isElement(t)&&t.classList.contains(n),t.parentNode)}static find(e,t,n,r=!0,i=!0){let a=this.nextGen(e,n,r,i),o=a.next();for(;!o.done;){if(t(o.value))return o.value;o=a.next()}return null}static*nextGen(e,t,n=!0,r=!0){let i=[],a=e;do{let t=n?a.nextSibling:a.previousSibling;for(;t;)i.push(t),t=n?t.nextSibling:t.previousSibling;i.reverse(),yield*this.runInStack(e,i,n,r),a=a.parentNode}while(a&&a!==t);return null}static each(e,t,n=!0){let r=this.eachGen(e,n),i=r.next();for(;!i.done;){if(t(i.value)===!1)return!1;i=r.next()}return!0}static eachGen(e,t=!0){return this.runInStack(e,[e],t)}static*runInStack(e,t,n,r=!0){for(;t.length;){let i=t.pop();if(r){let e=n?i.lastChild:i.firstChild;for(;e;)t.push(e),e=n?e.previousSibling:e.nextSibling}e!==i&&(yield i)}}static findWithCurrent(t,n,r,i=`nextSibling`,a=`firstChild`){let o=t;do{if(n(o))return o||null;if(a&&o&&o[a]){let t=e.findWithCurrent(o[a],n,o,i,a);if(t)return t}for(;o&&!o[i]&&o!==r;)o=o.parentNode;o&&o[i]&&o!==r&&(o=o[i])}while(o&&o!==r);return null}static findSibling(t,n=!0,r=t=>!e.isEmptyTextNode(t)){let i=e.sibling(t,n);for(;i&&!r(i);)i=e.sibling(i,n);return i&&r(i)?i:null}static findNotEmptySibling(t,n){return e.findSibling(t,n,t=>!e.isEmptyTextNode(t)&&!!(!e.isText(t)||t.nodeValue?.length&&zo(t.nodeValue)))}static findNotEmptyNeighbor(t,n,r){return fs(n?e.prev:e.next,t,t=>!!(t&&(!(e.isText(t)||e.isComment(t))||zo(t?.nodeValue||``).length)),r)}static sibling(e,t){return t?e.previousSibling:e.nextSibling}static up(e,t,n,r=!1){let i=e;if(!i)return null;do{if(t(i))return i;if(i===n||!i.parentNode)break;i=i.parentNode}while(i&&i!==n);return i===n&&r&&t(i)?i:null}static closest(t,n,r){let i,a=e=>e.toLowerCase();if(k(n))i=n;else if(Ao(n)||Ro(n)){let e=Ro(n)?n:new Set(n.map(a));i=t=>!!(t&&e.has(a(t.nodeName)))}else i=e=>!!(e&&a(n)===a(e.nodeName));return e.up(t,i,r)}static furthest(e,t,n){let r=null,i=e?.parentElement;for(;i&&i!==n;)t(i)&&(r=i),i=i?.parentElement;return r}static appendChildFirst(e,t){let n=e.firstChild;n?n!==t&&e.insertBefore(t,n):e.appendChild(t)}static after(e,t){let{parentNode:n}=e;n&&(n.lastChild===e?n.appendChild(t):n.insertBefore(t,e.nextSibling))}static before(e,t){let{parentNode:n}=e;n&&n.insertBefore(t,e)}
393static prepend(e,t){e.insertBefore(t,e.firstChild)}static append(e,t){Ao(t)?t.forEach(t=>{this.append(e,t)}):e.appendChild(t)}static moveContent(t,n,r=!1,i=()=>!0){let a=(t.ownerDocument||Ha).createDocumentFragment();Io(t.childNodes).filter(t=>i(t)?!0:(e.safeRemove(t),!1)).forEach(e=>{a.appendChild(e)}),!r||!n.firstChild?n.appendChild(a):n.insertBefore(a,n.firstChild)}static isOrContains(e,t,n=!1){return e===t?!n:!!(t&&e&&this.up(t,t=>t===e,e,!0))}static safeRemove(...t){t.forEach(t=>e.isNode(t)&&t.parentNode&&t.parentNode.removeChild(t))}static safeInsertNode(t,n){t.collapsed||t.deleteContents();let r=e.isFragment(n)?n.lastChild:n;t.startContainer===t.endContainer&&t.collapsed&&e.isTag(t.startContainer,qa)?e.after(t.startContainer,n):(t.insertNode(n),r&&t.setStartBefore(r)),t.collapse(!0),[n.nextSibling,n.previousSibling].forEach(t=>e.isText(t)&&!t.nodeValue&&e.safeRemove(t))}static hide(e){e&&(is(e,`__old_display`,e.style.display),e.style.display=`none`)}static show(e){if(!e)return;let t=is(e,`__old_display`);e.style.display===`none`&&(e.style.display=t||``)}static isTag(e,t){if(Array.isArray(t))throw TypeError(`Dom.isTag does not support array`);if(!this.isElement(e))return!1;let n=e.tagName.toLowerCase();return t instanceof Set?t.has(n)||t.has(e.tagName.toUpperCase()):n===t||e.tagName.toUpperCase()===t}static markTemporary(e,t){return t&&N(e,t),N(e,Co,!0),e}static isTemporary(t){return e.isElement(t)?e.isMarker(t)||N(t,`data-jodit-temp`)===`true`:!1}static isMarker(t){return e.isNode(t)&&e.isTag(t,`span`)&&t.hasAttribute(`data-jodit-selection_marker`)}static replaceTemporaryFromString(e){return e.replace(xs,`$2`)}static temporaryList(e){return Io(e.querySelectorAll(`[${Co}]`))}};function Ss(){let e=!0;try{let t=Ha.createElement(`input`);t.type=`color`,t.value=`!`,e=t.type===`color`&&t.value!==`!`}catch{e=!1}return e}function Cs(e){return!!e&&e instanceof DOMException&&e.name===`AbortError`}function ws(e,t={}){if(typeof e!=`object`)return String(e);let n=new Set(t.excludeKeys),r=new WeakMap;return JSON.stringify(e,(e,t)=>{if(!n.has(e)){if(typeof t==`object`&&t){if(r.get(t))return`[refObject]`;r.set(t,!0)}return t}},t.prettify)}function Ts(e,t){return e===t||ws(e)===ws(t)}function Es(e,t){return e===t}function Ds(e){return e.search(/<meta.*?Microsoft Excel\s[\d].*?>/)!==-1||e.search(/<meta.*?Microsoft Word\s[\d].*?>/)!==-1||e.search(/<meta[^>]*?ProgId[^>]*?(Word|Excel)\./i)!==-1||e.search(/<meta[^>]*?(LibreOffice|OpenOffice)/i)!==-1||e.search(/urn:schemas-microsoft-com:office:(word|excel)/)!==-1||e.search(/<\w[^>]*\sclass=("|')?Mso/)!==-1||e.search(/style='[^']*mso-/)!==-1||e.search(/style="[^"]*mso-/)!==-1&&e.search(/<font/)!==-1}function Os(e){return!Mo(e)&&k(e.init)}function ks(e){return!Mo(e)&&k(e.destruct)}function As(e){return!Mo(e)&&P.isElement(e.container)}function js(e){return j(e)&&Yo(e)&&(e=parseFloat(e)),typeof e==`number`&&Number.isFinite(e)&&!(e%1)}function Ms(e){return!!(e&&e instanceof Object&&k(e.constructor)&&(typeof Jodit<`u`&&e instanceof Jodit||e.isJodit))}var Ns=e=>j(e)&&e.length===23&&/^[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{5}$/i.test(e);function Ps(e){return P.isMarker(e)}function Fs(e){return typeof e==`number`&&!isNaN(e)&&isFinite(e)}function Is(e){if(e.includes(` `))return!1;if(typeof URL<`u`)try{let t=new URL(e);return[`https:`,`http:`,`ftp:`,`file:`,`rtmp:`].includes(t.protocol)}catch{return!1}let t=Ha.createElement(`a`);return t.href=e,!!t.hostname}function Ls(e){return e.length?!/[^0-9A-Za-zа-ÑÐ-ЯÐÑ\w\-_. ]/.test(e)&&e.trim().length>0:!1}function Rs(e,t){let n=Object.getOwnPropertyDescriptor(e,t);return!n||k(n.get)?null:n.value}function zs(e,t,n){let r=n.get;if(!r)throw cs(`Getter property descriptor expected`);n.get=function(){let e=r.call(this);return e&&e.noCache===!0||Object.defineProperty(this,t,{configurable:n.configurable,enumerable:n.enumerable,writable:!1,value:e}),e}}function Bs(e,t,n){let r=n.value;if(!k(r))throw cs(`Handler must be a Function`);let i=!0,a=new WeakMap;n.value=function(...e){if(i&&a.has(this.constructor))return a.get(this.constructor)?.cloneNode(!0);let t=r.apply(this,e);return i&&P.isElement(t)&&a.set(this.constructor,t),i?t.cloneNode(!0):t},e.hookStatus(Oo.ready,e=>{i=!!(ns(e)?e:e.jodit).options.cache})}var Vs=new Map,Hs=e=>{if(k(e.className))return e.className();let t=e.constructor?.originalConstructor||e.constructor;if(Vs.has(t))return Vs.get(t);if(t.name)return t.name;let n=new RegExp(/^\s*function\s*(\S*)\s*\(/),r=t.toString().match(n);return r?r[1]:``},Us=new Map;function Ws(e){class t extends e{constructor(...e){super(...e),this.constructor===t&&(this instanceof t||Object.setPrototypeOf(this,t.prototype),this.setStatus(`ready`))}}let n=Hs(e.prototype);return Us.has(n),Us.set(n,t),t}function Gs(e){return Us.get(e)}function Ks(e,t,...n){if(!t)e.call(null,...n);else return Va.setTimeout(e,t,...n);return 0}function qs(e){Va.clearTimeout(e)}var Js=class{constructor(){this.timers=new Map,this.__callbacks=new Map,this.__queueMicrotaskNative=(queueMicrotask==null?void 0:queueMicrotask.bind(window))??Promise.resolve().then.bind(Prom
393ise.resolve()),this.promisesRejections=new Set,this.__requestsIdle=new Set,this.__controllers=new Set,this.__requestsRaf=new Set,this.__requestIdleCallbackNative=window.requestIdleCallback?.bind(window)??((e,t)=>{let n=Date.now();return this.setTimeout(()=>{e({didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-n))})},t?.timeout??1)}),this.__cancelIdleCallbackNative=window.cancelIdleCallback?.bind(window)??(e=>{this.clearTimeout(e)}),this.isDestructed=!1}delay(e){return this.promise(t=>this.setTimeout(t,e))}setTimeout(e,t,...n){if(this.isDestructed)return 0;let r={};Mo(t)&&(t=0),Fs(t)||(r=t,t=r.timeout||0),r.label&&this.clearLabel(r.label);let i=Ks(e,t,...n),a=r.label||i;return this.timers.set(a,i),this.__callbacks.set(a,e),i}updateTimeout(e,t){if(Uo(e&&this.timers.has(e),`Label does not exist`),!e||!this.timers.has(e))return null;let n=this.__callbacks.get(e);return Uo(k(n),`Callback is not a function`),this.setTimeout(n,{label:e,timeout:t})}clearLabel(e){e&&this.timers.has(e)&&(qs(this.timers.get(e)),this.timers.delete(e),this.__callbacks.delete(e))}clearTimeout(e){if(j(e))return this.clearLabel(e);qs(e),this.timers.delete(e),this.__callbacks.delete(e)}debounce(e,t,n=!1){let r=0,i=!1,a=[],o=(...t)=>{if(!i){r=0;let n=e(...t);if(i=!0,a.length){let e=()=>{a.forEach(e=>e()),a.length=0};ds(n)?n.finally(e):e()}}},s=(...a)=>{i=!1,t?(!r&&n&&o(...a),qs(r),r=this.setTimeout(()=>o(...a),k(t)?t():t),this.timers.set(e,r)):o(...a)};return Go(t)&&t.promisify?(...e)=>{let t=this.promise(e=>{a.push(e)}).catch(e=>{if(Cs(e))return null;throw e});return s(...e),t}:s}microDebounce(e,t=!1){let n=!1,r=!0,i;return((...a)=>{if(i=a,n){r=!0;return}r=!0,t&&(r=!1,e(...i)),n=!0,this.__queueMicrotaskNative(()=>{n=!1,!this.isDestructed&&r&&e(...i)})})}throttle(e,t,n=!1){let r=null,i,a,o;return(...n)=>{if(i=!0,o=n,!t){e(...o);return}r||(a=()=>{i?(e(...o),i=!1,r=this.setTimeout(a,k(t)?t():t),this.timers.set(a,r)):r=null},a())}}promise(e){let t=()=>{},n=new Promise((n,r)=>{t=()=>r(as(`Abort async`)),this.promisesRejections.add(t),e(n,r)});return n.finally,n.finally(()=>{this.promisesRejections.delete(t)}).catch(()=>null),n.rejectCallback=t,n}promiseState(e){if(e.status)return e.status;if(!Promise.race)return new Promise(t=>{e.then(e=>(t(`fulfilled`),e),e=>{throw t(`rejected`),e}),this.setTimeout(()=>{t(`pending`)},100)});let t={};return Promise.race([e,t]).then(e=>e===t?`pending`:`fulfilled`,()=>`rejected`)}requestIdleCallback(e,t={timeout:100}){let n=this.__requestIdleCallbackNative(e,t);return this.__requestsIdle.add(n),n}requestIdlePromise(e){return this.promise(t=>{let n=this.requestIdleCallback(()=>t(n),e)})}schedulerPostTask(e,t={delay:0,priority:`user-visible`}){let n=new AbortController;if(t.signal&&t.signal.addEventListener(`abort`,()=>n.abort()),this.__controllers.add(n),globalThis.scheduler!==void 0){let r=globalThis.scheduler.postTask(e,{...t,signal:n.signal});return r.finally(()=>{this.__controllers.delete(n)}).catch(()=>null),r}return this.promise((r,i)=>{let a=this.setTimeout(()=>{try{r(e())}catch(e){i(e)}this.__controllers.delete(n)},t.delay||1);n.signal.addEventListener(`abort`,()=>{this.clearTimeout(a),this.__controllers.delete(n),i(as())})})}schedulerYield(){return this.schedulerPostTask(()=>{},{priority:`user-visible`})}cancelIdleCallback(e){return this.__requestsIdle.delete(e),this.__cancelIdleCallbackNative(e)}requestAnimationFrame(e){let t=requestAnimationFrame(e);return this.__requestsRaf.add(t),t}cancelAnimationFrame(e){this.__requestsRaf.delete(e),cancelAnimationFrame(e)}clear(){this.__requestsIdle.forEach(e=>this.cancelIdleCallback(e)),this.__requestsRaf.forEach(e=>this.cancelAnimationFrame(e)),this.__controllers.forEach(e=>e.abort()),this.timers.forEach(e=>qs(this.timers.get(e))),this.timers.clear(),this.promisesRejections.forEach(e=>e()),this.promisesRejections.clear()}destruct(){this.clear(),this.isDestructed=!0}};function Ys(e){return Array.isArray(e)?e:e.split(/[,\s]+/)}var Xs=`JoditEventDefaultNamespace`,Zs=class{constructor(){this.__store=new Map}get(e,t){if(this.__store.has(t)){let n=this.__store.get(t);return Uo(n,`-`),n[e]}}indexOf(e,t,n){let r=this.get(e,t);if(r){for(let e=0;e<r.length;e+=1)if(r[e].originalCallback===n)return e}return!1}
393namespaces(e=!1){let t=Io(this.__store.keys());return e?t.filter(e=>e!==Xs):t}events(e){let t=this.__store.get(e);return t?Object.keys(t):[]}set(e,t,n,r=!1){let i=this.__store.get(t);i||(i={},this.__store.set(t,i)),i[e]===void 0&&(i[e]=[]),r?i[e].unshift(n):i[e].push(n)}clear(){this.__store.clear()}clearEvents(e,t){let n=this.__store.get(e);n&&n[t]&&(delete n[t],Object.keys(n).length||this.__store.delete(e))}isEmpty(){return this.__store.size===0}},Qs=class{mute(e){return this.__mutedEvents.add(e??`*`),this}isMuted(e){return e&&this.__mutedEvents.has(e)?!0:this.__mutedEvents.has(`*`)}unmute(e){return this.__mutedEvents.delete(e??`*`),this}__eachEvent(e,t){Ys(e).map(e=>e.trim()).forEach(e=>{let n=e.split(`.`),r=n[1]||`JoditEventDefaultNamespace`;t.call(this,n[0],r)})}__getStore(e){if(!e)throw cs(`Need subject`);if(e[this.__key]===void 0){let t=new Zs;Object.defineProperty(e,this.__key,{enumerable:!1,configurable:!0,writable:!0,value:t})}return e[this.__key]}__removeStoreFromSubject(e){e[this.__key]!==void 0&&delete e[this.__key]}__triggerNativeEvent(e,t){let n=this.__doc.createEvent(`HTMLEvents`);j(t)?n.initEvent(t,!0,!0):(n.initEvent(t.type,t.bubbles,t.cancelable),[`screenX`,`screenY`,`clientX`,`clientY`,`target`,`srcElement`,`currentTarget`,`timeStamp`,`which`,`keyCode`].forEach(e=>{Object.defineProperty(n,e,{value:t[e],enumerable:!0})}),Object.defineProperty(n,"originalEvent",{value:t,enumerable:!0})),e.dispatchEvent(n)}get current(){return this.currents[this.currents.length-1]}on(e,t,n,r){let i,a,o,s;if(j(e)||jo(e)?(i=this,a=e,o=t,s=n):(i=e,a=t,o=n,s=r),!(j(a)||jo(a))||a.length===0)throw cs(`Need events names`);if(!k(o))throw cs(`Need event handler`);if(Ao(i))return i.forEach(e=>{this.on(e,a,o,s)}),this;let c=i,l=this.__getStore(c),u=this,d=function(e,...t){if(!u.isMuted(e))return o&&o.call(this,...t)};return $s(c)&&(d=function(e){if(!u.isMuted(e.type)&&(u.__prepareEvent(e),o&&o.call(this,e)===!1))return e.preventDefault(),e.stopImmediatePropagation(),!1}),this.__eachEvent(a,(e,t)=>{if(e.length===0)throw cs(`Need event name`);if(l.indexOf(e,t,o)===!1){let n={event:e,originalCallback:o,syntheticCallback:d};if(l.set(e,t,n,s?.top),$s(c)){let t=Do.has(e)?{passive:!0,capture:s?.capture??!1}:s?.capture??!1;d.options=t,c.addEventListener(e,d,t),this.__memoryDOMSubjectToHandler(c,d)}}}),this}__memoryDOMSubjectToHandler(e,t){let n=this.__domEventsMap.get(e)||new Set;n.add(t),this.__domEventsMap.set(e,n)}__unmemoryDOMSubjectToHandler(e,t){let n=this.__domEventsMap,r=n.get(e)||new Set;r.delete(t),r.size?n.set(e,r):n.delete(e)}one(e,t,n,r){let i,a,o,s;j(e)||jo(e)?(i=this,a=e,o=t,s=n):(i=e,a=t,o=n,s=r);let c=(...e)=>(this.off(i,a,c),o(...e));return this.on(i,a,c,s),this}off(e,t,n){let r,i,a;if(j(e)||jo(e)?(r=this,i=e,a=t):(r=e,i=t,a=n),Ao(r))return r.forEach(e=>{this.off(e,i,a)}),this;let o=r,s=this.__getStore(o);if(!(j(i)||jo(i))||i.length===0)return s.namespaces().forEach(e=>{this.off(o,`.`+e)}),this.__removeStoreFromSubject(o),this;let c=e=>{$s(o)&&(o.removeEventListener(e.event,e.syntheticCallback,e.syntheticCallback.options??!1),this.__unmemoryDOMSubjectToHandler(o,e.syntheticCallback))},l=(e,t)=>{if(e===``){s.events(t).forEach(e=>{e!==``&&l(e,t)});return}let n=s.get(e,t);if(!(!n||!n.length))if(!k(a))n.forEach(c),n.length=0,s.clearEvents(t,e);else{let r=s.indexOf(e,t,a);r!==!1&&(c(n[r]),n.splice(r,1),n.length||s.clearEvents(t,e))}};return this.__eachEvent(i,(e,t)=>{t===`JoditEventDefaultNamespace`?s.namespaces().forEach(t=>{l(e,t)}):l(e,t)}),s.isEmpty()&&this.__removeStoreFromSubject(o),this}stopPropagation(e,t){let n=j(e)?this:e,r=j(e)?e:t;if(typeof r!=`string`)throw cs(`Need event names`);let i=this.__getStore(n);this.__eachEvent(r,(e,t)=>{let r=i.get(e,t);r&&this.__stopped.push(r),t===`JoditEventDefaultNamespace`&&i.namespaces(!0).forEach(t=>this.stopPropagation(n,e+`.`+t))})}__removeStop(e){if(e){let t=this.__stopped.indexOf(e);t!==-1&&this.__stopped.splice(0,t+1)}}__isStopped(e){return e!==void 0&&this.__stopped.indexOf(e)!==-1}fire(e,t,...n){let r,i,a=j(e)?this:e,o=j(e)?e:t,s=j(e)?[t,...n]:n;if(!$s(a)&&!j(o))throw cs(`Need events names`);let c=this.__getStore(a);return!j(o)&&$s(a)?this.__triggerNativeEvent(a,t):this.__eachEvent(o,(e,t)=>{if($s(a))this.__triggerNativeEvent(a,e);else{let n=c.get(e,t);if(n)try{[...n].every(t=>!this.__isStopped(n)&&(this.currents.push(e),i=t.syntheticCallback.call(a,e,...s),this.currents.pop(),i!==void 0&&(r=i),!0))}finally{this.__removeStop(n)}t===`JoditEventDefaultNamespace`&&!$s(a)&&c.namespaces().filter(e=>e!==t).forEach(t=>{let n=this.fire.apply(this,[a,e+`.`+t,...s]);n!==void 0&&(r=n)})}}),r}constructor(e){this.__domEventsMap=new Map,this.__mutedEvents=new Set,this.__key=`__JoditEventEmitterNamespaces`,this.__doc=Ha,this.__prepareEvent=e=>{e.cancelBubble||(e.composed&&k(e.composedPath)&&e.composedPath()[0]&&Object.defineProperty(e,"target",{value:e.composedPath()[0],configurable:!0,enumerable:!0}),e.type.match(/^touch/)&&e.changedTouches&&e.changedTouches.length&&[`clientX`,`clientY`,`pageX`,`pageY`].forEach(t=>{Object.defineProperty(e,t,{value:e.changedTouches[0][t],configurable:!0,enumerable:!0})}),e.originalEvent||=e,e.type===`paste`&&e.clipboardData===void 0&&this.__doc.defaultView.clipboardData&&Object.defineProperty(e,"clipboardData",{get:()=>this.__doc.defaultView.clipboardData,configurable:!0,enumerable:!0}))},this.currents=[],this.__stopped=[],this.__isDestructed=!1,e&&(this.__doc=e),this.__key+=new Date().getTime()}destruct(){this.__isDestructed||(this.__isDestructed=!0,this.__domEventsMap.forEac
393h((e,t)=>{this.off(t)}),this.__domEventsMap.clear(),this.__mutedEvents.clear(),this.currents.length=0,this.__stopped.length=0,this.off(this),this.__getStore(this).clear(),this.__removeStoreFromSubject(this))}};function $s(e){return e&&k(e.addEventListener)}var ec=new Qs,tc=e=>(Va.location.protocol===`file:`&&/^\/\//.test(e)&&(e=`https:`+e),e),nc=new Map,rc=e=>(t,n)=>{if(nc.has(n))return nc.get(n);let r=e(t,n);return nc.set(n,r),r},ic=rc((e,t)=>e.async.promise((n,r)=>{if(e.isInDestruct)return r();let i=e.c.element(`script`,{type:`text/javascript`,crossorigin:`anonymous`,referrerpolicy:`no-referrer`,async:!0,src:tc(t)});e.o.nonce&&i.setAttribute(`nonce`,e.o.nonce),e.e.one(i,`error`,r).one(i,`load`,n),e.od.body.appendChild(i)})),ac=rc((e,t)=>e.async.promise((n,r)=>{if(e.isInDestruct)return r();let i=e.c.element(`link`);i.rel=`stylesheet`,i.media=`all`,i.crossOrigin=`anonymous`,e.o.nonce&&i.setAttribute(`nonce`,e.o.nonce),!e.isInDestruct&&e.e.on(i,`load`,()=>n(i)).on(i,`error`,r),i.href=tc(t),e.o.shadowRoot?e.o.shadowRoot.appendChild(i):e.od.body.appendChild(i)}));function oc(e,t,n=0){return j(t[n])?ic(e,t[n]).then(()=>oc(e,t,n+1)):Promise.resolve()}function sc(e,t,n=0){return j(t[n])?ac(e,t[n]).then(()=>sc(e,t,n+1)):Promise.resolve()}function cc(e){return Ko(e).toLowerCase()}var lc=new Set;async function uc(e,t){let n=dc(e,t,!1);if(!lc.has(n))return lc.add(n),ac(e,n)}function dc(e,t,n){t=Ko(t);let r=e.minified?`.min`:``;return e.basePath+`plugins/`+t+`/`+t+r+`.`+(n?`js`:`css`)}function fc(e,t,n,r){try{let i=n.filter(t=>!e.has(cc(t.name)));i.length&&pc(t,i,r)}catch{}}function pc(e,t,n){t.map(t=>ic(e,t.url||dc(e,t.name,!0)).then(n).catch(()=>null))}function mc(e,t,n,r,i,a,o){if(Os(r))try{r.init(e)}catch(e){console.error(e)}if(i.set(t,r),a.delete(t),r.hasStyle&&uc(e,t).catch(e=>{}),r.styles){let n=o(e,t,`style`);n.innerHTML=r.styles}}function hc(e,t){try{try{return k(t)?new t(e):t}catch{if(k(t)&&!t.prototype)return t(e)}}catch(e){console.error(e)}return null}var gc=class{constructor(e){this.opts=e,this.__items=new Map}get size(){return this.__items.size}add(e,t){this.__items.set(cc(e),t),ec.fire(`plugin:${e}:ready`)}get(e){return this.__items.get(cc(e))}remove(e){this.__items.delete(cc(e))}__getFullPluginsList(e){let t=[];return this.__items.forEach((n,r)=>{(!e||e.has(r))&&t.push([r,n])}),t}__init(e){let{extraList:t,disableList:n,filter:r}=vc(e),i=new Map,a={},o=new Set;e.__plugins=a;let s=()=>{if(e.isInDestruct)return;let t=!1;this.__getFullPluginsList(r).forEach(([r,s])=>{if(n.has(r)||i.has(r))return;let c=s?.requires;if(c&&Ao(c)&&c.length){if(c.some(e=>n.has(e)))return;if(!c.every(e=>i.has(e))){o.add(r);return}}t=!0;let l=hc(e,s);if(!l){i.set(r,null),o.delete(r);return}mc(e,r,s,l,i,o,this.opts.getContainer),a[r]=l}),t&&(e.e.fire(`updatePlugins`),s())};t&&t.length&&fc(this.__items,e,t,s),s(),_c(e,a)}wait(e){return new Promise(t=>{if(this.get(e))return t();let n=()=>{t(),ec.off(`plugin:${e}:ready`,n)};ec.on(`plugin:${e}:ready`,n)})}};function _c(e,t){e.e.on(`beforeDestruct`,()=>{Object.keys(t).forEach(n=>{let r=t[n];ks(r)&&r.destruct(e),delete t[n]}),delete e.__plugins})}function vc(e){return{extraList:e.o.extraPlugins.map(e=>j(e)?{name:e}:e),disableList:new Set(Ys(e.o.disablePlugins).map(cc)),filter:e.o.safeMode?new Set(e.o.safePluginsList):null}}var yc=class{constructor(){this.__map=new Map}on(e,t){var n;return this.__map.has(e)||this.__map.set(e,new Set),(n=this.__map.get(e))==null||n.add(t),this}off(e,t){var n;return this.__map.has(e)&&((n=this.__map.get(e))==null||n.delete(t)),this}destruct(){this.__map.clear()}emit(e,...t){var n;let r;return this.__map.has(e)&&((n=this.__map.get(e))==null||n.forEach(e=>{r=e(...t)})),r}},bc=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},xc=class extends yc{setWork(e){return this.isWorked?this.break():this.stop(),this.workNodes=P.eachGen(e,!this.options.reverse),this.isFinished=!1,this.hadAffect=!1,this._requestStarting(),this}constructor(e,t={}){super(),this.async=e,this.options=t,this.workNodes=null,this.hadAffect=!1,this.isWorked=!1,this.isFinished=!1,this.__schedulerController=null}_requestStarting(){this.__schedulerController=new AbortController,this.async.schedulerPostTask(this.__workPerform,{delay:this.options.timeout,signal:this.__schedulerController.signal}).catch(()=>null)}
393break(e){this.isWorked&&(this.stop(),this.emit(`break`,e))}end(){this.isWorked&&(this.stop(),this.emit(`end`,this.hadAffect),this.hadAffect=!1)}stop(){var e;this.isWorked=!1,this.isFinished=!0,this.workNodes=null,(e=this.__schedulerController)==null||e.abort(),this.__schedulerController=null}destruct(){super.destruct(),this.stop()}__workPerform(){if(this.workNodes){this.isWorked=!0;let e=0,t=this.options.timeoutChunkSize??50;for(;!this.isFinished&&e<t;){let t=this.workNodes.next();if(e+=1,this.visitNode(t.value)&&(this.hadAffect=!0),t.done){this.end();return}}}else this.end();this.isFinished||this._requestStarting()}visitNode(e){return!e||this.options.whatToShow!==void 0&&e.nodeType!==this.options.whatToShow?!1:this.emit(`visit`,e)??!1}};bc([A],xc.prototype,`__workPerform`,null);var Sc={},Cc=1,wc=new Set;function Tc(){function e(){return Cc+=10*(Math.random()+1),Math.round(Cc).toString(16)}let t=e();for(;wc.has(t);)t=e();return wc.add(t),t}var Ec=new gc({getContainer:Ac}),Dc={},Oc=e=>{Object.keys(e).forEach(t=>{wo[t]?Object.assign(wo[t],e[t]):wo[t]=e[t]})},kc=new WeakMap;function Ac(e,t,n=`div`,r=!1){let i=j(t)?t:t?Hs(t.prototype):`jodit-utils`,a=kc.get(e)||{},o=i+n,s=ns(e)?e:e.j,c=null;if(!a[o]){let t=s.c;if(c=jc(s.o,s.container,e.od.body),r&&Ms(e)&&e.od!==e.ed){t=e.createInside;let r=n===`style`?e.ed.head:e.ed.body;c=Ms(e)&&e.o.shadowRoot?e.o.shadowRoot:r}let l=t.element(n,{className:`jodit jodit-${Ko(i)}-container jodit-box`});s.o.nonce&&(n===`style`||n===`script`)&&l.setAttribute(`nonce`,s.o.nonce),l.classList.add(`jodit_theme_${s.o.theme||`default`}`),c.appendChild(l),a[o]=l,e.hookStatus(`beforeDestruct`,()=>{s.events.off(l),P.safeRemove(l),delete a[o],Object.keys(a).length&&kc.delete(e)}),kc.set(e,a),s.events.fire(`getContainer`,l)}return a[o].classList.remove(`jodit_theme_default`,`jodit_theme_dark`),a[o].classList.add(`jodit_theme_${s.o.theme||`default`}`),a[o]}function jc(e,t,n){return e.popupRoot??e.shadowRoot??P.closest(t,e=>P.isHTMLElement(e)&&(P.isTag(e,`dialog`)||[`fixed`,`absolute`].includes(M(e,`position`))),n)??n}var Mc=ec,Nc=e=>Ao(e)?e:[e];function Pc(e,t){let n;return n=t.querySelectorAll(e),[].slice.call(n)}var Fc=(e,t)=>{if(!e||e.nodeType!==Node.ELEMENT_NODE||!e.parentNode||t===e)return``;if(e.id)return`//*[@id='`+e.id+`']`;let n=[].filter.call(e.parentNode.childNodes,t=>t.nodeName===e.nodeName);return Fc(e.parentNode,t)+`/`+e.nodeName.toLowerCase()+(n.length>1?`[`+(Io(n).indexOf(e)+1)+`]`:``)},Ic=e=>(`container`in e&&(e=e.container),Pc(`[ref],[data-ref]`,e).reduce((e,t)=>{let n=N(t,`-ref`);return n&&j(n)&&(e[es(n)]=t,e[n]=t),e},{})),Lc=e=>{if(!P.isElement(e))return null;let t=[],n=e;for(;n&&n.nodeType===Node.ELEMENT_NODE;){let e=n.nodeName.toLowerCase();if(n.id){e+=`#`+n.id,t.unshift(e);break}{let t=n,r=1;do t=t.previousElementSibling,t&&t.nodeName.toLowerCase()===e&&r++;while(t);e+=`:nth-of-type(`+r+`)`}t.unshift(e),n=n.parentNode}return t.join(` > `)};function Rc(e,t){let n=e;if(j(e))try{n=t.querySelector(e)}catch{throw cs(`String "`+e+`" should be valid HTML selector`)}if(!n||typeof n!=`object`||!P.isElement(n)||!n.cloneNode)throw cs(`Element "`+e+`" should be string or HTMLElement instance`);return n}function zc(e){return e.replace(/mso-[a-z-]+:[\s]*[^;]+;/gi,``).replace(/mso-[a-z-]+:[\s]*[^";']+$/gi,``).replace(/border[a-z-]*:[\s]*[^;]+;/gi,``).replace(/([0-9.]+)(pt|cm)/gi,(e,t,n)=>{switch(n.toLowerCase()){case`pt`:return(parseFloat(t)*1.328).toFixed(0)+`px`;case`cm`:return(parseFloat(t)*.02645833).toFixed(0)+`px`}return e})}function Bc(e){let t=/<html(?:\s[^>]*)?>/i.exec(e);if(!t)return e;e=e.substring(t.index);let n=e.toLowerCase().lastIndexOf(`</html>`);n!==-1&&(e=e.substring(0,n+7));let r=Ha.createElement(`iframe`);r.style.display=`none`,Ha.body.appendChild(r);let i=``,a=[];try{let t=r.contentDocument||(r.contentWindow?r.contentWindow.document:null);if(t){t.open(),t.write(e),t.close(),P.each(t.body,e=>{P.isElement(e)&&/mso-list:\s*ignore/i.test(e.getAttribute(`style`)||``)&&P.safeRemove(e)});try{for(let e=0;e<t.styleSheets.length;e+=1){let n=t.styleSheets[e].cssRules;for(let e=0;e<n.length;e+=1)n[e].selectorText!==``&&(a=Pc(n[e].selectorText,t.body),a.forEach(t=>{t.style.cssText=zc(n[e].style.cssText+`;`+t.style.cssText)}))}}catch{}P.each(t.body,e=>{if(P.isElement(e)){let t=e,n=t.getAttribute(`style`);n&&(t.style.cssText=zc(n)),t.hasAttribute(`style`)&&!t.getAttribute(`style`)&&t.removeAttribute(`style`)}}),i=t.firstChild?zo(t.body.innerHTML):``}}catch{}finally{P.safeRemove(r)}return i&&(e=i),zo(e.replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g,``).replace(/<!--[^>]*>/g,``))}function Vc(e){e.indexOf(`<html `)!==-1&&(e=e.substring(e.indexOf(`<html `),e.length),e=e.substring(0,e.lastIndexOf(`</html>`)+7));let t=``;try{let n=Ha.createElement(`div`);n.innerHTML=e;let r=[];n.firstChild&&P.each(n,e=>{if(e)switch(e.nodeType){case Node.ELEMENT_NODE:switch(e.nodeName){case`STYLE`:case`LINK`:case`META`:r.push(e);break;case`W:SDT`:case`W:SDTPR`:case`FONT`:P.unwrap(e);break;default:if(/mso-list:\s*ignore/i.test(e.getAttribute(`style`)||``)){r.push(e);break}
393Io(e.attributes).forEach(t=>{[`src`,`href`,`rel`,`content`].indexOf(t.name.toLowerCase())===-1&&e.removeAttribute(t.name)})}break;case Node.TEXT_NODE:break;default:r.push(e)}}),P.safeRemove.apply(null,r),t=n.innerHTML}catch{}return t&&(e=t),e=e.split(/(\n)/).filter(zo).join(` 394`),e.replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g,``).replace(/<!--[^>]*>/g,``)}function Hc(e){let t=Ha.createElement(`div`);return t.textContent=e,t.innerHTML}function Uc(e){return e.replace(/\r\n|\r|\n/g,`<br/>`)}function Wc(e,t){t&&t!==`normal`?t===`center`?M(e,{float:``,display:`block`,marginLeft:`auto`,marginRight:`auto`}):(M(e,`float`,t),ts(e)):(M(e,`float`)&&[`right`,`left`].indexOf(M(e,`float`).toString().toLowerCase())!==-1&&M(e,`float`,``),ts(e))}function Gc(e){P.each(e,e=>{P.isHTMLElement(e)&&e.style.textAlign&&(e.style.textAlign=``,e.style.cssText.trim().length||e.removeAttribute(`style`))})}function Kc(e,t){if(P.isNode(t)&&P.isElement(t))switch(Gc(t),e.toLowerCase()){case`justifyfull`:t.style.textAlign=`justify`;break;case`justifyright`:t.style.textAlign=`right`;break;case`justifyleft`:t.style.textAlign=`left`;break;case`justifycenter`:t.style.textAlign=`center`}}var qc=e=>{let t=navigator.userAgent.toLowerCase(),n=/(firefox)[\s/]([\w.]+)/.exec(t)||/(chrome)[\s/]([\w.]+)/.exec(t)||/(webkit)[\s/]([\w.]+)/.exec(t)||/(opera)(?:.*version)[\s/]([\w.]+)/.exec(t)||/(msie)[\s]([\w.]+)/.exec(t)||/(trident)\/([\w.]+)/.exec(t)||t.indexOf(`compatible`)<0||[];return e===`version`?n[2]:e===`webkit`?n[1]===`chrome`||n[1]===`webkit`:e===`ff`?n[1]===`firefox`:e===`msie`?n[1]===`trident`||n[1]===`msie`:n[1]===e},Jc=(e,t)=>{let n=[],r=encodeURIComponent;for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i)){let a=t?t+`[`+i+`]`:i,o=e[i];n.push(Go(o)?Jc(o,a):r(a)+`=`+r(o))}return n.join(`&`)},Yc={},F=class e{constructor(){this.cache=!0,this.defaultTimeout=100,this.namespace=``,this.safeMode=!1,this.width=`auto`,this.height=`auto`,this.safePluginsList=[`about`,`enter`,`backspace`,`size`,`bold`,`hotkeys`],this.license=``,this.preset=`custom`,this.presets={inline:{inline:!0,toolbar:!1,toolbarInline:!0,toolbarInlineForSelection:!0,showXPathInStatusbar:!1,showCharsCounter:!1,showWordsCounter:!1,showPlaceholder:!1}},this.ownerDocument=Ha,this.ownerWindow=Va,this.shadowRoot=null,this.nonce=``,this.zIndex=0,this.readonly=!1,this.disabled=!1,this.activeButtonsInReadOnly=[`source`,`fullsize`,`print`,`about`,`dots`,`selectall`],this.allowCommandsInReadOnly=[`selectall`,`preview`,`print`],this.toolbarButtonSize=`middle`,this.allowTabNavigation=!1,this.inline=!1,this.theme=`default`,this.saveModeInStorage=!1,this.asyncStorage={},this.editorClassName=!1,this.className=!1,this.style=!1,this.containerStyle=!1,this.styleValues={},this.triggerChangeEvent=!0,this.direction=``,this.language=`auto`,this.debugLanguage=!1,this.i18n=!1,this.tabIndex=-1,this.toolbar=!0,this.statusbar=!0,this.showTooltip=!0,this.showTooltipDelay=200,this.useNativeTooltip=!1,this.defaultActionOnPaste=fo,this.enter=`p`,this.iframe=!1,this.editHTMLDocumentMode=!1,this.enterBlock=this.enter===`br`?`p`:this.enter,this.defaultMode=1,this.useSplitMode=!1,this.colors={greyscale:[`#000000`,`#434343`,`#666666`,`#999999`,`#B7B7B7`,`#CCCCCC`,`#D9D9D9`,`#EFEFEF`,`#F3F3F3`,`#FFFFFF`],palette:[`#980000`,`#FF0000`,`#FF9900`,`#FFFF00`,`#00F0F0`,`#00FFFF`,`#4A86E8`,`#0000FF`,`#9900FF`,`#FF00FF`],full:`#E6B8AF.#F4CCCC.#FCE5CD.#FFF2CC.#D9EAD3.#D0E0E3.#C9DAF8.#CFE2F3.#D9D2E9.#EAD1DC.#DD7E6B.#EA9999.#F9CB9C.#FFE599.#B6D7A8.#A2C4C9.#A4C2F4.#9FC5E8.#B4A7D6.#D5A6BD.#CC4125.#E06666.#F6B26B.#FFD966.#93C47D.#76A5AF.#6D9EEB.#6FA8DC.#8E7CC3.#C27BA0.#A61C00.#CC0000.#E69138.#F1C232.#6AA84F.#45818E.#3C78D8.#3D85C6.#674EA7.#A64D79.#85200C.#990000.#B45F06.#BF9000.#38761D.#134F5C.#1155CC.#0B5394.#351C75.#733554.#5B0F00.#660000.#783F04.#7F6000.#274E13.#0C343D.#1C4587.#073763.#20124D.#4C1130`.split(`.`)},this.colorPickerDefaultTab=`background`,this.imageDefaultWidth=300,this.removeButtons=[],this.disablePlugins=[],this.extraPlugins=[],this.extraButtons=[],this.extraIcons={},this.createAttributes={table:{style:`border-collapse:collapse;width: 100%;`}},this.sizeLG=900,this.sizeMD=700,this.sizeSM=400,this.buttons=[{group:`font-style`,buttons:[]},{group:`list`,buttons:[]},{group:`font`,buttons:[]},`---`,{group:`script`,buttons:[]},{group:`media`,buttons:[]},` 395`,{group:`state`,buttons:[]},{group:`clipboard`,buttons:[]},{group:`insert`,buttons:[]},{group:`indent`,buttons:[]},{group:`color`,buttons:[]},{group:`form`,buttons:[]},`---`,{group:`history`,buttons:[]},{group:`search`,buttons:[]},{group:`source`,buttons:[]},{group:`other`,buttons:[]},{group:`info`,buttons:[]}],this.events={},this.textIcons=!1,this.popupRoot=null,this.showBrowserColorPicker=!0,Object.assign(this,Yc)}static get defaultOptions(){return e.__defaultOptions||=new e,e.__defaultOptions}};Yc=F.prototype,F.prototype.controls={};function Xc(e){return e&&e.isAtom}function Zc(e){return Object.defineProperty(e,"isAtom",{enumerable:!1,value:!0,configurable:!1}),e}function Qc(e){return JSON.parse(ws(e))}var $c=[`__proto__`,`constructor`,`prototype`];function el(e){return $c.indexOf(e)!==-1}function tl(e,t,n=0){if(Object.getPrototypeOf(e)!==Object.prototype)return e;let r=F.defaultOptions;if(j(e.preset)){if(r.presets[e.preset]!==void 0){let t=r.presets[e.preset];Object.keys(t).forEach(n=>{Mo(e[n])&&(e[n]=t[n])})}delete e.preset}let i={};return Object.keys(e).forEach(r=>{if(el(r))return;let a=e[r],o=t?t[r]:null;if(Go(a)&&Go(o)&&!Xc(a)){i[r]=tl(a,o,n+1);return}if(n!==0&&Ao(a)&&!Xc(a)&&Ao(o)){i[r]=[...a,...o.slice(a.length)];return}i[r]=a}),Object.setPrototypeOf(i,t),i}function nl(e){return _s(e,!1).reduce((t,n)=>(t[n]=e[n],t),{})}function rl(e,t){Object.keys(t).forEach(n=>{if(el(n))return;let r=t[n],i=e[n];Go(r)&&Go(i)&&!Xc(r)?rl(i,r):e[n]=r})}function il(e){return _s(e,!1).reduce((t,n)=>(t[n]=Go(e[n])?il(e[n]):e[n],t),{})}var al=e=>{let t={},n=e.substring(1).split(`&`);for(let e=0;e<n.length;e+=1){let r=n[e].split(`=`);
395t[decodeURIComponent(r[0])]=decodeURIComponent(r[1]||``)}return t},ol=(e,{width:t=400,height:n=345}={})=>{if(!Is(e))return e;let r=Ha.createElement(`a`);r.href=e,t||=400,n||=345;let i=r.protocol||``;switch(r.hostname){case`www.vimeo.com`:case`vimeo.com`:{let a=r.pathname.split(`/`).filter(Boolean),o=a.findIndex(e=>/^\d+$/.test(e));if(o===-1)return e;let s=a[o],c=a[o+1];return c&&o===0&&(s+=`/`+c),`<iframe width="`+t+`" height="`+n+`" src="`+i+`//player.vimeo.com/video/`+s+`" frameborder="0" allowfullscreen></iframe>`}case`youtube.com`:case`www.youtube.com`:case`m.youtube.com`:case`music.youtube.com`:case`youtu.be`:case`www.youtu.be`:{let a=(r.search?al(r.search):{}).v||r.pathname.substring(1);return a=a.replace(/^(watch|embed|shorts|live|v)\//,``).replace(/\/$/,``),a?`<iframe width="`+t+`" height="`+n+`" src="`+i+`//www.youtube.com/embed/`+a+`" frameborder="0" allowfullscreen></iframe>`:e}}return e},sl=e=>{if(typeof navigator<`u`&&navigator.userAgent.indexOf(`Mac OS X`)!==-1){if(e.metaKey&&!e.altKey)return!0}else if(e.ctrlKey&&!e.altKey)return!0;return!1},cl=(e,t=`en`)=>e!==`auto`&&j(e)?e:Ha.documentElement&&Ha.documentElement.lang?Ha.documentElement.lang:navigator.language?navigator.language.substring(0,2):t,ll=e=>{if(/^[0-9.]+$/.test(e.toString()))return parseFloat(e);let t=e.substr(-2,2).toUpperCase(),n=[`KB`,`MB`,`GB`,`TB`],r=parseFloat(e.substr(0,e.length-2));return n.indexOf(t)===-1?parseInt(e,10):r*1024**(n.indexOf(t)+1)},ul=console;function dl(e,t=[``],n=null){return(...r)=>(ul.warn(`Method "${t[0]}" deprecated.`+(t[1]?` Use "${t[1]}" instead`:``)),e.call(n,...r))}function fl(e,t){let n=[];try{Pc(`img`,e.editor).forEach(r=>{let i=[N(r,`width`),N(r,`height`),r.src];N(r,{width:r.offsetWidth+t,height:r.offsetHeight+t});let a=e.createInside.a();e.ed.body.appendChild(a),a.href=r.src,r.src=a.href,P.safeRemove(a),n.push(()=>{r.src=i[2]??``,N(r,{width:i[0]||null,height:i[1]||null})})})}catch(e){throw n.forEach(e=>e()),n.length=0,e}return n}function pl(e,t,n=`px`,r=null){let i=[],a=fl(e,n);try{let a=e.e.fire(`beforePreviewBox`,t,n);if(a!=null)return a;let o=e.c.div(`jodit__preview-box jodit-context`);r&&r.appendChild(o),M(o,{position:`relative`,padding:16});let s=e.value||`<div style='position: absolute;left:50%;top:50%;transform: translateX(-50%) translateY(-50%);color:#ccc;'>${e.i18n(`Empty`)}</div>`;if(e.iframe){let t=e.create.element(`iframe`);M(t,{minWidth:800,minHeight:600,border:0}),o.appendChild(t);let n=t.contentWindow;if(n&&(e.e.fire(`generateDocumentStructure.iframe`,n.document,e),o=n.document.body,typeof ResizeObserver==`function`)){let r=!1,a=n.document.body,o=new ResizeObserver(e.async.debounce(()=>{o.unobserve(a),t.style.height=`${a.offsetHeight+20}px`,e.async.requestAnimationFrame(()=>{!r&&o.observe(a)})},100)),s=()=>{r=!0,o.unobserve(a),o.disconnect(),e.e.off(`beforeDestruct`,s)};i.push(s),e.e.on(`beforeDestruct`,s)}}else M(o,{minWidth:1024,minHeight:600,border:0});let c=(t,n)=>{let r=j(n)?e.c.div():n;j(n)&&(r.innerHTML=n);for(let e=0;e<r.childNodes.length;e+=1){let n=r.childNodes[e];if(P.isElement(n)){let e=t.ownerDocument.createElement(n.nodeName);for(let t=0;t<n.attributes.length;t+=1)N(e,n.attributes[t].nodeName,n.attributes[t].nodeValue);if(n.childNodes.length===0||P.isTag(n,`table`))switch(n.nodeName){case`SCRIPT`:n.textContent&&(e.textContent=n.textContent);break;default:n.innerHTML&&(e.innerHTML=n.innerHTML)}else c(e,n);try{t.appendChild(e)}catch{}}else try{t.appendChild(n.cloneNode(!0))}catch{}}};return c(o,s),e.e.fire(`afterPreviewBox`,o),[o,()=>{i.forEach(e=>e())}]}finally{a.forEach(e=>e())}}function ml(e,t,n){let r=e.getBoundingClientRect(),i=e,a=r.top,o=r.height;for(;i&&i!==t&&i.parentNode;)if(i=i.parentNode,r=i.getBoundingClientRect(),!(a<=r.bottom)||a+o<=r.top)return!1;return a<=(n.documentElement&&n.documentElement.clientHeight||0)&&a+o>=0}function hl(e,t,n){P.isHTMLElement(e)&&!ml(e,t,n)&&(t.clientHeight!==t.scrollHeight&&(t.scrollTop=e.offsetTop),ml(e,t,n)||e.scrollIntoView())}function gl(e,t,n){if(!j(e)||!e.length)return;let r=e.split(`.`);if(r.some(el))return;let i=n,a=r[0];for(let e=0;e<r.length-1;e+=1)a=r[e],!Ao(i[a])&&!Go(i[a])&&(i[a]=Yo(r[e+1])?[]:{}),i=i[a];i&&(i[r[r.length-1]]=t)}var _l=class{constructor(e){this.limit=e,this.stack=[]}push(e){return this.stack.push(e),this.stack.length>this.limit&&this.stack.shift(),this}pop(){return this.stack.pop()}find(e){return this.stack.find(e)}},vl=`http://www.w3.org/1999/xhtml`,yl=new Set([`foreignobject`,`annotation-xml`,`desc`,`title`]);function bl(e){if(e.namespaceURI!==vl||e.closest(`math,svg`)==null)return!1;for(let t=e.parentElement;t;t=t.parentElement){let e=t.nodeName.toLowerCase();if(e===`math`||e===`svg`)break;
395if(yl.has(e))return!1}return!0}function xl(e,t){if(!P.isElement(e)&&!P.isFragment(e))return;let n=e.querySelectorAll(`math *, svg *`);for(let t=0;t<n.length;t++)e.contains(n[t])&&bl(n[t])&&P.safeRemove(n[t]);let r=t.removeEventAttributes??t.removeOnError,i=e=>{if(P.isElement(e)&&(r&&Sl(e),El(e,t),t.safeLinksTarget&&e.nodeName===`A`&&e.getAttribute(`target`)===`_blank`)){let t=(e.getAttribute(`rel`)||``).split(/\s+/).filter(Boolean);t.includes(`noopener`)||t.push(`noopener`),t.includes(`noreferrer`)||t.push(`noreferrer`),N(e,`rel`,t.join(` `))}};i(e),P.each(e,i)}function Sl(e){if(!P.isElement(e))return!1;let t=!1,n=[];for(let t=0;t<e.attributes.length;t++)e.attributes[t].name.toLowerCase().startsWith(`on`)&&n.push(e.attributes[t].name);for(let r of n)e.removeAttribute(r),t=!0;return t}var Cl=[`src`,`data`,`action`,`formaction`,`poster`,`background`,`xlink:href`],wl=new Set([`iframe`,`frame`,`object`,`embed`]);function Tl(e,t){let n=e.replace(/[\u0000-\u0020]+/g,``).toLowerCase();return/^(?:javascript|vbscript|livescript|mocha):/.test(n)||/^data:(?:text\/html|application\/xhtml)/.test(n)?!0:/^data:image\/svg/.test(n)&&wl.has(t)}function El(e,{safeJavaScriptLink:t,removeOnError:n}={safeJavaScriptLink:!0,removeOnError:!0}){if(!P.isElement(e))return!1;let r=!1;n&&e.hasAttribute(`onerror`)&&(N(e,`onerror`,null),r=!0);let i=e.nodeName.toLowerCase(),a=e.getAttribute(`href`);if(t&&a&&Tl(a,i)&&(N(e,`href`,(typeof location<`u`?location.protocol:`http:`)+`//`+a),r=!0),t){e.hasAttribute(`srcdoc`)&&(N(e,`srcdoc`,null),r=!0);for(let t of Cl){let n=e.getAttribute(t);n&&Tl(n,i)&&(N(e,t,null),r=!0)}}return r}var Dl=new Set([`div`,`p`,`br`,`h1`,`h2`,`h3`,`h4`,`h5`,`h6`,`hr`]),Ol=new Set([`script`,`style`]),kl=new Set([`br`,`hr`,`input`]);function Al(e,t=document,n=null,r=!1){let i=t.createElement(`div`);return j(e)?i.innerHTML=e:i.appendChild(e),Pc(`*`,i).forEach(e=>{let i=e.parentNode;if(!i)return;if(n&&P.isTag(e,n)){let i=e.nodeName.toLowerCase(),a=P.isTag(e,kl)?`%%%jodit-single-${i}%%%`:`%%%jodit-${i}%%%${Al(e.innerHTML,t,n,r)}%%%/jodit-${i}%%%`;P.before(e,t.createTextNode(a)),P.safeRemove(e);return}if(P.isTag(e,Ol)){P.safeRemove(e);return}if(!P.isTag(e,Dl))return;let a=e.nextSibling;P.isText(a)&&/^\s/.test(a.nodeValue||``)||a&&i.insertBefore(t.createTextNode(r?`%%%jodit-single-br%%%`:` `),a)}),jl(zo(i.innerText))}function jl(e){return e.replace(/%%%(\/)?jodit(-single)?-([\w\n]+)%%%/g,(e,t,n,r)=>`<${t?`/`:``}${r}>`)}var Ml=e=>{let t=[`#`],n=Xo(e);if(!n)return!1;if(n=zo(n.toUpperCase()),n=n.substring(1),n.length===3){for(let e=0;e<3;e+=1)t.push(n[e]),t.push(n[e]);return t.join(``)}return n.length>6&&(n=n.slice(0,6)),`#`+n};function Nl(e){let t={},n={meta:1,ctrl:2,control:2,alt:3,shift:4,space:5};return e.replace(/\+\+/g,`+add`).split(/[\s]*\+[\s]*/).map(e=>zo(e.toLowerCase())).map(e=>_o[e]||e).sort((e,t)=>n[e]&&!n[t]?-1:!n[e]&&n[t]?1:n[e]&&n[t]?n[e]-n[t]:e>t?1:-1).filter(e=>!t[e]&&e!==``&&(t[e]=!0)).join(`+`)}var Pl=(e,t=8)=>{let n=[];for(;e.length;)n.push(e.substr(0,t)),e=e.substr(t);return n[1]=n[1].replace(/./g,`*`),n[2]=n[2].replace(/./g,`*`),n.join(`-`)},Fl=(...e)=>e.filter(e=>zo(e).length).map((t,n)=>(t=t.replace(/([^:])[\\/]+/g,`$1/`),n&&(t=t.replace(/^\//,``)),n!==e.length-1&&(t=t.replace(/\/$/,``)),t)).join(`/`),Il=e=>e.split(`/`).reduce((e,t)=>{switch(t){case``:break;case`.`:break;case`..`:e.pop();break;default:e.push(t)}return e},[]).join(`/`)+(e.endsWith(`/`)?`/`:``),Ll=(e,t)=>/^[0-9]+$/.test(e.toString())?e+t:e.toString(),Rl=(...e)=>e.filter(e=>e.length).map(e=>e.replace(/\/$/,``)).join(`/`).replace(/([^:])[\\/]+/g,`$1/`),zl=(e,t)=>{let n=e=>parseInt(e,10),r=t.getComputedStyle(e),i=e.offsetWidth,a=n(r.getPropertyValue(`padding-left`)||`0`),o=n(r.getPropertyValue(`padding-right`)||`0`);return i-a-o};function Bl(e){return e.transform!==``&&e.transform!==`none`||e.perspective!==``&&e.perspective!==`none`||e.filter!==``&&e.filter!==`none`||e.willChange===`transform`||e.willChange===`perspective`||e.willChange===`filter`||e.contain===`paint`||e.contain===`layout`||e.contain===`strict`||e.contain===`content`}function Vl(e){let t=e.ownerDocument?.defaultView,n=e.parentElement;for(;t&&n;){if(Bl(t.getComputedStyle(n))){let e=n.getBoundingClientRect();return{x:e.left,y:e.top}}n=n.parentElement}return{x:0,y:0}}function Hl(e){if(!e)return null;let t=P.isHTMLElement(e),n=t&&M(e,`overflowY`);return t&&n!==`visible`&&n!==`hidden`&&e.scrollHeight>=e.clientHeight?e:Hl(e.parentNode)||Ha.scrollingElement||Ha.body}var Ul=(e,t)=>{let n=t.getComputedStyle(e),r=e.clientWidth;return r-=parseFloat(n.paddingLeft||`0`)+parseFloat(n.paddingRight||`0`),r};function Wl(e){return j(e)||Ao(e)?e.length:Go(e)?Object.keys(e).length:0}var Gl=(e,t,n,r=!1)=>{let i;try{i=e.getBoundingClientRect()}catch{i={top:0,bottom:0,left:0,right:0,width:0,height:0}}let a=n.body,o=n.documentElement||{clientTop:0,clientLeft:0,scrollTop:0,scrollLeft:0},s=n.defaultView||n.parentWindow,c=s.pageYOffset||o.scrollTop||a.scrollTop,l=s.pageXOffset||o.scrollLeft||a.scrollLeft,u=o.clientTop||a.clientTop||0,d=o.clientLeft||a.clientLeft||0,f,p,m=t.iframe;if(!r&&t&&t.options&&t.o.iframe&&m){let{top:e,left:n}=Gl(m,t,t.od,!0);f=i.top+e,p=i.left+n}else f=i.top+c-u,p=i.left+l-d;return{top:Math.round(f),left:Math.round(p),width:i.width,height:i.height}};function Kl(e,t,n=!1){let r=e.getBoundingClientRect(),i=r.left,a=r.top;if(Ms(t)&&t.iframe&&t.ed.body.contains(e)&&!n){let{left:e,top:n}=Kl(t.iframe,t,!0);i+=e,a+=n}return{left:Math.round(i),top:Math.round(a),width:Math.round(e.offsetWidth??r.width),height:Math.round(e.offsetHeight??r.height)}}function ql(e,t,n=0,r=1){let i=0,a=0,o=-1,s=0,c=0;for(a=n;i<e.length&&a<t.length;
395)e[i].toLowerCase()===t[a].toLowerCase()?(i++,s++,c=0,o===-1&&(o=a)):i>0&&(c>=r&&t[a]!==``?(i=0,o=-1,s=0,c=0,a--):(c++,s++)),a++;return i===e.length?[o,s]:[-1,0]}function Jl(e){return e.length?e[0].toUpperCase()+e.substring(1):``}var Yl=(e,t)=>{if(!t||!t.length)return e;let n=/%([sd])/g,r=n.exec(e),i=e,a=0;for(;r&&t[a]!==void 0;)i=i.replace(r[0],t[a].toString()),a+=1,r=n.exec(e);return i};function Xl(e,t,n){if(!j(e))throw cs(`i18n: Need string in first argument`);if(!e.length)return e;let r=!!n?.debugLanguage,i={},a=e=>t&&t.length?Yl(e,t):e,o=cl(F.defaultOptions.language,F.defaultOptions.language),s=cl(n?.language,o),c=t=>{if(!t)return;if(j(t[e]))return a(t[e]);let n=e.toLowerCase();if(j(t[n]))return a(t[n]);let r=Jl(e);if(j(t[r]))return a(t[r])};wo[s]===void 0?r||(i=wo[o]===void 0?wo.en:wo[o]):i=wo[s];let l=n?.i18n;if(l&&l[s]){let e=c(l[s]);if(e)return e}return c(i)||(!r&&wo.en&&j(wo.en[e])&&wo.en[e]?a(wo.en[e]):r?`{`+e+`}`:a(e))}var Zl=s({$$:()=>Pc,CamelCaseToKebabCase:()=>qo,ConfigDeepFlatten:()=>il,ConfigFlatten:()=>nl,ConfigMerge:()=>rl,ConfigProto:()=>tl,ConnectionError:()=>os,LimitedStack:()=>_l,NUMBER_FIELDS_REG:()=>Zo,OptionsError:()=>ss,UNSAFE_PROTO_KEYS:()=>$c,abort:()=>as,alignElement:()=>Kc,alreadyLoadedList:()=>nc,appendScriptAsync:()=>ic,appendStyleAsync:()=>ac,applyStyles:()=>Bc,asArray:()=>Nc,assert:()=>Uo,attr:()=>N,browser:()=>qc,buildQuery:()=>Jc,call:()=>fs,callPromise:()=>hs,callThis:()=>ps,camelCase:()=>es,cleanFromWord:()=>Vc,clearAlign:()=>Gc,clearCenterAlign:()=>ts,clearTimeout:()=>qs,cns:()=>ul,colorToHex:()=>Xo,completeUrl:()=>tc,connection:()=>ls,convertMediaUrlToVideoEmbed:()=>ol,css:()=>M,cssPath:()=>Lc,ctrlKey:()=>sl,dataBind:()=>is,defaultLanguage:()=>cl,error:()=>cs,fastClone:()=>Qc,fuzzySearchIndex:()=>ql,get:()=>No,getClassName:()=>Hs,getContentWidth:()=>zl,getDataTransfer:()=>ys,getFixedPositionOffset:()=>Vl,getPropertyDescriptor:()=>bs,getScrollParent:()=>Hl,getXPathByElement:()=>Fc,hAlignElement:()=>Wc,hasBrowserColorPicker:()=>Ss,hasContainer:()=>As,htmlspecialchars:()=>Hc,humanSizeToBytes:()=>ll,i18n:()=>Xl,inView:()=>ml,innerWidth:()=>Ul,isAbortError:()=>Cs,isArray:()=>Ao,isAtom:()=>Xc,isBoolean:()=>Jo,isDestructable:()=>ks,isEqual:()=>Ts,isFastEqual:()=>Es,isFunction:()=>k,isHTML:()=>Lo,isHtmlFromWord:()=>Ds,isInitable:()=>Os,isInt:()=>js,isJoditObject:()=>Ms,isLicense:()=>Ns,isMarker:()=>Ps,isNativeFunction:()=>ko,isNumber:()=>Fs,isNumeric:()=>Yo,isPlainObject:()=>Go,isPromise:()=>ds,isSet:()=>Ro,isString:()=>j,isStringArray:()=>jo,isURL:()=>Is,isUnsafeProtoKey:()=>el,isValidName:()=>Ls,isViewObject:()=>ns,isVoid:()=>Mo,isWindow:()=>Wo,kebabCase:()=>Ko,keepNames:()=>Vs,keys:()=>_s,loadImage:()=>gs,loadNext:()=>oc,loadNextStyle:()=>sc,markAsAtomic:()=>Zc,markDeprecated:()=>dl,markOwner:()=>ms,memorizeExec:()=>vs,nl2br:()=>Uc,normalizeColor:()=>Ml,normalizeCssNumericValue:()=>Qo,normalizeCssValue:()=>$o,normalizeKeyAliases:()=>Nl,normalizeLicense:()=>Pl,normalizePath:()=>Fl,normalizeRelativePath:()=>Il,normalizeSize:()=>Ll,normalizeUrl:()=>Rl,offset:()=>Gl,options:()=>us,parseQuery:()=>al,position:()=>Kl,previewBox:()=>pl,refs:()=>Ic,reset:()=>Fo,resolveElement:()=>Rc,safeHTML:()=>xl,sanitizeHTMLElement:()=>El,scrollIntoViewIfNeeded:()=>hl,set:()=>gl,setTimeout:()=>Ks,size:()=>Wl,splitArray:()=>Ys,sprintf:()=>Yl,stringify:()=>ws,stripTags:()=>Al,toArray:()=>Io,trim:()=>zo,trimChars:()=>Bo,trimInv:()=>Vo,ucfirst:()=>Jl}),Ql=new Map,$l=class{get componentName(){return this.__componentName||=`jodit-`+Ko((k(this.className)?this.className():``)||Hs(this)),this.__componentName}getFullElName(e,t,n){let r=[this.componentName];return e&&(e=e.replace(/[^a-z0-9-]/gi,`-`),r.push(`__${e}`)),t&&(r.push(`_`,t),r.push(`_`,Mo(n)?`true`:n.toString())),r.join(``)}get ownerDocument(){return this.ow.document}get od(){return this.ownerDocument}get ow(){return this.ownerWindow}get(e,t){return No(e,t||this)}get isReady(){return this.componentStatus===Oo.ready}get isDestructed(){return this.componentStatus===Oo.destructed}get isInDestruct(){return Oo.beforeDestruct===this.componentStatus||Oo.destructed===this.componentStatus}bindDestruct(e){return e.hookStatus(Oo.beforeDestruct,()=>!this.isInDestruct&&this.destruct()),this}constructor(){this.async=new Js,this.ownerWindow=window,this.__componentStatus=Oo.beforeInit,this.uid=`jodit-uid-`+Tc()}destruct(){this.setStatus(Oo.destructed),this.async&&=(this.async.destruct(),void 0),Ql.get(this)&&Ql.delete(this),this.ownerWindow=void 0}get componentStatus(){return this.__componentStatus}set componentStatus(e){this.setStatus(e)}setStatus(e){return this.setStatusComponent(e,this)}setStatusComponent(e,t){if(e===this.__componentStatus)return;t===this&&(this.__componentStatus=e);let n=Object.getPrototypeOf(this);n&&k(n.setStatusComponent)&&n.setStatusComponent(e,t);let r=Ql.get(this)?.[e];
395r&&r.length&&r.forEach(e=>e(t))}hookStatus(e,t){let n=Ql.get(this);n||(n={},Ql.set(this,n)),n[e]||(n[e]=[]),n[e].push(t)}static isInstanceOf(e,t){return e instanceof t}};$l.STATUSES=Oo;var eu=class extends $l{get j(){return this.jodit}get defaultTimeout(){return this.j.defaultTimeout}i18n(e,...t){return this.j.i18n(e,...t)}setParentView(e){return this.jodit=e,e.ow&&(this.ownerWindow=e.ow),e.components.add(this),this}constructor(e){super(),this.setParentView(e)}destruct(){return this.j.components.delete(this),super.destruct()}};function tu(e,t=!1,n=`debounce`){return(r,i)=>{let a=r[i];if(!k(a))throw cs(`Handler must be a Function`);return r.hookStatus(Oo.ready,r=>{let{async:a}=r;Uo(a!=null,`Component ${r.componentName||r.constructor.name} should have "async:IAsync" field`);let o=k(e)?e(r):e,s=Fs(o)||Go(o)?o:r.defaultTimeout;Object.defineProperty(r,i,{configurable:!0,value:a[n](r[i].bind(r),s,t)})}),{configurable:!0,get(){return a.bind(this)}}}}function nu(e,t=!1){return tu(e,t,`throttle`)}function ru(...e){return t=>{let n=t.prototype;for(let t=0;t<e.length;t++){let r=e[t],i=Object.getOwnPropertyNames(r.prototype);for(let e=0;e<i.length;e++){let t=i[e],a=Object.getOwnPropertyDescriptor(r.prototype,t);a!=null&&k(a.value)&&!k(n[t])&&Object.defineProperty(n,t,{enumerable:!0,configurable:!0,writable:!0,value:function(...e){return a.value.call(this,...e)}})}}}}function iu(e){return(t,n)=>{if(!k(t[n]))throw cs(`Handler must be a Function`);t.hookStatus(e,e=>{e[n].call(e)})}}function au(){return(e,t)=>{if(!k(e[t]))throw cs(`Handler must be a Function`);e.hookStatus(Oo.ready,e=>{let{async:n}=e,r=e[t];e[t]=(...t)=>n.requestIdleCallback(r.bind(e,...t))})}}var ou=(e,t)=>{(Object.getOwnPropertyDescriptor(e,t)||{}).enumerable!==!1&&Object.defineProperty(e,t,{enumerable:!1,set(e){Object.defineProperty(this,t,{enumerable:!1,writable:!0,value:e})}})};function su(e,t){e.hookStatus(Oo.ready,e=>{let n=ns(e)?e:e.jodit,r=`${n.options.namespace}${e.componentName}_prop_${t}`,i=e[t];Object.defineProperty(e,t,{get(){return n.storage.get(r)??i},set(e){n.storage.set(r,e)}})})}function cu(e){return(t,n)=>{let r=t[n];if(!k(r))throw cs(`Handler must be a Function`);t.hookStatus(Oo.ready,t=>{let{async:r}=t,i=t[n],a=0;Object.defineProperty(t,n,{configurable:!0,value:function n(...o){r.clearTimeout(a),e(t)?i.apply(t,o):a=r.setTimeout(()=>n(...o),10)}})})}}var lu=Symbol(`observable-object`);function uu(e){return e[lu]!==void 0}function du(e){if(uu(e))return e;let t={},n={},r=(t,i)=>Ao(t)?(t.map(e=>r(e,i)),e):(n[t]||(n[t]=[]),n[t].push(i),e),i=(r,...a)=>{if(Ao(r)){r.map(e=>i(e,...a));return}try{!t[r]&&n[r]&&(t[r]=!0,n[r].forEach(t=>t.call(e,...a)))}finally{t[r]=!1}},a=(t,n=[])=>{let o={};uu(t)||(Object.defineProperty(t,lu,{enumerable:!1,value:!0}),Object.keys(t).forEach(r=>{let s=r,c=n.concat(s).filter(e=>e.length);o[s]=t[s];let l=bs(t,s);Object.defineProperty(t,s,{set:t=>{let n=o[s];if(!Es(o[s],t)){i([`beforeChange`,`beforeChange.${c.join(`.`)}`],s,t),Go(t)&&a(t,c),l&&l.set?l.set.call(e,t):o[s]=t;let r=[];i([`change`,...c.reduce((e,t)=>(r.push(t),e.push(`change.${r.join(`.`)}`),e),[])],c.join(`.`),n,t?.valueOf?t.valueOf():t)}},get:()=>l&&l.get?l.get.call(e):o[s],enumerable:!0,configurable:!0}),Go(o[s])&&a(o[s],c)}),Object.defineProperty(e,"on",{value:r}))};return a(e),e}function I(e,t){return(n,r)=>{if(!k(n[r]))throw cs(`Handler must be a Function`);let i=t?.immediately??!0,a=t?.context,o=t=>{let o=ns(t)?t:t.jodit,s=(e,...n)=>{if(!t.isInDestruct)return t[r](e,...n)};i||(s=t.async.microDebounce(s,!0)),Ys(e).forEach(e=>{if(/:/.test(e)){let[n,r]=e.split(`:`),i=a;n.length&&(i=t.get(n)),k(i)&&(i=i(t)),o.events.on(i||t,r,s),i||o.events.on(r,s),t.hookStatus(`beforeDestruct`,()=>{o.events.off(i||t,r,s).off(r,s)});return}let r=e.split(`.`),[i]=r,c=r.slice(1),l=t[i];Go(l)&&du(l).on(`change.${c.join(`.`)}`,s);let u=bs(n,i);Object.defineProperty(t,i,{configurable:!0,set(e){let n=l;n!==e&&(l=e,u&&u.set&&u.set.call(t,e),Go(l)&&(l=du(l),l.on(`change.${c.join(`.`)}`,s)),s(i,n,l))},get(){return u&&u.get?u.get.call(t):l}})})};k(n.hookStatus)?n.hookStatus(Oo.ready,o):o(n)}}var fu=s({autobind:()=>A,cache:()=>
395zs,cacheHTML:()=>Bs,cached:()=>Rs,component:()=>Ws,debounce:()=>tu,derive:()=>ru,getComponentClass:()=>Gs,hook:()=>iu,idle:()=>au,nonenumerable:()=>ou,persistent:()=>su,throttle:()=>nu,wait:()=>cu,watch:()=>I});F.prototype.defaultAjaxOptions={successStatuses:[200,201,202],method:`GET`,url:``,data:null,contentType:`application/x-www-form-urlencoded; charset=UTF-8`,headers:{"X-REQUESTED-WITH":`XMLHttpRequest`},withCredentials:!1,xhr(){return new XMLHttpRequest}};var pu=class{get url(){return this.request.url}constructor(e,t,n,r){this.request=e,this.status=t,this.statusText=n,this.body=r}async json(){return JSON.parse(this.body)}text(){return Promise.resolve(this.body)}async blob(){return this.body}},mu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},hu=class e{className(){return`Ajax`}constructor(e,t=F.prototype.defaultAjaxOptions){this.__async=new Js,this.__isFulfilled=!1,this.__activated=!1,this.__isDestructed=!1,this.options=tl(e||{},t),this.xhr=this.o.xhr?this.o.xhr():new XMLHttpRequest}__buildParams(e,t){return Go(e)&&this.options.contentType&&this.options.contentType.includes(`application/json`)?JSON.stringify(e):k(this.o.queryBuild)?this.o.queryBuild.call(this,e,t):j(e)||e instanceof Va.FormData||typeof e==`object`&&e&&k(e.append)?e:Jc(e)}get o(){return this.options}
395abort(){if(this.__isFulfilled)return this;try{this.__isFulfilled=!0,this.xhr.abort()}catch{}return this}send(){this.__activated=!0;let{xhr:e,o:t}=this,n=this.prepareRequest();return this.__async.promise(async(r,i)=>{let a=()=>{this.__isFulfilled=!0,i(ls(`Connection error`))},o=()=>{this.__isFulfilled=!0,r(new pu(n,e.status,e.statusText,e.responseType?e.response:e.responseText))};e.onload=o,e.onabort=()=>{this.__isFulfilled=!0,i(as(`Abort connection`))},e.onerror=a,e.ontimeout=a,t.responseType&&(e.responseType=t.responseType),e.onprogress=e=>{var t,n;let r=0;e.lengthComputable&&(r=e.loaded/e.total*100),(n=(t=this.options).onProgress)==null||n.call(t,r)},e.onreadystatechange=()=>{var n,r;(r=(n=this.options).onProgress)==null||r.call(n,10),e.readyState===XMLHttpRequest.DONE&&(t.successStatuses.includes(e.status)?o():e.statusText&&(this.__isFulfilled=!0,i(ls(e.statusText))))},e.withCredentials=t.withCredentials??!1;let{url:s,data:c,method:l}=n;e.open(l,s,!0),t.contentType&&e.setRequestHeader&&e.setRequestHeader(`Content-type`,t.contentType);let{headers:u}=t;k(u)&&(u=await u.call(this)),u&&e.setRequestHeader&&Object.keys(u).forEach(t=>{e.setRequestHeader(t,u[t])}),this.__async.setTimeout(()=>{e.send(c?this.__buildParams(c):void 0)},0)})}async*stream(){this.__activated=!0;let{xhr:e,o:t}=this,n=this.prepareRequest(),r=0,i=``,a=[],o=null,s=!1,c=null,l=()=>{if(o){let e=o;o=null,e()}},u=t=>{let n=e.responseText;i+=n.substring(r),r=n.length;let o=i.split(` 396 397`);i=t?``:o.pop()??``;for(let e of o){let t=e.trim();if(!t)continue;let n=[];for(let e of t.split(` 398`))e.startsWith(`data: `)?n.push(e.slice(6)):e.startsWith(`data:`)&&n.push(e.slice(5));n.length&&a.push(n.join(` 399`))}l()};e.onprogress=()=>u(!1),e.onload=()=>{u(!0),s=!0,this.__isFulfilled=!0,l()},e.onerror=()=>{c=ls(`Connection error`),s=!0,this.__isFulfilled=!0,l()},e.onabort=()=>{c=as(`Abort connection`),s=!0,this.__isFulfilled=!0,l()},e.withCredentials=t.withCredentials??!1;let{url:d,data:f,method:p}=n;e.open(p,d,!0),t.contentType&&e.setRequestHeader&&e.setRequestHeader(`Content-type`,t.contentType);let{headers:m}=t;k(m)&&(m=await m.call(this)),m&&e.setRequestHeader&&Object.keys(m).forEach(t=>{e.setRequestHeader(t,m[t])}),e.send(f?this.__buildParams(f):void 0);try{for(;;)if(a.length>0)yield a.shift();else if(s)break;else await new Promise(e=>{o=e})}finally{this.__isFulfilled||this.abort()}if(c)throw c}prepareRequest(){if(!this.o.url)throw cs(`Need URL for AJAX request`);let t=this.o.url,n=this.o.data,r=(this.o.method||`get`).toLowerCase();if(r===`get`&&n&&Go(n)){let e=t.indexOf(`?`);if(e!==-1){let r=al(t.substring(e));t=t.substring(0,e)+`?`+Jc({...r,...n})}else t+=`?`+Jc(this.o.data)}let i={url:t,method:r,data:n};return e.log.splice(100),e.log.push(i),i}destruct(){this.__isDestructed||(this.__isDestructed=!0,this.__activated&&!this.__isFulfilled&&(this.abort(),this.__isFulfilled=!0),this.__async.destruct())}};hu.log=[],mu([A],hu.prototype,`destruct`,null);var gu=class{getElm(e){return this.container.querySelector(`.${this.getFullElName(e)}`)}getElms(e){return Io(this.container.querySelectorAll(`.${this.getFullElName(e)}`))}},_u=class{afterSetMod(e,t){}setMod(e,t,n){e=e.toLowerCase();let r=this.mods[e];if(r===t)return this;let i=`${this.componentName}_${e}_`,a=(n||this.container).classList;return r!=null&&a.remove(`${i}${r.toString().toLowerCase()}`),!Mo(t)&&t!==``&&a.add(`${i}${t.toString().toLowerCase()}`),this.mods[e]=t,this.afterSetMod(e,t),this}getMod(e){return this.mods[e]??null}},vu=class e{static getIcon(t){return/<svg/i.test(t)?t:e.icons[t]||e.icons[t.replace(/-/g,`_`)]||e.icons[t.replace(/_/g,`-`)]||e.icons[es(t)]||e.icons[Ko(t)]||e.icons[t.toLowerCase()]}static exists(e){return this.getIcon(e)!==void 0}static get(e,t=`<span></span>`){return this.getIcon(e)||t}static set(e,t){return this.icons[e.replace(`_`,`-`)]=t,this}static makeIcon(t,n){var r;if(!n)return;let i,{name:a,iconURL:o,fill:s,scale:c}=n,l=a.replace(/[^a-zA-Z0-9]/g,`_`),u;/<svg/.test(a)||(u=(r=t.o).getIcon?.call(r,a,l));let d=`${a}${o}${s}${c??``}${u??``}`;if(t.o.cache&&this.__cache.has(d))return this.__cache.get(d)?.cloneNode(!0);if(o)i=t.c.span(),M(i,`backgroundImage`,`url(`+o.replace(`{basePath}`,t?.basePath||``)+`)`);else{let n=u||e.get(a,``)||t.o.extraIcons?.[a];n&&(i=e.toIconElement(t,n.trim()),/^<svg/i.test(a)||i.classList.add(`jodit-icon_`+l))}return i&&(i.classList.add(`jodit-icon`),i.style.fill=s,c!=null&&(i.style.transform=`scale(${c})`),t.o.cache&&this.__cache.set(d,i.cloneNode(!0))),i}static toIconElement(e,t){let n=e.c.fromHTML(t);return P.isElement(n)?n:e.c.span(`jodit-icon_text`,n)}};vu.icons={},vu.__cache=new Map;var yu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},bu,xu=bu=class extends eu{getRole(){return this.options?.role||``}get parentElement(){return this.__parentElement}set parentElement(e){this.__parentElement=e,e&&e.hookStatus(`beforeDestruct`,()=>this.destruct()),this.updateParentElement(this)}bubble(e){let t=this.parentElement;for(;t;)e(t),t=t.parentElement;return this}updateParentElement(e){var t;return(t=this.__parentElement)==null||t.updateParentElement(e),this}get(e,t){return super.get(e,t)||this.getElm(e)}closest(e){let t=typeof e==`object`?t=>t===e:t=>$l.isInstanceOf(t,e),n=this.__parentElement;for(;n;){if(t(n))return n;n=!n.parentElement&&n.container.parentElement?bu.closestElement(n.container.parentElement,bu):n.parentElement}return null}static closestElement(e,t){let n=P.up(e,e=>
399{if(e){let{component:n}=e;return n&&$l.isInstanceOf(n,t)}return!1});return n?n?.component:null}update(){}appendTo(e){return e.appendChild(this.container),this}clearName(e){return e.replace(/[^a-zA-Z0-9]/g,`_`)}render(e){return this.j.c.div(this.componentName)}createContainer(e){let t=this.render(e);if(j(t)){let e=this.parseTemplate(t);return e.classList.add(this.componentName),e}return t}parseTemplate(e){return this.j.c.fromHTML(e.replace(/\*([^*]+?)\*/g,(e,t)=>vu.get(t)||``).replace(/&_/g,this.componentName+`_`).replace(/~([^~]+?)~/g,(e,t)=>this.i18n(t)))}constructor(e,t){super(e),this.name=``,this.__parentElement=null,this.mods={},this.options=t,this.container=this.createContainer(t);let n=this.getRole();n&&N(this.container,`role`,n),Object.defineProperty(this.container,"component",{value:this,configurable:!0})}destruct(){return P.safeRemove(this.container),this.parentElement=null,super.destruct()}};xu=bu=yu([ru(_u,gu)],xu);var Su=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Cu=()=>({size:`middle`,type:`button`,role:`button`,name:``,value:``,variant:`initial`,disabled:!1,activated:!1,icon:{name:`empty`,fill:``,iconURL:``,scale:void 0},tooltip:``,text:``,tabIndex:void 0}),wu=class extends xu{className(){return`UIButton`}setState(e){return Object.assign(this.state,e),this}get text(){let e=this.getElm(`text`);return Uo(e,`Text element not found`),e}get icon(){let e=this.getElm(`icon`);return Uo(e,`Icon element not found`),e}onChangeSize(){this.setMod(`size`,this.state.size)}onChangeType(){N(this.container,`type`,this.state.type)}onChangeRole(){N(this.container,`role`,this.state.role)}updateSize(){let e=Gs(`UIList`),t=this.closest(e);if(t){this.state.size=t.buttonSize;return}}onChangeStatus(){this.setMod(`variant`,this.state.variant)}onChangeText(){this.text.textContent=this.jodit.i18n(this.state.text),this.updateAriaLabel()}onChangeTextSetMode(){this.setMod(`text-icons`,!!this.state.text.trim().length)}onChangeDisabled(){N(this.container,`disabled`,this.state.disabled||null)}onChangeActivated(){N(this.container,`aria-pressed`,this.state.activated)}onChangeName(){this.container.classList.add(`${this.componentName}_${this.clearName(this.state.name)}`),this.name=this.state.name,N(this.container,`data-ref`,this.state.name),N(this.container,`ref`,this.state.name)}onChangeTooltip(){let e=this.state.tooltip?this.jodit.i18n(this.state.tooltip):null;this.get(`j.o.useNativeTooltip`)&&N(this.container,`title`,e),N(this.container,`aria-label`,e),this.updateAriaLabel()}updateAriaLabel(){let e=this.state.text.trim().length>0,t=this.state.tooltip?this.jodit.i18n(this.state.tooltip):null;N(this.container,`aria-label`,t),N(this.button,`aria-label`,e?null:t)}onChangeTabIndex(){N(this.container,`tabindex`,this.state.tabIndex)}onChangeIcon(){let e=this.get(`j.o.textIcons`);if(e===!0||k(e)&&e(this.state.name))return;P.detach(this.icon);let t=vu.makeIcon(this.j,this.state.icon);t&&this.icon.appendChild(t)}focus(){this.container.focus()}isFocused(){let{activeElement:e}=this.od;return!!(e&&P.isOrContains(this.container,e))}createContainer(){let e=this.componentName,t=this.j.c.element(`button`,{class:e,type:`button`,role:`button`,ariaPressed:!1}),n=this.j.c.span(e+`__icon`),r=this.j.c.span(e+`__text`);return t.appendChild(n),t.appendChild(r),t}constructor(e,t){super(e),this.isButton=!0,this.state=Cu(),this.actionHandlers=[],this.button=this.container,this.updateSize(),this.onChangeSize(),this.onChangeStatus(),t&&this.hookStatus(Oo.ready,()=>{this.setState(t)})}destruct(){return this.j.e.off(this),this.j.e.off(this.container),super.destruct()}onAction(e){return this.actionHandlers.push(e),this}__onActionFire(e){e.buffer={actionTrigger:this},this.actionHandlers.forEach(t=>t.call(this,e)),this.j.e.fire(this,`click`,e)}};Su([zs],wu.prototype,`text`,null),Su([zs],wu.prototype,`icon`,null),Su([I(`state.size`,{immediately:!1})],wu.prototype,`onChangeSize`,null),Su([I(`state.type`,{immediately:!1})],wu.prototype,`onChangeType`,null),Su([I(`state.role`,{immediately:!1})],wu.prototype,`onChangeRole`,null),Su([I(`parentElement`)],wu.prototype,`updateSize`,null),Su([I(`state.variant`,{immediately:!1})],wu.prototype,`onChangeStatus`,null),Su([I(`state.text`,{immediately:!1})],wu.prototype,`onChangeText`,null),Su([I(`state.text`,{immediately:!1})],wu.prototype,`onChangeTextSetMode`,null),Su([I(`state.disabled`)],wu.prototype,`onChangeDisabled`,null),Su([I(`state.activated`)],wu.prototype,`onChangeActivated`,null),Su([I(`state.name`,{immediately:!1})],wu.prototype,`onChangeName`,null),Su([I(`state.tooltip`,{immediately:!1})],wu.prototype,`onChangeTooltip`,null),Su([I(`state.tabIndex`,{immediately:!1})],wu.prototype,`onChangeTabIndex`,null),Su([I(`state.icon`,{immediately:!1})],wu.prototype,`onChangeIcon`,null),Su([Bs],wu.prototype,`createContainer`,null),Su([I(`button:click`)],wu.prototype,`__onActionFire`,null),wu=Su([Ws],wu);function Tu(e,t,n,r){let i=new wu(e);return i.state.tabIndex=e.o.allowTabNavigation?0:-1,j(t)?(i.state.icon.name=t,i.state.name=t,r&&(i.state.variant=r),n&&(i.state.text=n)):i.setState(t),i}var Eu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Du,Ou=Du=class extends xu{className(){return`UIGroup`}getRole(){return this.options?.role||`list`}get allChildren(){let e=[],t=[...this.elements];for(;t.length;){let n=t.shift();Ao(n)?t.push(...n):$l.isInstanceOf(n,Du)?t.push(...n.elements):n&&e.push(n)}return e}
399update(){this.elements.forEach(e=>e.update()),this.setMod(`size`,this.buttonSize)}append(e,t){if(Ao(e)){if(typeof t==`number`)throw Error(`You can not use index when append array of elements`);return e.forEach(e=>this.append(e,t)),this}let n=e,r;if(typeof t==`number`?(r=Math.min(Math.max(0,t),this.elements.length),this.elements.splice(r,0,n)):this.elements.push(n),n.name&&n.container.classList.add(this.getFullElName(n.name)),t&&typeof t==`string`){let e=this.getElm(t);if(e==null)throw Error(`Element does not exist`);e.appendChild(n.container)}else this.appendChildToContainer(n.container,r);return n.parentElement=this,this}afterSetMod(e,t){this.syncMod&&this.elements.forEach(n=>n.setMod(e,t))}appendChildToContainer(e,t){t===void 0||t<0||t>this.elements.length-1||this.container.children[t]==null?this.container.appendChild(e):this.container.insertBefore(e,this.container.children[t])}remove(e){let t=this.elements.indexOf(e);return t!==-1&&(this.elements.splice(t,1),P.safeRemove(e.container),e.parentElement=null),this}clear(){return this.elements.forEach(e=>e.destruct()),this.elements.length=0,this}constructor(e,t,n){super(e,n),this.options=n,this.syncMod=!1,this.elements=[],this.buttonSize=`middle`,t?.forEach(e=>e&&this.append(e)),n?.name&&(this.name=n.name)}setParentView(e){var t;return(t=this.elements)==null||t.forEach(t=>t.setParentView(e)),super.setParentView(e)}destruct(){return this.clear(),super.destruct()}};Eu([I(`buttonSize`)],Ou.prototype,`update`,null),Ou=Du=Eu([Ws],Ou);var ku=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Au=class extends Ou{className(){return`UIButtonGroup`}render(e){return`<div> 400 <div class="&__label">~${e.label}~</div> 401 <div class="&__options"></div> 402 </div>`}appendChildToContainer(e){let t=this.getElm(`options`);Uo(t!=null,`Options does not exist`),t.appendChild(e)}constructor(e,t={radio:!0}){super(e,t.options?.map(t=>{let n=new wu(e,{text:t.text,value:t.value,variant:`primary`});return n.onAction(()=>{this.select(t.value)}),n}),t),this.options=t,this.select(t.value??0)}select(e){var t,n;this.elements.forEach((t,n)=>{n===e||t.state.value===e?t.state.activated=!0:this.options.radio&&(t.state.activated=!1)});let r=this.elements.filter(e=>e.state.activated).map(e=>({text:e.state.text,value:e.state.value}));this.jodit.e.fire(this,`select`,r),(n=(t=this.options).onChange)==null||n.call(t,r)}};Au=ku([Ws],Au);var ju=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Mu,Nu=[`scroll.tooltip`,`joditCloseDialog`,`mouseleave.tooltip`],Pu=[`escape.tooltip`,`change.tooltip`,`changePlace.tooltip`,`afterOpenPopup.tooltip`,`hidePopup.tooltip`,`beforePopupClose.tooltip`,`closeAllPopups.tooltip`],Fu=Mu=class extends xu{className(){return`UITooltip`}render(){return`<div><div class="&__content"></div></div>`}constructor(e){super(e),this.__isOpened=!1,this.__attachedContainers=new Set,this.__listenClose=!1,this.__currentTarget=null,this.__delayShowTimeout=0,this.__hideTimeout=0,!e.o.textIcons&&e.o.showTooltip&&!e.o.useNativeTooltip&&(this.j.e.on(`getContainer`,e=>{this.__onAttach(e)}),e.hookStatus(Oo.ready,()=>{this.__onAttach(this.j.container)}))}__onAttach(e){Ac(this.j,Mu).appendChild(this.container),this.__attachedContainers.add(e),this.__attachedContainers.add(this.j.container),this.j.e.on(e,`mouseenter.tooltip`,this.__onMouseEnter,{capture:!0}).on(e,`mouseleave.tooltip`,this.__onMouseLeave,{capture:!0}).on(this.j.container,`mouseleave.tooltip`,this.__onMouseLeave,{capture:!0})}__addListenersOnEnter(){if(this.__listenClose)return;this.__listenClose=!0;let e=this.j;e.e.on(e.ow,Nu,this.__hide).on(Pu,this.__hide)}__removeListenersOnLeave(){if(!this.__listenClose)return;this.__listenClose=!1;let e=this.j;e.e.off(e.ow,Nu,this.__hide).off(Pu,this.__hide)}__onMouseLeave(e){this.__currentTarget===e.target&&(this.__hideDelay(),this.__currentTarget=null)}__onMouseEnter(e){if(!P.isHTMLElement(e.target))return;let t=N(e.target,`aria-label`);
402if(!t||N(e.target,`disabled`)||!e.target.className.includes(`jodit`))return;this.__currentTarget=e.target;let n=e.target;this.__open(()=>{let e=Kl(n);return{x:e.left+e.width/2,y:e.top+e.height}},t)}__open(e,t){this.__addListenersOnEnter(),this.__isOpened=!0,this.j.async.clearTimeout(this.__hideTimeout),this.j.async.clearTimeout(this.__delayShowTimeout);let n=this.j.o.showTooltipDelay||this.j.defaultTimeout;if(!n){this.__show(e,t);return}this.__delayShowTimeout=this.j.async.setTimeout(()=>this.__show(e,t),n)}__show(e,t){this.setMod(`visible`,!0),this.setMod(`above`,!1),this.getElm(`content`).innerHTML=t;let n=e(),r=Vl(this.container);M(this.container,{left:n.x-r.x,top:n.y-r.y});let i=Kl(this.container),a=this.j.ow.innerHeight;if(i.top+i.height>a){let e=Kl(this.__currentTarget);this.setMod(`above`,!0),M(this.container,{top:e.top-i.height-r.y})}}__hide(){this.j.async.clearTimeout(this.__delayShowTimeout),this.j.async.clearTimeout(this.__hideTimeout),this.__removeListenersOnLeave(),this.__isOpened&&(this.__isOpened=!1,this.setMod(`visible`,!1),this.getElm(`content`).innerHTML=``,M(this.container,{left:-5e3}))}__hideDelay(){this.j.async.clearTimeout(this.__delayShowTimeout),this.j.async.clearTimeout(this.__hideTimeout),this.__isOpened&&(this.__hideTimeout=this.async.setTimeout(this.__hide,this.j.defaultTimeout))}destruct(){this.__attachedContainers.forEach(e=>{this.j.e.off(e,`mouseenter.tooltip`,this.__onMouseEnter).off(e,`mouseleave.tooltip`,this.__onMouseLeave)}),this.__hide(),super.destruct()}};ju([A],Fu.prototype,`__onMouseLeave`,null),ju([A],Fu.prototype,`__onMouseEnter`,null),ju([A],Fu.prototype,`__hide`,null),ju([A],Fu.prototype,`__hideDelay`,null),Fu=Mu=ju([Ws],Fu);var Iu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Lu=class extends Ou{className(){return`UIBlock`}constructor(e,t,n={align:`left`}){super(e,t),this.options=n,this.setMod(`align`,this.options.align||`left`),this.setMod(`width`,this.options.width||``),this.options.mod&&this.setMod(this.options.mod,!0),this.options.className&&this.container.classList.add(this.options.className),N(this.container,`data-ref`,n.ref),N(this.container,`ref`,n.ref)}};Lu=Iu([Ws],Lu);var Ru=s({required:()=>zu,url:()=>Bu}),zu=function(e){return zo(e.value).length?!0:(e.error=`Please fill out this field`,!1)},Bu=function(e){return Is(zo(e.value))?!0:(e.error=`Please enter a web address`,!1)},Vu=function(e){return zo(e.value).length?!0:(e.error=`Please fill out this field`,!1)},Hu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Uu,Wu=Uu=class extends xu{className(){return`UIInput`}onChangeClear(){this.state.clearButton?P.after(this.nativeInput,this.clearButton):P.safeRemove(this.clearButton)}onChangeClassName(e,t){t&&this.container.classList.remove(t),this.state.className&&this.container.classList.add(this.state.className)}onChangeState(){this.name=this.state.name;let e=this.nativeInput,{name:t,icon:n,type:r,ref:i,required:a,placeholder:o,autocomplete:s,label:c}=this.state;N(e,`name`,t),N(e,`type`,r),N(e,`data-ref`,i||t),N(e,`ref`,i||t),N(e,`required`,a||null),N(e,`autocomplete`,s?null:`off`),N(e,`placeholder`,o?this.j.i18n(o):``),n&&vu.exists(n)?(P.before(e,this.icon),this.icon.innerHTML=vu.get(n)):P.safeRemove(this.icon),c?(P.before(this.wrapper,this.label),this.label.innerText=this.j.i18n(c)):P.safeRemove(this.label),this.updateValidators()}updateValidators(){var e;this.validators.clear(),this.state.required&&this.validators.add(zu),(e=this.state.validators)==null||e.forEach(e=>{let t=Ru[e];t&&this.validators.add(t)})}set error(e){this.setMod(`has-error`,!!e),e?(this.__errorBox.innerText=this.j.i18n(e,this.j.i18n(this.state.label||``)),this.container.appendChild(this.__errorBox)):P.safeRemove(this.__errorBox)}get value(){return this.nativeInput.value}set value(e){this.value!==e&&(this.nativeInput.value=e,this.onChangeValue())}onChangeStateValue(){let e=this.state.value.toString();e!==this.value&&(this.value=e)}onChangeValue(){var e,t;let{value:n}=this;this.state.value!==n&&(this.state.value=n,this.j.e.fire(this,`change`,n),(t=(e=this.state).onChange)==null||t.call(e,n))}validate(){this.error=``;let e=Io(this.validators).every(e=>e(this));return this.__markInputInvalid(),e}__markInputInvalid(){var e,t,n,r;this.error?(this.nativeInput.setAttribute(`aria-invalid`,`true`),(t=(e=this.nativeInput).setCustomValidity)==null||t.call(e,this.error)):(this.nativeInput.removeAttribute(`aria-invalid`),(r=(n=this.nativeInput).setCustomValidity)==null||r.call(n,``))}createContainer(e){let t=super.createContainer();this.wrapper=this.j.c.div(this.getFullElName(`wrapper`)),this.nativeInput||=this.createNativeInput();let{nativeInput:n}=this;return n.classList.add(this.getFullElName(`input`)),this.wrapper.appendChild(n),t.appendChild(this.wrapper),N(n,`dir`,this.j.o.direction||`auto`),t}createNativeInput(e){return this.j.create.element(`input`)}constructor(e,t){super(e,t),this.label=this.j.c.span(this.getFullElName(`label`)),this.icon=this.j.c.span(this.getFullElName(`icon`)),this.clearButton=this.j.c.span(this.getFullElName(`clear`),vu.get(`cancel`)),this.state={...Uu.defaultState},this.__errorBox=this.j.c.span(this.getFullElName(`error`)),this.validators=new Set([]),t?.value!==void 0&&(t.value=t.value.toString()),Object.assign(this.state,t),this.state.clearButton!==void 0&&(this.j.e.on(this.clearButton,`click`,e=>{e.preventDefault(),this.nativeInput.value=``,this.j.e.fire(this.nativeInput,`input`),this.focus()}).on(this.nativeInput,`input`,()=>{this.state.clearButton=!!this.value.length}),this.state.clearButton=!!this.value.length),this.j.e.on(this.nativeInput,`focus blur`,()=>{this.onChangeFocus()}).on(this.nativeInput,`input change`,this.onChangeValue),this.onChangeState(),this.onChangeClassName(),this.onChangeStateValue()}focus(){this.nativeInput.focus()}get isFocused(){return this.nativeInput===this.j.od.activeElement}onChangeFocus(){this.setMod(`focused`,this.isFocused)}};Wu.defaultState={className:``,autocomplete:!0,name:``,value:``,icon:``,label:``,ref:``,type:`text`,placeholder:``,required:!1,validators:[]},Hu([I(`state.clearButton`)],Wu.prototype,`onChangeClear`,null),Hu([I(`state.className`)],Wu.prototype,`onChangeClassName`,null),Hu([I([`state.name`,`state.type`,`state.label`,`state.placeholder`,`state.autocomplete`,`state.icon`],{immediately:!1}),tu()],Wu.prototype,`onChangeState`,null),Hu([I(`state.value`)],Wu.prototype,`onChangeStateValue`,null),Hu([A],Wu.prototype,`onChangeValue`,null),Wu=Uu=Hu([Ws],Wu);var Gu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ku,qu=Ku=class extends Wu{className(){return`UISelect`}createContainer(e){var t;let n=super.createContainer(e),{j:r}=this,{nativeInput:i}=this,a=()=>r.create.element(`option`);if(e.placeholder!==void 0){let t=a();t.value=``,t.text=r.i18n(e.placeholder),i.add(t)}
402return(t=e.options)==null||t.forEach(e=>{let t=a();t.value=e.value.toString(),t.text=r.i18n(e.text),i.add(t)}),e.size&&e.size>0&&N(i,`size`,e.size),e.multiple&&N(i,`multiple`,``),n}createNativeInput(){return this.j.create.element(`select`)}updateValidators(){super.updateValidators(),this.state.required&&(this.validators.delete(zu),this.validators.add(Vu))}constructor(e,t){super(e,t),this.state={...Ku.defaultState},Object.assign(this.state,t)}};qu.defaultState={...Wu.defaultState,options:[],size:1,multiple:!1},qu=Ku=Gu([Ws],qu);var Ju=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Yu=class extends Ou{className(){return`UIForm`}submit(){this.j.e.fire(this.container,`submit`)}validate(){let e=this.allChildren.filter(e=>$l.isInstanceOf(e,Wu));for(let t of e)if(!t.validate())return!1;let t=this.allChildren.filter(e=>$l.isInstanceOf(e,qu));for(let e of t)if(!e.validate())return!1;return!0}onSubmit(e){return this.j.e.on(this.container,`submit`,()=>{let t=this.allChildren.filter(e=>$l.isInstanceOf(e,Wu));return this.validate()&&e(t.reduce((e,t)=>(e[t.state.name]=t.value,e),{})),!1}),this}createContainer(){let e=this.j.c.element(`form`);return e.classList.add(this.componentName),N(e,`dir`,this.j.o.direction||`auto`),N(e,`novalidate`,``),e}constructor(...e){super(...e),this.options?.className&&this.container.classList.add(this.options?.className)}};Yu=Ju([Ws],Yu);var Xu=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zu,Qu=Zu=class extends Wu{className(){return`UITextArea`}createNativeInput(e){return this.j.create.element(`textarea`)}constructor(e,t){super(e,t),this.state={...Zu.defaultState},Object.assign(this.state,t),this.state.resizable===!1&&(this.nativeInput.style.resize=`none`)}onChangeStateSize(){let{size:e,resizable:t}=this.state;this.nativeInput.style.resize=t?`auto`:`none`,this.nativeInput.rows=e??5}};Qu.defaultState={...Wu.defaultState,size:5,resizable:!0},Xu([I([`state.size`,`state.resizable`])],Qu.prototype,`onChangeStateSize`,null),Qu=Zu=Xu([Ws],Qu);var $u=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ed,td=ed=class extends Wu{className(){return`UICheckbox`}render(){return this.j.c.element(`label`,{className:this.componentName})}constructor(e,t){super(e,{...t,type:`checkbox`}),this.state={...ed.defaultState},Object.assign(this.state,t)}onChangeChecked(){this.value=this.state.checked.toString(),this.nativeInput.checked=this.state.checked,this.setMod(`checked`,this.state.checked)}onChangeNativeCheckBox(){this.state.checked=this.nativeInput.checked}onChangeSwitch(){this.setMod(`switch`,this.state.switch);let e=this.getElm(`switch-slider`);this.state.switch?(e||=this.j.c.div(this.getFullElName(`switch-slider`)),P.after(this.nativeInput,e)):P.safeRemove(e)}};td.defaultState={...Wu.defaultState,checked:!1,switch:!1},$u([I(`state.checked`),iu(`ready`)],td.prototype,`onChangeChecked`,null),$u([I(`nativeInput:change`)],td.prototype,`onChangeNativeCheckBox`,null),$u([I(`state.switch`),iu(`ready`)],td.prototype,`onChangeSwitch`,null),td=ed=$u([Ws],td);var nd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},rd=class extends Wu{className(){return`UIFileInput`}createContainer(e){this.button=new wu(this.j,{tooltip:e.tooltip,icon:{name:`plus`}});let{container:t}=this.button;this.nativeInput||=this.createNativeInput(e);let{nativeInput:n}=this;return n.classList.add(this.getFullElName(`input`)),t.classList.add(this.componentName),t.appendChild(n),t}createNativeInput(e){return this.j.create.fromHTML(`<input 403 type="file" 404 accept="${e.onlyImages?`image/*`:`*`}" 405 tabindex="-1" 406 dir="auto" 407 multiple="" 408 />`)}constructor(e,t){super(e,{type:`file`,...t}),this.state={...Wu.defaultState,type:`file`,onlyImages:!0}}};rd=nd([Ws],rd);var id=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ad=class extends xu{className(){return`UISeparator`}};ad=id([Ws],ad);var od=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sd=class extends xu{className(){return`UISpacer`}};sd=od([Ws],sd);var cd=e=>Ao(e.buttons);function ld(e,t){let n=t.getRegisteredButtonGroups();return new Set(e.reduce((e,t)=>
408(cd(t)?e=e.concat([...t.buttons,...n[t.group]??[]]):e.push(t),e),[]))}function ud(e,t){let n;return t||=F.defaultOptions.controls,j(e)?n=dd(e,t)||{name:e,command:e,tooltip:e}:(n={name:`empty`,...nl(e)},t[n.name]!==void 0&&(n={...nl(t[n.name]),...nl(n)})),n}function dd(e,t){let[n,r]=e.split(/\./),i=t;return r==null?r=n:t[n]!==void 0&&(i=t[n]),i[r]?{name:r,...nl(i[r])}:void 0}function fd(e,t){return(Ao(e)?e:_s(e,!1).map(t=>{let n=e[t]||{};return tl({name:t},n)})).map(e=>ud(e,t||F.defaultOptions.controls))}var pd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},md=class extends Ou{constructor(){super(...arguments),this.mode=`horizontal`,this.removeButtons=[]}className(){return`UIList`}getRole(){return`list`}__onChangeMode(){this.setMod(`mode`,this.mode)}makeGroup(e){return new Ou(this.jodit,[],e?{role:e}:void 0)}get buttons(){return this.allChildren.filter(e=>$l.isInstanceOf(e,wu))}getButtonsNames(){return this.buttons.map(e=>e instanceof wu&&e.state.name||``).filter(e=>e!==``)}setRemoveButtons(e){return this.removeButtons=e||[],this}build(e,t=null){e=Ys(e),this.clear();let n=!1,r=this.makeGroup(`group`);this.append(r),r.setMod(`line`,!0);let i,a=e=>{let a=null;switch(e.name){case` 409`:r=this.makeGroup(`group`),r.setMod(`line`,!0),i=this.makeGroup(),r.append(i),this.append(r);break;case`|`:n||(n=!0,a=new ad(this.j));break;case`---`:{i.setMod(`before-spacer`,!0);let e=new sd(this.j);r.append(e),i=this.makeGroup(),r.append(i),n=!1;break}default:switch(n=!1,e.component){case`select`:a=this.makeSelect(e,t);break;default:a=this.makeButton(e,t)}}a&&(i||(i=this.makeGroup(),r.append(i)),i.append(a))},o=e=>!this.removeButtons.includes(e.name)&&(!e.isVisible||e.isVisible?.call(e,this.j,e));return e.forEach(e=>{if(cd(e)){let t=e.buttons.filter(e=>e);t.length&&(i=this.makeGroup(),i.setMod(`separated`,!0).setMod(`group`,e.group),r.append(i),fd(t,this.j.o.controls).filter(o).forEach(a))}else{i||(i=this.makeGroup(),r.append(i));let t=ud(e,this.j.o.controls);o(t)&&a(t)}}),this.update(),this}makeSelect(e,t){throw Error(`Not implemented behaviour`)}makeButton(e,t){return new wu(this.j,{name:e.name})}};pd([I(`mode`),iu(`ready`)],md.prototype,`__onChangeMode`,null),md=pd([Ws],md);var hd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},gd=[`escape`,`cut`,`delete`,`backSpaceAfterDelete`,`beforeCommandDelete`],_d=class e extends Ou{className(){return`Popup`}appendChildToContainer(e){let t=this.getElm(`content`);Uo(t,`Content element should exist`),t.appendChild(e)}updateParentElement(t){return t!==this&&$l.isInstanceOf(t,e)&&(this.__childrenPopups.forEach(e=>{!t.closest(e)&&e.isOpened&&e.close()}),this.__childrenPopups.has(t)||this.j.e.on(t,`beforeClose`,()=>{this.__childrenPopups.delete(t)}),this.__childrenPopups.add(t)),super.updateParentElement(t)}setContent(e){if(this.allChildren.length)throw Error(`Remove children`);if($l.isInstanceOf(e,xu))this.append(e);else{let t=j(e)?this.j.c.fromHTML(e):e;this.appendChildToContainer(t)}return this.updatePosition(),this}open(t,n=!1,r){if(ms(this.jodit,this.container),this.container.classList.add(`jodit_theme_${this.jodit.o.theme}`),this.__calculateZIndex(),this.isOpened=!0,this.__addGlobalListeners(),this.__targetBound=n?this.getKeepBound(t):t,r)r.appendChild(this.container);else{let t=Ac(this.jodit,e);r!==this.container.parentElement&&t.appendChild(this.container)}return this.updatePosition(),this.j.e.fire(this,`afterOpen`),this.j.e.fire(`afterOpenPopup`,this),this}__calculateZIndex(){if(this.container.style.zIndex)return;let e=e=>{let t=e.container.style.zIndex||e.o.zIndex;return t?(this.setZIndex(1+parseInt(t.toString(),10)),!0):!1},{j:t}=this;if(e(t))return;let n=this.parentElement;for(;n;){if(e(n.j))return;if(n.container.style.zIndex){this.setZIndex(1+parseInt(n.container.style.zIndex.toString(),10));return}if(!n.parentElement&&n.container.parentElement){let e=xu.closestElement(n.container.parentElement,xu);if(e){n=e;continue}}n=n.parentElement}}getKeepBound(e){let t=e(),n=(this.j.o.shadowRoot??this.od).elementFromPoint(t.left,t.top);if(!n)return e;let r=P.isHTMLElement(n)?n:n.parentElement,i=Kl(r,this.j);return()=>{let t=e(),n=Kl(r,this.j);
409return{...t,top:t.top+(n.top-i.top),left:t.left+(n.left-i.left)}}}updatePosition(){if(!this.isOpened)return this;let[e,t]=this.__calculatePosition(this.__targetBound(),this.viewBound(),Kl(this.container,this.j));this.setMod(`strategy`,t);let n=Vl(this.container);return M(this.container,{left:e.left-n.x,top:e.top-n.y}),this.__childrenPopups.forEach(e=>e.updatePosition()),this}__throttleUpdatePosition(){this.updatePosition()}__calculatePosition(t,n,r,i=this.strategy){let a={left:t.left,right:t.left-(r.width-t.width)},o={bottom:t.top+t.height,top:t.top-r.height},s=Object.keys(a).reduce((e,t)=>e.concat(Object.keys(o).map(e=>`${t}${Jl(e)}`)),[]),c=e=>{let[t,n]=Ko(e).split(`-`);return{left:a[t],top:o[n],width:r.width,height:r.height}},l=t=>{let n=null;return n=e.boxInView(c(i),t)?i:s.find(n=>{if(e.boxInView(c(n),t))return n})||null,n},u=l(Kl(this.j.container,this.j));return(!u||!e.boxInView(c(u),n))&&(u=l(n)||u||i),[c(u),u]}static boxInView(e,t){return e.top-t.top>=-2&&e.left-t.left>=-2&&t.top+t.height-(e.top+e.height)>=-2&&t.left+t.width-(e.left+e.width)>=-2}close(){return this.isOpened?(this.isOpened=!1,this.__childrenPopups.forEach(e=>e.close()),this.j.e.fire(this,`beforeClose`),this.j.e.fire(`beforePopupClose`,this),this.__removeGlobalListeners(),P.safeRemove(this.container),this):this}__closeOnOutsideClick(e){!this.isOpened||this.isOwnClick(e)||this.close()}isOwnClick(t){if(!t.target)return!1;let n=xu.closestElement(t.target,e);return!!(n&&(this===n||n.closest(this)))}__addGlobalListeners(){let e=this.__throttleUpdatePosition,t=this.ow;Mc.on(`closeAllPopups`,this.close),this.smart&&this.j.e.on(gd,this.close).on(`mousedown touchstart`,this.__closeOnOutsideClick).on(t,`mousedown touchstart`,this.__closeOnOutsideClick),this.j.e.on(`closeAllPopups`,this.close).on(`resize`,e).on(this.container,`scroll mousewheel`,e).on(t,`scroll`,e).on(t,`resize`,e),P.up(this.j.container,t=>{t&&this.j.e.on(t,`scroll mousewheel`,e)})}__removeGlobalListeners(){let e=this.__throttleUpdatePosition,t=this.ow;Mc.off(`closeAllPopups`,this.close),this.smart&&this.j.e.off(gd,this.close).off(`mousedown touchstart`,this.__closeOnOutsideClick).off(t,`mousedown touchstart`,this.__closeOnOutsideClick),this.j.e.off(`closeAllPopups`,this.close).off(`resize`,e).off(this.container,`scroll mousewheel`,e).off(t,`scroll`,e).off(t,`resize`,e),this.j.container.isConnected&&P.up(this.j.container,t=>{t&&this.j.e.off(t,`scroll mousewheel`,e)})}setZIndex(e){this.container.style.zIndex=e.toString()}constructor(e,t=!0){super(e),this.smart=t,this.isOpened=!1,this.strategy=`leftBottom`,this.viewBound=()=>({left:0,top:0,width:this.ow.innerWidth,height:this.ow.innerHeight}),this.__childrenPopups=new Set,N(this.container,`role`,`popup`)}render(){return`<div> 410 <div class="&__content"></div> 411 </div>`}destruct(){return this.close(),super.destruct()}};hd([A],_d.prototype,`updatePosition`,null),hd([nu(10),A],_d.prototype,`__throttleUpdatePosition`,null),hd([A],_d.prototype,`close`,null),hd([A],_d.prototype,`__closeOnOutsideClick`,null);var vd=class e extends xu{constructor(){super(...arguments),this.__animationElement=null}className(){return`ProgressBar`}render(){return`<div><div></div></div>`}show(){return(this.j.workplace||this.j.container).appendChild(this.container),this}hide(){return P.safeRemove(this.container),this}progress(e){return this.container.style.width=e.toFixed(2)+`%`,this}showFileUploadAnimation(t,n){this.__cleanUpAnimation();let r=Ac(this.j,e),i=Kl(this.j.container,this.j),a=this.j.c.div(this.getFullElName(`file-animation`)),o=vu.get(`file`,``);o&&(a.innerHTML=o);let s=t??{x:i.width/2,y:0},c=n??{x:s.x+60,y:s.y-80};M(a,{left:i.left+s.x,top:i.top+s.y}),r.appendChild(a),this.__animationElement=a,a.offsetWidth,M(a,{left:i.left+c.x,top:i.top+c.y,opacity:0,transform:`scale(0.4)`});let l=()=>{a.removeEventListener(`transitionend`,l),this.__cleanUpAnimation()};a.addEventListener(`transitionend`,l)}__cleanUpAnimation(){this.__animationElement&&=(P.safeRemove(this.__animationElement),null)}destruct(){return this.__cleanUpAnimation(),this.hide(),super.destruct()}},yd=class{get doc(){return k(this.document)?this.document():this.document}constructor(e,t){this.document=e,this.createAttributes=t}element(e,t,n){let r=this.doc.createElement(e.toLowerCase());return this.applyCreateAttributes(r),t&&(Go(t)?N(r,t):n=t),n&&Nc(n).forEac
411h(e=>r.appendChild(j(e)?this.fromHTML(e):e)),r}div(e,t,n){let r=this.element(`div`,t,n);return e&&(r.className=e),r}sandbox(){let e=this.element(`iframe`,{sandbox:`allow-same-origin`});this.doc.body.appendChild(e);let t=e.contentWindow?.document;if(Uo(t,`iframe.contentWindow.document`),!t)throw Error(`Iframe error`);return t.open(),t.write(`<!DOCTYPE html><html><head></head><body></body></html>`),t.close(),[t.body,e]}span(e,t,n){let r=this.element(`span`,t,n);return e&&(r.className=e),r}a(e,t,n){let r=this.element(`a`,t,n);return e&&(r.className=e),r}text(e){return this.doc.createTextNode(e)}fake(){return this.text(``)}fragment(){return this.doc.createDocumentFragment()}fromHTML(e,t){let n=this.div();n.innerHTML=e.toString();let r=n.firstChild!==n.lastChild||!n.firstChild?n:n.firstChild;if(P.safeRemove(r),t){let e=Ic(r);Object.keys(t).forEach(n=>{let r=e[n];r&&t[n]===!1&&P.hide(r)})}return r}applyCreateAttributes(e){if(this.createAttributes){let t=this.createAttributes;if(t&&t[e.tagName.toLowerCase()]){let n=t[e.tagName.toLowerCase()];k(n)?n(e):Go(n)&&N(e,n)}}}},bd=class{constructor(e=`JoditDB`,t=`keyValueStore`){this.dbName=e,this.dbPromise=null,this.DB_VERSION=1,this.storeName=t}getDB(){return this.dbPromise||=new Promise((e,t)=>{let n=indexedDB.open(this.dbName,this.DB_VERSION);n.onerror=()=>{t(n.error)},n.onsuccess=()=>{e(n.result)},n.onupgradeneeded=e=>{let t=e.target.result;t.objectStoreNames.contains(this.storeName)||t.createObjectStore(this.storeName)}}),this.dbPromise}async performTransaction(e,t){try{let n=t((await this.getDB()).transaction([this.storeName],e).objectStore(this.storeName));return new Promise((e,t)=>{n.onsuccess=()=>{e(n.result)},n.onerror=()=>{t(n.error)}})}catch(e){return Promise.reject(e)}}async set(e,t){try{await this.performTransaction(`readwrite`,n=>n.put(t,e))}catch{}return this}async delete(e){try{await this.performTransaction(`readwrite`,t=>t.delete(e))}catch{}return this}async get(e){try{return await this.performTransaction(`readonly`,t=>t.get(e))}catch{return}}async exists(e){try{return await this.performTransaction(`readonly`,t=>t.get(e))!==void 0}catch{return!1}}async clear(){try{await this.performTransaction(`readwrite`,e=>e.clear())}catch{}return this}async close(){if(this.dbPromise){try{(await this.dbPromise).close()}catch{}this.dbPromise=null}}async keys(){try{let e=await this.performTransaction(`readonly`,e=>e.getAllKeys());return e&&typeof e==`object`&&`then`in e&&(e=await e),e.map(e=>String(e))}catch{return[]}}async values(){try{let e=await this.performTransaction(`readonly`,e=>e.getAll());return e&&typeof e==`object`&&`then`in e&&(e=await e),e}catch{return[]}}async entries(){try{let[e,t]=await Promise.all([this.keys(),this.values()]);return e.map((e,n)=>[e,t[n]])}catch{return[]}}},xd=null;function Sd(){xd=null}async function Cd(){if(xd!=null)return xd;try{if(typeof indexedDB>`u`)return xd=!1,!1;let e=`___Jodit___`+Math.random().toString(),t=indexedDB.open(e);return xd=await new Promise(n=>{t.onerror=()=>{n(!1)},t.onsuccess=()=>{indexedDB.deleteDatabase(e),n(!0)}}),xd}catch{return xd=!1,!1}}var wd=(e=`localStorage`)=>{let t=new Map;return(()=>{if(t.has(e))return t.get(e);let n=`___Jodit___`+Math.random().toString(),r=e===`sessionStorage`?sessionStorage:localStorage;try{r.setItem(n,`1`);let i=r.getItem(n)===`1`;return r.removeItem(n),t.set(e,i),i}catch{}return t.set(e,!1),!1})()},Td=class{get storage(){return this.strategy===`sessionStorage`?sessionStorage:localStorage}set(e,t){try{let n=this.storage.getItem(this.rootKey),r=n?JSON.parse(n):{};r[e]=t,this.storage.setItem(this.rootKey,JSON.stringify(r))}catch{}return this}delete(e){try{let t=this.storage.getItem(this.rootKey);if(t){let n=JSON.parse(t);delete n[e],this.storage.setItem(this.rootKey,JSON.stringify(n))}}catch{}return this}get(e){try{let t=this.storage.getItem(this.rootKey),n=t?JSON.parse(t):{};return n[e]===void 0?void 0:n[e]}catch{}}exists(e){return this.get(e)!=null}constructor(e,t=`localStorage`){this.rootKey=e,this.strategy=t}clear(){try{this.storage.removeItem(this.rootKey)}catch{}return this}},Ed=class{constructor(){this.data=new Map}set(e,t){return this.data.set(e,t),this}delete(e){return this.data.delete(e),this}get(e){return this.data.get(e)}exists(e){return this.data.has(e)}clear(){return this.data.clear(),this}},Dd=`Jodit_`,Od=class e{set(e,t){return this.provider.set(es(this.prefix+e),t),this}delete(e){return this.provider.delete(es(this.prefix+e)),this}get(e){return this.provider.get(es(this.prefix+e))}exists(e){return this.provider.exists(es(this.prefix+e))}clear(){return this.provider.clear(),this}constructor(e,t){this.provider=e,this.prefix=Dd,t&&(this.prefix+=t)}static makeStorage(t=!1,n){let r;return t===`localStorage`||t===`sessionStorage`?wd(t)&&(r=new Td(Dd+(n||``),t)):t===!0&&wd(`localStorage`)&&(r=new Td(Dd+(n||``))),r||=new Ed,new e(r,n)}},kd=class e{constructor(e,t){this.provider=e,this.prefix=Dd,t&&(this.prefix+=t)}async set(e,t){return await(await this.provider).set(es(this.prefix+e),t),this}async delete(e){return await(await this.provider).delete(es(this.prefix+e)),this}async get(e){return(await this.provider).get(es(this.prefix+e))}async exists(e){return(await this.provider).exists(es(this.prefix+e))}async clear(){return await(await this.provider).clear(),this}async close(){let e=await this.provider;`close`in e&&typeof e.close==`function`&&await e.close()}static makeStorage(t=!1,n,r){let i,a=null,o=r?.defaultProvider;return o==null?(t===`localStorage`||t===`sessionStorage`?wd(t)&&(i=new Td(Dd+(n||``),t)):(t===`indexedDB`||t===!0)&&(i=Cd().then(e=>e?new bd(Dd+(n||``),`keyValueStore`):new Ed)),i||=new Ed,a=new e(Promise.resolve(i),n),a):(i=o===`local`?wd(`localStorage`)?new Td(Dd+(n||``)):new Ed:o===`memory`?new Ed:o,new e(Promise.resolve(i),n))}},Ad=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},jd=class extends xu{className(){return`UIMessage`}constructor(e,t){super(e),this.setMod(`active`,!0),this.setMod(`variant`,t.variant),this.container.textContent=t.text}};jd=Ad([Ws],jd);var Md=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Nd=class extends Ou{className(){return`UIMessages`}constructor(e,t,n={defaultTimeout:3e3,defaultOffset:5}){super(e),this.__box=t,this.options=n,this.__messages=new Set}info(e,t){this.__message(e,`info`,t)}success(e,t){this.__message(e,`success`,t)}error(e,t){this.__message(e,`error`,t)}message(e,t,n){this.__message(e,t,n)}__message(e,t=`info`,n){let r=e+`:`+t;if(this.__messages.has(r)){this.async.updateTimeout(r,n||this.options.defaultTimeout);return}if(!this.__box)throw Error(`Container is not defined: `+r);this.__box.appendChild(this.container);let i=new jd(this.j,{text:e,variant:t});this.append(i),this.__calcOffsets(),this.__messages.add(r);let a=this.__getRemoveCallback(i,r);this.j.e.on(i.container,`pointerdown`,a),this.async.setTimeout(a,{label:r,timeout:n||this.options.defaultTimeout})}__getRemoveCallback(e,t){let n=r=>{r&&r.preventDefault(),!e.isInDestruct&&(this.async.clearTimeout(t),this.j.e.off(e.container,`pointerdown`,n),this.__messages.delete(t),e.setMod(`active`,!1),this.async.setTimeout(()=>{this.remove(e),e.destruct(),this.__calcOffsets()},300))};return n}__calcOffsets(){let e=5;
411this.elements.forEach(t=>{M(t.container,`bottom`,e+`px`),e+=t.container.offsetHeight+this.options.defaultOffset})}};Nd=Md([Ws],Nd);var Pd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fd,Id=Fd=class extends $l{constructor(e,t=!1){super(),this.isJodit=t,this.isView=!0,this.parent=null,this.mods={},this.components=new Set,this.OPTIONS=Fd.defaultOptions,this.__isFullSize=!1,this.__whoLocked=``,this.isLockedNotBy=e=>this.isLocked&&this.__whoLocked!==e,this.__modulesInstances=new Map,this.id=new Date().getTime().toString(),this.initOptions(e),this.initOwners(),this.events=e?.eventEmmiter??new Qs(this.od),this.create=new yd(this.od),this.__container=this.c.div(`jodit ${this.componentName}`)}get basePath(){return this.o.basePath?this.o.basePath:xo}get minified(){return this.o.minified===void 0?So:this.o.minified}get defaultTimeout(){return Mo(this.o.defaultTimeout)?100:this.o.defaultTimeout}get buffer(){return Od.makeStorage()}get message(){return this.getMessageModule(this.container)}getMessageModule(e){return new Nd(this,e)}get storage(){return Od.makeStorage(!0,this.id)}get asyncStorage(){return kd.makeStorage(!0,this.id,this.o.asyncStorage)}get c(){return this.create}get container(){return this.__container}set container(e){this.__container=e}get e(){return this.events}get progressbar(){return new vd(this)}get options(){return this.__options}set options(e){this.__options=e}get o(){return this.options}i18n(e,...t){return Xl(e,t,this.options)}toggleFullSize(e){e===void 0&&(e=!this.__isFullSize),e!==this.__isFullSize&&(this.__isFullSize=e,this.e.fire(`toggleFullSize`,e))}get isLocked(){return this.__whoLocked!==``}lock(e=`any`){return!this.isLocked&&(this.__whoLocked=e,!0)}unlock(){return this.isLocked?(this.__whoLocked=``,!0):!1}get isFullSize(){return this.__isFullSize}getVersion(){return Fd.version}static getVersion(){return Fd.version}initOptions(e){this.options=tl(e||{},tl(this.options||{},Fd.defaultOptions))}initOwners(){this.ownerWindow=this.o.ownerWindow??window}attachEvents(e){if(!e)return;let t=e?.events;t&&Object.keys(t).forEach(e=>this.e.on(e,t[e]))}getInstance(e,t){let n=k(e)?e.prototype.className():e,r=this.e.fire(es(`getInstance_`+n),t);if(r)return r;let i=k(e)?e:Dc[n],a=this.__modulesInstances;if(!k(i))throw cs(`Need real module name`);if(!a.has(n)){let e=i.prototype instanceof eu?new i(this,t):new i(t);this.components.add(e),a.set(n,e)}return a.get(n)}addDisclaimer(e){this.container.appendChild(e)}beforeDestruct(){this.e.fire(Oo.beforeDestruct,this),this.components.forEach(e=>{ks(e)&&!e.isInDestruct&&e.destruct()}),this.components.clear()}destruct(){var e,t,n,r;this.isDestructed||((e=Rs(this,`progressbar`))==null||e.destruct(),(t=Rs(this,`message`))==null||t.destruct(),(n=Rs(this,`asyncStorage`))==null||n.close(),this.events&&=(this.events.destruct(),void 0),(r=Rs(this,`buffer`))==null||r.clear(),P.safeRemove(this.container),super.destruct())}};Id.ES=Aa,Id.version=ka,Id.esNext=!0,Id.esModern=!0,Pd([zs],Id.prototype,`buffer`,null),Pd([zs],Id.prototype,`message`,null),Pd([zs],Id.prototype,`storage`,null),Pd([zs],Id.prototype,`asyncStorage`,null),Pd([zs],Id.prototype,`c`,null),Pd([zs],Id.prototype,`e`,null),Pd([zs],Id.prototype,`progressbar`,null),Pd([iu(Oo.beforeDestruct)],Id.prototype,`beforeDestruct`,null),Id=Fd=Pd([ru(_u,gu)],Id),Id.defaultOptions={extraButtons:[],cache:!0,textIcons:!1,namespace:``,removeButtons:[],zIndex:100002,defaultTimeout:100,fullsize:!1,showTooltip:!0,useNativeTooltip:!1,buttons:[],globalFullSize:!0,language:`auto`};function Ld(e,t){let n=Gs(`ToolbarCollection`),r=Gs(`ToolbarEditorCollection`),i=Ms(e)?new r(e):new n(e);return e.o.textIcons&&i.container.classList.add(`jodit_text_icons`),t&&(i.parentElement=t),e.o.toolbarButtonSize&&(i.buttonSize=e.o.toolbarButtonSize),i}function Rd(e,t,n=null){if(k(t.getContent))return new(Gs(`ToolbarContent`))(e,t,n
411);let r=new(Gs(`ToolbarButton`))(e,t,n);return r.state.tabIndex=e.o.allowTabNavigation?0:-1,r}function zd(e,t,n=null){return new(Gs(`ToolbarSelect`))(e,t,n)}var Bd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Vd=class extends Id{get toolbarContainer(){return!this.o.fullsize&&(j(this.o.toolbar)||P.isHTMLElement(this.o.toolbar))?Rc(this.o.toolbar,this.o.shadowRoot||this.od):(this.o.toolbar&&this.__appendToolbarBox(),this.__defaultToolbarContainer)}__appendToolbarBox(){let e=this.__defaultToolbarContainer,t=this.container.firstElementChild;for(;t&&t!==e&&t.hasAttribute(`data-jodit-above-toolbar`);)t=t.nextElementSibling;t!==e&&this.container.insertBefore(e,t)}setPanel(e){this.o.toolbar=e,this.buildToolbar()}buildToolbar(){var e;if(!this.o.toolbar)return;let t=this.o.buttons?Ys(this.o.buttons):[];(e=this.toolbar)==null||e.setRemoveButtons(this.o.removeButtons).build(t.concat(this.o.extraButtons||[])).appendTo(this.toolbarContainer)}getRegisteredButtonGroups(){return this.groupToButtons}registerButton(e){this.registeredButtons.add(e);let t=e.group??`other`;return this.groupToButtons[t]||(this.groupToButtons[t]=[]),e.position==null?this.groupToButtons[t].push(e.name):this.groupToButtons[t][e.position]=e.name,this}unregisterButton(e){this.registeredButtons.delete(e);let t=e.group??`other`,n=this.groupToButtons[t];if(n){let r=n.indexOf(e.name);r!==-1&&n.splice(r,1),n.length===0&&delete this.groupToButtons[t]}return this}beforeToolbarBuild(e){if(Object.keys(this.groupToButtons).length)return e.map(e=>cd(e)&&e.group&&this.groupToButtons[e.group]?{group:e.group,buttons:[...e.buttons,...this.groupToButtons[e.group]]}:e)}constructor(e,t=!1){super(e,t),this.toolbar=Ld(this),this.__defaultToolbarContainer=this.c.div(`jodit-toolbar__box`),this.registeredButtons=new Set,this.groupToButtons={},this.isJodit=!1,this.__tooltip=new Fu(this),this.isJodit=t,this.e.on(`beforeToolbarBuild`,this.beforeToolbarBuild)}destruct(){this.isDestructed||(this.setStatus(Oo.beforeDestruct),this.e.off(`beforeToolbarBuild`,this.beforeToolbarBuild),this.__tooltip.destruct(),this.toolbar.destruct(),this.toolbar=void 0,super.destruct())}};Bd([I(`:rebuildToolbar`)],Vd.prototype,`buildToolbar`,null),Bd([A],Vd.prototype,`beforeToolbarBuild`,null);var Hd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ud;F.prototype.dialog={namespace:``,extraButtons:[],resizable:!0,draggable:!0,buttons:[`dialog.close`],removeButtons:[],toolbarButtonSize:`middle`,zIndex:`inherit`},F.prototype.controls.dialog={close:{icon:`cancel`,exec:e=>{e.close()}}};var Wd=Ud=class extends Vd{className(){return`Dialog`}get destination(){let{popupRoot:e,shadowRoot:t}=this.o;return e||t||this.od.body}setElements(e,t){let n=[];Nc(t).forEach(t=>{if(Ao(t)){let r=this.c.div(this.getFullElName(`column`));return n.push(r),e.appendChild(r),this.setElements(r,t)}let r;r=j(t)?this.c.fromHTML(t):As(t)?t.container:t,n.push(r),r.parentNode!==e&&e.appendChild(r)}),Io(e.childNodes).forEach(t=>{n.indexOf(t)===-1&&e.removeChild(t)})}__onMouseUp(){(this.draggable||this.resizable)&&(this.__removeGlobalResizeListeners(),this.draggable=!1,this.resizable=!1,this.unlockSelect(),this.e&&(this.__removeGlobalResizeListeners(),this.e.fire(this,`endResize endMove`)))}__onHeaderMouseDown(e){let t=e.target;!this.o.draggable||t&&t.nodeName.match(/^(INPUT|SELECT)$/)||(this.draggable=!0,this.startX=e.clientX,this.startY=e.clientY,this.startPoint.x=M(this.dialog,`left`),this.startPoint.y=M(this.dialog,`top`),this.setMaxZIndex(),e.cancelable&&e.preventDefault(),this.lockSelect(),this.__addGlobalResizeListeners(),this.e&&(this.e.fire(this,`startMove`),this.e.fire(`closeAllPopups`)))}__onMouseMove(e){this.draggable&&this.o.draggable&&(this.setPosition(this.startPoint.x+e.clientX-this.startX,this.startPoint.y+e.clientY-this.startY),this.e&&this.e.fire(this,`move`,e.clientX-this.startX,e.clientY-this.startY),e.stopImmediatePropagation()),this.resizable&&this.o.resizable&&(this.setSize(Math.max(this.startPoint.w+e.clientX-this.startX,this.minSize.w),Math.max(this.startPoint.h+e.clientY-this.startY,this.minSize.h)),this.e&&this.e.fire(this,`resizeDialog`,e.clientX-this.startX,e.clientY-this.startY))}__onEsc(e){if(this.o.closeOnEsc&&this.isOpened&&e.key===`Escape`&&this.getMod(`static`)!==!0){let t=this.getMaxZIndexDialog();t?t.close():this.close(),e.stopImmediatePropagation()}}__onResizerMouseDown(e){this.resizable=!0,this.startX=e.clientX,this.startY=e.clientY,this.startPoint.w=this.dialog.offsetWidth,this.startPoint.h=this.dialog.offsetHeight;let t=this.getElm(`header`),n=this.getElm(`footer`),r=this.getElm(`content`),i=r&&parseFloat(this.ow.getComputedStyle(r).minHeight)||0;this.minSize.w=Fs(this.o.minWidth)?this.o.minWidth:Math.max(100,n?.scrollWidth??0),this.minSize.h=Fs(this.o.minHeight)?this.o.minHeight:(t?.offsetHeight??0)+(n?.offsetHeight??0)+i+this.resizer.offsetHeight,this.lockSelect(),this.__addGlobalResizeListeners(),this.e&&this.e.fire(this,`startResize`)}__addGlobalResizeListeners(){let e=this;e.e.on(e.ow,`pointermove touchmove`,e.__onMouseMove).on(e.ow,`pointerup touchend`,e.__onMouseUp)}__removeGlobalResizeListeners(){let e=this;e.e.off(e.ow,`mousemove pointermove`,e.__onMouseMove).off(e.ow,`mouseup pointerup`,e.__onMouseUp)}setSize(e,t){return e??=this.dialog.offsetWidth,t??=this.dialog.offsetHeight,M(this.dialog,{width:e,height:t}),this}calcAutoSize(){return this.setSize(`auto`,`auto`),this.setSize(),this}setPosition(e,t){let n=this.ow.innerWidth,r=this.ow.innerHeight,i=n/2-this.dialog.offsetWidth/2,a=r/2-this.dialog.offsetHeight/2;return i<0&&(i=0),a<0&&(a=0),e!==void 0&&t!==void 0&&(this.offsetX=e,this.offsetY=t,this.moved=Math.abs(e-i)>100||Math.abs(t-a)>100),this.dialog.style.left=(e||i)+`px`,this.dialog.style.top=(t||a)+`px`,this}setHeader(e){return this.setElements(this.dialogbox_header,e),this}setContent(e){return this.setElements(this.dialogbox_content,e),this}setFooter(e){return this.setElements(this.dialogbox_footer,e),this.setMod(`footer`,!!e),this}getZIndex(){return parseInt(M(this.container,`zIndex`),10)||0}
411getMaxZIndexDialog(){let e=0,t,n,r=this;return Pc(`.jodit-dialog`,this.destination).forEach(i=>{t=i.component,n=parseInt(M(i,`zIndex`),10),t.isOpened&&!isNaN(n)&&n>e&&(r=t,e=n)}),r}setMaxZIndex(){if(this.getMod(`static`))return;let e=20000004,t=0;Pc(`.jodit-dialog`,this.destination).forEach(n=>{t=parseInt(M(n,`zIndex`),10),e=Math.max(isNaN(t)?0:t,e)}),this.container.style.zIndex=(e+1).toString()}toggleFullSize(e){Mo(e)&&(e=!this.getMod(`fullsize`)),this.setMod(`fullsize`,e),super.toggleFullSize(e)}open(e,t,n,r){if(Mc.fire(`closeAllPopups hideHelpers`),this.e.fire(this,`beforeOpen`)===!1)return this;Jo(e)&&(n=e),Jo(t)&&(r=t),this.destroyAfterClose=n===!0;let i=Jo(e)?void 0:e,a=Jo(t)?void 0:t;return a!==void 0&&this.setHeader(a),i&&this.setContent(i),this.setMod(`active`,!0),this.isOpened=!0,this.setModal(r),this.destination.appendChild(this.container),this.getMod(`static`)===!0?this.container.style.removeProperty(`z-index`):(this.setPosition(this.offsetX,this.offsetY),this.setMaxZIndex()),this.o.fullsize&&this.toggleFullSize(!0),this.e.fire(`afterOpen`,this),this}setModal(e){return this.isModal=!!e,this.setMod(`modal`,this.isModal),this}close(){if(this.isDestructed||!this.isOpened||this.getMod(`static`)===!0)return this;let{e}=this;return e.fire(this,`beforeClose`)===!1||e.fire(`beforeClose`,this)===!1?this:(this.setMod(`active`,!1),this.isOpened=!1,this.isFullSize&&this.toggleFullSize(!1),P.safeRemove(this.container),this.__removeGlobalResizeListeners(),e.fire(this,`afterClose`),this.isInDestruct||e.fire(this.ow,`joditCloseDialog`),this.destroyAfterClose&&this.destruct(),this)}constructor(e={}){super(e),this.destroyAfterClose=!1,this.moved=!1,this.resizable=!1,this.draggable=!1,this.startX=0,this.startY=0,this.startPoint={x:0,y:0,w:0,h:0},this.lockSelect=()=>{this.setMod(`moved`,!0)},this.unlockSelect=()=>{this.setMod(`moved`,!1)},this.__onResize=()=>{this.options&&this.o.resizable&&!this.moved&&this.isOpened&&!this.offsetX&&!this.offsetY&&this.setPosition()},this.minSize={w:0,h:0},this.isModal=!1,this.isOpened=!1;let t=this;t.options=tl(e,tl(F.prototype.dialog,Ud.defaultOptions)),t.attachEvents(t.options),P.safeRemove(t.container);let n=this.getFullElName.bind(this);t.container=this.c.fromHTML(`<div class="jodit jodit-dialog ${this.componentName}"> 412 <div class="${n(`overlay`)}"></div> 413 <div class="${this.getFullElName(`panel`)}"> 414 <div class="${n(`header`)}"> 415 <div class="${n(`header-title`)}"></div> 416 <div class="${n(`header-toolbar`)}"></div> 417 </div> 418 <div class="${n(`content`)}"></div> 419 <div class="${n(`footer`)}"></div> 420 <div class="${n(`resizer`)}">${vu.get(`resize_handler`)}</div> 421 </div> 422 </div>`),t.options.direction===`rtl`&&(t.container.style.direction=`rtl`,t.container.setAttribute(`dir`,`rtl`)),this.o.zIndex&&(this.container.style.zIndex=this.o.zIndex.toString()),N(t.container,`role`,`dialog`),Object.defineProperty(t.container,"component",{value:this}),t.setMod(`theme`,t.o.theme||`default`).setMod(`resizable`,!!t.o.resizable);let r=t.getElm(`panel`);Uo(r!=null,`Panel element does not exist`);let i=t.getElm(`resizer`);Uo(i!=null,`Resizer element does not exist`);let a=t.getElm(`header-title`);Uo(a!=null,`header-title element does not exist`);let o=t.getElm(`content`);Uo(o!=null,`Content element does not exist`);let s=t.getElm(`footer`);Uo(s!=null,`Footer element does not exist`);let c=t.getElm(`header-toolbar`);Uo(c!=null,`header-toolbar element does not exist`),this.dialog=r,this.resizer=i,this.dialogbox_header=a,this.dialogbox_content=o,this.dialogbox_footer=s,this.dialogbox_toolbar=c,M(t.dialog,{maxWidth:t.options.maxWidth,minHeight:t.options.minHeight,minWidth:t.options.minWidth});let l=t.getElm(`header`);l&&t.e.on(l,`pointerdown touchstart`,t.__onHeaderMouseDown),t.e.on(t.resizer,`mousedown touchstart`,t.__onResizerMouseDown);let u=Ec.get(`fullsize`);if(k(u)&&u(t),this.e.on(t.container,`close_dialog`,t.close).on(this.ow,`keydown`,this.__onEsc).on(this.ow,`resize`,this.__onResize),this.o.closeOnClickOverlay){let e=t.getElm(`overlay`);Uo(e!=null,`Overlay element does not exist`),this.e.on(e,`click`,t.close)}}buildToolbar(){this.o.buttons&&this.toolbar.build(Ys(this.o.buttons)).setMod(`mode`,`header`).appendTo(this.dialogbox_toolbar)}destruct(){this.isInDestruct||(this.setStatus(Oo.beforeDestruct),this.isOpened&&this.close(),this.events&&(this.__removeGlobalResizeListeners(),this.events.off(this.container,`close_dialog`,self.close).off(this.ow,`key
422down`,this.__onEsc).off(this.ow,`resize`,this.__onResize)),super.destruct())}};Wd.defaultOptions={...Id.defaultOptions,closeOnClickOverlay:!1,closeOnEsc:!0},Hd([A],Wd.prototype,`__onMouseUp`,null),Hd([A],Wd.prototype,`__onHeaderMouseDown`,null),Hd([A],Wd.prototype,`__onMouseMove`,null),Hd([A],Wd.prototype,`__onEsc`,null),Hd([A],Wd.prototype,`__onResizerMouseDown`,null),Hd([A],Wd.prototype,`close`,null),Hd([iu(`ready`)],Wd.prototype,`buildToolbar`,null),Wd=Ud=Hd([Ws],Wd);function Gd(e,t,n,r=`jodit-dialog_alert`){k(t)&&(n=t,t=void 0);let i=this instanceof Wd?this:new Wd({closeOnClickOverlay:!0}),a=i.c.div(r),o=Tu(i,`ok`,`Ok`);return Nc(e).forEach(e=>{a.appendChild(P.isNode(e)?e:i.c.fromHTML(e))}),o.onAction(()=>{(!n||!k(n)||n(i)!==!1)&&i.close()}),i.setFooter([o]),i.open(a,t||` `,!0,!0),o.focus(),i}function Kd(e,t,n){let r=this instanceof Wd?this:new Wd({closeOnClickOverlay:!0}),i=r.c.fromHTML(`<form class="jodit-dialog_prompt"></form>`),a=r.c.element(`label`);k(t)&&(n=t,t=void 0),a.appendChild(r.c.fromHTML(e)),i.appendChild(a);let o=e=>()=>{(!n||n(e)!==!1)&&r.close()},s=Tu(r,`cancel`,`Cancel`),c=Tu(r,`ok`,`Yes`);return s.onAction(o(!1)),c.onAction(o(!0)),r.e.on(i,`submit`,()=>(o(!0)(),!1)),r.setFooter([c,s]),r.open(i,t||` `,!0,!0),c.focus(),r}function qd(e,t,n,r,i){let a=this instanceof Wd?this:new Wd({closeOnClickOverlay:!0}),o=Tu(a,`cancel`,`Cancel`),s=Tu(a,`ok`,`Ok`),c=a.c.element(`form`,{class:`jodit-dialog_prompt`}
422),l=a.c.element(`input`,{autofocus:!0,class:`jodit-input`}),u=a.c.element(`label`);k(t)&&(n=t,t=void 0),r&&N(l,`placeholder`,r),u.appendChild(a.c.text(e)),c.appendChild(u),c.appendChild(l),o.onAction(a.close);let d=()=>{(!n||!k(n)||n(l.value)!==!1)&&a.close()};return s.onAction(d),a.e.on(c,`submit`,()=>(d(),!1)),a.setFooter([s,o]),a.open(c,t||` `,!0,!0),l.focus(),i!==void 0&&i.length&&(l.value=i,l.select()),a}var Jd=class{dlg(e){let t=jc(this.o,this.container,this.od.body),n=new Wd({language:this.o.language,shadowRoot:this.o.shadowRoot,popupRoot:t,ownerWindow:this.o.ownerWindow,defaultTimeout:this.o.defaultTimeout,direction:this.o.direction,theme:this.o.theme,globalFullSize:this.o.globalFullSize,...e});return ms(this,n.container),n.parent=this,n.bindDestruct(this)}confirm(e,t,n){return e=Yd(e,this),t=Yd(t,this),Kd.call(this.dlg({closeOnClickOverlay:!0}),e,t,n)}prompt(e,t,n,r,i){return e=Yd(e,this),t=Yd(t,this),r=Yd(r,this),qd.call(this.dlg({closeOnClickOverlay:!0}),e,t,n,r,i)}alert(e,t,n,r){return e=Yd(e,this),t=Yd(t,this),Gd.call(this.dlg({closeOnClickOverlay:!0}),e,t,n,r)}};function Yd(e,t){return j(e)&&!Lo(e)&&(e=t.i18n(e)),e}var Xd=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zd=class extends _d{className(){return`ContextMenu`}show(e,t,n){let r=this;r.clear(),Ao(n)&&(n.forEach(e=>{if(!e)return;let t=Tu(this.jodit,e.icon||`empty`,e.title);this.jodit&&t.setParentView(this.jodit),t.setMod(`context`,`menu`),t.onAction(t=>{var n;return(n=e.exec)==null||n.call(r,t),r.clear(),r.close(),!1}),this.append(t)}),this.open(()=>({left:e,top:t,width:0,height:0}),!0))}};Zd=Xd([Ws],Zd),F.prototype.filebrowser={namespace:``,cache:!0,extraButtons:[],filter(e,t){return t=t.toLowerCase(),j(e)?e.toLowerCase().indexOf(t)!==-1:j(e.name)?e.name.toLowerCase().indexOf(t)!==-1:!j(e.file)||e.file.toLowerCase().indexOf(t)!==-1},sortBy:`changed-desc`,sort(e,t,n){let[r,i]=n.toLowerCase().split(`-`),a=i===`asc`,o=(e,t)=>e<t?a?-1:1:e>t?a?1:-1:0;if(j(e))return o(e.toLowerCase(),t.toLowerCase());if(e[r]===void 0||r===`name`)return j(e.name)?o(e.name.toLowerCase(),t.name.toLowerCase()):j(e.file)?o(e.file.toLowerCase(),t.file.toLowerCase()):0;switch(r){case`changed`:{let n=new Date(e.changed).getTime(),r=new Date(t.changed).getTime();return a?n-r:r-n}case`size`:{let n=ll(e.size),r=ll(t.size);return a?n-r:r-n}}return 0},editImage:!0,preview:!0,showPreviewNavigation:!0,showSelectButtonInPreview:!0,contextMenu:!0,howLongShowMsg:3e3,createNewFolder:!0,deleteFolder:!0,renameFolder:!0,moveFolder:!0,moveFile:!0,permissionsPresets:{allowFileDownload:void 0,allowFileMove:void 0,allowFileRemove:void 0,allowFileRename:void 0,allowFileUpload:void 0,allowFileUploadRemote:void 0,allowFiles:void 0,allowFolderCreate:void 0,allowFolderMove:void 0,allowFolderRemove:void 0,allowFolderRename:void 0,allowFolderTree:void 0,allowFolders:void 0,allowGeneratePdf:void 0,allowImageCrop:void 0,allowImageResize:void 0},showFoldersPanel:!0,storeLastOpenedFolder:!0,width:859,height:400,buttons:[`filebrowser.upload`,`filebrowser.remove`,`filebrowser.update`,`filebrowser.select`,`filebrowser.edit`,`|`,`filebrowser.tiles`,`filebrowser.list`,`|`,`filebrowser.filter`,`|`,`filebrowser.sort`],removeButtons:[],fullsize:!1,showTooltip:!0,view:null,isSuccess(e){return e.success},getMessage(e){return e.data.messages!==void 0&&Ao(e.data.messages)?e.data.messages.join(` `):``},showFileName:!0,showFileSize:!0,showFileChangeTime:!0,saveStateInStorage:{storeLastOpenedFolder:!0,storeView:!0,storeSortBy:!0},pixelOffsetLoadNewChunk:200,getThumbTemplate(e,t,n){let r=this.options,i=this.files.getFullElName(`item`),a=r.showFileName,o=r.showFileSize&&e.size,s=r.showFileChangeTime&&e.time,c=``;e.file!==void 0&&(c=e.file);let l=`<div class="${i}-info">${a?`<span class="${i}-info-filename">${c}</span>`:``}${o?`<span class="${i}-info-filesize">${e.size}</span>`:``}${s?`<span class="${i}-info-filechanged">${s}</span>`:``}</div>`;return`<a 423 data-jodit-file-browser-item="true" 424 data-is-file="${+!e.isImage}" 425 draggable="true" 426 class="${i}" 427 href="${e.fileURL}" 428 data-source="${n}" 429 data-path="${e.path}" 430 data-name="${c}" 431 title="${c}" 432 data-url="${e.fileURL}"> 433 <img 434 data-is-file="${+!e.isImage}" 435 data-src="${e.fileURL}" 436 src="${e.imageURL}" 437 alt="${c}" 438 loading="lazy" 439 /> 440 ${a||o||s?l:``} 441 </a>`},ajax:{...F.prototype.defaultAjaxOptions,url:``,data:{},cache:!0,contentType:`application/x-www-form-urlencoded; charset=UTF-8`,method:`POST`,processData:!0,headers:{},prepareData(e){return e},process(e){return e}},create:{data:{action:`folderCreate`}},getLocalFileByUrl:{data:{action:`getLocalFileByUrl`}},resize:{data:{action:`imageResize`}},crop:{data:{action:`imageCrop`}},fileMove:{data:{action:`fileMove`}},folderMove:{data:{action:`folderMove`}},fileRename:{data:{action:`fileRename`}},folderRename:{data:{action:`folderRename`}},fileRemove:{data:{action:`fileRemove`}},folderRemove:{data:{action:`folderRemove`}},items:{data:{action:`files`}},folder:{data:{action:`folders`}},permissions:{data:{action:`permissions`}}},F.prototype.controls.filebrowser={upload:{icon:`plus`,tooltip:`Upload file`,isInput:!0,isDisabled:e=>!e.dataProvider.canI(`FileUpload`),getContent:(e,t)=>
441{let n=new rd(e,{tooltip:t.control.tooltip,onlyImages:e.state.onlyImages});return e.e.fire(`bindUploader.filebrowser`,n.container),n.container}},remove:{icon:`bin`,tooltip:`Remove file`,isDisabled:e=>!e.state.activeElements.length||!e.dataProvider.canI(`FileRemove`),exec:e=>{e.e.fire(`fileRemove.filebrowser`)}},update:{tooltip:`Update file list`,exec:e=>{e.e.fire(`update.filebrowser`)}},select:{tooltip:`Select file`,icon:`check`,isDisabled:e=>!e.state.activeElements.length,exec:e=>{e.e.fire(`select.filebrowser`)}},edit:{tooltip:`Edit image`,icon:`pencil`,isDisabled:e=>{let t=e.state.activeElements;return t.length!==1||!t[0].isImage||!(e.dataProvider.canI(`ImageCrop`)||e.dataProvider.canI(`ImageResize`))},exec:e=>{e.e.fire(`edit.filebrowser`)}},tiles:{tooltip:`Tiles view`,icon:`th`,isActive:e=>e.state.view===`tiles`,exec:e=>{e.e.fire(`view.filebrowser`,`tiles`)}},list:{tooltip:`List view`,icon:`th-list`,isActive:e=>e.state.view===`list`,exec:e=>{e.e.fire(`view.filebrowser`,`list`)}},filter:{isInput:!0,getContent:(e,t)=>
441{let n=t.container.querySelector(`.jodit-input`);if(n)return n;let r=e.c.element(`input`,{class:`jodit-input`,placeholder:e.i18n(`Filter`)});return r.value=e.state.filterWord,e.e.on(r,`keydown mousedown`,e.async.debounce(()=>{e.e.fire(`filter.filebrowser`,r.value)},e.defaultTimeout)),r}},sort:{isInput:!0,getContent:e=>{let t=e.c.fromHTML(`<select class="jodit-input jodit-select"><option value="changed-asc">${e.i18n(`Sort by changed`)} (â¬)</option><option value="changed-desc">${e.i18n(`Sort by changed`)} (â¬)</option><option value="name-asc">${e.i18n(`Sort by name`)} (â¬)</option><option value="name-desc">${e.i18n(`Sort by name`)} (â¬)</option><option value="size-asc">${e.i18n(`Sort by size`)} (â¬)</option><option value="size-desc">${e.i18n(`Sort by size`)} (â¬)</option></select>`);return t.value=e.state.sortBy,e.e.on(`sort.filebrowser`,e=>{t.value!==e&&(t.value=e)}).on(t,`change`,()=>{e.e.fire(`sort.filebrowser`,t.value)}),t}}};function Qd(e){return e.files.setMod(`active`,!0),e.files.setMod(`loading`,!0),e.dataProvider.items(e.state.currentPath,e.state.currentSource,{sortBy:e.state.sortBy,onlyImages:e.state.onlyImages,filterWord:e.state.filterWord}).then(t=>{t&&(e.state.elements=t,e.state.activeElements=[])}).catch(e.status).finally(()=>e.files.setMod(`loading`,!1))}async function $d(e){e.tree.setMod(`active`,!0),P.detach(e.tree.container);let t=Qd(e);if(e.o.showFoldersPanel){e.tree.setMod(`loading`,!0);let n=e.dataProvider.tree(e.state.currentPath,e.state.currentSource).then(t=>{e.state.sources=t}).catch(e.status).finally(()=>e.tree.setMod(`loading`,!1));return Promise.all([n,t])}return e.tree.setMod(`active`,!1),t}var ef=new WeakMap,tf=e=>{let t=ef.get(e);return t||(t={},ef.set(e,t)),t},nf=(e,t,n=`a`)=>P.closest(e,e=>P.isTag(e,n),t),rf=(e,t)=>{let{key:n}=e.dataset,{item:r}=t[n||``];return r},af=class e{constructor(e){this.data=e,Object.keys(e).forEach(t=>{this[t]=e[t]})}static create(t){return t instanceof e?t:new e(t)}get path(){return Fl(this.data.source.path?this.data.source.path+`/`:`/`)}get imageURL(){let e=this.time||new Date().getTime().toString(),{thumbIsAbsolute:t,source:n,thumb:r,file:i}=this.data,a=r||i;return t&&a?a:Rl(n.baseurl,n.path,a||``)+`?_tmst=`+encodeURIComponent(e)}get fileURL(){let{name:e}=this.data,{file:t,fileIsAbsolute:n,source:r}=this.data;return t!==void 0&&(e=t),n&&e?e:Rl(r.baseurl,r.path,e||``)}get time(){let{changed:e}=this.data;return e&&(typeof e==`number`?new Date(e).toLocaleString():e)||``}get uniqueHashKey(){let e=this.data,t=[e.sourceName,e.name,e.file,this.time,e.thumb].join(`_`);return t=t.toLowerCase().replace(/[^0-9a-z\-.]/g,`-`),t}toJSON(){return this.data}},of=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sf=`default`,cf=class{constructor(e,t){this.parent=e,this.options=t,this.__currentPermissions=null,this.__ajaxInstances=new Map,this.progressHandler=e=>{}}get o(){return this.options}get(e){let t=this.__ajaxInstances;t.has(e)&&(t.get(e)?.abort(),t.delete(e));let n=tl(this.options[e]===void 0?{}:this.options[e],tl({onProgress:this.progressHandler},this.o.ajax));n.prepareData&&(n.data=n.prepareData.call(this,n.data));let r=new hu(n);t.set(e,r);let i=r.send();return i.finally(()=>{r.destruct(),t.delete(e),this.progressHandler(100)}).catch(()=>null),i.then(e=>e.json()).then(e=>{if(e&&!this.isSuccess(e))throw Error(this.getMessage(e));return e})}onProgress(e){this.progressHandler=e}async permissions(e,t){return this.o.permissions?(this.o.permissions.data.path=e,this.o.permissions.data.source=t,this.o.permissions.url?this.get(`permissions`).then(e=>{if(this.parent.isInDestruct)throw as();let t=this.o.permissions.process;if(t||=this.o.ajax.process,t){let n=t.call(self,e);n.data.permissions&&(this.parent.events.fire(this,`changePermissions`,this.__currentPermissions,n.data.permissions),this.__currentPermissions=n.data.permissions)}return this.__currentPermissions}):null):null}canI(e){let t=`allow`+e,n=this.o.permissionsPresets[t];return n===void 0?this.__currentPermissions==null||this.__currentPermissions[t]===void 0||this.__currentPermissions[t]:n}__items(e,t,n,r){let i=this.options;return i.items?(i.items.data.path=e,i.items.data.source=t,i.items.data.mods=n,this.get(`items`).then(e=>{let t=this.o.items.process;return t||=this.o.ajax.process,t&&(e=t.call(self,e)),r(e)})):Promise.reject(Error(`Set Items api options`))}items(e,t,n={}){return this.__items(e,t,n,e=>this.__generateItemsList(e.data.sources,n))}itemsEx(e,t,n={}){let r=e=>e.reduce((e,t)=>
441e+t.files.length,0);return this.__items(e,t,n,e=>({items:this.__generateItemsList(e.data.sources,n),loadedTotal:r(e.data.sources)}))}__generateItemsList(e,t={}){let n=[],r=e=>e.type===`folder`||!t.onlyImages||e.isImage===void 0||e.isImage,i=e=>!t.filterWord?.length||this.o.filter===void 0||this.o.filter(e,t.filterWord);return e.forEach(e=>{if(e.files&&e.files.length){let{sort:a}=this.o;k(a)&&t.sortBy&&e.files.sort((e,n)=>a(e,n,t.sortBy)),e.files.forEach(t=>{i(t)&&r(t)&&n.push(af.create({...t,sourceName:e.name,source:e}))})}}),n}async tree(e,t){return e=Il(e),this.o.folder?(await this.permissions(e,t),this.o.folder.data.path=e,this.o.folder.data.source=t,this.get(`folder`).then(e=>{let t=this.o.folder.process;return t||=this.o.ajax.process,t&&(e=t.call(self,e)),e.data.sources})):Promise.reject(Error(`Set Folder Api options`))}getPathByUrl(e){return gl(`options.getLocalFileByUrl.data.url`,e,this),this.get(`getLocalFileByUrl`).then(e=>{if(this.isSuccess(e))return e.data;throw cs(this.getMessage(e))})}createFolder(e,t,n){let{create:r}=this.o;if(!r)throw cs(`Set Create api options`);return r.data.source=n,r.data.path=t,r.data.name=e,this.get(`create`).then(e=>{if(this.isSuccess(e))return!0;throw cs(this.getMessage(e))})}move(e,t,n,r){let i=r?`fileMove`:`folderMove`,a=this.options[i];if(!a)throw cs(`Set Move api options`);return a.data.from=e,a.data.path=t,a.data.source=n,this.get(i).then(e=>{if(this.isSuccess(e))return!0;throw cs(this.getMessage(e))})}__remove(e,t,n,r){let i=this.o[e];if(!i)throw cs(`Set "${e}" api options`);return i.data.path=t,i.data.name=n,i.data.source=r,this.get(e).then(e=>(i.process&&(e=i.process.call(this,e)),this.getMessage(e)))}fileRemove(e,t,n){return this.__remove(`fileRemove`,e,t,n)}folderRemove(e,t,n){return this.__remove(`folderRemove`,e,t,n)}__rename(e,t,n,r,i){let a=this.o[e];if(!a)throw cs(`Set "${e}" api options`);return a.data.path=t,a.data.name=n,a.data.newname=r,a.data.source=i,this.get(e).then(e=>(a.process&&(e=a.process.call(self,e)),this.getMessage(e)))}folderRename(e,t,n,r){return this.__rename(`folderRename`,e,t,n,r)}fileRename(e,t,n,r){return this.__rename(`fileRename`,e,t,n,r)}__changeImage(e,t,n,r,i,a){this.o[e]||(this.o[e]={data:{}});let o=this.o[e];return o.data===void 0&&(o.data={action:e}),o.data.newname=i||r,a&&(o.data.box=a),o.data.path=t,o.data.name=r,o.data.source=n,this.get(e).then(e=>e.data.newPath||!0)}crop(e,t,n,r,i){return this.__changeImage(`crop`,e,t,n,r,i)}resize(e,t,n,r,i){return this.__changeImage(`resize`,e,t,n,r,i)}getMessage(e){return this.options.getMessage(e)}isSuccess(e){return this.options.isSuccess(e)}destruct(){this.__ajaxInstances.forEach(e=>e.destruct()),this.__ajaxInstances.clear()}};of([A],cf.prototype,`onProgress`,null),of([A],cf.prototype,`permissions`,null),of([A],cf.prototype,`canI`,null),of([A],cf.prototype,`items`,null),of([A],cf.prototype,`itemsEx`,null),of([A],cf.prototype,`tree`,null),of([A],cf.prototype,`getPathByUrl`,null),of([A],cf.prototype,`createFolder`,null),of([A],cf.prototype,`move`,null),of([A],cf.prototype,`fileRemove`,null),of([A],cf.prototype,`folderRemove`,null),of([A],cf.prototype,`folderRename`,null),of([A],cf.prototype,`fileRename`,null),of([A],cf.prototype,`crop`,null),of([A],cf.prototype,`resize`,null),of([A],cf.prototype,`getMessage`,null),of([A],cf.prototype,`isSuccess`,null),of([A],cf.prototype,`destruct`,null);function lf(e,t){return new cf(e,t)}function uf(e){return new Zd(e)}function df(e,t,n){return e.dataProvider.fileRemove(e.state.currentPath,t,n).then(n=>{e.status(n||e.i18n(`File "%s" was deleted`,t),!0)}).catch(e.status)}var ff=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M621 1280h595v-595zm-45-45l595-595h-595v595zm1152 77v192q0 14-9 23t-23 9h-224v224q0 14-9 23t-23 9h-192q-14 0-23-9t-9-23v-224h-864q-14 0-23-9t-9-23v-864h-224q-14 0-23-9t-9-23v-192q0-14 9-23t23-9h224v-224q0-14 9-23t23-9h192q14 0 23 9t9 23v224h851l246-247q10-9 23-9t23 9q9 10 9 23t-9 23l-247 246v851h224q14 0 23 9t9 23z"/> </svg> `,pf=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 24 24"> <g transform="translate(-251.000000, -443.000000)"> <g transform="translate(215.000000, 119.000000)"/> <path d="M252,448 L256,448 L256,444 L252,444 L252,448 Z M257,448 L269,448 L269,446 L257,446 L257,448 Z M257,464 L269,464 L269,462 L257,462 L257,464 Z M270,444 L270,448 L274,448 L274,444 L270,444 Z M252,462 L252,466 L256,466 L256,462 L252,462 Z M270,462 L270,466 L274,466 L274,462 L270,462 Z M254,461 L256,461 L256,449 L254,449 L254,461 Z M270,461 L272,461 L272,449 L270,449 L270,461 Z"/> </g> </svg> `;F.prototype.imageeditor={min_width:20,min_height:20,closeAfterSave:!1,width:`85%`,height:`85%`,crop:!0,resize:!0,resizeUseRatio:!0,resizeMinWidth:20,resizeMinHeight:20,cropUseRatio:!0,cropDefaultWidth:`70%`,cropDefaultHeight:`70%`},vu.set(`crop`,ff).set(`resize`,pf);var mf=`jodit-image-editor`,hf=vu.get.bind(vu),gf=(e,t=`jodti-image-editor_active`)=>e?t:``,_f=(e,t)=>{let n=e.i18n.bind(e),r=(e,t,r=!0)=>`<div class="jodit-form__group"> 442 <label class="jodit-switcher-wrapper"> 443 <span class='jodit-switcher'> 444 <input ${gf(r,`checked`)} data-ref="${t}" type="checkbox"/> 445 <span class="jodit-switcher__slider"></span> 446 </span> 447 <span>${n(e)}</span> 448 </label> 449 </div>`;return e.create.fromHTML(`<form class="${mf} jodit-properties"> 450 <div class="jodit-grid jodit-grid_xs-column"> 451 <div class="jodit_col-lg-3-4 jodit_col-sm-5-5"> 452 ${t.resize?`<div class="${mf}__area ${mf}__area_resize ${mf}_active"> 453 <div data-ref="resizeBox" class="${mf}__box"></div> 454 <div class="${mf}__resizer"> 455 <i class="jodit_bottomright"></i> 456 </div> 457 </div>`:``} 458 ${t.crop?`<div class="${mf}__area ${mf}__area_crop ${gf(!t.resize)}"> 459 <div data-ref="cropBox" class="${mf}__box"> 460 <div class="${mf}__croper"> 461 <i class="jodit_bottomright"></i> 462 <i class="${mf}__sizes"></i> 463 </div> 464 </div> 465 </div>`:``} 466 </div> 467 <div class="jodit_col-lg-1-4 jodit_col-sm-5-5"> 468 ${t.resize?`<div data-area="resize" class="${mf}__slider ${mf}_active"> 469 <div class="${mf}__slider-title"> 470 ${hf(`resize`)} 471 ${n(`Resize`)} 472 </div> 473 <div class="${mf}__slider-content"> 474 <div class="jodit-form__group"> 475 <label> 476 ${n(`Width`)} 477 </label> 478 <input type="number" data-ref="widthInput" class="jodit-input"/> 479 </div> 480 <div class="jodit-form__group"> 481 <label> 482 ${n(`Height`)} 483 </label> 484 <input type="number" data-ref="heightInput" class="jodit-input"/> 485 </div> 486 ${r(`Keep Aspect Ratio`,`keepAspectRatioResize`)} 487 </div> 488 </div>`:``} 489 ${t.crop?`<div data-area="crop" class="${mf}__slider ${gf(!t.resize)}'"> 490 <div class="${mf}__slider-title"> 491 ${hf(`crop`)} 492 ${n(`Crop`)} 493 </div> 494 <div class="${mf}__slider-content"> 495 ${r(`Keep Aspect Ratio`,`keepAspectRatioCrop`)} 496 </div> 497 </div>`:``} 498 </div> 499 </div> 500 </form>`)},vf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},yf,bf=`jodit-image-editor`,xf={resize:`resize`,crop:`crop`},Sf=yf=class extends eu{className(){return`ImageEditor`}get o(){return this.options}hide(){this._dialog.close()}open(e,t){return this.j.async.promise(n=>{let r=new Date().getTime();
500this.image=this.j.c.element(`img`),Pc(`img,.jodit-icon_loader`,this.resize_box).forEach(P.safeRemove),Pc(`img,.jodit-icon_loader`,this.crop_box).forEach(P.safeRemove),M(this.cropHandler,`background`,`transparent`),this.onSave=t,this.resize_box.appendChild(this.j.c.element(`i`,{class:`jodit-icon_loader`})),this.crop_box.appendChild(this.j.c.element(`i`,{class:`jodit-icon_loader`})),/\?/.test(e)?e+=`&_tst=`+r:e+=`?_tst=`+r,this.image.setAttribute(`src`,e),this._dialog.open();let{widthInput:i,heightInput:a}=Ic(this.editor),o=()=>{this.isDestructed||(this.image.removeEventListener(`load`,o),this.naturalWidth=this.image.naturalWidth,this.naturalHeight=this.image.naturalHeight,i.value=this.naturalWidth.toString(),a.value=this.naturalHeight.toString(),this.ratio=this.naturalWidth/this.naturalHeight,this.resize_box.appendChild(this.image),this.cropImage=this.image.cloneNode(!0),this.crop_box.appendChild(this.cropImage),P.safeRemove.apply(null,Pc(`.jodit-icon_loader`,this.editor)),this.activeTab===xf.crop&&this.showCrop(),this.j.e.fire(this.resizeHandler,`updatesize`),this.j.e.fire(this.cropHandler,`updatesize`),this._dialog.setPosition(),this.j.e.fire(`afterImageEditor`),n(this._dialog))};this.image.addEventListener(`load`,o),this.image.complete&&o()})}onTitleModeClick(e){let t=this,n=e.target?.parentElement;if(!n)return;Pc(`.${bf}__slider,.${bf}__area`,t.editor).forEach(e=>e.classList.remove(`${bf}_active`)),n.classList.add(`${bf}_active`),this.activeTab=N(n,`-area`)||xf.resize;let r=t.editor.querySelector(`.${bf}__area.${bf}__area_`+t.activeTab);r&&r.classList.add(`${bf}_active`),t.activeTab===xf.crop&&t.showCrop()}onChangeSizeInput(e){let t=this,n=e.target,{widthInput:r,heightInput:i}=Ic(this.editor),a=N(n,`data-ref`)===`widthInput`,o=parseInt(n.value,10),s=a?t.o.min_width:t.o.min_height,c=a?t.o.min_height:t.o.min_width,l;o>s&&(M(t.image,a?`width`:`height`,o),t.resizeUseRatio&&(l=Math.round(a?o/t.ratio:o*t.ratio),l>c&&(M(t.image,a?`height`:`width`,l),a?i.value=l.toString():r.value=l.toString()))),this.j.e.fire(t.resizeHandler,`updatesize`)}onResizeHandleMouseDown(e){let t=this;t.target=e.target,e.preventDefault(),e.stopImmediatePropagation(),t.clicked=!0,t.start_x=e.clientX,t.start_y=e.clientY,t.activeTab===xf.crop?(t.top_x=M(t.cropHandler,`left`),t.top_y=M(t.cropHandler,`top`),t.width=t.cropHandler.offsetWidth,t.height=t.cropHandler.offsetHeight):(t.width=t.image.offsetWidth,t.height=t.image.offsetHeight),t.j.e.on(this.j.ow,`mousemove`,this.onGlobalMouseMove).one(this.j.ow,`mouseup`,this.onGlobalMouseUp)}onGlobalMouseUp(e){this.clicked&&(this.clicked=!1,e.stopImmediatePropagation(),this.j.e.off(this.j.ow,`mousemove`,this.onGlobalMouseMove))}onGlobalMouseMove(e){let t=this;if(!t.clicked)return;let{widthInput:n,heightInput:r}=Ic(this.editor);t.diff_x=e.clientX-t.start_x,t.diff_y=e.clientY-t.start_y,t.activeTab===xf.resize&&t.resizeUseRatio||t.activeTab===xf.crop&&t.cropUseRatio?t.diff_x?(t.new_w=t.width+t.diff_x,t.new_h=Math.round(t.new_w/t.ratio)):(t.new_h=t.height+t.diff_y,t.new_w=Math.round(t.new_h*t.ratio)):(t.new_w=t.width+t.diff_x,t.new_h=t.height+t.diff_y),t.activeTab===xf.resize?(t.new_w>t.o.resizeMinWidth&&(M(t.image,`width`,t.new_w+`px`),n.value=t.new_w.toString()),t.new_h>t.o.resizeMinHeight&&(M(t.image,`height`,t.new_h+`px`),r.value=t.new_h.toString()),this.j.e.fire(t.resizeHandler,`updatesize`)):(t.target===t.cropHandler?(t.top_x+t.diff_x+t.cropHandler.offsetWidth>t.cropImage.offsetWidth&&(t.diff_x=t.cropImage.offsetWidth-t.top_x-t.cropHandler.offsetWidth),M(t.cropHandler,`left`,t.top_x+t.diff_x),t.top_y+t.diff_y+t.cropHandler.offsetHeight>t.cropImage.offsetHeight&&(t.diff_y=t.cropImage.offsetHeight-t.top_y-t.cropHandler.offsetHeight),M(t.cropHandler,`top`,t.top_y+t.diff_y)):(t.top_x+t.new_w>t.cropImage.offsetWidth&&(t.new_w=t.cropImage.offsetWidth-t.top_x),t.top_y+t.new_h>t.cropImage.offsetHeight&&(t.new_h=t.cropImage.offsetHeight-t.top_y),M(t.cropHandler,{width:t.new_w,height:t.new_h})),this.j.e.fire(t.cropHandler,`updatesize`))}constructor(e){super(e),this.resizeUseRatio=!0,this.cropUseRatio=!0,this.clicked=!1,this.start_x=0,this.start_y=0,this.top_x=0,this.top_y=0,this.width=0,this.height=0,this.activeTab=xf.resize,this.naturalWi
500dth=0,this.naturalHeight=0,this.ratio=0,this.new_h=0,this.new_w=0,this.diff_x=0,this.diff_y=0,this.cropBox={x:0,y:0,w:0,h:0},this.resizeBox={w:0,h:0},this.calcCropBox=()=>{let e=this.crop_box.parentNode,t=e.offsetWidth*.8,n=e.offsetHeight*.8,r=t,i=n,{naturalWidth:a,naturalHeight:o}=this;t>a&&n>o?(r=a,i=o):this.ratio>t/n?(r=t,i=t/a*o):(r=n/o*a,i=n),M(this.crop_box,{width:r,height:i})},this.showCrop=()=>{if(!this.cropImage)return;this.calcCropBox();let e=this.cropImage.offsetWidth||this.image.offsetWidth||this.image.naturalWidth;this.new_w=yf.calcValueByPercent(e,this.o.cropDefaultWidth);let t=this.cropImage.offsetHeight||this.image.offsetHeight||this.image.naturalHeight;this.new_h=this.cropUseRatio?this.new_w/this.ratio:yf.calcValueByPercent(t,this.o.cropDefaultHeight),M(this.cropHandler,{backgroundImage:`url(`+N(this.cropImage,`src`)+`)`,width:this.new_w,height:this.new_h,left:e/2-this.new_w/2,top:t/2-this.new_h/2}),this.j.e.fire(this.cropHandler,`updatesize`)},this.updateCropBox=()=>{if(!this.cropImage)return;let e=this.cropImage.offsetWidth/this.naturalWidth,t=this.cropImage.offsetHeight/this.naturalHeight;this.cropBox.x=M(this.cropHandler,`left`)/e,this.cropBox.y=M(this.cropHandler,`top`)/t,this.cropBox.w=this.cropHandler.offsetWidth/e,this.cropBox.h=this.cropHandler.offsetHeight/t,this.sizes.textContent=this.cropBox.w.toFixed(0)+`x`+this.cropBox.h.toFixed(0)},this.updateResizeBox=()=>{this.resizeBox.w=this.image.offsetWidth||this.naturalWidth,this.resizeBox.h=this.image.offsetHeight||this.naturalHeight},this.setHandlers=()=>{let e=this,{widthInput:t,heightInput:n}=Ic(this.editor);e.j.e.on([e.editor.querySelector(`.jodit_bottomright`),e.cropHandler],`mousedown.${bf}`,this.onResizeHandleMouseDown).on(this.j.ow,`resize.${bf}`,()=>{this.j.e.fire(e.resizeHandler,`updatesize`),e.showCrop(),this.j.e.fire(e.cropHandler,`updatesize`)}),e.j.e.on(Io(this.editor.querySelectorAll(`.${bf}__slider-title`)),`click`,this.onTitleModeClick).on([t,n],`input`,this.onChangeSizeInput);let{keepAspectRatioResize:r,keepAspectRatioCrop:i}=Ic(this.editor);r&&r.addEventListener(`change`,()=>{this.resizeUseRatio=r.checked}),i&&i.addEventListener(`change`,()=>{this.cropUseRatio=i.checked}),e.j.e.on(e.resizeHandler,`updatesize`,()=>{M(e.resizeHandler,{top:0,left:0,width:e.image.offsetWidth||e.naturalWidth,height:e.image.offsetHeight||e.naturalHeight}),this.updateResizeBox()}).on(e.cropHandler,`updatesize`,()=>{if(!e.cropImage)return;let t=M(e.cropHandler,`left`),n=M(e.cropHandler,`top`),r=e.cropHandler.offsetWidth,i=e.cropHandler.offsetHeight;t<0&&(t=0),n<0&&(n=0),t+r>e.cropImage.offsetWidth&&(r=e.cropImage.offsetWidth-t,e.cropUseRatio&&(i=r/e.ratio)),n+i>e.cropImage.offsetHeight&&(i=e.cropImage.offsetHeight-n,e.cropUseRatio&&(r=i*e.ratio)),M(e.cropHandler,{width:r,height:i,left:t,top:n,backgroundPosition:-t-1+`px `+(-n-1)+`px`,backgroundSize:e.cropImage.offsetWidth+`px `+e.cropImage.offsetHeight+`px`}),e.updateCropBox()}),Object.values(e.buttons).forEach(r=>{r.onAction(()=>{let i={action:e.activeTab,box:e.activeTab===xf.resize?e.resizeBox:e.cropBox};switch(r){case e.buttons.saveas:e.j.prompt(`Enter new name`,`Save in new file`,t=>{if(!zo(t))return e.j.alert(`The name should not be empty`),!1;e.j.e.fire(`afterImageEditorSave`,i,t),e.onSave(t,i,e.hide,t=>{e.j.alert(t.message)})});break;case e.buttons.save:e.j.e.fire(`afterImageEditorSave`,i),e.onSave(void 0,i,e.hide,t=>{e.j.alert(t.message)});break;case e.buttons.reset:e.activeTab===xf.resize?(M(e.image,{width:null,height:null}),t.value=e.naturalWidth.toString(),n.value=e.naturalHeight.toString(),e.j.e.fire(e.resizeHandler,`updatesize`)):e.showCrop()}})})},this.options=e&&e.o&&e.o.imageeditor?e.o.imageeditor:F.defaultOptions.imageeditor;let t=this.options;this.resizeUseRatio=t.resizeUseRatio,this.cropUseRatio=t.cropUseRatio,this.buttons={reset:Tu(this.j,`update`,`Reset`),save:Tu(this.j,`save`,`Save`),saveas:Tu(this.j,{icon:{name:`save`},name:`save-as`,text:`Save as ...`})},this.activeTab=t.resize?xf.resize:xf.crop,this.editor=_f(this.j,this.options);let{resizeBox:n,cropBox:r}=Ic(this.editor);this.resize_box=n,this.crop_box=r,this.sizes=this.editor.querySelector(`.${bf}__area.${bf}__area_crop .jodit-image-editor__sizes`),this.resizeHandler=this.editor.querySelector(`.${bf}__resizer`),this.cropHandler=this.editor.querySelector(`.${bf}__croper`),this._dialog=this.j.dlg({buttons:[`fullsize`,`dialog.close`]}),this._dialog.setContent(this.editor),this._dialog.setSize(this.o.width,this.o.height),this._dialog.setHeader([this.buttons.reset,this.buttons.save,this.buttons.saveas]),this.setHandlers()}destruct(){this.isDestructed||(this._dialog&&!this._dialog.isInDestruct&&this._dialog.destruct(),P.safeRemove(this.editor),this.j.e&&this.j.e.off(this.j.ow,`mousemove`,this.onGlobalMouseMove).off(this.j.ow,`mouseup`,this.onGlobalMouseUp).off(this.ow,`.${bf}`).off(`.${bf}`),super.destruct())}};Sf.calcValueByPercent=(e,t)=>
500{let n=t.toString(),r=parseFloat(e.toString()),i;return i=/^[-+]?[0-9]+(px)?$/.exec(n),i?parseInt(n,10):(i=/^([-+]?[0-9.]+)%$/.exec(n),i?Math.round(r*(parseFloat(i[1])/100)):r||0)},vf([A],Sf.prototype,`hide`,null),vf([A],Sf.prototype,`open`,null),vf([A],Sf.prototype,`onTitleModeClick`,null),vf([tu(),A],Sf.prototype,`onChangeSizeInput`,null),vf([A],Sf.prototype,`onResizeHandleMouseDown`,null),vf([A],Sf.prototype,`onGlobalMouseUp`,null),vf([nu(10)],Sf.prototype,`onGlobalMouseMove`,null),Sf=yf=vf([Ws],Sf);function Cf(e,t,n,r,i,a){return this.getInstance(`ImageEditor`,this.o).open(e,(e,o,s,c)=>{if(o.action===`saved`){s(),i&&i(o.newPath);return}fs(o.action===`resize`?this.dataProvider.resize:this.dataProvider.crop,n,r,t,e,o.box).then(e=>{e&&(s(),i&&i(typeof e==`string`?e:void 0))}).catch(e=>{c(e),a&&a(e)})})}var wf=`jodit-file-browser-preview`,Tf=(e=`next`,t=`right`)=>`<div class="${wf}__navigation ${wf}__navigation_arrow_${e}">`+vu.get(`angle-`+t)+`</a>`,Ef=e=>{if(!e.o.contextMenu)return()=>{};let t=uf(e);return n=>{let r=nf(n.target,e.container);if(!r)return;let i=r,a=e.options,o=e=>N(i,e)||``;return e.async.setTimeout(()=>{let s=rf(r,tf(e));s&&(e.state.activeElements=[s],t.show(n.clientX,n.clientY,[o(`data-is-file`)!==`1`&&a.editImage&&(e.dataProvider.canI(`ImageResize`)||e.dataProvider.canI(`ImageCrop`))?{icon:`pencil`,title:`Edit`,exec:()=>Cf.call(e,o(`href`),o(`data-name`),o(`data-path`),o(`data-source`))}:!1,e.dataProvider.canI(`FileRename`)?{icon:`italic`,title:`Rename`,exec:()=>{e.e.fire(`fileRename.filebrowser`,o(`data-name`),o(`data-path`),o(`data-source`))}}:!1,e.dataProvider.canI(`FileRemove`)?{icon:`bin`,title:`Delete`,exec:async()=>{try{await df(e,o(`data-name`),o(`data-source`))}catch(t){return e.status(t)}return e.state.activeElements=[],$d(e).catch(e.status)}}:!1,a.preview?{icon:`eye`,title:`Preview`,exec:()=>{let t=e.dlg({buttons:[`fullsize`,`dialog.close`]}),n=e.c.div(wf,`<div class="jodit-icon_loader"></div>`),r=e.c.div(`jodit-file-browser-preview__box`),s=e.c.fromHTML(Tf()),c=e.c.fromHTML(Tf(`prev`,`left`)),l=o=>{let l=e.c.element(`img`);l.setAttribute(`src`,o);let u=()=>{var o;e.isInDestruct||(e.e.off(l,`load`),P.detach(n),a.showPreviewNavigation&&(P.prevWithClass(i,e.files.getFullElName(`item`))&&n.appendChild(c),P.nextWithClass(i,e.files.getFullElName(`item`))&&n.appendChild(s)),n.appendChild(r),r.appendChild(l),t.setPosition(),(o=e?.events)==null||o.fire(`previewOpenedAndLoaded`))};e.e.on(l,`load`,u),l.complete&&u()};e.e.on([s,c],`click`,function(){if(i=this===s?P.nextWithClass(i,e.files.getFullElName(`item`)):P.prevWithClass(i,e.files.getFullElName(`item`)),!i)throw cs(`Need element`);P.detach(n),P.detach(r),n.innerHTML=`<div class="jodit-icon_loader"></div>`,l(o(`href`))}),e.e.on(`beforeDestruct`,()=>{t.destruct()}),t.container.classList.add(`jodit-file-browser-preview__dialog`),t.setContent(n),t.setPosition(),t.open(),l(o(`href`)),e.events.on(`beforeDestruct`,()=>{t.destruct()}).fire(`previewOpened`)}}:!1,{icon:`upload`,title:`Download`,exec:()=>
500{let t=o(`href`);t&&e.ow.open(t)}}]))},e.defaultTimeout),e.e.on(`beforeClose`,()=>{t.close()}).on(`beforeDestruct`,()=>t.destruct()),n.stopPropagation(),n.preventDefault(),!1}};function Df(){let e=!1,t=tf(this),n=this;n.e.on(n.tree.container,`dragstart`,t=>{let r=nf(t.target,n.container);r&&n.o.moveFolder&&(e=r)}).on(n.tree.container,`drop`,t=>{if((n.o.moveFile||n.o.moveFolder)&&e){let r=N(e,`-path`)||``;if(!n.o.moveFolder&&e.classList.contains(this.tree.getFullElName(`item`))||e.classList.contains(this.files.getFullElName(`item`))&&(r+=N(e,`-name`),!n.o.moveFile))return!1;let i=nf(t.target,n.container);if(!i)return;n.dataProvider.move(r,N(i,`-path`)||``,N(i,`-source`)||``,e.classList.contains(this.files.getFullElName(`item`))).then(()=>$d(this)).catch(n.status),e=!1}}).on(n.files.container,`contextmenu`,Ef(n)).on(n.files.container,`click`,e=>{sl(e)||(this.state.activeElements=[])}).on(n.files.container,`click`,e=>{let r=nf(e.target,n.container);if(!r)return;let i=rf(r,t);if(i)return sl(e)?n.state.activeElements=[...n.state.activeElements,i]:n.state.activeElements=[i],e.stopPropagation(),!1}).on(n.files.container,`dragstart`,t=>{if(n.o.moveFile){let r=nf(t.target,n.container);if(!r)return;e=r}}).on(n.container,`drop`,e=>e.preventDefault())}function Of(){let e=this.state,t=this.dataProvider,n=this;n.e.on(`view.filebrowser`,t=>{t!==e.view&&(e.view=t)}).on(`sort.filebrowser`,t=>{t!==e.sortBy&&(e.sortBy=t,Qd(n))}).on(`filter.filebrowser`,t=>{t!==e.filterWord&&(e.filterWord=t,Qd(n))}).on(`openFolder.filebrowser`,e=>{let t;t=e.name===`..`?e.path.split(`/`).filter(e=>e.length).slice(0,-1).join(`/`):Fl(e.path,e.name),n.state.currentPath=t,n.state.currentSource=e.name===`.`?sf:e.source}).on(`removeFolder.filebrowser`,e=>{n.confirm(`Are you sure?`,`Delete`,r=>{r&&t.folderRemove(e.path,e.name,e.source).then(e=>(n.status(e,!0),$d(n))).catch(n.status)})}).on(`renameFolder.filebrowser`,e=>{n.prompt(`Enter new name`,`Rename`,r=>{if(!Ls(r))return n.status(n.i18n(`Enter new name`)),!1;t.folderRename(e.path,e.name,r,e.source).then(e=>(n.state.activeElements=[],n.status(e,!0),$d(n))).catch(n.status)},`type name`,e.name)}).on(`addFolder.filebrowser`,e=>{n.prompt(`Enter Directory name`,`Create directory`,r=>{t.createFolder(r,e.path,e.source).then(()=>$d(n)).catch(n.status)},`type name`)}).on(`fileRemove.filebrowser`,()=>{n.state.activeElements.length&&n.confirm(`Are you sure?`,``,e=>{if(e){let e=[];n.state.activeElements.forEach(t=>{e.push(df(n,t.file||t.name||``,t.sourceName))}),n.state.activeElements=[],Promise.all(e).then(()=>$d(n).catch(n.status),n.status)}})}).on(`edit.filebrowser`,()=>{if(n.state.activeElements.length===1){let[e]=this.state.activeElements;Cf.call(n,e.fileURL,e.file||``,e.path,e.sourceName)}}).on(`fileRename.filebrowser`,(e,r,i)=>{n.state.activeElements.length===1&&n.prompt(`Enter new name`,`Rename`,a=>{if(!Ls(a))return n.status(n.i18n(`Enter new name`)),!1;t.fileRename(r,e,a,i).then(e=>{n.state.activeElements=[],n.status(e,!0),Qd(n)}).catch(n.status)},`type name`,e)}).on(`update.filebrowser`,()=>{$d(this).then(this.status,this.status)})}var kf=`default`;function Af(){let e=tf(this),{state:t,files:n,create:r,options:i}=this,a=t=>{let n=t.uniqueHashKey;if(e[n])return e[n].elm;let a=r.fromHTML(i.getThumbTemplate.call(this,t,t.source,t.sourceName.toString()));return a.dataset.key=n,e[n]={item:t,elm:a},e[n].elm};t.on([`change.currentPath`,`change.currentSource`],this.async.debounce(()=>{this.o.saveStateInStorage&&this.o.saveStateInStorage.storeLastOpenedFolder&&this.storage.set(`currentPath`,this.state.currentPath).set(`currentSource`,this.state.currentSource),$d(this).catch(this.status)},this.defaultTimeout)).on(`beforeChange.activeElements`,()=>{t.activeElements.forEach(t=>{let r=t.uniqueHashKey,{elm:i}=e[r];i&&i.classList.remove(n.getFullElName(`item`,`active`,!0))})}).on(`change.activeElements`,()=>{this.e.fire(`changeSelection`),t.activeElements.forEach(t=>{let r=t.uniqueHashKey,{elm:i}=e[r];i&&i.classList.add(n.getFullElName(`item`,`active`,!0))})}).on(`change.view`,()=>{n.setMod(`view`,t.view),this.o.saveStateInStorage&&this.o.saveStateInStorage.storeView&&this.storage.set(`view`,t.view)}).on(`change.sortBy`,()=>{this.o.saveStateInStorage&&this.o.saveStateInStorage.storeSortBy&&this.storage.set(`sortBy`,t.sortBy)}).on(`change.elements`,this.async.debounce(()=>
500{P.detach(n.container),t.elements.length?t.elements.forEach(e=>{this.files.container.appendChild(a(e))}):n.container.appendChild(r.div(this.componentName+`_no-files_true`,this.i18n(`There are no files`)))},this.defaultTimeout)).on(`change.sources`,this.async.debounce(()=>{P.detach(this.tree.container),t.sources.forEach(e=>{let t=e.name;if(t&&t!==kf&&this.tree.container.appendChild(r.div(this.tree.getFullElName(`source-title`),t)),e.folders.forEach(n=>{let a=r.a(this.tree.getFullElName(`item`),{draggable:`draggable`,href:`#`,"data-path":Fl(e.path,n+`/`),"data-name":n,"data-source":t,"data-source-path":e.path},r.span(this.tree.getFullElName(`item-title`),n)),o=r=>i=>{this.e.fire(`${r}.filebrowser`,{name:n,path:Fl(e.path+`/`),source:t}),i.stopPropagation(),i.preventDefault()};if(this.e.on(a,`click`,o(`openFolder`)),this.tree.container.appendChild(a),n!==`..`&&n!==`.`){if(i.renameFolder&&this.dataProvider.canI(`FolderRename`)){let e=Tu(this,{icon:{name:`pencil`},name:`rename`,tooltip:`Rename`,size:`tiny`});e.onAction(o(`renameFolder`)),a.appendChild(e.container)}if(i.deleteFolder&&this.dataProvider.canI(`FolderRemove`)){let e=Tu(this,{icon:{name:`cancel`},name:`remove`,tooltip:`Delete`,size:`tiny`});e.onAction(o(`removeFolder`)),a.appendChild(e.container)}}}),i.createNewFolder&&this.dataProvider.canI(`FolderCreate`)){let n=Tu(this,`plus`,`Add folder`,`secondary`);n.onAction(()=>{this.e.fire(`addFolder`,{path:Fl(e.path+`/`),source:t})}),this.tree.append(n)}})},this.defaultTimeout))}var jf=class extends Ou{className(){return`FileBrowserFiles`}},Mf=class extends Ou{className(){return`FileBrowserTree`}},Nf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Pf=class extends Vd{className(){return`FileBrowser`}get dataProvider(){return lf(this,this.options)}onSelect(e){return()=>{if(this.state.activeElements.length){let t=[],n=[];this.state.activeElements.forEach(e=>{let r=e.fileURL;r&&(t.push(r),n.push(e.isImage||!1))}),this.close();let r={baseurl:``,files:t,isImages:n};k(e)&&e(r),this.close()}return!1}}get _dialog(){let e=this.dlg({minWidth:Math.min(700,screen.width),minHeight:300,buttons:this.o.headerButtons??[`fullsize`,`dialog.close`]});return[`beforeClose`,`afterClose`,`beforeOpen`].forEach(t=>e.events.on(e,t,()=>this.e.fire(t))),e.setSize(this.o.width,this.o.height),e}get storage(){return Od.makeStorage(!!this.o.saveStateInStorage,this.componentName)}get isOpened(){return this._dialog.isOpened&&this.browser.style.display!==`none`}status(e,t){!e||Cs(e)||(j(e)||(e=e.message),!(!j(e)||!zo(e).length)&&this.message.message(e,t?`success`:`error`,this.o.howLongShowMsg))}open(e=this.o.defaultCallback,t=!1){return this.state.onlyImages=t,this.async.promise((t,n)=>{var r;if(!this.o.items||!this.o.items.url)throw cs(`Need set options.filebrowser.ajax.url`);let i=0;this.e.off(this.files.container,`dblclick`).on(this.files.container,`dblclick`,this.onSelect(e)).on(this.files.container,`touchstart`,()=>{let t=new Date().getTime();t-i<300&&this.onSelect(e)(),i=t}).off(`select.filebrowser`).on(`select.filebrowser`,this.onSelect(e));let a=this.c.div();(r=this.toolbar)==null||r.appendTo(a),this.__updateToolbarButtons(),this._dialog.open(this.browser,a),this.e.fire(`sort.filebrowser`,this.state.sortBy),$d(this).then(t,n).finally(()=>{var e;this.isInDestruct||(e=this===null||this===void 0?void 0:this.e)==null||e.fire(`fileBrowserReady.filebrowser`)})}).catch(e=>{Cs(e)})}__getButtons(){return(this.o.buttons??[]).filter(e=>{if(!j(e))return!0;switch(e){case`filebrowser.upload`:return this.dataProvider.canI(`FileUpload`);case`filebrowser.edit`:return this.dataProvider.canI(`ImageResize`)||this.dataProvider.canI(`ImageCrop`);case`filebrowser.remove`:return this.dataProvider.canI(`FileRemove`)}return!0})}initUploader(e){let t=this,n=e?.options?.uploader,r=tl(n||{},F.defaultOptions.uploader),i=()=>Qd(this);t.uploader=t.getInstance(`Uploader`,r),t.uploader.setPath(t.state.currentPath).setSource(t.state.currentSource).bind(t.browser,i,t.errorHandler),this.state.on([`change.currentPath`,`change.currentSource`],()=>{this.uploader.setPath(this.state.currentPath).setSource(this.state.currentSource)}),t.e.on(`bindUploader.filebrowser`,e=>{t.uploader.bind(e,i,t.errorHandler)})}constructor(e){super(e),this.browser=this.c.div(this.componentName),this.status_line=this.c.div(this.getFullElName(`status`)),this.tree=new Mf(this),this.files=new jf(this),this.state=du({currentPath:``,currentSource:sf,currentBaseUrl:``,activeElements:[],elements:[],sources:[],view:`tiles`,sortBy:`changed-desc`,filterWord:``,onlyImages:!1}),this.errorHandler=e=>{Cs(e)||(e instanceof Error?this.status(this.i18n(e.message)):this.status(this.dataProvider.getMessage(e)))},this.close=()=>{this._dialog.close()},this.__prevButtons=[],this.attachEvents(e);let t=this;t.options=tl(e||{},F.defaultOptions.filebrowser),t.browser.component=this,t.container=t.browser,t.o.showFoldersPanel&&t.browser.appendChild(t.tree.container),t.browser.appendChild(t.files.container),t.browser.appendChild(t.status_line),Of.call(t),Df.call(t),Af.call(t),[`getLocalFileByUrl`,`crop`,`resize`,`create`,`fileMove`,`folderMove`,`fileRename`,`folderRename`,`fileRemove`,`folderRemove`,`folder`,`items`,`permissions`].forEach(e
500=>{this.options[e]!=null&&(this.options[e]=tl(this.options[e],this.o.ajax))});let{storeView:n,storeSortBy:r,storeLastOpenedFolder:i}=this.o.saveStateInStorage||{storeLastOpenedFolder:!1,storeView:!1,storeSortBy:!1},a=n&&this.storage.get(`view`);a&&this.o.view==null?t.state.view=a===`list`?`list`:`tiles`:t.state.view=t.o.view===`list`?`list`:`tiles`,t.files.setMod(`view`,t.state.view);let o=r&&t.storage.get(`sortBy`);if(o){let e=o.split(`-`);t.state.sortBy=[`changed`,`name`,`size`].includes(e[0])?o:`changed-desc`}else t.state.sortBy=t.o.sortBy||`changed-desc`;if(i){let e=t.storage.get(`currentPath`),n=t.storage.get(`currentSource`);t.state.currentPath=e??``,t.state.currentSource=n??``}t.initUploader(t),t.setStatus(Oo.ready)}destruct(){var e;this.isInDestruct||((e=Rs(this,`_dialog`))==null||e.destruct(),super.destruct(),this.events&&this.e.off(`.filebrowser`),this.uploader&&this.uploader.destruct())}__updateToolbarButtons(){var e;let t=this.__getButtons();Ff(this.__prevButtons,t)||(this.__prevButtons=t,(e=this.toolbar)==null||e.build(t))}};Nf([zs],Pf.prototype,`dataProvider`,null),Nf([zs],Pf.prototype,`_dialog`,null),Nf([zs],Pf.prototype,`storage`,null),Nf([A],Pf.prototype,`status`,null),Nf([A],Pf.prototype,`open`,null),Nf([I(`dataProvider:changePermissions`)],Pf.prototype,`__updateToolbarButtons`,null),Pf=Nf([ru(Jd)],Pf);function Ff(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}var If=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Lf=class extends eu{className(){return`Plugin`}constructor(e){super(e),this.buttons=[],this.hasStyle=!1,this.__inited=!1,e.e.on(`afterPluginSystemInit`,this.__afterPluginSystemInit).on(`afterInit`,this.__afterInit).on(`beforeDestruct`,this.__beforeDestruct)}__afterPluginSystemInit(){let{j:e,buttons:t}=this;t&&Ms(e)&&t.forEach(t=>{e.registerButton(t)})}__afterInit(){this.__inited=!0,this.setStatus(Oo.ready),this.afterInit(this.jodit)}init(e){this.jodit.isReady&&(this.afterInit(this.jodit),this.__afterPluginSystemInit(),this.jodit.e.fire(`rebuildToolbar`))}__beforeDestruct(){var e;if(this.isInDestruct)return;let{j:t}=this;if(t.e.off(`afterPluginSystemInit`,this.__afterPluginSystemInit).off(`afterInit`,this.__afterInit).off(`beforeDestruct`,this.destruct),this.setStatus(Oo.beforeDestruct),!this.__inited)return super.destruct();Ms(t)&&((e=this.buttons)==null||e.forEach(e=>{t?.unregisterButton(e)})),this.beforeDestruct(this.j),super.destruct()}};Lf.requires=[],If([A],Lf.prototype,`__afterPluginSystemInit`,null),If([A],Lf.prototype,`__afterInit`,null),If([A],Lf.prototype,`__beforeDestruct`,null);var Rf=class{undo(){this.history.snapshot.restore(this.oldValue)}redo(){this.history.snapshot.restore(this.newValue)}constructor(e,t,n,r){this.oldValue=e,this.newValue=t,this.history=n,this.tick=r}},zf=class e extends eu{constructor(){super(...arguments),this.__isBlocked=!1,this.__levelOfTransaction=0}className(){return`Snapshot`}static equal(e,t){return e.html===t.html&&JSON.stringify(e.range)===JSON.stringify(t.range)}static countNodesBeforeInParent(e){if(!e.parentNode)return 0;let t=e.parentNode.childNodes,n=0,r=null;for(let i=0;i<t.length;i+=1){if(r&&!this.isIgnoredNode(t[i])&&!(P.isText(r)&&P.isText(t[i]))&&(n+=1),t[i]===e)return n;r=t[i]}return 0}static strokeOffset(e,t){for(;P.isText(e);)e=e.previousSibling,P.isText(e)&&e.nodeValue&&(t+=e.nodeValue.length);return t}calcHierarchyLadder(t){let n=[];if(!t||!t.parentNode||!P.isOrContains(this.j.editor,t))return[];for(;t&&t!==this.j.editor;)t&&!e.isIgnoredNode(t)&&n.push(e.countNodesBeforeInParent(t)),t=t.parentNode;return n.reverse()}getElementByLadder(e){let t=this.j.editor,n;for(n=0;t&&n<e.length;n+=1)t=t.childNodes[e[n]];return t}get isBlocked(){return this.__isBlocked}__block(e){this.__isBlocked=e}transaction(e){this.__block(!0),this.__levelOfTransaction+=1;try{e()}catch{}finally{--this.__levelOfTransaction,this.__levelOfTransaction===0&&this.__block(!1)}}make(){let t={html:``,range:{startContainer:[],startOffset:0,endContainer:[],endOffset:0}};t.html=this.__getCleanedEditorValue(this.j.editor);let n=this.j.s.sel;if(n&&n.rangeCount){let r=n.getRangeAt(0),i=this.calcHierarchyLadder(r.startContainer),a=this.calcHierarchyLadder(r.endContainer),o=e.strokeOffset(r.startContainer,r.startOffset),s=e.strokeOffset(r.endContainer,r.endOffset);!i.length&&r.startContainer!==this.j.editor&&(o=0),!a.length&&r.endContainer!==this.j.editor&&(s=0),t.range={startContainer:i,startOffset:o,endContainer:a,endOffset:s}}return t}restore(e){this.transaction(()=>{let t=this.storeScrollState();this.__getCleanedEditorValue(this.j.editor)!==e.html&&(this.j.value=e.html),this.restoreOnlySelection(e),this.restoreScrollState(t)})}storeScrollState(){return[this.j.ow.scrollY,this.j.editor.scrollTop]}restoreScrollState(e){let{j:t}=this,{ow:n}=t;n.scrollTo(n.scrollX,e[0]),t.editor.scrollTop=e[1]}restoreOnlySelection(e){try{if(e.range){let t=this.j.ed.createRange();t.setStart(this.getElementByLadder(e.range.startContainer),e.range.startOffset),t.setEnd(this.getElementByLadder(e.range.endContainer),e.range.endOffset),this.j.s.selectRange(t)}}catch{this.j.editor.lastChild&&this.j.s.setCursorAfter(this.j.editor.lastChild)}}destruct(){this.__block(!1),super.destruct()}static isIgnoredNode(e){return P.isText(e)&&!e.nodeValue||P.isTemporary(e)}__getCleanedEditorValue(e){let t=e.cloneNode(!0);return P.temporaryList(t).forEach(P.unwrap),t.innerHTML}},Bf=class{constructor(e){this.size=e,this.commands=[],this.stackPosition=-1}get length(){return this.commands.length}clearRedo(){this.commands.length=this.stackPosition+1}clear(){this.commands.length=0,this.stackPosition=-1}push(e){this.clearRedo(),this.commands.push(e),this.stackPosition+=1,this.commands.length>this.size&&(this.commands.shift(),--this.stackPosition)}replace(e){this.commands[this.stackPosition]=e}current(){return this.commands[this.stackPosition]}undo(){return this.canUndo()?(this.commands[this.stackPosition]&&this.commands[this.stackPosition].undo(),--this.stackPosition,!0):!1}redo(){return this.canRedo()?(this.stackPosition+=1,this.commands[this.stackPosition]&&this.commands[this.stackPosition].redo(),!0):!1}canUndo(){return this.stackPosition>=0}canRedo(){return this.stackPosition<this.commands.length-1}},Vf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a};F.prototype.history={enable:!0,maxHistoryLength:1/0,timeout:1e3};var Hf=class extends eu{className(){return`History`}redo(){this.__stack.redo()&&(this.startValue=this.snapshot.make(),this.fireChangeStack())}canRedo(){return this.__stack.canRedo()}undo(){this.__stack.undo()&&(this.startValue=this.snapshot.make(),this.fireChangeStack())}canUndo(){return this.__stack.canUndo()}clear(){this.startValue=this.snapshot.make(),this.__stack.clear(),this.fireChangeStack()}get length(){return this.__stack.length}get startValue(){return this.__startValue}set startValue(e){this.__startValue=e}constructor(e,t=new Bf(e.o.history.maxHistoryLength),n=new zf(e)){super(e),this.updateTick=0,this.__stack=t,this.snapshot=n,e.o.history.enable&&e.e.on(`afterAddPlace.history`,()=>{this.isInDestruct||(this.startValue=this.snapshot.make(),e.events.on(`internalChange internalUpdate`,()=>{this.startValue=this.snapshot.make()}).on(e.editor,[`changeSelection`,`selectionstart`,`selectionchange`,`mousedown`,`mouseup`,`keydown`,`keyup`].map(e=>e+`.history`).join(` `),()=>{this.startValue.html===this.j.getNativeEditorValue()&&(this.startValue=this.snapshot.make())}).on(this,`change.history`,this.onChange))})}__upTick(){this.updateTick+=1}onChange(){this.__processChanges()}__processChanges(){this.snapshot.isBlocked||!this.j.o.history.enable||this.updateStack()}updateStack(e=!1){let t=this.snapshot.make();if(!zf.equal(t,this.startValue)){let n=new Rf(this.startValue,t,this,this.updateTick);if(e){let e=this.__stack.current();e&&this.updateTick===e.tick&&this.__stack.replace(n)}else this.__stack.push(n);this.startValue=t,this.fireChangeStack()}}fireChangeStack(){var e;this.j&&!this.j.isInDestruct&&((e=this.j.events)==null||e.fire(`changeStack`))}destruct(){this.isInDestruct||(this.j.events&&this.j.e.off(`.history`),this.snapshot.destruct(),super.destruct())}};Vf([tu()],Hf.prototype,`onChange`,null);var Uf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Wf=class extends eu{className(){return`StatusBar`}hide(){this.container.classList.add(`jodit_hidden`)}show(){this.container.classList.remove(`jodit_hidden`)}get isShown(){return!this.container.classList.contains(`jodit_hidden`)}
500getHeight(){return this.container?.offsetHeight??0}findEmpty(e=!1){let t=this.getElms(e?`item-right`:`item`);for(let e=0;e<t.length;e+=1)if(!t[e].innerHTML.trim().length)return t[e]}append(e,t=!1){var n;let r=this.findEmpty(t)||this.j.c.div(this.getFullElName(`item`));t&&r.classList.add(this.getFullElName(`item-right`)),r.appendChild(e),(n=this.container)==null||n.appendChild(r),this.j.o.statusbar&&this.show(),this.j.e.fire(`resize`)}constructor(e,t){super(e),this.target=t,this.mods={},this.container=e.c.div(`jodit-status-bar`),t.appendChild(this.container),this.hide()}destruct(){this.isInDestruct||(this.setStatus(Oo.beforeDestruct),P.safeRemove(this.container),super.destruct())}};Wf=Uf([Ws,ru(_u,gu)],Wf);var Gf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Kf=new WeakMap,qf=class e extends eu{constructor(){super(...arguments),this.selected=new Set}className(){return`Table`}__recalculateStyles(){let t=Ac(this.j,e,`style`,!0),n=[];this.selected.forEach(e=>{let t=Lc(e);t&&n.push(t)}),t.innerHTML=n.length?n.join(`,`)+`{${this.jodit.options.table.selectionCellStyle}}`:``}addSelection(t){this.selected.add(t),this.__recalculateStyles();let n=P.closest(t,`table`,this.j.editor);if(n){let r=e.__selectedByTable.get(n)||new Set;r.add(t),e.__selectedByTable.set(n,r)}}removeSelection(t){this.selected.delete(t),this.__recalculateStyles();let n=P.closest(t,`table`,this.j.editor);if(n){let r=e.__selectedByTable.get(n);r&&(r.delete(t),r.size||e.__selectedByTable.delete(n))}}getAllSelectedCells(){return Io(this.selected)}static __getSelectedCellsByTable(t){let n=e.__selectedByTable.get(t);return n?Io(n):[]}destruct(){return this.selected.clear(),super.destruct()}static __getRowsCount(e){return e.rows.length}getRowsCount(t){return e.__getRowsCount(t)}static __getColumnsCount(t){return e.__formalMatrix(t).reduce((e,t)=>Math.max(e,t.length),0)}getColumnsCount(t){return e.__getColumnsCount(t)}static __formalMatrix(e,t){let n=[[]],r=Io(e.rows),i=(e,r)=>{n[r]===void 0&&(n[r]=[]);let i=e.colSpan,a=e.rowSpan,o,s,c=0;for(;n[r][c];)c+=1;for(s=0;s<a;s+=1)for(o=0;o<i;o+=1){if(n[r+s]===void 0&&(n[r+s]=[]),t&&t(e,r+s,c+o,i,a)===!1)return!1;n[r+s][c+o]=e}};for(let e=0;e<r.length;
500e+=1){let t=Io(r[e].cells);for(let r=0;r<t.length;r+=1)if(i(t[r],e)===!1)return n}return n}formalMatrix(t,n){return e.__formalMatrix(t,n)}static __formalCoordinate(t,n,r=!1){let i=0,a=0,o=1,s=1;return e.__formalMatrix(t,(e,t,c,l,u)=>{if(n===e)return i=t,a=c,o=l||1,s=u||1,r&&(a+=(l||1)-1,i+=(u||1)-1),!1}),[i,a,o,s]}formalCoordinate(t,n,r=!1){return e.__formalCoordinate(t,n,r)}static __appendRow(t,n,r,i){let a;if(n)a=n.cloneNode(!0),Pc(`td,th`,n).forEach(e=>{let t=N(e,`rowspan`);if(t&&parseInt(t,10)>1){let n=parseInt(t,10)-1;N(e,`rowspan`,n>1?n:null)}}),Pc(`td,th`,a).forEach(e=>{e.innerHTML=``});else{let n=e.__getColumnsCount(t);a=i.element(`tr`);for(let e=0;e<n;e+=1)a.appendChild(i.element(`td`))}r&&n&&n.nextSibling?n.parentNode&&n.parentNode.insertBefore(a,n.nextSibling):!r&&n?n.parentNode&&n.parentNode.insertBefore(a,n):(t.getElementsByTagName(`tbody`)?.[0]||t).appendChild(a)}appendRow(t,n,r){return e.__appendRow(t,n,r,this.j.createInside)}static __removeRow(t,n){let r=e.__formalMatrix(t),i,a=t.rows[n];r[n].forEach((e,o)=>{if(i=!1,n-1>=0&&r[n-1][o]===e)i=!0;else if(r[n+1]&&r[n+1][o]===e){if(e.parentNode===a&&e.parentNode.nextSibling){i=!0;let a=o+1;for(;r[n+1][a]===e;)a+=1;let s=P.next(e.parentNode,e=>P.isTag(e,`tr`),t);if(s){let t=null;for(let e=a;e<r[n+1].length;e+=1){let i=r[n+1][e];if(i&&i.parentNode===s){t=i;break}}t?s.insertBefore(e,t):s.appendChild(e)}}}else P.safeRemove(e);
500if(i&&(e.parentNode===a||e!==r[n][o-1])){let t=e.rowSpan;N(e,`rowspan`,t-1>1?t-1:null)}}),P.safeRemove(a)}removeRow(t,n){return e.__removeRow(t,n)}appendColumn(t,n,r=!0){let i=e.__formalMatrix(t);if(!r&&P.isCell(n.previousElementSibling))return this.appendColumn(t,n.previousElementSibling,!0);let[,a]=e.__formalCoordinate(t,n,r),o=a,s=r?o+1:o;for(let e=0;e<i.length;){let t=i[e];if(t[o]!==t[s]||o===s){let e=this.j.createInside.element(`td`);r?P.after(t[o],e):P.before(t[o],e),t[o].rowSpan>1&&(e.rowSpan=t[o].rowSpan)}else t[o].colSpan+=1;e+=t[o].rowSpan||1}}static __removeColumn(t,n){let r=e.__formalMatrix(t),i;r.forEach((e,t)=>{let a=e[n];if(i=!1,n-1>=0&&r[t][n-1]===a||n+1<e.length&&r[t][n+1]===a?i=!0:P.safeRemove(a),i&&(t-1<0||a!==r[t-1][n])){let e=a.colSpan;N(a,`colspan`,e-1>1?(e-1).toString():null)}})}removeColumn(t,n){return e.__removeColumn(t,n)}static __getSelectedBound(t,n){let r=[[1/0,1/0],[0,0]],i=e.__formalMatrix(t),a,o,s;for(a=0;a<i.length;a+=1)for(o=0;i[a]&&o<i[a].length;o+=1)n.includes(i[a][o])&&(r[0][0]=Math.min(a,r[0][0]),r[0][1]=Math.min(o,r[0][1]),r[1][0]=Math.max(a,r[1][0]),r[1][1]=Math.max(o,r[1][1]));for(a=r[0][0];a<=r[1][0];a+=1)for(s=1,o=r[0][1];o<=r[1][1];o+=1){for(;i[a]&&i[a][o-s]&&i[a][o]===i[a][o-s];)r[0][1]=Math.min(o-s,r[0][1]),r[1][1]=Math.max(o-s,r[1][1]),s+=1;for(s=1;i[a]&&i[a][o+s]&&i[a][o]===i[a][o+s];)r[0][1]=Math.min(o+s,r[0][1]),r[1][1]=Math.max(o+s,r[1][1]),s+=1;for(s=1;i[a-s]&&i[a][o]===i[a-s][o];)r[0][0]=Math.min(a-s,r[0][0]),r[1][0]=Math.max(a-s,r[1][0]),s+=1;for(s=1;i[a+s]&&i[a][o]===i[a+s][o];)r[0][0]=Math.min(a+s,r[0][0]),r[1][0]=Math.max(a+s,r[1][0]),s+=1}return r}getSelectedBound(t,n){return e.__getSelectedBound(t,n)}static __normalizeTable(t){let n=[],r=e.__formalMatrix(t);e.__removeExtraColspans(r,n),e.__removeExtraRowspans(r,n);for(let e=0;e<r.length;e+=1)for(let t=0;t<r[e].length;t+=1)r[e][t]!==void 0&&(r[e][t].hasAttribute(`rowspan`)&&r[e][t].rowSpan===1&&N(r[e][t],`rowspan`,null),r[e][t].hasAttribute(`colspan`)&&r[e][t].colSpan===1&&N(r[e][t],`colspan`,null),r[e][t].hasAttribute(`class`)&&!N(r[e][t],`class`)&&N(r[e][t],`class`,null));e.__unmark(n)}static __removeExtraColspans(t,n){for(let r=0;r<t[0].length;r+=1){let i=1e6,a=!1;for(let e=0;e<t.length;e+=1)if(t[e][r]!==void 0){if(t[e][r].colSpan<2){a=!0;break}i=Math.min(i,t[e][r].colSpan)}if(!a)for(let a=0;a<t.length;a+=1)t[a][r]!==void 0&&e.__mark(t[a][r],`colspan`,t[a][r].colSpan-i+1,n)}}static __removeExtraRowspans(t,n){let r=0,i=0;for(r=0;r<t.length;r+=1){let a=1e6,o=!1;for(i=0;i<t[r].length;i+=1)if(t[r][i]!==void 0){if(t[r][i].rowSpan<2){o=!0;break}a=Math.min(a,t[r][i].rowSpan)}if(!o)for(i=0;i<t[r].length;i+=1)t[r][i]!==void 0&&e.__mark(t[r][i],`rowspan`,t[r][i].rowSpan-a+1,n)}}normalizeTable(t){return e.__normalizeTable(t)}static __mergeSelected(t,n){let r=[],i=e.__getSelectedBound(t,e.__getSelectedCellsByTable(t)),a=0,o=null,s=0,c,l=0,u=0,d=new Set,f=[];i&&(i[0][0]-i[1][0]||i[0][1]-i[1][1])&&(e.__formalMatrix(t,(t,p,m,h,g)=>{if(p>=i[0][0]&&p<=i[1][0]&&m>=i[0][1]&&m<=i[1][1]){if(c=t,d.has(c))return;d.add(c),p===i[0][0]&&c.style.width&&(a+=c.offsetWidth),zo(t.innerHTML.replace(/<br(\/)?>/g,``))!==``&&r.push(t.innerHTML),h>1&&(l+=h-1),g>1&&(u+=g-1),o?(e.__mark(c,`remove`,1,f),Jf(n).removeSelection(c)):(o=t,s=m)}}),l=i[1][1]-i[0][1]+1,u=i[1][0]-i[0][0]+1,o&&(l>1&&e.__mark(o,`colspan`,l,f),u>1&&e.__mark(o,`rowspan`,u,f),a&&(e.__mark(o,`width`,(a/t.offsetWidth*100).toFixed(10)+`%`,f),s&&e.__setColumnWidthByDelta(t,s,0,!0,f)),o.innerHTML=r.join(`<br/>`),Jf(n).addSelection(o),d.delete(o),e.__unmark(f),e.__normalizeTable(t),Io(t.rows).forEach(e=>{e.cells.length||P.safeRemove(e)})))}mergeSelected(t){return e.__mergeSelected(t,this.j)}static __splitHorizontal(t,n){let r,i,a,o,s,c=[];e.__getSelectedCellsByTable(t).forEach(l=>{i=n.createInside.element(`td`),i.appendChild(n.createInside.element(`br`)),a=n.createInside.element(`tr`),r=e.__formalCoordinate(t,l),l.rowSpan<2?(e.__formalMatrix(t,(t,n,i)=>{r[0]===n&&r[1]!==i&&t!==l&&e.__mark(t,`rowspan`,t.rowSpan+1,c)}),P.after(P.closest(l,`tr`,t),a),a.appendChild(i)):(e.__mark(l,`rowspan`,l.rowSpan-1,c),e.__formalMatrix(t,(e,n,i)=>{n>r[0]&&n<r[0]+l.rowSpan&&r[1]>i&&e.parentNode.rowIndex===n&&(s=e),r[0]<n&&e===l&&(o=t.rows[n])}),s?P.after(s,i):o.insertBefore(i,o.firstChild)),l.colSpan>1&&e.__mark(i,`colspan`,l.colSpan,c),e.__unmark(c),Jf(n).removeSelection(l)}),this.__normalizeTable(t)}splitHorizontal(t){return e.__splitHorizontal(t,this.j)}static __splitVertical(t,n){let r,i,a,o=[];e.__getSelectedCellsByTable(t).forEach(s=>{r=e.__formalCoordinate(t,s),s.colSpan<2?e.__formalMatrix(t,(t,n,i)=>{r[1]===i&&r[0]!==n&&t!==s&&e.__mark(t,`colspan`,t.colSpan+1,o)}):e.__mark(s,`colspan`,s.colSpan-1,o),i=n.createInside.element(`td`),i.appendChild(n.createInside.element(`br`)),s.rowSpan>1&&e.__mark(i,`rowspan`,s.rowSpan,o);let c=s.offsetWidth;P.after(s,i),a=c/t.offsetWidth/2,e.__mark(s,`width`,(a*100).toFixed(10)+`%`,o),e.__mark(i,`width`,(a*100).toFixed(10)+`%`,o),e.__unmark(o),Jf(n).removeSelection(s)}),e.__normalizeTable(t)}splitVertical(t){return e.__splitVertical(t,this.j)}static __setColumnWidthByDelta(t,n,r,i,a){let o=e.__formalMatrix(t),s=0;for(let i=0;i<o.length;i+=1){let c=o[i][n];if(c.colSpan>1&&o.length>1)continue;let l=(c.offsetWidth+r)/t.offsetWidth*100;e.__mark(c,`width`,l.toFixed(10)+`%`,a),s=i;break}for(let t=s+1;t<o.length;t+=1){let r=o[t][n];e.__mark(r,`width`,null,a)}i||e.__unmark(a)}setColumnWidthByDelta(t,n,r,i,a){return e.__setColumnWidthByDelta(t,n,r,i,a)}static __mark(e,t,n,r){r.push(e);let i=Kf.get(e)??{};i[t]=n===void 0?1:n,Kf.set(e,i)}
500static __unmark(e){e.forEach(e=>{let t=Kf.get(e);t&&(Object.keys(t).forEach(n=>{let r=t[n];switch(n){case`remove`:P.safeRemove(e);break;case`rowspan`:N(e,`rowspan`,Fs(r)&&r>1?r:null);break;case`colspan`:N(e,`colspan`,Fs(r)&&r>1?r:null);break;case`width`:r==null?(e.style.removeProperty(`width`),N(e,`style`)||N(e,`style`,null)):e.style.width=r.toString()}delete t[n]}),Kf.delete(e))})}};qf.__selectedByTable=new WeakMap,Gf([tu()],qf.prototype,`__recalculateStyles`,null);var Jf=e=>e.getInstance(`Table`,e.o),Yf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Xf=class extends wu{className(){return`ToolbarButton`}getRole(){return`listitem`}updateAriaLabel(){if(super.updateAriaLabel(),this.trigger){let e=this.state.tooltip?this.jodit.i18n(this.state.tooltip):null;N(this.trigger,`aria-label`,e)}}get toolbar(){let e=Gs(`ToolbarCollection`);return this.closest(e)}update(){var e;let{control:t,state:n}=this,r=this.toolbar;if(!r)return;let i=t.value?.call(t,r.jodit,this);i!==void 0&&(n.value=i),n.disabled=this.__calculateDisabledStatus(r),n.activated=this.__calculateActivatedStatus(r),(e=t.update)==null||e.call(t,r.jodit,this)}__calculateActivatedStatus(e){var t;return Ms(this.j)&&!this.j.editorIsActive?!1:(t=this.control).isActive?.call(t,this.j,this)?!0:!!(e&&e.shouldBeActive(this))}__calculateDisabledStatus(e){var t;return this.j.o.disabled||this.j.o.readonly&&(!this.j.o.activeButtonsInReadOnly||!this.j.o.activeButtonsInReadOnly.includes(this.control.name))||(t=this.control).isDisabled?.call(t,this.j,this)?!0:!!(e&&e.shouldBeDisabled(this))}onChangeActivated(){N(this.button,`aria-pressed`,this.state.activated),super.onChangeActivated()}onChangeText(){k(this.control.template)?this.text.innerHTML=this.control.template(this.j,this.control.name,this.j.i18n(this.state.text)):super.onChangeText(),this.setMod(`text-icons`,!!this.text.innerText.trim().length)}onChangeTabIndex(){N(this.button,`tabindex`,this.state.tabIndex)}createContainer(){let e=this.componentName,t=this.j.c.span(e),n=super.createContainer();n.classList.remove(e),n.classList.add(e+`__button`),Object.defineProperty(n,"component",{value:this,configurable:!0}),t.appendChild(n);let r=this.j.c.fromHTML(`<span role="button" aria-haspopup="true" aria-expanded="false" class="${e}__trigger">${vu.get(`chevron`)}</span>`);return n.appendChild(r),t}focus(){var e;(e=this.container.querySelector(`button`))==null||e.focus()}onChangeHasTrigger(){this.state.hasTrigger?this.container.appendChild(this.trigger):P.safeRemove(this.trigger),this.setMod(`with-trigger`,this.state.hasTrigger||null)}onChangeDisabled(){let e=this.state.disabled?`disabled`:null;N(this.trigger,`disabled`,e),N(this.button,`disabled`,e),N(this.container,`disabled`,e)}constructor(e,t,n=null){super(e),this.control=t,this.target=n,this.state={...Cu(),theme:`toolbar`,currentValue:``,hasTrigger:!1},this.openedPopup=null;let r=this.getElm(`button`);Uo(r,`Element button should exists`),this.button=r,Object.defineProperty(r,"component",{value:this,configurable:!0});let i=this.getElm(`trigger`);Uo(i,`Element trigger should exists`),this.trigger=i,i.remove(),e.e.on([this.button,this.trigger],`mousedown`,e=>e.preventDefault()),this.onAction(this.onClick),this.hookStatus(Oo.ready,()=>{this.__initFromControl(),this.update()}),t.mods&&Object.keys(t.mods).forEach(e=>{t.mods&&this.setMod(e,t.mods[e])})}__initFromControl(){let{control:e,state:t}=this;this.updateSize(),t.name=e.name,this.__initIconFromControl(),e.tooltip&&(t.tooltip=k(e.tooltip)?e.tooltip(this.j,e,this):e.tooltip),t.hasTrigger=!!(e.list||e.popup&&e.exec)}__initIconFromControl(){let{control:e,state:t}=this,{textIcons:n}=this.j.o;if(n===!0||k(n)&&n(e.name)||e.template){t.icon=Cu().icon,t.text=e.text||e.name;return}if(!j(e.icon)&&e.icon!=null){t.icon={name:e.icon.name||e.name,iconURL:e.icon.iconURL||``,fill:e.icon.fill||``,scale:e.icon.scale};return}if(e.iconURL)t.icon.iconURL=e.iconURL;else{let n=e.icon||e.name;t.icon.name=vu.exists(n)||this.j.o.extraIcons?.[n]?n:``}!e.iconURL&&!t.icon.name&&(t.text=e.text||e.name)}onTriggerClick(e){if(this.openedPopup){this.__closePopup();return}let{control:t}=this;if(N(this.trigger,`aria-expanded`,!0),e.buffer={actionTrigger:this},t.list)return this.__openControlList(t);if(k(t.popup)){let e=this.openPopup();e.parentElement=this;try{if(this.j.e.fire(es(`before-${t.name}-open-popup`),this.target,t,e)!==!1){let n=this.toolbar?.getTarget(this)??this.target??null,r=t.popup(this.j,n,this.__closePopup,this);r?e.setContent(j(r)?this.j.c.fromHTML(r):r).open(()=>Kl(this.container),!1,this.j.o.allowTabNavigation?this.container:void 0):this.__closePopup()}}catch(e){throw this.__closePopup(),e}
500this.j.e.fire(es(`after-${t.name}-open-popup`),e.container)}}__openControlList(e){let t=this.jodit.options.controls??{},n=e=>dd(e,t),r=e.list,i=this.openPopup(),a=Ld(this.j);i.parentElement=this,a.parentElement=i,a.mode=`vertical`;let o=e=>Go(e)&&`title`in e&&`value`in e,s=(t,r)=>{if(j(r)&&n(r))return{name:r.toString(),...n(r)};if(j(t)&&n(t))return{name:t.toString(),...n(t),...typeof r==`object`?r:{}};o(t)&&(r=t.value,t=t.title);let{childTemplate:i}=e,a={name:t.toString(),template:i&&((e,t,n)=>i(e,t,n,this)),exec:e.childExec?(t,n,r)=>e.childExec?.call(e,t,n,{...r,parentControl:e}):e.exec,data:e.data,command:e.command,isActive:e.isChildActive,value:e.value,isDisabled:e.isChildDisabled,mode:e.mode,args:[...e.args?e.args:[],t,r]};return j(r)&&(a.text=r),a};a.build(Ao(r)?r.map(s):_s(r,!1).map(e=>s(e,r[e])),this.target),i.setContent(a).open(()=>Kl(this.container),!1,this.j.o.allowTabNavigation?this.container:void 0),this.state.activated=!0}onOutsideClick(e){this.openedPopup&&(!e||!P.isNode(e.target)||!P.isOrContains(this.container,e.target)&&!this.openedPopup.isOwnClick(e))&&this.__closePopup()}openPopup(){return this.__closePopup(),this.openedPopup=new _d(this.j,!1),this.j.e.on(this.ow,`mousedown touchstart`,this.onOutsideClick).on(`escape closeAllPopups`,this.onOutsideClick),this.openedPopup}__closePopup(){this.openedPopup&&(this.j.e.off(this.ow,`mousedown touchstart`,this.onOutsideClick).off(`escape closeAllPopups`,this.onOutsideClick),this.state.activated=!1,this.openedPopup.close(),this.openedPopup.destruct(),this.openedPopup=null,this.trigger&&N(this.trigger,`aria-expanded`,!1))}onClick(e){var t,n;let{control:r}=this;if(k(r.exec)){let i=this.toolbar?.getTarget(this)??this.target??null,a=r.exec(this.j,i,{control:r,originalEvent:e,button:this});if(a!==!1&&a!==!0&&((t=this.j?.e)==null||t.fire(`synchro`),this.parentElement&&this.parentElement.update(),(n=this.j?.e)==null||n.fire(`closeAllPopups afterExec`)),a!==!1)return}if(r.list)return this.__openControlList(r);if(k(r.popup))return this.onTriggerClick(e);(r.command||r.name)&&(fs(Ms(this.j)?this.j.execCommand.bind(this.j):this.j.od.execCommand.bind(this.j.od),r.command||r.name,!1,r.args&&r.args[0]),this.j.e.fire(`closeAllPopups`))}destruct(){return this.__closePopup(),super.destruct()}};Yf([Bs],Xf.prototype,`createContainer`,null),Yf([I(`state.hasTrigger`,{immediately:!1})],Xf.prototype,`onChangeHasTrigger`,null),Yf([I(`trigger:click`)],Xf.prototype,`onTriggerClick`,null),Yf([A],Xf.prototype,`onOutsideClick`,null),Yf([A],Xf.prototype,`__closePopup`,null),Xf=Yf([Ws],Xf);var Zf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},L=class extends wu{className(){return`ToolbarContent`}update(){var e;let{control:t}=this,n=t.getContent(this.j,this);(j(n)||n.parentNode!==this.container)&&(P.detach(this.container),this.container.appendChild(j(n)?this.j.create.fromHTML(n):n)),this.state.disabled=!!t.isDisabled?.call(t,this.j,this),this.state.activated=!!t.isActive?.call(t,this.j,this),(e=t.update)==null||e.call(t,this.j,this),this.onChangeDisabled(),this.onChangeActivated(),super.update()}onChangeDisabled(){super.onChangeDisabled(),this.container.querySelectorAll(`input,button,select,textarea`).forEach(e=>N(e,`disabled`,this.state.disabled||null))}createContainer(){return this.j.c.span(this.componentName)}constructor(e,t,n=null){super(e),this.control=t,this.target=n,this.container.classList.add(`${this.componentName}_${this.clearName(t.name)}`),N(this.container,`role`,`content`)}};L=Zf([Ws],L);var Qf=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},$f=class extends Xf{className(){return`ToolbarSelect`}update(){var e;
500super.update(),this.state.icon.name=``;let{list:t,data:n}=this.control;if(t){let r=this.state.value||(n&&j(n.currentValue)?n.currentValue:void 0);r||=Object.keys(t)[0];let i=(Go(t)&&t[r.toString()]||r).toString();this.state.text=(e=this.control).textTemplate?.call(e,this.jodit,i)??i}}};$f=Qf([Ws],$f);var ep=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},tp=class extends md{className(){return`ToolbarCollection`}getRole(){return`toolbar`}get firstButton(){let[e]=this.buttons;return e||null}makeButton(e,t=null){return Rd(this.j,e,t)}makeSelect(e,t=null){return zd(this.j,e,t)}shouldBeActive(e){}shouldBeDisabled(e){}getTarget(e){return e.target||null}__immediateUpdate(){this.isDestructed||this.j.isLocked||(super.update(),this.j.e.fire(`afterUpdateToolbar`,this))}update(){this.__immediateUpdate()}setDirection(e){this.container.style.direction=e,this.container.setAttribute(`dir`,e)}constructor(e){super(e),this.__listenEvents=`updatePlugins updateToolbar changeStack mousedown mouseup keydown change readonly afterResize selectionchange changeSelection focus afterSetMode touchstart focus blur`}__initEvents(){this.j.e.on(this.__listenEvents,this.update).on(`afterSetMode focus`,this.__immediateUpdate)}hide(){this.container.remove()}show(){this.appendTo(this.j.toolbarContainer)}showInline(e){throw cs(`The method is not implemented for this class.`)}build(e,t=null){let n=this.j.e.fire(`beforeToolbarBuild`,e);return n&&(e=n),super.build(e,t),this}destruct(){this.isDestructed||(this.j.e.off(this.__listenEvents,this.update).off(`afterSetMode focus`,this.__immediateUpdate),super.destruct())}};ep([I(`:afterInit`),A],tp.prototype,`__immediateUpdate`,null),ep([tu(e=>e.j.defaultTimeout,!0)],tp.prototype,`update`,null),ep([iu(`ready`)],tp.prototype,`__initEvents`,null),tp=ep([Ws],tp);var np=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},rp=class extends tp{className(){return`ToolbarEditorCollection`}shouldBeDisabled(e){let t=super.shouldBeDisabled(e);if(t!==void 0)return t;let n=e.control.mode===void 0?1:e.control.mode;return n!==3&&n!==this.j.getRealMode()}shouldBeActive(e){let t=super.shouldBeActive(e);if(t!==void 0)return t;let n=this.j.selection?this.j.s.current():null;if(!n)return!1;let r;if(e.control.tags){let t=e.control.tags;if(r=n,P.up(r,e=>{if(e&&t.indexOf(e.nodeName.toLowerCase())!==-1)return!0},this.j.editor))return!0}if(e.control.css){let t=e.control.css;if(r=n,P.up(r,e=>{if(e&&!P.isText(e)&&!P.isComment(e))return this.checkActiveStatus(t,e)},this.j.editor))return!0}return!1}getTarget(e){return e.target||this.j.s.current()||null}constructor(e){super(e),this.checkActiveStatus=(e,t)=>{let n=0,r=0;return Object.keys(e).forEach(i=>{let a=e[i];k(a)?a(this.j,M(t,i).toString())&&(n+=1):a.indexOf(M(t,i).toString())!==-1&&(n+=1),r+=1}),r===n},this.prependInvisibleInput(this.container)}prependInvisibleInput(e){let t=this.j.create.element(`input`,{name:`jodit-toolbar-focus-helper_`+this.j.id,tabIndex:-1,disabled:!0,style:`width: 0; height:0; position: absolute; visibility: hidden;`});P.appendChildFirst(e,t)}showInline(e){this.jodit.e.fire(`showInlineToolbar`,e)}hide(){this.jodit.e.fire(`hidePopup`),super.hide(),this.jodit.e.fire(`toggleToolbar`)}show(){super.show(),this.jodit.e.fire(`toggleToolbar`)}};rp=np([Ws],rp);function ip(e,t){if(k(e.o.buildData))return e.o.buildData.call(e,t);let n=e.ow.FormData;if(n!==void 0){if(t instanceof n||j(t))return t;let e=new n,r=t;return Object.keys(r).forEach(t=>{e.append(t,r[t])}),e}return t}var ap=new WeakMap;function op(e,t){let n=ip(e,t),r=t=>{e.j.progressbar.show().progress(t),t>=100&&e.j.progressbar.hide()},i=(t,n)=>{let r=new hu({xhr:()=>{let t=new XMLHttpRequest;return e.j.ow.FormData!==void 0&&t.upload?(n(10),t.upload.addEventListener(`progress`,e=>{if(e.lengthComputable){let t=e.loaded/e.total;t*=100,n(t)}},!1)):n(100),t},method:e.o.method||`POST`,data:t,url:k(e.o.url)?e.o.url(t):e.o.url,headers:e.o.headers,queryBuild:e.o.queryBuild,contentType:e.o.contentType.call(e,t),withCredentials:e.o.withCredentials||!1}),i=ap.get(e);
500return i||(i=new Set,ap.set(e,i)),i.add(r),e.j.e.one(`beforeDestruct`,r.destruct),r.send().then(e=>e.json()).catch(e=>({success:!1,data:{messages:[e]}})).finally(()=>{r.destruct(),i?.delete(r)})};return k(e.o.customUploadFunction)&&(i=e.o.customUploadFunction),ds(n)?n.then(e=>i(e,r)).catch(t=>{e.o.error.call(e,t)}):i(n,r)}function sp(e,t,n,r,i){if(!t)return Promise.reject(cs(`Need files`));let{o:a}=e,o=Io(t);if(!o.length)return Promise.reject(cs(`Need files`));if(k(a.beforeUpload)&&a.beforeUpload.call(e,o)===!1){let t=cs(`Upload canceled`);return(r||a.defaultHandlerError).call(e,t),Promise.reject(t)}let s=[];if(a.insertImageAsBase64URI&&cp(o,a.imagesExtensions,s,e,n,a.defaultHandlerSuccess),o=o.filter(e=>e),o.length){let t=new FormData;t.append(a.pathVariableName,e.path),t.append(`source`,e.source);let c;for(let n=0;n<o.length;n+=1)if(c=o[n],c){let r=/\.\w+$/.test(c.name),i=c.type.match(/\/([a-z0-9]+)/i),s=i&&i[1]?i[1].toLowerCase():``,l=o[n].name||Math.random().toString().replace(`.`,``);if(!r&&s){let e=s;[`jpeg`,`jpg`].includes(e)&&(e=`jpeg|jpg`),RegExp(`.(`+e+`)$`,`i`).test(l)||(l+=`.`+s)}let[u,d,f]=a.processFileName.call(e,a.filesVariableName(n),o[n],l);t.append(u,d,f)}i&&i(t),a.data&&Go(a.data)&&Object.keys(a.data).forEach(e=>{t.append(e,a.data[e])}),a.prepareData.call(e,t),s.push(op(e,t).then(t=>a.isSuccess.call(e,t)?((k(n)?n:a.defaultHandlerSuccess).call(e,a.process.call(e,t)),t):((k(r)?r:a.defaultHandlerError).call(e,cs(a.getMessage.call(e,t))),t)).then(()=>{e.j.events&&e.j.e.fire(`filesWereUploaded`)}))}return Promise.all(s)}function cp(e,t,n,r,i,a){let o,s;for(s=0;s<e.length;s+=1)if(o=e[s],o&&o.type){let c=o.type.match(/\/([a-z0-9]+)/i),l=c[1]?c[1].toLowerCase():``;if(!t.includes(l))continue;let u=new FileReader;n.push(r.j.async.promise((e,t)=>{u.onerror=t,u.onloadend=()=>{let t={baseurl:``,files:[u.result],isImages:[!0]};(k(i)?i:a).call(r,t),e(t)},u.readAsDataURL(o)})),e[s]=null}}function lp(e){return!!(e&&e.files&&e.files.length>0)}function up(e){return!!(e&&e.items&&e.items.length>0)}F.prototype.enableDragAndDropFileToEditor=!0,F.prototype.uploader={url:``,insertImageAsBase64URI:!1,imagesExtensions:[`jpg`,`jpeg`,`png`,`gif`,`webp`,`bmp`,`svg`,`tiff`,`avif`],headers:null,data:null,filesVariableName(e){return`files[${e}]`},withCredentials:!1,pathVariableName:`path`,format:`json`,method:`POST`,prepareData(e){return e},isSuccess(e){return e.success},getMessage(e){return e.data.messages!==void 0&&Ao(e.data.messages)?e.data.messages.join(` `):``},processFileName(e,t,n){return[e,t,n]},process(e){return e.data},error(e){this.j.message.error(e.message,4e3)},getDisplayName(e,t){return e+t},defaultHandlerSuccess(e){let t=this.j||this;Ms(t)&&e.files&&e.files.length&&e.files.forEach((n,r)=>{let[i,a]=e.isImages&&e.isImages[r]?[`img`,`src`]:[`a`,`href`],o=t.createInside.element(i);o.setAttribute(a,e.baseurl+n),i===`a`&&(o.textContent=t.o.uploader.getDisplayName.call(this,e.baseurl,n)),i===`img`?t.s.insertImage(o,null,t.o.imageDefaultWidth):t.s.insertNode(o)})},defaultHandlerError(e){this.j.message.error(e.message)},contentType(e){return this.ow.FormData!==void 0&&typeof e!=`string`?!1:`application/x-www-form-urlencoded; charset=UTF-8`}};var dp=class extends eu{get j(){return this.jodit}className(){return`Uploader`}get o(){return this.options}setPath(e){return this.path=e,this}setSource(e){return this.source=e,this}bind(e,t,n){let r=()=>{e.classList.remove(`jodit_drag_hover`)},i=this,a=e=>{let a,o,s,c=e.clipboardData,l=e=>{o&&(e.append(`extension`,s),e.append(`mimetype`,o.type))};if(!oo&&lp(c))return sp(i,c.files,t,n).finally(r),!1;if(up(c)){let{items:u}=c;for(a=0;a<u.length;a+=1)if(u[a].kind===`file`&&u[a].type===`image/png`){if(o=u[a].getAsFile(),o){let e=o.type.match(/\/([a-z0-9]+)/i);s=e[1]?e[1].toLowerCase():``,sp(i,[o],t,n,l).finally(r)}e.preventDefault();break}}};i.j&&i.j.editor!==e?i.j.e.on(e,`paste`,a):i.j.e.on(`beforePaste`,a),this.attachEvents(e,t,n,r)}attachEvents(e,t,n,r){let i=this;i.j.e.on(e,`dragend dragover dragenter dragleave drop`,e=>{e.preventDefault()}).on(e,`dragover`,t=>{(lp(t.dataTransfer)||up(t.dataTransfer))&&(e.classList.add(`jodit_drag_hover`),t.preventDefault())}).on(e,`dragend dragleave`,t=>{e.classList.remove(`jodit_drag_hover`),lp(t.dataTransfer)&&t.preventDefault()}).on(e,`drop`,a=>{e.classList.remove(`jodit_drag_hover`),lp(a.dataTransfer)&&(a.preventDefault(),a.stopImmediatePropagation(),sp(i,a.dataTransfer.files,t,n).finally(r))});let a=e.querySelector(`input[type=file]`);a&&i.j.e.on(a,`change`,()=>{sp(i,a.files,t,n).then(()=>
500{a.value=``,/safari/i.test(navigator.userAgent)||(a.type=``,a.type=`file`)}).finally(r)})}uploadRemoteImage(e,t,n){let r=this,{o:i}=r,a=k(n)?n:i.defaultHandlerError;op(r,{action:`fileUploadRemote`,url:e}).then(e=>{if(i.isSuccess.call(r,e)){(k(t)?t:i.defaultHandlerSuccess).call(r,i.process.call(r,e));return}a.call(r,cs(i.getMessage.call(r,e)))}).catch(e=>a.call(r,e))}upload(e){return this.async.promise((t,n)=>{sp(this,e,t,n)})}constructor(e,t){super(e),this.path=``,this.source=`default`,this.options=tl(t||{},tl(F.defaultOptions.uploader,Ms(e)?e.o.uploader:{}))}destruct(){this.setStatus(Oo.beforeDestruct);let e=ap.get(this);e&&(e.forEach(e=>{try{e.destruct()}catch{}}),e.clear()),super.destruct()}};function fp(e,t,n){let r=e;for(;r&&r!==n;){if(P.findSibling(r,t))return;if(P.isBlock(r.parentElement))break;r=r.parentElement,r&&r!==n&&(t?P.before(r,e):P.after(r,e))}}var pp=`wrap`,mp=`unwrap`,hp=`change`,gp=`unset`,_p=`initial`,vp=`replace`,yp=`commitStyle`;function bp(e,t,n){let r=n.s.createRange(),i=Ps(t.previousSibling)?t.previousSibling:t;r.setStartBefore(e),r.setEndBefore(i),xp(e,r,!0);let a=Ps(t.nextSibling)?t.nextSibling:t;r.setStartAfter(a),r.setEndAfter(e),xp(e,r,!1)}function xp(e,t,n){let r=t.extractContents();(!r.textContent||!zo(r.textContent).length)&&r.firstChild&&P.unwrap(r.firstChild),e.parentNode&&fs(n?P.before:P.after,e,r)}var Sp=class{setState(e){Uo(!this.__previewsStates.has(e),`Circled states`),this.__previewsStates.add(e),this.__state=e}getState(){return this.__state}disableSilent(){this.silent=!1}constructor(e,t){this.transitions=t,this.silent=!0,this.__previewsStates=new Set,this.setState(e)}dispatch(e,t){let n=this.transitions[this.getState()][e];if(n){let e=n.call(this,t);return Uo(e&&e!==t,`Action should return new value`),Uo(j(e.next),`Value should contain the next state`),Uo(e.next!==this.getState(),`The new state should not be equal to the old one.`),this.setState(e.next),e}throw Error(`invalid action: ${this.getState()}.${e.toString()}`)}};function Cp(e){return!!(e&&!P.isEmptyTextNode(e)&&!P.isTemporary(e)&&!Ps(e))}function wp(e,t){return!!(!P.isTag(e,`font`)&&P.isHTMLElement(e)&&Object.keys(t).every(n=>{let r=M(e,n,!0);
500return r===``&&(t[n]===``||t[n]==null)||!Mo(r)&&r!==``&&!Mo(t[n])&&$o(n,t[n]).toString().toLowerCase()===r.toString().toLowerCase()}))}if(Ha){let e=Ha.createElement(`div`);e.style.color=`red`,Uo(wp(e,{color:`red`}),`Style test`),Uo(wp(e,{fontSize:null}),`Style test`),Uo(wp(e,{fontSize:``}),`Style test`)}function Tp(e,t){return!!(!P.isTag(e,`font`)&&P.isHTMLElement(e)&&Object.keys(t).every(t=>M(e,t,!0)!==``))}if(Ha){let e=Ha.createElement(`div`);e.style.color=`red`,Uo(Tp(e,{color:`red`}),`Style test`),Uo(!Tp(e,{font:`Arial`,color:`red`}),`Style test`),Uo(!Tp(e,{border:`1px solid #ccc`}),`Style test`)}function Ep(e,t,n,r=!0){if(!t||!Cp(t))return!1;let{element:i,elementIsDefault:a,options:o}=e;if(P.isList(t)&&e.elementIsList)return!0;let s=P.isTag(t,i);return s&&!(a&&n)||o.attributes?.style&&(r?wp(t,o.attributes.style):Tp(t,o.attributes.style))&&!e.elementIsList?!0:!s&&!n&&a&&P.isInlineBlock(t)}function Dp(e,t,n){return P.closest(t,t=>Ep(e,t,!0,!1),n)}function Op(e,t){let{element:n,options:r}=e;if(!t||!Cp(t))return!1;let i=t.nodeName.toLowerCase()===n,a=!!(r.attributes?.style&&Tp(t,r.attributes?.style));return i&&a}function kp(e,t){let{firstChild:n}=t;for(;n&&!Cp(n);)if(n=n.nextSibling,!n)return null;return n&&!P.next(n,Cp,t)&&Ep(e,n,!1)?n:null}function Ap(e,t,n){let{parentNode:r}=t;return r===n||!P.isHTMLElement(r)||P.next(t,Cp,r)||P.prev(t,Cp,r)?null:e.isElementCommit&&e.elementIsBlock&&!P.isBlock(r)?Ap(e,r,n):Ep(e,r,!1)&&(!P.isBlock(r)||e.elementIsBlock)?r:e.isElementCommit&&!P.isBlock(r)?Ap(e,r,n):null}function jp(e,t){return!!P.closest(e,[`style`,`script`],t)}function Mp(e,t){return!Wl(t)||(Uo(t,`Attrs must be a non-empty object`),Object.keys(t).every(n=>n===`class`||n===`className`?e.classList.contains(t[n]):n===`style`?wp(e,t[n]):N(e,n)===t[n]))}function Np(e,t){return e.attributes.length===t.attributes.length&&Array.from(e.attributes).every(e=>t.hasAttribute(e.name)&&t.getAttribute(e.name)===e.value)}var Pp=`toggleAttributes`;function Fp(e,t,n,r,i=!1){if(!i&&e.isApplied(t,Pp))return r;!i&&e.setApplied(t,Pp);let{attributes:a}=e.options;return a&&Wl(a)>0&&Object.keys(a).forEach(o=>{let s=a[o];switch(o){case`style`:r=Ip(e,n,s,t,i,r);break;case`className`:case`class`:r=Lp(n,s,t,r,i);break;default:r=Rp(n,s,t,o,i,r)}}),r}function Ip(e,t,n,r,i,a){return Uo(Go(n)&&Wl(n),`Style must be an object`),Object.keys(n).forEach(o=>{let s=r.style.getPropertyValue(Ko(o)),c=n[o];if(s!==``||c!=null){if(Vp(t,r,o)===$o(o,c)){if(!s)return;!i&&M(r,o,null),a=gp,a=zp(e,r,a);return}a=hp,i||(M(r,o,c),a=zp(e,r,a))}}),a}function Lp(e,t,n,r,i){Uo(j(t),`Class name must be a string`);let a=e.e.fire.bind(e.e,`${yp}AfterToggleAttribute`);return n.classList.contains(t.toString())?(r=gp,i||(n.classList.remove(t),n.classList.length===0&&(N(n,`class`,null),a(r,n,`class`,null)))):(r=hp,i||(n.classList.add(t),a(r,n,`class`,t))),r}function Rp(e,t,n,r,i,a){Uo(j(t)||Fs(t)||Jo(t)||t==null,`Attribute value must be a string or number or boolean or null`);let o=e.e.fire.bind(e.e,`${yp}AfterToggleAttribute`);return N(n,r)===(t==null?t:String(t))?(!i&&N(n,r,null),a=gp,!i&&o(a,n,r,t),a):(a=hp,i||(N(n,r,t),o(a,n,r,t)),a)}function zp(e,t,n){return N(t,`style`)||(N(t,`style`,null),t.tagName.toLowerCase()===e.defaultTag&&(P.unwrap(t),n=mp)),n}function Bp(e){if(is(e,`shadowRoot`)!==void 0)return is(e,`shadowRoot`);let t=Ac(e),n=Ha.createElement(`iframe`);M(n,{width:0,height:0,position:`absolute`,border:0}),n.src=`about:blank`,t.appendChild(n);let r=n.contentWindow?.document,i=r?r.body:e.od.body;return is(e,`shadowRoot`,i),i}function Vp(e,t,n){let r=Bp(e),i=e.create.element(`div`);i.style.color=M(e.editor,`color`);let a=e.create.element(t.tagName.toLowerCase());a.style.cssText=t.style.cssText,i.appendChild(a),r.appendChild(i);let o=M(a,n);return P.safeRemove(i),o}function Hp(e,t,n){let r=n.e.fire(`${yp}BeforeWrapList`,vp,t,e)??P.replace(t,`li`,n.createInside),i=r.previousElementSibling,a=r.nextElementSibling,o=P.isTag(i,e.element)?i:null;return o??=P.isTag(a,e.element)?a:null,(!P.isList(o)||!Mp(o,e.options.attributes))&&(o=n.createInside.element(e.element),Fp(e,o,n,_p),P.before(r,o)),i===o?P.append(o,r):P.prepend(o,r),P.isTag(o.nextElementSibling,e.element)&&Np(o,o.nextElementSibling)&&(P.append(o,Array.from(o.nextElementSibling.childNodes)),P.safeRemove(o.nextElementSibling)),n.e.fire(`${yp}AfterWrapList`,pp,o,e),o}function Up(e,t,n,r){if(!t)return r;let i=t.parentElement;if(!i)return r;let a=n.e.fire(`${yp}BeforeToggleList`,r,e,i);if(a!==void 0)return a;let o=n.e.fire.bind(n.e,`${yp}AfterToggleList`);if(r!==`unwrap`){let a=Fp(e,t.parentElement,n,_p,!0)===hp;if(r===`replace`||a||i.tagName.toLowerCase()!==e.element)return o(vp,Hp(e,Wp(vp,i,t,n,e),n),e),vp}return o(mp,Wp(mp,i,t,n,e),e),mp}function Wp(e,t,n,r,i){let a=r.e.fire(`${yp}BeforeUnwrapList`,e,t,i);return a?(Uo(P.isHTMLElement(a),`${yp}BeforeUnwrapList hook must return HTMLElement`),a):(bp(t,n,r),Uo(P.isHTMLElement(n.parentElement),`Element should be inside the list`),P.unwrap(n.parentElement),e===`replace`?n:P.replace(n,r.o.enter.toLowerCase()===`br`?r.createInside.fragment():r.o.enter,r.createInside))}function Gp(e,t){let n=[],r=[],i,a=e.options.attributes?.style;if(t.firstChild){let o=P.eachGen(t),s=o.next();for(;!s.done;){let t=s.value;Ep(e,t,!0)&&(!a||Tp(t,a))?(i===void 0&&(i=!0),n.push(t)):a&&Op(e,t)?(i===void 0&&(i=!1),r.push(()=>{M(t,Object.keys(a).reduce((e,t)=>
500(e[t]=null,e),{})),N(t,`style`)||N(t,`style`,null),!N(t,`style`)&&t.nodeName.toLowerCase()===e.element&&n.push(t)})):P.isEmptyTextNode(t)||i===void 0&&(i=!1),s=o.next()}}return r.forEach(e=>e()),n.forEach(P.unwrap),!!i}function Kp(e,t,n){let r=n.editor,i=n.createInside,a=(e,t=`previousSibling`)=>{let i=e,a=e;for(;a&&!Ps(a)&&!(P.isTag(a,n.o.enter)||(i=a,a=a[t]?a[t]:a.parentNode&&!P.isBlock(a.parentNode)&&a.parentNode!==r?a.parentNode:null,P.isBlock(a))););return i},o=a(t),s=a(t,`nextSibling`),c=n.s.createRange();c.setStartBefore(o),c.setEndAfter(s);let l=c.extractContents(),u=i.element(e.element);return u.appendChild(l),P.safeInsertNode(c,u),e.elementIsBlock&&P.isEmpty(u)&&!P.isTag(u.firstElementChild,`br`)&&u.appendChild(i.element(`br`)),u}function qp(e,t,n){let r=Yp(e,t,n);if(e.elementIsList)return Hp(e,r,n);let i=P.replace(r,e.element,n.createInside,!0);return e.elementIsBlock&&(M(i,`fontSize`,null),M(i,`fontWeight`,null),N(i,`style`)||N(i,`style`,null)),i}var Jp=new Set([`td`,`th`,`tr`,`tbody`,`table`,`li`,`ul`,`ol`]);function Yp(e,t,n){return e.elementIsBlock?P.up(t,e=>P.isBlock(e)&&!P.isTag(e,Jp),n.editor)||Kp(e,t,n):(N(t,`size`,null),t)}var Xp={START:`START`,ELEMENT:`ELEMENT`,UNWRAP:`UNWRAP`,UNWRAP_CHILDREN:`UNWRAP_CHILDREN`,CHANGE:`CHANGE`,REPLACE_DEFAULT:`REPLACE_DEFAULT`,LIST:`LIST`,TOGGLE_LIST:`TOGGLE_LIST`,WRAP:`WRAP`,EXTRACT:`EXTRACT`,END:`END`},Zp={[Xp.START]:{exec(e){let{element:t,jodit:n,style:r,mode:i,collapsed:a}=e;if(jp(t,n.editor)||!a&&P.isEmptyContent(t))return{...e,next:Xp.END};let o=Ap(r,t,n.editor)||kp(r,t);if(o)return{...e,next:Xp.ELEMENT,element:o};let s=Dp(r,t,n.editor);return r.elementIsList&&P.isList(s)?{...e,next:Xp.LIST}:s?{...e,next:Xp.EXTRACT}:{...e,next:i===`unwrap`?Xp.END:Xp.UNWRAP_CHILDREN}}},[Xp.LIST]:{exec(e){let{element:t,jodit:n,mode:r}=e;if(r!==`initial`&&r!==`unwrap`&&r!==`replace`)return{...e,next:Xp.END};let i=P.closest(t,`li`,n.editor);return i&&P.closest(t,Ga,n.editor)?{...e,element:i,next:Xp.TOGGLE_LIST}:{...e,next:Xp.END}}},[Xp.TOGGLE_LIST]:{exec(e){return{...e,mode:Up(e.style,e.element,e.jodit,e.mode),next:Xp.END}}},[Xp.EXTRACT]:{exec(e){let{element:t,jodit:n,style:r}=e,i=Dp(r,t,n.editor);return Uo(i,`This place should have an element`),!r.elementIsBlock&&r.options.attributes?.style&&P.isBlock(i)?{...e,next:Xp.WRAP}:(r.elementIsBlock||bp(i,t,n),{...e,element:i,next:Xp.ELEMENT})}},[Xp.UNWRAP_CHILDREN]:{exec(e){let{element:t,style:n}=e;return Gp(n,t)?{...e,mode:mp,next:Xp.END}:{...e,next:Xp.WRAP}}},[Xp.WRAP]:{exec(e){let{element:t,jodit:n,style:r}=e,i=qp(r,t,n);return{...e,next:r.elementIsList?Xp.END:Xp.CHANGE,mode:pp,element:i}}},[Xp.ELEMENT]:{exec(e){let{style:t,element:n,jodit:r}=e;return Fp(t,n,r,`initial`,!0)===`initial`?P.isTag(n,t.element)?{...e,next:Xp.UNWRAP}:{...e,next:Xp.END}:{...e,next:Xp.CHANGE}}},[Xp.CHANGE]:{exec(e){let{style:t,element:n,jodit:r,mode:i}=e,a=Fp(t,n,r,e.mode);return i!==`wrap`&&a===`unset`&&!n.attributes.length&&P.isTag(n,t.element)?{...e,next:Xp.UNWRAP}:{...e,mode:a,next:Xp.END}}},[Xp.UNWRAP]:{exec(e){return e.element.attributes.length&&P.isTag(e.element,e.style.element)?{...e,next:Xp.REPLACE_DEFAULT}:(P.unwrap(e.element),{...e,mode:mp,next:Xp.END})}},[Xp.REPLACE_DEFAULT]:{exec(e){return P.replace(e.element,e.style.defaultTag,e.jodit.createInside,!0),{...e,mode:vp,next:Xp.END}}},[Xp.END]:{exec(e){return e}}};function Qp(e,t){var n;let{s:r,editor:i}=e;(n=i.firstChild)==null||n.normalize();let a=r.fakes(),o=e.s.wrapInTagGen(a),s=o.next();if(s.done)return;let c={collapsed:r.isCollapsed(),mode:_p,element:s.value,next:Xp.START,jodit:e,style:t};for(;s&&!s.done;){let e=new Sp(Xp.START,Zp);for(c.element=s.value;e.getState()!==Xp.END;)c=e.dispatch(`exec`,c);s=o.next()}r.restoreFakes(a)}var $p=class{isApplied(e,t){let n=this.__applyMap.get(e);return n?!!n[t]:!1}setApplied(e,t){let n=this.__applyMap.get(e)??{};n[t]=!0,this.__applyMap.set(e,n)}get elementIsList(){return!!(this.options.element&&Ga.has(this.options.element))}get element(){return this.options.element||this.defaultTag}get elementIsBlock(){return!!(this.options.element&&Ua.test(this.options.element))}get isElementCommit(){return!!(this.options.element&&this.options.element!==this.options.defaultTag)}get defaultTag(){return this.options.defaultTag?this.options.defaultTag:this.elementIsBlock?`p`:`span`}get elementIsDefault(){return this.element===this.defaultTag}constructor(e){this.options=e,this.__applyMap=new WeakMap}apply(e){let{hooks:t}=this.options,n=t?Object.keys(t):[];
500try{n.forEach(n=>{e.e.on(es(yp+`_`+n),t[n])}),Qp(e,this)}finally{n.forEach(n=>{e.e.off(es(yp+`_`+n),t[n])}),this.__applyMap=new WeakMap}e.synchronizeValues(),e.e.fire(`afterCommitStyle`,this)}};function em(e,t,n){let r=P.findSibling(t,n),i=P.findSibling(t,!n);for(;P.isElement(r)&&!P.isTag(r,qa)&&P.isContentEditable(r,e.editor)&&(!i||!P.closest(t,P.isElement,e.editor));)n||!r.firstChild?r.appendChild(t):P.before(r.firstChild,t),r=P.sibling(t,n),i=P.sibling(t,!n)}function tm(e,t,n,r){let i=e.nodeValue?.length?e.nodeValue:``;if(r&&i.replace(Ia(),``).length>t)return!0;let a=La().exec(i);return n&&(a&&a[0].length<t||!a&&t>0)}function nm(e,t,n,r,i,a){if(e=t.startContainer.childNodes[t.startOffset],e||(e=t.startContainer.childNodes[t.startOffset-1],n=!0),e&&r&&!P.isText(e)){if(!n&&P.isText(e.previousSibling))e=e.previousSibling;else if(i){let t=a(e);for(;t;){if(t&&P.isText(t)){e=t;break}t=a(t)}}}if(e&&!r&&!P.isText(e)){let t=e,n=e;do t=t.firstChild,n=n.lastChild;while(t&&n&&!P.isText(t));t===n&&t&&P.isText(t)&&(e=t)}return{node:e,rightMode:n}}var rm=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},im=class{constructor(e){this.jodit=e,e.e.on(`removeMarkers`,()=>{this.removeMarkers()})}get j(){return this.jodit}errorNode(e){if(!P.isNode(e))throw cs(`Parameter node must be instance of Node`)}get area(){return this.j.editor}get win(){return this.j.ew}get doc(){return this.j.ed}get sel(){return this.j.o.shadowRoot&&k(this.j.o.shadowRoot.getSelection)?this.j.o.shadowRoot.getSelection():this.win.getSelection()}get range(){let e=this.sel;return e&&e.rangeCount?e.getRangeAt(0):this.createRange()}get isInsideArea(){let{sel:e}=this,t=e?.rangeCount?e.getRangeAt(0):null;return!(!t||!P.isOrContains(this.area,t.startContainer))}createRange(e=!1){let t=this.doc.createRange();return e&&this.selectRange(t),t}remove(){let e=this.sel,t=this.current();if(e&&t)for(let t=0;t<e.rangeCount;t+=1)e.getRangeAt(t).deleteContents(),e.getRangeAt(t).collapse(!0)}clear(){var e;this.sel?.rangeCount&&((e=this.sel)==null||e.removeAllRanges())}removeNode(e){if(!P.isOrContains(this.j.editor,e,!0))throw cs(`Selection.removeNode can remove only editor's children`);P.safeRemove(e),this.j.e.fire(`afterRemoveNode`,e)}insertCursorAtPoint(e,t){this.removeMarkers();try{let n=this.createRange();return(()=>{if(this.doc.caretPositionFromPoint){let r=this.doc.caretPositionFromPoint(e,t);if(r){n.setStart(r.offsetNode,r.offset);return}}if(this.doc.caretRangeFromPoint){let r=this.doc.caretRangeFromPoint(e,t);Uo(r,`Incorrect caretRangeFromPoint behaviour`),n.setStart(r.startContainer,r.startOffset)}})(),n.collapse(!0),this.selectRange(n),!0}catch{}return!1}get hasMarkers(){return!!this.markers.length}get markers(){return Pc(`span[data-`+uo+`]`,this.area)}removeMarkers(){P.safeRemove(...this.markers)}marker(e=!1,t){let n=null;t&&(n=t.cloneRange(),n.collapse(e));let r=this.j.createInside.span();return r.id=uo+`_`+Number(new Date)+`_`+String(Math.random()).slice(2),r.style.lineHeight=`0`,r.style.display=`none`,P.markTemporary(r),N(r,`data-`+uo,e?`start`:`end`),r.appendChild(this.j.createInside.text(``)),n&&P.isOrContains(this.area,e?n.startContainer:n.endContainer)&&n.insertNode(r),r}restore(){let e=!1,t=e=>`span[data-${uo}=${e?`start`:`end`}]`,n=this.area.querySelector(t(!0)),r=this.area.querySelector(t(!1));if(n){if(e=this.createRange(),r)e.setStartAfter(n),P.safeRemove(n),e.setEndBefore(r),P.safeRemove(r);else{let t=n.previousSibling;P.isText(t)?e.setStart(t,t.nodeValue?t.nodeValue.length:0):e.setStartBefore(n),P.safeRemove(n),e.collapse(!0)}e&&this.selectRange(e)}}fakes(){let e=this.sel;if(!e||!e.rangeCount)return[];let t=e.getRangeAt(0);Uo(t,`Range is null`);let n=t.cloneRange();n.collapse(!0);let r=this.j.createInside.fake();P.safeInsertNode(n,r),t.setStartBefore(r);let i=[r];if(!t.collapsed){let e=t.cloneRange();e.collapse(!1);let n=this.j.createInside.fake();P.safeInsertNode(e,n),t.setEndAfter(n),i.push(n)}return this.selectRange(t),i}restoreFakes(e){let t=e.filter(e=>e.isConnected);if(!t.length)return;let[n,r]=t,i=this.createRange();i.setStartAfter(n),r&&i.setEndBefore(r),this.selectRange(i),n.parentNode?.firstChild!==n.parentNode?.lastChild&&P.safeRemove(n),r?.parentNode?.firstChild!==r?.parentNode?.lastChild&&P.safeRemove(r)}save(e=!1){if(this.hasMarkers)return[];let t=this.sel;if(!t||!t.rangeCount)return[];let n=[],r=t.rangeCount,i=[];for(let e=0;e<r;e+=1)if(i[e]=t.getRangeAt(e),i[e].collapsed){let t=this.marker(!0,i[e]);n[e]={startId:t.id,collapsed:!0,startMarker:t.outerHTML}}else{let t=this.marker(!0,i[e]),r=this.marker(!1,i[e]);n[e]={startId:t.id,endId:r.id,collapsed:!1,startMarker:t.outerHTML,endMarker:r.outerHTML}}if(!e){t.removeAllRanges();for(let e=r-1;e>=0;--e){let r=this.doc.getElementById(n[e].startId);if(r){if(n[e].collapsed)i[e].setStartAfter(r),i[e].collapse(!0);else if(i[e].setStartBefore(r),n[e].endId){let t=this.doc.getElementById(n[e].endId);t&&i[e].setEndAfter(t)}try{t.addRange(i[e].cloneRange())}catch{}}}}return n}focus(e={preventScroll:!0}){var t;if(!this.isFocused()){let n=Hl(this.j.container),r=n?.scrollTop;this.j.iframe&&this.doc.readyState===`complete`&&this.j.iframe.focus(e),this.win.focus(),this.area.focus(e),r&&n?.scrollTo&&n.scrollTo(0,r);let i=this.sel,a=i?.rangeCount?i?.getRangeAt(0):null;if(!a||!P.isOrContains(this.area,a.startContainer)){let e=this.createRange();e.setStart(this.area,0),e.collapse(!0),this.selectRange(e,!1)}return this.j.editorIsActive||(t=this.j?.events)==null||t.fire(`focus`),!0}return!1}isCollapsed(){let e=this.sel;for(let t=0;e&&t<e.rangeCount;t+=1)if(!e.getRangeAt(t).collapsed)return!1;return!0}isFocused(){return this.doc.hasFocus&&this.doc.hasFocus()&&this.area===this.doc.activeElement}current(e=!0){if(this.j.getRealMode()!==1)return null;let t=this.sel;if(!t||t.rangeCount===0)return null;let n=t.getRangeAt(0),r=n.startContainer,i=!1,a=e=>i?e.lastChild:e.firstChild;if(P.isTag(r,`br`)&&t.isCollapsed)return r;if(!P.isText(r)){let o=nm(r,n,i,t.isCollapsed,e,a);r=o.node,i=o.rightMode}return r&&P.isOrContains(this.area,r)?r:null}insertNode(e,t=!0,n=!0){this.errorNode(e);let r=P.isFragment(e)?e.lastChild:e;this.j.e.fire(`safeHTML`,e),!this.isFocused()&&this.j.isEditorMode()&&(this.focus(),this.restore(
500));let i=this.sel;this.j.history.snapshot.transaction(()=>{if(this.isCollapsed()||this.j.execCommand(`Delete`),this.j.e.fire(`beforeInsertNode`,e),i&&i.rangeCount){let t=i.getRangeAt(0),{firstChild:n}=e;P.isOrContains(this.area,t.commonAncestorContainer)?P.safeInsertNode(t,e):this.area.appendChild(e),[()=>n?.previousSibling,()=>n?.previousSibling,()=>n?.previousSibling?.lastChild].forEach(e=>{let t=e();t&&P.isEmptyTextNode(t)&&P.safeRemove(t)})}else this.area.appendChild(e);let n=e=>{if(P.isBlock(e)){let t=e.lastChild;if(t)return n(t)}this.setCursorAfter(e)};t&&(P.isFragment(e)?r&&n(r):n(e)),this.j.o.scrollToPastedContent&&hl(r??e,this.j.editor,this.doc)}),n&&this.j.events&&this.j.__imdSynchronizeValues(),this.j.events&&this.j.e.fire(`afterInsertNode`,P.isFragment(e)?r:e)}insertHTML(e,t=!0){if(e===``)return;let n=this.j.createInside.div(),r=this.j.createInside.fragment();if(!this.isFocused()&&this.j.isEditorMode()&&(this.focus(),this.restore()),P.isNode(e)?n.appendChild(e):n.innerHTML=e.toString(),!(!this.j.isEditorMode()&&this.j.e.fire(`insertHTML`,n.innerHTML)===!1)&&n.lastChild){for(;n.firstChild;)r.appendChild(n.firstChild);this.insertNode(r,t,!1),this.j.__imdSynchronizeValues()}}insertImage(e,t=null,n=null){let r=j(e)?this.j.createInside.element(`img`):e;if(j(e)&&r.setAttribute(`src`,e),n!=null){let e=n.toString();e&&e!==`auto`&&String(e).indexOf(`px`)<0&&String(e).indexOf(`%`)<0&&(e+=`px`),N(r,`width`,e)}t&&typeof t==`object`&&M(r,t);let i=()=>{(r.naturalHeight<r.offsetHeight||r.naturalWidth<r.offsetWidth)&&(r.style.width=``,r.style.height=``),r.removeEventListener(`load`,i)};this.j.e.on(r,`load`,i),r.complete&&i(),this.insertNode(r),this.j.e.fire(`afterInsertImage`,r)}eachSelection(e){let t=this.sel;if(!t||!t.rangeCount)return;let n=t.getRangeAt(0),r=n.commonAncestorContainer;P.isHTMLElement(r)||(r=r.parentElement);let i=[],a=n.startOffset,o=r.childNodes.length,s=a<o?a:o-1,c=n.startContainer===this.area?r.childNodes[s]:n.startContainer,l=n.endContainer===this.area?r.childNodes[n.endOffset-1]:n.endContainer;P.isText(c)&&c===n.startContainer&&n.startOffset===c.nodeValue?.length&&c.nextSibling&&(c=c.nextSibling),P.isText(l)&&l===n.endContainer&&n.endOffset===0&&l.previousSibling&&(l=l.previousSibling);let u=e=>{e&&e!==r&&!P.isEmptyTextNode(e)&&!Ps(e)&&i.push(e)};u(c),c!==l&&P.isOrContains(r,c,!0)&&P.find(c,e=>(u(e),e===l||e&&e.contains&&e.contains(l)),r,!0,!1);let d=t=>{if(P.isOrContains(this.j.editor,t,!0)){if(t.nodeName.match(/^(UL|OL)$/))return Io(t.childNodes).forEach(d);if(P.isTag(t,`li`))if(t.firstChild)t=t.firstChild;else{let e=this.j.createInside.text(``);t.appendChild(e),t=e}e(t)}};i.length===0&&(P.isEmptyTextNode(c)&&i.push(c),c?.firstChild&&i.push(c.firstChild)),i.forEac
500h(d)}cursorInTheEdge(e,t,n=null){let r=!e,i=this.sel,a=i?.rangeCount?i.getRangeAt(0):null;if(n??=this.current(!1),!a||!n||!P.isOrContains(t,n,!0))return null;let o=e?a.startContainer:a.endContainer,s=e?a.startOffset:a.endOffset,c=e=>!!(e&&!P.isTag(e,`br`)&&!P.isEmptyTextNode(e)&&!P.isTemporary(e)&&!(P.isElement(e)&&this.j.e.fire(`isInvisibleForCursor`,e)===!0));if(P.isText(o)){if(tm(o,s,e,r))return!1}else{let e=Io(o.childNodes);if(r){if(e.slice(s).some(c))return!1}else if(e.slice(0,s).some(c))return!1}let l=n;for(;l&&l!==t;){let t=P.sibling(l,e);if(!t){l=l.parentNode;continue}if(l=t,l&&c(l))return!1}return!0}cursorOnTheLeft(e,t){return this.cursorInTheEdge(!0,e,t)}cursorOnTheRight(e,t){return this.cursorInTheEdge(!1,e,t)}setCursorAfter(e){return this.setCursorNearWith(e,!1)}setCursorBefore(e){return this.setCursorNearWith(e,!0)}setCursorNearWith(e,t){if(this.errorNode(e),!P.up(e,e=>e===this.area||e&&e.parentNode===this.area,this.area))throw cs(`Node element must be in editor`);let n=this.createRange(),r=null;return P.isText(e)?t?n.setStart(e,0):n.setEnd(e,e.nodeValue?.length??0):(r=this.j.createInside.fake(),t?n.setStartBefore(e):n.setEndAfter(e),n.collapse(t),P.safeInsertNode(n,r),n.selectNode(r)),n.collapse(t),this.selectRange(n),r}setCursorIn(e,t=!1){if(this.errorNode(e),!P.up(e,e=>e===this.area||e&&e.parentNode===this.area,this.area))throw cs(`Node element must be in editor`);let n=this.createRange(),r=e,i=e;do{if(P.isText(r)||P.isTag(r,qa))break;i=r,r=t?r.firstChild:r.lastChild}while(r);if(!r){let e=this.j.createInside.text(``);P.isTag(i,qa)?r=i:(i.appendChild(e),i=e)}let a=r||i;return P.isTag(a,qa)?(t||P.isTag(a,`br`)?n.setStartBefore(a):n.setEndAfter(a),n.collapse(t)):(n.selectNodeContents(a),n.collapse(t)),this.selectRange(n),i}selectRange(e,t=!0){let n=this.sel;return t&&!this.isFocused()&&this.j.e.current!==`focus`&&this.focus(),n&&(n.removeAllRanges(),n.addRange(e)),this.j.e.fire(`changeSelection`),this}select(e,t=!1){if(this.errorNode(e),!P.up(e,e=>e===this.area||e&&e.parentNode===this.area,this.area))throw cs(`Node element must be in editor`);let n=this.createRange();return n[t?`selectNodeContents`:`selectNode`](e),this.selectRange(n)}get html(){let e=this.sel;if(e&&e.rangeCount>0){let t=e.getRangeAt(0).cloneContents(),n=this.j.createInside.div();return n.appendChild(t),n.innerHTML}return``}__wrapSelectionFragments(){let e=this.range;this.__splitSelectionBoundaries(e);let t=e.commonAncestorContainer;return P.isText(t)&&(t=t.parentNode),t?this.__wrapSelectionRuns(this.__collectContainedNodes(t,e)):[]}__splitSelectionBoundaries(e){let{startContainer:t,endContainer:n}=e,{startOffset:r,endOffset:i}=e;if(P.isText(n)&&i>0&&i<(n.nodeValue?.length??0)&&(n.splitText(i),i=n.nodeValue?.length??i),P.isText(t)&&r>0&&r<(t.nodeValue?.length??0)){let e=t.splitText(r);t===n&&(n=e,i=e.nodeValue?.length??0),t=e,r=0}e.setStart(t,r),e.setEnd(n,i),this.__normalizeRangeBoundary(e,!0),this.__normalizeRangeBoundary(e,!1)}__normalizeRangeBoundary(e,t){let n=t?e.startContainer:e.endContainer;if(!P.isText(n))return;let r=t?e.startOffset:e.endOffset,i=n.nodeValue?.length??0;r===0?t?e.setStartBefore(n):e.setEndBefore(n):r>=i&&(t?e.setStartAfter(n):e.setEndAfter(n))}__collectContainedNodes(e,t){let n=[];return Io(e.childNodes).forEach(e=>{this.__isFullyContained(t,e)?n.push(e):e.childNodes.length&&t.intersectsNode(e)&&n.push(...this.__collectContainedNodes(e,t))}),n}__isFullyContained(e,t){let n=this.createRange();return n.selectNode(t),e.compareBoundaryPoints(Range.START_TO_START,n)<=0&&e.compareBoundaryPoints(Range.END_TO_END,n)>=0}__wrapSelectionRuns(e){let t=[],n=[],r=()=>{n.length&&(t.push(this.__wrapRunInFont(n)),n=[])};return e.forEach(e=>{P.isElement(e)&&this.__isOrContainsBlock(e)?(r(),t.push(...this.__wrapSelectionRuns(Io(e.childNodes)))):(n.length&&n[n.length-1].parentNode!==e.parentNode&&r(),n.push(e))}),r(),t}__isOrContainsBlock(e){return P.isBlock(e)?!0:Io(e.childNodes).some(e=>this.__isOrContainsBlock(e))}__wrapRunInFont(e){var t;let n=this.j.createInside.element(`font`),[r]=e;
500return(t=r.parentNode)==null||t.insertBefore(n,r),e.forEach(e=>n.appendChild(e)),n}*wrapInTagGen(e){if(this.isCollapsed()){let t=this.jodit.createInside.element(`font`,``);this.insertNode(t,!1,!1),e&&e[0]&&t.appendChild(e[0]),yield t,P.unwrap(t);return}let t=this.__wrapSelectionFragments();for(let e of t){let{firstChild:t,lastChild:n}=e;if(t&&t===n&&Ps(t)){P.unwrap(e);continue}t&&Ps(t)&&P.before(e,t),n&&Ps(n)&&P.after(e,n),yield e,P.unwrap(e)}}wrapInTag(e){let t=[];for(let n of this.wrapInTagGen())try{if(n.firstChild&&n.firstChild===n.lastChild&&Ps(n.firstChild))continue;k(e)?e(n):t.push(P.replace(n,e,this.j.createInside))}finally{let e=n.parentNode;e&&(P.unwrap(n),P.isEmpty(e)&&P.unwrap(e))}return t}commitStyle(e){Uo(Wl(e)>0,`Need to pass at least one option`),new $p(e).apply(this.j)}splitSelection(e,t){if(!this.isCollapsed())return null;let n=this.createRange(),r=this.range;n.setStartBefore(e);let i=this.cursorOnTheRight(e,t),a=this.cursorOnTheLeft(e,t),o=this.j.createInside.element(`br`),s=this.j.createInside.fake(),c=s.cloneNode();try{if(i||a){t?P.before(t,o):P.safeInsertNode(r,o);let e=(e,t)=>{let n=t(e);for(;n;){let e=t(n);if(n&&(P.isTag(n,`br`)||P.isEmptyTextNode(n)))P.safeRemove(n);else break;n=e}};e(o,e=>e.nextSibling),e(o,e=>e.previousSibling),P.after(o,c),P.before(o,s),i?(n.setEndBefore(o),r.setEndBefore(o)):(n.setEndAfter(o),r.setEndAfter(o))}else n.setEnd(r.startContainer,r.startOffset);let l=n.extractContents(),u=e=>P.each(e,e=>P.isEmptyTextNode(e)&&P.safeRemove(e));Uo(e.parentNode,`Splitting fails`);try{if(u(l),u(e),e.parentNode.insertBefore(l,e),!t&&i&&o?.parentNode){let e=this.createRange();e.setStartBefore(o),this.selectRange(e)}}catch{}let d=e=>{var t;e?.parentNode?.firstChild===e?.parentNode?.lastChild&&((t=e?.parentNode)==null||t.appendChild(o.cloneNode()))};d(s),d(c)}finally{P.safeRemove(s),P.safeRemove(c)}return e.previousElementSibling}expandSelection(){if(this.isCollapsed())return this;let{range:e}=this,t=e.cloneRange();if(!P.isOrContains(this.j.editor,e.commonAncestorContainer,!0))return this;let n=t=>{let n=this.j.createInside.fake(),r=e.cloneRange();return r.collapse(t),P.safeInsertNode(r,n),fp(n,t,this.j.editor),n},r=n(!0),i=n(!1);t.setStartAfter(r),t.setEndBefore(i);let a=P.findSibling(r,!1),o=P.findSibling(i,!0);if(a!==o){let e=P.isElement(a)&&P.isOrContains(a,i),n=!e&&P.isElement(o)&&P.isOrContains(o,r);if(e||n){let n=e?a:o,s=n;for(;P.isElement(n);)n=e?n.firstElementChild:n.lastElementChild,n&&(e?P.isOrContains(n,i):P.isOrContains(n,r))&&(s=n);e?t.setStart(s,0):t.setEnd(s,s.childNodes.length)}}if(this.selectRange(t),P.safeRemove(r,i),this.isCollapsed())throw cs(`Selection is collapsed`);return this}};rm([A],im.prototype,`createRange`,null),rm([A],im.prototype,`focus`,null),rm([A],im.prototype,`setCursorAfter`,null),rm([A],im.prototype,`setCursorBefore`,null),rm([A],im.prototype,`setCursorIn`,null);var am=s({Ajax:()=>hu,Alert:()=>Gd,Async:()=>Js,AsyncStorage:()=>kd,Button:()=>Tu,CommitStyle:()=>$p,Component:()=>$l,Confirm:()=>Kd,ContextMenu:()=>Zd,Create:()=>yd,Dialog:()=>Wd,Dom:()=>P,EventEmitter:()=>Qs,EventHandlersStore:()=>Zs,Eventify:()=>yc,FileBrowser:()=>Pf,Helpers:()=>Zl,History:()=>Hf,Icon:()=>vu,ImageEditor:()=>Sf,IndexedDBProvider:()=>bd,LazyWalker:()=>xc,LocalStorageProvider:()=>Td,MemoryStorageProvider:()=>Ed,Plugin:()=>Lf,PluginSystem:()=>gc,Popup:()=>_d,ProgressBar:()=>vd,Prompt:()=>qd,Response:()=>pu,STATUSES:()=>Oo,Selection:()=>im,Snapshot:()=>zf,StatusBar:()=>Wf,Storage:()=>Od,StorageKey:()=>Dd,Table:()=>qf,ToolbarButton:()=>Xf,ToolbarCollection:()=>tp,ToolbarContent:()=>L,ToolbarEditorCollection:()=>rp,ToolbarSelect:()=>$f,UIBlock:()=>Lu,UIButton:()=>wu,UIButtonGroup:()=>Au,UIButtonState:()=>Cu,UICheckbox:()=>td,UIElement:()=>xu,UIFileInput:()=>rd,UIForm:()=>Yu,UIGroup:()=>Ou,UIInput:()=>Wu,UIList:()=>md,UIMessages:()=>Nd,UISelect:()=>qu,UISeparator:()=>ad,UISpacer:()=>sd,UITextArea:()=>Qu,UITooltip:()=>Fu,Uploader:()=>dp,View:()=>Id,ViewComponent:()=>eu,ViewWithToolbar:()=>Vd,canUseIndexedDB:()=>Cd,canUsePersistentStorage:()=>wd,clearUseIndexedDBCache:()=>Sd,defaultNameSpace:()=>Xs,observable:()=>du}),om=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},sm,cm=`data-jodit-default-style-display`,lm=`data-jodit-default-classes`,um={contenteditable:!1},dm=sm=class extends Vd{className(){return`Jodit`}waitForReady(){return this.isReady?Promise.resolve(this):this.async.promise(e=>{this.hookStatus(`ready`,()=>e(this))})}static get ready(){return new Promise(e=>{Mc.on(`joditready`,e)})}get text(){if(this.editor)return this.editor.innerText||``;let e=this.createInside.div();return e.innerHTML=this.getElementValue(),e.innerText||``}get defaultTimeout(){return Fs(this.o.defaultTimeout)?this.o.defaultTimeout:F.defaultOptions.defaultTimeout}static atom(e){return Zc(e)}static make(e,t){return new this(e,t)}static isJoditAssigned(e){return e&&Ms(e.component)&&!e.component.isInDestruct}static get defaultOptions(){return F.defaultOptions}static configure(e){rl(sm.defaultOptions,e)}get createInside(){return new yd(()=>this.ed,this.o.createAttributes)}__setPlaceField(e,t){this.currentPlace||(this.currentPlace={},this.places=[this.currentPlace]),this.currentPlace[e]=t}
500get element(){return this.currentPlace.element}get editor(){return this.currentPlace.editor}set editor(e){this.__setPlaceField(`editor`,e)}get container(){return this.currentPlace.container}set container(e){this.__setPlaceField(`container`,e)}get workplace(){return this.currentPlace.workplace}get message(){return this.getMessageModule(this.workplace)}get statusbar(){return this.currentPlace.statusbar}get iframe(){return this.currentPlace.iframe}set iframe(e){this.__setPlaceField(`iframe`,e)}get history(){return this.currentPlace.history}get editorWindow(){return this.currentPlace.editorWindow}set editorWindow(e){this.__setPlaceField(`editorWindow`,e)}get ew(){return this.editorWindow}get editorDocument(){return this.currentPlace.editorWindow.document}get ed(){return this.editorDocument}get options(){return this.currentPlace.options}set options(e){this.__options=e,this.__setPlaceField(`options`,e)}get s(){return this.selection}get uploader(){return this.getInstance(`Uploader`,this.o.uploader)}get filebrowser(){let e=this,t=tl({defaultTimeout:e.defaultTimeout,uploader:e.o.uploader,language:e.o.language,license:e.o.license,theme:e.o.theme,shadowRoot:e.o.shadowRoot,defaultCallback(t){t.files&&t.files.length&&t.files.forEach((n,r)=>{let i=t.baseurl+n;t.isImages&&t.isImages[r]?e.s.insertImage(i,null,e.o.imageDefaultWidth):e.s.insertNode(e.createInside.fromHTML(`<a href='${i}' title='${i}'>${i}</a>`))})}},this.o.filebrowser);return e.getInstance(`FileBrowser`,t)}get mode(){return this.__mode}set mode(e){this.setMode(e)}getNativeEditorValue(){let e=this.e.fire(`beforeGetNativeEditorValue`);return j(e)?e:this.editor?this.editor.innerHTML:this.getElementValue()}setNativeEditorValue(e){let t={value:e};this.e.fire(`beforeSetNativeEditorValue`,t)||this.editor&&(this.editor.innerHTML=t.value)}get value(){return this.getEditorValue()}set value(e){this.setEditorValue(e),this.history.__processChanges()}synchronizeValues(){this.__imdSynchronizeValues()}__imdSynchronizeValues(){this.setEditorValue()}getEditorValue(e=!0,t){let n;if(n=this.e.fire(`beforeGetValueFromEditor`,t),n!==void 0)return n;n=this.getNativeEditorValue().replace(Fa(),``),e&&(n=n.replace(/<span[^>]+id="jodit-selection_marker_[^>]+><\/span>/g,``)),n===`<br>`&&(n=``);let r={value:n};return this.e.fire(`afterGetValueFromEditor`,r,t),r.value}setEditorValue(e){let t=this.e.fire(`beforeSetValueToEditor`,e);if(t===!1)return;if(j(t)&&(e=t),!this.editor){e!==void 0&&this.__setElementValue(e);return}if(!j(e)&&!Mo(e))throw cs(`value must be string`);!Mo(e)&&this.getNativeEditorValue()!==e&&this.setNativeEditorValue(e),this.e.fire(`postProcessSetEditorValue`);let n=this.getElementValue(),r=this.getEditorValue();if(!this.__isSilentChange&&n!==r&&this.__callChangeCount<10){this.__setElementValue(r),this.__callChangeCount+=1;try{this.history.__upTick(),this.e.fire(`change`,r,n),this.e.fire(this.history,`change`,r,n)}finally{this.__callChangeCount=0}}}updateElementValue(){this.__setElementValue(this.getEditorValue())}getElementValue(){return this.element.value===void 0?this.element.innerHTML:this.element.value}__setElementValue(e){if(!j(e))throw cs(`value must be string`);if(this.element!==this.container&&e!==this.getElementValue()){let t={value:e};hs(this.e.fire(`beforeSetElementValue`,t),()=>{this.element.value===void 0?this.element.innerHTML=t.value:this.element.value=t.value,this.e.fire(`afterSetElementValue`,t)})}}registerCommand(e,t,n){let r=e.toLowerCase(),i=this.commands.get(r);if(i===void 0&&(i=[],this.commands.set(r,i)),i.push(t),!k(t)){let i=this.o.commandToHotkeys[r]||this.o.commandToHotkeys[e]||t.hotkeys;i&&this.registerHotkeyToCommand(i,r,n?.stopPropagation)}return this}registerHotkeyToCommand(e,t,n=!0){let r=Nc(e).map(Nl).map(e=>e+`.hotkey`).join(` `);this.e.off(r).on(r,(e,r)=>(r&&(r.shouldStop=n??!0),this.execCommand(t)))}execCommand(e,t,n,...r){if(this.s.isFocused()||this.s.focus(),this.o.readonly&&!this.o.allowCommandsInReadOnly.includes(e))return;let i;if(e=e.toLowerCase(),i=this.e.fire(`beforeCommand${Jl(e)}`,t,n,...r),i!==!1&&(i=this.e.fire(`beforeCommand`,e,t,n,...r)),i!==!1&&(i=this.__execCustomCommands(e,t,n,...r)),i!==!1){this.s.focus();
500try{i=this.nativeExecCommand(e,t,n)}catch{}}return this.e.fire(`afterCommand`,e,t,n),this.__imdSynchronizeValues(),i}nativeExecCommand(e,t,n){this.__isSilentChange=!0;try{return this.ed.execCommand(e,t,n)}finally{this.__isSilentChange=!1}}__execCustomCommands(e,t,n,...r){e=e.toLowerCase();let i=this.commands.get(e);if(i!==void 0){let a;return i.forEach(i=>{let o;o=k(i)?i:i.exec;let s=o.call(this,e,t,n,...r);s!==void 0&&(a=s)}),a}}lock(e=`any`){return super.lock(e)?(this.__selectionLocked=this.s.save(),this.s.clear(),this.container.classList.add(`jodit_lock`),this.e.fire(`lock`,!0),!0):!1}unlock(){return super.unlock()?(this.container.classList.remove(`jodit_lock`),this.__selectionLocked&&this.s.restore(),this.e.fire(`lock`,!1),!0):!1}getMode(){return this.mode}isEditorMode(){return this.getRealMode()===1}getRealMode(){if(this.getMode()!==3)return this.getMode();let e=this.od.activeElement;return e&&(e===this.iframe||P.isOrContains(this.editor,e)||P.isOrContains(this.toolbar.container,e))?1:2}setMode(e){let t=this.getMode(),n={mode:parseInt(e.toString(),10)},r=[`jodit-wysiwyg_mode`,`jodit-source__mode`,`jodit_split_mode`];this.e.fire(`beforeSetMode`,n)!==!1&&(this.__mode=[2,1,3].includes(n.mode)?n.mode:1,this.o.saveModeInStorage&&this.storage.set(`jodit_default_mode`,this.mode),r.forEach(e=>{this.container.classList.remove(e)}),this.container.classList.add(r[this.mode-1]),t!==this.getMode()&&this.e.fire(`afterSetMode`))}toggleMode(){let e=this.getMode();[2,1,this.o.useSplitMode?3:9].includes(e+1)?e+=1:e=1,this.setMode(e)}setDisabled(e){this.o.disabled=e;let t=this.__wasReadOnly;this.setReadOnly(e||t),this.__wasReadOnly=t,this.editor&&(this.editor.setAttribute(`aria-disabled`,e.toString()),this.container.classList.toggle(`jodit_disabled`,e),this.e.fire(`disabled`,e))}getDisabled(){return this.o.disabled}setReadOnly(e){this.__wasReadOnly!==e&&(this.__wasReadOnly=e,this.o.readonly=e,e?this.editor&&this.editor.removeAttribute(`contenteditable`):this.editor&&this.editor.setAttribute(`contenteditable`,`true`),this.e&&this.e.fire(`readonly`,e))}getReadOnly(){return this.o.readonly}focus(){this.getMode()!==2&&this.s.focus()}get isFocused(){return this.s.isFocused()}beforeInitHook(){}afterInitHook(){}initOptions(e){this.options=tl(e||{},F.defaultOptions)}initOwners(){this.editorWindow=this.o.ownerWindow,this.ownerWindow=this.o.ownerWindow}constructor(e,t){super(t,!0),this.isJodit=!0,this.commands=new Map,this.__selectionLocked=null,this.__wasReadOnly=!1,this.editorIsActive=!1,this.__mode=1,this.__callChangeCount=0,this.__isSilentChange=!1,this.currentPlace={options:this.__options,container:this.__container},this.places=[],this.__elementToPlace=new Map;try{let t=Rc(e,this.options.shadowRoot||this.od);if(sm.isJoditAssigned(t))return t.component}catch(e){throw this.destruct(),e}this.setStatus(Oo.beforeInit),this.id=N(Rc(e,this.o.shadowRoot||this.od),`id`)||new Date().getTime().toString(),Sc[this.id]=this,this.attachEvents(t),this.e.on(this.ow,`resize`,()=>{this.e&&this.e.fire(`resize`)}),this.e.on(`prepareWYSIWYGEditor`,this.__prepareWYSIWYGEditor),this.selection=new im(this),hs(this.beforeInitHook(),()=>{if(this.isInDestruct)return;this.e.fire(`beforeInit`,this),Ec.__init(this),this.e.fire(`afterPluginSystemInit`,this),this.e.on(`changePlace`,()=>{this.setReadOnly(this.o.readonly),this.setDisabled(this.o.disabled)}),this.places.length=0;let n=this.addPlace(e,t);Sc[this.id]=this,hs(n,()=>{this.isInDestruct||(this.e&&this.e.fire(`afterInit`,this),hs(this.afterInitHook()),this.setStatus(Oo.ready),this.e.fire(`afterConstructor`,this))})})}addPlace(e,t){let n=Rc(e,this.o.shadowRoot||this.od);this.attachEvents(t),n.attributes&&Io(n.attributes).forEach(e=>{let n=e.name,r=e.value;F.defaultOptions[n]!==void 0&&(!t||t[n]===void 0)&&([`readonly`,`disabled`].indexOf(n)!==-1&&(r=r===``||r===`true`),/^[0-9]+(\.)?([0-9]+)?$/.test(r.toString())&&(r=Number(r)),this.options[n]=r)});let r=this.c.div(`jodit-container`);r.classList.add(`jodit`),r.classList.add(`jodit-container`),r.classList.add(`jodit_theme_${this.o.theme||`default`}`),fm(this.o.className,r),this.o.containerStyle&&M(r,this.o.containerStyle);let{styleValues:i}=this.o;
500Object.keys(i).forEach(e=>{let t=Ko(e);r.style.setProperty(`--jd-${t}`,i[e])}),r.setAttribute(`contenteditable`,`false`);let a=null;this.o.inline&&([`TEXTAREA`,`INPUT`].indexOf(n.nodeName)===-1&&(r=n,n.setAttribute(lm,n.className.toString()),a=r.innerHTML,r.innerHTML=``),r.classList.add(`jodit_inline`),r.classList.add(`jodit-container`)),n!==r&&(n.style.display&&n.setAttribute(cm,n.style.display),n.style.display=`none`);let o=`workplace-slot`,s=this.c.div(this.getFullElName(o,`above`),um);s.setAttribute(`data-jodit-above-toolbar`,``),P.appendChildFirst(r,s);let c=this.c.div(this.getFullElName(o,`top`),um);r.appendChild(c);let l=this.c.div(this.getFullElName(o,`center`),um),u=this.c.div(`jodit-workplace`,um),d=this.c.div(this.getFullElName(o,`left`),um),f=this.c.div(this.getFullElName(o,`right`),um);l.appendChild(d),l.appendChild(u),l.appendChild(f),r.appendChild(l);let p=this.c.div(this.getFullElName(o,`bottom`),um);r.appendChild(p),n.parentNode&&n!==r&&n.parentNode.insertBefore(r,n),Object.defineProperty(n,"component",{enumerable:!1,configurable:!0,value:this});let m=this.c.div(`jodit-wysiwyg`,{contenteditable:!0,"aria-disabled":!1,tabindex:this.o.tabIndex});u.appendChild(m);let h={editor:m,element:n,container:r,workplace:u,slots:{above:s,top:c,bottom:p,center:l,left:d,right:f},statusbar:new Wf(this,r),options:this.isReady?tl(t||{},F.defaultOptions):this.options,history:new Hf(this),editorWindow:this.ow};this.__elementToPlace.set(m,h),this.setCurrentPlace(h),this.places.push(h),this.setNativeEditorValue(this.getElementValue());let g=this.__initEditor(a),_=this.options;return hs(g,()=>{_.enableDragAndDropFileToEditor&&_.uploader&&(_.uploader.url||_.uploader.insertImageAsBase64URI)?this.uploader.bind(this.editor):_.enableDragAndDropFileToEditor||this.e.on(m,`drop`,e=>{e.dataTransfer?.files?.length&&e.preventDefault()}),this.__elementToPlace.get(this.editor)||this.__elementToPlace.set(this.editor,h),this.e.fire(`afterAddPlace`,h)})}addDisclaimer(e){this.workplace.appendChild(e)}setCurrentPlace(e){this.currentPlace!==e&&(this.isEditorMode()||this.setMode(1),this.currentPlace=e,this.buildToolbar(),this.isReady&&this.e.fire(`changePlace`,e))}__initEditor(e){return hs(this.__createEditor(),()=>{if(this.isInDestruct)return;if(this.element!==this.container){let e=this.getElementValue();e!==this.getEditorValue()&&this.setEditorValue(e)}else e!=null&&this.setEditorValue(e);let t=this.o.defaultMode;if(this.o.saveModeInStorage){let e=this.storage.get(`jodit_default_mode`);typeof e==`string`&&(t=parseInt(e,10))}this.setMode(t),this.o.readonly&&(this.__wasReadOnly=!1,this.setReadOnly(!0)),this.o.disabled&&this.setDisabled(!0);try{this.ed.execCommand(`defaultParagraphSeparator`,!1,this.o.enter.toLowerCase())}catch{}})}__createEditor(){let e=this.editor,t=this.e.fire(`createEditor`,this);return hs(t,()=>{this.isInDestruct||((t===!1||ds(t))&&P.safeRemove(e),fm(this.o.editorClassName,this.editor),this.o.style&&M(this.editor,this.o.style),this.e.on(`synchro`,()=>{this.setEditorValue()}).on(`focus`,()=>{this.editorIsActive=!0}).on(`blur`,()=>this.editorIsActive=!1),this.__prepareWYSIWYGEditor(),this.o.triggerChangeEvent&&this.e.on(`change`,this.async.debounce(()=>{this.e&&this.e.fire(this.element,`change`)},this.defaultTimeout)))})}__prepareWYSIWYGEditor(){let{editor:e}=this;if(this.o.direction){let e=this.o.direction.toLowerCase()===`rtl`?`rtl`:`ltr`;this.editor.style.direction=e,this.editor.setAttribute(`dir`,e),this.container.style.direction=e,this.container.setAttribute(`dir`,e),this.toolbar.setDirection(e)}this.e.on(e,`mousedown touchstart focus`,()=>{let t=this.__elementToPlace.get(e);t&&this.setCurrentPlace(t)}).on(e,`compositionend`,this.synchronizeValues).on(e,`selectionchange selectionstart keydown keyup input keypress dblclick mousedown mouseup click copy cut dragstart drop dragover paste resize touchstart touchend focus blur`,e=>{if(!(this.o.readonly||this.__isSilentChange)&&!(e instanceof this.ew.KeyboardEvent&&e.isComposing)&&this.e&&this.e.fire){if(this.e.fire(e.type,e)===!1)return!1;this.synchronizeValues()}}).on(this.ow,`mouseup`,t=>{if(this.o.readonly||this.__isSilentChange)return;let n=t.target;n&&Fs(n.nodeType)&&e.contains(n)||!this.s.isInsideArea||(this.e.fire(`changeSelection`),this.synchronizeValues())})}fetch(e,t){let n=new hu({url:e,...t},this.o.defaultAjaxOptions),r=()=>{this.e.off(`beforeDestruct`,r),this.progressbar.progress(100).hide(),n.destruct()};this.e.one(`beforeDestruct`,r),this.progressbar.show().progress(30);let i=n.send();return i.finally(r).catch(()=>null),i}destruct(){var e,t;if(this.isInDestruct)return;this.setStatus(Oo.beforeDestruct),this.__elementToPlace.clear(),(e=Rs(this,`storage`))==null||e.clear(),(t=Rs(this,`buffer`))==null||t.clear(),this.commands.clear(),this.__selectionLocked=null,this.e.off(this.ow,`resize`),this.e.off(this.ow),this.e.off(this.od),this.e.off(this.od.body);let n=this.editor?this.getEditorValue():``;
500this.places.forEach(({container:e,workplace:t,statusbar:r,element:i,iframe:a,editor:o,history:s})=>{if(i){if(i!==e)if(i.hasAttribute(cm)){let e=N(i,cm);e&&(i.style.display=e,i.removeAttribute(cm))}else i.style.display=``;else i.hasAttribute(lm)&&(i.className=N(i,lm)||``,i.removeAttribute(lm));i.hasAttribute(`style`)&&!N(i,`style`)&&i.removeAttribute(`style`),r.destruct(),this.e.off(e),this.e.off(i),this.e.off(o),P.safeRemove(t),P.safeRemove(o),e!==i&&P.safeRemove(e),Object.defineProperty(i,"component",{enumerable:!1,configurable:!0,value:null}),P.safeRemove(a),e===i&&(i.innerHTML=n),s.destruct()}}),this.places.length=0,this.currentPlace={},delete Sc[this.id],super.destruct()}};dm.fatMode=!0,dm.plugins=Ec,dm.modules=Dc,dm.ns=Dc,dm.decorators={},dm.constants=Oa,dm.instances=Sc,dm.lang=wo,dm.core={Plugin:Lf},om([zs],dm.prototype,`createInside`,null),om([zs],dm.prototype,`message`,null),om([zs],dm.prototype,`s`,null),om([zs],dm.prototype,`uploader`,null),om([zs],dm.prototype,`filebrowser`,null),om([nu()],dm.prototype,`synchronizeValues`,null),om([I(`:internalChange`)],dm.prototype,`updateElementValue`,null),om([A],dm.prototype,`__prepareWYSIWYGEditor`,null),dm=sm=om([ru(Jd)],dm);function fm(e,t){e&&e.split(/\s+/).forEach(e=>t.classList.add(e))}var pm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1395 736q0 13-10 23l-466 466q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l393 393 393-393q10-10 23-10t23 10l50 50q10 10 10 23z"/> </svg> `,mm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1203 544q0 13-10 23l-393 393 393 393q10 10 10 23t-10 23l-50 50q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l466-466q10-10 23-10t23 10l50 50q10 10 10 23z"/> </svg> `,hm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1171 960q0 13-10 23l-466 466q-10 10-23 10t-23-10l-50-50q-10-10-10-23t10-23l393-393-393-393q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l466 466q10 10 10 23z"/> </svg> `,gm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1395 1184q0 13-10 23l-50 50q-10 10-23 10t-23-10l-393-393-393 393q-10 10-23 10t-23-10l-50-50q-10-10-10-23t10-23l466-466q10-10 23-10t23 10l466 466q10 10 10 23z"/> </svg> `,_m=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M704 1376v-704q0-14-9-23t-23-9h-64q-14 0-23 9t-9 23v704q0 14 9 23t23 9h64q14 0 23-9t9-23zm256 0v-704q0-14-9-23t-23-9h-64q-14 0-23 9t-9 23v704q0 14 9 23t23 9h64q14 0 23-9t9-23zm256 0v-704q0-14-9-23t-23-9h-64q-14 0-23 9t-9 23v704q0 14 9 23t23 9h64q14 0 23-9t9-23zm-544-992h448l-48-117q-7-9-17-11h-317q-10 2-17 11zm928 32v64q0 14-9 23t-23 9h-96v948q0 83-47 143.5t-113 60.5h-832q-66 0-113-58.5t-47-141.5v-952h-96q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h309l70-167q15-37 54-63t79-26h320q40 0 79 26t54 63l70 167h309q14 0 23 9t9 23z"/> </svg> `,vm=`<svg viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"> <g stroke="none" stroke-width="1"> <path d="M14,1.4 L12.6,0 L7,5.6 L1.4,0 L0,1.4 L5.6,7 L0,12.6 L1.4,14 L7,8.4 L12.6,14 L14,12.6 L8.4,7 L14,1.4 Z"/> </g> </svg> `,ym=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1792 1344v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm-384-384v128q0 26-19 45t-45 19h-896q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h896q26 0 45 19t19 45zm256-384v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45zm-384-384v128q0 26-19 45t-45 19h-640q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h640q26 0 45 19t19 45z"/> </svg> `,bm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1472 930v318q0 119-84.5 203.5t-203.5 84.5h-832q-119 0-203.5-84.5t-84.5-203.5v-832q0-119 84.5-203.5t203.5-84.5h832q63 0 117 25 15 7 18 23 3 17-9 29l-49 49q-10 10-23 10-3 0-9-2-23-6-45-6h-832q-66 0-113 47t-47 113v832q0 66 47 113t113 47h832q66 0 113-47t47-113v-254q0-13 9-22l64-64q10-10 23-10 6 0 12 3 20 8 20 29zm231-489l-814 814q-24 24-57 24t-57-24l-430-430q-24-24-24-57t24-57l110-110q24-24 57-24t57 24l263 263 647-647q24-24 57-24t57 24l110 110q24 24 24 57t-24 57z"/> </svg> `,xm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 10 10"> <path d="M.941 4.523a.75.75 0 1 1 1.06-1.06l3.006 3.005 3.005-3.005a.75.75 0 1 1 1.06 1.06l-3.549 3.55a.75.75 0 0 1-1.168-.136L.941 4.523z"/> </svg> `,Sm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 24 24" > <circle cx="12" cy="12" r="2.2"/> <circle cx="12" cy="5" r="2.2"/> <circle cx="12" cy="19" r="2.2"/> </svg> `,Cm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1664 960q-152-236-381-353 61 104 61 225 0 185-131.5 316.5t-316.5 131.5-316.5-131.5-131.5-316.5q0-121 61-225-229 11
5007-381 353 133 205 333.5 326.5t434.5 121.5 434.5-121.5 333.5-326.5zm-720-384q0-20-14-34t-34-14q-125 0-214.5 89.5t-89.5 214.5q0 20 14 34t34 14 34-14 14-34q0-86 61-147t147-61q20 0 34-14t14-34zm848 384q0 34-20 69-140 230-376.5 368.5t-499.5 138.5-499.5-139-376.5-368q-20-35-20-69t20-69q140-229 376.5-368t499.5-139 499.5 139 376.5 368q20 35 20 69z"/> </svg> `,wm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1152 512v-472q22 14 36 28l408 408q14 14 28 36h-472zm-128 32q0 40 28 68t68 28h544v1056q0 40-28 68t-68 28h-1344q-40 0-68-28t-28-68v-1600q0-40 28-68t68-28h800v544z"/> </svg> `,Tm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1728 608v704q0 92-66 158t-158 66h-1216q-92 0-158-66t-66-158v-960q0-92 66-158t158-66h320q92 0 158 66t66 158v32h672q92 0 158 66t66 158z"/> </svg> `,Em=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1152 1376v-160q0-14-9-23t-23-9h-96v-512q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v160q0 14 9 23t23 9h96v320h-96q-14 0-23 9t-9 23v160q0 14 9 23t23 9h448q14 0 23-9t9-23zm-128-896v-160q0-14-9-23t-23-9h-192q-14 0-23 9t-9 23v160q0 14 9 23t23 9h192q14 0 23-9t9-23zm640 416q0 209-103 385.5t-279.5 279.5-385.5 103-385.5-103-279.5-279.5-103-385.5 103-385.5 279.5-279.5 385.5-103 385.5 103 279.5 279.5 103 385.5z"/> </svg> `,Dm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1792 1344v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm-384-384v128q0 26-19 45t-45 19h-1280q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1280q26 0 45 19t19 45zm256-384v128q0 26-19 45t-45 19h-1536q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1536q26 0 45 19t19 45zm-384-384v128q0 26-19 45t-45 19h-1152q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1152q26 0 45 19t19 45z"/> </svg> `,Om=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"><path d="M640 768h512v-192q0-106-75-181t-181-75-181 75-75 181v192zm832 96v576q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-576q0-40 28-68t68-28h32v-192q0-184 132-316t316-132 316 132 132 316v192h32q40 0 68 28t28 68z"/></svg> `,km=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 32 32"> <path d="M27 4l-15 15-7-7-5 5 12 12 20-20z"/> </svg> `,Am=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"><path d="M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z"/></svg> `,jm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"><path d="M1600 736v192q0 40-28 68t-68 28h-416v416q0 40-28 68t-68 28h-192q-40 0-68-28t-28-68v-416h-416q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h416v-416q0-40 28-68t68-28h192q40 0 68 28t28 68v416h416q40 0 68 28t28 68z"/></svg> `,Mm=`<svg viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg"> <path d="M5.9814 11.8049C5.59087 11.4144 5.59087 10.7812 5.9814 10.3907L10.224 6.14806C10.6146 5.75754 11.2477 5.75754 11.6383 6.14806C12.0288 6.53859 12.0288 7.17175 11.6383 7.56228L7.39561 11.8049C7.00509 12.1954 6.37192 12.1954 5.9814 11.8049Z"/> <path d="M0.707107 12.0208C0.316582 11.6303 0.316582 10.9971 0.707107 10.6066L10.6066 0.707121C10.9971 0.316597 11.6303 0.316596 12.0208 0.707121C12.4113 1.09764 12.4113 1.73081 12.0208 2.12133L2.12132 12.0208C1.7308 12.4114 1.09763 12.4114 0.707107 12.0208Z"/> </svg> `,Nm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1792 1344v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1280q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1280q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1536q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1536q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1152q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1152q26 0 45 19t19 45z"/> </svg> `,Pm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M512 1536h768v-384h-768v384zm896 0h128v-896q0-14-10-38.5t-20-34.5l-281-281q-10-10-34-20t-39-10v416q0 40-28 68t-68 28h-576q-40 0-68-28t-28-68v-416h-128v1280h128v-416q0-40 28-68t68-28h832q40 0 68 28t28 68v416zm-384-928v-320q0-13-9.5-22.5t-22.5-9.5h-192q-13 0-22.5 9.5t-9.5 22.5v320q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5-9.5t9.5-22.5zm640 32v928q0 40-28 68t-68 28h-1344q-40 0-68-28t-28-68v-1344q0-40 28-68t68-28h928q40 0 88 20t76 48l280 280q28 28 48 76t20 88z"/> </svg> `,Fm=`<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path stroke="null" d="m42.276011,26.302547c0.098397,-0.76605 0.172194,-1.54407 0.172194,-2.33406s-0.073797,-1.56801 -0.172194,-2.33406l5.202718,-3.961917c0.467384,-0.359086 0.602679,-1.005441 0.29519,-1.532101l-4.919828,-8.29489c-0.307489,-0.51469 -0.947067,-0.730142 -1.500548,-0.51469l-6.125186,2.405877c-1.266856,-0.945594 -2.656707,-1.747553 -4.157255,-2.357999l-0.922468,-6.343855c-0.110696,-0.562568 -0.614979,-1.005441 -1.229957,-1.005441l-9.839656,0c-0.614979,0 -1.119261,0.442873 -1.217657,1.005441l-0.922468,6.343855c-1.500548,0.610446 -2.890399,1.400436 -4.157255,2.357999l-6.125186,-2.405877c-0.553481,-0.203482 -1.193058,0 -1.500548,0.51469l-4.919828,8.29489c-0.307489,0.51469 -0.172194,1.161045 0.29519,1.532101l5.190419,3.961917c-0.098397,0.76605 -0.172194,1.54407 -0.172194,2.33406s0.073797,1.56801 0.172194,2.33406l-5.190419,3.961917c-0.467384,0.359086 -0.602679,1.005441 -0.29519,1.532101l4.919828,8.29489c0.307489,0.51469 0.947067,0.730142 1.500548,0.51469l6.125186,-2.405877c1.266856,0.945594 2.656707,1.747553 4.157255,2.357999l0.922468,6.343855c0.098397,0.562568 0.602679,1.005441 1.217657,1.005441l9.839656,0c0.614979,0 1.119261,-0.442873 1.217657,-1.005441l0.922468,-6.343855c1.500548,-0.610446 2.890399,-1.400436 4.157255,-2.357999l6.125186,2.405877c0.553481,0.203482 1.193058,0 1.500548,-0.51469l4.919828,-8.29489c0.307489,-0.51469 0.172194,-1.161045 -0.29519,-1.532101l-5.190419,-3.961917zm-18.277162,6.044617c-4.759934,0 -8.609699,-3.746465 -8.609699,-8.378677s3.849766,-8.378677 8.609699,-8.378677s8.609699,3.746465 8.609699,8.378677s-3.849766,8.378677 -8.609699,8.378677z"/> </svg> `,Im=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1728 576v256q0 26-19 45t-45 19h-64q-26 0-45-19t-19-45v-256q0-106-75-181t-181-75-181 75-75 181v192h96q40 0 68 28t28 68v576q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-576q0-40 28-68t68-28h672v-192q0-185 131.5-316.5t316.5-131.5 316.5 131.5 131.5 316.5z"/> </svg> `,Lm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1639 1056q0 5-1 7-64 268-268 434.5t-478 166.5q-146 0-282.5-55t-243.5-157l-129 129q-19 19-45 19t-45-19-19-45v-448q0-26 19-45t45-19h448q26 0 45 19t19 45-19 45l-137 137q71 66 161 102t187 36q134 0 250-65t186-179q11-17 53-117 8-23 30-23h192q13 0 22.5 9.5t9.5 22.5zm25-800v448q0 26-19 45t-45 19h-448q-26 0-45-19t-19-45 19-45l138-138q-148-137-349-137-134 0-250 65t-186 179q-11 17-53 117-8 23-30 23h-199q-13 0-22.5-9.5t-9.5-22.5v-7q65-268 270-434.5t480-166.5q146 0 284 55.5t245 156.5l130-129q19-19 45-19t45 19 19 45z"/> </svg> `,Rm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1344 1472q0-26-19-45t-45-19-45 19-19 45 19 45 45 19 45-19 19-45zm256 0q0-26-19-45t-45-19-45 19-19 45 19 45 45 19 45-19 19-45zm128-224v320q0 40-28 68t-68 28h-1472q-40 0-68-28t-28-68v-320q0-40 28-68t68-28h427q21 56 70.5 92t110.5 36h256q61 0 110.5-36t70.5-92h427q40 0 68 28t28 68zm-325-648q-17 40-59 40h-256v448q0 26-19 45t-45 19h-256q-26 0-45-19t-19-45v-448h-256q
500-42 0-59-40-17-39 14-69l448-448q18-19 45-19t45 19l448 448q31 30 14 69z"/> </svg> `,zm=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1216 320q0 26-19 45t-45 19h-128v1024h128q26 0 45 19t19 45-19 45l-256 256q-19 19-45 19t-45-19l-256-256q-19-19-19-45t19-45 45-19h128v-1024h-128q-26 0-45-19t-19-45 19-45l256-256q19-19 45-19t45 19l256 256q19 19 19 45z"/> </svg> `,Bm=s({angle_down:()=>pm,angle_left:()=>mm,angle_right:()=>hm,angle_up:()=>gm,bin:()=>_m,cancel:()=>vm,center:()=>ym,check:()=>bm,chevron:()=>xm,dots:()=>Sm,eye:()=>Cm,file:()=>wm,folder:()=>Tm,info_circle:()=>Em,left:()=>Dm,lock:()=>Om,ok:()=>km,pencil:()=>Am,plus:()=>jm,resize_handler:()=>Mm,right:()=>Nm,save:()=>Pm,settings:()=>Fm,unlock:()=>Im,update:()=>Lm,upload:()=>Rm,valign:()=>zm}),Vm={"Type something":`إبدأ Ù٠اÙÙØªØ§Ø¨Ø©...`,"About Jodit":`ØÙÙ Ø¬ÙØ¯Ùت`,"Jodit Editor":`Ù
ØØ±Ø± Ø¬ÙØ¯Ùت`,"Jodit User's Guide":`دÙÙÙ Ù
ستخدÙ
Ø¬ÙØ¯Ùت`,"contains detailed help for using":`ÙØØªÙ٠عÙÙ Ù
ساعدة Ù
ÙØµÙØ© ÙÙØ§Ø³ØªØ®Ø¯Ø§Ù
`,"For information about the license, please go to our website:":`ÙÙØØµÙ٠عÙÙ Ù
عÙÙÙ
ات ØÙÙ Ø§ÙØªØ±Ø®ÙØµØ ÙØ±Ø¬Ù Ø§ÙØ°Ùاب ÙÙ
ÙÙØ¹Ùا:`,"Buy full version":`شراء اÙÙØ³Ø®Ø© اÙÙØ§Ù
ÙØ©`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`ØÙÙÙ Ø§ÙØ·Ø¨Ø¹ ÙØ§ÙÙØ´Ø± © XDSoft.net - Chupurnov Valeriy. ÙÙ Ø§ÙØÙÙÙ Ù
ØÙÙØ¸Ø©.`,Anchor:`Ù
ÙØ±Ùساة`,"Open in new tab":`ÙØªØ ÙÙ ÙØ§Ùذة Ø¬Ø¯ÙØ¯Ø©`,"Open in fullsize":`ÙØªØ اÙÙ
ØØ±Ø± ÙÙ Ø§ÙØØ¬Ù
اÙÙØ§Ù
Ù`,"Clear Formatting":`Ù
Ø³Ø Ø§ÙØªÙسÙÙ`,"Fill color or set the text color":`Ù
ÙØ¡ اÙÙÙ٠أ٠تعÙÙÙ ÙÙ٠اÙÙØµ`,Redo:`إعادة`,Undo:`تراجع`,Bold:`Ø¹Ø±ÙØ¶`,Italic:`Ù
ائÙ`,"Insert Unordered List":`إدراج ÙØ§Ø¦Ù
Ø© ØºÙØ± Ù
رتبة`,"Insert Ordered List":`إدراج ÙØ§Ø¦Ù
Ø© Ù
رتبة`,"Align Center":`Ù
ØØ§Ø°Ø§Ø© ÙÙÙØ³Ø·`,"Align Justify":`Ù
ØØ§Ø°Ø§Ø© Ù
ثبتة`,"Align Left":`Ù
ØØ§Ø°Ø§Ø© ÙÙÙØ³Ø§Ø±`,"Align Right":`Ù
ØØ§Ø°Ø§Ø© ÙÙÙÙ
ÙÙ`,"Insert Horizontal Line":`إدراج خط Ø£ÙÙÙ`,"Insert Image":`إدراج ØµÙØ±Ø©`,"Insert file":`ادخا٠اÙÙ
ÙÙ`,"Insert youtube/vimeo video":`إدراج ÙÙØ¯ÙÙ ÙÙØªÙÙØ¨/ÙÙÙ
ÙÙ `,"Insert link":`إدراج رابط`,"Font size":`ØØ¬Ù
Ø§ÙØ®Ø·`,"Font family":`ÙÙØ¹ Ø§ÙØ®Ø·`,"Insert format block":`إدراج ÙØªÙØ© ØªÙØ³ÙÙ`,Normal:`عادÙ`,"Heading 1":`عÙÙØ§Ù 1`,"Heading 2":`عÙÙØ§Ù 2`,"Heading 3":`عÙÙØ§Ù 3`,"Heading 4":`عÙÙØ§Ù 4`,Quote:`Ø¥ÙØªØ¨Ø§Ø³`,Code:`ÙÙØ¯`,Insert:`إدراج`,"Insert table":`إدراج جدÙÙ`,"Decrease Indent":`تÙÙÙ٠اÙÙ
Ø³Ø§ÙØ© Ø§ÙØ¨Ø§Ø¯Ø¦Ø©`,"Increase Indent":`Ø²ÙØ§Ø¯Ø© اÙÙ
Ø³Ø§ÙØ© Ø§ÙØ¨Ø§Ø¯Ø¦Ø©`,"Select Special Character":`ØªØØ¯Ùد Ø£ØØ±Ù خاصة`,"Insert Special Character":`إدراج ØØ±Ù خاص`,"Paint format":`ØªÙØ³ÙÙ Ø§ÙØ±Ø³Ù
`,"Change mode":`تغÙÙØ± اÙÙØ¶Ø¹`,Margins:`ÙÙØ§Ù
Ø´`,top:`أعÙÙ`,right:`ÙÙ
ÙÙ`,bottom:`أسÙÙ`,left:`ÙØ³Ø§Ø±`,Styles:`Ø§ÙØ£ÙÙ
اط`,Classes:`Ø§ÙØ·Ø¨Ùات`,Align:`Ù
ØØ§Ø°Ø§Ø©`,Right:`اÙÙÙ
ÙÙ`,Center:`اÙÙØ³Ø·`,Left:`اÙÙØ³Ø§Ø±`,"--Not Set--":`--ØºÙØ± Ù
Ø¶Ø¨ÙØ·--`,Src:`Src`,Title:`Ø§ÙØ¹ÙÙØ§Ù`,Alternative:`Ø§ÙØ¹ÙÙØ§Ù Ø§ÙØ¨Ø¯ÙÙ`,Link:`Ø§ÙØ±Ø§Ø¨Ø·`,"Open link in new tab":`Ø§ÙØªØ Ø§ÙØ±Ø§Ø¨Ø· ÙÙ ÙØ§Ùذة Ø¬Ø¯ÙØ¯Ø©`,Image:`Ø§ÙØµÙرة`,file:`Ù
ÙÙ`,Advanced:`Ù
ØªÙØ¯Ù
`,"Image properties":`خصائص Ø§ÙØµÙرة`,Cancel:`Ø¥ÙØºØ§Ø¡`,Ok:`ØØ³Ùا`,"File Browser":`Ù
ØªØµÙØ اÙÙ
ÙÙØ§Øª`,"Error on load list":`ØØ¯Ø« خطأ Ù٠تØÙ
Ù٠اÙÙØ§Ø¦Ù
Ø© `,"Error on load folders":`ØØ¯Ø« خطأ Ù٠تØÙ
Ù٠اÙÙ
Ø¬ÙØ¯Ø§Øª`,"Are you sure?":`ÙÙ Ø£ÙØª ÙØ§Ø«ÙØ`,"Enter Directory name":`أدخ٠اسÙ
اÙÙ
Ø¬ÙØ¯`,"Create directory":`Ø¥ÙØ´Ø§Ø¡ Ù
Ø¬ÙØ¯`,"type name":`Ø£ÙØªØ¨ إسÙ
`,"Drop image":`Ø¥Ø³ÙØ§Ø· ØµÙØ±Ø©`,"Drop file":`Ø¥Ø³ÙØ§Ø· اÙÙ
ÙÙ`,"or click":`أ٠أÙÙØ±`,"Alternative text":`اÙÙØµ Ø§ÙØ¨Ø¯ÙÙ`,Upload:`Ø±ÙØ¹`,Browse:`ØªØµÙØ`,Background:`Ø§ÙØ®ÙÙÙØ©`,Text:`ÙØµ`,Top:`أعÙÙ`,Middle:`اÙÙØ³Ø·`,Bottom:`Ø§ÙØ£Ø³ÙÙ`,"Insert column before":`إدراج عÙ
ÙØ¯ ÙØ¨Ù`,"Insert column after":`إدراج عÙ
ÙØ¯ بعد`,"Insert row above":`إدراج ص٠أعÙÙ`,"Insert row below":`إدراج ص٠أسÙÙ`,"Delete table":`ØØ°Ù Ø§ÙØ¬Ø¯ÙÙ`,"Delete row":`ØØ°Ù Ø§ÙØµÙ`,"Delete column":`ØØ°Ù Ø§ÙØ¹Ù
ÙØ¯`,"Empty cell":`Ø®ÙÙØ© ÙØ§Ø±ØºØ©`,"Chars: %d":`%d ØØ±Ù`,"Words: %d":`%d ÙÙØ§Ù
`,"Strike through":`اضرب Ù
Ù Ø®ÙØ§Ù`,Underline:`Ø£ÙØ¯`,superscript:`ØØ±Ù ÙÙÙÙ`,subscript:`Ù
Ø®Ø·ÙØ·Ø©`,"Cut selection":`ÙØ·Ø¹ Ø§ÙØ§Ø®ØªÙار`,"Select all":`اختر اÙÙÙ`,Break:`Ø§Ø³ØªØ±Ø§ØØ©`,"Search for":`Ø§ÙØ¨ØØ« عÙ`,"Replace with":`استبد٠ب`,Replace:`Ù
ØÙ`,Paste:`Ù
عجÙÙ`,"Choose Content to Paste":`اختر Ù
ØØªÙÙ ÙÙØµÙ`,source:`Ù
صدر`,bold:`Ø¨Ø§ÙØ®Ø· Ø§ÙØ¹Ø±Ùض`,italic:`Ù
ائÙ`,brush:`شغÙ`,link:`ØµÙØ©`,undo:`Ø¥ÙØºØ§Ø¡`,redo:`ÙØ±Ø±`,table:`طاÙÙØ©`,image:`ØµÙØ±Ø©`,eraser:`ÙØ¸ÙÙ`,paragraph:`ÙÙØ±Ø©`,fontsize:`ØØ¬Ù
Ø§ÙØ®Ø·`,video:`ÙÙØ¯ÙÙ`,font:`Ø§ÙØ®Ø·`,about:`ØÙ٠اÙÙ
ØØ±Ø±`,print:`طباعة`,underline:`Ø£ÙØ¯`,strikethrough:`شطب`,indent:`اÙÙ
Ø³Ø§ÙØ© Ø§ÙØ¨Ø§Ø¯Ø¦Ø©`,outdent:`ÙØªÙØ¡`,fullsize:`Ù
ÙØ¡ Ø§ÙØ´Ø§Ø´Ø©`,shrink:`Ø§ÙØØ¬Ù
Ø§ÙØªÙÙÙØ¯Ù`,hr:`Ø§ÙØ®Ø·`,ul:`ÙØ§Ø¦Ù
Ø©`,ol:`ÙØ§Ø¦Ù
Ø© Ù
رÙÙ
Ø©`,cut:`ÙØ·Ø¹`,selectall:`اختر اÙÙÙ`,"Embed code":`ÙØ§ÙÙÙ`,"Open link":`ÙØªØ Ø§ÙØ±Ø§Ø¨Ø·`,"Edit link":`تعدÙÙ Ø§ÙØ±Ø§Ø¨Ø·`,"No follow":`سÙ
Ø© Nofollow`,Unlink:`Ø¥Ø²Ø§ÙØ© Ø§ÙØ±Ø§Ø¨Ø·`,Update:`ØªØØ¯ÙØ«`,pencil:`ÙØªØØ±Ùر`,Eye:`Ù
راجعة`," URL":`URL`,Edit:`ØªØØ±Ùر`,"Horizontal align":`Ù
ØØ§Ø°Ø§Ø© Ø£ÙÙÙØ©`,Filter:`ÙÙØªØ±`,"Sort by changed":`ع٠طرÙÙ Ø§ÙØªØºÙÙØ±`,"Sort by name":`Ø¨Ø§ÙØ§Ø³Ù
`,"Sort by size":`ØØ³Ø¨ Ø§ÙØØ¬Ù
`,"Add folder":`Ø¥Ø¶Ø§ÙØ© Ù
Ø¬ÙØ¯`,Reset:`إعادة`,Save:`Ø§ØØªÙظ`,"Save as ...":`ØÙظ باسÙ
`,Resize:`تغÙÙØ± Ø§ÙØØ¬Ù
`,Crop:`ØØ¬Ù
اÙÙØ·Ø¹`,Width:`عرض`,Height:`Ø§Ø±ØªÙØ§Ø¹`,"Keep Aspect Ratio":`ØØ§Ùظ عÙ٠اÙÙØ³Ø¨`,Yes:`Ø£Ù`,No:`ÙØ§`,Remove:`ØØ°Ù`,Select:`تÙ
ÙØ²`,"Select %s":`تÙ
ÙØ² %s`,"Vertical align":`Ù
ØØ§Ø°Ø§Ø© عÙ
ÙØ¯ÙØ©`,Split:`Ø§ÙØ´ÙØ Ù
زÙ`,Merge:`Ø§Ø°ÙØ¨`,"Add column":`Ø£Ø¶Ù Ø§ÙØ¹Ù
ÙØ¯`,"Add row":`اض٠سطر`,"License: %s":`رخصة %s`,Delete:`ØØ°Ù`,"Split vertical":`اÙÙØ³Ø§Ù
عÙ
ÙØ¯Ù`,"Split horizontal":`ØªÙØ³ÙÙ
Ø£ÙÙÙ`,Border:`Ø§ÙØØ¯ÙØ¯`,"Your code is similar to HTML. Keep as HTML?":`ÙØ´Ø¨Ù اÙÙÙØ¯ Ø§ÙØ®Ø§Øµ ب٠HTML. تبÙÙ ÙÙ
ا HTMLØ`,"Paste as HTML":`Ø§ÙØµÙ Ù HTML`,Keep:`Ø§ØØªÙظ`,"Insert as Text":`إدراج ÙÙØµ`,"Insert only Text":`إدراج اÙÙØµ ÙÙØ·`,"You can only edit your own images. Download this image on the host?":`ÙÙ
ÙÙÙ ÙÙØ· ØªØØ±Ùر ØµÙØ±Ù Ø§ÙØ®Ø§ØµØ©. تØÙ
ÙÙ ÙØ°Ù Ø§ÙØµÙرة عÙ٠اÙÙ
ضÙÙØ`,"The image has been successfully uploaded to the host!":`تÙ
تØÙ
ÙÙ Ø§ÙØµÙرة Ø¨ÙØ¬Ø§Ø عÙÙ Ø§ÙØ®Ø§Ø¯Ù
!`,palette:`ÙÙØØ©`,"There are no files":`ÙØ§ ØªÙØ¬Ø¯ Ù
ÙÙØ§Øª ÙÙ ÙØ°Ø§ Ø§ÙØ¯ÙÙÙ.`,Rename:`إعادة تسÙ
ÙØ©`,"Enter new name":`أدخ٠اسÙ
Ø¬Ø¯ÙØ¯`,preview:`Ù
عاÙÙØ©`,download:`تØÙ
ÙÙ`,"Paste from clipboard":`ÙØµÙ Ù
Ù Ø§ÙØØ§ÙØ¸Ø©`,"Your browser doesn't support direct access to the clipboard.":`Ù
ØªØµÙØÙ ÙØ§ ÙØ¯Ø¹Ù
Ø¥Ù
ÙØ§ÙÙØ© اÙÙØµÙ٠اÙÙ
باشر Ø¥ÙÙ Ø§ÙØØ§ÙØ¸Ø©.`,"Copy selection":`ÙØ³Ø® Ø§ÙØªØØ¯Ùد`,copy:`ÙØ³Ø®`,"Border radius":`دائرة ÙØµÙ ÙØ·Ø±Ùا Ø§ÙØØ¯ÙØ¯`,"Show all":`عرض ÙÙ`,Apply:`تطبÙÙ`,"Please fill out this field":`ÙØ±Ø¬Ù Ù
ÙØ¡ ÙØ°Ø§ اÙÙ
جاÙ`,"Please enter a web address":`ÙØ±Ø¬Ù إدخا٠عÙÙØ§Ù ÙÙØ¨`,Default:`Ø§ÙØ§ÙتراضÙ`,Circle:`دائرة`,Dot:`ÙÙØ·Ø©`,Quadrate:`اÙÙ
ربعة`,Find:`Ø§ÙØ¨ØØ«`,"Find Previous":`تجد Ø§ÙØ³Ø§Ø¨ÙØ©`,"Find Next":`تجد Ø§ÙØªØ§ÙÙ`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`ÙÙØµÙ اÙÙ
ØØªÙÙ ÙØ§Ø¯Ù
Ù
Ù Microsoft Word/Excel اÙÙØ«ÙÙØ©. ÙÙ ØªØ±ÙØ¯ أ٠تبÙÙ Ø´ÙÙ Ø£Ù ØªÙØ¸ÙÙÙ Ø `,"Word Paste Detected":`ÙÙÙ
Ø© ÙØµÙ اÙÙØ´Ù عÙ`,Clean:`ÙØ¸ÙÙØ©`,"Insert className":`أدخ٠اسÙ
اÙÙØµÙ`,"Press Alt for custom resizing":`اضغط Ø§ÙØ¨Ø¯ÙÙ ÙØªØºÙÙØ± ØØ¬Ù
Ù
خصص`,"Line height":`Ø§Ø±ØªÙØ§Ø¹ Ø§ÙØ®Ø·`,spellcheck:`Ø§ÙØªØ¯ÙÙÙ Ø§ÙØ¥Ù
ÙØ§Ø¦Ù`,"Speech Recognize":`Ø§ÙØªØ¹Ø±Ù عÙ٠اÙÙÙØ§Ù
`,All:`ØªØØ¯Ùد اÙÙÙ`},Hm={"Type something":`NapiÅ¡ nÄco`,"About Jodit":`O Jodit`,"Jodit Editor":`Editor Jodit`,"Free Non-commercial Version":`Verze pro nekomerÄnà použitÃ`,"Jodit User's Guide":`Jodit Uživatelská pÅÃruÄka`,"contains detailed help for using":`obsahuje detailnà nápovÄdu`,"For information about the license, please go to our website:":`Pro informace o licenci, prosÃm, pÅejdÄte na naÅ¡i stránku:`,"Buy full version":`Koupit plnou verzi`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. VÅ¡echna práva vyhrazena.`,Anchor:`Anchor`,"Open in new tab":`OtevÅÃt v nové záložce`,"Open in fullsize":`OtevÅÃt v celoobrazovkovém režimu`,"Clear Formatting":`VyÄistit formátovánÃ`,"Fill color or set the text color":`Barva výplnÄ a pÃsma`,Redo:`VpÅed`,Undo:`ZpÄt`,Bold:`TuÄné`,Italic:`KurzÃva`,"Insert Unordered List":`Odrážky`,"Insert Ordered List":`ÄÃslovaný seznam`,"Align Center":`Zarovnat na stÅed`,"Align Justify":`Zarovnat do bloku`,"Align Left":`Zarovnat vlevo`,"Align Right":`Zarovnat vpravo`,"Insert Horizontal Line":`Vložit horizontálnà linku`,"Insert Image":`Vložit obrázek`,"Insert file":`Vložit soubor`,"Insert youtube/vimeo video":`Vložit video (YT/Vimeo)`,"Insert link":`Vložit odkaz`,"Font size":`Velikost pÃsma`,"Font family":`Typ pÃsma`,"Insert format block":`Formátovat blok`,Normal:`Normálnà text`,"Heading 1":`Nadpis 1`,"Heading 2":`Nadpis 2`,"Heading 3":`Nadpis 3`,"Heading 4":`Nadpis 4`,Quote:`Citát`,Code:`Kód`,Insert:`Vložit`,"Insert table":`Vložit tabulku`,"Decrease Indent":`ZmenÅ¡it odsazenÃ`,"Increase Indent":`ZvÄtÅ¡it odsazenÃ`,"Select Special Character":`Vybrat speciálnà symbol`,"Insert Special Character":`Vložit speciálnà symbol`,"Paint format":`PoužÃt formát`,"Change mode":`ZmÄnit mód`,Margins:`Okraje`,top:`hornÃ`,right:`pravý`,bottom:`spodnÃ`,left:`levý`,Styles:`Styly`,Classes:`TÅÃdy`,Align:`ZarovnánÃ`,Right:`Vpravo`,Center:`Na stÅed`,Left:`Vlevo`,"--Not Set--":`--nenastaveno--`,Src:`src`,Title:`Titulek`,Alternative:`Alternativnà text (alt)`,Link:`Link`,"Open link in new tab":`OtevÅÃt link v nové záložce`,Image:`Obrázek`,file:`soubor`,Advanced:`RozÅ¡ÃÅené`,"Image properties":`Vlastnosti obrázku`,Cancel:`ZpÄt`,Ok:`Ok`,"Your code is similar to HTML. Keep as HTML?":`Váš text se podobá HTML. Vložit ho jako HTML?`,"Paste as HTML":`Vložit jako HTML`,Keep:`Ponechat originál`,Clean:`VyÄistit`,"Insert as Text":`Vložit jako TEXT`,"Insert only Text":`Vložit pouze TEXT`,"Word Paste Detected":`Detekován fragment z Wordu nebo Excelu`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Obsah, který vkládáte, je pravdÄpodobnÄ z Microsoft Word / Excel. Chcete ponechat formát nebo vložit pouze text?`,"File Browser":`ProhlÞeÄ souborů`,"Error on load list":`Chyba pÅi naÄÃtánà seznamu souborů`,"Error on load folders":`Chyba pÅi naÄÃtánà složek`,"Are you sure?":`Jste si jistý(á)?`,"Enter Directory name":`Název složky`,"Create directory":`VytvoÅit složku`,"type name":`název`,"Drop image":`PÅetáhnÄte sem obrázek`,"Drop file":`PÅetáhnÄte sem soubor`,"or click":`nebo kliknÄte`,"Alternative text":`Alternativnà text`,Browse:`Server`,Upload:`Nahrát`,Backgroun
500d:`PozadÃ`,Text:`Text`,Top:`Nahoru`,Middle:`Na stÅed`,Bottom:`Dolu`,"Insert column before":`Vložit sloupec pÅed`,"Insert column after":`Vložit sloupec za`,"Insert row above":`Vložit Åádek nad`,"Insert row below":`Vložit Åádek pod`,"Delete table":`Vymazat tabulku`,"Delete row":`Vymazat Åádku`,"Delete column":`Vymazat sloupec`,"Empty cell":`VyÄistit buÅku`,source:`HTML`,bold:`tuÄnÄ`,italic:`kurzÃva`,brush:`Å¡tÄtec`,link:`odkaz`,undo:`zpÄt`,redo:`vpÅed`,table:`tabulka`,image:`obrázek`,eraser:`guma`,paragraph:`odstavec`,fontsize:`velikost pÃsma`,video:`video`,font:`pÃsmo`,about:`о editoru`,print:`tisk`,underline:`podtrženo`,strikethrough:`pÅeÅ¡krtnuto`,indent:`zvÄtÅ¡it odsazenÃ`,outdent:`zmenÅ¡it odsazenÃ`,fullsize:`celoobrazovkový režim`,shrink:`smrsknout`,hr:`Linka`,ul:`Odrážka`,ol:`ÄÃslovaný seznam`,cut:`Vyjmout`,selectall:`OznaÄit vÅ¡e`,"Embed code":`Kód`,"Open link":`OtevÅÃt odkaz`,"Edit link":`Upravit odkaz`,"No follow":`Atribut no-follow`,Unlink:`Odstranit odkaz`,Eye:`Zobrazit`,pencil:`Chcete-li upravit`,Update:`Aktualizovat`," URL":`URL`,Edit:`Editovat`,"Horizontal align":`Horizontálnà zarovnánÃ`,Filter:`Filtr`,"Sort by changed":`Dle poslednà zmÄny`,"Sort by name":`Dle názvu`,"Sort by size":`Dle velikosti`,"Add folder":`PÅidat složku`,Reset:`Reset`,Save:`Uložit`,"Save as ...":`Uložit jako...`,Resize:`ZmÄnit rozmÄr`,Crop:`OÅezat`,Width:`Å ÃÅka`,Height:`Výška`,"Keep Aspect Ratio":`Ponechat pomÄr`,Yes:`Ano`,No:`Ne`,Remove:`Vyjmout`,Select:`OznaÄit`,"Chars: %d":`Znaky: %d`,"Words: %d":`Slova: %d`,All:`VÅ¡e`,"Select %s":`OznaÄit %s`,"Select all":`OznaÄit vÅ¡e`,"Vertical align":`Vertikálnà zarovnánÃ`,Split:`RozdÄlit`,"Split vertical":`RozdÄlit vertikálnÄ`,"Split horizontal":`RozdÄlit horizontálnÄ`,Merge:`Spojit`,"Add column":`PÅidat sloupec`,"Add row":`PÅidat Åádek`,Delete:`Vymazat`,Border:`Okraj`,"License: %s":`Licence: %s`,"Strike through":`PÅeÅ¡krtnuto`,Underline:`Podtrženo`,superscript:`Hornà index`,subscript:`Dolnà index`,"Cut selection":`Vyjmout oznaÄené`,Break:`ZalomenÃ`,"Search for":`Najdi`,"Replace with":`Nahradit za`,Replace:`VymÄÅte`,Paste:`Vložit`,"Choose Content to Paste":`Vyber obsah pro vloženÃ`,"You can only edit your own images. Download this image on the host?":`Můžete upravovat pouze své obrázky. NaÄÃst obrázek?`,"The image has been successfully uploaded to the host!":`Obrázek byl úspÄÅ¡nÄ nahrán!`,palette:`paleta`,"There are no files":`V tomto adresáÅi nejsou žádné soubory.`,Rename:`pÅejmenovat`,"Enter new name":`Zadejte nový název`,preview:`náhled`,download:`StaženÃ`,"Paste from clipboard":`Vložit ze schránky`,"Your browser doesn't support direct access to the clipboard.":`Váš prohlÞeÄ nepodporuje pÅÃmý pÅÃstup do schránky.`,"Copy selection":`KopÃrovat výbÄr`,copy:`kopÃrovánÃ`,"Border radius":`Border radius`,"Show all":`Zobrazit vÅ¡echny`,Apply:`PlatÃ`,"Please fill out this field":`ProsÃm, vyplÅte toto pole`,"Please enter a web address":`ProsÃm, zadejte webovou adresu`,Default:`VýchozÃ`,Circle:`Kruh`,Dot:`Dot`,Quadrate:`Quadrate`,Find:`NajÃt`,"Find Previous":`NajÃt PÅedchozÃ`,"Find Next":`NajÃt DalÅ¡Ã`,"Insert className":`Vložte název tÅÃdy`,"Press Alt for custom resizing":`StisknÄte Alt pro vlastnà zmÄnu velikosti`},Um={"Type something":`Bitte geben Sie einen Text ein`,Advanced:`Fortgeschritten`,"About Jodit":`Ãber Jodit`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Das Jodit Benutzerhandbuch`,"contains detailed help for using":`beinhaltet ausführliche Informationen wie Sie den Editor verwenden können.`,"For information about the license, please go to our website:":`Für Informationen zur Lizenz, besuchen Sie bitte unsere Web-Präsenz:`,"Buy full version":`Vollversion kaufen`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Alle Rechte vorbehalten.`,Anchor:`Anker`,"Open in new tab":`In neuer Registerkarte öffnen`,"Open in fullsize":`Editor in voller GröÃe öffnen`,"Clear Formatting":`Formatierung löschen`,"Fill color or set the text color":`Füllfarbe oder Textfarbe ändern`,Redo:`Wiederholen`,Undo:`Rückgängig machen`,Bold:`Fett`,Italic:`Kursiv`,"Insert Unordered List":`Unsortierte Liste einfügen`,"Insert Ordered List":`Nummerierte Liste einfügen`,"Align Center":`Mittig ausrichten`,"Align Justify":`Blocksatz`,"Align Left":`Links ausrichten`,"Align Right":`Rechts ausrichten`,"Insert Horizontal Line":`Horizontale Linie einfügen`,"Insert Image":`Bild einfügen`,"Insert file":`Datei einfügen`,"Insert youtube/vimeo video":`Youtube/vimeo Video einf
500ügen`,"Insert link":`Link einfügen`,"Font size":`SchriftgröÃe`,"Font family":`Schriftfamilie`,"Insert format block":`Formatblock einfügen`,Normal:`Normal`,"Heading 1":`Ãberschrift 1`,"Heading 2":`Ãberschrift 2`,"Heading 3":`Ãberschrift 3`,"Heading 4":`Ãberschrift 4`,Quote:`Zitat`,Code:`Code`,Insert:`Einfügen`,"Insert table":`Tabelle einfügen`,"Decrease Indent":`Einzug verkleinern`,"Increase Indent":`Einzug vergröÃern`,"Select Special Character":`Sonderzeichen auswählen`,"Insert Special Character":`Sonderzeichen einfügen`,"Paint format":`Format kopieren`,"Change mode":`Ãnderungsmodus`,Margins:`Ränder`,top:`Oben`,right:`Rechts`,bottom:`Unten`,left:`Links`,Styles:`CSS Stil`,Classes:`CSS Klassen`,Align:`Ausrichtung`,Right:`Rechts`,Center:`Zentriert`,Left:`Links`,"--Not Set--":`Keine`,Src:`Pfad`,Title:`Titel`,Alternative:`Alternativer Text`,Link:`Link`,"Open link in new tab":`Link in neuem Tab öffnen`,Image:`Bild`,file:`Datei`,"Image properties":`Bildeigenschaften`,Cancel:`Abbrechen`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`Ihr Text ähnelt HTML-Code. Als HTML beibehalten?`,"Paste as HTML":`Als HTML einfügen?`,Keep:`Original speichern`,Clean:`Säubern`,"Insert as Text":`Als Text einfügen`,"Word Paste Detected":`In Word formatierter Text erkannt`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Der Inhalt, den Sie einfügen, stammt aus einem Microsoft Word / Excel-Dokument. Möchten Sie das Format erhalten oder bereinigen?`,"Insert only Text":`Nur Text einfügen`,"File Browser":`Dateibrowser`,"Error on load list":`Fehler beim Laden der Liste`,"Error on load folders":`Fehler beim Laden der Ordner`,"Are you sure?":`Sind Sie sicher?`,"Enter Directory name":`Geben Sie den Verzeichnisnamen ein`,"Create directory":`Verzeichnis erstellen`,"type name":`Typname`,"Drop image":`Bild hier hinziehen`,"Drop file":`Datei löschen`,"or click":`oder hier klicken`,"Alternative text":`Alternativtext`,Browse:`Auswählen`,Upload:`Hochladen`,Background:`Hintergrund`,Text:`Text`,Top:`Oben`,Middle:`Mittig`,Bottom:`Unten`,"Insert column before":`Spalte davor einfügen`,"Insert column after":`Spalte danach einfügen`,"Insert row above":`Zeile oberhalb einfügen`,"Insert row below":`Zeile unterhalb einfügen`,"Delete table":`Tabelle löschen`,"Delete row":`Zeile löschen`,"Delete column":`Spalte löschen`,"Empty cell":`Zelle leeren`,Delete:`Löschen`,"Strike through":`Durchstreichen`,Underline:`Unterstreichen`,Break:`Pause`,"Search for":`Suche nach`,"Replace with":`Ersetzen durch`,Replace:`Ersetzen`,Edit:`Bearbeiten`,"Vertical align":`Vertikale Ausrichtung`,"Horizontal align":`Horizontale Ausrichtung`,Filter:`Filter`,"Sort by changed":`Sortieren nach geändert`,"Sort by name":`Nach Name sortieren`,"Sort by size":`Nach GröÃe sortiert`,"Add folder":`Ordner hinzufügen`,"Split vertical":`Vertikal unterteilen`,"Split horizontal":`Horizontal unterteilen`,Split:`Unterteilen`,Merge:`Vereinen`,"Add column":`Spalte hinzufügen`,"Add row":`Zeile hinzufügen`,Border:`Rand`,"Embed code":`Code einbetten`,Update:`Aktualisieren`,superscript:`Hochstellen`,subscript:`Tiefstellen`,"Cut selection":`Auswahl ausschneiden`,Paste:`Einfügen`,"Choose Content to Paste":`Wählen Sie den Inhalt zum Einfügen aus`,"Chars: %d":`Zeichen: %d`,"Words: %d":`Wörter: %d`,All:`Alles markieren`,"Select %s":`Markieren: %s`,"Select all":`Alles markieren`,source:`HTML`,bold:`Fett gedruckt`,italic:`Kursiv`,brush:`Bürste`,link:`Verknüpfung`,undo:`Rückgängig machen`,redo:`Wiederholen`,table:`Tabelle`,image:`Bild`,eraser:`Radiergummi`,paragraph:`Absatz`,fontsize:`SchriftgröÃe`,video:`Video`,font:`Schriftart`,about:`Ãber`,print:`Drucken`,underline:`Unterstreichen`,strikethrough:`Durchstreichen`,indent:`Einzug`,outdent:`Herausstellen`,fullsize:`VollgröÃe`,shrink:`Schrumpfen`,hr:`die Linie`,ul:`Liste von`,ol:`Nummerierte Liste`,"Lower Alpha":`Standard, Alphabet (klein)`,"Upper Alpha":`Standard, Alphabet (gross)`,"Lower Roman":`Römisch (klein)`,"Upper Roman":`Römisch (gross)`,"Lower Greek":`Griechisch`,cut:`Schneiden`,selectall:`Wählen Sie Alle au
500s`,"Open link":`Link öffnen`,"Edit link":`Link bearbeiten`,"No follow":`Nofollow-Attribut`,Unlink:`Link entfernen`,Eye:`Ansehen`,pencil:`Bearbeiten`," URL":`URL`,Reset:`Wiederherstellen`,Save:`Speichern`,"Save as ...":`Speichern als`,Resize:`GröÃe ändern`,Crop:`GröÃe anpassen`,Width:`Breite`,Height:`Höhe`,"Keep Aspect Ratio":`Seitenverhältnis beibehalten`,Yes:`Ja`,No:`Nein`,Remove:`Entfernen`,Select:`Markieren`,"You can only edit your own images. Download this image on the host?":`Sie können nur Ihre eigenen Bilder bearbeiten. Dieses Bild auf den Host herunterladen?`,"The image has been successfully uploaded to the host!":`Das Bild wurde erfolgreich auf den Server hochgeladen!`,palette:`Palette`,"There are no files":`In diesem Verzeichnis befinden sich keine Dateien.`,Rename:`Umbenennen`,"Enter new name":`Geben Sie einen neuen Namen ein`,preview:`Vorschau`,download:`Herunterladen`,"Paste from clipboard":`Aus Zwischenablage einfügen`,"Your browser doesn't support direct access to the clipboard.":`Ihr Browser unterstützt keinen direkten Zugriff auf die Zwischenablage.`,"Copy selection":`Auswahl kopieren`,copy:`Kopieren`,"Border radius":`Radius für abgerundete Ecken`,"Show all":`Alle anzeigen`,Apply:`Anwenden`,"Please fill out this field":`Bitte füllen Sie dieses Feld aus`,"Please enter a web address":`Bitte geben Sie eine Web-Adresse ein`,Default:`Standard`,Circle:`Kreis`,Dot:`Punkte`,Quadrate:`Quadrate`,Find:`Suchen`,"Find Previous":`Suche vorherige`,"Find Next":`Weitersuchen`,"Insert className":`className (CSS) einfügen`,"Press Alt for custom resizing":`Drücken Sie Alt für benutzerdefinierte GröÃenanpassung`,"License: %s":`Lizenz: %s`},Wm={"Type something":`Start writing...`,pencil:`Edit`,Quadrate:`Square`},Gm={"Type something":`Escriba algo...`,Advanced:`Avanzado`,"About Jodit":`Acerca de Jodit`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`GuÃa de usuario Jodit`,"contains detailed help for using":`contiene ayuda detallada para el uso.`,"For information about the license, please go to our website:":`Para información sobre la licencia, por favor visite nuestro sitio:`,"Buy full version":`Compre la versión completa`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Todos los derechos reservados.`,Anchor:`Anclar`,"Open in new tab":`Abrir en nueva pestaña`,"Open in fullsize":`Abrir editor en pantalla completa`,"Clear Formatting":`Limpiar formato`,"Fill color or set the text color":`Color de relleno o de letra`,Redo:`Rehacer`,Undo:`Deshacer`,Bold:`Negrita`,Italic:`Cursiva`,"Insert Unordered List":`Insertar lista no ordenada`,"Insert Ordered List":`Insertar lista ordenada`,"Align Center":`Alinear Centrado`,"Align Justify":`Alinear Justificado`,"Align Left":`Alinear Izquierda`,"Align Right":`Alinear Derecha`,"Insert Horizontal Line":`Insertar lÃnea horizontal`,"Insert Image":`Insertar imagen`,"Insert file":`Insertar archivo`,"Insert youtube/vimeo video":`Insertar video de Youtube/vimeo`,"Insert link":`Insertar vÃnculo`,"Font size":`Tamaño de letra`,"Font family":`Familia de letra`,"Insert format block":`Insertar bloque`,Normal:`Normal`,"Heading 1":`Encabezado 1`,"Heading 2":`Encabezado 2`,"Heading 3":`Encabezado 3`,"Heading 4":`Encabezado 4`,Quote:`Cita`,Code:`Código`,Insert:`Insertar`,"Insert table":`Insertar tabla`,"Decrease Indent":`Disminuir sangrÃa`,"Increase Indent":`Aumentar sangrÃa`,"Select Special Character":`Seleccionar caracter especial`,"Insert Special Character":`Insertar caracter especial`,"Paint format":`Copiar formato`,"Change mode":`Cambiar modo`,Margins:`Márgenes`,top:`arriba`,right:`derecha`,bottom:`abajo`,left:`izquierda`,Styles:`Estilos CSS`,Classes:`Clases CSS`,Align:`Alinear`,Right:`Derecha`,Center:`Centrado`,Left:`Izquierda`,"--Not Set--":`--No Establecido--`,Src:`Fuente`,Title:`TÃtulo`,Alternative:`Texto Alternativo`,Filter:`Filtrar`,Link:`VÃnculo`,"Open link in new tab":`Abrir vÃnculo en nueva pestaña`,Image:`Imagen`,file:`Archivo`,"Image properties":`Propiedades de imagen`,Cancel:`Cancelar`,Ok:`Aceptar`,"Your code is similar to HTML. Keep as HTML?":`El código es similar a HTML. ¿Mantener como HTML?`,"Paste as HTML":`Pegar como HTML?`,Keep:`Mantener`,Clean:`Limpiar`,"Insert as Text":`Insertar c
500omo texto`,"Word Paste Detected":`Pegado desde Word detectado`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`El contenido pegado proviene de un documento de Microsoft Word/Excel. ¿Desea mantener el formato o limpiarlo?`,"Insert only Text":`Insertar solo texto`,"File Browser":`Buscar archivo`,"Error on load list":`Error al cargar la lista`,"Error on load folders":`Error al cargar las carpetas`,"Are you sure?":`¿Está seguro?`,"Enter Directory name":`Entre nombre de carpeta`,"Create directory":`Crear carpeta`,"type name":`Entre el nombre`,"Drop image":`Soltar imagen`,"Drop file":`Soltar archivo`,"or click":`o click`,"Alternative text":`Texto alternativo`,Browse:`Buscar`,Upload:`Subir`,Background:`Fondo`,Text:`Texto`,Top:`Arriba`,Middle:`Centro`,Bottom:`Abajo`,"Insert column before":`Insertar columna antes`,"Insert column after":`Interar columna después`,"Insert row above":`Insertar fila arriba`,"Insert row below":`Insertar fila debajo`,"Delete table":`Borrar tabla`,"Delete row":`Borrar fila`,"Delete column":`Borrar columna`,"Empty cell":`Vaciar celda`,Delete:`Borrar`,"Strike through":`Tachado`,Underline:`Subrayado`,Break:`Pausa`,"Search for":`Buscar`,"Replace with":`Reemplazar con`,Replace:`Reemplazar`,Edit:`Editar`,"Vertical align":`Alineación vertical`,"Horizontal align":`Alineación horizontal`,"Sort by changed":`Ordenar por fecha modificación`,"Sort by name":`Ordenar por nombre`,"Sort by size":`Ordenar por tamaño`,"Add folder":`Agregar carpeta`,Split:`Dividir`,"Split vertical":`Dividir vertical`,"Split horizontal":`Dividir horizontal`,Merge:`Mezclar`,"Add column":`Agregar columna`,"Add row":`Agregar fila`,Border:`Borde`,"Embed code":`Incluir código`,Update:`Actualizar`,superscript:`superÃndice`,subscript:`subÃndice`,"Cut selection":`Cortar selección`,Paste:`Pegar`,"Choose Content to Paste":`Seleccionar contenido para pegar`,"Chars: %d":`Caracteres: %d`,"Words: %d":`Palabras: %d`,All:`Todo`,"Select %s":`Seleccionar: %s`,"Select all":`Seleccionar todo`,source:`HTML`,bold:`negrita`,italic:`cursiva`,brush:`Brocha`,link:`VÃnculo`,undo:`deshacer`,redo:`rehacer`,table:`Tabla`,image:`Imagen`,eraser:`Borrar`,paragraph:`Párrafo`,fontsize:`Tamaño de letra`,video:`Video`,font:`Letra`,about:`Acerca de`,print:`Imprimir`,underline:`subrayar`,strikethrough:`tachar`,indent:`sangrÃa`,outdent:`quitar sangrÃa`,fullsize:`Tamaño completo`,shrink:`encoger`,hr:`lÃnea horizontal`,ul:`lista sin ordenar`,ol:`lista ordenada`,cut:`Cortar`,selectall:`Seleccionar todo`,"Open link":`Abrir vÃnculo`,"Edit link":`Editar vÃnculo`,"No follow":`No seguir`,Unlink:`Desvincular`,Eye:`Ver`,pencil:`Para editar`," URL":`URL`,Reset:`Resetear`,Save:`Guardar`,"Save as ...":`Guardar como...`,Resize:`Redimensionar`,Crop:`Recortar`,Width:`Ancho`,Height:`Alto`,"Keep Aspect Ratio":`Mantener relación de aspecto`,Yes:`Si`,No:`No`,Remove:`Quitar`,Select:`Seleccionar`,"You can only edit your own images. Download this image on the host?":`Solo puedes editar tus propias imágenes. ¿Descargar esta imagen en el servidor?`,"The image has been successfully uploaded to the host!":`¡La imagen se ha subido correctamente al servidor!`,palette:`paleta`,"There are no files":`No hay archivos en este directorio.`,Rename:`renombrar`,"Enter new name":`Ingresa un nuevo nombre`,preview:`avance`,download:`Descargar`,"Paste from clipboard":`Pegar desde el portapapeles`,"Your browser doesn't support direct access to the clipboard.":`Su navegador no soporta el acceso directo en el portapapeles.`,"Copy selection":`Selección de copia`,copy:`copia`,"Border radius":`Radio frontera`,"Show all":`Mostrar todos los`,Apply:`Aplicar`,"Please fill out this field":`Por favor, rellene este campo`,"Please enter a web address":`Por favor, introduzca una dirección web`,Default:`Predeterminado`,Circle:`CÃrculo`,Dot:`Punto`,Quadrate:`Cuadro`,"Lower Alpha":`Letra Minúscula`,"Lower Greek":`Griego Minúscula`,"Lower Roman":`Romano Minúscula`,"Upper Alpha":`Letra Mayúscula`,"Upper Roman":`Romano Mayúscula`,Find:`Encontrar`,"Find Previous":`Buscar Anterior`,"Find Next":`Buscar Siguiente`,"Insert className":`Insertar nombre de clase`,"Press Alt for custom resizing":`Presione Alt para cambiar el tamaño personalizado`,"License: %s":`Licencia: %s`},Km={"Type something":`Kirjoita jotain...`,Advanced:`Avanzado`,"About Jodit":`Tietoja Jodit:ista`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Jodit kÃ
500¤yttäjän ohje`,"contains detailed help for using":`sisältää tarkempaa tietoa käyttämiseen`,"For information about the license, please go to our website:":`Tietoa lisensoinnista, vieraile verkkosivuillamme:`,"Buy full version":`Osta täysi versio`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Kaikki oikeudet pidätetään.`,Anchor:`Ankkuri`,"Open in new tab":`Avaa uudessa välilehdessä`,"Open in fullsize":`Avaa täysikokoisena`,"Clear Formatting":`Poista muotoilu`,"Fill color or set the text color":`Täytä värillä tai aseta tekstin väri`,Redo:`Tee uudelleen`,Undo:`Peruuta`,Bold:`Lihavoitu`,Italic:`Kursiivi`,"Insert Unordered List":`Lisää järjestämätön lista`,"Insert Ordered List":`Lisää järjestetty lista`,"Align Center":`Asemoi keskelle`,"Align Justify":`Asemoi tasavälein`,"Align Left":`Asemoi vasemmalle`,"Align Right":`Asemoi oikealle`,"Insert Horizontal Line":`Lisää vaakasuuntainen viiva`,"Insert Image":`Lisää kuva`,"Insert file":`Lisää tiedosto`,"Insert youtube/vimeo video":`Lisää Youtube-/vimeo- video`,"Insert link":`Lisää linkki`,"Font size":`Kirjasimen koko`,"Font family":`Kirjasimen nimi`,"Insert format block":`Lisää muotoilualue`,Normal:`Normaali`,"Heading 1":`Otsikko 1`,"Heading 2":`Otsikko 2`,"Heading 3":`Otsikko 3`,"Heading 4":`Otsikko 4`,Quote:`Lainaus`,Code:`Koodi`,Insert:`Lisää`,"Insert table":`Lisää taulukko`,"Decrease Indent":`Pienennä sisennystä`,"Increase Indent":`Lisää sisennystä`,"Select Special Character":`Valitse erikoismerkki`,"Insert Special Character":`Lisää erikoismerkki`,"Paint format":`Maalaa muotoilu`,"Change mode":`Vaihda tilaa`,Margins:`Marginaalit`,top:`ylös`,right:`oikealle`,bottom:`alas`,left:`vasemmalle`,Styles:`CSS-tyylit`,Classes:`CSS-luokat`,Align:`Asemointi`,Right:`Oikea`,Center:`Keskellä`,Left:`Vasen`,"--Not Set--":`--Ei asetettu--`,Src:`Fuente`,Title:`Otsikko`,Alternative:`Vaihtoehtoinen teksti`,Filter:`Suodatin`,Link:`Linkki`,"Open link in new tab":`Avaa uudessa välilehdessä`,Image:`Kuva`,file:`Tiedosto`,"Image properties":`Kuvan ominaisuudet`,Cancel:`Peruuta`,Ok:`Ok`,"Your code is similar to HTML. Keep as HTML?":`Koodi on HTML:n tapaista. Säilytetäänkö HTML?`,"Paste as HTML":`Liitä HTML:nä?`,Keep:`Säilytä`,Clean:`Tyhjennä`,"Insert as Text":`Lisää tekstinä`,"Word Paste Detected":`Word liittäminen havaittu`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Liitetty sisältö tulee Microsoft Word-/Excel- tiedostosta. Haluatko säilyttää muotoilun vai poistaa sen?`,"Insert only Text":`Lisää vain teksti`,"File Browser":`Tiedostoselain`,"Error on load list":`Virhe listan latauksessa`,"Error on load folders":`Virhe kansioiden latauksessa`,"Are you sure?":`Oletko varma?`,"Enter Directory name":`Syötä hakemiston nimi`,"Create directory":`Luo hakemisto`,"type name":`Syötä nimi`,"Drop image":`Pudota kuva`,"Drop file":`Pudota tiedosto`,"or click":`tai klikkaa`,"Alternative text":`Vaihtoehtoinen teksti`,Browse:`Selaa`,Upload:`Lataa`,Background:`Tausta`,Text:`Teksti`,Top:`Ylös`,Middle:`Keskelle`,Bottom:`Alas`,"Insert column before":`Lisää sarake ennen`,"Insert column after":`Lisää sarake jälkeen`,"Insert row above":`Lisää rivi ylös`,"Insert row below":`Lisää rivi alle`,"Delete table":`Poista taulukko`,"Delete row":`Poista rivi`,"Delete column":`Poista sarake`,"Empty cell":`Tyhjennä solu`,Delete:`Poista`,"Strike through":`Yliviivaus`,Underline:`Alleviivaus`,Break:`Vaihto`,"Search for":`Etsi arvoa`,"Replace with":`Korvaa arvolla`,Replace:`Korvaa`,Edit:`Muokkaa`,"Vertical align":`Pystyasemointi`,"Horizontal align":`Vaaka-asemointi`,"Sort by changed":`Järjestä muuttuneilla`,"Sort by name":`Järjestä nimellä`,"Sort by size":`Järjestä koolla`,"Add folder":`Lisää kansio`,Split:`Jaa`,"Split vertical":`Jaa pystysuuntaisesti`,"Split horizontal":`Jaa vaakasuuntaisesti`,Merge:`Yhdistä`,"Add column":`Lisää sarake`,"Add row":`Lisää rivi`,Border:`Reuna`,"Embed code":`Sisällytä koodi`,Update:`Päivitä`,superscript:`yläviite`,subscript:`alaviite`,"Cut selection":`Leikkaa valinta`,Paste:`Liitä`,"Choose Content to Paste":`Valitse liitettävä sisältö`,"Chars: %d":`Merkit: %d`,"Words: %d":`Sanat: %d`,All:`Kaikki`,"Select %s":`Valitse: %s`,"Select all":`Valitse kaikki`,source:`HTML`,bold:`lihavoitu`,italic:`kursiivi`,brush:`sivellin`,link:`linkki`,undo:`peruuta`,redo:`tee uudelleen`,table:`taulukko`,image:`kuva`,eraser:`pyyhekumi`,paragraph:`kappale`,fontsize:`tekstin koko`,video:`video`,font:`kirjasin`,about:`tietoja`,print:`tulosta`,underline:`alleviivaa`,strikethrough:`yliviivaa`,indent:`sisennä`,outdent:`pienennä sisennystä`,fullsize:`täysikokoinen`,shrink:`pienennä`,hr:`vaakaviiva`,ul:`järjestetty lista`,ol:`järjestämätön lista`,cut:`leikkaa`,selectall:`valitse kaikki`,"Open link":`Avaa linkki`,"Edit link":`Muokkaa linkkiä`,"No follow":`Ãlä seuraa`,Unlink:`Pura linkki`,Eye:`Ver`,pencil:`Muokkaa`," URL":`URL`,Reset:`Nollaa`,Save:`Tallenna`,"Save as ...":`Tallenna nimellä ...`,Resize:`Muuta kokoa`,Crop:`Rajaa`,Width:`Leveys`,Height:`Korkeus`,"Keep Aspect Ratio":`Säilytä kuvasuhde`,Yes:`Kyllä`,No:`Ei`,Remove:`Poista`,Select:`Valitse`,"You can only edit your own images. Download this image on the host?":`Voit muokata vain om
500ia kuvia. Lataa tämä kuva palvelimelle?`,"The image has been successfully uploaded to the host!":`Kuva on onnistuneesti ladattu palvelimelle!`,palette:`paletti`,"There are no files":`Tiedostoja ei ole`,Rename:`Nimeä uudelleen`,"Enter new name":`Syötä uusi nimi`,preview:`esikatselu`,download:`Lataa`,"Paste from clipboard":`Liitä leikepöydältä`,"Your browser doesn't support direct access to the clipboard.":`Selaimesi ei tue suoraa pääsyä leikepöydälle.`,"Copy selection":`Kopioi valinta`,copy:`kopioi`,"Border radius":`Reunan pyöristys`,"Show all":`Näytä kaikki`,Apply:`Käytä`,"Please fill out this field":`Täytä tämä kenttä`,"Please enter a web address":`Annan web-osoite`,Default:`Oletus`,Circle:`Ympyrä`,Dot:`Piste`,Quadrate:`Neliö`,"Lower Alpha":`Pieni aakkosellinen`,"Lower Greek":`Pieni kreikkalainen`,"Lower Roman":`Pieni roomalainen`,"Upper Alpha":`Suuri aakkosellinen`,"Upper Roman":`Suuri roomalainen`,Find:`Hae`,"Find Previous":`Hae edellinen`,"Find Next":`Hae seuraava`,"Insert className":`Lisää luokkanimi`,"Press Alt for custom resizing":`Paina Alt muokattuun koon muuttamiseen`,"Class name":`Luokan nimi`,"License: %s":`Lisenssi: %s`},qm={"Type something":`Ecrivez ici`,"About Jodit":`A propos de Jodit`,"Jodit Editor":`Editeur Jodit`,"Jodit User's Guide":`Guide de l'utilisateur`,"contains detailed help for using":`Aide détaillée à l'utilisation`,"For information about the license, please go to our website:":`Consulter la licence sur notre site web:`,"Buy full version":`Acheter la version complète`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Tous droits réservés.`,Anchor:`Ancre`,"Open in new tab":`Ouvrir dans un nouvel onglet`,"Open in fullsize":`Ouvrir l'éditeur en pleine page`,"Clear Formatting":`Supprimer le formattage`,"Fill color or set the text color":`Modifier la couleur du fond ou du texte`,Redo:`Refaire`,Undo:`Défaire`,Bold:`Gras`,Italic:`Italique`,"Insert Unordered List":`Liste non ordonnée`,"Insert Ordered List":`Liste ordonnée`,"Align Center":`Centrer`,"Align Justify":`Justifier`,"Align Left":`Aligner à gauche `,"Align Right":`Aligner à droite`,"Insert Horizontal Line":`Insérer une ligne horizontale`,"Insert Image":`Insérer une image`,"Insert file":`Insérer un fichier`,"Insert youtube/vimeo video":`Insérer une vidéo`,"Insert link":`Insérer un lien`,"Font size":`Taille des caractères`,"Font family":`Famille des caractères`,"Insert format block":`Bloc formatté`,Normal:`Normal`,"Heading 1":`Titre 1`,"Heading 2":`Titre 2`,"Heading 3":`Titre 3`,"Heading 4":`Titre 4`,Quote:`Citation`,Code:`Code`,Insert:`Insérer`,"Insert table":`Insérer un tableau`,"Decrease Indent":`Diminuer le retrait`,"Increase Indent":`Retrait plus`,"Select Special Character":`Sélectionnez un caractère spécial`,"Insert Special Character":`Insérer un caractère spécial`,"Paint format":`Cloner le format`,"Change mode":`Mode wysiwyg <-> code html`,Margins:`Marges`,top:`haut`,right:`droite`,bottom:`Bas`,left:`gauche`,Styles:`Styles`,Classes:`Classes`,Align:`Alignement`,Right:`Droite`,Center:`Centre`,Left:`Gauche`,"--Not Set--":`--Non disponible--`,Src:`Source`,Title:`Titre`,Alternative:`Alternative`,Filter:`Filtre`,Link:`Lien`,"Open link in new tab":`Ouvrir le lien dans un nouvel onglet`,Image:`Image`,file:`fichier`,Advanced:`Avancé`,"Image properties":`Propriétés de l'image`,Cancel:`Annuler`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`Votre texte que vous essayez de coller est similaire au HTML. Collez-le en HTML?`,"Paste as HTML":`Coller en HTML?`,Keep:`Sauvegarder l'original`,Clean:`Nettoyer`,"Insert as Text":`Coller en tant que texte`,"Word Paste Detected":`C'est peut-être un fragment de Word ou Excel`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Le contenu que vous insérez provient d'un document Microsoft Word / Excel. Voulez-vous enregistrer le format ou l'effacer?`,"Insert only Text":`Coller le texte seulement`,"File Browser":`Explorateur de fichiers`,"Error on load list":`Erreur de liste de chargement`,"Error on load folders":`Erreur de dossier de chargement`,"Are you sure?":`Etes-vous sûrs ?`,"Enter Directory name":`Entrer le nom de dossier`,"Create directory":`Créer un dossier`,"type name":`type de fichier`,"Drop image":`Coller une image`,"Drop file":`Déposer un fichier`,"or click":`ou cliquer`,"Alternative text":`Texte de remplacemement`,Browse:`Chercher`,Upload:`Charger`,Backgroun
500d:`Arrière-plan`,Border:`Bordure`,Text:`Texte`,Top:`Haut`,Middle:`Milieu`,Bottom:`Bas`,"Insert column before":`Insérer une colonne avant`,"Insert column after":`Insérer une colonne après`,"Insert row above":`Insérer une ligne au dessus`,"Insert row below":`Insérer une ligne en dessous`,"Delete table":`Supprimer le tableau`,"Delete row":`Supprimer la ligne`,"Delete column":`Supprimer la colonne`,"Empty cell":`Vider la cellule`,"Chars: %d":`Symboles: %d`,"Words: %d":`Mots: %d`,Split:`Split`,"Split vertical":`Split vertical`,"Split horizontal":`Split horizontal`,"Strike through":`Barrer`,Underline:`Souligner`,superscript:`exposant`,subscript:`indice`,"Cut selection":`Couper la sélection`,"Select all":`Tout sélectionner`,Break:`Pause`,"Search for":`Rechercher`,"Replace with":`Remplacer par`,Replace:`Remplacer`,Paste:`Coller`,"Choose Content to Paste":`Choisissez le contenu à coller`,source:`la source`,bold:`gras`,italic:`italique`,brush:`pinceau`,link:`lien`,undo:`annuler`,redo:`refaire`,table:`tableau`,image:`image`,eraser:`gomme`,paragraph:`clause`,fontsize:`taille de police`,video:`Video`,font:`police`,about:`à propos de l'éditeur`,print:`impression`,underline:`souligné`,strikethrough:`barré`,indent:`indentation`,outdent:`retrait`,fullsize:`taille réelle`,shrink:`taille conventionnelle`,hr:`la ligne`,ul:`Liste`,ol:`Liste numérotée`,cut:`Couper`,selectall:`Sélectionner tout`,"Open link":`Ouvrir le lien`,"Edit link":`Modifier le lien`,"No follow":`Attribut Nofollow`,Unlink:`Supprimer le lien`,Eye:`Voir`,pencil:`Pour éditer`," URL":`URL`,Reset:`Restaurer`,Save:`Sauvegarder`,"Save as ...":`Enregistrer sous`,Resize:`Changer la taille`,Crop:`Taille de garniture`,Width:`Largeur`,Height:`Hauteur`,"Keep Aspect Ratio":`Garder les proportions`,Yes:`Oui`,No:`Non`,Remove:`Supprimer`,Select:`Mettre en évidence`,"Select %s":`Mettre en évidence: %s`,Update:`Mettre à jour`,"Vertical align":`Alignement vertical`,Merge:`aller`,"Add column":`Ajouter une colonne`,"Add row":`Ajouter une rangée`,Delete:`Effacer`,"Horizontal align":`Alignement horizontal`,"Sort by changed":`Trier par modification`,"Sort by name":`Trier par nom`,"Sort by size":`Trier par taille`,"Add folder":`Créer le dossier`,"You can only edit your own images. Download this image on the host?":`Vous ne pouvez éditer que vos propres images. Téléchargez cette image sur l'hôte?`,"The image has been successfully uploaded to the host!":`L'image a été téléchargée avec succès sur le serveur!`,palette:`Palette`,"There are no files":`Il n'y a aucun fichier dans ce répertoire.`,Rename:`renommer`,"Enter new name":`Entrez un nouveau nom`,preview:`Aperçu`,download:`Télécharger`,"Paste from clipboard":`Coller à partir du presse-papiers`,"Your browser doesn't support direct access to the clipboard.":`Votre navigateur ne prend pas en charge l'accès direct au presse-papiers.`,"Copy selection":`Copier la sélection`,copy:`copie`,"Border radius":`Rayon des bordures`,"Show all":`Afficher tous`,Apply:`Appliquer`,"Please fill out this field":`Veuillez remplir ce champ`,"Please enter a web address":`Veuillez entrer une adresse web`,Default:`Par défaut`,Circle:`Cercle`,Dot:`Point`,Quadrate:`Quadratique`,Find:`Trouver`,"Find Previous":`Précédent`,"Find Next":`Suivant`,"Insert className":`Insérer un nom de classe`,"Press Alt for custom resizing":`Appuyez sur Alt pour un redimensionnement personnalisé`,"Embed code":`Code d'intégration`,Edit:`Modifier`,All:`Tout sélectionner`,"License: %s":`Licence: %s`},Jm={"Type something":`××§×× ×ש××...`,Advanced:`×תק××`,"About Jodit":`About Jodit`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Jodit User's Guide`,"contains detailed help for using":`contains detailed help for using.`,"For information about the license, please go to our website:":`For information about the license, please go to our website:`,"Buy full version":`Buy full version`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.`,Anchor:`××§×× ×¢××××`,"Open in new tab":`×¤×ª× ××ר××ס×× ××ש×`,"Open in fullsize":`×¤×ª× ×ת ××¢××¨× ××××× ××ש`,"Clear Formatting":`× ×§× ×¢×צ××`,"Fill color or set the text color":`×©× × ×¦××¢ ××§×¡× ×× ×¨×§×¢`,Redo:`×צע ש××`,Undo:`×××`,Bold:`××××ש`,Italic:`× ×××`,"Insert Unordered List":`××× ×¡ רש××ת ת××××××`,"Insert Ordered List":`××× ×¡ רש××× ×××ספרת`,"Align Center":`×ר××`,"Align Justify":`×שר `,"Align Left":`×שר ×ש×××`,"Align Right":`×שר ×××××`,"Insert Horizontal Line":`××× ×¡ ×§× ××פק×`,"Insert Image":`××× ×¡ ת××× ×`,"Insert file":`××× ×¡ ×§×××¥`,"Insert youtube/vimeo video":`××× ×¡ סר××× ××××× ×YouTube/Vimeo`,"Insert link":`××× ×¡ ×§×ש×ר`,"Font size":`×××× ××פ×`,"Font family":`××פ×`,"Insert format block":`××¢××¦× ×ר×ש`,Normal:`ר×××`,"Heading 1":`××תרת 1`,"Heading 2":`××תרת 2`,"Heading 3":`××תרת 3`,"Heading 4":`××תרת 4`,Quote:`צ××××`,Code:`×§××`,Insert:`××× ×¡`,"Insert table":`××× ×¡ ××××`,"Decrease Indent":`××§×× ×× ×ס×`,"Increase Indent":`×××× ×× ×ס×`,"Select Special Character":`××ר ×ª× ×××××`,"Insert Special Character":`××× ×¡ ×ª× ×××××`,"Paint format":`×עתק ×¢×צ××`,"Change mode":`××××£ ×צ×`,Margins:`ר××××`,top:`×¢××××`,right:`××××`,bottom:`ת×ת××`,left:`ש×××`,Styles:`×¢×צ×× CSS`,Classes:`×××קת CSS`,Align:`××ש×ר`,Right:`××××`,Center:`×ר××`,Left:`ש×××`,"--Not Set--":`--×× × ×§××¢--`,Src:`××§×ר`,Title:`××תרת`,Alternative:`××ת×× ×××פ×`,Link:`×§×ש×ר`,"Open link in new tab":`×¤×ª× ××ר××ס×× ××ש×`,Image:`ת××× ×`,file:`×§×××¥`,"Image properties":`××פ××× × ×ª××× ×`,Cancel:`×××××`,Ok:`××ש×ר`,"Your code is similar to HTML. Keep as HTML?":`××§×× ×××× ×HTML, ××× ××ש××ר ×HTML`,"Paste as HTML":`××××§ ×HTML`,Keep:`×ש×ר`,Clean:`× ×§×`,"Insert as Text":`××× ×¡ ××קס×`,"Word Paste Detected":`××××ª× ××××§× ×"××ר×"`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`×ת××× ××××××§ ××××¢ ××ס×× ××ר×/×קס×. ××× ×רצ×× × ××ש××ר ×ת ××¢×צ×× ×× ×× ×§×ת×`,"Insert only Text":`××× ×¡ ××§×¡× ××××`,"File Browser":`ס××ר ××§×צ××`,"Error on load list":`ש×××× ×××× ××¢×× ×ª רש×××`,"Error on load folders":`ש×××× ×××× ××¢×× ×ª תק××ת`,"Are you sure?":`××× ××ª× ××××?`,"Enter Directory name":`××× ×¡ ×©× ×ª×§××`,"Create directory":`צ×ר תק××`,"type name":`ס×× ××§×××¥`,"Drop image":`×סר ת××× ×`,"Drop file":`×סר ×§×××¥`,"or click":`×× ×××¥`,"Alternative text":`××ת×× ×××פ×`,Browse:`ס××ר`,Upload:`××¢××`,Backgroun
500d:`רקע`,Text:`×קס×`,Top:`×¢××××`,Middle:`×ר××`,Bottom:`ת×ת××`,"Insert column before":`××× ×¡ ×¢×××× ××¤× ×`,"Insert column after":`××× ×¡ ×¢×××× ××ר×`,"Insert row above":`××× ×¡ ש××¨× ××¢×`,"Insert row below":`××× ×¡ ש××¨× ×ת×ת`,"Delete table":`×××§ ××××`,"Delete row":`×××§ ש×ר×`,"Delete column":`×××§ ×¢××××`,"Empty cell":`ר××§× ×ª×`,Delete:`×××§`,"Strike through":`×§× ××צ×`,Underline:`×§× ×ª×ת××`,Break:`ש××רת ש×ר×`,"Search for":`×פש`,"Replace with":`××××£ ×`,Replace:`××××××£`,Edit:`ער××`,"Vertical align":`××ש×ר ×× ××`,"Horizontal align":`××ש×ר ××פק×`,Filter:`×¡× ×`,"Sort by changed":`××× ××¤× ×©×× ××`,"Sort by name":`×××× ××¤× ×©×`,"Sort by size":`×××× ××¤× ××××`,"Add folder":`××סף תק×××`,Split:`פ×צ××`,"Split vertical":`פ×צ×× ×× ××`,"Split horizontal":`פ×צ×× ××פק×`,Merge:`×××`,"Add column":`××סף ×¢××××`,"Add row":`××סף ש×ר×`,Border:`×ס×רת`,"Embed code":`××סף ×§××`,Update:`×¢×××`,superscript:`superscript`,subscript:`subscript`,"Cut selection":`×××ר ×××ר×`,Paste:`××××§`,"Choose Content to Paste":`××ר ת××× ×××××§×`,"Chars: %d":`ת××××: %d`,"Words: %d":`×××××: %d`,All:`×××`,"Select %s":`× ××ר: %s`,"Select all":`××ר ×××`,source:`HTML`,bold:`××××ש`,italic:`× ×××`,brush:`××רשת`,link:`×§×ש×ר`,undo:`×××`,redo:`×צע ש××`,table:`××××`,image:`ת××× ×`,eraser:`×××§`,paragraph:`פסק×`,fontsize:`×××× ××פ×`,video:`×××××`,font:`××פ×`,about:`×¢××× ×`,print:`××פס`,underline:`×§× ×ª×ת××`,strikethrough:`×§× ××צ×`,indent:`×××× ×× ×ס×`,outdent:`××§×× ×× ×ס×`,fullsize:`×××× ×××`,shrink:`××××¥`,hr:`×§× ××פק×`,ul:`רש××ת ת××××××`,ol:`רש××× ×××ספרת`,cut:`×ת××`,selectall:`××ר ×××`,"Open link":`×¤×ª× ×§×ש×ר`,"Edit link":`ער×× ×§×ש×ר`,"No follow":`××× ××¢×§×`,Unlink:`××× ×§×ש×ר`,Eye:`×צ×`,pencil:`××× ×ער××`," URL":`×ת××ת`,Reset:`×פס`,Save:`ש××ר`,"Save as ...":`ש××ר ×ש×...`,Resize:`×©× × ××××`,Crop:`×ת××`,Width:`ר×××`,Height:`××××`,"Keep Aspect Ratio":`ש××ר ××ס`,Yes:`××`,No:`××`,Remove:`×סר`,Select:`××ר`,"You can only edit your own images. Download this image on the host?":`רק ×§×צ×× ××ש×××××× ×©×× × ××ª× ×× ×ער×××. ××× ×××ר×× ×ת ××§×××¥?`,"The image has been successfully uploaded to the host!":`×ת××× × ×¢××ª× ××צ×××!`,palette:`×××`,"There are no files":`××× ×§×צ×× ×ספר×× ××.`,Rename:`××× ×ר×ת`,"Enter new name":`××× ×©× ××ש`,preview:`תצ××× ××§××××`,download:`××ר×`,"Paste from clipboard":`××××××§ ×××××`,"Your browser doesn't support direct access to the clipboard.":`××פ××¤× ×©×× ×× ×ª××× ×××©× ×ש××¨× ××××.`,"Copy selection":`×עתק ×××ר×`,copy:`×עתק`,"Border radius":`ר×××ס ×××××`,"Show all":`××¦× ×ת ××`,Apply:`×××`,"Please fill out this field":`× × ×××× ×©×× ××`,"Please enter a web address":`×× × ××× ×ת××ת ××× ××¨× ×`,Default:`×ר×רת ×××××`,Circle:`××¢××`,Dot:`× ×§×××`,Quadrate:`×ר××××¢ ×××`,Find:`××צ××`,"Find Previous":`××¦× ×ת ××§×××`,"Find Next":`×פש ×ת ×××`,"Insert className":`××× ×¡ ×ת ×©× ×××ת×`,"Press Alt for custom resizing":`×××¥ ×¢× ××× ×ש×× ×× ×××× ××ת×× ××ש×ת`,"License: %s":`ר×ש×××: %s`},Ym={"Type something":`Ãrjon be valamit`,Advanced:`Haladó`,"About Jodit":`Joditról`,"Jodit Editor":`Jodit Editor`,"Free Non-commercial Version":`Ingyenes változat`,"Jodit User's Guide":`Jodit útmutató`,"contains detailed help for using":`további segÃtséget tartalmaz`,"For information about the license, please go to our website:":`További licence információkért látogassa meg a weboldalunkat:`,"Buy full version":`Teljes verzió megvásárlása`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Minden jog fenntartva.`,Anchor:`Horgony`,"Open in new tab":`Megnyitás új lapon`,"Open in fullsize":`Megnyitás teljes méretben`,"Clear Formatting":`Formázás törl
500ése`,"Fill color or set the text color":`Háttér/szöveg szÃn`,Redo:`Ãjra`,Undo:`Visszavon`,Bold:`Félkövér`,Italic:`DÅlt`,"Insert Unordered List":`Pontozott lista`,"Insert Ordered List":`Számozott lista`,"Align Center":`Középre zárt`,"Align Justify":`Sorkizárt`,"Align Left":`Balra zárt`,"Align Right":`Jobbra zárt`,"Insert Horizontal Line":`VÃzszintes vonal beszúrása`,"Insert Image":`Kép beszúrás`,"Insert file":`Fájl beszúrás`,"Insert youtube/vimeo video":`Youtube videó beszúrása`,"Insert link":`Link beszúrás`,"Font size":`Betűméret`,"Font family":`BetűtÃpus`,"Insert format block":`Formázott blokk beszúrása`,Normal:`Normál`,"Heading 1":`Fejléc 1`,"Heading 2":`Fejléc 2`,"Heading 3":`Fejléc 3`,"Heading 4":`Fejléc 4`,Quote:`Idézet`,Code:`Kód`,Insert:`Beszúr`,"Insert table":`Táblázat beszúrása`,"Decrease Indent":`Behúzás csökkentése`,"Increase Indent":`Behúzás növelése`,"Select Special Character":`Speciális karakter kiválasztása`,"Insert Special Character":`Speciális karakter beszúrása`,"Paint format":`Kép formázása`,"Change mode":`Nézet váltása`,Print:`Nyomtatás`,Margins:`Szegélyek`,top:`felsÅ`,right:`jobb`,bottom:`alsó`,left:`bal`,Styles:`CSS stÃlusok`,Classes:`CSS osztályok`,Align:`IgazÃtás`,Right:`Jobbra`,Center:`Középre`,Left:`Balra`,"--Not Set--":`Nincs`,Src:`Forrás`,Title:`CÃm`,Alternative:`HelyettesÃtÅ szöveg`,Link:`Link`,"Open link in new tab":`Link megnyitása új lapon`,Image:`Kép`,file:`Fájl`,"Image properties":`Kép tulajdonságai`,Cancel:`Mégsem`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`A beillesztett szöveg HTML-nek tűnik. Megtartsuk HTML-ként?`,"Paste as HTML":`Beszúrás HTML-ként`,Keep:`Megtartás`,Clean:`Elvetés`,"Insert as Text":`Beszúrás szövegként`,"Word Paste Detected":`Word-bÅl másolt szöveg`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`A beillesztett tartalom Microsoft Word/Excel dokumentumból származik. Meg szeretné tartani a formátumát?`,"Insert only Text":`Csak szöveg beillesztése`,"File Browser":`Fájl tallózó`,"Error on load list":`Hiba a lista betöltése közben`,"Error on load folders":`Hiba a mappák betöltése közben`,"Are you sure?":`Biztosan ezt szeretné?`,"Enter Directory name":`Ãrjon be egy mappanevet`,"Create directory":`Mappa létrehozása`,"type name":`Ãrjon be bevet`,"Drop image":`Húzza ide a képet`,"Drop file":`Húzza ide a fájlt`,"or click":`vagy kattintson`,"Alternative text":`HelyettesÃtÅ szöveg`,Browse:`Tallóz`,Upload:`Feltölt`,Background:`Háttér`,Text:`Szöveg`,Top:`Fent`,Middle:`Középen`,Bottom:`Lent`,"Insert column before":`Oszlop beszúrás elé`,"Insert column after":`Oszlop beszúrás utána`,"Insert row above":`Sor beszúrás fölé`,"Insert row below":`Sor beszúrás alá`,"Delete table":`Táblázat törlése`,"Delete row":`Sor törlése`,"Delete column":`Oszlop törlése`,"Empty cell":`Cella tartalmának törlése`,Delete:`Törlés`,"Strike through":`Ãthúzott`,Underline:`Aláhúzott`,Break:`Szünet`,"Search for":`Keresés`,"Replace with":`Csere erre`,Replace:`Cserélje ki`,Edit:`Szerkeszt`,"Vertical align":`FüggÅleges igazÃtás`,"Horizontal align":`VÃzszintes igazÃtás`,Filter:`SzűrÅ`,"Sort by changed":`Rendezés módosÃtás szerint`,"Sort by name":`Rendezés név szerint`,"Sort by size":`Rendezés méret szerint`,"Add folder":`Mappa hozzáadás`,"Split vertical":`FüggÅleges felosztás`,"Split horizontal":`VÃzszintes felosztás`,Merge:`Ãsszevonás`,"Add column":`Oszlop hozzáadás`,"Add row":`Sor hozzáadás`,Border:`Szegély`,"Embed code":`Beágyazott kód`,Update:`FrissÃt`,superscript:`FelsÅ index`,subscript:`Alsó index`,"Cut selection":`Kivágás`,Paste:`Beillesztés`,"Choose Content to Paste":`Válasszon tartalmat a beillesztéshez`,Split:`Felosztás`,"Chars: %d":`Karakterek száma: %d`,"Words: %d":`Szavak száma: %d`,All:`Ãsszes`,"Select %s":`Kijelöl: %s`,"Select all":`Ãsszes kijelölése`,source:`HTML`,bold:`Félkövér`,italic:`DÅlt`,brush:`Ecset`,link:`Link`,undo:`Visszavon`,redo:`Ãjra`,table:`Táblázat`,image:`Kép`,eraser:`Törlés`,paragraph:`Paragráfus`,fontsize:`Betűméret`,video:`Videó`,font:`Betű`,about:`Rólunk`,print:`Nyomtat`,underline:`Aláhúzott`,strikethrough:`Ãthúzott`,indent:`Behúzás`,outdent:`Aussenseiter`,fullsize:`Teljes méret`,shrink:`Ãsszenyom`,hr:`Egyenes vonal`,ul:`Lista`,ol:`Számozott lista`,cut:`Kivág`,selectall:`Ãsszes kijelölése`,"Open link":`Link megnyitása`,"Edit link":`Link szerkesztése`,"No follow":`Nincs követés`,Unlink:`Link leválasztása`,Eye:`felülvizsgálat`,pencil:`Szerkesztés`," URL":`URL`,Reset:`VisszaállÃt`,Save:`Mentés`,"Save as ...":`Mentés másként...`,Resize:`Ãtméretezés`,Crop:`Kivág`,Wi
500dth:`Szélesség`,Height:`Magasság`,"Keep Aspect Ratio":`Képarány megtartása`,Yes:`Igen`,No:`Nem`,Remove:`EltávolÃt`,Select:`Kijelöl`,"You can only edit your own images. Download this image on the host?":`Csak a saját képeit tudja szerkeszteni. Letölti ezt a képet?`,"The image has been successfully uploaded to the host!":`Kép sikeresen feltöltve!`,palette:`Palette`,"There are no files":`Er zijn geen bestanden in deze map.`,Rename:`átnevezés`,"Enter new name":`Adja meg az új nevet`,preview:`elÅnézet`,download:`Letöltés`,"Paste from clipboard":`Illessze be a vágólap`,"Your browser doesn't support direct access to the clipboard.":`A böngészÅ nem támogatja a közvetlen hozzáférést biztosÃt a vágólapra.`,"Copy selection":`Másolás kiválasztása`,copy:`másolás`,"Border radius":`Határ sugár`,"Show all":`Ãsszes`,Apply:`Alkalmazni`,"Please fill out this field":`Kérjük, töltse ki ezt a mezÅt,`,"Please enter a web address":`Kérjük, Ãrja be a webcÃmet`,Default:`Alapértelmezett`,Circle:`Kör`,Dot:`Pont`,Quadrate:`Quadrate`,Find:`Találni`,"Find Previous":`Megtalálja ElÅzÅ`,"Find Next":`KövetkezÅ Keresése`,"Insert className":`Helyezze be az osztály nevét`,"Press Alt for custom resizing":`Nyomja meg az Alt egyéni átméretezés`,"License: %s":`Licenc: %s`},Xm={"Type something":`Ketik sesuatu`,"About Jodit":`Tentang Jodit`,"Jodit Editor":`Editor Jodit`,"Free Non-commercial Version":`Versi Bebas Non-komersil`,"Jodit User's Guide":`Panduan Pengguna Jodit`,"contains detailed help for using":`mencakup detail bantuan penggunaan`,"For information about the license, please go to our website:":`Untuk informasi tentang lisensi, silakan kunjungi website:`,"Buy full version":`Beli versi lengkap`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Hak Cipta © XDSoft.net - Chupurnov Valeriy. Hak cipta dilindungi undang-undang.`,Anchor:`Tautan`,"Open in new tab":`Buka di tab baru`,"Open in fullsize":`Buka editor dalam ukuran penuh`,"Clear Formatting":`Hapus Pemformatan`,"Fill color or set the text color":`Isi warna atau atur warna teks`,Redo:`Ulangi`,Undo:`Batalkan`,Bold:`Tebal`,Italic:`Miring`,"Insert Unordered List":`Sisipkan Daftar Tidak Berurut`,"Insert Ordered List":`Sisipkan Daftar Berurut`,"Align Center":`Tengah`,"Align Justify":`Penuh`,"Align Left":`Kiri`,"Align Right":`Kanan`,"Insert Horizontal Line":`Sisipkan Garis Horizontal`,"Insert Image":`Sisipkan Gambar`,"Insert file":`Sisipkan Berkas`,"Insert youtube/vimeo video":`Sisipkan video youtube/vimeo`,"Insert link":`Sisipkan tautan`,"Font size":`Ukuran font`,"Font family":`Keluarga font`,"Insert format block":`Sisipkan blok format`,Normal:`Normal`,"Heading 1":`Heading 1`,"Heading 2":`Heading 2`,"Heading 3":`Heading 3`,"Heading 4":`Heading 4`,Quote:`Kutip`,Code:`Kode`,Insert:`Sisipkan`,"Insert table":`Sisipkan tabel`,"Decrease Indent":`Kurangi Indentasi`,"Increase Indent":`Tambah Indentasi`,"Select Special Character":`Pilih Karakter Spesial`,"Insert Special Character":`Sisipkan Karakter Spesial`,"Paint format":`Formar warna`,"Change mode":`Ubah mode`,Margins:`Batas`,top:`atas`,right:`kanan`,bottom:`bawah`,left:`kiri`,Styles:`Gaya`,Classes:`Class`,Align:`Rata`,Right:`Kanan`,Center:`Tengah`,Left:`Kiri`,"--Not Set--":`--Tidak diset--`,Src:`Src`,Title:`Judul`,Alternative:`Teks alternatif`,Link:`Tautan`,"Open link in new tab":`Buka tautan di tab baru`,Image:`Gambar`,file:`berkas`,Advanced:`Lanjutan`,"Image properties":`Properti gambar`,Cancel:`Batal`,Ok:`Ya`,"Your code is similar to HTML. Keep as HTML?":`Kode Anda cenderung ke HTML. Biarkan sebagai HTML?`,"Paste as HTML":`Paste sebagai HTML`,Keep:`Jaga`,Clean:`Bersih`,"Insert as Text":`Sisipkan sebagai teks`,"Insert only Text":`Sisipkan hanya teks`,"Word Paste Detected":`Terdeteksi paste dari Word`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Konten dipaste dari dokumen Microsoft Word/Excel. Apakah Anda ingin tetap menjaga format atau membersihkannya?`,"File Browser":`Penjelajah Berkas`,"Error on load list":`Error ketika memuat list`,"Error on load folders":`Error ketika memuat folder`,"Are you sure?":`Apakah Anda yakin?`,"Enter Directory name":`Masukkan nama Direktori`,"Create directory":`Buat direktori`,"type name":`ketik nama`,"Drop image":`Letakkan gambar`,"Drop file":`Letakkan berkas`,"or click":`atau klik`,"Alternative text":`Teks alternatif`,Browse:`Jelajahi`,Upload:`Unggah`,Backgroun
500d:`Latar Belakang`,Text:`Teks`,Top:`Atas`,Middle:`Tengah`,Bottom:`Bawah`,"Insert column before":`Sisipkan kolom sebelumnya`,"Insert column after":`Sisipkan kolom setelahnya`,"Insert row above":`Sisipkan baris di atasnya`,"Insert row below":`Sisipkan baris di bawahnya`,"Delete table":`Hapus tabel`,"Delete row":`Hapus baris`,"Delete column":`Hapus kolom`,"Empty cell":`Kosongkan cell`,source:`sumber`,bold:`tebal`,italic:`miring`,brush:`sikat`,link:`tautan`,undo:`batalkan`,redo:`ulangi`,table:`tabel`,image:`gambar`,eraser:`penghapus`,paragraph:`paragraf`,fontsize:`ukuran font`,video:`video`,font:`font`,about:`tentang`,print:`cetak`,underline:`garis bawah`,strikethrough:`coret`,indent:`menjorok ke dalam`,outdent:`menjorok ke luar`,fullsize:`ukuran penuh`,shrink:`menyusut`,hr:`hr`,ul:`ul`,ol:`ol`,cut:`potong`,selectall:`Pilih semua`,"Embed code":`Kode embed`,"Open link":`Buka tautan`,"Edit link":`Edit tautan`,"No follow":`No follow`,Unlink:`Hapus tautan`,Eye:`Mata`,pencil:`pensil`,Update:`Perbarui`," URL":`URL`,Edit:`Edit`,"Horizontal align":`Perataan horizontal`,Filter:`Filter`,"Sort by changed":`Urutkan berdasarkan perubahan`,"Sort by name":`Urutkan berdasarkan nama`,"Sort by size":`Urutkan berdasarkan ukuran`,"Add folder":`Tambah folder`,Reset:`Reset`,Save:`Simpan`,"Save as ...":`Simpan sebagai...`,Resize:`Ubah ukuran`,Crop:`Crop`,Width:`Lebar`,Height:`Tinggi`,"Keep Aspect Ratio":`Jaga aspek rasio`,Yes:`Ya`,No:`Tidak`,Remove:`Copot`,Select:`Pilih`,"Chars: %d":`Karakter: %d`,"Words: %d":`Kata: %d`,All:`Semua`,"Select %s":`Pilih %s`,"Select all":`Pilih semua`,"Vertical align":`Rata vertikal`,Split:`Bagi`,"Split vertical":`Bagi secara vertikal`,"Split horizontal":`Bagi secara horizontal`,Merge:`Gabungkan`,"Add column":`Tambah kolom`,"Add row":`tambah baris`,Delete:`Hapus`,Border:`Bingkai`,"License: %s":`Lisensi: %s`,"Strike through":`Coret`,Underline:`Garis Bawah`,superscript:`Superskrip`,subscript:`Subskrip`,"Cut selection":`Potong pilihan`,Break:`Berhenti`,"Search for":`Mencari`,"Replace with":`Ganti dengan`,Replace:`Mengganti`,Paste:`Paste`,"Choose Content to Paste":`Pilih konten untuk dipaste`,"You can only edit your own images. Download this image on the host?":`Anda hanya dapat mengedit gambar Anda sendiri. Unduh gambar ini di host?`,"The image has been successfully uploaded to the host!":`Gambar telah sukses diunggah ke host!`,palette:`palet`,"There are no files":`Tidak ada berkas`,Rename:`ganti nama`,"Enter new name":`Masukkan nama baru`,preview:`pratinjau`,download:`Unduh`,"Paste from clipboard":`Paste dari clipboard`,"Your browser doesn't support direct access to the clipboard.":`Browser anda tidak mendukung akses langsung ke clipboard.`,"Copy selection":`Copy seleksi`,copy:`copy`,"Border radius":`Border radius`,"Show all":`Tampilkan semua`,Apply:`Menerapkan`,"Please fill out this field":`Silahkan mengisi kolom ini`,"Please enter a web address":`Silahkan masukkan alamat web`,Default:`Default`,Circle:`Lingkaran`,Dot:`Dot`,Quadrate:`Kuadrat`,Find:`Menemukan`,"Find Previous":`Menemukan Sebelumnya`,"Find Next":`Menemukan Berikutnya`,"Insert className":`Masukkan nama kelas`,"Press Alt for custom resizing":`Tekan Alt untuk mengubah ukuran kustom`},Zm={"Type something":`Scrivi qualcosa...`,Advanced:`Avanzato`,"About Jodit":`A proposito di Jodit`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Guida utente di Jodit`,"contains detailed help for using":`contiene una guida dettagliata per l'uso.`,"For information about the license, please go to our website:":`Per informazioni sulla licenza, si prega di visitare il nostro sito web:`,"Buy full version":`Acquista la versione completa`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Tutti i diritti riservati.`,Anchor:`Link`,"Open in new tab":`Apri in una nuova scheda`,"Open in fullsize":`Apri l'editor a schermo intero`,"Clear Formatting":`Pulisci Formattazione`,"Fill color or set the text color":`Colore di sfondo o del testo`,Redo:`Ripristina`,Undo:`Annulla`,Bold:`Grassetto`,Italic:`Corsivo`,"Insert Unordered List":`Inserisci lista non ordinata`,"Insert Ordered List":`Inserisci lista ordinata`,"Align Center":`Allinea al centro`,"Align Justify":`Allineamento Giustificato`,"Align Left":`Allinea a Sinistra`,"Align Right":`Allinea a Destra`,"Insert Horizontal Line":`Inserisci una linea orizzontale`,"Insert Image":`Inserisci immagine`,"Insert file":`Inserisci un file`,"Insert youtube/vimeo video":`Inserisci video Youtube/Vimeo`,"Insert link":`Inserisci link`,"Font size":`Dimensione carattere`,"Font family":`Tipo di font`,"Insert format block":`Inserisci blocco`,Normal:`Normale`,"Heading 1":`Intestazione 1`,"Heading 2":`Intestazione 2`,"Heading 3":`Intestazione 3`,"Heading 4":`Intestazione 4`,Quote:`Citazione`,Code:`Codice`,Insert:`Inserisci`,"Insert table":`Inserisci tabella`,"Decrease Indent":`Riduci il rientro`,"Increase Indent":`Aumenta il rientro`,"Select Special Character":`Seleziona un carattere speciale`,"Insert Special Character":`Inserisci un carattere speciale`,"Paint format":`Copia formato`,"Change mode":`Cambia modalita'`,Margins:`Margini`,top:`su`,right:`destra`,bottom:`giù`,left:`sinistra`,Styles:`Stili CSS`,Classes:`Classi CSS`,Align:`Allinea`,Right:`Destra`,Center:`Centro`,Left:`Sinistra`,"--Not Set--":`--Non Impostato--`,Src:`Fonte`,Title:`Titolo`,Alternative:`Testo Alternativo`,Link:`Link`,"Open link in new tab":`Apri il link in una nuova scheda`,Image:`Immagine`,file:`Archiv
500io`,"Image properties":`Proprietà dell'immagine`,Cancel:`Annulla`,Ok:`Accetta`,"Your code is similar to HTML. Keep as HTML?":`Il codice è simile all'HTML. Mantieni come HTML?`,"Paste as HTML":`Incolla come HTML`,Keep:`Mantieni`,Clean:`Pulisci`,"Insert as Text":`Inserisci come testo`,"Word Paste Detected":`Incolla testo da Word rilevato`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Il contenuto incollato proviene da un documento Microsoft Word / Excel. Vuoi mantenere il formato o pulirlo?`,"Insert only Text":`Inserisci solo il testo`,"File Browser":`Cerca file`,"Error on load list":`Errore durante il caricamento dell'elenco`,"Error on load folders":`Errore durante il caricamento delle cartelle`,"Are you sure?":`Sei sicuro?`,"Enter Directory name":`Inserisci il nome della cartella`,"Create directory":`Crea cartella`,"type name":`Digita il nome`,"Drop image":`Cancella immagine`,"Drop file":`Cancella file`,"or click":`o clicca`,"Alternative text":`Testo alternativo`,Browse:`Sfoglia`,Upload:`Carica`,Background:`Sfondo`,Text:`Testo`,Top:`Su`,Middle:`Centro`,Bottom:`Sotto`,"Insert column before":`Inserisci la colonna prima`,"Insert column after":`Inserisci la colonna dopo`,"Insert row above":`Inserisci la riga sopra`,"Insert row below":`Inserisci la riga sotto`,"Delete table":`Elimina tabella`,"Delete row":`Elimina riga`,"Delete column":`Elimina colonna`,"Empty cell":`Cella vuota`,Delete:`Cancella`,"Strike through":`Barrato`,Underline:`Sottolineato`,Break:`Pausa`,"Search for":`Cerca per`,"Replace with":`Sostituisci con`,Replace:`Sostituisci`,Edit:`Modifica`,"Vertical align":`Allineamento verticala`,"Horizontal align":`Allineamento orizzontale`,Filter:`Filtro`,"Sort by changed":`Ordina per data di modifica`,"Sort by name":`Ordina per nome`,"Sort by size":`Ordina per dimensione`,"Add folder":`Aggiungi cartella`,Split:`Dividi`,"Split vertical":`Dividi verticalmente`,"Split horizontal":`Dividi orizzontale`,Merge:`Fondi`,"Add column":`Aggiungi colonna`,"Add row":`Aggiungi riga`,Border:`Bordo`,"Embed code":`Includi codice`,Update:`Aggiorna`,superscript:`indice`,subscript:`pedice`,"Cut selection":`Taglia selezione`,Paste:`Incolla`,"Choose Content to Paste":`Seleziona il contenuto da incollare`,"Chars: %d":`Caratteri: %d`,"Words: %d":`Parole: %d`,All:`Tutto`,"Select %s":`Seleziona: %s`,"Select all":`Seleziona tutto`,source:`risorsa`,bold:`Grassetto`,italic:`Corsivo`,brush:`Pennello`,link:`Link`,undo:`Annulla`,redo:`Ripristina`,table:`Tabella`,image:`Immagine`,eraser:`Gomma`,paragraph:`Paragrafo`,fontsize:`Dimensione del carattere`,video:`Video`,font:`Font`,about:`Approposito di`,print:`Stampa`,underline:`Sottolineato`,strikethrough:`Barrato`,indent:`aumenta rientro`,outdent:`riduci rientro`,fullsize:`espandi`,shrink:`comprimi`,hr:`linea orizzontale`,ul:`lista non ordinata`,ol:`lista ordinata`,cut:`Taglia`,selectall:`Seleziona tutto`,"Open link":`Apri link`,"Edit link":`Modifica link`,"No follow":`Non seguire`,Unlink:`Rimuovi link`,Eye:`Recensione`,pencil:`Per modificare`," URL":` URL`,Reset:`Reset`,Save:`Salva`,"Save as ...":`Salva con nome...`,Resize:`Ridimensiona`,Crop:`Ritaglia`,Width:`Larghezza`,Height:`Altezza`,"Keep Aspect Ratio":`Mantieni le proporzioni`,Yes:`Si`,No:`No`,Remove:`Rimuovi`,Select:`Seleziona`,"You can only edit your own images. Download this image on the host?":`Puoi modificare solo le tue immagini. Vuoi scaricare questa immagine dal server?`,"The image has been successfully uploaded to the host!":`L'immagine è stata caricata correttamente sul server!`,palette:`tavolozza`,"There are no files":`Non ci sono file in questa directory.`,Rename:`Rinomina`,"Enter new name":`Inserisci un nuovo nome`,preview:`anteprima`,download:`Scarica`,"Paste from clipboard":`Incolla dagli appunti`,"Your browser doesn't support direct access to the clipboard.":`Il tuo browser non supporta l'accesso diretto agli appunti.`,"Copy selection":`Copia selezione`,copy:`copia`,"Border radius":`Border radius`,"Show all":`Mostra tutti`,Apply:`Applica`,"Please fill out this field":`Si prega di compilare questo campo`,"Please enter a web address":`Si prega di inserire un indirizzo web`,Default:`Default`,Circle:`Cerchio`,Dot:`Punto`,Quadrate:`Quadrato`,"Lower Alpha":`Lettera Minuscola`,"Lower Greek":`Lettera Greca Minuscola`,"Lower Roman":`Numero Romano Minuscolo`,"Upper Alpha":`Lettera Maiuscola`,"Upper Roman":`Numero Romano Maiuscolo`,Find:`Trova`,"Find Previous":`Trova Precedente`,"Find Next":`Trova Successivo`,"Insert className":`Inserisci il nome della classe`,"Press Alt for custom resizing":`Premere Alt per il ridimensionamento personalizzato`,"License: %s":`Licenza: %s`},Qm={"Type something":`ãªã«ãã¿ã¤ããã¦ãã ãã`,Advanced:`é«åº¦ãªè¨å®`,"About Jodit":`Joditã«ã¤ãã¦`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Jodit ã¦ã¼ã¶ã¼ãºã»ã¬ã¤ã`,"contains detailed help for using":`詳ããä½¿ãæ¹`,"For information about the license, please go to our website:":`ã©ã¤ã»ã³ã¹è©³ç´°ã«ã¤ãã¦ã¯Jodit Webãµã¤ãã確èªãã ããï¼`,"Buy full version":`ãã«ãã¼ã¸ã§ã³ãè³¼å
¥`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.`,Anchor:`Anchor`,"Open in new tab":`æ°ããã¿ãã§éã`,"Open in fullsize":`ã¨ãã£ã¿ã¼ã®ãµã¤ãºï¼ãã«/ãã¼ãã«ï¼`,"Clear Formatting":`æ¸å¼ãã¯ãªã¢`,"Fill color or set the text color":`ããã¹ãã®è²`,Redo:`ããç´ã`,Undo:`å
ã«æ»ã`,Bold:`太å`,Italic:`æä½`,"Insert Unordered List":`ç®æ¡æ¸ã`,"Insert Ordered List":`çªå·ä»ããªã¹ã`,"Align Center":`ä¸å¤®æã`,"Align Justify":`両端æã`,"Align Left":`å·¦æã`,"Align Right":`峿ã`,"Insert Horizontal Line":`åºåãç·ãæ¿å
¥`,"Insert Image":`ç»åãæ¿å
¥`,"Insert file":`ãã¡ã¤ã«ãæ¿å
¥`,"Insert youtube/vimeo video":`Youtube/Vimeo åç»`,"Insert link":`ãªã³ã¯ãæ¿å
¥`,"Font size":`ãã©ã³ããµã¤ãº`,"Font family":`ãã©ã³ã`,"Insert format block":`ããã¹ãã®ã¹ã¿ã¤ã«`,Normal:`æå®ãªã`,"Heading 1":`ã¿ã¤ãã«1`,"Heading 2":`ã¿ã¤ãã«2`,"Heading 3":`ã¿ã¤ãã«3`,"Heading 4":`ã¿ã¤ãã«4`,Quote:`å¼ç¨`,Code:`ã³ã¼ã`,Insert:`æ¿å
¥`,"Insert table":`è¡¨ãæ¿å
¥`,"Decrease Indent":`ã¤ã
500³ãã³ãæ¸`,"Increase Indent":`ã¤ã³ãã³ãå¢`,"Select Special Character":`ç¹æ®æåã鏿`,"Insert Special Character":`ç¹æ®æåãæ¿å
¥`,"Paint format":`æ¸å¼ãè²¼ä»ã`,"Change mode":`ç·¨éã¢ã¼ãåæ¿ã`,Margins:`ãã¼ã¸ã³`,top:`ä¸`,right:`å³`,bottom:`ä¸`,left:`å·¦`,Styles:`ã¹ã¿ã¤ã«`,Classes:`ã¯ã©ã¹`,Align:`é
ç½®`,Right:`å³å¯ã`,Center:`ä¸å¤®å¯ã`,Left:`å·¦å¯ã`,"--Not Set--":`æå®ãªã`,Src:`ã½ã¼ã¹`,Title:`ã¿ã¤ãã«`,Alternative:`代æ¿ããã¹ã`,Link:`ãªã³ã¯`,"Open link in new tab":`æ°ããã¿ãã§éã`,Image:`ç»å`,file:`ãã¡ã¤ã«`,"Image properties":`ç»åã®ããããã£ã¼`,Cancel:`ãã£ã³ã»ã«`,Ok:`確å®`,"Your code is similar to HTML. Keep as HTML?":`HTMLã³ã¼ããä¿æãã¾ããï¼`,"Paste as HTML":`HTMLã§è²¼ä»ã`,Keep:`HTMLãä¿æ`,Clean:`Clean`,"Insert as Text":`HTMLãããã¹ãã«ãã`,"Word Paste Detected":`Word Paste Detected`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?`,"Insert only Text":`ããã¹ãã ã`,"File Browser":`File Browser`,"Error on load list":`Error on load list`,"Error on load folders":`Error on load folders`,"Are you sure?":`Are you sure?`,"Enter Directory name":`Enter Directory name`,"Create directory":`Create directory`,"type name":`type name`,"Drop image":`ããã«ç»åããããã`,"Drop file":`ããã«ãã¡ã¤ã«ããããã`,"or click":`or ã¯ãªãã¯`,"Alternative text":`代æ¿ããã¹ã`,Browse:`ãã©ã¦ãº`,Upload:`ã¢ãããã¼ã`,Background:`èæ¯`,Text:`æå`,Top:`ä¸`,Middle:`ä¸å¤®`,Bottom:`ä¸`,"Insert column before":`å·¦ã«åãæ¿å
¥`,"Insert column after":`å³ã«åãæ¿å
¥`,"Insert row above":`ä¸ã«è¡ãæ¿å
¥`,"Insert row below":`ä¸ã«è¡ãæ¿å
¥`,"Delete table":`表ãåé¤`,"Delete row":`è¡ãåé¤`,"Delete column":`åãåé¤`,"Empty cell":`ã»ã«ã空ã«ãã`,"Chars: %d":`æåæ°: %d`,"Words: %d":`åèªæ°: %d`,"Strike through":`åãæ¶ãç·`,Underline:`ä¸ç·`,superscript:`ä¸ä»ãæå`,subscript:`ä¸ä»ãæå`,"Cut selection":`åãåã`,"Select all":`ãã¹ã¦é¸æ`,Break:`Pause`,"Search for":`æ¤ç´¢`,"Replace with":`ç½®æ`,Replace:`交æ`,Paste:`è²¼ä»ã`,"Choose Content to Paste":`鏿ããå
容ãè²¼ä»ã`,All:`å
¨é¨`,source:`source`,bold:`bold`,italic:`italic`,brush:`brush`,link:`link`,undo:`undo`,redo:`redo`,table:`table`,image:`image`,eraser:`eraser`,paragraph:`paragraph`,fontsize:`fontsize`,video:`video`,font:`font`,about:`about`,print:`print`,underline:`underline`,strikethrough:`strikethrough`,indent:`indent`,outdent:`outdent`,fullsize:`fullsize`,shrink:`shrink`,hr:`åå²ç·`,ul:`ç®æ¡æ¸ã`,ol:`çªå·ä»ããªã¹ã`,cut:`åãåã`,selectall:`ãã¹ã¦é¸æ`,"Open link":`ãªã³ã¯ãéã`,"Edit link":`ãªã³ã¯ãç·¨é`,"No follow":`No follow`,Unlink:`ãªã³ã¯è§£é¤`,Eye:`ãµã¤ãã確èª`," URL":`URL`,Reset:`ãªã»ãã`,Save:`ä¿å`,"Save as ...":`Save as ...`,Resize:`ãªãµã¤ãº`,Crop:`Crop`,Width:`å¹
`,Height:`é«ã`,"Keep Aspect Ratio":`縦横æ¯ãä¿æ`,Yes:`ã¯ã`,No:`ããã`,Remove:`ç§»é¤`,Select:`鏿`,"Select %s":`鏿: %s`,Update:`æ´æ°`,"Vertical align":`åç´æ¹åã®é
ç½®`,Merge:`ã»ã«ã®çµå`,"Add column":`åã追å `,"Add row":`è¡ã追å `,Border:`å¢çç·`,"Embed code":`åãè¾¼ã¿ã³ã¼ã`,Delete:`åé¤`,Edit:`ç·¨é`,"Horizontal align":`æ°´å¹³æ¹åã®é
ç½®`,Filter:`Filter`,"Sort by changed":`Sort by changed`,"Sort by name":`Sort by name`,"Sort by size":`Sort by size`,"Add folder":`Add folder`,Split:`åå²`,"Split vertical":`ã»ã«ã®åå²ï¼åç´æ¹åï¼`,"Split horizontal":`ã»ã«ã®åå²ï¼æ°´å¹³æ¹åï¼`,"You can only edit your own images. Download this image on the host?":`You can only edit your own images. Download this image on the host?`,"The image has been successfully uploaded to the host!":`The image has been successfully uploaded to the host!`,palette:`ãã¬ãã`,pencil:`éç`,"There are no files":`There are no files`,Rename:`Rename`,"Enter new name":`Enter new name`,preview:`ãã¬ãã¥ã¼`,download:`ãã¦ã³ãã¼ã`,"Paste from clipboard":`è²¼ãä»ã`,"Your browser doesn't support direct access to the clipboard.":`ã使ãã®ãã©ã¦ã¶ã¯ã¯ãªãããã¼ãã使ç¨ã§ãã¾ãã`,"Copy selection":`ã³ãã¼`,copy:`copy`,"Border radius":`è§ã®ä¸¸ã¿`,"Show all":`å
¨ã¦è¡¨ç¤º`,Apply:`é©ç¨`,"Please fill out this field":`ã¾ã ãã®åé`,"Please enter a web address":`ãå
¥åãã¦ãã ããã¦ã§ãã¢ãã¬ã¹`,Default:`ããã©ã«ã`,Circle:`ç½ä¸¸`,Dot:`é»ä¸¸`,Quadrate:`åè§`,Find:`è¦`,"Find Previous":`æ¢å`,"Find Next":`ç±æ¥`,"Lower Alpha":`è±å°æå`,"Lower Greek":`ã®ãªã·ã£æå`,"Lower Roman":`ãã¼ãæ°åå°æå`,"Upper Alpha":`è±å¤§æå`,"Upper Roman":`ãã¼ãæ°å大æå`,"Insert className":`ã¯ã©ã¹åãæ¿å
¥`,"Press Alt for custom resizing":`ã«ã¹ã¿ã ãµã¤ãºå¤æ´ã®ããã®Altãã¼ãæ¼ãã¾ã`,"License: %s":`ã©ã¤ã»ã³ã¹: %s`},$m={},eh={"Type something":`무ìì´ë ì
ë ¥íì¸ì`,"About Jodit":`Joditì ëíì¬`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Jodit ì¬ì©ì ìë´ì`,"contains detailed help for using":`ìì¸í ëìë§ì´ ë¤ì´ìì´ì`,"For information about the license, please go to our website:":`ë¼ì´ì¼ì¤ì ê´í´ìë Jodit ì¹ ì¬ì´í¸ë¥¼ 방문í´ì£¼ì¸ìï¼`,"Buy full version":`í ë²ì 구ì
í기`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`© XDSoft.net - Chupurnov Valeriy. ìê² ì ìê¶ê³¼ 모ë ê¶ë¦¬ê° ììµëë¤.`,Anchor:`Anchor`,"Open in new tab":`ì íìì ì´ê¸°`,"Open in fullsize":`ì ì²´ í¬ê¸°ë¡ 보기`,"Clear Formatting":`ìì ì§ì°ê¸°`,"Fill color or set the text color":`ê¸ì¨ ìì`,Redo:`ì¬ì¤í`,Undo:`ì¤í ì·¨ì`,Bold:`êµµê²`,Italic:`기ì¸ì`,"Insert Unordered List":`ê¸ë¨¸ë¦¬ 목ë¡`,"Insert Ordered List":`ë²í¸ 목ë¡`,"Align Center":`ê°ì´ë° ì ë ¬`,"Align Justify":`ì쪽 ì ë ¬`,"Align Left":`ì¼ìª½ ì ë ¬`,"Align Right":`ì¤ë¥¸ìª½ ì ë ¬`,"Insert Horizontal Line":`ìí 구ë¶ì ë£ê¸°`,"Insert Image":`ì´ë¯¸ì§ ë£ê¸°`,"Insert file":`íì¼ ë£ê¸°`,"Insert youtube/vimeo video":`Youtube/Vimeo ëìì`,"Insert link":`ë§í¬ ë£ê¸°`,"Font size":`ê¸ê¼´ í¬ê¸°`,"Font family":`ê¸ê¼´`,"Insert format block":`ë¸ë¡ ìì ë£ê¸°`,Normal:`ì¼ë° í
ì¤í¸`,"Heading 1":`ì 목 1`,"Heading 2":`ì 목 2`,"Heading 3":`ì 목 3`,"Heading 4":`ì 목 4`,Quote:`ì¸ì©`,Code:`ì½ë`,Insert:`ë¶ì¬ ë£ê¸°`,"Insert table":`í
ì´ë¸`,"Decrease Indent":`ë¤ì¬ì°ê¸° ê°ì`,"Increase Indent":`ë¤ì¬ì°ê¸° ì¦ê°`,"Select Special Character":`í¹ì문ì ì í`,"Insert Special Character":`í¹ì문ì ì
ë ¥`,"Paint format":`íì¸í¸ íì`,"Change mode":`í¸ì§ëª¨ë ë³ê²½`,Margins:`ë§ì§`,top:`ì`,right:`ì¤ë¥¸ìª½`,bottom:`ìë`,left:`ì¼ìª½`,Styles:`ì¤íì¼`,Classes:`í´ëì¤`,Align:`ì ë ¬`,Right:`ì¤ë¥¸ìª½ì¼ë¡`,Center:`ê°ì´ë°ë¡`,Left:`ì¼ìª½ì¼ë¡`,"--Not Set--":`--ì
500§ì ì í¨--`,Src:`ê²½ë¡(src)`,Title:`ì 목`,Alternative:`ëì²´ í
ì¤í¸(alt)`,Link:`ë§í¬`,"Open link in new tab":`ì íìì ì´ê¸°`,file:`íì¼`,Advanced:`ê³ ê¸`,"Image properties":`ì´ë¯¸ì§ ìì±`,Cancel:`ì·¨ì`,Ok:`íì¸`,"Your code is similar to HTML. Keep as HTML?":`HTML ì½ëë¡ ê°ì§íì´ì. ì½ëì¸ì±ë¡ ë¶ì¬ë£ìê¹ì?`,"Paste as HTML":`HTMLë¡ ë¶ì¬ë£ê¸°`,Keep:`ì본 ì ì§`,Clean:`ì§ì°ê¸°`,"Insert as Text":`í
ì¤í¸ë¡ ë£ê¸°`,"Insert only Text":`í
ì¤í¸ë§ ë£ê¸°`,"Word Paste Detected":`Word ë¶ì¬ë£ê¸° ê°ì§`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Microsoft Word/Excel 문ìë¡ ê°ì§íì´ì. ììì ì ì§íì±ë¡ ë¶ì¬ë£ìê¹ì?`,"File Browser":`íì¼ íì기`,"Error on load list":`ëª©ë¡ ë¶ë¬ì¤ê¸° ìë¬`,"Error on load folders":`í´ë ë¶ë¬ì¤ê¸°`,"Are you sure?":`ì ë§ ì§íí ê¹ì?`,"Enter Directory name":`ëë í 리 ì´ë¦ ì
ë ¥`,"Create directory":`ëë í 리 ìì±`,"type name":`ì´ë¦ ì
ë ¥`,"Drop image":`ì´ë¯¸ì§ ëëê·¸`,"Drop file":`íì¼ ëëê·¸`,"or click":`í¹ì í´ë¦`,"Alternative text":`ëì²´ í
ì¤í¸`,Browse:`íì`,Upload:`ì
ë¡ë`,Background:`ë°°ê²½`,Text:`í
ì¤í¸`,Top:`ì`,Middle:`ì¤ì`,Bottom:`ìë`,"Insert column before":`ì´ì ì´ì ì½ì
`,"Insert column after":`ë¤ì ì´ì ì½ì
`,"Insert row above":`ì íì ì½ì
`,"Insert row below":`ìë íì ì½ì
`,"Delete table":`í
ì´ë¸ ìì `,"Delete row":`í ìì `,"Delete column":`ì´ ìì `,"Empty cell":`ë¹ ì
`,source:`HTML ìì¤`,bold:`ë³¼ë`,italic:`ì´í¤ë¦`,brush:`ë¸ë¬ì`,link:`ë§í¬`,undo:`ì¤í ì·¨ì`,redo:`ì¬ì¤í`,table:`í
ì´ë¸`,image:`ì´ë¯¸ì§`,eraser:`ì§ì°ê°`,paragraph:`문ë¨`,fontsize:`ê¸ê¼´ í¬ê¸°`,video:`ë¹ëì¤`,font:`ê¸ê¼´`,about:`í¸ì§ê¸° ì ë³´`,print:`í린í¸`,underline:`ë°ì¤`,strikethrough:`ì·¨ìì `,indent:`ë¤ì¬ì°ê¸°`,outdent:`ë´ì´ì°ê¸°`,fullsize:`ì ì²´ íë©´`,shrink:`ì¼ë° íë©´`,hr:`구ë¶ì `,ul:`ê¸ë¨¸ë¦¬ 목ë¡`,ol:`ë²í¸ 목ë¡`,cut:`ìë¼ë´ê¸°`,selectall:`모ë ì í`,"Embed code":`Embed ì½ë`,"Open link":`ë§í¬ ì´ê¸°`,"Edit link":`ë§í¬ í¸ì§`,"No follow":`No follow`,Unlink:`ë§í¬ ì ê±°`,Eye:`ì¬ì´í¸ íì¸`,pencil:`ì°í`,Update:`ê°±ì `," URL":`URL`,Edit:`í¸ì§`,"Horizontal align":`ìí ì ë ¬`,Filter:`íí°`,"Sort by changed":`ë³ê²½ì¼ ì ë ¬`,"Sort by name":`ì´ë¦ ì ë ¬`,"Sort by size":`í¬ê¸° ì ë ¬`,"Add folder":`ì í´ë`,Reset:`ì´ê¸°í`,Save:`ì ì¥`,"Save as ...":`ìë¡ ì ì¥í기 ...`,Resize:`리ì¬ì´ì¦`,Crop:`í¬ë¡`,Width:`ê°ë¡ 길ì´`,Height:`ì¸ë¡ ëì´`,"Keep Aspect Ratio":`ë¹ì¨ ì ì§í기`,Yes:`ë¤`,No:`ìëì¤`,Remove:`ì ê±°`,Select:`ì í`,"Chars: %d":`문ìì: %d`,"Words: %d":`ë¨ì´ì: %d`,All:`모ë`,"Select all":`모ë ì í`,"Select %s":`ì í: %s`,"Vertical align":`ìì§ ì ë ¬`,Split:`ë¶í `,"Split vertical":`ì¸ë¡ ì
ë¶í `,"Split horizontal":`ê°ë¡ ì
ë¶í `,Merge:`ì
ë³í©`,"Add column":`ì´ ì¶ê°`,"Add row":`í ì¶ê°`,Delete:`ìì `,Border:`ì¸ê³½ì `,"License: %s":`ë¼ì´ì¼ì¤: %s`,"Strike through":`ì·¨ìì `,Underline:`ë°ì¤`,superscript:`ì첨ì`,subscript:`ìë첨ì`,"Cut selection":`ì í ìë¼ë´ê¸°`,Break:`구ë¶ì`,"Search for":`ê²ì`,"Replace with":`ëì²´í기`,Replace:`ëì²´`,Paste:`ë¶ì¬ë£ê¸°`,"Choose Content to Paste":`ë¶ì¬ë£ì ë´ì© ì í`,"You can only edit your own images. Download this image on the host?":`ì¸ë¶ ì´ë¯¸ì§ë í¸ì§í ì ìì´ì. ì¸ë¶ ì´ë¯¸ì§ë¥¼ ë¤ì´ë¡ë í ê¹ì?`,"The image has been successfully uploaded to the host!":`ì´ë¯¸ì§ë¥¼ 무ì¬í ì
ë¡ë íì´ì!`,palette:`íë í¸`,"There are no files":`íì¼ì´ ìì´ì`,Rename:`ì´ë¦ ë³ê²½`,"Enter new name":`ì ì´ë¦ ì
ë ¥`,preview:`미리보기`,download:`ë¤ì´ë¡ë`,"Paste from clipboard":`í´ë¦½ë³´ë ë¶ì¬ë£ê¸°`,"Your browser doesn't support direct access to the clipboard.":`ì¬ì©ì¤ì¸ ë¸ë¼ì°ì ê° í´ë¦½ë³´ë ì ê·¼ì ì§ìíì§ ììì.`,"Copy selection":`ì í ë³µì¬`,copy:`ë³µì¬`,"Border radius":`ë¥ê·¼ í
ë리`,"Show all":`모ë 보기`,Apply:`ì ì©`,"Please fill out this field":`ì´ í목ì ì
ë ¥í´ì£¼ì¸ì!`,"Please enter a web address":`ì¹ URLì ì
ë ¥í´ì£¼ì¸ì.`,Default:`기본`,Circle:`ì`,Dot:`ì `,Quadrate:`ì ì¬ê°í`,Find:`찾기`,"Find Previous":`ì´ì 찾기`,"Find Next":`ë¤ì 찾기`,"Insert className":`className ì
ë ¥`,"Press Alt for custom resizing":`ì¬ì©ì ì§ì í¬ê¸° ì¡°ì ì ë í ê³ ë ë르ììì¤`},th={"Type something":`ÐиÑÑÑд үзÑÑÑÑй`,Advanced:`ÐÑвÑилÑÑÑ`,"About Jodit":`Jodit-Ñн ÑÐ°Ð»Ð°Ð°Ñ `,"Jodit Editor":`Jodit пÑогÑам`,"Jodit User's Guide":`Jodit гаÑÑн авлага`,"contains detailed help for using":`Ñ
ÑÑÑглÑÑний ÑÐ°Ð»Ð°Ð°Ñ Ð´ÑлгÑÑÑнгүй мÑдÑÑллийг агÑÑлна`,"For information about the license, please go to our website:":`ÐиÑензийн мÑдÑÑллийг манай вÑб Ñ
ÑÑдаÑÐ½Ð°Ð°Ñ Ð°Ð²Ð½Ð° ÑÑ:`,"Buy full version":`ÐÒ¯ÑÑн Ñ
ÑÐ²Ð¸Ð»Ð±Ð°Ñ Ñ
Ñдалдан аваÑ
`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`ÐоÑ
иогÑийн ÑÑÑ
Ñ
амгаалагдÑан © XDSoft.net - Chupurnov Valeriy. ÐÒ¯Ñ
ÑÑÑ
ийг ÑзÑмÑинÑ.`,Anchor:`Холбоо баÑиÑ
`,"Open in new tab":`Ð¨Ð¸Ð½Ñ ÑÐ°Ð±Ð°Ð°Ñ Ð½ÑÑÑ
`,"Open in fullsize":`ÐÒ¯ÑÑн дÑлгÑÑÑÑÑ Ð½ÑÑÑ
`,"Clear Formatting":`ФоÑмаÑÑг аÑилгаÑ
`,"Fill color or set the text color":`Ó¨Ð½Ð³Ó©Ó©Ñ Ð±ÑдаÑ
ÑÑвÑл ÑекÑÑийн өнгө ÑонгоÑ
`,Redo:`ÐаÑ
иÑ
`,Undo:`ÐÑÑааÑ
`,Bold:`Тод`,Italic:`ÐалÑÑ`,"Insert Unordered List":`ТÑмдÑÐ³Ñ Ð¶Ð°Ð³ÑÐ°Ð°Ð»Ñ Ð½ÑмÑÑ
`,"Insert Ordered List":`ÐÑгааÑÑ Ð¶Ð°Ð³ÑÐ°Ð°Ð»Ñ Ð½ÑмÑÑ
`,"Align Center":`Ðоллож байÑлÑÑлаÑ
`,"Align Justify":`ТÑгÑиÑгÑн байÑлÑÑлаÑ
`,"Align Left":`Ðүүнд байÑлÑÑлаÑ
`,"Align Right":`ÐаÑÑÑнд байÑлÑÑлаÑ
`,"Insert Horizontal Line":`Ð¥ÑвÑÑÑ Ð·ÑÑÐ°Ð°Ñ Ð½ÑмÑÑ
`,"Insert Image":`ÐÑÑаг нÑмÑÑ
`,"Insert file":`Файл нÑмÑÑ
`,"Insert youtube/vimeo video":`Youtube/Vimeo видео нÑмÑÑ
`,"Insert link":`Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ Ð½ÑмÑÑ
`,"Font size":`ФонÑÑн Ñ
ÑмжÑÑ`,"Font family":`ФонÑÑн бүл`,"Insert format block":`Ðлок нÑмÑÑ
`,Normal:`Ð¥Ñвийн`,"Heading 1":`ÐаÑÑиг 1`,"Heading 2":`ÐаÑÑиг 2`,"Heading 3":`ÐаÑÑиг 3`,"Heading 4":`ÐаÑÑиг 4`,Quote:`ÐÑлÑл`,Code:`Ðод`,Insert:`ÐÑÑÑлаÑ
`,"Insert table":`Ð¥Ò¯ÑнÑÐ³Ñ Ð¾ÑÑÑлаÑ
`,"Decrease Indent":`ÐоголÑн зай Ñ
аÑаÑ
`,"Increase Indent":`ÐоголÑн зай нÑмÑÑ
`,"Select Special Character":`ТÑÑгай ÑÑмдÑÐ³Ñ ÑонгоÑ
`,"Insert Special Character":`ТÑÑгай ÑÑмдÑÐ³Ñ Ð½ÑмÑÑ
`,"Paint format":`ÐÑÑгийн ÑоÑмаÑ`,"Change mode":`ÐоÑим Ó©Ó©ÑÑлөÑ
`,Margins:`ЦааÑÐ½Ñ Ð·Ð°Ð¹`,top:`ÐÑÑÑÑÑÑ`,right:`ÐаÑÑÑнааÑ`,bottom:`ÐооÑооÑ`,left:`ÐүүнÑÑÑ`,Styles:`CSS ÑÑилÑ`,Classes:`CSS анги`,Align:`ÐайÑлÑÑлаÑ
`,Right:`ÐаÑÑÑн`,Center:`Төв`,Left:`Ðүүн`,"--Not Set--":`--ТодоÑÑ
ойгүй--`,Src:`ÐÑ
Ò¯Ò¯ÑвÑÑ`,Title:`ÐаÑÑиг`,Alternative:`ÐлÑеÑнаÑив ÑекÑÑ`,Link:`ХолбооÑ`,"Open link in new tab":`ХолбооÑÑг ÑÐ¸Ð½Ñ Ñ
авÑÑанд нÑÑÑ
`,Image:`ÐÑÑаг`,file:`Файл`,"Image properties":`ÐÑÑгийн үзүүлÑлÑ`,Cancel:`ЦÑÑлаÑ
`,Ok:`Ok`,"Your code is similar to HTML. Keep as HTML?":`Ð¢Ð°Ð½Ñ ÐºÐ¾Ð´ HTML кодÑой адил байна. HTML ÑоÑмаÑÐ°Ð°Ñ Ò¯ÑгÑлжлүүлÑÑ
Ò¯Ò¯?`,"Paste as HTML":`HTML Ð±Ð°Ð¹Ð´Ð»Ð°Ð°Ñ Ð±ÑÑлгаÑ
`,Keep:`ХадгалаÑ
`,Clean:`ЦÑвÑÑлÑÑ
`,"Insert as Text":`ТекÑÑ Ð±Ð°Ð¹Ð´Ð»Ð°Ð°Ñ Ð½ÑмÑÑ
`,"Word Paste Detected":`Word Ð±Ð°Ð¹Ð´Ð»Ð°Ð°Ñ Ð±ÑÑлгаÑан байна`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`ÐÑÑлгаÑан агÑÑлга Microsoft Word/Excel ÑоÑмаÑÑай байна. ÐÐ½Ñ ÑоÑмаÑÑг Ñ
ÑвÑÑÑ Ñ
адгалаÑ
ÑÑ ÑÑвÑл аÑилгаÑ
ÑÑ?`,"Insert only Text":`ÐөвÑ
өн ÑекÑÑ Ð¾ÑÑÑлаÑ
`,"File Browser":`ФайлÑн ÑонÑ
`,"Error on load list":`ÐагÑÐ°Ð°Ð»Ñ ÑаÑаÑ
үед алдаа гаÑлаа`,"Error on load folders":`ХавÑÐ°Ñ ÑаÑаÑ
үед алдаа гаÑлаа`,"Are you sure?":`ÐÑгÑлÑÑй байна ÑÑ?`,"Enter Directory name":`ХавÑÑÑн нÑÑ Ð¾ÑÑÑлаÑ
`,"Create directory":`ХавÑÐ°Ñ Ò¯Ò¯ÑгÑÑ
`,"type name":`ÐÑÑ Ð±Ð¸ÑиÑ
`,"Drop image":`ÐÑÑаг бÑÑлгаÑ
`,"Drop file":`Файл бÑÑлгаÑ
`,"or click":`ÑÑвÑл ÑовÑ`,"Alternative text":`ÐлÑеÑнаÑив ÑекÑÑ`,Browse:`ҮзÑÑ
`,Upload:`ÐайÑÑÑÑлаÑ
`,Backgroun
500d:`ÐÑÑн зÑÑаг`,Text:`ТекÑÑ`,Top:`ÐÑÑÑ`,Middle:`ÐÑнд`,Bottom:`ÐооÑ`,"Insert column before":`УÑд Ð½Ñ Ð±Ð°Ð³Ð°Ð½Ð° нÑмÑÑ
`,"Insert column after":`ÐÑд Ð½Ñ Ð±Ð°Ð³Ð°Ð½Ð° нÑмÑÑ
`,"Insert row above":`ÐÑÑÑ Ð½Ñ Ð¼Ó©Ñ Ð½ÑмÑÑ
`,"Insert row below":`ÐÐ¾Ð¾Ñ Ð½Ñ Ð¼Ó©Ñ Ð½ÑмÑÑ
`,"Delete table":`Ð¥Ò¯ÑнÑÐ³Ñ ÑÑÑгаÑ
`,"Delete row":`ÐÓ©Ñ ÑÑÑгаÑ
`,"Delete column":`Ðагана ÑÑÑгаÑ
`,"Empty cell":`Ðүд ÑÑвÑÑлÑÑ
`,Delete:`УÑÑгаÑ
`,"Strike through":`ÐÑÑÐ³Ò¯Ò¯Ñ Ð·ÑÑааÑ`,Underline:`ÐоогÑÑÑ Ð·ÑÑааÑ`,Break:`ÐÓ©Ñийг ÑаÑлаÑ
`,"Search for":`ХайÑ
`,"Replace with":`ҮүгÑÑÑ ÑолиÑ
`,Replace:`СолиÑ
`,Edit:`ÐаÑаÑ
`,"Vertical align":`ÐоÑоо ÑгнүүлÑÑ
`,"Horizontal align":`Ð¥ÑвÑÑÑ ÑгнүүлÑÑ
`,Filter:`ШүүÑ
`,"Sort by changed":`Сүүлд Ó©Ó©ÑÑлөгдÑÓ©Ð½Ó©Ó©Ñ Ð¶Ð°Ð³ÑааÑ
`,"Sort by name":`ÐÑÑÑÑÑ Ð¶Ð°Ð³ÑааÑ
`,"Sort by size":`Ð¥ÑмжÑÑгÑÑÑ Ð¶Ð°Ð³ÑааÑ
`,"Add folder":`ХавÑÐ°Ñ Ð½ÑмÑÑ
`,Split:`ÐадлаÑ
`,"Split vertical":`ÐÐ°Ð³Ð°Ð½Ð°Ð°Ñ Ð·Ð°Ð´Ð»Ð°Ñ
`,"Split horizontal":`ÐÓ©ÑÓ©Ó©Ñ Ð·Ð°Ð´Ð»Ð°Ñ
`,Merge:`ÐÑгÑгÑÑ
`,"Add column":`Ðагана нÑмÑÑ
`,"Add row":`ÐÓ©Ñ Ð½ÑмÑÑ
`,Border:`Ð¥Ò¯ÑÑÑ`,"Embed code":`Ðод оÑÑÑлаÑ
`,Update:`ШинÑÑлÑÑ
`,superscript:`ÐÑÑд индекÑ`,subscript:`Ðоод индекÑ`,"Cut selection":`СонголÑÑг ÑаÑлаÑ
`,Paste:`ÐÑÑлгаÑ
`,"Choose Content to Paste":`ÐÑÑлгаÑ
агÑÑлгаа Ñонгоно ÑÑ`,"Chars: %d":`ТÑмдÑгÑ: %d`,"Words: %d":`Үг: %d`,All:`Ðүгдийг`,"Select %s":`Сонго: %s`,"Select all":`Ðүгдийг Ñонго`,source:`ÐÑ
Ò¯Ò¯ÑвÑÑ`,bold:`Тод`,italic:`ÐалÑÑ`,brush:`ÐÑдаÑ
`,link:`ХолбооÑ`,undo:`ÐÑÑааÑ
`,redo:`ÐаÑ
иÑ
`,table:`Ð¥Ò¯ÑнÑгÑ`,image:`ÐÑÑаг`,eraser:`ÐаллÑÑÑ`,paragraph:`ÐаÑагÑаÑ`,fontsize:`ФонÑÑн Ñ
ÑмжÑÑ`,video:`Ðидео`,font:`ФонÑ`,about:`ТÑÑ
ай`,print:`Ð¥ÑвлÑÑ
`,underline:`ÐоогÑÑÑ Ð·ÑÑааÑ`,strikethrough:`ÐÑÑÐ³Ò¯Ò¯Ñ Ð·ÑÑааÑ`,indent:`Ðогол нÑмÑÑ
`,outdent:`Ðогол багаÑгаÑ
`,fullsize:`ÐÒ¯ÑÑн дÑлгÑÑ`,shrink:`ÐагаÑга`,hr:`ХаалÑ`,ul:`ТÑмдÑÐ³Ñ Ð¶Ð°Ð³ÑаалÑ`,ol:`ÐÑгааÑлаÑан жагÑаалÑ`,cut:`ТаÑлаÑ
`,selectall:`Ðүгдийг Ñонго`,"Open link":`Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ Ð½ÑÑÑ
`,"Edit link":`Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ Ð·Ð°ÑаÑ
`,"No follow":`Nofollow özelliÄi`,Unlink:`Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ ÑалгаÑ
`,Eye:`Ðүд`,pencil:`ÐаÑаÑ
`," URL":`URL`,Reset:`ÐÑÑааÑ
`,Save:`ХадгалаÑ
`,"Save as ...":`Ó¨Ó©ÑÓ©Ó©Ñ Ñ
адгалаÑ
`,Resize:`Ð¥ÑмжÑÑг Ó©Ó©ÑÑил`,Crop:`ТайÑаÑ
`,Width:`Ó¨Ñгөн`,Height:`ӨндөÑ`,"Keep Aspect Ratio":`ХаÑÑÑааг Ñ
адгал`,Yes:`Тийм`,No:`Үгүй`,Remove:`ÐÑилга`,Select:`Сонго`,"You can only edit your own images. Download this image on the host?":`Та зөвÑ
өн Ó©Ó©Ñийн зÑÑгÑÑдаа ÑнзлаÑ
боломжÑой. ÐÐ½Ñ Ð·ÑÑгийг Ó©Ó©Ñ Ð»Ò¯Ò¯Ð³ÑÑ ÑаÑÐ¼Ð°Ð°Ñ Ð±Ð°Ð¹Ð½Ð° ÑÑ?`,"The image has been successfully uploaded to the host!":`ÐÑÑгийг Ñ
оÑÑ ÑÑÑ Ð°Ð¼Ð¶Ð¸Ð»ÑÑай Ñ
адгалÑан`,palette:`ÐалеÑ`,"There are no files":`Ðнд ÑÐ¼Ð°Ñ Ð½Ñг Ñайл алга`,Rename:`ШинÑÑÑ Ð½ÑÑлÑÑ
`,"Enter new name":`Ð¨Ð¸Ð½Ñ Ð½ÑÑ Ð¾ÑÑÑлна ÑÑ`,preview:`УÑÑдÑилан Ñ
аÑаÑ
`,download:`ТаÑаÑ
`,"Paste from clipboard":`СамбаÑÐ°Ð°Ñ Ñ
ÑÑлаÑ
`,"Your browser doesn't support direct access to the clipboard.":`ÐÐ½Ñ Ð²Ñб Ñ
Ó©ÑÑÓ©Ó©Ñ ÑамбаÑÑ Ñ
андаÑ
ÑÑÑ
алга.`,"Copy selection":`СонголÑÑг Ñ
ÑÑл`,copy:`Ð¥ÑÑлаÑ
`,"Border radius":`Ð¥Ò¯ÑÑÑний ÑадиÑÑ`,"Show all":`Ðүгдийг Ñ
аÑÑÑлаÑ
`,Apply:`Ð¥ÑÑÑгжүүл`,"Please fill out this field":`ÐÐ½Ñ ÑалбаÑÑг бөглөнө Ò¯Ò¯`,"Please enter a web address":`ÐÑб Ñ
аÑгаа оÑÑÑлна ÑÑ`,Default:`ҮндÑÑн`,Circle:`ÐÑгÑй`,Dot:`ЦÑг`,Quadrate:`ÐÓ©Ñвөлжин`,Find:`ХайÑ
`,"Find Previous":`ӨмнөÑ
ийг ол`,"Find Next":`ÐаÑаагийнÑ
ийг ол`,"Insert className":`Ðүлгийн нÑÑÑÑ Ð¾ÑÑÑлна ÑÑ`,"Press Alt for custom resizing":`Ð¥ÑмжÑÑÑийг ÑинÑÑÑ Ó©Ó©ÑÑлөÑ
ийн ÑÑлд Alt ÑовÑин дÑÑÑ Ð´Ð°Ñна ÑÑ`,"License: %s":`ÐиÑенз: %s`},nh={"Type something":`Begin met typen..`,Advanced:`Geavanceerd`,"About Jodit":`Over Jodit`,"Jodit Editor":`Jodit Editor`,"Free Non-commercial Version":`Gratis niet-commerciële versie`,"Jodit User's Guide":`Jodit gebruikershandleiding`,"contains detailed help for using":`bevat gedetailleerde informatie voor gebruik.`,"For information about the license, please go to our website:":`Voor informatie over de licentie, ga naar onze website:`,"Buy full version":`Volledige versie kopen`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Alle rechten voorbehouden.`,Anchor:`Anker`,"Open in new tab":`Open in nieuwe tab`,"Open in fullsize":`Editor in volledig scherm openen`,"Clear Formatting":`Opmaak verwijderen`,"Fill color or set the text color":`Vulkleur of tekstkleur aanpassen`,Redo:`Opnieuw`,Undo:`Ongedaan maken`,Bold:`Vet`,Italic:`Cursief`,"Insert Unordered List":`Geordende list invoegen`,"Insert Ordered List":`Ongeordende lijst invoegen`,"Align Center":`Centreren`,"Align Justify":`Uitlijnen op volledige breedte`,"Align Left":`Links uitlijnen`,"Align Right":`Rechts uitlijnen`,"Insert Horizontal Line":`Horizontale lijn invoegen`,"Insert Image":`Afbeelding invoegen`,"Insert file":`Bestand invoegen`,"Insert youtube/vimeo video":`Youtube/Vimeo video invoegen`,"Insert link":`Link toevoegen`,"Font size":`Tekstgrootte`,"Font family":`Lettertype`,"Insert format block":`Format blok invoegen`,Normal:`Normaal`,"Heading 1":`Koptekst 1`,"Heading 2":`Koptekst 2`,"Heading 3":`Koptekst 3`,"Heading 4":`Koptekst 4`,Quote:`Citaat`,Code:`Code`,Insert:`Invoegen`,"Insert table":`Tabel invoegen`,"Decrease Indent":`Inspringing verkleinen`,"Increase Indent":`Inspringing vergroten`,"Select Special Character":`Symbool selecteren`,"Insert Special Character":`Symbool invoegen`,"Paint format":`Opmaak kopieren`,"Change mode":`Modus veranderen`,Margins:`Marges`,top:`Boven`,right:`Rechts`,bottom:`Onder`,left:`Links`,Styles:`CSS styles`,Classes:`CSS classes`,Align:`Uitlijning`,Right:`Rechts`,Center:`Gecentreerd`,Left:`Links`,"--Not Set--":`--Leeg--`,Src:`Src`,Title:`Titel`,Alternative:`Alternatieve tekst`,Link:`Link`,"Open link in new tab":`Link in nieuwe tab openen`,Image:`Afbeelding`,file:`Bestand`,"Image properties":`Afbeeldingseigenschappen`,Cancel:`Annuleren`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`Deze code lijkt op HTML. Als HTML behouden?`,"Paste as HTML":`Invoegen als HTML`,Keep:`Origineel behouden`,Clean:`Opschonen`,"Insert as Text":`Als tekst invoegen`,"Word Paste Detected":`Word-tekst gedetecteerd`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`De geplakte tekst is afkomstig van een Microsoft Word/Excel document. Wil je de opmaak behouden of opschonen?`,"Insert only Text":`Als onopgemaakte tekst invoegen`,"File Browser":`Bestandsbrowser`,"Error on load list":`Fout bij het laden van de lijst`,"Error on load folders":`Fout bij het laden van de mappenlijst`,"Are you sure?":`Weet je het zeker?`,"Enter Directory name":`Geef de map een naam`,"Create directory":`Map aanmaken`,"type name":`Type naam`,"Drop image":`Sleep hier een afbeelding naartoe`,"Drop file":`Sleep hier een bestand naartoe`,"or click":`of klik`,"Alternative text":`Alternatieve tekst`,Browse:`Bladeren`,Upload:`Uploaden`,Backgroun
500d:`Achtergrond`,Text:`Tekst`,Top:`Boven`,Middle:`Midden`,Bottom:`Onder`,"Insert column before":`Kolom invoegen (voor)`,"Insert column after":`Kolom invoegen (na)`,"Insert row above":`Rij invoegen (boven)`,"Insert row below":`Rij invoegen (onder)`,"Delete table":`Tabel verwijderen`,"Delete row":`Rij verwijderen`,"Delete column":`Kolom verwijderen`,"Empty cell":`Cel leegmaken`,Delete:`Verwijderen`,"Strike through":`Doorstrepen`,Underline:`Onderstrepen`,Break:`Enter`,"Search for":`Zoek naar`,"Replace with":`Vervangen door`,Replace:`Vervangen`,Edit:`Bewerken`,"Vertical align":`Verticaal uitlijnen`,"Horizontal align":`Horizontaal uitlijnen`,Filter:`Filteren`,"Sort by changed":`Sorteren op wijzigingsdatum`,"Sort by name":`Sorteren op naam`,"Sort by size":`Sorteren op grootte`,"Add folder":`Map toevoegen`,Split:`Splitsen`,"Split vertical":`Verticaal splitsen`,"Split horizontal":`Horizontaal splitsen`,Merge:`Samenvoegen`,"Add column":`Kolom toevoegen`,"Add row":`Rij toevoegen`,Border:`Rand`,"Embed code":`Embed code`,Update:`Updaten`,superscript:`Superscript`,subscript:`Subscript`,"Cut selection":`Selectie knippen`,Paste:`Plakken`,"Choose Content to Paste":`Kies content om te plakken`,"Chars: %d":`Tekens: %d`,"Words: %d":`Woorden: %d`,All:`Alles`,"Select %s":`Selecteer: %s`,"Select all":`Selecteer alles`,source:`Broncode`,bold:`vet`,italic:`cursief`,brush:`kwast`,link:`link`,undo:`ongedaan maken`,redo:`opnieuw`,table:`tabel`,image:`afbeelding`,eraser:`gum`,paragraph:`paragraaf`,fontsize:`lettergrootte`,video:`video`,font:`lettertype`,about:`over`,print:`afdrukken`,underline:`onderstreept`,strikethrough:`doorgestreept`,indent:`inspringen`,outdent:`minder inspringen`,fullsize:`volledige grootte`,shrink:`kleiner maken`,hr:`horizontale lijn`,ul:`lijst`,ol:`genummerde lijst`,cut:`knip`,selectall:`alles selecteren`,"Open link":`Link openen`,"Edit link":`Link aanpassen`,"No follow":`Niet volgen`,Unlink:`link verwijderen`,Eye:`Recensie`,pencil:`Om te bewerken`," URL":` URL`,Reset:`Herstellen`,Save:`Opslaan`,"Save as ...":`Opslaan als ...`,Resize:`Grootte aanpassen`,Crop:`Bijknippen`,Width:`Breedte`,Height:`Hoogte`,"Keep Aspect Ratio":`Verhouding behouden`,Yes:`Ja`,No:`Nee`,Remove:`Verwijderen`,Select:`Selecteren`,"You can only edit your own images. Download this image on the host?":`Je kunt alleen je eigen afbeeldingen aanpassen. Deze afbeelding downloaden?`,"The image has been successfully uploaded to the host!":`De afbeelding is succesvol geüploadet!`,palette:`Palette`,"There are no files":`Er zijn geen bestanden in deze map.`,Rename:`Hernoemen`,"Enter new name":`Voer een nieuwe naam in`,preview:`Voorvertoning`,download:`Download`,"Paste from clipboard":`Plakken van klembord`,"Your browser doesn't support direct access to the clipboard.":`Uw browser ondersteunt geen directe toegang tot het klembord.`,"Copy selection":`Selectie kopiëren`,copy:`kopiëren`,"Border radius":`Border radius`,"Show all":`Toon alle`,Apply:`Toepassen`,"Please fill out this field":`Vul dit veld in`,"Please enter a web address":`Voer een webadres in`,Default:`Standaard`,Circle:`Cirkel`,Dot:`Punt`,Quadrate:`Kwadraat`,Find:`Zoeken`,"Find Previous":`Vorige Zoeken`,"Find Next":`Volgende Zoeken`,"Insert className":`Voeg de klassenaam in`,"Press Alt for custom resizing":`Druk op Alt voor aangepaste grootte`,"License: %s":`Licentie: %s`},rh={"Type something":`Skriv noe`,"About Jodit":`Om Jodit`,"Jodit Editor":`Jodit-redigerer`,"Jodit User's Guide":`Jodit brukerveiledning`,"contains detailed help for using":`Inneholder detaljert hjelp for bruk`,"For information about the license, please go to our website:":`For informasjon om lisensen, besøk vÃ¥r nettside:`,"Buy full version":`Kjøp fullversjon`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Opphavsrett © XDSoft.net - Chupurnov Valeriy. Alle rettigheter forbeholdt.`,Anchor:`Anker`,"Open in new tab":`Ã
pne i ny fane`,"Open in fullsize":`Ã
pne i fullskjerm`,"Clear Formatting":`Fjern formatering`,"Fill color or set the text color":`Endre bakgrunns- eller tekstfarge`,Redo:`Gjør om`,Undo:`Angre`,Bold:`Fet`,Italic:`Kursiv`,"Insert Unordered List":`Sett inn punktliste`,"Insert Ordered List":`Sett inn nummerert liste`,"Align Center":`Midtstill`,"Align Justify":`Juster`,"Align Left":`Venstrejuster`,"Align Right":`Høyrejuster`,"Insert Horizontal Line":`Sett inn horisontal linje`,"Insert Image":`Sett inn bilde`,"Insert file":`Sett inn fil`,"Insert youtube/vimeo video":`Sett inn YouTube/Vimeo-vi
500deo`,"Insert link":`Sett inn lenke`,"Font size":`Skriftstørrelse`,"Font family":`Skriftfamilie`,"Insert format block":`Sett inn formateringsblokk`,Normal:`Normal`,"Heading 1":`Overskrift 1`,"Heading 2":`Overskrift 2`,"Heading 3":`Overskrift 3`,"Heading 4":`Overskrift 4`,Quote:`Sitat`,Code:`Kode`,Insert:`Sett inn`,"Insert table":`Sett inn tabell`,"Decrease Indent":`Reduser innrykk`,"Increase Indent":`Ãk innrykk`,"Select Special Character":`Velg spesialtegn`,"Insert Special Character":`Sett inn spesialtegn`,"Paint format":`Kopier format`,"Change mode":`Bytt modus (WYSIWYG/HTML)`,Margins:`Marger`,top:`topp`,right:`høyre`,bottom:`bunn`,left:`venstre`,Styles:`Stiler`,Classes:`Klasser`,Align:`Justering`,Right:`Høyre`,Center:`Senter`,Left:`Venstre`,"--Not Set--":`--Ikke satt--`,Src:`Kilde`,Title:`Tittel`,Alternative:`Alternativ`,Filter:`Filter`,Link:`Lenke`,"Open link in new tab":`Ã
pne lenke i ny fane`,Image:`Bilde`,file:`fil`,Advanced:`Avansert`,"Image properties":`Bildeegenskaper`,Cancel:`Avbryt`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`Koden din ligner HTML. Beholde som HTML?`,"Paste as HTML":`Lim inn som HTML`,Keep:`Behold`,Clean:`Rens`,"Insert as Text":`Lim inn som tekst`,"Word Paste Detected":`Word-innliming oppdaget`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Innholdet du limer inn kommer fra et Microsoft Word/Excel-dokument. Vil du beholde formatet eller rense det?`,"Insert only Text":`Lim inn kun tekst`,"File Browser":`Filutforsker`,"Error on load list":`Feil ved lasting av liste`,"Error on load folders":`Feil ved lasting av mapper`,"Are you sure?":`Er du sikker?`,"Enter Directory name":`Skriv inn mappenavn`,"Create directory":`Opprett mappe`,"type name":`skriv navn`,"Drop image":`Slipp bilde`,"Drop file":`Slipp fil`,"or click":`eller klikk`,"Alternative text":`Alternativ tekst`,Browse:`Bla gjennom`,Upload:`Last opp`,Background:`Bakgrunn`,Border:`Kantlinje`,Text:`Tekst`,Top:`Topp`,Middle:`Midt`,Bottom:`Bunn`,"Insert column before":`Sett inn kolonne før`,"Insert column after":`Sett inn kolonne etter`,"Insert row above":`Sett inn rad over`,"Insert row below":`Sett inn rad under`,"Delete table":`Slett tabell`,"Delete row":`Slett rad`,"Delete column":`Slett kolonne`,"Empty cell":`Tøm celle`,"Chars: %d":`Tegn: %d`,"Words: %d":`Ord: %d`,Split:`Del`,"Split vertical":`Del vertikalt`,"Split horizontal":`Del horisontalt`,"Strike through":`Gjennomstreking`,Underline:`Understreking`,superscript:`hevet skrift`,subscript:`senket skrift`,"Cut selection":`Klipp ut markering`,"Select all":`Velg alt`,Break:`Pause`,"Search for":`Søk etter`,"Replace with":`Erstatt med`,Replace:`Erstatt`,Paste:`Lim inn`,"Choose Content to Paste":`Velg innhold Ã¥ lime inn`,source:`kilde`,bold:`fet`,italic:`kursiv`,brush:`pensel`,link:`lenke`,undo:`angre`,redo:`gjør om`,table:`tabell`,image:`bilde`,eraser:`viskelær`,paragraph:`avsnitt`,fontsize:`skriftstørrelse`,video:`video`,font:`skrift`,about:`om redigeringsverktøyet`,print:`skriv ut`,underline:`understreking`,strikethrough:`gjennomstreking`,indent:`innrykk`,outdent:`reduser innrykk`,fullsize:`full størrelse`,shrink:`krympe`,hr:`linje`,ul:`punktliste`,ol:`nummerert liste`,cut:`klipp ut`,selectall:`velg alt`,"Open link":`Ã
pne lenke`,"Edit link":`Rediger lenke`,"N
500o follow":`Ingen oppfølging`,Unlink:`Fjern lenke`,Eye:`ForhÃ¥ndsvisning`,pencil:`Rediger`," URL":`URL`,Reset:`Tilbakestill`,Save:`Lagre`,"Save as ...":`Lagre som ...`,Resize:`Endre størrelse`,Crop:`Beskjær`,Width:`Bredde`,Height:`Høyde`,"Keep Aspect Ratio":`Behold proporsjoner`,Yes:`Ja`,No:`Nei`,Remove:`Fjern`,Select:`Velg`,"Select %s":`Velg: %s`,Update:`Oppdater`,"Vertical align":`Vertikal justering`,Merge:`SlÃ¥ sammen`,"Add column":`Legg til kolonne`,"Add row":`Legg til rad`,Delete:`Slett`,"Horizontal align":`Horisontal justering`,"Sort by changed":`Sorter etter endring`,"Sort by name":`Sorter etter navn`,"Sort by size":`Sorter etter størrelse`,"Add folder":`Legg til mappe`,palette:`Palett`,preview:`ForhÃ¥ndsvisning`,"Line height":`Linjehøyde`,"Insert className":`Sett inn klassenavn`,apply:`Bruk`,edit:`Rediger`,"Show all":`Vis alle`,sound:`Lyd`,"Interim Results":`Foreløpige resultater`,default:`Standard`,circle:`Sirkel`,dot:`Punkt`,square:`Firkant`,"Press Alt for custom resizing":`Trykk pÃ¥ Alt for Ã¥ endre størrelse`,"Copy selection":`Kopier utvalg`,"Paste from clipboard":`Lim inn fra utklippstavlen`,Find:`Finne`,"Embed code":`Bygge inn kode`,Edit:`Rediger`,All:`Velg alle`,"License: %s":`Lisens: %s`,"You can only edit your own images. Download this image on the host?":`Du kan bare redigere dine egne bilder. Last ned dette bildet pÃ¥ verten?`,"The image has been successfully uploaded to the host!":`Bildet har blitt lastet opp til verten!`,"There are no files":`Det er ingen filer i denne katalogen`,Rename:`Gi nytt navn`,"Enter new name":`Skriv inn nytt navn`,download:`Last ned`,"Your browser doesn't support direct access to the clipboard.":`Nettleseren din støtter ikke direkte tilgang til utklippstavlen.`,copy:`kopi`,"Border radius":`Grenseradius`,Apply:`Bruk`,"Please fill out this field":`Vennligst fyll ut dette feltet`,"Please enter a web address":`Vennligst skriv inn en webadresse`,Default:`Standard`,Circle:`Sirkel`,Dot:`Prikk`,Quadrate:`Firkant`,"Find Previous":`Finn forrige`,"Find Next":`Finn neste`},ih={"Type something":`Napisz coÅ`,Advanced:`Zaawansowane`,"About Jodit":`O Jodit`,"Jodit Editor":`Edytor Jodit`,"Jodit User's Guide":`Instrukcja Jodit`,"contains detailed help for using":`zawiera szczegóÅowe informacje dotyczÄ
ce użytkowania.`,"For information about the license, please go to our website:":`Odwiedź naszÄ
stronÄ, aby uzyskaÄ wiÄcej informacji na temat licencji:`,"Buy full version":`Zakup peÅnej wersji`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Wszystkie prawa zastrzeżone.`,Anchor:`Kotwica`,"Open in new tab":`Otwórz w nowej zakÅadce`,"Open in fullsize":`Otwórz edytor w peÅnym rozmiarze`,"Clear Formatting":`WyczyÅÄ formatowanie`,"Fill color or set the text color":`Kolor wypeÅnienia lub ustaw kolor tekstu`,Redo:`Ponów`,Undo:`Cofnij`,Bold:`Pogrubienie`,Italic:`Kursywa`,"Insert Unordered List":`Wstaw listÄ wypunktowanÄ
`,"Insert Ordered List":`Wstaw listÄ numerycznÄ
`,"Align Center":`WyÅrodkuj`,"Align Justify":`Wyjustuj`,"Align Left":`Wyrównaj do lewej`,"Align Right":`Wyrównaj do prawej`,"Insert Horizontal Line":`Wstaw liniÄ poziomÄ
`,"Insert Image":`Wstaw grafikÄ`,"Insert file":`Wstaw plik`,"Insert youtube/vimeo video":`Wstaw film Youtube/vimeo`,"Insert link":`Wstaw link`,"Font size":`Rozmiar tekstu`,"Font family":`Krój czcionki`,"Insert format block":`Wstaw formatowanie`,Normal:`Normalne`,"Heading 1":`NagÅówek 1`,"Heading 2":`NagÅówek 2`,"Heading 3":`NagÅówek 3`,"Heading 4":`NagÅówek 4`,Quote:`Cytat`,Code:`Kod`,Insert:`Wstaw`,"Insert table":`Wstaw tabelÄ`,"Decrease Indent":`Zmniejsz wciÄcie`,"Increase Indent":`ZwiÄksz wciÄcie`,"Select Special Character":`Wybierz znak specjalny`,"Insert Special Character":`Wstaw znak specjalny`,"Paint format":`Malarz formatów`,"Change mode":`ZmieÅ tryb`,Margins:`Marginesy`,top:`Górny`,right:`Prawy`,bottom:`Dolny`,left:`Levy`,Styles:`Style CSS`,Classes:`Klasy CSS`,Align:`Wyrównanie`,Right:`Prawa`,Center:`Årodek`,Left:`Lewa`,"--Not Set--":`brak`,Src:`ŹródÅo`,Title:`TytuÅ`,Alternative:`Tekst alternatywny`,Link:`Link`,"Open link in new tab":`Otwórz w nowej zakÅadce`,Image:`Grafika`,file:`Plik`,"Image properties":`WÅaÅciwoÅci grafiki`,Cancel:`Anuluj`,Ok:`OK`,"Your code is similar to HTML. Keep as HTML?":`Twój kod wyglÄ
da jak HTML. ZachowaÄ HTML?`,"Paste as HTML":`WkleiÄ jako HTML?`,Keep:`Oryginalny tekst`,Clean:`WyczyÅÄ`,"Insert as Text":`Wstaw jako tekst`,"Word Paste Detected":`Wykryto tekst w formacie Word`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Wklejany tekst pochodzi z dokumentu Microsoft Word/Excel. Chcesz zachowaÄ ten format czy wyczyÅciÄ go? `,"Insert only Text":`Wstaw tylko treÅÄ`,"File Browser":`PrzeglÄ
darka plików`,"Error on load list":`BÅÄ
d Åadowania listy plików`,"Error on load folders":`BÅÄ
d Åadowania folderów`,"Are you sure?":`Czy jesteÅ pewien?`,"Enter Directory name":`Wprowadź nazwÄ folderu`,"Create directory":`Utwórz folder`,"type name":`wprowadź nazwÄ`,"Drop image":`UpuÅÄ plik graficzny`,"Drop file":`UpuÅÄ plik`,"or click":`lub kliknij tu`,"Alternative text":`Tekst alternatywny`,Browse:`PrzeglÄ
daj`,Upload:`Wczytaj`,Backgroun
500d:`TÅo`,Text:`TreÅÄ`,Top:`Góra`,Middle:`Årodek`,Bottom:`DóÅ`,"Insert column before":`Wstaw kolumnÄ przed`,"Insert column after":`Wstaw kolumnÄ po`,"Insert row above":`Wstaw wiersz przed`,"Insert row below":`Wstaw wiersz po`,"Delete table":`UsuÅ tabelÄ`,"Delete row":`UsuÅ wiersz`,"Delete column":`UsuÅ kolumnÄ`,"Empty cell":`WyczyÅÄ komórkÄ`,Delete:`UsuÅ`,"Strike through":`PrzekreÅlenie`,Underline:`PodkreÅlenie`,Break:`Przerwa`,"Search for":`Szukaj`,"Replace with":`ZamieÅ na`,Replace:`WymieniÄ`,Edit:`Edytuj`,"Vertical align":`Wyrównywanie w pionie`,"Horizontal align":`Wyrównywanie w poziomie`,Filter:`Filtruj`,"Sort by changed":`Sortuj wg zmiany`,"Sort by name":`Sortuj wg nazwy`,"Sort by size":`Sortuj wg rozmiaru`,"Add folder":`Dodaj folder`,"Split vertical":`Podziel w pionie`,"Split horizontal":`Podziel w poziomie`,Split:`Podziel`,Merge:`Scal`,"Add column":`Dodaj kolumnÄ`,"Add row":`Dodaj wiersz`,Border:`Obramowanie`,"Embed code":`Wstaw kod`,Update:`Aktualizuj`,superscript:`indeks górny`,subscript:`index dolny`,"Cut selection":`Wytnij zaznaczenie`,Paste:`Wklej`,"Choose Content to Paste":`Wybierz zawartoÅÄ do wklejenia`,"Chars: %d":`Znaki: %d`,"Words: %d":`SÅowa: %d`,All:`Wszystko`,"Select %s":`Wybierz: %s`,"Select all":`Wybierz wszystko`,source:`HTML`,bold:`pogrubienie`,italic:`kursywa`,brush:`pÄdzel`,link:`link`,undo:`cofnij`,redo:`ponów`,table:`tabela`,image:`grafika`,eraser:`wyczyÅÄ`,paragraph:`akapit`,fontsize:`rozmiar czcionki`,video:`wideo`,font:`czcionka`,about:`O programie`,print:`drukuj`,underline:`podkreÅlenie`,strikethrough:`przekreÅlenie`,indent:`wciÄcie`,outdent:`wyciÄcie`,fullsize:`peÅen rozmiar`,shrink:`przytnij`,hr:`linia pozioma`,ul:`lista`,ol:`lista numerowana`,cut:`wytnij`,selectall:`zaznacz wszystko`,"Open link":`otwórz link`,"Edit link":`edytuj link`,"No follow":`Atrybut no-follow`,Unlink:`UsuÅ link`,Eye:`szukaj`,pencil:`edytuj`," URL":`URL`,Reset:`wyczyÅÄ`,Save:`zapisz`,"Save as ...":`zapisz jako`,Resize:`ZmieÅ rozmiar`,Crop:`Przytnij`,Width:`SzerokoÅÄ`,Height:`WysokoÅÄ`,"Keep Aspect Ratio":`Zachowaj proporcje`,Yes:`Tak`,No:`Nie`,Remove:`UsuÅ`,Select:`Wybierz`,"You can only edit your own images. Download this image on the host?":`Możesz edytowaÄ tylko swoje grafiki. Czy chcesz pobraÄ tÄ
grafikÄ?`,"The image has been successfully uploaded to the host!":`Grafika zostaÅa pomyÅlnienie dodana na serwer`,palette:`Paleta`,"There are no files":`Brak plików.`,Rename:`zmieÅ nazwÄ`,"Enter new name":`Wprowadź nowÄ
nazwÄ`,preview:`podglÄ
d`,download:`pobierz`,"Paste from clipboard":`Wklej ze schowka`,"Your browser doesn't support direct access to the clipboard.":`Twoja przeglÄ
darka nie obsÅuguje schowka`,"Copy selection":`Kopiuj zaznaczenie`,copy:`kopiuj`,"Border radius":`ZaokrÄ
glenie krawÄdzi`,"Show all":`Pokaż wszystkie`,Apply:`Zastosuj`,"Please fill out this field":`ProszÄ wypeÅniÄ to pole`,"Please enter a web address":`ProszÄ, wpisz adres sieci web`,Default:`DomyÅlnie`,Circle:`KoÅo`,Dot:`Punkt`,Quadrate:`Kwadrat`,Find:`ZnaleźÄ`,"Find Previous":`ZnaleÅºÄ Poprzednie`,"Find Next":`Znajdź Dalej`,"Insert className":`Wstaw nazwÄ zajÄÄ`,"Press Alt for custom resizing":`NaciÅnij Alt, aby zmieniÄ rozmiar`,"License: %s":`Licencja: %s`},ah={"Type something":`Escreva algo...`,Advanced:`Avançado`,"About Jodit":`Sobre o Jodit`,"Jodit Editor":`Editor Jodit`,"Jodit User's Guide":`Guia de usuário Jodit`,"contains detailed help for using":`contém ajuda detalhada para o uso.`,"For information about the license, please go to our website:":`Para informação sobre a licença, por favor visite nosso site:`,"Buy full version":`Compre a versão completa`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. Todos os direitos reservados.`,Anchor:`Link`,"Open in new tab":`Abrir em nova aba`,"Open in fullsize":`Abrir editor em tela cheia`,"Clear Formatting":`Limpar formatação`,"Fill color or set the text color":`Cor de preenchimento ou cor do texto`,Redo:`Refazer`,Undo:`Desfazer`,Bold:`Negrito`,Italic:`Itálico`,"Insert Unordered List":`Inserir lista não ordenada`,"Insert Ordered List":`Inserir lista ordenada`,"Align Center":`Centralizar`,"Align Justify":`Justificar`,"Align Left":`Alinhar à Esquerda`,"Align Right":`Alinhar à Direita`,"Insert Horizontal Line":`Inserir linha horizontal`,"Insert Image":`Inserir imagem`,"Insert file":`Inserir arquivo`,"Insert youtube/vimeo video":`Inserir vÃdeo do Youtube/vimeo`,"Insert link":`Inserir link`,"Font size":`Tamanho da letra`,"Font family":`Fonte`,"Insert format block":`Inserir bloco`,Normal:`Normal`,"Heading 1":`Cabeçalho 1`,"Heading 2":`Cabeçalho 2`,"Heading 3":`Cabeçalho 3`,"Heading 4":`Cabeçalho 4`,Quote:`Citação`,Code:`Código`,Insert:`Inserir`,"Insert table":`Inserir tabela`,"Decrease Indent":`Diminuir recuo`,"Increase Indent":`Aumentar recuo`,"Select Special Character":`Selecionar caractere especial`,"Insert Special Character":`Inserir caractere especial`,"Paint format":`Copiar formato`,"Change mode":`Mudar modo`,Margins:`Margens`,top:`cima`,right:`direta`,bottom:`baixo`,left:`esquerda`,Styles:`Estilos CSS`,Classes:`Classes CSS`,Align:`Alinhamento`,Right:`Direita`,Center:`Centro`,Left:`Esquerda`,"--Not Set--":`--Não Estabelecido--`,Src:`Fonte`,Title:`TÃtulo`,Alternative:`Texto Alternativo`,Link:`Link`,"Open link in new tab":`Abrir link em nova aba`,Image:`Imagem`,file:`Arquivo`,"Image properties":`Propriedades da imagem`,Cancel:`Cancelar`,Ok:`Ok`,"Your code is similar to HTML. Keep as HTML?":`Seu código é similar ao HTML. Manter como HTML?`,"Paste as HTML":`Colar como HTML?`,Keep:`Manter`,Clean:`Limpar`,"Insert as Text":`Inserir como Texto`,"Word Paste Detected":`Colado do Word Detectado`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`O conteúdo colado veio de um documento Microsoft Word/Excel. Você deseja manter o formato ou limpa-lo?`,"Insert only Text":`Inserir somente o Texto`,"File Browser":`Procurar arquivo`,"Error on load list":`Erro ao carregar a lista`,"
500Error on load folders":`Erro ao carregar as pastas`,"Are you sure?":`Você tem certeza?`,"Enter Directory name":`Escreva o nome da pasta`,"Create directory":`Criar pasta`,"type name":`Escreva seu nome`,"Drop image":`Soltar imagem`,"Drop file":`Soltar arquivo`,"or click":`ou clique`,"Alternative text":`Texto alternativo`,Browse:`Explorar`,Upload:`Upload`,Background:`Fundo`,Text:`Texto`,Top:`Cima`,Middle:`Meio`,Bottom:`Baixo`,"Insert column before":`Inserir coluna antes`,"Insert column after":`Inserir coluna depois`,"Insert row above":`Inserir linha acima`,"Insert row below":`Inserir linha abaixo`,"Delete table":`Excluir tabela`,"Delete row":`Excluir linha`,"Delete column":`Excluir coluna`,"Empty cell":`Limpar célula`,Delete:`Excluir`,"Strike through":`Tachado`,Underline:`Sublinhar`,Break:`Pausa`,"Search for":`Procurar por`,"Replace with":`Substituir com`,Replace:`Substituir`,Edit:`Editar`,"Vertical align":`Alinhamento vertical`,"Horizontal align":`Alinhamento horizontal`,Filter:`filtrar`,"Sort by changed":`Ordenar por modificação`,"Sort by name":`Ordenar por nome`,"Sort by size":`Ordenar por tamanho`,"Add folder":`Adicionar pasta`,Split:`Dividir`,"Split vertical":`Dividir vertical`,"Split horizontal":`Dividir horizontal`,Merge:`Mesclar`,"Add column":`Adicionar coluna`,"Add row":`Adicionar linha`,Border:`Borda`,"Embed code":`Incluir código`,Update:`Atualizar`,superscript:`sobrescrito`,subscript:`subscrito`,"Cut selection":`Cortar seleção`,Paste:`Colar`,"Choose Content to Paste":`Escolher conteúdo para colar`,"Chars: %d":`Caracteres: %d`,"Words: %d":`Palavras: %d`,All:`Tudo`,"Select %s":`Selecionar: %s`,"Select all":`Selecionar tudo`,source:`HTML`,bold:`negrito`,italic:`itálico`,brush:`pincel`,link:`link`,undo:`desfazer`,redo:`refazer`,table:`tabela`,image:`imagem`,eraser:`apagar`,paragraph:`parágrafo`,fontsize:`tamanho da letra`,video:`vÃdeo`,font:`fonte`,about:`Sobre de`,print:`Imprimir`,underline:`sublinhar`,strikethrough:`tachado`,indent:`recuar`,outdent:`diminuir recuo`,fullsize:`Tamanho completo`,shrink:`diminuir`,hr:`linha horizontal`,ul:`lista não ordenada`,ol:`lista ordenada`,cut:`Cortar`,selectall:`Selecionar tudo`,"Open link":`Abrir link`,"Edit link":`Editar link`,"No follow":`Não siga`,Unlink:`Remover link`,Eye:`Visualizar`,pencil:`Editar`," URL":`URL`,Reset:`Resetar`,Save:`Salvar`,"Save as ...":`Salvar como...`,Resize:`Redimensionar`,Crop:`Recortar`,Width:`Largura`,He
500ight:`Altura`,"Keep Aspect Ratio":`Manter a proporção`,Yes:`Sim`,No:`Não`,Remove:`Remover`,Select:`Selecionar`,"You can only edit your own images. Download this image on the host?":`Você só pode editar suas próprias imagens. Baixar essa imagem pro servidor?`,"The image has been successfully uploaded to the host!":`A imagem foi enviada com sucesso para o servidor!`,palette:`Palette`,"There are no files":`Não há arquivos nesse diretório.`,Rename:`Húngara`,"Enter new name":`Digite um novo nome`,preview:`preview`,download:`Baixar`,"Paste from clipboard":`Colar da área de transferência`,"Your browser doesn't support direct access to the clipboard.":`O seu navegador não oferece suporte a acesso direto para a área de transferência.`,"Copy selection":`Selecção de cópia`,copy:`cópia`,"Border radius":`Border radius`,"Show all":`Mostrar todos os`,Apply:`Aplicar`,"Please fill out this field":`Por favor, preencha este campo`,"Please enter a web address":`Por favor introduza um endereço web`,Default:`Padrão`,Circle:`CÃrculo`,Dot:`Ponto`,Quadrate:`Quadro`,"Lower Alpha":`Letra Minúscula`,"Lower Greek":`Grego Minúscula`,"Lower Roman":`Romano Minúscula`,"Upper Alpha":`Letra Maiúscula`,"Upper Roman":`Romano Maiúscula`,Find:`Encontrar`,"Find Previous":`Encontrar Anteriores`,"Find Next":`Localizar Próxima`,"Insert className":`Insira o nome da classe`,"Press Alt for custom resizing":`Pressione Alt para redimensionamento personalizado`,"License: %s":`Licença: %s`},oh={"Type something":`ÐапиÑиÑе ÑÑо-либо`,"About Jodit":`Ð Jodit`,"Jodit Editor":`РедакÑÐ¾Ñ Jodit`,"Jodit User's Guide":`Jodit Ð ÑководÑÑво полÑзоваÑелÑ`,"contains detailed help for using":`ÑодеÑÐ¶Ð¸Ñ Ð´ÐµÑалÑнÑÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð¿Ð¾ иÑполÑзованиÑ`,"For information about the license, please go to our website:":`ÐÐ»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ñведений о лиÑензии , пожалÑйÑÑа, пеÑейдиÑе на Ð½Ð°Ñ ÑайÑ:`,"Buy full version":`ÐÑпиÑÑ Ð¿Ð¾Ð»Ð½ÑÑ Ð²ÐµÑÑиÑ`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`ÐвÑоÑÑкие пÑава © XDSoft.net - ЧÑпÑÑнов ÐалеÑий. ÐÑе пÑава заÑиÑенÑ.`,Anchor:`ÐнкоÑ`,"Open in new tab":`ÐÑкÑÑваÑÑ ÑÑÑÐ»ÐºÑ Ð² новой вкладке`,"Open in fullsize":`ÐÑкÑÑÑÑ ÑедакÑÐ¾Ñ Ð² полном ÑазмеÑе`,"Clear Formatting":`ÐÑиÑÑиÑÑ ÑоÑмаÑиÑование`,"Fill color or set the text color":`Ð¦Ð²ÐµÑ Ð·Ð°Ð»Ð¸Ð²ÐºÐ¸ или ÑÐ²ÐµÑ ÑекÑÑа`,Redo:`ÐовÑоÑ`,Undo:`ÐÑмена`,Bold:`ÐиÑнÑй`,Italic:`ÐаклоннÑй`,"Insert Unordered List":`ÐÑÑавка маÑкиÑованного ÑпиÑка`,"Insert Ordered List":`ÐÑÑавиÑÑ Ð½ÑмеÑованнÑй ÑпиÑок`,"Align Center":`ÐÑÑовнÑÑÑ Ð¿Ð¾ ÑенÑÑÑ`,"Align Justify":`ÐÑÑовнÑÑÑ Ð¿Ð¾ ÑиÑине`,"Align Left":`ÐÑÑовнÑÑÑ Ð¿Ð¾ Ð»ÐµÐ²Ð¾Ð¼Ñ ÐºÑаÑ`,"Align Right":`ÐÑÑовнÑÑÑ Ð¿Ð¾ пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ`,"Insert Horizontal Line":`ÐÑÑавиÑÑ Ð³Ð¾ÑизонÑалÑнÑÑ Ð»Ð¸Ð½Ð¸Ñ`,"Insert Image":`ÐÑÑавиÑÑ Ð¸Ð·Ð¾Ð±Ñажение`,"Insert file":`ÐÑÑавиÑÑ Ñайл`,"Insert youtube/vimeo video":`ÐÑÑавÑÑе видео`,"Insert link":`ÐÑÑавиÑÑ ÑÑÑлкÑ`,"Font size":`Ð Ð°Ð·Ð¼ÐµÑ ÑÑиÑÑа`,"Font family":`ШÑиÑÑ`,"Insert format block":`ÐÑÑавиÑÑ Ð±Ð»Ð¾ÑнÑй ÑлеменÑ`,Normal:`ÐоÑмалÑнÑй ÑекÑÑ`,"Heading 1":`Ðаголовок 1`,"Heading 2":`Ðаголовок 2`,"Heading 3":`Ðаголовок 3`,"Heading 4":`Ðаголовок 4`,Quote:`ЦиÑаÑа`,Code:`Ðод`,Insert:`ÐÑÑавиÑÑ`,"Insert table":`ÐÑÑавиÑÑ ÑаблиÑÑ`,"Decrease Indent":`УменÑÑиÑÑ Ð¾ÑÑÑÑп`,"Increase Indent":`УвелиÑиÑÑ Ð¾ÑÑÑÑп`,"Select Special Character":`ÐÑбеÑиÑе ÑпеÑиалÑнÑй Ñимвол`,"Insert Special Character":`ÐÑÑавиÑÑ ÑпеÑиалÑнÑй Ñимвол`,"Paint format":`ФоÑÐ¼Ð°Ñ ÐºÑаÑки`,"Change mode":`ÐÑÑоÑник`,Margins:`ÐÑÑÑÑпÑ`,top:`ÑвеÑÑ
Ñ`,right:`ÑпÑава`,bottom:`ÑнизÑ`,left:`Ñлева`,Styles:`СÑили`,Classes:`ÐлаÑÑÑ`,Align:`ÐÑÑавнивание`,Right:`Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ`,Center:`Ðо ÑенÑÑÑ`,Left:`Ðо Ð»ÐµÐ²Ð¾Ð¼Ñ ÐºÑаÑ`,"--Not Set--":`--не ÑÑÑанавливаÑÑ--`,Src:`src`,Title:`Ðаголовок`,Alternative:`ÐлÑÑеÑнаÑивнÑй ÑекÑÑ (alt)`,Link:`СÑÑлка`,"Open link in new tab":`ÐÑкÑÑваÑÑ ÑÑÑÐ»ÐºÑ Ð² новом окне`,file:`Файл`,Advanced:`РаÑÑиÑеннÑе`,"Image properties":`СвойÑÑва изобÑажениÑ`,Cancel:`ÐÑмена`,Ok:`Ðк`,"Your code is similar to HTML. Keep as HTML?":`ÐÐ°Ñ ÑекÑÑ, коÑоÑÑй Ð²Ñ Ð¿ÑÑаеÑеÑÑ Ð²ÑÑавиÑÑ Ð¿Ð¾Ñ
ож на HTML. ÐÑÑавиÑÑ ÐµÐ³Ð¾ как HTML?`,"Paste as HTML":`ÐÑÑавиÑÑ ÐºÐ°Ðº HTML?`,Keep:`СоÑ
ÑаниÑÑ Ð¾Ñигинал`,Clean:`ÐоÑиÑÑиÑÑ`,"Insert as Text":`ÐÑÑавиÑÑ ÐºÐ°Ðº ÑекÑÑ`,"Insert only Text":`ÐÑÑавиÑÑ ÑолÑко ÑекÑÑ`,"Word Paste Detected":`Ðозможно ÑÑо ÑÑÐ°Ð³Ð¼ÐµÐ½Ñ Word или Excel`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`ÐонÑÐµÐ½Ñ ÐºÐ¾ÑоÑÑй Ð²Ñ Ð²ÑÑавлÑеÑе поÑÑÑÐ¿Ð°ÐµÑ Ð¸Ð· докÑменÑа Microsoft Word / Excel. ÐÑ Ñ
оÑиÑе ÑоÑ
ÑаниÑÑ ÑоÑÐ¼Ð°Ñ Ð¸Ð»Ð¸ оÑиÑÑиÑÑ ÐµÐ³Ð¾?`,"File Browser":`ÐÑаÑÐ·ÐµÑ Ñайлов`,"Error on load list":`ÐÑибка пÑи загÑÑзке ÑпиÑка изобÑажений`,"Error on load folders":`ÐÑибка пÑи загÑÑзке ÑпиÑка диÑекÑоÑий`,"Are you sure?":`ÐÑ ÑвеÑенÑ?`,"Enter Directory name":`ÐведиÑе название диÑекÑоÑии`,"Create directory":`СоздаÑÑ Ð´Ð¸ÑекÑоÑиÑ`,"type name":`введиÑе название`,"Drop image":`ÐеÑеÑаÑиÑе ÑÑда изобÑажение`,"Drop file":`ÐеÑеÑаÑиÑе ÑÑда Ñайл`,"or click":`или нажмиÑе`,"Alternative text":`ÐлÑÑеÑнаÑивнÑй ÑекÑÑ`,Browse:`СеÑвеÑ`,Upload:`ÐагÑÑзка`,Backgroun
500d:`Фон`,Text:`ТекÑÑ`,Top:` РвеÑÑ
Ñ`,Middle:`Ðо ÑеÑедине`,Bottom:`РнизÑ`,"Insert column before":`ÐÑÑавиÑÑ ÑÑÐ¾Ð»Ð±ÐµÑ Ð´Ð¾`,"Insert column after":`ÐÑÑавиÑÑ ÑÑÐ¾Ð»Ð±ÐµÑ Ð¿Ð¾Ñле`,"Insert row above":`ÐÑÑавиÑÑ ÑÑд вÑÑе`,"Insert row below":`ÐÑÑавиÑÑ ÑÑд ниже`,"Delete table":`УдалиÑÑ ÑаблиÑÑ`,"Delete row":`УдалÑÑÑ ÑÑд`,"Delete column":`УдалиÑÑ ÑÑолбеÑ`,"Empty cell":`ÐÑиÑÑиÑÑ ÑÑейкÑ`,source:`HTML`,bold:`жиÑнÑй`,italic:`кÑÑÑив`,brush:`заливка`,link:`ÑÑÑлка`,undo:`оÑмениÑÑ`,redo:`повÑоÑиÑÑ`,table:`ÑаблиÑа`,image:`ÐзобÑажение`,eraser:`оÑиÑÑиÑÑ`,paragraph:`паÑагÑаÑ`,fontsize:`ÑÐ°Ð·Ð¼ÐµÑ ÑÑиÑÑа`,video:`видео`,font:`ÑÑиÑÑ`,about:`о ÑедакÑоÑе`,print:`пеÑаÑÑ`,underline:`подÑеÑкнÑÑÑй`,strikethrough:`пеÑеÑеÑкнÑÑÑй`,indent:`оÑÑÑÑп`,outdent:`вÑÑÑÑп`,fullsize:`во веÑÑ ÑкÑан`,shrink:`обÑÑнÑй ÑазмеÑ`,hr:`линиÑ`,ul:`СпиÑок`,ol:`ÐÑмеÑованнÑй ÑпиÑок`,cut:`ÐÑÑезаÑÑ`,selectall:`ÐÑделиÑÑ Ð²Ñе`,"Embed code":`Ðод`,"Open link":`ÐÑкÑÑÑÑ ÑÑÑлкÑ`,"Edit link":`РедакÑиÑоваÑÑ ÑÑÑлкÑ`,"No follow":`ÐÑÑибÑÑ nofollow`,Unlink:`УбÑаÑÑ ÑÑÑлкÑ`,Eye:`ÐÑоÑмоÑÑ`,pencil:`РедакÑиÑоваÑÑ`,Update:`ÐбновиÑÑ`," URL":`URL`,Edit:`РедакÑиÑоваÑÑ`,"Horizontal align":`ÐоÑизонÑалÑное вÑÑавнивание`,Filter:`ФилÑÑÑ`,"Sort by changed":`Ðо изменениÑ`,"Sort by name":`Ðо имени`,"Sort by size":`Ðо ÑазмеÑÑ`,"Add folder":`ÐобавиÑÑ Ð¿Ð°Ð¿ÐºÑ`,Reset:`ÐоÑÑÑановиÑÑ`,Save:`СоÑ
ÑаниÑÑ`,"Save as ...":`СоÑ
ÑаниÑÑ ÐºÐ°Ðº`,Resize:`ÐзмениÑÑ ÑазмеÑ`,Crop:`ÐбÑезаÑÑ ÑазмеÑ`,Width:`ШиÑина`,Height:`ÐÑÑоÑа`,"Keep Aspect Ratio":`СоÑ
ÑанÑÑÑ Ð¿ÑопоÑÑии`,Yes:`Ðа`,No:`ÐеÑ`,Remove:`УдалиÑÑ`,Select:`ÐÑделиÑÑ`,"Chars: %d":`Символов: %d`,"Words: %d":`Слов: %d`,All:`ÐÑделиÑÑ Ð²Ñе`,"Select %s":`ÐÑделиÑÑ: %s`,"Select all":`ÐÑделиÑÑ Ð²Ñе`,"Vertical align":`ÐеÑÑикалÑное вÑÑавнивание`,Split:`РазделиÑÑ`,"Split vertical":`РазделиÑÑ Ð¿Ð¾ веÑÑикали`,"Split horizontal":`РазделиÑÑ Ð¿Ð¾ гоÑизонÑали`,Merge:`ÐбÑединиÑÑ Ð² однÑ`,"Add column":`ÐобавиÑÑ ÑÑолбеÑ`,"Add row":`ÐобавиÑÑ ÑÑÑокÑ`,Delete:`УдалиÑÑ`,Border:`Рамка`,"License: %s":`ÐиÑензиÑ: %s`,"Strike through":`ÐеÑеÑеÑкнÑÑÑ`,Underline:`ÐодÑеÑкивание`,superscript:`веÑÑ
ний индекÑ`,subscript:`индекÑ`,"Cut selection":`ÐÑÑезаÑÑ`,Break:`РазделиÑелÑ`,"Search for":`ÐайÑи`,"Replace with":`ÐамениÑÑ Ð½Ð°`,Replace:`ÐамениÑÑ`,Paste:`ÐÑÑавиÑÑ`,"Choose Content to Paste":`ÐÑбÑаÑÑ ÐºÐ¾Ð½ÑÐµÐ½Ñ Ð´Ð»Ñ Ð²ÑÑавки`,"You can only edit your own images. Download this image on the host?":`ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑедакÑиÑоваÑÑ ÑолÑко Ñвои ÑобÑÑвеннÑе изобÑажениÑ. ÐагÑÑзиÑÑ ÑÑо изобÑажение на Ð²Ð°Ñ ÑеÑвеÑ?`,"The image has been successfully uploaded to the host!":`ÐзобÑажение ÑÑпеÑно загÑÑжено на ÑеÑвеÑ!`,palette:`палиÑÑа`,"There are no files":`Рданном каÑалоге Ð½ÐµÑ Ñайлов`,Rename:`ÐеÑеименоваÑÑ`,"Enter new name":`ÐведиÑе новое имÑ`,preview:`ÐÑедпÑоÑмоÑÑ`,download:`СкаÑаÑÑ`,"Paste from clipboard":`ÐÑÑавиÑÑ Ð¸Ð· бÑÑеÑа обмена`,"Your browser doesn't support direct access to the clipboard.":`ÐÐ°Ñ Ð±ÑаÑÐ·ÐµÑ Ð½Ðµ поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿ÑÑмой доÑÑÑп к бÑÑеÑÑ Ð¾Ð±Ð¼ÐµÐ½Ð°.`,"Copy selection":`СкопиÑоваÑÑ Ð²Ñделенное`,copy:`копиÑ`,"Border radius":`РадиÑÑ Ð³ÑаниÑÑ`,"Show all":`ÐоказаÑÑ Ð²Ñе`,Apply:`ÐÑимениÑÑ`,"Please fill out this field":`ÐожалÑйÑÑа, заполниÑе ÑÑо поле`,"Please enter a web address":`ÐожалÑйÑÑа, введиÑе веб-адÑеÑ`,Default:`Ðо ÑмолÑаниÑ`,Circle:`ÐÑÑг`,Dot:`ТоÑка`,Quadrate:`ÐвадÑаÑ`,Find:`ÐайÑи`,"Find Previous":`ÐайÑи ÐÑедÑдÑÑие`,"Find Next":`ÐайÑи Ðалее`,"Insert className":`ÐÑÑавиÑÑ Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ðµ клаÑÑа`,"Press Alt for custom resizing":`ÐажмиÑе Alt Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑзоваÑелÑÑкого ÑазмеÑа`},sh={"Type something":`Bir Åeyler yaz`,Advanced:`GeliÅmiÅ`,"About Jodit":`Jodit Hakkında`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`Jodit Kullanım Kılavuzu`,"contains detailed help for using":`kullanım için detaylı bilgiler içerir`,"For information about the license, please go to our website:":`Lisans hakkında bilgi için lütfen web sitemize gidin:`,"Buy full version":`Tam versiyonunu satın al`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. T
500üm hakları saklıdır.`,Anchor:`BaÄlantı`,"Open in new tab":`Yeni sekmede aç`,"Open in fullsize":`Editörü tam ekranda aç`,"Clear Formatting":`Stili temizle`,"Fill color or set the text color":`Renk doldur veya yazı rengi seç`,Redo:`Yinele`,Undo:`Geri Al`,Bold:`Kalın`,Italic:`İtalik`,"Insert Unordered List":`Sırasız Liste Ekle`,"Insert Ordered List":`Sıralı Liste Ekle`,"Align Center":`Ortala`,"Align Justify":`Kenarlara Yasla`,"Align Left":`Sola Yasla`,"Align Right":`SaÄa Yasla`,"Insert Horizontal Line":`Yatay Ãizgi Ekle`,"Insert Image":`Resim Ekle`,"Insert file":`Dosya Ekle`,"Insert youtube/vimeo video":`Youtube/Vimeo Videosu Ekle`,"Insert link":`BaÄlantı Ekle`,"Font size":`Font Boyutu`,"Font family":`Font Ailesi`,"Insert format block":`Blok Ekle`,Normal:`Normal`,"Heading 1":`BaÅlık 1`,"Heading 2":`BaÅlık 2`,"Heading 3":`BaÅlık 3`,"Heading 4":`BaÅlık 4`,Quote:`Alıntı`,Code:`Kod`,Insert:`Ekle`,"Insert table":`Tablo Ekle`,"Decrease Indent":`Girintiyi Azalt`,"Increase Indent":`Girintiyi Arttır`,"Select Special Character":`Ãzel Karakter Seç`,"Insert Special Character":`Ãzel Karakter Ekle`,"Paint format":`Resim Biçimi`,"Change mode":`Mod DeÄiÅtir`,Margins:`BoÅluklar`,top:`Ãst`,right:`SaÄ`,bottom:`Alt`,left:`Sol`,Styles:`CSS Stilleri`,Classes:`CSS Sınıfları`,Align:`Hizalama`,Right:`SaÄ`,Center:`Ortalı`,Left:`Sol`,"--Not Set--":`Belirsiz`,Src:`Kaynak`,Title:`BaÅlık`,Alternative:`Alternatif Yazı`,Link:`Link`,"Open link in new tab":`BaÄlantıyı yeni sekmede aç`,Image:`Resim`,file:`Dosya`,"Image properties":`Resim özellikleri`,Cancel:`İptal`,Ok:`Tamam`,"Your code is similar to HTML. Keep as HTML?":`Kodunuz HTML koduna benziyor. HTML olarak devam etmek ister misiniz?`,"Paste as HTML":`HTML olarak yapıÅtır`,Keep:`Sakla`,Clean:`Temizle`,"Insert as Text":`Yazı olarak ekle`,"Word Paste Detected":`Word biçiminde yapıÅtırma algılandı`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`YapıÅtırılan içerik bir Microsoft Word/Excel belgesinden geliyor. Formatı korumak mı yoksa temizlemek mi istiyorsunuz?`,"Insert only Text":`Sadece yazıyı ekle`,"File Browser":`Dosya Listeleyici`,"Error on load list":`Liste yüklenirken hata oluÅtu`,"Error on load folders":`Klasörler yüklenirken hata oluÅtur`,"Are you sure?":`Emin misiniz?`,"Enter Directory name":`Dizin yolu giriniz`,"Create directory":`Dizin oluÅtur`,"type name":`İsim yaz`,"Drop image":`Resim bırak`,"Drop file":`Dosya bırak`,"or click":`veya tıkla`,"Alternative text":`Alternatif yazı`,Browse:`Gözat`,Upload:`Yükle`,Background:`Arka plan`,Text:`Yazı`,Top:`Ãst`,Middle:`Orta`,Bottom:`AÅaÄı`,"Insert column before":`Ãncesine kolon ekle`,"Insert column after":`Sonrasına kolon ekle`,"Insert row above":`Ãstüne satır ekle`,"Insert row below":`Altına satır ekle`,"Delete table":`Tabloyu sil`,"Delete row":`Satırı sil`,"Delete column":`Kolonu sil`,"Empty cell":`Hücreyi temizle`,Delete:`Sil`,"Strike through":`Ãstü çizili`,Underline:`Alt çizgi`,Break:`Satır sonu`,"Search for":`Ara`,"Replace with":`Åununla deÄiÅtir`,Replace:`DeÄiÅtir`,Edit:`Düzenle`,"Vertical align":`Dikey hizala`,"Horizontal align":`Yatay hizala`,Filter:`Filtre`,"Sort by changed":`DeÄiÅime göre sırala`,"Sort by name":`İsme göre sırala`,"Sort by size":`Boyuta göre sırala`,"Add folder":`Klasör ekle`,Split:`Ayır`,"Split vertical":`Dikey ayır`,"Split horizontal":`Yatay ayır`,Merge:`BirleÅtir`,"Add column":`Kolon ekle`,"Add row":`Satır e
500kle`,Border:`Kenarlık`,"Embed code":`Kod ekle`,Update:`Güncelle`,superscript:`Ãst yazı`,subscript:`Alt yazı`,"Cut selection":`Seçilimi kes`,Paste:`YapıÅtır`,"Choose Content to Paste":`YapıÅtırılacak içerik seç`,"Chars: %d":`Harfler: %d`,"Words: %d":`Kelimeler: %d`,All:`Tümü`,"Select %s":`Seç: %s`,"Select all":`Tümünü seç`,source:`Kaynak`,bold:`Kalın`,italic:`italik`,brush:`Fırça`,link:`BaÄlantı`,undo:`Geri al`,redo:`Yinele`,table:`Tablo`,image:`Resim`,eraser:`Silgi`,paragraph:`Paragraf`,fontsize:`Font boyutu`,video:`Video`,font:`Font`,about:`Hakkında`,print:`Yazdır`,underline:`Alt çizgi`,strikethrough:`Ãstü çizili`,indent:`Girinti`,outdent:`Ãıkıntı`,fullsize:`Tam ekran`,shrink:`Küçült`,hr:`Ayraç`,ul:`Sırasız liste`,ol:`Sıralı liste`,cut:`Kes`,selectall:`Tümünü seç`,"Open link":`BaÄlantıyı aç`,"Edit link":`BaÄlantıyı düzenle`,"No follow":`Nofollow özelliÄi`,Unlink:`BaÄlantıyı kaldır`,Eye:`Yorumu`,pencil:`Düzenlemek için`," URL":`URL`,Reset:`Sıfırla`,Save:`Kaydet`,"Save as ...":`Farklı kaydet`,Resize:`Boyutlandır`,Crop:`Kırp`,Width:`GeniÅlik`,Height:`Yükseklik`,"Keep Aspect Ratio":`En boy oranını koru`,Yes:`Evet`,No:`Hayır`,Remove:`Sil`,Select:`Seç`,"You can only edit your own images. Download this image on the host?":`Sadece kendi resimlerinizi düzenleyebilirsiniz. Bu görseli kendi hostunuza indirmek ister misiniz?`,"The image has been successfully uploaded to the host!":`Görsel baÅarıyla hostunuza yüklendi`,palette:`Palet`,"There are no files":`Bu dizinde dosya yok`,Rename:`Yeniden isimlendir`,"Enter new name":`Yeni isim girin`,preview:`Ãn izleme`,download:`İndir`,"Paste from clipboard":`Panodan yapıÅtır `,"Your browser doesn't support direct access to the clipboard.":`Tarayıcınız panoya doÄrudan eriÅimi desteklemiyor.`,"Copy selection":`Seçimi kopyala`,copy:`Kopyala`,"Border radius":`Sınır yarıçapı`,"Show all":`Tümünü Göster`,Apply:`Uygula`,"Please fill out this field":`Lütfen bu alanı doldurun`,"Please enter a web address":`Lütfen bir web adresi girin`,Default:`Varsayılan`,Circle:`Daire`,Dot:`Nokta`,Quadrate:`Kare`,Find:`Bul`,"Find Previous":`Ãncekini Bul`,"Find Next":`Sonrakini Bul`,"Insert className":`Sınıf adı girin`,"Press Alt for custom resizing":`Ãzel yeniden boyutlandırma için Alt tuÅuna basın`,"License: %s":`Lisans: %s`},ch={"Type something":`ÐапиÑÑÑÑ ÑоÑÑ`,"About Jodit":`ÐÑо Jodit`,"Jodit Editor":`РедакÑÐ¾Ñ Jodit`,"Jodit User's Guide":`Jodit ÑнÑÑÑÑкÑÑÑ ÐºÐ¾ÑиÑÑÑваÑа`,"contains detailed help for using":`мÑÑÑиÑÑ Ð´ÐµÑалÑÐ½Ñ ÑнÑоÑмаÑÑÑ Ñодо коÑиÑÑÑваннÑ`,"For information about the license, please go to our website:":`Щоб дÑзнаÑиÑÑ Ð±ÑлÑÑе пÑо лÑÑензÑÑ , бÑÐ´Ñ Ð»Ð°Ñка, пеÑейдÑÑÑ Ð½Ð° Ð½Ð°Ñ ÑайÑ:`,"Buy full version":`ÐÑпиÑи Ð¿Ð¾Ð²Ð½Ñ Ð²ÐµÑÑÑÑ`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`ÐвÑоÑÑÑÐºÑ Ð¿Ñава © XDSoft.net - ЧÑпÑÑнов ÐалеÑÑй. ÐÑÑ Ð¿Ñава заÑ
иÑенÑ.`,Anchor:`ÐнкоÑ`,"Open in new tab":`ÐÑдкÑиÑи Ñ Ð½Ð¾Ð²Ñй вкладÑÑ`,"Open in fullsize":`ÐÑдкÑиÑи ÑедакÑÐ¾Ñ Ð² Ð¿Ð¾Ð²Ð½Ð¾Ð¼Ñ ÑозмÑÑÑ`,"Clear Formatting":`ÐÑиÑÑиÑи ÑоÑмаÑÑваннÑ`,"Fill color or set the text color":`ÐолÑÑ Ð·Ð°Ð»Ð¸Ð²ÐºÐ¸ або колÑÑ ÑекÑÑа`,Redo:`ÐовÑоÑиÑи`,Undo:`ÐÑдмÑниÑи`,Bold:`ÐиÑний`,Italic:`ÐÑÑÑÑв`,"Insert Unordered List":`ÐÑÑавиÑи невпоÑÑдкований ÑпиÑок`,"Insert Ordered List":`ÐÑÑавиÑи нÑмеÑованний ÑпиÑок`,"Align Center":`ÐиÑÑвнÑÑи по ÑенÑÑÑ`,"Align Justify":`ÐиÑÑвнÑÑи по ÑиÑинÑ`,"Align Left":`ÐиÑÑвнÑÑи по лÑÐ²Ð¾Ð¼Ñ ÐºÑаÑ`,"Align Right":`ÐиÑÑвнÑÑи по пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ`,"Insert Horizontal Line":`ÐÑÑавиÑи гоÑизонÑалÑÐ½Ñ Ð»ÑнÑÑ`,"Insert Image":`ÐÑÑавиÑи зобÑаженнÑ`,"Insert file":`ÐÑÑавиÑи Ñайл`,"Insert youtube/vimeo video":`ÐÑÑавиÑи вÑдео`,"Insert link":`ÐÑÑавиÑи поÑиланнÑ`,"Font size":`РозмÑÑ ÑÑиÑÑÑ`,"Font family":`ШÑиÑÑ`,"Insert format block":`ÐÑÑавиÑи блоÑний елеменÑ`,Normal:`ÐоÑмалÑний ÑекÑÑ`,"Heading 1":`Ðаголовок 1`,"Heading 2":`Ðаголовок 2`,"Heading 3":`Ðаголовок 3`,"Heading 4":`Ðаголовок 4`,Quote:`ЦиÑаÑа`,Code:`Ðод`,Insert:`ÐÑÑавиÑи`,"Insert table":`ÐÑÑавиÑи ÑаблиÑÑ`,"Decrease Indent":`ÐбÑлÑÑиÑи вÑдÑÑÑп`,"Increase Indent":`ÐменÑиÑи вÑдÑÑÑп`,"Select Special Character":`ÐбеÑÑÑÑ ÑпеÑÑалÑнÑй Ñимвол`,"Insert Special Character":`ÐÑÑавиÑи ÑпеÑÑалÑнÑй Ñимвол`,"Paint format":`ФоÑÐ¼Ð°Ñ ÐºÑаÑки`,"Change mode":`ÐжеÑело`,Margins:`ÐÑдÑÑÑпи`,top:`звеÑÑ
Ñ`,right:`ÑпÑава`,bottom:`знизÑ`,left:`злÑва`,Styles:`СÑилÑ`,Classes:`ÐлаÑи`,Align:`ÐиÑÑвнÑваннÑ`,Right:`Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ`,Center:`Ðо ÑенÑÑÑ`,Left:`Ðо лÑÐ²Ð¾Ð¼Ñ ÐºÑаÑ`,"--Not Set--":`--не вÑÑановлено--`,Src:`src`,Title:`Ðаголовок`,Alternative:`ÐлÑÑеÑнаÑивний ÑекÑÑ (alt)`,Link:`ÐоÑиланнÑ`,"Open link in new tab":`ÐÑдкÑиÑи поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð² новÑй вкладÑÑ`,file:`Файл`,Advanced:`РозÑиÑенÑ`,"Image properties":`ÐлаÑÑивоÑÑÑ Ð·Ð¾Ð±ÑаженнÑ`,Cancel:`ÐÑдмÑна`,Ok:`Ðк`,"Your code is similar to HTML. Keep as HTML?":`ТекÑÑ, Ñкий Ðи намагаÑÑеÑÑ Ð²ÑÑавиÑи ÑÑ
ожий на HTML. ÐÑÑавиÑи його Ñк HTML?`,"Paste as HTML":`ÐÑÑавиÑи його Ñк HTML`,Keep:`ÐбеÑегÑи оÑигÑнал`,Clean:`ÐоÑиÑÑиÑи`,"Insert as Text":`ÐÑÑавиÑи Ñк ÑекÑÑ`,"Insert only Text":`ÐÑÑавиÑи ÑÑлÑки ÑекÑÑ`,"Word Paste Detected":`Ðожливо Ñе ÑÑÐ°Ð³Ð¼ÐµÐ½Ñ Word або Excel`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`Ðи вÑÑавлÑÑÑе конÑÐµÐ½Ñ Ð· докÑменÑа Microsoft Word або Excel. ÐажаÑÑе збеÑегÑи ÑоÑмаÑÑваннÑ?`,"File Browser":`ÐÑаÑÐ·ÐµÑ ÑайлÑв`,"Error on load list":`Ðомилка пÑи заванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑпиÑÐºÑ Ð·Ð¾Ð±ÑаженÑ`,"
500Error on load folders":`Ðомилка пÑи заванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑпиÑÐºÑ Ð¿Ð°Ð¿Ð¾Ðº`,"Are you sure?":`Ðи впевненÑ?`,"Enter Directory name":`ÐведÑÑÑ Ð½Ð°Ð·Ð²Ñ Ð¿Ð°Ð¿ÐºÐ¸`,"Create directory":`СÑвоÑиÑи папкÑ`,"type name":`введÑÑÑ Ð½Ð°Ð·Ð²Ñ`,"Drop image":`ÐеÑеÑÑгнÑÑÑ Ð·Ð¾Ð±ÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑÑди`,"Drop file":`ÐеÑеÑÑгнÑÑÑ Ñайл ÑÑди`,"or click":`або клÑкнÑÑÑ`,"Alternative text":`ÐлÑÑеÑнаÑивнÑй ÑекÑÑ`,Browse:`СеÑвеÑ`,Upload:`ÐаванÑаженнÑ`,Background:`Фон`,Text:`ТекÑÑ`,Top:` ÐгоÑÑ`,Middle:`Ðо ÑенÑÑÑ`,Bottom:`ÐонизÑ`,"Insert column before":`ÐÑÑавиÑи ÑÑовпеÑÑ Ð´Ð¾`,"Insert column after":`ÐÑÑавиÑи ÑÑовпеÑÑ Ð¿ÑÑлÑ`,"Insert row above":`ÐÑÑавиÑи ÑÑдок виÑе`,"Insert row below":`ÐÑÑавиÑи ÑÑдок нижÑе`,"Delete table":`ÐидалиÑи ÑаблиÑÑ`,"Delete row":`ÐидалиÑи ÑÑдок`,"Delete column":`ÐидалиÑи ÑÑовпÑик`,"Empty cell":`ÐÑиÑÑиÑи клÑинкÑ`,source:`HTML`,bold:`жиÑний`,italic:`кÑÑÑÑв`,brush:`заливка`,link:`поÑиланнÑ`,undo:`вÑдмÑниÑи`,redo:`повÑоÑиÑи`,table:`ÑаблиÑÑ`,image:`зобÑаженнÑ`,eraser:`видаленнÑ`,paragraph:`паÑагÑаÑ`,fontsize:`ÑозмÑÑ ÑÑиÑÑÑ`,video:`вÑдео`,font:`ÑÑиÑÑ`,about:`пÑо ÑедакÑоÑ`,print:`дÑÑк`,underline:`пÑдкÑеÑлений`,strikethrough:`закÑеÑлений`,indent:`вÑдÑÑÑп`,outdent:`заÑÑÑп`,fullsize:`на веÑÑ ÐµÐºÑан`,shrink:`звиÑайний ÑозмÑÑ`,hr:`лÑнÑÑ`,ul:`СпиÑок`,ol:`ÐÑмеÑований ÑпиÑок`,cut:`ÐиÑÑзаÑи`,selectall:`ÐидÑлиÑи вÑе`,"Embed code":`Ðод`,"Open link":`ÐÑдкÑиÑи поÑиланнÑ`,"Edit link":`РедагÑваÑи поÑиланнÑ`,"No follow":`ÐÑÑибÑÑ nofollow`,Unlink:`ÐидалиÑи поÑиланнÑ`,Eye:`ÐеÑеглÑд`,pencil:`РедагÑваннÑ`,Update:`ÐновиÑи`," URL":`URL`,Edit:`РедагÑваÑи`,"Horizontal align":`ÐоÑизонÑалÑне виÑÑвнÑваннÑ`,Filter:`ФÑлÑÑÑ`,"Sort by changed":`СоÑÑÑваÑи за змÑноÑ`,"Sort by name":`СоÑÑÑваÑи за Ñм'Ñм`,"Sort by size":`СоÑÑÑваÑи за ÑозмÑÑом`,"Add folder":`ÐодаÑи папкÑ`,Reset:`ÐÑдновиÑи`,Save:`ÐбеÑегÑи`,"Save as ...":`ÐбеÑегÑи Ñк`,Resize:`ÐмÑниÑи ÑозмÑÑ`,Crop:`ÐбÑÑзаÑи ÑозмÑÑ`,Width:`ШиÑина`,Height:`ÐиÑоÑа`,"Keep Aspect Ratio":`ÐбеÑегÑи пÑопоÑÑÑÑ`,Yes:`Так`,No:`ÐÑ`,Remove:`ÐидалиÑи`,Select:`ÐибÑаÑи`,"Chars: %d":`СимволÑв: %d`,"Words: %d":`СлÑв: %d`,All:`ÐибÑаÑи вÑе`,"Select %s":`ÐибÑаÑи: %s`,"Select all":`ÐибÑаÑи вÑе`,"Vertical align":`ÐеÑÑикалÑне виÑÑвнÑваннÑ`,Split:`РоздÑлиÑи`,"Split vertical":`РоздÑлиÑи по веÑÑикалÑ`,"Split horizontal":`РоздÑлиÑи по гоÑизонÑалÑ`,Merge:`Ðб'ÑднаÑи в однÑ`,"Add column":`ÐодаÑи ÑÑовпÑик`,"Add row":`ÐодаÑи ÑÑдок`,Delete:`ÐидалиÑи`,Border:`Рамка`,"License: %s":`ÐÑÑензÑÑ: %s`,"Strike through":`ÐакÑеÑлений`,Underline:`ÐÑдкÑеÑлений`,superscript:`веÑÑ
нÑй ÑндекÑ`,subscript:`ÑндекÑ`,"Cut selection":`ÐбÑÑзаÑи вибÑане`,Break:`Ðежа`,"Search for":`ШÑкаÑи`,"Replace with":`ÐамÑниÑи на`,Replace:`ÐамÑниÑи`,Paste:`ÐÑÑавиÑи`,"Choose Content to Paste":`ÐбÑаÑи конÑÐµÐ½Ñ Ð´Ð»Ñ Ð²ÑÑавки`,"You can only edit your own images. Download this image on the host?":`Ðи можеÑе ÑедагÑваÑи лиÑе влаÑÐ½Ñ Ð·Ð¾Ð±ÑаженнÑ. ÐаванÑажиÑи зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð½Ð° Ð²Ð°Ñ ÑеÑвеÑ?`,"The image has been successfully uploaded to the host!":`ÐобÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑÑпÑÑно заванÑажено на ÑеÑвеÑ!`,palette:`палÑÑÑа`,"There are no files":`Файли вÑдÑÑÑнÑ`,Rename:`ÐмÑниÑи назвÑ`,"Enter new name":`ÐведÑÑÑ Ð½Ð¾Ð²Ðµ ÑмÑ'`,preview:`ÐопеÑеднÑй пеÑеглÑд`,download:`ÐаванÑажиÑи`,"Paste from clipboard":`ÐÑÑавиÑи з бÑÑеÑа обмÑнÑ`,"Your browser doesn't support direct access to the clipboard.":`ÐÐ°Ñ Ð±ÑаÑÐ·ÐµÑ Ð½Ðµ пÑдÑÑимÑÑ Ð´Ð¾ÑÑÑп до бÑÑеÑа обмÑнÑ.`,"Copy selection":`ÐопÑÑваÑи видÑлене`,copy:`копÑÑ`,"Border radius":`РадÑÑÑ Ñамки`,"Show all":`ÐоказаÑи вÑе`,Apply:`ÐаÑÑоÑÑваÑи`,"Please fill out this field":`ÐÑÐ´Ñ Ð»Ð°Ñка, заповнÑÑÑ Ñе поле`,"Please enter a web address":`ÐÑÐ´Ñ Ð»Ð°Ñка, введÑÑÑ Ð²ÐµÐ±-адÑеÑÑ`,Default:`Ðа замовÑеннÑм`,Circle:`Ðоло`,Dot:`ÐÑапка`,Quadrate:`ÐвадÑаÑ`,Find:`ÐнайÑи`,"Find Previous":`ÐнайÑи попеÑеднÑ`,"Find Next":`ÐнайÑи наÑÑÑпнÑ`,"Insert className":`ÐÑÑавиÑи клаÑ`,"Press Alt for custom resizing":`ÐаÑиÑнÑÑÑ Alt Ð´Ð»Ñ Ð·Ð¼Ñни ÑозмÑÑÑ`},lh={"Type something":`è¾å
¥ä¸äºå
容`,Advanced:`é«çº§`,"About Jodit":`å
³äºJodit`,"Jodit Editor":`Jodit Editor`,"Free Non-commercial Version":`Free Non-commercial Version`,"Jodit User's Guide":`å¼åè
æå`,"contains detailed help for using":`使ç¨å¸®å©`,"For information about the license, please go to our website:":`æå
³è®¸å¯è¯çä¿¡æ¯ï¼è¯·è®¿é®æä»¬çç½ç«ï¼`,"Buy full version":`è´ä¹°å®æ´çæ¬`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. çæææ`,Anchor:`Anchor`,"Open in new tab":`卿°çªå£æå¼`,"Open in fullsize":`å
¨å±ç¼è¾`,"Clear Formatting":`æ¸
餿 ·å¼`,"Fill color or set the text color":`é¢è²`,Redo:`éå`,Undo:`æ¤é`,Bold:`ç²ä½`,Italic:`æä½`,"Insert Unordered List":`符å·å表`,"Insert Ordered List":`ç¼å·`,"Align Center":`å±
ä¸`,"Align Justify":`坹齿æ¬`,"Align Left":`左对é½`,"Align Right":`å³å¯¹é½`,"Insert Horizontal Line":`åå²çº¿`,"Insert Image":`å¾ç`,"Insert file":`æä»¶`,"Insert youtube/vimeo video":`è§é¢`,"Insert link":`龿¥`,"Font size":`åå·`,"Font family":`åä½`,"Insert format block":`æ ¼å¼å`,Normal:`é»è®¤`,"Heading 1":`æ é¢1`,"Heading 2":`æ é¢2`,"Heading 3":`æ é¢3`,"Heading 4":`æ é¢4`,Quote:`å¼ç¨`,Code:`代ç `,Insert:`æå
¥`,"Insert table":`è¡¨æ ¼`,"Decrease Indent":`åå°ç¼©è¿`,"Increase Indent":`å¢å 缩è¿`,"Select Special Character":`éæ©ç¹æ®ç¬¦å·`,"Insert Special Character":`ç¹æ®ç¬¦å·`,"Paint format":`æ ¼å¼å¤å¶`,"Change mode":`æ¹å模å¼`,Margins:`å¤è¾¹è·ï¼Marginsï¼`,top:`top`,right:`right`,bottom:`bottom`,left:`left`,Styles:`æ ·å¼`,Classes:`Classes`,Align:`坹齿¹å¼`,Right:`å±
å³`,Center:`å±
ä¸`,Left:`å±
å·¦`,"--Not Set--":`æ `,Src:`Src`,Title:`Title`,Alternative:`Alternative`,Link:`Link`,"Open link in new tab":`卿°çªå£æå¼é¾æ¥`,Image:`å¾ç`,file:`file`,"Image properties":`å¾ç屿§`,Cancel:`åæ¶`,Ok:`ç¡®å®`,"Your code is similar to HTML. Keep as HTML?":`ä½ ç²è´´çææ¬æ¯ä¸æ®µhtml代ç ï¼æ¯å¦ä¿çæºæ ¼å¼`,"Paste as HTML":`htmlç²è´´`,Keep:`ä¿çæºæ ¼å¼`,Clean:`å¹é
ç®æ æ ¼å¼`,"Insert as Text":`æhtml代ç è§ä¸ºæ®éææ¬`,"Word Paste Detected":`ææ¬ç²è´´`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`æ£å¨ç²è´´ Word/Excel çææ¬ï¼æ¯å¦ä¿çæºæ ¼å¼ï¼`,"Insert only Text":`åªä¿çææ¬`,"File Browser":`æä»¶ç®¡ç`,"Error on load list":`å è½½listé误`,"Error on load folders":`å è½½foldersé误`,"Are you sure?":`ä½ ç¡®å®åï¼`,"Enter Directory name":`
500è¾å
¥è·¯å¾`,"Create directory":`å建路å¾`,"type name":`type name`,"Drop image":`æå¨å¾çå°æ¤`,"Drop file":`æå¨æä»¶å°æ¤`,"or click":`æç¹å»`,"Alternative text":`Alternative text`,Browse:`æµè§`,Upload:`ä¸ä¼ `,Background:`èæ¯è²`,Text:`æå`,Top:`é¡¶é¨`,Middle:`ä¸é´`,Bottom:`åºé¨`,"Insert column before":`å¨ä¹åæå
¥å`,"Insert column after":`å¨ä¹åæå
¥å`,"Insert row above":`å¨ä¹åæå
¥è¡`,"Insert row below":`å¨ä¹åæå
¥è¡`,"Delete table":`å é¤è¡¨æ ¼`,"Delete row":`å é¤è¡`,"Delete column":`å é¤å`,"Empty cell":`æ¸
é¤å
容`,"Chars: %d":`å符æ°: %d`,"Words: %d":`åè¯æ°: %d`,"Strike through":`å é¤çº¿`,Underline:`ä¸å线`,superscript:`䏿 `,subscript:`䏿 `,"Cut selection":`åªå`,"Select all":`å
¨é`,Break:`Break`,"Search for":`æ¥æ¾`,"Replace with":`æ¿æ¢ä¸º`,Replace:`æ¿æ¢`,Edit:`ç¼è¾`,Paste:`ç²è´´`,"Choose Content to Paste":`éæ©å
容并ç²è´´`,All:`å
¨é¨`,source:`æºç `,bold:`ç²ä½`,italic:`æä½`,brush:`é¢è²`,link:`龿¥`,undo:`æ¤é`,redo:`éå`,table:`è¡¨æ ¼`,image:`å¾ç`,eraser:`æ©¡ç®æ¦`,paragraph:`段è½`,fontsize:`åå·`,video:`è§é¢`,font:`åä½`,about:`å
³äº`,print:`æå°`,underline:`ä¸å线`,strikethrough:`ä¸åºç°`,indent:`å¢å 缩è¿`,outdent:`åå°ç¼©è¿`,fullsize:`å
¨å±`,shrink:`æ¶ç¼©`,hr:`åå²çº¿`,ul:`æ åºå表`,ol:`顺åºå表`,cut:`åªå`,selectall:`å
¨é`,"Open link":`æå¼é¾æ¥`,"Edit link":`ç¼è¾é¾æ¥`,"No follow":`No follow`,Unlink:`忶龿¥`,Eye:`é¢è§`," URL":`URL`,Reset:`éç½®`,Save:`ä¿å`,"Save as ...":`ä¿å为`,Resize:`è°æ´å¤§å°`,Crop:`åªå`,Width:`宽`,Height:`é«`,"Keep Aspect Ratio":`ä¿æé¿å®½æ¯`,Yes:`æ¯`,No:`ä¸`,Remove:`ç§»é¤`,Select:`éæ©`,"Select %s":`éæ©: %s`,Update:`æ´æ°`,"Vertical align":`åç´å¯¹é½`,Merge:`åå¹¶`,"Add column":`æ·»å å`,"Add row":`æ·»å è¡`,Border:`è¾¹æ¡`,"Embed code":`åµå
¥ä»£ç `,Delete:`å é¤`,"Horizontal align":`水平对é½`,Filter:`çé`,"Sort by changed":`ä¿®æ¹æ¶é´æåº`,"Sort by name":`åç§°æåº`,"Sort by size":`大尿åº`,"Add folder":`æ°å»ºæä»¶å¤¹`,Split:`æå`,"Split vertical":`åç´æå`,"Split horizontal":`æ°´å¹³æå`,"You can only edit your own images. Download this image on the host?":`ä½ åªè½ç¼è¾ä½ èªå·±çå¾çãDownload this image on the host?`,"The image has been successfully uploaded to the host!":`å¾çä¸ä¼ æå`,palette:`è°è²æ¿`,pencil:`é
ç¬`,"There are no files":`æ¤ç®å½ä¸æ²ææä»¶ã`,Rename:`éå½å`,"Enter new name":`è¾å
¥æ°åç§°`,preview:`é¢è§`,download:`ä¸è½½`,"Paste from clipboard":`ç²è´´ä»åªè´´æ¿`,"Your browser doesn't support direct access to the clipboard.":`ä½ æµè§å¨ä¸æ¯æç´æ¥è®¿é®çåªè´´æ¿ã`,"Copy selection":`å¤å¶éä¸å
容`,copy:`å¤å¶`,"Border radius":`è¾¹çåå¾`,"Show all":`æ¾ç¤ºææ`,Apply:`åºç¨`,"Please fill out this field":`请填åè¿ä¸ªå段`,"Please enter a web address":`请è¾å
¥ä¸ä¸ªç½å`,Default:`é»è®¤`,Circle:`åå`,Dot:`ç¹`,Quadrate:`æ¹å½¢`,Find:`æç´¢`,"Find Previous":`æ¥æ¾ä¸ä¸ä¸ª`,"Find Next":`æ¥æ¾ä¸ä¸ä¸ª`,"Insert className":`æå
¥ç级åç§°`,"Press Alt for custom resizing":`æAltèªå®ä¹è°æ´å¤§å°`,"License: %s":`许å¯è¯: %s`},uh={"Type something":`輸å
¥ä¸äºå
§å®¹`,Advanced:`é²é`,"About Jodit":`éæ¼Jodit`,"Jodit Editor":`Jodit Editor`,"Jodit User's Guide":`éç¼è
æå`,"contains detailed help for using":`使ç¨å¹«å©`,"For information about the license, please go to our website:":`ç¸éææ¬æ¢æ¬¾è³è¨ï¼è«é 訪æåçç¶²ç«ï¼`,"Buy full version":`è³¼è²·å®æ´çæ¬`,"Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.":`Copyright © XDSoft.net - Chupurnov Valeriy. All rights reserved.`,Anchor:`é¨é»`,"Open in new tab":`卿°åé éå`,"Open in fullsize":`å
¨è¢å¹ç·¨è¼¯`,"Clear Formatting":`æ¸
餿¨£å¼`,"Fill color or set the text color":`é¡è²`,Redo:`忶復å`,Undo:`復å`,Bold:`ç²é«`,Italic:`æé«`,"Insert Unordered List":`é
ç®ç¬¦èæ¸
å®`,"Insert Ordered List":`ç·¨èæ¸
å®`,"Align Center":`ç½®ä¸`,"Align Justify":`æåå°é½`,"Align Left":`é å·¦`,"Align Right":`é å³`,"Insert Horizontal Line":`åå²ç·`,"Insert Image":`åç`,"Insert file":`æªæ¡`,"Insert youtube/vimeo video":`æå
¥ youtube/vimeo å½±ç`,"Insert link":`æå
¥é£çµ`,"Font size":`æå大å°`,"Font family":`åå`,"Insert format block":`æ ¼å¼ååå¡`,Normal:`å
§æ`,"Heading 1":`æ¨é¡1`,"Heading 2":`æ¨é¡2`,"Heading 3":`æ¨é¡3`,"Heading 4":`æ¨é¡4`,Quote:`弿`,Code:`ç¨å¼ç¢¼`,Insert:`æå
¥`,"Insert table":`è¡¨æ ¼`,"Decrease Indent":`æ¸å°ç¸®æ`,"Increase Indent":`å¢å 縮æ`,"Select Special Character":`é¸æç¹æ®ç¬¦è`,"Insert Special Character":`ç¹æ®ç¬¦è`,"Paint format":`æ ¼å¼è¤è£½`,"Change mode":`檢è¦åå§ç¢¼`,Margins:`éè·`,top:`ä¸`,right:`å³`,bottom:`ä¸`,left:`å·¦`,Styles:`樣å¼`,Classes:`Classes`,Align:`å°é½æ¹å¼`,Right:`é å³`,Center:`ç½®ä¸`,Left:`é å·¦`,"--Not Set--":`ç¡`,Src:`Src`,Title:`Title`,Alternative:`æ¿ä»£`,Link:`Link`,"Open link in new tab":`卿°åé éåé£çµ`,Image:`åç`,file:`æªæ¡`,"Image properties":`åç屬æ§`,Cancel:`åæ¶`,Ok:`確å®`,"Your code is similar to HTML. Keep as HTML?":`æ¨çç¨å¼ç¢¼è HTML é¡ä¼¼ï¼æ¯å¦è²¼ä¸ HTML æ ¼å¼ï¼`,"Paste as HTML":`è²¼ä¸ HTML`,Keep:`ä¿çåå§æ ¼å¼`,Clean:`æ¸
餿 ¼å¼`,"Insert as Text":`ä»¥ç´æåè²¼ä¸`,"Word Paste Detected":`è²¼ä¸ Word æ ¼å¼`,"The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?":`æ£å¨è²¼ä¸ Word/Excel æä»¶çå
§å®¹ï¼æ¯å¦ä¿çåå§æ ¼å¼ï¼`,"Insert only Text":`å
è²¼ä¸å
§æ`,"File Browser":`æªæ¡ç覽`,"Error on load list":`æ¸
å®è¼å
¥é¯èª¤`,"Error on load folders":`è³æå¤¾è¼å
¥é¯èª¤`,"Are you sure?":`æ¨ç¢ºå®åï¼`,"Enter Directory name":`
500è¼¸å ¥è·¯å¾`,"Create directory":`åµå»ºè·¯å¾`,"type name":`type name`,"Drop image":`ææ³åçè³æ¤`,"Drop file":`ææ³æªæ¡è³æ¤`,"or click":`æé»æ`,"Alternative text":`æ¿ä»£æå`,Browse:`ç覽`,Upload:`ä¸å³`,Background:`èæ¯è²`,Text:`æå`,Top:`é é¨`,Middle:`ä¸é`,Bottom:`åºé¨`,"Insert column before":`æå ¥å·¦æ¹æ¬`,"Insert column after":`æå ¥å³æ¹æ¬`,"Insert row above":`æå ¥ä¸æ¹å`,"Insert row below":`æå ¥ä¸æ¹å`,"Delete table":`åªé¤è¡¨æ ¼`,"Delete row":`åªé¤æ´å`,"Delete column":`åªé¤æ´æ¬`,"Empty cell":`æ¸ é¤å §å®¹`,"Chars: %d":`åå æ¸: %d`,"Words: %d":`å®åæ¸: %d`,"Strike through":`åªé¤ç·`,Underline:`åºç·`,superscript:`䏿¨`,subscript:`䏿¨`,"Cut selection":`åªä¸`,"Select all":`å ¨é¸`,Break:`æ·è¡`,"Search for":`å°æ¾`,"Replace with":`å代çº`,Replace:`å代`,Paste:`è²¼ä¸`,"Choose Content to Paste":`é¸æå §å®¹ä¸¦è²¼ä¸`,All:`å ¨é¨`,source:`åå§ç¢¼`,bold:`ç²é«`,italic:`æé«`,brush:`é¡è²`,link:`é£çµ`,undo:`復å`,redo:`忶復å`,table:`è¡¨æ ¼`,image:`åç`,eraser:`æ©¡ç®æ¦`,paragraph:`段è½`,fontsize:`æå大å°`,video:`å½±ç`,font:`åå`,about:`éæ¼`,print:`åå°`,underline:`åºç·`,strikethrough:`åªé¤ç·`,indent:`å¢å 縮æ`,outdent:`æ¸å°ç¸®æ`,fullsize:`å ¨è¢å¹`,shrink:`縮æ¸`,hr:`åéç·`,ul:`é ç®ç¬¦èæ¸ å®`,ol:`ç·¨èæ¸ å®`,cut:`åªä¸`,selectall:`å ¨é¸`,"Open link":`æéé£çµ`,"Edit link":`編輯é£çµ`,"No follow":`No follow`,Unlink:`åæ¶é£çµ`,Eye:`æ¥ç`," URL":`URL`,Reset:`éè¨`,Save:`å²å`,"Save as ...":`å¦åçº...`,Resize:`調æ´å¤§å°`,Crop:`è£å`,Width:`寬`,Height:`é«`,"Keep Aspect Ratio":`ç¶æé·å¯¬æ¯`,Yes:`æ¯`,No:`å¦`,Remove:`ç§»é¤`,Select:`鏿`,"Select %s":`鏿: %s`,Update:`æ´æ°`,"Vertical align":`åç´å°é½`,Merge:`åä½µ`,"Add column":`æ°å¢æ¬`,"Add row":`æ°å¢å`,Border:`éæ¡`,"Embed code":`åµå ¥ç¨å¼ç¢¼`,Delete:`åªé¤`,"Horizontal align":`æ°´å¹³å°é½`,Filter:`篩é¸`,"Sort by changed":`ä¿®æ¹æéæåº`,"Sort by name":`å稱æåº`,"Sort by size":`大尿åº`,"Add folder":`æ°å¢è³æå¤¾`,Split:`åå²`,"Split vertical":`åç´åå²`,"Split horizontal":`æ°´å¹³åå²`,"You can only edit your own images. Download this image on the host?":`æ¨åªè½ç·¨è¼¯æ¨èªå·±çåçãæ¯å¦ä¸è¼æ¤åç?`,"The image has been successfully uploaded to the host!":`åçä¸å³æå`,palette:`調è²ç¤`,pencil:`éç`,"There are no files":`æ²ææªæ¡`,Rename:`éæ°å½å`,"Enter new name":`è¼¸å ¥æ°å稱`,preview:`é 覽`,download:`ä¸è¼`,"Paste from clipboard":`å¾åªè²¼ç°¿è²¼ä¸`,"Your browser doesn't support direct access to the clipboard.":`ç覽å¨ç¡æ³åååªè²¼ç°¿ã`,"Copy selection":`è¤è£½å·²é¸åé ç®`,copy:`è¤è£½`,"Border radius":`éæ¡åè§`,"Show all":`é¡¯ç¤ºå ¨é¨`,Apply:`æç¨`,"Please fill out this field":`è«è¼¸å ¥æ¤æ¬ä½`,"Please enter a web address":`è«è¼¸å ¥ç¶²å`,Default:`é è¨`,Circle:`åå`,Dot:`é»`,Quadrate:`æ¹å½¢`,Find:`å°æ¾`,"Find Previous":`å°æ¾ä¸ä¸å`,"Find Next":`å°æ¾ä¸ä¸å`,"Insert className":`æå ¥ class å稱`,"Press Alt for custom resizing":`æä½ Alt 以調æ´èªè¨å¤§å°`,Edit:`編輯`,"License: %s":`許å¯è: %s`},dh={};dh={ar:Vm,cs_cz:Hm,de:Um,en:Wm,es:Gm,fi:Km,fr:qm,he:Jm,hu:Ym,id:Xm,it:Zm,ja:Qm,ko:eh,mn:th,nl:nh,no:rh,pl:ih,pt_br:ah,ru:oh,tr:sh,ua:ch,zh_cn:lh,zh_tw:uh};var fh=e=>e?e.default||e:{},ph={};Ao(fh($m))&&fh($m).forEach((e,t)=>{ph[t]=e}),Object.keys(dh).forEach(e=>{let t=fh(dh[e]);Ao(t)?(dh[e]={},t.forEach((t,n)=>{dh[e][ph[n]]=t})):dh[e]=t});var mh=dh,hh=`<svg viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"> <path d="M1088 1256v240q0 16-12 28t-28 12h-240q-16 0-28-12t-12-28v-240q0-16 12-28t28-12h240q16 0 28 12t12 28zm316-600q0 54-15.5 101t-35 76.5-55 59.5-57.5 43.5-61 35.5q-41 23-68.5 65t-27.5 67q0 17-12 32.5t-28 15.5h-240q-15 0-25.5-18.5t-10.5-37.5v-45q0-83 65-156.5t143-108.5q59-27 84-56t25-76q0-42-46.5-74t-107.5-32q-65 0-108 29-35 25-107 115-13 16-31 16-12 0-25-8l-164-125q-13-10-15.5-25t5.5-28q160-266 464-266 80 0 161 31t146 83 106 127.5 41 158.5z"/> </svg> `;F.prototype.controls.about={exec:e=>{let t=e.dlg({closeOnClickOverlay:!0}),n=e.i18n.bind(e);t.setMod(`theme`,e.o.theme).setHeader(n(`About Jodit`)).setContent(`<div class="jodit-about"> 501 <div>${n(`Jodit Editor`)} v.${e.getVersion()}</div> 502 <div>${n(`License: %s`,Ns(e.o.license)?Pl(e.o.license):e.o.license||`MIT`)}</div> 503 <div> 504 <a href="${Ma}" target="_blank">${Ma}</a> 505 </div> 506 <div> 507 <a href="https://xdsoft.net/jodit/docs/" target="_blank">${n(`Jodit User's Guide`)}</a> 508 ${n(`contains detailed help for using`)} 509 </div> 510 <div>${n(`Copyright © XDSoft.net - Chupurnov Valerii. All rights reserved.`)}</div>
511 </div>`),M(t.dialog,{minHeight:200,minWidth:420}),t.open(!0,!0)},tooltip:`About Jodit`,mode:3};function gh(e){e.registerButton({name:`about`,group:`info`})}Ec.add(`about`,gh),vu.set(`about`,hh),F.prototype.delete={hotkeys:{delete:[`delete`,`cmd+backspace`],deleteWord:[`ctrl+delete`,`cmd+alt+backspace`,`ctrl+alt+backspace`],deleteSentence:[`ctrl+shift+delete`,`cmd+shift+delete`],backspace:[`backspace`],backspaceWord:[`ctrl+backspace`],backspaceSentence:[`ctrl+shift+backspace`,`cmd+shift+backspace`]}};function _h(e){return!e.s.isCollapsed()&&(e.execCommand(`Delete`),!0)}function vh(e,t,n,r=!1){let i=e=>t?e.firstChild:e.lastChild,a=P.findNotEmptyNeighbor(e,!t,n);if(r&&P.isElement(a)&&!P.isInlineBlock(a))return null;if(a)do if(i(a))a=i(a);else return a;while(a);return null}function yh(e){return t=>e.e.fire(`backSpaceIsMovedIgnore`,t)!==!0}function bh(e,t,n){let r=t,i=r;for(;r&&!P.findNotEmptySibling(r,n)&&r.parentElement!==e.editor;)r=r.parentElement,i=r;if(P.isElement(i)&&P.isContentEditable(i,e.editor)){let r=P.findNotEmptySibling(i,n);if(P.isTag(r,`br`))return P.safeRemove(r),e.s.setCursorBefore(t),!0;if(r&&(Sh(e,i,r,n)||Ch(e,i,xh(r,n),n)))return e.s.setCursorBefore(t),!0}return!1}function xh(e,t){if(!P.isTag(e,`table`))return e;let n=e.querySelectorAll(`td,th`);return n.length?n[t?n.length-1:0]:null}function Sh(e,t,n,r){let i=P.isTag(n,Ga),a=P.isTag(t,Ga),o=(e,t)=>t?e.firstElementChild:e.lastElementChild;return a?(n=e.createInside.element(e.o.enterBlock),P.before(t,n),Ch(e,o(t,r),n,r)):n&&i&&!a?Ch(e,t,o(n,!r),r):!1}function Ch(e,t,n,r){if(t&&P.isElement(n)){P.moveContent(t,n,!r,yh(e));let i=t;for(;i&&i!==e.editor&&P.isEmpty(i);){let e=i.parentElement;P.safeRemove(i),i=e}return!0}return!1}function wh(e,t,n){let r=P.findSibling(t,n),i=P.findSibling(t,!n);if(!P.closest(t,P.isElement,e.editor)&&P.isList(r)&&P.isList(i)&&P.isTag(r.lastElementChild,`li`)&&P.isTag(i.firstElementChild,`li`)){let{setCursorBefore:a,setCursorAfter:o}=e.s,s=r.lastElementChild,c=i.firstElementChild;return fs(n?P.prepend:P.append,c,t),P.moveContent(i,r,!n,yh(e)),P.safeRemove(i),fs(n?P.append:P.prepend,s,t),fs(n?a:o,t),!0}return!1}function Th(e,t,n,r){let i=n?-1:1,a=P.sibling(t,!n),o=P.sibling(t,n),s=null,c=!1,l;for(o||=Eh(t,n,e.editor);o&&(P.isText(o)||P.isInlineBlock(o));){for(;P.isInlineBlock(o);)o=n?o?.lastChild:o?.firstChild;if(!o)break;if(o.nodeValue?.length&&(l=kh(o,n,i,a),!o.nodeValue.length&&P.isInlineBlock(o.parentNode)&&(o.nodeValue=``)),o.nodeValue?.length||(s=o),!Mo(l)&&l!==``){jh(n,o,t,r,l,e),c=!0;break}let u=Eh(o,n,e.editor);s&&=(P.safeRemove(s),null),o=u}return s&&=(P.safeRemove(s),null),c&&(Dh(t,`a`),Oh(e,t),e.s.setCursorBefore(t),P.isTag(t.previousSibling,`br`)&&!P.findNotEmptySibling(t,!1)&&P.after(t,e.createInside.element(`br`))),c}function Eh(e,t,n){let r=P.sibling(e,t);return!r&&e.parentNode&&e.parentNode!==n&&(r=vh(e,!t,n,!0),r&&P.closest(e,`li`,n)!==P.closest(r,`li`,n))?null:r}function Dh(e,t){let n=e.parentElement;for(;n&&P.isInlineBlock(n)&&P.isTag(n,t);){let t=n.parentElement;P.isEmpty(n)&&(P.after(n,e),P.safeRemove(n)),n=t}}function Oh(e,t){t.parentElement!==e.editor&&P.isBlock(t.parentElement)&&P.each(t.parentElement,P.isEmptyTextNode)&&P.after(t,e.createInside.element(`br`))}function kh(e,t,n,r){let i=Io(e.nodeValue),a=i.length,o=t?a-1:0;if(i[o]===``)for(;i[o]===``;)o+=n;let s=i[o];if(i[o+n]===``){for(o+=n;i[o]===``;)o+=n;o+=t?1:-1}return i=t&&o<0?[]:i.slice(t?0:o+1,t?o:a),Ah(r,t,i),e.nodeValue=i.join(``),s}function Ah(e,t,n){if(!e||!P.isText(e)||(t?/^ /:/ $/).test(e.nodeValue??``)||!Vo(e.nodeValue||``).length)for(let e=t?n.length-1:0;(t?e>=0:e<n.length)&&n[e]===` `;e+=t?-1:1)n[e]=`\xA0`}function jh(e,t,n,r,i,a){fs(e?P.after:P.before,t,n),(r===`sentence`||r===`word`&&i!==` `&&i!==`\xA0`)&&Th(a,n,e,r)}function Mh(e,t,n){let r=P.findSibling(t,n);return!r&&t.parentElement&&t.parentElement!==e.editor&&(r=P.findSibling(t.parentElement,n)),P.isElement(r)&&!P.isContentEditable(r,e.editor)?(fs(n?P.before:P.after,r,t),P.safeRemove(r),em(e,t,n),fs(n?e.s.setCursorBefore:e.s.setCursorAfter,t),!0):!1}
511function Nh(e,t,n){let r=P.closest(t,P.isElement,e.editor);if(!r)return!1;let i=P.findNotEmptySibling(r,n);return i&&P.isEmpty(i)?(P.safeRemove(i),e.s.setCursorBefore(t),!0):!1}function Ph(e,t,n){let r=!1,{setCursorBefore:i,setCursorIn:a}=e.s,o=P.closest(t,P.isElement,e.editor);if(!o||!P.isEmpty(o))return!1;let s=P.findNotEmptyNeighbor(t,n,e.editor);do if(o&&P.isEmpty(o)&&!P.isCell(o)){P.after(o,t);let n=P.closest(o,e=>P.isElement(e)&&e!==o,e.editor);P.safeRemove(o),r=!0,o=n}else break;while(o);return r&&wh(e,t,n)?!0:(s&&!P.isText(s)&&!P.isTag(s,qa)?a(s,!n):i(t),r)}function Fh(e,t,n){let r=P.findSibling(t,n);return P.isElement(r)&&(P.isTag(r,qa)||P.isEmpty(r))?(P.safeRemove(r),P.isTag(r,`br`)&&!P.findNotEmptySibling(t,!1)&&P.after(t,e.createInside.element(`br`)),e.s.setCursorBefore(t),P.isTag(r,`br`)&&Ph(e,t,n),!0):!1}function Ih(e,t){let n=t.parentElement;return!!P.isCell(n)}function Lh(e,t,n){let r=P.closest(t,P.isElement,e.editor),{s:i}=e;if(P.isLeaf(r)&&r?.parentElement?.[n?`firstElementChild`:`lastElementChild`]===r&&i.cursorInTheEdge(n,r)){let a=r.parentElement,o=e.createInside.element(e.o.enterBlock);return fs(n?P.before:P.after,a,o),P.moveContent(r,o),P.safeRemove(r),P.isEmpty(a)&&P.safeRemove(a),fs(n?i.setCursorBefore:i.setCursorAfter,t),!0}return!1}var Rh=[[`remove-unbreakable`,Fh],[`remove-not-editable`,Mh],[`remove-char`,Th],[`table-cell`,Ih],[`remove-empty-parent`,Ph],[`remove-empty-neighbor`,Nh],[`join-two-lists`,wh],[`join-neighbors`,bh],[`unwrap-first-list-item`,Lh]];Rh.map(([,e])=>e);var zh=class extends Lf{afterInit(e){e.registerCommand(`deleteButton`,{exec:()=>this.onDelete(!1),hotkeys:e.o.delete.hotkeys.delete},{stopPropagation:!1}).registerCommand(`backspaceButton`,{exec:()=>this.onDelete(!0),hotkeys:e.o.delete.hotkeys.backspace},{stopPropagation:!1}).registerCommand(`deleteWordButton`,{exec:()=>this.onDelete(!1,`word`),hotkeys:e.o.delete.hotkeys.deleteWord}).registerCommand(`backspaceWordButton`,{exec:()=>this.onDelete(!0,`word`),hotkeys:e.o.delete.hotkeys.backspaceWord}).registerCommand(`deleteSentenceButton`,{exec:()=>this.onDelete(!1,`sentence`),hotkeys:e.o.delete.hotkeys.deleteSentence}).registerCommand(`backspaceSentenceButton`,{exec:()=>this.onDelete(!0,`sentence`),hotkeys:e.o.delete.hotkeys.backspaceSentence})}beforeDestruct(e){e.e.off(`afterCommand.delete`)}onDelete(e,t=`char`){let n=this.j,r=n.selection;if(r.isFocused()||r.focus(),_h(n))return n.e.fire(`backSpaceAfterDelete`,e),!1;let i=r.range,a=n.createInside.text(``);try{if(P.safeInsertNode(i,a),!P.isOrContains(n.editor,a))return;if(n.e.fire(`backSpaceBeforeCases`,e,a))return!1;em(n,a,e);let r=n.o.delete.disableCases;if(Rh.some(([i,o])=>{if(!(r&&r.has(i))&&k(o)&&o(n,a,e,t))return!0}))return!1}catch(e){throw e}finally{n.e.fire(`backSpaceAfterDelete`,e,a),this.safeRemoveEmptyNode(a)}return!1}safeRemoveEmptyNode(e){let{range:t}=this.j.s;t.startContainer===e&&(e.previousSibling?P.isText(e.previousSibling)?t.setStart(e.previousSibling,e.previousSibling.nodeValue?.length??0):t.setStartAfter(e.previousSibling):e.nextSibling&&(P.isText(e.nextSibling)?t.setStart(e.nextSibling,0):t.setStartBefore(e.nextSibling)),t.collapse(!0),this.j.s.selectRange(t)),P.safeRemove(e)}};zh.requires=[`hotkeys`],Ec.add(`backspace`,zh);var Bh=class extends Lf{afterInit(e){e.e.on(`afterCommand.delete`,e=>{e===`delete`&&this.__afterDeleteCommand()}),e.registerCommand(`delete`,{exec:this.__onDeleteCommand.bind(this)},{stopPropagation:!1})}beforeDestruct(e){e.e.off(`afterCommand.delete`)}__afterDeleteCommand(){let e=this.j,t=e.s.current();if(t&&P.isTag(t.firstChild,`br`)&&e.s.removeNode(t.firstChild),!zo(e.editor.textContent||``)&&!e.editor.querySelector(`img,table,jodit,iframe,hr`)&&(!t||!P.closest(t,`table`,e.editor))){e.editor.innerHTML=``;let t=e.s.setCursorIn(e.editor);e.s.removeNode(t)}}__onDeleteCommand(){let{jodit:e}=this;if(e.s.isCollapsed())return;e.s.expandSelection();let t=e.s.range;t.deleteContents();let n=e.createInside.fake();t.insertNode(n);let r=P.findSibling(n,!0),i=P.findSibling(n,!1);return this.__moveContentInLeftSibling(n,r,i),t.setStartBefore(n),t.collapse(!0),this.__moveCursorInEditableSibling(e,r,n,t),this.__addBrInEmptyBlock(n,i,t),P.safeRemove(n),e.s.selectRange(t),!1}__moveContentInLeftSibling(e,t,n){t=this.__defineRightLeftBox(t),!P.isList(n)&&!P.isTag(n,`table`)&&P.isBlock(n)&&P.isBlock(t)&&(P.append(t,e),P.moveContent(n,t),P.safeRemove(n)),P.isList(n)&&P.isLeaf(n.firstElementChild)&&P.isEmpty(n.firstElementChild)&&P.safeRemove(n.firstElementChild)}__defineRightLeftBox(e){if(!P.isList(e))return e;let t=e.lastElementChild;return P.isLeaf(t)||(t=this.j.createInside.element(`li`),P.append(e,t)),t}__addBrInEmptyBlock(e,t,n){let r=this.j;if(e.isConnected&&P.isBlock(e.parentNode)&&!e.nextSibling&&!e.previousSibling){let t=r.createInside.element(`br`);P.after(e,t),n.setStartBefore(t),n.collapse(!0)}if(P.isTag(t,`table`)){let e=Pc(`td,th`,t).shift();P.isCell(e)&&P.isEmpty(e)&&P.append(e,r.createInside.element(`br`))}}__moveCursorInEditableSibling(e,t,n,r){if(!t||!P.isText(t)){let t=P.closest(n,P.isBlock,e.editor)??e.editor,i=P.prev(n,P.isText,t);i&&(r.setStartAfter(i),r.collapse(!0),P.safeRemove(n))}}};Bh.requires=[`backspace`],Ec.add(`deleteCommand`,Bh),F.prototype.controls.subscript={tags:[`sub`],tooltip:`subscript`},F.prototype.controls.superscript={tags:[`sup`],tooltip:`superscript`},F.prototype.controls.bold={tagRegExp:/^(strong|b)$/i,tags:[`strong`,`b`],css:{"font-weight":[`bold`,`700`]},tooltip:`Bold`},F.prototype.controls.italic={tagRegExp:/^(em|i)$/i,tags:[`em`,`i`],css:{"font-style":`italic`},tooltip:`Italic`},F.prototype.controls.underline={tagRegExp:/^(u)$/i,tags:[`u`],css:{"text-decoration-line":`underline`},tooltip:`Underline`}
511,F.prototype.controls.strikethrough={tagRegExp:/^(s)$/i,tags:[`s`],css:{"text-decoration-line":`line-through`},tooltip:`Strike through`};var Vh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M747 1521q74 32 140 32 376 0 376-335 0-114-41-180-27-44-61.5-74t-67.5-46.5-80.5-25-84-10.5-94.5-2q-73 0-101 10 0 53-.5 159t-.5 158q0 8-1 67.5t-.5 96.5 4.5 83.5 12 66.5zm-14-746q42 7 109 7 82 0 143-13t110-44.5 74.5-89.5 25.5-142q0-70-29-122.5t-79-82-108-43.5-124-14q-50 0-130 13 0 50 4 151t4 152q0 27-.5 80t-.5 79q0 46 1 69zm-541 889l2-94q15-4 85-16t106-27q7-12 12.5-27t8.5-33.5 5.5-32.5 3-37.5.5-34v-65.5q0-982-22-1025-4-8-22-14.5t-44.5-11-49.5-7-48.5-4.5-30.5-3l-4-83q98-2 340-11.5t373-9.5q23 0 68.5.5t67.5.5q70 0 136.5 13t128.5 42 108 71 74 104.5 28 137.5q0 52-16.5 95.5t-39 72-64.5 57.5-73 45-84 40q154 35 256.5 134t102.5 248q0 100-35 179.5t-93.5 130.5-138 85.5-163.5 48.5-176 14q-44 0-132-3t-132-3q-106 0-307 11t-231 12z"/> </svg> `,Hh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M384 1662l17-85q6-2 81.5-21.5t111.5-37.5q28-35 41-101 1-7 62-289t114-543.5 52-296.5v-25q-24-13-54.5-18.5t-69.5-8-58-5.5l19-103q33 2 120 6.5t149.5 7 120.5 2.5q48 0 98.5-2.5t121-7 98.5-6.5q-5 39-19 89-30 10-101.5 28.5t-108.5 33.5q-8 19-14 42.5t-9 40-7.5 45.5-6.5 42q-27 148-87.5 419.5t-77.5 355.5q-2 9-13 58t-20 90-16 83.5-6 57.5l1 18q17 4 185 31-3 44-16 99-11 0-32.5 1.5t-32.5 1.5q-29 0-87-10t-86-10q-138-2-206-2-51 0-143 9t-121 11z"/> </svg> `,Uh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1760 896q14 0 23 9t9 23v64q0 14-9 23t-23 9h-1728q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h1728zm-1277-64q-28-35-51-80-48-97-48-188 0-181 134-309 133-127 393-127 50 0 167 19 66 12 177 48 10 38 21 118 14 123 14 183 0 18-5 45l-12 3-84-6-14-2q-50-149-103-205-88-91-210-91-114 0-182 59-67 58-67 146 0 73 66 140t279 129q69 20 173 66 58 28 95 52h-743zm507 256h411q7 39 7 92 0 111-41 212-23 55-71 104-37 35-109 81-80 48-153 66-80 21-203 21-114 0-195-23l-140-40q-57-16-72-28-8-8-8-22v-13q0-108-2-156-1-30 0-68l2-37v-44l102-2q15 34 30 71t22.5 56 12.5 27q35 57 80 94 43 36 105 57 59 22 132 22 64 0 139-27 77-26 122-86 47-61 47-129 0-84-81-157-34-29-137-71z"/> </svg> `,Wh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1025 1369v167h-248l-159-252-24-42q-8-9-11-21h-3l-9 21q-10 20-25 44l-155 250h-258v-167h128l197-291-185-272h-137v-168h276l139 228q2 4 23 42 8 9 11 21h3q3-9 11-21l25-42 140-228h257v168h-125l-184 267 204 296h109zm639 217v206h-514l-4-27q-3-45-3-46 0-64 26-117t65-86.5 84-65 84-54.5 65-54 26-64q0-38-29.5-62.5t-70.5-24.5q-51 0-97 39-14 11-36 38l-105-92q26-37 63-66 80-65 188-65 110 0 178 59.5t68 158.5q0 66-34.5 118.5t-84 86-99.5 62.5-87 63-41 73h232v-80h126z"/> </svg> `,Gh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1025 1369v167h-248l-159-252-24-42q-8-9-11-21h-3l-9 21q-10 20-25 44l-155 250h-258v-167h128l197-291-185-272h-137v-168h276l139 228q2 4 23 42 8 9 11 21h3q3-9 11-21l25-42 140-228h257v168h-125l-184 267 204 296h109zm637-679v206h-514l-3-27q-4-28-4-46 0-64 26-117t65-86.5 84-65 84-54.5 65-54 26-64q0-38-29.5-62.5t-70.5-24.5q-51 0-97 39-14 11-36 38l-105-92q26-37 63-66 83-65 188-65 110 0 178 59.5t68 158.5q0 56-24.5 103t-62 76.5-81.5 58.5-82 50.5-65.5 51.5-30.5 63h232v-80h126z"/> </svg> `,Kh=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M176 223q-37-2-45-4l-3-88q13-1 40-1 60 0 112 4 132 7 166 7 86 0 168-3 116-4 146-5 56 0 86-2l-1 14 2 64v9q-60 9-124 9-60 0-79 25-13 14-13 132 0 13 .5 32.5t.5 25.5l1 229 14 280q6 124 51 202 35 59 96 92 88 47 177 47 104 0 191-28 56-18 99-51 48-36 65-64 36-56 53-114 21-73 21-229 0-79-3.5-128t-11-122.5-13.5-159.5l-4-59q-5-67-24-88-34-35-77-34l-100 2-14-3 2-86h84l205 10q76 3 196-10l18 2q6 38 6 51 0 7-4 31-45 12-84 13-73 11-79 17-15 15-15 41 0 7 1.5 27t1.5 31q8 19 22 396 6 195-15 304-15 76-41 122-38 65-112 123-75 57-182 89-109 33-255 33-167 0-284-46-119-47-179-122-61-76-83-195-16-80-16-237v-333q0-188-17-213-25-36-147-39zm1488 1409v-64q0-14-9-23t-23-9h-1472q-14 0-23 9t-9 23v64q0 14 9 23t23 9h1472q14 0 23-9t9-23z"/> </svg> `;function qh(e){let t=t=>{let n=F.defaultOptions.controls[t],r={...n.css},i;
511return Object.keys(r).forEach(e=>{i||={},i[e]=Ao(r[e])?r[e][0]:r[e]}),e.s.commitStyle({element:n.tags?n.tags[0]:void 0}),e.synchronizeValues(),!1};[`bold`,`italic`,`underline`,`strikethrough`].forEach(t=>{e.registerButton({name:t,group:`font-style`})}),[`superscript`,`subscript`].forEach(t=>{e.registerButton({name:t,group:`script`})}),e.registerCommand(`bold`,{exec:t,hotkeys:[`ctrl+b`,`cmd+b`]}).registerCommand(`italic`,{exec:t,hotkeys:[`ctrl+i`,`cmd+i`]}).registerCommand(`underline`,{exec:t,hotkeys:[`ctrl+u`,`cmd+u`]}).registerCommand(`strikethrough`,{exec:t}).registerCommand(`subscript`,{exec:t}).registerCommand(`superscript`,{exec:t})}Ec.add(`bold`,qh),vu.set(`bold`,Vh).set(`italic`,Hh).set(`strikethrough`,Uh).set(`subscript`,Wh).set(`superscript`,Gh).set(`underline`,Kh),vu.set(`palette`,`<svg xmlns='http://www.w3.org/2000/svg' x="0px" y="0px" viewBox="0 0 459 459"> <g> <path d="M229.5,0C102,0,0,102,0,229.5S102,459,229.5,459c20.4,0,38.25-17.85,38.25-38.25c0-10.2-2.55-17.85-10.2-25.5 c-5.1-7.65-10.2-15.3-10.2-25.5c0-20.4,17.851-38.25,38.25-38.25h45.9c71.4,0,127.5-56.1,127.5-127.5C459,91.8,357,0,229.5,0z M89.25,229.5c-20.4,0-38.25-17.85-38.25-38.25S68.85,153,89.25,153s38.25,17.85,38.25,38.25S109.65,229.5,89.25,229.5z M165.75,127.5c-20.4,0-38.25-17.85-38.25-38.25S145.35,51,165.75,51S204,68.85,204,89.25S186.15,127.5,165.75,127.5z M293.25,127.5c-20.4,0-38.25-17.85-38.25-38.25S272.85,51,293.25,51s38.25,17.85,38.25,38.25S313.65,127.5,293.25,127.5z M369.75,229.5c-20.4,0-38.25-17.85-38.25-38.25S349.35,153,369.75,153S408,170.85,408,191.25S390.15,229.5,369.75,229.5z" /> </g> </svg> `);var Jh=(e,t,n)=>{let r=`jodit-color-picker`,i=Ml(n),a=e.c.div(r),o=e.o.textIcons?`<span>${e.i18n(`palette`)}</span>`:vu.get(`palette`),s=e=>{let t=[];return Go(e)?Object.keys(e).forEach(n=>{t.push(`<div class="${r}__group ${r}__group-${n}">`),t.push(s(e[n])),t.push(`</div>`)}):Ao(e)&&e.forEach(e=>{t.push(`<span class='${r}__color-item ${i===e?`jodit-color-picker__color-item_active_true`:``}' title="${e}" style="background-color:${e}" data-color="${e}"></span>`)}),t.join(``)};a.appendChild(e.c.fromHTML(`<div class="${r}__groups">${s(e.o.colors)}</div>`)),a.appendChild(e.c.fromHTML(`<div data-ref="extra" class="${r}__extra"></div>`));let{extra:c}=Ic(a);return e.o.showBrowserColorPicker&&Ss()&&(c.appendChild(e.c.fromHTML(`<div class="${r}__native">${o}<input type="color" value="#ffffff"/></div>`)),e.e.on(a,`change`,e=>{e.stopPropagation();let n=e.target;if(!n||!n.tagName||!P.isTag(n,`input`))return;let r=n.value||``;k(t)&&t(r),e.preventDefault()})),e.e.on(a,`mousedown touchend`,n=>{n.stopPropagation(),n.preventDefault();let r=n.target;if((!r||!r.tagName||P.isTag(r,`svg`)||P.isTag(r,`path`))&&r.parentNode&&(r=P.closest(r.parentNode,`span`,e.editor)),!P.isTag(r,`span`)||!r.classList.contains(`jodit-color-picker__color-item`))return;let i=N(r,`-color`)||``;t&&k(t)&&t(i)}),e.e.fire(`afterGenerateColorPicker`,a,c,t,i),a},Yh=(e,t,n)=>{let r=e.c.div(`jodit-tabs`),i=e.c.div(`jodit-tabs__wrapper`),a=e.c.div(`jodit-tabs__buttons`);N(a,{role:`tablist`,"aria-orientation":`horizontal`});let o={},s=[],c=``;r.appendChild(a),r.appendChild(i);let l=e=>{o[e]&&(s.forEach(e=>{e.state.activated=!1}),Object.values(o).forEach(({tab:e})=>e.classList.remove(`jodit-tab_active`)),o[e].button.state.activated=!0,o[e].tab.classList.add(`jodit-tab_active`))};if(t.forEach(({icon:r,name:u,content:d})=>{let f=e.c.div(`jodit-tab`);N(f,{role:`tabpanel`});let p=Tu(e,r||u,u);p.state.role=`tab`,e.e.on(p.container,`pointerdown`,e=>e.preventDefault()),c||=u,a.appendChild(p.container),s.push(p),p.container.classList.add(`jodit-tabs__button`,`jodit-tabs__button_columns_`+t.length),k(d)?f.classList.add(`jodit-tab_empty`):f.appendChild($l.isInstanceOf(d,xu)?d.container:d),i.appendChild(f),p.onAction(()=>(l(u),k(d)&&!P.isElement(d)&&d.call(e),n&&(n.activeTab=u),!1)),o[u]={button:p,tab:f}}),l(!n||!n.activeTab||!o[n.activeTab]?c:n.activeTab),n){let e=n.activeTab;Object.defineProperty(n,"activeTab",{configurable:!0,enumerable:!1,get(){return e},set(t){e=t,l(t)}})}return r},Xh=(e,t,n,r,i=!0)=>{let a,o=[],s=e.o.uploader;if(t.upload&&(s.url||s.insertImageAsBase64URI||s.customUploadFunction)){let n=e.c.fromHTML(`<div class="jodit-drag-and-drop__file-box"><strong>${e.i18n(i?`Drop image`:`Drop file`)}</strong><span><br>${e.i18n(`or click`)}</span><input type="file" accept="${i?`image/*`:`*`}" tabindex="-1" dir="auto" multiple=""/></div>`);e.uploader.bind(n,n=>{let r=k(t.upload)?t.upload:s.defaultHandlerSuccess;k(r)&&r.call(e,n),e.e.fire(`closeAllPopups`)},t=>{e.message.error(t.message),e.e.fire(`closeAllPopups`)}),o.push({icon:`upload`,name:`Upload`,content:n})}if(t.filebrowser&&(e.o.filebrowser.ajax.url||e.o.filebrowser.items.url)&&o.push({icon:`folder`,name:`Browse`,content:()=>{r&&r(),t.filebrowser&&e.filebrowser.open(t.filebrowser,i)}}),t.url){let r=new wu(e,{type:`submit`,variant:`primary`,text:`Insert`}
511),i=new Yu(e,[new Wu(e,{required:!0,label:`URL`,name:`url`,type:`text`,placeholder:`https://`}),new Wu(e,{name:`text`,label:`Alternative text`}),new Lu(e,[r])]);a=null,n&&!P.isText(n)&&!P.isComment(n)&&(P.isTag(n,`img`)||Pc(`img`,n).length)&&(a=n.tagName===`IMG`?n:Pc(`img`,n)[0],Zh(i.container,`input[name=url]`,N(a,`src`)),Zh(i.container,`input[name=text]`,N(a,`alt`)),r.state.text=`Update`),n&&P.isTag(n,`a`)&&(Zh(i.container,`input[name=url]`,N(n,`href`)),Zh(i.container,`input[name=text]`,N(n,`title`)),r.state.text=`Update`),i.onSubmit(n=>{k(t.url)&&t.url.call(e,n.url,n.text)}),o.push({icon:`link`,name:`URL`,content:i.container})}let c=Yh(e,o);return c.classList.add(`jodit-file-selector`),c};function Zh(e,t,n){let r=e.querySelector(t);return r?(n&&(r.value=n),r.value):``}vu.set(`brush`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M896 1152q0-36-20-69-1-1-15.5-22.5t-25.5-38-25-44-21-50.5q-4-16-21-16t-21 16q-7 23-21 50.5t-25 44-25.5 38-15.5 22.5q-20 33-20 69 0 53 37.5 90.5t90.5 37.5 90.5-37.5 37.5-90.5zm512-128q0 212-150 362t-362 150-362-150-150-362q0-145 81-275 6-9 62.5-90.5t101-151 99.5-178 83-201.5q9-30 34-47t51-17 51.5 17 33.5 47q28 93 83 201.5t99.5 178 101 151 62.5 90.5q81 127 81 275z"/> </svg> `),F.prototype.controls.brushCell={isVisible:e=>!e.o.disablePlugins.includes(`color`),icon:`brush`,popup:(e,t,n)=>{if(!Ms(e))return;let r=e.getInstance(`Table`,e.o).getAllSelectedCells();if(!r.length)return!1;let i=t=>Jh(e,i=>{r.forEach(e=>{M(e,t,i)}),e.lock(),e.synchronizeValues(),n(),e.unlock()},M(r[0],t));return Yh(e,[{name:`Background`,content:i(`background-color`)},{name:`Text`,content:i(`color`)},{name:`Border`,content:i(`border-color`)}])},tooltip:`Background`},F.prototype.controls.brush={isVisible:e=>!e.o.disablePlugins.includes(`color`),update(e,t){let n=is(t,`color`),r=(n,r)=>r&&r!==M(e.editor,n).toString()?(t.state.icon.fill=r,!0):!1;if(n){let e=is(t,`color`);r(e===`color`?e:`background-color`,n);return}let i=e.s.current();if(i&&!t.state.disabled){let t=P.closest(i,P.isElement,e.editor)||e.editor,n=r(`color`,M(t,`color`).toString()),a=r(`background-color`,M(t,`background-color`).toString());if(n||a)return}t.state.icon.fill=``,t.state.activated=!1},popup:(e,t,n,r)=>{let i=``,a=``,o=[],s=null;t&&t!==e.editor&&P.isNode(t)&&(P.isElement(t)&&e.s.isCollapsed()&&!P.isTag(t,new Set([`br`,`hr`]))&&(s=t),P.up(t,e=>{if(P.isHTMLElement(e)){let t=M(e,`color`,!0),n=M(e,`background-color`,!0);if(t)return i=t.toString(),!0;if(n)return a=n.toString(),!0}},e.editor));let c=Jh(e,t=>{s?s.style.backgroundColor=t:e.execCommand(`background`,!1,t),is(r,`color`,t),is(r,`color-mode`,`background`),n()},a),l=Jh(e,t=>{s?s.style.color=t:e.execCommand(`forecolor`,!1,t),is(r,`color`,t),is(r,`color-mode`,`color`),n()},i);return o=[{name:`Background`,content:c},{name:`Text`,content:l}],e.o.colorPickerDefaultTab!==`background`&&(o=o.reverse()),Yh(e,o,s)},exec(e,t,{button:n}){let r=is(n,`color-mode`),i=is(n,`color`);if(!r)return!1;if(t&&t!==e.editor&&P.isNode(t)&&P.isElement(t))switch(r){case`color`:t.style.color=i;break;case`background`:t.style.backgroundColor=i}else e.execCommand(r===`background`?r:`forecolor`,!1,i)},tooltip:`Fill color or set the text color`};function Qh(e){e.registerButton({name:`brush`,group:`color`});let t=(t,n,r)=>{var i;let a=Ml(r)||``,o=t===`background`?{backgroundColor:a}:{color:a},s=e.getInstance(`Table`,e.o).getAllSelectedCells();return s.length&&e.s.isCollapsed()?(s.forEach(t=>{e.s.select(t,!0),e.s.commitStyle({attributes:{style:o}})}),(i=e.s.sel)==null||i.removeAllRanges()):e.s.commitStyle({attributes:{style:o}}),e.synchronizeValues(),!1};e.registerCommand(`forecolor`,t).registerCommand(`background`,t)}Ec.add(`color`,Qh);function $h(e,t,n){let r=!!P.closest(e,[`pre`,`blockquote`],t.editor),i=!r&&P.closest(e,[`td`,`th`],t.editor);if(t.o.enter.toLowerCase()===`br`||i||n&&!r||!n&&r){if(r&&eg(e))return!1;let n=t.createInside.element(`br`);if(P.before(e,n),!P.findNotEmptySibling(n,!1)){let t=n.cloneNode();P.after(n,t),P.before(t,e)}return hl(n,t.editor,t.ed),!0}return!1}function eg(e){let t=tg(tg(e));return t?(P.safeRemove(tg(e)),P.safeRemove(t),!0):!1}function tg(e){if(!e)return!1;let t=P.findSibling(e,!0);return!t||!P.isTag(t,`br`)?!1:t}function ng(e,t,n){return P.canSplitBlock(n)?!0:(P.before(e,t.createInside.element(`br`)),!1)}function rg(e,t,n=Ua){let r=e,i=t.editor;do{if(!r||r===i)break;if(n.test(r.nodeName))return P.isLeaf(r)?r:rg(r.parentNode,t,/^li$/i)||r;r=r.parentNode}while(r&&r!==i);return null}function ig(e,t){return!!P.prev(e,e=>P.isBlock(e)||P.isImage(e),t.editor)}function ag(e,t,n,r){let i=n.toLowerCase()===`br`,{createInside:a}
511=t,o=a.element(n),s=a.element(`br`);return i||o.appendChild(s),r&&r.cssText&&N(o,`style`,r.cssText),P.after(e,o),P.before(i?o:s,e),hl(o,t.editor,t.ed),o}function og(e,t,n){let{s:r}=e,i=P.closest(t,n,e.editor);i&&(r.cursorOnTheRight(i,t)?P.after(i,t):r.cursorOnTheLeft(i,t)&&P.before(i,t))}function sg(e,t,n){let r=P.closest(n,[`ol`,`ul`],t.editor);if(!r)return;let i=r.parentElement,a=P.isLeaf(i),o=a?i:r,s=t.s.createRange();s.setStartAfter(n),s.setEndAfter(r);let c=s.extractContents();P.after(o,e),P.safeRemove(n),Pc(`li`,r).length||P.safeRemove(r);let l=ag(e,t,a?`li`:t.o.enter);c.querySelector(`li`)&&(a?l.appendChild(c):P.after(l,c))}function cg(e,t,n){let r=t.s,{enter:i}=t.o,a=i.toLowerCase(),o=P.isLeaf(n),s=n.tagName.toLowerCase()===a||o,c=r.cursorOnTheRight(n,e),l=r.cursorOnTheLeft(n,e);if(!s&&(c||l)){c?P.after(n,e):P.before(n,e),ag(e,t,a),l&&!c&&P.prepend(n,e);return}hl(r.splitSelection(n,e),t.editor,t.ed)}function lg(e,t){let n=e;P.up(n,e=>{e&&e.hasChildNodes()&&e!==t.editor&&(n=e)},t.editor);let r=P.wrapInline(n,t.o.enter,t);if(P.isEmpty(r)){let n=t.createInside.element(`br`);r.appendChild(n),P.before(n,e)}return r}var ug=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},dg=class extends Lf{afterInit(e){let t=e.o.enter.toLowerCase(),n=t===`br`;e.o.enterBlock||(e.o.enterBlock=n?`p`:t),e.registerCommand(`enter`,(e,t,n={})=>this.onEnter(n))}onEnterKeyDown(e){if(e.key===`Enter`){let t=this.j,n=t.e.fire(`beforeEnter`,e);return n===void 0?(t.history.snapshot.transaction(()=>{t.s.isCollapsed()||t.execCommand(`Delete`),t.s.focus(),this.onEnter(e),t.e.fire(`afterEnter`,e)}),t.synchronizeValues(),!1):n}}onEnter(e){let{jodit:t}=this,n=t.createInside.fake();try{P.safeInsertNode(t.s.range,n),og(t,n,[`a`]);let r=rg(n,t),i=P.isLeaf(r);if((!i||e?.shiftKey)&&$h(n,t,e?.shiftKey))return!1;if(!r&&!ig(n,t)&&(r=lg(n,t)),!r)return ag(n,t,i?`li`:t.o.enter),!1;if(!ng(n,t,r))return!1;if(i&&this.__isEmptyListLeaf(r))return sg(n,t,r),!1;cg(n,t,r)}finally{n.isConnected&&t.s.setCursorBefore(n),P.safeRemove(n)}}__isEmptyListLeaf(e){let t=this.j.e.fire(`enterIsEmptyListLeaf`,e);return Jo(t)?t:P.isEmpty(e)}beforeDestruct(e){e.e.off(`keydown.enter`)}};ug([I(`:keydown.enter`)],dg.prototype,`onEnterKeyDown`,null),Ec.add(`enter`,dg);var fg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M789 559l-170 450q33 0 136.5 2t160.5 2q19 0 57-2-87-253-184-452zm-725 1105l2-79q23-7 56-12.5t57-10.5 49.5-14.5 44.5-29 31-50.5l237-616 280-724h128q8 14 11 21l205 480q33 78 106 257.5t114 274.5q15 34 58 144.5t72 168.5q20 45 35 57 19 15 88 29.5t84 20.5q6 38 6 57 0 4-.5 13t-.5 13q-63 0-190-8t-191-8q-76 0-215 7t-178 8q0-43 4-78l131-28q1 0 12.5-2.5t15.5-3.5 14.5-4.5 15-6.5 11-8 9-11 2.5-14q0-16-31-96.5t-72-177.5-42-100l-450-2q-26 58-76.5 195.5t-50.5 162.5q0 22 14 37.5t43.5 24.5 48.5 13.5 57 8.5 41 4q1 19 1 58 0 9-2 27-58 0-174.5-10t-174.5-10q-8 0-26.5 4t-21.5 4q-80 14-188 14z"/> </svg> `,pg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1744 1408q33 0 42 18.5t-11 44.5l-126 162q-20 26-49 26t-49-26l-126-162q-20-26-11-44.5t42-18.5h80v-1024h-80q-33 0-42-18.5t11-44.5l126-162q20-26 49-26t49 26l126 162q20 26 11 44.5t-42 18.5h-80v1024h80zm-1663-1279l54 27q12 5 211 5 44 0 132-2t132-2q36 0 107.5.5t107.5.5h293q6 0 21 .5t20.5 0 16-3 17.5-9 15-17.5l42-1q4 0 14 .5t14 .5q2 112 2 336 0 80-5 109-39 14-68 18-25-44-54-128-3-9-11-48t-14.5-73.5-7.5-35.5q-6-8-12-12.5t-15.5-6-13-2.5-18-.5-16.5.5q-17 0-66.5-.5t-74.5-.5-64 2-71 6q-9 81-8 136 0 94 2 388t2 455q0 16-2.5 71.5t0 91.5 12.5 69q40 21 124 42.5t120 37.5q5 40 5 50 0 14-3 29l-34 1q-76 2-218-8t-207-10q-50 0-151 9t-152 9q-3-51-3-52v-9q17-27 61.5-43t98.5-29 78-27q19-42 19-383 0-101-3-303t-3-303v-117q0-2 .5-15.5t.5-25-1-25.5-3-24-5-14q-11-12-162-12-33 0-93 12t-80 26q-19 13-34 72.5t-31.5 111-42.5 53.5q-42-26-56-44v-383z"/> </svg> `;F.prototype.defaultFontSizePoints=`px`,vu.set(`font`,fg).set(`fontsize`,pg),F.prototype.controls.fontsize={command:`fontsize`,data:{cssRule:`font-size`,normalize:e=>e.toString().replace(/(px|pt)$/i,``)},list:[8,9,10,11,12,14,16,18,24,30,32,34,36,48,60,72,96],textTemplate:(e,t)=>
511t+e.o.defaultFontSizePoints,childTemplate:(e,t,n)=>`${n}${e.o.defaultFontSizePoints}`,tooltip:`Font size`,value:(e,t)=>{let n=e.s.current();if(!n)return;let r=P.closest(n,P.isElement,e.editor);if(!r)return;let i=t.control.data?.cssRule||`font-size`,a=M(r,i);if(i===`font-size`){let t=parseFloat(a.toString());return e.o.defaultFontSizePoints===`pt`?Math.round(t*.75).toString():Math.round(t).toString()}return a.toString()},isChildActive:(e,t)=>{let n=t.state.value,r=t.control.data?.normalize??(e=>e);return!!(n&&t.control.args&&r(t.control.args[0].toString())===r(n.toString()))},isActive:(e,t)=>{let n=t.state.value;if(!n)return!1;let r=t.control.data?.normalize??(e=>e),i=t.control.data.cacheListSet;if(!i){let e=Object.keys(t.control.list).map(r);i=new Set(e),t.control.data.cacheListSet=i}return i.has(r(n.toString()))}},F.prototype.controls.font={...F.prototype.controls.fontsize,command:`fontname`,textTemplate:(e,t)=>{let[n]=t.split(`,`);return Bo(n,`"'`)},list:{"":`Default`,"Arial, Helvetica, sans-serif":`Arial`,"'Courier New', Courier, monospace":`Courier New`,"Georgia, Palatino, serif":`Georgia`,"'Lucida Sans Unicode', 'Lucida Grande', sans-serif":`Lucida Sans Unicode`,"Tahoma, Geneva, sans-serif":`Tahoma`,"'Times New Roman', Times, serif":`Times New Roman`,"'Trebuchet MS', Helvetica, sans-serif":`Trebuchet MS`,"Helvetica, sans-serif":`Helvetica`,"Impact, Charcoal, sans-serif":`Impact`,"Verdana, Geneva, sans-serif":`Verdana`},childTemplate:(e,t,n)=>{let r=!1;try{r=t.indexOf(`dings`)===-1&&document.fonts.check(`16px ${t}`,n)}catch{}return`<span data-style="${t}" style="${r?`font-family: ${t}!important;`:``}">${n}</span>`},data:{cssRule:`font-family`,normalize:e=>e.toLowerCase().replace(/['"]+/g,``).replace(/[^a-z0-9-]+/g,`,`)},value:e=>{let t=e.s.current();if(!t)return;let n=P.closest(t,P.isElement,e.editor);if(!n)return;let r=M(n,`font-family`).toString();return r===M(e.editor,`font-family`).toString()?``:r},tooltip:`Font family`};function mg(e){e.registerButton({name:`font`,group:`font`}).registerButton({name:`fontsize`,group:`font`});let t=(t,n,r)=>{switch(t){case`fontsize`:e.s.commitStyle({attributes:{style:{fontSize:Ll(r,e.o.defaultFontSizePoints)}}});break;case`fontname`:e.s.commitStyle({attributes:{style:{fontFamily:r}}})}return e.synchronizeValues(),!1};e.registerCommand(`fontsize`,t).registerCommand(`fontname`,t)}Ec.add(`font`,mg),vu.set(`paragraph`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"><path d="M1534 189v73q0 29-18.5 61t-42.5 32q-50 0-54 1-26 6-32 31-3 11-3 64v1152q0 25-18 43t-43 18h-108q-25 0-43-18t-18-43v-1218h-143v1218q0 25-17.5 43t-43.5 18h-108q-26 0-43.5-18t-17.5-43v-496q-147-12-245-59-126-58-192-179-64-117-64-259 0-166 88-286 88-118 209-159 111-37 417-37h479q25 0 43 18t18 43z"/></svg> `),F.prototype.controls.paragraph={command:`formatBlock`,value(e,t){let n=t.control,r=e.s.current();return P.closest(r,P.isBlock,e.editor)?.nodeName.toLowerCase()??n.data?.currentValue},update(e,t){let n=t.control;if(!e.s.current())return!1;let r=t.state.value,i=n.list;return Go(i)&&i[r.toString()]&&e.o.textIcons&&(t.state.text=i[r.toString()].toString()),!1},data:{currentValue:`p`},list:{p:`Paragraph`,h1:`Heading 1`,h2:`Heading 2`,h3:`Heading 3`,h4:`Heading 4`,blockquote:`Quote`,pre:`Code`},isChildActive:(e,t)=>t.state.value===t.control?.args?.[0],isActive:(e,t)=>t.state.value!==e.o.enter&&Go(t.control.list)&&!!t.control.list[t.state.value],childTemplate:(e,t,n)=>`<${t} style="margin:0;padding:0"><span>${e.i18n(n)}</span></${t}>`,tooltip:`Insert format block`};function hg(e){e.registerButton({name:`paragraph`,group:`font`}),e.registerCommand(`formatblock`,(t,n,r)=>(e.s.commitStyle({element:r}),e.synchronizeValues(),!1))}Ec.add(`formatBlock`,hg),F.prototype.commandToHotkeys={removeFormat:[`ctrl+shift+m`,`cmd+shift+m`],insertOrderedList:[`ctrl+shift+7`,`cmd+shift+7`],insertUnorderedList:[`ctrl+shift+8`,`cmd+shift+8`],selectall:[`ctrl+a`,`cmd+a`]};var gg=class extends Lf{constructor(){super(...arguments),this.onKeyPress=e=>{let t=this.specialKeys[e.which],n=(e.key||String.fromCharCode(e.which)).toLowerCase(),r=[t||n];return[`alt`,`ctrl`,`shift`,`meta`].forEach(n=>{e[n+`Key`]&&t!==n&&r.push(n)}),Nl(r.join(`+`))},this.specialKeys={8:`backspace`,9:`tab`,10:`return`,13:`return`,16:`shift`,17:`ctrl`,18:`alt`,19:`pause`,20:`capslock`,27:`esc`,32:`space`,33:`pageup`,34:`pagedown`,35:`end`,36:`home`,37:`left`,38:`up`,39:`right`,40:`down`,45:`insert`,46:`del`,59:`;`,61:`=`,91:`meta`,96:`0`,97:`1`,98:`2`,99:`3`,100:`4`,101:`5`,102:`6`,103:`7`,104:`8`,105:`9`,106:`*`,107:`+`,109:`-`,110:`.`,111:`/`,112:`f1`,113:`f2`,114:`f3`,115:`f4`,116:`f5`,117:`f6`,118:`f7`,119:`f8`,120:`f9`,121:`f10`,122:`f11`,123:`f12`,144:`numlock`,145:`scroll`,173:`-`,186:`;`,187:`=`,188:`,`,189:`-`,190:`.`,191:`/`,192:"`",219:`[`,220:`\\`,221:`]`,222:`'`}}
511afterInit(e){_s(e.o.commandToHotkeys,!1).forEach(t=>{let n=e.o.commandToHotkeys[t];n&&(Ao(n)||j(n))&&e.registerHotkeyToCommand(n,t)});let t=!1;e.e.off(`.hotkeys`).on([e.ow,e.ew],`keydown.hotkeys`,e=>{if(e.key===`Escape`)return this.j.e.fire(`escape`,e)}).on(`keydown.hotkeys`,n=>{let r=this.onKeyPress(n),i={shouldStop:!0};if(this.j.e.fire(r+`.hotkey`,n.type,i)===!1){if(i.shouldStop)return t=!0,e.e.stopPropagation(`keydown`),!1;n.preventDefault()}},{top:!0}).on(`keyup.hotkeys`,()=>{if(t)return t=!1,e.e.stopPropagation(`keyup`),!1},{top:!0})}beforeDestruct(e){e.events&&e.e.off(`.hotkeys`)}};Ec.add(`hotkeys`,gg),F.prototype.iframeBaseUrl=``,F.prototype.iframeTitle=`Jodit Editor`,F.prototype.iframeDoctype=`<!DOCTYPE html>`,F.prototype.iframeDefaultSrc=`about:blank`,F.prototype.iframeStyle=`html{margin:0;padding:0;min-height: 100%;}body{box-sizing:border-box;font-size:13px;line-height:1.6;padding:10px;margin:0;background:transparent;color:#000;position:relative;z-index:2;user-select:auto;margin:0px;overflow:auto;outline:none;}table{width:100%;border:none;border-collapse:collapse;empty-cells: show;max-width: 100%;}th,td{padding: 2px 5px;border:1px solid #ccc;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}p{margin-top:0;}.jodit_editor .jodit_iframe_wrapper{display: block;clear: both;user-select: none;position: relative;}.jodit_editor .jodit_iframe_wrapper:after {position:absolute;content:"";z-index:1;top:0;left:0;right: 0;bottom: 0;cursor: pointer;display: block;background: rgba(0, 0, 0, 0);} .jodit_disabled{user-select: none;-o-user-select: none;-moz-user-select: none;-khtml-user-select: none;-webkit-user-select: none;-ms-user-select: none}`,F.prototype.iframeCSSLinks=[],F.prototype.iframeSandbox=null;function _g(e){let t=e.options;e.e.on(`afterSetMode`,()=>{e.isEditorMode()&&e.s.focus()}).on(`generateDocumentStructure.iframe`,(e,n)=>{let r=e||n.iframe.contentWindow.document;if(r.open(),r.write(t.iframeDoctype+`<html dir="${t.direction}" class="jodit" lang="${cl(t.language)}"><head><title>${t.iframeTitle}</title>`+(t.iframeBaseUrl?`<base href="${t.iframeBaseUrl}"/>`:``)+`</head><body class="jodit-wysiwyg"></body></html>`),r.close(),t.iframeCSSLinks&&t.iframeCSSLinks.forEach(e=>{let t=r.createElement(`link`);N(t,`rel`,`stylesheet`),N(t,`href`,e),r.head&&r.head.appendChild(t)}),t.iframeStyle){let e=r.createElement(`style`);e.innerHTML=t.iframeStyle,r.head&&r.head.appendChild(e)}}).on(`createEditor`,()=>{if(!t.iframe)return;let n=e.c.element(`iframe`);return n.style.display=`block`,n.src=`about:blank`,n.className=`jodit-wysiwyg_iframe`,N(n,{allowtransparency:`true`,tabindex:t.tabIndex.toString(),frameborder:`0`}),t.iframeSandbox!=null&&N(n,`sandbox`,t.iframeSandbox),e.workplace.appendChild(n),e.iframe=n,hs(e.e.fire(`generateDocumentStructure.iframe`,null,e),()=>{if(!e.iframe)return!1;let n=e.iframe.contentWindow.document;e.editorWindow=e.iframe.contentWindow;let r=t.editHTMLDocumentMode,i=()=>{N(n.body,`contenteditable`,e.getMode()!==2&&!e.getReadOnly()||null)},a=e=>{let t=/<body.*<\/body>/im,n=`{%%BODY%%}`,r=t.exec(e);return r&&(e=e.replace(t,n).replace(/<span([^>]*?)>(.*?)<\/span>/gim,``).replace(/<span([^&]*?)>(.*?)<\/span>/gim,``).replace(n,r[0].replace(/(<body[^>]+?)min-height["'\s]*:[\s"']*[0-9]+(px|%)/im,`$1`).replace(/(<body[^>]+?)([\s]*["'])?contenteditable["'\s]*=[\s"']*true["']?/im,`$1`).replace(/<(style|script|span)[^>]+jodit[^>]+>.*?<\/\1>/g,``)).replace(/(class\s*=\s*)(['"])([^"']*)(jodit-wysiwyg|jodit)([^"']*\2)/g,`$1$2$3$5`).replace(/(<[^<]+?)\sclass="[\s]*"/gim,`$1`).replace(/(<[^<]+?)\sstyle="[\s;]*"/gim,`$1`).replace(/(<[^<]+?)\sdir="[\s]*"/gim,`$1`)),e};if(r){let t=e.element.tagName;if(t!==`TEXTAREA`&&t!==`INPUT`)throw cs("If enable `editHTMLDocumentMode` - source element should be INPUT or TEXTAREA");e.e.on(`beforeGetNativeEditorValue`,()=>a(e.o.iframeDoctype+n.documentElement.outerHTML)).on(`beforeSetNativeEditorValue`,({value:t})=>{if(e.isLocked)return!1;if(/<(html|body)/i.test(t)){let r=n.documentElement.outerHTML;a(r)!==a(t)&&(n.open(),n.write(e.o.iframeDoctype+a(t)),n.close(),e.editor=n.body,e.e.fire(`safeHTML`,e.editor),i(),e.e.fire(`prepareWYSIWYGEditor`),e.e.stopPropagation(`beforeSetNativeEditorValue`))}else n.body.innerHTML=t;return!0},{top:!0})}if(e.editor=n.body,e.e.on(`afterSetMode afterInit afterAddPlace`,i),t.height===`auto`){n.documentElement&&(n.documentElement.style.overflowY=`hidden`);let r=e.async.throttle((...n)=>{e.async.requestAnimationFrame(()=>{if(e.editor&&e.iframe&&t.height===`auto`){let t=e.ew.getComputedStyle(e.editor),n=parseInt(t.marginTop||`0`,10)+parseInt(t.marginBottom||`0`,10);M(e.iframe,`height`,e.editor.offsetHeight+n)}})},e.defaultTimeout/2);if(e.e.on(`change afterInit afterSetMode resize`,r).on([e.iframe,e.ew,n.documentElement],`load`,r).on(n,`readystatechange DOMContentLoaded`,r),typeof ResizeObserver==`function`){let t=new ResizeObserver(r);t.observe(n.body),e.e.on(`beforeDestruct`,()=>{t.disconnect()})}}return n.documentElement&&e.e.on(n.documentElement,`mousedown touchend`,()=>{e.s.isFocused()||(e.s.focus(),e.editor===n.body&&e.s.setCursorIn(n.body))}).on(e.ew,`mousedown touchstart keydown keyup touchend click mouseup mousemove scroll`,t=>{var n;(n=e.events)==null||n.fire(e.ow,t)}),!1})})}Ec.add(`iframe`,_g),vu.set(`image`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M576 576q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm1024 384v448h-1408v-192l320-320 160 160 512-512zm96-704h-1600q-13 0-22.5 9.5t-9.5 22.5v1216q0 13 9.5 22.5t22.5 9.5h1600q13 0 22.5-9.5t9.5-22.5v-1216q0-13-9.5-22.5t-22.5-9.5zm160 32v1216q0 66-47 113t-113 47h-1600q-66 0-113-47t-47-113v-1216q0-66 47-113t113-47h1600q66 0 113 47t47 113z"/> </svg> `),F.prototype.controls.image={popup:(e,t,n)=>{let r=null;return t&&!P.isText(t)&&P.isHTMLElement(t)&&(P.isTag(t,`img`)||Pc(`img`,t).length)&&(r=P.isTag(t,`img`)?t:Pc(`img`,t)[0]),e.s.save(),Xh(e,{filebrowser:t=>
511{e.s.restore(),t.files&&t.files.forEach(n=>e.s.insertImage(t.baseurl+n,null,e.o.imageDefaultWidth)),n()},upload:!0,url:async(t,i)=>{e.s.restore(),/^[a-z\d_-]+(\.[a-z\d_-]+)+/i.test(t)&&(t=`//`+t);let a=r||e.createInside.element(`img`);N(a,`src`,t),N(a,`alt`,i),r||await e.s.insertImage(a,null,e.o.imageDefaultWidth),n()}},r,n)},tags:[`img`],tooltip:`Insert Image`};function vg(e){e.registerButton({name:`image`,group:`media`})}Ec.add(`image`,vg);var yg=e=>/^(https?:|mailto:|tel:)/i.test(e.trim())&&!/^(javascript:|data:|vbscript:)/i.test(e.trim()),bg=[{name:`eye`,tooltip:`Open link`,exec:(e,t)=>{let n=N(t,`href`);t&&n&&yg(n)&&e.ow.open(n)}},{name:`link`,tooltip:`Edit link`,icon:`pencil`},`unlink`,`brush`,`file`],xg=e=>e.args&&j(e.args[0])?e.args[0].toLowerCase():``,Sg=[`brushCell`,{name:`valign`,list:[`Top`,`Middle`,`Bottom`,`Normal`],childTemplate:(e,t,n)=>n,exec:(e,t,{control:n})=>{let r=xg(n);e.getInstance(`Table`,e.o).getAllSelectedCells().forEach(e=>{M(e,`vertical-align`,r===`normal`?``:r)})},tooltip:`Vertical align`},{name:`splitv`,list:{tablesplitv:`Split vertical`,tablesplitg:`Split horizontal`},tooltip:`Split`},{name:`align`,icon:`left`},` 512`,{name:`merge`,command:`tablemerge`,tooltip:`Merge`},{name:`addcolumn`,list:{tableaddcolumnbefore:`Insert column before`,tableaddcolumnafter:`Insert column after`},exec:(e,t,{control:n})=>{if(!Ms(e))return;if(!n.args)return!1;let r=xg(n);e.execCommand(r,!1,t)},tooltip:`Add column`},{name:`addrow`,list:{tableaddrowbefore:`Insert row above`,tableaddrowafter:`Insert row below`},exec:(e,t,{control:n})=>{if(!Ms(e))return;if(!n.args)return!1;let r=xg(n);e.execCommand(r,!1,t)},tooltip:`Add row`},{name:`deleteTable`,icon:`bin`,list:{tablebin:`Delete table`,tablebinrow:`Delete row`,tablebincolumn:`Delete column`,tableempty:`Empty cell`},exec:(e,t,{control:n})=>{if(!Ms(e))return;if(!n.args)return!1;let r=xg(n);e.execCommand(r,!1,t),e.e.fire(`hidePopup`)},tooltip:`Delete`}],Cg={name:`left`,childTemplate:(e,t,n)=>n,list:[`Left`,`Right`,`Center`,`Normal`],exec:(e,t,{control:n})=>{if(!P.isTag(t,new Set([`img`,`jodit`,`jodit-media`])))return;let r=n.args&&j(n.args[0])?n.args[0].toLowerCase():``;if(!r)return!1;Wc(t,r),P.isTag(t,new Set([`jodit`,`jodit-media`]))&&t.firstElementChild&&Wc(t.firstElementChild,r),e.synchronizeValues(),e.e.fire(`recalcPositionPopup`)},tooltip:`Horizontal align`},wg=[{name:`delete`,icon:`bin`,tooltip:`Delete`,exec:(e,t)=>{t&&e.s.removeNode(t)}},{name:`pencil`,exec(e,t){t.tagName.toLowerCase()===`img`&&e.e.fire(`openImageProperties`,t)},tooltip:`Edit`},{name:`valign`,list:[`Top`,`Middle`,`Bottom`,`Normal`],tooltip:`Vertical align`,exec:(e,t,{control:n})=>{if(!P.isTag(t,`img`))return;let r=n.args&&j(n.args[0])?n.args[0].toLowerCase():``;if(!r)return!1;M(t,`vertical-align`,r===`normal`?``:r),e.e.fire(`recalcPositionPopup`)}},Cg],Tg=[{name:`bin`,tooltip:`Delete`,exec:(e,t)=>{t&&e.s.removeNode(t)}},Cg],Eg=[`bold`,`italic`,`|`,`ul`,`ol`,`eraser`,`|`,`fontsize`,`brush`,`paragraph`,`---`,`image`,`table`,` 513`,`link`,`|`,`align`,`|`,`undo`,`redo`,`|`,`copyformat`,`fullsize`,`---`,`dots`],Dg=`<svg viewBox="0 0 18.151 18.151" xmlns="http://www.w3.org/2000/svg"> <g> <path stroke-width="0" d="M6.237,16.546H3.649V1.604h5.916v5.728c0.474-0.122,0.968-0.194,1.479-0.194 c0.042,0,0.083,0.006,0.125,0.006V0H2.044v18.15h5.934C7.295,17.736,6.704,17.19,6.237,16.546z"/> <path stroke-width="0" d="M11.169,8.275c-2.723,0-4.938,2.215-4.938,4.938s2.215,4.938,4.938,4.938s4.938-2.215,4.938-4.938 S13.892,8.275,11.169,8.275z M11.169,16.81c-1.983,0-3.598-1.612-3.598-3.598c0-1.983,1.614-3.597,3.598-3.597 s3.597,1.613,3.597,3.597C14.766,15.198,13.153,16.81,11.169,16.81z"/> <polygon stroke-width="0" points="11.792,11.073 10.502,11.073 10.502,12.578 9.03,12.578 9.03,13.868 10.502,13.868 10.502,15.352 11.792,15.352 11.792,13.868 13.309,13.868 13.309,12.578 11.792,12.578 "/> </g> </svg> `,Og=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 432 432"> <g> <polygon points="203.688,96 0,96 0,144 155.688,144 "/> <polygon points="155.719,288 0,288 0,336 203.719,336 "/> <path d="M97.844,230.125c-3.701-3.703-5.856-8.906-5.856-14.141s2.154-10.438,5.856-14.141l9.844-9.844H0v48h107.719 L97.844,230.125z"/> <polygon points="232,176 232,96 112,216 232,336 232,256 432,256 432,176"/> </g> </svg> `,kg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 312 312"> <g transform="translate(0.000000,312.000000) scale(0.100000,-0.100000)" stroke="none"> <path d="M50 3109 c0 -7 -11 -22 -25 -35 l-25 -23 0 -961 0 -961 32 -29 32 -30 501 -2 500 -3 3 -502 2 -502 31 -30 31 -31 958 0 958 0 23 25 c13 13 30 25 37 25 9 0 12 199 12 960 0 686 -3 960 -11 960 -6 0 -24 12 -40 28 l-29 27 -503 5 -502 5 -5 502 -5 503 -28 29 c-15 16 -27 34 -27 40 0 8 -274 11 -960 11 -710 0 -960 -3 -960 -11z m1738 -698 l2 -453 -40 -40 c-22 -22 -40 -43 -40 -47 0 -4 36 -42 79 -85 88 -87 82 -87 141
513-23 l26 27 455 -2 454 -3 0 -775 0 -775 -775 0 -775 0 -3 450 -2 449 47 48 47 48 -82 80 c-44 44 -84 80 -87 80 -3 0 -25 -18 -48 -40 l-41 -40 -456 2 -455 3 -3 765 c-1 421 0 771 3 778 3 10 164 12 777 10 l773 -3 3 -454z"/> <path d="M607 2492 c-42 -42 -77 -82 -77 -87 0 -6 86 -96 190 -200 105 -104 190 -197 190 -205 0 -8 -41 -56 -92 -107 -65 -65 -87 -94 -77 -98 8 -3 138 -4 289 -3 l275 3 3 275 c1 151 0 281 -3 289 -4 10 -35 -14 -103 -82 -54 -53 -103 -97 -109 -97 -7 0 -99 88 -206 195 -107 107 -196 195 -198 195 -3 0 -39 -35 -82 -78z"/> <path d="M1470 1639 c-47 -49 -87 -91 -89 -94 -5 -6 149 -165 160 -165 9 0 189 179 189 188 0 12 -154 162 -165 161 -6 0 -48 -41 -95 -90z"/> <path d="M1797 1303 c-9 -8 -9 -568 0 -576 4 -4 50 36 103 88 54 52 101 95 106 95 5 0 95 -85 199 -190 104 -104 194 -190 200 -190 6 0 46 36 90 80 l79 79 -197 196 c-108 108 -197 199 -197 203 0 4 45 52 99 106 55 55 98 103 95 108 -6 10 -568 11 -577 1z"/> </g> </svg> `,Ag=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 48 48"> <path d="M6 42h4v-4h-4v4zm4-28h-4v4h4v-4zm-4 20h4v-4h-4v4zm8 8h4v-4h-4v4zm-4-36h-4v4h4v-4zm8 0h-4v4h4v-4zm16 0h-4v4h4v-4zm-8 8h-4v4h4v-4zm0-8h-4v4h4v-4zm12 28h4v-4h-4v4zm-16 8h4v-4h-4v4zm-16-16h36v-4h-36v4zm32-20v4h4v-4h-4zm0 12h4v-4h-4v4zm-16 16h4v-4h-4v4zm8 8h4v-4h-4v4zm8 0h4v-4h-4v4z"/> <path d="M0 0h48v48h-48z" fill="none"/> </svg> `,jg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 48 48"> <path d="M6 18h4v-4h-4v4zm0-8h4v-4h-4v4zm8 32h4v-4h-4v4zm0-16h4v-4h-4v4zm-8 0h4v-4h-4v4zm0 16h4v-4h-4v4zm0-8h4v-4h-4v4zm8-24h4v-4h-4v4zm24 24h4v-4h-4v4zm-16 8h4v-36h-4v36zm16 0h4v-4h-4v4zm0-16h4v-4h-4v4zm0-20v4h4v-4h-4zm0 12h4v-4h-4v4zm-8-8h4v-4h-4v4zm0 32h4v-4h-4v4zm0-16h4v-4h-4v4z"/> <path d="M0 0h48v48h-48z" fill="none"/> </svg> `,Mg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M512 1248v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm0-512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm640 512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm-640-1024v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm640 512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm640 512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm-640-1024v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm640 512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm0-512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68z"/> </svg> `,Ng=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M512 1248v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm0-512v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm1280 512v192q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h960q40 0 68 28t28 68zm-1280-1024v192q0 40-28 68t-68 28h-320q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h320q40 0 68 28t28 68zm1280 512v192q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h960q40 0 68 28t28 68zm0-512v192q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h960q40 0 68 28t28 68z"/> </svg> `;F.prototype.toolbarInline=!0,F.prototype.toolbarInlineForSelection=!1,F.prototype.toolbarInlineDisableFor=[],F.prototype.toolbarInlineDisabledButtons=[`source`],vu.set(`addcolumn`,Dg).set(`addrow`,Og).set(`merge`,kg).set(`th`,Mg).set(`splitg`,Ag).set(`splitv`,jg).set(`th-list`,Ng),Sg.forEach(e=>{!j(e)&&e.name&&!F.prototype.controls[e.name]&&(F.prototype.controls[e.name]=e)}),F.prototype.popup={a:bg,img:wg,cells:Sg,toolbar:Eg,jodit:Tg,iframe:Tg,"jodit-media":Tg,selection:[`bold`,`underline`,`italic`,`ul`,`ol`,` 514`,`outdent`,`indent`,`fontsize`,`brush`,`cut`,` 515`,`paragraph`,`link`,`align`,`dots`]};var Pg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fg=class extends Lf{constructor(){super(...arguments),this.type=null,this.__reopenSelectionPopup=!1,this.snapRange=null,this.elmsList=_s(this.j.o.popup,!1).filter(e=>!this.isExcludedTarget(e))}get popup(){return new _d(this.jodit,!1)}get toolbar(){return Ld(this.jodit,this.popup)}onClick(e){let t=this.elmsList,n=P.isTag(e,`img`)?e:P.closest(e,t,this.j.editor);if(n&&this.canShowPopupForType(n.nodeName.toLowerCase()))return this.showPopup(()=>Kl(n,this.j),n.nodeName.toLowerCase(),n),!1}showPopup(e,t,n){if(t=t.toLowerCase(),!this.canShowPopupForType(t))return!1;
515if(this.type!==t||n!==this.previousTarget){this.previousTarget=n;let e=this.j.o.popup[t],r;if(r=k(e)?e(this.j,n,this.popup.close):e,Ao(r)){let e=this.j.o.toolbarInlineDisabledButtons;this.toolbar.build(e.length?r.filter(t=>{let n=j(t)?t:t.name;return!e.includes(n??``)}):r,n),this.toolbar.buttonSize=this.j.o.toolbarButtonSize,r=this.toolbar.container}this.popup.setContent(r),this.type=t}return this.popup.open(e),!0}hidePopup(e){this.popup.isOpened&&(!j(e)||e===this.type)&&this.popup.close()}onOutsideClick(){this.popup.close()}canShowPopupForType(e){let t=this.j.o.popup[e.toLowerCase()];return this.j.o.readonly||!this.j.o.toolbarInline||!t?!1:!this.isExcludedTarget(e)}isExcludedTarget(e){return Ys(this.j.o.toolbarInlineDisableFor).map(e=>e.toLowerCase()).includes(e.toLowerCase())}afterInit(e){this.j.e.on(`getDiffButtons.mobile`,t=>{if(this.toolbar===t){let t=this.toolbar.getButtonsNames();return Io(e.registeredButtons).filter(e=>!this.j.o.toolbarInlineDisabledButtons.includes(e.name)).filter(e=>{let n=j(e)?e:e.name;return n&&n!==`|`&&n!==` 516`&&!t.includes(n)})}}).on(`hidePopup`,this.hidePopup).on(`showInlineToolbar`,this.showInlineToolbar).on(`showPopup`,(e,t,n)=>{this.showPopup(t,n||(j(e)?e:e.nodeName),j(e)?void 0:e)}).on(`mousedown keydown`,this.onSelectionStart).on(`change`,()=>{this.popup.isOpened&&this.previousTarget&&!this.previousTarget.parentNode&&(this.hidePopup(),this.previousTarget=void 0)}).on([this.j.ew,this.j.ow],`mouseup keyup`,this.onSelectionEnd).on([this.j.ew,this.j.ow],`mousedown touchstart`,this.__onDocumentMouseDown).on(`closeAllPopups`,this.__onCloseAllPopups),this.addListenersForElements()}__onDocumentMouseDown(e){this.popup.isOpened&&this.type===`selection`&&e.target&&xu.closestElement(e.target,_d)&&(this.__reopenSelectionPopup=!0)}__onCloseAllPopups(){this.__reopenSelectionPopup&&(this.__reopenSelectionPopup=!1,this.j.o.toolbarInlineForSelection&&this.j.async.setTimeout(()=>{let e=this.j.s.sel;e&&!e.isCollapsed&&this.showPopup(()=>this.__selectionBound(),`selection`)},1))}__selectionBound(){let e=this.j.s.range.getBoundingClientRect(),{left:t,top:n}=e;if(this.j.iframe){let e=Kl(this.j.iframe,this.j,!0);t+=e.left,n+=e.top}return{left:t,top:n,width:e.width,height:e.height}}onSelectionStart(){this.snapRange=this.j.s.range.cloneRange()}onSelectionEnd(e){if(e&&e.target&&xu.closestElement(e.target,_d))return;let{snapRange:t}=this,{range:n}=this.j.s;(!t||n.collapsed||n.startContainer!==t.startContainer||n.startOffset!==t.startOffset||n.endContainer!==t.endContainer||n.endOffset!==t.endOffset)&&this.onSelectionChange()}onSelectionChange(){if(!this.j.o.toolbarInlineForSelection)return;let e=`selection`,t=this.j.s.sel,n=this.j.s.range;if(t?.isCollapsed||this.isSelectedTarget(n)){this.type===e&&this.popup.isOpened&&this.hidePopup();return}this.j.s.current()&&this.showPopup(()=>this.__selectionBound(),e)}isSelectedTarget(e){let t=e.startContainer;return P.isElement(t)&&t===e.endContainer&&P.isTag(t.childNodes[e.startOffset],new Set(_s(this.j.o.popup,!1)))&&e.startOffset===e.endOffset-1}beforeDestruct(e){e.e.off(`showPopup`).off([this.j.ew,this.j.ow],`mouseup keyup`,this.onSelectionEnd).off([this.j.ew,this.j.ow],`mousedown touchstart`,this.__onDocumentMouseDown).off(`closeAllPopups`,this.__onCloseAllPopups),this.removeListenersForElements()}_eventsList(){let e=this.elmsList;return e.map(e=>es(`click_${e}`)).concat(e.map(e=>es(`touchstart_${e}`))).join(` `)}addListenersForElements(){this.j.e.on(this._eventsList(),this.onClick)}removeListenersForElements(){this.j.e.off(this._eventsList(),this.onClick)}showInlineToolbar(e){this.showPopup(()=>{if(e)return e;let{range:t}=this.j.s;return t.getBoundingClientRect()},`toolbar`)}};Fg.requires=[`select`],Pg([zs],Fg.prototype,`popup`,null),Pg([zs],Fg.prototype,`toolbar`,null),Pg([A],Fg.prototype,`onClick`,null),Pg([cu(e=>!e.j.isLocked)],Fg.prototype,`showPopup`,null),Pg([I([`:clickEditor`,`:beforeCommandDelete`,`:backSpaceAfterDelete`]),A],Fg.prototype,`hidePopup`,null),Pg([I(`:outsideClick`)],Fg.prototype,`onOutsideClick`,null),Pg([A],Fg.prototype,`__onDocumentMouseDown`,null),Pg([A],Fg.prototype,`__onCloseAllPopups`,null),Pg([A],Fg.prototype,`onSelectionStart`,null),Pg([A],Fg.prototype,`onSelectionEnd`,null),Pg([tu(e=>e.defaultTimeout)],Fg.prototype,`onSelectionChange`,null),Pg([A],Fg.prototype,`showInlineToolbar`,null),Ec.add(`inlinePopup`,Fg);var Ig=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1520 1216q0-40-28-68l-208-208q-28-28-68-28-42 0-72 32 3 3 19 18.5t21.5 21.5 15 19 13 25.5 3.5 27.5q0 40-28 68t-68 28q-15 0-27.5-3.5t-25.5-13-19-15-21.5-21.5-18.5-19q-33 31-33 73 0 40 28 68l206 207q27 27 68 27 40 0 68-26l147-146q28-28 28-67zm-703-705q0-40-28-68l-206-207q-28-28-68-28-39 0-68 27l-147 146q-28 28-28 67 0 40 28 68l208 208q27 27 68 27 42 0 72-31-3-3-19-18.5t-21.5-21.5-15-19-13-25.5-3.5-27.5q0-40 28-68t68-28q15 0 27.5 3.5t25.5 13 19 15 21.5 21.5 18.5 19q33-31 33-73zm895 705q0 120-85 203l-147 146q-83 83-203 83-121 0-204-85l-206-207q-83-83-83-203 0-123 88-209l-88-88q-86 88-208 88-120 0-204-84l-208-208q-84-84-84-204t85-203l147-146q83-83 203-83 121 0 204 85l206 207q83 83 83 203 0 123-88 209l88 88q86-88 208-88 120 0 204 84l208 208q84 84 84 204z"/> </svg> `,Lg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M503 1271l-256 256q-10 9-23 9-12 0-23-9-9-10-9-23t9-23l256-256q10-9 23-9t23 9q9 10 9 23t-9 23zm169 41v320q0 14-9 23t-23 9-23-9-9-23v-320q0-14 9-23t23-9 23 9 9 23zm-224-224q0 14-9 23t-23 9h-320q-14 0-23-9t-9-23 9-23 23-9h320q14 0 23 9t9 23zm1264 128q0 120-85 203l-147 146q-83 83-203 83-121 0-204-85l-334-335q-21-21-42-56l239-18 273 274q27 27 68 27.5t68-26.5l147-146q28-28 28-67 0-40-28-68l-274-275 18-239q35 21 56 42l336 336q84 86 84 204zm-617-724l-239 18-273-274q-28-28-68-28-39 0-68 27l-147 146q-28 28-28 67 0 40 28 68l274 274-18 240q-35-21-56-42l-336-336q-84-86-84-204 0-120 85-203l147-146q83-83 203-83 121 0 204 85l334 335q21 21 42 56zm633 84q0 14-9 23t-23 9h-320q-14 0-23-9t-9-23 9-23 23-9h320q14 0 23 9t9 23zm-544-544v320q0 14-9 23t-23 9-23-9-9-23v-320q0-14 9-23t23-9 23 9 9 23zm407 151l-256 256q-11 9-23 9t-23-9q-9-10-9-23t9-23l256-256q10-9 23-9t23 9q9 10 9 23t-9 23z"/> </svg> `,Rg=e=>{let{openInNewTabCheckbox:t,noFollowCheckbox:n,ariaLabelInput:r,modeClassName:i,selectSizeClassName:a,selectMultipleClassName:o,selectOptionsClassName:s}=e.o.link;return new Yu(e,[new Lu(e,[new Wu(e,{name:`url`,type:`text`,ref:`url_input`,label:`U
516RL`,placeholder:`http://`,required:!0})]),r?new Lu(e,[new Wu(e,{name:`ariaLabel`,ref:`aria_label_input`,label:`Aria label`})]):null,new Lu(e,[new Wu(e,{name:`content`,ref:`content_input`,label:`Text`})],{ref:`content_input_box`}),i?new Lu(e,[i===`input`?new Wu(e,{name:`className`,ref:`className_input`,label:`Class name`}):i===`select`?new qu(e,{name:`className`,ref:`className_select`,label:`Class name`,size:a,multiple:o,options:s}):null]):null,t?new td(e,{name:`target`,ref:`target_checkbox`,label:`Open in new tab`}):null,n?new td(e,{name:`nofollow`,ref:`nofollow_checkbox`,label:`No follow`}):null,new Lu(e,[new wu(e,{name:`unlink`,variant:`default`,text:`Unlink`}),new wu(e,{name:`insert`,type:`submit`,variant:`primary`,text:`Insert`})],{align:`full`})])};F.prototype.link={formTemplate:Rg,followOnDblClick:!1,processVideoLink:!0,processPastedLink:!0,deriveUrlFromText:!1,noFollowCheckbox:!0,openInNewTabCheckbox:!0,openInNewTabCheckboxDefaultChecked:!1,ariaLabelInput:!1,modeClassName:`input`,selectMultipleClassName:!0,preventReadOnlyNavigation:!0,selectSizeClassName:3,selectOptionsClassName:[],hotkeys:[`ctrl+k`,`cmd+k`]},vu.set(`link`,Ig).set(`unlink`,Lg),F.prototype.controls.unlink={exec:(e,t)=>{let n=P.closest(t,`a`,e.editor);n&&P.unwrap(n),e.synchronizeValues(),e.e.fire(`hidePopup`)},tooltip:`Unlink`},F.prototype.controls.link={isActive:e=>{let t=e.s.current();return!!(t&&P.closest(t,`a`,e.editor))},popup:(e,t,n)=>e.e.fire(`generateLinkForm.link`,t,n),tags:[`a`],tooltip:`Insert link`};var zg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Bg=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`link`,group:`insert`}]}afterInit(e){e.o.link.followOnDblClick&&e.e.on(`dblclick.link`,this.__onDblClickOnLink),e.e.on(e.editor,`click.link`,this.__onClickReadOnlyLink),e.o.link.processPastedLink&&e.e.on(`processPaste.link`,this.onProcessPasteLink),e.e.on(`generateLinkForm.link`,this.__generateForm),e.registerCommand(`openLinkDialog`,{exec:()=>{let t=e.dlg({resizable:!1}),n=this.__generateForm(e.s.current(),()=>{t.close()});n.container.classList.add(`jodit-dialog_alert`),t.setContent(n),t.open(),e.async.requestIdleCallback(()=>{let{url_input:e}=Ic(n.container);e?.focus()})},hotkeys:e.o.link.hotkeys})}__onDblClickOnLink(e){if(!P.isTag(e.target,`a`))return;let t=N(e.target,`href`);t&&(location.href=t,e.preventDefault())}onProcessPasteLink(e,t){let{jodit:n}=this;if(!(!Is(t)||!n.o.link.processPastedLink)){if(n.e.stopPropagation(`processPaste`),n.o.link.processVideoLink){let e=fs(n.o.video?.parseUrlToVideoEmbed??ol,t,{width:n.o.video?.defaultWidth,height:n.o.video?.defaultHeight});if(e!==t)return n.createInside.fromHTML(e)}if(n.s.isCollapsed()){let e=n.createInside.element(`a`);return N(e,`href`,t),e.textContent=t,n.e.fire(`applyLink`,n,e,null),e}return n.s.commitStyle({element:`a`,attributes:{href:t}}),!0}}__generateForm(e,t){let{jodit:n}=this,r=n.i18n.bind(n),{openInNewTabCheckbox:i,openInNewTabCheckboxDefaultChecked:a,noFollowCheckbox:o,formTemplate:s,formClassName:c,modeClassName:l}=n.o.link,u=s(n),d=j(u)?n.c.fromHTML(u,{target_checkbox_box:i,nofollow_checkbox_box:o}):u,f=P.isElement(d)?d:d.container,p=Ic(f),{insert:m,unlink:h,content_input_box:g}=p,{target_checkbox:_,nofollow_checkbox:v,url_input:y}
516=p,b=e,x=P.isImage(b),{content_input:S}=p,{className_input:ee}=p,{className_select:te}=p,{aria_label_input:ne}=p;S||=n.c.element(`input`,{type:`hidden`,ref:`content_input`}),c&&f.classList.add(c),x&&P.hide(g);let re,ie=()=>re?re.innerText:Al(n.s.range.cloneContents(),n.ed);re=e&&P.closest(e,`a`,n.editor)?P.closest(e,`a`,n.editor):!1,!x&&e&&(S.value=ie()),ne&&(ne.value=re&&N(re,`aria-label`)||``),re?(y.value=N(re,`href`)||``,l&&Ug(l,ee,re,te),i&&_&&(_.checked=N(re,`target`)===`_blank`),o&&v&&(v.checked=(N(re,`rel`)||``).split(/\s+/).includes(`nofollow`)),m.textContent=r(`Update`)):(P.hide(h),n.o.link.deriveUrlFromText&&y&&!x&&!y.value.trim()&&(y.value=Vg(S.value)),i&&_&&(_.checked=a)),n.editor.normalize();let C=n.history.snapshot.make();h&&n.e.on(h,`click`,e=>{n.s.restore(),n.history.snapshot.restore(C),re&&P.unwrap(re),n.synchronizeValues(),t(),e.preventDefault()});let ae=()=>{if(!y.value.trim().length)return y.focus(),y.classList.add(`jodit_error`),!1;let e;n.s.restore(),n.s.removeMarkers(),n.editor.normalize(),n.history.snapshot.restore(C);let r=ie()!==S.value.trim(),a=n.createInside;if(!re||!P.isOrContains(n.editor,re)){if(n.s.isCollapsed()){let t=a.element(`a`);n.s.insertNode(t,!1,!1),e=[t]}else{let t=n.s.current();e=P.isTag(t,`img`)?[P.wrap(t,`a`,a)]:n.s.wrapInTag(`a`)}e.forEach(e=>n.s.select(e))}else e=[re];return e.forEach(e=>{if(N(e,`href`,y.value),Hg(l,ee,te,e),x||Wg(e,S,r,y),i&&_&&N(e,`target`,_.checked?`_blank`:null),o&&v){let t=(N(e,`rel`)||``).split(/\s+/).filter(Boolean),n=t.includes(`nofollow`);v.checked&&!n?t.push(`nofollow`):!v.checked&&n&&t.splice(t.indexOf(`n
516ofollow`),1),N(e,`rel`,t.length?t.join(` `):null)}ne&&N(e,`aria-label`,ne.value.trim()||null),n.e.fire(`applyLink`,n,e,d)}),n.synchronizeValues(),t(),!1};return P.isElement(d)?n.e.on(d,`submit`,e=>(e.preventDefault(),e.stopImmediatePropagation(),ae(),!1)):d.onSubmit(ae),d}beforeDestruct(e){e.e.off(`generateLinkForm.link`,this.__generateForm).off(`dblclick.link`,this.__onDblClickOnLink).off(e.editor,`click.link`,this.__onClickReadOnlyLink).off(`processPaste.link`,this.onProcessPasteLink)}__onClickReadOnlyLink(e){let{jodit:t}=this;t.o.readonly&&t.o.link.preventReadOnlyNavigation&&P.isTag(e.target,`a`)&&e.preventDefault()}};zg([A],Bg.prototype,`__onDblClickOnLink`,null),zg([A],Bg.prototype,`onProcessPasteLink`,null),zg([A],Bg.prototype,`__generateForm`,null),zg([A],Bg.prototype,`__onClickReadOnlyLink`,null),Ec.add(`link`,Bg);function Vg(e){let t=e.trim();return!t||/\s/.test(t)?``:/^(https?:|mailto:|tel:|ftp:|#|\/|\.{1,2}\/)/i.test(t)?t:/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)?`mailto:${t}`:/^[a-z0-9-]+(\.[a-z0-9-]+)+(\/\S*)?$/i.test(t)?`https://${t}`:``}function Hg(e,t,n,r){if(e&&(t??n)){if(e===`input`)t.value===``&&r.hasAttribute(`class`)&&N(r,`class`,null),t.value!==``&&N(r,`class`,t.value);else if(e===`select`){r.hasAttribute(`class`)&&N(r,`class`,null);for(let e=0;e<n.selectedOptions.length;e++){let t=n.selectedOptions.item(e)?.value;t&&t.split(/\s+/).filter(e=>e.trim().length>0).forEach(e=>{r.classList.add(e)})}}}}function Ug(e,t,n,r){switch(e){case`input`:t&&(t.value=N(n,`class`)||``);break;case`select`:if(r){for(let e=0;e<r.selectedOptions.length;e++){let t=r.options.item(e);t&&(t.selected=!1)}(N(n,`class`)||``).split(/\s+/).filter(e=>e.trim().length>0).forEach(e=>{if(e)for(let t=0;t<r.options.length;t++){let n=r.options.item(t);n?.value&&n.value.split(/\s+/).map(e=>e.trim()).includes(e)&&(n.selected=!0)}})}}}function Wg(e,t,n,r){let i=e.textContent;t.value.trim().length?n&&(i=t.value):i=r.value;let a=e.textContent;i!==a&&(e.textContent=i)}var Gg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path stroke-width="0" d="M381 1620q0 80-54.5 126t-135.5 46q-106 0-172-66l57-88q49 45 106 45 29 0 50.5-14.5t21.5-42.5q0-64-105-56l-26-56q8-10 32.5-43.5t42.5-54 37-38.5v-1q-16 0-48.5 1t-48.5 1v53h-106v-152h333v88l-95 115q51 12 81 49t30 88zm2-627v159h-362q-6-36-6-54 0-51 23.5-93t56.5-68 66-47.5 56.5-43.5 23.5-45q0-25-14.5-38.5t-39.5-13.5q-46 0-81 58l-85-59q24-51 71.5-79.5t105.5-28.5q73 0 123 41.5t50 112.5q0 50-34 91.5t-75 64.5-75.5 50.5-35.5 52.5h127v-60h105zm1409 319v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-14 9-23t23-9h1216q13 0 22.5 9.5t9.5 22.5zm-1408-899v99h-335v-99h107q0-41 .5-122t.5-121v-12h-2q-8 17-50 54l-71-76 136-127h106v404h108zm1408 387v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-14 9-23t23-9h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5z"/> </svg> `,Kg=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path stroke-width="0" d="M384 1408q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm0-512q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zm-1408-928q0 80-56 136t-136 56-136-56-56-136 56-136 136-56 136 56 56 136zm1408 416v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5zm0-512v192q0 13-9.5 22.5t-22.5 9.5h-1216q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1216q13 0 22.5 9.5t9.5 22.5z"/> </svg> `,qg=(e,t,{control:n})=>{let r=`button${n.command}`,i=(n.args&&n.args[0])??is(e,r);is(e,r,i),e.execCommand(n.command,!1,i==="default"?null:i)};vu.set(`ol`,Gg).set(`ul`,Kg),F.prototype.controls.ul={command:`insertUnorderedList`,tags:[`ul`],tooltip:`Insert Unordered List`,list:{default:`Default`,circle:`Circle`,disc:`Dot`,square:`Quadrate`},exec:qg},F.prototype.controls.ol={command:`insertOrderedList`,tags:[`ol`],tooltip:`Insert Ordered List`,list:{default:`Default`,"lower-alpha":`Lower Alpha`,"lower-greek":`Lower Greek`,"lower-roman":`Lower Roman`,"upper-alpha":`Upper Alpha`,"upper-roman":`Upper Roman`},exec:qg};var Jg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Yg=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`ul`,group:`list`},{name:`ol`,group:`list`}]}afterInit(e){e.registerCommand(`insertUnorderedList`,this.onCommand).registerCommand(`insertOrderedList`,this.onCommand)}
516onCommand(e,t,n){return this.jodit.s.commitStyle({element:e===`insertunorderedlist`?`ul`:`ol`,attributes:{style:{listStyleType:n??null}}}),this.jodit.synchronizeValues(),!1}beforeDestruct(e){}};Jg([A],Yg.prototype,`onCommand`,null),Ec.add(`orderedList`,Yg),F.prototype.showPlaceholder=!0,F.prototype.placeholder=`Type something`,F.prototype.useInputsPlaceholder=!0;var Xg=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a};function Zg(e){if(!e.firstChild)return!0;let t=e.firstChild;if(qa.has(t.nodeName?.toLowerCase())||/^(TABLE)$/i.test(t.nodeName))return!1;let n=P.next(t,e=>e&&!P.isEmptyTextNode(e),e);return P.isText(t)&&!n?P.isEmptyTextNode(t):!n&&P.each(t,e=>!(P.isLeaf(e)||P.isList(e))&&(P.isEmpty(e)||P.isTag(e,`br`)))}var Qg=class extends Lf{constructor(){super(...arguments),this.addNativeListeners=()=>{this.j.e.off(this.j.editor,`input.placeholder keydown.placeholder`).on(this.j.editor,`input.placeholder keydown.placeholder`,this.toggle)},this.addEvents=()=>{let e=this.j;e.o.useInputsPlaceholder&&e.element.hasAttribute(`placeholder`)&&(this.placeholderElm.innerHTML=N(e.element,`placeholder`)||``),e.e.fire(`placeholder`,this.placeholderElm.innerHTML),e.e.off(`.placeholder`).on(`changePlace.placeholder`,this.addNativeListeners).on(`change.placeholder focus.placeholder keyup.placeholder mouseup.placeholder keydown.placeholder mousedown.placeholder afterSetMode.placeholder changePlace.placeholder`,this.toggle).on(window,`load`,this.toggle),this.addNativeListeners(),this.toggle()}}afterInit(e){e.o.showPlaceholder&&(this.placeholderElm=e.c.fromHTML(`<span data-ref="placeholder" style="display: none;" class="jodit-placeholder">${e.i18n(e.o.placeholder)}</span>`),e.o.direction===`rtl`&&(this.placeholderElm.style.right=`0px`,this.placeholderElm.style.direction=`rtl`),e.e.on(`readonly`,e=>{e?this.hide():this.toggle()}).on(`changePlace`,this.addEvents),this.addEvents())}show(){let e=this.j;if(e.o.readonly)return;let t=0,n=0,r=e.s.current(),i=r&&P.closest(r,P.isBlock,e.editor)||e.editor,a=e.ew.getComputedStyle(i),o=e.ew.getComputedStyle(e.editor);e.workplace.appendChild(this.placeholderElm);let{firstChild:s}=e.editor;if(P.isElement(s)&&!Ps(s)){let r=e.ew.getComputedStyle(s);t=parseInt(r.getPropertyValue(`margin-top`),10),n=parseInt(r.getPropertyValue(`margin-left`),10),this.placeholderElm.style.fontSize=parseInt(r.getPropertyValue(`font-size`),10)+`px`,this.placeholderElm.style.lineHeight=r.getPropertyValue(`line-height`)}else this.placeholderElm.style.fontSize=parseInt(a.getPropertyValue(`font-size`),10)+`px`,this.placeholderElm.style.lineHeight=a.getPropertyValue(`line-height`);M(this.placeholderElm,{display:`block`,textAlign:a.getPropertyValue(`text-align`),paddingTop:parseInt(o.paddingTop,10)+`px`,paddingLeft:parseInt(o.paddingLeft,10)+`px`,paddingRight:parseInt(o.paddingRight,10)+`px`,marginTop:Math.max(parseInt(a.getPropertyValue(`margin-top`),10),t),marginLeft:Math.max(parseInt(a.getPropertyValue(`margin-left`),10),n)})}hide(){P.safeRemove(this.placeholderElm)}toggle(){let e=this.j;if(!(!e.editor||e.isInDestruct)){if(e.getRealMode()!==1){this.hide();return}Zg(e.editor)?this.show():this.hide()}}beforeDestruct(e){this.hide(),e.e.off(`.placeholder`).off(window,`load`,this.toggle)}};Xg([tu(e=>e.defaultTimeout/10,!0)],Qg.prototype,`toggle`,null),Ec.add(`placeholder`,Qg);function $g(e){let{o:t}=e;!t.hidePoweredByJodit&&!t.inline&&(t.showCharsCounter||t.showWordsCounter||t.showXPathInStatusbar)&&e.hookStatus(`ready`,()=>{e.statusbar.append(e.create.fromHTML(`<a 517 tabindex="-1" 518 style="text-transform: uppercase" 519 class="jodit-status-bar-link" 520 target="_blank" 521 href="https://xdsoft.net/jodit/"> 522 Powered by Jodit 523 </a>`),!0)})}Ec.add(`poweredByJodit`,$g),vu.set(`redo`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1664 256v448q0 26-19 45t-45 19h-448q-42 0-59-40-17-39 14-69l138-138q-148-137-349-137-104 0-198.5 40.5t-163.5 109.5-109.5 163.5-40.5 198.5 40.5 198.5 109.5 163.5 163.5 109.5 198.5 40.5q119 0 225-52t179-147q7-10 23-12 14 0 25 9l137 138q9 8 9.5 20.5t-7.5 22.5q-109 132-264 204.5t-327 72.5q-156 0-298-61t-245-164-164-245-61-298 61-298 164-245 245-164 298-61q147 0 284.5 55.5t244.5 156.5l130-129q29-31 70-14 39 17 39 59z"/> </svg> `).set(`undo`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1664 896q0 156-61 298t-164 245-245 164-298 61q-172 0-327-72.5t-264-204.5q-7-10-6.5-22.5t8.5-20.5l137-138q10-9 25-9 16 2 23 12 73 95 179 147t225 52q104 0 198.5-40.5t163.5-109.5 109.5-163.5 40.5-198.5-40.5-198.5-109.5-163.5-163.5-109.5-198.5-40.5q-98 0-188 35.5t-160 101.5l137 138q31 30 14 69-17 40-59 40h-448q-26 0-45-19t-19-45v-448q0-42 40-59 39-17 69 14l130 129q107-101 244.5-156.5t284.5-55.5q156 0 298 61t245 164 164 245 61 298z"/> </svg> `),F.prototype.controls.redo={mode:3,isDisabled:e=>!e.history.canRedo(),tooltip:`Redo`},F.prototype.controls.undo={mode:3,isDisabled:e=>!e.history.canUndo(),tooltip:`Undo`};var e_=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`undo`,group:`history`},{name:`redo`,group:`history`}]}beforeDestruct(){}afterInit(e){let t=t=>(e.history[t](),!1);e.registerCommand(`redo`,{exec:t,hotkeys:[`ctrl+y`,`ctrl+shift+z`,`cmd+y`,`cmd+shift+z`]}),e.registerCommand(`undo`,{exec:t,hotkeys:[`ctrl+z`,`cmd+z`]})}};Ec.add(`redoUndo`,e_),F.prototype.minWidth=200,F.prototype.maxWidth=`100%`,F.prototype.minHeight=200,F.prototype.maxHeight=`auto`,F.prototype.saveHeightInStorage=!1;var t_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},n_=class extends Lf{constructor(){super(...arguments),this.__resizeWorksp
523aces=this.j.async.debounce(this.__resizeWorkspaceImd,this.j.defaultTimeout,!0)}afterInit(e){e.e.on(`setHeight.size`,this.__setHeight).on(`setWidth.size`,this.__setWidth).on(`afterInit.size changePlace.size`,this.__initialize,{top:!0}).on(e.ow,`load.size`,this.__resizeWorkspaces).on(`afterInit.size resize.size afterUpdateToolbar.size scroll.size afterResize.size`,this.__resizeWorkspaces).on(`toggleFullSize.size toggleToolbar.size`,this.__resizeWorkspaceImd),this.__immediateInitialize()}__initialize(){this.__immediateInitialize()}__immediateInitialize(){let{j:e}=this;if(e.o.inline)return;let{height:t}=e.o;if(e.o.saveHeightInStorage&&t!==`auto`){let n=e.storage.get(`height`);n&&(t=n)}M(e.editor,{minHeight:`100%`}),M(e.container,{minHeight:e.o.minHeight,maxHeight:e.o.maxHeight,minWidth:e.o.minWidth,maxWidth:e.o.maxWidth}),e.isFullSize||(this.__setHeight(t),this.__setWidth(e.o.width))}__setHeight(e){let{clientHeight:t,clientWidth:n}=this.j.container;if(Fs(e)){let{minHeight:t,maxHeight:n}=this.j.o;Fs(t)&&t>e&&(e=t),Fs(n)&&n<e&&(e=n)}M(this.j.container,`height`,e),this.j.o.saveHeightInStorage&&this.j.storage.set(`height`,e),this.__resizeWorkspaceImd({clientHeight:t,clientWidth:n})}__setWidth(e){let{clientHeight:t,clientWidth:n}=this.j.container;if(Fs(e)){let{minWidth:t,maxWidth:n}=this.j.o;Fs(t)&&t>e&&(e=t),Fs(n)&&n<e&&(e=n)}M(this.j.container,`width`,e),this.__resizeWorkspaceImd({clientHeight:t,clientWidth:n})}__getNotWorkHeight(){let e=this.j.toolbarContainer;return(e&&this.j.container.contains(e)?e.offsetHeight:0)+(this.j.statusbar?.getHeight()||0)+2}__resizeWorkspaceImd({clientHeight:e,clientWidth:t}=this.j.container){if(!this.j||this.j.isDestructed||!this.j.o||this.j.o.inline||!this.j.container||!this.j.container.parentNode)return;let n=(M(this.j.container,`minHeight`)||0)-this.__getNotWorkHeight();if(Fs(n)&&n>0&&([this.j.workplace,this.j.currentPlace.slots.center,this.j.iframe,this.j.editor].map(e=>{e&&M(e,`minHeight`,n)}),this.j.e.fire(`setMinHeight`,n)),Fs(this.j.o.maxHeight)){let e=this.j.o.maxHeight-this.__getNotWorkHeight();[this.j.workplace,this.j.currentPlace.slots.center,this.j.iframe,this.j.editor].map(t=>{t&&M(t,`maxHeight`,e)}),this.j.e.fire(`setMaxHeight`,e)}if(this.j.container){let e=this.j.o.height!==`auto`||this.j.isFullSize?this.j.container.offsetHeight-this.__getNotWorkHeight():`auto`;M(this.j.workplace,`height`,e),this.j.container.style.setProperty(`--jd-jodit-workplace-height`,Fs(e)?e+`px`:e)}let{clientHeight:r,clientWidth:i}=this.j.container;(e!==r||t!==i)&&this.j.e.fire(this.j,`resize`)}beforeDestruct(e){e.e.off(e.ow,`load.size`,this.__resizeWorkspaces).off(`.size`)}};t_([nu()],n_.prototype,`__initialize`,null),t_([A],n_.prototype,`__setHeight`,null),t_([A],n_.prototype,`__setWidth`,null),t_([A],n_.prototype,`__resizeWorkspaceImd`,null),Ec.add(`size`,n_),F.prototype.showCharsCounter=!0,F.prototype.countHTMLChars=!1,F.prototype.countTextSpaces=!1,F.prototype.showWordsCounter=!0;var r_=class extends Lf{constructor(){super(...arguments),this.charCounter=null,this.wordCounter=null,this.reInit=()=>{this.j.o.showCharsCounter&&this.charCounter&&this.j.statusbar.append(this.charCounter,!0),this.j.o.showWordsCounter&&this.wordCounter&&this.j.statusbar.append(this.wordCounter,!0),this.j.e.off(`change keyup`,this.calc).on(`change keyup`,this.calc),this.calc()},this.calc=this.j.async.throttle(()=>{let e=this.j.text;if(this.j.o.showCharsCounter&&this.charCounter){let t;t=this.j.o.countHTMLChars?this.j.value:this.j.o.countTextSpaces?e.replace(Fa(),``).replace(/[\r\n]/g,``):e.replace(Ra(),``),this.charCounter.textContent=this.j.i18n(`Chars: %d`,t.length)}this.j.o.showWordsCounter&&this.wordCounter&&(this.wordCounter.textContent=this.j.i18n(`Words: %d`,e.replace(Fa(),``).split(Ra()).filter(e=>e.length).length))},this.j.defaultTimeout)}afterInit(){this.charCounter=this.j.c.span(),this.wordCounter=this.j.c.span(),this.j.e.on(`afterInit changePlace afterAddPlace`,this.reInit),this.reInit()}beforeDestruct(){P.safeRemove(this.charCounter),P.safeRemove(this.wordCounter),this.j.e.off(`afterInit changePlace afterAddPlace`,this.reInit),this.charCounter=null,this.wordCounter=null}};Ec.add(`stat`,r_);var i_=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M576 1376v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm-512-768v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm-512-768v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm512 384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm0-384v-192q0-14-9-23t-23-9h-320q-14 0-23 9t-9 23v192q0 14 9 23t23 9h320q14 0 23-9t9-23zm128-320v1088q0 66-47 113t-113 47h-1344q-66 0-113-47t-47-113v-1088q0-66 47-113t113-47h1344q66 0 113 47t47 113z"/> </svg> `;F.prototype.table={splitBlockOnInsertTable:!0,selectionCellStyle:`border: 1px double #1e88e5 !important;
523`,useExtraClassesOptions:!1},vu.set(`table`,i_),F.prototype.controls.table={data:{cols:10,rows:10,classList:{"table table-bordered":`Bootstrap Bordered`,"table table-striped":`Bootstrap Striped`,"table table-dark":`Bootstrap Dark`}},popup:(e,t,n,r)=>{e.editor.normalize();let i=e.history.snapshot.make(),a=r.control,o=a.data&&a.data.rows?a.data.rows:10,s=a.data&&a.data.cols?a.data.cols:10,c=e.c.fromHTML(`<form class="jodit-form jodit-form__inserter"><div class="jodit-form__table-creator-box"><div class="jodit-form__container"></div><div class="jodit-form__options">`+(()=>{if(!e.o.table.useExtraClassesOptions)return``;let t=[];if(a.data){let e=a.data.classList;Object.keys(e).forEach(n=>{t.push(`<label class="jodit_vertical_middle"><input class="jodit-checkbox" value="${n}" type="checkbox"/>${e[n]}</label>`)})}return t.join(``)})()+`</div></div><label class="jodit-form__center"><span>1</span> × <span>1</span></label></form>`),l=c.querySelectorAll(`span`)[0],u=c.querySelectorAll(`span`)[1],d=c.querySelector(`.jodit-form__container`),f=c.querySelector(`.jodit-form__options`),p=[],m=o*s;for(let t=0;t<m;t+=1)p[t]||p.push(e.c.element(`span`,{dataIndex:t}));if(e.e.on(d,`mousemove`,(e,t)=>{let n=e.target;if(!P.isTag(n,`span`))return;let r=t===void 0||isNaN(t)?parseInt(N(n,`-index`)||`0`,10):t||0,i=Math.ceil((r+1)/s),a=r%s+1;for(let e=0;e<p.length;e+=1)a>=e%s+1&&i>=Math.ceil((e+1)/s)?p[e].className=`jodit_hovered`:p[e].className=``;u.textContent=a.toString(),l.textContent=i.toString()}).on(d,`touchstart mousedown`,t=>{let r=t.target;if(t.preventDefault(),t.stopImmediatePropagation(),!P.isTag(r,`span`))return;let a=parseInt(N(r,`-index`)||`0`,10),o=Math.ceil((a+1)/s),c=a%s+1,l=e.createInside,u=l.element(`tbody`),d=l.element(`table`);d.appendChild(u);let p=null,m,h;for(let e=1;e<=o;e+=1){m=l.element(`tr`);for(let e=1;e<=c;e+=1)h=l.element(`td`),p||=h,M(h,`width`,(100/c).toFixed(4)+`%`),h.appendChild(l.element(`br`)),m.appendChild(l.text(` 524`)),m.appendChild(l.text(` `)),m.appendChild(h);u.appendChild(l.text(` 525`)),u.appendChild(m)}Pc(`input[type=checkbox]:checked`,f).forEach(e=>{e.value.split(/[\s]+/).forEach(e=>{d.classList.add(e)})}),e.s.restore(),e.s.removeMarkers(),e.editor.normalize(),e.history.snapshot.restore(i);let g=P.furthest(e.s.current(),P.isBlock,e.editor);if(g&&P.isEmpty(g))P.replace(g,d,void 0,!1,!0);else if(g){let t=l.text(` 526`);if(!e.o.table.splitBlockOnInsertTable)P.after(g,t),P.after(t,d);else{let n=e.s.range;n.collapse(!1),n.insertNode(t),n.collapse(!1),e.s.selectRange(n);let r=e.s.splitSelection(g,t);r?P.after(r,d):P.after(g,d)}}else e.s.insertNode(d,!1);p&&(e.s.setCursorIn(p),hl(p,e.editor,e.ed)),n()}),r&&r.parentElement){for(let t=0;t<o;t+=1){let n=e.c.div();for(let e=0;e<s;e+=1)n.appendChild(p[t*s+e]);d.appendChild(n)}p[0]&&(p[0].className=`hovered`)}return c},tooltip:`Insert table`};function a_(e){e.registerButton({name:`table`,group:`insert`})}Ec.add(`table`,a_),F.prototype.wrapNodes={exclude:new Set([`hr`,`style`,`br`]),emptyBlockAfterInit:!0};var o_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},s_=class extends Lf{constructor(){super(...arguments),this.isSuitableStart=e=>P.isText(e)&&j(e.nodeValue)&&(/[^\s]/.test(e.nodeValue)||e.parentNode?.firstChild===e&&this.isSuitable(e.nextSibling))||this.isNotWrapped(e)&&!P.isTemporary(e),this.isSuitable=e=>P.isText(e)||this.isNotWrapped(e),this.isNotWrapped=e=>P.isElement(e)&&!(P.isBlock(e)||P.isTag(e,this.j.o.wrapNodes.exclude))}afterInit(e){e.o.enter.toLowerCase()!==`br`&&e.e.on(`drop.wtn focus.wtn keydown.wtn mousedown.wtn afterInit.wtn backSpaceAfterDelete.wtn`,this.preprocessInput,{top:!0}).on(`afterInit.wtn postProcessSetEditorValue.wtn afterCommitStyle.wtn backSpaceAfterDelete.wtn`,this.postProcessSetEditorValue)}beforeDestruct(e){e.e.off(`.wtn`)}postProcessSetEditorValue(){let{jodit:e}=this;if(!e.isEditorMode())return;let t=e.editor.firstChild,n=!1;for(;t;){if(t=c_(t,e),this.isSuitableStart(t)){n||e.s.save(),n=!0;let r=e.createInside.element(e.o.enter);for(P.before(t,r);t&&this.isSuitable(t);){let e=t.nextSibling;r.appendChild(t),t=e}r.normalize(),t=r}t&&=t.nextSibling}
526n&&(e.s.restore(),e.e.current===`afterInit`&&e.e.fire(`internalChange`))}preprocessInput(){let{jodit:e}=this,t=e.e.current===`afterInit`;if(!e.isEditorMode()||e.editor.firstChild||!e.o.wrapNodes.emptyBlockAfterInit&&t)return;let n=e.createInside.element(e.o.enter),r=e.createInside.element(`br`);P.append(n,r),P.append(e.editor,n),(e.s.isFocused()||e.e.current===`backSpaceAfterDelete`)&&e.s.setCursorBefore(r),e.e.fire(`internalChange`)}};o_([A],s_.prototype,`postProcessSetEditorValue`,null),o_([A],s_.prototype,`preprocessInput`,null);function c_(e,t){let n=e,r=e;do if(P.isElement(r)&&P.isLeaf(r)&&!P.isList(r.parentElement)){let e=P.findNotEmptySibling(r,!1);P.isTag(n,`ul`)?n.appendChild(r):n=P.wrap(r,`ul`,t.createInside),r=e}else break;while(r);return n}Ec.add(`wrapNodes`,s_),F.prototype.dtd={removeExtraBr:!0,checkBlockNesting:!0,blockLimits:{article:1,aside:1,audio:1,body:1,caption:1,details:1,dir:1,div:1,dl:1,fieldset:1,figcaption:1,figure:1,footer:1,form:1,header:1,hgroup:1,main:1,menu:1,nav:1,ol:1,section:1,table:1,td:1,th:1,tr:1,ul:1,video:1}};var l_=new Set([`table`,`pre`,`blockquote`,`code`]);function u_(e,t){if(!e.o.dtd.removeExtraBr||P.isTag(t,`br`))return;let n=P.furthest(t,P.isBlock,e.editor);if(n&&!P.isTag(n,l_)){let n=P.isTag(t,`br`)?t:P.findNotEmptySibling(t,!1);if(!P.isTag(n,`br`)||P.findNotEmptySibling(n,!1))return;e.s.setCursorBefore(n),P.safeRemove(n)}}var d_=s({removeExtraBr:()=>u_});function f_(e,t){if(P.isFragment(t)&&(t=t.firstChild),e.o.dtd.checkBlockNesting&&P.isBlock(t)){let t=null,n=e.s.current()?.parentElement??null;for(;n&&n!==e.editor;){if(P.isBlock(n)){if(e.o.dtd.blockLimits[n.nodeName.toLowerCase()])break;t=n}n=n.parentElement}t&&(e.s.setCursorAfter(t),P.isEmpty(t)&&P.safeRemove(t))}}var p_=s({checkBlockNesting:()=>f_}),m_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},h_=class extends Lf{afterInit(e){}beforeDestruct(e){}__onBeforeInsertNode(e){Object.keys(p_).forEach(t=>{p_[t](this.j,e)})}__onAfterInsertNode(e){Object.keys(d_).forEach(t=>{d_[t](this.j,e)})}};m_([I(`:beforeInsertNode`)],h_.prototype,`__onBeforeInsertNode`,null),m_([I(`:afterInsertNode`)],h_.prototype,`__onAfterInsertNode`,null),Ec.add(`dtd`,h_),Object.keys(Oa).forEach(e=>{dm[e]=Oa[e]});var g_=e=>e!=="__esModule";Object.keys(Bm).filter(g_).forEach(e=>{vu.set(e.replace(`_`,`-`),Bm[e])}),Object.keys(am).filter(g_).forEach(e=>{let t=am[e],n=k(t.prototype?.className)?t.prototype.className():e;if(!j(n)){console.warn(`Module name must be a string`,e);return}dm.modules[n]=t}),Object.keys(fu).filter(g_).forEach(e=>{dm.decorators[e]=fu[e]}),[`Confirm`,`Alert`,`Prompt`].forEach(e=>{dm[e]=am[e]}),Object.keys(mh).filter(g_).forEach(e=>{dm.lang[e]=mh[e]});var __=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 128 128" xml:space="preserve"> <polygon points="112.4560547,23.3203125 112.4560547,75.8154297 31.4853516,75.8154297 31.4853516,61.953125 16.0131836,72.6357422 0.5410156,83.3164063 16.0131836,93.9990234 31.4853516,104.6796875 31.4853516,90.8183594 112.4560547,90.8183594 112.4560547,90.8339844 127.4589844,90.8339844 127.4589844,23.3203125"/> </svg> `;F.prototype.addNewLine=!0,F.prototype.addNewLineOnDBLClick=!0,F.prototype.addNewLineTagsTriggers=[`table`,`iframe`,`img`,`hr`,`pre`,`jodit`],F.prototype.addNewLineDeltaShow=20,vu.set(`enter`,__);var v_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},y_=class extends Lf{constructor(){super(...arguments),this.__line=this.j.c.fromHTML(`<div role="button" tabindex="-1" title="${this.j.i18n(`Break`)}" class="jodit-add-new-line"><span>${vu.get(`enter`)}</span></div>`),this.__isMatchedTag=e=>!!(e&&this.j.o.addNewLineTagsTriggers.includes(e.nodeName.toLowerCase())),this.__isBeforeContent=!1,this.__lineInFocus=!1,this.__isShown=!1,this.__hideForce=()=>{this.__isShown&&(this.__isShown=!1,this.j.async.clearTimeout(this.__timeout),this.__lineInFocus=!1,P.safeRemove(this.__line),this.__line.style.setProperty(`--jd-anl-handle-offset`,`0`))},this.__canGetFocus=e=>e!=null&&P.isBlock(e)&&!/^(img|table|iframe|hr)$/i.test(e.nodeName),this.__onClickLine
526=e=>{let t=this.j,n=t.createInside.element(t.o.enter);this.__isBeforeContent&&this.__current&&this.__current.parentNode?this.__current===t.editor?P.prepend(t.editor,n):this.__current.parentNode.insertBefore(n,this.__current):t.editor.appendChild(n),t.s.setCursorIn(n),hl(n,t.editor,t.ed),t.synchronizeValues(),this.__hideForce(),e.preventDefault()}}__show(){this.j.o.readonly||this.j.isLocked||(this.j.async.clearTimeout(this.__timeout),!this.__isShown&&(this.__isShown=!0,this.j.container.appendChild(this.__line),this.__line.style.width=this.j.container.clientWidth+`px`))}onLock(e){e&&this.__isShown&&this.__hideForce()}__hide(){!this.__isShown||this.__lineInFocus||(this.__timeout=this.j.async.setTimeout(this.__hideForce,{timeout:500,label:`add-new-line-hide`}))}afterInit(e){e.o.addNewLine&&(e.e.on(this.__line,`mousemove`,e=>{e.stopPropagation()}).on(this.__line,`mousedown touchstart`,this.__onClickLine).on(`change`,this.__hideForce).on(this.__line,`mouseenter`,()=>{this.j.async.clearTimeout(this.__timeout),this.__lineInFocus=!0}).on(this.__line,`mouseleave`,()=>{this.__lineInFocus=!1}).on(`changePlace`,this.__addEventListeners.bind(this)),this.__addEventListeners())}__addEventListeners(){let e=this.j;e.e.off(e.editor,`.addnewline`).off(e.container,`.addnewline`).off(`.addnewline`).on([e.ow,e.ew,e.editor],`scroll.addnewline`,this.__hideForce).on(`finishedCleanHTMLWorker.addnewline`,this.__hideForce).on(e.editor,`click.addnewline`,this.__hide).on(e.container,`mouseleave.addnewline`,this.__hide).on(e.editor,`mousemove.addnewline`,this.__onMouseMove)}onDblClickEditor(e){let t=this.j;if(!t.o.readonly&&t.o.addNewLineOnDBLClick&&e.target===t.editor&&t.s.isCollapsed()){let n=Gl(t.editor,t,t.ed),r=e.pageY-t.ew.scrollX,i=t.createInside.element(t.o.enter);Math.abs(r-n.top)<Math.abs(r-(n.height+n.top))&&t.editor.firstChild?t.editor.insertBefore(i,t.editor.firstChild):t.editor.appendChild(i),t.s.setCursorIn(i),t.synchronizeValues(),this.__hideForce(),e.preventDefault()}}__onMouseMove(e){let t=this.j,n=(t.o.shadowRoot??t.ed).elementFromPoint(e.clientX,e.clientY);if(!P.isHTMLElement(n)||!P.isOrContains(t.editor,n))return;if(t.editor!==n&&!this.__isMatchedTag(n)&&(n=P.closest(n,this.__isMatchedTag,t.editor)),!n){this.__hide();return}if(this.__isMatchedTag(n)){let e=P.up(n,P.isBlock,t.editor);e&&e!==t.editor&&(n=e)}let r=Kl(n,this.j),i=!1,{clientY:a,clientX:o}=e;if(this.j.iframe){let{top:e,left:t}=Kl(this.j.iframe,this.j,!0);a+=e,o+=t}let s=this.j.o.addNewLineDeltaShow;Math.abs(a-r.top)<=s?(i=r.top,this.__isBeforeContent=!0):Math.abs(a-(r.top+r.height))<=s&&(i=r.top+r.height,this.__isBeforeContent=!1);let c=t.editor===n;i!==!1&&(c&&!this.__isBeforeContent||!c&&!fs(this.__isBeforeContent?P.prev:P.next,n,this.__canGetFocus,t.editor))?(this.__line.style.top=i+`px`,this.__current=n,this.__show(),this.__line.style.setProperty(`--jd-anl-handle-offset`,o-r.left-10+`px`)):(this.__current=!1,this.__hide())}beforeDestruct(){this.j.async.clearTimeout(this.__timeout),this.j.e.off(this.__line).off(`changePlace`,this.__addEventListeners),P.safeRemove(this.__line),this.j.e.off([this.j.ow,this.j.ew,this.j.editor],`.addnewline`).off(this.j.container,`.addnewline`).off(`.addnewline`)}};v_([I(`:lock`)],y_.prototype,`onLock`,null),v_([A],y_.prototype,`__hide`,null),v_([I(`:dblclick`)],y_.prototype,`onDblClickEditor`,null),v_([nu(e=>e.defaultTimeout)],y_.prototype,`__onMouseMove`,null),Ec.add(`addNewLine`,y_);var b_=`<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path d="M36 4h-24c-2.21 0-4 1.79-4 4v32c0 2.21 1.79 4 4 4h24c2.21 0 4-1.79 4-4v-32c0-2.21-1.79-4-4-4zm-24 4h10v16l-5-3-5 3v-16z"/> </svg> `;F.prototype.controls.classSpan={command:`applyClassName`,exec:vs,list:[`enabled`,`disabled`,`activated`,`text-left`,`text-center`,`text-right`,`warning`,`error`],isChildActive:(e,t)=>{let n=e.s.current();if(n){let r=P.closest(n,P.isElement,e.editor)||e.editor;return!!(t.control.args&&r.classList.contains(t.control.args[0].toString()))}return!1},isActive:(e,t)=>{let n=e.s.current();if(n){let r=P.closest(n,P.isElement,e.editor)||e.editor,i=!1;
526return t.control.list&&Object.keys(t.control.list).forEach(e=>{r.classList.contains(e)&&(i=!0)}),!!(r&&r!==e.editor&&t.control.list!==void 0&&i)}return!1},childTemplate:(e,t,n)=>`<span class="${t}">${e.i18n(n)}</span>`,tooltip:`Insert className`};var x_=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`classSpan`,group:`script`}]}afterInit(e){e.registerCommand(`applyClassName`,(t,n,r)=>(e.s.commitStyle({attributes:{class:r}}),!1))}beforeDestruct(){}};Ec.add(`classSpan`,x_),vu.set(`class-span`,b_);var S_=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M832 1408l336-384h-768l-336 384h768zm1013-1077q15 34 9.5 71.5t-30.5 65.5l-896 1024q-38 44-96 44h-768q-38 0-69.5-20.5t-47.5-54.5q-15-34-9.5-71.5t30.5-65.5l896-1024q38-44 96-44h768q38 0 69.5 20.5t47.5 54.5z"/> </svg> `;F.prototype.cleanHTML={timeout:300,removeEmptyElements:!0,fillEmptyParagraph:!0,collapseEmptyValueToEmptyString:!1,replaceNBSP:!0,replaceOldTags:{i:`em`,b:`strong`},allowTags:!1,denyTags:`script,iframe,object,embed`,useIframeSandbox:!1,removeOnError:!0,removeEventAttributes:!0,safeJavaScriptLink:!0,safeLinksTarget:!0,allowedStyles:!1,sanitizer:!1,sandboxIframesInContent:!0,convertUnsafeEmbeds:[`object`,`embed`],disableCleanFilter:null},F.prototype.controls.eraser={command:`removeFormat`,tooltip:`Clear Formatting`},vu.set(`eraser`,S_);function C_(e){let t=/([^[]*)\[([^\]]+)]/,n=/[\s]*,[\s]*/,r=/^(.*)[\s]*=[\s]*(.*)$/,i={};return j(e)?(e.split(n).map(e=>{e=zo(e);let a=t.exec(e),o={},s=e=>{e=zo(e);let t=r.exec(e);t?o[t[1]]=t[2]:o[e]=!0};if(a){let e=a[2].split(n);a[1]&&(e.forEach(s),i[a[1].toUpperCase()]=o)}else i[e.toUpperCase()]=!0}),i):e?(Object.keys(e).forEach(t=>{i[t.toUpperCase()]=e[t]}),i):!1}var w_=/^(https?:)?\/\/(www\.|m\.|music\.)?youtube(-nocookie)?\.com\/embed\//i,T_=/^(https?:)?\/\/player\.vimeo\.com\/video\//i;function E_(e){return w_.test(e)||T_.test(e)}function D_(e,t){let{s:n}=e,r=t;if(!r){r=e.createInside.fake();let{range:t}=n;P.safeInsertNode(t,r),t.collapse()}let i=P.furthest(r,O_,e.editor);if(i)if(n.cursorOnTheLeft(i))P.before(i,r);else if(n.cursorOnTheRight(i))P.after(i,r);else{let e=n.splitSelection(i);e&&P.after(e,r)}t||(n.setCursorBefore(r),P.safeRemove(r))}function O_(e){return P.isInlineBlock(e)&&!P.isTag(e,qa)}function k_(e){let{s:t,editor:n,createInside:r}=e,{range:i}=t,a=i.cloneRange(),o=i.cloneRange(),s=r.fake(),c=r.fake();a.collapse(!0),o.collapse(!1),P.safeInsertNode(a,s),P.safeInsertNode(o,c),i.setStartBefore(s),i.collapse(!0),t.selectRange(i),D_(e,s),i.setEndAfter(c),i.collapse(!1),t.selectRange(i),D_(e,c);let l=[];P.between(s,c,e=>{O_(e)&&!P.isTag(e,`a`)&&l.push(e),P.isElement(e)&&N(e,`style`)&&N(e,`style`,null)}),l.forEach(e=>P.unwrap(e));let u=(e,t)=>{if(!P.findNotEmptySibling(e,t)){let r=e.parentNode;if(r&&r!==n&&N(r,`style`))return N(r,`style`,null),u(r,t),!0}};u(s,!0)&&u(c,!1),i.setStartAfter(s),i.setEndBefore(c),t.selectRange(i),P.safeRemove(s),P.safeRemove(c)}function A_(e,t,n,r){let i=r&&P.isElement(t)&&r[t.nodeName];if(r&&P.isElement(t)&&i!==!0){if(!i)return n;let e=t.attributes;if(e&&e.length){let r=[];for(let t=0;t<e.length;t+=1){let n=i[e[t].name];(!n||n!==!0&&n!==e[t].value)&&r.push(e[t].name)}r.length&&(n=!0),r.forEach(e=>{t.removeAttribute(e)})}}return n}function j_(e,t,n){let r=e.o.cleanHTML.convertUnsafeEmbeds;if(!r||!P.isElement(t))return n;let i=t.nodeName.toLowerCase();if(!r.includes(i))return n;let a=t,o=N(a,`data`)||N(a,`src`)||N(a,`movie`)||``;if(!o)return P.safeRemove(a),!0;let s=e.createInside.element(`iframe`);return N(s,{src:o,sandbox:``,frameborder:`0`,width:N(a,`width`),height:N(a,`height`)}),P.replace(a,s,void 0,!1,!0),!0}var M_=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]);function N_(e,t,n){if(e.o.cleanHTML.fillEmptyParagraph&&P.isBlock(t)&&P.isEmpty(t,qa)&&!P.isTag(t,M_)){let n=e.createInside.element(`br`);return t.appendChild(n),!0}return n}function P_(e,t,n,r,i,a){return P.isText(t)&&!t.nodeValue?(t===a&&e.s.isCollapsed()&&e.s.setCursorAfter(t),P.safeRemove(t),!0):n}function F_(e,t,n,r,i,a){if(a===t||!P.isText(t)||t.nodeValue==null||!Fa().test(t.no
526deValue))return n;let o=P.furthest(a,P.isBlock,e.editor);return!o||P.isOrContains(o,t)?n:(t.nodeValue=t.nodeValue.replace(Fa(),``),t===a&&e.s.isCollapsed()&&e.s.setCursorAfter(t),t.nodeValue||P.safeRemove(t),!0)}function I_(e,t,n){let r=L_(e,t,e.o.cleanHTML.replaceOldTags);return t===r?n:(t=r,!0)}function L_(e,t,n){if(!n||!P.isHTMLElement(t))return t;let r=n[t.nodeName.toLowerCase()]||n[t.nodeName];return r?P.replace(t,r,e.createInside,!0,!1):t}function R_(e,t,n){if(!e.o.cleanHTML.safeLinksTarget||!P.isElement(t)||t.nodeName!==`A`)return n;let r=t;if(N(r,`target`)!==`_blank`)return n;let i=(N(r,`rel`)||``).split(/\s+/).filter(Boolean),a=!1;return i.includes(`noopener`)||(i.push(`noopener`),a=!0),i.includes(`noreferrer`)||(i.push(`noreferrer`),a=!0),a?(N(r,`rel`,i.join(` `)),!0):n}function z_(e,t,n){if(!e.o.cleanHTML.sandboxIframesInContent||!P.isElement(t)||t.nodeName!==`IFRAME`)return n;let r=t;return E_(N(r,`src`)||``)||r.hasAttribute(`sandbox`)?n:(N(r,`sandbox`,``),!0)}function B_(e,t,n){if(!P.isElement(t))return n;let r=e.options.cleanHTML;return El(t,{safeJavaScriptLink:r.safeJavaScriptLink,removeOnError:r.removeOnError,removeEventAttributes:r.removeEventAttributes,safeLinksTarget:r.safeLinksTarget})?!0:n}function V_(e,t,n){let r=e.o.cleanHTML.allowedStyles;if(!r||!P.isElement(t))return n;let i=t,a=N(i,`style`);if(!a)return n;let o=H_(t.nodeName.toLowerCase(),r);if(!o)return n;let s=U_(a,o);return s===a?n:(N(i,`style`,s||null),!0)}function H_(e,t){let n=t[e],r=t[`*`];if(!n&&!r)return null;let i=new Set;if(r)for(let e of r)i.add(e.toLowerCase());if(n)for(let e of n)i.add(e.toLowerCase());return i}function U_(e,t){return e.split(`;`).map(e=>e.trim()).filter(e=>{if(!e)return!1;let n=e.indexOf(`:`);if(n===-1)return!1;let r=e.substring(0,n).trim().toLowerCase();return t.has(r)}).join(`; `).replace(/;\s*$/,``)}function W_(e,t,n,r,i,a){return G_(e,t,a,r,i)?(P.safeRemove(t),!0):n}function G_(e,t,n,r,i){if(!P.isText(t)){let e=t.nodeName.toUpperCase();if(r&&!r[e])return!0;let n=e===`IFRAME`&&E_(N(t,`src`)||``);if(!r&&i&&i[e]&&!n)return!0}if(!e.o.cleanHTML.removeEmptyElements)return!1;let a=e.s.isCollapsed()?e.s.range.startContainer:null;return P.isElement(t)&&t.nodeName.match(Wa)!=null&&!P.isTemporary(t)&&Vo(t.innerHTML).length===0&&(n==null||!P.isOrContains(t,n))&&(a==null||!P.isOrContains(t,a))}var K_=s({allowAttributes:()=>A_,convertUnsafeEmbeds:()=>j_,fillEmptyParagraph:()=>N_,removeEmptyTextNode:()=>P_,removeInvTextNodes:()=>F_,replaceOldTags:()=>I_,safeLinksTarget:()=>R_,sandboxIframesInContent:()=>z_,sanitizeAttributes:()=>B_,sanitizeStyles:()=>V_,tryRemoveNode:()=>W_}),q_=Object.keys(K_);function J_(e,t,n,r,i){let a=!1,o=e.o.cleanHTML.disableCleanFilter;for(let s of q_){if(o&&o.has(s))continue;let c=K_[s];if(a=c(e,t,a,n,r,i),!t.isConnected)return!0}return a}var Y_=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},X_=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`eraser`,group:`font-style`}],this.currentSelectionNode=null,this.walker=new xc(this.j.async,{timeout:this.j.o.cleanHTML.timeout})}afterInit(e){}get isEditMode(){return!(this.j.isInDestruct||!this.j.isEditorMode()||this.j.getReadOnly())}onChangeCleanHTML(){if(!this.isEditMode)return;let e=this.j;this.walker.setWork(e.editor),this.currentSelectionNode=e.s.current()}startWalker(){let{jodit:e}=this,t=C_(this.j.o.cleanHTML.allowTags),n=C_(this.j.o.cleanHTML.denyTags);this.walker.on(`visit`,r=>J_(e,r,t,n,this.currentSelectionNode)).on(`end`,e=>{this.j.e.fire(e?`internalChange finishedCleanHTMLWorker`:`finishedCleanHTMLWorker`)})}beforeCommand(e){if(e.toLowerCase()===`removeformat`)return this.j.s.isCollapsed()?D_(this.j):k_(this.j),!1}onBeforeSetNativeEditorValue(e){let[t,n]=this.j.o.cleanHTML.useIframeSandbox?this.j.createInside.sandbox():[this.j.od.implementation.createHTMLDocument(``).body];return t.innerHTML=e.value,this.j.e.fire(`safeHTML`,t),e.value=t.innerHTML,xl(t,{safeJavaScriptLink:!0,removeOnError:!0}),P.safeRemove(n),!1}onAfterGetValueFromEditor(e){this.j.o.cleanHTML.collapseEmptyValueToEmptyString&&/^<([a-z][a-z0-9]*)\b[^>]*>(?:<br\/?>)?<\/\1>$/i.test(e.value.trim())&&(e.value=``)}onSafeHTML(e){let t=this.j.o.cleanHTML.sanitizer;t&&(e.innerHTML=t(e.innerHTML)),xl(e,this.j.o.cleanHTML)}beforeDestruct(){this.walker.destruct()}};Y_([I([`:change`,`:afterSetMode`,`:afterInit`,`:mousedown`,`:keydown`])],X_.prototype,`onChangeCleanHTML`,null),Y_([iu(`ready`)],X_.prototype,`startWalker`,null),Y_([I(`:beforeCommand`)],X_.prototype,`beforeCommand`,null),Y_([I(`:beforeSetNativeEditorValue`)],X_.prototype,`onBeforeSetNativeEditorValue`,null),Y_([I(`:afterGetValueFromEditor`)],X_.prototype,`onAfterGetValueFromEditor`,null),Y_([I(`:safeHTML`)],X_.prototype,`onSafeHTML`,null),Ec.add(`cleanHtml`,X_);var Z_=`<svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"> <path d="M24.89,6.61H22.31V4.47A2.47,2.47,0,0,0,19.84,2H6.78A2.47,2.47,0,0,0,4.31,4.47V22.92a2.47,2.47,0,0,0,2.47,2.47H9.69V27.2a2.8,2.8,0,0,0,2.8,2.8h12.4a2.8,2.8,0,0,0,2.8-2.8V9.41A2.8,2.8,0,0,0,24.89,6.61ZM6.78,23.52a.61.61,0,0,1-.61-.6V4.47a.61.61,0,0,1,.61-.6H19.84a.61.61,0,0,1,.61.6V6.61h-8a2.8,2.8,0,0,0-2.8,2.8V23.52Zm19,3.68a.94.94,0,0,1-.94.93H12.49a.94.94,0,0,1-.94-.93V9.41a.94.94,0,0,1,.94-.93h12.4a.94.94,0,0,1,.94.93Z"/> <path d="M23.49,13.53h-9.6a.94.94,0,1,0,0,1.87h9.6a.94.94,0,1,0,0-1.87Z"/> <path d="M23.49,17.37h-9.6a.94.94,0,1,0,0,1.87h9.6a.94.94,0,1,0,0-1.87Z"/> <path d="M23.49,21.22h-9.6a.93.93,0,1,0,0,1.86h9.6a.93.93,0,1,0,0-1.86Z"/> </svg> `,Q_=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M960 896q26 0 45 19t19 45-19 45-45 19-45-19-19-45 19-45 45-19zm300 64l507 398q28 20 25 56-5 35-35 51l-128 64q-13 7-29 7-17 0-31-8l-690-387-110 66q-8 4-12 5 14 49 10 97-7 77-56 147.5t-132 123.5q-132 84-277 84-136 0-222-78-90-84-79-207 7-76 56-147t131-124q132-84 278-84 83 0 151 31 9-13 22-22l122-73-122-73q-13-9-22-22-68 31-151 31-146 0-278-84-82-53-131-124t-56-147q-5-59 15.5-113t63.5-93q85-79 222-79 145 0 277 84 83 52 132 123t56 148q4 48-10 97 4 1 12 5l110 66 690-387q14-8 31-8 16 0 29 7l128 64q30 16 35 51 3 36-25 56zm-681-260q46-42 21-108t-106-117q-92-59-192-59-74 0-113 36-46 42-2
5261 108t106 117q92 59 192 59 74 0 113-36zm-85 745q81-51 106-117t-21-108q-39-36-113-36-100 0-192 59-81 51-106 117t21 108q39 36 113 36 100 0 192-59zm178-613l96 58v-11q0-36 33-56l14-8-79-47-26 26q-3 3-10 11t-12 12q-2 2-4 3.5t-3 2.5zm224 224l96 32 736-576-128-64-768 431v113l-160 96 9 8q2 2 7 6 4 4 11 12t11 12l26 26zm704 416l128-64-520-408-177 138q-2 3-13 7z"/> </svg> `,$_=`<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path stroke-width="0" d="M10.5 20H2a2 2 0 0 1-2-2V6c0-1.1.9-2 2-2h1V3l2.03-.4a3 3 0 0 1 5.94 0L13 3v1h1a2 2 0 0 1 2 2v1h-2V6h-1v1H3V6H2v12h5v2h3.5zM8 4a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm2 4h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-8a2 2 0 0 1-2-2v-8c0-1.1.9-2 2-2zm0 2v8h8v-8h-8z"/> </svg> `,ev=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 18 18"> <g fill-rule="evenodd" stroke="none" stroke-width="1"> <g transform="translate(-381.000000, -381.000000)"> <g transform="translate(381.000000, 381.000000)"> <path d="M0,2 L2,2 L2,0 C0.9,0 0,0.9 0,2 L0,2 Z M0,10 L2,10 L2,8 L0,8 L0,10 L0,10 Z M4,18 L6,18 L6,16 L4,16 L4,18 L4,18 Z M0,6 L2,6 L2,4 L0,4 L0,6 L0,6 Z M10,0 L8,0 L8,2 L10,2 L10,0 L10,0 Z M16,0 L16,2 L18,2 C18,0.9 17.1,0 16,0 L16,0 Z M2,18 L2,16 L0,16 C0,17.1 0.9,18 2,18 L2,18 Z M0,14 L2,14 L2,12 L0,12 L0,14 L0,14 Z M6,0 L4,0 L4,2 L6,2 L6,0 L6,0 Z M8,18 L10,18 L10,16 L8,16 L8,18 L8,18 Z M16,10 L18,10 L18,8 L16,8 L16,10 L16,10 Z M16,18 C17.1,18 18,17.1 18,16 L16,16 L16,18 L16,18 Z M16,6 L18,6 L18,4 L16,4 L16,6 L16,6 Z M16,14 L18,14 L18,12 L16,12 L16,14 L16,14 Z M12,18 L14,18 L14,16 L12,16 L12,18 L12,18 Z M12,2 L14,2 L14,0 L12,0 L12,2 L12,2 Z M4,14 L14,14 L14,4 L4,4 L4,14 L4,14 Z M6,6 L12,6 L12,12 L6,12 L6,6 L6,6 Z"/> </g> </g> </g> </svg> `;F.prototype.controls.cut={command:`cut`,isDisabled:e=>e.s.isCollapsed(),tooltip:`Cut selection`},F.prototype.controls.copy={command:`copy`,isDisabled:e=>e.s.isCollapsed(),tooltip:`Copy selection`},F.prototype.controls.selectall={icon:`select-all`,command:`selectall`,tooltip:`Select all`},vu.set(`copy`,Z_).set(`cut`,Q_).set(`paste`,$_).set(`select-all`,ev);var tv=class{constructor(){this.buttons=[{name:`cut`,group:`clipboard`},{name:`copy`,group:`clipboard`},{name:`paste`,group:`clipboard`},{name:`selectall`,group:`clipboard`}]}init(e){var t;(t=this.buttons)==null||t.forEach(t=>e.registerButton(t)),e.e.off(`copy.${To} cut.${To}`).on(`copy.${To} cut.${To}`,t=>{var n;let r=nv(e,e.s.html),i=ys(t)||ys(e.ew)||ys(t.originalEvent);i&&(i.setData(so,Al(r)),i.setData(co,r)),e.buffer.set(To,r),e.e.fire(`pasteStack`,{html:r,action:e.o.defaultActionOnPaste||`insert_as_html`}),t.type===`cut`&&(e.s.remove(),e.s.focus()),t.preventDefault(),(n=e?.events)==null||n.fire(`afterCopy`,r)})}destruct(e){var t,n;(t=Rs(e,`buffer`))==null||t.set(`clipboard`,``),(n=e?.events)==null||n.off(`.clipboard`)}};function nv(e,t){if(!t||e.s.isCollapsed())return t;let n=e.s.range.commonAncestorContainer;P.isElement(n)||(n=n.parentElement);let r=t;for(;n&&n!==e.editor&&P.isElement(n)&&!P.isBlock(n);){let e=n.cloneNode(!1);e.innerHTML=r,r=e.outerHTML,n=n.parentElement}return r}Ec.add(`clipboard`,tv);var rv=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 16 16"> <path stroke-width="0" d="M16 9v-6h-3v-1c0-0.55-0.45-1-1-1h-11c-0.55 0-1 0.45-1 1v3c0 0.55 0.45 1 1 1h11c0.55 0 1-0.45 1-1v-1h2v4h-9v2h-0.5c-0.276 0-0.5 0.224-0.5 0.5v5c0 0.276 0.224 0.5 0.5 0.5h2c0.276 0 0.5-0.224 0.5-0.5v-5c0-0.276-0.224-0.5-0.5-0.5h-0.5v-1h9zM12 3h-11v-1h11v1z"/> </svg> `,iv={"copy-format":`ÙØ³Ø® Ø§ÙØªÙسÙÙ`},av={"copy-format":`KopÃrovat formát`},ov={"copy-format":`Format kopierenÑ`},sv={"copy-format":`Copiar formato`},cv={"copy-format":`Ú©Ù¾Û Ú©Ø±Ø¯Ù ÙØ§Ùب`},lv={"copy-format":`Kopioi muotoilu`},uv={"copy-format":`Format de copie`},dv={"copy-format":`×עתק ×¢×צ××`},fv={"copy-format":`Formátum másolás`},pv={"copy-format":`salin format`},mv={"copy-format":`Copia il formato`},hv={"copy-format":`copyformat`}
526,gv={"copy-format":`ë³µì¬ íì`},_v={"copy-format":`ФоÑÐ¼Ð°Ñ Ñ
ÑÑлаÑ
`},vv={"copy-format":`opmaak kopiëren`},yv={"copy-format":`format kopii`},bv={"copy-format":`Copiar formato`},xv={"copy-format":`ÐопиÑоваÑÑ ÑоÑмаÑ`},Sv={"copy-format":`Kopyalama Biçimi`},Cv={"copy-format":`å¤å¶æ ¼å¼`},wv={"copy-format":`è¤è£½æ ¼å¼`},Tv=s({ar:()=>iv,cs_cz:()=>av,de:()=>ov,es:()=>sv,fa:()=>cv,fi:()=>lv,fr:()=>uv,he:()=>dv,hu:()=>fv,id:()=>pv,it:()=>mv,ja:()=>hv,ko:()=>gv,mn:()=>_v,nl:()=>vv,pl:()=>yv,pt_br:()=>bv,ru:()=>xv,tr:()=>Sv,zh_cn:()=>Cv,zh_tw:()=>wv}),Ev=`copy-format`,Dv=[`lineHeight`,`fontWeight`,`fontStyle`,`fontSize`,`fontFamily`,`color`,`margin`,`padding`,`borderWidth`,`borderStyle`,`borderColor`,`borderRadius`,`backgroundColor`,`textDecorationLine`],Ov=(e,t,n,r)=>{let i=M(n,t);return i===r[t]&&(i=n.parentNode&&n!==e.editor&&n.parentNode!==e.editor?Ov(e,t,n.parentNode,r):void 0),i},kv=(e,t,n)=>{let r={};return t&&Dv.forEach(i=>{r[i]=Ov(e,i,t,n),i.match(/border(Style|Color)/)&&!r.borderWidth&&(r[i]=void 0)}),r};F.prototype.controls.copyformat={exec:(e,t,{button:n})=>{if(t){if(e.buffer.exists(Ev))e.buffer.delete(Ev),e.e.off(e.editor,`mouseup.copy-format`);else{let n={},r=P.up(t,e=>e&&!P.isText(e),e.editor)||e.editor,i=e.createInside.span();e.editor.appendChild(i),Dv.forEach(e=>{n[e]=M(i,e)}),i!==e.editor&&P.safeRemove(i);let a=kv(e,r,n);e.e.on(e.editor,`mouseup.copy-format`,()=>{e.buffer.delete(Ev);let t=e.s.current();t&&(P.isTag(t,`img`)?M(t,a):e.s.commitStyle({attributes:{style:a}})),e.e.off(e.editor,`mouseup.copy-format`)}),e.buffer.set(Ev,!0)}n.update()}},isActive:e=>e.buffer.exists(Ev),tooltip:`Paint format`};function Av(e){e.registerButton({name:`copyformat`,group:`clipboard`}),Oc(Tv)}Ec.add(`copyformat`,Av),vu.set(`copyformat`,rv);var jv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Mv=class extends Lf{constructor(){super(...arguments),this.isFragmentFromEditor=!1,this.isCopyMode=!1,this.startDragPoint={x:0,y:0},this.draggable=null,this.bufferRange=null,this.getText=e=>{let t=ys(e);return t?t.getData(co)||t.getData(so):null}}afterInit(){this.j.e.on([window,this.j.ed,this.j.editor],`dragstart.DragAndDrop`,this.onDragStart)}onDragStart(e){let t=e.target;if(this.onDragEnd(),this.isFragmentFromEditor=P.isOrContains(this.j.editor,t,!0),this.isCopyMode=!this.isFragmentFromEditor||sl(e),this.isFragmentFromEditor){let e=this.j.s.sel,t=e&&e.rangeCount?e.getRangeAt(0):null;t&&(this.bufferRange=t.cloneRange())}else this.bufferRange=null;this.startDragPoint.x=e.clientX,this.startDragPoint.y=e.clientY,Nv(t)&&(t=t.querySelector(`img`)),P.isTag(t,`img`)&&(this.draggable=t.cloneNode(!0),is(this.draggable,`target`,t)),this.addDragListeners()}addDragListeners(){this.j.e.on(`dragover`,this.onDrag).on(`drop.DragAndDrop`,this.onDrop).on(window,`dragend.DragAndDrop drop.DragAndDrop mouseup.DragAndDrop`,this.onDragEnd)}removeDragListeners(){this.j.e.off(`dragover`,this.onDrag).off(`drop.DragAndDrop`,this.onDrop).off(window,`dragend.DragAndDrop drop.DragAndDrop mouseup.DragAndDrop`,this.onDragEnd)}onDrag(e){this.draggable&&(this.j.e.fire(`hidePopup`),this.j.s.insertCursorAtPoint(e.clientX,e.clientY),e.preventDefault(),e.stopPropagation())}onDragEnd(){this.draggable&&=(P.safeRemove(this.draggable),null),this.isCopyMode=!1,this.removeDragListeners()}onDrop(e){if(!e.dataTransfer||!e.dataTransfer.files||!e.dataTransfer.files.length){if(!this.isFragmentFromEditor&&!this.draggable)return this.j.e.fire(`paste`,e),e.preventDefault(),e.stopPropagation(),!1;let t=this.j.s.sel,n=this.bufferRange||(t&&t.rangeCount?t.getRangeAt(0):null),r=this.__getWorkFragment(n,e);t&&t.removeAllRanges(),this.j.s.insertCursorAtPoint(e.clientX,e.clientY),r&&this.__insertFragment.call(this,r,n),e.preventDefault(),e.stopPropagation()}this.isFragmentFromEditor=!1,this.removeDragListeners()}__getWorkFragment(e,t){let n=null;if(!this.draggable&&e)n=this.isCopyMode?e.cloneContents():e.extractContents();else if(this.draggable)if(this.isCopyMode){let[e,t]=N(this.draggable,`-is-file`)===`1`?[`a`,`href`]:[`img`,`src`];n=this.j.createInside.element(e),N(n,t,N(this.draggable,`data-src`)||N(this.draggable,`src`)||``),e===`a`&&(n.textContent=N(n,t)||``)}else n=is(this.draggable,`target`);else this.getText(t)&&(n=this.j.createInside.fromHTML(this.getText(t)));return n}__insertFragment(e,t){this.j.s.insertNode(e,!1,!1),t&&e.firstChild&&e.lastChild&&(t.setStartBefore(e.firstChild),t.setEndAfter(e.lastChild),this.j.s.selectRange(t),this.j.e.fire(`synchro`)),P.isTag(e,`img`)&&this.j.events&&this.j.e.fire(`afterInsertImage`,e)}beforeDestruct(){this.onDragEnd(),this.j.e.off(window,`.DragAndDrop`).off(`.DragAndDrop`).off([window,this.j.ed,this.j.editor],`dragstart.DragAndDrop`,this.onDragStart)}};jv([A],Mv.prototype,`onDragStart`,null),jv([nu(e=>e.defaultTimeout/10)],Mv.prototype,`onDrag`,null),jv([A],Mv.prototype,`onDragEnd`,null),jv([A],Mv.prototype,`onDrop`,null);function Nv(e){return P.isElement(e)&&e.classList.contains(jf.prototype.getFullElName(`item`))}Ec.add(`dragAndDrop`,Mv),F.prototype.draggableTags=[`img`,`jodit-media`,`jodit`];var Pv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Fv;(function(e){e[e.IDLE=0]=`IDLE`,e[e.WAIT_DRAGGING=1]=`WAIT_DRAGGING`,e[e.DRAGGING=2]=`DRAGGING`})(Fv||={});var Iv=class e extends Lf{constructor(){super(...arguments),this.dragList=[],this.draggable=null,this.isCopyMode=!1,this.diffStep=10,this.startX=0,this.startY=0,this.state=Fv.IDLE}afterInit(){this.dragList=this.j.o.draggableTags?Ys(this.j.o.draggableTags).filter(
526Boolean).map(e=>e.toLowerCase()):[],this.j.e.on(`startDragElement`,this.onStartDragElement),this.dragList.length&&this.j.e.on(`mousedown dragstart`,this.onDragStart)}onStartDragElement(e,t){this.isInDestruct||this.state>Fv.IDLE||!e||this.startDragging(e,t)}onDragStart(e){if(e.type===`dragstart`&&this.draggable)return!1;if(this.state>Fv.IDLE)return;let t=e.target;if(!this.dragList.length||!t)return;let n=e=>!!(e&&this.dragList.includes(e.nodeName.toLowerCase())),r=P.furthest(t,n,this.j.editor)||(n(t)?t:null);r&&(P.isTag(r.parentElement,`a`)&&r.parentElement.firstChild===r&&r.parentElement.lastChild===r&&(r=r.parentElement),this.startDragging(r,e))}startDragging(e,t){this.startX=t.clientX,this.startY=t.clientY,this.isCopyMode=sl(t),this.draggable=e.cloneNode(!0),is(this.draggable,`target`,e),this.state=Fv.WAIT_DRAGGING,this.addDragListeners()}onDrag(t){if(!this.draggable||this.state===Fv.IDLE)return;let n=t.clientX,r=t.clientY;if(!(this.state===Fv.WAIT_DRAGGING&&Math.sqrt((n-this.startX)**2+(r-this.startY)**2)<this.diffStep)){if(this.state===Fv.WAIT_DRAGGING&&(this.j.lock(`drag-and-drop-element`),this.state=Fv.DRAGGING),this.j.e.fire(`hidePopup hideResizer`),!this.draggable.parentNode){let n=is(this.draggable,`target`);M(this.draggable,{zIndex:0x9184e72a000,pointerEvents:`none`,pointer:`drag`,position:`fixed`,opacity:.7,display:`inline-block`,left:t.clientX,top:t.clientY,width:n?.offsetWidth??100,height:n?.offsetHeight??100}),Ac(this.j,e).appendChild(this.draggable)}M(this.draggable,{left:t.clientX,top:t.clientY}),this.j.s.insertCursorAtPoint(t.clientX,t.clientY)}}onDragEnd(){this.isInDestruct||(this.removeDragListeners(),this.j.unlock(),this.state=Fv.IDLE,this.draggable&&=(P.safeRemove(this.draggable),null))}onDrop(){if(!this.draggable||this.state<Fv.DRAGGING){this.onDragEnd();return}let e=is(this.draggable,`target`);this.onDragEnd(),this.isCopyMode&&(e=e.cloneNode(!0));let{parentElement:t}=e;this.j.s.insertNode(e,!0,!1),[e.previousSibling,e.nextSibling].forEach(e=>{P.isEmptyTextNode(e)&&P.safeRemove(e)}),t&&P.isEmpty(t)&&!P.isCell(t)&&P.safeRemove(t),P.isTag(e,`img`)&&this.j.e&&this.j.e.fire(`afterInsertImage`,e),this.j.e.fire(`synchro`)}addDragListeners(){this.j.e.on(this.j.editor,`mousemove`,this.onDrag).on(`mouseup`,this.onDrop).on([this.j.ew,this.ow],`mouseup`,this.onDragEnd)}removeDragListeners(){this.j.e.off(this.j.editor,`mousemove`,this.onDrag).off(`mouseup`,this.onDrop).off([this.j.ew,this.ow],`mouseup`,this.onDragEnd)}beforeDestruct(){this.onDragEnd(),this.j.e.off(`mousedown dragstart`,this.onDragStart).off(`startDragElement`,this.onStartDragElement),this.removeDragListeners()}};Pv([A],Iv.prototype,`onStartDragElement`,null),Pv([A],Iv.prototype,`onDragStart`,null),Pv([nu(e=>e.defaultTimeout/10)],Iv.prototype,`onDrag`,null),Pv([A],Iv.prototype,`onDragEnd`,null),Pv([A],Iv.prototype,`onDrop`,null),Ec.add(`dragAndDropElement`,Iv),F.prototype.controls.file={popup:(e,t,n)=>{let r=(t,n=``)=>{e.s.insertNode(e.createInside.fromHTML(`<a href="${t}" title="${n}">${n||t}</a>`))},i=null;return t&&(P.isTag(t,`a`)||P.closest(t,`a`,e.editor))&&(i=P.isTag(t,`a`)?t:P.closest(t,`a`,e.editor)),Xh(e,{filebrowser:e=>{e.files&&e.files.forEach(t=>r(e.baseurl+t)),n()},upload:!0,url:(e,t)=>{i?(N(i,`href`,e),N(i,`title`,t)):r(e,t),n()}},i,n,!1)},tags:[`a`],tooltip:`Insert file`};function Lv(e){e.registerButton({name:`file`,group:`media`})}Ec.add(`file`,Lv),F.prototype.autofocus=!1,F.prototype.cursorAfterAutofocus=`end`,F.prototype.saveSelectionOnBlur=!0;function Rv(e){e.o.saveSelectionOnBlur&&e.e.on(`blur`,()=>{e.isEditorMode()&&e.s.save(!0)}).on(`focus`,()=>{e.isEditorMode()&&e.s.restore()});let t=()=>{e.s.focus();let t=null;switch(e.o.cursorAfterAutofocus){case`start`:t=P.first(e.editor,e=>P.isText(e));break;case`end`:t=P.last(e.editor,e=>P.isText(e))}t&&e.s.setCursorIn(t,e.o.cursorAfterAutofocus===`start`)};e.e.on(`afterInit`,()=>{e.o.autofocus&&(e.defaultTimeout?e.async.setTimeout(t,300):t())}),e.e.on(`afterInit afterAddPlace`,()=>{e.e.off(e.editor,`mousedown.autofocus`).on(e.editor,`mousedown.autofocus`,t=>{e.isEditorMode()&&t.target&&P.isBlock(t.target)&&!t.target.childNodes.length&&(e.editor===t.target?e.s.focus():e.s.setCursorIn(t.target))})})}Ec.add(`focus`,Rv);var zv=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 24 24"> <path stroke-width="0" d="M22,20.6L3.4,2H8V0H0v8h2V3.4L20.6,22H16v2h8v-8h-2V20.6z M16,0v2h4.7l-6.3,6.3l1.4,1.4L22,3.5V8h2V0H16z M8.3,14.3L2,20.6V16H0v8h8v-2H3.5l6.3-6.3L8.3,14.3z"/> </svg> `,Bv=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M896 960v448q0 26-19 45t-45 19-45-19l-144-144-332 332q-10 10-23 10t-23-10l-114-114q-10-10-10-23t10-23l332-332-144-144q-19-19-19-45t19-45 45-19h448q26 0 45 19t19 45zm755-672q0 13-10 23l-332 332 144 144q19 19 19 45t-19 45-45 19h-448q-26 0-45-19t-19-45v-448q0-26 19-45t45-19 45 19l144 144 332-332q10-10 23-10t23 10l114 114q10 10 10 23z"/> </svg> `;F.prototype.fullsize=!1,F.prototype.globalFullSize=!0,vu.set(`fullsize`,zv).set(`shrink`,Bv),F.prototype.controls.fullsize={exec:e=>{e.toggleFullSize()},update(e,t){let n=e.isFullSize?`shrink`:`fullsize`;t.state.activated=e.isFullSize,e.o.textIcons?t.state.text=n:t.state.icon.name=n},tooltip:`Open in fullsize`,mode:3};var Vv=new Set;function Hv(e){e.registerButton({name:`fullsize`});let t=!1,n=0,r=0,i=0,a=0,o=!1,s=()=>{let{container:i,events:a}=e;a&&(t?(o||=(n=M(i,`height`,!0),r=M(i,`width`,!0),!0),M(i,{height:e.ow.innerHeight,width:e.ow.innerWidth})):o&&=(M(i,{height:n||`auto`,width:r||`auto`}),!1))},c=n=>{var r;let{container:o,events:c}=e;if(o){if(n===void 0&&(n=!o.classList.contains(`jodit_fullsize`)),e.setMod(`fullsize`,n),e.o.fullsize=n,t=n,o.classList.toggle(`jodit_fullsize`,n),e.toolbar&&(Ms(e)&&((r=e.toolbarContainer)==null||r.appendChild(e.toolbar.container)),M(e.toolbar.container,`width`,`auto`)),n?Vv.add(o):Vv.delete(o),e.o.globalFullSize&&(Vv.size===1&&n||Vv.size===0&&!n)){n&&(i=e.ow.scrollX,a=e.ow.scrollY);
526let t=o.parentNode;for(;t&&t.nodeType!==Node.DOCUMENT_NODE&&t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE;)t.classList.toggle(`jodit_fullsize-box_true`,n),t=t.parentNode;s(),n||e.ow.scrollTo(i,a)}c.fire(`afterResize`)}};e.o.globalFullSize&&e.e.on(e.ow,`resize`,s),e.e.on(`afterInit afterOpen`,()=>{e.toggleFullSize(e?.options?.fullsize)}).on(`toggleFullSize`,c).on(`beforeDestruct`,()=>{t&&c(!1)}).on(`beforeDestruct`,()=>{e.events&&e.e.off(e.ow,`resize`,s)})}Ec.add(`fullsize`,Hv),vu.set(`hr`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1600 736v192q0 40-28 68t-68 28h-1216q-40 0-68-28t-28-68v-192q0-40 28-68t68-28h1216q40 0 68 28t28 68z"/> </svg> `),F.prototype.controls.hr={command:`insertHorizontalRule`,tags:[`hr`],tooltip:`Insert Horizontal Line`};function Uv(e){e.registerButton({name:`hr`,group:`insert`}),e.registerCommand(`insertHorizontalRule`,()=>{let t=e.createInside.element(`hr`);e.s.insertNode(t,!1,!1);let n=P.closest(t.parentElement,P.isBlock,e.editor);n&&P.isEmpty(n)&&n!==e.editor&&(P.after(n,t),P.safeRemove(n));let r=P.next(t,P.isBlock,e.editor,!1);return r||(r=e.createInside.element(e.o.enter),P.after(t,r)),e.s.setCursorIn(r),!1})}Ec.add(`hr`,Uv),F.prototype.imageProcessor={replaceDataURIToBlobIdInView:!0};var Wv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Gv=`__jodit_imageprocessor_binded`,Kv=`__jodit_imageprocessor_bindedblob-id`,qv=class extends Lf{afterInit(e){}beforeDestruct(e){let t=Rs(e,`buffer`),n=t?.get(Kv);if(t&&n){let e=Object.keys(n);for(let t of e)URL.revokeObjectURL(t);t.delete(Kv)}}onAfterGetValueFromEditor(e,t){if(t!==`source-consumer`)return this.onBeforeSetElementValue(e)}onBeforeSetElementValue(e){let{jodit:t}=this;if(!t.o.imageProcessor.replaceDataURIToBlobIdInView)return;let n=t.buffer.get(Kv);if(n){let t=Object.keys(n);for(let r of t)for(;e.value.includes(r);)e.value=e.value.replace(r,n[r])}}async afterChange(e){let{jodit:t}=this;t.editor&&Pc(`img`,t.editor).forEach(e=>{is(e,Gv)||(is(e,Gv,!0),e.complete||t.e.on(e,`load`,function n(){var r;!t.isInDestruct&&((r=t.e)==null||r.fire(`resize`)),t.e.off(e,`load`,n)}),e.src&&/^data:/.test(e.src)&&Jv(t,e),t.e.on(e,`mousedown touchstart`,()=>{t.s.select(e)}))})}};Wv([I(`:afterGetValueFromEditor`)],qv.prototype,`onAfterGetValueFromEditor`,null),Wv([I(`:beforeSetElementValue`)],qv.prototype,`onBeforeSetElementValue`,null),Wv([I([`:change`,`:afterInit`,`:changePlace`]),tu()],qv.prototype,`afterChange`,null);function Jv(e,t){if(!e.o.imageProcessor.replaceDataURIToBlobIdInView||typeof ArrayBuffer>`u`||typeof URL>`u`)return;let n=t.src,r=Yv(n);t.src=URL.createObjectURL(r),e.e.fire(`internalUpdate`);let{buffer:i}=e,a=i.get(Kv)||{};a[t.src]=n,e.buffer.set(Kv,a)}function Yv(e){let t=atob(e.split(`,`)[1]),n=e.split(`,`)[0].split(`:`)[1].split(`;`)[0],r=new ArrayBuffer(t.length),i=new Uint8Array(r);for(let e=0;e<t.length;e++)i[e]=t.charCodeAt(e);return new Blob([r],{type:n})}Ec.add(`imageProcessor`,qv),F.prototype.image={dialogWidth:600,openOnDblClick:!0,editSrc:!0,useImageEditor:!0,editTitle:!0,editAlt:!0,editLink:!0,editSize:!0,editBorderRadius:!0,editMargins:!0,editClass:!0,availableClasses:[],editStyle:!0,editId:!0,editAlign:!0,showPreview:!0,selectImageAfterClose:!0};var Xv=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Zv=class extends Ou{className(){return`UIImageMainTab`}appendChildToContainer(){}constructor(e,t,n){super(e),this.state=t,this.handlers=n}render(){return`<div class="jodit-form__group &__editSrc"> 527 <label>~Src~</label> 528 <div class="jodit-input_group"> 529 <input class="jodit-input &__imageSrc" type="text"/> 530 <div class="jodit-input_group-buttons &__fixImage"> 531 <a class="jodit-button &__changeImage" data-ref="changeImage">*image*</a> 532 <a class="jodit-button &__editImage" data-ref="editImage">*crop*</a> 533 </div> 534 </div> 535 </div> 536 <div class="jodit-form__group &__editTitle"> 537 <label>~Title~</label> 538 <input type="text" class="jodit-input &__imageTitle"/> 539 </div> 540 <div class="jodit-form__group &__editAlt"> 541 <label>~Alternative~</label> 542 <input type="text" class="jodit-input &__imageAlt"/> 543 </div> 544 <div class="jodit-form__group &__editLink"> 545 <label>~Link~</label> 546 <input type="text" class="jodit-input &__imageLink"/> 547 </div> 548 <div class="jodit-form__group &__editLinkTarget"> 549 <label class="jodit_vertical_middle"> 550 <input type="checkbox" class="jodit-checkbox &__imageLinkOpenInNewTab"/> 551 <span>~Open link in new tab~</span> 552 </label> 553 </div>`}async onStateImageSrcChange(){let e=this.getElm(`imageSrc`);e.value=this.state.values.imageSrc}onImageSrcChange(){this.state.values.imageSrc=this.getElm(`imageSrc`).value}onEditImageClick(e){this.handlers.openImageEditor(),e.stopPropagation()}onChangeImageClick(e){this.handlers.openImagePopup(this.getElm(`changeImage`)),e.stopPropagation()}onStateTitleChange(){let e=this.getElm(`imageTitle`);e.value=this.state.values.imageTitle}onTitleChange(){this.state.values.imageTitle=this.getElm(`imageTitle`).value}onStateAltChange(){let e=this.getElm(`imageAlt`);e.value=this.state.values.imageAlt}onAltChange(){this.state.values.imageAlt=this.getElm(`imageAlt`).value}onStateImageLinkChange(){let e=this.getElm(`imageLink`);e.value=this.state.values.imageLink}onImageLinkChange(){this.state.values.imageLink=this.getElm(`imageLink`).value}onStateImageLinkOpenInNewTabChange(){let e=this.getElm(`imageLinkOpenInNewTab`);e.checked=this.state.values.imageLinkOpenInNewTab}onImageLinkOpenInNewTabChange(){this.state.values.imageLinkOpenInNewTab=this.getElm(`imageLinkOpenInNewTab`).checked}hideFieldByOptions(){let e=this.j.o,t=e.image;[[`editSrc`,`editSrc`],[`editTitle`,`editTitle`],[`editAlt`,`editAlt`],[`editLink`,`editLink`],[`editLink`,`editLinkTarget`],[`useImageEditor`,`editImage`]].forEac
553h(([e,n])=>{M(this.getElm(n),`display`,t[e]?null:`none`)});let n=this.getElm(`changeImage`),r=!!(e.filebrowser.ajax.url||e.uploader.url);M(n,`display`,r?null:`none`);let i=this.getElm(`editImage`),a=!!e.filebrowser.ajax.url&&t.useImageEditor;M(i,`display`,a?null:`none`),M(this.getElm(`fixImage`),`display`,r||a?null:`none`)}};Xv([I(`state.values.imageSrc`)],Zv.prototype,`onStateImageSrcChange`,null),Xv([I(`imageSrc:change`)],Zv.prototype,`onImageSrcChange`,null),Xv([I(`editImage:click`)],Zv.prototype,`onEditImageClick`,null),Xv([I(`changeImage:click`)],Zv.prototype,`onChangeImageClick`,null),Xv([I(`state.values.imageTitle`)],Zv.prototype,`onStateTitleChange`,null),Xv([I(`imageTitle:change`)],Zv.prototype,`onTitleChange`,null),Xv([I(`state.values.imageAlt`)],Zv.prototype,`onStateAltChange`,null),Xv([I(`imageAlt:change`)],Zv.prototype,`onAltChange`,null),Xv([I(`state.values.imageLink`)],Zv.prototype,`onStateImageLinkChange`,null),Xv([I(`imageLink:change`)],Zv.prototype,`onImageLinkChange`,null),Xv([I(`state.values.imageLinkOpenInNewTab`)],Zv.prototype,`onStateImageLinkOpenInNewTabChange`,null),Xv([I(`imageLinkOpenInNewTab:change`)],Zv.prototype,`onImageLinkOpenInNewTabChange`,null),Xv([iu(`ready`)],Zv.prototype,`hideFieldByOptions`,null),Zv=Xv([Ws],Zv);var Qv=e=>/^[-+]?[0-9.]+(px)?$/.test(e.toString())?parseFloat(e.toString()):e,$v=e=>Fs(e)?e?e+`px`:e.toString():(e=zo(e),/^[0-9]+$/.test(e)?e+`px`:e),ey=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ty=class extends xu{className(){return`UIImagePositionTab`}constructor(e,t,n){super(e,{availableClasses:e.o.image.availableClasses}),this.state=t,this.handlers=n}render({availableClasses:e}){return`<div class="jodit-form__group &__editMargins"> 554 <label>~Margins~</label> 555 <div class="jodit-grid jodit_vertical_middle"> 556 <input class="jodit_col-lg-1-5 jodit-input &__marginTop" type="text" placeholder="~top~"/> 557 <a style="text-align: center;" class="jodit-properties__lock jodit_col-lg-1-5 &__lockMargin">*lock*</a> 558 <input disabled="disabled" class="jodit_col-lg-1-5 jodit-input &__marginRight" type="text" placeholder="~right~"/> 559 <input disabled="disabled" class="jodit_col-lg-1-5 jodit-input &__marginBottom" type="text" placeholder="~bottom~"/> 560 <input disabled="disabled" class="jodit_col-lg-1-5 jodit-input &__marginLeft" type="text" placeholder="~left~"/> 561 </div> 562 </div> 563 <div class="jodit-form__group &__editAlign"> 564 <label>~Align~</label> 565 <select class="jodit-select &__align"> 566 <option value="">~--Not Set--~</option> 567 <option value="left">~Left~</option> 568 <option value="center">~Center~</option> 569 <option value="right">~Right~</option> 570 </select> 571 </div> 572 <div class="jodit-form__group &__editStyle"> 573 <label>~Styles~</label> 574 <input type="text" class="jodit-input &__style"/> 575 </div> 576 <div class="jodit-form__group &__editClass"> 577 <label>~Classes~</label> 578 ${(()=>{let t=[];return e&&e.length>0?(t.push(`<select class="jodit-input jodit-select &__classes">`),e.forEach(e=>{j(e)?t.push(`<option value="${e}">${e}</option>`):t.push(`<option value="${e[0]}">${e[1]}</option>`)}),t.push(`</select>`)):t.push(`<input type="text" class="jodit-input &__classes"/>`),t.join(``)})()} 579 </div> 580 <div class="jodit-form__group &__editId"> 581 <label>Id</label> 582 <input type="text" class="jodit-input &__id"/> 583 </div> 584 <div 585 class="jodit-form__group &__editBorderRadius" 586 > 587 <label>~Border radius~</label> 588 <input type="number" class="jodit-input &__borderRadius"/> 589 </div>`}onStateAlignChange(){let e=this.getElm(`align`);e.value=this.state.values.align}onChangeAlign(){let e=this.getElm(`align`);this.state.values.align=e.value}onStateValuesBorderRadiusChange(){let e=this.getElm(`borderRadius`);e.value=this.state.values.borderRadius.toString()}onChangeBorderRadius(){let e=this.getElm(`borderRadius`);this.state.values.borderRadius=parseFloat(e.value)}onStateValuesIdChange(){let e=this.getElm(`id`);e.value=this.state.values.id}onChangeId(){let e=this.getElm(`id`);this.state.values.id=e.value}onStateValuesStyleChange(){let e=this.getElm(`style`);e.value=this.state.values.style}onChangeStyle(){let e=this.getElm(`style`);this.state.values.style=e.value}onStateValuesClassesChange(){let e=this.getElm(`classes`);e.value=this.state.values.classes}onChangClasses(){let e=this.getElm(`classes`);this.state.values.classes=e.value}onLockMarginClick(e){this.state.marginIsLocked=!this.state.marginIsLocked,e.preventDefault()}onChangeMarginIsLocked(){let e=this.getElm(`marginBottom`),t=this.getElm(`marginRight`),n=this.getElm(`marginLeft`),r=this.getElm(`lockMargin`);
589if([t,e,n].forEach(e=>{N(e,`disabled`,this.state.marginIsLocked||null)}),r.innerHTML=vu.get(this.state.marginIsLocked?`lock`:`unlock`),this.state.marginIsLocked){let e=this.state.values.marginTop;this.state.values.marginRight=e,this.state.values.marginBottom=e,this.state.values.marginLeft=e}}onStateValuesMarginChange(){let e=this.getElm(`marginTop`),t=this.getElm(`marginRight`),n=this.getElm(`marginBottom`),r=this.getElm(`marginLeft`);e.value=this.state.values.marginTop.toString(),t.value=this.state.values.marginRight.toString(),n.value=this.state.values.marginBottom.toString(),r.value=this.state.values.marginLeft.toString()}onChangeMargin(){let e=this.getElm(`marginTop`),t=this.getElm(`marginRight`),n=this.getElm(`marginBottom`),r=this.getElm(`marginLeft`);this.state.values.marginTop=Qv(e.value),this.state.marginIsLocked?(this.state.values.marginRight=this.state.values.marginTop,this.state.values.marginBottom=this.state.values.marginTop,this.state.values.marginLeft=this.state.values.marginTop):(this.state.values.marginRight=Qv(t.value),this.state.values.marginBottom=Qv(n.value),this.state.values.marginLeft=Qv(r.value))}hideFieldByOptions(){let e=this.j.o.image;[[`editMargins`,`editMargins`],[`editAlign`,`editAlign`],[`editStyle`,`editStyle`],[`editClass`,`editClass`],[`editId`,`editId`],[`editBorderRadius`,`editBorderRadius`]].forEach(([t,n])=>{M(this.getElm(n),`display`,e[t]?null:`none`)})}};ey([iu(`ready`),I(`state.values.align`)],ty.prototype,`onStateAlignChange`,null),ey([I(`align:change`)],ty.prototype,`onChangeAlign`,null),ey([iu(`ready`),I(`state.values.borderRadius`)],ty.prototype,`onStateValuesBorderRadiusChange`,null),ey([I(`borderRadius:change`)],ty.prototype,`onChangeBorderRadius`,null),ey([iu(`ready`),I(`state.values.id`)],ty.prototype,`onStateValuesIdChange`,null),ey([I(`id:change`)],ty.prototype,`onChangeId`,null),ey([iu(`ready`),I(`state.values.style`)],ty.prototype,`onStateValuesStyleChange`,null),ey([I(`style:change`)],ty.prototype,`onChangeStyle`,null),ey([iu(`ready`),I(`state.values.classes`)],ty.prototype,`onStateValuesClassesChange`,null),ey([I(`classes:change`)],ty.prototype,`onChangClasses`,null),ey([I(`lockMargin:click`)],ty.prototype,`onLockMarginClick`,null),ey([iu(`ready`),I(`state.marginIsLocked`)],ty.prototype,`onChangeMarginIsLocked`,null),ey([iu(`ready`),I([`state.values.marginTop`,`state.values.marginRight`,`state.values.marginBottom`,`state.values.marginLeft`])],ty.prototype,`onStateValuesMarginChange`,null),ey([I([`marginTop:change`,`marginRight:change`,`marginBottom:change`,`marginLeft:change`])],ty.prototype,`onChangeMargin`,null),ey([iu(`ready`)],ty.prototype,`hideFieldByOptions`,null),ty=ey([Ws],ty);var ny=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ry=class extends Ou{className(){return`UIImagePropertiesForm`}appendChildToContainer(){}getElm(e){let t=super.getElm(e);if(t)return t;for(let t of this.elements){let n=t.getElm(e);if(n)return n}return null}constructor(e,t,n,r){super(e),this.state=t,this.handlers=r,this.__mainTab=new Zv(this.jodit,this.state,this.handlers),this.__positionTab=new ty(this.jodit,this.state,this.handlers),this.getElm(`tabsBox`).appendChild(Yh(e,[{name:`Image`,content:this.__mainTab},{name:`Advanced`,content:this.__positionTab}],n)),this.setMod(`lock-size`,this.state.sizeIsLocked),this.append(this.__mainTab).append(this.__positionTab)}render(){return`<form> 590 <div class="jodit-grid jodit-grid_xs-column"> 591 <div class="jodit_col-lg-2-5 jodit_col-xs-5-5"> 592 <div class="&__view-box"> 593 <div class="&__imageView"> 594 <img class="&__imageViewSrc" src="" alt=""/> 595 </div> 596 <div class="jodit-form__group &__imageSizes"> 597 <input type="text" class="jodit-input &__imageWidth"/> 598 <a class="&__lockSize">${vu.get(`lock`)}</a> 599 <input type="text" class="&__imageHeight jodit-input"/> 600 </div>
601 </div> 602 </div> 603 <div class="jodit_col-lg-3-5 jodit_col-xs-5-5 &__tabsBox"></div> 604 </div> 605 </form>`}onChangeSizeIsLocked(){let e=this.getElm(`lockSize`),t=this.getElm(`imageWidth`);e.innerHTML=vu.get(this.state.sizeIsLocked?`lock`:`unlock`),this.setMod(`lock-size`,this.state.sizeIsLocked),this.j.e.fire(t,`change`)}onLockSizeClick(){this.state.sizeIsLocked=!this.state.sizeIsLocked}onStateValuesSizeChange(){let e=this.getElm(`imageWidth`),t=this.getElm(`imageHeight`);e!==this.j.od.activeElement&&(e.value=this.state.values.imageWidth.toString()),t!==this.j.od.activeElement&&(t.value=this.state.values.imageHeight.toString())}onImageWidthChange(e){let t=this.getElm(`imageWidth`),n=this.getElm(`imageHeight`);if(!this.state.sizeIsLocked||!Yo(t.value)||!Yo(n.value)){this.state.values.imageWidth=t.value,this.state.values.imageHeight=n.value;return}let r=parseFloat(t.value),i=parseFloat(n.value);e.target===t?(this.state.values.imageWidth=r,this.state.values.imageHeight=Math.round(r/this.state.ratio)):(this.state.values.imageWidth=Math.round(i*this.state.ratio),this.state.values.imageHeight=i)}onStateValuesImageSrcChange(){let{imageSrc:e}=this.state.values;if(!e)return;N(this.getElm(`imageViewSrc`),`src`,e);let t=new Image;t.src=e,this.state.image=t}hideFieldByOptions(){let e=this.j.o.image;[[`editSize`,`imageSizes`],[`showPreview`,`imageView`]].forEach(([t,n])=>{M(this.getElm(n),`display`,e[t]?null:`none`)})}};ny([iu(`ready`),I(`state.sizeIsLocked`)],ry.prototype,`onChangeSizeIsLocked`,null),ny([I(`lockSize:click`)],ry.prototype,`onLockSizeClick`,null),ny([iu(`ready`),I([`state.values.imageWidth`,`state.values.imageHeight`])],ry.prototype,`onStateValuesSizeChange`,null),ny([I([`imageWidth:change`,`imageHeight:change`,`imageWidth:keydown`,`imageHeight:keydown`,`imageWidth:mousedown`,`imageHeight:mousedown`,`imageWidth:paste`,`imageHeight:paste`]),tu()],ry.prototype,`onImageWidthChange`,null),ny([iu(`ready`),I(`state.values.imageSrc`)],ry.prototype,`onStateValuesImageSrcChange`,null),ny([iu(`ready`)],ry.prototype,`hideFieldByOptions`,null),ry=ny([Ws],ry);function iy(e,t){let n=N(t.image,`src`)||``,r=e.c.element(`a`),i=()=>{if(r.host!==location.host){e.confirm(`You can only edit your own images. Download this image on the host?`,n=>{n&&e.uploader&&e.uploader.uploadRemoteImage(r.href.toString(),n=>{e.alert(`The image has been successfully uploaded to the host!`,()=>{j(n.newfilename)&&(t.values.imageSrc=n.baseurl+n.newfilename)})},t=>{e.alert(e.i18n(`There was an error loading %s`,t.message))})});return}};r.href=n,e.filebrowser.dataProvider.getPathByUrl(r.href.toString()).then(i=>{Cf.call(e.filebrowser,r.href,i.name,i.path,i.source,e=>{let r=new Date().getTime(),i=e||n;t.values.imageSrc=i+(i.indexOf(`?`)===-1?`?`:``)+`&_tmp=`+r.toString()},t=>{e.alert(t.message)})}).catch(t=>{e.alert(t.message,i)})}function ay(e,t,n,r){let i=new _d(t),a=()=>{i.close(),i.destruct()};i.setContent(Xh(e,{upload:e=>{e.files&&e.files.length&&(n.values.imageSrc=e.baseurl+e.files[0]),a()},filebrowser:async e=>{e&&Ao(e.files)&&e.files.length&&(n.values.imageSrc=e.files[0],a())}},n.image,a)).open(()=>Kl(r))}function oy(e,t){t.align=e.style.cssFloat&&[`left`,`right`].indexOf(e.style.cssFloat.toLowerCase())!==-1?M(e,`float`):M(e,`display`)===`block`&&e.style.marginLeft===`auto`&&e.style.marginRight===`auto`?`center`:``}function sy(e,t,n){let r=P.closest(e.sourceImage,`a`,t.editor);r?(n.imageLink=N(r,`href`)||``,n.imageLinkOpenInNewTab=N(r,`target`)===`_blank`):(n.imageLink=``,n.imageLinkOpenInNewTab=!1)}function cy(e,t,n){let r=!0,i=!1;[`marginTop`,`marginRight`,`marginBottom`,`marginLeft`].forEach(n=>{let a=e.style.getPropertyValue(Ko(n));if(!a){i=!0,t[n]=0;return}/^[0-9]+(px)?$/.test(a)&&(a=parseInt(a,10)),t[n]=a,(i&&t[n]||r&&n!==`marginTop`&&t[n]!==t.marginTop)&&(r=!1)}),n.marginIsLocked=r}async function ly(e,t,n){try{await e.decode()}catch(e){console.error(e)}let r=M(e,`width`,!0)||N(e,`width`)||!1,i=M(e,`height`,!0)||N(e,`height`)||!1;t.imageWidth=r===!1?e.offsetWidth||e.naturalWidth:Qv(r),t.imageHeight=Yo(t.imageWidth)?i===!1?e.offsetHeight||e.naturalHeight:Qv(i):i||``;let{imageWidth:a,imageHeight:o}=t,s=parseFloat(a.toString());if(!Yo(a)||!Yo(o)){n.sizeIsLocked=!1;return}if(i===!1){t.imageHeight=Math.round(s/n.ratio),n.sizeIsLocked=!0;return}let c=parseFloat(o.toString());n.sizeIsLocked=Math.abs(s-c*n.ratio)<1}async function uy(e,t){let{sourceImage:n,values:r}=t;return oy(n,r),r.borderRadius=parseInt(n.style.borderRadius||`0`,10)||0,r.id=N(n,`id`)||``,r.imageTitle=N(n,`title`)||``,r.imageAlt=N(n,`alt`)||``,r.style=N(n,`style`)||``,r.classes=(N(n,`class`)||``).replace(/jodit_focused_image[\s]*/,``),cy(n,r,t),sy(t,e,r),r.imageSrc=N(n,`src`)||``,ly(n,r,t)}function dy(e,t,n,r){let i=P.closest(t,`a`,e.editor);if(n){if(i||=P.wrap(t,`a`,e.createInside),N(i,`href`,n),N(i,`target`,r?`_blank`:null),!r){let e=(N(i,`rel`)||``).split(/\s+/).filter(e=>e&&e!==`noopener`&&e!==`noreferrer`);N(i,`rel`,e.length?e.join(` `):null)}}else i&&i.parentNode&&i.parentNode.replaceChild(t,i)}function fy(e,t,n,r,i,a,o){let s=[t,n,r,i],c=(e,t)=>{let n=M(a,e),r=$v(t);n.toString()!==r.toString()&&M(a,e,r)};if(o)c(`margin`,t);else{let e=[`margin-top`,`margin-right`,`margin-bottom`,`margin-left`];
605s.forEach((t,n)=>{let r=e[n];c(r,t)})}}function py(e,t,n,r){if(t!==e.offsetWidth||n!==e.offsetHeight){let i=t?$v(t):null,a=n?$v(n):null;M(e,{width:i,height:i&&r?null:a}),N(e,`width`,i&&Yo(t)&&N(e,`width`)?i:null),(!N(e,`width`)||r)&&(a=null),N(e,`height`,a)}}function my(e,t,n){let{style:r,imageSrc:i,borderRadius:a,imageTitle:o,imageAlt:s,imageLink:c,imageWidth:l,imageHeight:u,marginTop:d,marginRight:f,marginBottom:p,marginLeft:m,imageLinkOpenInNewTab:h,align:g,classes:_,id:v}=t.values,y=e.o;if(y.image.editStyle&&N(n,`style`,r||null),i)N(n,`src`,i);else{P.safeRemove(n);return}n.style.borderRadius=a?a+`px`:``,N(n,`title`,o||null),N(n,`alt`,s||null),dy(e,n,c,h),py(n,l,u,t.sizeIsLocked),e.o.image.editMargins&&fy(e,d,f,p,m,n,t.marginIsLocked),y.image.editClass&&N(n,`class`,_||null),y.image.editId&&N(n,`id`,v||null),y.image.editAlign&&Wc(n,g)}var hy=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},gy=class extends Lf{constructor(){super(...arguments),this.state={image:new Image,sourceImage:new Image,get ratio(){let{naturalWidth:e,naturalHeight:t}=this.image;return e/t||1},sizeIsLocked:!0,marginIsLocked:!0,values:{style:``,imageSrc:``,borderRadius:0,imageTitle:``,imageAlt:``,imageLink:``,imageLinkOpenInNewTab:!1,imageWidth:0,imageHeight:0,marginTop:0,marginRight:0,marginBottom:0,marginLeft:0,classes:``,id:``,align:``}},this.activeTabState={activeTab:`Image`}}get form(){return new ry(this.j,this.state,this.activeTabState,{openImageEditor:()=>iy(this.j,this.state),openImagePopup:e=>ay(this.j,this.dialog,this.state,e)})}get dialog(){let{j:e}=this,t=e.dlg({minWidth:Math.min(400,screen.width),minHeight:590,buttons:[`fullsize`,`dialog.close`]}),n=this.__buttons;return n.check.onAction(()=>{my(e,this.state,this.state.sourceImage),e.synchronizeValues(),t.close()}),n.remove.onAction(()=>{e.s.removeNode(this.state.sourceImage),t.close()}),n.cancel.onAction(()=>{t.close()}),t.setHeader(e.i18n(`Image properties`)),t.setContent(this.form),t.setFooter([[n.cancel,n.remove],n.check]),e.e.on(t,`afterClose`,()=>{this.state.image.parentNode&&e.o.image.selectImageAfterClose&&e.s.select(this.state.sourceImage)}),t.setSize(e.o.image.dialogWidth),ms(e,t.container),t}get __buttons(){let{j:e}=this;return{check:Tu(e,`ok`,`Apply`,`primary`),remove:Tu(e,`bin`,`Delete`),cancel:Tu(e,`cancel`,`Cancel`)}}open(){return this.activeTabState.activeTab=`Image`,this.__lock(),this.dialog.open().setModal(!0).setPosition(),this.async.promise((e,t)=>uy(this.j,this.state).then(e,t)).catch(e=>{Cs(e)||this.dialog.message.error(e.message)}).finally(()=>this.__unlock()),!1}__lock(){this.dialog.lock(),this.form.setMod(`lock`,!0),Object.values(this.__buttons).forEach(e=>e.state.disabled=!0)}__unlock(){this.dialog.unlock(),this.form.setMod(`lock`,!1),Object.values(this.__buttons).forEach(e=>e.state.disabled=!1)}afterInit(e){let t=this;e.e.on(`afterConstructor changePlace`,()=>{e.e.off(e.editor,`.imageproperties`).on(e.editor,`dblclick.imageproperties`,n=>{let r=n.target;if(P.isTag(r,`img`))if(e.o.image.openOnDblClick){if(this.j.e.fire(`openOnDblClick`,r)===!1)return;t.state.sourceImage=r,t.state.image=r.cloneNode(!0),e.o.readonly||(n.stopImmediatePropagation(),n.preventDefault(),t.open())}else n.stopImmediatePropagation(),e.s.select(r)})}).on(`openImageProperties.imageproperties`,e=>{t.state.sourceImage=e,this.state.image=e.cloneNode(!0),this.open()})}async onStateValuesImageSrcChange(){let{image:e,values:t}=this.state;if(e.src)try{this.__lock();try{await e.decode()}catch(e){console.error(e)}if(this.state.sizeIsLocked&&Yo(t.imageWidth)){let e=parseFloat(t.imageWidth.toString());t.imageHeight=Math.round(e/this.state.ratio)}this.j.e.fire(`updateImageProperties.imageproperties`,e)}catch(e){this.j.alert(e.message)}finally{this.__unlock()}}beforeDestruct(e){var t,n;Object.values(Rs(this,`__buttons`)??{}
605).forEach(e=>e.destruct()),(t=Rs(this,`dialog`))==null||t.destruct(),(n=Rs(this,`form`))==null||n.destruct(),e.e.off(e.editor,`.imageproperties`).off(`.imageproperties`)}};hy([zs],gy.prototype,`form`,null),hy([zs],gy.prototype,`dialog`,null),hy([zs],gy.prototype,`__buttons`,null),hy([I(`state.image`)],gy.prototype,`onStateValuesImageSrcChange`,null),Ec.add(`imageProperties`,gy);var _y=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M352 832q0 14-9 23l-288 288q-9 9-23 9-13 0-22.5-9.5t-9.5-22.5v-576q0-13 9.5-22.5t22.5-9.5q14 0 23 9l288 288q9 9 9 23zm1440 480v192q0 13-9.5 22.5t-22.5 9.5h-1728q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1728q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1088q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1088q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1088q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1088q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1728q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1728q13 0 22.5 9.5t9.5 22.5z"/> </svg> `,vy=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M384 544v576q0 13-9.5 22.5t-22.5 9.5q-14 0-23-9l-288-288q-9-9-9-23t9-23l288-288q9-9 23-9 13 0 22.5 9.5t9.5 22.5zm1408 768v192q0 13-9.5 22.5t-22.5 9.5h-1728q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1728q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1088q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1088q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1088q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1088q13 0 22.5 9.5t9.5 22.5zm0-384v192q0 13-9.5 22.5t-22.5 9.5h-1728q-13 0-22.5-9.5t-9.5-22.5v-192q0-13 9.5-22.5t22.5-9.5h1728q13 0 22.5 9.5t9.5 22.5z"/> </svg> `,yy=(e,t)=>`${P.isCell(t)?`padding`:`margin`}${e===`rtl`?`Right`:`Left`}`;vu.set(`indent`,_y).set(`outdent`,vy),F.prototype.controls.indent={tooltip:`Increase Indent`},F.prototype.controls.outdent={isDisabled:e=>{let t=e.s.current();if(!t)return!0;if(e.o.tab?.tabInsideLiInsertNewList){let n=P.closest(t,`li`,e.editor);if(n){let t=P.closest(n,[`ul`,`ol`],e.editor);if(t&&P.closest(t,`li`,e.editor))return!1}}let n=P.closest(t,P.isBlock,e.editor);if(n){let t=yy(e.o.direction,n);return!n.style[t]||parseInt(n.style[t],10)<=0}return!0},tooltip:`Decrease Indent`},F.prototype.indentMargin=10;var by=(e,t,n,r)=>{if(!t||e.has(t))return;let i=yy(n.o.direction,t);e.add(t);let a=t.style[i]?parseInt(t.style[i],10):0;a+=n.o.indentMargin*(r===`outdent`?-1:1),t.style[i]=a>0?a+`px`:``,N(t,`style`)||N(t,`style`,null)};function xy(e){e.registerButton({name:`indent`,group:`indent`}).registerButton({name:`outdent`,group:`indent`});let t=t=>{let n=new Set,{enter:r,enterBlock:i}=e.o,a=r.toLowerCase()===`br`,o=e.s.current();return a&&e.s.isCollapsed()&&o?(by(n,P.wrapNextInline(o,i,e),e,t),!1):(e.s.eachSelection(o=>{e.s.save();let s=o?P.up(o,P.isBlock,e.editor):!1;if(!s&&o&&(s=fs(a?P.wrapNextInline:P.wrapInline,o,a?i:r.toLowerCase(),e)),!s)return e.s.restore(),!1;by(n,s,e,t),e.s.restore()}),e.synchronizeValues(),!1)};e.registerCommand(`indent`,{exec:t,hotkeys:[`ctrl+]`,`cmd+]`]}),e.registerCommand(`outdent`,{exec:t,hotkeys:[`ctrl+[`,`cmd+[`]})}Ec.add(`indent`,xy),vu.set(`justify`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1792 1344v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45zm0-384v128q0 26-19 45t-45 19h-1664q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1664q26 0 45 19t19 45z"/> </svg> `),F.prototype.controls.align={name:`left`,tooltip:`Align`,update(e,t){let n=t.control,r=e.s.current();if(r){let i=M(P.closest(r,P.isBlock,e.editor)||e.editor,`text-align`).toString();n.defaultValue&&n.defaultValue.indexOf(i)!==-1&&(i=`left`);let{list:a,data:o}=n;o&&o.currentValue!==i&&a&&(Go(a)?a[i]:a.includes(i))&&(e.o.textIcons||n.component===`select`?t.state.text=i:t.state.icon.name=i,o.currentValue=i)}},isActive:(e,t)=>
605{let n=e.s.current();if(!n||!t.control.defaultValue)return!1;let r=P.closest(n,P.isBlock,e.editor)||e.editor;return t.control.defaultValue.indexOf(M(r,`text-align`).toString())===-1},defaultValue:[`left`,`start`,`inherit`],data:{currentValue:`left`},list:[`center`,`left`,`right`,`justify`]},F.prototype.controls.center={command:`justifyCenter`,css:{"text-align":`center`},tooltip:`Align Center`},F.prototype.controls.justify={command:`justifyFull`,css:{"text-align":`justify`},tooltip:`Align Justify`},F.prototype.controls.left={command:`justifyLeft`,css:{"text-align":`left`},tooltip:`Align Left`},F.prototype.controls.right={command:`justifyRight`,css:{"text-align":`right`},tooltip:`Align Right`};function Sy(e){e.registerButton({name:`align`,group:`indent`});let t=t=>(e.s.focus(),e.s.eachSelection(n=>{if(!n)return;let r=P.up(n,P.isBlock,e.editor);r||=P.wrapInline(n,e.o.enterBlock,e),Kc(t,r)}),!1);e.registerCommand(`justifyfull`,t),e.registerCommand(`justifyright`,t),e.registerCommand(`justifyleft`,t),e.registerCommand(`justifycenter`,t)}Ec.add(`justify`,Sy);var Cy=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},wy=class extends Lf{afterInit(e){}beforeDestruct(e){}onKeyDownArrow(e){if(e.key!==`ArrowRight`||!this.j.selection.isCollapsed())return;let{endContainer:t,endOffset:n}=this.j.selection.range;if(P.isText(t)&&t.nodeValue?.length===n){let{parentNode:e}=t;P.isInlineBlock(e)&&!P.findNotEmptyNeighbor(e,!1,this.j.editor)&&P.after(e,this.j.createInside.text(`\xA0`))}}};Cy([I(`:keydown`)],wy.prototype,`onKeyDownArrow`,null),Ec.add(`keyArrowOutside`,wy),F.prototype.limitWords=!1,F.prototype.limitChars=!1,F.prototype.limitHTML=!1;var Ty=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ey=class extends Lf{afterInit(e){let{limitWords:t,limitChars:n}=e.o;if(e&&(t||n)){let t=null;e.e.off(`.limit`).on(`beforePaste.limit`,()=>{t=e.history.snapshot.make()}).on(`keydown.limit keyup.limit beforeEnter.limit`,this.checkPreventKeyPressOrPaste).on(`change.limit`,this.checkPreventChanging).on(`afterPaste.limit`,()=>{if(this.__shouldDenyInput(!0)&&t)return e.history.snapshot.restore(t),e.e.fire(`denyPaste.limit`),!1})}}shouldPreventInsertHTML(e){return e&&(ao.includes(e.key)||e.ctrlKey||e.metaKey)?!1:this.__shouldDenyInput(!1)}__shouldDenyInput(e){let{jodit:t}=this,{limitWords:n,limitChars:r}=t.o,i=t.o.limitHTML?t.value:t.text,a=this.__splitWords(i);if(n&&Dy(a.length,n,e))return t.e.fire(`denyWords.limit limit.limit`),!0;let o=t.o.countTextSpaces?i.replace(Fa(),``).replace(/[\r\n]/g,``).length:a.join(``).length,s=!!(r&&Dy(o,r,e));return s&&t.e.fire(`denyChars.limit limit.limit`),s}checkPreventKeyPressOrPaste(e){if(this.shouldPreventInsertHTML(e))return!1}checkPreventChanging(e,t){let{jodit:n}=this;this.__shouldDenyInput(!0)&&(n.value=t)}__splitWords(e){return e.replace(Fa(),``).split(Ra()).filter(e=>e.length)}beforeDestruct(e){e.e.off(`.limit`)}};Ty([A],Ey.prototype,`checkPreventKeyPressOrPaste`,null),Ty([A],Ey.prototype,`checkPreventChanging`,null);function Dy(e,t,n){return n?e>t:e>=t}Ec.add(`limit`,Ey);var Oy=`<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="M5.09668 6.99707H7.17358L4.17358 3.99707L1.17358 6.99707H3.09668V17.0031H1.15881L4.15881 20.0031L7.15881 17.0031H5.09668V6.99707Z"/> <path d="M22.8412 7H8.84119V5H22.8412V7Z"/> <path d="M22.8412 11H8.84119V9H22.8412V11Z"/> <path d="M8.84119 15H22.8412V13H8.84119V15Z"/> <path d="M22.8412 19H8.84119V17H22.8412V19Z"/> </svg> `;F.prototype.defaultLineHeight=null,vu.set(`line-height`,Oy),F.prototype.controls.lineHeight={command:`applyLineHeight`,tags:[`ol`],tooltip:`Line height`,list:[1,1.1,1.2,1.3,1.4,1.5,2],exec:(e,t,{control:n})=>vs(e,t,{control:n},e=>e)};var ky=s({default:()=>Ay}),Ay={"Line height":`Ø§Ø±ØªÙØ§Ø¹ Ø§ÙØ®Ø·`},jy=s({default:()=>My}),My={"Line height":`Výška Äáry`},Ny=s({default:()=>Py}
605),Py={"Line height":`Zeilenhöhe`},Fy=s({default:()=>Iy}),Iy={"Line height":`Altura de la lÃnea`},Ly=s({default:()=>Ry}),Ry={"Line height":`Ø§Ø±ØªÙØ§Ø¹ خط`},zy=s({default:()=>By}),By={"Line height":`Rivin korkeus`},Vy=s({default:()=>Hy}),Hy={"Line height":`Hauteur de ligne`},Uy=s({default:()=>Wy}),Wy={"Line height":`×××× ×©×ר×`},Gy=s({default:()=>Ky}),Ky={"Line height":`Vonal magassága`},R=s({default:()=>qy}),qy={"Line height":`Tinggi baris`},Jy=s({default:()=>Yy}),Yy={"Line height":`Altezza linea`},Xy=s({default:()=>Zy}),Zy={"Line height":`ã©ã¤ã³ã®é«ã`},Qy=s({default:()=>$y}),$y={"Line height":`ì ëì´`},eb=s({default:()=>tb}),tb={"Line height":`ÐÑÑааÑÐ½Ñ Ó©Ð½Ð´Ó©Ñ`},nb=s({default:()=>rb}),rb={"Line height":`Lijnhoogte`},ib=s({default:()=>ab}),ab={"Line height":`WysokoÅÄ linii`},ob=s({default:()=>sb}),sb={"Line height":`Altura da linha`},cb=s({default:()=>lb}),lb={"Line height":`ÐÑÑоÑа линии`},ub=s({default:()=>db}),db={"Line height":`Ãizgi yüksekliÄi`},fb=s({default:()=>pb}),pb={"Line height":`ÐиÑоÑа лÑнÑÑ`},mb=s({default:()=>hb}),hb={"Line height":`线é«`},gb=s({default:()=>_b}),_b={"Line height":`è¡é«`},vb=s({ar:()=>ky,cs_cz:()=>jy,de:()=>Ny,es:()=>Fy,fa:()=>Ly,fi:()=>zy,fr:()=>Vy,he:()=>Uy,hu:()=>Gy,id:()=>R,it:()=>Jy,ja:()=>Xy,ko:()=>Qy,mn:()=>eb,nl:()=>nb,pl:()=>ib,pt_br:()=>ob,ru:()=>cb,tr:()=>ub,ua:()=>fb,zh_cn:()=>mb,zh_tw:()=>gb}),yb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},bb=class extends Lf{constructor(e){super(e),this.buttons=[{name:`lineHeight`,group:`font`}],Oc(vb)}afterInit(e){M(e.editor,{lineHeight:e.o.defaultLineHeight}),e.registerCommand(`applyLineHeight`,this.applyLineHeight)}applyLineHeight(e,t,n){let{s:r,createInside:i,editor:a,o}=this.j;r.isFocused()||r.focus(),r.save();let s,c=e=>{let t=P.closest(e,P.isBlock,a);t||=P.wrap(e,o.enter,i);let r=M(t,`lineHeight`);s===void 0&&(s=r.toString()!==n.toString()),M(t,`lineHeight`,s?n:null)};try{if(r.isCollapsed()){let e=i.fake();r.insertNode(e,!1,!1),c(e),P.safeRemove(e)}else r.eachSelection(c)}finally{r.restore()}}beforeDestruct(e){M(e.editor,{lineHeight:null})}};yb([A],bb.prototype,`applyLineHeight`,null),Ec.add(`lineHeight`,bb),F.prototype.mediaFakeTag=`jodit-media`,F.prototype.mediaInFakeBlock=!0,F.prototype.mediaBlocks=[`video`,`audio`];function xb(e){let t=`jodit_fake_wrapper`,{mediaFakeTag:n,mediaBlocks:r,mediaInFakeBlock:i}=e.options,a=r=>{if(r.parentNode&&N(r.parentNode,`data-jodit_iframe_wrapper`))r=r.parentNode;else{let i=e.createInside.element(n,{"data-jodit-temp":1,contenteditable:!1,draggable:!0,[`data-${t}`]:1});N(i,`style`,N(r,`style`)),i.style.display=r.style.display===`inline-block`?`inline-block`:`block`,i.style.width=r.offsetWidth+`px`,i.style.height=r.offsetHeight+`px`,r.parentNode&&r.parentNode.insertBefore(i,r),i.appendChild(r),r=i}e.e.off(r,`mousedown.select touchstart.select`).on(r,`mousedown.select touchstart.select`,()=>{e.s.setCursorAfter(r)})};i&&e.e.on(`afterGetValueFromEditor`,e=>{let r=RegExp(`<${n}[^>]+data-${t}[^>]+>([^]+?)</${n}>`,`ig`);r.test(e.value)&&(e.value=e.value.replace(r,`$1`))}).on(`change afterInit afterSetMode changePlace`,e.async.debounce(()=>{!e.isDestructed&&e.getMode()!==2&&Pc(r.join(`,`),e.editor).forEach(e=>{is(e,t)||(is(e,t,!0),a(e))})},e.defaultTimeout))}Ec.add(`media`,xb),F.prototype.mobileTapTimeout=300,F.prototype.toolbarAdaptive=!0,F.prototype.buttonsMD=[{group:`font-style`,buttons:[]},{group:`list`,buttons:[]},{group:`font`,buttons:[]},`---`,{group:`media`,buttons:[]},` 606`,{group:`state`,buttons:[]},{group:`insert`,buttons:[]},{group:`indent`,buttons:[]},{group:`color`,buttons:[]},`---`,{group:`history`,buttons:[]},{group:`other`,buttons:[]},`|`,`dots`],F.prototype.buttonsSM=[{group:`font-style`,buttons:[]},{group:`list`,buttons:[]},`---`,{group:`font`,buttons:[]},` 607`,{group:`state`,buttons:[]},{group:`indent`,buttons:[]},{group:`color`,buttons:[]},`---`,{group:`history`,buttons:[]},`|`,`dots`],F.prototype.buttonsXS=[{group:`font-style`,buttons:[]},{group:`list`,buttons:[]},`---`,{group:`font`,buttons:[]},{group:`color`,buttons:[]},`---`,`dots`],F.prototype.controls.dots={mode:3,popup:(e,t,n,r)=>{let i=r.control.data;return i===void 0&&(i={toolbar:Ld(e),rebuild:()=>
607{if(r){let t=e.e.fire(`getDiffButtons.mobile`,r.closest(tp));if(t&&i){i.toolbar.build(Ys(t));let n=(e.toolbar?.firstButton)?.container.offsetWidth||36;i.toolbar.container.style.width=(n+4)*3+`px`}}}},r.control.data=i),i.rebuild(),i.toolbar},tooltip:`Show all`};var Sb=e=>e===`|`||e===`---`||e===` 608`;function Cb(e,t){let n=ld(Ys(t.o.buttons),t),r=t.getRegisteredButtonGroups(),i=!1,a=!1,o=[];for(let t of e)if(cd(t)){let e=[...t.buttons,...r[t.group]??[]],a=e.filter(e=>n.has(e));a.length!==e.length&&(i=!0),o.push(...a)}else Sb(t)?o.push(t):t===`dots`?a=!0:n.has(t)?o.push(t):i=!0;if(!i)return e;let s=[];for(let e of o)Sb(e)&&(s.length===0||Sb(s[s.length-1]))||s.push(e);for(;s.length&&Sb(s[s.length-1]);)s.pop();if(a){let e=ld(s,t);Io(n).some(t=>!e.has(t))&&s.push(`dots`)}return s}function wb(e){let t=0,n=Ys(e.o.buttons);e.o.mobileTapTimeout&&e.e.on(`touchend`,n=>{if(n.changedTouches&&n.changedTouches.length){let r=new Date().getTime(),i=r-t;i>e.o.mobileTapTimeout&&(t=r,i<e.o.mobileTapTimeout*1.5&&e.s.insertCursorAtPoint(n.clientX,n.clientY))}}),e.e.on(`getDiffButtons.mobile`,t=>{if(t===e.toolbar){let t=ld(Ys(e.o.buttons),e),r=ld(n,e);return Io(t).reduce((e,t)=>(r.has(t)||e.push(t),e),[])}}),e.o.toolbarAdaptive&&e.e.on(`resize afterInit recalcAdaptive changePlace afterAddPlace`,()=>{var t;if(!e.o.toolbar)return;let r=(e.container.parentElement??e.container).offsetWidth,i=e.isFullSize||r>=e.o.sizeLG?Ys(e.o.buttons):r>=e.o.sizeMD?Cb(Ys(e.o.buttonsMD),e):r>=e.o.sizeSM?Cb(Ys(e.o.buttonsSM),e):Cb(Ys(e.o.buttonsXS),e);i.toString()!==n.toString()&&(n=i,e.e.fire(`closeAllPopups`),(t=e.toolbar)==null||t.setRemoveButtons(e.o.removeButtons).build(n.concat(e.o.extraButtons)))}).on(e.ow,`load resize`,()=>e.e.fire(`recalcAdaptive`))}Ec.add(`mobile`,wb);function Tb(e){e=e.replace(/<meta[^>]+?>/g,``);let t=e.search(/<!--StartFragment-->/i);t!==-1&&(e=e.substring(t+20));let n=e.search(/<!--EndFragment-->/i);return n!==-1&&(e=e.substring(0,n)),e}function Eb(e){return!!(e&&e.type===`drop`)}function Db(e,t,n){if(t.isInDestruct)return;Eb(e)&&t.s.insertCursorAtPoint(e.clientX,e.clientY);let r=t.e.fire(`beforePasteInsert`,n);!Mo(r)&&(j(r)||Fs(r)||P.isNode(r))&&(n=r),j(n)&&(n=Tb(n)),t.s.insertHTML(n)}function Ob(e){let t=e.types,n=``;if(Ao(t)||{}.toString.call(t)===`[object DOMStringList]`)for(let e=0;e<t.length;e+=1)n+=t[e]+`;`;else n=(t||so).toString()+`;`;return n}function kb(e,t,n,r,i){if(e.e.fire(`beforeOpenPasteDialog`,t,n,r,i)===!1)return;let a=e.confirm(`<div style="word-break: normal; white-space: normal">${e.i18n(t)}</div>`,e.i18n(n)),o=i.map(({text:t,value:n})=>Tu(e,{text:t,name:t.toLowerCase(),tabIndex:0}).onAction(()=>{a.close(),r(n)}));a.e.one(a,`afterClose`,()=>{e.s.isFocused()||e.s.focus()});let s=Tu(e,{text:`Cancel`,tabIndex:0}).onAction(()=>{a.close()});return a.setFooter([...o,s]),o[0].focus(),o[0].state.variant=`primary`,e.e.fire(`afterOpenPasteDialog`,a,t,n,r,i),a}F.prototype.askBeforePasteHTML=!0,F.prototype.processPasteHTML=!0,F.prototype.scrollToPastedContent=!0,F.prototype.pasteExcludeStripTags=[`br`,`hr`],F.prototype.pasteHTMLActionList=[{value:fo,text:`Keep`},{value:mo,text:`Insert as Text`},{value:ho,text:`Insert only Text`}],F.prototype.memorizeChoiceWhenPasteFragment=!1,F.prototype.nl2brInPlainText=!0;var Ab=`pasteStorage`;F.prototype.controls.paste={tooltip:`Paste from clipboard`,async exec(e,t,{control:n}){if(n.name===Ab){e.execCommand(`showPasteStorage`);return}e.s.focus();let r=``,i=!0;if(navigator.clipboard){try{let e=await navigator.clipboard.read();if(e&&e.length){let t=e[0],n=t.types?.includes(co)?co:so,i=await t.getType(n);r=await new Response(i).text()}i=!1}catch{}if(i)try{r=await navigator.clipboard.readText(),i=!1}catch{}}i&&=(r=e.buffer.get(`clipboard`)||``,r.length===0);let a=e.value;i?(e.ed.execCommand(`paste`),i=a===e.value,!i&&e.e.fire(`afterPaste`)):r.length?(Db(null,e,r),e.e.fire(`afterPaste`)):i&&e.alert(`Your browser doesn't support direct access to the clipboard.`,()=>void e.s.focus())},list:{[Ab]:`Paste Storage`},isChildDisabled(e){return e.e.fire(`pasteStorageList`)<2}};var jb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Mb=class extends Lf{constructor(){super(...arguments),this.pasteStack=new _l(20),this._isDialogOpened=!1}afterInit(e){e.e.on(`paste.paste`,this.onPaste).on(`pasteStack.paste`,e=>this.pasteStack.push(e)),this.j.e.on(`processPaste.paste`,this.onProcessPasteReplaceNl2Br)}beforeDestruct(e){e.e.off(`paste.paste`,this.onPaste).off(`processPaste.paste`,this.onProcessPasteReplaceNl2Br).off(`.paste`)}onPaste(e){try{if(this.customPasteProcess(e)===!1||this.j.e.fire(`beforePaste`,e)===!1)return e.preventDefault(),!1;this.defaultPasteProcess(e)}finally{this.j.e.fire(`afterPaste`,e)}}customPasteProcess(e){if(!this.j.o.processPasteHTML)return;let t=ys(e),n=[t?.getData(so),t?.getData(co),t?.getData(lo)];for(let t of n)if(Lo(t)&&(this.j.e.fire(`processHTML`,e,t,{plain:n[0],html:n[1],rtf:n[2]})||this.processHTML(e,t)))return!1}defaultPasteProcess(e){let t=ys(e),n=t?.getData(co)||t?.getData(so);if(t&&n&&zo(n)!==``){let r=this.j.e.fire(`processPaste`,e,n,Ob(t));r!==void 0&&(n=r),(j(n)||P.isNode(n))&&this.__insertByType(e,n,this.j.o.defaultActionOnPaste),e.preventDefault(),e.stopPropagation()}}processHTML(e,t){if(!this.j.o.askBeforePasteHTML)return!1;if(this.j.o.memorizeChoiceWhenPasteFragment){let n=this.pasteStack.find(e=>e.html===t);if(n)return this.__insertByType(e,t,n.action||this.j.o.defaultActionOnPaste),!0}if(this._isDialogOpened)return!0;let n=kb(this.j,`Your code is similar to HTML. Keep as HTML?`,`Paste as HTML`,n=>{this._isDialogOpened=!1,this.__insertByType(e,t,n)},this.j.o.pasteHTMLActionList);return n&&(this._isDialogOpened=!0,n.e.on(`beforeClose`,()=>{this._isDialogOpened=!1})),!0}__insertByType(e,t,n){if(this.pasteStack.push({html:t,action:n}),j(t))switch(this.j.buffer.set(To,t),n){case po:t=Vc(t);break;case ho:t=Al(t,this.j.ed,new Set(this.j.o.pasteExcludeStripTags),this.j.o.nl2brInPlainText);break;case mo:t=Hc(t),this.j.o.nl2brInPlainText&&(t=Uc(t));break;default:{let r=this.j.e.fire(`onCustomPasteHTMLOption`,n,t,e);typeof r==`string`&&(t=r)}}Db(e,this.j,t)}onProcessPasteReplaceNl2Br(e,t,n){if(n===so+`;`&&!Lo(t)){let e=Hc(t);return this.j.o.nl2brInPlainText?Uc(e):e}}};jb([A],Mb.prototype,`onPaste`,null),jb([A],Mb.prototype,`onProcessPasteReplaceNl2Br`,null),Ec.add(`paste`,Mb),F.prototype.askBeforePasteFromWord=!0,F.prototype.processPasteFromWord=!0,F.prototype.defaultActionOnPasteFromWord=null,F.prototype.pasteFromWordActionList=[{value:fo,text:`Keep`},{value:mo,text:`Clean`},{value:ho,text:`Insert only Text`}];var Nb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Pb=class extends Lf{afterInit(e){}beforeDestruct(e){}processWordHTML(e,t,n){let{j:r}=this,{processPasteFromWord:i,askBeforePasteFromWord:a,defaultActionOnPasteFromWord:o,defaultActionOnPaste:s,pasteFromWordActionList:c}=r.o;return i&&Ds(t)?(a?kb(r,`The pasted content is coming from a Microsoft Word/Excel document. Do you want to keep the format or clean it up?`,`Word Paste Detected`,r=>{this.insertFromWordByType(e,t,r,n)},c):this.insertFromWordByType(e,t,o||s,n),!0):!1}insertFromWordByType(e,t,n,r){switch(n){case fo:{t=Bc(t);let e=this.j.events?.fire(`beautifyHTML`,t);j(e)&&(t=e);break}case mo:t=Vc(t);break;case ho:t=Al(Vc(t),this.j.ed,new Set(this.j.o.pasteExcludeStripTags),this.j.o.nl2brInPlainText)}Db(e,this.j,t)}};Pb.requires=[`paste`],Nb([I(`:processHTML`)],Pb.prototype,`processWordHTML`,null),Ec.add(`pasteFromWord`,Pb);var Fb=class extends Lf{constructor(){super(...arguments),this.currentIndex=0,this.list=[],this.container=null,this.listBox=null,this.previewBox=null,this.dialog=null,this.paste=()=>{if(this.j.s.focus(),this.j.s.insertHTML(this.list[this.currentIndex]),this.currentIndex!==0){let e=this.list[0];this.list[0]=this.list[this.currentIndex],this.list[this.currentIndex]=e}this.dialog&&this.dialog.close(),this.j.synchronizeValues(),this.j.e.fire(`afterPaste`)},this.onKeyDown=e=>{let t=this.currentIndex;if([`ArrowUp`,`ArrowDown`,`Enter`].indexOf(e.key)!==-1){if(e.key===`ArrowUp`&&(t===0?t=this.list.length-1:--t),e.key===`ArrowDown`&&(t===this.list.length-1?t=0:t+=1),e.key===`Enter`){this.paste();return}t!==this.currentIndex&&this.selectIndex(t),e.stopImmediatePropagation(),e.preventDefault()}}
608,this.selectIndex=e=>{this.listBox&&Io(this.listBox.childNodes).forEach((t,n)=>{t.classList.remove(`jodit_active`),e===n&&this.previewBox&&(t.classList.add(`jodit_active`),this.previewBox.innerHTML=this.list[e],t.focus())}),this.currentIndex=e},this.showDialog=()=>{this.list.length<2||(this.dialog||this.createDialog(),this.listBox&&(this.listBox.innerHTML=``),this.previewBox&&(this.previewBox.innerHTML=``),this.list.forEach((e,t)=>{let n=this.j.c.element(`a`);n.textContent=t+1+`. `+e.replace(Ra(),``),this.j.e.on(n,`keydown`,this.onKeyDown),N(n,`href`,`#`),N(n,`data-index`,t.toString()),N(n,`tab-index`,`-1`),this.listBox&&this.listBox.appendChild(n)}),this.dialog&&this.dialog.open(),this.j.async.setTimeout(()=>{this.selectIndex(0)},100))}}createDialog(){this.dialog=this.j.dlg();let e=Tu(this.j,`paste`,`Paste`,`primary`);e.onAction(this.paste);let t=Tu(this.j,``,`Cancel`);t.onAction(this.dialog.close),this.container=this.j.c.div(),this.container.classList.add(`jodit-paste-storage`),this.listBox=this.j.c.div(),this.previewBox=this.j.c.div(),this.container.appendChild(this.listBox),this.container.appendChild(this.previewBox),this.dialog.setHeader(this.j.i18n(`Choose Content to Paste`)),this.dialog.setContent(this.container),this.dialog.setFooter([e,t]),this.j.e.on(this.listBox,`click dblclick`,e=>{let t=e.target;return P.isTag(t,`a`)&&t.hasAttribute(`data-index`)&&this.selectIndex(parseInt(N(t,`-index`)||`0`,10)),e.type===`dblclick`&&this.paste(),!1})}afterInit(){this.j.e.off(`afterCopy.paste-storage`).on(`pasteStorageList.paste-storage`,()=>this.list.length).on(`afterCopy.paste-storage`,e=>{this.list.indexOf(e)!==-1&&this.list.splice(this.list.indexOf(e),1),this.list.unshift(e),this.list.length>5&&(this.list.length=5)}),this.j.registerCommand(`showPasteStorage`,{exec:this.showDialog,hotkeys:[`ctrl+shift+v`,`cmd+shift+v`]})}beforeDestruct(){this.dialog&&this.dialog.destruct(),this.j.e.off(`.paste-storage`),P.safeRemove(this.previewBox),P.safeRemove(this.listBox),P.safeRemove(this.container),this.container=null,this.listBox=null,this.previewBox=null,this.dialog=null,this.list=[]}};Ec.add(`pasteStorage`,Fb),F.prototype.controls.preview={icon:`eye`,command:`preview`,mode:3,tooltip:`Preview`};function Ib(e){e.registerButton({name:`preview`}),e.registerCommand(`preview`,(t,n,r)=>{let i=e.dlg();i.setSize(1024,600).open(``,e.i18n(`Preview`)).setModal(!0);let[,a]=pl(e,r,`px`,i.getElm(`content`));i.e.on(i,`afterClose`,a)})}Ec.add(`preview`,Ib);
608function Lb(e){let t=(e,t=e.ownerDocument.styleSheets)=>Io(t).map(e=>{try{return Io(e.cssRules)}catch{}return[]}).flat().filter(t=>{try{return!!(t&&e.matches(t.selectorText))}catch{}return!1});class n{constructor(n,r,i){this.css={};let a=i||{},o=t=>{let n=t.selectorText.split(`,`).map(e=>e.trim()).sort().join(`,`);this.css[n]||(this.css[n]={});let r=t.style.cssText.split(/;(?![A-Za-z0-9])/);for(let t=0;t<r.length;t++){if(!r[t])continue;let i=r[t].split(`:`);i[0]=i[0].trim(),i[1]=i[1].trim(),this.css[n][i[0]]=i[1].replace(/var\(([^)]+)\)/g,(t,n)=>{let[r,i]=n.split(`,`);return(e.ew.getComputedStyle(e.editor).getPropertyValue(r.trim())||i||t).trim()})}};(()=>{let i=n.innerHeight,s=r.createTreeWalker(e.editor,NodeFilter.SHOW_ELEMENT,()=>NodeFilter.FILTER_ACCEPT);for(;s.nextNode();){let e=s.currentNode;if(e.getBoundingClientRect().top<i||a.scanFullPage){let n=t(e);if(n)for(let e=0;e<n.length;e++)o(n[e])}}})()}generateCSS(){let e=``;for(let t in this.css)if(!/:not\(/.test(t)){e+=t+` { `;for(let n in this.css[t])e+=n+`: `+this.css[t][n]+`; `;e+=`} 609`}return e}}try{return new n(e.ew,e.ed,{scanFullPage:!0}).generateCSS()}catch{}return``}vu.set(`print`,`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M448 1536h896v-256h-896v256zm0-640h896v-384h-160q-40 0-68-28t-28-68v-160h-640v640zm1152 64q0-26-19-45t-45-19-45 19-19 45 19 45 45 19 45-19 19-45zm128 0v416q0 13-9.5 22.5t-22.5 9.5h-224v160q0 40-28 68t-68 28h-960q-40 0-68-28t-28-68v-160h-224q-13 0-22.5-9.5t-9.5-22.5v-416q0-79 56.5-135.5t135.5-56.5h64v-544q0-40 28-68t68-28h672q40 0 88 20t76 48l152 152q28 28 48 76t20 88v256h64q79 0 135.5 56.5t56.5 135.5z"/> </svg> `),F.prototype.controls.print={exec:e=>{let t=e.create.element(`iframe`);Object.assign(t.style,{position:`fixed`,right:0,bottom:0,width:0,height:0,border:0}),Ac(e,F).appendChild(t);let n=()=>{e.e.off(e.ow,`mousemove`,n),P.safeRemove(t)},r=t.contentWindow;if(r){e.e.on(r,`onbeforeunload onafterprint`,n).on(e.ow,`mousemove`,n),e.o.iframe?(e.e.fire(`generateDocumentStructure.iframe`,r.document,e),r.document.body.innerHTML=e.value):(r.document.write(`<!doctype html><html lang="`+cl(e.o.language)+`"><head><title></title></head><style>`+Lb(e)+`</style><body></body></html>`),r.document.close(),pl(e,void 0,`px`,r.document.body));let t=r.document.createElement(`style`);t.innerHTML=`@media print { 610 body { 611 -webkit-print-color-adjust: exact; 612 } 613 }`,r.document.head.appendChild(t),r.focus(),r.print()}},mode:3,tooltip:`Print`};function Rb(e){e.registerButton({name:`print`})}Ec.add(`print`,Rb),F.prototype.tableAllowCellResize=!0;var zb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Bb=`table_processor_observer-resize`,Vb=class extends Lf{constructor(){super(...arguments),this.selectMode=!1,this.resizeDelta=0,this.createResizeHandle=()=>{this.resizeHandler||(this.resizeHandler=this.j.c.div(`jodit-table-resizer`),this.j.e.on(this.resizeHandler,`mousedown.table touchstart.table`,this.onHandleMouseDown).on(this.resizeHandler,`mouseenter.table`,()=>{this.j.async.clearTimeout(this.hideTimeout)}))},this.hideTimeout=0,this.drag=!1,this.minX=0,this.maxX=0,this.startX=0}get module(){return this.j.getInstance(`Table`,this.j.o)}get isRTL(){return this.j.o.direction===`rtl`}showResizeHandle(){this.j.async.clearTimeout(this.hideTimeout),this.j.workplace.appendChild(this.resizeHandler)}hideResizeHandle(){this.hideTimeout=this.j.async.setTimeout(()=>{P.safeRemove(this.resizeHandler)},{timeout:this.j.defaultTimeout,label:`hideResizer`})}onHandleMouseDown(e){if(this.j.isLocked)return;this.drag=!0,this.j.e.on(this.j.ow,`mouseup.resize-cells touchend.resize-cells`,this.onMouseUp).on(this.j.ew,`mousemove.table touchmove.table`,this.onMouseMove),this.startX=e.clientX,this.j.lock(Bb),this.resizeHandler.classList.add(`jodit-table-resizer_moved`);let t,n=this.workTable.getBoundingClientRect();if(this.minX=0,this.maxX=1e6,this.wholeTable!=null)n=this.workTable.parentNode.getBoundingClientRect(),this.minX=n.left,this.maxX=this.minX+n.width;else{let e=this.module.formalCoordinate(this.workTable,this.workCell,!0);this.module.formalMatrix(this.workTable,(n,r,i)=>{e[1]===i&&(t=n.getBoundingClientRect(),this.minX=Math.max(t.left+5/2,this.minX)),e[1]+(this.isRTL?-1:1)===i&&(t=n.getBoundingClientRect(),this.maxX=Math.min(t.left+t.width-5/2,this.maxX))})}return!1}onMouseMove(e){if(!this.drag)return;this.j.e.fire(`closeAllPopups`);let t=e.clientX,n=Gl(this.resizeHandler.parentNode||this.j.od.documentElement,this.j,this.j.od,!0);t<this.minX&&(t=this.minX),t>this.maxX&&(t=this.maxX),this.resizeDelta=t-this.startX+(this.j.o.iframe?n.left
613:0),this.resizeHandler.style.left=t-(this.j.o.iframe?0:n.left)+`px`;let r=this.j.s.sel;r&&r.removeAllRanges()}onMouseUp(e){(this.selectMode||this.drag)&&(this.selectMode=!1,this.j.unlock()),!(!this.resizeHandler||!this.drag)&&(this.drag=!1,this.j.e.off(this.j.ew,`mousemove.table touchmove.table`,this.onMouseMove),this.resizeHandler.classList.remove(`jodit-table-resizer_moved`),this.startX!==e.clientX&&(this.wholeTable==null?this.resizeColumns():this.resizeTable()),this.j.synchronizeValues(),this.j.s.focus())}resizeColumns(){let e=this.resizeDelta,t=[],n=this.module;n.setColumnWidthByDelta(this.workTable,n.formalCoordinate(this.workTable,this.workCell,!0)[1],e,!0,t);let r=fs(this.isRTL?P.prev:P.next,this.workCell,P.isCell,this.workCell.parentNode);n.setColumnWidthByDelta(this.workTable,n.formalCoordinate(this.workTable,r)[1],-e,!1,t)}resizeTable(){let e=this.resizeDelta*(this.isRTL?-1:1),t=this.workTable.offsetWidth,n=zl(this.workTable.parentNode,this.j.ew),r=!this.wholeTable;if(this.isRTL?!r:r)this.workTable.style.width=(t+e)/n*100+`%`;else{let r=this.isRTL?`marginRight`:`marginLeft`,i=parseInt(this.j.ew.getComputedStyle(this.workTable)[r]||`0`,10);this.workTable.style.width=(t-e)/n*100+`%`,this.workTable.style[r]=(i+e)/n*100+`%`}}setWorkCell(e,t=null){this.wholeTable=t,this.workCell=e,this.workTable=P.up(e,e=>P.isTag(e,`table`),this.j.editor)}calcHandlePosition(e,t,n=0,r=0){let i=Gl(t,this.j,this.j.ed);if(n>5&&n<i.width-5){this.hideResizeHandle();return}let a=Gl(this.j.workplace,this.j,this.j.od,!0),o=Gl(e,this.j,this.j.ed);if(this.resizeHandler.style.left=(n<=5?i.left:i.left+i.width)-a.left+r+`px`,Object.assign(this.resizeHandler.style,{height:o.height+`px`,top:o.top-a.top+`px`}),this.showResizeHandle(),n<=5){let e=fs(this.isRTL?P.next:P.prev,t,P.isCell,t.parentNode);this.setWorkCell(e||t,!e||null)}else{let e=fs(this.isRTL?P.prev:P.next,t,P.isCell,t.parentNode);this.setWorkCell(t,e?null:!1)}}afterInit(e){e.o.tableAllowCellResize&&e.e.off(this.j.ow,`.resize-cells`).off(`.resize-cells`).on(`change.resize-cells afterCommand.resize-cells afterSetMode.resize-cells`,()=>{Pc(`table`,e.editor).forEach(this.observe)}).on(this.j.ow,`scroll.resize-cells`,()=>{if(!this.drag)return;let t=P.up(this.workCell,e=>P.isTag(e,`table`),e.editor);if(t){let e=t.getBoundingClientRect();this.resizeHandler.style.top=e.top+`px`}}).on(`beforeSetMode.resize-cells`,()=>{let t=this.module;
613t.getAllSelectedCells().forEach(n=>{t.removeSelection(n),t.normalizeTable(P.closest(n,`table`,e.editor))})})}observe(e){is(e,Bb)||(is(e,Bb,!0),this.j.e.on(e,`mouseleave.resize-cells`,e=>{this.resizeHandler&&this.resizeHandler!==e.relatedTarget&&this.hideResizeHandle()}).on(e,`mousemove.resize-cells touchmove.resize-cells`,this.j.async.throttle(t=>{if(this.j.isLocked)return;let n=P.up(t.target,P.isCell,e);n&&this.calcHandlePosition(e,n,t.offsetX)},{timeout:this.j.defaultTimeout})),this.createResizeHandle())}beforeDestruct(e){e.events&&(e.e.off(this.j.ow,`.resize-cells`),e.e.off(`.resize-cells`))}};zb([A],Vb.prototype,`onHandleMouseDown`,null),zb([A],Vb.prototype,`onMouseMove`,null),zb([A],Vb.prototype,`onMouseUp`,null),zb([A],Vb.prototype,`observe`,null),Ec.add(`resizeCells`,Vb),F.prototype.allowResizeX=!1,F.prototype.allowResizeY=!0;var Hb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Ub=class extends Lf{constructor(){super(...arguments),this.isResized=!1,this.start={x:0,y:0,w:0,h:0},this.handle=this.j.c.div(`jodit-editor__resize`,vu.get(`resize_handler`))}afterInit(e){let{height:t,width:n,allowResizeX:r}=e.o,{allowResizeY:i}=e.o;t===`auto`&&n!==`auto`&&(i=!1),(t!==`auto`||n!==`auto`)&&(r||i)&&(e.statusbar.setMod(`resize-handle`,!0),e.statusbar.show(),e.e.on(`toggleFullSize.resizeHandler`,()=>{this.handle.style.display=e.isFullSize?`none`:`block`}).on(this.handle,`mousedown touchstart`,this.onHandleResizeStart).on(e.ow,`mouseup touchend`,this.onHandleResizeEnd),e.container.appendChild(this.handle))}onHandleResizeStart(e){this.isResized=!0,this.start.x=e.clientX,this.start.y=e.clientY,this.start.w=this.j.container.offsetWidth,this.start.h=this.j.container.offsetHeight,this.j.lock(),this.j.e.on(this.j.ow,`mousemove touchmove`,this.onHandleResize),e.preventDefault()}onHandleResize(e){if(!this.isResized)return;let{clientX:t,clientY:n}=e;if(e.view===this.j.ew&&this.j.ew!==this.j.ow){let e=Gl(this.j.workplace,this.j,this.j.od,!0);t+=e.left,n+=e.top}this.j.o.allowResizeY&&this.j.e.fire(`setHeight`,this.start.h+n-this.start.y),this.j.o.allowResizeX&&this.j.e.fire(`setWidth`,this.start.w+t-this.start.x),this.j.e.fire(`resize`)}onHandleResizeEnd(){this.isResized&&(this.isResized=!1,this.j.e.off(this.j.ow,`mousemove touchmove`,this.onHandleResize),this.j.unlock())}beforeDestruct(){P.safeRemove(this.handle),this.j.e.off(this.j.ow,`mouseup touchsend`,this.onHandleResizeEnd)}};Ub.requires=[`size`],Hb([A],Ub.prototype,`onHandleResizeStart`,null),Hb([A],Ub.prototype,`onHandleResize`,null),Hb([A],Ub.prototype,`onHandleResizeEnd`,null),Ec.add(`resizeHandler`,Ub),F.prototype.allowResizeTags=new Set([`img`,`iframe`,`table`,`jodit`]),F.prototype.resizer={showSize:!0,hideSizeTimeout:1e3,forImageChangeAttributes:!0,min_width:10,min_height:10,useAspectRatio:new Set([`img`])};var Wb=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Gb=`__jodit-resizer_binded`,Kb=class extends Lf{constructor(){super(...arguments),this.LOCK_KEY=`resizer`,this.element=null,this.isResizeMode=!1,this.isShown=!1,this.startX=0,this.startY=0,this.width=0,this.height=0,this.ratio=0,this.rect=this.j.c.fromHTML(`<div title="${this.j.i18n(`Press Alt for custom resizing`)}" class="jodit-resizer"> 614 <div class="jodit-resizer__top-left"></div> 615 <div class="jodit-resizer__top-right"></div> 616 <div class="jodit-resizer__bottom-right"></div> 617 <div class="jodit-resizer__bottom-left"></div> 618 <span>100x100</span> 619 </div>`),this.sizeViewer=this.rect.getElementsByTagName(`span`)[0],this.pointerX=0,this.pointerY=0,this.isAltMode=!1,this.onClickElement=e=>{this.isResizeMode||(this.element!==e||!this.isShown)&&(this.element=e,this.show(),P.isTag(this.element,`img`)&&!this.element.complete&&this.j.e.one(this.element,`load`,this.updateSize))},this.updateSize=()=>{if(!(this.isInDestruct||!this.isShown)&&this.element&&this.rect){let e=this.getWorkplacePosition(),t=Gl(this.element,this.j,this.j.ed),n=parseInt(this.rect.style.left||`0`,10),r=parseInt(this.rect.style.top||`0`,10),i=this.rect.offsetWidth,a=this.rect.offsetHeight,o=t.top-e.top,s=t.left-e.left;(r!==o||n!==s||i!==this.element.offsetWidth||a!==this.element.offsetHeight)&&(M(this.rect,{top:o,left:s,width:this.element.offsetWidth,height:this.element.offsetHeight}),this.j.events&&(this.j.e.fire(this.element,`changesize`),isNaN(n)||this.j.e.fire(`resize`)))}},this.hideSizeViewer=()=>{this.sizeViewer.style.opacity=`0`}}afterInit(e){Pc(`div`,this.rect).forEach(t=>{e.e.on(t,`mousedown.resizer touchstart.resizer`,this.onStartResizing.bind(this,t))}),Mc.on(`hideHelpers`,this.hide),e.e.on(`readonly`,e=>{e&&this.hide()}).on(`afterInit changePlace`,this.addEventListeners.bind(this)).on(`afterGetValueFromEditor.resizer`,e=>{let t=/<jodit[^>]+data-jodit_iframe_wrapper[^>]+>(.*?<iframe[^>]*>.*?<\/iframe>.*?)<\/jodit>/gi;t.test(e.value)&&(e.value=e.value.replace(t,`$1`))}),this.addEventListeners(),this.__onChangeEditor()}onEditorClick(e){let t=e.target,{editor:n,options:{allowResizeTags:r}}=this.j;for(;t&&t!==n;){if(P.isTag(t,r)){this.__bind(t),this.onClickElement(t);return}t=t.parentNode}}__afterInsertImage(e){if(this.j.o.resizer.forImageChangeAttributes)return;let t=N(e,`width`);t&&!M(e,`width`,!0)&&(M(e,`width`,t),N(e,`width`,null))}addEventListeners(){let e=this.j;e.e.off(e.editor,`.resizer`).off(e.ow,`.resizer`).on(e.editor,`keydown.resizer`,e=>{this.isShown&&e.key===`Delete`&&this.element&&!P.isTag(this.element,`table`)&&this.onDelete(e)}).on(e.ow,`resize.resizer`,this.updateSize).on(`resize.resizer`,this.updateSize).on([e.ow,e.editor],`scroll.resizer`,()=>{this.isShown&&!this.isResizeMode&&this.hide()}).on(e.ow,`keydown.resizer`,this.onKeyDown).on(e.ow,`keyup.resizer`,this.onKeyUp).on(e.ow,`mouseup.resizer touchend.resizer`,this.onClickOutside)}onStartResizing(e,t){if(!this.element||!this.element.parentNode)return this.hide(),!1;this.handle=e,t.cancelable&&t.preventDefault(),t.stopImmediatePropagation(),this.width=this.element.offsetWidth,this.height=this.element.offsetHeight,this.ratio=this.width/this.height,this.isResizeMode=!0,this.startX=t.clientX,this.startY=t.clientY,this.pointerX=t.clientX,this.pointerY=t.clientY;let{j:n}=this;n.e.fire(`hidePopup`),n.lock(this.LOCK_KEY),n.e.on(n.ow,`mousemove.resizer touchmove.resizer`,this.onResize)}onEndResizing(){let{j:e}=this;e.unlock(),this.isResizeMode=!1,this.isAltMode=!1,e.synchronizeValues(),e.e.off(e.ow,`mousemove.resizer touchmove.resizer`,this.onResize)}onResize(e){if(this.isResizeMode){if(!this.element)return;this.pointerX=e.clientX,this.pointerY=e.clientY;let t,n;if(this.j.options.iframe&&e.view===this.j.ew){let r=this.getWorkplacePosition();t=e.clientX+r.left-this.startX,n=e.clientY+r.top-this.startY}else t=this.pointerX-this.startX,n=this.pointerY-this.startY;let r=this.handle.className,i=0,a=0,o=this.j.o.resizer.useAspectRatio;!this.isAltMode&&(o===!0||o&&P.isTag(this.element,o))?(t?(i=this.width+(r.match(/left/)?-1:1)*t,a=Math.round(i/this.ratio)):(a=this.height+(r.match(/top/)?-1:1)*n,i=Math.round(a*this.ratio)),i>Ul(this.j.editor,this.j.ow)&&(i=Ul(this.j.editor,this.j.ow),a=Math.round(i/this.ratio))):(i=this.width+(r.match(/left/)?-1:1)*t,a=this.height+(r.match(/top/)?-1:1)*n),i>
619this.j.o.resizer.min_width&&(i<this.rect.parentNode.offsetWidth?this.applySize(this.element,`width`,i):this.applySize(this.element,`width`,`100%`)),a>this.j.o.resizer.min_height&&this.applySize(this.element,`height`,a),this.updateSize(),this.showSizeViewer(this.element.offsetWidth,this.element.offsetHeight),e.stopImmediatePropagation()}}onKeyDown(e){this.isAltMode=e.key===`Alt`,!this.isAltMode&&this.isResizeMode&&this.onEndResizing()}onKeyUp(){this.isAltMode&&this.isResizeMode&&this.element&&(this.width=this.element.offsetWidth,this.height=this.element.offsetHeight,this.ratio=this.width/this.height,this.startX=this.pointerX,this.startY=this.pointerY),this.isAltMode=!1}onClickOutside(e){if(this.isShown){if(!this.isResizeMode)return this.hide();e.stopImmediatePropagation(),this.onEndResizing()}}getWorkplacePosition(){return Gl(this.rect.parentNode||this.j.od.documentElement,this.j,this.j.od,!0)}applySize(e,t,n){let r=P.isImage(e)&&this.j.o.resizer.forImageChangeAttributes;r&&N(e,t,n),(!r||e.style[t])&&M(e,t,n)}onDelete(e){this.element&&(this.element.tagName===`JODIT`?(P.safeRemove(this.element),this.hide(),e.preventDefault()):this.j.s.select(this.element))}__onChangeEditor(){this.isShown&&(!this.element||!this.element.parentNode?this.hide():this.updateSize()),Pc(`iframe`,this.j.editor).forEach(this.__bind)}__bind(e){if(!P.isHTMLElement(e)||!this.j.o.allowResizeTags.has(e.tagName.toLowerCase())||is(e,Gb))return;is(e,Gb,!0);let t;if(P.isTag(e,`iframe`)){let n=e;P.isHTMLElement(e.parentNode)&&N(e.parentNode,`-jodit_iframe_wrapper`)?e=e.parentNode:(t=this.j.createInside.element(`jodit`,{"data-jodit-temp":1,contenteditable:!1,draggable:!0,"data-jodit_iframe_wrapper":1}),N(t,`style`,N(e,`style`)),M(t,{display:e.style.display===`inline-block`?`inline-block`:`block`,width:e.offsetWidth,height:e.offsetHeight}),e.parentNode&&e.parentNode.insertBefore(t,e),t.appendChild(e),this.j.e.on(t,`click`,()=>{N(t,`data-jodit-wrapper_active`,!0)}),e=t),this.j.e.off(e,`mousedown.select touchstart.select`).on(e,`mousedown.select touchstart.select`,()=>{this.j.s.select(e)}).off(e,`changesize`).on(e,`changesize`,()=>{N(n,`width`,e.offsetWidth+`px`),N(n,`height`,e.offsetHeight+`px`)})}this.j.e.on(e,`dragstart`,this.hide)}showSizeViewer(e,t){if(this.j.o.resizer.showSize){if(e<this.sizeViewer.offsetWidth||t<this.sizeViewer.offsetHeight){this.hideSizeViewer();return}this.sizeViewer.style.opacity=`1`,this.sizeViewer.textContent=`${e} x ${t}`,this.j.async.setTimeout(this.hideSizeViewer,{timeout:this.j.o.resizer.hideSizeTimeout,label:`hideSizeViewer`})}}show(){this.j.o.readonly||this.isShown||(this.isShown=!0,this.rect.parentNode||(ms(this.j,this.rect),this.j.workplace.appendChild(this.rect)),this.j.isFullSize&&(this.rect.style.zIndex=M(this.j.container,`zIndex`).toString()),this.updateSize())}hide(){this.isResizeMode||(this.isResizeMode=!1,this.isShown=!1,this.element=null,P.safeRemove(this.rect),Pc(`[data-jodit-wrapper_active='true']`,this.j.editor).forEach(e=>N(e,`data-jodit-wrapper_active`,!1)))}beforeDestruct(e){this.hide(),Mc.off(`hideHelpers`,this.hide),e.e.off(this.j.ow,`.resizer`).off(`.resizer`)}};Wb([I(`:click`)],Kb.prototype,`onEditorClick`,null),Wb([I(`:afterInsertImage`)],Kb.prototype,`__afterInsertImage`,null),Wb([A],Kb.prototype,`onStartResizing`,null),Wb([A],Kb.prototype,`onEndResizing`,null),Wb([A],Kb.prototype,`onResize`,null),Wb([A],Kb.prototype,`onKeyDown`,null),Wb([A],Kb.prototype,`onKeyUp`,null),Wb([A],Kb.prototype,`onClickOutside`,null),Wb([I(`:change`)],Kb.prototype,`__onChangeEditor`,null),Wb([A],Kb.prototype,`__bind`,null),Wb([A,I(`:hideResizer`)],Kb.prototype,`hide`,null),Ec.add(`resizer`,Kb);var qb=`<svg viewBox="0 0 500 500" xmlns="http://www.w3.org/2000/svg"> <path clip-rule="evenodd" d="M306.39,154.09c19.628,4.543,35.244,21.259,39.787,39.523 c1.551,8.54,8.998,14.989,17.904,14.989c9.991,0,18.168-8.175,18.168-18.17c0-13.083-10.991-32.98-25.985-47.881 c-14.719-14.537-32.252-24.802-46.695-24.802c-9.991,0-18.172,8.45-18.172,18.446C291.396,145.094,297.847,152.546,306.39,154.09z M56.629,392.312c-14.09,14.08-14.09,36.979,0,51.059c14.08,14.092,36.981,14.092,50.965,0l104.392-104.303 c24.347,15.181,53.062,23.991,83.953,23.991c87.857,0,158.995-71.142,158.995-158.999c0-87.854-71.138-158.995-158.995-158.995 c-87.856,0-158.995,71.141-158.995,158.995c0,30.802,8.819,59.606,23.992,83.953L56.629,392.312z M182.371,204.06 c0-62.687,50.875-113.568,113.568-113.568s113.569,50.881,113.569,113.568c0,62.694-50.876,113.569-113.569,113.569 S182.371,266.754,182.371,204.06z" fill-rule="evenodd"/> </svg> `;
619F.prototype.useSearch=!0,F.prototype.search={lazyIdleTimeout:0,useCustomHighlightAPI:Va&&Va.Highlight!==void 0},vu.set(`search`,qb),F.prototype.controls.find={tooltip:`Find`,icon:`search`,exec(e,t,{control:n}){switch(n.args&&n.args[0]){case`findPrevious`:e.e.fire(`searchPrevious`);break;case`findNext`:e.e.fire(`searchNext`);break;case`replace`:e.execCommand(`openReplaceDialog`);break;default:e.execCommand(`openSearchDialog`)}},list:{search:`Find`,findNext:`Find Next`,findPrevious:`Find Previous`,replace:`Replace`},childTemplate:(e,t,n)=>n};var Jb=`jd-tmp-selection`,Yb=`background-color: var(--jd-color-background-selection); color: var(--jd-color-text-selection);`,Xb=new WeakSet;function Zb(e,t){if(Xb.has(e))return;Xb.add(e);let n=t?`::highlight(jodit-search-result) { ${Yb} }`:`[${Jb}] { ${Yb} }`;try{let t=new CSSStyleSheet;t.insertRule(n),e.adoptedStyleSheets=[...e.adoptedStyleSheets,t]}catch{let t=e.createElement(`style`);t.textContent=n,e.head.appendChild(t)}}function Qb(e,t,n,r,i){if(t.startContainer.nodeValue==null||t.endContainer.nodeValue==null||rx(e,t,n))return;Zb(e.ed,!1);let a=r.element(`span`,{[Jb]:!0});P.markTemporary(a),ax(t,n,r);let o=t.startContainer;do{if(!o||(P.isText(o)&&!nx(o.parentNode)&&P.wrap(o,a.cloneNode(),r),o===t.endContainer))break;let e=o.firstChild||o.nextSibling;if(!e){for(;o&&!o.nextSibling&&o!==i;)o=o.parentNode;e=o?.nextSibling}o=e}while(o&&o!==i)}function $b(e){return Pc(`[${Jb}]`,e)}function ex(e){$b(e.editor).forEach(e=>P.unwrap(e)),ix(e)}function tx(e){return e.replace(RegExp(`<span[^>]+${Jb}[^>]+>(.*?)</span>`,`g`),`$1`)}function nx(e){return P.isElement(e)&&e.hasAttribute(Jb)}function rx(e,t,n){if(e.o.search.useCustomHighlightAPI&&Va&&Va.Highlight!==void 0){let r=[t,...n].map(t=>{let n=e.selection.createRange();return n.setStart(t.startContainer,t.startOffset),n.setEnd(t.endContainer,t.endOffset),n});Zb(e.ed,!0);let i=new Highlight(...r);return CSS.highlights.clear(),CSS.highlights.set(`jodit-search-result`,i),n.length=0,!0}return!1}function ix(e){e.o.search.useCustomHighlightAPI&&Va&&Va.Highlight!==void 0&&CSS.highlights.clear()}function ax(e,t,n){let r=e.startContainer.nodeValue,i=0;if(e.startOffset!==0){let t=n.text(r.substring(0,e.startOffset));e.startContainer.nodeValue=r.substring(e.startOffset),P.before(e.startContainer,t),e.startContainer===e.endContainer&&(i=e.startOffset,e.endOffset-=i),e.startOffset=0}let a=e.endContainer.nodeValue;if(e.endOffset!==a.length){let r=n.text(a.substring(e.endOffset));e.endContainer.nodeValue=a.substring(0,e.endOffset),P.after(e.endContainer,r);for(let n of t)if(n.startContainer===e.endContainer)n.startContainer=r,n.startOffset=n.startOffset-e.endOffset-i,n.endContainer===e.endContainer&&(n.endContainer=r,n.endOffset=n.endOffset-e.endOffset-i);else break;e.endOffset=e.endContainer.nodeValue.length}}var ox=class{constructor(e=ql){this.searchIndex=e,this.queue=[],this.value=``}add(e){let t=(e.nodeValue??``).toLowerCase();if(!t.length)return;let n=this.value.length;this.queue.push({startIndex:n,endIndex:n+t.length,node:e}),this.value+=t}ranges(e,t=0){let n=[],r=t,i=0,a=0;do if([r,i]=this.searchIndex(e,this.value,r),r!==-1){let e,t=0,o,s=0;for(let n=a;n<this.queue.length;n+=1)if(!e&&this.queue[n].endIndex>r&&(e=this.queue[n].node,t=r-this.queue[n].startIndex),e&&this.queue[n].endIndex>=r+i){o=this.queue[n].node,s=r+i-this.queue[n].startIndex,a=n;break}e&&o&&n.push({startContainer:e,startOffset:t,endContainer:o,endOffset:s}),r+=i}while(r!==-1);return n.length===0?null:n}},sx=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},cx=class extends xu{className(){return`UISearch`}render(){return`<div> 620 <div class="&__box"> 621 <div class="&__inputs"> 622 <input data-ref="query" tabindex="0" placeholder="~Search for~" type="text"/> 623 <input data-ref="replace" tabindex="0" placeholder="~Replace with~" type="text"/> 624 </div> 625 <div class="&__counts"> 626 <span data-ref="counter-box"> 627 <span data-ref="current">0</span><span>/</span><span data-ref="count">0</span> 628 </span> 629 </div> 630 <div class="&__buttons"> 631 <button data-ref="next" tabindex="0" type="button">${vu.get(`angle-down`)}</button> 632 <button data-ref="prev" tabindex="0" type="button">${vu.get(`angle-up`)}</button> 633 <button data-ref="cancel" tabindex="0" type="button">${vu.get(`cancel`)}</button> 634 <button data-ref="replace-btn" tabindex="0" type="button" class="jodit-ui-button">~Replace~</button> 635 </div> 636 </div> 637 </div>`}get currentIndex(){return this._currentIndex}set currentIndex(e){this._currentIndex=e,this.currentBox.innerText=e.toString()}set count(e){this.countBox.innerText=e.toString()}get query(){return this.queryInput.value}get replace(){return this.replaceInput.value}constructor(e){super(e),this.selInfo=null,this._currentIndex=0,this.isOpened=!1;let{query:t,replace:n,cancel:r,next:i,prev:a,replaceBtn:o,current:s,count:c}=Ic(this.container);this.queryInput=t,this.replaceInput=n,this.closeButton=r,this.replaceButton=o,this.currentBox=s,this.countBox=c,e.e.on(this.closeButton,`pointerdown`,()=>(this.close(),!1)).on(this.queryInput,`input`,()=>{this.currentIndex=0}).on(this.queryInput,`pointerdown`,()=>{e.s.isFocused()&&(e.s.removeMarkers(),this.selInfo=e.s.save())}).on(this.replaceButton,`pointerdown`,()=>(e.e.fire(this,`pressReplaceButton`),!1)).on(i,`pointerdown`,()=>(e.e.fire(`searchNext`),!1)).on(a,`pointerdown`,()=>(e.e.fire(`searchPrevious`),!1)).on(this.queryInput,`input`,()=>{this.setMod(`empty-query`,!zo(this.queryInput.value).length)}).on(this.queryInput,`keydown`,(()=>{let t=this.j.async.debounce(async t=>{switch(t.key){case Za:await e.e.fire(`searchNext`)&&this.close();break;default:e.e.fire(this,`needUpdateCounters`)}},this.j.defaultTimeout);return e=>{e.key===`Enter`&&(e.preventDefault(),e.stopImmediatePropagation()),t(e)}})())}onEditorKeyDown(e){if(!this.isOpened)return;let{j:t}=this;if(t.getRealMode()===1)switch(e.key){case Qa:this.close();break;case`F3`:this.queryInput.value&&(t.e.fire(e.shiftKey?`searchPrevious`:`searchNext`),e.preventDefault())}}open(e,t,n=!1){this.isOpened||=(this.j.workplace.appendChild(this.container),!0),this.calcSticky(this.j.e.fire(`getStickyState.sticky`)||!1),this.j.e.fire(`hidePopup`),this.setMod(`replace`,n);let r=e??(this.j.s.sel||``).toString();r&&(this.queryInput.value=r),t&&(this.replaceInput.value=t),this.setMod(`empty-query`,!r.length),this.j.e.fire(this,`needUpdateCounters`),r?this.queryInput.select():this.queryInput.focus()}
637close(){this.isOpened&&(this.j.s.restore(),P.safeRemove(this.container),this.isOpened=!1,this.j.e.fire(this,`afterClose`))}calcSticky(e){if(this.isOpened)if(this.setMod(`sticky`,e),e){let e=Kl(this.j.toolbarContainer);M(this.container,{top:e.top+e.height,left:e.left+e.width})}else M(this.container,{top:null,left:null})}};sx([I([`:keydown`,`queryInput:keydown`])],cx.prototype,`onEditorKeyDown`,null),sx([A],cx.prototype,`open`,null),sx([A],cx.prototype,`close`,null),sx([I(`:toggleSticky`)],cx.prototype,`calcSticky`,null),cx=sx([Ws],cx);var lx=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},ux=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`find`,group:`search`}],this.previousQuery=``,this.drawPromise=null,this.walker=null,this.walkerCount=null,this.cache={},this.wrapFrameRequest=0}get ui(){return new cx(this.j)}async updateCounters(){this.ui.isOpened&&(this.ui.count=await this.calcCounts(this.ui.query))}onPressReplaceButton(){this.findAndReplace(this.ui.query),this.updateCounters()}tryScrollToElement(e){let t=P.closest(e,P.isElement,this.j.editor);t||=P.prev(e,P.isElement,this.j.editor),t&&t!==this.j.editor&&hl(t,this.j.editor,this.j.ed)}async calcCounts(e){return(await this.findQueryBounds(e,`walkerCount`)).length}async findQueryBounds(e,t){let n=this[t];return n&&n.break(),n=new xc(this.j.async,{timeout:this.j.o.search.lazyIdleTimeout}),this[t]=n,this.find(n,e).catch(e=>[])}async findAndReplace(e){let t=await this.findQueryBounds(e,`walker`);if(!t.length)return!1;let n=this.findCurrentIndexInRanges(t,this.j.s.range);n===-1&&(n=0);let r=t[n];if(r){try{let t=this.j.ed.createRange();t.setStart(r.startContainer,r.startOffset),t.setEnd(r.endContainer,r.endOffset),t.deleteContents();let i=this.j.createInside.text(this.ui.replace);P.safeInsertNode(t,i),ex(this.j),this.j.s.setCursorAfter(i),this.tryScrollToElement(i),this.cache={},this.ui.currentIndex=n,await this.findAndSelect(e,!0).catch(e=>null)}finally{this.j.synchronizeValues()}return this.j.e.fire(`afterFindAndReplace`),!0}return!1}async findAndSelect(e,t){var n;let r=await this.findQueryBounds(e,`walker`);if(!r.length)return!1;(this.previousQuery!==e||!$b(this.j.editor).length)&&((n=this.drawPromise)==null||n.rejectCallback(),this.j.async.cancelAnimationFrame(this.wrapFrameRequest),ex(this.j),this.drawPromise=this.__drawSelectionRanges(r)),this.previousQuery=e;let i=this.ui.currentIndex-1;i=i===-1?0:t?i===r.length-1?0:i+1:i===0?r.length-1:i-1,this.ui.currentIndex=i+1;let a=r[i];if(a){let e=this.j.ed.createRange();try{e.setStart(a.startContainer,a.startOffset),e.setEnd(a.endContainer,a.endOffset),this.j.s.selectRange(e)}catch{}return this.tryScrollToElement(a.startContainer),await this.updateCounters(),await this.drawPromise,this.j.e.fire(`afterFindAndSelect`),!0}return!1}findCurrentIndexInRanges(e,t){return e.findIndex(e=>e.startContainer===t.startContainer&&e.startOffset===t.startOffset&&e.endContainer===t.startContainer&&e.endOffset===t.endOffset)}async isValidCache(e){return(await e).every(e=>e.startContainer.isConnected&&e.startOffset<=(e.startContainer.nodeValue?.length??0)&&e.endContainer.isConnected&&e.endOffset<=(e.endContainer.nodeValue?.length??0))}async find(e,t){if(!t.length)return[];let n=this.cache[t];return n&&await this.isValidCache(n)?n:(this.cache[t]=this.j.async.promise(n=>{let r=new ox(this.j.o.search.fuzzySearch);e.on(`break`,()=>{n([])}).on(`visit`,e=>(P.isText(e)&&r.add(e),!1)).on(`end`,()=>{n(r.ranges(t)??[])}).setWork(this.j.editor)}),this.cache[t])}__drawSelectionRanges(e){let{async:t,createInside:n,editor:r}=this.j;t.cancelAnimationFrame(this.wrapFrameRequest);let i=[...e],a,o=0;return t.promise(e=>{let s=()=>{do a=i.shift(),a&&Qb(this.j,a,i,n,r),o+=1;while(a&&o<=5);i.length?this.wrapFrameRequest=t.requestAnimationFrame(s):e()};s()})}onAfterGetValueFromEditor(e){e.value=tx(e.value)}afterInit(e){if(e.o.useSearch){let t=this;e.e.on(`beforeSetMode.search`,()=>{this.ui.close()}).on(this.ui,`afterClose`,()=>{ex(e),this.ui.currentIndex=0,this.ui.count=0,this.cache={},e.focus()}).on(`click`,()=>{this.ui.currentIndex=0,ex(e)}).on(`change.search`,()=>{this.cache={}}).on(`keydown.search mousedown.search`,e.async.debounce(()=>{this.ui.selInfo&&(e.s.removeMarkers(),this.ui.selInfo=null),this.ui.isOpened&&this.updateCounters()},e.defaultTimeout)).on(`searchNext.search searchPrevious.search`,()=>(this.ui.isOpened||this.ui.open(),t.findAndSelect(t.ui.query,e.e.current===`searchNext`).catch(e=>{}))).on(`search.search`,(e,n=!0)=>(this.ui.currentIndex=0,t.findAndSelect(e||``,n).catch(e=>{}))),e.registerCommand(`search`,{exec:(e,n,r=!0)=>(n&&t.findAndSelect(n,r).catch(e=>{}),!1)}).registerCommand(`openSearchDialog`,{exec:(e,n)=>(t.ui.open(n),!1),hotkeys:[`ctrl+f`,`cmd+f`]}).registerCommand(`openReplaceDialog`,{exec:(n,r,i)=>(e.o.readonly||t.ui.open(r,i,!0),!1),hotkeys:[`ctrl+h`,`cmd+h`]})}}beforeDestruct(e){var t;(t=Rs(this,`ui`))==null||t.destruct(),e.e.off(`.search`)}};lx([zs],ux.prototype,`ui`,null),lx([I(`ui:needUpdateCounters`)],ux.prototype,`updateCounters`,null),lx([I(`ui:pressReplaceButton`)],ux.prototype,`onPressReplaceButton`,null),lx([A],ux.prototype,`findQueryBounds`,null),lx([A],ux.prototype,`findAndReplace`,null),lx([A],ux.prototype,`findAndSelect`,null),lx([A],ux.prototype,`find`,null),lx([I(`:afterGetValueFromEditor`)],ux.prototype,`onAfterGetValueFromEditor`,null),Ec.add(`search`,ux),F.prototype.select={normalizeSelectionBeforeCutAndCopy:!1,normalizeTripleClick:!0};var dx=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},fx=class extends Lf{constructor(){super(...arguments),this.proxyEventsList=[`click`,`mousedown`,`touchstart`,`mouseup`,`touchend`]}afterInit(e){this.proxyEventsList.forEach(t=>{e.e.on(t+`.select`,this.onStartSelection)})}beforeDestruct(e){this.proxyEventsList.forEach(t=>{e.e.on(t+`.select`,this.onStartSelection)})}onStartSelection(e){let{j:t}=this,n,r=e.target;for(;n===void 0&&r&&r!==t.editor;)n=t.e.fire(es(e.type+`_`+r.nodeName.toLowerCase()),r,e),r=r.parentElement;e.type===`click`&&n===void 0&&r===t.editor&&t.e.fire(e.type+`Editor`,r,e)}onOutsideClick(e){let t=e.target;P.up(t,e=>e===this.j.editor)||xu.closestElement(t,_d)||this.j.e.fire(`outsideClick`,e)}beforeCommandCut(){let{s:e}=this.j;if(!e.isCollapsed()){let t=e.current();t&&P.isOrContains(this.j.editor,t)&&this.onCopyNormalizeSelectionBound()}}beforeCommandSelectAll(){let{s:e}=this.j;return e.focus(),e.select(this.j.editor,!0),e.expandSelection(),!1}onClickRightOfNestedListItem(e){let{s:t}=this.j,n=t.range;if(!n.collapsed||n.startOffset!==0||!P.isText(n.startContainer))return;let r=n.startContainer,i=r.parentNode;if(!P.isTag(i,`li`)||!(i.querySelector(`ul`)||i.querySelector(`ol`)))return;let a=this.j.ed.createRange();a.selectNodeContents(r);let o=a.getBoundingClientRect();e.clientX>o.right&&t.setCursorAfter(r)}onClickKeepPendingFormat(){let{s:e}=this.j,t=e.range;if(!t.collapsed||!P.isText(t.startContainer))return;let n=t.startContainer;if(t.startOffset!==(n.nodeValue?.length??0))return;let r=n.nextSibling;if(!P.isElement(r)||!r.nodeName.match(Wa)||!P.isEmpty(r))return;let i=r;for(;P.isElement(i.firstElementChild)&&i.firstElementChild.nodeName.match(Wa);)i=i.firstElementChild;e.setCursorIn(i)}onTripleClickNormalizeSelection(e){if(e.detail!==3||!this.j.o.select.normalizeTripleClick)return;let{s:t}=this.j,{startContainer:n,startOffset:r}=t.range;r===0&&P.isText(n)&&t.select(P.closest(n,P.isBlock,this.j.editor)||n,!0)}onCopyNormalizeSelectionBound(e){let{s:t,editor:n,o:r}=this.j;!r.select.normalizeSelectionBeforeCutAndCopy||t.isCollapsed()||e&&(!e.isTrusted||!P.isNode(e.target)||!P.isOrContains(n,e.target))||this.jodit.s.expandSelection()}};dx([A],fx.prototype,`onStartSelection`,null),dx([I(`ow:click`)],fx.prototype,`onOutsideClick`,null),dx([I([`:beforeCommandCut`])],fx.prototype,`beforeCommandCut`,null),dx([I([`:beforeCommandSelectall`])],fx.prototype,`beforeCommandSelectAll`,null),dx([I([`:click`])],fx.prototype,`onClickRightOfNestedListItem`,null),dx([I([`:click`])],fx.prototype,`onClickKeepPendingFormat`,null),dx([I([`:click`])],fx.prototype,`onTripleClickNormalizeSelection`,null),dx([I([`:copy`,`:cut`])],fx.prototype,`onCopyNormalizeSelectionBound`,null),Ec.add(`select`,fx),F.prototype.tableAllowCellSelection=!0;var px=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},mx=`table_processor_observer`,hx=`onMoveTableSelectCell`,gx=class extends Lf{constructor(){super(...arguments),this.__selectedCell=null,this.__isSelectionMode=!1}
637get __tableModule(){return this.j.getInstance(qf,this.j.o)}afterInit(e){e.o.tableAllowCellSelection&&e.e.on(`keydown.select-cells`,e=>{e.key===`Tab`&&this.unselectCells()}).on(`beforeCommand.select-cells`,this.onExecCommand).on(`afterCommand.select-cells`,this.onAfterCommand).on([`clickEditor`,`mousedownTd`,`mousedownTh`,`touchstartTd`,`touchstartTh`].map(e=>e+`.select-cells`).join(` `),this.onStartSelection).on(`clickTr clickTbody`,()=>{var e;let t=this.__tableModule.getAllSelectedCells().length;if(t)return t>1&&((e=this.j.s.sel)==null||e.removeAllRanges()),!1})}onStartSelection(e,t){var n;if(this.j.o.readonly)return;let r=P.closest(e,`table`,this.j.editor);if((t?.ctrlKey||t?.metaKey)&&e!==this.j.editor&&r&&P.isCell(e))return this.__tableModule.getAllSelectedCells().includes(e)?this.__tableModule.removeSelection(e):(e.firstChild||e.appendChild(this.j.createInside.element(`br`)),this.__tableModule.addSelection(e)),this.__selectedCell=e,(n=this.j.s.sel)==null||n.removeAllRanges(),this.__tableModule.getAllSelectedCells().length?this.j.e.fire(`showPopup`,r,()=>Kl(e,this.j),`cells`):this.j.e.fire(`hidePopup`,`cells`),!1;if(this.unselectCells(),e!==this.j.editor&&!(!e||!r))return e.firstChild||e.appendChild(this.j.createInside.element(`br`)),this.__isSelectionMode=!0,this.__selectedCell=e,this.__tableModule.addSelection(e),this.j.e.on(r,`mousemove.select-cells touchmove.select-cells`,this.j.async.throttle(this.__onMove.bind(this,r),{label:hx,timeout:this.j.defaultTimeout/2})).on(r,`mouseup.select-cells touchend.select-cells`,this.__onStopSelection.bind(this,r)),!1}onOutsideClick(){this.__selectedCell=null,this.__onRemoveSelection()}onChange(){!this.j.isLocked&&!this.__isSelectionMode&&this.__onRemoveSelection()}__onMove(e,t){var n;if(this.j.o.readonly&&!this.j.isLocked||this.j.isLockedNotBy(mx))return;let r=(this.j.o.shadowRoot??this.j.ed).elementFromPoint(t.clientX,t.clientY);if(!r)return;let i=P.closest(r,[`td`,`th`],e);if(!i||!this.__selectedCell)return;i!==this.__selectedCell&&this.j.lock(mx),this.unselectCells();let a=this.__tableModule.getSelectedBound(e,[i,this.__selectedCell]),o=this.__tableModule.formalMatrix(e);for(let e=a[0][0];e<=a[1][0];e+=1)for(let t=a[0][1];t<=a[1][1];t+=1)this.__tableModule.addSelection(o[e][t]);this.__tableModule.getAllSelectedCells().length>1&&((n=this.j.s.sel)==null||n.removeAllRanges()),this.j.e.fire(`hidePopup`),t.stopPropagation(),(()=>{let e=this.j.createInside.fromHTML(`<div style="color:rgba(0,0,0,0.01);width:0;height:0"> </div>`);i.appendChild(e),this.j.async.setTimeout(()=>{var t;(t=e.parentNode)==null||t.removeChild(e)},this.j.defaultTimeout/5)})()}__onRemoveSelection(e){if(!e?.buffer?.actionTrigger&&!this.__selectedCell&&this.__tableModule.getAllSelectedCells().length){this.j.unlock(),this.unselectCells(),this.j.e.fire(`hidePopup`,`cells`);return}this.__isSelectionMode=!1,this.__selectedCell=null}__onStopSelection(e,t){if(!this.__selectedCell)return;this.__isSelectionMode=!1,this.j.unlock();let n=(this.j.o.shadowRoot??this.j.ed).elementFromPoint(t.clientX,t.clientY);if(!n)return;let r=P.closest(n,[`td`,`th`],e);if(!r)return;let i=P.closest(r,`table`,e);if(i&&i!==e)return;let a=this.__tableModule.getSelectedBound(e,[r,this.__selectedCell]),o=this.__tableModule.formalMatrix(e),s=o[a[1][0]]?.[a[1][1]],c=o[a[0][0]]?.[a[0][1]];!c||!s||(this.j.e.fire(`showPopup`,e,()=>{let e=Kl(c,this.j),t=Kl(s,this.j);return{left:e.left,top:e.top,width:t.left-e.left+t.width,height:t.top-e.top+t.height}},`cells`),Pc(`table`,this.j.editor).forEach(e=>{this.j.e.off(e,`mousemove.select-cells touchmove.select-cells mouseup.select-cells touchend.select-cells`)}),this.j.async.clearTimeout(hx))}unselectCells(e){let t=this.__tableModule,n=t.getAllSelectedCells();n.length&&n.forEach(n=>{(!e||e!==n)&&t.removeSelection(n)})}onExecCommand(e){if(/^(delete|backspace)(word|sentence)?button$/.test(e)&&this.__tableModule.getAllSelectedCells().length>1){let e=this.__tableModule.getAllSelectedCells();return e.forEach(e=>{P.detach(e),e.appendChild(this.j.createInside.element(`br`))}),this.unselectCells(),this.j.s.setCursorIn(e[0]),this.j.synchronizeValues(),!1}if(/table(splitv|splitg|merge|empty|bin|binrow|bincolumn|addcolumn|addrow)/.test(e)){e=e.replace(`table`,``);let t=this.__tableModule.getAllSelectedCells();if(t.length){let[n]=t;if(!n)return;let r=P.closest(n,`table`,this.j.editor);if(!r)return;switch(e){case`splitv`:this.__tableModule.splitVertical(r);break;case`splitg`:this.__tableModule.splitHorizontal(r);break;case`merge`:this.__tableModule.mergeSelected(r);break;
637case`empty`:t.forEach(e=>P.detach(e));break;case`bin`:P.safeRemove(r);break;case`binrow`:new Set(t.map(e=>e.parentNode)).forEach(e=>{this.__tableModule.removeRow(r,e.rowIndex)});break;case`bincolumn`:{let e=new Set,n=[];t.forEach(t=>{let[,i]=this.__tableModule.formalCoordinate(r,t);e.has(i)||(n.push(i),e.add(i))}),n.sort((e,t)=>t-e).forEach(e=>{this.__tableModule.removeColumn(r,e)})}break;case`addcolumnafter`:case`addcolumnbefore`:this.__tableModule.appendColumn(r,n,e===`addcolumnafter`);break;case`addrowafter`:case`addrowbefore`:this.__tableModule.appendRow(r,n.parentNode,e===`addrowafter`)}}return!1}}onAfterCommand(e){/^justify/.test(e)&&this.__tableModule.getAllSelectedCells().forEach(t=>Kc(e,t))}beforeDestruct(e){this.__onRemoveSelection(),e.e.off(`.select-cells`)}};gx.requires=[`select`],px([A],gx.prototype,`onStartSelection`,null),px([I(`:outsideClick`)],gx.prototype,`onOutsideClick`,null),px([I(`:change`)],gx.prototype,`onChange`,null),px([A],gx.prototype,`__onRemoveSelection`,null),px([A],gx.prototype,`__onStopSelection`,null),px([A],gx.prototype,`onExecCommand`,null),px([A],gx.prototype,`onAfterCommand`,null),Ec.add(`selectCells`,gx);var _x=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M553 1399l-50 50q-10 10-23 10t-23-10l-466-466q-10-10-10-23t10-23l466-466q10-10 23-10t23 10l50 50q10 10 10 23t-10 23l-393 393 393 393q10 10 10 23t-10 23zm591-1067l-373 1291q-4 13-15.5 19.5t-23.5 2.5l-62-17q-13-4-19.5-15.5t-2.5-24.5l373-1291q4-13 15.5-19.5t23.5-2.5l62 17q13 4 19.5 15.5t2.5 24.5zm657 651l-466 466q-10 10-23 10t-23-10l-50-50q-10-10-10-23t10-23l393-393-393-393q-10-10-10-23t10-23l50-50q10-10 23-10t23 10l466 466q10 10 10 23t-10 23z"/> </svg> `;F.prototype.beautifyHTML=!oo,F.prototype.sourceEditor=`ace`,F.prototype.sourceEditorNativeOptions={showGutter:!0,theme:`ace/theme/idle_fingers`,mode:`ace/mode/html`,wrap:!0,highlightActiveLine:!0},F.prototype.sourceEditorCDNUrlsJS=[`https://cdnjs.cloudflare.com/ajax/libs/ace/1.43.3/ace.js`],F.prototype.beautifyHTMLCDNUrlsJS=[`https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.14.4/beautify.min.js`,`https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.14.4/beautify-html.min.js`],vu.set(`source`,_x),F.prototype.controls.source={mode:3,exec:e=>{e.toggleMode()},isActive:e=>e.getRealMode()===2,tooltip:`Change mode`};var vx=class{constructor(e,t,n,r){this.jodit=e,this.container=t,this.toWYSIWYG=n,this.fromWYSIWYG=r,this.className=``,this.isReady=!1}get j(){return this.jodit}onReady(){this.replaceUndoManager(),this.isReady=!0,this.j.e.fire(this,`ready`)}onReadyAlways(e){var t;this.isReady?e():(t=this.j.events)==null||t.on(this,`ready`,e)}},yx=class extends vx{constructor(){super(...arguments),this.className=`jodit_ace_editor`,this.proxyOnBlur=e=>{this.j.e.fire(`blur`,e)},this.proxyOnFocus=e=>{this.j.e.fire(`focus`,e)},this.proxyOnMouseDown=e=>{this.j.e.fire(`mousedown`,e)}}aceExists(){return this.j.ow.ace!==void 0}getLastColumnIndex(e){return this.instance.session.getLine(e).length}getLastColumnIndices(){let e=this.instance.session.getLength(),t=[],n=0;for(let r=0;r<e;r++)n+=this.getLastColumnIndex(r),r>0&&(n+=1),t[r]=n;return t}getRowColumnIndices(e){let t=this.getLastColumnIndices();if(e<=t[0])return{row:0,column:e};let n=1;for(let r=1;r<t.length;r++)e>t[r]&&(n=r+1);let r=e-t[n-1]-1;return{row:n,column:r}}setSelectionRangeIndices(e,t){let n=this.getRowColumnIndices(e),r=this.getRowColumnIndices(t);this.instance.getSelection().setSelectionRange({start:n,end:r})}getIndexByRowColumn(e,t){return this.getLastColumnIndices()[e]-this.getLastColumnIndex(e)+t}init(e){let t=()=>{if(this.instance!==void 0||!this.aceExists())return;let t=this.j.c.div(`jodit-source__mirror-fake`);this.container.appendChild(t);let n=e.ow.ace;this.instance=n.edit(t),e.o.direction===`rtl`&&(this.instance.setOption(`rtlText`,!0),this.instance.setOption(`rtl`,!0)),this.instance.setOptions(e.o.sourceEditorNativeOptions),this.instance.setTheme(e.o.sourceEditorNativeOptions.theme),this.instance.renderer.setShowGutter(e.o.sourceEditorNativeOptions.showGutter),this.instance.getSession().setMode(e.o.sourceEditorNativeOptions.mode),this.instance.setHighlightActiveLine(e.o.sourceEditorNativeOptions.highlightActiveLine),this.instance.getSession().setUseWrapMode(!0),this.instance.setOption(`indentedSoftWrap`,!1),this.instance.setOption(`wrap`,e.o.sourceEditorNativeOptions.wrap),this.instance.getSession().setUseWorker(!1),this.instance.$blockScrolling=1/0,this.instance.on(`change`,this.toWYSIWYG),this.instance.on(`focus`,this.proxyOnFocus),this.instance.on(`mousedown`,this.proxyOnMouseDown),this.instance.on(`blur`,this.proxyOnBlur),e.getRealMode()!==1&&this.setValue(this.getValue());let r=this.j.async.throttle(()=>{if(e.isInDestruct||e.getMode()===1)return;let t=this.instance.isFocused();e.o.height===`auto`?this.instance.setOption(`maxLines`,1/0):this.instance.setOption(`maxLines`,e.workplace.offsetHeight/this.instance.renderer.lineHeight),this.instance.resize(),t&&this.focus()},this.j.defaultTimeout*2);e.e.on(e,`resize`,r).on(`afterResize afterSetMode`,r),r(),this.onReady()},n=()=>{e.isInDestruct||e.getRealMode()!==2&&e.getMode()!==3||(this.fromWYSIWYG(),t())};e.e.on(`afterSetMode`,n),n(),this.aceExists()||oc(e,e.o.sourceEditorCDNUrlsJS).then(n).catch(()=>null)}destruct(){var e;this.instance.off(`change`,this.toWYSIWYG),this.instance.off(`focus`,this.proxyOnFocus),this.instance.off(`mousedown`,this.proxyOnMouseDown),this.instance.destroy(),(e=this.j?.events)==null||e.off(`aceInited.source`)}setValue(e){if(!this.j.o.editHTMLDocumentMode&&this.j.o.beautifyHTML){let t=this.j.e.fire(`beautifyHTML`,e);j(t)&&(e=t)}this.instance.setValue(e),this.instance.clearSelection()}getValue(){return this.instance.getValue()}setReadOnly(e){this.instance.setReadOnly(e)}get isFocused(){return this.instance.isFocused()}focus(){this.instance.container.focus(),this.instance.focus()}blur(){this.instance.blur()}getSelectionStart(){let e=this.instance.selection.getRange();return this.getIndexByRowColumn(e.start.row,e.start.column)}getSelectionEnd(){let e=this.instance.selection.getRange();return this.getIndexByRowColumn(e.end.row,e.end.column)}selectAll(){this.instance.selection.selectAll()}insertRaw(e){let t=this.instance.selection.getCursor(),n=this.instance.session.insert(t,e);this.instance.selection.setRange({start:t,end:n},!1)}setSelectionRange(e,t){this.setSelectionRangeIndices(e,t)}setPlaceHolder(e){}replaceUndoManager(){let{history:e}=this.jodit;this.instance.commands.addCommand({name:`Undo`,bindKey:{win:`Ctrl-Z`,mac:`Command-Z`},exec:()=>{e.undo()}}),this.instance.commands.addCommand({name:`Redo`,bindKey:{win:`Ctrl-Shift-Z`,mac:`Command-Shift-Z`},exec:()=>{e.redo()}})}},bx=class extends vx{constructor(){super(...arguments),this.autosize=this.j.async.debounce(()=>{this.instance.style.height=`auto`,this.instance.style.height=this.instance.scrollHeight+`px`},this.j.defaultTimeout,!0)}
637init(e){this.instance=e.c.element(`textarea`,{class:`jodit-source__mirror`,dir:e.o.direction===`rtl`?`rtl`:void 0}),this.container.appendChild(this.instance),e.e.on(this.instance,`mousedown keydown touchstart input`,e.async.debounce(this.toWYSIWYG,e.defaultTimeout)).on(`setMinHeight.source`,e=>{M(this.instance,`minHeight`,e)}).on(this.instance,`change keydown mousedown touchstart input`,this.autosize).on(`afterSetMode.source`,this.autosize).on(this.instance,`mousedown focus blur`,t=>{e.e.fire(t.type,t)}),this.autosize(),this.onReady()}destruct(){P.safeRemove(this.instance)}getValue(){return this.instance.value}setValue(e){this.instance.value=e}insertRaw(e){let t=this.getValue();if(this.getSelectionStart()>=0){let n=this.getSelectionStart(),r=this.getSelectionEnd();this.setValue(t.substring(0,n)+e+t.substring(r,t.length))}else this.setValue(t+e)}getSelectionStart(){return this.instance.selectionStart}getSelectionEnd(){return this.instance.selectionEnd}setSelectionRange(e,t=e){this.instance.setSelectionRange(e,t)}get isFocused(){return this.instance===this.j.od.activeElement}focus(){this.instance.focus()}blur(){this.instance.blur()}setPlaceHolder(e){N(this.instance,`placeholder`,e)}setReadOnly(e){N(this.instance,`readonly`,e?`true`:null)}selectAll(){this.instance.select()}replaceUndoManager(){let{history:e}=this.jodit;this.j.e.on(this.instance,`keydown`,t=>{if((t.ctrlKey||t.metaKey)&&t.key===`z`)return t.shiftKey?e.redo():e.undo(),this.setSelectionRange(this.getValue().length),!1})}};function xx(e,t,n,r,i){let a;if(k(e))a=e(t);else switch(e){case`ace`:if(!t.o.shadowRoot){a=new yx(t,n,r,i);break}default:a=new bx(t,n,r,i)}return a.init(t),a.onReadyAlways(()=>{a.setReadOnly(t.o.readonly)}),a}var Sx=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Cx=class extends Lf{constructor(){super(...arguments),this.buttons=[{name:`source`,group:`source`}],this.__lock=!1,this.__oldMirrorValue=``,this.tempMarkerStart=`{start-jodit-selection}`,this.tempMarkerStartReg=/{start-jodit-selection}/g,this.tempMarkerEnd=`{end-jodit-selection}`,this.tempMarkerEndReg=/{end-jodit-selection}/g,this.getSelectionStart=()=>this.sourceEditor?.getSelectionStart()??0,this.getSelectionEnd=()=>this.sourceEditor?.getSelectionEnd()??0}onInsertHTML(e){var t;if(!this.j.o.readonly&&!this.j.isEditorMode())return(t=this.sourceEditor)==null||t.insertRaw(e),this.toWYSIWYG(),!1}fromWYSIWYG(e=!1){if(!this.__lock||e===!0){this.__lock=!0;let e=this.j.getEditorValue(!1,Eo);e!==this.getMirrorValue()&&this.setMirrorValue(e),this.__lock=!1}}toWYSIWYG(){if(this.__lock)return;let e=this.getMirrorValue();e!==this.__oldMirrorValue&&(this.__lock=!0,this.j.value=e,this.__lock=!1,this.__oldMirrorValue=e)}getNormalPosition(e,t){for(t=t.replace(/<(script|style|iframe)[^>]*>[^]*?<\/\1>/im,e=>{let t=``;for(let n=0;n<e.length;n+=1)t+=``;return t});e>0&&t[e]===``;)e--;let n=e;for(;n>0;){if(n--,t[n]===`<`&&t[n+1]!==void 0&&t[n+1].match(/[\w/]+/i))return n;if(t[n]===`>`)return e}return e}clnInv(e){return e.replace(Fa(),``)}onSelectAll(e){var t;if(e.toLowerCase()===`selectall`&&this.j.getRealMode()===2)return(t=this.sourceEditor)==null||t.selectAll(),!1}getMirrorValue(){return this.sourceEditor?.getValue()||``}setMirrorValue(e){var t;(t=this.sourceEditor)==null||t.setValue(e)}setFocusToMirror(){var e;let t=this.j.od.activeElement;t&&t!==this.j.od.body&&!this.j.container.contains(t)||(e=this.sourceEditor)==null||e.focus()}saveSelection(){if(this.j.getRealMode()===1)this.j.s.save(),this.j.synchronizeValues(),this.fromWYSIWYG(!0);else{if(this.j.o.editHTMLDocumentMode)return;let e=this.getMirrorValue();if(this.getSelectionStart()===this.getSelectionEnd()){let t=this.j.s.marker(!0),n=this.getNormalPosition(this.getSelectionStart(),this.getMirrorValue());this.setMirrorValue(e.substring(0,n)+this.clnInv(t.outerHTML)+e.substring(n))}else{let t=this.j.s.marker(!0),n=this.j.s.marker(!1),r=this.getNormalPosition(this.getSelectionStart(),e),i=this.getNormalPosition(this.getSelectionEnd(),e);this.setMirrorValue(e.slice(0,r)+this.clnInv(t.outerHTML)+e.slice(r,i)+this.clnInv(n.outerHTML)+e.slice(i))}this.toWYSIWYG()}}removeSelection(){if(this.j.getRealMode()===1){this.__lock=!0,this.j.s.restore(
637),this.__lock=!1;return}let e=this.getMirrorValue(),t=0,n=0;try{if(e=e.replace(/<span[^>]+data-jodit-selection_marker=(["'])start\1[^>]*>[<>]*?<\/span>/gim,this.tempMarkerStart).replace(/<span[^>]+data-jodit-selection_marker=(["'])end\1[^>]*>[<>]*?<\/span>/gim,this.tempMarkerEnd),!this.j.o.editHTMLDocumentMode&&this.j.o.beautifyHTML){let t=this.j.e.fire(`beautifyHTML`,e);j(t)&&(e=t)}if(t=e.indexOf(this.tempMarkerStart),n=t,e=e.replace(this.tempMarkerStartReg,``),t!==-1){let t=e.indexOf(this.tempMarkerEnd);t!==-1&&(n=t)}e=e.replace(this.tempMarkerEndReg,``)}finally{e=e.replace(this.tempMarkerEndReg,``).replace(this.tempMarkerStartReg,``)}this.setMirrorValue(e),this.setMirrorSelectionRange(t,n),this.toWYSIWYG(),this.setFocusToMirror()}setMirrorSelectionRange(e,t){var n;(n=this.sourceEditor)==null||n.setSelectionRange(e,t)}onReadonlyReact(){var e;(e=this.sourceEditor)==null||e.setReadOnly(this.j.o.readonly)}afterInit(e){if(this.mirrorContainer=e.c.div(`jodit-source`),e.workplace.appendChild(this.mirrorContainer),e.e.on(`afterAddPlace changePlace afterInit`,()=>{e.workplace.appendChild(this.mirrorContainer)}),this.sourceEditor=xx(`area`,e,this.mirrorContainer,this.toWYSIWYG,this.fromWYSIWYG),e.e.on(e.ow,`keydown`,e=>{e.key===`Escape`&&this.sourceEditor?.isFocused&&this.sourceEditor.blur()}),this.onReadonlyReact(),e.e.on(`placeholder.source`,e=>{var t;(t=this.sourceEditor)==null||t.setPlaceHolder(e)}).on(`change.source`,this.syncValueFromWYSIWYG).on(`beautifyHTML`,e=>e),e.o.beautifyHTML){let t=()=>{var t;if(e.isInDestruct)return!1;let n=e.ow.html_beautify;return n&&!e.isInDestruct?((t=e.events)==null||t.off(`beautifyHTML`).on(`beautifyHTML`,e=>n(e)),!0):!1};t()||oc(e,e.o.beautifyHTMLCDNUrlsJS).then(t,()=>null)}this.syncValueFromWYSIWYG(!0),this.initSourceEditor(e)}syncValueFromWYSIWYG(e=!1){let t=this.j;(t.getMode()===3||t.getMode()===2)&&this.fromWYSIWYG(e)}initSourceEditor(e){var t;if(e.o.sourceEditor!==`area`){let t=xx(e.o.sourceEditor,e,this.mirrorContainer,this.toWYSIWYG,this.fromWYSIWYG);t.onReadyAlways(()=>{var n,r;(n=this.sourceEditor)==null||n.destruct(),this.sourceEditor=t,this.syncValueFromWYSIWYG(!0),(r=e.events)==null||r.fire(`sourceEditorReady`,e)})}else(t=this.sourceEditor)==null||t.onReadyAlways(()=>{var t;this.syncValueFromWYSIWYG(!0),(t=e.events)==null||t.fire(`sourceEditorReady`,e)})}beforeDestruct(){this.sourceEditor&&(this.sourceEditor.destruct(),delete this.sourceEditor),P.safeRemove(this.mirrorContainer)}};Sx([I(`:insertHTML.source`)],Cx.prototype,`onInsertHTML`,null),Sx([A],Cx.prototype,`fromWYSIWYG`,null),Sx([A],Cx.prototype,`toWYSIWYG`,null),Sx([A],Cx.prototype,`getNormalPosition`,null),Sx([I(`:beforeCommand.source`)],Cx.prototype,`onSelectAll`,null),Sx([I(`:beforeSetMode.source`)],Cx.prototype,`saveSelection`,null),Sx([I(`:afterSetMode.source`)],Cx.prototype,`removeSelection`,null),Sx([A],Cx.prototype,`setMirrorSelectionRange`,null),Sx([I(`:readonly.source`)],Cx.prototype,`onReadonlyReact`,null),Sx([A],Cx.prototype,`syncValueFromWYSIWYG`,null),Ec.add(`source`,Cx);var wx=`<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path d="M24.89 32h4.18L18.86 6h-3.71L4.93 32h4.18l2.25-6h11.29l2.24 6zM12.86 22L17 10.95 21.14 22h-8.28zm30.31 1.17L27 39.34 19.66 32l-2.83 2.83L27 45l19-19-2.83-2.83z"/> </svg> `;F.prototype.spellcheck=!1,vu.set(`spellcheck`,wx),F.prototype.controls.spellcheck={isActive(e){return e.o.spellcheck},icon:wx,name:`spellcheck`,command:`toggleSpellcheck`,tooltip:`Spellcheck`};var Tx=s({default:()=>Ex}),Ex={Spellcheck:`Ø§ÙØªØ¯ÙÙÙ Ø§ÙØ¥Ù
ÙØ§Ø¦Ù`},Dx=s({default:()=>Ox}),Ox={Spellcheck:`Kontrola pravopisu`},kx=s({default:()=>Ax}),Ax={Spellcheck:`Rechtschreibprüfung`},jx=s({default:()=>Mx}),Mx={Spellcheck:`Corrección ortográfica`},Nx=s({default:()=>Px}),Px={Spellcheck:`ØºÙØ·ÛØ§Ø¨Û Ø§Ù
ÙØ§ÛÛ`},Fx=s({default:()=>Ix}),Ix={Spellcheck:`Oikeinkirjoituksen tarkistus`},Lx=s({default:()=>Rx}),Rx={Spellcheck:`Vérification Orthographique`},zx=s({default:()=>Bx}),Bx={Spellcheck:`×××קת ×××ת`},Vx=s({default:()=>Hx}),Hx={Spellcheck:`HelyesÃrás-ellenÅrzés`},Ux=s({default:()=>Wx}),Wx={Spellcheck:`Spellchecking`},Gx=s({default:()=>Kx}),Kx={Spellcheck:`Controllo ortografico`},qx=s({default:()=>Jx}),Jx={Spellcheck:`ã¹ãã«ãã§ãã¯`},Yx=s({default:()=>Xx}),Xx={Spellcheck:`ë§ì¶¤ë² ê²ì¬`},Zx=s({default:()=>Qx}),Qx={Spellcheck:`ÐÒ¯Ñмийн алдаа ÑалгаÑ
`},$x=s({default:()=>eS}),eS={Spellcheck:`Spellingcontrole`},tS=s({default:()=>nS}),nS={Spellcheck:`Stavekontroll`},rS=s({default:()=>iS}),iS={Spellcheck:`Sprawdzanie pisowni`},aS=s({default:()=>oS}),oS={Spellcheck:`Verificação ortográfica`},sS=s({default:()=>cS}),cS={Spellcheck:`ÐÑовеÑка оÑÑогÑаÑии`},lS=s({default:()=>uS}),uS={Spellcheck:`Yazım denetimi`},dS=s({default:()=>fS}),fS={Spellcheck:`ÐеÑевÑÑка оÑÑогÑаÑÑÑ`},pS=s({default:()=>mS}),mS={Spellcheck:`æ¼åæ£æ¥`},hS=s({default:()=>gS}),gS={Spellcheck:`æ¼å檢æ¥`},_S=s({ar:()=>Tx,cs_cz:()=>Dx,de:()=>kx,es:()=>jx,fa:()=>Nx,fi:()=>Fx,fr:()=>Lx,he:()=>zx,hu:()=>Vx,id:()=>Ux,it:()=>Gx,ja:()=>qx,ko:()=>Yx,mn:()=>Zx,nl:()=>$x,no:()=>tS,pl:()=>rS,pt_br:()=>aS,ru:()=>sS,tr:()=>lS,ua:()=>dS,zh_cn:()=>pS,zh_tw:()=>hS}),vS=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},yS=class extends Lf{constructor(e){super(e),this.buttons=[{group:`state`,name:`spellcheck`}],Oc(_S)}afterInit(e){e.e.on(`afterInit afterAddPlace prepareWYSIWYGEditor`,this.toggleSpellcheck),this.toggleSpellcheck(),e.registerCommand(`toggleSpellcheck`,()=>{this.jodit.o.spellcheck=!this.jodit.o.spellcheck,this.toggleSpellcheck(),this.j.e.fire(`updateToolbar`)})}toggleSpellcheck(){N(this.jodit.editor,`spellcheck`,this.jodit.o.spellcheck)}beforeDestruct(e){}};vS([A],yS.prototype,`toggleSpellcheck`,null),Ec.add(`spellcheck`,yS),F.prototype.toolbarSticky=!0,F.prototype.toolbarDisableStickyForMobile=!0,F.prototype.toolbarStickyOffset=0;var bS=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},xS=class extends Lf{constructor(){super(...arguments),this.__isToolbarStuck=!1,this.__createDummy=e=>{this.__dummyBox=this.j.c.div(),this.__dummyBox.classList.add(`jodit_sticky-dummy_toolbar`),this.j.container.insertBefore(this.__dummyBox,e)},this.addSticky=e=>{this.__isToolbarStuck||=(this.j.container.classList.add(`jodit_sticky`),!0),M(e,{top:this.j.o.toolbarStickyOffset||null,width:this.j.container.offsetWidth-2}),this.__dummyBox&&M(this.__dummyBox,{height:e.offsetHeight})},this.removeSticky=e=>{this.__isToolbarStuck&&=(M(e,{width:``,top:``}),this.j.container.classList.remove(`jodit_sticky`),!1)}}
637afterInit(e){e.e.on(e.ow,`scroll.sticky wheel.sticky mousewheel.sticky resize.sticky`,this.__onScroll).on(`getStickyState.sticky`,()=>this.__isToolbarStuck)}__onScroll(){let{jodit:e}=this;if(!e.o.toolbarSticky||!e.o.toolbar)return;let t=e.ow.pageYOffset||e.od.documentElement&&e.od.documentElement.scrollTop||0,n=Gl(e.container,e,e.od,!0),r=e.getMode()===1&&t+e.o.toolbarStickyOffset>n.top&&t+e.o.toolbarStickyOffset<n.top+n.height&&!(e.o.toolbarDisableStickyForMobile&&this.__isMobile());if(this.__isToolbarStuck===r)return;let i=e.toolbarContainer;i&&(r?this.addSticky(i):this.removeSticky(i)),e.e.fire(`toggleSticky`,r)}__isMobile(){let{j:e}=this;return e&&e.options&&e.container&&e.options.sizeSM>=e.container.offsetWidth}beforeDestruct(e){P.safeRemove(this.__dummyBox),e.e.off(e.ow,`scroll.sticky wheel.sticky mousewheel.sticky resize.sticky`,this.__onScroll).off(`.sticky`)}};bS([nu()],xS.prototype,`__onScroll`,null),Ec.add(`sticky`,xS);var SS=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 270 270"> <path d="m240.443652,220.45085l-47.410809,0l0,-10.342138c13.89973,-8.43655 25.752896,-19.844464 34.686646,-33.469923c11.445525,-17.455846 17.496072,-37.709239 17.496072,-58.570077c0,-59.589197 -49.208516,-108.068714 -109.693558,-108.068714s-109.69263,48.479517 -109.69263,108.069628c0,20.860839 6.050547,41.113316 17.497001,58.570077c8.93375,13.625459 20.787845,25.032458 34.686646,33.469008l0,10.342138l-47.412666,0c-10.256959,0 -18.571354,8.191376 -18.571354,18.296574c0,10.105198 8.314395,18.296574 18.571354,18.296574l65.98402,0c10.256959,0 18.571354,-8.191376 18.571354,-18.296574l0,-39.496814c0,-7.073455 -4.137698,-13.51202 -10.626529,-16.537358c-25.24497,-11.772016 -41.557118,-37.145704 -41.557118,-64.643625c0,-39.411735 32.545369,-71.476481 72.549922,-71.476481c40.004553,0 72.550851,32.064746 72.550851,71.476481c0,27.497006 -16.312149,52.87161 -41.557118,64.643625c-6.487902,3.026253 -10.6256,9.464818 -10.6256,16.537358l0,39.496814c0,10.105198 8.314395,18.296574 18.571354,18.296574l65.982163,0c10.256959,0 18.571354,-8.191376 18.571354,-18.296574c0,-10.105198 -8.314395,-18.296574 -18.571354,-18.296574z"/> </svg> `;F.prototype.usePopupForSpecialCharacters=!1,F.prototype.specialCharacters="!,",#,$,%,&,',(,),*,+,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,€,‘,’,“,”,–,—,¡,¢,£,¤,¥,¦,§,¨,©,ª,«,»,¬,®,¯,°,²,³,´,µ,¶,·,¸,¹,º,¼,½,¾,¿,À,Á,Â,Ã,Ä,Å,Æ,Ç,È,É,Ê,Ë,Ì,Í,Î,Ï,Ð,Ñ,Ò,Ó,Ô,Õ,Ö,×,Ø,Ù,Ú,Û,Ü,Ý,Þ,ß,à,á,â,ã,ä,å,æ,ç,è,é,ê,ë,ì,í,î,ï,ð,ñ,ò,ó,ô,õ,ö,÷,ø,ù,ú,û,ü,ý,þ,ÿ,Œ,œ,Ŵ,Ŷ,ŵ,ŷ,‚,‛,„,…,™,►,•,→,⇒,⇔,♦,≈".split(`,`),vu.set(`symbols`,SS),F.prototype.controls.symbols={hotkeys:[`ctrl+shift+i`,`cmd+shift+i`],tooltip:`Insert Special Character`,popup:(e,t,n)=>{let r=e.e.fire(`generateSpecialCharactersTable.symbols`);if(r){if(e.o.usePopupForSpecialCharacters){let t=e.c.div();return t.classList.add(`jodit-symbols`),t.appendChild(r),e.e.on(r,`close_dialog`,n),t}e.alert(r,`Select Special Character`,void 0,`jodit-symbols`).bindDestruct(e);let t=r.querySelector(`a`);t&&t.focus()}}};var CS=s({default:()=>wS}),wS={symbols:`رÙ
ز`},TS=s({default:()=>ES}),ES={symbols:`symbol`},DS=s({default:()=>OS}),OS={symbols:`Symbol`},kS=s({default:()=>AS}),AS={symbols:`SÃmbolo`},jS=s({default:()=>MS}),MS={symbols:`سÙ
بÙ`},NS=s({default:()=>PS}),PS={symbols:`Symbolit`},FS=s({default:()=>IS}),IS={symbols:`caractère`},LS=s({default:()=>RS}),RS={symbols:`×ª× ×××××`},zS=s({default:()=>BS}),BS={symbols:`Szimbólum`},VS=s({default:()=>HS}),HS={symbols:`simbol`},US=s({default:()=>WS}),WS={symbols:`Simbolo`}
637,GS=s({default:()=>KS}),KS={symbols:`symbol`},qS=s({default:()=>JS}),JS={symbols:`기í¸`},YS=s({default:()=>XS}),XS={symbols:`ÑÑмдÑгÑ`},ZS=s({default:()=>QS}),QS={symbols:`symbool`},$S=s({default:()=>eC}),eC={symbols:`symbol`},tC=s({default:()=>nC}),nC={symbols:`SÃmbolo`},rC=s({default:()=>iC}),iC={symbols:`Ñимвол`},aC=s({default:()=>oC}),oC={symbols:`Sembol`},sC=s({default:()=>cC}),cC={symbols:`Ñимвол`},lC=s({default:()=>uC}),uC={symbols:`符å·`},dC=s({default:()=>fC}),fC={symbols:`符è`},pC=s({ar:()=>CS,cs_cz:()=>TS,de:()=>DS,es:()=>kS,fa:()=>jS,fi:()=>NS,fr:()=>FS,he:()=>LS,hu:()=>zS,id:()=>VS,it:()=>US,ja:()=>GS,ko:()=>qS,mn:()=>YS,nl:()=>ZS,pl:()=>$S,pt_br:()=>tC,ru:()=>rC,tr:()=>aC,ua:()=>sC,zh_cn:()=>lC,zh_tw:()=>dC}),mC=class extends Lf{constructor(e){super(e),this.buttons=[{name:`symbols`,group:`insert`}],this.__countInRow=17,Oc(pC)}afterInit(e){e.e.on(`generateSpecialCharactersTable.symbols`,()=>{let t=e.c.fromHTML(`<div class="jodit-symbols__container"> 638 <div class="jodit-symbols__container_table"> 639 <table class="jodit-symbols__table"><tbody></tbody></table> 640 </div> 641 <div class="jodit-symbols__container_preview"> 642 <div class="jodit-symbols__preview"></div> 643 </div> 644 </div>`),n=t.querySelector(`.jodit-symbols__preview`),r=t.querySelector(`table`).tBodies[0],i=[];for(let t=0;t<e.o.specialCharacters.length;){let n=e.c.element(`tr`);for(let r=0;r<this.__countInRow&&t<e.o.specialCharacters.length;r+=1,t+=1){let a=e.c.element(`td`),o=e.c.fromHTML(`<a 645 data-index="${t}" 646 data-index-j="${r}" 647 role="option" 648 tabindex="-1" 649 >${e.o.specialCharacters[t]}</a>`);i.push(o),a.appendChild(o),n.appendChild(a)}r.appendChild(n)}let a=this;return e.e.on(i,`focus`,function(){n.innerHTML=this.innerHTML}).on(i,`mousedown`,function(t){P.isTag(this,`a`)&&(e.s.focus(),e.s.insertHTML(this.innerHTML),t?.shiftKey||e.e.fire(this,`close_dialog`),t&&t.preventDefault(),t&&t.stopImmediatePropagation())}).on(i,`mouseenter`,function(){P.isTag(this,`a`)&&this.focus()}).on(i,`keydown`,t=>{let n=t.target;if(P.isTag(n,`a`)){let r=parseInt(N(n,`-index`)||`0`,10),o=parseInt(N(n,`data-index-j`)||`0`,10),s;switch(t.key){case eo:case no:s=t.key===`ArrowUp`?r-a.__countInRow:r+a.__countInRow,i[s]===void 0&&(s=t.key===`ArrowUp`?Math.floor(i.length/a.__countInRow)*a.__countInRow+o:o,s>i.length-1&&(s-=a.__countInRow)),i[s]&&i[s].focus();break;case to:case $a:s=t.key===`ArrowLeft`?r-1:r+1,i[s]===void 0&&(s=t.key===`ArrowLeft`?i.length-1:0),i[s]&&i[s].focus();break;case Za:e.e.fire(n,`mousedown`),t.stopImmediatePropagation(),t.preventDefault()}}}),t})}beforeDestruct(e){e.e.off(`generateSpecialCharactersTable.symbols`)}};Ec.add(`symbols`,mC);var hC=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 270 270"> <path d="M 255.9537,58.150081 237.69527,40.997278 c -1.49414,-1.375593 -3.43653,-2.077427 -5.37891,-2.077427 -1.94239,0 -3.88478,0.701834 -5.37892,2.077427 L 29.919751,226.1128 c -2.988286,2.77926 -2.988286,7.32714 0,10.13447 L 48.148295,253.372 c 1.46426,1.37559 3.406646,2.1055 5.378915,2.1055 1.972268,0 3.884771,-0.72991 5.378914,-2.1055 L 221.34935,100.73732 255.9537,68.284552 c 2.9584,-2.807333 2.9584,-7.355212 0,-10.134471 z M 251.17244,63.79282 221.34935,91.781927 201.89561,73.506191 231.68882,45.48901 c 0.20918,-0.140367 0.38847,-0.224587 0.62754,-0.224587 0.23906,0 0.44824,0.08422 0.59765,0.224587 l 18.25843,17.152803 c 0,0 0.23906,0.33688 0.23906,0.561467 0,0.224586 -0.0896,0.4211 -0.23906,0.58954 z" style="stroke-width:2.8964;stroke-opacity:1" /> <path d="m 48.626421,116.87948 10.578532,23.10435 c 0.83672,1.82477 3.615826,1.85284 4.452546,0 l 10.937126,-23.52545 c 2.629692,-5.69888 7.470715,-10.24676 13.536935,-12.71722 l 25.07172,-10.274833 c 1.94239,-0.786053 1.94239,-3.396873 0,-4.182926 L 88.13156,79.008563 C 82.06534,76.53811 77.224317,71.990231 74.594625,66.291346 L 63.657499,42.737824 c -0.83672,-1.824766 -3.615826,-1.824766 -4.452546,0 L 48.267826,66.291346 C 45.638135,71.990231 40.797112,76.53811 34.730891,79.008563 L 9.6292894,89.311474 c -1.9423859,0.786054 -1.9423859,3.3688 0,4.182926 l 25.5498446,10.61172 c 6.036338,2.49852 10.847478,7.07448 13.477169,12.77336 z" style="stroke-width:2.8964;fill-opacity:1;stroke-opacity:1" /> <path d="m 111.79878,33.136746 13.56682,5.642739 c 3.19747,1.319446 5.76739,3.761826 7.14201,6.793745 l 5.61797,12.268044 c 0.44825,0.982567 1.91251,0.982567 2.36075,0 l 5.79727,-12.492631 c 1.4045,-3.031919 3.97442,-5.446225 7.20177,-6.765672 l 13.29788,-5.446225 c 1.0459,-0.4211 1.0459,-1.796693 0,-2.217793 l -13.29788,-5.446225 c -3.22735,-1.319447 -5.79727,-3.733753 -7.20177,-6.765672 L 140.48633,6.2144248 c
649-0.44824,-0.9825664 -1.9125,-0.9825664 -2.36075,0 l -5.79727,12.4926312 c -1.4045,3.031919 -3.97442,5.446225 -7.20177,6.765672 l -13.32776,5.474298 c -1.01601,0.4211 -1.0459,1.796693 0,2.217793 z" style="stroke-width:2.8964;fill-opacity:1" /> <path d="m 233.09331,192.98627 -14.13459,-5.7831 c -3.40665,-1.40367 -6.12599,-3.95834 -7.62013,-7.1587 l -6.15587,-13.27868 c -0.47813,-1.03872 -2.03203,-1.03872 -2.51016,0 l -6.15587,13.27868 c -1.49414,3.20036 -4.21348,5.75503 -7.62013,7.1587 l -14.13459,5.81118 c -1.10567,0.44917 -1.10567,1.90898 0,2.35816 l 14.40354,5.97961 c 3.40664,1.40367 6.12598,3.98642 7.59024,7.21485 l 5.97658,13.02602 c 0.47812,1.03872 2.03203,1.03872 2.51016,0 l 6.15586,-13.25061 c 1.49415,-3.20036 4.21349,-5.75503 7.62013,-7.1587 l 14.1346,-5.7831 c 1.10566,-0.44917 1.10566,-1.90899 0,-2.35816 z" style="stroke-width:2.8964;stroke-opacity:1" /> </svg> `,gC=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 24 24"> <g transform="scale(1.2 1.2) translate(-2 -0.5)"> <path d="M 22,12.5 A 1.49995,1.49995 0 0 0 20.50006,11 H 20 V 10 A 3,3 0 0 0 17,7 H 13 V 5.7226 a 2,2 0 1 0 -2,0 V 7 H 7 a 3,3 0 0 0 -3,3 v 1 H 3.49994 a 1.5,1.5 0 0 0 0,3 H 4 v 1 A 3.00128,3.00128 0 0 0 6.20251,17.89282 1.03113,1.03113 0 0 1 7,18.86975 v 0.716 a 0.99928,0.99928 0 0 0 1.00726,1.002 0.9792,0.9792 0 0 0 0.69983,-0.29486 l 2,-2 A 1,1 0 0 1 11.41425,18 H 17 a 3,3 0 0 0 3,-3 v -1 h 0.50006 A 1.49995,1.49995 0 0 0 22,12.5 Z M 19,15 a 2.00226,2.00226 0 0 1 -2,2 H 11.41425 A 1.987,1.987 0 0 0 10,17.58575 l -2,2 v -0.716 A 2.02082,2.02082 0 0 0 6.46771,16.92865 2.00439,2.00439 0 0 1 5,15 V 10 A 2.00226,2.00226 0 0 1 7,8 h 10 a 2.00222,2.00222 0 0 1 2,2 z M 10,12.5 A 1.5,1.5 0 1 1 8.5,11 1.5,1.5 0 0 1 10,12.5 Z m 7,0 A 1.5,1.5 0 1 1 15.5,11 1.5,1.5 0 0 1 17,12.5 Z"/> </g> </svg> `,_C={aiImproveWritingPrompt:`Improve writing`,aiMakeShorterPrompt:`Make shorter`,aiMakeLongerPrompt:`Make longer`,aiSimplifyLanguagePrompt:`Simplify language`,aiSummarizePrompt:`Summarize`,aiContinuePrompt:`Continue`,aiChangeToneProfessionalPrompt:`Change tone to professional`,aiChangeToneFriendlyPrompt:`Change tone to friendly`,aiChangeToneFormalPrompt:`Change tone to formal`,aiChangeToneCasualPrompt:`Change tone to casual`,aiChangeToneDirectPrompt:`Change tone to direct`,aiChangeToneConfidentPrompt:`Change tone to confident`,aiChangeStyleBusinessPrompt:`Change style to business`,aiChangeStyleLegalPrompt:`Change style to legal`,aiChangeStyleJournalismPrompt:`Change style of journalism`,aiChangeStylePoeticPrompt:`Change style to poetic`,aiTranslateToSpanishPrompt:`Translate to Spanish`,aiTranslateToFrenchPrompt:`Translate to French`,aiTranslateToGermanPrompt:`Translate to German`,aiTranslateToItalianPrompt:`Translate to Italian`,aiTranslateToPortuguesePrompt:`Translate to Portuguese`,aiTranslateToEnglishPrompt:`Translate to English`,aiTranslateToChinesePrompt:`Translate to Chinese`,aiTranslateToJapanesePrompt:`Translate to Japanese`,aiTranslateToKoreanPrompt:`Translate to Korean`,aiTranslateToRussianPrompt:`Translate to Russian`,aiTranslateToArabicPrompt:`Translate to Arabic`},vC={aiCommonPrefixPrompt:``,aiCommonSuffixPrompt:``,aiImproveWritingPrompt:`It needs to be refined for better clarity, coherence, and overall quality. Please enhance the writing style while keeping the original meaning and language intact.`,aiMakeShorterPrompt:`Please condense this content to make it more concise, while preserving the key messages, language and information.`,aiMakeLongerPrompt:`Expand on this content to provide more detail, depth, and richness, without diverging from the original message and language.`,aiSimplifyLanguagePrompt:`The language used here needs to be simplified for easier understanding, without altering the core information and the original language.`,aiSummarizePrompt:`Provide a brief summary of this content, capturing the essential points in a concise manner. Preserve the original language and meaning.`,aiContinuePrompt:`Continue the narrative or discussion from this content seamlessly, maintaining the same language, tone and style.`,aiChangeToneProfessionalPrompt:`Adjust the tone to be professional, suitable for a formal business or academic setting, while retaining the original message and language.`,aiChangeToneFriendlyPrompt:`It needs to be rewritten in a friendly tone while maintaining the original message and language. Please modify this content to be warm, approachable, and engaging.`,aiChangeToneFormalPrompt:`Transform this content to have a formal tone, appropriate for official or serious contexts, without changing the main points and language.`,aiChangeToneCasualPrompt:`Revise this content to have a casual, relaxed tone, making it feel more personal and less formal, without changing the original meaning and language.`,aiChangeToneDirectPrompt:`Make the tone more direct, with straightforward language and a clear, assertive approach, without changing the original meaning and language.`,aiChangeToneConfidentPrompt:`Infuse this content with a confident tone, showcasing assurance and decisiveness, without changing the original meaning and language.`,aiChangeStyleBusinessPrompt:`Rewrite this content with a business-oriented style, focusing on clarity, efficiency, and professionalism, without changing the original meaning and language.`,aiChangeStyleLegalPrompt:`Adapt this content to a legal style, incorporating appropriate terminology and formality typical of legal documents, without changing the original meaning and language.`,aiChangeStyleJournalismPrompt:`Convert this content into a
649journalistic style, emphasizing factual accuracy, objectivity, and informative reporting, without changing the original meaning and language.`,aiChangeStylePoeticPrompt:`Recreate this content with a poetic style, using expressive language, rhythm, and imagery to convey the message, without changing the original meaning and language.`,aiTranslateToSpanishPrompt:`Translate this content into Spanish, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToFrenchPrompt:`Translate this content into French, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToGermanPrompt:`Translate this content into German, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToItalianPrompt:`Translate this content into Italian, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToPortuguesePrompt:`Translate this content into Portuguese, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToEnglishPrompt:`Translate this content into English, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToChinesePrompt:`Translate this content into Chinese, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToJapanesePrompt:`Translate this content into Japanese, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToKoreanPrompt:`Translate this content into Korean, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToRussianPrompt:`Translate this content into Russian, ensuring the translation is accurate and maintains the original meaning.`,aiTranslateToArabicPrompt:`Translate this content into Arabic, ensuring the translation is accurate and maintains the original meaning.`};F.prototype.aiAssistant=vC,vu.set(`ai-assistant`,gC),vu.set(`ai-commands`,hC),F.prototype.controls[`ai-commands`]={isDisabled(e){return!e.o.aiAssistant.aiAssistantCallback},tooltip:`AI Commands`,list:_C,exec:(e,t,{control:n})=>{e.e.fire(`generateAiAssistantForm.ai-assistant`,n.name)}},F.prototype.controls[`ai-assistant`]={isDisabled(e){return!e.o.aiAssistant.aiAssistantCallback},hotkeys:[`ctrl+a+i`,`cmd+a+i`],tooltip:`AI Assistant`,exec:(e,t,n)=>{e.e.fire(`generateAiAssistantForm.ai-assistant`)}};var yC=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},bC=class extends xu{className(){return`UIAiAssistant`}constructor(e,{onInsert:t,onInsertAfter:n}){super(e),this.__aiResult=``,this.__error=this.getElm(`error`),this.__body=this.getElm(`body`),this.__buttons=this.getElm(`buttons`),this.__results=this.getElm(`results`),this.__spinner=this.getElm(`spinner`),this.__insertButton=Tu(e,``,`Insert`,`primary`).onAction(()=>t(this.__aiResult)),this.__insertAfterButton=Tu(e,``,`Insert After`,`initial`).onAction(()=>n(this.__aiResult));let r=()=>{this.__formAiAssistant.validate()&&(this.__formAiAssistant.submit(),this.__toggleInsertButton(!0),this.__toggleSubmitButton(!0))};this.__submitButton=Tu(e,`ai-assistant`,``).onAction(r),this.__tryAgainButton=Tu(e,`update`,``,`initial`).onAction(r),this.promptInput=new Qu(e,{name:`prompt`,required:!0,label:`Prompt`,placeholder:`Ask AI to improve generated text`,className:this.getFullElName(`prompt-row-input`)});let i=new Lu(e,[this.__insertButton,this.__insertAfterButton,this.__tryAgainButton],{className:this.getFullElName(`prompt-row`)});this.__formAiAssistant=new Yu(e,[new Lu(e,[this.promptInput,this.__submitButton],{className:this.getFullElName(`prompt-row`)})]).onSubmit(t=>{this.__error.textContent=``,this.setMod(`loading`,!0),e.e.fire(`invokeAiAssistant`,t.prompt);let n=this.getFullElName(``,`hide`,`true`);this.__results.classList.remove(n),this.__buttons.classList.remove(n),P.detach(this.__results),this.__results.appendChild(this.__spinner),this.__insertButton.focus()}),this.__buttons.appendChild(i.container),this.__body.appendChild(this.__formAiAssistant.container),this.onChangePromptValue()}render(){return`<div> 650 <div class="&__container"> 651 <div class="&__error"></div> 652 <div class="&__body"></div> 653 <div class="&__buttons &_hide_true"></div> 654 <div class="&__results &_hide_true"> 655 <div class="&__spinner"></div> 656 </div>
657 </div> 658 </div>`}setPrompt(e){if(e){let{jodit:t}=this,n=t.o.aiAssistant[e],{aiCommonPrefixPrompt:r,aiCommonSuffixPrompt:i}=t.o.aiAssistant;this.promptInput.value=[r,j(n)?n:``,i].filter(Boolean).join(` `),this.__toggleInsertButton(!0),this.promptInput.value&&(this.__formAiAssistant.submit(),this.__toggleSubmitButton(!0))}this.promptInput.focus()}onAiAssistentResponse(e){this.setMod(`loading`,!1),P.detach(this.__results),this.__aiResult=e,this.__results.appendChild(this.jodit.c.fromHTML(e)),this.__toggleSubmitButton(!1),this.__toggleInsertButton(!1)}onAiAssistentError(e){this.__aiResult=``,this.setMod(`loading`,!1),this.__error.textContent=e,P.detach(this.__results),this.__toggleSubmitButton(!1);let t=this.getFullElName(``,`hide`,`true`);this.__results.classList.add(t),this.__toggleInsertButton(!0)}onChangePromptValue(){this.__toggleSubmitButton(!this.promptInput.value)}__toggleSubmitButton(e){this.__submitButton.state.disabled=e,this.__tryAgainButton.state.disabled=e}__toggleInsertButton(e){this.__insertButton.state.disabled=e,this.__insertAfterButton.state.disabled=e}};yC([I(`:ai-assistant-response`)],bC.prototype,`onAiAssistentResponse`,null),yC([I(`:ai-assistant-error`)],bC.prototype,`onAiAssistentError`,null),yC([I(`promptInput:change`)],bC.prototype,`onChangePromptValue`,null),bC=yC([Ws],bC);var xC=s({default:()=>SC}),SC={aiAssistant:`AI Assistant`,aiCommands:`AI Commands`,"AI Assistant":`AI Assistant`,Prompt:`Prompt`,"Ask AI to improve generated text":`Ask AI to improve generated text`,Submit:`Submit`},CC=s({default:()=>wC}),wC={aiAssistant:`Asistente de IA`,aiCommands:`Comandos de IA`,"AI Assistant":`Asistente de IA`,"AI Commands":`Comandos de IA`,"Improve writing":`Mejorar escritura`,"Make shorter":`Hacer más corto`,"Make longer":`Hacer más largo`,"Simplify language":`Simplificar lenguaje`,Summarize:`Resumir`,Continue:`Continuar`,Prompt:`Solicitud`,Insert:`Insertar`,"Insert After":`Insertar después`,"Try Again":`Intentar de nuevo`,"Ask AI to improve generated text":`Pida a la IA que mejore el texto generado`,"Change tone to professional":`Cambiar tono a profesional`,"Change tone to friendly":`Cambiar tono a amigable`,"Change tone to formal":`Cambiar tono a formal`,"Change tone to casual":`Cambiar tono a casual`,"Change tone to direct":`Cambiar tono a directo`,"Change tone to confident":`Cambiar tono a confiado`,"Change tone to business":`Cambiar tono a empresarial`,"Change style to legal":`Cambiar estilo a legal`,"Change style to journalism":`Cambiar estilo a periodÃstico`,"Change style to poetic":`Cambiar estilo a poético`,"Translate to Spanish":`Traducir al español`,"Translate to French":`Traducir al francés`,"Translate to German":`Traducir al alemán`,"Translate to Italian":`Traducir al italiano`,"Translate to Portuguese":`Traducir al portugués`,"Translate to English":`Traducir al inglés`,"Translate to Chinese":`Traducir al chino`,"Translate to Japanese":`Traducid al japonés`,"Translate to Korean":`Traducir al coreano`,"Translate to Russian":`Traducir al ruso`,"Translate to Arabic":`Traducir al árabe`,Submit:`Enviar`},TC=s({en:()=>xC,es:()=>CC}),EC=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},DC=class extends Lf{get __dialog(){return this.jodit.dlg({buttons:[`fullsize`,`dialog.close`],closeOnClickOverlay:!0,closeOnEsc:!0,resizable:!1,draggable:!0,minHeight:160})}get __container(){let{jodit:e,__dialog:t}=this;return new bC(e,{onInsertAfter(n){e.s.focus();let r=e.s.range;r.collapse(!1),e.s.selectRange(r),e.s.insertHTML(n),t.close()},onInsert(n){e.s.focus(),e.s.insertHTML(n),t.close()}})}constructor(e){super(e),this.buttons=[{name:`ai-commands`,group:`insert`},{name:`ai-assistant`,group:`insert`}],Oc(TC)}afterInit(){}onGenerateAiAssistantForm(e){this.__dialog.open(this.__container,`AI Assistant`),this.__container.setPrompt(e)}onInvokeAiAssistant(e){let{jodit:t}=this;t.s.focus();let n=t.s.html;t.async.promise(async(r,i)=>{try{r(await t.o.aiAssistant.aiAssistantCallback(e,n))}catch(e){i(e)}}).then(e=>{t.e.fire(`ai-assistant-response`,e)}).catch(e=>{Cs(e)||(t.message.error(e.message),t.e.fire(`ai-assistant-error`,e.message))})}beforeDestruct(e){var t,n;(t=Rs(this,`__container`))==null||t.destruct(),(n=Rs(this,`__dialog`))==null||n.destruct()}};EC([zs],DC.prototype,`__dialog`,null),EC([zs],DC.prototype,`__container`,null),EC([I(`:generateAiAssistantForm.ai-assistant`)],DC.prototype,`onGenerateAiAssistantForm`,null),EC([I(`:invokeAiAssistant`)],DC.prototype,`onInvokeAiAssistant`,null),Ec.add(`ai-assistant`,DC),F.prototype.tab={tabInsideLiInsertNewList:!0};function OC(e,t=!1){if(!e.o.tab.tabInsideLiInsertNewList)return!1;let[n,r]=kC(e);try{let r=AC(e,n,t);if(!r||!jC(r,e,n))return!1;let i=P.closest(r,[`ol`,`ul`],e.editor);return!i||t&&!P.closest(i,`li`,e.editor)?!1:(t?NC(e,i,r):MC(e,i,r),!0)}finally{let t=e.s.createRange();t.setStartAfter(n),t.setEndBefore(r),e.s.selectRange(t),P.safeRemove(n),P.safeRemove(r)}}function kC(e){let t=e.createInside.fake(),n=e.createInside.fake(),r=e.s.range.cloneRange();
658r.collapse(!0),r.insertNode(t);let i=e.s.range.cloneRange();return i.collapse(!1),i.insertNode(n),[t,n]}function AC(e,t,n){let r=P.closest(t,`li`,e.editor);return!r||!n&&!P.isLeaf(r.previousElementSibling)||n&&!P.closest(r,`li`,e.editor)?!1:r}function jC(e,t,n){let r=P.closest(n,`li`,t.editor);return!(!r||r!==e&&!e.contains(r))}function MC(e,t,n){let r=n.previousElementSibling;Uo(r,`tab previousElementSibling is null`);let i=r.lastElementChild,a=P.isTag(i,t.tagName)?i:e.createInside.element(t.tagName,Array.from(t.attributes).reduce((e,t)=>(e[t.name]=t.value,e),{}));a.appendChild(n),i!==a&&r.appendChild(a)}function NC(e,t,n){let r=P.closest(t,`li`,e.editor);Uo(r,`tab parent li is null`);let i=Array.from(t.children).filter(e=>P.isLeaf(e));P.after(r,n);let a=i.indexOf(n);if((a===0||i.length===1)&&P.safeRemove(t),a!==i.length-1){let e=t.cloneNode();P.append(n,e);for(let t=a+1;t<i.length;t+=1)P.append(e,i[t])}}var PC=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},FC=class extends Lf{afterInit(e){}__onTab(e){if(e.key===`Tab`&&this.__onShift(e.shiftKey))return!1}__onCommand(e){if((e===`indent`||e===`outdent`)&&this.__onShift(e===`outdent`))return!1}__onShift(e){let t=OC(this.j,e);return t&&this.j.e.fire(`afterTab`,e),t}beforeDestruct(e){}};PC([I(`:keydown.tab`)],FC.prototype,`__onTab`,null),PC([I(`:beforeCommand.tab`)],FC.prototype,`__onCommand`,null),Ec.add(`tab`,FC);var IC=new Set([`Tab`,$a,to,eo,no]);function LC(e){e.e.off(`.tableKeyboardNavigation`).on(`keydown.tableKeyboardNavigation`,t=>{let{key:n}=t,r=RC(e,n);if(!r)return;let i=e.getInstance(qf,e.o),a=P.closest(r,`table`,e.editor),o=null,s=n===`ArrowLeft`||t.shiftKey,c=()=>fs(s?P.prev:P.next,r,P.isCell,a);switch(n){case`Tab`:case $a:o=c(),o||=(i.appendRow(a,s?a.querySelector(`tr`):!1,!s),c());break;case eo:case no:{let e=i.formalMatrix(a),[t,s]=i.formalCoordinate(a,r);n===`ArrowUp`?e[t-1]!==void 0&&(o=e[t-1][s]):e[t+1]!==void 0&&(o=e[t+1][s])}}if(o){if(e.e.fire(`hidePopup hideResizer`),o.firstChild)n===`Tab`?e.s.select(o,!0):e.s.setCursorIn(o,n===`ArrowRight`||n===`ArrowDown`);else{let t=e.createInside.element(`br`);o.appendChild(t),e.s.setCursorBefore(t)}return e.synchronizeValues(),!1}})}Ec.add(`tableKeyboardNavigation`,LC);function RC(e,t){if(!IC.has(t))return;let n=e.s.current();if(!n)return;let r=P.up(n,P.isCell,e.editor);if(!r)return;let{range:i}=e.s;if(t!==`Tab`&&n!==r){let e=t===`ArrowRight`||t===`ArrowDown`,a=fs(e?P.next:P.prev,n,e=>t===`ArrowUp`||t===`ArrowDown`?P.isTag(e,`br`):!!e,r);if(!e&&(a||t!==`ArrowUp`&&P.isText(n)&&i.startOffset!==0)||e&&(a||t!==`ArrowDown`&&P.isText(n)&&n.nodeValue&&i.startOffset!==n.nodeValue.length))return}return r}var zC=`<svg xmlns='http://www.w3.org/2000/svg' viewBox="0 0 1792 1792"> <path d="M1792 352v1088q0 42-39 59-13 5-25 5-27 0-45-19l-403-403v166q0 119-84.5 203.5t-203.5 84.5h-704q-119 0-203.5-84.5t-84.5-203.5v-704q0-119 84.5-203.5t203.5-84.5h704q119 0 203.5 84.5t84.5 203.5v165l403-402q18-19 45-19 12 0 25 5 39 17 39 59z"/> </svg> `;F.prototype.video={parseUrlToVideoEmbed:ol,defaultWidth:400,defaultHeight:345},vu.set(`video`,zC),F.prototype.controls.video={popup:(e,t,n)=>{let r=new Yu(e,[new Lu(e,[new Wu(e,{name:`url`,required:!0,label:`URL`,placeholder:`https://`,validators:[`url`]})]),new Lu(e,[Tu(e,``,`Insert`,`primary`).onAction(()=>r.submit())])]),i=new Yu(e,[new Lu(e,[new Qu(e,{name:`code`,required:!0,label:`Embed code`})]),new Lu(e,[Tu(e,``,`Insert`,`primary`).onAction(()=>i.submit())])]),a=[],o=t=>{e.s.restore(),e.s.insertHTML(t),n()};return e.s.save(),a.push({icon:`link`,name:`Link`,content:r.container},{icon:`source`,name:`Code`,content:i.container}),r.onSubmit(t=>{o(fs(e.o.video?.parseUrlToVideoEmbed??ol,t.url,{width:e.o.video?.defaultWidth,height:e.o.video?.defaultHeight}))}),i.onSubmit(e=>{o(e.code)}),Yh(e,a)},tags:[`iframe`],tooltip:`Insert youtube/vimeo video`};function BC(e){e.registerButton({name:`video`,group:`media`})}Ec.add(`video`,BC),F.prototype.showXPathInStatusbar=!0;var VC=class extends Lf{constructor(){super(...arguments),this.onContext=(e,t)=>
658(this.menu||=new Zd(this.j),this.menu.show(t.clientX,t.clientY,[{icon:`bin`,title:e===this.j.editor?`Clear`:`Remove`,exec:()=>{e===this.j.editor?this.j.value=``:P.safeRemove(e),this.j.synchronizeValues()}},{icon:`select-all`,title:`Select`,exec:()=>{this.j.s.select(e)}}]),!1),this.onSelectPath=(e,t)=>{this.j.s.focus();let n=N(t.target,`-path`)||`/`;if(n===`/`)return this.j.execCommand(`selectall`),!1;try{let e=this.j.ed.evaluate(n,this.j.editor,null,XPathResult.ANY_TYPE,null).iterateNext();if(e)return this.j.s.select(e),!1}catch{}return this.j.s.select(e),!1},this.tpl=(e,t,n,r)=>{let i=this.j.c.fromHTML(`<span class="jodit-xpath__item"><a role="button" data-path="${t}" title="${r}" tabindex="-1"'>${zo(n)}</a></span>`),a=i.firstChild;return this.j.e.on(a,`click`,this.onSelectPath.bind(this,e)).on(a,`contextmenu`,this.onContext.bind(this,e)),i},this.removeSelectAll=()=>{this.selectAllButton&&(this.selectAllButton.destruct(),delete this.selectAllButton)},this.appendSelectAll=()=>{this.removeSelectAll(),this.selectAllButton=Rd(this.j,{name:`selectall`,...this.j.o.controls.selectall}),this.selectAllButton.state.size=`tiny`,this.container&&this.container.insertBefore(this.selectAllButton.container,this.container.firstChild)},this.calcPathImd=()=>{if(this.isDestructed)return;let e=this.j.s.current();if(this.container&&(this.container.innerHTML=``),e){let t,n,r;P.up(e,e=>{e&&this.j.editor!==e&&!P.isText(e)&&!P.isComment(e)&&(t=e.nodeName.toLowerCase(),n=Fc(e,this.j.editor).replace(/^\//,``),r=this.tpl(e,n,t,this.j.i18n(`Select %s`,t)),this.container&&this.container.insertBefore(r,this.container.firstChild))},this.j.editor)}this.appendSelectAll()},this.calcPath=this.j.async.debounce(this.calcPathImd,this.j.defaultTimeout*2,!0)}afterInit(){if(this.j.o.showXPathInStatusbar){this.container=this.j.c.div(`jodit-xpath`),N(this.container,`role`,`list`);let e=()=>{!this.j.o.showXPathInStatusbar||!this.container||(this.j.statusbar.append(this.container),this.j.getRealMode()===1?this.calcPath():(this.container&&(this.container.innerHTML=``),this.appendSelectAll()))};this.j.e.off(`.xpath`).on(`pointerup.xpath change.xpath keydown.xpath changeSelection.xpath`,this.calcPath).on(`afterSetMode.xpath afterInit.xpath changePlace.xpath`,e),e(),this.calcPath()}}beforeDestruct(){this.j&&this.j.events&&this.j.e.off(`.xpath`),this.removeSelectAll(),this.menu&&this.menu.destruct(),P.safeRemove(this.container),delete this.menu,delete this.container}};Ec.add(`xpath`,VC);var HC=Va?Va.SpeechRecognition||Va.webkitSpeechRecognition:void 0,UC=new WeakMap;function WC(e){if(!Va)return null;let t=UC.get(e);if(t&&t.state!==`closed`)return t;let n=Va.AudioContext||Va.webkitAudioContext;if(!n)return null;let r=new n;return UC.set(e,r),r}function GC(e,{sec:t=.1,frequency:n=440,gain:r=.1,type:i=`sine`}={}){let a=WC(e);if(!a)return;let o=a.createGain(),s=a.createOscillator();s.type=i,s.frequency.value=n,o.gain.value=r,s.connect(o),o.connect(a.destination),s.start(),s.stop(a.currentTime+t)}function KC(e){let t=UC.get(e);t&&(UC.delete(e),t.state!==`closed`&&t.close())}var qC=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},JC=class e extends yc{set lang(e){this._lang=e,this._api.lang=e}get lang(){return this._lang}set continuous(e){this._continuous=e,this._api.continuous=e}get continuous(){return this._continuous}set interimResults(e){this._interimResults=e,this._api.interimResults=e}get interimResults(){return this._interimResults}constructor(t,n){super(),this.async=t,this._continuous=!1,this._interimResults=!1,this.sound=!0,this._isEnabled=!1,this._restartTimeout=0,this._onSpeechStart=e=>{this._isEnabled&&(this.async.clearTimeout(this._restartTimeout),this._restartTimeout=this.async.setTimeout(()=>{this.restart(),this.emit(`pulse`,!1),this._makeSound(940)},5e3),this.emit(`pulse`,!0))},this.__interimResults=``,this._api=n,e._instances.add(this)}destruct(){this.stop(),KC(this),e._instances.delete(this),super.destruct()}get isEnabled(){return this._isEnabled}
658start(){if(!this._isEnabled){this._isEnabled=!0,e._instances.forEach(e=>{e!==this&&e.stop()});try{this._api.start()}catch(e){this._onError(e),this.stop();return}this.__on(`speechstart`,this._onSpeechStart).__on(`error`,this._onError).__on(`result`,this._onProgress).__on(`end`,this._onResults)}}stop(){this._isEnabled&&(this._api.abort(),this._api.stop(),this.__off(`speechstart`,this._onSpeechStart).__off(`error`,this._onError).__off(`result`,this._onProgress).__off(`end`,this._onResults),this.async.clearTimeout(this._restartTimeout),this._isEnabled=!1,this.emit(`pulse`,!1))}toggle(){this._isEnabled?this.stop():this.start()}restart(){this.stop(),this.start()}__on(e,t){return this._api.addEventListener(e,t),this}__off(e,t){return this._api.removeEventListener(e,t),this}_onResults(e){this.emit(`pulse`,!1),this.emit(`result`,this.__interimResults),this.__interimResults=``,this._makeSound(440),this.restart()}_onProgress(e){if(this._isEnabled&&(this.__interimResults=``,e.results)){for(let t=0;t<e.results.length;t++){let n=e.results.item(t);if(n.length){let{transcript:e}=n.item(0);this.__interimResults+=e}}this.__interimResults&&this.emit(`progress`,this.__interimResults)}}_onError(e){e.error===`voice-unavailable`&&this.emit(`error`,`Voice unavailable`),e.error===`not-allowed`&&this.emit(`error`,`Not allowed`),(e.error===`language-unavailable`||e.error===`language-not-supported`)&&this.emit(`error`,`Language unavailable`),this._makeSound(940),this.emit(`pulse`,!1),this.stop()}_makeSound(e){this.sound&&GC(this,{frequency:e})}};JC._instances=new Set,qC([A],JC.prototype,`_onResults`,null),qC([A],JC.prototype,`_onProgress`,null),qC([A],JC.prototype,`_onError`,null);var YC=`<svg viewBox="0 0 16 16" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <path d="M8,11c1.657,0,3-1.343,3-3V3c0-1.657-1.343-3-3-3S5,1.343,5,3v5C5,9.657,6.343,11,8,11z"/> <path d="M13,8V6h-1l0,1.844c0,1.92-1.282,3.688-3.164,4.071C6.266,12.438,4,10.479,4,8V6H3v2c0,2.414,1.721,4.434,4,4.899V15H5v1h6 v-1H9v-2.101C11.279,12.434,13,10.414,13,8z"/> </svg> `;F.prototype.speechRecognize={api:HC===void 0?null:HC,sound:!0,continuous:!1,interimResults:!0,commands:{"newline|enter":`enter`,"delete|remove word|delete word":`backspaceWordButton`,comma:`inserthtml::,`,underline:`inserthtml::_`,hyphen:`inserthtml::-`,space:`inserthtml:: `,question:`inserthtml::?`,dot:`inserthtml::.`,"quote|quotes|open quote":`inserthtml::'`,"header|header h1":`formatblock::h1`,"select all":`selectall`}},vu.set(`speech-recognize`,YC),F.prototype.controls.speechRecognize={isVisible(e){return!!e.o.speechRecognize.api},isActive(e,t){return!!is(e,`speech`)?.isEnabled},isDisabled(e){return!e.o.speechRecognize.api},exec(e,t,{button:n,control:r}){let{api:i,lang:a,continuous:o,interimResults:s,sound:c}=e.o.speechRecognize;if(!i){e.alert(`Speech recognize API unsupported in your browser`);return}let l=is(e,`speech`);if(!l){let t=new i;l=new JC(e.async,t),l.lang=j(a)?a:N(e.od.documentElement,`lang`)??void 0,l.continuous=o,l.interimResults=s,l.sound=c,is(e,`speech`,l),l.on(`pulse`,e=>{n.setMod(`pulse`,e)}),l.on(`result`,t=>e.e.fire(`speechRecognizeResult`,t)),l.on(`progress`,t=>e.e.fire(`speechRecognizeProgressResult`,t)),l.on(`error`,t=>e.message.error(t)),e.hookStatus(`beforeDestruct`,()=>{is(e,`speech`,null),l.destruct()})}if(r.args){let e=r.args[0];if(Jo(l[e])){l[e]=!l[e],l.isEnabled&&l.restart();return}}l.toggle(),l.isEnabled&&n.setMod(`pulse`,!0),n.state.activated=l.isEnabled},name:`speechRecognize`,command:`toggleSpeechRecognize`,tooltip:`Speech Recognize`,list:{sound:`Sound`,interimResults:`Interim Results`},childTemplate(e,t,n){return`<span class='jodit-speech-recognize__list-item'><input ${is(e,`speech`)?.[t]??e.o.speechRecognize[t]?`checked`:``} class='jodit-checkbox' type='checkbox'> ${n}</span>`},mods:{stroke:!1}};function XC(e,t){let[n,r]=t.split(`::`);n.toLowerCase()===`open`&&r&&/^(javascript:|data:|vbscript:)/i.test(r.trim())||e.execCommand(n,null,r)}var ZC=s({default:()=>QC}),QC={newline:`Ø§ÙØ®Ø· Ø§ÙØ¬Ø¯Ùد`,delete:`ØØ°Ù`,space:`اÙÙØ¶Ø§Ø¡`,"Speech Recognize":`Ø§ÙØªØ¹Ø±Ù عÙ٠اÙÙÙØ§Ù
`,Sound:`Ø§ÙØµÙت`,"Interim Results":`اÙÙØªØ§Ø¦Ø¬ اÙÙ
Ø¤ÙØªØ©`},$C=s({default:()=>ew}
658),ew={newline:`Åádek`,delete:`odstranit`,space:`prostora`,"Speech Recognize":`Rozpoznánà ÅeÄi`,Sound:`Zvuk`,"Interim Results":`PrůbÄžné Výsledky`},tw=s({default:()=>nw}),nw={newline:`Zeilenumbruch`,delete:`löschen`,space:`Raum`,"Speech Recognize":`Sprache Erkennen`,Sound:`Sound`,"Interim Results":`Zwischenergebnis`},rw=s({default:()=>iw}),iw={newline:`nueva lÃnea`,delete:`eliminar`,space:`espacio`,"Speech Recognize":`Reconocimiento de Voz`,Sound:`Sonido`,"Interim Results":`Resultados Provisionales`},aw=s({default:()=>ow}),ow={newline:`خط Ø¬Ø¯ÛØ¯`,delete:`ØØ°Ù`,space:`ÙØ¶Ø§`,"Speech Recognize":`Ú¯ÙØªØ§Ø± را ØªØ´Ø®ÛØµ دÙÛØ¯`,Sound:`صدا`,"Interim Results":`ÙØªØ§Ûج Ù
ÙÙØª`},sw=s({default:()=>cw}),cw={"Speech Recognize":`Puheentunnistus`,newline:`uusi rivi`,delete:`poistaa`,space:`tilaa`,Sound:`Ãäni`,"Interim Results":`Välitulokset`},lw=s({default:()=>uw}),uw={newline:`nouvelle ligne`,delete:`supprimer`,space:`espace`,"Speech Recognize":`Reconnaissance Vocale`,Sound:`Son`,"Interim Results":`Résultats Intermédiaires`},dw=s({default:()=>fw}),fw={newline:`××ש×ת`,delete:`×××§`,space:`ש××`,"Speech Recognize":`××××ר ××××`,Sound:`×§××`,"Interim Results":`ת×צ××ת ××× ×××`},pw=s({default:()=>mw}),mw={newline:`újsor`,delete:`törlés`,space:`tér`,"Speech Recognize":`A Beszéd Felismeri`,Sound:`Hang`,"Interim Results":`IdÅközi Eredmények`},hw=s({default:()=>gw}),gw={newline:`newline`,delete:`Hapus`,space:`ruang`,"Speech Recognize":`Pidato Mengenali`,Sound:`Suara`,"Interim Results":`Hasil Sementara`},_w=s({default:()=>vw}),vw={newline:`nuova riga`,delete:`eliminare`,space:`spazio`,"Speech Recognize":`Discorso Riconoscere`,Sound:`Suono`,"Interim Results":`Risultati intermedi`},yw=s({default:()=>bw}),bw={newline:`æ¹è¡`,delete:`åé¤`,space:`ã¹ãã¼ã¹`,"Speech Recognize":`é³å£°èªè`,Sound:`é³`,"Interim Results":`ä¸éçµæ`},xw=s({default:()=>Sw}),Sw={newline:`ì¤ ë°ê¿`,delete:`ìì `,space:`ê³µê°`,"Speech Recognize":`ìì± ì¸ì`,Sound:`ì리`,"Interim Results":`ì¤ê° ê²°ê³¼`},Cw=s({default:()=>ww}),ww={newline:`Ð¨Ð¸Ð½Ñ Ð¼Ó©Ñ`,delete:`УÑÑгаÑ
`,space:`Ðай`,"Speech Recognize":`ÐÑÑ Ñ
оолой ÑаниÑ
`,Sound:`ÐÑÑ`,"Interim Results":`Ð¢Ò¯Ñ Ð·ÑÑÑÑн Ò¯Ñ Ð´Ò¯Ð½`},Tw=s({default:()=>Ew}),Ew={newline:`regel`,delete:`verwijderen`,space:`ruimte`,"Speech Recognize":`Spraak Herkennen`,Sound:`Geluid`,"Interim Results":`Tussentijdse Resultaten`},Dw=s({default:()=>Ow}),Ow={newline:`nylinje`,delete:`slette`,space:`rom`,"Speech Recognize":`Talegjenkjenning`,Sound:`Lyd`,"Interim Results":`Midlertidige resultater`},kw=s({default:()=>Aw}),Aw={newline:`newline`,delete:`usunÄ
Ä`,space:`przestrzeÅ`,"Speech Recognize":`Rozpoznawanie Mowy`,Sound:`DźwiÄk`,"Interim Results":`Wyniki Okresowe`},jw=s({default:()=>Mw}),Mw={newline:`linha`,delete:`excluir`,space:`espaco`,"Speech Recognize":`Discurso Reconhecer`,Sound:`Som`,"Interim Results":`Resultados Provisórios`},Nw=s({default:()=>Pw}),Pw={newline:`Ð½Ð¾Ð²Ð°Ñ ÑÑÑока|пеÑеноÑ|ÑнÑеÑ`,delete:`ÑдалиÑÑ`,space:`пÑобел`,"Speech Recognize":`РаÑпознавание ÑеÑи`,Sound:`ÐвÑк`,"Interim Results":`ÐÑомежÑÑоÑнÑе ÑезÑлÑÑаÑÑ`},Fw=s({default:()=>Iw}),Iw={newline:`yeni satır`,delete:`silmek`,space:`uzay`,"Speech Recognize":`KonuÅma Tanıma`,Sound:`Ses`,"Interim Results":`Ara Sonuçlar`},Lw=s({default:()=>Rw}),Rw={newline:`Ð½Ð¾Ð²Ð°Ñ ÑÑÑока|пеÑеноÑ|енÑеÑ`,delete:`видалиÑи`,space:`пÑобел`,"Speech Recognize":`РаÑпознавание ÑеÑи`,Sound:`ÐвÑк`,"Interim Results":`ÐÑомÑÐ¶Ð½Ñ ÑезÑлÑÑаÑи`},zw=s({default:()=>Bw}),Bw={newline:`æ°è¡`,delete:`å é¤`,space:`空é´`,"Speech Recognize":`è¨è¯è¯å«`,Sound:`声é³`,"Interim Results":`䏿ä¸ç»©`},Vw=s({default:()=>Hw}),Hw={newline:`æè¡`,delete:`åªé¤`,space:`空ç½`,"Speech Recognize":`èªé³è¾¨è`,Sound:`è²é³`,"Interim Results":`éæ®µæ§è¾¨èçµæ`},Uw=s({ar:()=>ZC,cs_cz:()=>$C,de:()=>tw,es:()=>rw,fa:()=>aw,fi:()=>sw,fr:()=>lw,he:()=>dw,hu:()=>pw,id:()=>hw,it:()=>_w,ja:()=>yw,ko:()=>xw,mn:()=>Cw,nl:()=>Tw,no:()=>Dw,pl:()=>kw,pt_br:()=>jw,ru:()=>Nw,tr:()=>Fw,ua:()=>Lw,zh_cn:()=>zw,zh_tw:()=>Vw}),Ww=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Gw=class extends Lf{constructor(){super(...arguments),this.buttons=[{group:`state`,name:`speechRecognize`}],this._commandToWord={}}
658afterInit(e){let{commands:t}=e.o.speechRecognize;t&&(Oc(Uw),_s(t,!1).forEach(n=>{n.split(`|`).forEach(r=>{r=r.trim().toLowerCase(),this._commandToWord[r]=t[n];let i=e.i18n(r);i!==r&&i.split(`|`).forEach(e=>{this._commandToWord[e.trim().toLowerCase()]=t[n].trim()})})}))}beforeDestruct(e){P.safeRemove(this.messagePopup)}onSpeechRecognizeProgressResult(e){this.messagePopup||=this.j.create.div(`jodit-speech-recognize__popup`),this.j.workplace.appendChild(this.messagePopup),this.j.async.clearTimeout(this.__hidePopupTimeout),this.__hidePopupTimeout=this.j.async.setTimeout(()=>{P.safeRemove(this.messagePopup)},1e3),this.messagePopup.innerText=e+`|`}onSpeechRecognizeResult(e){this.j.async.clearTimeout(this.__hidePopupTimeout),P.safeRemove(this.messagePopup);let{j:t}=this,{s:n}=t;if(!this._checkCommand(e)){let{range:r}=n,i=n.current();if(n.isCollapsed()&&P.isText(i)&&P.isOrContains(t.editor,i)&&i.nodeValue){let a=i.nodeValue;i.nodeValue=a+(/[\u00A0 ]\uFEFF*$/.test(a)?``:` `)+e,r.setStartAfter(i),n.selectRange(r),t.synchronizeValues()}else n.insertHTML(e)}}_checkCommand(e){return e=e.toLowerCase().replace(/\./g,``),this._commandToWord[e]?(XC(this.j,this._commandToWord[e]),!0):!1}};Ww([I(`:speechRecognizeProgressResult`)],Gw.prototype,`onSpeechRecognizeProgressResult`,null),Ww([I(`:speechRecognizeResult`)],Gw.prototype,`onSpeechRecognizeResult`,null),dm.plugins.add(`speech-recognize`,Gw);var Kw=o((e=>{(function(){function t(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===ae?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case te:return`Suspense`;case ne:return`SuspenseList`;case C:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case ee:var n=e.render;return e=e.displayName,e||=(e=n.displayName||n.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return n=e.displayName||null,n===null?t(e.type)||`Memo`:n;case ie:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function n(e){return``+e}function r(e){try{n(e);var t=!1}catch{t=!0}if(t){t=console;var r=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return r.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),n(e)}}function i(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===ie)return`<...>`;try{var n=t(e);return n?`<`+n+`>`:`<...>`}catch{return`<...>`}}function a(){var e=w.A;return e===null?null:e.getOwner()}function o(){return Error(`react-stack-top-frame`)}function s(e){if(oe.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function c(e,t){function n(){ce||(ce=!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)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function l(){var e=t(this.type);return le[e]||(le[e]=!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.`)),e=this.props.ref,e===void 0?null:e}function u(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:l}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,n,i,o,l,d){var f=n.children;if(f!==void 0)if(o)if(T(f)){for(o=0;o<f.length;o++)p(f[o]);Object.freeze&&Object.freeze(f)}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 p(f);if(oe.call(n,`key`)){f=t(e);var m=Object.keys(n).filter(function(e){return e!==`key`});o=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,fe[f+o]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}
658`,console.error(`A props object containing a "key" prop is being spread into JSX: 659 let props = %s; 660 <%s {...props} /> 661React keys must be passed directly to JSX without using spread: 662 let props = %s; 663 <%s key={someKey} {...props} />`,o,f,m,f),fe[f+o]=!0)}if(f=null,i!==void 0&&(r(i),f=``+i),s(n)&&(r(n.key),f=``+n.key),`key`in n)for(var h in i={},n)h!==`key`&&(i[h]=n[h]);else i=n;return f&&c(i,typeof e==`function`?e.displayName||e.name||`Unknown`:e),u(e,f,i,a(),l,d)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===ie&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=d(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),ee=Symbol.for(`react.forward_ref`),te=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),C=Symbol.for(`react.activity`),ae=Symbol.for(`react.client.reference`),w=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,oe=Object.prototype.hasOwnProperty,T=Array.isArray,se=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var ce,le={},ue=h.react_stack_bottom_frame.bind(h,o)(),de=se(i(o)),fe={};e.Fragment=v,e.jsx=function(e,t,n){var r=1e4>w.recentlyCreatedOwnerStacks++;return f(e,t,n,!1,r?Error(`react-stack-top-frame`):ue,r?se(i(e)):de)},e.jsxs=function(e,t,n){var r=1e4>w.recentlyCreatedOwnerStacks++;return f(e,t,n,!0,r?Error(`react-stack-top-frame`):ue,r?se(i(e)):de)}})()})),qw=o(((e,t)=>{t.exports=Kw()}))(),Jw=dm;function Yw(e){let t=(0,S.useRef)(``);return(0,S.useEffect)(()=>{t.current=e},[e]),t.current}var Xw=(0,S.forwardRef)(({JoditConstructor:e=Jw,className:t,config:n,id:r,name:i,onBlur:a,onChange:o,tabIndex:s,value:c,editorRef:l},u)=>{let d=(0,S.useRef)(null),f=(0,S.useRef)(null);(0,S.useEffect)(()=>{let t=d.current,r=e.make(t,n);return f.current=r,typeof l==`function`&&l(r),()=>{r.isReady?r.destruct():r.waitForReady().then(e=>e.destruct())}},[e,n,l]),(0,S.useEffect)(()=>{u&&(typeof u==`function`?u(f.current):u.current=f.current)},[d,u,f]);let p=Yw(t??``);return(0,S.useEffect)(()=>{let e=f.current?.container?.classList;p!==t&&typeof p==`string`&&p.split(/\s+/).filter(Boolean).forEach(t=>e?.remove(t)),t&&typeof t==`string`&&t.split(/\s+/).filter(Boolean).forEach(t=>e?.add(t))},[t,p]),(0,S.useEffect)(()=>{f.current?.workplace&&(f.current.workplace.tabIndex=s||-1)},[s]),(0,S.useEffect)(()=>{let e=f.current;if(!e?.events||!(a||o))return;let t=e=>a&&a(f?.current?.value??``,e),n=e=>o&&o(e);return e.events.on(`blur`,t).on(`change`,n),()=>{var r;(r=e.events)==null||r.off(`blur`,t).off(`change`,n)}},[a,o]),(0,S.useEffect)(()=>{let e=f.current,t=()=>{e&&c!==void 0&&e.value!==c&&(e.value=c)};e&&(e.isReady?t():e.waitForReady().then(t))},[c]),(0,qw.jsx)(`div`,{className:`jodit-react-container`,children:(0,qw.jsx)(`textarea`,{defaultValue:c,name:i,id:r,ref:d})})});Xw.displayName=`JoditEditor`;var Zw=Xw,Qw=`/opt/src/frontend/src/components/blog/BlogPostEditor.tsx`,$w=({editingPost:e,onSubmit:t,onCancel:n})=>{let{translations:r,language:i}=rr(),[a,o]=(0,S.useState)(e?.title??``),[s,c]=(0,S.useState)(e?.content??``),[l,u]=(0,S.useState)([]),[d,f]=(0,S.useState)(!1),[p,m]=(0,S.useState)([]),[h,g]=(0,S.useState)(()=>document.documentElement.classList.contains(`dark`)),_=(0,S.useRef)(null);(0,S.useEffect)(()=>{let e=new MutationObserver(()=>g(document.documentElement.classList.contains(`dark`)));return e.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`]}),()=>e.disconnect()},[]);let v=(0,S.useMemo)(()=>({readonly:!1,theme:h?`dark`:`default`,placeholder:`Write your content here...`,height:400,buttons:`source.|.bold.italic.underline.strikethrough.|.superscript.subscript.|.ul.ol.|.outdent.indent.|.font.fontsize.brush.paragraph.|.image.video.table.link.|.align.|.undo.redo.|.hr.eraser.copyformat.|.symbol.fullsize`.split(`.`),uploader:{insertImageAsBase64URI:!0},showCharsCounter:!1,showWordsCounter:!1,showXPathInStatusbar:!1}),[h]);(0,S.useEffect)(()=>{e?(o(e.title||``),c(e.content||``),u(e.attachments?.map(e=>({...e,createdAt:e.createdAt||new Date().toISOString()}))||[])):(o(``),c(``),u([]))},[e]);let y=async e=>{e.preventDefault(),f(!0);
663try{await t({title:a,content:s,attachments:l}),o(``),c(``),u([])}catch(e){Kn.error(`Submission error:`,e)}finally{f(!1)}},b=async e=>{if(!e.target.files)return;let t=Array.from(e.target.files);m(t);let n=t.map(e=>({filename:e.name,path:URL.createObjectURL(e),mimetype:e.type,size:e.size,createdAt:new Date().toISOString()}));u(e=>[...e,...n]),m([])},x=e=>u(t=>t.filter((t,n)=>n!==e));return(0,E.jsxDEV)(`div`,{className:`mb-8 bg-white dark:bg-gray-800 rounded-xl shadow-lg p-6`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 text-gray-900 dark:text-white`,children:e?r.blog.update:r.blog.createPost},void 0,!1,{fileName:Qw,lineNumber:125,columnNumber:7},void 0),(0,E.jsxDEV)(`form`,{onSubmit:y,children:[(0,E.jsxDEV)(`div`,{className:`mb-4`,children:(0,E.jsxDEV)(`input`,{type:`text`,value:a,onChange:e=>o(e.target.value),placeholder:r.blog.titlePlaceholder,className:`w-full px-4 py-2 rounded-lg border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white focus:ring-2 focus:ring-blue-500`,required:!0},void 0,!1,{fileName:Qw,lineNumber:130,columnNumber:11},void 0)},void 0,!1,{fileName:Qw,lineNumber:129,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`mb-6`,"data-testid":`jodit-wrapper`,children:(0,E.jsxDEV)(Zw,{ref:_,value:s,config:v,onBlur:e=>c(e)},e?._id??`new`,!1,{fileName:Qw,lineNumber:141,columnNumber:11},void 0)},void 0,!1,{fileName:Qw,lineNumber:140,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`mb-4`,children:[(0,E.jsxDEV)(`label`,{className:`block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2`,children:r.blog.attachments||`Attachments`},void 0,!1,{fileName:Qw,lineNumber:151,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-2`,children:[(0,E.jsxDEV)(`input`,{type:`file`,multiple:!0,onChange:b,className:`hidden`,id:`file-upload`},void 0,!1,{fileName:Qw,lineNumber:155,columnNumber:13},void 0),(0,E.jsxDEV)(`button`,{type:`button`,onClick:()=>document.getElementById(`file-upload`)?.click(),className:`px-4 py-2 bg-blue-500 text-white rounded-lg hover:bg-blue-600 transition-colors duration-200`,children:`Browse...`},void 0,!1,{fileName:Qw,lineNumber:156,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-gray-600 dark:text-gray-400 text-sm`,children:p.length>0?`Uploading...`:l.length>0?`${l.length} file(s) selected`:`No files selected`},void 0,!1,{fileName:Qw,lineNumber:163,columnNumber:13},void 0)]},void 0,!0,{fileName:Qw,lineNumber:154,columnNumber:11},void 0),l.length>0&&(0,E.jsxDEV)(`div`,{className:`mt-2 space-y-2`,children:l.map((e,t)=>{let{displayName:n,details:r}=O(e.filename,e.size,e.createdAt,i);return(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between text-sm text-gray-700 dark:text-gray-300 bg-gray-100 dark:bg-gray-700 p-2 rounded-lg`,children:[(0,E.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,E.jsxDEV)(`span`,{children:n},void 0,!1,{fileName:Qw,lineNumber:180,columnNumber:23},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:r},void 0,!1,{fileName:Qw,lineNumber:181,columnNumber:23},void 0)]},void 0,!0,{fileName:Qw,lineNumber:179,columnNumber:21},void 0),(0,E.jsxDEV)(`button`,{type:`button`,onClick:()=>x(t),className:`text-red-500 hover:text-red-600`,children:`Remove`},void 0,!1,{fileName:Qw,lineNumber:183,columnNumber:21},void 0)]},t,!0,{fileName:Qw,lineNumber:178,columnNumber:19},void 0)})},void 0,!1,{fileName:Qw,lineNumber:172,columnNumber:13},void 0)]},void 0,!0,{fileName:Qw,lineNumber:150,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`flex gap-2`,children:[(0,E.jsxDEV)(`button`,{type:`submit`,disabled:d,className:`bg-blue-500 text-white px-6 py-2 rounded-lg hover:bg-blue-600 disabled:opacity-50 transition-colors duration-200`,children:d?e?r.blog.updating:r.blog.publishing:e?r.blog.update:r.blog.publish},void 0,!1,{fileName:Qw,lineNumber:194,columnNumber:11},void 0),e&&n&&(0,E.jsxDEV)(`button`,{type:`button`,onClick:n,className:`bg-gray-600 text-white px-6 py-2 rounded-lg hover:bg-gray-700 transition-colors duration-200`,children:r.blog.cancel},void 0,!1,{fileName:Qw,lineNumber:204,columnNumber:13},void 0)]},void 0,!0,{fileName:Qw,lineNumber:193,columnNumber:9},void 0)]},void 0,!0,{fileName:Qw,lineNumber:128,columnNumber:7},void 0)]},void 0,!0,{fileName:Qw,lineNumber:124,columnNumber:5},void 0)},eT=`/opt/src/frontend/src/components/blog/BlogPostEditorPage.tsx`,tT=()=>{let{translations:e}=rr(),{postId:t}=Ct(),n=xt(),r=ur(),[i,a]=(0,S.useState)(null),[o,s]=(0,S.useState)(!!t),[c,l]=(0,S.useState)(null);(0,S.useEffect)(()=>{t&&u()},[t]);let u=async()=>
663{if(t)try{let e=await r.getPost(t);a(e)}catch(t){Kn.error(`Error fetching post:`,t),l(e.blog.error.fetch)}finally{s(!1)}};return o?(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:(0,E.jsxDEV)(`div`,{className:`text-center text-gray-600 dark:text-gray-400`,children:e.blog.loading},void 0,!1,{fileName:eT,lineNumber:62,columnNumber:11},void 0)},void 0,!1,{fileName:eT,lineNumber:61,columnNumber:9},void 0)},void 0,!1,{fileName:eT,lineNumber:60,columnNumber:7},void 0):(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>n(`/blog`),className:`mb-6 px-4 py-2 text-blue-500 hover:text-blue-600 dark:text-blue-400 dark:hover:text-blue-300 transition-colors duration-200 flex items-center`,children:[(0,E.jsxDEV)(`svg`,{className:`w-5 h-5 mr-2`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 19l-7-7m0 0l7-7m-7 7h18`},void 0,!1,{fileName:eT,lineNumber:78,columnNumber:13},void 0)},void 0,!1,{fileName:eT,lineNumber:77,columnNumber:11},void 0),e.common.backToMenu]},void 0,!0,{fileName:eT,lineNumber:73,columnNumber:9},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-8 transition-colors duration-200`,children:i?e.blog.update:e.blog.createPost},void 0,!1,{fileName:eT,lineNumber:83,columnNumber:9},void 0),c&&(0,E.jsxDEV)(`div`,{className:`bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded-lg mb-4`,children:c},void 0,!1,{fileName:eT,lineNumber:88,columnNumber:11},void 0),(0,E.jsxDEV)($w,{editingPost:i,onSubmit:i?async t=>{if(i)try{await r.updatePost(i._id,t),n(`/blog`)}catch(t){Kn.error(`Error updating post:`,t),l(e.blog.error.update)}}:async t=>{try{await r.createPost(t),n(`/blog`)}catch(t){Kn.error(`Error creating post:`,t),l(e.blog.error.create)}},onCancel:()=>n(`/blog`)},void 0,!1,{fileName:eT,lineNumber:93,columnNumber:9},void 0)]},void 0,!0,{fileName:eT,lineNumber:72,columnNumber:7},void 0)},void 0,!1,{fileName:eT,lineNumber:71,columnNumber:5},void 0)},nT=`/opt/src/frontend/src/components/DiversPage.tsx`,rT=()=>{let{translations:e}=rr(),t=[{title:e.header.divers.unterwasserrugby,description:e.divers.unterwasserrugbyDescription,icon:(0,E.jsxDEV)(Gr,{className:`w-8 h-8`},void 0,!1,{fileName:nT,lineNumber:13,columnNumber:13},void 0),path:`/uwr`,bgColor:`bg-indigo-500`},{title:e.header.divers.webcams,description:e.divers.webcamDescription,icon:(0,E.jsxDEV)(Mr,{className:`w-8 h-8`},void 0,!1,{fileName:nT,lineNumber:20,columnNumber:13},void 0),path:`/divers/webcams`,bgColor:`bg-blue-500`},{title:e.header.divers.drones,description:e.divers.dronesDescription,icon:(0,E.jsxDEV)(si,{className:`w-8 h-8`},void 0,!1,{fileName:nT,lineNumber:27,columnNumber:13},void 0),path:`/divers/drones`,bgColor:`bg-green-500`},{title:e.header.divers[`3dPrinters`],description:e.divers[`3dPrintersDescription`],icon:(0,E.jsxDEV)(ai,{className:`w-8 h-8`},void 0,!1,{fileName:nT,lineNumber:34,columnNumber:13},void 0),path:`/divers/3d-printers`,bgColor:`bg-orange-500`},{title:e.header.divers.machineLearning,description:e.divers.machineLearningDescription,icon:(0,E.jsxDEV)(ri,{className:`w-8 h-8`},void 0,!1,{fileName:nT,lineNumber:41,columnNumber:13},void 0),path:`/divers/machine-learning`,bgColor:`bg-teal-500`}];return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-8 transition-colors duration-200`,children:e.header.divers.main},void 0,!1,{fileName:nT,lineNumber:57,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8`,children:t.map((e,t)=>(0,E.jsxDEV)(Pn,{to:e.path,className:`transform transition-all duration-300 hover:scale-105`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-700 rounded-lg shadow-lg overflow-hidden h-full`,children:[(0,E.jsxDEV)(`div`,{className:`${e.bgColor} p-6 flex justify-center items-center text-white`,children:e.icon},void 0,!1,{fileName:nT,lineNumber:69,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`p-6`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold mb-2 text-gray-900 dark:text-white`,children:e.title},void 0,!1,{fileName:nT,lineNumber:73,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:e.description},void 0,!1,{fileName:nT,lineNumber:76,columnNumber:19},void 0)]},void 0,!0,{fileName:nT,lineNumber:72,columnNumber:17},void 0)]},void 0,!0,{fileName:nT,lineNumber:68,columnNumber:15},void 0)},t,!1,{fileName:nT,lineNumber:63,columnNumber:13},void 0))},void 0,!1,{fileName:nT,lineNumber:61,columnNumber:9},void 0)]},void 0,!0,{fileName:nT,lineNumber:56,columnNumber:7},void 0)},void 0,!1,{fileName:nT,lineNumber:55,columnNumber:5},void 0)},iT=`/opt/src/frontend/src/middleware/Loading.middleware.tsx`,aT=({text:e=`Loading`,className:t=``})=>(0,E.jsxDEV)(`div`,{className:`absolute inset-0 flex items-center justify-center bg-gray-800 bg-opacity-75 ${t}`,children:[(0,E.jsxDEV)(`style`,{children:` 664 @keyframes spin { 665 0% { 666 transform: rotate(0deg); 667 } 668 100% { 669 transform: rotate(360deg); 670 } 671 } 672 673 .spinner { 674 animation: spin 1s linear infinite; 675 } 676 `},void 0,!1,{fileName:iT,lineNumber:14,columnNumber:7},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3`,children:[(0,E.jsxDEV)(`svg`,{className:`spinner w-6 h-6 text-blue-500`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,E.jsxDEV)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`},void 0,!1,{fileName:iT,lineNumber:32,columnNumber:11},void 0),(0,E.jsxDEV)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z`},void 0,!1,{fileName:iT,lineNumber:33,columnNumber:11},void 0)]},void 0,!0,{fileName:iT,lineNumber:31,columnNumber:9},void 0),(0,E.jsxDEV)(`span`,{className:`text-gray-300 text-lg font-semibold`,children:e},void 0,!1,{fileName:iT,lineNumber:35,columnNumber:9},void 0)]},void 0,!0,{fileName:iT,lineNumber:30,columnNumber:7},void 0)]},void 0,!0,{fileName:iT,lineNumber:13,columnNumber:5},void 0),z=`/opt/src/frontend/src/components/GamePage.tsx`,oT=[{id:`minecraft`,image:`/images/minecraft.png`,url:`css-minecraft`,type:`singleplayer`,icon:(0,E.jsxDEV)(Vi,{className:`w-5 h-5 text-green-600`},void 0,!1,{fileName:z,lineNumber:23,columnNumber:104},void 0)},{id:`space-invaders`,image:`/images/space-invaders.png`,url:`space-invaders`,type:`singleplayer`,icon:(0,E.jsxDEV)(Oi,{className:`w-5 h-5 text-purple-500`},void 0,!1,{fileName:z,lineNumber:24,columnNumber:115},void 0)},{id:`rockets`,image:`/images/rocket.png`,url:`space`,type:`singleplayer`,icon:(0,E.jsxDEV)(ni,{className:`w-5 h-5 text-blue-500`},void 0,!1,{fileName:z,lineNumber:26,columnNumber:91},void 0)},{id:`minesweeper`,image:`/images/minesweeper.png`,url:`minesweeper`,type:`singleplayer`,icon:(0,E.jsxDEV)(aa,{className:`w-5 h-5 text-red-500`},void 0,!1,{fileName:z,lineNumber:27,columnNumber:106},void 0)},{id:`rubixCube`,image:`/images/rubix-cube.png`,url:`cube`,type:`singleplayer`,icon:(0,E.jsxDEV)(Vi,{className:`w-5 h-5 text-yellow-500`},void 0,!1,{fileName:z,lineNumber:28,columnNumber:96},void 0)},{id:`connect4`,image:`/images/4-gewinnt.png`,url:`4-gewinnt`,type:`multiplayer`,icon:(0,E.jsxDEV)(Pr,{className:`w-5 h-5 text-purple-500`},void 0,!1,{fileName:z,lineNumber:29,columnNumber:98},void 0)},{id:`flappyBird`,image:`/images/flappy.png`,url:`flappy`,type:`singleplayer`,icon:(0,E.jsxDEV)(Oi,{className:`w-5 h-5 text-green-500`},void 0,!1,{fileName:z,lineNumber:30,columnNumber:95},void 0)},{id:`chess`,image:`/images/chess.png`,url:`chess`,type:`multiplayer`,icon:(0,E.jsxDEV)(Zi,{className:`w-5 h-5 text-gray-500`},void 0,!1,{fileName:z,lineNumber:31,columnNumber:87},void 0)},{id:`music`,image:`/images/music.png`,url:`music`,type:`singleplayer`,icon:(0,E.jsxDEV)(fi,{className:`w-5 h-5 text-pink-500`},void 0,!1,{fileName:z,lineNumber:32,columnNumber:88},void 0)},{id:`atc`,image:`/images/atc.jpg`,url:`atc`,type:`singleplayer`,icon:(0,E.jsxDEV)(si,{className:`w-5 h-5 text-blue-400`},void 0,!1,{fileName:z,lineNumber:33,columnNumber:82},void 0)},{id:`2048`,image:`/images/2048.png`,url:`2048`,type:`singleplayer`,icon:(0,E.jsxDEV)(Li,{className:`w-5 h-5 text-orange-500`},void 0,!1,{fileName:z,lineNumber:34,columnNumber:85},void 0)},{id:`connect5`,image:`/images/5win.png`,url:`5wins`,type:`singleplayer`,icon:(0,E.jsxDEV)(zr,{className:`w-5 h-5 text-indigo-500`},void 0,!1,{fileName:z,lineNumber:35,columnNumber:90},void 0)},{id:`towerBlocks`,image:`/images/tower_blocks.png`,url:`tower_blocks`,type:`singleplayer`,icon:(0,E.jsxDEV)(Bi,{className:`w-5 h-5 text-teal-500`},void 0,!1,{fileName:z,lineNumber:36,columnNumber:108},void 0)},{id:`jumpAndRun2`,image:`/images/jump_and_run-2-0.png`,url:`jump_and_run2`,type:`singleplayer`,icon:(0,E.jsxDEV)(ti,{className:`w-5 h-5 text-green-600`},void 0,!1,{fileName:z,lineNumber:37,columnNumber:113},void 0)},{id:`pong`,image:`/images/pong.png`,url:`pong`,type:`singleplayer`,icon:(0,E.jsxDEV)(Wr,{className:`w-5 h-5 text-blue-600`},void 0,!1,{fileName:z,lineNumber:38,columnNumber:85},void 0)},{id:`reactGame`,image:`/images/react_game.png`,url:`react_game`,type:`singleplayer`,icon:(0,E.jsxDEV)(Er,{className:`w-5 h-5 text-cyan-500`},void 0,!1,{fileName:z,lineNumber:39,columnNumber:102},void 0)}
676,{id:`snake2`,image:`/images/snake2-0.png`,url:`snake2`,type:`singleplayer`,icon:(0,E.jsxDEV)(Ii,{className:`w-5 h-5 text-lime-500`},void 0,!1,{fileName:z,lineNumber:40,columnNumber:93},void 0)},{id:`ticTacToe`,image:`/images/tic_tac_toe.png`,url:`tic_tac_toe`,type:`multiplayer`,icon:(0,E.jsxDEV)($i,{className:`w-5 h-5 text-purple-600`},void 0,!1,{fileName:z,lineNumber:41,columnNumber:103},void 0)},{id:`tetris`,image:`/images/tetris.png`,url:`tetris`,type:`singleplayer`,icon:(0,E.jsxDEV)(ii,{className:`w-5 h-5 text-red-600`},void 0,!1,{fileName:z,lineNumber:42,columnNumber:91},void 0)},{id:`breakout`,image:`/images/breakout.png`,url:`breakout`,type:`singleplayer`,icon:(0,E.jsxDEV)(oi,{className:`w-5 h-5 text-blue-500`},void 0,!1,{fileName:z,lineNumber:43,columnNumber:97},void 0)},{id:`stickHero`,image:`/images/stick-hero.png`,url:`stick-hero`,type:`singleplayer`,icon:(0,E.jsxDEV)(Fr,{className:`w-5 h-5 text-yellow-600`},void 0,!1,{fileName:z,lineNumber:44,columnNumber:102},void 0)},{id:`tiltingMaze`,image:`/images/tilting-maze.png`,url:`tilting-maze`,type:`singleplayer`,icon:(0,E.jsxDEV)(ca,{className:`w-5 h-5 text-purple-500`},void 0,!1,{fileName:z,lineNumber:45,columnNumber:108},void 0)},{id:`ultimate-tic-tac-toe`,image:`/images/ultimate-tic-tac-toe.png`,url:`ultimate-tic-tac-toe`,type:`multiplayer`,icon:(0,E.jsxDEV)(Qi,{className:`w-5 h-5 text-indigo-600`},void 0,!1,{fileName:z,lineNumber:46,columnNumber:132},void 0)},{id:`train-puzzle`,image:`/images/train-puzzle.png`,url:`train-puzzle`,type:`singleplayer`,icon:(0,E.jsxDEV)(Vr,{className:`w-5 h-5 text-green-600`},void 0,!1,{fileName:z,lineNumber:47,columnNumber:109},void 0)},{id:`pacman`,image:`/images/pacman.png`,url:`pacman`,type:`singleplayer`,icon:(0,E.jsxDEV)(Ei,{className:`w-5 h-5 text-yellow-500`},void 0,!1,{fileName:z,lineNumber:48,columnNumber:91},void 0)},{id:`connect4`,image:`/images/connect4-singlepalyer.png`,url:`connect4-singlepalyer`,type:`singleplayer`,icon:(0,E.jsxDEV)(Pr,{className:`w-5 h-5 text-purple-500`},void 0,!1,{fileName:z,lineNumber:49,columnNumber:123},void 0)},{id:`hex`,image:`/images/hex.svg`,url:`hex`,type:`multiplayer`,icon:(0,E.jsxDEV)(ii,{className:`w-5 h-5 text-blue-600`},void 0,!1,{fileName:z,lineNumber:50,columnNumber:81},void 0)},{id:`gameOfLife`,image:`/images/game-of-life.png`,url:`game-of-life`,type:`singleplayer`,icon:(0,E.jsxDEV)($r,{className:`w-5 h-5 text-pink-500`},void 0,!1,{fileName:z,lineNumber:51,columnNumber:107},void 0)}],sT=[{id:`snake`,image:`/images/snake.png`,url:`snake`,type:`singleplayer`,icon:(0,E.jsxDEV)(Ii,{className:`w-5 h-5 text-green-500`},void 0,!1,{fileName:z,lineNumber:55,columnNumber:88},void 0)},{id:`jumpAndRun`,image:`/images/jump_and_run.png`,url:`jump_and_run`,type:`singleplayer`,icon:(0,E.jsxDEV)(ti,{className:`w-5 h-5 text-green-600`},void 0,!1,{fileName:z,lineNumber:56,columnNumber:107},void 0)}],cT=({isOpen:e,onClose:t,children:n})=>{let{isDarkMode:r}=or();return e?(0,E.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50`,children:(0,E.jsxDEV)(`div`,{className:`relative w-11/12 h-5/6 ${r?`bg-gray-800`:`bg-white`} rounded-lg md:w-4/5 transition-colors duration-200`,children:[(0,E.jsxDEV)(`button`,{className:`absolute top-0 right-0 m-2 text-white bg-red-500 hover:bg-red-600 rounded-full w-8 h-8 flex items-center justify-center transition-colors duration-200`,onClick:t,children:`Ã`},void 0,!1,{fileName:z,lineNumber:70,columnNumber:9},void 0),n]},void 0,!0,{fileName:z,lineNumber:69,columnNumber:7},void 0)},void 0,!1,{fileName:z,lineNumber:68,columnNumber:5},void 0):null},lT=()=>{let{isDarkMode:e}=or(),{translations:t}=rr(),[n,r]=(0,S.useState)(null),[i,a]=(0,S.useState)(!1),[o,s]=(0,S.useState)(null),[c,l]=(0,S.useState)(`Loading Game...`),[u,d]=(0,S.useState)(``),[f,p]=(0,S.useState)(!0),[m,h]=(0,S.useState)(!0),[g,_]=(0,S.useState)(!1),[v,y]=(0,S.useState)({}),b=e=>{y(t=>({...t,[e]:!0}))},x=e=>{r(e),a(!0),s(null)},ee=()=>{r(null),a(!1),s(null)},te=()=>{a(!1)},ne=()=>{a(!1),s(t.games.error)},re=e=>t?.games?.names?.[e]||e,ie=(0,S.useMemo)(()=>t?.games?.names?oT.filter(e=>re(e.id).toLowerCase().includes(u.toLowerCase())):oT,[u,t?.games?.names]),C=t=>(0,E.jsxDEV)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-4`,children:t.map(t=>(0,E.jsxDEV)(`div`,{className:`${e?`bg-gray-800 hover:bg-gray-700`:`bg-white hover:bg-gray-50`} rounded-lg shadow hover:shadow-md transition-all duration-300 transform hover:-translate-y-1 cursor-pointer 677 border border-gray-100 dark:border-gray-700`,onClick:()=>x(t.url),children:(0,E.jsxDEV)(`div`,{className:`p-3`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-2 mb-2`,children:[(0,E.jsxDEV)(`div`,{className:`p-2 ${e?`bg-gray-700`:`bg-gray-100`} rounded-lg transition-colors duration-200`,children:t.icon},void 0,!1,{fileName:z,lineNumber:149,columnNumber:15},void 0),(0,E.jsxDEV)(`h3`,{className:`text-sm font-semibold ${e?`text-white`:`text-gray-900`} transition-colors duration-200 truncate`,children:re(t.id)},void 0,!1,{fileName:z,lineNumber:152,columnNumber:15},void 0)]},void 0,!0,{fileName:z,lineNumber:148,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`relative w-full aspect-square`,children:[!v[t.id]&&(0,E.jsxDEV)(`div`,{className:`absolute inset-0 flex items-center justify-center bg-gray-200 dark:bg-gray-700 opacity-50`,children:(0,E.jsxDEV)(qr,{className:`animate-spin text-blue-500
677w-10 h-10`},void 0,!1,{fileName:z,lineNumber:159,columnNumber:19},void 0)},void 0,!1,{fileName:z,lineNumber:158,columnNumber:17},void 0),(0,E.jsxDEV)(`img`,{src:t.image,alt:re(t.id),loading:`lazy`,onLoad:()=>b(t.id),onError:()=>b(t.id),className:`w-full h-full object-cover rounded-lg transition-opacity duration-300 ${v[t.id]?`opacity-100`:`opacity-0`}`},void 0,!1,{fileName:z,lineNumber:162,columnNumber:15},void 0)]},void 0,!0,{fileName:z,lineNumber:156,columnNumber:13},void 0)]},void 0,!0,{fileName:z,lineNumber:147,columnNumber:11},void 0)},t.id,!1,{fileName:z,lineNumber:139,columnNumber:9},void 0))},void 0,!1,{fileName:z,lineNumber:137,columnNumber:5},void 0),ae=ie.filter(e=>e.type===`singleplayer`),w=ie.filter(e=>e.type===`multiplayer`),oe=(0,S.useMemo)(()=>t?.games?.names?sT.filter(e=>re(e.id).toLowerCase().includes(u.toLowerCase())):sT,[u,t?.games?.names]);return t?.games?(0,E.jsxDEV)(`div`,{className:`min-h-screen ${e?`bg-gray-900`:`bg-gray-50`} pt-6 pb-12 transition-colors duration-200`,children:[(0,E.jsxDEV)(`div`,{className:`w-[95%] max-w-7xl mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center ${e?`text-white`:`text-gray-900`} mb-8 transition-colors duration-200`,children:t.games.title},void 0,!1,{fileName:z,lineNumber:197,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`max-w-xl mx-auto mb-8`,children:(0,E.jsxDEV)(`div`,{className:`relative`,children:[(0,E.jsxDEV)(`input`,{type:`text`,placeholder:`Search games...`,value:u,onChange:e=>d(e.target.value),className:`w-full px-4 py-3 rounded-lg ${e?`bg-gray-800 border-gray-700 text-white placeholder-gray-400`:`bg-white border-gray-300 text-gray-900 placeholder-gray-500`} border focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors duration-200`},void 0,!1,{fileName:z,lineNumber:204,columnNumber:13},void 0),(0,E.jsxDEV)(ei,{className:`absolute right-4 top-1/2 transform -translate-y-1/2 ${e?`text-gray-400`:`text-gray-500`}`},void 0,!1,{fileName:z,lineNumber:215,columnNumber:13},void 0)]},void 0,!0,{fileName:z,lineNumber:203,columnNumber:11},void 0)},void 0,!1,{fileName:z,lineNumber:202,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-12`,children:[(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3 mb-6 cursor-pointer`,onClick:()=>
677p(!f),children:[(0,E.jsxDEV)(Fr,{className:`w-6 h-6 ${e?`text-blue-400`:`text-blue-500`}`},void 0,!1,{fileName:z,lineNumber:230,columnNumber:15},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold ${e?`text-white`:`text-gray-900`} transition-colors duration-200`,children:`Singleplayer Games`},void 0,!1,{fileName:z,lineNumber:231,columnNumber:15},void 0),f?(0,E.jsxDEV)(Yi,{className:`w-5 h-5 ${e?`text-gray-400`:`text-gray-600`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:235,columnNumber:17},void 0):(0,E.jsxDEV)(Xi,{className:`w-5 h-5 ${e?`text-gray-400`:`text-gray-600`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:237,columnNumber:17},void 0)]},void 0,!0,{fileName:z,lineNumber:226,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid-section overflow-hidden transition-all duration-500 ease-in-out`,style:{maxHeight:f?`2000px`:`0`,opacity:+!!f,marginBottom:f?`2rem`:`0`},children:C(ae)},void 0,!1,{fileName:z,lineNumber:240,columnNumber:13},void 0)]},void 0,!0,{fileName:z,lineNumber:225,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3 mb-6 cursor-pointer`,onClick:()=>h(!m),children:[(0,E.jsxDEV)(zr,{className:`w-6 h-6 ${e?`text-blue-400`:`text-blue-500`}`},void 0,!1,{fileName:z,lineNumber:258,columnNumber:15},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold ${e?`text-white`:`text-gray-900`} transition-colors duration-200`,children:`Multiplayer Games`},void 0,!1,{fileName:z,lineNumber:259,columnNumber:15},void 0),m?(0,E.jsxDEV)(Yi,{className:`w-5 h-5 ${e?`text-gray-400`:`text-gray-600`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:263,columnNumber:17},void 0):(0,E.jsxDEV)(Xi,{className:`w-5 h-5 ${e?`text-gray-400`:`text-gray-600`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:265,columnNumber:17},void 0)]},void 0,!0,{fileName:z,lineNumber:254,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid-section overflow-hidden transition-all duration-500 ease-in-out`,style:{maxHeight:m?`2000px`:`0`,opacity:+!!m,marginBottom:m?`2rem`:`0`},children:C(w)},void 0,!1,{fileName:z,lineNumber:268,columnNumber:13},void 0)]},void 0,!0,{fileName:z,lineNumber:253,columnNumber:11},void 0),oe.length>0&&(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3 mb-6 cursor-pointer`,onClick:()=>_(!g),children:[(0,E.jsxDEV)(ua,{className:`w-6 h-6 ${e?`text-gray-500`:`text-gray-400`}`},void 0,!1,{fileName:z,lineNumber:287,columnNumber:17},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold ${e?`text-gray-400`:`text-gray-500`} transition-colors duration-200`,children:`Outdated Games`},void 0,!1,{fileName:z,lineNumber:288,columnNumber:17},void 0),g?(0,E.jsxDEV)(Yi,{className:`w-5 h-5 ${e?`text-gray-500`:`text-gray-400`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:292,columnNumber:19},void 0):(0,E.jsxDEV)(Xi,{className:`w-5 h-5 ${e?`text-gray-500`:`text-gray-400`} transform transition-transform duration-300`},void 0,!1,{fileName:z,lineNumber:294,columnNumber:19},void 0)]},void 0,!0,{fileName:z,lineNumber:283,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`grid-section overflow-hidden transition-all duration-500 ease-in-out`,style:{maxHeight:g?`2000px`:`0`,opacity:+!!g,marginBottom:g?`2rem`:`0`},children:C(oe)},void 0,!1,{fileName:z,lineNumber:297,columnNumber:15},void 0)]},void 0,!0,{fileName:z,lineNumber:282,columnNumber:13},void 0)]},void 0,!0,{fileName:z,lineNumber:223,columnNumber:9},void 0)]},void 0,!0,{fileName:z,lineNumber:196,columnNumber:7},void 0),(0,E.jsxDEV)(cT,{isOpen:!!n,onClose:ee,children:[i&&(0,E.jsxDEV)(aT,{text:c},void 0,!1,{fileName:z,lineNumber:313,columnNumber:23},void 0),o&&(0,E.jsxDEV)(`div`,{className:`absolute inset-0 flex items-center justify-center`,children:(0,E.jsxDEV)(`p`,{className:`text-red-500 text-xl`,children:o},void 0,!1,{fileName:z,lineNumber:316,columnNumber:13},void 0)},void 0,!1,{fileName:z,lineNumber:315,columnNumber:11},void 0),n&&(0,E.jsxDEV)(`iframe`,{src:`/games/${n}
677/index.html`,className:`w-full h-full rounded-lg`,title:`Game`,onLoad:te,onError:ne},void 0,!1,{fileName:z,lineNumber:320,columnNumber:11},void 0)]},void 0,!0,{fileName:z,lineNumber:312,columnNumber:7},void 0)]},void 0,!0,{fileName:z,lineNumber:195,columnNumber:5},void 0):(0,E.jsxDEV)(aT,{text:`Loading games...`},void 0,!1,{fileName:z,lineNumber:191,columnNumber:12},void 0)},uT=`/opt/src/frontend/src/components/ServicesPage.tsx`,dT=[{id:`zammad`,icon:(0,E.jsxDEV)(Ur,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:uT,lineNumber:20,columnNumber:25},void 0),link:`https://support.pabr.de`},{id:`uwrPlanner`,icon:(0,E.jsxDEV)(Gr,{className:`w-6 h-6 text-teal-500`},void 0,!1,{fileName:uT,lineNumber:21,columnNumber:29},void 0),link:`https://uwr-plan.de`,gitLink:`https://git.pabr.de/uwr/uwr-planner`},{id:`mailcow`,icon:(0,E.jsxDEV)(Fi,{className:`w-6 h-6 text-blue-400`},void 0,!1,{fileName:uT,lineNumber:22,columnNumber:26},void 0),link:`https://mail.pabr.de`},{id:`dms`,icon:(0,E.jsxDEV)(ki,{className:`w-6 h-6 text-blue-600`},void 0,!1,{fileName:uT,lineNumber:23,columnNumber:22},void 0),link:`https://dms.pabr.de`},{id:`immich`,icon:(0,E.jsxDEV)(xi,{className:`w-6 h-6 text-cyan-500`},void 0,!1,{fileName:uT,lineNumber:24,columnNumber:25},void 0),link:`https://img.pabr.de`},{id:`vaultwarden`,icon:(0,E.jsxDEV)(vi,{className:`w-6 h-6 text-yellow-600`},void 0,!1,{fileName:uT,lineNumber:25,columnNumber:30},void 0),link:`https://pass.pabr.de`},{id:`matrix`,icon:(0,E.jsxDEV)(Ui,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:uT,lineNumber:26,columnNumber:25},void 0),link:`https://matrix.pabr.de`},{id:`gitlab`,icon:(0,E.jsxDEV)(Or,{className:`w-6 h-6 text-orange-500`},void 0,!1,{fileName:uT,lineNumber:27,columnNumber:25},void 0),link:`https://git.pabr.de`},{id:`harbor`,icon:(0,E.jsxDEV)(kr,{className:`w-6 h-6 text-blue-600`},void 0,!1,{fileName:uT,lineNumber:28,columnNumber:25},void 0),link:`https://reg.pabr.de`},{id:`pelican`,icon:(0,E.jsxDEV)(Oi,{className:`w-6 h-6 text-green-600`},void 0,!1,{fileName:uT,lineNumber:29,columnNumber:26},void 0),link:`https://server.pabr.de`},{id:`bookstack`,icon:(0,E.jsxDEV)(ia,{className:`w-6 h-6 text-green-500`},void 0,!1,{fileName:uT,lineNumber:30,columnNumber:28},void 0),link:`https://kb.pabr.de`},{id:`planka`,icon:(0,E.jsxDEV)(Ji,{className:`w-6 h-6 text-indigo-500`},void 0,!1,{fileName:uT,lineNumber:31,columnNumber:25},void 0),link:`https://board.pabr.de`},{id:`media`,icon:(0,E.jsxDEV)(Ai,{className:`w-6 h-6 text-yellow-500`},void 0,!1,{fileName:uT,lineNumber:32,columnNumber:24},void 0),link:`http://media.pabr.de`},{id:`overleaf`,icon:(0,E.jsxDEV)(Mi,{className:`w-6 h-6 text-green-600`},void 0,!1,{fileName:uT,lineNumber:33,columnNumber:27},void 0),link:`https://overleaf.pabr.de`},{id:`penpot`,icon:(0,E.jsxDEV)(li,{className:`w-6 h-6 text-pink-500`},void 0,!1,{fileName:uT,lineNumber:34,columnNumber:25},void 0),link:`https://penpot.pabr.de`},{id:`mealieRecipe`,icon:(0,E.jsxDEV)(Nr,{className:`w-6 h-6 text-amber-500`},void 0,!1,{fileName:uT,lineNumber:35,columnNumber:31},void 0),link:`https://rezept.pabr.de`},{id:`pairdrop`,icon:(0,E.jsxDEV)(Zr,{className:`w-6 h-6 text-cyan-500`},void 0,!1,{fileName:uT,lineNumber:36,columnNumber:27},void 0),link:`https://pairdrop.pabr.de`},{id:`pdf`,icon:(0,E.jsxDEV)(ji,{className:`w-6 h-6 text-red-500`},void 0,!1,{fileName:uT,lineNumber:37,columnNumber:22},void 0),link:`https://pdf.pabr.de`},{id:`openwebui`,icon:(0,E.jsxDEV)(ra,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:uT,lineNumber:38,columnNumber:28},void 0),link:`https://llm.pabr.de`},{id:`linkShortener`,icon:(0,E.jsxDEV)(gi,{className:`w-6 h-6 text-gray-600`},void 0,!1,{fileName:uT,lineNumber:39,columnNumber:32},void 0),link:`https://short.pabr.de`}],fT=()=>{let{translations:e}=rr(),[t,n]=(0,S.useState)(null),[r,i]=(0,S.useState)({}),[a,o]=(0,S.useState)(``),s=S.useMemo(()=>dT.filter(t=>{let n=e.services.services[t.id];return n.title.toLowerCase().includes(a.toLowerCase())||n.description.toLowerCase().includes(a.toLowerCase())||n.extendedInfo.toLowerCase().includes(a.toLowerCase())}),[a,e]);S.useEffect(()=>(t?document.body.style.overflow=`hidden`:document.body.style.overflow=`unset`,()=>{document.body.style.overflow=`unset`}),[t]);let c=async(e,t)=>{dT.find(t=>
677t.id===e)?.disabled||(i(t=>({...t,[e]:!0})),await new Promise(e=>setTimeout(e,500)),window.open(t,`_blank`),i(t=>({...t,[e]:!1})))},l=t?dT.find(e=>e.id===t):null;return(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-8 transition-colors duration-200`,children:e.services.title},void 0,!1,{fileName:uT,lineNumber:86,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`max-w-2xl mx-auto mb-8 flex items-center gap-3`,children:[(0,E.jsxDEV)(`div`,{className:`relative flex-1`,children:[(0,E.jsxDEV)(`input`,{type:`text`,placeholder:e.services.searchPlaceholder,value:a,onChange:e=>o(e.target.value),className:`w-full px-4 py-3 rounded-lg bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-700 678 text-gray-900 dark:text-white placeholder-gray-500 dark:placeholder-gray-400 679 focus:outline-none focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400 680 transition-colors duration-200`},void 0,!1,{fileName:uT,lineNumber:93,columnNumber:13},void 0),(0,E.jsxDEV)(ei,{className:`absolute right-4 top-1/2 transform -translate-y-1/2 text-gray-400 dark:text-gray-500`},void 0,!1,{fileName:uT,lineNumber:103,columnNumber:13},void 0)]},void 0,!0,{fileName:uT,lineNumber:92,columnNumber:11},void 0),(0,E.jsxDEV)(`a`,{href:`https://status.pabr.de`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 px-4 py-3 rounded-full bg-green-100 dark:bg-green-900/40 681 text-green-700 dark:text-green-400 text-sm font-medium 682 hover:bg-green-200 dark:hover:bg-green-900/60 683 transition-colors duration-200 whitespace-nowrap 684 border border-green-200 dark:border-green-800`,children:[(0,E.jsxDEV)(Ci,{className:`w-4 h-4`},void 0,!1,{fileName:uT,lineNumber:117,columnNumber:13},void 0),e.services.statusPage]},void 0,!0,{fileName:uT,lineNumber:107,columnNumber:11},void 0)]},void 0,!0,{fileName:uT,lineNumber:91,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6`,children:s.map(t=>{let i=e.services.services[t.id];return(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg hover:shadow-xl 685 transition-all duration-300 transform hover:-translate-y-1 686 border border-gray-100 dark:border-gray-700 h-full 687 ${t.disabled?`opacity-50 cursor-not-allowed`:``}`,children:(0,E.jsxDEV)(`div`,{className:`p-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-start mb-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:t.icon},void 0,!1,{fileName:uT,lineNumber:137,columnNumber:23},void 0),(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white transition-colors duration-200`,children:i.title},void 0,!1,{fileName:uT,lineNumber:140,columnNumber:23},void 0)]},void 0,!0,{fileName:uT,lineNumber:136,columnNumber:21},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-2 ml-4`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>n(t.id),className:`text-blue-500 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 688 transition-colors duration-200 p-2 rounded-full hover:bg-blue-50 dark:hover:bg-blue-900`,"aria-label":e.services.showMore,children:(0,E.jsxDEV)(yi,{className:`w-5 h-5`},void 0,!1,{fileName:uT,lineNumber:151,columnNumber:25},void 0)},void 0,!1,{fileName:uT,lineNumber:145,columnNumber:23},void 0),t.link&&!t.disabled&&(0,E.jsxDEV)(`button`,{onClick:()=>c(t.id,t.link),className:`text-blue-500 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 689 transition-colors duration-200 p-2 rounded-full hover:bg-blue-50 dark:hover:bg-blue-900`,disabled:r[t.id],"aria-label":e.services.visitService,children:r[t.id]?(0,E.jsxDEV)(qr,{className:`w-5 h-5 animate-spin`},void 0,!1,{fileName:uT,lineNumber:162,columnNumber:29},void 0):(0,E.jsxDEV)(Ni,{className:`w-5 h-5`},void 0,!1,{fileName:uT,lineNumber:164,columnNumber:29},void 0)},void 0,!1,{fileName:uT,lineNumber:154,columnNumber:25},void 0)]},void 0,!0,{fileName:uT,lineNumber:144,columnNumber:21},void 0)]},void 0,!0,{fileName:uT,lineNumber:135,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 text-base transition-colors duration-200`,children:[i.description,t.disabled&&(0,E.jsxDEV)(`span`,{className:`block mt-2 text-red-500 dark:text-red-400`,children:e.services.serviceDisabled||`Service temporarily disabled`},void 0,!1,{fileName:uT,lineNumber:173,columnNumber:23},void 0)]},void 0,!0,{fileName:uT,lineNumber:170,columnNumber:19},void 0)]},void 0,!0,{fileName:uT,lineNumber:134,columnNumber:17},void 0)},t.id,!1,{fileName:uT,lineNumber:127,columnNumber:15},void 0)})},void 0,!1,{fileName:uT,lineNumber:123,columnNumber:9},void 0),l&&(0,E.jsxDEV)(`div`,{className:`fixed top-0 right-0 w-full sm:w-96 bg-white dark:bg-gray-800 shadow-2xl transform transition-transform duration-300 ease-in-out z-50 690 ${t?`translate-x-0`:`translate-x-full`} 691 h-screen pt-16 overflow-y-auto`,children:(0,E.jsxDEV)(`div`,{className:`p-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center mb-6 sticky top-0 bg-white dark:bg-gray-800 py-2`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3`,children:[(0,E.jsxDEV)(`div`,{className:`p-2 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:l.icon},void 0,!1,{fileName:uT,lineNumber:194,columnNumber:19},void 0),(0,E.jsxDEV)(`h3`,{className:`text-2xl font-bold text-gray-900 dark:text-white`,children:e.services.services[l.id].title},void 0,!1,{fileName:uT,lineNumber:197,columnNumber:19},void 0)]},void 0,!0,{fileName:uT,lineNumber:193,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>n(null),className:`text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 692 transition-colors duration-200`,children:(0,E.jsxDEV)(
692Hr,{className:`w-6 h-6`},void 0,!1,{fileName:uT,lineNumber:206,columnNumber:19},void 0)},void 0,!1,{fileName:uT,lineNumber:201,columnNumber:17},void 0)]},void 0,!0,{fileName:uT,lineNumber:192,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`prose dark:prose-invert max-w-none`,children:e.services.services[l.id].extendedInfo.split(` 693`).map((e,t)=>(0,E.jsxDEV)(`p`,{className:`mb-4 text-gray-700 dark:text-gray-300`,children:e},t,!1,{fileName:uT,lineNumber:211,columnNumber:19},void 0))},void 0,!1,{fileName:uT,lineNumber:209,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-col gap-3 mt-6`,children:[l.link&&!l.disabled&&(0,E.jsxDEV)(`a`,{href:l.link,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center text-blue-500 hover:text-blue-700 dark:text-blue-400 694 dark:hover:text-blue-300 transition-colors duration-200`,children:[(0,E.jsxDEV)(`span`,{className:`mr-2`,children:e.services.visitService},void 0,!1,{fileName:uT,lineNumber:225,columnNumber:21},void 0),(0,E.jsxDEV)(Ni,{className:`w-4 h-4`},void 0,!1,{fileName:uT,lineNumber:226,columnNumber:21},void 0)]},void 0,!0,{fileName:uT,lineNumber:218,columnNumber:19},void 0),l.gitLink&&(0,E.jsxDEV)(`a`,{href:l.gitLink,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center text-orange-500 hover:text-orange-700 dark:text-orange-400 695 dark:hover:text-orange-300 transition-colors duration-200`,children:[(0,E.jsxDEV)(Or,{className:`w-4 h-4 mr-2`},void 0,!1,{fileName:uT,lineNumber:237,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{children:e.services.viewGitRepo||`View Git Repository`},void 0,!1,{fileName:uT,lineNumber:238,columnNumber:21},void 0)]},void 0,!0,{fileName:uT,lineNumber:230,columnNumber:19},void 0)]},void 0,!0,{fileName:uT,lineNumber:216,columnNumber:15},void 0)]},void 0,!0,{fileName:uT,lineNumber:191,columnNumber:13},void 0)},void 0,!1,{fileName:uT,lineNumber:186,columnNumber:11},void 0),t&&(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 transition-opacity duration-300 z-40`,onClick:()=>n(null)},void 0,!1,{fileName:uT,lineNumber:248,columnNumber:11},void 0)]},void 0,!0,{fileName:uT,lineNumber:85,columnNumber:7},void 0)},void 0,!1,{fileName:uT,lineNumber:84,columnNumber:5},void 0)};function pT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function mT(e){if(Array.isArray(e))return e}function hT(e){if(Array.isArray(e))return pT(e)}function gT(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function _T(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,kT(r.key),r)}}function vT(e,t,n){return t&&_T(e.prototype,t),n&&_T(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function yT(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=jT(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance. 696In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(s)throw a}}}}function bT(e,t,n){return(t=kT(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xT(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function ST(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}
696function CT(){throw TypeError(`Invalid attempt to destructure non-iterable instance. 697In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function wT(){throw TypeError(`Invalid attempt to spread non-iterable instance. 698In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function TT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function B(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?TT(Object(n),!0).forEach(function(t){bT(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):TT(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ET(e,t){return mT(e)||ST(e,t)||jT(e,t)||CT()}function DT(e){return hT(e)||xT(e)||jT(e)||wT()}function OT(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function kT(e){var t=OT(e,`string`);return typeof t==`symbol`?t:t+``}function AT(e){"@babel/helpers - typeof";return AT=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},AT(e)}function jT(e,t){if(e){if(typeof e==`string`)return pT(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?pT(e,t):void 0}}var MT=function(){},NT={},PT={},FT=null,IT={mark:MT,measure:MT};try{typeof window<`u`&&(NT=window),typeof document<`u`&&(PT=document),typeof MutationObserver<`u`&&(FT=MutationObserver),typeof performance<`u`&&(IT=performance)}catch{}var LT=(NT.navigator||{}).userAgent,RT=LT===void 0?``:LT,zT=NT,BT=PT,VT=FT,HT=IT;zT.document;var UT=!!BT.documentElement&&!!BT.head&&typeof BT.addEventListener==`function`&&typeof BT.createElement==`function`,WT=~RT.indexOf(`MSIE`)||~RT.indexOf(`Trident/`),GT,KT=/fa(k|kd|s|r|l|t|d|dr|dl|dt|b|slr|slpr|wsb|tl|ns|nds|es|gt|jr|jfr|jdr|usb|ufsb|udsb|cr|ss|sr|sl|st|sds|sdr|sdl|sdt|sldr|slpdr|pr|ms|vs)?[\-\ ]/,qT=/Font ?Awesome ?([567 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit|Notdog Duo|Notdog|Chisel|Etch|Graphite|Thumbprint|Jelly Fill|Jelly Duo|Jelly|Utility|Utility Fill|Utility Duo|Slab Press|Slab|Slab Duo|Slab Press Duo|Pixel|Mosaic|Vellum|Whiteboard)?.*/i,JT={classic:{fa:`solid`,fas:`solid`,"fa-solid":`solid`,far:`regular`,"fa-regular":`regular`,fal:`light`,"fa-light":`light`,fat:`thin`,"fa-thin":`thin`,fab:`brands`,"fa-brands":`brands`},duotone:{fa:`solid`,fad:`solid`,"fa-solid":`solid`,"fa-duotone":`solid`,fadr:`regular`,"fa-regular":`regular`,fadl:`light`,"fa-light":`light`,fadt:`thin`,"fa-thin":`thin`},sharp:{fa:`solid`,fass:`solid`,"fa-solid":`solid`,fasr:`regular`,"fa-regular":`regular`,fasl:`light`,"fa-light":`light`,fast:`thin`,"fa-thin":`thin`},"sharp-duotone":{fa:`solid`,fasds:`solid`,"fa-solid":`solid`,fasdr:`regular`,"fa-regular":`regular`,fasdl:`light`,"fa-light":`light`,fasdt:`thin`,"fa-thin":`thin`},slab:{"fa-regular":`regular`,faslr:`regular`},"slab-press":{"fa-regular":`regular`,faslpr:`regular`},"slab-duo":{"fa-regular":`regular`,fasldr:`regular`},"slab-press-duo":{"fa-regular":`regular`,faslpdr:`regular`},thumbprint:{"fa-light":`light`,fatl:`light`},vellum:{"fa-solid":`solid`,favs:`solid`},pixel:{"fa-regular":`regular`,fapr:`regular`},mosaic:{"fa-solid":`solid`,fams:`solid`},whiteboard:{"fa-semibold":`semibold`,fawsb:`semibold`},notdog:{"fa-solid":`solid`,fans:`solid`},"notdog-duo":{"fa-solid":`solid`,fands:`solid`},etch:{"fa-solid":`solid`,faes:`solid`},graphite:{"fa-thin":`thin`,fagt:`thin`},jelly:{"fa-regular":`regular`,fajr:`regular`},"jelly-fill":{"fa-regular":`regular`,fajfr:`regular`},"jelly-duo":{"fa-regular":`regular`,fajdr:`regular`},chisel:{"fa-regular":`regular`,facr:`regular`},utility:{"fa-semibold":`semibold`,fausb:`semibold`},"utility-duo":{"fa-semibold":`semibold`,faudsb:`semibold`},"utility-fill":{"fa-semibold":`semibold`,faufsb:`semibold`}},YT={GROUP:`duotone-group`,SWAP_OPACITY:`swap-opacity`,PRIMARY:`primary`,SECONDARY:`secondary`},XT=[`fa-classic`,`fa-duotone`,`fa-sharp`,`fa-sharp-duotone`,`fa-thumbprint`,`fa-whiteboard`,`fa-notdog`,`fa-notdog-duo`,`fa-chisel`,`fa-etch`,`fa-graphite`,`fa-jelly`,`fa-jelly-fill`,`fa-jelly-duo`,`fa-slab`,`fa-slab-press`,`fa-slab-press-duo`,`fa-slab-duo`,`fa-mosaic`,`fa-pixel`,`fa-vellum`,`fa-utility`,`fa-utility-duo`,`fa-utility-fill`],ZT=`classic`,QT=`duotone`,$T=`sharp`,eE=`sharp-duotone`,tE=`chisel`,nE=`etch`,rE=`graphite`,iE=`jelly`,aE=`jelly-duo`,oE=`jelly-fill`,sE=`mosaic`,cE=`notdog`,lE=`notdog-duo`,uE=`pixel`,dE=`slab`,fE=`slab-duo`,pE=`slab-press`,mE=`slab-press-duo`,hE=`thumbprint`,gE=`utility`,_E=`utility-duo`,vE=`utility-fill`,yE=`vellum`,bE=`whiteboard`,xE=`Classic`,SE=`Duotone`,CE=`Sharp`,wE=`Sharp Duotone`,TE=`Chisel`,EE=`Etch`,DE=`Graphite`,OE=`Jelly`,kE=`Jelly Duo`,AE=`Jelly Fill`,jE=`Mosaic`,ME=`Notdog`,NE=`Notdog Duo`,PE=`Pixel`,FE=`Slab`,IE=`Slab Duo`,LE=`Slab Press`,RE=`Slab Press Duo`,zE=`Thumbprint`,BE=`Utility`,VE=`Utility Duo`,HE=`Utility Fill`,UE=`Vellum`,WE=`Whiteboard`,GE=[ZT,QT,$T,eE,tE,nE,rE,iE,aE,oE,sE,cE,lE,uE,dE,fE,pE,mE,hE,gE,_E,vE,yE,bE];GT={},bT(bT(bT(bT(bT(bT(bT(bT(bT(bT(GT,ZT,xE),QT,SE),$T,CE),eE,wE),tE,TE),nE,EE),rE,DE),iE,OE),aE,kE),oE,AE),bT(bT(bT(bT(bT(bT(bT(bT(bT(bT(GT,sE,jE),cE,ME),lE,NE),uE,PE),dE,FE),fE,IE),pE,LE),mE,RE),hE,zE),gE,BE),bT(bT(bT(bT(GT,_E,VE),vE,HE),yE,UE),bE,WE);var KE={classic:{900:`fas`,400:`far`,normal:`far`,300:`fal`,100:`fat`},duotone:{900:`fad`,400:`fadr`,300:`fadl`,100:`fadt`},sharp:{900:`fass`,400:`fasr`,300:`fasl`,100:`fast`},"sharp-duotone":{900:`fasds`,400:`fasdr`,300:`fasdl`,100:`fasdt`},slab:{400:`faslr`},"slab-press":{400:`faslpr`},"slab-duo":{400:`fasldr`},"slab-press-duo":{400:`faslpdr`},vellum:{900:`favs`},mosaic:{900:`fams`},pixel:{400:`fapr`},whiteboard:{600:`fawsb`},thumbprint:{300:`fatl`},notdog:{900:`fans`},"notdog-duo":{900:`fands`},etch:{900:`faes`},graphite:{100:`fagt`},chisel:{400:`facr`},jelly:{400:`fajr`},"jelly-fill":{400:`fajfr`},"jelly-duo":{400:`fajdr`},utility:{600:`fausb`},"utility-duo":{600:`faudsb`},"utility-fill":{600:`faufsb`}},qE={"Font Awesome 7 Free":{900:`fas`,400:`far`},"Font Awesome 7 Pro":{900:`fas`,400:`far`,normal:`far`,300:`fal`,100:`fat`},"Font Awesome 7 Brands":{400:`fab`,normal:`fab`},"Font Awesome 7 Duotone":{900:`fad`,400:`fadr`,normal:`fadr`,300:`fadl`,100:`fadt`},"Font Awesome 7 Sharp":{900:`fass`,400:`fasr`,normal:`fasr`,300:`fasl`,100:`fast`},"Font Awesome 7 Sharp Duotone":{900:`fasds`,400:`fasdr`,normal:`fasdr`,300:`fasdl`,100:`fasdt`},"Font Awesome 7 Jelly":{400:`fajr`,normal:`fajr`},"Font Awesome 7 Jelly Fill":{400:`fajfr`,normal:`fajfr`},"Font Awesome 7 Jelly Duo":{400:`fajdr`,normal:`fajdr`},"Font Awesome 7 Slab":{400:`faslr`,normal:`faslr`},"Font Awesome 7 Slab Press":{400:`faslpr`,normal:`faslpr`},"Font Awesome 7 Slab Duo":{400:`fasldr`,normal:`fasldr`},"Font Awesome 7 Slab Press Duo":{400:`faslpdr`,normal:`faslpdr`}
vendor: 9,542 bytes, line 698
698,"Font Awesome 7 Pixel":{400:`fapr`,normal:`fapr`},"Font Awesome 7 Mosaic":{900:`fams`,normal:`fams`},"Font Awesome 7 Vellum":{900:`favs`,normal:`favs`},"Font Awesome 7 Thumbprint":{300:`fatl`,normal:`fatl`},"Font Awesome 7 Notdog":{900:`fans`,normal:`fans`},"Font Awesome 7 Notdog Duo":{900:`fands`,normal:`fands`},"Font Awesome 7 Etch":{900:`faes`,normal:`faes`},"Font Awesome 7 Graphite":{100:`fagt`,normal:`fagt`},"Font Awesome 7 Chisel":{400:`facr`,normal:`facr`},"Font Awesome 7 Whiteboard":{600:`fawsb`,normal:`fawsb`},"Font Awesome 7 Utility":{600:`fausb`,normal:`fausb`},"Font Awesome 7 Utility Duo":{600:`faudsb`,normal:`faudsb`},"Font Awesome 7 Utility Fill":{600:`faufsb`,normal:`faufsb`}},JE=new Map([[`classic`,{defaultShortPrefixId:`fas`,defaultStyleId:`solid`,styleIds:[`solid`,`regular`,`light`,`thin`,`brands`],futureStyleIds:[],defaultFontWeight:900}],[`duotone`,{defaultShortPrefixId:`fad`,defaultStyleId:`solid`,styleIds:[`solid`,`regular`,`light`,`thin`],futureStyleIds:[],defaultFontWeight:900}],[`sharp`,{defaultShortPrefixId:`fass`,defaultStyleId:`solid`,styleIds:[`solid`,`regular`,`light`,`thin`],futureStyleIds:[],defaultFontWeight:900}],[`sharp-duotone`,{defaultShortPrefixId:`fasds`,defaultStyleId:`solid`,styleIds:[`solid`,`regular`,`light`,`thin`],futureStyleIds:[],defaultFontWeight:900}],[`chisel`,{defaultShortPrefixId:`facr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`etch`,{defaultShortPrefixId:`faes`,defaultStyleId:`solid`,styleIds:[`solid`],futureStyleIds:[],defaultFontWeight:900}],[`graphite`,{defaultShortPrefixId:`fagt`,defaultStyleId:`thin`,styleIds:[`thin`],futureStyleIds:[],defaultFontWeight:100}],[`jelly`,{defaultShortPrefixId:`fajr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`jelly-duo`,{defaultShortPrefixId:`fajdr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`jelly-fill`,{defaultShortPrefixId:`fajfr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`mosaic`,{defaultShortPrefixId:`fams`,defaultStyleId:`solid`,styleIds:[`solid`],futureStyleIds:[],defaultFontWeight:900}],[`notdog`,{defaultShortPrefixId:`fans`,defaultStyleId:`solid`,styleIds:[`solid`],futureStyleIds:[],defaultFontWeight:900}],[`notdog-duo`,{defaultShortPrefixId:`fands`,defaultStyleId:`solid`,styleIds:[`solid`],futureStyleIds:[],defaultFontWeight:900}],[`pixel`,{defaultShortPrefixId:`fapr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`slab`,{defaultShortPrefixId:`faslr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`slab-duo`,{defaultShortPrefixId:`fasldr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`slab-press`,{defaultShortPrefixId:`faslpr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`slab-press-duo`,{defaultShortPrefixId:`faslpdr`,defaultStyleId:`regular`,styleIds:[`regular`],futureStyleIds:[],defaultFontWeight:400}],[`thumbprint`,{defaultShortPrefixId:`fatl`,defaultStyleId:`light`,styleIds:[`light`],futureStyleIds:[],defaultFontWeight:300}],[`utility`,{defaultShortPrefixId:`fausb`,defaultStyleId:`semibold`,styleIds:[`semibold`],futureStyleIds:[],defaultFontWeight:600}],[`utility-duo`,{defaultShortPrefixId:`faudsb`,defaultStyleId:`semibold`,styleIds:[`semibold`],futureStyleIds:[],defaultFontWeight:600}],[`utility-fill`,{defaultShortPrefixId:`faufsb`,defaultStyleId:`semibold`,styleIds:[`semibold`],futureStyleIds:[],defaultFontWeight:600}],[`vellum`,{defaultShortPrefixId:`favs`,defaultStyleId:`solid`,styleIds:[`solid`],futureStyleIds:[],defaultFontWeight:900}],[`whiteboard`,{defaultShortPrefixId:`fawsb`,defaultStyleId:`semibold`,styleIds:[`semibold`],futureStyleIds:[],defaultFontWeight:600}]]),YE={chisel:{regular:`facr`},classic:{brands:`fab`,light:`fal`,regular:`far`,solid:`fas`,thin:`fat`},duotone:{light:`fadl`,regular:`fadr`,solid:`fad`,thin:`fadt`},etch:{solid:`faes`},graphite:{thin:`fagt`},jelly:{regular:`fajr`},"jelly-duo":{regular:`fajdr`},"jelly-fill":{regular:`fajfr`},mosaic:{solid:`fams`},notdog:{solid:`fans`},"notdog-duo":{solid:`fands`},pixel:{regular:`fapr`},sharp:{light:`fasl`,regular:`fasr`,solid:`fass`,thin:`fast`},"sharp-duotone":{light:`fasdl`,regular:`fasdr`,solid:`fasds`,thin:`fasdt`},slab:{regular:`faslr`},"slab-duo":{regular:`fasldr`},"slab-press":{regular:`faslpr`},"slab-press-duo":{regular:`faslpdr`},thumbprint:{light:`fatl`},utility:{semibold:`fausb`},"utility-duo":{semibold:`faudsb`},"utility-fill":{semibold:`faufsb`},vellum:{solid:`favs`},whiteboard:{semibold:`fawsb`}},XE=[`fak`,`fa-kit`,`fakd`,`fa-kit-duotone`],ZE={kit:{fak:`kit`,"fa-kit":`kit`},"kit-duotone":{fakd:`kit-duotone`,"fa-kit-duotone":`kit-duotone`}},QE=[`kit`];bT(bT({},`kit`,`Kit`),`kit-duotone`,`Kit Duotone`);var $E={kit:{"fa-kit":`fak`},"kit-duotone":{"fa-kit-duotone":`fakd`}},eD={"Font Awesome Kit":{400:`fak`,normal:`fak`},"Font Awesome Kit Duotone":{400:`fakd`,normal:`fakd`}},tD={kit:{fak:`fa-kit`},"kit-duotone":{fakd:`fa-kit-duotone`}},nD={kit:{kit:`fak`},"kit-duotone":{"kit-duotone":`fakd`}},rD,iD={GROUP:`duotone-group`,SWAP_OPACITY:`swap-opacity`,PRIMARY:`primary`,SECONDARY:`secondary`},aD=[`fa-classic`,`fa-duotone`,`fa-sharp`,`fa-sharp-duotone`,`fa-thumbprint`,`fa-whiteboard`,`fa-notdog`,`fa-notdog-duo`,`fa-chisel`,`fa-etch`,`fa-graphite`,`fa-jelly`,`fa-jelly-fill`,`fa-jelly-duo`,`fa-slab`,`fa-slab-press`,`fa-slab-press-duo`,`fa-slab-duo`,`fa-mosaic`,`fa-pixel`,`fa-vellum`,`fa-utility`,`fa-utility-duo`,`fa-utility-fill`];rD={},bT(bT(bT(bT(bT(bT(bT(bT(bT(bT(rD,`classic`,`Classic`),`duotone`,`Duotone`),`sharp`,`Sharp`),`sharp-duotone`,`Sharp Duotone`),`chisel`,`Chisel`),`etch`,`Etch`),`graphite`,`Graphite`),`jelly`,`Jelly`),`jelly-duo`,`Jelly Duo`),`jelly-fill`,`Jelly Fill`),bT(bT(bT(bT(bT(bT(bT(bT(bT(bT(rD,`mosaic`,`Mosaic`),`notdog`,`Notdog`),`notdog-duo`,`Notdog Duo`),`pixel`,`Pixel`),`slab`,`Slab`),`slab-duo`,`Slab Duo`),`slab-press`,`Slab Press`),`slab-press-duo`,`Slab Press Duo`),`thumbprint`,`Thumbprint`),`utility`,`Utility`),bT(bT(bT(bT(rD,`utility-duo`,`Utility Duo`),`utility-fill`,`Utility Fill`),`vellum`,`Vellum`),`whiteboard`,`Whiteboard`),bT(bT({},`kit`,`Kit`),`kit-duotone`,`Kit Duotone`);var oD={classic:{"fa-brands":`fab`,"fa-duotone":`fad`,"fa-light":`fal`,"fa-regular":`far`,"fa-solid":`fas`,"fa-thin":`fat`},duotone:{"fa-regular":`fadr`,"fa-light":`fadl`,"fa-thin":`fadt`},sharp:{"fa-solid":`fass`,"fa-regular":`fasr`,"fa-light":`fasl`,"fa-thin":`fast`},"sharp-duotone":{"fa-solid":`fasds`,"fa-regular":`fasdr`,"fa-light":`fasdl`,"fa-thin":`fasdt`},slab:{"fa-regular":`faslr`},"slab-press":{"fa-regular":`faslpr`},"slab-duo":{"fa-regular":`fasldr`},"slab-press-duo":{"fa-regular":`faslpdr`},pixel:{"fa-regular":`fapr`},mosaic:{"fa-solid":`fams`},vellum:{"fa-solid":`favs`},whiteboard:{"fa-semibold":`fawsb`},thumbprint:{"fa-light":`fatl`},notdog:{"fa-solid":`fans`},"notdog-duo":{"fa-solid":`fands`},etch:{"fa-solid":`faes`},graphite:{"fa-thin":`fagt`},jelly:{"fa-regular":`fajr`},"jelly-fill":{"fa-regular":`fajfr`},"jelly-duo":{"fa-regular":`fajdr`},chisel:{"fa-regular":`facr`},utility:{"fa-semibold":`fausb`},"utility-duo":{"fa-semibold":`faudsb`},"utility-fill":{"fa-semibold":`faufsb`}},sD={classic:[`fas`,`far`,`fal`,`fat`,`fad`],duotone:[`fadr`,`fadl`,`fadt`],sharp:[`fass`,`fasr`,`fasl`,`fast`],"sharp-duotone":[`fasds`,`fasdr`,`fasdl`,`fasdt`],slab:[`faslr`],"slab-press":[`faslpr`],"slab-duo":[`fasldr`],"slab-press-duo":[`faslpdr`],pixel:[`fapr`],mosaic:[`fams`],vellum:[`favs`],whiteboard:[`fawsb`],thumbprint:[`fatl`],notdog:[`fans`],"notdog-duo":[`fands`],etch:[`faes`],graphite:[`fagt`],jelly:[`fajr`],"jelly-fill":[`fajfr`],"jelly-duo":[`fajdr`],chisel:[`facr`],utility:[`fausb`],"utility-duo":[`faudsb`],"utility-fill":[`faufsb`]},cD={classic:{fab:`fa-brands`,fad:`fa-duotone`,fal:`fa-light`,far:`fa-regular`,fas:`fa-solid`,fat:`fa-thin`},duotone:{fadr:`fa-regular`,fadl:`fa-light`,fadt:`fa-thin`},sharp:{fass:`fa-solid`,fasr:`fa-regular`,fasl:`fa-light`,fast:`fa-thin`},"sharp-duotone":{fasds:`fa-solid`,fasdr:`fa-regular`,fasdl:`fa-light`,fasdt:`fa-thin`},slab:{faslr:`fa-regular`},"slab-press":{faslpr:`fa-regular`},"slab-duo":{fasldr:`fa-regular`},"slab-press-duo":{faslpdr:`fa-regular`},pixel:{fapr:`fa-regular`},mosaic:{fams:`fa-solid`},vellum:{favs:`fa-solid`},whiteboard:{fawsb:`fa-semibold`},thumbprint:{fatl:`fa-light`},notdog:{fans:`fa-solid`},"notdog-duo":{fands:`fa-solid`},etch:{faes:`fa-solid`},graphite:{fagt:`fa-thin`},jelly:{fajr:`fa-regular`},"jelly-fill":{fajfr:`fa-regular`},"jelly-duo":{fajdr:`fa-regular`},chisel:{facr:`fa-regular`},utility:{fausb:`fa-semibold`},"utility-duo":{faudsb:`fa-semibold`},"utility-fill":{faufsb:`fa-semibold`}},lD=`fa.fas.far.fal.fat.fad.fadr.fadl.fadt.fab.fass.fasr.fasl.fast.fasds.fasdr.fasdl.fasdt.faslr.faslpr.fasldr.faslpdr.fapr.fams.favs.fawsb.fatl.fans.fands.faes.fagt.fajr.fajfr.fajdr.facr.fausb.faudsb.faufsb`.split(`.`).concat(aD,[`fa-solid`,`fa-regular`,`fa-light`,`fa-thin`,`fa-duotone`,`fa-brands`,`fa-semibold`]),uD=[`solid`,`regular`,`light`,`thin`,`duotone`,`brands`,`semibold`],dD=[1,2,3,4,5,6,7,8,9,10],fD=dD.concat([11,12,13,14,15,16,17,18,19,20]),pD=[].concat(DT(Object.keys(sD)),uD,[`aw`,`fw`,`pull-left`,`pull-right`],[`2xs`,`xs`,`sm`,`lg`,`xl`,`2xl`,`beat`,`beat-fade`,`border`,`bounce`,`buzz`,`canvas-square`,`canvas-roomy`,`fade`,`flip-360`,`flip-both`,`flip-horizontal`,`flip-vert
698ical`,`flip`,`float`,`inverse`,`jello`,`layers`,`layers-bottom-left`,`layers-bottom-right`,`layers-counter`,`layers-text`,`layers-top-left`,`layers-top-right`,`li`,`pull-end`,`pull-start`,`pulse`,`rotate-180`,`rotate-270`,`rotate-90`,`rotate-by`,`shake`,`spin-pulse`,`spin-reverse`,`spin`,`spin-snap`,`spin-snap-4`,`spin-snap-8`,`stack-1x`,`stack-2x`,`stack`,`swing`,`ul`,`wag`,`width-auto`,`width-fixed`,iD.GROUP,iD.SWAP_OPACITY,iD.PRIMARY,iD.SECONDARY],dD.map(function(e){return`${e}x`}),fD.map(function(e){return`w-${e}`})),mD={"Font Awesome 5 Free":{900:`fas`,400:`far`},"Font Awesome 5 Pro":{900:`fas`,400:`far`,normal:`far`,300:`fal`},"Font Awesome 5 Brands":{400:`fab`,normal:`fab`},"Font Awesome 5 Duotone":{900:`fad`}},hD=`___FONT_AWESOME___`,gD=16,_D=`fa`,vD=`svg-inline--fa`,yD=`data-fa-i2svg`,bD=`data-fa-pseudo-element`,xD=`data-fa-pseudo-element-pending`,SD=`data-prefix`,CD=`data-icon`,wD=`fontawesome-i2svg`,TD=`async`,ED=[`HTML`,`HEAD`,`STYLE`,`SCRIPT`],DD=[`::before`,`::after`,`:before`,`:after`],OD=function(){try{return!1}catch{return!1}}();function kD(e){return new Proxy(e,{get:function(e,t){return t in e?e[t]:e[ZT]}})}var AD=B({},JT);AD[ZT]=B(B(B(B({},{"fa-duotone":`duotone`}),JT[ZT]),ZE.kit),ZE[`kit-duotone`]);var jD=kD(AD),MD=B({},YE);MD[ZT]=B(B(B(B({},{duotone:`fad`}),MD[ZT]),nD.kit),nD[`kit-duotone`]);var ND=kD(MD),PD=B({},cD);PD[ZT]=B(B({},PD[ZT]),tD.kit);var FD=kD(PD),ID=B({},oD);ID[ZT]=B(B({},ID[ZT]),$E.kit),kD(ID);var LD=KT,RD=`fa-layers-text`,zD=qT;kD(B({},KE));var BD=[`class`,`data-prefix`,`data-icon`,`data-fa-transform`,`data-fa-mask`],VD=YT,HD=[].concat(DT(QE),DT(pD)),UD=zT.FontAwesomeConfig||{};function WD(e){var t=BT.querySelector(`script[`+e+`]`);if(t)return t.getAttribute(e)}function GD(e){return e===``?!0:e===`false`?!1:e===`true`||e}BT&&typeof BT.querySelector==`function`&&[[`data-family-prefix`,`familyPrefix`],[`data-css-prefix`,`cssPrefix`],[`data-family-default`,`familyDefault`],[`data-style-default`,`styleDefault`],[`data-replacement-class`,`replacementClass`],[`data-auto-replace-svg`,`autoReplaceSvg`],[`data-auto-add-css`,`autoAddCss`],[`data-search-pseudo-elements`,`searchPseudoElements`],[`data-search-pseudo-elements-warnings`,`searchPseudoElementsWarnings`],[`data-search-pseudo-elements-full-scan`,`searchPseudoElementsFullScan`],[`data-observe-mutations`,`observeMutations`],[`data-mutate-approach`,`mutateApproach`],[`data-keep-original-source`,`keepOriginalSource`],[`data-measure-performance`,`measurePerformance`],[`data-show-missing-icons`,`showMissingIcons`]].forEach(function(e){var t=ET(e,2),n=t[0],r=t[1],i=GD(WD(n));i!=null&&(UD[r]=i)});var KD={styleDefault:`solid`,familyDefault:ZT,cssPrefix:_D,replacementClass:vD,autoReplaceSvg:!0,autoAddCss:!0,searchPseudoElements:!1,searchPseudoElementsWarnings:!0,searchPseudoElementsFullScan:!1,observeMutations:!0,mutateApproach:`async`,keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};UD.familyPrefix&&(UD.cssPrefix=UD.familyPrefix);var qD=B(B({},KD),UD);qD.autoReplaceSvg||(qD.observeMutations=!1);var JD={};Object.keys(KD).forEach(function(e){Object.defineProperty(JD,e,{enumerable:!0,set:function(t){qD[e]=t,YD.forEach(function(e){return e(JD)})},get:function(){return qD[e]}})}),Object.defineProperty(JD,"familyPrefix",{enumerable:!0,set:function(e){qD.cssPrefix=e,YD.forEach(function(e){return e(JD)})},get:function(){return qD.cssPrefix}}),zT.FontAwesomeConfig=JD;var YD=[];function XD(e){return YD.push(e),function(){YD.splice(YD.indexOf(e),1)}}var ZD=gD,QD={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function $D(e){if(!(!e||!UT)){var t=BT.createElement(`style`);t.setAttribute(`type`,`text/css`),t.innerHTML=e;for(var n=BT.head.childNodes,r=null,i=n.length-1;i>-1;i--){var a=n[i],o=(a.tagName||``).toUpperCase();[`STYLE`,`LINK`].indexOf(o)>-1&&(r=a)}return BT.head.insertBefore(t,r),e}}var eO=`0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`;function tO(){for(var e=12,t=``;e-->0;)t+=eO[Math.random()*62|0];return t}function nO(e){for(var t=[],n=(e||[]).length>>>0;n--;)t[n]=e[n];return t}function rO(e){return e.classList?nO(e.classList):(e.getAttribute(`class`)||``).split(` `).filter(function(e){return e})}function iO(e){return`${e}`.replace(/&/g,`&`).replace(/"/g,`"`).replace(/'/g,`'`).replace(/</g,`<`).replace(/>/g,`>`)}function aO(e){return Object.keys(e||{}).reduce(function(t,n){return t+`${n}="${iO(e[n])}" `},``).trim()}function oO(e){return Object.keys(e||{}).reduce(function(t,n){return t+`${n}: ${e[n].trim()};`},``)}function sO(e){return e.size!==QD.size||e.x!==QD.x||e.y!==QD.y||e.rotate!==QD.rotate||e.flipX||e.flipY}function cO(e){var t=e.transform,n=e.containerWidth,r=e.iconWidth;return{outer:{transform:`translate(${n/2} 256)`},inner:{transform:`${`translate(${t.x*32}, ${t.y*32}) `} ${`scale(${t.size/16*(t.flipX?-1:1)}, ${t.size/16*(t.flipY?-1:1)}) `} ${`rotate(${t.rotate} 0 0)`}`},path:{transform:`translate(${r/2*-1} -256)`}}}function lO(e){var t=e.transform,n=e.width,r=n===void 0?gD:n,i=e.he
698ight,a=i===void 0?gD:i,o=e.startCentered,s=o!==void 0&&o,c=``;return c+=s&&WT?`translate(${t.x/ZD-r/2}em, ${t.y/ZD-a/2}em) `:s?`translate(calc(-50% + ${t.x/ZD}em), calc(-50% + ${t.y/ZD}em)) `:`translate(${t.x/ZD}em, ${t.y/ZD}em) `,c+=`scale(${t.size/ZD*(t.flipX?-1:1)}, ${t.size/ZD*(t.flipY?-1:1)}) `,c+=`rotate(${t.rotate}deg) `,c}var uO=
vendor: 33,236 bytes, lines 698-1771
698`:root, :host { 699 --fa-font-solid: normal 900 1em/1 'Font Awesome 7 Free'; 700 --fa-font-regular: normal 400 1em/1 'Font Awesome 7 Free'; 701 --fa-font-light: normal 300 1em/1 'Font Awesome 7 Pro'; 702 --fa-font-thin: normal 100 1em/1 'Font Awesome 7 Pro'; 703 --fa-font-duotone: normal 900 1em/1 'Font Awesome 7 Duotone'; 704 --fa-font-duotone-regular: normal 400 1em/1 'Font Awesome 7 Duotone'; 705 --fa-font-duotone-light: normal 300 1em/1 'Font Awesome 7 Duotone'; 706 --fa-font-duotone-thin: normal 100 1em/1 'Font Awesome 7 Duotone'; 707 --fa-font-brands: normal 400 1em/1 'Font Awesome 7 Brands'; 708 --fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 7 Sharp'; 709 --fa-font-sharp-regular: normal 400 1em/1 'Font Awesome 7 Sharp'; 710 --fa-font-sharp-light: normal 300 1em/1 'Font Awesome 7 Sharp'; 711 --fa-font-sharp-thin: normal 100 1em/1 'Font Awesome 7 Sharp'; 712 --fa-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 7 Sharp Duotone'; 713 --fa-font-sharp-duotone-regular: normal 400 1em/1 'Font Awesome 7 Sharp Duotone'; 714 --fa-font-sharp-duotone-light: normal 300 1em/1 'Font Awesome 7 Sharp Duotone'; 715 --fa-font-sharp-duotone-thin: normal 100 1em/1 'Font Awesome 7 Sharp Duotone'; 716 --fa-font-slab-regular: normal 400 1em/1 'Font Awesome 7 Slab'; 717 --fa-font-slab-press-regular: normal 400 1em/1 'Font Awesome 7 Slab Press'; 718 --fa-font-slab-duo-regular: normal 400 1em/1 'Font Awesome 7 Slab Duo'; 719 --fa-font-slab-press-duo-regular: normal 400 1em/1 'Font Awesome 7 Slab Press Duo'; 720 --fa-font-pixel-regular: normal 400 1em/1 'Font Awesome 7 Pixel'; 721 --fa-font-mosaic-solid: normal 900 1em/1 'Font Awesome 7 Mosaic'; 722 --fa-font-vellum-solid: normal 900 1em/1 'Font Awesome 7 Vellum'; 723 --fa-font-whiteboard-semibold: normal 600 1em/1 'Font Awesome 7 Whiteboard'; 724 --fa-font-thumbprint-light: normal 300 1em/1 'Font Awesome 7 Thumbprint'; 725 --fa-font-notdog-solid: normal 900 1em/1 'Font Awesome 7 Notdog'; 726 --fa-font-notdog-duo-solid: normal 900 1em/1 'Font Awesome 7 Notdog Duo'; 727 --fa-font-etch-solid: normal 900 1em/1 'Font Awesome 7 Etch'; 728 --fa-font-graphite-thin: normal 100 1em/1 'Font Awesome 7 Graphite'; 729 --fa-font-jelly-regular: normal 400 1em/1 'Font Awesome 7 Jelly'; 730 --fa-font-jelly-fill-regular: normal 400 1em/1 'Font Awesome 7 Jelly Fill'; 731 --fa-font-jelly-duo-regular: normal 400 1em/1 'Font Awesome 7 Jelly Duo'; 732 --fa-font-chisel-regular: normal 400 1em/1 'Font Awesome 7 Chisel'; 733 --fa-font-utility-semibold: normal 600 1em/1 'Font Awesome 7 Utility'; 734 --fa-font-utility-duo-semibold: normal 600 1em/1 'Font Awesome 7 Utility Duo'; 735 --fa-font-utility-fill-semibold: normal 600 1em/1 'Font Awesome 7 Utility Fill'; 736} 737 738.svg-inline--fa { 739 box-sizing: content-box; 740 display: var(--fa-display, inline-block); 741 height: 1em; 742 overflow: visible; 743 vertical-align: -0.125em; 744 width: var(--fa-width, 1.25em); 745} 746.svg-inline--fa.fa-2xs { 747 vertical-align: 0.1em; 748} 749.svg-inline--fa.fa-xs { 750 vertical-align: 0em; 751} 752.svg-inline--fa.fa-sm { 753 vertical-align: -0.0714285714em; 754} 755.svg-inline--fa.fa-lg { 756 vertical-align: -0.2em; 757} 758.svg-inline--fa.fa-xl { 759 vertical-align: -0.25em; 760} 761.svg-inline--fa.fa-2xl { 762 vertical-align: -0.3125em; 763} 764.svg-inline--fa.fa-pull-left, 765.svg-inline--fa .fa-pull-start { 766 float: inline-start; 767 margin-inline-end: var(--fa-pull-margin, 0.3em); 768} 769.svg-inline--fa.fa-pull-right, 770.svg-inline--fa .fa-pull-end { 771 float: inline-end; 772 margin-inline-start: var(--fa-pull-margin, 0.3em); 773} 774.svg-inline--fa.fa-li { 775 width: var(--fa-li-width, 2em); 776 inset-inline-start: calc(-1 * var(--fa-li-width, 2em)); 777 inset-block-start: 0.25em; /* syncing vertical alignment with Web Font rendering */ 778} 779 780.fa-layers-counter, .fa-layers-text { 781 display: inline-block; 782 position: absolute; 783 text-align: center; 784} 785 786.fa-layers { 787 display: inline-block; 788 height: 1em; 789 position: relative; 790 text-align: center; 791 vertical-align: -0.125em; 792 width: var(--fa-width, 1.25em); 793} 794.fa-layers .svg-inline--fa { 795 inset: 0; 796 margin: auto; 797 position: absolute; 798 transform-origin: center center; 799} 800 801.fa-layers-text { 802 left: 50%; 803 top: 50%; 804 transform: translate(-50%, -50%); 805 transform-origin: center center; 806} 807 808.fa-layers-counter { 809 background-color: var(--fa-counter-background-color, #ff253a); 810 border-radius: var(--fa-counter-border-radius, 1em); 811 box-sizing: border-box; 812 color: var(--fa-inverse, #fff); 813 line-height: var(--fa-counter-line-height, 1); 814 max-width: var(--fa-counter-max-width, 5em); 815 min-width: var(--fa-counter-min-width, 1.5em); 816 overflow: hidden; 817 padding: var(--fa-counter-padding, 0.25em 0.5em); 818 right: var(--fa-right, 0); 819 text-overflow: ellipsis; 820 top: var(--fa-top, 0); 821 transform: scale(var(--fa-counter-scale, 0.25)); 822 transform-origin: top right; 823} 824 825.fa-layers-bottom-right { 826 bottom: var(--fa-bottom, 0); 827 right: var(--fa-right, 0); 828 top: auto; 829 transform: scale(var(--fa-layers-scale, 0.25)); 830 transform-origin: bottom right; 831} 832 833.fa-layers-bottom-left { 834 bottom: var(--fa-bottom, 0); 835 left: var(--fa-left, 0); 836 right: auto; 837 top: auto; 838 transform: scale(var(--fa-layers-scale, 0.25)); 839 transform-origin: bottom left; 840} 841 842.fa-layers-top-right { 843 top: var(--fa-top, 0); 844 right: var(--fa-right, 0); 845 transform: scale(var(--fa-layers-scale, 0.25)); 846 transform-origin: top right; 847} 848 849.fa-layers-top-left { 850 left: var(--fa-left, 0); 851 right: auto; 852 top: var(--fa-top, 0); 853 transform: scale(var(--fa-layers-scale, 0.25)); 854 transform-origin: top left; 855} 856 857.fa-1x { 858 font-size: 1em; 859} 860 861.fa-2x { 862 font-size: 2em; 863} 864 865.fa-3x { 866 font-size: 3em; 867} 868 869.fa-4x { 870 font-size: 4em; 871} 872 873.fa-5x { 874 font-size: 5em; 875} 876 877.fa-6x { 878 font-size: 6em; 879} 880 881.fa-7x { 882 font-size: 7em; 883} 884 885.fa-8x { 886 font-size: 8em; 887} 888 889.fa-9x { 890 font-size: 9em; 891} 892 893.fa-10x { 894 font-size: 10em; 895} 896 897.fa-2xs { 898 font-size: calc(10 / 16 * 1em); /* converts a 10px size into an em-based value that's relative to the scale's 16px base */ 899 line-height: calc(1 / 10 * 1em); /* sets the line-height of the icon back to that of it's parent */ 900 vertical-align: calc((6 / 10 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 901} 902 903.fa-xs { 904 font-size: calc(12 / 16 * 1em); /* converts a 12px size into an em-based value that's relative to the scale's 16px base */ 905 line-height: calc(1 / 12 * 1em); /* sets the line-height of the icon back to that of it's parent */ 906 vertical-align: calc((6 / 12 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 907} 908 909.fa-sm { 910 font-size: calc(14 / 16 * 1em); /* converts a 14px size into an em-based value that's relative to the scale's 16px base */ 911 line-height: calc(1 / 14 * 1em); /* sets the line-height of the icon back to that of it's parent */ 912 vertical-align: calc((6 / 14 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 913} 914 915.fa-lg { 916 font-size: calc(20 / 16 * 1em); /* converts a 20px size into an em-based value that's relative to the scale's 16px base */ 917 line-height: calc(1 / 20 * 1em); /* sets the line-height of the icon back to that of it's parent */ 918 vertical-align: calc((6 / 20 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 919} 920 921.fa-xl { 922 font-size: calc(24 / 16 * 1em); /* converts a 24px size into an em-based value that's relative to the scale's 16px base */ 923 line-height: calc(1 / 24 * 1em); /* sets the line-height of the icon back to that of it's parent */ 924 vertical-align: calc((6 / 24 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 925} 926 927.fa-2xl { 928 font-size: calc(32 / 16 * 1em); /* converts a 32px size into an em-based value that's relative to the scale's 16px base */ 929 line-height: calc(1 / 32 * 1em); /* sets the line-height of the icon back to that of it's parent */ 930 vertical-align: calc((6 / 32 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */ 931} 932 933.fa-width-auto { 934 --fa-width: auto; 935} 936 937.fa-fw, 938.fa-width-fixed { 939 --fa-width: 1.25em; 940} 941 942.fa-canvas-square { 943 padding-block: 0.125em; 944 margin-block-end: -0.125em; 945} 946 947.fa-canvas-roomy { 948 padding-block: 0.25em; 949 padding-inline: 0.125em; 950 margin-block-end: -0.25em; 951 box-sizing: content-box; 952} 953 954.fa-ul { 955 list-style-type: none; 956 margin-inline-start: var(--fa-li-margin, 2.5em); 957 padding-inline-start: 0; 958} 959.fa-ul > li { 960 position: relative; 961} 962 963.fa-li { 964 inset-inline-start: calc(-1 * var(--fa-li-width, 2em)); 965 position: absolute; 966 text-align: center; 967 width: var(--fa-li-width, 2em); 968 line-height: inherit; 969} 970 971/* Heads Up: Bordered Icons will not be supported in the future! 972 - This feature will be deprecated in the next major release of Font Awesome (v8)! 973 - You may continue to use it in this version *v7), but it will not be supported in Font Awesome v8. 974*/ 975/* Notes: 976* --@{v.$css-prefix}-border-width = 1/16 by default (to render as ~1px based on a 16px default font-size) 977* --@{v.$css-prefix}-border-padding = 978 ** 3/16 for vertical padding (to give ~2px of vertical whitespace around an icon considering it's vertical alignment) 979 ** 4/16 for horizontal padding (to give ~4px of horizontal whitespace around an icon) 980*/ 981.fa-border { 982 border-color: var(--fa-border-color, #eee); 983 border-radius: var(--fa-border-radius, 0.1em); 984 border-style: var(--fa-border-style, solid); 985 border-width: var(--fa-border-width, 0.0625em); 986 box-sizing: var(--fa-border-box-sizing, content-box); 987 padding: var(--fa-border-padding, 0.1875em 0.25em); 988} 989 990.fa-pull-left, 991.fa-pull-start { 992 float: inline-start; 993 margin-inline-end: var(--fa-pull-margin, 0.3em); 994} 995 996.fa-pull-right, 997.fa-pull-end { 998 float: inline-end; 999 margin-inline-start: var(--fa-pull-margin, 0.3em); 1000} 1001 1002.fa-beat { 1003 animation-name: fa-beat; 1004 animation-delay: var(--fa-animation-delay, 0s); 1005 animation-direction: var(--fa-animation-direction, normal); 1006 animation-duration: var(--fa-animation-duration, 1s); 1007 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1008 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1009} 1010 1011.fa-bounce { 1012 animation-name: fa-bounce; 1013 animation-delay: var(--fa-animation-delay, 0s); 1014 animation-direction: var(--fa-animation-direction, normal); 1015 animation-duration: var(--fa-animation-duration, 1s); 1016 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1017 animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); 1018} 1019 1020.fa-fade { 1021 animation-name: fa-fade; 1022 animation-delay: var(--fa-animation-delay, 0s); 1023 animation-direction: var(--fa-animation-direction, normal); 1024 animation-duration: var(--fa-animation-duration, 1s); 1025 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1026 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1027} 1028 1029.fa-beat-fade { 1030 animation-name: fa-beat-fade; 1031 animation-delay: var(--fa-animation-delay, 0s); 1032 animation-direction: var(--fa-animation-direction, normal); 1033 animation-duration: var(--fa-animation-duration, 1s); 1034 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1035 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1036} 1037 1038.fa-flip { 1039 animation-name: fa-flip; 1040 animation-delay: var(--fa-animation-delay, 0s); 1041 animation-direction: var(--fa-animation-direction, normal); 1042 animation-duration: var(--fa-animation-duration, 1.5s); 1043 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1044 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1045} 1046 1047.fa-flip-360 { 1048 animation-name: fa-flip-360; 1049 animation-delay: var(--fa-animation-delay, 0s); 1050 animation-direction: var(--fa-animation-direction, normal); 1051 animation-duration: var(--fa-animation-duration, 1s); 1052 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1053 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1054} 1055 1056.fa-shake { 1057 animation-name: fa-shake; 1058 animation-delay: var(--fa-animation-delay, 0s); 1059 animation-direction: var(--fa-animation-direction, normal); 1060 animation-duration: var(--fa-animation-duration, 0.75s); 1061 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1062 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1063} 1064 1065.fa-spin { 1066 animation-name: fa-spin; 1067 animation-delay: var(--fa-animation-delay, 0s); 1068 animation-direction: var(--fa-animation-direction, normal); 1069 animation-duration: var(--fa-animation-duration, 2s); 1070 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1071 animation-timing-function: var(--fa-animation-timing, linear); 1072} 1073 1074.fa-spin-reverse { 1075 --fa-animation-direction: reverse; 1076} 1077 1078.fa-pulse, 1079.fa-spin-pulse { 1080 animation-name: fa-spin; 1081 animation-direction: var(--fa-animation-direction, normal); 1082 animation-duration: var(--fa-animation-duration, 1s); 1083 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1084 animation-timing-function: var(--fa-animation-timing, steps(8)); 1085} 1086 1087.fa-spin-snap { 1088 animation-name: fa-spin-snap; 1089 animation-delay: var(--fa-animation-delay, 0s); 1090 animation-direction: var(--fa-animation-direction, normal); 1091 animation-duration: var(--fa-animation-duration, 3s); 1092 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1093 animation-timing-function: var(--fa-animation-timing, linear); 1094} 1095 1096.fa-spin-snap-4 { 1097 animation-name: fa-spin-snap-4; 1098 animation-delay: var(--fa-animation-delay, 0s); 1099 animation-direction: var(--fa-animation-direction, normal); 1100 animation-duration: var(--fa-animation-duration, 2.4s); 1101 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1102 animation-timing-function: var(--fa-animation-timing, linear); 1103} 1104 1105.fa-spin-snap-8 { 1106 animation-name: fa-spin-snap-8; 1107 animation-delay: var(--fa-animation-delay, 0s); 1108 animation-direction: var(--fa-animation-direction, normal); 1109 animation-duration: var(--fa-animation-duration, 4s); 1110 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1111 animation-timing-function: var(--fa-animation-timing, linear); 1112} 1113 1114.fa-buzz { 1115 animation-name: fa-buzz; 1116 animation-delay: var(--fa-animation-delay, 0s); 1117 animation-direction: var(--fa-animation-direction, normal); 1118 animation-duration: var(--fa-animation-duration, 0.6s); 1119 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1120 animation-timing-function: var(--fa-animation-timing, linear); 1121} 1122 1123.fa-wag { 1124 animation-name: fa-wag; 1125 animation-delay: var(--fa-animation-delay, 0s); 1126 animation-direction: var(--fa-animation-direction, normal); 1127 animation-duration: var(--fa-animation-duration, 0.9s); 1128 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1129 animation-timing-function: var(--fa-animation-timing, ease-out); 1130 transform-origin: bottom center; 1131} 1132 1133.fa-float { 1134 animation-name: fa-float; 1135 animation-delay: var(--fa-animation-delay, 0s); 1136 animation-direction: var(--fa-animation-direction, normal); 1137 animation-duration: var(--fa-animation-duration, 3s); 1138 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1139 animation-timing-function: var(--fa-animation-timing, ease-in-out); 1140 will-change: transform; 1141} 1142 1143.fa-swing { 1144 animation-name: fa-swing; 1145 animation-delay: var(--fa-animation-delay, 0s); 1146 animation-direction: var(--fa-animation-direction, normal); 1147 animation-duration: var(--fa-animation-duration, 1.2s); 1148 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1149 animation-timing-function: var(--fa-animation-timing, ease-out); 1150 transform-origin: top center; 1151} 1152 1153.fa-jello { 1154 animation-name: fa-jello; 1155 animation-delay: var(--fa-animation-delay, 0s); 1156 animation-direction: var(--fa-animation-direction, normal); 1157 animation-duration: var(--fa-animation-duration, 0.9s); 1158 animation-iteration-count: var(--fa-animation-iteration-count, infinite); 1159 animation-timing-function: var(--fa-animation-timing, ease-out); 1160} 1161 1162@media (prefers-reduced-motion: reduce) { 1163 .fa-beat, 1164 .fa-bounce, 1165 .fa-fade, 1166 .fa-beat-fade, 1167 .fa-flip, 1168 .fa-flip-360, 1169 .fa-pulse, 1170 .fa-shake, 1171 .fa-spin, 1172 .fa-spin-pulse, 1173 .fa-buzz, 1174 .fa-float, 1175 .fa-jello, 1176 .fa-spin-snap, 1177 .fa-spin-snap-4, 1178 .fa-spin-snap-8, 1179 .fa-swing, 1180 .fa-wag { 1181 animation: none !important; 1182 transition: none !important; 1183 } 1184} 1185@keyframes fa-beat { 1186 0% { 1187 transform: scale(1); 1188 } 1189 25% { 1190 transform: scale(calc(1.25 * var(--fa-beat-scale, 1.25))); 1191 } 1192 45% { 1193 transform: scale(calc(1.22 * var(--fa-beat-scale, 1.22))); 1194 } 1195 65% { 1196 transform: scale(calc(1.25 * var(--fa-beat-scale, 1.25))); 1197 } 1198 90% { 1199 transform: scale(1); 1200 } 1201} 1202@keyframes fa-bounce { 1203 0% { 1204 transform: scale(1, 1) translateY(0); 1205 animation-timing-function: var(--fa-animation-timing); 1206 } 1207 14% { 1208 transform: scale(var(--fa-bounce-start-scale-x, 1.06), var(--fa-bounce-start-scale-y, 0.94)) translateY(var(--fa-bounce-anticipation, 3px)); 1209 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 0.33); 1210 } 1211 32% { 1212 transform: scale(var(--fa-bounce-jump-scale-x, 0.94), var(--fa-bounce-jump-scale-y, 1.12)) translateY(calc(-1 * var(--fa-bounce-height, 0.5em))); 1213 animation-timing-function: cubic-bezier(0.33, 0.66, 0.66, 1); 1214 } 1215 52% { 1216 transform: scale(1, 1) translateY(calc(-1 * var(--fa-bounce-height, 0.5em) * 1.1)); 1217 animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5); 1218 } 1219 70% { 1220 transform: scale(var(--fa-bounce-land-scale-x, 1.06), var(--fa-bounce-land-scale-y, 0.92)) translateY(0); 1221 animation-timing-function: cubic-bezier(0.33, 0.33, 0.66, 1); 1222 } 1223 85% { 1224 transform: scale(0.98, 1.04) translateY(calc(-2px * var(--fa-bounce-rebound, 1))); 1225 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 1); 1226 } 1227 100% { 1228 transform: scale(1, 1) translateY(0); 1229 } 1230} 1231@keyframes fa-fade { 1232 0% { 1233 opacity: 1; 1234 transform: scale(1); 1235 animation-timing-function: cubic-bezier(0.2, 0, 0.4, 1); 1236 } 1237 40% { 1238 opacity: var(--fa-fade-opacity, 0.4); 1239 transform: scale(0.98); 1240 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1241 } 1242 100% { 1243 opacity: 1; 1244 transform: scale(1); 1245 } 1246} 1247@keyframes fa-beat-fade { 1248 0% { 1249 opacity: var(--fa-beat-fade-opacity, 0.4); 1250 transform: scale(1); 1251 animation-timing-function: cubic-bezier(0.2, 0, 0.4, 1); 1252 } 1253 25% { 1254 opacity: calc(var(--fa-beat-fade-opacity, 0.4) + 0.4); 1255 transform: scale(var(--fa-beat-fade-scale, 1.28)); 1256 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1257 } 1258 45% { 1259 opacity: 1; 1260 transform: scale(var(--fa-beat-fade-scale, 1.25)); 1261 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1262 } 1263 65% { 1264 opacity: calc(var(--fa-beat-fade-opacity, 0.4) + 0.4); 1265 transform: scale(var(--fa-beat-fade-scale, 1.28)); 1266 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1267 } 1268 100% { 1269 opacity: var(--fa-beat-fade-opacity, 0.4); 1270 transform: scale(1); 1271 } 1272} 1273@keyframes fa-flip { 1274 0% { 1275 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), 0deg); 1276 animation-timing-function: cubic-bezier(0.2, 0, 0.4, 1); 1277 } 1278 8% { 1279 transform: perspective(2em) scale(var(--fa-flip-anticipation-scale, 0.95)) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), 0deg); 1280 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 0.33); 1281 } 1282 35% { 1283 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), calc(var(--fa-flip-angle, -360deg) * 0.6)); 1284 animation-timing-function: linear; 1285 } 1286 65% { 1287 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), calc(var(--fa-flip-angle, -360deg) * 0.5)); 1288 animation-timing-function: cubic-bezier(0.33, 0.66, 0.66, 1); 1289 } 1290 92% { 1291 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04))); 1292 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 1); 1293 } 1294 100% { 1295 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -360deg)); 1296 } 1297} 1298@keyframes fa-flip-360 { 1299 0% { 1300 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), 0deg); 1301 animation-timing-function: cubic-bezier(0.2, 0, 0.4, 1); 1302 } 1303 8% { 1304 transform: perspective(2em) scale(var(--fa-flip-anticipation-scale, 0.95)) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), 0deg); 1305 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 0.33); 1306 } 1307 50% { 1308 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), calc(var(--fa-flip-angle, -360deg) * 0.6)); 1309 animation-timing-function: cubic-bezier(0.33, 0.66, 0.66, 1); 1310 } 1311 80% { 1312 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), calc(var(--fa-flip-angle, -360deg) * var(--fa-flip-overshoot, 1.04))); 1313 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 1); 1314 } 1315 100% { 1316 transform: perspective(2em) scale(1) rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -360deg)); 1317 } 1318} 1319@keyframes fa-shake { 1320 0% { 1321 transform: rotate(0deg); 1322 animation-timing-function: cubic-bezier(0.2, 0, 0.8, 1); 1323 } 1324 8% { 1325 transform: rotate(35deg) translateX(1px); 1326 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1327 } 1328 20% { 1329 transform: rotate(-22deg) translateX(-1px); 1330 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1331 } 1332 35% { 1333 transform: rotate(15deg) translateX(1px); 1334 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1335 } 1336 50% { 1337 transform: rotate(-9deg); 1338 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1339 } 1340 65% { 1341 transform: rotate(5deg); 1342 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1343 } 1344 78% { 1345 transform: rotate(-3deg); 1346 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1347 } 1348 90% { 1349 transform: rotate(1deg); 1350 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1351 } 1352 100% { 1353 transform: rotate(0deg); 1354 } 1355} 1356@keyframes fa-spin { 1357 0% { 1358 transform: rotate(0deg); 1359 } 1360 100% { 1361 transform: rotate(360deg); 1362 } 1363} 1364@keyframes fa-spin-snap { 1365 0% { 1366 transform: rotate(0deg); 1367 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1368 } 1369 12% { 1370 transform: rotate(60deg); 1371 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1372 } 1373 16.67% { 1374 transform: rotate(60deg); 1375 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1376 } 1377 28.67% { 1378 transform: rotate(120deg); 1379 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1380 } 1381 33.33% { 1382 transform: rotate(120deg); 1383 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1384 } 1385 45.33% { 1386 transform: rotate(180deg); 1387 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1388 } 1389 50% { 1390 transform: rotate(180deg); 1391 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1392 } 1393 62% { 1394 transform: rotate(240deg); 1395 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1396 } 1397 66.67% { 1398 transform: rotate(240deg); 1399 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1400 } 1401 78.67% { 1402 transform: rotate(300deg); 1403 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1404 } 1405 83.33% { 1406 transform: rotate(300deg); 1407 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1408 } 1409 95.33% { 1410 transform: rotate(360deg); 1411 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1412 } 1413 100% { 1414 transform: rotate(360deg); 1415 } 1416} 1417@keyframes fa-spin-snap-4 { 1418 0% { 1419 transform: rotate(0deg); 1420 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1421 } 1422 15% { 1423 transform: rotate(90deg); 1424 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1425 } 1426 25% { 1427 transform: rotate(90deg); 1428 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1429 } 1430 40% { 1431 transform: rotate(180deg); 1432 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1433 } 1434 50% { 1435 transform: rotate(180deg); 1436 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1437 } 1438 65% { 1439 transform: rotate(270deg); 1440 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1441 } 1442 75% { 1443 transform: rotate(270deg); 1444 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1445 } 1446 90% { 1447 transform: rotate(360deg); 1448 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1449 } 1450 100% { 1451 transform: rotate(360deg); 1452 } 1453} 1454@keyframes fa-spin-snap-8 { 1455 0% { 1456 transform: rotate(0deg); 1457 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1458 } 1459 9% { 1460 transform: rotate(45deg); 1461 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1462 } 1463 12.5% { 1464 transform: rotate(45deg); 1465 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1466 } 1467 21.5% { 1468 transform: rotate(90deg); 1469 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1470 } 1471 25% { 1472 transform: rotate(90deg); 1473 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1474 } 1475 34% { 1476 transform: rotate(135deg); 1477 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1478 } 1479 37.5% { 1480 transform: rotate(135deg); 1481 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1482 } 1483 46.5% { 1484 transform: rotate(180deg); 1485 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1486 } 1487 50% { 1488 transform: rotate(180deg); 1489 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1490 } 1491 59% { 1492 transform: rotate(225deg); 1493 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1494 } 1495 62.5% { 1496 transform: rotate(225deg); 1497 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1498 } 1499 71.5% { 1500 transform: rotate(270deg); 1501 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1502 } 1503 75% { 1504 transform: rotate(270deg); 1505 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1506 } 1507 84% { 1508 transform: rotate(315deg); 1509 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1510 } 1511 87.5% { 1512 transform: rotate(315deg); 1513 animation-timing-function: cubic-bezier(0, 0, 0.2, 1); 1514 } 1515 96.5% { 1516 transform: rotate(360deg); 1517 animation-timing-function: cubic-bezier(0.8, 0, 1, 1); 1518 } 1519 100% { 1520 transform: rotate(360deg); 1521 } 1522} 1523@keyframes fa-buzz { 1524 0% { 1525 transform: translateX(0) rotate(0deg); 1526 animation-timing-function: cubic-bezier(0.1, 0, 0.9, 1); 1527 } 1528 5% { 1529 transform: translateX(var(--fa-buzz-distance, 4px)) rotate(0.5deg); 1530 } 1531 10% { 1532 transform: translateX(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-0.5deg); 1533 } 1534 15% { 1535 transform: translateX(var(--fa-buzz-distance, 4px)) rotate(0.3deg); 1536 } 1537 20% { 1538 transform: translateX(calc(-1 * var(--fa-buzz-distance, 4px))) rotate(-0.3deg); 1539 } 1540 25% { 1541 transform: translateX(calc(var(--fa-buzz-distance, 4px) * 0.7)) rotate(0.2deg); 1542 } 1543 30% { 1544 transform: translateX(calc(-1 * var(--fa-buzz-distance, 4px) * 0.7)) rotate(-0.2deg); 1545 } 1546 35% { 1547 transform: translateX(calc(var(--fa-buzz-distance, 4px) * 0.4)) rotate(0.1deg); 1548 } 1549 40% { 1550 transform: translateX(0) rotate(0deg); 1551 } 1552 100% { 1553 transform: translateX(0) rotate(0deg); 1554 } 1555} 1556@keyframes fa-wag { 1557 0% { 1558 transform: rotate(0deg); 1559 animation-timing-function: cubic-bezier(0.2, 0, 0.6, 1); 1560 } 1561 12% { 1562 transform: rotate(var(--fa-wag-angle, 12deg)); 1563 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1564 } 1565 24% { 1566 transform: rotate(2deg); 1567 animation-timing-function: cubic-bezier(0.2, 0, 0.6, 1); 1568 } 1569 36% { 1570 transform: rotate(calc(var(--fa-wag-angle, 12deg) * 0.85)); 1571 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1572 } 1573 48% { 1574 transform: rotate(1deg); 1575 animation-timing-function: cubic-bezier(0.2, 0, 0.6, 1); 1576 } 1577 58% { 1578 transform: rotate(calc(var(--fa-wag-angle, 12deg) * 0.6)); 1579 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1580 } 1581 68% { 1582 transform: rotate(0deg); 1583 } 1584 100% { 1585 transform: rotate(0deg); 1586 } 1587} 1588@keyframes fa-float { 1589 0% { 1590 transform: translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x, 1.02), var(--fa-float-squash-y, 0.98)); 1591 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 0.33); 1592 } 1593 15% { 1594 transform: translateY(calc(-0.4 * var(--fa-float-height, 6px))) translateX(var(--fa-float-drift, 1px)) rotate(var(--fa-float-tilt, 1deg)) scale(1, 1); 1595 animation-timing-function: cubic-bezier(0.33, 0.66, 0.66, 1); 1596 } 1597 35% { 1598 transform: translateY(calc(-1 * var(--fa-float-height, 6px))) translateX(0) rotate(0deg) scale(var(--fa-float-stretch-x, 0.98), var(--fa-float-stretch-y, 1.03)); 1599 animation-timing-function: cubic-bezier(0.5, 0, 0.5, 0); 1600 } 1601 50% { 1602 transform: translateY(calc(-0.92 * var(--fa-float-height, 6px))) translateX(calc(-0.5 * var(--fa-float-drift, 1px))) rotate(calc(-0.5 * var(--fa-float-tilt, 1deg))) scale(0.995, 1.01); 1603 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 0.33); 1604 } 1605 70% { 1606 transform: translateY(calc(-0.3 * var(--fa-float-height, 6px))) translateX(calc(-1 * var(--fa-float-drift, 1px))) rotate(calc(-1 * var(--fa-float-tilt, 1deg))) scale(1, 1); 1607 animation-timing-function: cubic-bezier(0.33, 0.66, 0.66, 1); 1608 } 1609 90% { 1610 transform: translateY(calc(0.05 * var(--fa-float-height, 6px))) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x, 1.02), var(--fa-float-squash-y, 0.98)); 1611 animation-timing-function: cubic-bezier(0.33, 0, 0.66, 1); 1612 } 1613 100% { 1614 transform: translateY(0) translateX(0) rotate(0deg) scale(var(--fa-float-squash-x, 1.02), var(--fa-float-squash-y, 0.98)); 1615 } 1616} 1617@keyframes fa-swing { 1618 0% { 1619 transform: rotate(0deg); 1620 animation-timing-function: cubic-bezier(0.2, 0, 0.8, 1); 1621 } 1622 8% { 1623 transform: rotate(var(--fa-swing-angle, 22deg)); 1624 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1625 } 1626 18% { 1627 transform: rotate(calc(-1 * var(--fa-swing-angle, 22deg) * 0.85)); 1628 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1629 } 1630 28% { 1631 transform: rotate(calc(var(--fa-swing-angle, 22deg) * 0.65)); 1632 animation-timing-function: cubic-bezier(0.35, 0, 0.65, 1); 1633 } 1634 38% { 1635 transform: rotate(calc(-1 * var(--fa-swing-angle, 22deg) * 0.45)); 1636 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1637 } 1638 48% { 1639 transform: rotate(calc(var(--fa-swing-angle, 22deg) * 0.25)); 1640 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1641 } 1642 56% { 1643 transform: rotate(calc(-1 * var(--fa-swing-angle, 22deg) * 0.1)); 1644 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1645 } 1646 64% { 1647 transform: rotate(0deg); 1648 } 1649 100% { 1650 transform: rotate(0deg); 1651 } 1652} 1653@keyframes fa-jello { 1654 0% { 1655 transform: scale(1, 1); 1656 animation-timing-function: cubic-bezier(0.2, 0, 0.8, 1); 1657 } 1658 12% { 1659 transform: scale(var(--fa-jello-scale-x, 1.15), calc(2 - var(--fa-jello-scale-x, 1.15))); 1660 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1661 } 1662 24% { 1663 transform: scale(calc(2 - var(--fa-jello-scale-y, 1.12)), var(--fa-jello-scale-y, 1.12)); 1664 animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1); 1665 } 1666 36% { 1667 transform: scale(calc(1 + (var(--fa-jello-scale-x, 1.15) - 1) * 0.5), calc(2 - (1 + (var(--fa-jello-scale-x, 1.15) - 1) * 0.5))); 1668 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1669 } 1670 48% { 1671 transform: scale(calc(2 - (1 + (var(--fa-jello-scale-y, 1.12) - 1) * 0.3)), calc(1 + (var(--fa-jello-scale-y, 1.12) - 1) * 0.3)); 1672 animation-timing-function: cubic-bezier(0.4, 0, 0.6, 1); 1673 } 1674 58% { 1675 transform: scale(1.02, 0.98); 1676 animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); 1677 } 1678 68% { 1679 transform: scale(1, 1); 1680 } 1681 100% { 1682 transform: scale(1, 1); 1683 } 1684} 1685.fa-rotate-90 { 1686 transform: rotate(90deg); 1687} 1688 1689.fa-rotate-180 { 1690 transform: rotate(180deg); 1691} 1692 1693.fa-rotate-270 { 1694 transform: rotate(270deg); 1695} 1696 1697.fa-flip-horizontal { 1698 transform: scale(-1, 1); 1699} 1700 1701.fa-flip-vertical { 1702 transform: scale(1, -1); 1703} 1704 1705.fa-flip-both, 1706.fa-flip-horizontal.fa-flip-vertical { 1707 transform: scale(-1, -1); 1708} 1709 1710.fa-rotate-by { 1711 transform: rotate(var(--fa-rotate-angle, 0)); 1712} 1713 1714.svg-inline--fa .fa-primary { 1715 fill: var(--fa-primary-color, currentColor); 1716 opacity: var(--fa-primary-opacity, 1); 1717} 1718 1719.svg-inline--fa .fa-secondary { 1720 fill: var(--fa-secondary-color, currentColor); 1721 opacity: var(--fa-secondary-opacity, 0.4); 1722} 1723 1724.svg-inline--fa.fa-swap-opacity .fa-primary { 1725 opacity: var(--fa-secondary-opacity, 0.4); 1726} 1727 1728.svg-inline--fa.fa-swap-opacity .fa-secondary { 1729 opacity: var(--fa-primary-opacity, 1); 1730} 1731 1732.svg-inline--fa mask .fa-primary, 1733.svg-inline--fa mask .fa-secondary { 1734 fill: black; 1735} 1736 1737.svg-inline--fa.fa-inverse { 1738 fill: var(--fa-inverse, #fff); 1739} 1740 1741.fa-stack { 1742 display: inline-block; 1743 height: 2em; 1744 line-height: 2em; 1745 position: relative; 1746 vertical-align: middle; 1747 width: 2.5em; 1748} 1749 1750.fa-inverse { 1751 color: var(--fa-inverse, #fff); 1752} 1753 1754.svg-inline--fa.fa-stack-1x { 1755 --fa-width: 1.25em; 1756 height: 1em; 1757 width: var(--fa-width); 1758} 1759.svg-inline--fa.fa-stack-2x { 1760 --fa-width: 2.5em; 1761 height: 2em; 1762 width: var(--fa-width); 1763} 1764 1765.fa-stack-1x, 1766.fa-stack-2x { 1767 inset: 0; 1768 margin: auto; 1769 position: absolute; 1770 z-index: var(--fa-stack-z-index, auto); 1771}`;
1771function dO(){var e=_D,t=vD,n=JD.cssPrefix,r=JD.replacementClass,i=uO;if(n!==e||r!==t){var a=RegExp(`\\.${e}\\-`,`g`),o=RegExp(`\\--${e}\\-`,`g`),s=RegExp(`\\.${t}`,`g`);i=i.replace(a,`.${n}-`).replace(o,`--${n}-`).replace(s,`.${r}`)}return i}var fO=!1;function pO(){JD.autoAddCss&&!fO&&($D(dO()),fO=!0)}var mO={mixout:function(){return{dom:{css:dO,insertCss:pO}}},hooks:function(){return{beforeDOMElementCreation:function(){pO()},beforeI2svg:function(){pO()}}}},hO=zT||{};hO[hD]||(hO[hD]={}),hO[hD].styles||(hO[hD].styles={}),hO[hD].hooks||(hO[hD].hooks={}),hO[hD].shims||(hO[hD].shims=[]);var gO=hO[hD],_O=[],vO=function(){BT.removeEventListener(`DOMContentLoaded`,vO),yO=1,_O.map(function(e){return e()})},yO=!1;UT&&(yO=(BT.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(BT.readyState),yO||BT.addEventListener(`DOMContentLoaded`,vO));function bO(e){UT&&(yO?setTimeout(e,0):_O.push(e))}function xO(e){var t=e.tag,n=e.attributes,r=n===void 0?{}:n,i=e.children,a=i===void 0?[]:i;return typeof e==`string`?iO(e):`<${t} ${aO(r)}>${a.map(xO).join(``)}</${t}>`}function SO(e,t,n){if(e&&e[t]&&e[t][n])return{prefix:t,iconName:n,icon:e[t][n]}}var CO=function(e,t){return function(n,r,i,a){return e.call(t,n,r,i,a)}},wO=function(e,t,n,r){var i=Object.keys(e),a=i.length,o=r===void 0?t:CO(t,r),s,c,l;for(n===void 0?(s=1,l=e[i[0]]):(s=0,l=n);s<a;s++)c=i[s],l=o(l,e[c],c,e);return l};function TO(e){return DT(e).length===1?e.codePointAt(0).toString(16):null}function EO(e){return Object.keys(e).reduce(function(t,n){var r=e[n];return r.icon?t[r.iconName]=r.icon:t[n]=r,t},{})}function DO(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).skipHooks,r=n!==void 0&&n,i=EO(t);typeof gO.hooks.addPack==`function`&&!r?gO.hooks.addPack(e,EO(t)):gO.styles[e]=B(B({},gO.styles[e]||{}),i),e===`fas`&&DO(`fa`,t)}var OO=gO.styles,kO=gO.shims,AO=Object.keys(FD),jO=AO.reduce(function(e,t){return e[t]=Object.keys(FD[t]),e},{}),MO=null,NO={},PO={},FO={},IO={},LO={};function RO(e){return~HD.indexOf(e)}function zO(e,t){var n=t.split(`-`),r=n[0],i=n.slice(1).join(`-`);return r===e&&i!==``&&!RO(i)?i:null}var BO=function(){var e=function(e){return wO(OO,function(t,n,r){return t[r]=wO(n,e,{}),t},{})};NO=e(function(e,t,n){return t[3]&&(e[t[3]]=n),t[2]&&t[2].filter(function(e){return typeof e==`number`}).forEach(function(t){e[t.toString(16)]=n}),e}),PO=e(function(e,t,n){return e[n]=n,t[2]&&t[2].filter(function(e){return typeof e==`string`}
1771).forEach(function(t){e[t]=n}),e}),LO=e(function(e,t,n){var r=t[2];return e[n]=n,r.forEach(function(t){e[t]=n}),e});var t=`far`in OO||JD.autoFetchSvg,n=wO(kO,function(e,n){var r=n[0],i=n[1],a=n[2];return i===`far`&&!t&&(i=`fas`),typeof r==`string`&&(e.names[r]={prefix:i,iconName:a}),typeof r==`number`&&(e.unicodes[r.toString(16)]={prefix:i,iconName:a}),e},{names:{},unicodes:{}});FO=n.names,IO=n.unicodes,MO=YO(JD.styleDefault,{family:JD.familyDefault})};XD(function(e){MO=YO(e.styleDefault,{family:JD.familyDefault})}),BO();function VO(e,t){return(NO[e]||{})[t]}function HO(e,t){return(PO[e]||{})[t]}function UO(e,t){return(LO[e]||{})[t]}function WO(e){return FO[e]||{prefix:null,iconName:null}}function GO(e){var t=IO[e],n=VO(`fas`,e);return t||(n?{prefix:`fas`,iconName:n}:null)||{prefix:null,iconName:null}}function KO(){return MO}var qO=function(){return{prefix:null,iconName:null,rest:[]}};function JO(e){var t=ZT,n=AO.reduce(function(e,t){return e[t]=`${JD.cssPrefix}-${t}`,e},{});return GE.forEach(function(r){(e.includes(n[r])||e.some(function(e){return jO[r].includes(e)}))&&(t=r)}),t}function YO(e){var t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).family,n=t===void 0?ZT:t,r=jD[n][e];if(n===QT&&!e)return`fad`;var i=ND[n][e]||ND[n][r],a=e in gO.styles?e:null;return i||a||null}function XO(e){var t=[],n=null;return e.forEach(function(e){var r=zO(JD.cssPrefix,e);r?n=r:e&&t.push(e)}),{iconName:n,rest:t}}function ZO(e){return e.sort().filter(function(e,t,n){return n.indexOf(e)===t})}var QO=lD.concat(XE);function $O(e){var t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).skipLookups,n=t!==void 0&&t,r=null,i=ZO(e.filter(function(e){return QO.includes(e)})),a=ZO(e.filter(function(e){return!QO.includes(e)})),o=ET(i.filter(function(e){return r=e,!XT.includes(e)}),1)[0],s=o===void 0?null:o,c=JO(i),l=B(B({},XO(a)),{},{prefix:YO(s,{family:c})});return B(B(B({},l),rk({values:e,family:c,styles:OO,config:JD,canonical:l,givenPrefix:r})),ek(n,r,l))}function ek(e,t,n){var r=n.prefix,i=n.iconName;if(e||!r||!i)return{prefix:r,iconName:i};var a=t===`fa`?WO(i):{},o=UO(r,i);return i=a.iconName||o||i,r=a.prefix||r,r===`far`&&!OO.far&&OO.fas&&!JD.autoFetchSvg&&(r=`fas`),{prefix:r,iconName:i}}var tk=GE.filter(function(e){return e!==ZT||e!==QT}),nk=Object.keys(cD).filter(function(e){return e!==ZT}).map(function(e){return Object.keys(cD[e])}).flat();function rk(e){var t=e.values,n=e.family,r=e.canonical,i=e.givenPrefix,a=i===void 0?``:i,o=e.styles,s=o===void 0?{}:o,c=e.config,l=c===void 0?{}:c,u=n===QT,d=t.includes(`fa-duotone`)||t.includes(`fad`),f=l.familyDefault===`duotone`,p=r.prefix===`fad`||r.prefix===`fa-duotone`;return!u&&(d||f||p)&&(r.prefix=`fad`),(t.includes(`fa-brands`)||t.includes(`fab`))&&(r.prefix=`fab`),!r.prefix&&tk.includes(n)&&(Object.keys(s).find(function(e){return nk.includes(e)})||l.autoFetchSvg)&&(r.prefix=JE.get(n).defaultShortPrefixId,r.iconName=UO(r.prefix,r.iconName)||r.iconName),(r.prefix===`fa`||a===`fa`)&&(r.prefix=KO()||`fas`),r}var ik=function(){function e(){gT(this,e),this.definitions={}}return vT(e,[{key:`add`,value:function(){var e=this,t=[...arguments].reduce(this._pullDefinitions,{});Object.keys(t).forEach(function(n){e.definitions[n]=B(B({},e.definitions[n]||{}),t[n]),DO(n,t[n]);var r=FD[ZT][n];r&&DO(r,t[n]),BO()})}},{key:`reset`,value:function(){this.definitions={}}},{key:`_pullDefinitions`,value:function(e,t){var n=t.prefix&&t.iconName&&t.icon?{0:t}:t;return Object.keys(n).map(function(t){var r=n[t],i=r.prefix,a=r.iconName,o=r.icon,s=o[2];e[i]||(e[i]={}),s.length>0&&s.forEach(function(t){typeof t==`string`&&(e[i][t]=o)}),e[i][a]=o}),e}}])}(),ak=[],ok={},sk={},ck=Object.keys(sk);function lk(e,t){var n=t.mixoutsTo;return ak=e,ok={},Object.keys(sk).forEach(function(e){ck.indexOf(e)===-1&&delete sk[e]}),ak.forEach(function(e){var t=e.mixout?e.mixout():{};if(Object.keys(t).forEach(function(e){typeof t[e]==`function`&&(n[e]=t[e]),AT(t[e])===`object`&&Object.keys(t[e]).forEach(function(r){n[e]||(n[e]={}),n[e][r]=t[e][r]})}),e.hooks){var r=e.hooks();Object.keys(r).forEach(function(e){ok[e]||(ok[e]=[]),ok[e].push(r[e])})}e.provides&&e.provides(sk)}),n}function uk(e,t){var n=[...arguments].slice(2);
1771return(ok[e]||[]).forEach(function(e){t=e.apply(null,[t].concat(n))}),t}function dk(e){var t=[...arguments].slice(1);(ok[e]||[]).forEach(function(e){e.apply(null,t)})}function fk(){var e=arguments[0],t=Array.prototype.slice.call(arguments,1);return sk[e]?sk[e].apply(null,t):void 0}function pk(e){e.prefix===`fa`&&(e.prefix=`fas`);var t=e.iconName,n=e.prefix||KO();if(t)return t=UO(n,t)||t,SO(mk.definitions,n,t)||SO(gO.styles,n,t)}var mk=new ik,hk={noAuto:function(){JD.autoReplaceSvg=!1,JD.observeMutations=!1,dk(`noAuto`)},config:JD,dom:{i2svg:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return UT?(dk(`beforeI2svg`,e),fk(`pseudoElements2svg`,e),fk(`i2svg`,e)):Promise.reject(Error(`Operation requires a DOM of some kind.`))},watch:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.autoReplaceSvgRoot;JD.autoReplaceSvg===!1&&(JD.autoReplaceSvg=!0),JD.observeMutations=!0,bO(function(){gk({autoReplaceSvgRoot:t}),dk(`watch`,e)})}},parse:{icon:function(e){if(e===null)return null;if(AT(e)===`object`&&e.prefix&&e.iconName)return{prefix:e.prefix,iconName:UO(e.prefix,e.iconName)||e.iconName};if(Array.isArray(e)&&e.length===2){var t=e[1].indexOf(`fa-`)===0?e[1].slice(3):e[1],n=YO(e[0]);return{prefix:n,iconName:UO(n,t)||t}}if(typeof e==`string`&&(e.indexOf(`${JD.cssPrefix}-`)>-1||e.match(LD))){var r=$O(e.split(` `),{skipLookups:!0});return{prefix:r.prefix||KO(),iconName:UO(r.prefix,r.iconName)||r.iconName}}if(typeof e==`string`){var i=KO();return{prefix:i,iconName:UO(i,e)||e}}}},library:mk,findIconDefinition:pk,toHtml:xO},gk=function(){var e=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}).autoReplaceSvgRoot,t=e===void 0?BT:e;(Object.keys(gO.styles).length>0||JD.autoFetchSvg)&&UT&&JD.autoReplaceSvg&&hk.dom.i2svg({node:t})};function _k(e,t){return Object.defineProperty(e,"abstract",{get:t}),Object.defineProperty(e,"html",{get:function(){return e.abstract.map(function(e){return xO(e)})}}),Object.defineProperty(e,"node",{get:function(){if(UT){var t=BT.createElement(`div`);return t.innerHTML=e.html,t.children}}}),e}function vk(e){var t=e.children,n=e.main,r=e.mask,i=e.attributes,a=e.styles,o=e.transform;if(sO(o)&&n.found&&!r.found){var s={x:n.width/n.height/2,y:.5};i.style=oO(B(B({},a),{},{"transform-origin":`${s.x+o.x/16}em ${s.y+o.y/16}em`}))}return[{tag:`svg`,attributes:i,children:t}]}function yk(e){var t=e.prefix,n=e.iconName,r=e.children,i=e.attributes,a=e.symbol,o=a===!0?`${t}-${JD.cssPrefix}-${n}`:a;return[{tag:`svg`,attributes:{style:`display: none;`},children:[{tag:`symbol`,attributes:B(B({},i),{},{id:o}),children:r}]}]}function bk(e){return[`aria-label`,`aria-labelledby`,`title`,`role`].some(function(t){return t in e})}function xk(e){var t=e.icons,n=t.main,r=t.mask,i=e.prefix,a=e.iconName,o=e.transform,s=e.symbol,c=e.maskId,l=e.extra,u=e.watchable,d=u!==void 0&&u,f=r.found?r:n,p=f.width,m=f.height,h=[JD.replacementClass,a?`${JD.cssPrefix}-${a}`:``].filter(function(e){return l.classes.indexOf(e)===-1}).filter(function(e){return e!==``||!!e}).concat(l.classes).join(` `),g={children:[],attributes:B(B({},l.attributes),{},{"data-prefix":i,"data-icon":a,class:h,role:l.attributes.role||`img`,viewBox:`0 0 ${p} ${m}`})};!bk(l.attributes)&&!l.attributes[`aria-hidden`]&&(g.attributes[`aria-hidden`]=`true`),d&&(g.attributes[yD]=``);var _=B(B({},g),{},{prefix:i,iconName:a,main:n,mask:r,maskId:c,transform:o,symbol:s,styles:B({},l.styles)}),v=r.found&&n.found?fk(`generateAbstractMask`,_)||{children:[],attributes:{}}:fk(`generateAbstractIcon`,_)||{children:[],attributes:{}},y=v.children,b=v.attributes;return _.children=y,_.attributes=b,s?yk(_):vk(_)}function Sk(e){var t=e.content,n=e.width,r=e.height,i=e.transform,a=e.extra,o=e.watchable,s=o!==void 0&&o,c=B(B({},a.attributes),{},{class:a.classes.join(` `)});s&&(c[yD]=``);var l=B({},a.styles);sO(i)&&(l.transform=lO({transform:i,startCentered:!0,width:n,height:r}),l[`-webkit-transform`]=l.transform);var u=oO(l);u.length>0&&(c.style=u);var d=[];return d.push({tag:`span`,attributes:c,children:[t]}),d}function Ck(e){var t=e.content,n=e.extra,r=B(B({},n.attributes),{},{class:n.classes.join(` `)}),i=oO(n.styles);i.length>0&&(r.style=i);var a=[];return a.push({tag:`span`,attributes:r,children:[t]}),a}var wk=gO.styles;function Tk(e){var t=e[0],n=e[1],r=ET(e.slice(4),1)[0],i=null;return i=Array.isArray(r)?{tag:`g`,attributes:{class:`${JD.cssPrefix}-${VD.GROUP}`},children:[{tag:`path`,attributes:{class:`${JD.cssPrefix}-${VD.SECONDARY}`,fill:`currentColor`,d:r[0]}},{tag:`path`,attributes:{class:`${JD.cssPrefix}-${VD.PRIMARY}`,fill:`currentColor`,d:r[1]}}]}:{tag:`path`,attributes:{fill:`currentColor`,d:r}},{found:!0,width:t,height:n,icon:i}}var Ek={found:!1,width:512,height:512};function Dk(e,t){!OD&&!JD.showMissingIcons&&e&&console.error(`Icon with name "${e}" and prefix "${t}" is missing.`)}function Ok(e,t){var n=t;return t===`fa`&&JD.styleDefault!==null&&(t=KO()),new Promise(function(r,i){if(n===`fa`){var a=WO(e)||{};e=a.iconName||e,t=a.prefix||t}if(e&&t&&wk[t]&&wk[t][e]){var o=wk[t][e];return r(Tk(o))}Dk(e,t),r(B(B({},Ek),{},{icon:JD.showMissingIcons&&e&&fk(`missingIconAbstract`)||{}}))})}var kk=function(){},Ak=JD.measurePerformance&&HT&&HT.mark&&HT.measure?HT:{mark:kk,measure:kk},jk=`FA "7.3.1"`,Mk=function(e){return Ak.mark(`${jk} ${e} begins`),function(){return Nk(e)}},Nk=function(e){Ak.mark(`${jk} ${e} ends`),Ak.measure(`${jk} ${e}`,`${jk} ${e} begins`,`${jk} ${e} ends`)},Pk={begin:Mk,end:Nk},Fk=function(){};function Ik(e){return typeof(e.getAttribute?e.getAttribute(yD):null)==`string`}function Lk(e){var t=e.getAttribute?e.getAttribute(SD):null,n=e.getAttribute?e.getAttribute(CD):null;return t&&n}function Rk(e){return e&&e.classList&&e.classList.contains&&e.classList.contains(JD.replacementClass)}function zk(){return JD.autoReplaceSvg===!0?Wk.replace:Wk[JD.autoReplaceSvg]||Wk.replace}function Bk(e){return BT.createElementNS(`http://www.w3.org/2000/svg`,e)}function Vk(e){return BT.createElement(e)}function Hk(e){var t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).ceFn,n=t===void 0?e.tag===`svg`?Bk:Vk:t;if(typeof e==`string`)return BT.createTextNode(e);var r=n(e.tag);
1771return Object.keys(e.attributes||[]).forEach(function(t){r.setAttribute(t,e.attributes[t])}),(e.children||[]).forEach(function(e){r.appendChild(Hk(e,{ceFn:n}))}),r}function Uk(e){var t=` ${e.outerHTML} `;return t=`${t}Font Awesome fontawesome.com `,t}var Wk={replace:function(e){var t=e[0];if(t.parentNode)if(e[1].forEach(function(e){t.parentNode.insertBefore(Hk(e),t)}),t.getAttribute(yD)===null&&JD.keepOriginalSource){var n=BT.createComment(Uk(t));t.parentNode.replaceChild(n,t)}else t.remove()},nest:function(e){var t=e[0],n=e[1];if(~rO(t).indexOf(JD.replacementClass))return Wk.replace(e);var r=RegExp(`${JD.cssPrefix}-.*`);if(delete n[0].attributes.id,n[0].attributes.class){var i=n[0].attributes.class.split(` `).reduce(function(e,t){return t===JD.replacementClass||t.match(r)?e.toSvg.push(t):e.toNode.push(t),e},{toNode:[],toSvg:[]});n[0].attributes.class=i.toSvg.join(` `),i.toNode.length===0?t.removeAttribute(`class`):t.setAttribute(`class`,i.toNode.join(` `))}var a=n.map(function(e){return xO(e)}).join(` 1772`);t.setAttribute(yD,``),t.innerHTML=a}};function Gk(e){e()}function Kk(e,t){var n=typeof t==`function`?t:Fk;if(e.length===0)n();else{var r=Gk;JD.mutateApproach===TD&&(r=zT.requestAnimationFrame||Gk),r(function(){var t=zk(),r=Pk.begin(`mutate`);e.map(t),r(),n()})}}var qk=!1;function Jk(){qk=!0}function Yk(){qk=!1}var Xk=null;function Zk(e){if(VT&&JD.observeMutations){var t=e.treeCallback,n=t===void 0?Fk:t,r=e.nodeCallback,i=r===void 0?Fk:r,a=e.pseudoElementsCallback,o=a===void 0?Fk:a,s=e.observeMutationsRoot,c=s===void 0?BT:s;Xk=new VT(function(e){if(!qk){var t=KO();nO(e).forEach(function(e){if(e.type===`childList`&&e.addedNodes.length>0&&!Ik(e.addedNodes[0])&&(JD.searchPseudoElements&&o(e.target),n(e.target)),e.type===`attributes`&&e.target.parentNode&&JD.searchPseudoElements&&o([e.target],!0),e.type===`attributes`&&Ik(e.target)&&~BD.indexOf(e.attributeName))if(e.attributeName===`class`&&Lk(e.target)){var r=$O(rO(e.target)),a=r.prefix,s=r.iconName;e.target.setAttribute(SD,a||t),s&&e.target.setAttribute(CD,s)}else Rk(e.target)&&i(e.target)})}}),UT&&Xk.observe(c,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}}function Qk(){Xk&&Xk.disconnect()}function $k(e){var t=e.getAttribute(`style`),n=[];return t&&(n=t.split(`;`).reduce(function(e,t){var n=t.split(`:`),r=n[0],i=n.slice(1);return r&&i.length>0&&(e[r]=i.join(`:`).trim()),e},{})),n}function eA(e){var t=e.getAttribute(`data-prefix`),n=e.getAttribute(`data-icon`),r=e.innerText===void 0?``:e.innerText.trim(),i=$O(rO(e));return i.prefix||=KO(),t&&n&&(i.prefix=t,i.iconName=n),i.iconName&&i.prefix?i:(i.prefix&&r.length>0&&(i.iconName=HO(i.prefix,e.innerText)||VO(i.prefix,TO(e.innerText))),!i.iconName&&JD.autoFetchSvg&&e.firstChild&&e.firstChild.nodeType===Node.TEXT_NODE&&(i.iconName=e.firstChild.data),i)}function tA(e){return nO(e.attributes).reduce(function(e,t){return e.name!==`class`&&e.name!==`style`&&(e[t.name]=t.value),e},{})}function nA(){return{iconName:null,prefix:null,transform:QD,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function rA(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},n=eA(e),r=n.iconName,i=n.prefix,a=n.rest,o=tA(e),s=uk(`parseNodeAttributes`,{},e);return B({iconName:r,prefix:i,transform:QD,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:a,styles:t.styleParser?$k(e):[],attributes:o}},s)}var iA=gO.styles;function aA(e){var t=JD.autoReplaceSvg===`nest`?rA(e,{styleParser:!1}):rA(e);return~t.extra.classes.indexOf(RD)?fk(`generateLayersText`,e,t):fk(`generateSvgReplacementMutation`,e,t)}function oA(){return[].concat(DT(XE),DT(lD))}function sA(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!UT)return Promise.resolve();var n=BT.documentElement.classList,r=function(e){return n.add(`${wD}-${e}`)},i=function(e){return n.remove(`${wD}-${e}`)},a=JD.autoFetchSvg?oA():XT.concat(Object.keys(iA));a.includes(`fa`)||a.push(`fa`);var o=[`.${RD}:not([${yD}])`].concat(a.map(function(e){return`.${e}:not([${yD}])`})).join(`, `);if(o.length===0)return Promise.resolve();var s=[];
1772try{s=nO(e.querySelectorAll(o))}catch{}if(s.length>0)r(`pending`),i(`complete`);else return Promise.resolve();var c=Pk.begin(`onTree`),l=s.reduce(function(e,t){try{var n=aA(t);n&&e.push(n)}catch(e){OD||e.name===`MissingIcon`&&console.error(e)}return e},[]);return new Promise(function(e,n){Promise.all(l).then(function(n){Kk(n,function(){r(`active`),r(`complete`),i(`pending`),typeof t==`function`&&t(),c(),e()})}).catch(function(e){c(),n(e)})})}function cA(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;aA(e).then(function(e){e&&Kk([e],t)})}function lA(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=(t||{}).icon?t:pk(t||{}),i=n.mask;return i&&=(i||{}).icon?i:pk(i||{}),e(r,B(B({},n),{},{mask:i}))}}var uA=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.transform,r=n===void 0?QD:n,i=t.symbol,a=i!==void 0&&i,o=t.mask,s=o===void 0?null:o,c=t.maskId,l=c===void 0?null:c,u=t.classes,d=u===void 0?[]:u,f=t.attributes,p=f===void 0?{}:f,m=t.styles,h=m===void 0?{}:m;if(e){var g=e.prefix,_=e.iconName,v=e.icon;return _k(B({type:`icon`},e),function(){return dk(`beforeDOMElementCreation`,{iconDefinition:e,params:t}),xk({icons:{main:Tk(v),mask:s?Tk(s.icon):{found:!1,width:null,height:null,icon:{}}},prefix:g,iconName:_,transform:B(B({},QD),r),symbol:a,maskId:l,extra:{attributes:p,styles:h,classes:d}})})}},dA={mixout:function(){return{icon:lA(uA)}},hooks:function(){return{mutationObserverCallbacks:function(e){return e.treeCallback=sA,e.nodeCallback=cA,e}}},provides:function(e){e.i2svg=function(e){var t=e.node,n=t===void 0?BT:t,r=e.callback;return sA(n,r===void 0?function(){}:r)},e.generateSvgReplacementMutation=function(e,t){var n=t.iconName,r=t.prefix,i=t.transform,a=t.symbol,o=t.mask,s=t.maskId,c=t.extra;return new Promise(function(t,l){Promise.all([Ok(n,r),o.iconName?Ok(o.iconName,o.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(function(o){var l=ET(o,2),u=l[0],d=l[1];t([e,xk({icons:{main:u,mask:d},prefix:r,iconName:n,transform:i,symbol:a,maskId:s,extra:c,watchable:!0})])}).catch(l)})},e.generateAbstractIcon=function(e){var t=e.children,n=e.attributes,r=e.main,i=e.transform,a=e.styles,o=oO(a);o.length>0&&(n.style=o);var s;return sO(i)&&(s=fk(`generateAbstractTransformGrouping`,{main:r,transform:i,containerWidth:r.width,iconWidth:r.width})),t.push(s||r.icon),{children:t,attributes:n}}}},fA={mixout:function(){return{layer:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.classes,r=n===void 0?[]:n;return _k({type:`layer`},function(){dk(`beforeDOMElementCreation`,{assembler:e,params:t});var n=[];return e(function(e){Array.isArray(e)?e.map(function(e){n=n.concat(e.abstract)}):n=n.concat(e.abstract)}),[{tag:`span`,attributes:{class:[`${JD.cssPrefix}-layers`].concat(DT(r)).join(` `)},children:n}]})}}}},pA={mixout:function(){return{counter:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.title,r=n===void 0?null:n,i=t.classes,a=i===void 0?[]:i,o=t.attributes,s=o===void 0?{}:o,c=t.styles,l=c===void 0?{}:c;return _k({type:`counter`,content:e},function(){return dk(`beforeDOMElementCreation`,{content:e,params:t}),Ck({content:e.toString(),title:r,extra:{attributes:s,styles:l,classes:[`${JD.cssPrefix}-layers-counter`].concat(DT(a))}})})}}}},mA={mixout:function(){return{text:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.transform,r=n===void 0?QD:n,i=t.classes,a=i===void 0?[]:i,o=t.attributes,s=o===void 0?{}:o,c=t.styles,l=c===void 0?{}:c;return _k({type:`text`,content:e},function(){return dk(`beforeDOMElementCreation`,{content:e,params:t}),Sk({content:e,transform:B(B({},QD),r),extra:{attributes:s,styles:l,classes:[`${JD.cssPrefix}-layers-text`].concat(DT(a))}})})}}},provides:function(e){e.generateLayersText=function(e,t){var n=t.transform,r=t.extra,i=null,a=null;if(WT){var o=parseInt(getComputedStyle(e).fontSize,10),s=e.getBoundingClientRect();i=s.width/o,a=s.height/o}return Promise.resolve([e,Sk({content:e.innerHTML,width:i,height:a,transform:n,extra:r,watchable:!0})])}}},hA=RegExp(`"`,`ug`),gA=[1105920,1112319],_A=B(B(B(B({},{FontAwesome:{normal:`fas`,400:`fas`}}),qE),mD),eD),vA=Object.keys(_A).reduce(function(e,t){return e[t.toLowerCase()]=_A[t],e},{}),yA=Object.keys(vA).reduce(function(e,t){var n=vA[t];return e[t]=n[900]||DT(Object.entries(n))[0][1],e},{});function bA(e){return TO(DT(e.replace(hA,``))[0]||``)}function xA(e){var t=e.getPropertyValue(`font-feature-settings`).includes(`ss01`),n=e.getPropertyValue(`content`).replace(hA,``),r=n.codePointAt(0),i=r>=gA[0]&&r<=gA[1],a=n.length===2&&n[0]===n[1];return i||a||t}function SA(e,t){var n=e.replace(/^['"]|['"]$/g,``).toLowerCase(),r=parseInt(t),i=isNaN(r)?`normal`:r;return(vA[n]||{})[i]||yA[n]}function CA(e,t){var n=`${xD}${t.replace(`:`,`-`)}`;return new Promise(function(r,i){if(e.getAttribute(n)!==null)return r();var a=nO(e.children).filter(function(e){return e.getAttribute(bD)===t})[0],o=zT.getComputedStyle(e,t),s=o.getPropertyValue(`font-family`),c=s.match(zD),l=o.getPropertyValue(`font-weight`),u=o.getPropertyValue(`content`);if(a&&!c)return e.removeChild(a),r();if(c&&u!==`none`&&u!==``){var d=o.getPropertyValue(`content`),f=SA(s,l),p=bA(d),m=c[0].startsWith(`FontAwesome`),h=xA(o),g=VO(f,p),_=g;if(m){var v=GO(p);v.iconName&&v.prefix&&(g=v.iconName,f=v.prefix)}if(g&&!h&&(!a||a.getAttribute(SD)!==f||a.getAttribute(CD)!==_)){e.setAttribute(n,_),a&&e.removeChild(a);var y=nA(),b=y.extra;b.attributes[bD]=t,Ok(g,f).then(function(i){var a=xk(B(B({},y),{},{icons:{main:i,mask:qO()},prefix:f,iconName:_,extra:b,watchable:!0})),o=BT.createElementNS(`http://www.w3.org/2000/svg`,`svg`);t===`::before`?e.insertBefore(o,e.firstChild):e.appendChild(o),o.outerHTML=a.map(function(e){return xO(e)}).join(` 1773`),e.removeAttribute(n),r()}).catch(i)}else r()}else r()})}function wA(e){return Promise.all([CA(e,`::before`),CA(e,`::after`)])}function TA(e){return e.parentNode!==document.head&&!~ED.indexOf(e.tagName.toUpperCase())&&!e.getAttribute(bD)&&(!e.parentNode||e.parentNode.tagName!==`svg`)}var EA=function(e){return!!e&&DD.some(function(t){return e.includes(t)})},DA=function(e){if(!e)return[];
1773var t=new Set,n=e.split(/,(?![^()]*\))/).map(function(e){return e.trim()});n=n.flatMap(function(e){return e.includes(`(`)?e:e.split(`,`).map(function(e){return e.trim()})});var r=yT(n),i;try{for(r.s();!(i=r.n()).done;){var a=i.value;if(EA(a)){var o=DD.reduce(function(e,t){return e.replace(t,``)},a);o!==``&&o!==`*`&&t.add(o)}}}catch(e){r.e(e)}finally{r.f()}return t};function OA(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1];if(UT){var n;if(t)n=e;else if(JD.searchPseudoElementsFullScan)n=e.querySelectorAll(`*`);else{var r=new Set,i=yT(document.styleSheets),a;try{for(i.s();!(a=i.n()).done;){var o=a.value;try{var s=yT(o.cssRules),c;try{for(s.s();!(c=s.n()).done;){var l=c.value,u=yT(DA(l.selectorText)),d;try{for(u.s();!(d=u.n()).done;){var f=d.value;r.add(f)}}catch(e){u.e(e)}finally{u.f()}}}catch(e){s.e(e)}finally{s.f()}}catch(e){JD.searchPseudoElementsWarnings&&console.warn(`Font Awesome: cannot parse stylesheet: ${o.href} (${e.message}) 1774If it declares any Font Awesome CSS pseudo-elements, they will not be rendered as SVG icons. Add crossorigin="anonymous" to the <link>, enable searchPseudoElementsFullScan for slower but more thorough DOM parsing, or suppress this warning by setting searchPseudoElementsWarnings to false.`)}}}catch(e){i.e(e)}finally{i.f()}if(!r.size)return;var p=Array.from(r).join(`, `);try{n=e.querySelectorAll(p)}catch{}}return new Promise(function(e,t){var r=nO(n).filter(TA).map(wA),i=Pk.begin(`searchPseudoElements`);Jk(),Promise.all(r).then(function(){i(),Yk(),e()}).catch(function(){i(),Yk(),t()})})}}var kA={hooks:function(){return{mutationObserverCallbacks:function(e){return e.pseudoElementsCallback=OA,e}}},provides:function(e){e.pseudoElements2svg=function(e){var t=e.node,n=t===void 0?BT:t;JD.searchPseudoElements&&OA(n)}}},AA=!1,jA={mixout:function(){return{dom:{unwatch:function(){Jk(),AA=!0}}}},hooks:function(){return{bootstrap:function(){Zk(uk(`mutationObserverCallbacks`,{}))},noAuto:function(){Qk()},watch:function(e){var t=e.observeMutationsRoot;AA?Yk():Zk(uk(`mutationObserverCallbacks`,{observeMutationsRoot:t}))}}}},MA=function(e){return e.toLowerCase().split(` `).reduce(function(e,t){var n=t.toLowerCase().split(`-`),r=n[0],i=n.slice(1).join(`-`);if(r&&i===`h`)return e.flipX=!0,e;if(r&&i===`v`)return e.flipY=!0,e;if(i=parseFloat(i),isNaN(i))return e;switch(r){case`grow`:e.size+=i;break;case`shrink`:e.size-=i;break;case`left`:e.x-=i;break;case`right`:e.x+=i;break;case`up`:e.y-=i;break;case`down`:e.y+=i;break;case`rotate`:e.rotate+=i}return e},{size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0})},NA={mixout:function(){return{parse:{transform:function(e){return MA(e)}}}},hooks:function(){return{parseNodeAttributes:function(e,t){var n=t.getAttribute(`data-fa-transform`);return n&&(e.transform=MA(n)),e}}},provides:function(e){e.generateAbstractTransformGrouping=function(e){var t=e.main,n=e.transform,r=e.containerWidth,i=e.iconWidth,a={outer:{transform:`translate(${r/2} 256)`},inner:{transform:`${`translate(${n.x*32}, ${n.y*32}) `} ${`scale(${n.size/16*(n.flipX?-1:1)}, ${n.size/16*(n.flipY?-1:1)}) `} ${`rotate(${n.rotate} 0 0)`}`},path:{transform:`translate(${i/2*-1} -256)`}};return{tag:`g`,attributes:B({},a.outer),children:[{tag:`g`,attributes:B({},a.inner),children:[{tag:t.icon.tag,children:t.icon.children,attributes:B(B({},t.icon.attributes),a.path)}]}]}}}},PA={x:0,y:0,width:`100%`,height:`100%`};function FA(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return e.attributes&&(e.attributes.fill||t)&&(e.attributes.fill=`black`),e}function IA(e){return e.tag===`g`?e.children:[e]}lk([mO,dA,fA,pA,mA,kA,jA,NA,{hooks:function(){return{parseNodeAttributes:function(e,t){var n=t.getAttribute(`data-fa-mask`),r=n?$O(n.split(` `).map(function(e){return e.trim()})):qO();return r.prefix||=KO(),e.mask=r,e.maskId=t.getAttribute(`data-fa-mask-id`),e}}},provides:function(e){e.generateAbstractMask=function(e){var t=e.children,n=e.attributes,r=e.main,i=e.mask,a=e.maskId,o=e.transform,s=r.width,c=r.icon,l=i.width,u=i.icon,d=cO({transform:o,containerWidth:l,iconWidth:s}),f={tag:`rect`,attributes:B(B({},PA),{},{fill:`white`})},p=c.children?{children:c.children.map(FA)}:{},m={tag:`g`,attributes:B({},d.inner),children:[FA(B({tag:c.tag,attributes:B(B({},c.attributes),d.path)},p))]},h={tag:`g`,attributes:B({},d.outer),children:[m]},g=`mask-${a||tO()}`,_=`clip-${a||tO()}`,v={tag:`mask`,attributes:B(B({},PA),{},{id:g,maskUnits:`userSpaceOnUse`,maskContentUnits:`userSpaceOnUse`}),children:[f,h]},y={tag:`defs`,children:[{tag:`clipPath`,attributes:{id:_},children:IA(u)},v]};return t.push(y,{tag:`rect`,attributes:B({fill:`currentColor`,"clip-path":`url(#${_})`,mask:`url(#${g})`},PA)}),{children:t,attributes:n}}}},{provides:function(e){var t=!1;zT.matchMedia&&(t=zT.matchMedia(`(prefers-reduced-motion: reduce)`).matches),e.missingIconAbstract=function(){var e=[],n={fill:`currentColor`},r={attributeType:`XML`,repeatCount:`indefinite`,dur:`2s`};e.push({tag:`path`,attributes:B(B({},n),{},{d:`M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2
1774-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z`})});var i=B(B({},r),{},{attributeName:`opacity`}),a={tag:`circle`,attributes:B(B({},n),{},{cx:`256`,cy:`364`,r:`28`}),children:[]};return t||a.children.push({tag:`animate`,attributes:B(B({},r),{},{attributeName:`r`,values:`28;14;28;28;14;28;`})},{tag:`animate`,attributes:B(B({},i),{},{values:`1;0;1;1;0;1;`})}),e.push(a),e.push({tag:`path`,attributes:B(B({},n),{},{opacity:`1`,d:`M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z`}),children:t?[]:[{tag:`animate`,attributes:B(B({},i),{},{values:`1;0;0;0;0;1;`})}]}),t||e.push({tag:`path`,attributes:B(B({},n),{},{opacity:`0`,d:`M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z`}),children:[{tag:`animate`,attributes:B(B({},i),{},{values:`0;0;1;1;0;0;`})}]}),{tag:`g`,attributes:{class:`missing`},children:e}}}},{hooks:function(){return{parseNodeAttributes:function(e,t){var n=t.getAttribute(`data-fa-symbol`);return e.symbol=n===null?!1:n===``||n,e}}}}],{mixoutsTo:hk}),hk.noAuto;var LA=hk.config;hk.library,hk.dom;var RA=hk.parse;hk.findIconDefinition,hk.toHtml;var zA=hk.icon;hk.layer,hk.text,hk.counter;function BA(e){return e-=0,e===e}function VA(e){return BA(e)?e:(e=e.replace(/[_-]+(.)?/g,(e,t)=>t?t.toUpperCase():``),e.charAt(0).toLowerCase()+e.slice(1))}var HA=(e,t)=>S.createElement(`stop`,{key:`${t}-${e.offset}`,offset:e.offset,stopColor:e.color,...e.opacity!==void 0&&{stopOpacity:e.opacity}});function UA(e){return e.charAt(0).toUpperCase()+e.slice(1)}var WA=new Map,GA=1e3;function KA(e){if(WA.has(e))return WA.get(e);let t={},n=0,r=e.length;for(;n<r;){let i=e.indexOf(`;`,n),a=i===-1?r:i,o=e.slice(n,a).trim();if(o){let e=o.indexOf(`:`);if(e>0){let n=o.slice(0,e).trim(),r=o.slice(e+1).trim();if(n&&r){let e=VA(n);t[e.startsWith(`webkit`)?UA(e):e]=r}}}n=a+1}if(WA.size===GA){let e=WA.keys().next().value;e&&WA.delete(e)}return WA.set(e,t),t}function qA(e,t,n={}){if(typeof t==`string`)return t;let r=(t.children||[]).map(t=>{let r=t;return(`fill`in n||n.gradientFill)&&t.tag===`path`&&`fill`in t.attributes&&(r={...t,attributes:{...t.attributes,fill:void 0}}),qA(e,r)}),i=t.attributes||{},a={};for(let[e,t]of Object.entries(i))switch(!0){case e===`class`:a.className=t;break;case e===`style`:a.style=KA(String(t));break;case e.startsWith(`aria-`):case e.startsWith(`data-`):a[e.toLowerCase()]=t;break;default:a[VA(e)]=t}let{style:o,role:s,"aria-label":c,gradientFill:l,...u}=n;if(o&&(a.style=a.style?{...a.style,...o}:o),s&&(a.role=s),c&&(a[`aria-label`]=c,a[`aria-hidden`]=`false`),l){a.fill=`url(#${l.id})`;let{type:t,stops:n=[],...i}=l;r.unshift(e(t===`linear`?`linearGradient`:`radialGradient`,{...i,id:l.id},n.map(HA)))}return e(t.tag,{...a,...u},...r)}var JA=qA.bind(null,S.createElement),YA=(e,t)=>{let n=(0,S.useId)();return e||(t?n:void 0)},XA=class{constructor(e=`react-fontawesome`){this.enabled=!1;let t=!1;try{t=typeof process<`u`&&!0}catch{}this.scope=e,this.enabled=t}log(...e){this.enabled&&console.log(`[${this.scope}]`,...e)}warn(...e){this.enabled&&console.warn(`[${this.scope}]`,...e)}error(...e){this.enabled&&console.error(`[${this.scope}]`,...e)}};typeof process<`u`&&{}.FA_VERSION;var ZA=`searchPseudoElementsFullScan`in LA&&typeof LA.searchPseudoElementsFullScan==`boolean`?`7.0.0`:`6.0.0`,QA=Number.parseInt(ZA)>=7,$A=()=>QA,ej=`fa`,tj={beat:`fa-beat`,fade:`fa-fade`,beatFade:`fa-beat-fade`,bounce:`fa-bounce`,shake:`fa-shake`,spin:`fa-spin`,spinPulse:`fa-spin-pulse`,spinReverse:`fa-spin-reverse`,pulse:`fa-pulse`,flip360:`fa-flip-360`,buzz:`fa-buzz`,float:`fa-float`,jello:`fa-jello`,spinSnap:`fa-spin-snap`,spinSnap4:`fa-spin-snap-4`,spinSnap8:`fa-spin-snap-8`,swing:`fa-swing`,wag:`fa-wag`},nj={left:`fa-pull-left`,right:`fa-pull-right`},rj={90:`fa-rotate-90`,180:`fa-rotate-180`,270:`fa-rotate-270`},ij={"2xs":`fa-2xs`,xs:`fa-xs`,sm:`fa-sm`,lg:`fa-lg`,xl:`fa-xl`,"2xl":`fa-2xl`,"1x":`fa-1x`,"2x":`fa-2x`,"3x":`fa-3x`,"4x":`fa-4x`,"5x":`fa-5x`,"6x":`fa-6x`,"7x":`fa-7x`,"8x":`fa-8x`,"9x":`fa-9x`,"10x":`fa-10x`},aj={border:`fa-border`,fixedWidth:`fa-fw`,flip:`fa-flip`,flipHorizontal:`fa-flip-horizontal`,flipVertical:`fa-flip-vert
1774ical`,inverse:`fa-inverse`,rotateBy:`fa-rotate-by`,swapOpacity:`fa-swap-opacity`,widthAuto:`fa-width-auto`,canvasSquare:`fa-canvas-square`,canvasRoomy:`fa-canvas-roomy`},oj={default:`fa-layers`};function sj(e){let t=LA.cssPrefix||LA.familyPrefix||ej;return t===ej?e:e.replace(new RegExp(String.raw`(?<=^|\s)${ej}-`,`g`),`${t}-`)}function cj(e){let{beat:t,fade:n,beatFade:r,bounce:i,shake:a,spin:o,spinPulse:s,spinReverse:c,pulse:l,fixedWidth:u,inverse:d,border:f,flip:p,size:m,rotation:h,pull:g,swapOpacity:_,rotateBy:v,widthAuto:y,canvasSquare:b,canvasRoomy:x,flip360:S,buzz:ee,float:te,jello:ne,spinSnap:re,spinSnap4:ie,spinSnap8:C,swing:ae,wag:w,className:oe}=e,T=[];return oe&&T.push(...oe.split(` `)),t&&T.push(tj.beat),n&&T.push(tj.fade),r&&T.push(tj.beatFade),i&&T.push(tj.bounce),a&&T.push(tj.shake),o&&T.push(tj.spin),c&&T.push(tj.spinReverse),s&&T.push(tj.spinPulse),l&&T.push(tj.pulse),u&&T.push(aj.fixedWidth),d&&T.push(aj.inverse),f&&T.push(aj.border),p===!0&&T.push(aj.flip),(p===`horizontal`||p===`both`)&&T.push(aj.flipHorizontal),(p===`vertical`||p===`both`)&&T.push(aj.flipVertical),m!=null&&T.push(ij[m]),h!=null&&h!==0&&T.push(rj[h]),g!=null&&T.push(nj[g]),_&&T.push(aj.swapOpacity),$A()?(v&&T.push(aj.rotateBy),y&&T.push(aj.widthAuto),b&&T.push(aj.canvasSquare),x&&T.push(aj.canvasRoomy),S&&T.push(tj.flip360),ee&&T.push(tj.buzz),te&&T.push(tj.float),ne&&T.push(tj.jello),re&&T.push(tj.spinSnap),ie&&T.push(tj.spinSnap4),C&&T.push(tj.spinSnap8),ae&&T.push(tj.swing),w&&T.push(tj.wag),(LA.cssPrefix||LA.familyPrefix||ej)===ej?T:T.map(sj)):T}var lj=e=>typeof e==`object`&&`icon`in e&&!!e.icon;function uj(e){if(e)return lj(e)?e:RA.icon(e)}function dj(e){return Object.keys(e)}var fj=new XA(`FontAwesomeIcon`),pj={border:!1,className:``,mask:void 0,maskId:void 0,fixedWidth:!1,inverse:!1,flip:!1,icon:void 0,listItem:!1,pull:void 0,pulse:!1,rotation:void 0,rotateBy:!1,size:void 0,spin:!1,spinPulse:!1,spinReverse:!1,beat:!1,fade:!1,beatFade:!1,bounce:!1,shake:!1,symbol:!1,title:``,titleId:void 0,transform:void 0,swapOpacity:!1,widthAuto:!1,canvasSquare:!1,canvasRoomy:!1,flip360:!1,buzz:!1,float:!1,jello:!1,spinSnap:!1,spinSnap4:!1,spinSnap8:!1,swing:!1,wag:!1},mj=new Set(Object.keys(pj)),hj=S.forwardRef((e,t)=>{let n={...pj,...e},{icon:r,mask:i,symbol:a,title:o,titleId:s,maskId:c,transform:l}=n,u=YA(c,!!i),d=YA(s,!!o),f=uj(r);if(!f)return fj.error(`Icon lookup is undefined`,r),null;let p=cj(n),m=typeof l==`string`?RA.transform(l):l,h=uj(i),g=zA(f,{...p.length>0&&{classes:p},...m&&{transform:m},...h&&{mask:h},symbol:a,title:o,titleId:d,maskId:u});if(!g)return fj.error(`Could not find icon`,f),null;let{abstract:_}=g,v={ref:t};for(let e of dj(n))mj.has(e)||(v[e]=n[e]);return JA(_[0],v)});hj.displayName=`FontAwesomeIcon`,`${oj.default}${aj.fixedWidth}`;var gj={prefix:`fab`,iconName:`gitlab`,icon:[512,512,[],`f296`,`M504 204.6l-.7-1.8-69.7-181.8c-1.4-3.6-3.9-6.6-7.2-8.6-2.4-1.6-5.1-2.5-8-2.8s-5.7 .1-8.4 1.1-5.1 2.7-7.1 4.8c-1.9 2.1-3.3 4.7-4.1 7.4l-47 144-190.5 0-47.1-144c-.8-2.8-2.2-5.3-4.1-7.4-2-2.1-4.4-3.7-7.1-4.8-2.6-1-5.5-1.4-8.4-1.1s-5.6 1.2-8 2.8c-3.2 2-5.8 5.1-7.2 8.6L9.8 202.8 9 204.6c-10 26.2-11.3 55-3.5 82 7.7 26.9 24 50.7 46.4 67.6l.3 .2 .6 .4 106 79.5c38.5 29.1 66.7 50.3 84.6 63.9 3.7 1.9 8.3 4.3 13 4.3s9.3-2.4 13-4.3c17.9-13.5 46.1-34.9 84.6-63.9l106.7-79.9 .3-.3c22.4-16.9 38.7-40.6 45.6-67.5 8.6-27 7.4-55.8-2.6-82z`]},_j={prefix:`fab`,iconName:`mastodon`,icon:[448,512,[],`f4f6`,`M433 179.1c0-97.2-63.7-125.7-63.7-125.7-62.5-28.7-228.6-28.4-290.5 0 0 0-63.7 28.5-63.7 125.7 0 115.7-6.6 259.4 105.6 289.1 40.5 10.7 75.3 13 103.3 11.4 50.8-2.8 79.3-18.1 79.3-18.1l-1.7-36.9s-36.3 11.4-77.1 10.1c-40.4-1.4-83-4.4-89.6-54-.6-4.6-.9-9.3-.9-13.9 85.6 20.9 158.7 9.1 178.7 6.7 56.1-6.7 105-41.3 111.2-72.9 9.8-49.8 9-121.5 9-121.5zM357.9 304.3l-46.6 0 0-114.2c0-49.7-64-51.6-64 6.9l0 62.5-46.3 0 0-62.5c0-58.5-64-56.6-64-6.9l0 114.2-46.7 0c0-122.1-5.2-147.9 18.4-175 25.9-28.9 79.8-30.8 103.8 6.1l11.6 19.5 11.6-19.5c24.1-37.1 78.1-34.8 103.8-6.1 23.7 27.3 18.4 53 18.4 175l0 0z`]},vj={prefix:`fab`,iconName:`linkedin-in`,icon:[448,512,[],`f0e1`,`M100.3 448l-92.9 0 0-299.1 92.9 0 0 299.1zM53.8 108.1C24.1 108.1 0 83.5 0 53.8 0 39.5 5.7 25.9 15.8 15.8s23.8-15.8 38-15.8 27.9 5.7 38 15.8 15.8 23.8 15.8 38c0 29.7-24.1 54.3-53.8 54.3zM447.9 448l-92.7 0 0-145.6c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7l0 148.1-92.8 0 0-299.1 89.1 0 0 40.8 1.3 0c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3l0 164.3-.1 0z`]},yj=`/opt/src/frontend/src/components/ExternalLinkWarning.tsx`,bj=({url:e,isOpen:t,onClose:n,onConfirm:r})=>{let{translations:i}=rr();return t?(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 p-4`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-xl max-w-md w-full p-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center mb-4`,children:[(0,E.jsxDEV)(Pi,{className:`text-yellow-500 text-3xl mr-3`},void 0,!1,{fileName:yj,lineNumber:21,columnNumber:11},void 0),(0,E.jsxDEV)(`h2`,{className:`text-xl font-bold text-gray-900 dark:text-white`,children:i.externalLinkWarning?.t
1774itle||`Externe Webseite`},void 0,!1,{fileName:yj,lineNumber:22,columnNumber:11},void 0)]},void 0,!0,{fileName:yj,lineNumber:20,columnNumber:9},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-300 mb-4`,children:i.externalLinkWarning?.message||`Sie verlassen jetzt pabr.de und werden zu einer externen Webseite weitergeleitet:`},void 0,!1,{fileName:yj,lineNumber:27,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-700 p-3 rounded mb-4 break-all`,children:(0,E.jsxDEV)(`p`,{className:`text-sm text-gray-800 dark:text-gray-200 font-mono`,children:e},void 0,!1,{fileName:yj,lineNumber:32,columnNumber:11},void 0)},void 0,!1,{fileName:yj,lineNumber:31,columnNumber:9},void 0),(0,E.jsxDEV)(`p`,{className:`text-sm text-gray-600 dark:text-gray-400 mb-6`,children:i.externalLinkWarning?.disclaimer||`Wir übernehmen keine Verantwortung für den Inhalt externer Webseiten.`},void 0,!1,{fileName:yj,lineNumber:37,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`flex gap-3 justify-end`,children:[(0,E.jsxDEV)(`button`,{onClick:n,className:`px-4 py-2 bg-gray-300 dark:bg-gray-600 text-gray-800 dark:text-white rounded hover:bg-gray-400 dark:hover:bg-gray-500 transition-colors`,children:i.externalLinkWarning?.cancel||`Abbrechen`},void 0,!1,{fileName:yj,lineNumber:42,columnNumber:11},void 0),(0,E.jsxDEV)(`button`,{onClick:r,className:`px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 transition-colors`,children:i.externalLinkWarning?.continue||`Fortfahren`},void 0,!1,{fileName:yj,lineNumber:48,columnNumber:11},void 0)]},void 0,!0,{fileName:yj,lineNumber:41,columnNumber:9},void 0)]},void 0,!0,{fileName:yj,lineNumber:19,columnNumber:7},void 0)},void 0,!1,{fileName:yj,lineNumber:18,columnNumber:5},void 0):null},xj={prefix:`fas`,iconName:`gears`,icon:[640,512,[`cogs`],`f085`,`M415.9 210.5c12.2-3.3 25 2.5 30.5 13.8L465 261.9c10.3 1.4 20.4 4.2 29.9 8.1l35-23.3c10.5-7 24.4-5.6 33.3 3.3l19.2 19.2c8.9 8.9 10.3 22.9 3.3 33.3l-23.3 34.9c1.9 4.7 3.6 9.6 5 14.7 1.4 5.1 2.3 10.1 3 15.2l37.7 18.6c11.3 5.6 17.1 18.4 13.8 30.5l-7 26.2c-3.3 12.1-14.6 20.3-27.2 19.5l-42-2.7c-6.3 8.1-13.6 15.6-21.9 22l2.7 41.9c.8 12.6-7.4 24-19.5 27.2l-26.2 7c-12.2 3.3-24.9-2.5-30.5-13.8l-18.6-37.6c-10.3-1.4-20.4-4.2-29.9-8.1l-35 23.3c-10.5 7-24.4 5.6-33.3-3.3l-19.2-19.2c-8.9-8.9-10.3-22.8-3.3-33.3l23.3-35c-1.9-4.7-3.6-9.6-5-14.7s-2.3-10.2-3-15.2l-37.7-18.6c-11.3-5.6-17-18.4-13.8-30.5l7-26.2c3.3-12.1 14.6-20.3 27.2-19.5l41.9 2.7c6.3-8.1 13.6-15.6 21.9-22l-2.7-41.8c-.8-12.6 7.4-24 19.5-27.2l26.2-7zM448.4 340a44 44 0 1 0 .1 88 44 44 0 1 0 -.1-88zM224.9-45.5l26.2 7c12.1 3.3 20.3 14.7 19.5 27.2l-2.7 41.8c8.3 6.4 15.6 13.8 21.9 22l42-2.7c12.5-.8 23.9 7.4 27.2 19.5l7 26.2c3.2 12.1-2.5 24.9-13.8 30.5l-37.7 18.6c-.7 5.1-1.7 10.2-3 15.2s-3.1 10-5 14.7l23.3 35c7 10.5 5.6 24.4-3.3 33.3L307.3 262c-8.9 8.9-22.8 10.3-33.3 3.3L239 242c-9.5 3.9-19.6 6.7-29.9 8.1l-18.6 37.6c-5.6 11.3-18.4 17-30.5 13.8l-26.2-7c-12.2-3.3-20.3-14.7-19.5-27.2l2.7-41.9c-8.3-6.4-15.6-13.8-21.9-22l-42 2.7c-12.5 .8-23.9-7.4-27.2-19.5l-7-26.2c-3.2-12.1 2.5-24.9 13.8-30.5l37.7-18.6c.7-5.1 1.7-10.1 3-15.2 1.4-5.1 3-10 5-14.7L55.1 46.5c-7-10.5-5.6-24.4 3.3-33.3L77.6-6c8.9-8.9 22.8-10.3 33.3-3.3l35 23.3c9.5-3.9 19.6-6.7 29.9-8.1l18.6-37.6c5.6-11.3 18.3-17 30.5-13.8zM192.4 84a44 44 0 1 0 0 88 44 44 0 1 0 0-88z`]},Sj={prefix:`fas`,iconName:`database`,icon:[448,512,[],`f1c0`,`M448 205.8c-14.8 9.8-31.8 17.7-49.5 24-47 16.8-108.7 26.2-174.5 26.2S96.4 246.5 49.5 229.8c-17.6-6.3-34.7-14.2-49.5-24L0 288c0 44.2 100.3 80 224 80s224-35.8 224-80l0-82.2zm0-77.8l0-48C448 35.8 347.7 0 224 0S0 35.8 0 80l0 48c0 44.2 100.3 80 224 80s224-35.8 224-80zM398.5 389.8C351.6 406.5 289.9 416 224 416S96.4 406.5 49.5 389.8c-17.6-6.3-34.7-14.2-49.5-24L0 432c0 44.2 100.3 80 224 80s224-35.8 224-80l0-66.2c-14.8 9.8-31.8 17.7-49.5 24z`]},Cj={prefix:`fas`,iconName:`code`,icon:[576,512,[],`f121`,`M360.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm64.6 136.1c-12.5 12.5-12.5 32.8 0 45.3l73.4 73.4-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0zm-274.7 0c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 150.6 182.6c12.5-12.5 12.5-32.8 0-45.3z`]},wj={prefix:`fas`,iconName:`server`,icon:[448,512,[],`f233`,`M64 32C28.7 32 0 60.7 0 96l0 64c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-64c0-35.3-28.7-64-64-64L64 32zm216 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64l0 64c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-64c0-35.3-28.7-64-64-64L64 288zm216 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z`]},Tj={prefix:`fas`,iconName:`comments`,icon:[576,512,[128490,61670],`f086`,`M384 144c0 97.2-86 176-192 176-26.7 0-52.1-5-75.2-14L35.2 349.2c-9.3 4.9-20.7 3.2-28.2-4.2s-9.2-18.9-4.2-28.2l35.6-67.2C14.3 220.2 0 183.6 0 144 0 46.8 86-32 192-32S384 46.8 384 144zm0 368c-94.1 0-172.4-62.1-188.8-144 120-1.5 224.3-86.9 235.8-202.7 83.3 19.2 145 88.3 145 170.7 0 39.6-14.3 76.2-38.4 105.6l35.6 67.2c4.9 9.3 3.2 20.7-4.2 28.2s-18.9 9.2-28.2 4.2L459.2 498c-23.1 9-48.5 14-75.2 14z`]},Ej={prefix:`fas`,iconName:`shield-halved`,icon:[512,512,[`shield-alt`],`f3ed`,`M256 0c4.6 0 9.2 1 13.4 2.9L457.8 82.8c22 9.3 38.4 31 38.3 57.2-.5 99.2-41.3 280.7-213.6 363.2-16.7 8-36.1 8-52.8 0-172.4-82.5-213.1-264-213.6-363.2-.1-26.2 16.3-47.9 38.3-57.2L242.7 2.9C246.9 1 251.4 0 256 0zm0 66.8l0 378.1c138-66.8 175.1-214.8 176-303.4l-176-74.6 0 0z`]},Dj={prefix:`fas`,iconName:`desktop`,icon:[512,512,[128421,61704,`desktop-alt`],`f390`,`M64 32C28.7 32 0 60.7 0 96L0 352c0 35.3 28.7 64 64 64l144 0-16 48-72 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l272 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-72 0-16-48 144 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64L64 32zM96 96l320 0c17.7 0 32 14.3 32 32l0 160c0 17.7-14.3 32-32 32L96 320c-17.7 0-32-14.3-32-32l0-160c0-17.7 14.3-32 32-32z`]},Oj=`/opt/src/frontend/src/components/AboutPage.tsx`,kj=()=>{let{translations:e}=rr(),t=e.about,[n,r]=(0,S.useState)(null),i=e=>{if(e.includes(`pabr.de`)){window.open(e,`_blank`,`noopener,noreferrer`);return}r(e)},a=()=>{n&&(window.open(n,`_blank`,`noopener,noreferrer`),r(null))},o=e=>{switch(e){case`virtualization`:return wj;case`os`:return Dj;case`databases`:return Sj;case`programming`:return Cj;case`security`:return Ej;case`admin`:return xj;default:return xj}};return(0,E.jsxDEV)(`div`,{className:`w-full`,children:[(0,E.jsxDEV)(`div`,{className:`max-w-4xl mx-auto p-6`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 shadow-2xl rounded-lg overflow-hidden transition-colors duration-200`,children:[(0,E.jsxDEV)(`div`,{className:`relative h-48 bg-gradient-to-r from-blue-500 to-indigo-600 dark:from-blue-600 dar
1774k:to-indigo-700`,children:(0,E.jsxDEV)(`div`,{className:`absolute -bottom-16 left-1/2 transform -translate-x-1/2`,children:(0,E.jsxDEV)(`div`,{className:`w-32 h-32 rounded-full border-4 border-white dark:border-gray-800 shadow-lg bg-gray-200 dark:bg-gray-700 flex items-center justify-center`,children:(0,E.jsxDEV)(`span`,{className:`text-4xl text-gray-400 dark:text-gray-500`,children:`PA`},void 0,!1,{fileName:Oj,lineNumber:82,columnNumber:17},void 0)},void 0,!1,{fileName:Oj,lineNumber:81,columnNumber:15},void 0)},void 0,!1,{fileName:Oj,lineNumber:80,columnNumber:13},void 0)},void 0,!1,{fileName:Oj,lineNumber:79,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`pt-20 pb-8 px-6 text-center`,children:[(0,E.jsxDEV)(`h1`,{className:`text-3xl font-bold text-gray-900 dark:text-white`,children:`Paul à Brassard`},void 0,!1,{fileName:Oj,lineNumber:89,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-xl text-gray-600 dark:text-gray-400 mt-2`,children:t.role},void 0,!1,{fileName:Oj,lineNumber:90,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`mt-6 text-gray-600 dark:text-gray-300 leading-relaxed`,children:t.description},void 0,!1,{fileName:Oj,lineNumber:92,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`flex justify-center space-x-6 mt-8`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>i(`https://www.linkedin.com/in/paabr`),className:`text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white transition-colors cursor-pointer`,children:(0,E.jsxDEV)(`div`,{className:`w-12 h-12 bg-gray-100 dark:bg-gray-700 rounded-full flex items-center justify-center hover:bg-gray-200 dark:hover:bg-gray-600`,children:(0,E.jsxDEV)(hj,{icon:vj,className:`text-2xl`},void 0,!1,{fileName:Oj,lineNumber:100,columnNumber:19},void 0)},void 0,!1,{fileName:Oj,lineNumber:99,columnNumber:17},void 0)},void 0,!1,{fileName:Oj,lineNumber:98,columnNumber:15},void 0),(0,E.jsxDEV)(`a`,{href:`https://git.pabr.de/paul`,className:`text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white transition-colors`,target:`_blank`,rel:`noopener noreferrer`,children:(0,E.jsxDEV)(`div`,{className:`w-12 h-12 bg-gray-100 dark:bg-gray-700 rounded-full flex items-center justify-center hover:bg-gray-200 dark:hover:bg-gray-600`,children:(0,E.jsxDEV)(hj,{icon:gj,className:`text-2xl`},void 0,!1,{fileName:Oj,lineNumber:105,columnNumber:19},void 0)},void 0,!1,{fileName:Oj,lineNumber:104,columnNumber:17},void 0)},void 0,!1,{fileName:Oj,lineNumber:103,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>i(`https://matrix.to/#/@paul:matrix.pabr.de`),className:`text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white transition-colors cursor-pointer`,children:(0,E.jsxDEV)(`div`,{className:`w-12 h-12 bg-gray-100 dark:bg-gray-700 rounded-full flex items-center justify-center hover:bg-gray-200 dark:hover:bg-gray-600`,children:(0,E.jsxDEV)(hj,{icon:Tj,className:`text-2xl`},void 0,!1,{fileName:Oj,lineNumber:110,columnNumber:19},void 0)},void 0,!1,{fileName:Oj,lineNumber:109,columnNumber:17},void 0)},void 0,!1,{fileName:Oj,lineNumber:108,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>i(`https://chaos.social/@pabr`),className:`text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white transition-colors cursor-pointer`,children:(0,E.jsxDEV)(`div`,{className:`w-12 h-12 bg-gray-100 dark:bg-gray-700 rounded-full flex items-center justify-center hover:bg-gray-200 dark:hover:bg-gray-600`,children:(0,E.jsxDEV)(hj,{icon:_j,className:`text-2xl`},void 0,!1,{fileName:Oj,lineNumber:115,columnNumber:19},void 0)},void 0,!1,{fileName:Oj,lineNumber:114,columnNumber:17},void 0)},void 0,!1,{fileName:Oj,lineNumber:113,columnNumber:15},void 0)]},void 0,!0,{fileName:Oj,lineNumber:97,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-8 border-t border-gray-200 dark:border-gray-700 pt-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold text-gray-900 dark:text-white mb-8`,children:t.skills},void 0,!1,{fileName:Oj,lineNumber:122,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:[t.skillCategories&&Object.entries(t.skillCategories).map(([e,t])=>(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-700 rounded-lg p-6 transition-all hover:shadow-lg`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-center mb-4`,children:(0,E.jsxDEV)(`div`,{className:`w-12 h-12 bg-blue-100 dar
1774k:bg-blue-900 rounded-full flex items-center justify-center`,children:(0,E.jsxDEV)(hj,{icon:o(e),className:`text-2xl text-blue-600 dark:text-blue-300`},void 0,!1,{fileName:Oj,lineNumber:128,columnNumber:25},void 0)},void 0,!1,{fileName:Oj,lineNumber:127,columnNumber:23},void 0)},void 0,!1,{fileName:Oj,lineNumber:126,columnNumber:21},void 0),(0,E.jsxDEV)(`h3`,{className:`text-lg font-semibold text-gray-900 dark:text-white mb-4`,children:t.title},void 0,!1,{fileName:Oj,lineNumber:134,columnNumber:21},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-2 justify-center`,children:t.items.map(e=>(0,E.jsxDEV)(`span`,{className:`px-3 py-1 bg-gray-200 dark:bg-gray-600 rounded-full text-sm text-gray-700 dark:text-gray-300`,children:e},e,!1,{fileName:Oj,lineNumber:139,columnNumber:25},void 0))},void 0,!1,{fileName:Oj,lineNumber:137,columnNumber:21},void 0)]},e,!0,{fileName:Oj,lineNumber:125,columnNumber:19},void 0)),!t.skillCategories&&t.skillsList&&(0,E.jsxDEV)(`div`,{className:`col-span-2`,children:(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-2 justify-center`,children:t.skillsList.map(e=>(0,E.jsxDEV)(`span`,{className:`px-4 py-2 bg-gray-100 dark:bg-gray-700 rounded-full text-gray-700 dark:text-gray-300`,children:e},e,!1,{fileName:Oj,lineNumber:153,columnNumber:25},void 0))},void 0,!1,{fileName:Oj,lineNumber:151,columnNumber:21},void 0)},void 0,!1,{fileName:Oj,lineNumber:150,columnNumber:19},void 0)]},void 0,!0,{fileName:Oj,lineNumber:123,columnNumber:15},void 0)]},void 0,!0,{fileName:Oj,lineNumber:121,columnNumber:13},void 0)]},void 0,!0,{fileName:Oj,lineNumber:88,columnNumber:11},void 0)]},void 0,!0,{fileName:Oj,lineNumber:77,columnNumber:9},void 0)},void 0,!1,{fileName:Oj,lineNumber:76,columnNumber:7},void 0),(0,E.jsxDEV)(bj,{url:n||``,isOpen:n!==null,onClose:()=>r(null),onConfirm:a},void 0,!1,{fileName:Oj,lineNumber:169,columnNumber:7},void 0)]},void 0,!0,{fileName:Oj,lineNumber:75,columnNumber:5},void 0)},Aj=`/opt/src/frontend/src/components/LoginPage.tsx`,jj=()=>{let e=xt(),t=vt(),{isAuthenticated:n,login:r,authenticatedRequest:i}=Zn(),{translations:a}=rr(),[o,s]=(0,S.useState)(!1),[c,l]=(0,S.useState)(null),u=(0,S.useRef)(!1);(0,S.useEffect)(()=>{if(n){let t=sessionStorage.getItem(`redirectAfterLogin`)||`/`;sessionStorage.removeItem(`redirectAfterLogin`),e(t)}},[n,e]),(0,S.useEffect)(()=>{let n=new URLSearchParams(t.search),r=n.get(`code`),i=n.get(`state`);r&&i&&!u.current&&(u.current=!0,e(t.pathname,{replace:!0}),f(r,i))},[t,e]);let d=async()=>{if(!o){s(!0),l(null);try{let e=await fetch(`/api/auth/login`,{method:`GET`,credentials:`include`});if(e.ok){let{authorizationUrl:t,state:n}=await e.json();localStorage.setItem(`oauth_state`,n),window.location.href=t}else throw Error(`Failed to initiate login process`)}catch(e){Kn.error(`Login failed`,e),l(a.login.error),s(!1)}}},f=async(t,n)=>{if(s(!0),l(null),n!==localStorage.getItem(`oauth_state`)){l(`Invalid state parameter`),s(!1);return}try{let a=await i(`/api/auth/callback`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:t,state:n})});if(a.ok){let{token:t}=await a.json();await r(t);let n=sessionStorage.getItem(`redirectAfterLogin`)||`/`;sessionStorage.removeItem(`redirectAfterLogin`),e(n)}else throw Error(`Failed to exchange code for token`)}catch(e){Kn.error(`Token exchange failed`,e),l(a.login.error)}finally{s(!1),localStorage.removeItem(`oauth_state`)}};return(0,E.jsxDEV)(`div`,{className:`container mx-auto p-4 dark:bg-gray-800 min-h-full w-full pt-6 pb-12 flex flex-col items-center justify-center`,children:[(0,E.jsxDEV)(`h1`,{className:`text-3xl font-bold mb-4 dark:text-white`,children:a.login.title},void 0,!1,{fileName:Aj,lineNumber:110,columnNumber:7},void 0),(0,E.jsxDEV)(`div`,{className:`text-center`,children:[(0,E.jsxDEV)(`button`,{onClick:d,disabled:o,className:`bg-blue-500 hover:bg-blue-700 dark:bg-blue-600 dark:hover:bg-blue-800 text-white font-bold py-2 px-4 rounded transition duration-300 ${o?`opacity-50 cursor-not-allowed`:``}`,children:o?a.login.loading:a.login.loginWith},void 0,!1,{fileName:Aj,lineNumber:112,columnNumber:9},void 0),c&&(0,E.jsxDEV)(`p`,{className:`text-red-500 mt-2`,children:c},void 0,!1,{fileName:Aj,lineNumber:122,columnNumber:11},void 0)]},void 0,!0,{fileName:Aj,lineNumber:111,columnNumber:7},void 0)]},void 0,!0,{fileName:Aj,lineNumber:109,columnNumber:5},void 0)},Mj=`2.0.10`,Nj=500,Pj=`user-agent`,Fj=``,Ij=`?`,Lj={FUNCTION:`function`,OBJECT:`object`,STRING:`string`,UNDEFINED:`undefined`},Rj=`browser`,zj=`cpu`,Bj=`device`,Vj=`engine`,Hj=`os`,Uj=`result`,V=`name`,H=`type`,U=`vendor`,W
vendor: 3,181 bytes, line 1774
1774=`version`,Wj=`architecture`,Gj=`major`,G=`model`,Kj=`console`,qj=`mobile`,Jj=`tablet`,Yj=`smarttv`,Xj=`wearable`,Zj=`xr`,Qj=`embedded`,$j=`fetcher`,eM=`inapp`,tM=`brands`,nM=`formFactors`,rM=`fullVersionList`,iM=`platform`,aM=`platformVersion`,oM=`bitness`,sM=`sec-ch-ua`,cM=sM+`-full-version-list`,lM=sM+`-arch`,uM=sM+`-`+oM,dM=sM+`-form-factors`,fM=sM+`-`+qj,pM=sM+`-`+G,mM=sM+`-`+iM,hM=mM+`-version`,gM=[tM,rM,qj,G,iM,aM,Wj,nM,oM],_M=`Amazon`,vM=`Apple`,yM=`ASUS`,bM=`BlackBerry`,xM=`Google`,SM=`Huawei`,CM=`Lenovo`,wM=`Honor`,TM=`LG`,EM=`Microsoft`,DM=`Motorola`,OM=`Nvidia`,kM=`OnePlus`,AM=`OPPO`,jM=`Samsung`,MM=`Sharp`,NM=`Sony`,PM=`Xiaomi`,FM=`Zebra`,IM=`Chrome`,LM=`Chromium`,RM=`Chromecast`,zM=`Edge`,BM=`Firefox`,VM=`Opera`,HM=`Facebook`,UM=`Sogou`,WM=`Mobile `,GM=` Browser`,KM=`Windows`,qM=typeof window!==Lj.UNDEFINED&&window.navigator?window.navigator:void 0,JM=qM&&qM.userAgentData?qM.userAgentData:void 0,YM=function(e,t){var n={},r=t;if(!QM(t))for(var i in r={},t)for(var a in t[i])r[a]=t[i][a].concat(r[a]?r[a]:[]);for(var o in e)n[o]=r[o]&&r[o].length%2==0?r[o].concat(e[o]):e[o];return n},XM=function(e){for(var t={},n=0;n<e.length;n++)t[e[n].toUpperCase()]=e[n];return t},ZM=function(e,t){if(typeof e===Lj.OBJECT&&e.length>0){for(var n in e)if(tN(t)==tN(e[n]))return!0;return!1}return $M(e)?tN(t)==tN(e):!1},QM=function(e,t){for(var n in e)return/^(browser|cpu|device|engine|os)$/.test(n)||(t?QM(e[n]):!1)},$M=function(e){return typeof e===Lj.STRING},eN=function(e){if(e){for(var t=[],n=rN(e).split(`,`),r=0;r<n.length;r++)if(n[r].indexOf(`;`)>-1){var i=oN(n[r]).split(`;v=`);t[r]={brand:i[0],version:i[1]}}else t[r]=oN(n[r]);return t}},tN=function(e){return $M(e)?e.toLowerCase():e},nN=function(e){return $M(e)?aN(/[^\d\.]/g,e).split(`.`)[0]:void 0},rN=function(e){return $M(e)?oN(aN(/\\?\"/g,e),Nj):void 0},iN=function(e){for(var t in e)if(e.hasOwnProperty(t)){var n=e[t];typeof n==Lj.OBJECT&&n.length==2?this[n[0]]=n[1]:this[n]=void 0}return this},aN=function(e,t){return $M(t)?t.replace(e,Fj):t},oN=function(e,t){return e=aN(/^\s\s*/,String(e)),typeof t===Lj.UNDEFINED?e:e.substring(0,t)},sN=function(e,t){if(!(!e||!t))for(var n=0,r,i,a,o,s,c;n<t.length&&!s;){var l=t[n],u=t[n+1];for(r=i=0;r<l.length&&!s&&l[r];)if(s=l[r++].exec(e),s)for(a=0;a<u.length;a++)c=s[++i],o=u[a],typeof o===Lj.OBJECT&&o.length>0?o.length===2?typeof o[1]==Lj.FUNCTION?this[o[0]]=o[1].call(this,c):this[o[0]]=o[1]:o.length>=3&&(typeof o[1]===Lj.FUNCTION&&!(o[1].exec&&o[1].test)?o.length>3?this[o[0]]=c?o[1].apply(this,o.slice(2)):void 0:this[o[0]]=c?o[1].call(this,c,o[2]):void 0:o.length==3?this[o[0]]=c?c.replace(o[1],o[2]):void 0:o.length==4?this[o[0]]=c?o[3].call(this,c.replace(o[1],o[2])):void 0:o.length>4&&(this[o[0]]=c?o[3].apply(this,[c.replace(o[1],o[2])].concat(o.slice(4))):void 0)):this[o]=c||void 0;n+=2}},cN=function(e,t){return t.test.test(e)?t.ifTrue:t.ifFalse},lN=function(e,t){for(var n in t)if(typeof t[n]===Lj.OBJECT&&t[n].length>0){for(var r=0;r<t[n].length;r++)if(ZM(t[n][r],e))return n===Ij?void 0:n}else if(ZM(t[n],e))return n===Ij?void 0:n;return t.hasOwnProperty(`*`)?t[`*`]:e},uN={ME:`4.90`,"NT 3.51":`3.51`,"NT 4.0":`4.0`,2e3:[`5.0`,`5.01`],XP:[`5.
17741`,`5.2`],Vista:`6.0`,7:`6.1`,8:`6.2`,"8.1":`6.3`,10:[`6.4`,`10.0`],NT:``},dN={embedded:`Automotive`,mobile:`Mobile`,tablet:[`Tablet`,`EInk`],smarttv:`TV`,wearable:`Watch`,xr:[`VR`,`XR`],"?":[`Desktop`,`Unknown`],"*":void 0},fN={Chrome:`Google Chrome`,Edge:`Microsoft Edge`,"Edge WebView2":`Microsoft Edge WebView2`,"Chrome WebView":`Android WebView`,"Chrome Headless":`HeadlessChrome`,"Huawei Browser":`HuaweiBrowser`,"MIUI Browser":`Miui Browser`,"Opera Mobi":`OperaMobile`,Yandex:`YaBrowser`},pN={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[W,[V,WM+`Chrome`]],[/webview.+edge\/([\w\.]+)/i],[W,[V,zM+` WebView`],[H,eM]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[W,[V,`Edge`]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[V,W],[/opios[\/ ]+([\w\.]+)/i],[W,[V,VM+` Mini`]],[/\bop(?:rg)?x\/([\w\.]+)/i],[W,[V,VM+` GX`]],[/\bopr\/([\w\.]+)/i],[W,[V,VM]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[W,[V,`Baidu`]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[W,[V,`Maxthon`]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(atlas|flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:hi|lg |ovi|qute)browser|palemoon)\/v?([-\w\.]+)/i,/(brave)(?: chrome)?\/([\d\.]+)/i,/(aloha|heytap|ovi|115|surf|qwant)browser\/([\d\.]+)/i,/(qwant)(?:ios|mobile)\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[V,W],[/quark(?:pc)?\/([-\w\.]+)/i],[W,[V,`Quark`]],[/\bddg\/([\w\.]+)/i],[W,[V,`DuckDuckGo`]],[/(?:\buc? ?browser|(?:juc.+)ucweb| ucpc)[\/ ]?([\w\.]+)/i],[W,[V,`UCBrowser`]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[W,[V,`WeChat`]],[/konqueror\/([\w\.]+)/i],[W,[V,`Konqueror`]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[W,[V,`IE`]],[/ya(?:search)?browser\/([\w\.]+)/i],[W,[V,`Yandex`]],[/slbrowser\/([\w\.]+)/i],[W,[V,`Smart `+CM+GM]],[/(av(?:ast|g|ira))\/([\w\.]+)/i],[[V,/(.+)
vendor: 1,674 bytes, line 1774
1774/,`$1 Secure`+GM],W],[/norton\/([\w\.]+)/i],[W,[V,`Norton Private`+GM]],[/\bfocus\/([\w\.]+)/i],[W,[V,BM+` Focus`]],[/ mms\/([\w\.]+)$/i],[W,[V,VM+` Neon`]],[/ opt\/([\w\.]+)$/i],[W,[V,VM+` Touch`]],[/coc_coc\w+\/([\w\.]+)/i],[W,[V,`Coc Coc`]],[/dolfin\/([\w\.]+)/i],[W,[V,`Dolphin`]],[/coast\/([\w\.]+)/i],[W,[V,VM+` Coast`]],[/miuibrowser\/([\w\.]+)/i],[W,[V,`MIUI`+GM]],[/fxios\/([\w\.-]+)/i],[W,[V,WM+BM]],[/\bqihoobrowser\/?([\w\.]*)/i],[W,[V,`360`]],[/\b(qq)\/([\w\.]+)/i],[[V,/(.+)/,`$1Browser`],W],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[V,/(.+)/,`$1`+GM],W],[/ HBPC\/([\w\.]+)/],[W,[V,SM+GM]],[/samsungbrowser\/([\w\.]+)/i],[W,[V,jM+` Internet`]],[/metasr[\/ ]?([\d\.]+)/i],[W,[V,UM+` Explorer`]],[/(sogou)mo\w+\/([\d\.]+)/i],[[V,UM+` Mobile`],W],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[V,W],[/(lbbrowser|luakit|rekonq|steam(?= (clie|tenf|gameo)))/i],[V],[/ome\/([\w\.]+).+(iron(?= saf)|360(?=[es]e$))/i],[W,V],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[V,HM],W,[H,eM]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(bing)(?:web|sapphire)\/([\w\.]+)/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[V,W,[H,eM]],[/\bgsa\/([\w\.]+) .*safari\//i],[W,[V,`GSA`],[H,eM]],[/(?:musical_ly|trill)(?:.+app_?version\/|_)([\w\.]+)/i],[W,[V,`TikTok`],[H,eM]],[/\[(linkedin)app\]/i],[V,[H,eM]],[/(zalo(?:app)?)[\/\sa-z]*([\w\.-]+)/i],[[V,/(.+)
vendor: 13,152 bytes, line 1774
1774/,`Zalo`],W,[H,eM]],[/(chromium)[\/ ]([-\w\.]+)/i],[V,W],[/ome-(lighthouse)$/i],[V,[H,$j]],[/headlesschrome(?:\/([\w\.]+)| )/i],[W,[V,IM+` Headless`]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[W,[V,zM+` WebView2`],[H,eM]],[/; wv\).+(chrome)\/([\w\.]+)/i],[[V,IM+` WebView`],W,[H,eM]],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[W,[V,`Android`+GM]],[/chrome\/([\w\.]+) mobile/i],[W,[V,WM+`Chrome`]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[V,W],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[W,[V,WM+`Safari`]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[V,WM+`Safari`]],[/version\/([\w\.\,]+) .*(safari)/i],[W,V],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[V,[W,`1`]],[/(webkit|khtml)\/([\w\.]+)/i],[V,W],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[V,WM+BM],W],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[V,`Netscape`],W],[/(wolvic|librewolf)\/([\w\.]+)/i],[V,W],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[W,[V,BM+` Reality`]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+(?= .+rv\:.+gecko\/\d+)|[0-4][\w\.]+(?!.+compatible))/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[V,[W,/_/g,`.`]],[/(cobalt)\/([\w\.]+)/i],[V,[W,/[^\d\.]+./,Fj]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[Wj,`amd64`]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[Wj,`ia32`]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[Wj,`arm64`]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[Wj,`armhf`]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[Wj,`arm`]],[/ sun4\w[;\)]/i],[[Wj,`sparc`]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i,/((ppc|powerpc)(64)?)( mac|;|\))/i,/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i],[[Wj,/ower/,Fj,tN]],[/mc680.0/i],[[Wj,`68k`]],[/winnt.+\[axp/i],[[Wj,`alpha`]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[G,[U,jM],[H,Jj]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[G,[U,jM],[H,qj]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i],[G,[U,vM],[H,qj]],[/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,/\b(ipad)[\d,]*[;\] ].+(mac |i(pad)?)os/i],[G,[U,vM],[H,Jj]],[/(macintosh);/i],[G,[U,vM]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[G,[U,MM],[H,qj]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[G,[U,wM],[H,Jj]],[/honor([-\w ]+)[;\)]/i],[G,[U,wM],[H,qj]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[G,[U,SM],[H,Jj]],[/(?:huawei) ?([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i],[G,[U,SM],[H,qj]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[G,/_/g,` `],[U,PM],[H,Jj]],[/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/oid[^\)]+; (redmi[\-_ ]?(?:note|k)?[\w_ ]+|m?[12]\d[01]\d\w{3,6}|poco[\w ]+|(shark )?\w{3}-[ah]0|qin ?[1-3](s\+|ultra| pro)?)( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,/; ([\w ]+) miui\/v?\d/i],[[G,/_/g,` `],[U,PM],[H,qj]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-l]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[G,[U,kM],[H,qj]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[G,[U,AM],[H,qj]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[G,[U,lN,{OnePlus:[`203`,`304`,`403`,`404`,`413`,`415`],"*":AM}],[H,Jj]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[G,[U,`BLU`],[H,qj]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[G,[U,`Vivo`],[H,qj]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[G,[U,`Realme`],[H,qj]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[G,[U,CM],[H,Jj]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[G,[U,CM],[H,qj]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[G,[U,DM],[H,qj]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[G,[U,DM],[H,Jj]],[/\b(?:lg)?([vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[G,[U,TM],[H,Jj]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[G,[U,TM],[H,qj]],[/(nokia) (t[12][01])/i],[U,G,[H,Jj]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i],[[G,/_/g,` `],[H,qj],[U,`Nokia`]],[/(pixel (c|tablet))\b/i],[G,[U,xM],[H,Jj]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[G,[U,xM],[H,qj]],[/(google) (pixelbook( go)?)/i],[U,G],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[G,[U,NM],[H,qj]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[G,`Xperia Tablet`],[U,NM],[H,Jj]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[G,[U,_M],[H,Jj]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[G,/(.+)/g,`Fire Phone $1`],[U,_M],[H,qj]],[/(playbook);[-\w\),; ]+(rim)/i],[G,U,[H,Jj]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/(?:blackberry|\(bb10;) (\w+)/i],[G,[U,bM],[H,qj]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[G,[U,yM],[H,Jj]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[G,[U,yM],[H,qj]],[/(nexus 9)/i],[G,[U,`HTC`],[H,Jj]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[U,[G,/_/g,` `],[H,qj]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[G,[U,`TCL`],[H,Jj]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[G,[U,`TCL`],[H,qj]],[/(itel) ((\w+))/i],[[U,tN],G,[H,lN,{tablet:[`p10001l`,`w7001`],"*":`mobile`}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[G,[U,`Acer`],[H,Jj]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[G,[U,`Meizu`],[H,qj]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[G,[U,`Ulefone`],[H,qj]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[G,[U,`Energizer`],[H,qj]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[G,[U,`Cat`],[H,qj]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[G,[U,`Smartfren`],[H,qj]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[G,[U,`Nothing`],[H,qj]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[G,[U,`Archos`],[H,Jj]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[G,[U,`Archos`],[H,qj]],[/blackview ([-\w ]+)( b|\))/i,/; (bv\d{4}[-\w ]*)( b|\))/i],[G,[U,`Blackview`],[H,qj]],[/; (n159v)/i],[G,[U,`HMD`],[H,qj]],[/((revvl[ \w\+]+|tm(?:rv|af)\w*[45]g(?:tb)?))( b|\))/i],[G,[H,cN,{test:/ta?b/i,ifTrue:Jj,ifFalse:qj}],[U,`T-Mobile`]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[U,G,[H,Jj]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|coolpad|cubot|hmd|imo|infinix|lava|oneplus|tcl|wiko)[_ ]([-\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i,/(hisense) ([ehv][\w ]+)\)/i,/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i],[U,G,[H,qj]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[U,G,[H,Jj]],[/(surface duo)/i],[G,[U,EM],[H,Jj]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[G,[U,`Fairphone`],[H,qj]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[G,[U,OM],[H,Jj]],[/(sprint) (\w+)/i],[U,G,[H,qj]],[/(kin\.[onetw]{3})/i],[[G,/\./g,` `],[U,EM],[H,qj]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[G,[U,FM],[H,Jj]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[G,[U,FM],[H,qj]],[/(philips)[\w ]+tv/i,/smart-tv.+(samsung)/i],[U,[H,Yj]],[/hbbtv.+maple;(\d+)/i],[[G,/^/,`SmartTV`],[U,jM],[H,Yj]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[U,G,[H,Yj]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[U,TM],[H,Yj]],[/(apple) ?tv/i],[U,[G,vM+` TV`],[H,Yj]],[/crkey.*devicetype\/chromecast/i],[[G,RM+` Third Generation`],[U,xM],[H,Yj]],[/crkey.*devicetype\/([^/]*)/i],[[G,/^/,`Chromecast `],[U,xM],[H,Yj]],[/fuchsia.*crkey/i],[[G,RM+` Nest Hub`],[U,xM],[H,Yj]],[/crkey/i],[[G,RM],[U,xM],[H,Yj]],[/(portaltv)/i],[G,[U,HM],[H,Yj]],[/droid.+aft(\w+)( bui|\))/i],[G,[U,_M],[H,Yj]],[/(shield \w+ tv)/i],[G,[U,OM],[H,Yj]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[G,[U,MM],[H,Yj]],[/(bravia[\w ]+)( bui|\))/i],[G,[U,NM],[H,Yj]],[/(mi(tv|box)-?\w+) bui/i],[G,[U,PM],[H,Yj]],[/Hbbtv.*(technisat) (.*);/i],[U,G,[H,Yj]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[U,/.+\/(\w+)/,`$1`,lN,{LG:`lge`}],[G,oN],[H,Yj]],[/(playstation \w+)/i],[G,[U,NM],[H,Kj]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[G,[U,EM],[H,Kj]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i,/(valve).+(steam deck)/i,/droid.+; ((shield|rgcube|gr0006))( bui|\))/i],[[U,lN,{Nvidia:`Shield`,Anbernic:`RGCUBE`,Logitech:`GR0006`}],G,[H,Kj]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[G,[U,jM],[H,Xj]],[/((pebble))app/i,/(asus|google|lg|oppo|xiaomi) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[U,G,[H,Xj]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[G,[U,AM],[H,Xj]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[G,[U,vM],[H,Xj]],[/(opwwe\d{3})/i],[G,[U,kM],[H,Xj]],[/(moto 360)/i],[G,[U,DM],[H,Xj]],[/(smartwatch 3)/i],[G,[U,NM],[H,Xj]],[/(g watch r)/i],[G,[U,TM],[H,Xj]],[/droid.+; (wt63?0{2,3})\)/i],[G,[U,FM],[H,Xj]],[/droid.+; (glass) \d/i],[G,[U,xM],[H,Zj]],[/(pico) ([\w ]+) os\d/i],[U,G,[H,Zj]],[/(quest( \d| pro)?s?).+vr/i],[G,[U,HM],[H,Zj]],[/mobile vr; rv.+firefox/i],[[H,Zj]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[U,[H,Qj]],[/(aeobc)\b/i],[G,[U,_M],[H,Qj]],[/(homepod).+mac os/i],[G,[U,vM],[H,Qj]],[/windows iot/i],[[H,Qj]],[/droid.+; ([\w- ]+) (4k|android|smart|google)[- ]?tv/i],[G,[H,Yj]],[/\b((4k|android|smart|opera)[- ]?tv|tv; rv:|large screen[\w ]+safari)\b/i],[[H,Yj]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew|; hmsc).+?(mobile|vr|\d) safari/i],[G,[H,lN,{mobile:`Mobile`,xr:`VR`,"*":Jj}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[H,Jj]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[H,qj]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[G,[U,`Generic`]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[W,[V,zM+`HTML`]],[/(arkweb)\/([\w\.]+)/i],[V,W],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[W,[V,`Blink`]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links|dillo)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[V,W],[/ladybird\//i],[[V,`LibWeb`]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[W,V]],os:[[/(windows nt) (6\.[23]); arm/i],[[V,/N/,`R`],[W,lN,uN]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[V,W],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[W,/(;|\))/g,``,lN,uN],[V,KM]],[/(windows ce)\/?([\d\.]*)/i],[V,W],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv|ios(?=.+ip(?:ad|hone)|.+apple ?tv)|ip(?:ad|hone)(?: |.+i(?:pad)?)os|apple ?tv.+ios)[\/ ]([\w\.]+)/i,/\btvos ?([\w\.]+)/i,/cfnetwork\/.+darwin/i],[[W,/_/g,`.`],[V,`iOS`]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[V,`macOS`],[W,/_/g,`.`]],[/android ([\d\.]+).*crkey/i],[W,[V,RM+` Android`]],[/fuchsia.*crkey\/([\d\.]+)/i],[W,[V,RM+` Fuchsia`]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[W,[V,RM+` SmartSpeaker`]],[/linux.*crkey\/([\d\.]+)/i],[W,[V,RM+` Linux`]],[/crkey\/([\d\.]+)/i],[W,[V,RM]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[W,V],[/(ubuntu) ([\w\.]+) like android/i],[[V,/(.+)
vendor: 4,333 bytes, line 1774
1774/,`$1 Touch`],W],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[V,W],[/\(bb(10);/i],[W,[V,bM]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[W,[V,`Symbian`]],[/mozilla\/[\d\.]+ \((?:mobile[;\w ]*|tablet|tv|[^\)]*(?:viera|lg(?:l25|-d300)|alcatel ?o.+|y300-f1)); rv:([\w\.]+)\).+gecko\//i],[W,[V,BM+` OS`]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[W,[V,`webOS`]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[W,lN,{25:`120`,24:`108`,23:`94`,22:`87`,6:`79`,5:`68`,4:`53`,3:`38`,2:`538`,1:`537`,"*":`TV`}],[V,`webOS`]],[/watch(?: ?os[,\/ ]|\d,\d\/)([\d\.]+)/i],[W,[V,`watchOS`]],[/cros [\w]+(?:\)| ([\w\.]+)\b)/i],[W,[V,`Chrome OS`]],[/kepler ([\w\.]+); (aft|aeo)/i],[W,[V,`Vega OS`]],[/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[V,W],[/(sunos) ?([\d\.]*)/i],[[V,`Solaris`],W],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[V,W]]},mN=(function(){var e={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}};return iN.call(e.init,[[Rj,[V,W,Gj,H]],[zj,[Wj]],[Bj,[H,G,U]],[Vj,[V,W]],[Hj,[V,W]]]),iN.call(e.isIgnore,[[Rj,[W,Gj]],[Vj,[W]],[Hj,[W]]]),iN.call(e.isIgnoreRgx,[[Rj,/ ?browser$/i],[Hj,/ ?os$/i]]),iN.call(e.toString,[[Rj,[V,W]],[zj,[Wj]],[Bj,[U,G]],[Vj,[V,W]],[Hj,[V,W]]]),e})(),hN=function(e,t){var n=mN.init[t],r=mN.isIgnore[t]||0,i=mN.isIgnoreRgx[t]||0,a=mN.toString[t]||0;function o(){iN.call(this,n)}return o.prototype.getItem=function(){return e},o.prototype.withClientHints=function(){return JM?JM.getHighEntropyValues(gM).then(function(t){return e.setCH(new gN(t,!1)).parseCH().get()}):e.parseCH().get()},o.prototype.withFeatureCheck=function(){return e.detectFeature().get()},t!=Uj&&(o.prototype.is=function(e){var t=!1;for(var n in this)if(this.hasOwnProperty(n)&&!ZM(r,n)&&tN(i?aN(i,this[n]):this[n])==tN(i?aN(i,e):e)){if(t=!0,e!=Lj.UNDEFINED)break}else if(e==Lj.UNDEFINED&&t){t=!t;break}return t},o.prototype.toString=function(){var e=Fj;for(var t in a)typeof this[a[t]]!==Lj.UNDEFINED&&(e+=(e?` `:Fj)+this[a[t]]);return e||Lj.UNDEFINED}),o.prototype.then=function(e){var t=this,n=function(){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e])};n.prototype={is:o.prototype.is,toString:o.prototype.toString,withClientHints:o.prototype.withClientHints,withFeatureCheck:o.prototype.withFeatureCheck};var r=new n;return e(r),r},new o};function gN(e,t){if(e||={},iN.call(this,gM),t)iN.call(this,[[tM,eN(e[sM])],[rM,eN(e[cM])],[qj,/\?1/.test(e[fM])],[G,rN(e[pM])],[iM,rN(e[mM])],[aM,rN(e[hM])],[Wj,rN(e[lM])],[nM,eN(e[dM])],[oM,rN(e[uM])]]);else for(var n in e)this.hasOwnProperty(n)&&typeof e[n]!==Lj.UNDEFINED&&(this[n]=e[n])}function _N(e,t,n,r){return iN.call(this,[[`itemType`,e],[`ua`,t],[`uaCH`,r],[`rgxMap`,n],[`data`,hN(this,e)]]),this}_N.prototype.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},_N.prototype.set=function(e,t){return this.data[e]=t,this},_N.prototype.setCH=function(e){return this.uaCH=e,this},_N.prototype.detectFeature=function(){if(qM&&qM.userAgent==this.ua)switch(this.itemType){case Rj:qM.brave&&typeof qM.brave.isBrave==Lj.FUNCTION&&this.set(V,`Brave`);break;case Bj:!this.get(H)&&JM&&JM[qj]&&this.set(H,qj),this.get(G)==`Macintosh`&&qM&&typeof qM.standalone!==Lj.UNDEFINED&&qM.maxTouchPoints&&qM.maxTouchPoints>2&&this.set(G,`iPad`).set(H,Jj);break;case Hj:!this.get(V)&&JM&&JM[iM]&&this.set(V,JM[iM]);break;case Uj:var e=this.data,t=function(t){return e[t].getItem().detectFeature
1774().get()};this.set(Rj,t(Rj)).set(zj,t(zj)).set(Bj,t(Bj)).set(Vj,t(Vj)).set(Hj,t(Hj))}return this},_N.prototype.parseUA=function(){switch(this.itemType!=Uj&&sN.call(this.data,this.ua,this.rgxMap),this.itemType){case Rj:this.set(Gj,nN(this.get(W)));break;case Hj:if(this.get(V)==`iOS`&&this.get(W)&&/^1[89][^\d]/.exec(this.get(W))){var e=/\) Version\/((\d+)[\d\.]*)/.exec(this.ua);e&&parseInt(e[2],10)>=26&&this.set(W,e[1])}}return this},_N.prototype.parseCH=function(){var e=this.uaCH,t=this.rgxMap;switch(this.itemType){case Rj:case Vj:var n=e[rM]||e[tM],r;if(n)for(var i=0;i<n.length;i++){var a=n[i].brand||n[i],o=n[i].version;this.itemType==Rj&&!/not.a.brand/i.test(a)&&(!r||/Chrom/.test(r)&&a!=LM||r==zM&&/WebView2/.test(a))&&(a=lN(a,fN),r=this.get(V),r&&!/Chrom/.test(r)&&/Chrom/.test(a)||this.set(V,a).set(W,o).set(Gj,nN(o)),r=a),this.itemType==Vj&&a==LM&&this.set(W,o)}break;case zj:var s=e[Wj];s&&(s&&e[oM]==`64`&&(s+=`64`),sN.call(this.data,s+`;`,t));break;case Bj:if(e[qj]&&this.set(H,qj),e[G]&&(this.set(G,e[G]),!this.get(H)||!this.get(U))){var c={};sN.call(c,`droid 9; `+e[G]+`)`,t),!this.get(H)&&c.type&&this.set(H,c.type),!this.get(U)&&c.vendor&&this.set(U,c.vendor)}if(e[nM]){var l;if(typeof e[nM]!=`string`)for(var u=0;!l&&u<e[nM].length;)l=lN(e[nM][u++],dN);else l=lN(e[nM],dN);this.set(H,l)}break;case Hj:var d=e[iM];if(d){var f=e[aM];d==KM&&(f=parseInt(nN(f),10)>=13?`11`:`10`),this.set(V,d).set(W,f)}this.get(V)==KM&&e[G]==`Xbox`&&this.set(V,`Xbox`).set(W,void 0);break;case Uj:var p=this.data,m=function(t){return p[t].getItem().setCH(e).parseCH().get()};this.set(Rj,m(Rj)).set(zj,m(zj)).set(Bj,m(Bj)).set(Vj,m(Vj)).set(Hj,m(Hj))}return this};function vN(e,t,n){if(typeof e===Lj.OBJECT?(QM(e,!0)?(typeof t===Lj.OBJECT&&(n=t),t=e):(n=e,t=void 0),e=void 0):typeof e===Lj.STRING&&!QM(t,!0)&&(n=t,t=void 0),n)if(typeof n.append===Lj.FUNCTION){var r={};n.forEach(function(e,t){r[String(t).toLowerCase()]=e}),n=r}else{var i={};for(var a in n)n.hasOwnProperty(a)&&(i[String(a).toLowerCase()]=n[a]);n=i}if(!(this instanceof vN))return new vN(e,t,n).getResult();var o=typeof e===Lj.STRING?e:n&&n[Pj]?n[Pj]:qM&&qM.userAgent?qM.userAgent:Fj,s=new gN(n,!0),c=pN,l=function(e){return e==Uj?function(){return new _N(e,o,c,s).set(`ua`,o).set(Rj,this.getBrowser()).set(zj,this.getCPU()).set(Bj,this.getDevice()).set(Vj,this.getEngine()).set(Hj,this.getOS()).get()}:function(){return new _N(e,o,c[e],s).parseUA().get()}};return iN.call(this,[[`getBrowser`,l(Rj)],[`getCPU`,l(zj)],[`getDevice`,l(Bj)],[`getEngine`,l(Vj)],[`getOS`,l(Hj)],[`getResult`,l(Uj)],[`getUA`,function(){return o}],[`setUA`,function(e){return $M(e)&&(o=oN(e,Nj)),this}],[`useExtension`,function(e){return e&&(c=YM(c,e)),this}]]).setUA(o).useExtension(t),this}vN.VERSION=Mj,vN.BROWSER=XM([V,W,Gj,H]),vN.CPU=XM([Wj]),vN.DEVICE=XM([G,U,H,Kj,qj,Yj,Jj,Xj,Qj]),vN.ENGINE=vN.OS=XM([V,W]);function yN(e){if(!e)return{browser:`Unknown`,os:`Unknown`};let t=new vN(e),n=t.getBrowser(),r=t.getOS(),i=n.name??`Unknown`,a=n.major??``,o=a?`${i} ${a}`:i,s=r.name??`Unknown`,c=r.version??``,l=c?`${s} ${c}`:s;return{browser:o===`Unknown`?`Unknown`:o,os:l===`Unknown`?`Unknown`:l}}var bN=`/opt/src/frontend/src/components/LoginHistoryTable.tsx`,xN=({loginHistory:e})=>e.length===0?null:(0,E.jsxDEV)(`div`,{className:`mt-6 pt-6 border-t border-gray-200 dark:border-gray-700`,children:[(0,E.jsxDEV)(`h3`,{className:`text-sm font-semibold mb-3 text-gray-900 dark:text-white`,children:`Login History`},void 0,!1,{fileName:bN,lineNumber:19,columnNumber:7},void 0),(0,E.jsxDEV)(`div`,{className:`overflow-x-auto`,children:(0,E.jsxDEV)(`table`,{className:`w-full text-xs text-left text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`thead`,{children:(0,E.jsxDEV)(`tr`,{className:`border-b border-gray-200 dark:border-gray-600`,children:[(0,E.jsxDEV)(`th`,{className:`py-2 pr-4 font-medium text-gray-500 dark:text-gray-400`,children:`Browser`},void 0,!1,{fileName:bN,lineNumber:24,columnNumber:15},void 0),(0,E.jsxDEV)(`th`,{className:`py-2 pr-4 font-medium text-gray-500 dark:text-gray-400`,children:`OS`},void 0,!1,{fileName:bN,lineNumber:25,columnNumber:15},void 0),(0,E.jsxDEV)(`th`,{className:`py-2 pr-4 font-medium text-gray-500 dark:text-gray-400`,children:`IP`},void 0,!1,{fileName:bN,lineNumber:26,columnNumber:15},void 0),(0,E.jsxDEV)(`th`,{className:`py-2 font-medium text-gray-500 dark:text-gray-400`,children:`Date`},void 0,!1,{fileName:bN,lineNumber:27,columnNumber:15},void 0)]},void 0,!0,{fileName:bN,lineNumber:23,columnNumber:13},void 0)},void 0,!1,{fileName:bN,lineNumber:22,columnNumber:11},void 0),(0,E.jsxDEV)(`tbody`,{children:e.map((e,t)=>{let{browser:n,os:r}=yN(e.userAgent);return(0,E.jsxDEV)(`tr`,{className:`border-b border-gray-100 dark:border-gray-700 last:border-0`,children:[(0,E.jsxDEV)(`td`,{className:`py-2 pr-4`,children:n},void 0,!1,{fileName:bN,lineNumber:35,columnNumber:19},void 0),(0,E.jsxDEV)(`td`,{className:`py-2 pr-4`,children:r},void 0,!1,{fileName:bN,lineNumber:36,columnNumber:19},void 0),(0,E.jsxDEV)(`td`,{className:`py-2 pr-4`,children:e.ip??`Unknown`},void 0,!1,{fileName:bN,lineNumber:37,columnNumber:19},void 0),(0,E.jsxDEV)(`td`,{className:`py-2`,children:new Date(e.timestamp).toLocaleStr
1774ing()},void 0,!1,{fileName:bN,lineNumber:38,columnNumber:19},void 0)]},t,!0,{fileName:bN,lineNumber:34,columnNumber:17},void 0)})},void 0,!1,{fileName:bN,lineNumber:30,columnNumber:11},void 0)]},void 0,!0,{fileName:bN,lineNumber:21,columnNumber:9},void 0)},void 0,!1,{fileName:bN,lineNumber:20,columnNumber:7},void 0)]},void 0,!0,{fileName:bN,lineNumber:18,columnNumber:5},void 0),SN=`/opt/src/frontend/src/components/ProfilePage.tsx`,CN=()=>{let{isDarkMode:e,isRainbowMode:t,toggleTheme:n}=or(),{user:r,logout:i,updateUserPreferences:a}=Zn(),{translations:o,setLanguage:s}=rr(),c=t,l=r?.preferences?.discoveredRainbow;return r?(0,E.jsxDEV)(`div`,{className:`container mx-auto p-4`,children:(0,E.jsxDEV)(`div`,{className:`max-w-4xl mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-3xl font-bold mb-6 text-gray-800 dark:text-white flex items-center`,children:[(0,E.jsxDEV)(Fr,{className:`mr-3`},void 0,!1,{fileName:SN,lineNumber:65,columnNumber:11},void 0),` `,o.profile.title]},void 0,!0,{fileName:SN,lineNumber:64,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-6`,children:[(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-lg p-6`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold mb-6 text-gray-900 dark:text-white flex items-center`,children:[(0,E.jsxDEV)(Ir,{className:`mr-2`},void 0,!1,{fileName:SN,lineNumber:72,columnNumber:15},void 0),` `,o.profile.personalDetails]},void 0,!0,{fileName:SN,lineNumber:71,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(Fr,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:77,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.name},void 0,!1,{fileName:SN,lineNumber:79,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`font-medium`,children:r.name},void 0,!1,{fileName:SN,lineNumber:82,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:78,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:76,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(Fi,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:86,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.email},void 0,!1,{fileName:SN,lineNumber:88,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`font-medium`,children:r.email},void 0,!1,{fileName:SN,lineNumber:91,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:87,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:85,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(Ir,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:95,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.username},void 0,!1,{fileName:SN,lineNumber:97,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`font-medium`,children:r.preferred_username},void 0,!1,{fileName:SN,lineNumber:100,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:96,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:94,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(qi,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:104,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.lastLogin},void 0,!1,{fileName:SN,lineNumber:106,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`font-medium`,children:(e=>{if(!e)return`Never`;let t=new Date(e),n=new Date().getTime()-t.getTime(),r=Math.floor(n/864e5),i=Math.floor(n/36e5),a=Math.floor(n/6e4);return a<1?`Just now`:a<60?`${a} minute${a===1?``:`s`} ago`:i<24?`${i} hour${i===1?``:`s`} ago`:r<7?`${r} day${r===1?``:`s`} ago`:t.toLocaleDateString()})(r.lastLogin)},void 0,!1,{fileName:SN,lineNumber:109,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:105,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:103,columnNumber:15},void 0)]},void 0,!0,{fileName:SN,lineNumber:75,columnNumber:13},void 0),r.loginHistory&&(0,E.jsxDEV)(xN,{loginHistory:r.loginHistory},void 0,!1,{fileName:SN,lineNumber:115,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`mt-6 pt-6 border-t border-gray-200 dark:border-gray-700`,children:(0,E.jsxDEV)(`div`,{className:`flex items-center text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(Pr,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:121,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400 mb-2`,children:o.profile.groups},void 0,!1,{fileName:SN,lineNumber:123,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-2`,children:r.groups.map((e,t)=>(0,E.jsxDEV)(`span`,{className:`inline-flex items-center px-3 py-1 rounded-full text-sm font-medium bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200`,children:e},t,!1,{fileName:SN,lineNumber:128,columnNumber:23},void 0))},void 0,!1,{fileName:SN,lineNumber:126,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:122,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:120,columnNumber:15},void 0)},void 0,!1,{fileName:SN,lineNumber:119,columnNumber:13},void 0)]},void 0,!0,{fileName:SN,lineNumber:70,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-lg p-6`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold mb-6 text-gray-900 dark:text-white flex items-center`,children:[(0,E.jsxDEV)(ui,{className:`mr-2`},void 0,!1,{fileName:SN,lineNumber:144,columnNumber:15},void 0),` Settings`]},void 0,!0,{fileName:SN,lineNumber:143,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:[(0,E.jsxDEV)(`div`,{className:`text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center mb-2`,children:[(0,E.jsxDEV)(ui,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:150,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.themePreference},void 0,!1,{fileName:SN,lineNumber:151,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:149,columnNumber:17},void 0),l||c?(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`select`,{value:r.preferences?.theme||`system`,onChange:async e=>{let t=e.target.value;try{await a({theme:t}),window.location.reload()}catch(e){Kn.error(`Failed to update theme preference:`,e)}}
1774,className:`w-full py-2 px-4 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 mb-2 ${c?`bg-gradient-to-r from-red-100 via-yellow-100 to-purple-100 text-gray-800 font-medium border-2 border-purple-300`:`bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-white`}`,children:[(0,E.jsxDEV)(`option`,{value:`light`,children:o.profile.switchToLight.replace(`Switch to `,``)},void 0,!1,{fileName:SN,lineNumber:182,columnNumber:23},void 0),(0,E.jsxDEV)(`option`,{value:`dark`,children:o.profile.switchToDark.replace(`Switch to `,``)},void 0,!1,{fileName:SN,lineNumber:188,columnNumber:23},void 0),(0,E.jsxDEV)(`option`,{value:`system`,children:`System`},void 0,!1,{fileName:SN,lineNumber:194,columnNumber:23},void 0),(0,E.jsxDEV)(`option`,{value:`rainbow`,children:[o.profile.switchToRainbow?.replace(`Switch to `,``)||`Rainbow`,` `,`ð`]},void 0,!0,{fileName:SN,lineNumber:195,columnNumber:23},void 0)]},void 0,!0,{fileName:SN,lineNumber:157,columnNumber:21},void 0),(0,E.jsxDEV)(`div`,{className:`mt-2 text-sm italic ${c?`font-medium animate-pulse`:`text-gray-500 dark:text-gray-400`}`,style:c?{animation:`rainbow-text 8s linear infinite`}:{},children:o.profile.rainbowDiscovered||`You've discovered the rainbow theme! ð`},void 0,!1,{fileName:SN,lineNumber:203,columnNumber:21},void 0)]},void 0,!0,{fileName:SN,lineNumber:156,columnNumber:19},void 0):(0,E.jsxDEV)(`button`,{onClick:n,className:`w-full bg-blue-500 hover:bg-blue-600 text-white font-medium py-2 px-4 rounded-md transition-colors duration-200 flex items-center justify-center`,children:[(0,E.jsxDEV)(ui,{className:`mr-2`},void 0,!1,{fileName:SN,lineNumber:224,columnNumber:21},void 0),c||e?o.profile.switchToLight:o.profile.switchToDark]},void 0,!0,{fileName:SN,lineNumber:220,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:148,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-700 dark:text-gray-300`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center mb-2`,children:[(0,E.jsxDEV)(wi,{className:`mr-3 text-blue-500 flex-shrink-0`},void 0,!1,{fileName:SN,lineNumber:237,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-sm font-medium text-gray-500 dark:text-gray-400`,children:o.profile.language},void 0,!1,{fileName:SN,lineNumber:238,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:236,columnNumber:17},void 0),(0,E.jsxDEV)(`select`,{value:r.preferences?.language||`en`,onChange:async e=>{let t=e.target.value;try{await a({language:t}),s(t)}catch(e){Kn.error(`Failed to update language preference:`,e)}},className:`w-full bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-white py-2 px-4 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500`,children:[(0,E.jsxDEV)(`option`,{value:`en`,children:`English`},void 0,!1,{fileName:SN,lineNumber:247,columnNumber:19},void 0),(0,E.jsxDEV)(`option`,{value:`de`,children:`Deutsch`},void 0,!1,{fileName:SN,lineNumber:248,columnNumber:19},void 0)]},void 0,!0,{fileName:SN,lineNumber:242,columnNumber:17},void 0)]},void 0,!0,{fileName:SN,lineNumber:235,columnNumber:15},void 0)]},void 0,!0,{fileName:SN,lineNumber:146,columnNumber:13},void 0)]},void 0,!0,{fileName:SN,lineNumber:142,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-lg p-6`,children:(0,E.jsxDEV)(`button`,{onClick:i,className:`w-full bg-red-500 hover:bg-red-600 text-white font-medium py-3 px-6 rounded-md transition-colors duration-200 flex items-center justify-center`,children:[(0,E.jsxDEV)(Jr,{className:`mr-2`},void 0,!1,{fileName:SN,lineNumber:260,columnNumber:15},void 0),o.profile.logout]},void 0,!0,{fileName:SN,lineNumber:256,columnNumber:13},void 0)},void 0,!1,{fileName:SN,lineNumber:255,columnNumber:11},void 0)]},void 0,!0,{fileName:SN,lineNumber:68,columnNumber:9},void 0)]},void 0,!0,{fileName:SN,lineNumber:63,columnNumber:7},void 0)},void 0,!1,{fileName:SN,lineNumber:62,columnNumber:5},void 0):(0,E.jsxDEV)(`div`,{children:o.profile.loading},void 0,!1,{fileName:SN,lineNumber:26,columnNumber:12},void 0)};function wN(e){return D({tag:`svg`,attr:{role:`img`,viewBox:`0 0 24 24`},child:[{tag:`path`,attr:{d:`M11.351 2.715c-2.7 0-4.986.025-6.83.26C2.078 3.285 0 5.154 0 8.61c0 3.506.182 6.13 1.585 8.493 1.584 2.701 4.233 4.182 7.662 4.182h.83c4.209 0 6.494-2.234 7.637-4a9.5 9.5 0 0 0 1.091-2.338C21.792 14.688 24 12.22 24 9.208v-.415c0-3.247-2.13-5.507-5.792-5.87-1.558-.156-2.65-.208-6.857-.208m0 1.947c4.208 0 5.09.052 6.571.182 2.624.311 4.13 1.584 4.13 4v.39c0 2.156-1.792 3.844-3.87 3.844h-.935l-.156.649c-.208 1.013-.597 1.818-1.039 2.546-.909 1.428-2.545 3.064-5.922 3.064h-.805c-2.571 0-4.831-.883-6.078-3.195-1.09-2-1.298-4.155-1.298-7.506 0-2.181.857-3.402 3.012-3.714 1.533-.233 3.559-.26 6.39-.26m6.547 2.287c-.416 0-.65.234-.65.546v2.935c0 .311.234.545.65.545 1.324 0 2.051-.754 2.051-2s-.727-2.026-2.052-2.026m-10.39.182c-1.818 0-3.013 1.48-3.013 3.142 0 1.533.858 2.857 1.949 3.897.727.701 1.87 1.429 2.649 1.896a1.47 1.47 0 0 0 1.507 0c.78-.467 1.922-1.195 2.623-1.896 1.117-1.039 1.974-2.364 1.974-3.897 0-1.662-1.247-3.142-3.039-3.142-1.065 0-1.792.545-2.338 1.298-.493-.753-1.246-1.298-2.312-1.298`},child:[]}]})(e)}function TN(e){return D({tag:`svg`,attr:{role:`img`,viewBox:`0 0 24 24`},child:[{tag:`path`,attr:{d:`M20.472,10.081H3.528c-0.877,0-1.589,0.711-1.589,1.589v10.59c0,0.877,0.711,1.589,1.589,1.589h16.944 c0.877,0,1.589-0.711,1.589-1.589V11.67C22.061,10.792,21.349,10.081,20.472,10.081z M12,22.525c-3.066,0-5.56-2.494-5.56-5.56 s2.494-5.56,5.56-5.56c3.066,0,5.56,2.494,5.56,5.56S15.066,22.525,12,22.525z M12,12.411c-2.511,0-4.554,2.043-4.554,4.554 S9.489,21.519,12,21.519s4.554-2.043,4.554-4.554S14.511,12.411,12,12.411z M12,20.274c-1.563,0-2.881-1.103-3.221-2.568h1.67 c0.275,0.581,0.859,0.979,1.551,0.979c0.96,0,1.721-0.761,1.721-1.721c0-0.96-0.761-1.721-1.721-1.721 c-0.649,0-1.2,0.352-1.493,0.874H8.805c0.378-1.412,1.669-2.462,3.195-2.462c1.818,0,3.309,1.491,3.309,3.309 C15.309,18.783,13.818,20.274,12,20.274z M23.849,0.396c-0.001,0.001-0.002,0.002-0.002,0.003 c-0.002-0.002-0.004-0.003-0.006-0.005c0.001-0.001,0.002-0.003,0.004-0.004c-0.116-0.137-0.279-0.231-0.519-0.238 c-0.202,0.005-0.391,0.097-0.512,0.259l-1.818,2.353c-0.164-0.058-0.339-0.095-0.523-0.095H3.528c-0.184,0-0.358,0.038-0.523,0.095 L1.187,0.41c-0.121-0.162-0.31-0.253-0.512-0.259c-0.24,0.006-0.403,0.1-0.519,0.238c0.001,0.001,0.002,0.003,0.004,0.004 C0.157,0.395,0.155,0.397,0.153,0.399C0.153,0.398,0.152,0.397,0.151,0.396C0.085,0.474-0.146,0.822,0.139,1.22l1.909,2.471 C1.981,3.867,1.94,4.057,1.94,4.257v3.707c0,0.877,0.711,1.589,1.589,1.589h16.944c0.877,0,1.589-0.711,1.589-1.589V4.257 c0-0.2-0.041-0.39-0.109-0.566l1.909-2.471C24.146,0.822,23.915,0.474,23.849,0.396z M6.904,8.228c-0.987,0-1.787-0.8-1.787-1.787 s0.8-1.787,1.787-1.787s1.787,0.8,1.787,1.787S7.891,8.228,6.904,8.228z M17.229,8.228c-0.987,0-1.787-0.8-1.787-1.787 s0.8-1.787,1.787-1.787c0.987,0,1.787,0.8,1.787,1.787S18.216,8.228,17.229,8.228z`},child:[]}]})(e)}var EN=`/opt/src/frontend/src/components/ProjectsPage.tsx`,DN={appstore:(0,E.jsxDEV)(Ar,{className:`w-5 h-5`},void 0,!1,{fileName:EN,lineNumber:21,columnNumber:13},void 0),playstore:(0,E.jsxDEV)(Dr,{className:`w-5 h-5`},void 0,!1,{fileName:EN,lineNumber:22,columnNumber:14},void 0),fdroid:(0,E.jsxDEV)(TN,{className:`w-5 h-5`},void 0,!1,{fileName:EN,lineNumber:23,columnNumber:11},void 0),kofi:(0,E.jsxDEV)(wN,{className:`w-5 h-5`},void 0,!1,{fileName:EN,lineNumber:24,columnNumber:9},void 0),web:(0,E.jsxDEV)(Ni,{className:`w-5 h-5`},void 0,!1,{fileName:EN,lineNumber:25,columnNumber:8},void 0)},ON={appstore:`bg-black hover:bg-gray-800 text-white`,playstore:`bg-[#01875f] hover:bg-[#016b4c] text-white`,fdroid:`bg-[#1976d2] hover:bg-[#1565c0] text-white`,kofi:`bg-[#ff5e5b] hover:bg-[#e14f4c] text-white`,web:`bg-blue-500 hover:bg-blue-600 text-white`},kN=[`appstore`,`playstore`,`fdroid`],AN=[{slug:`uwr-planner`,title:`UWR Planer`,date:`2023-05-22`,shortDe
1774scription:{en:`A full-stack web application for planning and organizing underwater rugby training sessions, lineups, and team coordination across seasons.`,de:`Eine Full-Stack-Webanwendung zur Planung und Organisation von Unterwasserrugby-Trainings, Aufstellungen und Teamkoordination über Saisons hinweg.`},sections:{en:[{title:`The Sport That Inspired the App`,text:`Underwater Rugby is a unique three-dimensional team sport played at the bottom of a swimming pool. Two teams of six compete to place a saltwater-filled ball into the opposing team's basket at the pool floor. It demands exceptional breath-hold ability, spatial awareness, and teamwork. Managing a team for such a demanding sport requires proper planning - and that's where the UWR Planer comes in.`},{title:`What It Does`,text:`The UWR Planer is a dedicated web application for underwater rugby teams to organize their seasons. Coaches and team managers can plan training sessions, create game-day lineups, and coordinate player availability across the season. The planner helps optimize player rotations and ensures balanced team compositions for both training and competition.`},{title:`Architecture`,text:`Built as a full-stack TypeScript application using the MERN stack pattern. The backend features Express.js controllers and services with MongoDB for data persistence. The frontend is built with React and Vite for fast development and hot module replacement. The project includes a comprehensive CI/CD pipeline via GitLab CI, automated testing with Jest, and Docker containerization for consistent deployments.`},{title:`Development Journey`,text:`With over 278 commits and active development since May 2023, the UWR Planer has evolved significantly. The codebase follows clean architecture principles with separate controllers, services, and models. Seeding scripts help with testing scenarios across seasons, and the project is continuously improved based on real-world feedback from the team.`},{title:`Now on iOS`,text:`The UWR Planer is now available on the App Store, in addition to Android via Google Play and F-Droid â so the whole team can use it, whichever phone they carry. Keeping an app on the App Store means an ongoing â¬99/year Apple developer fee; if the planner is useful to you, a tip on Ko-fi (ko-fi.com/uwrplaner) helps keep it there.`}],de:[{title:`Der Sport hinter der App`,text:`Unterwasserrugby ist ein einzigartiger dreidimensionaler Teamsport, der am Boden eines Schwimmbeckens gespielt wird. Zwei Mannschaften zu je sechs Spielern versuchen, einen mit Salzwasser gefüllten Ball in den Korb der gegnerischen Mannschaft am Beckenboden zu legen. Es erfordert auÃergewöhnliche Apnoe-Fähigkeiten, räumliches Bewusstsein und Teamwork. Die Verwaltung einer Mannschaft für einen so anspruchsvollen Sport erfordert eine ordentliche Planung - und genau hier kommt der UWR Planer ins Spiel.`},{title:`Was die App kann`,text:`Der UWR Planer ist eine dedizierte Webanwendung für Unterwasserrugby-Teams zur Organisation ihrer Saisons. Trainer und Teammanager können Trainingseinheiten planen, Spieltag-Aufstellungen erstellen und die Verfügbarkeit der Spieler über die Saison koordinieren. Der Planner hilft bei der Optimierung von Spielerrotationen und sorgt für ausgewogene Teamzusammensetzungen für Training und Wettkampf.`},{title:`Architektur`,text:`Entwickelt als Full-Stack TypeScript-Anwendung nach dem MERN-Stack-Muster. Das Backend verfügt über Express.js-Controller und Services mit MongoDB zur Datenpersistenz. Das Frontend wurde mit React und Vite für schnelle Entwicklung und Hot Module Replacement erstellt. Das Projekt umfasst eine umfassende CI/CD-Pipeline über GitLab CI, automatisierte Tests mit Jest und Docker-Containerisierung für konsistente Deployments.`},{title:`Entwicklungsreise`,text:`Mit über 278 Commits und aktiver Entwicklung seit Mai 2023 hat sich der UWR Planer erheblich weiterentwickelt. Die Codebasis folgt Clean-Architecture-Prinzipien mit separaten Controllern, Services und Models. Seeding-Skripte helfen bei Testszenarien über Saisons hinweg, und das Projekt wird kontinuierlich basierend auf realem Feedback des Teams verbessert.`},{title:`Jetzt auch für iOS`,text:`Der UWR Planer ist jetzt im App Store verfügbar â zusätzlich zu Android über Google Play und F-Droid. Damit kann das ganze Team die App nutzen, unabhängig vom Betriebssystem. Eine App im Ap
1774p Store zu halten kostet laufend 99â¯â¬/Jahr für Apples Entwicklerprogramm; wenn euch der Planer hilft, freuen wir uns über einen Tip auf Ko-fi (ko-fi.com/uwrplaner).`}]},techStack:[`TypeScript`,`React`,`Express.js`,`MongoDB`,`Docker`,`GitLab CI`],repoUrl:`https://git.pabr.de/uwr/uwr-planner`,externalLinks:[{label:`App Store`,url:`https://apps.apple.com/us/app/uwr-planer/id6784654616`,store:`appstore`},{label:`Google Play`,url:`https://play.google.com/store/apps/details?id=de.uwrplan.app`,store:`playstore`},{label:`F-Droid`,url:`https://f-droid.org/packages/de.uwrplan.app`,store:`fdroid`},{label:`uwr-plan.de`,url:`https://uwr-plan.de`,store:`web`},{label:`Ko-fi (Tip)`,url:`https://ko-fi.com/uwrplaner`,store:`kofi`}],icon:(0,E.jsxDEV)(Gr,{className:`w-8 h-8`},void 0,!1,{fileName:EN,lineNumber:116,columnNumber:11},void 0),bgColor:`bg-indigo-500`},{slug:`checkmk-monitoring`,title:`Unofficial CheckMK Monitoring`,date:`2024-04-21`,shortDescription:{en:`A cross-platform mobile app for monitoring your IT infrastructure through CheckMK - featuring real-time dashboards, push notifications, and home screen widgets.`,de:`Eine plattformübergreifende Mobile-App zur Ãberwachung Ihrer IT-Infrastruktur über CheckMK - mit Echtzeit-Dashboards, Push-Benachrichtigungen und Homescreen-Widgets.`},sections:{en:[{title:`The Story`,text:`What started as a university project at RH Köln (Rheinische Hochschule Köln) has grown into a fully-featured, publicly available mobile application. The Unofficial CheckMK Monitoring App was born from a simple need: having a reliable way to check on your IT infrastructure without being chained to a desktop. Whether you're on-call, commuting, or just away from your desk - this app puts your entire monitoring setup in your pocket.`},{title:`Key Features`,text:`The app connects directly to your CheckMK server and provides a rich dashboard experience. Status indicators use an intuitive hexagonal design - green for healthy hosts, red for critical issues, yellow for warnings, and more. You get real-time push notifications for state changes, so you'll never miss a critical alert. 1775 1776Beyond monitoring, the app lets you take action: acknowledge problems, schedule downtimes, and add comments to hosts and services - all from your phone. An Android home screen widget gives you a quick glance at your infrastructure health without even opening the app.`},{title:`Technical Details`,text:`Built with Flutter for true cross-platform support on both Android and iOS. The app communicates with CheckMK's REST API, supports both Raw Edition (CRE) and Enterprise Edition (CEE), and features offline caching for faster loading. Dark and light themes are supported, and the responsive design adapts to various screen sizes.`},{title:`What's Next`,text:`The project is actively maintained and available on the App Store, the Google Play Store and F-Droid. Future plans include enhanced notification filtering, dashboard customization, and expanded widget options. Contributions are welcome - check out the repository to get started!`},{title:`Now on iOS`,text:`The app is built with Flutter, and the iOS build is now live on the App Store alongside the Android releases on Google Play and F-Droid â the same dashboards, notifications and actions on whichever phone you carry on call. Keeping an app on the App Store costs an ongoing â¬99/year Apple developer fee; if the app saves you a trip back to the desk, a tip on Ko-fi (ko-fi.com/checkmk) helps keep it published.`}],de:[{title:`Die Geschichte`,text:`Was als Universitätsprojekt an der RH Köln (Rheinische Hochschule Köln) begann, hat sich zu einer vollständigen, öffentlich verfügbaren Mobile-Anwendung entwickelt. Die Unofficial CheckMK Monitoring App entstand aus einem einfachen Bedürfnis: eine zuverlässige Möglichkeit, die IT-Infrastruktur zu überwachen, ohne an einen Desktop gebunden zu sein. Ob im Bereitschaftsdienst, unterwegs oder einfach nicht am Schreibtisch - diese App bringt Ihr gesamtes Monitoring-Setup in Ihre Hosentasche.`},{title:`Hauptfunktionen`,text:`Die App verbindet sich direkt mit Ihrem CheckMK-Server und bietet eine reichhaltige Dashboard-Erfahrung. Statusanzeigen verwenden ein intuitives hexagonales Design - Grün für gesunde Hosts, Rot für kritische Probleme, Gelb für Warnungen und mehr. Sie erhalten Echtzeit-Push-Benachrichtigungen bei Statusänderungen, sodass Sie nie einen kritischen Alarm verpassen. 1777 1778Ãber das reine Monitoring hinaus können Sie Aktionen durchführen: Probleme bestätigen, Wartungszeiten planen und
1778Kommentare zu Hosts und Services hinzufügen - alles von Ihrem Telefon aus. Ein Android-Homescreen-Widget gibt Ihnen einen schnellen Ãberblick über den Zustand Ihrer Infrastruktur, ohne die App öffnen zu müssen.`},{title:`Technische Details`,text:`Entwickelt mit Flutter für echte plattformübergreifende Unterstützung auf Android und iOS. Die App kommuniziert über die CheckMK REST-API, unterstützt sowohl die Raw Edition (CRE) als auch die Enterprise Edition (CEE) und bietet Offline-Caching für schnelleres Laden. Dunkle und helle Themes werden unterstützt, und das responsive Design passt sich verschiedenen BildschirmgröÃen an.`},{title:`Ausblick`,text:`Das Projekt wird aktiv gepflegt und ist im App Store, im Google Play Store sowie bei F-Droid verfügbar. Zukünftige Pläne umfassen erweiterte Benachrichtigungsfilterung, Dashboard-Anpassung und erweiterte Widget-Optionen. Beiträge sind willkommen - schauen Sie sich das Repository an, um loszulegen!`},{title:`Jetzt auch für iOS`,text:`Die App ist mit Flutter entwickelt, und der iOS-Build ist jetzt im App Store verfügbar â zusätzlich zu den Android-Versionen bei Google Play und F-Droid. Dieselben Dashboards, Benachrichtigungen und Aktionen also auf jedem Telefon, das ihr im Bereitschaftsdienst dabeihabt. Eine App im App Store zu halten kostet laufend 99â¯â¬/Jahr für Apples Entwicklerprogramm; wenn euch die App den Weg zum Schreibtisch erspart, freuen wir uns über einen Tip auf Ko-fi (ko-fi.com/checkmk).`}]},techStack:[`Flutter`,`Dart`,`CheckMK REST API`,`Android`,`iOS`],repoUrl:`https://git.pabr.de/apps/unofficial_checkmk_monitoring`,externalLinks:[{label:`App Store`,url:`https://apps.apple.com/us/app/unofficial-checkmk-monitoring/id6784654228`,store:`appstore`},{label:`Google Play`,url:`https://play.google.com/store/apps/details?id=com.checkmk.unofficial_checkmk_monitoring`,store:`playstore`},{label:`F-Droid`,url:`https://f-droid.org/en/packages/com.checkmk.unofficial_checkmk_monitoring/`,store:`fdroid`},{label:`Ko-fi (Tip)`,url:`https://ko-fi.com/checkmk`,store:`kofi`}],icon:(0,E.jsxDEV)(mi,{className:`w-8 h-8`},void 0,!1,{fileName:EN,lineNumber:181,columnNumber:11},void 0),bgColor:`bg-green-500`},{slug:`pv-solar-app`,title:`PV Solar App`,date:`2024-10-02`,shortDescription:{en:`A Flutter app for visualizing real-time statistics and historical data from Fronius solar inverters - track your solar energy production on the go.`,de:`Eine Flutter-App zur Visualisierung von Echtzeitstatistiken und historischen Daten von Fronius-Wechselrichtern - Solarenergieproduktion unterwegs verfolgen.`},sections:{en:[{title:`Why This Project`,text:`Solar energy is one of the most accessible forms of renewable energy for homeowners, but keeping track of your system's performance shouldn't require sitting at a computer. The PV Solar App was built to provide a clean, mobile-first interface for monitoring Fronius solar inverters - making it easy to see how much energy your panels are producing at any given moment.`},{title:`Features`,text:`The app connects to your Fronius inverter using API Version 34 and provides real-time statistics visualization with intuitive charts. Track your daily, weekly, and historical energy production with clean data visualizations. The user-friendly interface makes it simple to understand your solar system's performance at a glance - no technical expertise required.`},{title:`Technical Stack`,text:`Built with Flutter and Dart for cross-platform support across Android, iOS, Linux, macOS, and Windows. The app communicates directly with the Fronius Solar API to fetch inverter data. The architecture is designed to be lightweight and responsive, providing a smooth experience even on older devices. Tested on Pixel 7 and Le Eco Le Max 2.`},{title:`Getting Started`,text:`The project is open-source under the MIT License. Clone the repository, run flutter pub get, connect to your Fronius inverter, and you're ready to start monitoring your solar production. The setup is straightforward and well-documented in the project README.`}],de:[{title:`Warum dieses Projekt`,text:`Solarenergie ist eine der zugänglichsten Formen erneuerbarer Energie für Hausbesitzer, aber die Ãberwachung der Systemleistung sollte nicht erfordern, am Computer zu sitzen. Die PV Solar App wurde entwickelt, um eine saubere, mobilfreundliche Oberfläche für die Ãberwachung von Fronius-Wechselrichtern zu bieten - so sieht man einfach, wie viel Energie die Panels zu jedem Zeitpunkt produzieren.`},{title:`Funktionen`,text:`Die App verbindet sich über die API Version 34 mit Ihrem Fronius-Wechselrichter und bietet eine Echtzeit-Statistikvisualisierung mit intuitiven Diagrammen. Verfolgen Sie Ihre tägliche, wöchentliche und historische Energieproduktion mit übersichtlichen Datenvisualisierungen. Die benutzerfreundliche Oberfläche macht es einfach, die Leistung Ihrer Solaranlage auf einen Blick zu verstehe
1778n - keine technischen Kenntnisse erforderlich.`},{title:`Technischer Stack`,text:`Entwickelt mit Flutter und Dart für plattformübergreifende Unterstützung auf Android, iOS, Linux, macOS und Windows. Die App kommuniziert direkt mit der Fronius Solar API, um Wechselrichterdaten abzurufen. Die Architektur ist leichtgewichtig und reaktionsschnell konzipiert und bietet ein flüssiges Erlebnis auch auf älteren Geräten. Getestet auf Pixel 7 und Le Eco Le Max 2.`},{title:`Erste Schritte`,text:`Das Projekt ist Open-Source unter der MIT-Lizenz. Klonen Sie das Repository, führen Sie flutter pub get aus, verbinden Sie sich mit Ihrem Fronius-Wechselrichter und schon können Sie Ihre Solarproduktion überwachen. Die Einrichtung ist unkompliziert und gut dokumentiert im Projekt-README.`}]},techStack:[`Flutter`,`Dart`,`Fronius Solar API`],repoUrl:`https://git.pabr.de/paul/pv_solar_app`,icon:(0,E.jsxDEV)(Kr,{className:`w-8 h-8`},void 0,!1,{fileName:EN,lineNumber:232,columnNumber:11},void 0),bgColor:`bg-yellow-500`},{slug:`fahrtenbuch-verbrauch`,title:`EV Trip & Consumption Tracker`,date:`2026-04-24`,shortDescription:{en:`An offline-first Android app for electric vehicle owners â automatically tracks trips via GPS and Bluetooth, logs charging sessions, and visualizes consumption statistics.`,de:`Eine Offline-First-Android-App für Elektrofahrzeugbesitzer â verfolgt Fahrten automatisch per GPS und Bluetooth, protokolliert Ladevorgänge und visualisiert Verbrauchsstatistiken.`},sections:{en:[{title:`Why This Project`,text:`Owning an EV means keeping a close eye on consumption â but most logbook apps are either cloud-dependent, cluttered with features you don't need, or simply not built for electric vehicles. Fahrtenbuch Verbrauch was built to be a clean, offline-first solution: all data stays on your device, and the app works just as well without an internet connection.`},{title:`Automatic Trip Tracking`,text:`The app's standout feature is its hands-free trip tracking. Pair a Bluetooth device (like your car's audio system) and the app automatically starts a GPS recording session when you connect and stops when you disconnect â no manual input needed. Trips below a configurable minimum distance are flagged and excluded from statistics to keep your data clean.`},{title:`Charging & Consumption`,text:`Log charging sessions with AC/DC type, state of charge, energy consumed, cost, and location. Consumption can be entered as total kWh or as kWh/100km â the app keeps both values in sync automatically. A built-in vehicle catalog with 40+ EV models (Cupra Born, VW ID series, Tesla, Hyundai, Kia, BMW, and more) provides reference consumption values, and you can define custom vehicles too. 1779 1780On-device OCR lets you photograph a charging station display and extract the numbers directly â no typing required.`},{title:`Android Auto & More`,text:`The app includes a native Android Auto interface so you can monitor your active trip from the car's display. Monthly statistics with charts give you an overview of your consumption trends over time. Data can be exported as JSON or CSV for use in other tools, and imported back if you switch devices.`}],de:[{title:`Warum dieses Projekt`,text:`Ein Elektrofahrzeug zu besitzen bedeutet, den Verbrauch im Blick zu behalten â aber die meisten Fahrtenbuch-Apps sind entweder cloudabhängig, überladen mit unnötigen Funktionen oder schlicht nicht für Elektrofahrzeuge konzipiert. Fahrtenbuch Verbrauch wurde als saubere, Offline-First-Lösung entwickelt: Alle Daten verbleiben auf dem Gerät, und die App funktioniert auch ohne Internetverbindung einwandfrei.`},{title:`Automatische Fahrterfassung`,text:`Das Herzstück der App ist die automatische Fahrterfassung. Koppeln Sie ein Bluetooth-Gerät (z. B. das Audiosystem Ihres Fahrzeugs), und die App startet beim Verbinden automatisch eine GPS-Aufzeichnung â und stoppt sie beim Trennen. Kein manueller Eingriff nötig. Fahrten unterhalb einer konfigurierbaren Mindestdistanz werden markiert und aus der Statistik ausgeschlossen.`},{title:`Laden & Verbrauch`,text:`Ladevorgänge lassen sich mit AC/DC-Typ, Ladestand, verbrauchter Energie, Kosten und Standort erfassen. Der Verbrauch kann als Gesamt-kWh oder als kWh/100 km eingegeben werden â die App hält beide Werte automatisch synchron. Ein integrierter Fahrzeugkatalog mit über 40 E-Fahrzeugmodellen (Cupra Born, VW ID-Serie, Tesla, Hyundai, Kia, BMW und mehr) liefert Referenzwerte; eigene Fahrzeuge lassen sich ebenfalls anlegen. 1781 1782Mit der integrierten OCR-Funktion können Sie ein Foto vom Display einer Ladesäule aufnehmen, und die App extrahiert die Werte automatisch â kein Abtippen erforderlich.`},{title:`Android Auto & mehr`,text:`Die App verfügt über eine native Android-Auto-Oberfläche, mit der Sie Ihre aktive Fahrt direkt vom Fahrzeugdisplay aus verfolgen können. Monatliche Statistiken mit Diagrammen geben einen Ãberblick über Ihre Verbrauchsentwicklung. Daten lassen sich als JSON oder CSV exportieren und bei einem Gerätewechsel wieder importieren.`}]},techStack:[`Flutter`,`Dart`,`SQLite`,`Riverpod`,`GPS`,`Bluetooth`,`Android Auto`,`ML Kit OCR`],repoUrl:`https://git.pabr.de/paul/fahrtenbuch-verbrauch`,icon:(0,E.jsxDEV)(ea,{className:`w-8 h-8`},void 0,!1,{fileName:EN,lineNumber:283,columnNumber:11},void 0),bgColor:`bg-emerald-500`}],jN=()=>{let{projectSlug:e}=Ct(),{language:t,translations:n}=rr(),r=t===`de`?`de`:`en`;if(e){let t=AN.find(t=>t.slug===e);if(!t)return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] max-w-4xl mx-auto text-center`,children:[(0,E.jsxDEV)(`h1`,{className:`text-3xl font-bold text-gray-900 dark:text-white mb-4`,children:`Project not found`},void 0,!1,{fileName:EN,lineNumber:300,columnNumber:13},void 0),(0,E.jsxDEV)(Pn,{to:`/projects`,className:`text-blue-500 hover:text-blue-600 inline-flex items-center`,children:[(0,E.jsxDEV)(la,{className:`mr-2`},void 0,!1,{fileName:EN,lineNumber:307,columnNumber:15},void 0),` `,n.projects?.backToProjects||`Back to Projects`]},void 0,!0,{fileName:EN,lineNumber:303,columnNumber:13},void 0)]},void 0,!0,{fileName:EN,lineNumber:299,columnNumber:11},void 0)},void 0,!1,{fileName:EN,lineNumber:298,columnNumber:9},void 0);let i=t.sections[r],a=(t.externalLinks??[]).filter(e=>e.store!==void 0&&kN.includes(e.store));return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] max-w-4xl mx-auto`,children:[(0,E.jsxDEV)(Pn,{to:`/projects`,className:`text-blue-500 hover:text-blue-600 inline-flex items-center mb-8`,children:[(0,E.jsxDEV)(la,{className:`mr-2`},void 0,!1,{fileName:EN,lineNumber:327,columnNumber:13},void 0),` `,n.projects?.backToProjects||`Back to Projects`]},void 0,!0,{fileName:EN,lineNumber:323,columnNumber:11},void 0),(0,E.jsxDEV)(`article`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg overflow-hidden`,children:[(0,E.jsxDEV)(`div`,{className:`${t.bgColor} p-8 text-white`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center`,children:[(0,E.jsxDEV)(`div`,{className:`mr-4`,children:t.icon},void 0,!1,{fileName:EN,lineNumber:333,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h1`,{className:`text-3xl font-bold`,children:t.title},void 0,!1,{fileName:EN,lineNumber:335,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-white/80 mt-1`,children:[n.projects?.startedOn||`Started`,`: `,new Date(t.date).toLocaleDateString(r===`de`?`de-DE`:`en-US`,{year:`numeric`,month:`long`,day:`numeric`})]},void 0,!0,{fileName:EN,lineNumber:336,columnNumber:19},void 0)]},void 0,!0,{fileName:EN,lineNumber:334,columnNumber:17},void 0)]},void 0,!0,{fileName:EN,lineNumber:332,columnNumber:15},void 0),a.length>0&&(0,E.jsxDEV)(`div`,{className:`mt-6`,children:[(0,E.jsxDEV)(`p`,{className:`text-white/80 text-sm font-medium mb-3`,children:n.projects?.availableOn||`Available on`},void 0,!1,{fileName:EN,lineNumber:344,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-3`,children:a.map(e=>(0,E.jsxDEV)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-2 px-4 py-2 rounded-lg font-medium shadow-md transition-colors ${ON[e.store]}`,children:[DN[e.store],` `,e.label]},e.url,!0,{fileName:EN,lineNumber:349,columnNumber:23},void 0))},void 0,!1,{fileName:EN,lineNumber:347,columnNumber:19},void 0)]},void 0,!0,{fileName:EN,lineNumber:343,columnNumber:17},void 0)]},void 0,!0,{fileName:EN,lineNumber:331,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`p-8`,children:[(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-2 mb-8`,children:t.techStack.map(e=>(0,E.jsxDEV)(`span`,{className:`px-3 py-1 bg-gray-100 dark:bg-gray-700 text-gray-700 dark:text-gray-300 rounded-full text-sm font-medium`,children:e},e,!1,{fileName:EN,lineNumber:367,columnNumber:19},void 0))},void 0,!1,{fileName:EN,lineNumber:365,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`prose dark:prose-invert max-w-none`,children:i.map((e,t)=>(0,E.jsxDEV)(`div`,{className:`mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-3`,children:e.title},void 0,!1,{fileName:EN,lineNumber:379,columnNumber:21},void 0),e.text.split(` 1783 1784`).map((e,t)=>(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 leading-relaxed mb-4`,children:e},t,!1,{fileName:EN,lineNumber:383,columnNumber:23},void 0))]},t,!0,{fileName:EN,lineNumber:378,columnNumber:19},void 0))},void 0,!1,{fileName:EN,lineNumber:376,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`border-t border-gray-200 dark:border-gray-700 pt-6 mt-8 flex flex-wrap gap-4`,children:[(0,E.jsxDEV)(`a`,{href:t.repoUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center px-4 py-2 bg-gray-800 dark:bg-gray-600 text-white rounded-lg hover:bg-gray-700 dark:hover:bg-gray-500 transition-colors`,children:[(0,E.jsxDEV)(Gi,{className:`mr-2`},void 0,!1,{fileName:EN,lineNumber:398,columnNumber:19},void 0),` `,n.projects?.visitRepo||`Visit Repository`]},void 0,!0,{fileName:EN,lineNumber:392,columnNumber:17},void 0),t.externalLinks?.map(e=>(0,E.jsxDEV)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-2 px-4 py-2 rounded-lg transition-colors ${ON[e.store??`web`]}`,children:[DN[e.store??`web`],` `,e.label]},e.url,!0,{fileName:EN,lineNumber:401,columnNumber:19},void 0))]},void 0,!0,{fileName:EN,lineNumber:391,columnNumber:15},void 0)]},void 0,!0,{fileName:EN,lineNumber:364,columnNumber:13},void 0)]},void 0,!0,{fileName:EN,lineNumber:330,columnNumber:11},void 0)]},void 0,!0,{fileName:EN,lineNumber:322,columnNumber:9},void 0)},void 0,!1,{fileName:EN,lineNumber:321,columnNumber:7},void 0)}return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-4 transition-colors duration-200`,children:n.projects?.title||`Projects`},void 0,!1,{fileName:EN,lineNumber:423,columnNumber:9},void 0),(0,E.jsxDEV)(`p`,{className:`text-center text-gray-600 dark:text-gray-400 mb-8 text-lg`,children:n.projects?.subtitle||`A showcase of cool projects I'm working on`},void 0,!1,{fileName:EN,lineNumber:426,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8`,children:AN.map(e=>{let t=(e.externalLinks??[]).filter(e=>e.store!==void 0&&kN.includes(e.store));return(0,E.jsxDEV)(Pn,{to:`/projects/${e.slug}`,className:`transform transition-all duration-300 hover:scale-105`,children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-700 rounded-lg shadow-lg overflow-hidden h-full flex flex-col`,children:[(0,E.jsxDEV)(`div`,{className:`${e.bgColor} p-6 flex items-center text-white ${t.length>0?`justify-between`:`justify-center`}`,children:[e.icon,t.length>0&&(0,E.jsxDEV)(`div`,{className:`flex items-center gap-2 text-white/90`,children:t.map(e=>(0,E.jsxDEV)(`span`,{title:e.label,"aria-label":e.label,children:DN[e.store]},e.url,!1,{fileName:EN,lineNumber:449,columnNumber:25},void 0))},void 0,!1,{fileName:EN,lineNumber:447,columnNumber:21},void 0)]},void 0,!0,{fileName:EN,lineNumber:444,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`p-6 flex-grow flex flex-col`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold mb-2 text-gray-900 dark:text-white`,children:e.title},void 0,!1,{fileName:EN,lineNumber:457,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 mb-4 flex-grow`,children:e.shortDe
1784scription[r]},void 0,!1,{fileName:EN,lineNumber:460,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-wrap gap-1.5 mb-4`,children:[e.techStack.slice(0,3).map(e=>(0,E.jsxDEV)(`span`,{className:`px-2 py-0.5 bg-gray-100 dark:bg-gray-600 text-gray-600 dark:text-gray-300 rounded text-xs font-medium`,children:e},e,!1,{fileName:EN,lineNumber:465,columnNumber:23},void 0)),e.techStack.length>3&&(0,E.jsxDEV)(`span`,{className:`px-2 py-0.5 bg-gray-100 dark:bg-gray-600 text-gray-600 dark:text-gray-300 rounded text-xs font-medium`,children:[`+`,e.techStack.length-3]},void 0,!0,{fileName:EN,lineNumber:473,columnNumber:23},void 0)]},void 0,!0,{fileName:EN,lineNumber:463,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{className:`text-blue-500 text-sm font-medium`,children:[n.projects?.viewProject||`Read More`,` â`]},void 0,!0,{fileName:EN,lineNumber:478,columnNumber:19},void 0)]},void 0,!0,{fileName:EN,lineNumber:456,columnNumber:17},void 0)]},void 0,!0,{fileName:EN,lineNumber:443,columnNumber:15},void 0)},e.slug,!1,{fileName:EN,lineNumber:438,columnNumber:13},void 0)})},void 0,!1,{fileName:EN,lineNumber:430,columnNumber:9},void 0)]},void 0,!0,{fileName:EN,lineNumber:422,columnNumber:7},void 0)},void 0,!1,{fileName:EN,lineNumber:421,columnNumber:5},void 0)},MN=`/opt/src/frontend/src/components/ObfuscatedEmail.tsx`,NN=({emailParts:e,className:t=`text-blue-500 hover:underline cursor-pointer`,displayFormat:n=`split`})=>{let[r,i]=(0,S.useState)(!1),[a,o]=(0,S.useState)(``),s=(e,t)=>{switch(t){case`reverse`:return e.split(``).reverse().join(``);case`base64`:return btoa(e);case`split`:return e.split(``).join(`â¢`);default:return e}},c=(0,S.useCallback)(()=>{let{prefix:t,domain:n,tld:r}=e,a=`${t}@${n}.${r}`;o(a),i(!0)},[e]),l=()=>{r?window.location.href=`mailto:${a}`:(c(),setTimeout(()=>{window.location.href=`mailto:${e.prefix}@${e.domain}.${e.tld}`},100))};return(0,E.jsxDEV)(`span`,{onClick:l,onKeyPress:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),l())},className:`${t} select-none transition-all duration-200 hover:bg-blue-50 dark:hover:bg-blue-900/20 rounded px-1`,role:`button`,tabIndex:0,title:r?a:`Click to reveal and open email client`,"aria-label":r?`Email: ${a}`:`Obfuscated email address - click to reveal`,children:(()=>{if(r)return a;switch(n){case`masked`:return(0,E.jsxDEV)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,E.jsxDEV)(`span`,{className:`opacity-70`,children:e.prefix},void 0,!1,{fileName:MN,lineNumber:73,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs opacity-50`,children:`[at]`},void 0,!1,{fileName:MN,lineNumber:74,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`opacity-70`,children:e.domain},void 0,!1,{fileName:MN,lineNumber:75,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs opacity-50`,children:`[dot]`},void 0,!1,{fileName:MN,lineNumber:76,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`opacity-70`,children:e.tld},void 0,!1,{fileName:MN,lineNumber:77,columnNumber:13},void 0)]},void 0,!0,{fileName:MN,lineNumber:72,columnNumber:11},void 0);case`split`:return(0,E.jsxDEV)(`span`,{className:`inline-flex items-center`,children:[(0,E.jsxDEV)(`span`,{className:`mr-1 p-1 bg-gray-100 dark:bg-gray-700 rounded text-xs`,children:s(e.prefix,`split`)},void 0,!1,{fileName:MN,lineNumber:84,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`mx-1 text-xs opacity-50`,children:`@`},void 0,!1,{fileName:MN,lineNumber:87,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`mx-1 p-1 bg-gray-200 dark:bg-gray-600 rounded text-xs`,children:s(e.domain,`reverse`).split(``).reverse().join(``)},void 0,!1,{fileName:MN,lineNumber:88,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`mx-1 text-xs opacity-50`,children:`.`},void 0,!1,{fileName:MN,lineNumber:91,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`ml-1 p-1 bg-gray-100 dark:bg-gray-700 rounded text-xs`,children:e.tld},void 0,!1,{fileName:MN,lineNumber:92,columnNumber:13},void 0)]},void 0,!0,{fileName:MN,lineNumber:83,columnNumber:11},void 0);case`encoded`:return(0,E.jsxDEV)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,E.jsxDEV)(`span`,{className:`p-1 bg-blue-50 dark:bg-blue-900/20 rounded text-xs font-mono`,title:`Click to reveal email`,children:[s(e.prefix,`base64`).substring(0,6),`...`]},void 0,!0,{fileName:MN,lineNumber:101,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs opacity-50`,children:`@`},void 0,!1,{fileName:MN,lineNumber:107,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`p-1 bg-green-50 dark:bg-green-900/20 rounded text-xs font-mono`,title:`Click to reveal email`,children:s(e.domain,`reverse`)},void 0,!1,{fileName:MN,lineNumber:108,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`text-xs opacity-50`,children:`.`},void 0,!1,{fileName:MN,lineNumber:114,columnNumber:13},void 0),(0,E.jsxDEV)(`span`,{className:`p-1 bg-purple-50 dark:bg-purple-900/20 rounded text-xs`,children:e.tld},void 0,!1,{fileName:MN,lineNumber:115,columnNumber:13},void 0)]},void 0,!0,{fileName:MN,lineNumber:100,columnNumber:11},void 0);default:return`${e.prefix} [at] ${e.domain} [dot] ${e.tld}`}})()},void 0,!1,{fileName:MN,lineNumber:127,columnNumber:5},void 0)},PN={info:{prefix:`info`,domain:`pabr`,tld:`de`}},FN=({className:e,displayFormat:t=`split`})=>(0,E.jsxDEV)(NN,{emailParts:PN.info,className:e,displayFormat:t},void 0,!1,{fileName:MN,lineNumber:155,columnNumber:3},void 0),IN=`/opt/src/frontend/src/components/ImpressumPage.tsx`,LN=()=>{let{translations:e}=rr(),[t,n]=(0,S.useState)(!1);return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-full max-w-[2000px] mx-auto px-6`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-8 transition-colors duration-200`,children:e.impressum.title},void 0,!1,{fileName:IN,lineNumber:13,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg p-8 max-w-3xl mx-auto 1785 border border-gray-100 dark:border-gray-700`,children:(0,E.jsxDEV)(`div`,{className:`space-y-8`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(na,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:IN,lineNumber:24,columnNumber:17},void 0)},void 0,!1,{fileName:IN,lineNumber:23,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-2`,children:`Paul à Brassard`},void 0,!1,{fileName:IN,lineNumber:27,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:`TBD`},void 0,!1,{fileName:IN,lineNumber:30,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:26,columnNumber:15},void 0)]},void 0,!0,{fileName:IN,lineNumber:22,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Fr,{className:`w-6 h-6 text-green-500`},void 0,!1,{fileName:IN,lineNumber:39,columnNumber:17},void 0)},void 0,!1,{fileName:IN,lineNumber:38,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-2`,children:`Vertreten durch`},void 0,!1,{fileName:IN,lineNumber:42,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:`Paul à Brassard`},void 0,!1,{fileName:IN,lineNumber:45,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:41,columnNumber:15},void 0)]},void 0,!0,{fileName:IN,lineNumber:37,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(ci,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:IN,lineNumber:54,columnNumber:17},void 0)},void 0,!1,{fileName:IN,lineNumber:53,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-2`,children:`Kontakt`},void 0,!1,{fileName:IN,lineNumber:57,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:[`E-Mail: `,(0,E.jsxDEV)(FN,{className:`text-blue-500 hover:underline`,displayFormat:`masked`},void 0,!1,{fileName:IN,lineNumber:61,columnNumber:27},void 0)]},void 0,!0,{fileName:IN,lineNumber:60,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:56,columnNumber:15},void 0)]},void 0,!0,{fileName:IN,lineNumber:52,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-8 pt-8 border-t border-gray-200 dark:border-gray-700`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4 mb-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Di,{className:`w-6 h-6 text-red-500`},void 0,!1,{fileName:IN,lineNumber:70,columnNumber:19},void 0)},void 0,!1,{fileName:IN,lineNumber:69,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-2`,children:`Haftungsausschluss`},void 0,!1,{fileName:IN,lineNumber:73,columnNumber:19},void 0)},void 0,!1,{fileName:IN,lineNumber:72,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:68,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300 text-sm space-y-4`,children:[(0,E.jsxDEV)(`h3`,{className:`font-semibold`,children:`Haftung für Links`},void 0,!1,{fileName:IN,lineNumber:80,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{children:`Unser Angebot enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich.`},void 0,!1,{fileName:IN,lineNumber:81,columnNumber:17},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold`,children:`Urheberrecht`},void 0,!1,{fileName:IN,lineNumber:87,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{children:`Die durch die Seitenbetreiber erstellten Inhalte und Werke auf diesen Seiten unterliegen dem deutschen Urheberrecht. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung auÃerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers.`},void 0,!1,{fileName:IN,lineNumber:88,columnNumber:17},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold`,children:`Datenschutz`},void 0,!1,{fileName:IN,lineNumber:94,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{children:`Die Nutzung unserer Webseite ist in der Regel ohne Angabe personenbezogener Daten möglich. Soweit auf unseren Seiten personenbezogene Daten erhoben werden, erfolgt dies, soweit möglich, stets auf freiwilliger Basis. Diese Daten werden ohne Ihre ausdrückliche Zustimmung nicht an Dritte weitergegeben.`},void 0,!1,{fileName:IN,lineNumber:95,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:79,columnNumber:15},void 0)]},void 0,!0,{fileName:IN,lineNumber:67,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-8 pt-8 border-t border-gray-200 dark:border-gray-700 text-center`,children:(0,E.jsxDEV)(`button`,{onClick:()=>n(!0),className:`inline-flex items-center space-x-2 px-6 py-3 bg-gradient-to-r from-amber-500 to-orange-500 1786 hover:from-amber-600 hover:to-orange-600 text-white font-semibold rounded-lg shadow-lg 1787 transition-all duration-300 transform hover:scale-105`,children:[(0,E.jsxDEV)(
1787Hi,{className:`w-5 h-5`},void 0,!1,{fileName:IN,lineNumber:111,columnNumber:17},void 0),(0,E.jsxDEV)(`span`,{children:e.impressum.kekseButton},void 0,!1,{fileName:IN,lineNumber:112,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:105,columnNumber:15},void 0)},void 0,!1,{fileName:IN,lineNumber:104,columnNumber:13},void 0)]},void 0,!0,{fileName:IN,lineNumber:20,columnNumber:11},void 0)},void 0,!1,{fileName:IN,lineNumber:17,columnNumber:9},void 0),t&&(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 p-4`,onClick:()=>n(!1),children:(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-2xl max-w-2xl w-full p-8 1788 border-4 border-amber-500 dark:border-amber-600 relative animate-bounce-in`,onClick:e=>e.stopPropagation(),children:[(0,E.jsxDEV)(`div`,{className:`text-center mb-6`,children:[(0,E.jsxDEV)(`div`,{className:`inline-block p-4 bg-amber-100 dark:bg-amber-900 rounded-full mb-4`,children:(0,E.jsxDEV)(Hi,{className:`w-12 h-12 text-amber-600 dark:text-amber-400`},void 0,!1,{fileName:IN,lineNumber:129,columnNumber:19},void 0)},void 0,!1,{fileName:IN,lineNumber:128,columnNumber:17},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white`,children:e.impressum.kekseBanner.title},void 0,!1,{fileName:IN,lineNumber:131,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:127,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{className:`text-lg text-gray-700 dark:text-gray-300 text-center`,children:e.impressum.kekseBanner.description},void 0,!1,{fileName:IN,lineNumber:138,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`bg-amber-50 dark:bg-amber-900/30 border-2 border-amber-300 dark:border-amber-700 1789 rounded-lg p-4 mt-6`,children:(0,E.jsxDEV)(`p`,{className:`text-sm text-gray-600 dark:text-gray-400 italic`,children:e.impressum.kekseBanner.disclaimer},void 0,!1,{fileName:IN,lineNumber:145,columnNumber:19},void 0)},void 0,!1,{fileName:IN,lineNumber:143,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex flex-col sm:flex-row gap-4 mt-6`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>n(!1),className:`flex-1 px-6 py-3 bg-red-500 hover:bg-red-600 text-white font-semibold 1790 rounded-lg shadow-lg transition-all duration-300 transform hover:scale-105`,children:e.impressum.kekseBanner.rejectButton},void 0,!1,{fileName:IN,lineNumber:152,columnNumber:19},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>n(!1),className:`flex-1 px-6 py-3 bg-green-500 hover:bg-green-600 text-white font-semibold 1791 rounded-lg shadow-lg transition-all duration-300 transform hover:scale-105`,children:e.impressum.kekseBanner.acceptButton},void 0,!1,{fileName:IN,lineNumber:159,columnNumber:19},void 0)]},void 0,!0,{fileName:IN,lineNumber:151,columnNumber:17},void 0)]},void 0,!0,{fileName:IN,lineNumber:137,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>n(!1),className:`absolute top-4 right-4 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 1792 transition-colors text-2xl font-bold`,children:`Ã`},void 0,!1,{fileName:IN,lineNumber:170,columnNumber:15},void 0)]},void 0,!0,{fileName:IN,lineNumber:122,columnNumber:13},void 0)},void 0,!1,{fileName:IN,lineNumber:120,columnNumber:11},void 0)]},void 0,!0,{fileName:IN,lineNumber:12,columnNumber:7},void 0)},void 0,!1,{fileName:IN,lineNumber:11,columnNumber:5},void 0)},K=`/opt/src/frontend/src/components/DatenschutzPage.tsx`,RN=()=>{let{translations:e}=rr();return(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white mb-4 transition-colors duration-200`,children:`Datenschutzerklärung`},void 0,!1,{fileName:K,lineNumber:12,columnNumber:9},void 0),(0,E.jsxDEV)(`p`,{className:`text-center text-gray-600 dark:text-gray-400 mb-8`,children:`Stand: 12. November 2024`},void 0,!1,{fileName:K,lineNumber:15,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg p-8 max-w-4xl mx-auto border border-gray-100 dark:border-gray-700`,children:(0,E.jsxDEV)(`div`,{className:`space-y-8`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4 mb-8`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(hi,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:K,lineNumber:24,columnNumber:17},void 0)},void 0,!1,{fileName:K,lineNumber:23,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex-1`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Inhaltsübersicht`},void 0,!1,{fileName:K,lineNumber:27,columnNumber:17},void 0),(0,E.jsxDEV)(`ul`,{className:`space-y-2 text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m3`,className:`hover:text-blue-500`,children:`Verantwortlicher`},void 0,!1,{fileName:K,lineNumber:31,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:31,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#mOverview`,className:`hover:text-blue-500`,children:`Ãbersicht der Verarbeitungen`},void 0,!1,{fileName:K,lineNumber:32,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:32,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m2427`,className:`hover:text-blue-500`,children:`MaÃgebliche Rechtsgrundlagen`},void 0,!1,{fileName:K,lineNumber:33,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:33,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m27`,className:`hover:text-blue-500`,children:`SicherheitsmaÃnahmen`},void 0,!1,{fileName:K,lineNumber:34,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:34,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m25`,className:`hover:text-blue-500`,children:`Ãbermittlung von personenbezogenen Daten`},void 0,!1,{fileName:K,lineNumber:35,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:35,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m24`,className:`hover:text-blue-500`,children:`Internationale Datentransfers`},void 0,!1,{fileName:K,lineNumber:36,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:36,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m12`,className:`hover:text-blue-500`,children:`Allgemeine Informationen zur Datenspeicherung und Löschung`},void 0,!1,{fileName:K,lineNumber:37,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:37,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m10`,className:`hover:text-blue-500`,children:`Rechte der betroffenen Personen`},void 0,!1,{fileName:K,lineNumber:38,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:38,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m225`,className:`hover:text-blue-500`,children:`Bereitstellung des Onlineangebots und Webhosting`},void 0,!1,{fileName:K,lineNumber:39,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:39,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m134`,className:`hover:text-blue-500`,children:`Einsatz von Cookies`}
1792,void 0,!1,{fileName:K,lineNumber:40,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:40,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:(0,E.jsxDEV)(`a`,{href:`#m104`,className:`hover:text-blue-500`,children:`Blogs und Publikationsmedien`},void 0,!1,{fileName:K,lineNumber:41,columnNumber:23},void 0)},void 0,!1,{fileName:K,lineNumber:41,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:30,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:26,columnNumber:15},void 0)]},void 0,!0,{fileName:K,lineNumber:22,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,id:`m3`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Lr,{className:`w-6 h-6 text-green-500`},void 0,!1,{fileName:K,lineNumber:49,columnNumber:17},void 0)},void 0,!1,{fileName:K,lineNumber:48,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-2`,children:`Verantwortlicher`},void 0,!1,{fileName:K,lineNumber:52,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300`,children:[`Paul à Brassard`,(0,E.jsxDEV)(`br`,{},void 0,!1,{fileName:K,lineNumber:56,columnNumber:34},void 0),`E-Mail-Adresse: `,(0,E.jsxDEV)(FN,{className:`text-blue-500 hover:underline`,displayFormat:`encoded`},void 0,!1,{fileName:K,lineNumber:57,columnNumber:35},void 0),(0,E.jsxDEV)(`br`,{},void 0,!1,{fileName:K,lineNumber:57,columnNumber:114},void 0),`Impressum: `,(0,E.jsxDEV)(`a`,{href:`www.pabr.de/impressum`,className:`text-blue-500 hover:underline`,children:`www.pabr.de/impressum`},void 0,!1,{fileName:K,lineNumber:58,columnNumber:30},void 0)]},void 0,!0,{fileName:K,lineNumber:55,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:51,columnNumber:15},void 0)]},void 0,!0,{fileName:K,lineNumber:47,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-6`,id:`mOverview`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(zi,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:K,lineNumber:67,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:66,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Ãbersicht der Verarbeitungen`},void 0,!1,{fileName:K,lineNumber:70,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 mb-4`,children:`Die nachfolgende Ãbersicht fasst die Arten der verarbeiteten Daten und die Zwecke ihrer Verarbeitung zusammen und verweist auf die betroffenen Personen.`},void 0,!1,{fileName:K,lineNumber:73,columnNumber:19},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold text-gray-900 dark:text-white mb-2`,children:`Arten der verarbeiteten Daten`},void 0,!1,{fileName:K,lineNumber:77,columnNumber:19},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-gray-600 dark:text-gray-300 mb-4`,children:[(0,E.jsxDEV)(`li`,{children:`Bestandsdaten`},void 0,!1,{fileName:K,lineNumber:79,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Kontaktdaten`},void 0,!1,{fileName:K,lineNumber:80,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Inhaltsdaten`},void 0,!1,{fileName:K,lineNumber:81,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Nutzungsdaten`},void 0,!1,{fileName:K,lineNumber:82,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Meta-, Kommunikations- und Verfahrensdaten`},void 0,!1,{fileName:K,lineNumber:83,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Protokolldaten`},void 0,!1,{fileName:K,lineNumber:84,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:78,columnNumber:19},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold text-gray-900 dark:text-white mb-2`,children:`Kategorien betroffener Personen`},void 0,!1,{fileName:K,lineNumber:87,columnNumber:19},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-gray-600 dark:text-gray-300 mb-4`,children:(0,E.jsxDEV)(`li`,{children:`Nutzer`},void 0,!1,{fileName:K,lineNumber:89,columnNumber:21},void 0)},void 0,!1,{fileName:K,lineNumber:88,columnNumber:19},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold text-gray-900 dark:text-white mb-2`,children:`Zwecke der Verarbeitung`},void 0,!1,{fileName:K,lineNumber:92,columnNumber:19},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`li`,{children:`SicherheitsmaÃnahmen`},void 0,!1,{fileName:K,lineNumber:94,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Organisations- und Verwaltungsverfahren`},void 0,!1,{fileName:K,lineNumber:95,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Feedback`},void 0,!1,{fileName:K,lineNumber:96,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Bereitstellung unseres Onlineangebotes und Nutzerfreundlichkeit`},void 0,!1,{fileName:K,lineNumber:97,columnNumber:21},void 0),(0,E.jsxDEV)(`li`,{children:`Informationstechnische Infrastruktur`},void 0,!1,{fileName:K,lineNumber:98,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:93,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:69,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:65,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:64,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m2427`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Xr,{className:`w-6 h-6 text-red-500`},void 0,!1,{fileName:K,lineNumber:108,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:107,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`MaÃgebliche Rechtsgrundlagen`},void 0,!1,{fileName:K,lineNumber:111,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300 space-y-4`,children:[(0,E.jsxDEV)(`p`,{className:`font-semibold`,children:`MaÃgebliche Rechtsgrundlagen nach der DSGVO:`},void 0,!1,{fileName:K,lineNumber:115,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside space-y-2`,children:[(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Einwilligung (Art. 6 Abs. 1 S. 1 lit. a) DSGVO)`},void 0,!1,{fileName:K,lineNumber:117,columnNumber:27},void 0),` - Die betroffene Person hat ihre Einwilligung in die Verarbeitung der sie betreffenden personenbezogenen Daten für einen spezifischen Zweck oder mehrere bestimmte Zwecke gegeben.`]},void 0,!0,{fileName:K,lineNumber:117,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Berechtigte Interessen (Art. 6 Abs. 1 S. 1 lit. f) DSGVO)`},void 0,!1,{fileName:K,lineNumber:118,columnNumber:27},void 0),` - Die Verarbeitung ist zur Wahrung der berechtigten Interessen des Verantwortlichen oder eines Dritten erforderlich.`]},void 0,!0,{fileName:K,lineNumber:118,columnNumber:23},void 0)]},void 0,!0,{fileName:K,lineNumber:116,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{className:`mt-4`,children:[(0,E.jsxDEV)(`strong`,{children:`N
1792ationale Datenschutzregelungen in Deutschland:`},void 0,!1,{fileName:K,lineNumber:120,columnNumber:41},void 0),` Zusätzlich zu den Datenschutzregelungen der DSGVO gelten nationale Regelungen zum Datenschutz in Deutschland.`]},void 0,!0,{fileName:K,lineNumber:120,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{className:`mt-4`,children:[(0,E.jsxDEV)(`strong`,{children:`Hinweis auf Geltung DSGVO und Schweizer DSG:`},void 0,!1,{fileName:K,lineNumber:121,columnNumber:41},void 0),` Diese Datenschutzhinweise dienen sowohl der Informationserteilung nach dem Schweizer DSG als auch nach der DSGVO.`]},void 0,!0,{fileName:K,lineNumber:121,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:114,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:110,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:106,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:105,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m27`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Xr,{className:`w-6 h-6 text-yellow-500`},void 0,!1,{fileName:K,lineNumber:131,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:130,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`SicherheitsmaÃnahmen`},void 0,!1,{fileName:K,lineNumber:134,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Wir treffen nach MaÃgabe der gesetzlichen Vorgaben unter Berücksichtigung des Stands der Technik, der Implementierungskosten und der Art, des Umfangs, der Umstände und der Zwecke der Verarbeitung sowie der unterschiedlichen Eintrittswahrscheinlichkeiten und des AusmaÃes der Bedrohung der Rechte und Freiheiten natürlicher Personen geeignete te
1792chnische und organisatorische MaÃnahmen, um ein dem Risiko angemessenes Schutzniveau zu gewährleisten.`},void 0,!1,{fileName:K,lineNumber:138,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{children:`Zu den MaÃnahmen gehören insbesondere die Sicherung der Vertraulichkeit, Integrität und Verfügbarkeit von Daten durch Kontrolle des physischen und elektronischen Zugangs zu den Daten als auch des sie betreffenden Zugriffs, der Eingabe, der Weitergabe, der Sicherung der Verfügbarkeit und ihrer Trennung.`},void 0,!1,{fileName:K,lineNumber:139,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:137,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:133,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:129,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:128,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m25`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(wi,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:K,lineNumber:149,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:148,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Ãbermittlung von personenbezogenen Daten`},void 0,!1,{fileName:K,lineNumber:152,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{children:`Im Rahmen unserer Verarbeitung von personenbezogenen Daten kommt es vor, dass diese an andere Stellen, Unternehmen, rechtlich selbstständige Organisationseinheiten oder Personen übermittelt beziehungsweise ihnen gegenüber offengelegt werden. Zu den Empfängern dieser Daten können z. B. mit IT-Aufgaben beauftragte Dienstleister gehören oder Anbieter von Diensten und Inhalten, die in eine Website eingebunden sind.`},void 0,!1,{fileName:K,lineNumber:155,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:151,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:147,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:146,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m24`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Ti,{className:`w-6 h-6 text-green-500`},void 0,!1,{fileName:K,lineNumber:164,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:163,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Internationale Datentransfers`},void 0,!1,{fileName:K,lineNumber:167,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Datenverarbeitung in Drittländern: Sofern wir Daten in einem Drittland (d. h., auÃerhalb der Europäischen Union (EU), des Europäischen Wirtschaftsraums (EWR)) verarbeiten oder die Verarbeitung im Rahmen der Inanspruchnahme von Diensten Dritter oder der Offenlegung bzw. Ãbermittlung von Daten an andere Personen, Stellen oder Unternehmen stattfindet, erfolgt dies nur im Einklang mit den gesetzlichen Vorgaben.`},void 0,!1,{fileName:K,lineNumber:171,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{children:`Sofern das Datenschutzniveau in dem Drittland mittels eines Angemessenheitsbeschlusses anerkannt wurde (Art. 45 DSGVO), dient dieser als Grundlage des Datentransfers. Im Ãbrigen erfolgen Datentransfers nur dann, wenn das Datenschutzniveau anderweitig gesichert ist, insbesondere durch Standardvertragsklauseln (Art. 46 Abs. 2 lit. c) DSGVO), ausdrückliche Einwilligung oder im Fall vertraglicher oder gesetzlich erforderlicher Ãbermittlung (Art. 49 Abs. 1 DSGVO).`},void 0,!1,{fileName:K,lineNumber:172,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:170,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:166,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:162,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:161,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m12`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Br,{className:`w-6 h-6 text-red-500`},void 0,!1,{fileName:K,lineNumber:182,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:181,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Allgemeine Informationen zur Datenspeicherung und Löschung`},void 0,!1,{fileName:K,lineNumber:185,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Wir löschen personenbezogene Daten grundsätzlich dann, wenn kein Erfordernis für eine weitere Speicherung besteht. Ein Erfordernis kann insbesondere dann bestehen, wenn die Daten noch benötigt werden, um vertragliche Leistungen zur erfüllen, Gewährleistungs- und ggf. Garantieansprüche prüfen und gewähren oder abwehren zu können.`},void 0,!1,{fileName:K,lineNumber:189,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{children:`Im Fall von gesetzlichen Aufbewahrungspflichten kommt eine Löschung erst nach Ablauf der jeweiligen Aufbewahrungspflicht in Betracht.`},void 0,!1,{fileName:K,lineNumber:190,columnNumber:21},void 0),(0,E.jsxDEV)(`h3`,{className:`font-semibold text-gray-900 dark:text-white mt-4 mb-2`,children:`Aufbewahrung und Löschung von Daten`},void 0,!1,{fileName:K,lineNumber:191,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside space-y-2`,children:[(0,E.jsxDEV)(`li`,{children:`10 Jahre - Aufbewahrungsfrist für Bücher, Aufzeichnungen, Jahresabschlüsse, etc.`},void 0,!1,{fileName:K,lineNumber:193,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:`6 Jahre - Ãbrige Geschäftsunterlagen`},void 0,!1,{fileName:K,lineNumber:194,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:`3 Jahre - Daten für Gewährleistungs- und Schadensersatzansprüche`},void 0,!1,{fileName:K,lineNumber:195,columnNumber:23},void 0)]},void 0,!0,{fileName:K,lineNumber:192,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:188,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:184,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:180,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:179,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m10`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Rr,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:K,lineNumber:206,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:205,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Rechte der betroffenen Personen`},void 0,!1,{fileName:K,lineNumber:209,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Ihnen stehen als Betroffene nach der DSGVO verschiedene Rechte zu, die sich insbesondere aus Art. 15 bis 21 DSGVO ergeben:`},void 0,!1,{fileName:K,lineNumber:213,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside space-y-2`,children:[(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Widerspruchsrecht:`},void 0,!1,{fileName:K,lineNumber:215,columnNumber:27},void 0),` Sie haben das Recht, aus Gründen, die sich aus Ihrer besonderen Situation ergeben, jederzeit gegen die
1792Verarbeitung der Sie betreffenden personenbezogenen Daten Widerspruch einzulegen.`]},void 0,!0,{fileName:K,lineNumber:215,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Widerrufsrecht bei Einwilligungen:`},void 0,!1,{fileName:K,lineNumber:216,columnNumber:27},void 0),` Sie haben das Recht, erteilte Einwilligungen jederzeit zu widerrufen.`]},void 0,!0,{fileName:K,lineNumber:216,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Auskunftsrecht:`},void 0,!1,{fileName:K,lineNumber:217,columnNumber:27},void 0),` Sie haben das Recht auf Bestätigung, ob betreffende Daten verarbeitet werden und auf Auskunft über diese Daten.`]},void 0,!0,{fileName:K,lineNumber:217,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Recht auf Berichtigung:`},void 0,!1,{fileName:K,lineNumber:218,columnNumber:27},void 0),` Sie haben das Recht auf Vervollständigung oder Berichtigung unrichtiger Daten.`]},void 0,!0,{fileName:K,lineNumber:218,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Recht auf Löschung und Einschränkung:`},void 0,!1,{fileName:K,lineNumber:219,columnNumber:27},void 0),` Sie haben das Recht auf Löschung Ihrer Daten oder Einschränkung der Verarbeitung.`]},void 0,!0,{fileName:K,lineNumber:219,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Recht auf Datenübertragbarkeit:`},void 0,!1,{fileName:K,lineNumber:220,columnNumber:27},void 0),` Sie haben das Recht, Ihre Daten in einem strukturierten Format zu erhalten.`]},void 0,!0,{fileName:K,lineNumber:220,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Beschwerde bei Aufsichtsbehörde:`},void 0,!1,{fileName:K,lineNumber:221,columnNumber:27},void 0),` Sie haben das Recht auf Beschwerde bei einer Aufsichtsbehörde.`]},void 0,!0,{fileName:K,lineNumber:221,columnNumber:23},void 0)]},void 0,!0,{fileName:K,lineNumber:214,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:212,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:208,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:204,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:203,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m225`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(Qr,{className:`w-6 h-6 text-indigo-500`},void 0,!1,{fileName:K,lineNumber:232,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:231,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Bereitstellung des Onlineangebots und Webhosting`},void 0,!1,{fileName:K,lineNumber:235,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Wir verarbeiten die Daten der Nutzer, um ihnen unsere Online-Dienste zur Verfügung stellen zu können. Zu diesem Zweck verarbeiten wir die IP-Adresse des Nutzers, die notwendig ist, um die Inhalte und Funktionen unserer Online-Dienste an den Browser oder das Endgerät der Nutzer zu übermitteln.`},void 0,!1,{fileName:K,lineNumber:239,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside space-y-2`,children:[(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Verarbeitete Datenarten:`},void 0,!1,{fileName:K,lineNumber:241,columnNumber:27},void 0),` Nutzungsdaten, Meta-, Kommunikations- und Verfahrensdaten, Protokolldaten`]},void 0,!0,{fileName:K,lineNumber:241,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Betroffene Personen:`},void 0,!1,{fileName:K,lineNumber:242,columnNumber:27},void 0),` Nutzer`]},void 0,!0,{fileName:K,lineNumber:242,columnNumber:23},void 0),(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:`Zwecke der Verarbeitung:`},void 0,!1,{fileName:K,lineNumber:243,columnNumber:27},void 0),` Bereitstellung unseres Onlineangebotes und Nutzerfreundlichkeit, SicherheitsmaÃnahmen`]},void 0,!0,{fileName:K,lineNumber:243,columnNumber:23},void 0)]},void 0,!0,{fileName:K,lineNumber:240,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:238,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:234,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:230,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:229,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m134`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(
1792Hi,{className:`w-6 h-6 text-orange-500`},void 0,!1,{fileName:K,lineNumber:254,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:253,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Einsatz von Cookies`},void 0,!1,{fileName:K,lineNumber:257,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`p`,{children:`Cookies sind kleine Textdateien oder sonstige Speichervermerke, die Informationen auf Endgeräten speichern und Informationen aus den Endgeräten auslesen. Z. B. um den Login-Status in einem Nutzerkonto, einen Warenkorbinhalt in einem E-Shop, die aufgerufenen Inhalte oder verwendete Funktionen eines Onlineangebotes speichern.`},void 0,!1,{fileName:K,lineNumber:261,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{children:[(0,E.jsxDEV)(`strong`,{children:`Hinweise zu Rechtsgrundlagen:`},void 0,!1,{fileName:K,lineNumber:262,columnNumber:24},void 0),` Auf welcher Rechtsgrundlage wir Ihre personenbezogenen Daten mithilfe von Cookies verarbeiten, hängt davon ab, ob wir Sie um eine Einwilligung bitten. Falls ja und Sie einwilligen, ist die Rechtsgrundlage die erklärte Einwilligung. Andernfalls werden die mithilfe von Cookies verarbeiteten Daten auf Grundlage unserer berechtigten Interessen verarbeitet.`]},void 0,!0,{fileName:K,lineNumber:262,columnNumber:21},void 0)]},void 0,!0,{fileName:K,lineNumber:260,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:256,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:252,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:251,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,id:`m104`,children:(0,E.jsxDEV)(`div`,{className:`flex items-start space-x-4`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:(0,E.jsxDEV)(oa,{className:`w-6 h-6 text-indigo-500`},void 0,!1,{fileName:K,lineNumber:272,columnNumber:19},void 0)},void 0,!1,{fileName:K,lineNumber:271,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`text-gray-600 dark:text-gray-300`,children:[(0,E.jsxDEV)(`h2`,{className:`text-xl font-semibold text-gray-900 dark:text-white mb-4`,children:`Blogs und Publikationsmedien`},void 0,!1,{fileName:K,lineNumber:275,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:(0,E.jsxDEV)(`p`,{children:`Wir nutzen Blogs oder vergleichbare Mittel der Onlinekommunikation und Publikation. Die Daten der Leser werden für die Zwecke des Publikationsmediums nur insoweit verarbeitet, als es für dessen Darstellung und die Kommunikation zwischen Autoren und Lesern oder aus Gründen der Sicherheit erforderlich ist.`},void 0,!1,{fileName:K,lineNumber:279,columnNumber:21},void 0)},void 0,!1,{fileName:K,lineNumber:278,columnNumber:19},void 0)]},void 0,!0,{fileName:K,lineNumber:274,columnNumber:17},void 0)]},void 0,!0,{fileName:K,lineNumber:270,columnNumber:15},void 0)},void 0,!1,{fileName:K,lineNumber:269,columnNumber:13},void 0)]},void 0,!0,{fileName:K,lineNumber:20,columnNumber:11},void 0)},void 0,!1,{fileName:K,lineNumber:19,columnNumber:9},void 0)]},void 0,!0,{fileName:K,lineNumber:11,columnNumber:7},void 0)},void 0,!1,{fileName:K,lineNumber:10,columnNumber:5},void 0)},q=Number.isFinite||function(e){return typeof e==`number`&&isFinite(e)},zN=Number.isSafeInteger||function(e){return typeof e==`number`&&Math.abs(e)<=BN},BN=2**53-1||9007199254740991,VN=function(e){return e.NETWORK_ERROR=`networkError`,e.MEDIA_ERROR=`mediaError`,e.KEY_SYSTEM_ERROR=`keySystemError`,e.MUX_ERROR=`muxError`,e.OTHER_ERROR=`otherError`,e}({}),J=function(e){return e.KEY_SYSTEM_NO_KEYS=`keySystemNoKeys`,e.KEY_SYSTEM_NO_ACCESS=`keySystemNoAccess`,e.KEY_SYSTEM_NO_SESSION=`keySystemNoSession`,e.KEY_SYSTEM_NO_CONFIGURED_LICENSE=`keySystemNoConfiguredLicense`,e.KEY_SYSTEM_LICENSE_REQUEST_FAILED=`keySystemLicenseRequestFailed`,e.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED=`keySystemServerCertificateRequestFailed`,e.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED=`keySystemServerCertificateUpdateFailed`,e.KEY_SYSTEM_SESSION_UPDATE_FAILED=`keySystemSessionUpdateFailed`,e.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED=`keySystemStatusOutputRestricted`,e.KEY_SYSTEM_STATUS_INTERNAL_ERROR=`keySystemStatusInternalError`,e.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR=`keySystemDestroyMediaKeysError`,e.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR=`keySystemDestroyCloseSessionError`,e.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR=`keySystemDestroyRemoveSessionError`,e.MANIFEST_LOAD_ERROR=`manifestLoadError`,e.MANIFEST_LOAD_TIMEOUT=`manifestLoadTimeOut`,e.MANIFEST_PARSING_ERROR=`manifestParsingError`,e.MANIFEST_INCOMPATIBLE_CODECS_ERROR=`manifestIncompatibleCodecsError`,e.LEVEL_EMPTY_ERROR=`levelEmptyError`,e.LEVEL_LOAD_ERROR=`levelLoadError`,e.LEVEL_LOAD_TIMEOUT=`levelLoadTimeOut`,e.LEVEL_PARSING_ERROR=`levelParsingError`,e.LEVEL_SWITCH_ERROR=`levelSwitchError`,e.AUDIO_TRACK_LOAD_ERROR=`audioTrackLoadError`,e.AUDIO_TRACK_LOAD_TIMEOUT=`audioTrackLoadTimeOut`,e.SUBTITLE_LOAD_ERROR=`subtitleTrackLoadError`,e.SUBTITLE_TRACK_LOAD_TIMEOUT=`subtitleTrackLoadTimeOut`,e.FRAG_LOAD_ERROR=`fragLoadError`,e.FRAG_LOAD_TIMEOUT=`fragLoadTimeOut`,e.FRAG_DECRYPT_ERROR=`fragDecryptError`,e.FRAG_PARSING_ERROR=`fragParsingError`,e.FRAG_GAP=`fragGap`,e.REMUX_ALLOC_ER
1792ROR=`remuxAllocError`,e.KEY_LOAD_ERROR=`keyLoadError`,e.KEY_LOAD_TIMEOUT=`keyLoadTimeOut`,e.BUFFER_ADD_CODEC_ERROR=`bufferAddCodecError`,e.BUFFER_INCOMPATIBLE_CODECS_ERROR=`bufferIncompatibleCodecsError`,e.BUFFER_APPEND_ERROR=`bufferAppendError`,e.BUFFER_APPENDING_ERROR=`bufferAppendingError`,e.BUFFER_STALLED_ERROR=`bufferStalledError`,e.BUFFER_FULL_ERROR=`bufferFullError`,e.BUFFER_SEEK_OVER_HOLE=`bufferSeekOverHole`,e.BUFFER_NUDGE_ON_STALL=`bufferNudgeOnStall`,e.ASSET_LIST_LOAD_ERROR=`assetListLoadError`,e.ASSET_LIST_LOAD_TIMEOUT=`assetListLoadTimeout`,e.ASSET_LIST_PARSING_ERROR=`assetListParsingError`,e.INTERSTITIAL_ASSET_ITEM_ERROR=`interstitialAssetItemError`,e.INTERNAL_EXCEPTION=`internalException`,e.INTERNAL_ABORTED=`aborted`,e.ATTACH_MEDIA_ERROR=`attachMediaError`,e.UNKNOWN=`unknown`,e}({}),Y=function(e){return e.MEDIA_ATTACHING=`hlsMediaAttaching`,e.MEDIA_ATTACHED=`hlsMediaAttached`,e.MEDIA_DETACHING=`hlsMediaDetaching`,e.MEDIA_DETACHED=`hlsMediaDetached`,e.MEDIA_ENDED=`hlsMediaEnded`,e.STALL_RESOLVED=`hlsStallResolved`,e.BUFFER_RESET=`hlsBufferReset`,e.BUFFER_CODECS=`hlsBufferCodecs`,e.BUFFER_CREATED=`hlsBufferCreated`,e.BUFFER_APPENDING=`hlsBufferAppending`,e.BUFFER_APPENDED=`hlsBufferAppended`,e.BUFFER_EOS=`hlsBufferEos`,e.BUFFERED_TO_END=`hlsBufferedToEnd`,e.BUFFER_FLUSHING=`hlsBufferFlushing`,e.BUFFER_FLUSHED=`hlsBufferFlushed`,e.MANIFEST_LOADING=`hlsManifestLoading`,e.MANIFEST_LOADED=`hlsManifestLoaded`,e.MANIFEST_PARSED=`hlsManifestParsed`,e.LEVEL_SWITCHING=`hlsLevelSwitching`,e.LEVEL_SWITCHED=`hlsLevelSwitched`,e.LEVEL_LOADING=`hlsLevelLoading`,e.LEVEL_LOADED=`hlsLevelLoaded`,e.LEVEL_UPDATED=`hlsLevelUpdated`,e.LEVEL_PTS_UPDATED=`hlsLevelPtsUpdated`,e.LEVELS_UPDATED=`hlsLevelsUpdated`,e.AUDIO_TRACKS_UPDATED=`hlsAudioTracksUpdated`,e.AUDIO_TRACK_SWITCHING=`hlsAudioTrackSwitching`,e.AUDIO_TRACK_SWITCHED=`hlsAudioTrackSwitched`,e.AUDIO_TRACK_LOADING=`hlsAudioTrackLoading`,e.AUDIO_TRACK_LOADED=`hlsAudioTrackLoaded`,e.AUDIO_TRACK_UPDATED=`hlsAudioTrackUpdated`,e.SUBTITLE_TRACKS_UPDATED=`hlsSubtitleTracksUpdated`,e.SUBTITLE_TRACKS_CLEARED=`hlsSubtitleTracksCleared`,e.SUBTITLE_TRACK_SWITCH=`hlsSubtitleTrackSwitch`,e.SUBTITLE_TRACK_LOADING=`hlsSubtitleTrackLoading`,e.SUBTITLE_TRACK_LOADED=`hlsSubtitleTrackLoaded`,e.SUBTITLE_TRACK_UPDATED=`hlsSubtitleTrackUpdated`,e.SUBTITLE_FRAG_PROCESSED=`hlsSubtitleFragProcessed`,e.CUES_PARSED=`hlsCuesParsed`,e.NON_NATIVE_TEXT_TRACKS_FOUND=`hlsNonNativeTextTracksFound`,e.INIT_PTS_FOUND=`hlsInitPtsFound`,e.FRAG_LOADING=`hlsFragLoading`,e.FRAG_LOAD_EMERGENCY_ABORTED=`hlsFragLoadEmergencyAborted`,e.FRAG_LOADED=`hlsFragLoaded`,e.FRAG_DECRYPTED=`hlsFragDecrypted`,e.FRAG_PARSING_INIT_SEGMENT=`hlsFragParsingInitSegment`,e.FRAG_PARSING_USERDATA=`hlsFragParsingUserdata`,e.FRAG_PARSING_METADATA=`hlsFragParsingMetadata`,e.FRAG_PARSED=`hlsFragParsed`,e.FRAG_BUFFERED=`hlsFragBuffered`,e.FRAG_CHANGED=`hlsFragChanged`,e.FPS_DROP=`hlsFpsDrop`,e.FPS_DROP_LEVEL_CAPPING=`hlsFpsDropLevelCapping`,e.MAX_AUTO_LEVEL_UPDATED=`hlsMaxAutoLevelUpdated`,e.ERROR=`hlsError`,e.DESTROYING=`hlsDestroying`,e.KEY_LOADING=`hlsKeyLoading`,e.KEY_LOADED=`hlsKeyLoaded`,e.LIVE_BACK_BUFFER_REACHED=`hlsLiveBackBufferReached`,e.BACK_BUFFER_REACHED=`hlsBackBufferReached`,e.STEERING_MANIFEST_LOADED=`hlsSteeringManifestLoaded`,e.ASSET_LIST_LOADING=`hlsAssetListLoading`,e.ASSET_LIST_LOADED=`hlsAssetListLoaded`,e.INTERSTITIALS_UPDATED=`hlsInterstitialsUpdated`,e.INTERSTITIALS_BUFFERED_TO_BOUNDARY=`hlsInterstitialsBufferedToBoundary`,e.INTERSTITIAL_ASSET_PLAYER_CREATED=`hlsInterstitialAssetPlayerCreated`,e.INTERSTITIAL_STARTED=`hlsInterstitialStarted`,e.INTERSTITIAL_ASSET_STARTED=`hlsInterstitialAssetStarted`,e.INTERSTITIAL_ASSET_ENDED=`hlsInterstitialAssetEnded`,e.INTERSTITIAL_ASSET_ERROR=`hlsInterstitialAssetError`,e.INTERSTITIAL_ENDED=`hlsInterstitialEnded`,e.INTERSTITIALS_PRIMARY_RESUMED=`hlsInterstitialsPrimaryResumed`,e.PLAYOUT_LIMIT_REACHED=`hlsPlayoutLimitReached`,e.EVENT_CUE_ENTER=`hlsEventCueEnter`,e}({}),HN={MANIFEST:`manifest`,LEVEL:`level`,AUDIO_TRACK:`audioTrack`,SUBTITLE_TRACK:`subtitleTrack`},UN={MAIN:`main`,AUDIO:`audio`,SUBTITLE:`subtitle`},WN=class{constructor(e,t=0,n=0){this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=e,this.alpha_=e?Math.exp(Math.log(.5)/e):0,this.estimate_=t,this.totalWeight_=n}sample(e,t){let n=this.alpha_**+e;this.estimate_=t*(1-n)+n*this.estimate_,this.totalWeight_+=e}
vendor: 21,516 bytes, line 1792
1792getTotalWeight(){return this.totalWeight_}getEstimate(){if(this.alpha_){let e=1-this.alpha_**+this.totalWeight_;if(e)return this.estimate_/e}return this.estimate_}},GN=class{constructor(e,t,n,r=100){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultTTFB_=void 0,this.ttfb_=void 0,this.defaultEstimate_=n,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new WN(e),this.fast_=new WN(t),this.defaultTTFB_=r,this.ttfb_=new WN(e)}update(e,t){let{slow_:n,fast_:r,ttfb_:i}=this;n.halfLife!==e&&(this.slow_=new WN(e,n.getEstimate(),n.getTotalWeight())),r.halfLife!==t&&(this.fast_=new WN(t,r.getEstimate(),r.getTotalWeight())),i.halfLife!==e&&(this.ttfb_=new WN(e,i.getEstimate(),i.getTotalWeight()))}sample(e,t){e=Math.max(e,this.minDelayMs_);let n=8*t,r=e/1e3,i=n/r;this.fast_.sample(r,i),this.slow_.sample(r,i)}sampleTTFB(e){let t=e/1e3,n=Math.sqrt(2)*Math.exp(-(t**2)/2);this.ttfb_.sample(n,Math.max(e,5))}canEstimate(){return this.fast_.getTotalWeight()>=this.minWeight_}getEstimate(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_}getEstimateTTFB(){return this.ttfb_.getTotalWeight()>=this.minWeight_?this.ttfb_.getEstimate():this.defaultTTFB_}get defaultEstimate(){return this.defaultEstimate_}destroy(){}};function KN(e,t,n){return(t=ZN(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qN(){return qN=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},qN.apply(null,arguments)}function JN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function YN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?JN(Object(n),!0).forEach(function(t){KN(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):JN(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function XN(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function ZN(e){var t=XN(e,`string`);return typeof t==`symbol`?t:t+``}var QN=class{constructor(e,t){this.trace=void 0,this.debug=void 0,this.log=void 0,this.warn=void 0,this.info=void 0,this.error=void 0;let n=`[${e}]:`;this.trace=$N,this.debug=t.debug.bind(null,n),this.log=t.log.bind(null,n),this.warn=t.warn.bind(null,n),this.info=t.info.bind(null,n),this.error=t.error.bind(null,n)}},$N=function(){},eP={trace:$N,debug:$N,log:$N,warn:$N,info:$N,error:$N};function tP(){return qN({},eP)}function nP(e,t){let n=self.console[e];return n?n.bind(self.console,`${t?`[`+t+`] `:``}[${e}] >`):$N}function rP(e,t,n){return t[e]?t[e].bind(t):nP(e,n)}var iP=tP();function aP(e,t,n){let r=tP();if(typeof console==`object`&&e===!0||typeof e==`object`){let i=[`debug`,`log`,`info`,`warn`,`error`];i.forEach(t=>{r[t]=rP(t,e,n)});try{r.log(`Debug logs enabled for "${t}" in hls.js version 1.6.16`)}catch{return tP()}i.forEach(t=>{iP[t]=rP(t,e)})}else qN(iP,r);return r}var oP=iP;function sP(e=!0){if(!(typeof self>`u`))return(e||!self.MediaSource)&&self.ManagedMediaSource||self.MediaSource||self.WebKitMediaSource}function cP(e){return typeof self<`u`&&e===self.ManagedMediaSource}function lP(e,t){let n=Object.keys(e),r=Object.keys(t),i=n.length,a=r.length;return!i||!a||i===a&&!n.some(e=>r.indexOf(e)===-1)}function uP(e,t=!1){if(typeof TextDecoder<`u`){let n=new TextDecoder(`utf-8`).decode(e);if(t){let e=n.indexOf(`\0`);return e===-1?n:n.substring(0,e)}return n.replace(/\0/g,``)}let n=e.length,r,i,a,o=``,s=0;for(;s<n;){if(r=e[s++],r===0&&t)return o;if(r!==0&&r!==3)switch(r>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:o+=String.fromCharCode(r);break;case 12:case 13:i=e[s++],o+=String.fromCharCode((r&31)<<6|i&63);break;case 14:i=e[s++],a=e[s++],o+=String.fromCharCode((r&15)<<12|(i&63)<<6|(a&63)<<0)}}return o}function dP(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n].toString(16);r.length<2&&(r=`0`+r),t+=r}return t}function fP(e){return Uint8Array.from(e.replace(/^0x/,``).replace(/([\da-fA-F]{2}) ?/g,`0x$1 `).replace(/ +$/,``).split(` `)).buffer}function pP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var mP={exports:{}},hP;function gP(){return hP?mP.exports:(hP=1,(function(e,t){(function(t){var n=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,r=/^(?=([^\/?#]*))\1([^]*)$/,i=/(?:\/|^)\.(?=\/)/g,a=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,o={buildAbsoluteURL:function(e,t,n){if(n||={},e=e.trim(),t=t.trim(),!t){if(!n.alwaysNormalize)return e;var i=o.parseURL(e);if(!i)throw Error(`Error trying to parse base URL.`);return i.path=o.normalizePath(i.path),o.buildURLFromParts(i)}var a=o.parseURL(t);if(!a)throw Error(`Error trying to parse relative URL.`);if(a.scheme)return n.alwaysNormalize?(a.path=o.normalizePath(a.path),o.buildURLFromParts(a)):t;var s=o.parseURL(e);if(!s)throw Error(`Error trying to parse base URL.`);if(!s.netLoc&&s.path&&s.path[0]!==`/`){var c=r.exec(s.path);s.netLoc=c[1],s.path=c[2]}s.netLoc&&!s.path&&(s.path=`/`);var l={scheme:s.scheme,netLoc:a.netLoc,path:null,params:a.params,query:a.query,fragment:a.fragment};if(!a.netLoc&&(l.netLoc=s.netLoc,a.path[0]!==`/`))if(!a.path)l.path=s.path,a.params||(l.params=s.params,a.query||(l.query=s.query));else{var u=s.path,d=u.substring(0,u.lastIndexOf(`/`)+1)+a.path;l.path=o.normalizePath(d)}return l.path===null&&(l.path=n.alwaysNormalize?o.normalizePath(a.path):a.path),o.buildURLFromParts(l)},parseURL:function(e){var t=n.exec(e);return t?{scheme:t[1]||``,netLoc:t[2]||``,path:t[3]||``,params:t[4]||``,query:t[5]||``,fragment:t[6]||``}:null},normalizePath:function(e){for(e=e.split(``).reverse().join(``).replace(i,``);e.length!==(e=e.replace(a,``)).length;);return e.split(``).reverse().join(``)},buildURLFromParts:function(e){return e.scheme+e.netLoc+e.path+e.params+e.query+e.fragment}};e.exports=o})()})(mP),mP.exports)}var _P=gP(),vP=class{constructor(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},yP={AUDIO:`audio`,VIDEO:`video`,AUDIOVIDEO:`audiovideo`},bP=class{constructor(e){this._byteRange=null,this._url=null,this._stats=null,this._streams=null,this.base=void 0,this.relurl=void 0,typeof e==`string`&&(e={url:e}),this.base=e,TP(this,`stats`)}setByteRange(e,t){let n=e.split(`@`,2),r;r=n.length===1?t?.byteRangeEndOffset||0:parseInt(n[1]),this._byteRange=[r,parseInt(n[0])+r]}get baseurl(){return this.base.url}get byteRange(){return this._byteRange===null?[]:this._byteRange}get byteRangeStartOffset(){return this.byteRange[0]}get byteRangeEndOffset(){return this.byteRange[1]}get elementaryStreams(){return this._streams===null&&(this._streams={[yP.AUDIO]:null,[yP.VIDEO]:null,[yP.AUDIOVIDEO]:null}),this._streams}set elementaryStreams(e){this._streams=e}get hasStats(){return this._stats!==null}get hasStreams(){return this._streams!==null}get stats(){return this._stats===null&&(this._stats=new vP),this._stats}set stats(e){this._stats=e}get url(){return!this._url&&this.baseurl&&this.relurl&&(this._url=_P.buildAbsoluteURL(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||``}set url(e){this._url=e}clearElementaryStreamInfo(){let{elementaryStreams:e}=this;e[yP.AUDIO]=null,e[yP.VIDEO]=null,e[yP.AUDIOVIDEO]=null}};function xP(e){return e.sn!==`initSegment`}var SP=class extends bP{constructor(e,t){super(t),this._decryptdata=null,this._programDateTime=null,this._ref=null,this._bitrate=void 0,this.rawProgramDateTime=null,this.tagList=[],this.duration=0,this.sn=0,this.levelkeys=void 0,this.type=void 0,this.loader=null,this.keyLoader=null,this.level=-1,this.cc=0,this.startPTS=void 0,this.endPTS=void 0,this.startDTS=void 0,this.endDTS=void 0,this.start=0,this.playlistOffset=0,this.deltaPTS=void 0,this.maxStartPTS=void 0,this.minEndPTS=void 0,this.data=void 0,this.bitrateTest=!1,this.title=null,this.initSegment=null,this.endList=void 0,this.gap=void 0,this.urlId=0,this.type=e}get byteLength(){if(this.hasStats){let e=this.stats.total;if(e)return e}if(this.byteRange.length){let e=this.byteRange[0],t=this.byteRange[1];if(q(e)&&q(t))return t-e}return null}get bitrate(){return this.byteLength?this.byteLength*8/this.duration:this._bitrate?this._bitrate:null}set bitrate(e){this._bitrate=e}get decryptdata(){var e;let{levelkeys:t}=this;if(!t||t.NONE)return null;if(t.identity)this._decryptdata||=t.identity.getDecryptData(this.sn);else if(!((e=this._decryptdata)!=null&&e.keyId)){let e=Object.keys(t);if(e.length===1){let n=this._decryptdata=t[e[0]]||null;n&&(this._decryptdata=n.getDecryptData(this.sn,t))}}return this._decryptdata}get end(){return this.start+this.duration}get endProgramDateTime(){if(this.programDateTime===null)return null;let e=q(this.duration)?this.duration:0;return this.programDateTime+e*1e3}get encrypted(){var e;if((e=this._decryptdata)!=null&&e.encrypted)return!0;if(this.levelkeys){var t;let e=Object.keys(this.levelkeys),n=e.length;if(n>1||n===1&&(t=this.levelkeys[e[0]])!=null&&t.encrypted)return!0}return!1}get programDateTime(){return this._programDateTime===null&&this.rawProgramDateTime&&(this.programDateTime=Date.parse(this.rawProgramDateTime)),this._programDateTime}set programDateTime(e){if(!q(e)){this._programDateTime=this.rawProgramDateTime=null;return}this._programDateTime=e}get ref(){return xP(this)?(this._ref||={base:this.base,start:this.start,duration:this.duration,sn:this.sn,programDateTime:this.programDateTime},this._ref):null}addStart(e){this.setStart(this.start+e)}setStart(e){this.start=e,this._ref&&(this._ref.start=e)}setDuration(e){this.duration=e,this._ref&&(this._ref.duration=e)}setKeyFormat(e){let t=this.levelkeys;if(t){var n;let r=t[e];r&&!((n=this._decryptdata)!=null&&n.keyId)&&(this._decryptdata=r.getDecryptData(this.sn,t))}}abortRequests(){var e,t;(e=this.loader)==null||e.abort(),(t=this.keyLoader)==null||t.abort()}setElementaryStreamInfo(e,t,n,r,i,a=!1){let{elementaryStreams:o}=this,s=o[e];if(!s){o[e]={startPTS:t,endPTS:n,startDTS:r,endDTS:i,partial:a};return}s.startPTS=Math.min(s.startPTS,t),s.endPTS=Math.max(s.endPTS,n),s.startDTS=Math.min(s.startDTS,r),s.endDTS=Math.max(s.endDTS,i)}},CP=class extends bP{constructor(e,t,n,r,i){super(n),this.fragOffset=0,this.duration=0,this.gap=!1,this.independent=!1,this.relurl=void 0,this.fragment=void 0,this.index=void 0,this.duration=e.decimalFloatingPoint(`DURATION`),this.gap=e.bool(`GAP`),this.independent=e.bool(`INDEPENDENT`),this.relurl=e.enumeratedString(`URI`),this.fragment=t,this.index=r;let a=e.enumeratedString(`BYTERANGE`);a&&this.setByteRange(a,i),i&&(this.fragOffset=i.fragOffset+i.duration)}get start(){return this.fragment.start+this.fragOffset}get end(){return this.start+this.duration}get loaded(){let{elementaryStreams:e}=this;return!!(e.audio||e.video||e.audiovideo)}};function wP(e,t){let n=Object.getPrototypeOf(e);if(n)return Object.getOwnPropertyDescriptor(n,t)||wP(n,t)}function TP(e,t){let n=wP(e,t);n&&(n.enumerable=!0,Object.defineProperty(e,t,n))}var EP=2**32-1,DP=[].push,OP={video:1,audio:2,id3:3,text:4};function kP(e){return String.fromCharCode.apply(null,e)}function AP(e,t){let n=e[t]<<8|e[t+1];return n<0?65536+n:n}function jP(e,t){let n=NP(e,t);return n<0?4294967296+n:n}function MP(e,t){let n=jP(e,t);return n*=2**32,n+=jP(e,t+4),n}function NP(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function PP(e){let t=e.byteLength;for(let n=0;n<t;){let r=jP(e,n);if(r>8&&e[n+4]===109&&e[n+5]===111&&e[n+6]===111&&e[n+7]===102)return!0;n=r>1?n+r:t}return!1}function FP(e,t){let n=[];if(!t.length)return n;let r=e.byteLength;for(let i=0;i<r;){let a=jP(e,i),o=kP(e.subarray(i+4,i+8)),s=a>1?i+a:r;if(o===t[0])if(t.length===1)n.push(e.subarray(i+8,s));else{let r=FP(e.subarray(i+8,s),t.slice(1));r.length&&DP.apply(n,r)}i=s}return n}function IP(e){let t=[],n=e[0],r=8,i=jP(e,r);r+=4;let a=0,o=0;n===0?(a=jP(e,r),o=jP(e,r+4),r+=8):(a=MP(e,r),o=MP(e,r+8),r+=16),r+=2;let s=e.length+o,c=AP(e,r);r+=2;for(let n=0;n<c;n++){let n=r,a=jP(e,n);n+=4;let o=a&2147483647;if((a&2147483648)>>>31==1)return oP.warn(`SIDX has hierarchical references (not supported)`),null;let c=jP(e,n);n+=4,t.push({referenceSize:o,subsegmentDuration:c,info:{duration:c/i,start:s,end:s+o-1}}),s+=o,n+=4,r=n}return{earliestPresentationTime:a,timescale:i,version:n,referencesCount:c,references:t}}function LP(e){let t=[],n=FP(e,[`moov`,`trak`]);for(let e=0;e<n.length;e++){let r=n[e],i=FP(r,[`tkhd`])[0];if(i){let e=i[0],n=jP(i,e===0?12:20),a=FP(r,[`mdia`,`mdhd`])[0];if(a){e=a[0];let i=jP(a,e===0?12:20),o=FP(r,[`mdia`,`hdlr`])[0];if(o){let e=kP(o.subarray(8,12)),a={soun:yP.AUDIO,vide:yP.VIDEO}[e],s=FP(r,[`mdia`,`minf`,`stbl`,`stsd`])[0],c=RP(s);a?(t[n]={timescale:i,type:a,stsd:c},t[a]=YN({timescale:i,id:n},c)):t[n]={timescale:i,type:e,stsd:c}}}}}return FP(e,[`moov`,`mvex`,`trex`]).forEach(e=>{let n=jP(e,4),r=t[n];r&&(r.default={duration:jP(e,12),flags:jP(e,20)})}),t}function RP(e){let t=e.subarray(8),n=t.subarray(86),r=kP(t.subarray(4,8)),i=r,a,o=r===`enca`||r===`encv`;o&&FP(FP(t,[r])[0].subarray(r===`enca`?28:78),[`sinf`]).forEach(e=>{let t=FP(e,[`schm`])[0];if(t){let n=kP(t.subarray(4,8));if(n===`cbcs`||n===`cenc`){let t=FP(e,[`frma`])[0];t&&(i=kP(t))}}});let s=i;switch(i){case`avc1`:case`avc2`:case`avc3`:case`avc4`:{let e=FP(n,[`avcC`])[0];e&&e.length>3&&(i+=`.`+HP(e[1])+HP(e[2])+HP(e[3]),a=zP(s===`avc1`?`dva1`:`dvav`,n));break}case`mp4a`:{let e=FP(t,[r])[0],n=FP(e.subarray(28),[`esds`])[0];if(n&&n.length>7){let e=4;if(n[e++]!==3)break;e=VP(n,e),e+=2;let t=n[e++];if(t&128&&(e+=2),t&64&&(e+=n[e++]),n[e++]!==4)break;e=VP(n,e);let r=n[e++];if(r===64)i+=`.`+HP(r);else break;if(e+=12,n[e++]!==5)break;e=VP(n,e);let a=n[e++],o=(a&248)>>3;o===31&&(o+=1+((a&7)<<3)+((n[e]&224)>>5)),i+=`.`+o}break}case`hvc1`:case`hev1`:{let e=FP(n,[`hvcC`])[0];if(e&&e.length>12){let t=e[1],n=[``,`A`,`B`,`C`][t>>6],r=t&31,a=jP(e,2),o=(t&32)>>5?`H`:`L`,s=e[12],c=e.subarray(6,12);i+=`.`+n+r,i+=`.`+BP(a).toString(16).toUpperCase(),i+=`.`+o+s;let l=``;for(let e=c.length;e--;){let t=c[e];(t||l)&&(l=`.`+t.toString(16).toUpperCase()+l)}i+=l}a=zP(s==`hev1`?`dvhe`:`dvh1`,n);break}case`dvh1`:case`dvhe`:case`dvav`:case`dva1`:case`dav1`:i=zP(i,n)||i;break;case`vp09`:{let e=FP(n,[`vpcC`])[0];if(e&&e.length>6){let t=e[4],n=e[5],r=e[6]>>4&15;i+=`.`+UP(t)+`.`+UP(n)+`.`+UP(r)}break}case`av01`:{let e=FP(n,[`av1C`])[0];if(e&&e.length>2){let t=e[1]>>>5,r=e[1]&31,o=e[2]>>>7?`H`:`M`,s=(e[2]&64)>>6,c=(e[2]&32)>>5,l=t===2&&s?c?12:10:s?10:8,u=(e[2]&16)>>4,d=(e[2]&8)>>3,f=(e[2]&4)>>2,p=e[2]&3;i+=`.`+t+`.`+UP(r)+o+`.`+UP(l)+`.`+u+`.`+d+f+p+`.`+UP(1)+`.`+UP(1)+`.`+UP(1)+`.0`,a=zP(`dav1`,n)}break}}return{codec:i,encrypted:o,supplemental:a}}function zP(e,t){let n=FP(t,[`dvvC`]),r=n.length?n[0]:FP(t,[`dvcC`])[0];if(r){let t=r[2]>>1&127,n=r[2]<<5&32|r[3]>>3&31;return e+`.`+UP(t)+`.`+UP(n)}}function BP(e){let t=0;for(let n=0;n<32;n++)t|=(e>>n&1)<<31-n;return t>>>0}function VP(e,t){let n=t+5;for(;e[t++]&128&&t<n;);return t}function HP(e){return(`0`+e.toString(16).toUpperCase()).slice(-2)}function UP(e){return(e<10?`0`:``)+e}function WP(e,t){if(!e||!t)return;let n=t.keyId;n&&t.isCommonEncryption&&KP(e,(e,t)=>{let r=e.subarray(8,24);r.some(e=>e!==0)||(oP.log(`[eme] Patching keyId in 'enc${t?`a`:`v`}>sinf>>tenc' box: ${dP(r)} -> ${dP(n)}`),e.set(n,8))})}function GP(e){let t=[];return KP(e,e=>t.push(e.subarray(8,24))),t}function KP(e,t){FP(e,[`moov`,`trak`]).forEach(e=>{let n=FP(e,[`mdia`,`minf`,`stbl`,`stsd`])[0];if(!n)return;let r=n.subarray(8),i=FP(r,[`enca`]),a=i.length>0;a||(i=FP(r,[`encv`])),i.forEach(e=>{FP(a?e.subarray(28):e.subarray(78),[`sinf`]).forEach(e=>{let n=qP(e);n&&t(n,a)})})})}function qP(e){let t=FP(e,[`schm`])[0];if(t){let n=kP(t.subarray(4,8));if(n===`cbcs`||n===`cenc`){let t=FP(e,[`schi`,`tenc`])[0];if(t)return t}}}function JP(e,t,n){let r={},i=FP(e,[`moof`,`traf`]);for(let e=0;e<i.length;e++){let a=i[e],o=FP(a,[`tfhd`])[0],s=jP(o,4),c=t[s];if(!c)continue;r[s]||(r[s]={start:NaN,duration:0,sampleCount:0,timescale:c.timescale,type:c.type});let l=r[s],u=FP(a,[`tfdt`])[0];if(u){let e=u[0],t=jP(u,4);e===1&&(t===EP?n.warn(`[mp4-demuxer]: Ignoring assumed invalid signed 64-bit track fragment decode time`):(t*=EP+1,t+=jP(u,8))),q(t)&&(!q(l.start)||t<l.start)&&(l.start=t)}let d=c.default,f=jP(o,0)|d?.flags,p=d?.duration||0;f&8&&(p=f&2?jP(o,12):jP(o,8));let m=FP(a,[`trun`]),h=l.start||0,g=0,_=p;for(let e=0;e<m.length;e++){let t=m[e],n=jP(t,4),r=l.sampleCount;l.sampleCount+=n;let i=t[3]&1,a=t[3]&4,o=t[2]&1,s=t[2]&2,c=t[2]&4,u=t[2]&8,d=8,f=n;for(i&&(d+=4),a&&n&&(!(t[d+1]&1)&&l.keyFrameIndex===void 0&&(l.keyFrameIndex=r),d+=4,o?(_=jP(t,d),d+=4):_=p,s&&(d+=4),u&&(d+=4),h+=_,g+=_,f--);f--;)o?(_=jP(t,d),d+=4):_=p,s&&(d+=4),c&&(t[d+1]&1||l.keyFrameIndex===void 0&&(l.keyFrameIndex=l.sampleCount-(f+1),l.keyFrameStart=h),d+=4),u&&(d+=4),h+=_,g+=_;!g&&p&&(g+=p*n)}l.duration+=g}if(!Object.keys(r).some(e=>r[e].duration)){let t=1/0,n=0,i=FP(e,[`sidx`]);for(let e=0;e<i.length;e++){let r=IP(i[e]);if(r!=null&&r.references){t=Math.min(t,r.earliestPresentationTime/r.timescale);let e=r.references.reduce((e,t)=>e+t.info.duration||0,0);n=Math.max(n,e+r.earliestPresentationTime/r.timescale)}}n&&q(n)&&Object.keys(r).forEach(e=>{r[e].duration||(r[e].duration=n*r[e].timescale-r[e].start)})}return r}function YP(e){let t={valid:null,remainder:null},n=FP(e,[`moof`]);if(n.length<2)return t.remainder=e,t;let r=n[n.length-1];return t.valid=e.slice(0,r.byteOffset-8),t.remainder=e.slice(r.byteOffset-8),t}function XP(e,t){let n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}function ZP(e,t){let n=[],r=t.samples,i=t.timescale,a=t.id,o=!1;return FP(r,[`moof`]).map(s=>{let c=s.byteOffset-8;FP(s,[`traf`]).map(s=>{let l=FP(s,[`tfdt`]).map(e=>{let t=e[0],n=jP(e,4);return t===1&&(n*=2**32,n+=jP(e,8)),n/i})[0];return l!==void 0&&(e=l),FP(s,[`tfhd`]).map(l=>{let u=jP(l,4),d=jP(l,0)&16777215,f=!!(d&1),p=!!(d&2),m=!!(d&8),h=0,g=!!(d&16),_=0,v=!!(d&32),y=8;u===a&&(f&&(y+=8),p&&(y+=4),m&&(h=jP(l,y),y+=4),g&&(_=jP(l,y),y+=4),v&&(y+=4),t.type===`video`&&(o=QP(t.codec)),FP(s,[`trun`]).map(a=>{let s=a[0],l=jP(a,0)&16777215,u=!!(l&1),d=0,f=!!(l&4),p=!!(l&256),m=0,g=!!(l&512),v=0,y=!!(l&1024),b=!!(l&2048),x=0,S=jP(a,4),ee=8;u&&(d=jP(a,ee),ee+=4),f&&(ee+=4);let te=d+c;for(let c=0;c<S;c++){if(p?(m=jP(a,ee),ee+=4):m=h,g?(v=jP(a,ee),ee+=4):v=_,y&&(ee+=4),b&&(x=s===0?jP(a,ee):NP(a,ee),ee+=4),t.type===yP.VIDEO){let t=0;for(;t<v;){let a=jP(r,te);te+=4,$P(o,r[te])&&eF(r.subarray(te,te+a),o?2:1,e+x/i,n),te+=a,t+=a+4}}e+=m/i}}))})})}),n}function QP(e){if(!e)return!1;let t=e.substring(0,4);return t===`hvc1`||t===`hev1`||t===`dvh1`||t===`dvhe`}function $P(e,t){if(e){let e=t>>1&63;return e===39||e===40}return(t&31)==6}function eF(e,t,n,r){let i=tF(e),a=0;a+=t;let o=0,s=0,c=0;for(;a<i.length;){o=0;do{if(a>=i.length)break;c=i[a++],o+=c}while(c===255);s=0;do{if(a>=i.length)break;c=i[a++],s+=c}while(c===255);let e=i.length-a,t=a;if(s<e)a+=s;else if(s>e){oP.error(`Malformed SEI payload. ${s} is too small, only ${e} bytes left to parse.`);break}if(o===4){if(i[t++]===181){let e=AP(i,t);if(t+=2,e===49){let e=jP(i,t);if(t+=4,e===1195456820){let e=i[t++];if(e===3){let a=i[t++],s=31&a,c=64&a,l=c?2+s*3:0,u=new Uint8Array(l);if(c){u[0]=a;for(let e=1;e<l;e++)u[e]=i[t++]}r.push({type:e,payloadType:o,pts:n,bytes:u})}}}}}else if(o===5&&s>16){let e=[];for(let n=0;n<16;n++){let r=i[t++].toString(16);e.push(r.length==1?`0`+r:r),(n===3||n===5||n===7||n===9)&&e.push(`-`)}let a=s-16,c=new Uint8Array(a);for(let e=0;e<a;e++)c[e]=i[t++];r.push({payloadType:o,pts:n,uuid:e.join(``),userData:uP(c),userDataBytes:c})}}}function tF(e){let t=e.byteLength,n=[],r=1;for(;r<t-2;)e[r]===0&&e[r+1]===0&&e[r+2]===3?(n.push(r+2),r+=2):r++;if(n.length===0)return e;let i=t-n.length,a=new Uint8Array(i),o=0;for(r=0;r<i;o++,r++)o===n[0]&&(o++,n.shift()),a[r]=e[o];return a}function nF(e){let t=e[0],n=``,r=``,i=0,a=0,o=0,s=0,c=0,l=0;if(t===0){for(;kP(e.subarray(l,l+1))!==`\0`;)n+=kP(e.subarray(l,l+1)),l+=1;for(n+=kP(e.subarray(l,l+1)),l+=1;kP(e.subarray(l,l+1))!==`\0`;)r+=kP(e.subarray(l,l+1)),l+=1;r+=kP(e.subarray(l,l+1)),l+=1,i=jP(e,12),a=jP(e,16),s=jP(e,20),c=jP(e,24),l=28}else if(t===1){l+=4,i=jP(e,l),l+=4;let t=jP(e,l);l+=4;let a=jP(e,l);for(l+=4,o=2**32*t+a,zN(o)||(o=2**53-1,oP.warn(`Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box`)),s=jP(e,l),l+=4,c=jP(e,l),l+=4;kP(e.subarray(l,l+1))!==`\0`;)n+=kP(e.subarray(l,l+1)),l+=1;for(n+=kP(e.subarray(l,l+1)),l+=1;kP(e.subarray(l,l+1))!==`\0`;)r+=kP(e.subarray(l,l+1)),l+=1;r+=kP(e.subarray(l,l+1)),l+=1}let u=e.subarray(l,e.byteLength);return{schemeIdUri:n,value:r,timeScale:i,presentationTime:o,presentationTimeDelta:a,eventDuration:s,id:c,payload:u}}function rF(e,...t){let n=t.length,r=8,i=n;for(;i--;)r+=t[i].byteLength;let a=new Uint8Array(r);for(a[0]=r>>24&255,a[1]=r>>16&255,a[2]=r>>8&255,a[3]=r&255,a.set(e,4),i=0,r=8;i<n;i++)a.set(t[i],r),r+=t[i].byteLength;return a}
1792function iF(e,t,n){if(e.byteLength!==16)throw RangeError(`Invalid system id`);let r,i;r=0,i=new Uint8Array;let a;r>0?(a=new Uint8Array(4),t.length>0&&new DataView(a.buffer).setUint32(0,t.length,!1)):a=new Uint8Array;let o=new Uint8Array(4);return n.byteLength>0&&new DataView(o.buffer).setUint32(0,n.byteLength,!1),rF([112,115,115,104],new Uint8Array([r,0,0,0]),e,a,i,o,n)}function aF(e){let t=[];if(e instanceof ArrayBuffer){let n=e.byteLength,r=0;for(;r+32<n;){let n=oF(new DataView(e,r));t.push(n),r+=n.size}}return t}function oF(e){let t=e.getUint32(0),n=e.byteOffset,r=e.byteLength;if(r<t)return{offset:n,size:r};if(e.getUint32(4)!==1886614376)return{offset:n,size:t};let i=e.getUint32(8)>>>24;if(i!==0&&i!==1)return{offset:n,size:t};let a=e.buffer,o=dP(new Uint8Array(a,n+12,16)),s=null,c=null,l=0;if(i===0)l=28;else{let i=e.getUint32(28);if(!i||r<32+i*16)return{offset:n,size:t};s=[];for(let e=0;e<i;e++)s.push(new Uint8Array(a,n+32+e*16,16));l=32+i*16}if(!l)return{offset:n,size:t};let u=e.getUint32(l);return t-32<u?{offset:n,size:t}:(c=new Uint8Array(a,n+l+4,u),{version:i,systemId:o,kids:s,data:c,offset:n,size:t})}var sF=()=>/\(Windows.+Firefox\//i.test(navigator.userAgent),cF={audio:{a3ds:1,"ac-3":.95,"ac-4":1,alac:.9,alaw:1,dra1:1,"dts+":1,"dts-":1,dtsc:1,dtse:1,dtsh:1,"ec-3":.9,enca:1,fLaC:.9,flac:.9,FLAC:.9,g719:1,g726:1,m4ae:1,mha1:1,mha2:1,mhm1:1,mhm2:1,mlpa:1,mp4a:1,"raw ":1,Opus:1,opus:1,samr:1,sawb:1,sawp:1,sevc:1,sqcp:1,ssmv:1,twos:1,ulaw:1},video:{avc1:1,avc2:1,avc3:1,avc4:1,avcp:1,av01:.8,dav1:.8,drac:1,dva1:1,dvav:1,dvh1:.7,dvhe:.7,encv:1,hev1:.75,hvc1:.75,mjp2:1,mp4v:1,mvc1:1,mvc2:1,mvc3:1,mvc4:1,resv:1,rv60:1,s263:1,svc1:1,svc2:1,"vc-1":1,vp08:1,vp09:.9},text:{stpp:1,wvtt:1}};function lF(e,t){let n=cF[t];return!!n&&!!n[e.slice(0,4)]}function uF(e,t,n=!0){return!e.split(`,`).some(e=>!dF(e,t,n))}function dF(e,t,n=!0){return sP(n)?.isTypeSupported(fF(e,t))??!1}function fF(e,t){return`${t}/mp4;codecs=${e}`}function pF(e){if(e){let t=e.substring(0,4);return cF.video[t]}return 2}function mF(e){let t=sF();return e.split(`,`).reduce((e,n)=>{let r=t&&QP(n)?9:cF.video[n];return r?(r*2+e)/(e?3:2):(cF.audio[n]+e)/(e?2:1)},0)}var hF={};function gF(e,t=!0){if(hF[e])return hF[e];let n={flac:[`flac`,`fLaC`,`FLAC`],opus:[`opus`,`Opus`],"mp4a.40.34":[`mp3`]}[e];for(let i=0;i<n.length;i++){var r;if(dF(n[i],`audio`,t))return hF[e]=n[i],n[i];if(n[i]===`mp3`&&(r=sP(t))!=null&&r.isTypeSupported(`audio/mpeg`))return``}return e}var _F=/flac|opus|mp4a\.40\.34/i;function vF(e,t=!0){return e.replace(_F,e=>gF(e.toLowerCase(),t))}function yF(e,t){let n=[];if(e){let t=e.split(`,`);for(let e=0;e<t.length;e++)lF(t[e],`video`)||n.push(t[e])}return t&&n.push(t),n.join(`,`)}function bF(e,t){if(e&&(e.length>4||[`ac-3`,`ec-3`,`alac`,`fLaC`,`Opus`].indexOf(e)!==-1)&&(xF(e,`audio`)||xF(e,`video`)))return e;if(t){let n=t.split(`,`);if(n.length>1){if(e){for(let t=n.length;t--;)if(n[t].substring(0,4)===e.substring(0,4))return n[t]}return n[0]}}return t||e}function xF(e,t){return lF(e,t)&&dF(e,t)}function SF(e){let t=e.split(`,`);for(let e=0;e<t.length;e++){let n=t[e].split(`.`);n.length>2&&n[0]===`avc1`&&(t[e]=`avc1.${parseInt(n[1]).toString(16)}${(`000`+parseInt(n[2]).toString(16)).slice(-4)}`)}return t.join(`,`)}function CF(e){if(e.startsWith(`av01.`)){let t=e.split(`.`),n=[`0`,`111`,`01`,`01`,`01`,`0`];for(let e=t.length;e>4&&e<10;e++)t[e]=n[e-4];return t.join(`.`)}return e}function wF(e){let t=sP(e)||{isTypeSupported:()=>!1};return{mpeg:t.isTypeSupported(`audio/mpeg`),mp3:t.isTypeSupported(`audio/mp4; codecs="mp3"`),ac3:t.isTypeSupported(`audio/mp4; codecs="ac-3"`)}}function TF(e){return e.replace(/^.+codecs=["']?([^"']+).*$/,`$1`)}var EF={supported:!0,powerEfficient:!0,smooth:!0},DF={supported:!1,smooth:!1,powerEfficient:!1},OF={supported:!0,configurations:[],decodingInfoResults:[EF]};function kF(e,t){return{supported:!1,configurations:t,decodingInfoResults:[DF],error:e}}function AF(e,t,n,r,i,a){let o=e.videoCodec,s=e.audioCodec?e.audioGroups:null,c=a?.audioCodec,l=a?.channels,u=l?parseInt(l):c?1/0:2,d=null;if(s!=null&&s.length)try{d=s.length===1&&s[0]?t.groups[s[0]].channels:s.reduce((e,n)=>{if(n){let r=t.groups[n];if(!r)throw Error(`Audio track group ${n} not found`);
vendor: 18,768 bytes, lines 1792-1802
1792Object.keys(r.channels).forEach(t=>{e[t]=(e[t]||0)+r.channels[t]})}return e},{2:0})}catch{return!0}return o!==void 0&&(o.split(`,`).some(e=>QP(e))||e.width>1920&&e.height>1088||e.height>1920&&e.width>1088||e.frameRate>Math.max(r,30)||e.videoRange!==`SDR`&&e.videoRange!==n||e.bitrate>Math.max(i,8e6))||!!d&&q(u)&&Object.keys(d).some(e=>parseInt(e)>u)}function jF(e,t,n,r={}){let i=e.videoCodec;if(!i&&!e.audioCodec||!n)return Promise.resolve(OF);let a=[],o=MF(e),s=o.length,c=NF(e,t,s>0),l=c.length;for(let e=s||1*l||1;e--;){let t={type:`media-source`};if(s&&(t.video=o[e%s]),l){t.audio=c[e%l];let n=t.audio.bitrate;t.video&&n&&(t.video.bitrate-=n)}a.push(t)}if(i){let e=navigator.userAgent;if(i.split(`,`).some(e=>QP(e))&&sF())return Promise.resolve(kF(Error(`Overriding Windows Firefox HEVC MediaCapabilities result based on user-agent string: (${e})`),a))}return Promise.all(a.map(e=>{let t=IF(e);return r[t]||(r[t]=n.decodingInfo(e))})).then(e=>({supported:!e.some(e=>!e.supported),configurations:a,decodingInfoResults:e})).catch(e=>({supported:!1,configurations:a,decodingInfoResults:[],error:e}))}function MF(e){let t=e.videoCodec?.split(`,`),n=FF(e),r=e.width||640,i=e.height||480,a=e.frameRate||30,o=e.videoRange.toLowerCase();return t?t.map(e=>{let t={contentType:fF(CF(e),`video`),width:r,height:i,bitrate:n,framerate:a};return o!==`sdr`&&(t.transferFunction=o),t}):[]}function NF(e,t,n){let r=e.audioCodec?.split(`,`),i=FF(e);return r&&e.audioGroups?e.audioGroups.reduce((e,a)=>{let o=a?t.groups[a]?.tracks:null;return o?o.reduce((e,t)=>{if(t.groupId===a){let a=parseFloat(t.channels||``);r.forEach(t=>{let r={contentType:fF(t,`audio`),bitrate:n?PF(t,i):i};a&&(r.channels=``+a),e.push(r)})}return e},e):e},[]):[]}function PF(e,t){if(t<=1)return 1;let n=128e3;return e===`ec-3`?n=768e3:e===`ac-3`&&(n=64e4),Math.min(t/2,n)}function FF(e){return Math.ceil(Math.max(e.bitrate*.9,e.averageBitrate)/1e3)*1e3||1}function IF(e){let t=``,{audio:n,video:r}=e;if(r){let e=TF(r.contentType);t+=`${e}_r${r.height}x${r.width}f${Math.ceil(r.framerate)}${r.transferFunction||`sd`}_${Math.ceil(r.bitrate/1e5)}`}if(n){let e=TF(n.contentType);t+=`${r?`_`:``}${e}_c${n.channels}`}return t}var LF=[`NONE`,`TYPE-0`,`TYPE-1`,null];function RF(e){return LF.indexOf(e)>-1}var zF=[`SDR`,`PQ`,`HLG`];function BF(e){return!!e&&zF.indexOf(e)>-1}var VF={No:``,Yes:`YES`,v2:`v2`};function HF(e){let{canSkipUntil:t,canSkipDateRanges:n,age:r}=e,i=r<t/2;return t&&i?n?VF.v2:VF.Yes:VF.No}var UF=class{constructor(e,t,n){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=e,this.part=t,this.skip=n}addDirectives(e){let t=new self.URL(e);return this.msn!==void 0&&t.searchParams.set(`_HLS_msn`,this.msn.toString()),this.part!==void 0&&t.searchParams.set(`_HLS_part`,this.part.toString()),this.skip&&t.searchParams.set(`_HLS_skip`,this.skip),t.href}},WF=class{constructor(e){if(this._attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.url=void 0,this.frameRate=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.supplemental=void 0,this.videoCodec=void 0,this.width=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.supportedPromise=void 0,this.supportedResult=void 0,this._avgBitrate=0,this._audioGroups=void 0,this._subtitleGroups=void 0,this._urlId=0,this.url=[e.url],this._attrs=[e.attrs],this.bitrate=e.bitrate,e.details&&(this.details=e.details),this.id=e.id||0,this.name=e.name,this.width=e.width||0,this.height=e.height||0,this.frameRate=e.attrs.optionalFloat(`FRAME-RATE`,0),this._avgBitrate=e.attrs.decimalInteger(`AVERAGE-BANDWIDTH`),this.audioCodec=e.audioCodec,this.videoCodec=e.videoCodec,this.codecSet=[e.videoCodec,e.audioCodec].filter(e=>!!e).map(e=>e.substring(0,4)).join(`,`),`supplemental`in e){this.supplemental=e.supplemental;let t=e.supplemental?.videoCodec;t&&t!==e.videoCodec&&(this.codecSet+=`,${t.substring(0,4)}`)}this.addGroupId(`audio`,e.attrs.AUDIO),this.addGroupId(`text`,e.attrs.SUBTITLES)}get maxBitrate(){return Math.max(this.realBitrate,this.bitrate)}get averageBitrate(){return this._avgBitrate||this.realBitrate||this.bitrate}get attrs(){return this._attrs[0]}get codecs(){return this.attrs.CODECS||``}get pathwayId(){return this.attrs[`PATHWAY-ID`]||`.`}get videoRange(){return this.attrs[`VIDEO-RANGE`]||`SDR`}get score(){return this.attrs.optionalFloat(`SCORE`,0)}get uri(){return this.url[0]||``}hasAudioGroup(e){return GF(this._audioGroups,e)}hasSubtitleGroup(e){return GF(this._subtitleGroups,e)}get audioGroups(){return this._audioGroups}get subtitleGroups(){return this._subtitleGroups}addGroupId(e,t){if(t){if(e===`audio`){let e=this._audioGroups;e||=this._audioGroups=[],e.indexOf(t)===-1&&e.push(t)}else if(e===`text`){let e=this._subtitleGroups;e||=this._subtitleGroups=[],e.indexOf(t)===-1&&e.push(t)}}}get urlId(){return 0}set urlId(e){}get audioGroupIds(){return this.audioGroups?[this.audioGroupId]:void 0}get textGroupIds(){return this.subtitleGroups?[this.textGroupId]:void 0}get audioGroupId(){return this.audioGroups?.[0]}get textGroupId(){return this.subtitleGroups?.[0]}addFallback(){}};function GF(e,t){return!t||!e?!1:e.indexOf(t)!==-1}function KF(){if(typeof matchMedia==`function`){let e=matchMedia(`(dynamic-range: high)`),t=matchMedia(`bad query`);if(e.media!==t.media)return e.matches===!0}return!1}function qF(e,t){let n=!1,r=[];if(e&&(n=e!==`SDR`,r=[e]),t){r=t.allowedVideoRanges||zF.slice(0);let e=r.join(``)!==`SDR`&&!t.videoCodec;n=t.preferHDR===void 0?e&&KF():t.preferHDR,n||(r=[`SDR`])}return{preferHDR:n,allowedVideoRanges:r}}var JF=e=>{let t=new WeakSet;return(n,r)=>{if(e&&(r=e(n,r)),typeof r==`object`&&r){if(t.has(r))return;t.add(r)}return r}},YF=(e,t)=>JSON.stringify(e,JF(t));function XF(e,t,n,r,i){let a=Object.keys(e),o=r?.channels,s=r?.audioCodec,c=i?.videoCodec,l=o&&parseInt(o)===2,u=!1,d=!1,f=1/0,p=1/0,m=1/0,h=1/0,g=0,_=[],{preferHDR:v,allowedVideoRanges:y}=qF(t,i);for(let t=a.length;t--;){let n=e[a[t]];u||=n.channels[2]>0,f=Math.min(f,n.minHeight),p=Math.min(p,n.minFramerate),m=Math.min(m,n.minBitrate),y.filter(e=>n.videoRanges[e]>0).length>0&&(d=!0)}f=q(f)?f:0,p=q(p)?p:0;let b=Math.max(1080,f),x=Math.max(30,p);m=q(m)?m:n,n=Math.max(m,n),d||(t=void 0);let S=a.length>1;return{codecSet:a.reduce((t,r)=>{let i=e[r];if(r===t)return t;if(_=d?y.filter(e=>i.videoRanges[e]>0):[],S){if(i.minBitrate>n)return ZF(r,`min bitrate of ${i.minBitrate} > current estimate of ${n}`),t;if(!i.hasDefaultAudio)return ZF(r,`no renditions with default or auto-select sound found`),t;if(s&&r.indexOf(s.substring(0,4))%5!=0)return ZF(r,`audio codec preference "${s}" not found`),t;if(o&&!l){if(!i.channels[o])return ZF(r,`no renditions with ${o} channel sound found (channels options: ${Object.keys(i.channels)})`),t}else if((!s||l)&&u&&i.channels[2]===0)return ZF(r,`no renditions with stereo sound found`),t;if(i.minHeight>b)return ZF(r,`min resolution of ${i.minHeight} > maximum of ${b}`),t;if(i.minFramerate>x)return ZF(r,`min framerate of ${i.minFramerate} > maximum of ${x}`),t;if(!_.some(e=>i.videoRanges[e]>0))return ZF(r,`no variants with VIDEO-RANGE of ${YF(_)} found`),t;if(c&&r.indexOf(c.substring(0,4))%5!=0)return ZF(r,`video codec preference "${c}" not found`),t;if(i.maxScore<g)return ZF(r,`max score of ${i.maxScore} < selected max of ${g}`),t}return t&&(mF(r)>=mF(t)||i.fragmentError>e[t].fragmentError)?t:(h=i.minIndex,g=i.maxScore,r)},void 0),videoRanges:_,preferHDR:v,minFramerate:p,minBitrate:m,minIndex:h}}function ZF(e,t){oP.log(`[abr] start candidates with "${e}" ignored because ${t}`)}function QF(e){return e.reduce((e,t)=>{let n=e.groups[t.groupId];n||=e.groups[t.groupId]={tracks:[],channels:{2:0},hasDefault:!1,hasAutoSelect:!1},n.tracks.push(t);let r=t.channels||`2`;return n.channels[r]=(n.channels[r]||0)+1,n.hasDefault=n.hasDefault||t.default,n.hasAutoSelect=n.hasAutoSelect||t.autoselect,n.hasDefault&&(e.hasDefaultAudio=!0),n.hasAutoSelect&&(e.hasAutoSelectAudio=!0),e},{hasDefaultAudio:!1,hasAutoSelectAudio:!1,groups:{}})}function $F(e,t,n,r){return e.slice(n,r+1).reduce((e,n,r)=>{if(!n.codecSet)return e;let i=n.audioGroups,a=e[n.codecSet];a||(e[n.codecSet]=a={minBitrate:1/0,minHeight:1/0,minFramerate:1/0,minIndex:r,maxScore:0,videoRanges:{SDR:0},channels:{2:0},hasDefaultAudio:!i,fragmentError:0}),a.minBitrate=Math.min(a.minBitrate,n.bitrate);let o=Math.min(n.height,n.width);return a.minHeight=Math.min(a.minHeight,o),a.minFramerate=Math.min(a.minFramerate,n.frameRate),a.minIndex=Math.min(a.minIndex,r),a.maxScore=Math.max(a.maxScore,n.score),a.fragmentError+=n.fragmentError,a.videoRanges[n.videoRange]=(a.videoRanges[n.videoRange]||0)+1,i&&i.forEach(e=>{if(!e)return;let n=t.groups[e];n&&(a.hasDefaultAudio=a.hasDefaultAudio||t.hasDefaultAudio?n.hasDefault:n.hasAutoSelect||!t.hasDefaultAudio&&!t.hasAutoSelectAudio,Object.keys(n.channels).forEach(e=>{a.channels[e]=(a.channels[e]||0)+n.channels[e]}))}),e},{})}function eI(e){if(!e)return e;let{lang:t,assocLang:n,characteristics:r,channels:i,audioCodec:a}=e;return{lang:t,assocLang:n,characteristics:r,channels:i,audioCodec:a}}function tI(e,t,n){if(`attrs`in e){let n=t.indexOf(e);if(n!==-1)return n}for(let r=0;r<t.length;r++){let i=t[r];if(nI(e,i,n))return r}return-1}function nI(e,t,n){let{groupId:r,name:i,lang:a,assocLang:o,default:s}=e,c=e.forced;return(r===void 0||t.groupId===r)&&(i===void 0||t.name===i)&&(a===void 0||rI(a,t.lang))&&(a===void 0||t.assocLang===o)&&(s===void 0||t.default===s)&&(c===void 0||t.forced===c)&&(!(`characteristics`in e)||iI(e.characteristics||``,t.characteristics))&&(n===void 0||n(e,t))}function rI(e,t=`--`){return e.length===t.length?e===t:e.startsWith(t)||t.startsWith(e)}function iI(e,t=``){let n=e.split(`,`),r=t.split(`,`);return n.length===r.length&&!n.some(e=>r.indexOf(e)===-1)}function aI(e,t){let{audioCodec:n,channels:r}=e;return(n===void 0||(t.audioCodec||``).substring(0,4)===n.substring(0,4))&&(r===void 0||r===(t.channels||`2`))}function oI(e,t,n,r,i){let a=t[r],o=t.reduce((e,t,n)=>{let r=t.uri;return(e[r]||(e[r]=[])).push(n),e},{})[a.uri];o.length>1&&(r=Math.max.apply(Math,o));let s=a.videoRange,c=a.frameRate,l=a.codecSet.substring(0,4),u=sI(t,r,t=>{if(t.videoRange!==s||t.frameRate!==c||t.codecSet.substring(0,4)!==l)return!1;let r=t.audioGroups;return tI(e,n.filter(e=>!r||r.indexOf(e.groupId)!==-1),i)>-1});return u>-1?u:sI(t,r,t=>{let r=t.audioGroups;return tI(e,n.filter(e=>!r||r.indexOf(e.groupId)!==-1),i)>-1})}function sI(e,t,n){for(let r=t;r>-1;r--)if(n(e[r]))return r;for(let r=t+1;r<e.length;r++)if(n(e[r]))return r;return-1}function cI(e,t){return!!e&&e!==t.loadLevelObj?.uri}var lI=class extends QN{constructor(e){super(`abr`,e.logger),this.hls=void 0,this.lastLevelLoadSec=0,this.lastLoadedFragLevel=-1,this.firstSelection=-1,this._nextAutoLevel=-1,this.nextAutoLevelKey=``,this.audioTracksByGroup=null,this.codecTiers=null,this.timer=-1,this.fragCurrent=null,this.partCurrent=null,this.bitrateTestDelay=0,this.rebufferNotice=-1,this.supportedCache={},this.bwEstimator=void 0,this._abandonRulesCheck=e=>{let{fragCurrent:t,partCurrent:n,hls:r}=this,{autoLevelEnabled:i,media:a}=r;if(!t||!a)return;let o=performance.now(),s=n?n.stats:t.stats,c=n?n.duration:t.duration,l=o-s.loading.start,u=r.minAutoLevel,d=t.level,f=this._nextAutoLevel;if(s.aborted||s.loaded&&s.loaded===s.total||d<=u){this.clearTimer(),this._nextAutoLevel=-1;return}if(!i)return;let p=f>-1&&f!==d,m=!!e||p;if(!m&&(a.paused||!a.playbackRate||!a.readyState))return;let h=r.mainForwardBufferInfo;if(!m&&h===null)return;let g=this.bwEstimator.getEstimateTTFB(),_=Math.abs(a.playbackRate);if(l<=Math.max(g,1e3*(c/(_*2))))return;let v=h?h.len/_:0,y=s.loading.first?s.loading.first-s.loading.start:-1,b=s.loaded&&y>-1,x=this.getBwEstimate(),S=r.levels,ee=S[d],te=Math.max(s.loaded,Math.round(c*(t.bitrate||ee.averageBitrate)/8)),ne=b?l-y:l;ne<1&&b&&(ne=Math.min(l,s.loaded*8/x));let re=b?s.loaded*1e3/ne:0,ie=g/1e3,C=re?(te-s.loaded)/re:te*8/x+ie;if(C<=v)return;let ae=re?re*8:x,w=(e?.details||this.hls.latestLevelDetails)?.live===!0,oe=this.hls.config.abrBandWidthUpFactor,T=1/0,se;for(se=d-1;se>u;se--){let e=S[se].maxBitrate,t=!S[se].details||w;if(T=this.getTimeToLoadFrag(ie,ae,c*e,t),T<Math.min(v,c+ie))break}if(T>=C||T>c*10)return;b?this.bwEstimator.sample(l-Math.min(g,y),s.loaded):this.bwEstimator.sampleTTFB(l);let ce=S[se].maxBitrate;this.getBwEstimate()*oe>ce&&this.resetEstimator(ce);let le=this.findBestLevel(ce,u,se,0,v,1,1);le>-1&&(se=le),this.warn(`Fragment ${t.sn}${n?` part `+n.index:``} of level ${d} is loading too slowly; 1793 Fragment duration: ${t.duration.toFixed(3)} 1794 Time to underbuffer: ${v.toFixed(3)} s 1795 Estimated load time for current fragment: ${C.toFixed(3)} s 1796 Estimated load time for down switch fragment: ${T.toFixed(3)} s 1797 TTFB estimate: ${y|0} ms 1798 Current BW estimate: ${q(x)?x|0:`Unknown`} bps 1799 New BW estimate: ${this.getBwEstimate()|0} bps 1800 Switching to level ${se} @ ${ce|0} bps`),r.nextLoadLevel=r.nextAutoLevel=se,this.clearTimer();let ue=()=>{if(this.clearTimer(),this.fragCurrent===t&&this.hls.loadLevel===se&&se>0){let e=this.getStarvationDelay();if(this.warn(`Aborting inflight request ${se>0?`and switching down`:``} 1801 Fragment duration: ${t.duration.toFixed(3)} s 1802 Time to underbuffer: ${e.toFixed(3)} s`),t.abortRequests(),this.fragCurrent=this.partCurrent=null,se>u){let t=this.findBestLevel(this.hls.levels[u].bitrate,u,se,0,e,1,1);t===-1&&(t=u),this.hls.nextLoadLevel=this.hls.nextAutoLevel=t,this.resetEstimator(this.hls.levels[t].bitrate)}}};p||C>T*2?ue():this.timer=self.setInterval(ue,T*1e3),r.trigger(Y.FRAG_LOAD_EMERGENCY_ABORTED,{frag:t,part:n,stats:s})},this.hls=e,this.bwEstimator=this.initEstimator(),this.registerListeners()}resetEstimator(e){e&&(this.log(`setting initial bwe to ${e}`),this.hls.config.abrEwmaDefaultEstimate=e),this.firstSelection=-1,this.bwEstimator=this.initEstimator()}initEstimator(){let e=this.hls.config;return new GN(e.abrEwmaSlowVoD,e.abrEwmaFastVoD,e.abrEwmaDefaultEstimate)}registerListeners(){let{hls:e}=this;e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.FRAG_LOADING,this.onFragLoading,this),e.on(Y.FRAG_LOADED,this.onFragLoaded,this),e.on(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.on(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.on(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(Y.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let{hls:e}=this;e&&(e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.FRAG_LOADING,this.onFragLoading,this),e.off(Y.FRAG_LOADED,this.onFragLoaded,this),e.off(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.off(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.off(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(Y.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),e.off(Y.ERROR,this.onError,this))}destroy(){this.unregisterListeners(),this.clearTimer(),this.hls=this._abandonRulesCheck=this.supportedCache=null,this.fragCurrent=this.partCurrent=null}onManifestLoading(e,t){this.lastLoadedFragLevel=-1,this.firstSelection=-1,this.lastLevelLoadSec=0,this.supportedCache={},this.fragCurrent=this.partCurrent=null,this.onLevelsUpdated(),this.clearTimer()}onLevelsUpdated(){this.lastLoadedFragLevel>-1&&this.fragCurrent&&(this.lastLoadedFragLevel=this.fragCurrent.level),this._nextAutoLevel=-1,this.onMaxAutoLevelUpdated(),this.codecTiers=null,this.audioTracksByGroup=null}onMaxAutoLevelUpdated(){this.firstSelection=-1,this.nextAutoLevelKey=``}onFragLoading(e,t){let n=t.frag;this.ignoreFragment(n)||(n.bitrateTest||(this.fragCurrent=n,this.partCurrent=t.part??null),this.clearTimer(),this.timer=self.setInterval(this._abandonRulesCheck,100))}onLevelSwitching(e,t){this.clearTimer()}onError(e,t){if(!t.fatal)switch(t.details){case J.BUFFER_ADD_CODEC_ERROR:case J.BUFFER_APPEND_ERROR:this.lastLoadedFragLevel=-1,this.firstSelection=-1;break;case J.FRAG_LOAD_TIMEOUT:{let e=t.frag,{fragCurrent:n,partCurrent:r}=this;if(e&&n&&e.sn===n.sn&&e.level===n.level){let t=performance.now(),n=r?r.stats:e.stats,i=t-n.loading.start,a=n.loading.first?n.loading.first-n.loading.start:-1;if(n.loaded&&a>-1){let e=this.bwEstimator.getEstimateTTFB();this.bwEstimator.sample(i-Math.min(e,a),n.loaded)}else this.bwEstimator.sampleTTFB(i)}break}}}getTimeToLoadFrag(e,t,n,r){return e+n/t+(r?e+this.lastLevelLoadSec:0)}onLevelLoaded(e,t){let n=this.hls.config,{loading:r}=t.stats,i=r.end-r.first;q(i)&&(this.lastLevelLoadSec=i/1e3),t.details.live?this.bwEstimator.update(n.abrEwmaSlowLive,n.abrEwmaFastLive):this.bwEstimator.update(n.abrEwmaSlowVoD,n.abrEwmaFastVoD),this.timer>-1&&this._abandonRulesCheck(t.levelInfo)}onFragLoaded(e,{frag:t,part:n}){let r=n?n.stats:t.stats;if(t.type===UN.MAIN&&this.bwEstimator.sampleTTFB(r.loading.first-r.loading.start),!this.ignoreFragment(t)){if(this.clearTimer(),t.level===this._nextAutoLevel&&(this._nextAutoLevel=-1),this.firstSelection=-1,this.hls.config.abrMaxWithRealBitrate){let e=n?n.duration:t.duration,i=this.hls.levels[t.level],a=(i.loaded?i.loaded.bytes:0)+r.loaded,o=(i.loaded?i.loaded.duration:0)+e;i.loaded={bytes:a,duration:o},i.realBitrate=Math.round(8*a/o)}if(t.bitrateTest){let e={stats:r,frag:t,part:n,id:t.type};this.onFragBuffered(Y.FRAG_BUFFERED,e),t.bitrateTest=!1}else this.lastLoadedFragLevel=t.level}}onFragBuffered(e,t){let{frag:n,part:r}=t,i=r!=null&&r.stats.loaded?r.stats:n.stats;if(i.aborted||this.ignoreFragment(n))return;let a=i.parsing.end-i.loading.start-Math.min(i.loading.first-i.loading.start,this.bwEstimator.getEstimateTTFB());this.bwEstimator.sample(a,i.loaded),i.bwEstimate=this.getBwEstimate(),this.bitrateTestDelay=n.bitrateTest?a/1e3:0}ignoreFragment(e){return e.type!==UN.MAIN||e.sn===`initSegment`}clearTimer(){this.timer>-1&&(self.clearInterval(this.timer),this.timer=-1)}get firstAutoLevel(){let{maxAutoLevel:e,minAutoLevel:t}=this.hls,n=this.getBwEstimate(),r=this.hls.config.maxStarvationDelay,i=this.findBestLevel(n,t,e,0,r,1,1);if(i>-1)return i;let a=this.hls.firstLevel,o=Math.min(Math.max(a,t),e);return this.warn(`Could not find best starting auto level. Defaulting to first in playlist ${a} clamped to ${o}`),o}get forcedAutoLevel(){return this.nextAutoLevelKey?-1:this._nextAutoLevel}get nextAutoLevel(){let e=this.forcedAutoLevel,t=this.bwEstimator.canEstimate(),n=this.lastLoadedFragLevel>-1;if(e!==-1&&(!t||!n||this.nextAutoLevelKey===this.getAutoLevelKey()))return e;let r=t&&n?this.getNextABRAutoLevel():this.firstAutoLevel;if(e!==-1){let t=this.hls.levels;if(t.length>Math.max(e,r)&&t[e].loadError<=t[r].loadError)return e}return this._nextAutoLevel=r,this.nextAutoLevelKey=this.getAutoLevelKey(),r}getAutoLevelKey(){return`${this.getBwEstimate()}
1802_${this.getStarvationDelay().toFixed(2)}`}getNextABRAutoLevel(){let{fragCurrent:e,partCurrent:t,hls:n}=this;if(n.levels.length<=1)return n.loadLevel;let{maxAutoLevel:r,config:i,minAutoLevel:a}=n,o=t?t.duration:e?e.duration:0,s=this.getBwEstimate(),c=this.getStarvationDelay(),l=i.abrBandWidthFactor,u=i.abrBandWidthUpFactor;if(c){let e=this.findBestLevel(s,a,r,c,0,l,u);if(e>=0)return this.rebufferNotice=-1,e}let d=o?Math.min(o,i.maxStarvationDelay):i.maxStarvationDelay;if(!c){let e=this.bitrateTestDelay;e&&(d=(o?Math.min(o,i.maxLoadingDelay):i.maxLoadingDelay)-e,this.info(`bitrate test took ${Math.round(1e3*e)}ms, set first fragment max fetchDuration to ${Math.round(1e3*d)} ms`),l=u=1)}let f=this.findBestLevel(s,a,r,c,d,l,u);if(this.rebufferNotice!==f&&(this.rebufferNotice=f,this.info(`${c?`rebuffering expected`:`buffer is empty`}, optimal quality level ${f}`)),f>-1)return f;let p=n.levels[a],m=n.loadLevelObj;return m&&p?.bitrate<m.bitrate?a:n.loadLevel}getStarvationDelay(){let e=this.hls,t=e.media;if(!t)return 1/0;let n=t&&t.playbackRate!==0?Math.abs(t.playbackRate):1,r=e.mainForwardBufferInfo;return(r?r.len:0)/n}getBwEstimate(){return this.bwEstimator.canEstimate()?this.bwEstimator.getEstimate():this.hls.config.abrEwmaDefaultEstimate}findBestLevel(e,t,n,r,i,a,o){var s;let c=r+i,l=this.lastLoadedFragLevel,u=l===-1?this.hls.firstLevel:l,{fragCurrent:d,partCurrent:f}=this,{levels:p,allAudioTracks:m,loadLevel:h,config:g}=this.hls;if(p.length===1)return 0;let _=p[u],v=!!((s=this.hls.latestLevelDetails)!=null&&s.live),y=h===-1||l===-1,b,x=`SDR`,S=_?.frameRate||0,{audioPreference:ee,videoPreference:te}=g,ne=this.audioTracksByGroup||=QF(m),re=-1;if(y){if(this.firstSelection!==-1)return this.firstSelection;let r=XF(this.codecTiers||=$F(p,ne,t,n),x,e,ee,te),{codecSet:i,videoRanges:a,minFramerate:o,minBitrate:s,minIndex:c,preferHDR:l}=r;re=c,b=i,x=l?a[a.length-1]:a[0],S=o,e=Math.max(e,s),this.log(`picked start tier ${YF(r)}`)}else b=_?.codecSet,x=_?.videoRange;let ie=f?f.duration:d?d.duration:0,C=this.bwEstimator.getEstimateTTFB()/1e3,ae=[];for(let s=n;s>=t;s--){var w;let t=p[s],d=s>u;if(!t)continue;if(g.useMediaCapabilities&&!t.supportedResult&&!t.supportedPromise){let n=navigator.mediaCapabilities;typeof n?.decodingInfo==`function`&&AF(t,ne,x,S,e,ee)?(t.supportedPromise=jF(t,ne,n,this.supportedCache),t.supportedPromise.then(e=>{if(!this.hls)return;t.supportedResult=e;let n=this.hls.levels,r=n.indexOf(t);e.error?this.warn(`MediaCapabilities decodingInfo error: "${e.error}" for level ${r} ${YF(e)}`):e.supported?e.decodingInfoResults.some(e=>e.smooth===!1||e.powerEfficient===!1)&&this.log(`MediaCapabilities decodingInfo for level ${r} not smooth or powerEfficient: ${YF(e)}`):(this.warn(`Unsupported MediaCapabilities decodingInfo result for level ${r} ${YF(e)}`),r>-1&&n.length>1&&(this.log(`Removing unsupported level ${r}`),this.hls.removeLevel(r),this.hls.loadLevel===-1&&(this.hls.nextLoadLevel=0)))}).catch(e=>{this.warn(`Error handling MediaCapabilities decodingInfo: ${e}`)})):t.supportedResult=OF}if((b&&t.codecSet!==b||x&&t.videoRange!==x||d&&S>t.frameRate||!d&&S>0&&S<t.frameRate||(w=t.supportedResult)!=null&&(w=w.decodingInfoResults)!=null&&w.some(e=>e.smooth===!1))&&(!y||s!==re)){ae.push(s);continue}let m=t.details,_=(f?m?.partTarget:m?.averagetargetduration)||ie,te;te=d?o*e:a*e;let oe=ie&&r>=ie*2&&i===0?t.averageBitrate:t.maxBitrate,T=this.getTimeToLoadFrag(C,te,oe*_,m===void 0);if(te>=oe&&(s===l||t.loadError===0&&t.fragmentError===0)&&(T<=C||!q(T)||v&&!this.bitrateTestDelay||T<c)){let e=this.forcedAutoLevel;return s!==h&&(e===-1||e!==h)&&(ae.length&&this.trace(`Skipped level(s) ${ae.join(`,`)} of ${n} max with CODECS and VIDEO-RANGE:"${p[ae[0]].codecs}" ${p[ae[0]].videoRange}; not compatible with "${b}" ${x}`),this.info(`switch candidate:${u}->${s} adjustedbw(${Math.round(te)})-bitrate=${Math.round(te-oe)} ttfb:${C.toFixed(1)} avgDuration:${_.toFixed(1)} maxFetchDuration:${c.toFixed(1)} fetchDuration:${T.toFixed(1)} firstSelection:${y} codecSet:${t.codecSet} videoRange:${t.videoRange} hls.loadLevel:${h}`)),y&&(this.firstSelection=s),s}}return-1}set nextAutoLevel(e){let t=this.deriveNextAutoLevel(e);this._nextAutoLevel!==t&&(this.nextAutoLevelKey=``,this._nextAutoLevel=t)}deriveNextAutoLevel(e){let{maxAutoLevel:t,minAutoLevel:n}=this.hls;return Math.min(Math.max(e,n),t)}},uI={search:function(e,t){let n=0,r=e.length-1,i=null,a=null;for(;n<=r;){i=(n+r)/2|0,a=e[i];let o=t(a);if(o>0)n=i+1;else if(o<0)r=i-1;else return a}return null}};
1802function dI(e,t,n){if(t===null||!Array.isArray(e)||!e.length||!q(t)||t<(e[0].programDateTime||0)||t>=(e[e.length-1].endProgramDateTime||0))return null;for(let r=0;r<e.length;++r){let i=e[r];if(hI(t,n,i))return i}return null}function fI(e,t,n=0,r=0,i=.005){let a=null;if(e){a=t[1+e.sn-t[0].sn]||null;let r=e.endDTS-n;r>0&&r<15e-7&&(n+=15e-7),a&&e.level!==a.level&&a.end<=e.end&&(a=t[2+e.sn-t[0].sn]||null)}else n===0&&t[0].start===0&&(a=t[0]);if(a&&((!e||e.level===a.level)&&mI(n,r,a)===0||pI(a,e,Math.min(i,r))))return a;let o=uI.search(t,mI.bind(null,n,r));return o&&(o!==e||!a)?o:a}function pI(e,t,n){if(t&&t.start===0&&t.level<e.level&&(t.endPTS||0)>0){let r=t.tagList.reduce((e,t)=>(t[0]===`INF`&&(e+=parseFloat(t[1])),e),n);return e.start<=r}return!1}function mI(e=0,t=0,n){if(n.start<=e&&n.start+n.duration>e)return 0;let r=Math.min(t,n.duration+(n.deltaPTS?n.deltaPTS:0));return n.start+n.duration-r<=e?1:n.start-r>e&&n.start?-1:0}function hI(e,t,n){let r=Math.min(t,n.duration+(n.deltaPTS?n.deltaPTS:0))*1e3;return(n.endProgramDateTime||0)-r>e}function gI(e,t,n){if(e&&e.startCC<=t&&e.endCC>=t){let r=e.fragments,{fragmentHint:i}=e;i&&(r=r.concat(i));let a;return uI.search(r,e=>e.cc<t?1:e.cc>t?-1:(a=e,e.end<=n?1:e.start>n?-1:0)),a||null}return null}function _I(e){switch(e.details){case J.FRAG_LOAD_TIMEOUT:case J.KEY_LOAD_TIMEOUT:case J.LEVEL_LOAD_TIMEOUT:case J.MANIFEST_LOAD_TIMEOUT:return!0}return!1}function vI(e){return e.details.startsWith(`key`)}function yI(e){return vI(e)&&!!e.frag&&!e.frag.decryptdata}function bI(e,t){let n=_I(t);return e.default[`${n?`timeout`:`error`}Retry`]}function xI(e,t){let n=e.backoff===`linear`?1:2**t;return Math.min(n*e.retryDelayMs,e.maxRetryDelayMs)}function SI(e){return YN(YN({},e),{errorRetry:null,timeoutRetry:null})}function CI(e,t,n,r){if(!e)return!1;let i=r?.code,a=t<e.maxNumRetry&&(wI(i)||!!n);return e.shouldRetry?e.shouldRetry(e,t,n,r,a):a}function wI(e){return TI(e)||!!e&&(e<400||e>499)}function TI(e){return e===0&&navigator.onLine===!1}var EI={DoNothing:0,SendEndCallback:1,SendAlternateToPenaltyBox:2,RemoveAlternatePermanently:3,InsertDiscontinuity:4,RetryRequest:5},DI={None:0,MoveAllAlternatesMatchingHost:1,MoveAllAlternatesMatchingHDCP:2,MoveAllAlternatesMatchingKey:4,SwitchToSDR:8},OI=class extends QN{constructor(e){super(`error-controller`,e.logger),this.hls=void 0,this.playlistError=0,this.hls=e,this.registerListeners()}registerListeners(){let e=this.hls;e.on(Y.ERROR,this.onError,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.LEVEL_UPDATED,this.onLevelUpdated,this)}unregisterListeners(){let e=this.hls;e&&(e.off(Y.ERROR,this.onError,this),e.off(Y.ERROR,this.onErrorOut,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.LEVEL_UPDATED,this.onLevelUpdated,this))}destroy(){this.unregisterListeners(),this.hls=null}startLoad(e){}stopLoad(){this.playlistError=0}getVariantLevelIndex(e){return e?.type===UN.MAIN?e.level:this.getVariantIndex()}getVariantIndex(){var e;let t=this.hls,n=t.currentLevel;return(e=t.loadLevelObj)!=null&&e.details||n===-1?t.loadLevel:n}variantHasKey(e,t){if(e){var n;if((n=e.details)!=null&&n.hasKey(t))return!0;let r=e.audioGroups;if(r)return this.hls.allAudioTracks.filter(e=>r.indexOf(e.groupId)>=0).some(e=>e.details?.hasKey(t))}return!1}onManifestLoading(){this.playlistError=0}onLevelUpdated(){this.playlistError=0}onError(e,t){var n;if(t.fatal)return;let r=this.hls,i=t.context;switch(t.details){case J.FRAG_LOAD_ERROR:case J.FRAG_LOAD_TIMEOUT:case J.KEY_LOAD_ERROR:case J.KEY_LOAD_TIMEOUT:t.errorAction=this.getFragRetryOrSwitchAction(t);return;case J.FRAG_PARSING_ERROR:if((n=t.frag)!=null&&n.gap){t.errorAction=kI();return}case J.FRAG_GAP:case J.FRAG_DECRYPT_ERROR:t.errorAction=this.getFragRetryOrSwitchAction(t),t.errorAction.action=EI.SendAlternateToPenaltyBox;return;case J.LEVEL_EMPTY_ERROR:case J.LEVEL_PARSING_ERROR:{var a;let e=t.parent===UN.MAIN?t.level:r.loadLevel;t.details===J.LEVEL_EMPTY_ERROR&&(a=t.context)!=null&&(a=a.levelDetails)!=null&&a.live?t.errorAction=this.getPlaylistRetryOrSwitchAction(t,e):(t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,e))}return;case J.LEVEL_LOAD_ERROR:case J.LEVEL_LOAD_TIMEOUT:typeof i?.level==`number`&&(t.errorAction=this.getPlaylistRetryOrSwitchAction(t,i.level));return;case J.AUDIO_TRACK_LOAD_ERROR:case J.AUDIO_TRACK_LOAD_TIMEOUT:case J.SUBTITLE_LOAD_ERROR:case J.SUBTITLE_TRACK_LOAD_TIMEOUT:if(i){let e=r.loadLevelObj;
1802if(e&&(i.type===HN.AUDIO_TRACK&&e.hasAudioGroup(i.groupId)||i.type===HN.SUBTITLE_TRACK&&e.hasSubtitleGroup(i.groupId))){t.errorAction=this.getPlaylistRetryOrSwitchAction(t,r.loadLevel),t.errorAction.action=EI.SendAlternateToPenaltyBox,t.errorAction.flags=DI.MoveAllAlternatesMatchingHost;return}}return;case J.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:t.errorAction={action:EI.SendAlternateToPenaltyBox,flags:DI.MoveAllAlternatesMatchingHDCP};return;case J.KEY_SYSTEM_SESSION_UPDATE_FAILED:case J.KEY_SYSTEM_STATUS_INTERNAL_ERROR:case J.KEY_SYSTEM_NO_SESSION:t.errorAction={action:EI.SendAlternateToPenaltyBox,flags:DI.MoveAllAlternatesMatchingKey};return;case J.BUFFER_ADD_CODEC_ERROR:case J.REMUX_ALLOC_ERROR:case J.BUFFER_APPEND_ERROR:t.errorAction||=this.getLevelSwitchAction(t,t.level??r.loadLevel);return;case J.INTERNAL_EXCEPTION:case J.BUFFER_APPENDING_ERROR:case J.BUFFER_FULL_ERROR:case J.LEVEL_SWITCH_ERROR:case J.BUFFER_STALLED_ERROR:case J.BUFFER_SEEK_OVER_HOLE:case J.BUFFER_NUDGE_ON_STALL:t.errorAction=kI();return}t.type===VN.KEY_SYSTEM_ERROR&&(t.levelRetry=!1,t.errorAction=kI())}getPlaylistRetryOrSwitchAction(e,t){let n=this.hls,r=bI(n.config.playlistLoadPolicy,e),i=this.playlistError++;if(CI(r,i,_I(e),e.response))return{action:EI.RetryRequest,flags:DI.None,retryConfig:r,retryCount:i};let a=this.getLevelSwitchAction(e,t);return r&&(a.retryConfig=r,a.retryCount=i),a}getFragRetryOrSwitchAction(e){let t=this.hls,n=this.getVariantLevelIndex(e.frag),r=t.levels[n],{fragLoadPolicy:i,keyLoadPolicy:a}=t.config,o=bI(vI(e)?a:i,e),s=t.levels.reduce((e,t)=>e+t.fragmentError,0);if(r&&(e.details!==J.FRAG_GAP&&r.fragmentError++,!yI(e)&&CI(o,s,_I(e),e.response)))return{action:EI.RetryRequest,flags:DI.None,retryConfig:o,retryCount:s};let c=this.getLevelSwitchAction(e,n);return o&&(c.retryConfig=o,c.retryCount=s),c}getLevelSwitchAction(e,t){let n=this.hls;t??=n.loadLevel;let r=this.hls.levels[t];if(r){let t=e.details;r.loadError++,t===J.BUFFER_APPEND_ERROR&&r.fragmentError++;let o=-1,{levels:s,loadLevel:c,minAutoLevel:l,maxAutoLevel:u}=n;!n.autoLevelEnabled&&!n.config.preserveManualLevelOnError&&(n.loadLevel=-1);let d=e.frag?.type,f=(d===UN.AUDIO&&t===J.FRAG_PARSING_ERROR||e.sourceBufferName===`audio`&&(t===J.BUFFER_ADD_CODEC_ERROR||t===J.BUFFER_APPEND_ERROR))&&s.some(({audioCodec:e})=>r.audioCodec!==e),p=e.sourceBufferName===`video`&&(t===J.BUFFER_ADD_CODEC_ERROR||t===J.BUFFER_APPEND_ERROR)&&s.some(({codecSet:e,audioCodec:t})=>r.codecSet!==e&&r.audioCodec===t),{type:m,groupId:h}=e.context??{};for(let n=s.length;n--;){let g=(n+c)%s.length;if(g!==c&&g>=l&&g<=u&&s[g].loadError===0){var i,a;let n=s[g];if(t===J.FRAG_GAP&&d===UN.MAIN&&e.frag){let t=s[g].details;if(t){let n=fI(e.frag,t.fragments,e.frag.start);if(n!=null&&n.gap)continue}}else if(m===HN.AUDIO_TRACK&&n.hasAudioGroup(h)||m===HN.SUBTITLE_TRACK&&n.hasSubtitleGroup(h))continue;else if(d===UN.AUDIO&&(i=r.audioGroups)!=null&&i.some(e=>n.hasAudioGroup(e))||d===UN.SUBTITLE&&(a=r.subtitleGroups)!=null&&a.some(e=>n.hasSubtitleGroup(e))||f&&r.audioCodec===n.audioCodec||p&&r.codecSet===n.codecSet||!f&&r.codecSet!==n.codecSet)continue;o=g;break}}if(o>-1&&n.loadLevel!==o)return e.levelRetry=!0,this.playlistError=0,{action:EI.SendAlternateToPenaltyBox,flags:DI.None,nextAutoLevel:o}}return{action:EI.SendAlternateToPenaltyBox,flags:DI.MoveAllAlternatesMatchingHost}}onErrorOut(e,t){switch(t.errorAction?.action){case EI.DoNothing:break;case EI.SendAlternateToPenaltyBox:this.sendAlternateToPenaltyBox(t),!t.errorAction.resolved&&t.details!==J.FRAG_GAP?t.fatal=!0:/MediaSource readyState: ended/.test(t.error.message)&&(this.warn(`MediaSource ended after "${t.sourceBufferName}" sourceBuffer append error. Attempting to recover from media error.`),this.hls.recoverMediaError());break;case EI.RetryRequest:}if(t.fatal){this.hls.stopLoad();return}}sendAlternateToPenaltyBox(e){let t=this.hls,n=e.errorAction;if(!n)return;let{flags:r}=n,i=n.nextAutoLevel;switch(r){case DI.None:this.switchLevel(e,i);break;case DI.MoveAllAlternatesMatchingHDCP:{let r=this.getVariantLevelIndex(e.frag),i=t.levels[r]?.attrs[`HDCP-LEVEL`];if(n.hdcpLevel=i,i===`NONE`)this.warn(`HDCP policy resticted output with HDCP-LEVEL=NONE`);else if(i){t.maxHdcpLevel=LF[LF.indexOf(i)-1],n.resolved=!0,this.warn(`Restricting playback to HDCP-LEVEL of "${t.maxHdcpLevel}" or lower`);break}}case DI.MoveAllAlternatesMatchingKey:{let t=e.decryptdata;if(t){let r=this.hls.levels,i=r.length;for(let n=i;n--;)this.variantHasKey(r[n],t)&&(this.log(`Banned key found in level ${n} (${r[n].bitrate}bps) or audio group "${r[n].audioGroups?.join(`,`)}" (${e.frag?.type} fragment) ${dP(t.keyId||[])}`),r[n].fragmentError++,r[n].loadError++,this.log(`Removing level ${n} with key error (${e.error})`),this.hls.removeLevel(n));let a=e.frag;if(this.hls.levels.length<i)n.resolved=!0;else if(a&&a.type!==UN.MAIN){let e=a.decryptdata;e&&!t.matches(e)&&(n.resolved=!0)}}break}}n.resolved||this.switchLevel(e,i)}switchLevel(e,t){if(t!==void 0&&e.errorAction&&(this.warn(`switching to level ${t} after ${e.details}`),this.hls.nextAutoLevel=t,e.errorAction.resolved=!0,this.hls.nextLoadLevel=this.hls.nextAutoLevel,e.details===J.BUFFER_ADD_CODEC_ERROR&&e.mimeType&&e.sourceBufferName!==`audiovideo`)){let t=TF(e.mimeType),n=this.hls.levels;for(let r=n.length;r--;)n[r][`${e.sourceBufferName}Codec`]===t&&(this.log(`Removing level ${r} for ${e.details} ("${t}" not supported)`),this.hls.removeLevel(r))}}};function kI(e){let t={action:EI.DoNothing,flags:DI.None};return e&&(t.resolved=!0),t}var AI={NOT_LOADED:`NOT_LOADED`,APPENDING:`APPENDING`,PARTIAL:`PARTIAL`,OK:`OK`},jI=class{constructor(e){this.activePartLists=Object.create(null),this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hasGaps=!1,this.hls=e,this._registerListeners()}_registerListeners(){let{hls:e}=this;e&&(e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.BUFFER_APPENDED,this.onBufferAppended,this),e.on(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.on(Y.FRAG_LOADED,this.onFragLoaded,this))}_unregisterListeners(){let{hls:e}=this;e&&(e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.BUFFER_APPENDED,this.onBufferAppended,this),e.off(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.off(Y.FRAG_LOADED,this.onFragLoaded,this))}destroy(){this._unregisterListeners(),this.hls=this.fragments=this.activePartLists=this.endListFragments=this.timeRanges=null}getAppendedFrag(e,t){let n=this.activePartLists[t];if(n)for(let t=n.length;t--;){let r=n[t];if(!r)break;
vendor: 23,940 bytes, line 1802
1802if(r.start<=e&&e<=r.end&&r.loaded)return r}return this.getBufferedFrag(e,t)}getBufferedFrag(e,t){return this.getFragAtPos(e,t,!0)}getFragAtPos(e,t,n){let{fragments:r}=this,i=Object.keys(r);for(let a=i.length;a--;){let o=r[i[a]];if(o?.body.type===t&&(!n||o.buffered)){let t=o.body;if(t.start<=e&&e<=t.end)return t}}return null}detectEvictedFragments(e,t,n,r,i){this.timeRanges&&(this.timeRanges[e]=t);let a=r?.fragment.sn||-1;Object.keys(this.fragments).forEach(r=>{let o=this.fragments[r];if(!o||a>=o.body.sn)return;if(!o.buffered&&(!o.loaded||i)){o.body.type===n&&this.removeFragment(o.body);return}let s=o.range[e];if(s){if(s.time.length===0){this.removeFragment(o.body);return}s.time.some(e=>{let n=!this.isTimeBuffered(e.startPTS,e.endPTS,t);return n&&this.removeFragment(o.body),n})}})}detectPartialFragments(e){let t=this.timeRanges;if(!t||e.frag.sn===`initSegment`)return;let n=e.frag,r=NI(n),i=this.fragments[r];if(!i||i.buffered&&n.gap)return;let a=!n.relurl;Object.keys(t).forEach(r=>{let o=n.elementaryStreams[r];if(!o)return;let s=t[r],c=a||o.partial===!0;i.range[r]=this.getBufferedTimes(n,e.part,c,s)}),i.loaded=null,Object.keys(i.range).length?(this.bufferedEnd(i,n),MI(i)||this.removeParts(n.sn-1,n.type)):this.removeFragment(i.body)}bufferedEnd(e,t){e.buffered=!0,(e.body.endList=t.endList||e.body.endList)&&(this.endListFragments[e.body.type]=e)}removeParts(e,t){let n=this.activePartLists[t];n&&(this.activePartLists[t]=PI(n,t=>t.fragment.sn>=e))}fragBuffered(e,t){let n=NI(e),r=this.fragments[n];!r&&t&&(r=this.fragments[n]={body:e,appendedPTS:null,loaded:null,buffered:!1,range:Object.create(null)},e.gap&&(this.hasGaps=!0)),r&&(r.loaded=null,this.bufferedEnd(r,e))}getBufferedTimes(e,t,n,r){let i={time:[],partial:n},a=e.start,o=e.end,s=e.minEndPTS||o,c=e.maxStartPTS||a;for(let e=0;e<r.length;e++){let t=r.start(e)-this.bufferPadding,n=r.end(e)+this.bufferPadding;if(c>=t&&s<=n){i.time.push({startPTS:Math.max(a,r.start(e)),endPTS:Math.min(o,r.end(e))});break}if(a<n&&o>t){let t=Math.max(a,r.start(e)),n=Math.min(o,r.end(e));n>t&&(i.partial=!0,i.time.push({startPTS:t,endPTS:n}))}else if(o<=t)break}return i}getPartialFragment(e){let t=null,n,r,i,a=0,{bufferPadding:o,fragments:s}=this;return Object.keys(s).forEach(c=>{let l=s[c];l&&MI(l)&&(r=l.body.start-o,i=l.body.end+o,e>=r&&e<=i&&(n=Math.min(e-r,i-e),a<=n&&(t=l.body,a=n)))}),t}isEndListAppended(e){let t=this.endListFragments[e];return t!==void 0&&(t.buffered||MI(t))}getState(e){let t=NI(e),n=this.fragments[t];return n?n.buffered?MI(n)?AI.PARTIAL:AI.OK:AI.APPENDING:AI.NOT_LOADED}isTimeBuffered(e,t,n){let r,i;for(let a=0;a<n.length;a++){if(r=n.start(a)-this.bufferPadding,i=n.end(a)+this.bufferPadding,e>=r&&t<=i)return!0;if(t<=r)return!1}return!1}onManifestLoading(){this.removeAllFragments()}onFragLoaded(e,t){if(t.frag.sn===`initSegment`||t.frag.bitrateTest)return;let n=t.frag,r=t.part?null:t,i=NI(n);this.fragments[i]={body:n,appendedPTS:null,loaded:r,buffered:!1,range:Object.create(null)}}onBufferAppended(e,t){let{frag:n,part:r,timeRanges:i,type:a}=t;if(n.sn===`initSegment`)return;let o=n.type;if(r){let e=this.activePartLists[o];e||(this.activePartLists[o]=e=[]),e.push(r)}this.timeRanges=i;let s=i[a];this.detectEvictedFragments(a,s,o,r)}onFragBuffered(e,t){this.detectPartialFragments(t)}hasFragment(e){let t=NI(e);return!!this.fragments[t]}hasFragments(e){let{fragments:t}=this,n=Object.keys(t);if(!e)return n.length>0;for(let r=n.length;r--;)if(t[n[r]]?.body.type===e)return!0;return!1}hasParts(e){var t;return!!((t=this.activePartLists[e])!=null&&t.length)}removeFragmentsInRange(e,t,n,r,i){r&&!this.hasGaps||Object.keys(this.fragments).forEach(a=>{let o=this.fragments[a];if(!o)return;let s=o.body;s.type!==n||r&&!s.gap||s.start<t&&s.end>e&&(o.buffered||i)&&this.removeFragment(s)})}removeFragment(e){let t=NI(e);e.clearElementaryStreamInfo();let n=this.activePartLists[e.type];if(n){let t=e.sn;this.activePartLists[e.type]=PI(n,e=>e.fragment.sn!==t)}delete this.fragments[t],e.endList&&delete this.endListFragments[e.type]}removeAllFragments(){var e;this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activePartLists=Object.create(null),this.hasGaps=!1;let t=(e=this.hls)==null||(e=e.latestLevelDetails)==null?void 0:e.partList;t&&t.forEach(e=>e.clearElementaryStreamInfo())}};function MI(e){var t,n,r;return e.buffered&&!!(e.body.gap||(t=e.range.video)!=null&&t.partial||(n=e.range.audio)!=null&&n.partial||(r=e.range.audiovideo)!=null&&r.partial)}function NI(e){return`${e.type}_${e.level}_${e.sn}`}function PI(e,t){return e.filter(e=>{let n=t(e);return n||e.clearElementaryStreamInfo(),n})}var FI={cbc:0,ctr:1},II=class{constructor(e,t,n){this.subtle=void 0,this.aesIV=void 0,this.aesMode=void 0,this.subtle=e,this.aesIV=t,this.aesMode=n}decrypt(e,t){switch(this.aesMode){case FI.cbc:return this.subtle.decrypt({name:`AES-CBC`,iv:this.aesIV},t,e);case FI.ctr:return this.subtle.decrypt({name:`AES-CTR`,counter:this.aesIV,length:64},t,e);default:throw Error(`[AESCrypto] invalid aes mode ${this.aesMode}`)}}};function LI(e){let t=e.byteLength,n=t&&new DataView(e.buffer).getUint8(t-1);return n?e.slice(0,t-n):e}var RI=class{constructor(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array,this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}uint8ArrayToUint32Array_(e){let t=new DataView(e),n=new Uint32Array(4);for(let e=0;e<4;e++)n[e]=t.getUint32(e*4);return n}initTable(){let e=this.sBox,t=this.invSBox,n=this.subMix,r=n[0],i=n[1],a=n[2],o=n[3],s=this.invSubMix,c=s[0],l=s[1],u=s[2],d=s[3],f=new Uint32Array(256),p=0,m=0,h=0;for(h=0;h<256;h++)h<128?f[h]=h<<1:f[h]=h<<1^283;for(h=0;h<256;h++){let n=m^m<<1^m<<2^m<<3^m<<4;n=n>>>8^n&255^99,e[p]=n,t[n]=p;let s=f[p],h=f[s],g=f[h],_=f[n]*257^n*16843008;r[p]=_<<24|_>>>8,i[p]=_<<16|_>>>16,a[p]=_<<8|_>>>24,o[p]=_,_=g*16843009^h*65537^s*257^p*16843008,c[n]=_<<24|_>>>8,l[n]=_<<16|_>>>16,u[n]=_<<8|_>>>24,d[n]=_,p?(p=s^f[f[f[g^s]]],m^=f[f[m]]):p=m=1}}expandKey(e){let t=this.uint8ArrayToUint32Array_(e),n=!0,r=0;for(;r<t.length&&n;)n=t[r]===this.key[r],r++;if(n)return;this.key=t;let i=this.keySize=t.length;if(i!==4&&i!==6&&i!==8)throw Error(`Invalid aes key size=`+i);let a=this.ksRows=(i+6+1)*4,o,s,c=this.keySchedule=new Uint32Array(a),l=this.invKeySchedule=new Uint32Array(a),u=this.sBox,d=this.rcon,f=this.invSubMix,p=f[0],m=f[1],h=f[2],g=f[3],_,v;for(o=0;o<a;o++){if(o<i){_=c[o]=t[o];continue}v=_,o%i===0?(v=v<<8|v>>>24,v=u[v>>>24]<<24|u[v>>>16&255]<<16|u[v>>>8&255]<<8|u[v&255],v^=d[o/i|0]<<24):i>6&&o%i===4&&(v=u[v>>>24]<<24|u[v>>>16&255]<<16|u[v>>>8&255]<<8|u[v&255]),c[o]=_=(c[o-i]^v)>>>0}for(s=0;s<a;s++)o=a-s,v=s&3?c[o]:c[o-4],s<4||o<=4?l[s]=v:l[s]=p[u[v>>>24]]^m[u[v>>>16&255]]^h[u[v>>>8&255]]^g[u[v&255]],l[s]=l[s]>>>0}networkToHostOrderSwap(e){return e<<24|(e&65280)<<8|(e&16711680)>>8|e>>>24}decrypt(e,t,n){let r=this.keySize+6,i=this.invKeySchedule,a=this.invSBox,o=this.invSubMix,s=o[0],c=o[1],l=o[2],u=o[3],d=this.uint8ArrayToUint32Array_(n),f=d[0],p=d[1],m=d[2],h=d[3],g=new Int32Array(e),_=new Int32Array(g.length),v,y,b,x,S,ee,te,ne,re,ie,C,ae,w,oe,T=this.networkToHostOrderSwap;for(;t<g.length;){for(re=T(g[t]),ie=T(g[t+1]),C=T(g[t+2]),ae=T(g[t+3]),S=re^i[0],ee=ae^i[1],te=C^i[2],ne=ie^i[3],w=4,oe=1;oe<r;oe++)v=s[S>>>24]^c[ee>>16&255]^l[te>>8&255]^u[ne&255]^i[w],y=s[ee>>>24]^c[te>>16&255]^l[ne>>8&255]^u[S&255]^i[w+1],b=s[te>>>24]^c[ne>>16&255]^l[S>>8&255]^u[ee&255]^i[w+2],x=s[ne>>>24]^c[S>>16&255]^l[ee>>8&255]^u[te&255]^i[w+3],S=v,ee=y,te=b,ne=x,w+=4;v=a[S>>>24]<<24^a[ee>>16&255]<<16^a[te>>8&255]<<8^a[ne&255]^i[w],y=a[ee>>>24]<<24^a[te>>16&255]<<16^a[ne>>8&255]<<8^a[S&255]^i[w+1],b=a[te>>>24]<<24^a[ne>>16&255]<<16^a[S>>8&255]<<8^a[ee&255]^i[w+2],x=a[ne>>>24]<<24^a[S>>16&255]<<16^a[ee>>8&255]<<8^a[te&255]^i[w+3],_[t]=T(v^f),_[t+1]=T(x^p),_[t+2]=T(b^m),_[t+3]=T(y^h),f=re,p=ie,m=C,h=ae,t+=4}return _.buffer}},zI=class{constructor(e,t,n){this.subtle=void 0,this.key=void 0,this.aesMode=void 0,this.subtle=e,this.key=t,this.aesMode=n}expandKey(){let e=BI(this.aesMode);return this.subtle.importKey(`raw`,this.key,{name:e},!1,[`encrypt`,`decrypt`])}};function BI(e){switch(e){case FI.cbc:return`AES-CBC`;case FI.ctr:return`AES-CTR`;default:throw Error(`[FastAESKey] invalid aes mode ${e}`)}}var VI=16,HI=class{constructor(e,{removePKCS7Padding:t=!0}={}){if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.enableSoftwareAES=void 0,this.enableSoftwareAES=e.enableSoftwareAES,this.removePKCS7Padding=t,t)try{let e=self.crypto;e&&(this.subtle=e.subtle||e.webkitSubtle)}catch{}this.useSoftware=!this.subtle}destroy(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null}isSync(){return this.useSoftware}flush(){let{currentResult:e,remainderData:t}=this;if(!e||t)return this.reset(),null;let n=new Uint8Array(e);return this.reset(),this.removePKCS7Padding?LI(n):n}reset(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&=null}decrypt(e,t,n,r){return this.useSoftware?new Promise((i,a)=>{let o=ArrayBuffer.isView(e)?e:new Uint8Array(e);this.softwareDecrypt(o,t,n,r);let s=this.flush();s?i(s.buffer):a(Error(`[softwareDecrypt] Failed to decrypt data`))}):this.webCryptoDecrypt(new Uint8Array(e),t,n,r)}softwareDecrypt(e,t,n,r){let{currentIV:i,currentResult:a,remainderData:o}=this;if(r!==FI.cbc||t.byteLength!==16)return oP.warn(`SoftwareDecrypt: can only handle AES-128-CBC`),null;this.logOnce(`JS AES decrypt`),o&&(e=XP(o,e),this.remainderData=null);let s=this.getValidChunk(e);if(!s.length)return null;i&&(n=i);let c=this.softwareDecrypter;c||=this.softwareDecrypter=new RI,c.expandKey(t);let l=a;return this.currentResult=c.decrypt(s.buffer,0,n),this.currentIV=s.slice(-16).buffer,l||null}webCryptoDecrypt(e,t,n,r){if(this.key!==t||!this.fastAesKey){if(!this.subtle)return Promise.resolve(this.onWebCryptoError(e,t,n,r));this.key=t,this.fastAesKey=new zI(this.subtle,t,r)}return this.fastAesKey.expandKey().then(t=>this.subtle?(this.logOnce(`WebCrypto AES decrypt`),new II(this.subtle,new Uint8Array(n),r).decrypt(e.buffer,t)):Promise.reject(Error(`web crypto not initialized`))).catch(i=>(oP.warn(`[decrypter]: WebCrypto Error, disable WebCrypto API, ${i.name}: ${i.message}`),this.onWebCryptoError(e,t,n,r)))}onWebCryptoError(e,t,n,r){let i=this.enableSoftwareAES;if(i){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(e,t,n,r);let i=this.flush();if(i)return i.buffer}throw Error(`WebCrypto`+(i?` and softwareDecrypt`:``)+`: failed to decrypt data`)}getValidChunk(e){let t=e,n=e.length-e.length%VI;return n!==e.length&&(t=e.slice(0,n),this.remainderData=e.slice(n)),t}logOnce(e){this.logEnabled&&=(oP.log(`[decrypter]: ${e}`),!1)}},UI=2**17,WI=class{constructor(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}destroy(){this.loader&&=(this.loader.destroy(),null)}abort(){this.loader&&this.loader.abort()}load(e,t){let n=e.url;if(!n)return Promise.reject(new JI({type:VN.NETWORK_ERROR,details:J.FRAG_LOAD_ERROR,fatal:!1,frag:e,error:Error(`Fragment does not have a ${n?`part list`:`url`}`),networkDetails:null}));this.abort();let r=this.config,i=r.fLoader,a=r.loader;return new Promise((o,s)=>{if(this.loader&&this.loader.destroy(),e.gap)if(e.tagList.some(e=>e[0]===`GAP`)){s(KI(e));return}else e.gap=!1;let c=this.loader=i?new i(r):new a(r),l=GI(e);e.loader=c;let u=SI(r.fragLoadPolicy.default),d={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:e.sn===`initSegment`?1/0:UI};e.stats=c.stats;let f={onSuccess:(t,n,r,i)=>{this.resetLoader(e,c);let a=t.data;r.resetIV&&e.decryptdata&&(e.decryptdata.iv=new Uint8Array(a.slice(0,16)),a=a.slice(16)),o({frag:e,part:null,payload:a,networkDetails:i})},onError:(t,r,i,a)=>{this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:YN({url:n,data:void 0},t),error:Error(`HTTP Error ${t.code} ${t.text}`),networkDetails:i,stats:a}))},onAbort:(t,n,r)=>{this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.INTERNAL_ABORTED,fatal:!1,frag:e,error:Error(`Aborted`),networkDetails:r,stats:t}))},onTimeout:(t,n,r)=>{this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,error:Error(`Timeout after ${d.timeout}ms`),networkDetails:r,stats:t}))}};t&&(f.onProgress=(n,r,i,a)=>t({frag:e,part:null,payload:i,networkDetails:a})),c.load(l,d,f)})}loadPart(e,t,n){this.abort();let r=this.config,i=r.fLoader,a=r.loader;return new Promise((o,s)=>{if(this.loader&&this.loader.destroy(),e.gap||t.gap){s(KI(e,t));return}let c=this.loader=i?new i(r):new a(r),l=GI(e,t);e.loader=c;let u=SI(r.fragLoadPolicy.default),d={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:UI};t.stats=c.stats,c.load(l,d,{onSuccess:(r,i,a,s)=>{this.resetLoader(e,c),this.updateStatsFromPart(e,t);let l={frag:e,part:t,payload:r.data,networkDetails:s};n(l),o(l)},onError:(n,r,i,a)=>{this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:t,response:YN({url:l.url,data:void 0},n),error:Error(`HTTP Error ${n.code} ${n.text}`),networkDetails:i,stats:a}))},onAbort:(n,r,i)=>{e.stats.aborted=t.stats.aborted,this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.INTERNAL_ABORTED,fatal:!1,frag:e,part:t,error:Error(`Aborted`),networkDetails:i,stats:n}))},onTimeout:(n,r,i)=>{this.resetLoader(e,c),s(new JI({type:VN.NETWORK_ERROR,details:J.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:t,error:Error(`Timeout after ${d.timeout}ms`),networkDetails:i,stats:n}))}})})}updateStatsFromPart(e,t){let n=e.stats,r=t.stats,i=r.total;if(n.loaded+=r.loaded,i){let r=Math.round(e.duration/t.duration),a=Math.min(Math.round(n.loaded/i),r),o=(r-a)*Math.round(n.loaded/a);n.total=n.loaded+o}else n.total=Math.max(n.loaded,n.total);let a=n.loading,o=r.loading;a.start?a.first+=o.first-o.start:(a.start=o.start,a.first=o.first),a.end=o.end}resetLoader(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()}};function GI(e,t=null){let n=t||e,r={frag:e,part:t,responseType:`arraybuffer`,url:n.url,headers:{},rangeStart:0,rangeEnd:0},i=n.byteRangeStartOffset,a=n.byteRangeEndOffset;if(q(i)&&q(a)){let t=i,n=a;if(e.sn===`initSegment`&&qI(e.decryptdata?.method)){let e=a-i;e%16&&(n=a+(16-e%16)),i!==0&&(r.resetIV=!0,t=i-16)}r.rangeStart=t,r.rangeEnd=n}return r}function KI(e,t){let n=Error(`GAP ${e.gap?`tag`:`attribute`} found`),r={type:VN.MEDIA_ERROR,details:J.FRAG_GAP,fatal:!1,frag:e,error:n,networkDetails:null};return t&&(r.part=t),(t||e).stats.aborted=!0,new JI(r)}function qI(e){return e===`AES-128`||e===`AES-256`}var JI=class extends Error{constructor(e){super(e.error.message),this.data=void 0,this.data=e}},YI=class extends QN{constructor(e,t){super(e,t),this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}destroy(){this.onHandlerDestroying(),this.onHandlerDestroyed()}onHandlerDestroying(){this.clearNextTick(),this.clearInterval()}onHandlerDestroyed(){}hasInterval(){return!!this._tickInterval}hasNextTick(){return!!this._tickTimer}setInterval(e){return!this._tickInterval&&(this._tickCallCount=0,this._tickInterval=self.setInterval(this._boundTick,e),!0)}clearInterval(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1}clearNextTick(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1}tick(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)}tickImmediate(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)}doTick(){}},XI=class{constructor(e,t,n,r=0,i=-1,a=!1){this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing=ZI(),this.buffering={audio:ZI(),video:ZI(),audiovideo:ZI()},this.level=e,this.sn=t,this.id=n,this.size=r,this.part=i,this.partial=a}};function ZI(){return{start:0,executeStart:0,executeEnd:0,end:0}}var QI={length:0,start:()=>0,end:()=>0},$I=class e{static isBuffered(t,n){if(t){let r=e.getBuffered(t);for(let e=r.length;e--;)if(n>=r.start(e)&&n<=r.end(e))return!0}return!1}static bufferedRanges(t){if(t){let n=e.getBuffered(t);return e.timeRangesToArray(n)}return[]}static timeRangesToArray(e){let t=[];for(let n=0;n<e.length;n++)t.push({start:e.start(n),end:e.end(n)});return t}static bufferInfo(t,n,r){if(t){let i=e.bufferedRanges(t);if(i.length)return e.bufferedInfo(i,n,r)}return{len:0,start:n,end:n,bufferedIndex:-1}}static bufferedInfo(e,t,n){t=Math.max(0,t),e.length>1&&e.sort((e,t)=>e.start-t.start||t.end-e.end);let r=-1,i=[];if(n)for(let a=0;a<e.length;a++){t>=e[a].start&&t<=e[a].end&&(r=a);let o=i.length;if(o){let t=i[o-1].end;e[a].start-t<n?e[a].end>t&&(i[o-1].end=e[a].end):i.push(e[a])}else i.push(e[a])}else i=e;let a=0,o,s=t,c=t;for(let e=0;e<i.length;e++){let l=i[e].start,u=i[e].end;if(r===-1&&t>=l&&t<=u&&(r=e),t+n>=l&&t<u)s=l,c=u,a=c-t;else if(t+n<l){o=l;break}}return{len:a,start:s||0,end:c||0,nextStart:o,buffered:e,bufferedIndex:r}}static getBuffered(e){try{return e.buffered||QI}catch(e){return oP.log(`failed to get media.buffered`,e),QI}}},eL=/\{\$([a-zA-Z0-9-_]+)\}/g;function tL(e){return eL.test(e)}function nL(e,t){if(e.variableList!==null||e.hasVariableRefs){let n=e.variableList;return t.replace(eL,t=>{let r=t.substring(2,t.length-1),i=n?.[r];return i===void 0?(e.playlistParsingError||=Error(`Missing preceding EXT-X-DEFINE tag for Variable Reference: "${r}"`),t):i})}return t}function rL(e,t,n){let r=e.variableList;r||(e.variableList=r={});let i,a;if(`QUERYPARAM`in t){i=t.QUERYPARAM;try{let e=new self.URL(n).searchParams;if(e.has(i))a=e.get(i);else throw Error(`"${i}" does not match any query parameter in URI: "${n}"`)}catch(t){e.playlistParsingError||=Error(`EXT-X-DEFINE QUERYPARAM: ${t.message}`)}}else i=t.NAME,a=t.VALUE;i in r?e.playlistParsingError||=Error(`EXT-X-DEFINE duplicate Variable Name declarations: "${i}"`):r[i]=a||``}function iL(e,t,n){let r=t.IMPORT;if(n&&r in n){let t=e.variableList;t||(e.variableList=t={}),t[r]=n[r]}else e.playlistParsingError||=Error(`EXT-X-DEFINE IMPORT attribute not found in Multivariant Playlist: "${r}"`)}var aL=/^(\d+)x(\d+)$/,oL=/(.+?)=(".*?"|.*?)(?:,|$)/g,sL=class e{constructor(t,n){typeof t==`string`&&(t=e.parseAttrList(t,n)),qN(this,t)}get clientAttrs(){return Object.keys(this).filter(e=>e.substring(0,2)===`X-`)}decimalInteger(e){let t=parseInt(this[e],10);return t>2**53-1?1/0:t}hexadecimalInteger(e){if(this[e]){let t=(this[e]||`0x`).slice(2);t=(t.length&1?`0`:``)+t;let n=new Uint8Array(t.length/2);for(let e=0;e<t.length/2;e++)n[e]=parseInt(t.slice(e*2,e*2+2),16);return n}return null}hexadecimalIntegerAsNumber(e){let t=parseInt(this[e],16);return t>2**53-1?1/0:t}decimalFloatingPoint(e){return parseFloat(this[e])}optionalFloat(e,t){let n=this[e];return n?parseFloat(n):t}enumeratedString(e){return this[e]}enumeratedStringList(e,t){let n=this[e];return(n?n.split(/[ ,]+/):[]).reduce((e,t)=>(e[t.toLowerCase()]=!0,e),t)}bool(e){return this[e]===`YES`}decimalResolution(e){let t=aL.exec(this[e]);if(t!==null)return{width:parseInt(t[1],10),height:parseInt(t[2],10)}}static parseAttrList(e,t){let n,r={};for(oL.lastIndex=0;(n=oL.exec(e))!==null;){let i=n[1].trim(),a=n[2],o=a.indexOf(`"`)===0&&a.lastIndexOf(`"`)===a.length-1,s=!1;if(o)a=a.slice(1,-1);else switch(i){case`IV`:case`SCTE35-CMD`:case`SCTE35-IN`:case`SCTE35-OUT`:s=!0}if(t&&(o||s))a=nL(t,a);else if(!s&&!o)switch(i){case`CLOSED-CAPTIONS`:if(a===`NONE`)break;case`ALLOWED-CPC`:case`CLASS`:case`ASSOC-LANGUAGE`:case`AUDIO`:case`BYTERANGE`:case`CHANNELS`:case`CHARACTERISTICS`:case`CODECS`:case`DATA-ID`:case`END-DATE`:case`GROUP-ID`:case`ID`:case`IMPORT`:case`INSTREAM-ID`:case`KEYFORMAT`:case`KEYFORMATVERSIONS`:case`LANGUAGE`:case`NAME`:case`PATHWAY-ID`:case`QUERYPARAM`:case`RECENTLY-REMOVED-DATERANGES`:case`SERVER-URI`:case`STABLE-RENDITION-ID`:case`STABLE-VARIANT-ID`:case`START-DATE`:case`SUBTITLES`:case`SUPPLEMENTAL-CODECS`:case`URI`:case`VALUE`:case`VIDEO`:case`X-ASSET-LIST`:case`X-ASSET-URI`:oP.warn(`${e}: attribute ${i} is missing quotes`)}r[i]=a}return r}},cL=`com.apple.hls.interstitial`;function lL(e){return e!==`ID`&&e!==`CLASS`&&e!==`CUE`&&e!==`START-DATE`&&e!==`DURATION`&&e!==`END-DATE`&&e!==`END-ON-NEXT`}function uL(e){return e===`SCTE35-OUT`||e===`SCTE35-IN`||e===`SCTE35-CMD`}var dL=class{constructor(e,t,n=0){if(this.attr=void 0,this.tagAnchor=void 0,this.tagOrder=void 0,this._startDate=void 0,this._endDate=void 0,this._dateAtEnd=void 0,this._cue=void 0,this._badValueForSameId=void 0,this.tagAnchor=t?.tagAnchor||null,this.tagOrder=t?.tagOrder??n,t){let n=t.attr;for(let t in n)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t]!==n[t]){oP.warn(`DATERANGE tag attribute: "${t}" does not match for tags with ID: "${e.ID}"`),this._badValueForSameId=t;break}e=qN(new sL({}),n,e)}if(this.attr=e,t?(this._startDate=t._startDate,this._cue=t._cue,this._endDate=t._endDate,this._dateAtEnd=t._dateAtEnd):this._startDate=new Date(e[`START-DATE`]),`END-DATE`in this.attr){let e=t?.endDate||new Date(this.attr[`END-DATE`]);q(e.getTime())&&(this._endDate=e)}}get id(){return this.attr.ID}get class(){return this.attr.CLASS}get cue(){let e=this._cue;return e===void 0?this._cue=this.attr.enumeratedStringList(this.attr.CUE?`CUE`:`X-CUE`,{pre:!1,post:!1,once:!1}):e}get startTime(){let{tagAnchor:e}=this;return e===null||e.programDateTime===null?(oP.warn(`Expected tagAnchor Fragment with PDT set for DateRange "${this.id}": ${e}`),NaN):e.start+(this.startDate.getTime()-e.programDateTime)/1e3}get startDate(){return this._startDate}get endDate(){let e=this._endDate||this._dateAtEnd;if(e)return e;let t=this.duration;return t===null?null:this._dateAtEnd=new Date(this._startDate.getTime()+t*1e3)}get duration(){if(`DURATION`in this.attr){let e=this.attr.decimalFloatingPoint(`DURATION`);if(q(e))return e}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}get plannedDuration(){return`PLANNED-DURATION`in this.attr?this.attr.decimalFloatingPoint(`PLANNED-DURATION`):null}get endOnNext(){return this.attr.bool(`END-ON-NEXT`)}get isInterstitial(){return this.class===cL}get isValid(){return!!this.id&&!this._badValueForSameId&&q(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)&&(!this.attr.CUE||!this.cue.pre&&!this.cue.post||this.cue.pre!==this.cue.post)&&(!this.isInterstitial||`X-ASSET-URI`in this.attr||`X-ASSET-LIST`in this.attr)}},fL=10,pL=class{constructor(e){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.dateRangeTagCount=0,this.live=!0,this.requestScheduled=-1,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8=``,this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.drift
vendor: 5,694 bytes, line 1802
1802StartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.playlistParsingError=null,this.variableList=null,this.hasVariableRefs=!1,this.appliedTimelineOffset=void 0,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=e}reloaded(e){if(!e){this.advanced=!0,this.updated=!0;return}let t=this.lastPartSn-e.lastPartSn,n=this.lastPartIndex-e.lastPartIndex;this.updated=this.endSN!==e.endSN||!!n||!!t||!this.live,this.advanced=this.endSN>e.endSN||t>0||t===0&&n>0,this.misses=this.updated||this.advanced?Math.floor(e.misses*.6):e.misses+1}hasKey(e){return this.encryptedFragments.some(t=>{let n=t.decryptdata;return n||=(t.setKeyFormat(e.keyFormat),t.decryptdata),!!n&&e.matches(n)})}get hasProgramDateTime(){return this.fragments.length?q(this.fragments[this.fragments.length-1].programDateTime):!1}get levelTargetDuration(){return this.averagetargetduration||this.targetduration||fL}get drift(){let e=this.driftEndTime-this.driftStartTime;return e>0?(this.driftEnd-this.driftStart)*1e3/e:1}get edge(){return this.partEnd||this.fragmentEnd}get partEnd(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].end:this.fragmentEnd}get fragmentEnd(){return this.fragments.length?this.fragments[this.fragments.length-1].end:0}get fragmentStart(){return this.fragments.length?this.fragments[0].start:0}get age(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}get lastPartIndex(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].index:-1}get maxPartIndex(){let e=this.partList;if(e){let t=this.lastPartIndex;if(t!==-1){for(let n=e.length;n--;)if(e[n].index>t)return e[n].index;return t}}return 0}get lastPartSn(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}get expired(){if(this.live&&this.age&&this.misses<3){let e=this.partEnd-this.fragmentStart;return this.age>Math.max(e,this.totalduration)+this.levelTargetDuration}return!1}};function mL(e,t){return e.length===t.length&&!e.some((e,n)=>e!==t[n])}function hL(e,t){return!e&&!t?!0:!e||!t?!1:mL(e,t)}function gL(e){return e===`AES-128`||e===`AES-256`||e===`AES-256-CTR`}function _L(e){switch(e){case`AES-128`:case`AES-256`:return FI.cbc;case`AES-256-CTR`:return FI.ctr;default:throw Error(`invalid full segment method ${e}`)}}function vL(e){return Uint8Array.from(atob(e),e=>e.charCodeAt(0))}function yL(e){return Uint8Array.from(unescape(encodeURIComponent(e)),e=>e.charCodeAt(0))}function bL(e){let t=yL(e).subarray(0,16),n=new Uint8Array(16);return n.set(t,16-t.length),n}function xL(e){let t=function(e,t,n){let r=e[t];e[t]=e[n],e[n]=r};t(e,0,3),t(e,1,2),t(e,4,5),t(e,6,7)}function SL(e){let t=e.split(`:`),n=null;if(t[0]===`data`&&t.length===2){let e=t[1].split(`;`),r=e[e.length-1].split(`,`);if(r.length===2){let t=r[0]===`base64`,i=r[1];t?(e.splice(-1,1),n=vL(i)):n=bL(i)}}return n}var CL=typeof self<`u`?self:void 0,wL={CLEARKEY:`org.w3.clearkey`,FAIRPLAY:`com.apple.fps`,PLAYREADY:`com.microsoft.playready`,WIDEVINE:`com.widevine.alpha`},TL={CLEARKEY:`org.w3.clearkey`,FAIRPLAY:`com.apple.streamingkeydelivery`,PLAYREADY:`com.microsoft.playready`,WIDEVINE:`urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed`};function EL(e){switch(e){case TL.FAIRPLAY:return wL.FAIRPLAY;case TL.PLAYREADY:return wL.PLAYREADY;case TL.WIDEVINE:return wL.WIDEVINE;case TL.CLEARKEY:return wL.CLEARKEY}}function DL(e){switch(e){case wL.FAIRPLAY:return TL.FAIRPLAY;case wL.PLAYREADY:return TL.PLAYREADY;case wL.WIDEVINE:return TL.WIDEVINE;case wL.CLEARKEY:return TL.CLEARKEY}}function OL(e){let{drmSystems:t,widevineLicenseUrl:n}=e,r=t?[wL.FAIRPLAY,wL.WIDEVINE,wL.PLAYREADY,wL.CLEARKEY].filter(e=>!!t[e]):[];return!r[wL.WIDEVINE]&&n&&r.push(wL.WIDEVINE),r}var kL=function(e){return CL!=null&&(e=CL.navigator)!=null&&e.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}();function AL(e,t,n,r){let i;switch(e){case wL.FAIRPLAY:i=[`cenc`,`sinf`];break;case wL.WIDEVINE:case wL.PLAYREADY:i=[`cenc`];break;case wL.CLEARKEY:i=[`cenc`,`keyids`];break;default:throw Error(`Unknown key-system: ${e}`)}return jL(i,t,n,r)}function jL(e,t,n,r){return[{initDataTypes:e,persistentState:r.persistentState||`optional`,distinctiveIdentifier:r.distinctiveIdentifier||`optional`,sessionTypes:r.sessionTypes||[r.sessionType||`temporary`],audioCapabilities:t.map(e=>({contentType:`audio/mp4; codecs=${e}`,robustness:r.audioRobustness||``,encryptionScheme:r.audioEncryptionScheme||null})),videoCapabilities:n.map(e=>({contentType:`video/mp4; codecs=${e}`,robustness:r.videoRobustness||``,encryptionScheme:r.videoEncryptionScheme||null}))}]}function ML(e){var t;return!!e&&(e.sessionType===`persistent-license`||!!((t=e.sessionTypes)!=null&&t.some(e=>e===`persistent-license`)))}function NL(e){let t=new Uint16Array(e.buffer,e.byteOffset,e.byteLength/2),n=String.fromCharCode.apply(null,Array.from(t)),r=n.substring(n.indexOf(`<`),n.length),i=new DOMParser().parseFromString(r,`text/xml`).getElementsByTagName(`KID`)[0];if(i){let e=i.childNodes[0]?i.childNodes[0].nodeValue:i.getAttribute(`VALUE`);if(e){let t=vL(e).subarray(0,16);return xL(t),t}}return null}var PL={},FL=class e{static clearKeyUriToKeyIdMap(){PL={}}static setKeyIdForUri(e,t){PL[e]=t}static addKeyIdForUri(e){let t=Object.keys(PL).length%(2**53-1),n=new Uint8Array(16);return new DataView(n.buffer,12,4).setUint32(0,t),PL[e]=n,n}constructor(e,t,n,r=[1],i=null,a){this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pss
1802h=null,this.method=e,this.uri=t,this.keyFormat=n,this.keyFormatVersions=r,this.iv=i,this.encrypted=e?e!==`NONE`:!1,this.isCommonEncryption=this.encrypted&&!gL(e),a!=null&&a.startsWith(`0x`)&&(this.keyId=new Uint8Array(fP(a)))}matches(e){return e.uri===this.uri&&e.method===this.method&&e.encrypted===this.encrypted&&e.keyFormat===this.keyFormat&&mL(e.keyFormatVersions,this.keyFormatVersions)&&hL(e.iv,this.iv)&&hL(e.keyId,this.keyId)}isSupported(){if(this.method){if(gL(this.method)||this.method===`NONE`)return!0;if(this.keyFormat===`identity`)return this.method===`SAMPLE-AES`;switch(this.keyFormat){case TL.FAIRPLAY:case TL.WIDEVINE:case TL.PLAYREADY:case TL.CLEARKEY:return[`SAMPLE-AES`,`SAMPLE-AES-CENC`,`SAMPLE-AES-CTR`].indexOf(this.method)!==-1}}return!1}getDecryptData(t,n){if(!this.encrypted||!this.uri)return null;if(gL(this.method)){let n=this.iv;return n||=(typeof t!=`number`&&(oP.warn(`missing IV for initialization segment with method="${this.method}" - compliance issue`),t=0),RL(t)),new e(this.method,this.uri,`identity`,this.keyFormatVersions,n)}if(this.keyId){let t=PL[this.uri];if(t&&!mL(this.keyId,t)&&e.setKeyIdForUri(this.uri,this.keyId),this.pssh)return this}let r=SL(this.uri);if(r)switch(this.keyFormat){case TL.WIDEVINE:if(this.pssh=r,!this.keyId){let e=aF(r.buffer);if(e.length){var i;let t=e[0];this.keyId=(i=t.kids)!=null&&i.length?t.kids[0]:null}}this.keyId||=LL(n);break;case TL.PLAYREADY:{let e=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=iF(e,null,r),this.keyId=NL(r);break}default:{let e=r.subarray(0,16);if(e.length!==16){let t=new Uint8Array(16);t.set(e,16-e.length),e=t}this.keyId=e;break}}if(!this.keyId||this.keyId.byteLength!==16){let t;t=IL(n),t||(t=LL(n),t||=PL[this.uri]),t&&(this.keyId=t,e.setKeyIdForUri(this.uri,t))}return this}};function IL(e){let t=e?.[TL.WIDEVINE];return t?t.keyId:null}function LL(e){let t=e?.[TL.PLAYREADY];if(t){let e=SL(t.uri);if(e)return NL(e)}return null}function RL(e){let t=new Uint8Array(16);for(let n=12;n<16;n++)t[n]=e>>8*(15-n)&255;return t}var zL=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-(SESSION-DATA|SESSION-KEY|DEFINE|CONTENT-STEERING|START):([^\r\n]*)[\r\n]+/g,BL=/#EXT-X-MEDIA:(.*)/g,VL=/^#EXT(?:INF|-X-TARGETDURATION):/m,HL=new RegExp([`#EXTINF:\\s*(\\d*(?:\\.\\d+)?)(?:,(.*)\\s+)?`,`(?!#) *(\\S[^\\r\\n]*)`,`#.*`].join(`|`),`g`),UL=new RegExp([`#EXT-X-(PROGRAM-DATE-TIME|BYTERANGE|DATERANGE|DEFINE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)`,`#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\\d+)`,`#EXT-X-(DISCONTINUITY|ENDLIST|GAP|INDEPENDENT-SEGMENTS)`,`(#)([^:]*):(.*)`,`(#)(.*)(?:.*)\\r?\\n?`].join(`|`)),WL=class e{static findGroup(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.id===t)return r}}static resolve(e,t){return _P.buildAbsoluteURL(t,e,{alwaysNormalize:!0})}static isMediaPlaylist(e){return VL.test(e)}static parseMasterPlaylist(t,n){let r={contentSteering:null,levels:[],playlistParsingError:null,sessionData:null,sessionKeys:null,startTimeOffset:null,variableList:null,hasVariableRefs:tL(t)},i=[];if(zL.lastIndex=0,!t.startsWith(`#EXTM3U`))return r.playlistParsingError=Error(`no EXTM3U delimiter`),r;let a;for(;(a=zL.exec(t))!=null;)if(a[1]){var o;let t=new sL(a[1],r),s=nL(r,a[2]),c={attrs:t,bitrate:t.decimalInteger(`BANDWIDTH`)||t.decimalInteger(`AVERAGE-BANDWIDTH`),name:t.NAME,url:e.resolve(s,n)},l=t.decimalResolution(`RESOLUTION`);l&&(c.width=l.width,c.height=l.height),YL(t.CODECS,c);let u=t[`SUPPLEMENTAL-CODECS`];u&&(c.supplemental={},YL(u,c.supplemental)),(o=c.unknownCodecs)!=null&&o.length||i.push(c),r.levels.push(c)}else if(a[3]){let t=a[3],i=a[4];switch(t){case`SESSION-DATA`:{let e=new sL(i,r),t=e[`DATA-ID`];t&&(r.sessionData===null&&(r.sessionData={}),r.sessionData[t]=e);break}case`SESSION-KEY`:{let e=qL(i,n,r);e.encrypted&&e.isSupported()?(r.sessionKeys===null&&(r.sessionKeys=[]),r.sessionKeys.push(e)):oP.warn(`[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "${i}"`);break}case`DEFINE`:rL(r,new sL(i,r),n);break;case`CONTENT-STEERING`:{let t=new sL(i,r);r.contentSteering={uri:e.resolve(t[`SERVER-URI`],n),pathwayId:t[`PATHWAY-ID`]||`.`};break}case`START`:r.startTimeOffset=JL(i)}}return r.levels=i.length>0&&i.length<r.levels.length?i:r.levels,r.levels.length===0&&(r.playlistParsingError=Error(`no levels found in manifest`)),r}static parseMasterPlaylistMedia(t,n,r){let i,a={},o=r.levels,s={AUDIO:o.map(e=>({id:e.attrs.AUDIO,audioCodec:e.audioCodec})),SUBTITLES:o.map(e=>({id:e.attrs.SUBTITLES,textCodec:e.textCodec})),"CLOSED-CAPTIONS":[]},c=0;for(BL.lastIndex=0;(i=BL.exec(t))!==null;){let t=new sL(i[1],r),o=t.TYPE;if(o){let r=s[o],i=a[o]||[];a[o]=i;let l=t.LANGUAGE,u=t[`ASSOC-LANGUAGE`],d=t.CHANNELS,f=t.CHARACTERISTICS,p=t[`INSTREAM-ID`],m={attrs:t,bitrate:0,id:c++,groupId:t[`GROUP-ID`]||``,name:t.NAME||l||``,type:o,default:t.bool(`DEFAULT`),autoselect:t.bool(`AUTOSELECT`),forced:t.bool(`FORCED`),lang:l,url:t.URI?e.resolve(t.URI,n):``};if(u&&(m.assocLang=u),d&&(m.channels=d),f&&(m.characteristics=f),p&&(m.instreamId=p),r!=null&&r.length){let t=e.findGroup(r,m.groupId)||r[0];XL(m,t,`audioCodec`),XL(m,t,`textCodec`)}i.push(m)}}return a}static parseLevelPlaylist(e,t,n,r,i,a){let o={url:t},s=new pL(t),c=s.fragments,l=[],u=null,d=0,f=0,p=0,m=0,h=0,g=null,_=new SP(r,o),v,y,b,x=-1,S=!1,ee=null,te;if(HL.lastIndex=0,s.m3u8=e,s.hasVariableRefs=tL(e),HL.exec(e)?.[0]!==`#EXTM3U`)return s.playlistParsingError=Error(`Missing format identifier #EXTM3U`),s;for(;(v=HL.exec(e))!==null;
vendor: 29,632 bytes, lines 1802-1807
1802){S&&(S=!1,_=new SP(r,o),_.playlistOffset=p,_.setStart(p),_.sn=d,_.cc=m,h&&(_.bitrate=h),_.level=n,u&&(_.initSegment=u,u.rawProgramDateTime&&(_.rawProgramDateTime=u.rawProgramDateTime,u.rawProgramDateTime=null),ee&&=(_.setByteRange(ee),null)));let e=v[1];if(e){_.duration=parseFloat(e);let t=(` `+v[2]).slice(1);_.title=t||null,_.tagList.push(t?[`INF`,e,t]:[`INF`,e])}else if(v[3]){if(q(_.duration)){_.playlistOffset=p,_.setStart(p),b&&eR(_,b,s),_.sn=d,_.level=n,_.cc=m,c.push(_);let e=(` `+v[3]).slice(1);_.relurl=nL(s,e),QL(_,g,l),g=_,p+=_.duration,d++,f=0,S=!0}}else{if(v=v[0].match(UL),!v){oP.warn(`No matches on slow regex match for level playlist!`);continue}for(y=1;y<v.length&&v[y]===void 0;y++);let e=(` `+v[y]).slice(1),i=(` `+v[y+1]).slice(1),l=v[y+2]?(` `+v[y+2]).slice(1):null;switch(e){case`BYTERANGE`:g?_.setByteRange(i,g):_.setByteRange(i);break;case`PROGRAM-DATE-TIME`:_.rawProgramDateTime=i,_.tagList.push([`PROGRAM-DATE-TIME`,i]),x===-1&&(x=c.length);break;case`PLAYLIST-TYPE`:s.type&&tR(s,e,v),s.type=i.toUpperCase();break;case`MEDIA-SEQUENCE`:s.startSN===0?c.length>0&&nR(s,e,v):tR(s,e,v),d=s.startSN=parseInt(i);break;case`SKIP`:{s.skippedSegments&&tR(s,e,v);let t=new sL(i,s),n=t.decimalInteger(`SKIPPED-SEGMENTS`);if(q(n)){s.skippedSegments+=n;for(let e=n;e--;)c.push(null);d+=n}let r=t.enumeratedString(`RECENTLY-REMOVED-DATERANGES`);r&&(s.recentlyRemovedDateranges=(s.recentlyRemovedDateranges||[]).concat(r.split(` `)));break}case`TARGETDURATION`:s.targetduration!==0&&tR(s,e,v),s.targetduration=Math.max(parseInt(i),1);break;case`VERSION`:s.version!==null&&tR(s,e,v),s.version=parseInt(i);break;case`INDEPENDENT-SEGMENTS`:break;case`ENDLIST`:s.live||tR(s,e,v),s.live=!1;break;case`#`:(i||l)&&_.tagList.push(l?[i,l]:[i]);break;case`DISCONTINUITY`:m++,_.tagList.push([`DIS`]);break;case`GAP`:_.gap=!0,_.tagList.push([e]);break;case`BITRATE`:_.tagList.push([e,i]),h=parseInt(i)*1e3,q(h)?_.bitrate=h:h=0;break;case`DATERANGE`:{let e=new sL(i,s),t=new dL(e,s.dateRanges[e.ID],s.dateRangeTagCount);s.dateRangeTagCount++,t.isValid||s.skippedSegments?s.dateRanges[t.id]=t:oP.warn(`Ignoring invalid DATERANGE tag: "${i}"`),_.tagList.push([`EXT-X-DATERANGE`,i]);break}case`DEFINE`:{let e=new sL(i,s);`IMPORT`in e?iL(s,e,a):rL(s,e,t)}break;case`DISCONTINUITY-SEQUENCE`:s.startCC===0?c.length>0&&nR(s,e,v):tR(s,e,v),s.startCC=m=parseInt(i);break;case`KEY`:{let e=qL(i,t,s);if(e.isSupported()){if(e.method===`NONE`){b=void 0;break}b||={};let t=b[e.keyFormat];t!=null&&t.matches(e)||(t&&(b=qN({},b)),b[e.keyFormat]=e)}else oP.warn(`[Keys] Ignoring unsupported EXT-X-KEY tag: "${i}"`);break}case`START`:s.startTimeOffset=JL(i);break;case`MAP`:{let e=new sL(i,s);if(_.duration){let t=new SP(r,o);$L(t,e,n,b),u=t,_.initSegment=u,u.rawProgramDateTime&&!_.rawProgramDateTime&&(_.rawProgramDateTime=u.rawProgramDateTime)}else{let t=_.byteRangeEndOffset;if(t){let e=_.byteRangeStartOffset;ee=`${t-e}@${e}`}else ee=null;$L(_,e,n,b),u=_,S=!0}u.cc=m;break}case`SERVER-CONTROL`:te&&tR(s,e,v),te=new sL(i),s.canBlockReload=te.bool(`CAN-BLOCK-RELOAD`),s.canSkipUntil=te.optionalFloat(`CAN-SKIP-UNTIL`,0),s.canSkipDateRanges=s.canSkipUntil>0&&te.bool(`CAN-SKIP-DATERANGES`),s.partHoldBack=te.optionalFloat(`PART-HOLD-BACK`,0),s.holdBack=te.optionalFloat(`HOLD-BACK`,0);break;case`PART-INF`:s.partTarget&&tR(s,e,v),s.partTarget=new sL(i).decimalFloatingPoint(`PART-TARGET`);break;case`PART`:{let e=s.partList;e||=s.partList=[];let t=f>0?e[e.length-1]:void 0,n=f++,r=new CP(new sL(i,s),_,o,n,t);e.push(r),_.duration+=r.duration;break}case`PRELOAD-HINT`:s.preloadHint=new sL(i,s);break;case`RENDITION-REPORT`:{let e=new sL(i,s);s.renditionReports=s.renditionReports||[],s.renditionReports.push(e);break}default:oP.warn(`line parsed but not handled: ${v}`)}}}g&&!g.relurl?(c.pop(),p-=g.duration,s.partList&&(s.fragmentHint=g)):s.partList&&(QL(_,g,l),_.cc=m,s.fragmentHint=_,b&&eR(_,b,s)),s.targetduration||(s.playlistParsingError=Error(`Missing Target Duration`));let ne=c.length,re=c[0],ie=c[ne-1];if(p+=s.skippedSegments*s.targetduration,p>0&&ne&&ie){s.averagetargetduration=p/ne;let e=ie.sn;s.endSN=e===`initSegment`?0:e,s.live||(ie.endList=!0),x>0&&(ZL(c,x),re&&l.unshift(re))}return s.fragmentHint&&(p+=s.fragmentHint.duration),s.totalduration=p,l.length&&s.dateRangeTagCount&&re&&GL(l,s),s.endCC=m,s}};function GL(e,t){let n=e.length;if(!n)if(t.hasProgramDateTime){let r=t.fragments[t.fragments.length-1];e.push(r),n++}else return;let r=e[n-1],i=t.live?1/0:t.totalduration,a=Object.keys(t.dateRanges);for(let o=a.length;o--;){let s=t.dateRanges[a[o]],c=s.startDate.getTime();s.tagAnchor=r.ref;for(let r=n;r--&&!(e[r]?.sn<t.startSN);){let n=KL(t,c,e,r,i);if(n!==-1){s.tagAnchor=t.fragments[n].ref;break}}}}function KL(e,t,n,r,i){let a=n[r];if(a){let o=a.programDateTime;if((t>=o||r===0)&&t<=o+((n[r+1]?.start||i)-a.start)*1e3){let i=n[r].sn-e.startSN;if(i<0)return-1;let a=e.fragments;if(a.length>n.length){let o=(n[r+1]||a[a.length-1]).sn-e.startSN;for(let e=o;e>i;e--){let n=a[e].programDateTime;if(t>=n&&t<n+a[e].duration*1e3)return e}}return i}}return-1}function qL(e,t,n){let r=new sL(e,n),i=r.METHOD??``,a=r.URI,o=r.hexadecimalInteger(`IV`),s=r.KEYFORMATVERSIONS,c=r.KEYFORMAT??`identity`;return a&&r.IV&&!o&&oP.error(`Invalid IV: ${r.IV}`),new FL(i,a?WL.resolve(a,t):``,c,(s||`1`).split(`/`).map(Number).filter(Number.isFinite),o,r.KEYID)}function JL(e){let t=new sL(e).decimalFloatingPoint(`TIME-OFFSET`);return q(t)?t:null}function YL(e,t){let n=(e||``).split(/[ ,]+/).filter(e=>e);[`video`,`audio`,`text`].forEach(e=>{let r=n.filter(t=>lF(t,e));r.length&&(t[`${e}Codec`]=r.map(e=>e.split(`/`)[0]).join(`,`),n=n.filter(e=>r.indexOf(e)===-1))}),t.unknownCodecs=n}function XL(e,t,n){let r=t[n];r&&(e[n]=r)}function ZL(e,t){let n=e[t];for(let r=t;r--;){let t=e[r];if(!t)return;t.programDateTime=n.programDateTime-t.duration*1e3,n=t}}function QL(e,t,n){e.rawProgramDateTime?n.push(e):t!=null&&t.programDateTime&&(e.programDateTime=t.endProgramDateTime)}function $L(e,t,n,r){e.relurl=t.URI,t.BYTERANGE&&e.setByteRange(t.BYTERANGE),e.level=n,e.sn=`initSegment`,r&&(e.levelkeys=r),e.initSegment=null}function eR(e,t,n){e.levelkeys=t;let{encryptedFragments:r}=n;(!r.length||r[r.length-1].levelkeys!==t)&&Object.keys(t).some(e=>t[e].isCommonEncryption)&&r.push(e)}function tR(e,t,n){e.playlistParsingError=Error(`#EXT-X-${t} must not appear more than once (${n[0]})`)}function nR(e,t,n){e.playlistParsingError=Error(`#EXT-X-${t} must appear before the first Media Segment (${n[0]})`)}function rR(e,t){let n=t.startPTS;if(q(n)){let r=0,i;t.sn>e.sn?(r=n-e.start,i=e):(r=e.start-n,i=t),i.duration!==r&&i.setDuration(r)}else t.sn>e.sn?e.cc===t.cc&&e.minEndPTS?t.setStart(e.start+(e.minEndPTS-e.start)):t.setStart(e.start+e.duration):t.setStart(Math.max(e.start-t.duration,0))}function iR(e,t,n,r,i,a,o){r-n<=0&&(o.warn(`Fragment should have a positive duration`,t),r=n+t.duration,a=i+t.duration);let s=n,c=r,l=t.startPTS,u=t.endPTS;if(q(l)){let d=Math.abs(l-n);e&&d>e.totalduration?o.warn(`media timestamps and playlist times differ by ${d}s for level ${t.level} ${e.url}`):t.deltaPTS=q(t.deltaPTS)?Math.max(d,t.deltaPTS):d,s=Math.max(n,l),n=Math.min(n,l),i=t.startDTS===void 0?i:Math.min(i,t.startDTS),c=Math.min(r,u),r=Math.max(r,u),a=t.endDTS===void 0?a:Math.max(a,t.endDTS)}let d=n-t.start;t.start!==0&&t.setStart(n),t.setDuration(r-t.start),t.startPTS=n,t.maxStartPTS=s,t.startDTS=i,t.endPTS=r,t.minEndPTS=c,t.endDTS=a;let f=t.sn;if(!e||f<e.startSN||f>e.endSN)return 0;let p,m=f-e.startSN,h=e.fragments;for(h[m]=t,p=m;p>0;p--)rR(h[p],h[p-1]);for(p=m;p<h.length-1;p++)rR(h[p],h[p+1]);return e.fragmentHint&&rR(h[h.length-1],e.fragmentHint),e.PTSKnown=e.alignedSliding=!0,d}function aR(e,t,n){if(e===t)return;let r=null,i=e.fragments;for(let e=i.length-1;e>=0;e--){let t=i[e].initSegment;if(t){r=t;break}}e.fragmentHint&&delete e.fragmentHint.endPTS;let a;cR(e,t,(e,n,i,o)=>{if((!t.startCC||t.skippedSegments)&&n.cc!==e.cc){let r=e.cc-n.cc;for(let e=i;e<o.length;e++)o[e].cc+=r;t.endCC=o[o.length-1].cc}q(e.startPTS)&&q(e.endPTS)&&(n.setStart(n.startPTS=e.startPTS),n.startDTS=e.startDTS,n.maxStartPTS=e.maxStartPTS,n.endPTS=e.endPTS,n.endDTS=e.endDTS,n.minEndPTS=e.minEndPTS,n.setDuration(e.endPTS-e.startPTS),n.duration&&(a=n),t.PTSKnown=t.alignedSliding=!0),e.hasStreams&&(n.elementaryStreams=e.elementaryStreams),n.loader=e.loader,e.hasStats&&(n.stats=e.stats),e.initSegment&&(n.initSegment=e.initSegment,r=e.initSegment)});let o=t.fragments,s=t.fragmentHint?o.concat(t.fragmentHint):o;if(r&&s.forEach(e=>{e&&(!e.initSegment||e.initSegment.relurl===r?.relurl)&&(e.initSegment=r)}),t.skippedSegments){if(t.deltaUpdateFailed=o.some(e=>!e),t.deltaUpdateFailed){n.warn(`[level-helper] Previous playlist missing segments skipped in delta playlist`);for(let e=t.skippedSegments;e--;)o.shift();t.startSN=o[0].sn}else{t.canSkipDateRanges&&(t.dateRanges=oR(e.dateRanges,t,n));let r=e.fragments.filter(e=>e.rawProgramDateTime);if(e.hasProgramDateTime&&!t.hasProgramDateTime)for(let e=1;e<s.length;e++)s[e].programDateTime===null&&QL(s[e],s[e-1],r);GL(r,t)}t.endCC=o[o.length-1].cc}t.startCC||=pR(e,t.startSN-1)?.cc??o[0].cc,sR(e.partList,t.partList,(e,t)=>{t.elementaryStreams=e.elementaryStreams,t.stats=e.stats}),a?iR(t,a,a.startPTS,a.endPTS,a.startDTS,a.endDTS,n):uR(e,t),o.length&&(t.totalduration=t.edge-o[0].start),t.driftStartTime=e.driftStartTime,t.driftStart=e.driftStart;let c=t.advancedDateTime;if(t.advanced&&c){let e=t.edge;t.driftStart||=(t.driftStartTime=c,e),t.driftEndTime=c,t.driftEnd=e}else t.driftEndTime=e.driftEndTime,t.driftEnd=e.driftEnd,t.advancedDateTime=e.advancedDateTime;t.requestScheduled===-1&&(t.requestScheduled=e.requestScheduled)}function oR(e,t,n){let{dateRanges:r,recentlyRemovedDateranges:i}=t,a=qN({},e);i&&i.forEach(e=>{delete a[e]});let o=Object.keys(a).length;return o?(Object.keys(r).forEach(e=>{let t=a[e],i=new dL(r[e].attr,t);i.isValid?(a[e]=i,t||(i.tagOrder+=o)):n.warn(`Ignoring invalid Playlist Delta Update DATERANGE tag: "${YF(r[e].attr)}"`)}),a):r}function sR(e,t,n){if(e&&t){let r=0;for(let i=0,a=e.length;i<=a;i++){let a=e[i],o=t[i+r];a&&o&&a.index===o.index&&a.fragment.sn===o.fragment.sn?n(a,o):r--}}}function cR(e,t,n){let r=t.skippedSegments,i=Math.max(e.startSN,t.startSN)-t.startSN,a=+!!e.fragmentHint+(r?t.endSN:Math.min(e.endSN,t.endSN))-t.startSN,o=t.startSN-e.startSN,s=t.fragmentHint?t.fragments.concat(t.fragmentHint):t.fragments,c=e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments;for(let l=i;l<=a;l++){let i=c[o+l],a=s[l];if(r&&!a&&i&&(a=t.fragments[l]=i),i&&a){n(i,a,l,s);let r=i.relurl,o=a.relurl;if(r&&_R(r,o)){t.playlistParsingError=lR(`media sequence mismatch ${a.sn}:`,e,t,i,a);return}if(i.cc!==a.cc){t.playlistParsingError=lR(`discontinuity sequence mismatch (${i.cc}!=${a.cc})`,e,t,i,a);return}}}}function lR(e,t,n,r,i){return Error(`${e} ${i.url} 1803Playlist starting @${t.startSN} 1804${t.m3u8} 1805 1806Playlist starting @${n.startSN} 1807${n.m3u8}`)}function uR(e,t,n=!0){let r=t.startSN+t.skippedSegments-e.startSN,i=e.fragments,a=r>=0,o=0;if(a&&r<i.length)o=i[r].start;else if(a&&t.startSN===e.endSN+1)o=e.fragmentEnd;else if(a&&n)o=e.fragmentStart+r*t.levelTargetDuration;else if(!t.skippedSegments&&t.fragmentStart===0)o=e.fragmentStart;else return;dR(t,o)}function dR(e,t){if(t){let n=e.fragments;for(let r=e.skippedSegments;r<n.length;r++)n[r].addStart(t);e.fragmentHint&&e.fragmentHint.addStart(t)}}function fR(e,t=1/0){let n=1e3*e.targetduration;if(e.updated){let r=e.fragments;if(r.length&&n*4>t){let e=r[r.length-1].duration*1e3;e<n&&(n=e)}}else n/=2;return Math.round(n)}function pR(e,t,n){if(!e)return null;let r=e.fragments[t-e.startSN];return r||(r=e.fragmentHint,r&&r.sn===t)?r:t<e.startSN&&n&&n.sn===t?n:null}function mR(e,t,n){return e?hR(e.partList,t,n):null}function hR(e,t,n){if(e)for(let r=e.length;r--;){let i=e[r];if(i.index===n&&i.fragment.sn===t)return i}return null}function gR(e){e.forEach((e,t)=>{var n;(n=e.details)==null||n.fragments.forEach(e=>{e.level=t,e.initSegment&&(e.initSegment.level=t)})})}function _R(e,t){return e!==t&&t?vR(e)!==vR(t):!1}function vR(e){return e.replace(/\?[^?]*$/,``)}function yR(e,t){for(let n=0,r=e.length;n<r;n++)if(e[n]?.cc===t)return e[n];return null}function bR(e,t){return!!(e&&t.startCC<e.endCC&&t.endCC>e.startCC)}function xR(e,t){let n=e.start+t;e.startPTS=n,e.setStart(n),e.endPTS=n+e.duration}function SR(e,t){let n=t.fragments;for(let t=0,r=n.length;t<r;t++)xR(n[t],e);t.fragmentHint&&xR(t.fragmentHint,e),t.alignedSliding=!0}function CR(e,t){e&&(wR(t,e),t.alignedSliding||TR(t,e),!t.alignedSliding&&!t.skippedSegments&&uR(e,t,!1))}function wR(e,t){if(!bR(t,e))return;let n=Math.min(t.endCC,e.endCC),r=yR(t.fragments,n),i=yR(e.fragments,n);!r||!i||(oP.log(`Aligning playlist at start of dicontinuity sequence ${n}`),SR(r.start-i.start,e))}function TR(e,t){if(!e.hasProgramDateTime||!t.hasProgramDateTime)return;let n=e.fragments,r=t.fragments;if(!n.length||!r.length)return;let i,a,o=Math.min(t.endCC,e.endCC);t.startCC<o&&e.startCC<o&&(i=yR(r,o),a=yR(n,o)),(!i||!a)&&(i=r[Math.floor(r.length/2)],a=yR(n,i.cc)||n[Math.floor(n.length/2)]);let s=i.programDateTime,c=a.programDateTime;!s||!c||SR((c-s)/1e3-(a.start-i.start),e)}function ER(e,t,n){DR(e,t,n),e.addEventListener(t,n)}function DR(e,t,n){e.removeEventListener(t,n)}var OR={toString:function(e){let t=``,n=e.length;for(let r=0;r<n;r++)t+=`[${e.start(r).toFixed(3)}-${e.end(r).toFixed(3)}]`;return t}},X={STOPPED:`STOPPED`,IDLE:`IDLE`,KEY_LOADING:`KEY_LOADING`,FRAG_LOADING:`FRAG_LOADING`,FRAG_LOADING_WAITING_RETRY:`FRAG_LOADING_WAITING_RETRY`,WAITING_TRACK:`WAITING_TRACK`,PARSING:`PARSING`,PARSED:`PARSED`,ENDED:`ENDED`,ERROR:`ERROR`,WAITING_INIT_PTS:`WAITING_INIT_PTS`,WAITING_LEVEL:`WAITING_LEVEL`},kR=class extends YI{constructor(e,t,n,r,i){super(r,e.logger),this.hls=void 0,this.fragPrevious=null,this.fragCurrent=null,this.fragmentTracker=void 0,this.transmuxer=null,this._state=X.STOPPED,this.playlistType=void 0,this.media=null,this.mediaBuffer=null,this.config=void 0,this.bitrateTest=!1,this.lastCurrentTime=0,this.nextLoadPosition=0,this.startPosition=0,this.startTimeOffset=null,this.retryDate=0,this.levels=null,this.fragmentLoader=void 0,this.keyLoader=void 0,this.levelLastLoaded=null,this.startFragRequested=!1,this.decrypter=void 0,this.initPTS=[],this.buffering=!0,this.loadingParts=!1,this.loopSn=void 0,this.onMediaSeeking=()=>{let{config:e,fragCurrent:t,media:n,mediaBuffer:r,state:i}=this,a=n?n.currentTime:0,o=$I.bufferInfo(r||n,a,e.maxBufferHole),s=!o.len;if(this.log(`Media seeking to ${q(a)?a.toFixed(3):a}, state: ${i}, ${s?`out of`:`in`} buffer`),this.state===X.ENDED)this.resetLoadingState();else if(t){let n=e.maxFragLookUpTolerance,r=t.start-n,i=t.start+t.duration+n;if(s||i<o.start||r>o.end){let e=a>i;(a<r||e)&&(e&&t.loader&&(this.log(`Cancelling fragment load for seek (sn: ${t.sn})`),t.abortRequests(),this.resetLoadingState()),this.fragPrevious=null)}}if(n&&(this.fragmentTracker.removeFragmentsInRange(a,1/0,this.playlistType,!0),a>this.lastCurrentTime&&(this.lastCurrentTime=a),!this.loadingParts)){let e=Math.max(o.end,a),t=this.shouldLoadParts(this.getLevelDetails(),e);t&&(this.log(`LL-Part loading ON after seeking to ${a.toFixed(2)} with buffer @${e.toFixed(2)}`),this.loadingParts=t)}this.hls.hasEnoughToStart||(this.log(`Setting ${s?`startPosition`:`nextLoadPosition`} to ${a} for seek without enough to start`),this.nextLoadPosition=a,s&&(this.startPosition=a)),s&&this.state===X.IDLE&&this.tickImmediate()},this.onMediaEnded=()=>{this.log(`setting startPosition to 0 because media ended`),this.startPosition=this.lastCurrentTime=0},this.playlistType=i,this.hls=e,this.fragmentLoader=new WI(e.config),this.keyLoader=n,this.fragmentTracker=t,this.config=e.config,this.decrypter=new HI(e.config)}registerListeners(){let{hls:e}=this;e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let{hls:e}=this;e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(Y.ERROR,this.onError,this)}doTick(){this.onTickEnd()}onTickEnd(){}startLoad(e){}stopLoad(){if(this.state===X.STOPPED)return;this.fragmentLoader.abort(),this.keyLoader.abort(this.playlistType);let e=this.fragCurrent;e!=null&&e.loader&&(e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=X.STOPPED}get startPositionValue(){let{nextLoadPosition:e,startPosition:t}=this;return t===-1&&e?e:t}get bufferingEnabled(){return this.buffering}pauseBuffering(){this.buffering=!1}resumeBuffering(){this.buffering=!0}get inFlightFrag(){return{frag:this.fragCurrent,state:this.state}}_streamEnded(e,t){if(t.live||!this.media)return!1;let n=e.end||0,r=this.config.timelineOffset||0;if(n<=r)return!1;let i=e.buffered;this.config.maxBufferHole&&i&&i.length>1&&(e=$I.bufferedInfo(i,e.start,0));let a=e.nextStart;if(a&&a>r&&a<t.edge||this.media.currentTime<e.start)return!1;let o=t.partList;if(o!=null&&o.length){let e=o[o.length-1];return $I.isBuffered(this.media,e.start+e.duration/2)}let s=t.fragments[t.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(s)}getLevelDetails(){if(this.levels&&this.levelLastLoaded!==null)return this.levelLastLoaded.details}get timelineOffset(){let e=this.config.timelineOffset;return e?this.getLevelDetails()?.appliedTimelineOffset||e:0}onMediaAttached(e,t){let n=this.media=this.mediaBuffer=t.media;ER(n,`seeking`,this.onMediaSeeking),ER(n,`ended`,this.onMediaEnded);let r=this.config;this.levels&&r.autoStartLoad&&this.state===X.STOPPED&&this.startLoad(r.startPosition)}onMediaDetaching(e,t){let n=!!t.transferMedia,r=this.media;if(r!==null){if(r.ended&&(this.log(`MSE detaching and video ended, reset startPosition`),this.startPosition=this.lastCurrentTime=0),DR(r,`seeking`,this.onMediaSeeking),DR(r,`ended`,this.onMediaEnded),this.keyLoader&&!n&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loopSn=void 0,n){this.resetLoadingState(),this.resetTransmuxer();return}this.loadingParts=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()}}onManifestLoading(){this.initPTS=[],this.levels=this.levelLastLoaded=this.fragCurrent=null,this.lastCurrentTime=this.startPosition=0,this.startFragRequested=!1}onError(e,t){}onManifestLoaded(e,t){this.startTimeOffset=t.startTimeOffset}onHandlerDestroying(){this.stopLoad(),this.transmuxer&&=(this.transmuxer.destroy(),null),super.onHandlerDestroying(),this.hls=this.onMediaSeeking=this.onMediaEnded=null}onHandlerDestroyed(){this.state=X.STOPPED,this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,super.onHandlerDestroyed()}loadFragment(e,t,n){this.startFragRequested=!0,this._loadFragForPlayback(e,t,n)}_loadFragForPlayback(e,t,n){this._doFragLoad(e,t,n,e=>{let t=e.frag;if(this.fragContextChanged(t)){this.warn(`${t.type} sn: ${t.sn}${e.part?` part: `+e.part.index:``} of ${this.fragInfo(t,!1,e.part)}) was dropped during download.`),this.fragmentTracker.removeFragment(t);return}t.stats.chunkCount++,this._handleFragmentLoadProgress(e)}).then(e=>{if(!e)return;let t=this.state,n=e.frag;if(this.fragContextChanged(n)){(t===X.FRAG_LOADING||!this.fragCurrent&&t===X.PARSING)&&(this.fragmentTracker.removeFragment(n),this.state=X.IDLE);return}`payload`in e&&(this.log(`Loaded ${n.type} sn: ${n.sn} of ${this.playlistLabel()} ${n.level}`),this.hls.trigger(Y.FRAG_LOADED,e)),this._handleFragmentLoadComplete(e)}).catch(t=>{this.state!==X.STOPPED&&this.state!==X.ERROR&&(this.warn(`Frag error: ${t?.message||t}`),this.resetFragmentLoading(e))})}clearTrackerIfNeeded(e){let{fragmentTracker:t}=this;if(t.getState(e)===AI.APPENDING){let n=e.type,r=this.getFwdBufferInfo(this.mediaBuffer,n),i=Math.max(e.duration,r?r.len:this.config.maxBufferLength),a=this.backtrackFragment;((a?e.sn-a.sn:0)===1||this.reduceMaxBufferLength(i,e.duration))&&t.removeFragment(e)}else this.mediaBuffer?.buffered.length===0?t.removeAllFragments():t.hasParts(e.type)&&(t.detectPartialFragments({frag:e,part:null,stats:e.stats,id:e.type}),t.getState(e)===AI.PARTIAL&&t.removeFragment(e))}checkLiveUpdate(e){if(e.updated&&!e.live){let t=e.fragments[e.fragments.length-1];this.fragmentTracker.detectPartialFragments({frag:t,part:null,stats:t.stats,id:t.type})}e.fragments[0]||(e.deltaUpdateFailed=!0)}waitForLive(e){let t=e.details;return t?.live&&t.type!==`EVENT`&&(this.levelLastLoaded!==e||t.expired)}flushMainBuffer(e,t,n=null){if(!(e-t))return;let r={startOffset:e,endOffset:t,type:n};this.hls.trigger(Y.BUFFER_FLUSHING,r)}_loadInitSegment(e,t){this._doFragLoad(e,t).then(e=>{let t=e?.frag;if(!t||this.fragContextChanged(t)||!this.levels)throw Error(`init load aborted`);return e}).then(e=>{let{hls:t}=this,{frag:n,payload:r}=e,i=n.decryptdata;if(r&&r.byteLength>0&&i!=null&&i.key&&i.iv&&gL(i.method)){let a=self.performance.now();return this.decrypter.decrypt(new Uint8Array(r),i.key.buffer,i.iv.buffer,_L(i.method)).catch(e=>{throw t.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_DECRYPT_ERROR,fatal:!1,error:e,reason:e.message,frag:n}),e}).then(r=>{let i=self.performance.now();return t.trigger(Y.FRAG_DECRYPTED,{frag:n,payload:r,stats:{tstart:a,tdecrypt:i}}),e.payload=r,this.completeInitSegmentLoad(e)})}return this.completeInitSegmentLoad(e)}).catch(t=>{this.state!==X.STOPPED&&this.state!==X.ERROR&&(this.warn(t),this.resetFragmentLoading(e))})}completeInitSegmentLoad(e){let{levels:t}=this;if(!t)throw Error(`init load aborted, missing levels`);let n=e.frag.stats;this.state!==X.STOPPED&&(this.state=X.IDLE),e.frag.data=new Uint8Array(e.payload),n.parsing.start=n.buffering.start=self.performance.now(),n.parsing.end=n.buffering.end=self.performance.now(),this.tick()}unhandledEncryptionError(e,t){var n,r;let i=e.tracks;if(i&&!t.encrypted&&((n=i.audio)!=null&&n.encrypted||(r=i.video)!=null&&r.encrypted)&&(!this.config.emeEnabled||!this.keyLoader.emeController)){let e=this.media,n=Error(`Encrypted track with no key in ${this.fragInfo(t)} (media ${e?`attached mediaKeys: `+e.mediaKeys:`detached`})`);return this.warn(n.message),!e||e.mediaKeys?!1:(this.hls.trigger(Y.ERROR,{type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_NO_KEYS,fatal:!1,error:n,frag:t}),this.resetTransmuxer(),!0)}return!1}fragContextChanged(e){let{fragCurrent:t}=this;return!e||!t||e.sn!==t.sn||e.level!==t.level}fragBufferedComplete(e,t){let n=this.mediaBuffer?this.mediaBuffer:this.media;if(this.log(`Buffered ${e.type} sn: ${e.sn}${t?` part: `+t.index:``} of ${this.fragInfo(e,!1,t)} > buffer:${n?OR.toString($I.getBuffered(n)):`(detached)`})`),xP(e)){if(e.type!==UN.SUBTITLE){let t=e.elementaryStreams;if(!Object.keys(t).some(e=>!!t[e])){this.state=X.IDLE;return}}let t=this.levels?.[e.level];t!=null&&t.fragmentError&&(this.log(`Resetting level fragment error count of ${t.fragmentError} on frag buffered`),t.fragmentError=0)}this.state=X.IDLE}_handleFragmentLoadComplete(e){let{transmuxer:t}=this;if(!t)return;let{frag:n,part:r,partsLoaded:i}=e,a=!i||i.length===0||i.some(e=>!e),o=new XI(n.level,n.sn,n.stats.chunkCount+1,0,r?r.index:-1,!a);t.flush(o)}_handleFragmentLoadProgress(e){}_doFragLoad(e,t,n=null,r){var i;this.fragCurrent=e;let a=t.details;if(!this.levels||!a)throw Error(`frag load aborted, missing level${a?``:` detail`}s`);let o=null;if(e.encrypted&&!((i=e.decryptdata)!=null&&i.key)){if(this.log(`Loading key for ${e.sn} of [${a.startSN}-${a.endSN}], ${this.playlistLabel()} ${e.level}`),this.state=X.KEY_LOADING,this.fragCurrent=e,o=this.keyLoader.load(e).then(e=>{if(!this.fragContextChanged(e.frag))return this.hls.trigger(Y.KEY_LOADED,e),this.state===X.KEY_LOADING&&(this.state=X.IDLE),e}),this.hls.trigger(Y.KEY_LOADING,{frag:e}),this.fragCurrent===null)return this.log(`context changed in KEY_LOADING`),Promise.resolve(null)}else e.encrypted||(o=this.keyLoader.loadClear(e,a.encryptedFragments,this.startFragRequested),o&&this.log(`[eme] blocking frag load until media-keys acquired`));let s=this.fragPrevious;if(xP(e)&&(!s||e.sn!==s.sn)){let n=this.shouldLoadParts(t.details,e.end);n!==this.loadingParts&&(this.log(`LL-Part loading ${n?`ON`:`OFF`} loading sn ${s?.sn}->${e.sn}`),this.loadingParts=n)}if(n=Math.max(e.start,n||0),this.loadingParts&&xP(e)){let i=a.partList;if(i&&r){n>a.fragmentEnd&&a.fragmentHint&&(e=a.fragmentHint);let s=this.getNextPart(i,e,n);if(s>-1){let c=i[s];e=this.fragCurrent=c.fragment,this.log(`Loading ${e.type} sn: ${e.sn} part: ${c.index} (${s}/${i.length-1}) of ${this.fragInfo(e,!1,c)}) cc: ${e.cc} [${a.startSN}-${a.endSN}], target: ${parseFloat(n.toFixed(3))}`),this.nextLoadPosition=c.start+c.duration,this.state=X.FRAG_LOADING;let l;return l=o?o.then(n=>!n||this.fragContextChanged(n.frag)?null:this.doFragPartsLoad(e,c,t,r)).catch(e=>this.handleFragLoadError(e)):this.doFragPartsLoad(e,c,t,r).catch(e=>this.handleFragLoadError(e)),this.hls.trigger(Y.FRAG_LOADING,{frag:e,part:c,targetBufferTime:n}),this.fragCurrent===null?Promise.reject(Error(`frag load aborted, context changed in FRAG_LOADING parts`)):l}if(!e.url||this.loadedEndOfParts(i,n))return Promise.resolve(null)}}if(xP(e)&&this.loadingParts)this.log(`LL-Part loading OFF after next part miss @${n.toFixed(2)} Check buffer at sn: ${e.sn} loaded parts: ${a.partList?.filter(e=>e.loaded).map(e=>`[${e.start}-${e.end}]`)}`),this.loadingParts=!1;else if(!e.url)return Promise.resolve(null);this.log(`Loading ${e.type} sn: ${e.sn} of ${this.fragInfo(e,!1)}) cc: ${e.cc} ${`[`+a.startSN+`-`+a.endSN+`]`}, target: ${parseFloat(n.toFixed(3))}`),q(e.sn)&&!this.bitrateTest&&(this.nextLoadPosition=e.start+e.duration),this.state=X.FRAG_LOADING;let c=this.config.progressive&&e.type!==UN.SUBTITLE,l;return l=c&&o?o.then(t=>!t||this.fragContextChanged(t.frag)?null:this.fragmentLoader.load(e,r)).catch(e=>this.handleFragLoadError(e)):Promise.all([this.fragmentLoader.load(e,c?r:void 0),o]).then(([e])=>(!c&&r&&r(e),e)).catch(e=>this.handleFragLoadError(e)),this.hls.trigger(Y.FRAG_LOADING,{frag:e,targetBufferTime:n}),this.fragCurrent===null?Promise.reject(Error(`frag load aborted, context changed in FRAG_LOADING`)):l}doFragPartsLoad(e,t,n,r){return new Promise((i,a)=>{let o=[],s=n.details?.partList,c=t=>{this.fragmentLoader.loadPart(e,t,r).then(r=>{o[t.index]=r;let a=r.part;this.hls.trigger(Y.FRAG_LOADED,r);let l=mR(n.details,e.sn,t.index+1)||hR(s,e.sn,t.index+1);if(l)c(l);else return i({frag:e,part:a,partsLoaded:o})}).catch(a)};c(t)})}handleFragLoadError(e){if(`data`in e){let t=e.data;t.frag&&t.details===J.INTERNAL_ABORTED?this.handleFragLoadAborted(t.frag,t.part):t.frag&&t.type===VN.KEY_SYSTEM_ERROR?(t.frag.abortRequests(),this.resetStartWhenNotLoaded(),this.resetFragmentLoading(t.frag)):this.hls.trigger(Y.ERROR,t)}else this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.INTERNAL_EXCEPTION,err:e,error:e,fatal:!0});return null}_handleTransmuxerFlush(e){let t=this.getCurrentContext(e);if(!t||this.state!==X.PARSING){!this.fragCurrent&&this.state!==X.STOPPED&&this.state!==X.ERROR&&(this.state=X.IDLE);return}let{frag:n,part:r,level:i}=t,a=self.performance.now();n.stats.parsing.end=a,r&&(r.stats.parsing.end=a);let o=this.getLevelDetails(),s=o&&n.sn>o.endSN||this.shouldLoadParts(o,n.end);s!==this.loadingParts&&(this.log(`LL-Part loading ${s?`ON`:`OFF`} after parsing segment ending @${n.end.toFixed(2)}`),this.loadingParts=s),this.updateLevelTiming(n,r,i,e.partial)}shouldLoadParts(e,t){if(this.config.lowLatencyMode){if(!e)return this.loadingParts;if(e.partList){let n=e.partList[0];if(n.fragment.type===UN.SUBTITLE)return!1;if(t>=n.end+(e.fragmentHint?.duration||0)&&(this.hls.hasEnoughToStart?this.media?.currentTime||this.lastCurrentTime:this.getLoadPosition())>n.start-n.fragment.duration)return!0}}return!1}getCurrentContext(e){let{levels:t,fragCurrent:n}=this,{level:r,sn:i,part:a}=e;if(!(t!=null&&t[r]))return this.warn(`Levels object was unset while buffering fragment ${i} of ${this.playlistLabel()} ${r}. The current chunk will not be buffered.`),null;let o=t[r],s=o.details,c=a>-1?mR(s,i,a):null,l=c?c.fragment:pR(s,i,n);return l?(n&&n!==l&&(l.stats=n.stats),{frag:l,part:c,level:o}):null}bufferFragmentData(e,t,n,r,i){if(this.state!==X.PARSING)return;let{data1:a,data2:o}=e,s=a;if(o&&(s=XP(a,o)),!s.length)return;let c=this.initPTS[t.cc],l=c?-c.baseTime/c.timescale:void 0,u={type:e.type,frag:t,part:n,chunkMeta:r,offset:l,parent:t.type,data:s};if(this.hls.trigger(Y.BUFFER_APPENDING,u),e.dropped&&e.independent&&!n){if(i)return;this.flushBufferGap(t)}}flushBufferGap(e){let t=this.media;if(!t)return;if(!$I.isBuffered(t,t.currentTime)){this.flushMainBuffer(0,e.start);return}let n=t.currentTime,r=$I.bufferInfo(t,n,0),i=e.duration,a=Math.min(this.config.maxFragLookUpTolerance*2,i*.25),o=Math.max(Math.min(e.start-a,r.end-a),n+a);e.start-o>a&&this.flushMainBuffer(o,e.start)}getFwdBufferInfo(e,t){var n;let r=this.getLoadPosition();if(!q(r))return null;let i=this.lastCurrentTime>r||(n=this.media)!=null&&n.paused?0:this.config.maxBufferHole;return this.getFwdBufferInfoAtPos(e,r,t,i)}getFwdBufferInfoAtPos(e,t,n,r){let i=$I.bufferInfo(e,t,r);if(i.len===0&&i.nextStart!==void 0){let a=this.fragmentTracker.getBufferedFrag(t,n);if(a&&(i.nextStart<=a.end||a.gap)){let n=Math.max(Math.min(i.nextStart,a.end)-t,r);return $I.bufferInfo(e,t,n)}}return i}
1807getMaxBufferLength(e){let{config:t}=this,n;return n=e?Math.max(8*t.maxBufferSize/e,t.maxBufferLength):t.maxBufferLength,Math.min(n,t.maxMaxBufferLength)}exceedsMaxBuffer(e,t,n){let r=e.nextStart;if(r&&n.start>r){let r=e.buffered;if(r){let i=e.len,a=e.bufferedIndex;for(let e=r.length-1;e>a;e--)r[e].start<n.start&&(i+=r[e].end-r[e].start);return i>=t}}return!1}reduceMaxBufferLength(e,t){let n=this.config,r=Math.max(Math.min(e-t,n.maxBufferLength),t),i=Math.max(e-t*3,n.maxMaxBufferLength/2,r);return i>=r&&(n.maxMaxBufferLength=i,this.warn(`Reduce max buffer length to ${i}s`),!0)}getAppendedFrag(e,t=UN.MAIN){let n=this.fragmentTracker?this.fragmentTracker.getAppendedFrag(e,t):null;return n&&`fragment`in n?n.fragment:n}getNextFragment(e,t){let n=t.fragments,r=n.length;if(!r)return null;let{config:i}=this,a=t.fragmentStart,o=i.lowLatencyMode&&!!t.partList,s=null;if(t.live){let n=i.initialLiveManifestSize;if(r<n)return this.warn(`Not enough fragments to start playback (have: ${r}, need: ${n})`),null;if(!t.PTSKnown&&!this.startFragRequested&&this.startPosition===-1||e<a){o&&!this.loadingParts&&(this.log(`LL-Part loading ON for initial live fragment`),this.loadingParts=!0),s=this.getInitialLiveFragment(t);let n=this.config.startPosition,r=this.hls.startPosition,i=this.hls.liveSyncPosition,c=s?.start||0,l,u;r!==-1&&r>=a?(l=r,u=r===n?`config`:`next load start`):i===null?(l=e,u=`buffer pos`):(l=i,u=`live edge`),l<c&&(l=c,u=`live frag start`),l<a&&(l=a,u=`playlist start`),(this.startPosition!=l||this.nextLoadPosition!=l)&&(this.log(`Setting startPosition to ${l.toFixed(3)} ${r===-1?``:`(from ${n}) `}based on ${u}. live edge: ${i} live frag start: ${c.toFixed(3)} playlist start: ${a.toFixed(3)} buffer pos: ${e}`),this.startPosition=this.nextLoadPosition=l)}}else e<=a&&(s=n[0]);if(!s){let n=this.loadingParts?t.partEnd:t.fragmentEnd;s=this.getFragmentAtPosition(e,n,t)}let c=this.filterReplacedPrimary(s,t);if(!c&&s){let e=s.sn-t.startSN;c=this.filterReplacedPrimary(n[e+1]||null,t)}return this.mapToInitFragWhenRequired(c)}isLoopLoading(e,t){if(this.nextLoadPosition<=t)return!1;let n=this.fragmentTracker.getState(e);return n===AI.OK||n===AI.PARTIAL&&!!e.gap}getNextFragmentLoopLoading(e,t,n,r,i){let a=null;if(e.gap&&(a=this.getNextFragment(this.nextLoadPosition,t),a&&!a.gap&&n.nextStart)){let e=this.getFwdBufferInfoAtPos(this.mediaBuffer?this.mediaBuffer:this.media,n.nextStart,r,0);if(e!==null&&n.len+e.len>=i){let e=a.sn;return this.loopSn!==e&&(this.log(`buffer full after gaps in "${r}" playlist starting at sn: ${e}`),this.loopSn=e),null}}return this.loopSn=void 0,a}get primaryPrefetch(){if(AR(this.config)){var e;if((e=this.hls.interstitialsManager)!=null&&(e=e.playingItem)!=null&&e.event)return!0}return!1}filterReplacedPrimary(e,t){if(!e)return e;if(AR(this.config)&&e.type!==UN.SUBTITLE){let n=this.hls.interstitialsManager,r=n?.bufferingItem;if(r){let n=r.event;if(n){if(n.appendInPlace||Math.abs(e.start-r.start)>1||r.start===0)return null}else if(e.end<=r.start&&t?.live===!1||e.start>r.end&&r.nextEvent&&(r.nextEvent.appendInPlace||e.start-r.end>1))return null}let i=n?.playerQueue;if(i)for(let t=i.length;t--;){let n=i[t].interstitial;if(n.appendInPlace&&e.start>=n.startTime&&e.end<=n.resumeTime)return null}}return e}mapToInitFragWhenRequired(e){return e!=null&&e.initSegment&&!e.initSegment.data&&!this.bitrateTest?e.initSegment:e}getNextPart(e,t,n){let r=-1,i=!1,a=!0;for(let o=0,s=e.length;o<s;o++){let s=e[o];if(a&&=!s.independent,r>-1&&n<s.start)break;let c=s.loaded;c?r=-1:(i||(s.independent||a)&&s.fragment===t)&&(s.fragment!==t&&this.warn(`Need buffer at ${n} but next unloaded part starts at ${s.start}`),r=o),i=c}return r}loadedEndOfParts(e,t){let n;for(let r=e.length;r--;){if(n=e[r],!n.loaded)return!1;if(t>n.start)return!0}return!1}getInitialLiveFragment(e){let t=e.fragments,n=this.fragPrevious,r=null;if(n){if(e.hasProgramDateTime&&(r=dI(t,n.endProgramDateTime,this.config.maxFragLookUpTolerance),r&&this.log(`Live playlist, switching playlist, load frag with same PDT: ${n.programDateTime}`)),!r){let i=n.sn+1;if(i>=e.startSN&&i<=e.endSN){let a=t[i-e.startSN];n.cc===a.cc&&(r=a,this.log(`Live playlist, switching playlist, load frag with next SN: ${r.sn}`))}r||(r=gI(e,n.cc,n.end),r&&this.log(`Live playlist, switching playlist, load frag with same CC: ${r.sn}`))}}else{let t=this.hls.liveSyncPosition;t!==null&&(r=this.getFragmentAtPosition(t,this.bitrateTest?e.fragmentEnd:e.edge,e))}return r}getFragmentAtPosition(e,t,n){let{config:r}=this,{fragPrevious:i}=this,{fragments:a,endSN:o}=n,{fragmentHint:s}=n,{maxFragLookUpTolerance:c}=r,l=n.partList,u=!!(this.loadingParts&&l!=null&&l.length&&s);u&&!this.bitrateTest&&l[l.length-1].fragment.sn===s.sn&&(a=a.concat(s),o=s.sn);let d;if(e<t){var f;let n=e<this.lastCurrentTime||e>t-c||(f=this.media)!=null&&f.paused||!this.startFragRequested?0:c;
1807d=fI(i,a,e,n)}else d=a[a.length-1];if(d){let e=d.sn-n.startSN,t=this.fragmentTracker.getState(d);if((t===AI.OK||t===AI.PARTIAL&&d.gap)&&(i=d),i&&d.sn===i.sn&&(!u||l[0].fragment.sn>d.sn||!n.live)&&d.level===i.level){let t=a[e+1];d=d.sn<o&&this.fragmentTracker.getState(t)!==AI.OK?t:null}}return d}alignPlaylists(e,t,n){let r=e.fragments.length;if(!r)return this.warn(`No fragments in live playlist`),0;let i=e.fragmentStart,a=!t,o=e.alignedSliding&&q(i);if(a||!o&&!i){CR(n,e);let i=e.fragmentStart;return this.log(`Live playlist sliding: ${i.toFixed(2)} start-sn: ${t?t.startSN:`na`}->${e.startSN} fragments: ${r}`),i}return i}waitForCdnTuneIn(e){return e.live&&e.canBlockReload&&e.partTarget&&e.tuneInGoal>Math.max(e.partHoldBack,e.partTarget*3)}setStartPosition(e,t){let n=this.startPosition;n<t&&(n=-1);let r=this.timelineOffset;if(n===-1){let i=this.startTimeOffset!==null,a=i?this.startTimeOffset:e.startTimeOffset;a!==null&&q(a)?(n=t+a,a<0&&(n+=e.edge),n=Math.min(Math.max(t,n),t+e.totalduration),this.log(`Setting startPosition to ${n} for start time offset ${a} found in ${i?`multivariant`:`media`} playlist`),this.startPosition=n):e.live?(n=this.hls.liveSyncPosition||t,this.log(`Setting startPosition to -1 to start at live edge ${n}`),this.startPosition=-1):(this.log(`setting startPosition to 0 by default`),this.startPosition=n=0),this.lastCurrentTime=n+r}this.nextLoadPosition=n+r}getLoadPosition(){var e;let{media:t}=this,n=0;return(e=this.hls)!=null&&e.hasEnoughToStart&&t?n=t.currentTime:this.nextLoadPosition>=0&&(n=this.nextLoadPosition),n}handleFragLoadAborted(e,t){this.transmuxer&&e.type===this.playlistType&&xP(e)&&e.stats.aborted&&(this.log(`Fragment ${e.sn}${t?` part `+t.index:``} of ${this.playlistLabel()} ${e.level} was aborted`),this.resetFragmentLoading(e))}resetFragmentLoading(e){(!this.fragCurrent||!this.fragContextChanged(e)&&this.state!==X.FRAG_LOADING_WAITING_RETRY)&&(this.state=X.IDLE)}onFragmentOrKeyLoadError(e,t){if(t.chunkMeta&&!t.frag){let e=this.getCurrentContext(t.chunkMeta);e&&(t.frag=e.frag)}let n=t.frag;if(!n||n.type!==e||!this.levels)return;if(this.fragContextChanged(n)){this.warn(`Frag load error must match current frag to retry ${n.url} > ${this.fragCurrent?.url}`);return}let r=t.details===J.FRAG_GAP;r&&this.fragmentTracker.fragBuffered(n,!0);let i=t.errorAction;if(!i){this.state=X.ERROR;return}let{action:a,flags:o,retryCount:s=0,retryConfig:c}=i,l=!!c,u=l&&a===EI.RetryRequest,d=l&&!i.resolved&&o===DI.MoveAllAlternatesMatchingHost,f=this.hls.latestLevelDetails?.live;if(!u&&d&&xP(n)&&!n.endList&&f&&!yI(t))this.resetFragmentErrors(e),this.treatAsGap(n),i.resolved=!0;else if((u||d)&&s<c.maxNumRetry){let r=TI(t.response?.code),a=xI(c,s);if(this.resetStartWhenNotLoaded(),this.retryDate=self.performance.now()+a,this.state=X.FRAG_LOADING_WAITING_RETRY,i.resolved=!0,r){this.log(`Waiting for connection (offline)`),this.retryDate=1/0,t.reason=`offline`;return}this.warn(`Fragment ${n.sn} of ${e} ${n.level} errored with ${t.details}, retrying loading ${s+1}/${c.maxNumRetry} in ${a}ms`)}else if(c)if(this.resetFragmentErrors(e),s<c.maxNumRetry)!r&&a!==EI.RemoveAlternatePermanently&&(i.resolved=!0);else{this.warn(`${t.details} reached or exceeded max retry (${s})`);return}else this.state=a===EI.SendAlternateToPenaltyBox?X.WAITING_LEVEL:X.ERROR;this.tickImmediate()}checkRetryDate(){let e=self.performance.now(),t=this.retryDate,n=t===1/0;(!t||e>=t||n&&!TI(0))&&(n&&this.log(`Connection restored (online)`),this.resetStartWhenNotLoaded(),this.state=X.IDLE)}reduceLengthAndFlushBuffer(e){if(this.state===X.PARSING||this.state===X.PARSED){let t=e.frag,n=e.parent,r=this.getFwdBufferInfo(this.mediaBuffer,n),i=r&&r.len>.5;i&&this.reduceMaxBufferLength(r.len,t?.duration||10);let a=!i;return a&&this.warn(`Buffer full error while media.currentTime (${this.getLoadPosition()}) is not buffered, flush ${n} buffer`),t&&(this.fragmentTracker.removeFragment(t),this.nextLoadPosition=t.start),this.resetLoadingState(),a}return!1}resetFragmentErrors(e){e===UN.AUDIO&&(this.fragCurrent=null),this.hls.hasEnoughToStart||(this.startFragRequested=!1),this.state!==X.STOPPED&&(this.state=X.IDLE)}afterBufferFlushed(e,t,n){if(!e)return;let r=$I.getBuffered(e);this.fragmentTracker.detectEvictedFragments(t,r,n),this.state===X.ENDED&&this.resetLoadingState()}
vendor: 34,475 bytes, line 1807
1807resetLoadingState(){this.log(`Reset loading state`),this.fragCurrent=null,this.fragPrevious=null,this.state!==X.STOPPED&&(this.state=X.IDLE)}resetStartWhenNotLoaded(){if(!this.hls.hasEnoughToStart){this.startFragRequested=!1;let e=this.levelLastLoaded,t=e?e.details:null;t!=null&&t.live?(this.log(`resetting startPosition for live start`),this.startPosition=-1,this.setStartPosition(t,t.fragmentStart),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}}resetWhenMissingContext(e){this.log(`Loading context changed while buffering sn ${e.sn} of ${this.playlistLabel()} ${e.level===-1?`<removed>`:e.level}. This chunk will not be buffered.`),this.removeUnbufferedFrags(),this.resetStartWhenNotLoaded(),this.resetLoadingState()}removeUnbufferedFrags(e=0){this.fragmentTracker.removeFragmentsInRange(e,1/0,this.playlistType,!1,!0)}updateLevelTiming(e,t,n,r){let i=n.details;if(!i){this.warn(`level.details undefined`);return}if(!Object.keys(e.elementaryStreams).reduce((t,a)=>{let o=e.elementaryStreams[a];if(o){let s=o.endPTS-o.startPTS;if(s<=0)return this.warn(`Could not parse fragment ${e.sn} ${a} duration reliably (${s})`),t||!1;let c=r?0:iR(i,e,o.startPTS,o.endPTS,o.startDTS,o.endDTS,this);return this.hls.trigger(Y.LEVEL_PTS_UPDATED,{details:i,level:n,drift:c,type:a,frag:e,start:o.startPTS,end:o.endPTS}),!0}return t},!1)){let t=this.transmuxer?.error===null;if((n.fragmentError===0||t&&(n.fragmentError<2||e.endList))&&this.treatAsGap(e,n),t){let t=Error(`Found no media in fragment ${e.sn} of ${this.playlistLabel()} ${e.level} resetting transmuxer to fallback to playlist timing`);if(this.warn(t.message),this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_PARSING_ERROR,fatal:!1,error:t,frag:e,reason:`Found no media in msn ${e.sn} of ${this.playlistLabel()} "${n.url}"`}),!this.hls)return;this.resetTransmuxer()}}this.state=X.PARSED,this.log(`Parsed ${e.type} sn: ${e.sn}${t?` part: `+t.index:``} of ${this.fragInfo(e,!1,t)})`),this.hls.trigger(Y.FRAG_PARSED,{frag:e,part:t})}playlistLabel(){return this.playlistType===UN.MAIN?`level`:`track`}fragInfo(e,t=!0,n){return`${this.playlistLabel()} ${e.level} (${n?`part`:`frag`}:[${((t&&!n?e.startPTS:(n||e).start)??NaN).toFixed(3)}-${((t&&!n?e.endPTS:(n||e).end)??NaN).toFixed(3)}]${n&&e.type===`main`?`INDEPENDENT=`+(n.independent?`YES`:`NO`):``}`}treatAsGap(e,t){t&&t.fragmentError++,e.gap=!0,this.fragmentTracker.removeFragment(e),this.fragmentTracker.fragBuffered(e,!0)}resetTransmuxer(){var e;(e=this.transmuxer)==null||e.reset()}recoverWorkerError(e){e.event===`demuxerWorker`&&(this.fragmentTracker.removeAllFragments(),this.transmuxer&&=(this.transmuxer.destroy(),null),this.resetStartWhenNotLoaded(),this.resetLoadingState())}set state(e){let t=this._state;t!==e&&(this._state=e,this.log(`${t}->${e}`))}get state(){return this._state}};function AR(e){return!!e.interstitialsController&&e.enableInterstitialPlayback!==!1}var jR=class{constructor(){this.chunks=[],this.dataLength=0}push(e){this.chunks.push(e),this.dataLength+=e.length}flush(){let{chunks:e,dataLength:t}=this,n;if(e.length)n=e.length===1?e[0]:MR(e,t);else return new Uint8Array;return this.reset(),n}reset(){this.chunks.length=0,this.dataLength=0}};function MR(e,t){let n=new Uint8Array(t),r=0;for(let t=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}var NR={exports:{}},PR;function FR(){return PR?NR.exports:(PR=1,(function(e){var t=Object.prototype.hasOwnProperty,n=`~`;function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,r,a,o){if(typeof r!=`function`)throw TypeError(`The listener must be a function`);var s=new i(r,a||e,o),c=n?n+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function o(e,t){--e._eventsCount===0?e._events=new r:delete e._events[t]}function s(){this._events=new r,this._eventsCount=0}s.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)t.call(r,i)&&e.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e},s.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,a=r.length,o=Array(a);i<a;i++)o[i]=r[i].fn;return o},s.prototype.listenerCount=function(e){var t=n?n+e:e,r=this._events[t];return r?r.fn?1:r.length:0},s.prototype.emit=function(e,t,r,i,a,o){var s=n?n+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,r),!0;case 4:return c.fn.call(c.context,t,r,i),!0;case 5:return c.fn.call(c.context,t,r,i,a),!0;case 6:return c.fn.call(c.context,t,r,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,r);break;case 4:c[d].fn.call(c[d].context,t,r,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},s.prototype.on=function(e,t,n){return a(this,e,t,n,!1)},s.prototype.once=function(e,t,n){return a(this,e,t,n,!0)},s.prototype.removeListener=function(e,t,r,i){var a=n?n+e:e;if(!this._events[a])return this;if(!t)return o(this,a),this;var s=this._events[a];if(s.fn)s.fn===t&&(!i||s.once)&&(!r||s.context===r)&&o(this,a);else{for(var c=0,l=[],u=s.length;c<u;c++)(s[c].fn!==t||i&&!s[c].once||r&&s[c].context!==r)&&l.push(s[c]);l.length?this._events[a]=l.length===1?l[0]:l:o(this,a)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&o(this,t)):(this._events=new r,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=n,s.EventEmitter=s,e.exports=s})(NR),NR.exports)}var IR=pP(FR()),LR=`1.6.16`,RR={};function zR(){return typeof __HLS_WORKER_BUNDLE__==`function`}function BR(){let e=RR[LR];if(e)return e.clientCount++,e;let t=new self.Blob([`var exports={};var module={exports:exports};function define(f){f()};define.amd=true;(${__HLS_WORKER_BUNDLE__.toString()})(true);`],{type:`text/javascript`}),n=self.URL.createObjectURL(t),r={worker:new self.Worker(n),objectURL:n,clientCount:1};return RR[LR]=r,r}function VR(e){let t=RR[e];if(t)return t.clientCount++,t;let n=new self.URL(e,self.location.href).href,r={worker:new self.Worker(n),scriptURL:n,clientCount:1};return RR[e]=r,r}function HR(e){let t=RR[e||LR];if(t&&t.clientCount--===1){let{worker:n,objectURL:r}=t;delete RR[e||LR],r&&self.URL.revokeObjectURL(r),n.terminate()}}function UR(e,t){return t+10<=e.length&&e[t]===51&&e[t+1]===68&&e[t+2]===73&&e[t+3]<255&&e[t+4]<255&&e[t+6]<128&&e[t+7]<128&&e[t+8]<128&&e[t+9]<128}function WR(e,t){return t+10<=e.length&&e[t]===73&&e[t+1]===68&&e[t+2]===51&&e[t+3]<255&&e[t+4]<255&&e[t+6]<128&&e[t+7]<128&&e[t+8]<128&&e[t+9]<128}function GR(e,t){let n=0;return n=(e[t]&127)<<21,n|=(e[t+1]&127)<<14,n|=(e[t+2]&127)<<7,n|=e[t+3]&127,n}function KR(e,t){let n=t,r=0;for(;WR(e,t);){r+=10;let n=GR(e,t+6);r+=n,UR(e,t+10)&&(r+=10),t+=r}if(r>0)return e.subarray(n,n+r)}function qR(e,t,n,r){let i=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],a=t[n+2],o=a>>2&15;if(o>12){let t=Error(`invalid ADTS sampling index:${o}`);e.emit(Y.ERROR,Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_PARSING_ERROR,fatal:!0,error:t,reason:t.message});return}let s=(a>>6&3)+1,c=t[n+3]>>6&3|(a&1)<<2,l=`mp4a.40.`+s,u=i[o],d=o;(s===5||s===29)&&(d-=3);let f=[s<<3|(d&14)>>1,(d&1)<<7|c<<3];return oP.log(`manifest codec:${r}, parsed codec:${l}, channels:${c}, rate:${u} (ADTS object type:${s} sampling index:${o})`),{config:f,samplerate:u,channelCount:c,codec:l,parsedCodec:l,manifestCodec:r}}function JR(e,t){return e[t]===255&&(e[t+1]&246)==240}function YR(e,t){return e[t+1]&1?7:9}function XR(e,t){return(e[t+3]&3)<<11|e[t+4]<<3|(e[t+5]&224)>>>5}function ZR(e,t){return t+5<e.length}function QR(e,t){return t+1<e.length&&JR(e,t)}function $R(e,t){return ZR(e,t)&&JR(e,t)&&XR(e,t)<=e.length-t}function ez(e,t){if(QR(e,t)){let n=YR(e,t);if(t+n>=e.length)return!1;let r=XR(e,t);if(r<=n)return!1;let i=t+r;return i===e.length||QR(e,i)}return!1}function tz(e,t,n,r,i){if(!e.samplerate){let a=qR(t,n,r,i);if(!a)return;qN(e,a)}}function nz(e){return 9216e4/e}function rz(e,t){let n=YR(e,t);if(t+n<=e.length){let r=XR(e,t)-n;if(r>0)return{headerLength:n,frameLength:r}}}function iz(e,t,n,r,i){let a=r+i*nz(e.samplerate),o=rz(t,n),s;if(o){let{frameLength:r,headerLength:i}=o,c=i+r,l=Math.max(0,n+c-t.length);l?(s=new Uint8Array(c-i),s.set(t.subarray(n+i,t.length),0)):s=t.subarray(n+i,n+c);let u={unit:s,pts:a};return l||e.samples.push(u),{sample:u,length:c,missing:l}}let c=t.length-n;return s=new Uint8Array(c),s.set(t.subarray(n,t.length),0),{sample:{unit:s,pts:a},length:c,missing:-1}}function az(e,t){return WR(e,t)&&GR(e,t+6)+10<=e.length-t}function oz(e){return e instanceof ArrayBuffer?e:e.byteOffset==0&&e.byteLength==e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer}function sz(e,t=0,n=1/0){return cz(e,t,n,Uint8Array)}function cz(e,t,n,r){let i=lz(e),a=1;`BYTES_PER_ELEMENT`in r&&(a=r.BYTES_PER_ELEMENT);let o=uz(e)?e.byteOffset:0,s=(o+e.byteLength)/a,c=(o+t)/a,l=Math.floor(Math.max(0,Math.min(c,s)));return new r(i,l,Math.floor(Math.min(l+Math.max(n,0),s))-l)}function lz(e){return e instanceof ArrayBuffer?e:e.buffer}function uz(e){return e&&e.buffer instanceof ArrayBuffer&&e.byteLength!==void 0&&e.byteOffset!==void 0}function dz(e){let t={key:e.type,description:``,data:``,mimeType:null,pictureType:null};if(e.size<2)return;if(e.data[0]!==3){console.log(`Ignore frame with unrecognized character encoding`);return}let n=e.data.subarray(1).indexOf(0);if(n===-1)return;let r=uP(sz(e.data,1,n)),i=e.data[2+n],a=e.data.subarray(3+n).indexOf(0);if(a===-1)return;let o=uP(sz(e.data,3+n,a)),s;return s=r===`-->`?uP(sz(e.data,4+n+a)):oz(e.data.subarray(4+n+a)),t.mimeType=r,t.pictureType=i,t.description=o,t.data=s,t}function fz(e){if(e.size<2)return;let t=uP(e.data,!0),n=new Uint8Array(e.data.subarray(t.length+1));return{key:e.type,info:t,data:n.buffer}}function pz(e){if(e.size<2)return;if(e.type===`TXXX`){let t=1,n=uP(e.data.subarray(t),!0);t+=n.length+1;let r=uP(e.data.subarray(t));return{key:e.type,info:n,data:r}}let t=uP(e.data.subarray(1));return{key:e.type,info:``,data:t}}function mz(e){if(e.type===`WXXX`){if(e.size<2)return;let t=1,n=uP(e.data.subarray(t),!0);t+=n.length+1;let r=uP(e.data.subarray(t));return{key:e.type,info:n,data:r}}let t=uP(e.data);return{key:e.type,info:``,data:t}}function hz(e){return e.type===`PRIV`?fz(e):e.type[0]===`W`?mz(e):e.type===`APIC`?dz(e):pz(e)}function gz(e){let t=String.fromCharCode(e[0],e[1],e[2],e[3]),n=GR(e,4);return{type:t,size:n,data:e.subarray(10,10+n)}}var _z=10,vz=10;function yz(e){let t=0,n=[];for(;WR(e,t);){let r=GR(e,t+6);e[t+5]>>6&1&&(t+=_z),t+=_z;let i=t+r;for(;t+vz<i;){let r=gz(e.subarray(t)),i=hz(r);i&&n.push(i),t+=r.size+_z}UR(e,t)&&(t+=_z)}return n}function bz(e){return e&&e.key===`PRIV`&&e.info===`com.apple.streaming.transportStreamTimestamp`}function xz(e){if(e.data.byteLength===8){let t=new Uint8Array(e.data),n=t[3]&1,r=(t[4]<<23)+(t[5]<<15)+(t[6]<<7)+t[7];return r/=45,n&&(r+=47721858.84),Math.round(r)}}function Sz(e){let t=yz(e);for(let e=0;e<t.length;e++){let n=t[e];if(bz(n))return xz(n)}}var Cz=function(e){return e.audioId3=`org.id3`,e.dateRange=`com.apple.quicktime.HLS`,e.emsg=`https://aomedia.org/emsg/ID3`,e.misbklv=`urn:misb:KLV:bin:1910.1`,e}({});function wz(e=``,t=9e4){return{type:e,id:-1,pid:-1,inputTimeScale:t,sequenceNumber:-1,samples:[],dropped:0}}var Tz=class{constructor(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}resetInitSegment(e,t,n,r){this._id3Track={type:`id3`,id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}}resetTimeStamp(e){this.initPTS=e,this.resetContiguity()}resetContiguity(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0}canParse(e,t){return!1}appendFrame(e,t,n){}demux(e,t){this.cachedData&&=(e=XP(this.cachedData,e),null);let n=KR(e,0),r=n?n.length:0,i,a=this._audioTrack,o=this._id3Track,s=n?Sz(n):void 0,c=e.length;for((this.basePTS===null||this.frameIndex===0&&q(s))&&(this.basePTS=Ez(s,t,this.initPTS),this.lastPTS=this.basePTS),this.lastPTS===null&&(this.lastPTS=this.basePTS),n&&n.length>0&&o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:n,type:Cz.audioId3,duration:1/0});r<c;){if(this.canParse(e,r)){let t=this.appendFrame(a,e,r);t?(this.frameIndex++,this.lastPTS=t.sample.pts,r+=t.length,i=r):r=c}else az(e,r)?(n=KR(e,r),o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:n,type:Cz.audioId3,duration:1/0}),r+=n.length,i=r):r++;if(r===c&&i!==c){let t=e.slice(i);this.cachedData=this.cachedData?XP(this.cachedData,t):t}}return{audioTrack:a,videoTrack:wz(),id3Track:o,textTrack:wz()}}demuxSampleAes(e,t,n){return Promise.reject(Error(`[${this}] This demuxer does not support Sample-AES decryption`))}flush(e){let t=this.cachedData;return t&&(this.cachedData=null,this.demux(t,0)),{audioTrack:this._audioTrack,videoTrack:wz(),id3Track:this._id3Track,textTrack:wz()}}destroy(){this.cachedData=null,this._audioTrack=this._id3Track=void 0}},Ez=(e,t,n)=>{if(q(e))return e*90;let r=n?n.baseTime*9e4/n.timescale:0;return t*9e4+r},Dz=null,Oz=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],kz=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],Az=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],jz=[0,1,1,4];function Mz(e,t,n,r,i){if(n+24>t.length)return;let a=Nz(t,n);if(a&&n+a.frameLength<=t.length){let o=r+i*(a.samplesPerFrame*9e4/a.sampleRate),s={unit:t.subarray(n,n+a.frameLength),pts:o,dts:o};return e.config=[],e.channelCount=a.channelCount,e.samplerate=a.sampleRate,e.samples.push(s),{sample:s,length:a.frameLength,missing:0}}}function Nz(e,t){let n=e[t+1]>>3&3,r=e[t+1]>>1&3,i=e[t+2]>>4&15,a=e[t+2]>>2&3;if(n!==1&&i!==0&&i!==15&&a!==3){let o=e[t+2]>>1&1,s=e[t+3]>>6,c=Oz[(n===3?3-r:r===3?3:4)*14+i-1]*1e3,l=kz[(n===3?0:n===2?1:2)*3+a],u=s===3?1:2,d=Az[n][r],f=jz[r],p=d*8*f,m=Math.floor(d*c/l+o)*f;if(Dz===null){let e=(navigator.userAgent||``).match(/Chrome\/(\d+)/i);Dz=e?parseInt(e[1]):0}return Dz&&Dz<=87&&r===2&&c>=224e3&&s===0&&(e[t+3]=e[t+3]|128),{sampleRate:l,channelCount:u,frameLength:m,samplesPerFrame:p}}}function Pz(e,t){return e[t]===255&&(e[t+1]&224)==224&&!!(e[t+1]&6)}function Fz(e,t){return t+1<e.length&&Pz(e,t)}function Iz(e,t){return Pz(e,t)&&4<=e.length-t}function Lz(e,t){if(t+1<e.length&&Pz(e,t)){let n=Nz(e,t),r=4;n!=null&&n.frameLength&&(r=n.frameLength);let i=t+r;return i===e.length||Fz(e,i)}return!1}var Rz=class extends Tz{constructor(e,t){super(),this.observer=void 0,this.config=void 0,this.observer=e,this.config=t}resetInitSegment(e,t,n,r){super.resetInitSegment(e,t,n,r),this._audioTrack={container:`audio/adts`,type:`audio`,id:2,pid:-1,sequenceNumber:0,segmentCodec:`aac`,samples:[],manifestCodec:t,duration:r,inputTimeScale:9e4,dropped:0}}static probe(e,t){if(!e)return!1;let n=KR(e,0)?.length||0;if(Lz(e,n))return!1;for(let r=e.length;n<r;n++)if(ez(e,n))return t.log(`ADTS sync word found !`),!0;return!1}canParse(e,t){return $R(e,t)}appendFrame(e,t,n){tz(e,this.observer,t,n,e.manifestCodec);let r=iz(e,t,n,this.basePTS,this.frameIndex);if(r&&r.missing===0)return r}},zz=(e,t)=>{let n=0,r=5;t+=r;let i=new Uint32Array(1),a=new Uint32Array(1),o=new Uint8Array(1);for(;r>0;){o[0]=e[t];let s=Math.min(r,8),c=8-s;a[0]=4278190080>>>24+c<<c,i[0]=(o[0]&a[0])>>c,n=n?n<<s|i[0]:i[0],t+=1,r-=s}return n},Bz=class extends Tz{constructor(e){super(),this.observer=void 0,this.observer=e}resetInitSegment(e,t,n,r){super.resetInitSegment(e,t,n,r),this._audioTrack={container:`audio/ac-3`,type:`audio`,id:2,pid:-1,sequenceNumber:0,segmentCodec:`ac3`,samples:[],manifestCodec:t,duration:r,inputTimeScale:9e4,dropped:0}}canParse(e,t){return t+64<e.length}appendFrame(e,t,n){let r=Vz(e,t,n,this.basePTS,this.frameIndex);if(r!==-1)return{sample:e.samples[e.samples.length-1],length:r,missing:0}}static probe(e){if(!e)return!1;let t=KR(e,0);if(!t)return!1;let n=t.length;return e[n]===11&&e[n+1]===119&&Sz(t)!==void 0&&zz(e,n)<16}};function Vz(e,t,n,r,i){if(n+8>t.length||t[n]!==11||t[n+1]!==119)return-1;let a=t[n+4]>>6;if(a>=3)return-1;let o=[48e3,44100,32e3][a],s=t[n+4]&63,c=[64,69,96,64,70,96,80,87,120,80,88,120,96,104,144,96,105,144,112,121,168,112,122,168,128,139,192,128,140,192,160,174,240,160,175,240,192,208,288,192,209,288,224,243,336,224,244,336,256,278,384,256,279,384,320,348,480,320,349,480,384,417,576,384,418,576,448,487,672,448,488,672,512,557,768,512,558,768,640,696,960,640,697,960,768,835,1152,768,836,1152,896,975,1344,896,976,1344,1024,1114,1536,1024,1115,1536,1152,1253,1728,1152,1254,1728,1280,1393,1920,1280,1394,1920][s*3+a]*2;if(n+c>t.length)return-1;let l=t[n+6]>>5,u=0;l===2?u+=2:(l&1&&l!==1&&(u+=2),l&4&&(u+=2));let d=(t[n+6]<<8|t[n+7])>>12-u&1,f=[2,1,2,3,3,4,4,5][l]+d,p=t[n+5]>>3,m=t[n+5]&7,h=new Uint8Array([a<<6|p<<1|m>>2,(m&3)<<6|l<<3|d<<2|s>>4,s<<4&224]),g=r+i*(1536/o*9e4),_=t.subarray(n,n+c);return e.config=h,e.channelCount=f,e.samplerate=o,e.samples.push({unit:_,pts:g}),c}var Hz=class extends Tz{resetInitSegment(e,t,n,r){super.resetInitSegment(e,t,n,r),this._audioTrack={container:`audio/mpeg`,type:`audio`,id:2,pid:-1,sequenceNumber:0,segmentCodec:`mp3`,samples:[],manifestCodec:t,duration:r,inputTimeScale:9e4,dropped:0}}static probe(e){if(!e)return!1;let t=KR(e,0),n=t?.length||0;if(t&&e[n]===11&&e[n+1]===119&&Sz(t)!==void 0&&zz(e,n)<=16)return!1;for(let t=e.length;n<t;n++)if(Lz(e,n))return oP.log(`MPEG Audio sync word found !`),!0;return!1}canParse(e,t){return Iz(e,t)}appendFrame(e,t,n){if(this.basePTS!==null)return Mz(e,t,n,this.basePTS,this.frameIndex)}},Uz=/\/emsg[-/]ID3/i,Wz=class{constructor(e,t){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=t}resetTimeStamp(){}resetInitSegment(e,t,n,r){let i=this.videoTrack=wz(`video`,1),a=this.audioTrack=wz(`audio`,1),o=this.txtTrack=wz(`text`,1);if(this.id3Track=wz(`id3`,1),this.timeOffset=0,!(e!=null&&e.byteLength))return;let s=LP(e);if(s.video){let{id:e,timescale:t,codec:n,supplemental:r}=s.video;i.id=e,i.timescale=o.timescale=t,i.codec=n,i.supplemental=r}if(s.audio){let{id:e,timescale:t,codec:n}=s.audio;a.id=e,a.timescale=t,a.codec=n}o.id=OP.text,i.sampleDuration=0,i.duration=a.duration=r}resetContiguity(){this.remainderData=null}static probe(e){return PP(e)}demux(e,t){this.timeOffset=t;let n=e,r=this.videoTrack,i=this.txtTrack;if(this.config.progressive){this.remainderData&&(n=XP(this.remainderData,e));let t=YP(n);this.remainderData=t.remainder,r.samples=t.valid||new Uint8Array}else r.samples=n;let a=this.extractID3Track(r,t);return i.samples=ZP(t,r),{videoTrack:r,audioTrack:this.audioTrack,id3Track:a,textTrack:this.txtTrack}}flush(){let e=this.timeOffset,t=this.videoTrack,n=this.txtTrack;t.samples=this.remainderData||new Uint8Array,this.remainderData=null;let r=this.extractID3Track(t,this.timeOffset);return n.samples=ZP(e,t),{videoTrack:t,audioTrack:wz(),id3Track:r,textTrack:wz()}}extractID3Track(e,t){let n=this.id3Track;if(e.samples.length){let r=FP(e.samples,[`emsg`]);r&&r.forEach(e=>{let r=nF(e);if(Uz.test(r.schemeIdUri)){let e=Gz(r,t),i=r.eventDuration===4294967295?1/0:r.eventDuration/r.timeScale;i<=.001&&(i=1/0);let a=r.payload;n.samples.push({data:a,len:a.byteLength,dts:e,pts:e,type:Cz.emsg,duration:i})}else if(this.config.enableEmsgKLVMetadata&&r.schemeIdUri.startsWith(`urn:misb:KLV:bin:1910.1`)){let e=Gz(r,t);n.samples.push({data:r.payload,len:r.payload.byteLength,dts:e,pts:e,type:Cz.misbklv,duration:1/0})}})}return n}demuxSampleAes(e,t,n){return Promise.reject(Error(`The MP4 demuxer does not support SAMPLE-AES decryption`))}destroy(){this.config=null,this.remainderData=null,this.videoTrack=this.audioTrack=this.id3Track=this.txtTrack=void 0}};function Gz(e,t){return q(e.presentationTime)?e.presentationTime/e.timeScale:t+e.presentationTimeDelta/e.timeScale}var Kz=class{constructor(e,t,n){this.keyData=void 0,this.decrypter=void 0,this.keyData=n,this.decrypter=new HI(t,{removePKCS7Padding:!1})}decryptBuffer(e){return this.decrypter.decrypt(e,this.keyData.key.buffer,this.keyData.iv.buffer,FI.cbc)}decryptAacSample(e,t,n){let r=e[t].unit;if(r.length<=16)return;let i=r.subarray(16,r.length-r.length%16),a=i.buffer.slice(i.byteOffset,i.byteOffset+i.length);this.decryptBuffer(a).then(i=>{let a=new Uint8Array(i);r.set(a,16),this.decrypter.isSync()||this.decryptAacSamples(e,t+1,n)}).catch(n)}decryptAacSamples(e,t,n){for(;;t++){if(t>=e.length){n();return}if(!(e[t].unit.length<32)&&(this.decryptAacSample(e,t,n),!this.decrypter.isSync()))return}}getAvcEncryptedData(e){let t=Math.floor((e.length-48)/160)*16+16,n=new Int8Array(t),r=0;for(let t=32;t<e.length-16;t+=160,r+=16)n.set(e.subarray(t,t+16),r);return n}getAvcDecryptedUnit(e,t){let n=new Uint8Array(t),r=0;for(let t=32;t<e.length-16;t+=160,r+=16)e.set(n.subarray(r,r+16),t);return e}decryptAvcSample(e,t,n,r,i){let a=tF(i.data),o=this.getAvcEncryptedData(a);this.decryptBuffer(o.buffer).then(o=>{i.data=this.getAvcDecryptedUnit(a,o),this.decrypter.isSync()||this.decryptAvcSamples(e,t,n+1,r)}).catch(r)}decryptAvcSamples(e,t,n,r){if(e instanceof Uint8Array)throw Error(`Cannot decrypt samples of type Uint8Array`);for(;;t++,n=0){if(t>=e.length){r();return}let i=e[t].units;for(;!(n>=i.length);n++){let a=i[n];if(!(a.data.length<=48||a.type!==1&&a.type!==5)&&(this.decryptAvcSample(e,t,n,r,a),!this.decrypter.isSync()))return}}}},qz=class{constructor(){this.VideoSample=null}createVideoSample(e,t,n){return{key:e,frame:!1,pts:t,dts:n,units:[],length:0}}getLastNalUnit(e){var t;let n=this.VideoSample,r;if((!n||n.units.length===0)&&(n=e[e.length-1]),(t=n)!=null&&t.units){let e=n.units;r=e[e.length-1]}return r}pushAccessUnit(e,t){if(e.units.length&&e.frame){if(e.pts===void 0){let n=t.samples,r=n.length;if(r){let t=n[r-1];e.pts=t.pts,e.dts=t.dts}else{t.dropped++;return}}t.samples.push(e)}}parseNALu(e,t,n){let r=t.byteLength,i=e.naluState||0,a=i,o=[],s=0,c,l,u,d=-1,f=0;for(i===-1&&(d=0,f=this.getNALuType(t,0),i=0,s=1);s<r;){if(c=t[s++],!i){i=+!c;continue}if(i===1){i=c?0:2;continue}if(!c)i=3;else if(c===1){if(l=s-i-1,d>=0){let e={data:t.subarray(d,l),type:f};o.push(e)}else{let n=this.getLastNalUnit(e.samples);n&&(a&&s<=4-a&&n.state&&(n.data=n.data.subarray(0,n.data.byteLength-a)),l>0&&(n.data=XP(n.data,t.subarray(0,l)),n.state=0))}s<r?(u=this.getNALuType(t,s),d=s,f=u,i=0):i=-1}else i=0}if(d>=0&&i>=0){let e={data:t.subarray(d,r),type:f,state:i};o.push(e)}if(o.length===0){let n=this.getLastNalUnit(e.samples);n&&(n.data=XP(n.data,t))}return e.naluState=i,o}},Jz=class{constructor(e){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=e,this.bytesAvailable=e.byteLength,this.word=0,this.bitsAvailable=0}loadWord(){let e=this.data,t=this.bytesAvailable,n=e.byteLength-t,r=new Uint8Array(4),i=Math.min(4,t);if(i===0)throw Error(`no bytes available`);r.set(e.subarray(n,n+i)),this.word=new DataView(r.buffer).getUint32(0),this.bitsAvailable=i*8,this.bytesAvailable-=i}skipBits(e){let t;e=Math.min(e,this.bytesAvailable*8+this.bitsAvailable),this.bitsAvailable>e?(this.word<<=e,this.bitsAvailable-=e):(e-=this.bitsAvailable,t=e>>3,e-=t<<3,this.bytesAvailable-=t,this.loadWord(),this.word<<=e,this.bitsAvailable-=e)}readBits(e){let t=Math.min(this.bitsAvailable,e),n=this.word>>>32-t;if(e>32&&oP.error(`Cannot read more than 32 bits at a time`),this.bitsAvailable-=t,this.bitsAvailable>0)this.word<<=t;else if(this.bytesAvailable>0)this.loadWord();else throw Error(`no bits available`);return t=e-t,t>0&&this.bitsAvailable?n<<t|this.readBits(t):n}skipLZ(){let e;for(e=0;e<this.bitsAvailable;++e)if(this.word&2147483648>>>e)return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()}skipUEG(){this.skipBits(1+this.skipLZ())}skipEG(){this.skipBits(1+this.skipLZ())}readUEG(){let e=this.skipLZ();return this.readBits(e+1)-1}readEG(){let e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)}readBoolean(){return this.readBits(1)===1}readUByte(){return this.readBits(8)}readUShort(){return this.readBits(16)}readUInt(){return this.readBits(32)}},Yz=class extends qz{parsePES(e,t,n,r){let i=this.parseNALu(e,n.data,r),a=this.VideoSample,o,s=!1;n.data=null,a&&i.length&&!e.audFound&&(this.pushAccessUnit(a,e),a=this.VideoSample=this.createVideoSample(!1,n.pts,n.dts)),i.forEach(r=>{var i,c;switch(r.type){case 1:{let t=!1;o=!0;let i=r.data;if(s&&i.length>4){let e=this.readSliceType(i);(e===2||e===4||e===7||e===9)&&(t=!0)}if(t){var l;(l=a)!=null&&l.frame&&!a.key&&(this.pushAccessUnit(a,e),a=this.VideoSample=null)}a||=this.VideoSample=this.createVideoSample(!0,n.pts,n.dts),a.frame=!0,a.key=t;break}case 5:o=!0,(i=a)!=null&&i.frame&&!a.key&&(this.pushAccessUnit(a,e),a=this.VideoSample=null),a||=this.VideoSample=this.createVideoSample(!0,n.pts,n.dts),a.key=!0,a.frame=!0;break;case 6:o=!0,eF(r.data,1,n.pts,t.samples);break;case 7:{o=!0,s=!0;let t=r.data,n=this.readSPS(t);if(!e.sps||e.width!==n.width||e.height!==n.height||e.pixelRatio?.[0]!==n.pixelRatio[0]||e.pixelRatio?.[1]!==n.pixelRatio[1]){e.width=n.width,e.height=n.height,e.pixelRatio=n.pixelRatio,e.sps=[t];let r=t.subarray(1,4),i=`avc1.`;for(let e=0;e<3;e++){let t=r[e].toString(16);t.length<2&&(t=`0`+t),i+=t}e.codec=i}break}case 8:o=!0,e.pps=[r.data];break;case 9:o=!0,e.audFound=!0,(c=a)!=null&&c.frame&&(this.pushAccessUnit(a,e),a=null),a||=this.VideoSample=this.createVideoSample(!1,n.pts,n.dts);break;case 12:o=!0;break;default:o=!1}a&&o&&a.units.push(r)}),r&&a&&(this.pushAccessUnit(a,e),this.VideoSample=null)}getNALuType(e,t){return e[t]&31}readSliceType(e){let t=new Jz(e);return t.readUByte(),t.readUEG(),t.readUEG()}skipScalingList(e,t){let n=8,r=8,i;for(let a=0;a<e;a++)r!==0&&(i=t.readEG(),r=(n+i+256)%256),n=r===0?n:r}readSPS(e){let t=new Jz(e),n=0,r=0,i=0,a=0,o,s,c,l=t.readUByte.bind(t),u=t.readBits.bind(t),d=t.readUEG.bind(t),f=t.readBoolean.bind(t),p=t.skipBits.bind(t),m=t.skipEG.bind(t),h=t.skipUEG.bind(t),g=this.skipScalingList.bind(this);l();let _=l();if(u(5),p(3),l(),h(),_===100||_===110||_===122||_===244||_===44||_===83||_===86||_===118||_===128){let e=d();if(e===3&&p(1),h(),h(),p(1),f())for(s=e===3?12:8,c=0;c<s;c++)f()&&g(c<6?16:64,t)}h();let v=d();if(v===0)d();else if(v===1)for(p(1),m(),m(),o=d(),c=0;c<o;c++)m();h(),p(1);let y=d(),b=d(),x=u(1);x===0&&p(1),p(1),f()&&(n=d(),r=d(),i=d(),a=d());let S=[1,1];if(f()&&f())switch(l()){case 1:S=[1,1];break;case 2:S=[12,11];break;case 3:S=[10,11];break;case 4:S=[16,11];break;case 5:S=[40,33];break;case 6:S=[24,11];break;case 7:S=[20,11];break;case 8:S=[32,11];break;case 9:S=[80,33];break;case 10:S=[18,11];break;case 11:S=[15,11];break;case 12:S=[64,33];break;case 13:S=[160,99];break;case 14:S=[4,3];break;case 15:S=[3,2];break;case 16:S=[2,1];break;case 255:S=[l()<<8|l(),l()<<8|l()]}return{width:Math.ceil((y+1)*16-n*2-r*2),height:(2-x)*(b+1)*16-(x?2:4)*(i+a),pixelRatio:S}}},Xz=class extends qz{constructor(...e){super(...e),this.initVPS=null}parsePES(e,t,n,r){let i=this.parseNALu(e,n.data,r),a=this.VideoSample,o,s=!1;n.data=null,a&&i.length&&!e.audFound&&(this.pushAccessUnit(a,e),a=this.VideoSample=this.createVideoSample(!1,n.pts,n.dts)),i.forEach(r=>{var i,c;switch(r.type){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:a||=this.VideoSample=this.createVideoSample(!1,n.pts,n.dts),a.frame=!0,o=!0;break;case 16:case 17:case 18:case 21:if(o=!0,s){var l;(l=a)!=null&&l.frame&&!a.key&&(this.pushAccessUnit(a,e),a=this.VideoSample=null)}a||=this.VideoSample=this.createVideoSample(!0,n.pts,n.dts),a.key=!0,a.frame=!0;break;case 19:case 20:o=!0,(i=a)!=null&&i.frame&&!a.key&&(this.pushAccessUnit(a,e),a=this.VideoSample=null),a||=this.VideoSample=this.createVideoSample(!0,n.pts,n.dts),a.key=!0,a.frame=!0;break;case 39:o=!0,eF(r.data,2,n.pts,t.samples);break;case 32:o=!0,e.vps||(typeof e.params!=`object`&&(e.params={}),e.params=qN(e.params,this.readVPS(r.data)),this.initVPS=r.data),e.vps=[r.data];break;case 33:if(o=!0,s=!0,e.vps!==void 0&&e.vps[0]!==this.initVPS&&e.sps!==void 0&&!this.matchSPS(e.sps[0],r.data)&&(this.initVPS=e.vps[0],e.sps=e.pps=void 0),!e.sps){let t=this.readSPS(r.data);e.width=t.width,e.height=t.height,e.pixelRatio=t.pixelRatio,e.codec=t.codecString,e.sps=[],typeof e.params!=`object`&&(e.params={});for(let n in t.params)e.params[n]=t.params[n]}this.pushParameterSet(e.sps,r.data,e.vps),a||=this.VideoSample=this.createVideoSample(!0,n.pts,n.dts),a.key=!0;break;case 34:if(o=!0,typeof e.params==`object`){if(!e.pps){e.pps=[];let t=this.readPPS(r.data);for(let n in t)e.params[n]=t[n]}this.pushParameterSet(e.pps,r.data,e.vps)}break;case 35:o=!0,e.audFound=!0,(c=a)!=null&&c.frame&&(this.pushAccessUnit(a,e),a=null),a||=this.VideoSample=this.createVideoSample(!1,n.pts,n.dts);break;default:o=!1}a&&o&&a.units.push(r)}),r&&a&&(this.pushAccessUnit(a,e),this.VideoSample=null)}pushParameterSet(e,t,n){(n&&n[0]===this.initVPS||!n&&!e.length)&&e.push(t)}getNALuType(e,t){return(e[t]&126)>>>1}ebsp2rbsp(e){let t=new Uint8Array(e.byteLength),n=0;for(let r=0;r<e.byteLength;r++)r>=2&&e[r]===3&&e[r-1]===0&&e[r-2]===0||(t[n]=e[r],n++);return new Uint8Array(t.buffer,0,n)}pushAccessUnit(e,t){super.pushAccessUnit(e,t),this.initVPS&&=null}readVPS(e){let t=new Jz(e);t.readUByte(),t.readUByte(),t.readBits(4),t.skipBits(2),t.readBits(6);let n=t.readBits(3),r=t.readBoolean();return{numTemporalLayers:n+1,temporalIdNested:r}}readSPS(e){let t=new Jz(this.ebsp2rbsp(e));t.readUByte(),t.readUByte(),t.readBits(4);let n=t.readBits(3);t.readBoolean();let r=t.readBits(2),i=t.readBoolean(),a=t.readBits(5),o=t.readUByte(),s=t.readUByte(),c=t.readUByte(),l=t.readUByte(),u=t.readUByte(),d=t.readUByte(),f=t.readUByte(),p=t.readUByte(),m=t.readUByte(),h=t.readUByte(),g=t.readUByte(),_=[],v=[];for(let e=0;e<n;e++)_.push(t.readBoolean()),v.push(t.readBoolean());if(n>0)for(let e=n;e<8;e++)t.readBits(2);for(let e=0;e<n;e++)_[e]&&(t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte(),t.readUByte()),v[e]&&t.readUByte();t.readUEG();let y=t.readUEG();y==3&&t.skipBits(1);let b=t.readUEG(),x=t.readUEG(),S=t.readBoolean(),ee=0,te=0,ne=0,re=0;S&&(ee+=t.readUEG(),te+=t.readUEG(),ne+=t.readUEG(),re+=t.readUEG());let ie=t.readUEG(),C=t.readUEG(),ae=t.readUEG(),w=t.readBoolean();for(let e=w?0:n;e<=n;e++)t.skipUEG(),t.skipUEG(),t.skipUEG();if(t.skipUEG(),t.skipUEG(),t.skipUEG(),t.skipUEG(),t.skipUEG(),t.skipUEG(),t.readBoolean()&&t.readBoolean())for(let e=0;e<4;e++)for(let n=0;n<(e===3?2:6);n++)if(!t.readBoolean())t.readUEG();else{let n=Math.min(64,1<<4+(e<<1));e>1&&t.readEG();for(let e=0;e<n;e++)t.readEG()}t.readBoolean(),t.readBoolean(),t.readBoolean()&&(t.readUByte(),t.skipUEG(),t.skipUEG(),t.readBoolean());let oe=t.readUEG(),T=0;for(let e=0;e<oe;e++){let n=!1;if(e!==0&&(n=t.readBoolean()),n){e===oe&&t.readUEG(),t.readBoolean(),t.readUEG();let n=0;for(let e=0;e<=T;e++){let e=t.readBoolean(),r=!1;e||(r=t.readBoolean()),(e||r)&&n++}T=n}else{let e=t.readUEG(),n=t.readUEG();T=e+n;for(let n=0;n<e;n++)t.readUEG(),t.readBoolean();for(let e=0;e<n;e++)t.readUEG(),t.readBoolean()}}if(t.readBoolean()){let e=t.readUEG();for(let n=0;n<e;n++){for(let e=0;e<ae+4;e++)t.readBits(1);t.readBits(1)}}let se=0,ce=1,le=1,ue=!0,de=1,fe=0;t.readBoolean(),t.readBoolean();let pe=!1;if(t.readBoolean()){if(t.readBoolean()){let e=t.readUByte();e>0&&e<16?(ce=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][e-1],le=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][e-1]):e===255&&(ce=t.readBits(16),le=t.readBits(16))}if(t.readBoolean()&&t.readBoolean(),t.readBoolean()&&(t.readBits(3),t.readBoolean(),t.readBoolean()&&(t.readUByte(),t.readUByte(),t.readUByte())),t.readBoolean()&&(t.readUEG(),t.readUEG()),t.readBoolean(),t.readBoolean(),t.readBoolean(),pe=t.readBoolean(),pe&&(t.skipUEG(),t.skipUEG(),t.skipUEG(),t.skipUEG()),t.readBoolean()&&(de=t.readBits(32),fe=t.readBits(32),t.readBoolean()&&t.readUEG(),t.readBoolean())){let e=t.readBoolean(),r=t.readBoolean(),i=!1;(e||r)&&(i=t.readBoolean(),i&&(t.readUByte(),t.readBits(5),t.readBoolean(),t.readBits(5)),t.readBits(4),t.readBits(4),i&&t.readBits(4),t.readBits(5),t.readBits(5),t.readBits(5));for(let a=0;a<=n;a++){ue=t.readBoolean();let n=ue||t.readBoolean(),a=!1;n?t.readEG():a=t.readBoolean();let o=a?1:t.readUEG()+1;if(e)for(let e=0;e<o;e++)t.readUEG(),t.readUEG(),i&&(t.readUEG(),t.readUEG()),t.skipBits(1);if(r)for(let e=0;e<o;e++)t.readUEG(),t.readUEG(),i&&(t.readUEG(),t.readUEG()),t.skipBits(1)}}t.readBoolean()&&(t.readBoolean(),t.readBoolean(),t.readBoolean(),se=t.readUEG())}let me=b,he=x;if(S){let e=1,t=1;y===1?e=t=2:y==2&&(e=2),me=b-e*te-e*ee,he=x-t*re-t*ne}let ge=r?[`A`,`B`,`C`][r]:``,_e=o<<24|s<<16|c<<8|l,ve=0;for(let e=0;e<32;e++)ve=(ve|(_e>>e&1)<<31-e)>>>0;let ye=ve.toString(16);return a===1&&ye===`2`&&(ye=`6`),{codecString:`hvc1.${ge}${a}.${ye}.${i?`H`:`L`}${g}.B0`,params:{general_tier_flag:i,general_profile_idc:a,general_profile_space:r,general_profile_compatibility_flags:[o,s,c,l],general_constraint_indicator_flags:[u,d,f,p,m,h],general_level_idc:g,bit_depth:ie+8,bit_depth_luma_minus8:ie,bit_depth_chroma_minus8:C,min_spatial_segmentation_idc:se,chroma_format_idc:y,frame_rate:{fixed:ue,fps:fe/de}},width:me,height:he,pixelRatio:[ce,le]}}readPPS(e){let t=new Jz(this.ebsp2rbsp(e));t.readUByte(),t.readUByte(),t.skipUEG(),t.skipUEG(),t.skipBits(2),t.skipBits(3),t.skipBits(2),t.skipUEG(),t.skipUEG(),t.skipEG(),t.skipBits(2),t.readBoolean()&&t.skipUEG(),t.skipEG(),t.skipEG(),t.skipBits(4);let n=t.readBoolean(),r=t.readBoolean(),i=1;return r&&n?i=0:r?i=3:n&&(i=2),{parallelismType:i}}matchSPS(e,t){return String.fromCharCode.apply(null,e).substr(3)===String.fromCharCode.apply(null,t).substr(3)}},Zz=188,Qz=class e{constructor(e,t,n,r){this.logger=void 0,this.observer=void 0,this.config=void 0,this.typeSupp
1807orted=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._pmtId=-1,this._videoTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.remainderData=null,this.videoParser=void 0,this.observer=e,this.config=t,this.typeSupported=n,this.logger=r,this.videoParser=null}static probe(t,n){let r=e.syncOffset(t);return r>0&&n.warn(`MPEG2-TS detected but first sync word found @ offset ${r}`),r!==-1}static syncOffset(e){let t=e.length,n=Math.min(940,t-Zz)+1,r=0;for(;r<n;){let i=!1,a=-1,o=0;for(let s=r;s<t;s+=Zz)if(e[s]===71&&(t-s===Zz||e[s+Zz]===71)){if(o++,a===-1&&(a=s,a!==0&&(n=Math.min(a+18612,e.length-Zz)+1)),i||=$z(e,s)===0,i&&o>1&&(a===0&&o>2||s+Zz>n))return a}else if(o)return-1;else break;r++}return-1}static createTrack(e,t){return{container:e===`video`||e===`audio`?`video/mp2t`:void 0,type:e,id:OP[e],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:e===`audio`?t:void 0}}resetInitSegment(t,n,r,i){this.pmtParsed=!1,this._pmtId=-1,this._videoTrack=e.createTrack(`video`),this._videoTrack.duration=i,this._audioTrack=e.createTrack(`audio`,i),this._id3Track=e.createTrack(`id3`),this._txtTrack=e.createTrack(`text`),this._audioTrack.segmentCodec=`aac`,this.videoParser=null,this.aacOverFlow=null,this.remainderData=null,this.audioCodec=n,this.videoCodec=r}resetTimeStamp(){}resetContiguity(){let{_audioTrack:e,_videoTrack:t,_id3Track:n}=this;e&&(e.pesData=null),t&&(t.pesData=null),n&&(n.pesData=null),this.aacOverFlow=null,this.remainderData=null}demux(t,n,r=!1,i=!1){r||(this.sampleAes=null);let a,o=this._videoTrack,s=this._audioTrack,c=this._id3Track,l=this._txtTrack,u=o.pid,d=o.pesData,f=s.pid,p=c.pid,m=s.pesData,h=c.pesData,g=null,_=this.pmtParsed,v=this._pmtId,y=t.length;if(this.remainderData&&=(t=XP(this.remainderData,t),y=t.length,null),y<Zz&&!i)return this.remainderData=t,{audioTrack:s,videoTrack:o,id3Track:c,textTrack:l};let b=Math.max(0,e.syncOffset(t));y-=(y-b)%Zz,y<t.byteLength&&!i&&(this.remainderData=new Uint8Array(t.buffer,y,t.buffer.byteLength-y));let x=0;for(let e=b;e<y;e+=Zz)if(t[e]===71){let n=!!(t[e+1]&64),i=$z(t,e),y=(t[e+3]&48)>>4,x;if(y>1){if(x=e+5+t[e+4],x===e+Zz)continue}else x=e+4;switch(i){case u:n&&(d&&(a=iB(d,this.logger))&&(this.readyVideoParser(o.segmentCodec),this.videoParser!==null&&this.videoParser.parsePES(o,l,a,!1)),d={data:[],size:0}),d&&(d.data.push(t.subarray(x,e+Zz)),d.size+=e+Zz-x);break;case f:if(n){if(m&&(a=iB(m,this.logger)))switch(s.segmentCodec){case`aac`:this.parseAACPES(s,a);break;case`mp3`:this.parseMPEGPES(s,a);break;case`ac3`:this.parseAC3PES(s,a)}m={data:[],size:0}}m&&(m.data.push(t.subarray(x,e+Zz)),m.size+=e+Zz-x);break;case p:n&&(h&&(a=iB(h,this.logger))&&this.parseID3PES(c,a),h={data:[],size:0}),h&&(h.data.push(t.subarray(x,e+Zz)),h.size+=e+Zz-x);break;case 0:n&&(x+=t[x]+1),v=this._pmtId=eB(t,x);break;case v:{n&&(x+=t[x]+1);let i=tB(t,x,this.typeSupported,r,this.observer,this.logger);u=i.videoPid,u>0&&(o.pid=u,o.segmentCodec=i.segmentVideoCodec),f=i.audioPid,f>0&&(s.pid=f,s.segmentCodec=i.segmentAudioCodec),p=i.id3Pid,p>0&&(c.pid=p),g!==null&&!_&&(this.logger.warn(`MPEG-TS PMT found at ${e} after unknown PID '${g}'. Backtracking to sync byte @${b} to parse all TS packets.`),g=null,e=b-188),_=this.pmtParsed=!0;break}case 17:case 8191:break;default:g=i}}else x++;x>0&&nB(this.observer,Error(`Found ${x} TS packet/s that do not start with 0x47`),void 0,this.logger),o.pesData=d,s.pesData=m,c.pesData=h;let S={audioTrack:s,videoTrack:o,id3Track:c,textTrack:l};return i&&this.extractRemainingSamples(S),S}flush(){let{remainderData:e}=this;this.remainderData=null;let t;return t=e?this.demux(e,-1,!1,!0):{videoTrack:this._videoTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(t),this.sampleAes?this.decrypt(t,this.sampleAes):t}extractRemainingSamples(e){let{audioTrack:t,videoTrack:n,id3Track:r,textTrack:i}=e,a=n.pesData,o=t.pesData,s=r.pesData,c;if(a&&(c=iB(a,this.logger))?(this.readyVideoParser(n.segmentCodec),this.videoParser!==null&&(this.videoParser.parsePES(n,i,c,!0),n.pesData=null)):n.pesData=a,o&&(c=iB(o,this.logger))){switch(t.segmentCodec){case`aac`:this.parseAACPES(t,c);break;case`mp3`:this.parseMPEGPES(t,c);break;case`ac3`:this.parseAC3PES(t,c)}t.pesData=null}else o!=null&&o.size&&this.logger.log(`last AAC PES packet truncated,might overlap between fragments`),t.pesData=o;s&&(c=iB(s,this.logger))?(this.parseID3PES(r,c),r.pesData=null):r.pesData=s}
vendor: 15,001 bytes, line 1807
1807demuxSampleAes(e,t,n){let r=this.demux(e,n,!0,!this.config.progressive),i=this.sampleAes=new Kz(this.observer,this.config,t);return this.decrypt(r,i)}readyVideoParser(e){this.videoParser===null&&(e===`avc`?this.videoParser=new Yz:e===`hevc`&&(this.videoParser=new Xz))}decrypt(e,t){return new Promise(n=>{let{audioTrack:r,videoTrack:i}=e;r.samples&&r.segmentCodec===`aac`?t.decryptAacSamples(r.samples,0,()=>{i.samples?t.decryptAvcSamples(i.samples,0,0,()=>{n(e)}):n(e)}):i.samples&&t.decryptAvcSamples(i.samples,0,0,()=>{n(e)})})}destroy(){this.observer&&this.observer.removeAllListeners(),this.config=this.logger=this.observer=null,this.aacOverFlow=this.videoParser=this.remainderData=this.sampleAes=null,this._videoTrack=this._audioTrack=this._id3Track=this._txtTrack=void 0}parseAACPES(e,t){let n=0,r=this.aacOverFlow,i=t.data;if(r){this.aacOverFlow=null;let t=r.missing,a=r.sample.unit.byteLength;if(t===-1)i=XP(r.sample.unit,i);else{let o=a-t;r.sample.unit.set(i.subarray(0,t),o),e.samples.push(r.sample),n=r.missing}}let a,o;for(a=n,o=i.length;a<o-1&&!QR(i,a);a++);if(a!==n){let e,t=a<o-1;if(e=t?`AAC PES did not start with ADTS header,offset:${a}`:`No ADTS header found in AAC PES`,nB(this.observer,Error(e),t,this.logger),!t)return}tz(e,this.observer,i,a,this.audioCodec);let s;if(t.pts!==void 0)s=t.pts;else if(r){let t=nz(e.samplerate);s=r.sample.pts+t}else{this.logger.warn(`[tsdemuxer]: AAC PES unknown PTS`);return}let c=0,l;for(;a<o;){if(l=iz(e,i,a,s,c),a+=l.length,l.missing){this.aacOverFlow=l;break}for(c++;a<o-1&&!QR(i,a);a++);}}parseMPEGPES(e,t){let n=t.data,r=n.length,i=0,a=0,o=t.pts;if(o===void 0){this.logger.warn(`[tsdemuxer]: MPEG PES unknown PTS`);return}for(;a<r;)if(Fz(n,a)){let t=Mz(e,n,a,o,i);if(t)a+=t.length,i++;else break}else a++}parseAC3PES(e,t){{let n=t.data,r=t.pts;if(r===void 0){this.logger.warn(`[tsdemuxer]: AC3 PES unknown PTS`);return}let i=n.length,a=0,o=0,s;for(;o<i&&(s=Vz(e,n,o,r,a++))>0;)o+=s}}parseID3PES(e,t){if(t.pts===void 0){this.logger.warn(`[tsdemuxer]: ID3 PES unknown PTS`);return}let n=qN({},t,{type:this._videoTrack?Cz.emsg:Cz.audioId3,duration:1/0});e.samples.push(n)}};function $z(e,t){return((e[t+1]&31)<<8)+e[t+2]}function eB(e,t){return(e[t+10]&31)<<8|e[t+11]}function tB(e,t,n,r,i,a){let o={audioPid:-1,videoPid:-1,id3Pid:-1,segmentVideoCodec:`avc`,segmentAudioCodec:`aac`},s=(e[t+1]&15)<<8|e[t+2],c=t+3+s-4,l=(e[t+10]&15)<<8|e[t+11];for(t+=12+l;t<c;){let s=$z(e,t),c=(e[t+3]&15)<<8|e[t+4];switch(e[t]){case 207:if(!r){rB(`ADTS AAC`,a);break}case 15:o.audioPid===-1&&(o.audioPid=s);break;case 21:o.id3Pid===-1&&(o.id3Pid=s);break;case 219:if(!r){rB(`H.264`,a);break}case 27:o.videoPid===-1&&(o.videoPid=s);break;case 3:case 4:!n.mpeg&&!n.mp3?a.log(`MPEG audio found, not supported in this browser`):o.audioPid===-1&&(o.audioPid=s,o.segmentAudioCodec=`mp3`);break;case 193:if(!r){rB(`AC-3`,a);break}case 129:n.ac3?o.audioPid===-1&&(o.audioPid=s,o.segmentAudioCodec=`ac3`):a.log(`AC-3 audio found, not supported in this browser`);break;case 6:if(o.audioPid===-1&&c>0){let r=t+5,i=c;for(;i>2;){e[r]===106&&(n.ac3===!0?(o.audioPid=s,o.segmentAudioCodec=`ac3`):a.log(`AC-3 audio found, not supported in this browser for now`));let t=e[r+1]+2;r+=t,i-=t}}break;case 194:case 135:return nB(i,Error(`Unsupported EC-3 in M2TS found`),void 0,a),o;case 36:o.videoPid===-1&&(o.videoPid=s,o.segmentVideoCodec=`hevc`,a.log(`HEVC in M2TS found`))}t+=c+5}return o}function nB(e,t,n,r){r.warn(`parsing error: ${t.message}`),e.emit(Y.ERROR,Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_PARSING_ERROR,fatal:!1,levelRetry:n,error:t,reason:t.message})}function rB(e,t){t.log(`${e} with AES-128-CBC encryption found in unencrypted stream`)}function iB(e,t){let n=0,r,i,a,o,s,c=e.data;if(!e||e.size===0)return null;for(;c[0].length<19&&c.length>1;)c[0]=XP(c[0],c[1]),c.splice(1,1);if(r=c[0],(r[0]<<16)+(r[1]<<8)+r[2]===1){if(i=(r[4]<<8)+r[5],i&&i>e.size-6)return null;let l=r[7];l&192&&(o=(r[9]&14)*536870912+(r[10]&255)*4194304+(r[11]&254)*16384+(r[12]&255)*128+(r[13]&254)/2,l&64?(s=(r[14]&14)*536870912+(r[15]&255)*4194304+(r[16]&254)*16384+(r[17]&255)*128+(r[18]&254)/2,o-s>54e5&&(t.warn(`${Math.round((o-s)/9e4)}s delta between PTS and DTS, align them`),o=s)):s=o),a=r[8];let u=a+9;if(e.size<=u)return null;e.size-=u;let d=new Uint8Array(e.size);for(let e=0,t=c.length;e<t;e++){r=c[e];let t=r.byteLength;if(u)if(u>t){u-=t;continue}else r=r.subarray(u),t-=u,u=0;d.set(r,n),n+=t}return i&&(i-=a+3),{data:d,pts:o,dts:s,len:i}}return null}var aB=class{static getSilentFrame(e,t){switch(e){case`mp4a.40.2`:if(t===1)return new Uint8Array([0,200,0,128,35,128]);if(t===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(t===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(t===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(t===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(t===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(t===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===2||t===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}}},oB=2**32-1,sB=class e{static init(){e.types={avc1:[],avcC:[],hvc1:[],hvcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],dac3:[],"ac-3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};let t;for(t in e.types)e.types.hasOwnProperty(t)&&(e.types[t]=[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]);let n=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]),r=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]);e.HDLR_TYPES={video:n,audio:r};let i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),a=new Uint8Array([0,0,0,0,0,0,0,0]);e.STTS=e.STSC=e.STCO=a,e.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),e.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),e.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),e.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);let o=new Uint8Array([105,115,111,109]),s=new Uint8Array([97,118,99,49]),c=new Uint8Array([0,0,0,1]);e.FTYP=e.box(e.types.ftyp,o,c,o,s),e.DINF=e.box(e.types.dinf,e.box(e.types.dref,i))}static box(e,...t){let n=8,r=t.length,i=r;for(;r--;)n+=t[r].byteLength;let a=new Uint8Array(n);for(a[0]=n>>24&255,a[1]=n>>16&255,a[2]=n>>8&255,a[3]=n&255,a.set(e,4),r=0,n=8;r<i;r++)a.set(t[r],n),n+=t[r].byteLength;return a}static hdlr(t){return e.box(e.types.hdlr,e.HDLR_TYPES[t])}static mdat(t){return e.box(e.types.mdat,t)}static mdhd(t,n){n*=t;let r=Math.floor(n/(oB+1)),i=Math.floor(n%(oB+1));return e.box(e.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,t&255,r>>24,r>>16&255,r>>8&255,r&255,i>>24,i>>16&255,i>>8&255,i&255,85,196,0,0]))}static mdia(t){return e.box(e.types.mdia,e.mdhd(t.timescale||0,t.duration||0),e.hdlr(t.type),e.minf(t))}static mfhd(t){return e.box(e.types.mfhd,new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,t&255]))}static minf(t){return t.type===`audio`?e.box(e.types.minf,e.box(e.types.smhd,e.SMHD),e.DINF,e.stbl(t)):e.box(e.types.minf,e.box(e.types.vmhd,e.VMHD),e.DINF,e.stbl(t))}static moof(t,n,r){return e.box(e.types.moof,e.mfhd(t),e.traf(r,n))}static moov(t){let n=t.length,r=[];for(;n--;)r[n]=e.trak(t[n]);return e.box.apply(null,[e.types.moov,e.mvhd(t[0].timescale||0,t[0].duration||0)].concat(r,e.mvex(t)))}static mvex(t){let n=t.length,r=[];for(;n--;)r[n]=e.trex(t[n]);return e.box.apply(null,[e.types.mvex,...r])}static mvhd(t,n){n*=t;let r=Math.floor(n/(oB+1)),i=Math.floor(n%(oB+1)),a=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,t&255,r>>24,r>>16&255,r>>8&255,r&255,i>>24,i>>16&255,i>>8&255,i&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return e.box(e.types.mvhd,a)}static sdtp(t){let n=t.samples||[],r=new Uint8Array(4+n.length),i,a;for(i=0;i<n.length;i++)a=n[i].flags,r[i+4]=a.dependsOn<<4|a.isDependedOn<<2|a.hasRedundancy;return e.box(e.types.sdtp,r)}static stbl(t){return e.box(e.types.stbl,e.stsd(t),e.box(e.types.stts,e.STTS),e.box(e.types.stsc,e.STSC),e.box(e.types.stsz,e.STSZ),e.box(e.types.stco,e.STCO))}static avc1(t){let n=[],r=[],i,a,o;for(i=0;i<t.sps.length;i++)a=t.sps[i],o=a.byteLength,n.push(o>>>8&255),n.push(o&255),n=n.concat(Array.prototype.slice.call(a));for(i=0;i<t.pps.length;i++)a=t.pps[i],o=a.byteLength,r.push(o>>>8&255),r.push(o&255),r=r.concat(Array.prototype.slice.call(a));let s=e.box(e.types.avcC,new Uint8Array([1,n[3],n[4],n[5],255,224|t.sps.length].concat(n,[t.pps.length],r))),c=t.width,l=t.height,u=t.pixelRatio[0],d=t.pixelRatio[1];return e.box(e.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,c>>8&255,c&255,l>>8&255,l&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),s,e.box(e.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),e.box(e.types.pasp,new Uint8Array([u>>24,u>>16&255,u>>8&255,u&255,d>>24,d>>16&255,d>>8&255,d&255])))}static esds(e){let t=e.config;return new Uint8Array([0,0,0,0,3,25,0,1,0,4,17,64,21,0,0,0,0,0,0,0,0,0,0,0,5,2,...t,6,1,2])}static audioStsd(e){let t=e.samplerate||0;return new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount||0,0,16,0,0,0,0,t>>8&255,t&255,0,0])}static mp4a(t){return e.box(e.types.mp4a,e.audioStsd(t),e.box(e.types.esds,e.esds(t)))}static mp3(t){return e.box(e.types[`.mp3`],e.audioStsd(t))}static ac3(t){return e.box(e.types[`ac-3`],e.audioStsd(t),e.box(e.types.dac3,t.config))}static stsd(t){let{segmentCodec:n}=t;if(t.type===`audio`){if(n===`aac`)return e.box(e.types.stsd,e.STSD,e.mp4a(t));if(n===`ac3`&&t.config)return e.box(e.types.stsd,e.STSD,e.ac3(t));if(n===`mp3`&&t.codec===`mp3`)return e.box(e.types.stsd,e.STSD,e.mp3(t))}else if(t.pps&&t.sps){if(n===`avc`)return e.box(e.types.stsd,e.STSD,e.avc1(t));if(n===`hevc`&&t.vps)return e.box(e.types.stsd,e.STSD,e.hvc1(t))}else throw Error(`video track missing pps or sps`);throw Error(`unsupported ${t.type} segment codec (${n}/${t.codec})`)}static tkhd(t){let n=t.id,r=(t.duration||0)*(t.timescale||0),i=t.width||0,a=t.height||0,o=Math.floor(r/(oB+1)),s=Math.floor(r%(oB+1));return e.box(e.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,n>>24&255,n>>16&255,n>>8&255,n&255,0,0,0,0,o>>24,o>>16&255,o>>8&255,o&255,s>>24,s>>16&255,s>>8&255,s&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,i>>8&255,i&255,0,0,a>>8&255,a&255,0,0]))}static traf(t,n){let r=e.sdtp(t),i=t.id,a=Math.floor(n/(oB+1)),o=Math.floor(n%(oB+1));return e.box(e.types.traf,e.box(e.types.tfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,i&255])),e.box(e.types.tfdt,new Uint8Array([1,0,0,0,a>>24,a>>16&255,a>>8&255,a&255,o>>24,o>>16&255,o>>8&255,o&255])),e.trun(t,r.length+16+20+8+16+8+8),r)}static trak(t){return t.duration=t.duration||4294967295,e.box(e.types.trak,e.tkhd(t),e.mdia(t))}static trex(t){let n=t.id;return e.box(e.types.trex,new Uint8Array([0,0,0,0,n>>24,n>>16&255,n>>8&255,n&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))}static trun(t,n){let r=t.samples||[],i=r.length,a=12+16*i,o=new Uint8Array(a),s,c,l,u,d,f;for(n+=8+a,o.set([+(t.type===`video`),0,15,1,i>>>24&255,i>>>16&255,i>>>8&255,i&255,n>>>24&255,n>>>16&255,n>>>8&255,n&255],0),s=0;s<i;s++)c=r[s],l=c.duration,u=c.size,d=c.flags,f=c.cts,o.set([l>>>24&255,l>>>16&255,l>>>8&255,l&255,u>>>24&255,u>>>16&255,u>>>8&255,u&255,d.isLeading<<2|d.dependsOn,d.isDependedOn<<6|d.hasRedundancy<<4|d.paddingValue<<1|d.isNonSync,d.degradPrio&61440,d.degradPrio&15,f>>>24&255,f>>>16&255,f>>>8&255,f&255],12+16*s);return e.box(e.types.trun,o)}static initSegment(t){e.types||e.init();let n=e.moov(t);return XP(e.FTYP,n)}static hvc1(t){let n=t.params,r=[t.vps,t.sps,t.pps],i=new Uint8Array([1,n.general_profile_space<<6|(n.general_tier_flag?32:0)|n.general_profile_idc,n.general_profile_compatibility_flags[0],n.general_profile_compatibility_flags[1],n.general_profile_compatibility_flags[2],n.general_profile_compatibility_flags[3],n.general_constraint_indicator_flags[0],n.general_constraint_indicator_flags[1],n.general_constraint_indicator_flags[2],n.general_constraint_indicator_flags[3],n.general_constraint_indicator_flags[4],n.general_constraint_indicator_flags[5],n.general_level_idc,240|n.min_spatial_segmentation_idc>>8,255&n.min_spatial_segmentation_idc,252|n.parallelismType,252|n.chroma_format_idc,248|n.bit_depth_luma_minus8,248|n.bit_depth_chroma_minus8,0,parseInt(n.frame_rate.fps),3|n.temporal_id_nested<<2|n.num_temporal_layers<<3|(n.frame_rate.fixed?64:0),r.length]),a=i.length;for(let e=0;e<r.length;e+=1){a+=3;for(let t=0;t<r[e].length;t+=1)a+=2+r[e][t].length}let o=new Uint8Array(a);o.set(i,0),a=i.length;let s=r.length-1;for(let e=0;e<r.length;e+=1){o.set(new Uint8Array([32+e|(e===s?128:0),0,r[e].length]),a),a+=3;for(let t=0;t<r[e].length;t+=1)o.set(new Uint8Array([r[e][t].length>>8,r[e][t].length&255]),a),a+=2,o.set(r[e][t],a),a+=r[e][t].length}let c=e.box(e.types.hvcC,o),l=t.width,u=t.height,d=t.pixelRatio[0],f=t.pixelRatio[1];return e.box(e.types.hvc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,l>>8&255,l&255,u>>8&255,u&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),c,e.box(e.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),e.box(e.types.pasp,new Uint8Array([d>>24,d>>16&255,d>>8&255,d&255,f>>24,f>>16&255,f>>8&255,f&255])))}};sB.types=void 0,sB.HDLR_TYPES=void 0,sB.STTS=void 0,sB.STSC=void 0,sB.STCO=void 0,sB.STSZ=void 0,sB.VMHD=void 0,sB.SMHD=void 0,sB.STSD=void 0,sB.FTYP=void 0,sB.DINF=void 0;var cB=9e4;function lB(e,t,n=1,r=!1){let i=e*t*n;return r?Math.round(i):i}function uB(e,t,n=1,r=!1){return lB(e,t,1/n,r)}function dB(e,t=!1){return lB(e,1e3,1/cB,t)}function fB(e,t=1){return lB(e,cB,1/t)}function pB(e){let{baseTime:t,timescale:n,trackId:r}=e;return`${t/n} (${t}/${n}) trackId: ${r}`}var mB=1e4,hB=1024,gB=1152,_B=1536,vB=null,yB=null;function bB(e,t,n,r){return{duration:t,size:n,cts:r,flags:{isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:e?2:1,isNonSync:+!e}}}var xB=class extends QN{constructor(e,t,n,r){if(super(`mp4-remuxer`,r),this.observer=void 0,this.config=void 0,this.typeSupp
1807orted=void 0,this.ISGenerated=!1,this._initPTS=null,this._initDTS=null,this.nextVideoTs=null,this.nextAudioTs=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.videoTrackConfig=void 0,this.observer=e,this.config=t,this.typeSupported=n,this.ISGenerated=!1,vB===null){let e=(navigator.userAgent||``).match(/Chrome\/(\d+)/i);vB=e?parseInt(e[1]):0}if(yB===null){let e=navigator.userAgent.match(/Safari\/(\d+)/i);yB=e?parseInt(e[1]):0}}destroy(){this.config=this.videoTrackConfig=this._initPTS=this._initDTS=null}resetTimeStamp(e){let t=this._initPTS;(!t||!e||e.trackId!==t.trackId||e.baseTime!==t.baseTime||e.timescale!==t.timescale)&&this.log(`Reset initPTS: ${t&&pB(t)} > ${e&&pB(e)}`),this._initPTS=this._initDTS=e}resetNextTimestamp(){this.log(`reset next timestamp`),this.isVideoContiguous=!1,this.isAudioContiguous=!1}resetInitSegment(){this.log(`ISGenerated flag reset`),this.ISGenerated=!1,this.videoTrackConfig=void 0}getVideoStartPts(e){let t=!1,n=e[0].pts,r=e.reduce((e,r)=>{let i=r.pts,a=i-e;return a<-4294967296&&(t=!0,i=SB(i,n),a=i-e),a>0?e:i},n);return t&&this.debug(`PTS rollover detected`),r}remux(e,t,n,r,i,a,o,s){let c,l,u,d,f,p,m=i,h=i,g=e.pid>-1,_=t.pid>-1,v=t.samples.length,y=e.samples.length>0,b=o&&v>0||v>1;if((!g||y)&&(!_||b)||this.ISGenerated||o){if(this.ISGenerated){let e=this.videoTrackConfig;(e&&(t.width!==e.width||t.height!==e.height||t.pixelRatio?.[0]!==e.pixelRatio?.[0]||t.pixelRatio?.[1]!==e.pixelRatio?.[1])||!e&&b||this.nextAudioTs===null&&y)&&this.resetInitSegment()}this.ISGenerated||(u=this.generateIS(e,t,i,a));let n=this.isVideoContiguous,r=-1,o;if(b&&(r=CB(t.samples),!n&&this.config.forceKeyFrameOnDiscontinuity))if(p=!0,r>0){this.warn(`Dropped ${r} out of ${v} video samples due to a missing keyframe`);let e=this.getVideoStartPts(t.samples);t.samples=t.samples.slice(r),t.dropped+=r,h+=(t.samples[0].pts-e)/t.inputTimeScale,o=h}else r===-1&&(this.warn(`No keyframe found out of ${v} video samples`),p=!1);if(this.ISGenerated){if(y&&b){let n=this.getVideoStartPts(t.samples),r=(SB(e.samples[0].pts,n)-n)/t.inputTimeScale;m+=Math.max(0,r),h+=Math.max(0,-r)}if(y){if(e.samplerate||(this.warn(`regenerate InitSegment as audio detected`),u=this.generateIS(e,t,i,a)),l=this.remuxAudio(e,m,this.isAudioContiguous,a,_||b||s===UN.AUDIO?h:void 0),b){let r=l?l.endPTS-l.startPTS:0;t.inputTimeScale||(this.warn(`regenerate InitSegment as video detected`),u=this.generateIS(e,t,i,a)),c=this.remuxVideo(t,h,n,r)}}else b&&(c=this.remuxVideo(t,h,n,0));c&&(c.firstKeyFrame=r,c.independent=r!==-1,c.firstKeyFramePTS=o)}}return this.ISGenerated&&this._initPTS&&this._initDTS&&(n.samples.length&&(f=wB(n,i,this._initPTS,this._initDTS)),r.samples.length&&(d=TB(r,i,this._initPTS))),{audio:l,video:c,initSegment:u,independent:p,text:d,id3:f}}computeInitPts(e,t,n,r){let i=Math.round(n*t),a=SB(e,i);if(a<i+t)for(this.log(`Adjusting PTS for rollover in timeline near ${(i-a)/t} ${r}`);a<i+t;)a+=8589934592;return a-i}generateIS(e,t,n,r){let i=e.samples,a=t.samples,o=this.typeSupported,s={},c=this._initPTS,l=!c||r,u=`audio/mp4`,d,f,p,m=-1;if(l&&(d=f=1/0),e.config&&i.length){switch(e.timescale=e.samplerate,e.segmentCodec){case`mp3`:o.mpeg?(u=`audio/mpeg`,e.codec=``):o.mp3&&(e.codec=`mp3`);break;case`ac3`:e.codec=`ac-3`}s.audio={id:`audio`,container:u,codec:e.codec,initSegment:e.segmentCodec===`mp3`&&o.mpeg?new Uint8Array:sB.initSegment([e]),metadata:{channelCount:e.channelCount}},l&&(m=e.id,p=e.inputTimeScale,!c||p!==c.timescale?d=f=this.computeInitPts(i[0].pts,p,n,`audio`):l=!1)}if(t.sps&&t.pps&&a.length){if(t.timescale=t.inputTimeScale,s.video={id:`main`,container:`video/mp4`,codec:t.codec,initSegment:sB.initSegment([t]),metadata:{width:t.width,height:t.height}},l)if(m=t.id,p=t.inputTimeScale,!c||p!==c.timescale){let e=this.getVideoStartPts(a),t=SB(a[0].dts,e),r=this.computeInitPts(t,p,n,`video`),i=this.computeInitPts(e,p,n,`video`);f=Math.min(f,r),d=Math.min(d,i)}else l=!1;this.videoTrackConfig={width:t.width,height:t.height,pixelRatio:t.pixelRatio}}if(Object.keys(s).length)return this.ISGenerated=!0,l?(c&&this.warn(`Timestamps at playlist time: ${r?``:`~`}${n} ${d/p} != initPTS: ${c.baseTime/c.timescale} (${c.baseTime}/${c.timescale}) trackId: ${c.trackId}`),this.log(`Found initPTS at playlist time: ${n} offset: ${d/p} (${d}/${p}) trackId: ${m}`),this._initPTS={baseTime:d,timescale:p,trackId:m},this._initDTS={baseTime:f,timescale:p,trackId:m}):d=p=void 0,{tracks:s,initPTS:d,timescale:p,trackId:m}}remuxVideo(e,t,n,r){let i=e.inputTimeScale,a=e.samples,o=[],s=a.length,c=this._initPTS,l=c.baseTime*i/c.timescale,u=this.nextVideoTs,d=8,f=this.videoSampleDuration,p,m,h=1/0,g=-1/0,_=!1;
vendor: 4,769 bytes, line 1807
1807if(!n||u===null){let e=l+t*i,r=a[0].pts-SB(a[0].dts,a[0].pts);vB&&u!==null&&Math.abs(e-r-(u+l))<15e3?n=!0:u=e-r-l}let v=u+l;for(let e=0;e<s;e++){let t=a[e];t.pts=SB(t.pts,v),t.dts=SB(t.dts,v),t.dts<a[e>0?e-1:e].dts&&(_=!0)}_&&a.sort(function(e,t){let n=e.dts-t.dts,r=e.pts-t.pts;return n||r}),p=a[0].dts,m=a[a.length-1].dts;let y=m-p,b=y?Math.round(y/(s-1)):f||e.inputTimeScale/30;if(n){let n=p-v,r=n>b,i=n<-1;if((r||i)&&(r?this.warn(`${(e.segmentCodec||``).toUpperCase()}: ${dB(n,!0)} ms (${n}dts) hole between fragments detected at ${t.toFixed(3)}`):this.warn(`${(e.segmentCodec||``).toUpperCase()}: ${dB(-n,!0)} ms (${n}dts) overlapping between fragments detected at ${t.toFixed(3)}`),!i||v>=a[0].pts||vB)){p=v;let e=a[0].pts-n;if(r)a[0].dts=p,a[0].pts=e;else{let t=!0;for(let r=0;r<a.length&&!(a[r].dts>e&&t);r++){let e=a[r].pts;if(a[r].dts-=n,a[r].pts-=n,r<a.length-1){let n=a[r+1].pts;t=n<=a[r].pts==n<=e}}}this.log(`Video: Initial PTS/DTS adjusted: ${dB(e,!0)}/${dB(p,!0)}, delta: ${dB(n,!0)} ms`)}}p=Math.max(0,p);let x=0,S=0,ee=p;for(let e=0;e<s;e++){let t=a[e],n=t.units,r=n.length,i=0;for(let e=0;e<r;e++)i+=n[e].data.length;S+=i,x+=r,t.length=i,t.dts<ee?(t.dts=ee,ee+=b/4|0||1):ee=t.dts,h=Math.min(t.pts,h),g=Math.max(t.pts,g)}m=a[s-1].dts;let te=S+4*x+8,ne;try{ne=new Uint8Array(te)}catch(e){this.observer.emit(Y.ERROR,Y.ERROR,{type:VN.MUX_ERROR,details:J.REMUX_ALLOC_ERROR,fatal:!1,error:e,bytes:te,reason:`fail allocating video mdat ${te}`});return}let re=new DataView(ne.buffer);re.setUint32(0,te),ne.set(sB.types.mdat,4);let ie=!1,C=1/0,ae=1/0,w=-1/0,oe=-1/0;for(let e=0;e<s;e++){let t=a[e],n=t.units,c=0;for(let e=0,t=n.length;e<t;e++){let t=n[e],r=t.data,i=t.data.byteLength;re.setUint32(d,i),d+=4,ne.set(r,d),d+=i,c+=4+i}let u;if(e<s-1)f=a[e+1].dts-t.dts,u=a[e+1].pts-t.pts;else{let n=this.config,o=e>0?t.dts-a[e-1].dts:b;if(u=e>0?t.pts-a[e-1].pts:b,n.stretchShortVideoTrack&&this.nextAudioTs!==null){let e=Math.floor(n.maxBufferHole*i),a=(r?h+r*i:this.nextAudioTs+l)-t.pts;a>e?(f=a-o,f<0?f=o:ie=!0,this.log(`It is approximately ${a/90} ms to the next segment; using duration ${f/90} ms for the last video frame.`)):f=o}else f=o}let p=Math.round(t.pts-t.dts);C=Math.min(C,f),w=Math.max(w,f),ae=Math.min(ae,u),oe=Math.max(oe,u),o.push(bB(t.key,f,c,p))}if(o.length){if(vB){if(vB<70){let e=o[0].flags;e.dependsOn=2,e.isNonSync=0}}else if(yB&&oe-ae<w-C&&b/w<.025&&o[0].cts===0){this.warn(`Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.`);let e=p;for(let t=0,n=o.length;t<n;t++){let r=e+o[t].duration,i=e+o[t].cts;if(t<n-1){let e=r+o[t+1].cts;o[t].duration=e-i}else o[t].duration=t?o[t-1].duration:b;o[t].cts=0,e=r}}}f=ie||!f?b:f;let T=m+f;this.nextVideoTs=u=T-l,this.videoSampleDuration=f,this.isVideoContiguous=!0;let se={data1:sB.moof(e.sequenceNumber++,p,qN(e,{samples:o})),data2:ne,startPTS:(h-l)/i,endPTS:(g+f-l)/i,startDTS:(p-l)/i,endDTS:u/i,type:`video`,hasAudio:!1,hasVideo:!0,nb:o.length,dropped:e.dropped};return e.samples=[],e.dropped=0,se}getSamplesPerFrame(e){switch(e.segmentCodec){case`mp3`:return gB;case`ac3`:return _B;default:return hB}}remuxAudio(e,t,n,r,i){let a=e.inputTimeScale,o=a/(e.samplerate?e.samplerate:a),s=this.getSamplesPerFrame(e),c=s*o,l=this._initPTS,u=e.segmentCodec===`mp3`&&this.typeSupported.mpeg,d=[],f=i!==void 0,p=e.samples,m=u?0:8,h=this.nextAudioTs||-1,g=l.baseTime*a/l.timescale,_=g+t*a;if(this.isAudioContiguous=n||=p.length&&h>0&&(r&&Math.abs(_-(h+g))<9e3||Math.abs(SB(p[0].pts,_)-(h+g))<20*c),p.forEach(function(e){e.pts=SB(e.pts,_)}),!n||h<0){let e=p.length;if(p=p.filter(e=>e.pts>=0),e!==p.length&&this.warn(`Removed ${p.length-e} of ${e} samples (initPTS ${g} / ${a})`),!p.length)return;h=i===0?0:r&&!f?Math.max(0,_-g):p[0].pts-g}if(e.segmentCodec===`aac`){let t=this.config.maxAudioFramesDrift;for(let n=0,r=h+g;n<p.length;n++){let i=p[n],o=i.pts,s=o-r,l=Math.abs(1e3*s/a);if(s<=-t*c&&f)n===0&&(this.warn(`Audio frame @ ${(o/a).toFixed(3)}s overlaps marker by ${Math.round(1e3*s/a)} ms.`),this.nextAudioTs=h=o-g,r=o);else if(s>=t*c&&l<mB&&f){let t=Math.round(s/c);for(r=o-t*c;r<0&&t&&c;)t--,r+=c;n===0&&(this.nextAudioTs=h=r-g),this.warn(`Injecting ${t} audio frames @ ${((r-g)/a).toFixed(3)}s due to ${Math.round(1e3*s/a)} ms gap.`);for(let a=0;a<t;a++){let t=aB.getSilentFrame(e.parsedCodec||e.manifestCodec||e.codec,e.channelCount);t||=(this.log(`Unable to get silent frame for given audio codec; duplicating last frame instead.`),i.unit.subarray()),p.splice(n,0,{unit:t,pts:r}),r+=c,n++}}i.pts=r,r+=c}}let v=null,y=null,b,x=0,S=p.length;for(;S--;)x+=p[S].unit.byteLength;for(let t=0,r=p.length;t<r;t++){let r=p[t],i=r.unit,a=r.pts;if(y!==null){let e=d[t-1];e.duration=Math.round((a-y)/o)}else if(n&&e.segmentCodec===`aac`&&(a=h+g),v=a,x>0){x+=m;
1807try{b=new Uint8Array(x)}catch(e){this.observer.emit(Y.ERROR,Y.ERROR,{type:VN.MUX_ERROR,details:J.REMUX_ALLOC_ERROR,fatal:!1,error:e,bytes:x,reason:`fail allocating audio mdat ${x}`});return}u||(new DataView(b.buffer).setUint32(0,x),b.set(sB.types.mdat,4))}else return;b.set(i,m);let c=i.byteLength;m+=c,d.push(bB(!0,s,c,0)),y=a}let ee=d.length;if(!ee)return;let te=d[d.length-1];h=y-g,this.nextAudioTs=h+o*te.duration;let ne=u?new Uint8Array:sB.moof(e.sequenceNumber++,v/o,qN({},e,{samples:d}));e.samples=[];let re=(v-g)/a,ie=this.nextAudioTs/a,C={data1:ne,data2:b,startPTS:re,endPTS:ie,startDTS:re,endDTS:ie,type:`audio`,hasAudio:!0,hasVideo:!1,nb:ee};return this.isAudioContiguous=!0,C}};function SB(e,t){let n;if(t===null)return e;for(n=t<e?-8589934592:8589934592;Math.abs(e-t)>4294967296;)e+=n;return e}function CB(e){for(let t=0;t<e.length;t++)if(e[t].key)return t;return-1}function wB(e,t,n,r){let i=e.samples.length;if(!i)return;let a=e.inputTimeScale;for(let o=0;o<i;o++){let i=e.samples[o];i.pts=SB(i.pts-n.baseTime*a/n.timescale,t*a)/a,i.dts=SB(i.dts-r.baseTime*a/r.timescale,t*a)/a}let o=e.samples;return e.samples=[],{samples:o}}function TB(e,t,n){let r=e.samples.length;if(!r)return;let i=e.inputTimeScale;for(let a=0;a<r;a++){let r=e.samples[a];r.pts=SB(r.pts-n.baseTime*i/n.timescale,t*i)/i}e.samples.sort((e,t)=>e.pts-t.pts);let a=e.samples;return e.samples=[],{samples:a}}var EB=class extends QN{constructor(e,t,n,r){super(`passthrough-remuxer`,r),this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=null,this.initTracks=void 0,this.lastEndTime=null,this.isVideoContiguous=!1}destroy(){}resetTimeStamp(e){this.lastEndTime=null;let t=this.initPTS;t&&e&&t.baseTime===e.baseTime&&t.timescale===e.timescale||(this.initPTS=e)}resetNextTimestamp(){this.isVideoContiguous=!1,this.lastEndTime=null}resetInitSegment(e,t,n,r){this.audioCodec=t,this.videoCodec=n,this.generateInitSegment(e,r),this.emitInitSegment=!0}generateInitSegment(e,t){let{audioCodec:n,videoCodec:r}=this;if(!(e!=null&&e.byteLength)){this.initTracks=void 0,this.initData=void 0;return}let{audio:i,video:a}=this.initData=LP(e);if(t)WP(e,t);else{let e=i||a;e!=null&&e.encrypted&&this.warn(`Init segment with encrypted track with has no key ("${e.codec}")!`)}i&&(n=kB(i,yP.AUDIO,this)),a&&(r=kB(a,yP.VIDEO,this));let o={};i&&a?o.audiovideo={container:`video/mp4`,codec:n+`,`+r,supplemental:a.supplemental,encrypted:a.encrypted,initSegment:e,id:`main`}:i?o.audio={container:`audio/mp4`,codec:n,encrypted:i.encrypted,initSegment:e,id:`audio`}:a?o.video={container:`video/mp4`,codec:r,supplemental:a.supplemental,encrypted:a.encrypted,initSegment:e,id:`main`}:this.warn(`initSegment does not contain moov or trak boxes.`),this.initTracks=o}remux(e,t,n,r,i,a){var o,s;let{initPTS:c,lastEndTime:l}=this,u={audio:void 0,video:void 0,text:r,id3:n,initSegment:void 0};q(l)||(l=this.lastEndTime=i||0);let d=t.samples;if(!d.length)return u;let f={initPTS:void 0,timescale:void 0,trackId:void 0},p=this.initData;if((o=p)!=null&&o.length||(this.generateInitSegment(d),p=this.initData),!((s=p)!=null&&s.length))return this.warn(`Failed to generate initSegment.`),u;this.emitInitSegment&&=(f.tracks=this.initTracks,!1);let m=JP(d,p,this),h=p.audio?m[p.audio.id]:null,g=p.video?m[p.video.id]:null,_=DB(g,1/0),v=DB(h,1/0),y=DB(g,0,!0),b=DB(h,0,!0),x=i,S=0,ee=h&&(!g||!c&&v<_||c&&c.trackId===p.audio.id),te=ee?h:g;if(te){let e=te.timescale,t=te.start-i*e,n=ee?p.audio.id:p.video.id;x=te.start/e,S=ee?b-v:y-_,(a||!c)&&(OB(c,x,i,S)||e!==c.timescale)&&(c&&this.warn(`Timestamps at playlist time: ${a?``:`~`}${i} ${t/e} != initPTS: ${c.baseTime/c.timescale} (${c.baseTime}/${c.timescale}) trackId: ${c.trackId}`),this.log(`Found initPTS at playlist time: ${i} offset: ${x-i} (${t}/${e}) trackId: ${n}`),c=null,f.initPTS=t,f.timescale=e,f.trackId=n)}else this.warn(`No audio or video samples found for initPTS at playlist time: ${i}`);c?(f.initPTS=c.baseTime,f.timescale=c.timescale,f.trackId=c.trackId):((!f.timescale||f.trackId===void 0||f.initPTS===void 0)&&(this.warn(`Could not set initPTS`),f.initPTS=x,f.timescale=1,f.trackId=-1),this.initPTS=c={baseTime:f.initPTS,timescale:f.timescale,trackId:f.trackId});let ne=x-c.baseTime/c.timescale,re=ne+S;S>0?this.lastEndTime=re:(this.warn(`Duration parsed from mp4 should be greater than zero`),this.resetNextTimestamp());let ie=!!p.audio,C=!!p.video,ae=``;ie&&(ae+=`audio`),C&&(ae+=`video`);let w=(p.audio?p.audio.encrypted:!1)||(p.video?p.video.encrypted:!1),oe={data1:d,startPTS:ne,startDTS:ne,endPTS:re,endDTS:re,type:ae,hasAudio:ie,hasVideo:C,nb:1,dropped:0,encrypted:w};u.audio=ie&&!C?oe:void 0,u.video=C?oe:void 0;
vendor: 13,622 bytes, lines 1807-1813
1807let T=g?.sampleCount;if(T){let e=g.keyFrameIndex,t=e!==-1;oe.nb=T,oe.dropped=e===0||this.isVideoContiguous?0:t?e:T,oe.independent=t,oe.firstKeyFrame=e,t&&g.keyFrameStart&&(oe.firstKeyFramePTS=(g.keyFrameStart-c.baseTime)/c.timescale),this.isVideoContiguous||(u.independent=t),this.isVideoContiguous||=t,oe.dropped&&this.warn(`fmp4 does not start with IDR: firstIDR ${e}/${T} dropped: ${oe.dropped} start: ${oe.firstKeyFramePTS||`NA`}`)}return u.initSegment=f,u.id3=wB(n,i,c,c),r.samples.length&&(u.text=TB(r,i,c)),u}};function DB(e,t,n=!1){return e?.start===void 0?t:(e.start+(n?e.duration:0))/e.timescale}function OB(e,t,n,r){if(e===null)return!0;let i=Math.max(r,1),a=t-e.baseTime/e.timescale;return Math.abs(a-n)>i}function kB(e,t,n){let r=e.codec;return r&&r.length>4?r:t===yP.AUDIO?r===`ec-3`||r===`ac-3`||r===`alac`?r:r===`fLaC`||r===`Opus`?vF(r,!1):(n.warn(`Unhandled audio codec "${r}" in mp4 MAP`),r||`mp4a`):(n.warn(`Unhandled video codec "${r}" in mp4 MAP`),r||`avc1`)}var AB;try{AB=self.performance.now.bind(self.performance)}catch{AB=Date.now}var jB=[{demux:Wz,remux:EB},{demux:Qz,remux:xB},{demux:Rz,remux:xB},{demux:Hz,remux:xB}];jB.splice(2,0,{demux:Bz,remux:xB});var MB=class{constructor(e,t,n,r,i,a){this.asyncResult=!1,this.logger=void 0,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=e,this.typeSupported=t,this.config=n,this.id=i,this.logger=a}configure(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()}push(e,t,n,r){let i=n.transmuxing;i.executeStart=AB();let a=new Uint8Array(e),{currentTransmuxState:o,transmuxConfig:s}=this;r&&(this.currentTransmuxState=r);let{contiguous:c,discontinuity:l,trackSwitch:u,accurateTimeOffset:d,timeOffset:f,initSegmentChange:p}=r||o,{audioCodec:m,videoCodec:h,defaultInitPts:g,duration:_,initSegmentData:v}=s,y=NB(a,t);if(y&&gL(y.method)){let e=this.getDecrypter(),t=_L(y.method);if(e.isSync()){let r=e.softwareDecrypt(a,y.key.buffer,y.iv.buffer,t);if(n.part>-1){let t=e.flush();r=t&&t.buffer}if(!r)return i.executeEnd=AB(),PB(n);a=new Uint8Array(r)}else return this.asyncResult=!0,this.decryptionPromise=e.webCryptoDecrypt(a,y.key.buffer,y.iv.buffer,t).then(e=>{let t=this.push(e,null,n);return this.decryptionPromise=null,t}),this.decryptionPromise}let b=this.needsProbing(l,u);if(b){let e=this.configureTransmuxer(a);if(e)return this.logger.warn(`[transmuxer] ${e.message}`),this.observer.emit(Y.ERROR,Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_PARSING_ERROR,fatal:!1,error:e,reason:e.message}),i.executeEnd=AB(),PB(n)}(l||u||p||b)&&this.resetInitSegment(v,m,h,_,t),(l||p||b)&&this.resetInitialTimestamp(g),c||this.resetContiguity();let x=this.transmux(a,y,f,d,n);this.asyncResult=FB(x);let S=this.currentTransmuxState;return S.contiguous=!0,S.discontinuity=!1,S.trackSwitch=!1,i.executeEnd=AB(),x}flush(e){let t=e.transmuxing;t.executeStart=AB();let{decrypter:n,currentTransmuxState:r,decryptionPromise:i}=this;if(i)return this.asyncResult=!0,i.then(()=>this.flush(e));let a=[],{timeOffset:o}=r;if(n){let t=n.flush();t&&a.push(this.push(t.buffer,null,e))}let{demuxer:s,remuxer:c}=this;if(!s||!c){t.executeEnd=AB();let n=[PB(e)];return this.asyncResult?Promise.resolve(n):n}let l=s.flush(o);return FB(l)?(this.asyncResult=!0,l.then(t=>(this.flushRemux(a,t,e),a))):(this.flushRemux(a,l,e),this.asyncResult?Promise.resolve(a):a)}flushRemux(e,t,n){let{audioTrack:r,videoTrack:i,id3Track:a,textTrack:o}=t,{accurateTimeOffset:s,timeOffset:c}=this.currentTransmuxState;this.logger.log(`[transmuxer.ts]: Flushed ${this.id} sn: ${n.sn}${n.part>-1?` part: `+n.part:``} of ${this.id===UN.MAIN?`level`:`track`} ${n.level}`);let l=this.remuxer.remux(r,i,a,o,c,s,!0,this.id);e.push({remuxResult:l,chunkMeta:n}),n.transmuxing.executeEnd=AB()}resetInitialTimestamp(e){let{demuxer:t,remuxer:n}=this;!t||!n||(t.resetTimeStamp(e),n.resetTimeStamp(e))}resetContiguity(){let{demuxer:e,remuxer:t}=this;!e||!t||(e.resetContiguity(),t.resetNextTimestamp())}resetInitSegment(e,t,n,r,i){let{demuxer:a,remuxer:o}=this;!a||!o||(a.resetInitSegment(e,t,n,r),o.resetInitSegment(e,t,n,i))}destroy(){this.demuxer&&=(this.demuxer.destroy(),void 0),this.remuxer&&=(this.remuxer.destroy(),void 0)}transmux(e,t,n,r,i){let a;return a=t&&t.method===`SAMPLE-AES`?this.transmuxSampleAes(e,t,n,r,i):this.transmuxUnencrypted(e,n,r,i),a}transmuxUnencrypted(e,t,n,r){let{audioTrack:i,videoTrack:a,id3Track:o,textTrack:s}=this.demuxer.demux(e,t,!1,!this.config.progressive);return{remuxResult:this.remuxer.remux(i,a,o,s,t,n,!1,this.id),chunkMeta:r}}transmuxSampleAes(e,t,n,r,i){return this.demuxer.demuxSampleAes(e,t,n).then(e=>({remuxResult:this.remuxer.remux(e.audioTrack,e.videoTrack,e.id3Track,e.textTrack,n,r,!1,this.id),chunkMeta:i}))}configureTransmuxer(e){let{config:t,observer:n,typeSupported:r}=this,i;for(let t=0,n=jB.length;t<n;t++){var a;if((a=jB[t].demux)!=null&&a.probe(e,this.logger)){i=jB[t];break}}if(!i)return Error(`Failed to find demuxer by probing fragment data`);let o=this.demuxer,s=this.remuxer,c=i.remux,l=i.demux;(!s||!(s instanceof c))&&(this.remuxer=new c(n,t,r,this.logger)),(!o||!(o instanceof l))&&(this.demuxer=new l(n,t,r,this.logger),this.probe=l.probe)}needsProbing(e,t){return!this.demuxer||!this.remuxer||e||t}getDecrypter(){let e=this.decrypter;return e||=this.decrypter=new HI(this.config),e}};function NB(e,t){let n=null;return e.byteLength>0&&t?.key!=null&&t.iv!==null&&t.method!=null&&(n=t),n}var PB=e=>({remuxResult:{},chunkMeta:e});function FB(e){return`then`in e&&e.then instanceof Function}var IB=class{constructor(e,t,n,r,i){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=e,this.videoCodec=t,this.initSegmentData=n,this.duration=r,this.defaultInitPts=i||null}},LB=class{constructor(e,t,n,r,i,a){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=e,this.contiguous=t,this.accurateTimeOffset=n,this.trackSwitch=r,this.timeOffset=i,this.initSegmentChange=a}},RB=0,zB=class{constructor(e,t,n,r){this.error=null,this.hls=void 0,this.id=void 0,this.instanceNo=RB++,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.workerContext=null,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.onWorkerMessage=e=>{let t=e.data,n=this.hls;if(!(!n||!(t!=null&&t.event)||t.instanceNo!==this.instanceNo))switch(t.event){case`init`:{let e=this.workerContext?.objectURL;e&&self.URL.revokeObjectURL(e);break}case`transmuxComplete`:this.handleTransmuxComplete(t.data);break;case`flush`:this.onFlush(t.data);break;case`workerLog`:n.logger[t.data.logType]&&n.logger[t.data.logType](t.data.message);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.part=this.part,t.data.id=this.id,n.trigger(t.event,t.data)}},this.onWorkerError=e=>{if(!this.hls)return;let t=Error(`${e.message} (${e.filename}:${e.lineno})`);this.hls.config.enableWorker=!1,this.hls.logger.warn(`Error in "${this.id}" Web Worker, fallback to inline`),this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.INTERNAL_EXCEPTION,fatal:!1,event:`demuxerWorker`,error:t})};let i=e.config;this.hls=e,this.id=t,this.useWorker=!!i.enableWorker,this.onTransmuxComplete=n,this.onFlush=r;let a=(e,t)=>{t||={},t.frag=this.frag||void 0,e===Y.ERROR&&(t=t,t.parent=this.id,t.part=this.part,this.error=t.error),this.hls.trigger(e,t)};this.observer=new IR,this.observer.on(Y.FRAG_DECRYPTED,a),this.observer.on(Y.ERROR,a);let o=wF(i.preferManagedMediaSource);if(this.useWorker&&typeof Worker<`u`){let n=this.hls.logger;if(i.workerPath||zR()){try{i.workerPath?(n.log(`loading Web Worker ${i.workerPath} for "${t}"`),this.workerContext=VR(i.workerPath)):(n.log(`injecting Web Worker for "${t}"`),this.workerContext=BR());let{worker:e}=this.workerContext;e.addEventListener(`message`,this.onWorkerMessage),e.addEventListener(`error`,this.onWorkerError),e.postMessage({instanceNo:this.instanceNo,cmd:`init`,typeSupported:o,id:t,config:YF(i)})}catch(r){n.warn(`Error setting up "${t}" Web Worker, fallback to inline`,r),this.terminateWorker(),this.error=null,this.transmuxer=new MB(this.observer,o,i,``,t,e.logger)}return}}this.transmuxer=new MB(this.observer,o,i,``,t,e.logger)}reset(){if(this.frag=null,this.part=null,this.workerContext){let e=this.instanceNo;this.instanceNo=RB++;let t=this.hls.config,n=wF(t.preferManagedMediaSource);this.workerContext.worker.postMessage({instanceNo:this.instanceNo,cmd:`reset`,resetNo:e,typeSupported:n,id:this.id,config:YF(t)})}}terminateWorker(){if(this.workerContext){let{worker:e}=this.workerContext;this.workerContext=null,e.removeEventListener(`message`,this.onWorkerMessage),e.removeEventListener(`error`,this.onWorkerError),HR(this.hls.config.workerPath)}}destroy(){if(this.workerContext)this.terminateWorker(),this.onWorkerMessage=this.onWorkerError=null;else{let e=this.transmuxer;e&&(e.destroy(),this.transmuxer=null)}let e=this.observer;e&&e.removeAllListeners(),this.frag=null,this.part=null,this.observer=null,this.hls=null}push(e,t,n,r,i,a,o,s,c,l){c.transmuxing.start=self.performance.now();let{instanceNo:u,transmuxer:d}=this,f=a?a.start:i.start,p=i.decryptdata,m=this.frag,h=!(m&&i.cc===m.cc),g=!(m&&c.level===m.level),_=m?c.sn-m.sn:-1,v=this.part?c.part-this.part.index:-1,y=_===0&&c.id>1&&c.id===m?.stats.chunkCount,b=!g&&(_===1||_===0&&(v===1||y&&v<=0)),x=self.performance.now();(g||_||i.stats.parsing.start===0)&&(i.stats.parsing.start=x),a&&(v||!b)&&(a.stats.parsing.start=x);let S=!(m&&i.initSegment?.url===m.initSegment?.url),ee=new LB(h,b,s,g,f,S);if(!b||h||S){this.hls.logger.log(`[transmuxer-interface]: Starting new transmux session for ${i.type} sn: ${c.sn}${c.part>-1?` part: `+c.part:``} ${this.id===UN.MAIN?`level`:`track`}: ${c.level} id: ${c.id} 1808 discontinuity: ${h} 1809 trackSwitch: ${g} 1810 contiguous: ${b} 1811 accurateTimeOffset: ${s} 1812 timeOffset: ${f} 1813 initSegmentChange: ${S}`);let e=new IB(n,r,t,o,l);this.configureTransmuxer(e)}if(this.frag=i,this.part=a,this.workerContext)this.workerContext.worker.postMessage({instanceNo:u,cmd:`demux`,data:e,decryptdata:p,chunkMeta:c,state:ee},e instanceof ArrayBuffer?[e]:[]);else if(d){let t=d.push(e,p,c,ee);FB(t)?t.then(e=>{this.handleTransmuxComplete(e)}).catch(e=>{this.transmuxerError(e,c,`transmuxer-interface push error`)}):this.handleTransmuxComplete(t)}}flush(e){e.transmuxing.start=self.performance.now();let{instanceNo:t,transmuxer:n}=this;if(this.workerContext)this.workerContext.worker.postMessage({instanceNo:t,cmd:`flush`,chunkMeta:e});else if(n){let t=n.flush(e);FB(t)?t.then(t=>{this.handleFlushResult(t,e)}).catch(t=>{this.transmuxerError(t,e,`transmuxer-interface flush error`)}):this.handleFlushResult(t,e)}}transmuxerError(e,t,n){this.hls&&(this.error=e,this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_PARSING_ERROR,chunkMeta:t,frag:this.frag||void 0,part:this.part||void 0,fatal:!1,error:e,err:e,reason:n}))}handleFlushResult(e,t){e.forEach(e=>{this.handleTransmuxComplete(e)}),this.onFlush(t)}configureTransmuxer(e){let{instanceNo:t,transmuxer:n}=this;this.workerContext?this.workerContext.worker.postMessage({instanceNo:t,cmd:`configure`,config:e}):n&&n.configure(e)}handleTransmuxComplete(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)}},BB=100,VB=class extends kR{constructor(e,t,n){super(e,t,n,`audio-stream-controller`,UN.AUDIO),this.mainAnchor=null,this.mainFragLoading=null,this.audioOnly=!1,this.bufferedTrack=null,this.switchingTrack=null,this.trackId=-1,this.waitingData=null,this.mainDetails=null,this.flushing=!1,this.bufferFlushed=!1,this.cachedTrackLoadedData=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.resetItem()}resetItem(){this.mainDetails=this.mainAnchor=this.mainFragLoading=this.bufferedTrack=this.switchingTrack=this.waitingData=this.cachedTrackLoadedData=null}registerListeners(){super.registerListeners();let{hls:e}=this;e.on(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.on(Y.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.on(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(Y.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.on(Y.BUFFER_RESET,this.onBufferReset,this),e.on(Y.BUFFER_CREATED,this.onBufferCreated,this),e.on(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(Y.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(Y.FRAG_LOADING,this.onFragLoading,this),e.on(Y.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){let{hls:e}=this;e&&(super.unregisterListeners(),e.off(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.off(Y.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.off(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(Y.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.off(Y.BUFFER_RESET,this.onBufferReset,this),e.off(Y.BUFFER_CREATED,this.onBufferCreated,this),e.off(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(Y.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(Y.FRAG_LOADING,this.onFragLoading,this),e.off(Y.FRAG_BUFFERED,this.onFragBuffered,this))}onInitPtsFound(e,{frag:t,id:n,initPTS:r,timescale:i,trackId:a}){if(n===UN.MAIN){let e=t.cc,n=this.fragCurrent;if(this.initPTS[e]={baseTime:r,timescale:i,trackId:a},this.log(`InitPTS for cc: ${e}
1813 found from main: ${r/i} (${r}/${i}) trackId: ${a}`),this.mainAnchor=t,this.state===X.WAITING_INIT_PTS){let n=this.waitingData;(!n&&!this.loadingParts||n&&n.frag.cc!==e)&&this.syncWithAnchor(t,n?.frag)}else!this.hls.hasEnoughToStart&&n&&n.cc!==e?(n.abortRequests(),this.syncWithAnchor(t,n)):this.state===X.IDLE&&this.tick()}}getLoadPosition(){return!this.startFragRequested&&this.nextLoadPosition>=0?this.nextLoadPosition:super.getLoadPosition()}syncWithAnchor(e,t){let n=this.mainFragLoading?.frag||null;if(t&&n?.cc===t.cc)return;let r=(n||e).cc,i=gI(this.getLevelDetails(),r,this.getLoadPosition());i&&(this.log(`Syncing with main frag at ${i.start} cc ${i.cc}`),this.startFragRequested=!1,this.nextLoadPosition=i.start,this.resetLoadingState(),this.state===X.IDLE&&this.doTickIdle())}startLoad(e,t){if(!this.levels){this.startPosition=e,this.state=X.STOPPED;return}let n=this.lastCurrentTime;this.stopLoad(),this.setInterval(BB),n>0&&e===-1?(this.log(`Override startPosition with lastCurrentTime @${n.toFixed(3)}`),e=n,this.state=X.IDLE):this.state=X.WAITING_TRACK,this.nextLoadPosition=this.lastCurrentTime=e+this.timelineOffset,this.startPosition=t?-1:e,this.tick()}doTick(){switch(this.state){case X.IDLE:this.doTickIdle();break;case X.WAITING_TRACK:{let{levels:e,trackId:t}=this,n=e?.[t],r=n?.details;if(r&&!this.waitForLive(n)){if(this.waitForCdnTuneIn(r))break;this.state=X.WAITING_INIT_PTS}break}case X.FRAG_LOADING_WAITING_RETRY:this.checkRetryDate();break;case X.WAITING_INIT_PTS:{let e=this.waitingData;if(e){let{frag:t,part:n,cache:r,complete:i}=e,a=this.mainAnchor;if(this.initPTS[t.cc]!==void 0){this.waitingData=null,this.state=X.FRAG_LOADING;let e={frag:t,part:n,payload:r.flush().buffer,networkDetails:null};this._handleFragmentLoadProgress(e),i&&super._handleFragmentLoadComplete(e)}else a&&a.cc!==e.frag.cc&&this.syncWithAnchor(a,e.frag)}else this.state=X.IDLE}}this.onTickEnd()}resetLoadingState(){let e=this.waitingData;e&&(this.fragmentTracker.removeFragment(e.frag),this.waitingData=null),super.resetLoadingState()}onTickEnd(){let{media:e}=this;e!=null&&e.readyState&&(this.lastCurrentTime=e.currentTime)}doTickIdle(){let{hls:e,levels:t,media:n,trackId:r}=this,i=e.config;if(!this.buffering||!n&&!this.primaryPrefetch&&(this.startFragRequested||!i.startFragPrefetch)||!(t!=null&&t[r]))return;let a=t[r],o=a.details;if(!o||this.waitForLive(a)||this.waitForCdnTuneIn(o)){this.state=X.WAITING_TRACK,this.startFragRequested=!1;return}let s=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&s&&(this.bufferFlushed=!1,this.afterBufferFlushed(s,yP.AUDIO,UN.AUDIO));let c=this.getFwdBufferInfo(s,UN.AUDIO);if(c===null)return;if(!this.switchingTrack&&this._streamEnded(c,o)){e.trigger(Y.BUFFER_EOS,{type:`audio`}),this.state=X.ENDED;return}let l=c.len,u=e.maxBufferLength,d=o.fragments,f=d[0].start,p=this.getLoadPosition(),m=this.flushing?p:c.end;if(this.switchingTrack&&n){let e=p;o.PTSKnown&&e<f&&(c.end>f||c.nextStart)&&(this.log(`Alt audio track ahead of main track, seek to start of alt audio track`),n.currentTime=f+.05)}if(l>=u&&!this.switchingTrack&&m<d[d.length-1].start)return;let h=this.getNextFragment(m,o);if(h&&this.isLoopLoading(h,m)&&(h=this.getNextFragmentLoopLoading(h,o,c,UN.MAIN,u)),!h){this.bufferFlushed=!0;return}if(this.exceedsMaxBuffer(c,u,h))return;let g=this.mainFragLoading?.frag||null;if(!this.audioOnly&&this.startFragRequested&&g&&xP(h)&&!h.endList&&(!o.live||!this.loadingParts&&m<this.hls.liveSyncPosition)&&(this.fragmentTracker.getState(g)===AI.OK&&(this.mainFragLoading=g=null),g&&xP(g))){if(h.start>g.end){let e=this.fragmentTracker.getFragAtPos(m,UN.MAIN);e&&e.end>g.end&&(g=e,this.mainFragLoading={frag:e,targetBufferTime:null})}if(h.start>g.end)return}this.loadFragment(h,a,m)}onMediaDetaching(e,t){this.bufferFlushed=this.flushing=!1,super.onMediaDetaching(e,t)}onAudioTracksUpdated(e,{audioTracks:t}){this.resetTransmuxer(),this.levels=t.map(e=>new WF(e))}onAudioTrackSwitching(e,t){let n=!!t.url;this.trackId=t.id;let{fragCurrent:r}=this;r&&(r.abortRequests(),this.removeUnbufferedFrags(r.start)),this.resetLoadingState(),n?(this.switchingTrack=t,this.flushAudioIfNeeded(t),this.state!==X.STOPPED&&(this.setInterval(BB),this.state=X.IDLE,this.tick())):(this.resetTransmuxer(),this.switchingTrack=null,this.bufferedTrack=t,this.clearInterval())}onManifestLoading(){super.onManifestLoading(),this.bufferFlushed=this.flushing=this.audioOnly=!1,this.resetItem(),this.trackId=-1}onLevelLoaded(e,t){this.mainDetails=t.details;let n=this.cachedTrackLoadedData;n&&(this.cachedTrackLoadedData=null,this.onAudioTrackLoaded(Y.AUDIO_TRACK_LOADED,n))}onAudioTrackLoaded(e,t){var n;let{levels:r}=this,{details:i,id:a,groupId:o,track:s}=t;if(!r){this.warn(`Audio tracks reset while loading track ${a} "${s.name}" of "${o}"`);return}let c=this.mainDetails;if(!c||i.endCC>c.endCC||c.expired){this.cachedTrackLoadedData=t,this.state!==X.STOPPED&&(this.state=X.WAITING_TRACK);return}this.cachedTrackLoadedData=null,this.log(`Audio track ${a} "${s.name}" of "${o}" loaded [${i.startSN},${i.endSN}]${i.lastPartSn?`[part-${i.lastPartSn}-${i.lastPartIndex}]`:``},duration:${i.totalduration}`);let l=r[a],u=0;if(i.live||(n=l.details)!=null&&n.live){if(this.checkLiveUpdate(i),i.deltaUpdateFailed)return;l.details&&(u=this.alignPlaylists(i,l.details,this.levelLastLoaded?.details)),i.alignedSliding||(wR(i,c),i.alignedSliding||TR(i,c),u=i.fragmentStart)}l.details=i,this.levelLastLoaded=l,this.startFragRequested||this.setStartPosition(c,u),this.hls.trigger(Y.AUDIO_TRACK_UPDATED,{details:i,id:a,groupId:t.groupId}),this.state===X.WAITING_TRACK&&!this.waitForCdnTuneIn(i)&&(this.state=X.IDLE),this.tick()}_handleFragmentLoadProgress(e){let t=e.frag,{part:n,payload:r}
vendor: 20,293 bytes, lines 1813-1816
1813=e,{config:i,trackId:a,levels:o}=this;if(!o){this.warn(`Audio tracks were reset while fragment load was in progress. Fragment ${t.sn} of level ${t.level} will not be buffered`);return}let s=o[a];if(!s){this.warn(`Audio track is undefined on fragment load progress`);return}let c=s.details;if(!c){this.warn(`Audio track details undefined on fragment load progress`),this.removeUnbufferedFrags(t.start);return}let l=i.defaultAudioCodec||s.audioCodec||`mp4a.40.2`,u=this.transmuxer;u||=this.transmuxer=new zB(this.hls,UN.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this));let d=this.initPTS[t.cc],f=t.initSegment?.data;if(d!==void 0){let e=n?n.index:-1,i=e!==-1,a=new XI(t.level,t.sn,t.stats.chunkCount,r.byteLength,e,i);u.push(r,f,l,``,t,n,c.totalduration,!1,a,d)}else{this.log(`Unknown video PTS for cc ${t.cc}, waiting for video PTS before demuxing audio frag ${t.sn} of [${c.startSN} ,${c.endSN}],track ${a}`);let{cache:e}=this.waitingData=this.waitingData||{frag:t,part:n,cache:new jR,complete:!1};e.push(new Uint8Array(r)),this.state!==X.STOPPED&&(this.state=X.WAITING_INIT_PTS)}}_handleFragmentLoadComplete(e){if(this.waitingData){this.waitingData.complete=!0;return}super._handleFragmentLoadComplete(e)}onBufferReset(){this.mediaBuffer=null}onBufferCreated(e,t){this.bufferFlushed=this.flushing=!1;let n=t.tracks.audio;n&&(this.mediaBuffer=n.buffer||null)}onFragLoading(e,t){!this.audioOnly&&t.frag.type===UN.MAIN&&xP(t.frag)&&(this.mainFragLoading=t,this.state===X.IDLE&&this.tick())}onFragBuffered(e,t){let{frag:n,part:r}=t;if(n.type!==UN.AUDIO){!this.audioOnly&&n.type===UN.MAIN&&!n.elementaryStreams.video&&!n.elementaryStreams.audiovideo&&(this.audioOnly=!0,this.mainFragLoading=null);return}if(this.fragContextChanged(n)){this.warn(`Fragment ${n.sn}${r?` p: `+r.index:``} of level ${n.level} finished buffering, but was aborted. state: ${this.state}, audioSwitch: ${this.switchingTrack?this.switchingTrack.name:`false`}`);return}if(xP(n)){this.fragPrevious=n;let e=this.switchingTrack;e&&(this.bufferedTrack=e,this.switchingTrack=null,this.hls.trigger(Y.AUDIO_TRACK_SWITCHED,YN({},e)))}this.fragBufferedComplete(n,r),this.media&&this.tick()}onError(e,t){if(t.fatal){this.state=X.ERROR;return}switch(t.details){case J.FRAG_GAP:case J.FRAG_PARSING_ERROR:case J.FRAG_DECRYPT_ERROR:case J.FRAG_LOAD_ERROR:case J.FRAG_LOAD_TIMEOUT:case J.KEY_LOAD_ERROR:case J.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(UN.AUDIO,t);break;case J.AUDIO_TRACK_LOAD_ERROR:case J.AUDIO_TRACK_LOAD_TIMEOUT:case J.LEVEL_PARSING_ERROR:!t.levelRetry&&this.state===X.WAITING_TRACK&&t.context?.type===HN.AUDIO_TRACK&&(this.state=X.IDLE);break;case J.BUFFER_ADD_CODEC_ERROR:case J.BUFFER_APPEND_ERROR:if(t.parent!==`audio`)return;this.reduceLengthAndFlushBuffer(t)||this.resetLoadingState();break;case J.BUFFER_FULL_ERROR:if(t.parent!==`audio`)return;this.reduceLengthAndFlushBuffer(t)&&(this.bufferedTrack=null,super.flushMainBuffer(0,1/0,`audio`));break;case J.INTERNAL_EXCEPTION:this.recoverWorkerError(t)}}onBufferFlushing(e,{type:t}){t!==yP.VIDEO&&(this.flushing=!0)}onBufferFlushed(e,{type:t}){if(t!==yP.VIDEO){this.flushing=!1,this.bufferFlushed=!0,this.state===X.ENDED&&(this.state=X.IDLE);let e=this.mediaBuffer||this.media;e&&(this.afterBufferFlushed(e,t,UN.AUDIO),this.tick())}}_handleTransmuxComplete(e){var t;let n=`audio`,{hls:r}=this,{remuxResult:i,chunkMeta:a}=e,o=this.getCurrentContext(a);if(!o){this.resetWhenMissingContext(a);return}let{frag:s,part:c,level:l}=o,{details:u}=l,{audio:d,text:f,id3:p,initSegment:m}=i;if(this.fragContextChanged(s)||!u){this.fragmentTracker.removeFragment(s);return}if(this.state=X.PARSING,this.switchingTrack&&d&&this.completeAudioSwitch(this.switchingTrack),m!=null&&m.tracks){let e=s.initSegment||s;if(this.unhandledEncryptionError(m,s))return;this._bufferInitSegment(l,m.tracks,e,a),r.trigger(Y.FRAG_PARSING_INIT_SEGMENT,{frag:e,id:n,tracks:m.tracks})}if(d){let{startPTS:e,endPTS:t,startDTS:n,endDTS:r}=d;c&&(c.elementaryStreams[yP.AUDIO]={startPTS:e,endPTS:t,startDTS:n,endDTS:r}),s.setElementaryStreamInfo(yP.AUDIO,e,t,n,r),this.bufferFragmentData(d,s,c,a)}if(p!=null&&(t=p.samples)!=null&&t.length){let e=qN({id:n,frag:s,details:u},p);r.trigger(Y.FRAG_PARSING_METADATA,e)}if(f){let e=qN({id:n,frag:s,details:u},f);r.trigger(Y.FRAG_PARSING_USERDATA,e)}}_bufferInitSegment(e,t,n,r){if(this.state!==X.PARSING||(t.video&&delete t.video,t.audiovideo&&delete t.audiovideo,!t.audio))return;let i=t.audio;i.id=UN.AUDIO;let a=e.audioCodec;this.log(`Init audio buffer, container:${i.container}, codecs[level/parsed]=[${a}/${i.codec}]`),a&&a.split(`,`).length===1&&(i.levelCodec=a),this.hls.trigger(Y.BUFFER_CODECS,t);let o=i.initSegment;if(o!=null&&o.byteLength){let e={type:`audio`,frag:n,part:null,chunkMeta:r,parent:n.type,data:o};this.hls.trigger(Y.BUFFER_APPENDING,e)}this.tickImmediate()}loadFragment(e,t,n){let r=this.fragmentTracker.getState(e);if(this.switchingTrack||r===AI.NOT_LOADED||r===AI.PARTIAL){var i;if(!xP(e))this._loadInitSegment(e,t);else if((i=t.details)!=null&&i.live&&!this.initPTS[e.cc]){this.log(`Waiting for video PTS in continuity counter ${e.cc} of live stream before loading audio fragment ${e.sn} of level ${this.trackId}`),this.state=X.WAITING_INIT_PTS;let n=this.mainDetails;n&&n.fragmentStart!==t.details.fragmentStart&&TR(t.details,n)}else super.loadFragment(e,t,n)}else this.clearTrackerIfNeeded(e)}flushAudioIfNeeded(e){if(this.media&&this.bufferedTrack){let{name:t,lang:n,assocLang:r,characteristics:i,audioCodec:a,channels:o}=this.bufferedTrack;nI({name:t,lang:n,assocLang:r,characteristics:i,audioCodec:a,channels:o},e,aI)||(cI(e.url,this.hls)?(this.log(`Switching audio track : flushing all audio`),super.flushMainBuffer(0,1/0,`audio`),this.bufferedTrack=null):this.bufferedTrack=e)}}completeAudioSwitch(e){let{hls:t}=this;this.flushAudioIfNeeded(e),this.bufferedTrack=e,this.switchingTrack=null,t.trigger(Y.AUDIO_TRACK_SWITCHED,YN({},e))}},HB=class extends QN{constructor(e,t){super(t,e.logger),this.hls=void 0,this.canLoad=!1,this.timer=-1,this.hls=e}destroy(){this.clearTimer(),this.hls=this.log=this.warn=null}clearTimer(){this.timer!==-1&&(self.clearTimeout(this.timer),this.timer=-1)}startLoad(){this.canLoad=!0,this.loadPlaylist()}stopLoad(){this.canLoad=!1,this.clearTimer()}switchParams(e,t,n){let r=t?.renditionReports;if(r){let i=-1;for(let n=0;n<r.length;n++){let a=r[n],o;try{o=new self.URL(a.URI,t.url).href}catch(e){this.warn(`Could not construct new URL for Rendition Report: ${e}`),o=a.URI||``}if(o===e){i=n;break}o===e.substring(0,o.length)&&(i=n)}if(i!==-1){let e=r[i],a=parseInt(e[`LAST-MSN`])||t.lastPartSn,o=parseInt(e[`LAST-PART`])||t.lastPartIndex;if(this.hls.config.lowLatencyMode){let e=Math.min(t.age-t.partTarget,t.targetduration);o>=0&&e>t.partTarget&&(o+=1)}let s=n&&HF(n);return new UF(a,o>=0?o:void 0,s)}}}loadPlaylist(e){this.clearTimer()}loadingPlaylist(e,t){this.clearTimer()}shouldLoadPlaylist(e){return this.canLoad&&!!e&&!!e.url&&(!e.details||e.details.live)}getUrlWithDirectives(e,t){if(t)try{return t.addDirectives(e)}catch(e){this.warn(`Could not construct new URL with HLS Delivery Directives: ${e}`)}return e}playlistLoaded(e,t,n){let{details:r,stats:i}=t,a=self.performance.now(),o=i.loading.first?Math.max(0,a-i.loading.first):0;r.advancedDateTime=Date.now()-o;let s=this.hls.config.timelineOffset;if(s!==r.appliedTimelineOffset){let e=Math.max(s||0,0);r.appliedTimelineOffset=e,r.fragments.forEach(t=>{t.setStart(t.playlistOffset+e)})}if(r.live||n!=null&&n.live){let s=`levelInfo`in t?t.levelInfo:t.track;if(r.reloaded(n),n&&r.fragments.length>0){aR(n,r,this);let e=r.playlistParsingError;if(e){this.warn(e);let n=this.hls;if(!n.config.ignorePlaylistParsingErrors){let{networkDetails:a}=t;n.trigger(Y.ERROR,{type:VN.NETWORK_ERROR,details:J.LEVEL_PARSING_ERROR,fatal:!1,url:r.url,error:e,reason:e.message,level:t.level||void 0,parent:r.fragments[0]?.type,networkDetails:a,stats:i});return}r.playlistParsingError=null}}r.requestScheduled===-1&&(r.requestScheduled=i.loading.start);let c=this.hls.mainForwardBufferInfo,l=c?c.end-c.len:0,u=fR(r,(r.edge-l)*1e3);if(r.requestScheduled+u<a?r.requestScheduled=a:r.requestScheduled+=u,this.log(`live playlist ${e} ${r.advanced?`REFRESHED `+r.lastPartSn+`-`+r.lastPartIndex:r.updated?`UPDATED`:`MISSED`}`),!this.canLoad||!r.live)return;let d,f,p;if(r.canBlockReload&&r.endSN&&r.advanced){let e=this.hls.config.lowLatencyMode,i=r.lastPartSn,o=r.endSN,c=r.lastPartIndex,l=c!==-1,u=i===o;l?u?(f=o+1,p=e?0:c):(f=i,p=e?c+1:r.maxPartIndex):f=o+1;let m=r.age,h=m+r.ageHeader,g=Math.min(h-r.partTarget,r.targetduration*1.5);if(g>0){if(h>r.targetduration*3)this.log(`Playlist last advanced ${m.toFixed(2)}s ago. Omitting segment and part directives.`),f=void 0,p=void 0;else if(n!=null&&n.tuneInGoal&&h-r.partTarget>n.tuneInGoal)this.warn(`CDN Tune-in goal increased from: ${n.tuneInGoal} to: ${g} with playlist age: ${r.age}`),g=0;else{let e=Math.floor(g/r.targetduration);if(f+=e,p!==void 0){let e=Math.round(g%r.targetduration/r.partTarget);p+=e}this.log(`CDN Tune-in age: ${r.ageHeader}s last advanced ${m.toFixed(2)}s goal: ${g} skip sn ${e} to part ${p}`)}r.tuneInGoal=g}if(d=this.getDeliveryDirectives(r,t.deliveryDirectives,f,p),e||!u){r.requestScheduled=a,this.loadingPlaylist(s,d);return}}else(r.canBlockReload||r.canSkipUntil)&&(d=this.getDeliveryDirectives(r,t.deliveryDirectives,f,p));d&&f!==void 0&&r.canBlockReload&&(r.requestScheduled=i.loading.first+Math.max(u-o*2,u/2)),this.scheduleLoading(s,d,r)}else this.clearTimer()}scheduleLoading(e,t,n){let r=n||e.details;if(!r){this.loadingPlaylist(e,t);return}let i=self.performance.now(),a=r.requestScheduled;if(i>=a){this.loadingPlaylist(e,t);return}let o=a-i;this.log(`reload live playlist ${e.name||e.bitrate+`bps`} in ${Math.round(o)} ms`),this.clearTimer(),this.timer=self.setTimeout(()=>this.loadingPlaylist(e,t),o)}getDeliveryDirectives(e,t,n,r){let i=HF(e);return t!=null&&t.skip&&e.deltaUpdateFailed&&(n=t.msn,r=t.part,i=VF.No),new UF(n,r,i)}checkRetry(e){let t=e.details,n=_I(e),r=e.errorAction,{action:i,retryCount:a=0,retryConfig:o}=r||{},s=!!r&&!!o&&(i===EI.RetryRequest||!r.resolved&&i===EI.SendAlternateToPenaltyBox);if(s){var c;if(a>=o.maxNumRetry)return!1;if(n&&(c=e.context)!=null&&c.deliveryDirectives)this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" without delivery-directives`),this.loadPlaylist();else{let e=xI(o,a);this.clearTimer(),this.timer=self.setTimeout(()=>this.loadPlaylist(),e),this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" in ${e}ms`)}e.levelRetry=!0,r.resolved=!0}return s}};function UB(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!WB(e[n].attrs,t[n].attrs))return!1;return!0}function WB(e,t,n){let r=e[`STABLE-RENDITION-ID`];return r&&!n?r===t[`STABLE-RENDITION-ID`]:!(n||[`LANGUAGE`,`NAME`,`CHARACTERISTICS`,`AUTOSELECT`,`DEFAULT`,`FORCED`,`ASSOC-LANGUAGE`]).some(n=>e[n]!==t[n])}function GB(e,t){return t.label.toLowerCase()===e.name.toLowerCase()&&(!t.language||t.language.toLowerCase()===(e.lang||``).toLowerCase())}var KB=class extends HB{constructor(e){super(e,`audio-track-controller`),this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0,this.registerListeners()}registerListeners(){let{hls:e}=this;e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.LEVEL_LOADING,this.onLevelLoading,this),e.on(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(Y.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let{hls:e}=this;e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.LEVEL_LOADING,this.onLevelLoading,this),e.off(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(Y.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.off(Y.ERROR,this.onError,this)}destroy(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.currentTrack=null,super.destroy()}onManifestLoading(){this.tracks=[],this.tracksInGroup=[],this.groupIds=null,this.currentTrack=null,this.trackId=-1,this.selectDefaultTrack=!0}onManifestParsed(e,t){this.tracks=t.audioTracks||[]}onAudioTrackLoaded(e,t){let{id:n,groupId:r,details:i}=t,a=this.tracksInGroup[n];if(!a||a.groupId!==r){this.warn(`Audio track with id:${n} and group:${r} not found in active group ${a?.groupId}`);return}let o=a.details;a.details=t.details,this.log(`Audio track ${n} "${a.name}" lang:${a.lang} group:${r} loaded [${i.startSN}-${i.endSN}]`),n===this.trackId&&this.playlistLoaded(n,t,o)}onLevelLoading(e,t){this.switchLevel(t.level)}onLevelSwitching(e,t){this.switchLevel(t.level)}switchLevel(e){let t=this.hls.levels[e];if(!t)return;let n=t.audioGroups||null,r=this.groupIds,i=this.currentTrack;if(!n||r?.length!==n?.length||n!=null&&n.some(e=>r?.indexOf(e)===-1)){this.groupIds=n,this.trackId=-1,this.currentTrack=null;let e=this.tracks.filter(e=>!n||n.indexOf(e.groupId)!==-1);if(e.length)this.selectDefaultTrack&&!e.some(e=>e.default)&&(this.selectDefaultTrack=!1),e.forEach((e,t)=>{e.id=t});else if(!i&&!this.tracksInGroup.length)return;this.tracksInGroup=e;let t=this.hls.config.audioPreference;if(!i&&t){let n=tI(t,e,aI);if(n>-1)i=e[n];else{let e=tI(t,this.tracks);i=this.tracks[e]}}let r=this.findTrackId(i);r===-1&&i&&(r=this.findTrackId(null));let a={audioTracks:e};this.log(`Updating audio tracks, ${e.length} track(s) found in group(s): ${n?.join(`,`)}`),this.hls.trigger(Y.AUDIO_TRACKS_UPDATED,a);let o=this.trackId;if(r!==-1&&o===-1)this.setAudioTrack(r);else if(e.length&&o===-1){let t=Error(`No audio track selected for current audio group-ID(s): ${this.groupIds?.join(`,`)} track count: ${e.length}`);this.warn(t.message),this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.AUDIO_TRACK_LOAD_ERROR,fatal:!0,error:t})}}}onError(e,t){t.fatal||!t.context||t.context.type===HN.AUDIO_TRACK&&t.context.id===this.trackId&&(!this.groupIds||this.groupIds.indexOf(t.context.groupId)!==-1)&&this.checkRetry(t)}get allAudioTracks(){return this.tracks}get audioTracks(){return this.tracksInGroup}get audioTrack(){return this.trackId}set audioTrack(e){this.selectDefaultTrack=!1,this.setAudioTrack(e)}setAudioOption(e){let t=this.hls;if(t.config.audioPreference=e,e){let n=this.allAudioTracks;if(this.selectDefaultTrack=!1,n.length){let r=this.currentTrack;if(r&&nI(e,r,aI))return r;let i=tI(e,this.tracksInGroup,aI);if(i>-1){let e=this.tracksInGroup[i];return this.setAudioTrack(i),e}if(r){let r=t.loadLevel;r===-1&&(r=t.firstAutoLevel);let i=oI(e,t.levels,n,r,aI);if(i===-1)return null;t.nextLoadLevel=i}if(e.channels||e.audioCodec){let t=tI(e,n);if(t>-1)return n[t]}}}return null}setAudioTrack(e){let t=this.tracksInGroup;if(e<0||e>=t.length){this.warn(`Invalid audio track id: ${e}`);return}this.selectDefaultTrack=!1;let n=this.currentTrack,r=t[e],i=r.details&&!r.details.live;if(e===this.trackId&&r===n&&i||(this.log(`Switching to audio-track ${e} "${r.name}" lang:${r.lang} group:${r.groupId} channels:${r.channels}`),this.trackId=e,this.currentTrack=r,this.hls.trigger(Y.AUDIO_TRACK_SWITCHING,YN({},r)),i))return;let a=this.switchParams(r.url,n?.details,r.details);this.loadPlaylist(a)}findTrackId(e){let t=this.tracksInGroup;for(let n=0;n<t.length;n++){let r=t[n];if(!(this.selectDefaultTrack&&!r.default)&&(!e||nI(e,r,aI)))return n}if(e){let{name:n,lang:r,assocLang:i,characteristics:a,audioCodec:o,channels:s}=e;for(let e=0;e<t.length;e++){let c=t[e];if(nI({name:n,lang:r,assocLang:i,characteristics:a,audioCodec:o,channels:s},c,aI))return e}for(let n=0;n<t.length;n++){let r=t[n];if(WB(e.attrs,r.attrs,[`LANGUAGE`,`ASSOC-LANGUAGE`,`CHARACTERISTICS`]))return n}for(let n=0;n<t.length;n++){let r=t[n];if(WB(e.attrs,r.attrs,[`LANGUAGE`]))return n}}return-1}loadPlaylist(e){super.loadPlaylist();let t=this.currentTrack;this.shouldLoadPlaylist(t)&&cI(t.url,this.hls)&&this.scheduleLoading(t,e)}loadingPlaylist(e,t){super.loadingPlaylist(e,t);let n=e.id,r=e.groupId,i=this.getUrlWithDirectives(e.url,t),a=e.details,o=a?.age;this.log(`Loading audio-track ${n} "${e.name}" lang:${e.lang} group:${r}${t?.msn===void 0?``:` at sn `+t.msn+` part `+t.part}${o&&a.live?` age `+o.toFixed(1)+(a.type&&` `+a.type||``):``} ${i}`),this.hls.trigger(Y.AUDIO_TRACK_LOADING,{url:i,id:n,groupId:r,deliveryDirectives:t||null,track:e})}},qB=class{constructor(e){this.tracks=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.tracks=e}destroy(){this.tracks=this.queues=null}append(e,t,n){if(this.queues===null||this.tracks===null)return;let r=this.queues[t];r.push(e),r.length===1&&!n&&this.executeNext(t)}appendBlocker(e){return new Promise(t=>{let n={label:`async-blocker`,execute:t,onStart:()=>{},onComplete:()=>{},onError:()=>{}};this.append(n,e)})}prependBlocker(e){return new Promise(t=>{if(this.queues){let n={label:`async-blocker-prepend`,execute:t,onStart:()=>{},onComplete:()=>{},onError:()=>{}};this.queues[e].unshift(n)}})}removeBlockers(){this.queues!==null&&[this.queues.video,this.queues.audio,this.queues.audiovideo].forEach(e=>{let t=e[0]?.label;(t===`async-blocker`||t===`async-blocker-prepend`)&&(e[0].execute(),e.splice(0,1))})}unblockAudio(e){this.queues!==null&&this.queues.audio[0]===e&&this.shiftAndExecuteNext(`audio`)}executeNext(e){if(this.queues===null||this.tracks===null)return;let t=this.queues[e];if(t.length){let n=t[0];try{n.execute()}catch(t){if(n.onError(t),this.queues===null||this.tracks===null)return;let r=this.tracks[e]?.buffer;r!=null&&r.updating||this.shiftAndExecuteNext(e)}}}shiftAndExecuteNext(e){this.queues!==null&&(this.queues[e].shift(),this.executeNext(e))}current(e){return this.queues?.[e][0]||null}toString(){let{queues:e,tracks:t}=this;return e===null||t===null?`<destroyed>`:` 1814${this.list(`video`)} 1815${this.list(`audio`)} 1816${this.list(`audiovideo`)}}`}list(e){var t,n;return(t=this.queues)!=null&&t[e]||(n=this.tracks)!=null&&n[e]?`${e}: (${this.listSbInfo(e)}) ${this.listOps(e)}`:``}listSbInfo(e){let t=this.tracks?.[e],n=t?.buffer;return n?`SourceBuffer${n.updating?` updating`:``}${t.ended?` ended`:``}${t.ending?` ending`:``}`:`none`}listOps(e){return this.queues?.[e].map(e=>e.label).join(`, `)||``}},JB=/(avc[1234]|hvc1|hev1|dvh[1e]|vp09|av01)(?:\.[^.,]+)+/,YB=`HlsJsTrackRemovedError`,XB=class extends Error{constructor(e){super(e),this.name=YB}},ZB=class extends QN{constructor(e,t){super(`buffer-controller`,e.logger),this.hls=void 0,this.fragmentTracker=void 0,this.details=null,this._objectUrl=null,this.operationQueue=null,this.bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.lastMpegAudioChunk=null,this.blockedAudioAppend=null,this.lastVideoAppendEnd=0,this.appendSource=void 0,this.transferData=void 0,this.overrides=void 0,this.appendErrors={audio:0,video:0,audiovideo:0},this.tracks={},this.sourceBuffers=[[null,null],[null,null]],this._onEndStreaming=e=>{this.hls&&this.mediaSource?.readyState===`open`&&this.hls.pauseBuffering()},this._onStartStreaming=e=>{this.hls&&this.hls.resumeBuffering()},this._onMediaSourceOpen=e=>{let{media:t,mediaSource:n}=this;e&&this.log(`Media source opened`),!(!t||!n)&&(n.removeEventListener(`sourceopen`,this._onMediaSourceOpen),t.removeEventListener(`emptied`,this._onMediaEmptied),this.updateDuration(),this.hls.trigger(Y.MEDIA_ATTACHED,{media:t,mediaSource:n}),this.mediaSource!==null&&this.checkPendingTracks())},this._onMediaSourceClose=()=>{this.log(`Media source closed`)},this._onMediaSourceEnded=()=>{this.log(`Media source ended`)},this._onMediaEmptied=()=>{let{mediaSrc:e,_objectUrl:t}=this;e!==t&&this.error(`Media element src was set while attaching MediaSource (${t} > ${e})`)},this.hls=e,this.fragmentTracker=t,this.appendSource=cP(sP(e.config.preferManagedMediaSource)),this.initTracks(),this.registerListeners()}hasSourceTypes(){return Object.keys(this.tracks).length>0}destroy(){this.unregisterListeners(),this.details=null,this.lastMpegAudioChunk=this.blockedAudioAppend=null,this.transferData=this.overrides=void 0,this.operationQueue&&=(this.operationQueue.destroy(),null),this.hls=this.fragmentTracker=null,this._onMediaSourceOpen=this._onMediaSourceClose=null,this._onMediaSourceEnded=null,this._onStartStreaming=this._onEndStreaming=null}registerListeners(){let{hls:e}=this;
vendor: 4,176 bytes, lines 1816-1818
1816e.on(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.BUFFER_RESET,this.onBufferReset,this),e.on(Y.BUFFER_APPENDING,this.onBufferAppending,this),e.on(Y.BUFFER_CODECS,this.onBufferCodecs,this),e.on(Y.BUFFER_EOS,this.onBufferEos,this),e.on(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(Y.FRAG_PARSED,this.onFragParsed,this),e.on(Y.FRAG_CHANGED,this.onFragChanged,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let{hls:e}=this;e.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.BUFFER_RESET,this.onBufferReset,this),e.off(Y.BUFFER_APPENDING,this.onBufferAppending,this),e.off(Y.BUFFER_CODECS,this.onBufferCodecs,this),e.off(Y.BUFFER_EOS,this.onBufferEos,this),e.off(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(Y.FRAG_PARSED,this.onFragParsed,this),e.off(Y.FRAG_CHANGED,this.onFragChanged,this),e.off(Y.ERROR,this.onError,this)}transferMedia(){let{media:e,mediaSource:t}=this;if(!e)return null;let n={};if(this.operationQueue){let e=this.isUpdating();e||this.operationQueue.removeBlockers();let t=this.isQueued();(e||t)&&this.warn(`Transfering MediaSource with${t?` operations in queue`:``}${e?` updating SourceBuffer(s)`:``} ${this.operationQueue}`),this.operationQueue.destroy()}let r=this.transferData;return!this.sourceBufferCount&&r&&r.mediaSource===t?qN(n,r.tracks):this.sourceBuffers.forEach(e=>{let[t]=e;t&&(n[t]=qN({},this.tracks[t]),this.removeBuffer(t)),e[0]=e[1]=null}),{media:e,mediaSource:t,tracks:n}}initTracks(){let e={};this.sourceBuffers=[[null,null],[null,null]],this.tracks=e,this.resetQueue(),this.resetAppendErrors(),this.lastMpegAudioChunk=this.blockedAudioAppend=null,this.lastVideoAppendEnd=0}onManifestLoading(){this.bufferCodecEventsTotal=0,this.details=null}onManifestParsed(e,t){var n;let r=2;(t.audio&&!t.video||!t.altAudio)&&(r=1),this.bufferCodecEventsTotal=r,this.log(`${r} bufferCodec event(s) expected.`),(n=this.transferData)!=null&&n.mediaSource&&this.sourceBufferCount&&r&&this.bufferCreated()}onMediaAttaching(e,t){let n=this.media=t.media;this.transferData=this.overrides=void 0;let r=sP(this.appendSource);if(r){let e=!!t.mediaSource;(e||t.overrides)&&(this.transferData=t,this.overrides=t.overrides);let i=this.mediaSource=t.mediaSource||new r;if(this.assignMediaSource(i),e)this._objectUrl=n.src,this.attachTransferred();else{let e=this._objectUrl=self.URL.createObjectURL(i);if(this.appendSource)try{n.removeAttribute(`src`);let t=self.ManagedMediaSource;n.disableRemotePlayback=n.disableRemotePlayback||t&&i instanceof t,QB(n),$B(n,e),n.load()}catch{n.src=e}else n.src=e}n.addEventListener(`emptied`,this._onMediaEmptied)}}assignMediaSource(e){this.log(`${this.transferData?.mediaSource===e?`transferred`:`created`} media source: ${e.constructor?.name}`),e.addEventListener(`sourceopen`,this._onMediaSourceOpen),e.addEventListener(`sourceended`,this._onMediaSourceEnded),e.addEventListener(`sourceclose`,this._onMediaSourceClose),this.appendSource&&(e.addEventListener(`startstreaming`,this._onStartStreaming),e.addEventListener(`endstreaming`,this._onEndStreaming))}attachTransferred(){let e=this.media,t=this.transferData;if(!t||!e)return;let n=this.tracks,r=t.tracks,i=r?Object.keys(r):null,a=i?i.length:0,o=()=>{Promise.resolve().then(()=>{this.media&&this.mediaSourceOpenOrEnded&&this._onMediaSourceOpen()})};if(r&&i&&a){if(!this.tracksReady){this.hls.config.startFragPrefetch=!0,this.log(`attachTransferred: waiting for SourceBuffer track info`);return}if(this.log(`attachTransferred: (bufferCodecEventsTotal ${this.bufferCodecEventsTotal}) 1817required tracks: ${YF(n,(e,t)=>e===`initSegment`?void 0:t)}; 1818transfer tracks: ${YF(r,(e,t)=>e===`initSegment`?void 0:t)}}`),!lP(r,n)){t.mediaSource=null,t.tracks=void 0;let i=e.currentTime,a=this.details,o=Math.max(i,a?.fragments[0].start||0
vendor: 19,385 bytes, line 1818
1818);if(o-i>1){this.log(`attachTransferred: waiting for playback to reach new tracks start time ${i} -> ${o}`);return}this.warn(`attachTransferred: resetting MediaSource for incompatible tracks ("${Object.keys(r)}"->"${Object.keys(n)}") start time: ${o} currentTime: ${i}`),this.onMediaDetaching(Y.MEDIA_DETACHING,{}),this.onMediaAttaching(Y.MEDIA_ATTACHING,t),e.currentTime=o;return}this.transferData=void 0,i.forEach(e=>{let t=e,n=r[t];if(n){let e=n.buffer;if(e){let r=this.fragmentTracker,i=n.id;if(r.hasFragments(i)||r.hasParts(i)){let n=$I.getBuffered(e);r.detectEvictedFragments(t,n,i,null,!0)}let a=eV(t),o=[t,e];this.sourceBuffers[a]=o,e.updating&&this.operationQueue&&this.operationQueue.prependBlocker(t),this.trackSourceBuffer(t,n)}}}),o(),this.bufferCreated()}else this.log(`attachTransferred: MediaSource w/o SourceBuffers`),o()}get mediaSourceOpenOrEnded(){let e=this.mediaSource?.readyState;return e===`open`||e===`ended`}onMediaDetaching(e,t){let n=!!t.transferMedia;this.transferData=this.overrides=void 0;let{media:r,mediaSource:i,_objectUrl:a}=this;if(i){if(this.log(`media source ${n?`transferring`:`detaching`}`),n)this.sourceBuffers.forEach(([e])=>{e&&this.removeBuffer(e)}),this.resetQueue();else{if(this.mediaSourceOpenOrEnded){let e=i.readyState===`open`;try{let t=i.sourceBuffers;for(let n=t.length;n--;)e&&t[n].abort(),i.removeSourceBuffer(t[n]);e&&i.endOfStream()}catch(e){this.warn(`onMediaDetaching: ${e.message} while calling endOfStream`)}}this.sourceBufferCount&&this.onBufferReset()}i.removeEventListener(`sourceopen`,this._onMediaSourceOpen),i.removeEventListener(`sourceended`,this._onMediaSourceEnded),i.removeEventListener(`sourceclose`,this._onMediaSourceClose),this.appendSource&&(i.removeEventListener(`startstreaming`,this._onStartStreaming),i.removeEventListener(`endstreaming`,this._onEndStreaming)),this.mediaSource=null,this._objectUrl=null}r&&(r.removeEventListener(`emptied`,this._onMediaEmptied),n||(a&&self.URL.revokeObjectURL(a),this.mediaSrc===a?(r.removeAttribute(`src`),this.appendSource&&QB(r),r.load()):this.warn(`media|source.src was changed by a third party - skip cleanup`)),this.media=null),this.hls.trigger(Y.MEDIA_DETACHED,t)}onBufferReset(){this.sourceBuffers.forEach(([e])=>{e&&this.resetBuffer(e)}),this.initTracks()}resetBuffer(e){let t=this.tracks[e]?.buffer;if(this.removeBuffer(e),t)try{var n;(n=this.mediaSource)!=null&&n.sourceBuffers.length&&this.mediaSource.removeSourceBuffer(t)}catch(t){this.warn(`onBufferReset ${e}`,t)}delete this.tracks[e]}removeBuffer(e){this.removeBufferListeners(e),this.sourceBuffers[eV(e)]=[null,null];let t=this.tracks[e];t&&(t.buffer=void 0)}resetQueue(){this.operationQueue&&this.operationQueue.destroy(),this.operationQueue=new qB(this.tracks)}onBufferCodecs(e,t){let n=this.tracks,r=Object.keys(t);this.log(`BUFFER_CODECS: "${r}" (current SB count ${this.sourceBufferCount})`);let i=`audiovideo`in t&&(n.audio||n.video)||n.audiovideo&&(`audio`in t||`video`in t),a=!i&&this.sourceBufferCount&&this.media&&r.some(e=>!n[e]);if(i||a){this.warn(`Unsupported transition between "${Object.keys(n)}" and "${r}" SourceBuffers`);return}r.forEach(e=>{var r;let{id:i,codec:a,levelCodec:o,container:s,metadata:c,supplemental:l}=t[e],u=n[e],d=(r=this.transferData)==null||(r=r.tracks)==null?void 0:r[e],f=d!=null&&d.buffer?d:u,p=f?.pendingCodec||f?.codec,m=f?.levelCodec;u||=n[e]={buffer:void 0,listeners:[],codec:a,supplemental:l,container:s,levelCodec:o,metadata:c,id:i};let h=bF(p,m),g=h?.replace(JB,`$1`),_=bF(a,o),v=_?.replace(JB,`$1`);_&&h&&g!==v&&(e.slice(0,5)===`audio`&&(_=vF(_,this.appendSource)),this.log(`switching codec ${p} to ${_}`),_!==(u.pendingCodec||u.codec)&&(u.pendingCodec=_),u.container=s,this.appendChangeType(e,s,_))}),(this.tracksReady||this.sourceBufferCount)&&(t.tracks=this.sourceBufferTracks),!this.sourceBufferCount&&(this.bufferCodecEventsTotal>1&&!this.tracks.video&&!t.video&&t.audio?.id===`main`&&(this.log(`Main audio-only`),this.bufferCodecEventsTotal=1),this.mediaSourceOpenOrEnded&&this.checkPendingTracks())}get sourceBufferTracks(){return Object.keys(this.tracks).reduce((e,t)=>{let n=this.tracks[t];return e[t]={id:n.id,container:n.container,codec:n.codec,levelCodec:n.levelCodec},e},{})}appendChangeType(e,t,n){let r=`${t};codecs=${n}`,i={label:`change-type=${r}`,execute:()=>{let i=this.tracks[e];if(i){let a=i.buffer;a!=null&&a.changeType&&(this.log(`changing ${e} sourceBuffer type to ${r}`),a.changeType(r),i.codec=n,i.container=t)}this.shiftAndExecuteNext(e)},onStart:()=>{},onComplete:()=>{},onError:t=>{this.warn(`Failed to change ${e} SourceBuffer type`,t)}};this.append(i,e,this.isPending(this.tracks[e]))}blockAudio(e){let t=e.start,n=t+e.duration*.05;if(this.fragmentTracker.getAppendedFrag(t,UN.MAIN)?.gap===!0)return;let r={label:`block-audio`,execute:()=>{let e=this.tracks.video;(this.lastVideoAppendEnd>n||e!=null&&e.buffer&&$I.isBuffered(e.buffer,n)||this.fragmentTracker.getAppendedFrag(n,UN.MAIN)?.gap===!0)&&(this.blockedAudioAppend=null,this.shiftAndExecuteNext(`audio`))},onStart:()=>{},onComplete:()=>{},onError:e=>{this.warn(`Error executing block-audio operation`,e)}};this.blockedAudioAppend={op:r,frag:e},this.append(r,`audio`,!0)}unblockAudio(){let{blockedAudioAppend:e,operationQueue:t}=this;e&&t&&(this.blockedAudioAppend=null,t.unblockAudio(e.op))}onBufferAppending(e,t){let{tracks:n}=this,{data:r,type:i,parent:a,frag:o,part:s,chunkMeta:c,offset:l}=t,u=c.buffering[i],{sn:d,cc:f}=o,p=self.performance.now();u.start=p;let m=o.stats.buffering,h=s?s.stats.buffering:null;m.start===0&&(m.start=p),h&&h.start===0&&(h.start=p);let g=n.audio,_=!1;i===`audio`&&g?.container===`audio/mpeg`&&(_=!this.lastMpegAudioChunk||c.id===1||this.lastMpegAudioChunk.sn!==c.sn,this.lastMpegAudioChunk=c);let v=n.video,y=v?.buffer;if(y&&d!==`initSegment`){let e=s||o,t=this.blockedAudioAppend;if(i===`audio`&&a!==`main`&&!this.blockedAudioAppend&&!(v.ending||v.ended)){let t=e.start+e.duration*.05,n=y.buffered,r=this.currentOp(`video`);(!n.length&&!r||!r&&!$I.isBuffered(y,t)&&this.lastVideoAppendEnd<t)&&this.blockAudio(e)}else if(i===`video`){let n=e.end;if(t){let e=t.frag.start;(n>e||n<this.lastVideoAppendEnd||$I.isBuffered(y,e))&&this.unblockAudio()}this.lastVideoAppendEnd=n}}let b=(s||o).start,x={label:`append-${i}`,execute:()=>{u.executeStart=self.performance.now();let e=this.tracks[i]?.buffer;e&&(_?this.updateTimestampOffset(e,b,.1,i,d,f):l!==void 0&&q(l)&&this.updateTimestampOffset(e,l,1e-6,i,d,f)),this.appendExecutor(r,i)},onStart:()=>{},onComplete:()=>{let e=self.performance.now();u.executeEnd=u.end=e,m.first===0&&(m.first=e),h&&h.first===0&&(h.first=e);let t={};this.sourceBuffers.forEach(([e,n])=>{e&&(t[e]=$I.getBuffered(n))}),this.appendErrors[i]=0,i===`audio`||i===`video`?this.appendErrors.audiovideo=0:(this.appendErrors.audio=0,this.appendErrors.video=0),this.hls.trigger(Y.BUFFER_APPENDED,{type:i,frag:o,part:s,chunkMeta:c,parent:o.type,timeRanges:t})},onError:e=>{let t={type:VN.MEDIA_ERROR,parent:o.type,details:J.BUFFER_APPEND_ERROR,sourceBufferName:i,frag:o,part:s,chunkMeta:c,error:e,err:e,fatal:!1},n=this.media?.error;if(e.code===DOMException.QUOTA_EXCEEDED_ERR||e.name==`QuotaExceededError`||`quota`in e)t.details=J.BUFFER_FULL_ERROR;else if(e.code===DOMException.INVALID_STATE_ERR&&this.mediaSourceOpenOrEnded&&!n)t.errorAction=kI(!0);else if(e.name===YB&&this.sourceBufferCount===0)t.errorAction=kI(!0);else{let e=++this.appendErrors[i];this.warn(`Failed ${e}/${this.hls.config.appendErrorMaxRetry} times to append segment in "${i}" sourceBuffer (${n||`no media error`})`),(e>=this.hls.config.appendErrorMaxRetry||n)&&(t.fatal=!0)}this.hls.trigger(Y.ERROR,t)}};this.log(`queuing "${i}" append sn: ${d}${s?` p: `+s.index:``} of ${o.type===UN.MAIN?`level`:`track`} ${o.level} cc: ${f}`),this.append(x,i,this.isPending(this.tracks[i]))}getFlushOp(e,t,n){return this.log(`queuing "${e}" remove ${t}-${n}`),{label:`remove`,execute:()=>{this.removeExecutor(e,t,n)},onStart:()=>{},onComplete:()=>{this.hls.trigger(Y.BUFFER_FLUSHED,{type:e})},onError:r=>{this.warn(`Failed to remove ${t}-${n} from "${e}" SourceBuffer`,r)}}}onBufferFlushing(e,t){let{type:n,startOffset:r,endOffset:i}=t;n?this.append(this.getFlushOp(n,r,i),n):this.sourceBuffers.forEach(([e])=>{e&&this.append(this.getFlushOp(e,r,i),e)})}onFragParsed(e,t){let{frag:n,part:r}=t,i=[],a=r?r.elementaryStreams:n.elementaryStreams;a[yP.AUDIOVIDEO]?i.push(`audiovideo`):(a[yP.AUDIO]&&i.push(`audio`),a[yP.VIDEO]&&i.push(`video`)),i.length===0&&this.warn(`Fragments must have at least one ElementaryStreamType set. type: ${n.type} level: ${n.level} sn: ${n.sn}`),this.blockBuffers(()=>{let e=self.performance.now();n.stats.buffering.end=e,r&&(r.stats.buffering.end=e);let t=r?r.stats:n.stats;this.hls.trigger(Y.FRAG_BUFFERED,{frag:n,part:r,stats:t,id:n.type})},i).catch(e=>{this.warn(`Fragment buffered callback ${e}`),this.stepOperationQueue(this.sourceBufferTypes)})}onFragChanged(e,t){this.trimBuffers()}get bufferedToEnd(){return this.sourceBufferCount>0&&!this.sourceBuffers.some(([e])=>{if(e){let t=this.tracks[e];if(t)return!t.ended||t.ending}return!1})}onBufferEos(e,t){this.sourceBuffers.forEach(([e])=>{if(e){let n=this.tracks[e];(!t.type||t.type===e)&&(n.ending=!0,n.ended||(n.ended=!0,this.log(`${e} buffer reached EOS`)))}});let n=this.overrides?.endOfStream!==!1;this.sourceBufferCount>0&&!this.sourceBuffers.some(([e])=>{var t;return e&&!((t=this.tracks[e])!=null&&t.ended)})?n?(this.log(`Queueing EOS`),this.blockUntilOpen(()=>{this.tracksEnded();let{mediaSource:e}=this;if(!e||e.readyState!==`open`){e&&this.log(`Could not call mediaSource.endOfStream(). mediaSource.readyState: ${e.readyState}`);return}this.log(`Calling mediaSource.endOfStream()`),e.endOfStream(),this.hls.trigger(Y.BUFFERED_TO_END,void 0)})):(this.tracksEnded(),this.hls.trigger(Y.BUFFERED_TO_END,void 0)):t.type===`video`&&this.unblockAudio()}tracksEnded(){this.sourceBuffers.forEach(([e])=>{if(e!==null){let t=this.tracks[e];t&&(t.ending=!1)}})}onLevelUpdated(e,{details:t}){t.fragments.length&&(this.details=t,this.updateDuration())}updateDuration(){this.blockUntilOpen(()=>{let e=this.getDurationAndRange();e&&this.updateMediaSource(e)})}onError(e,t){if(t.details===J.BUFFER_APPEND_ERROR&&t.frag){let e=t.errorAction?.nextAutoLevel;q(e)&&e!==t.frag.level&&this.resetAppendErrors()}}resetAppendErrors(){this.appendErrors={audio:0,video:0,audiovideo:0}}trimBuffers(){let{hls:e,details:t,media:n}=this;if(!n||t===null||!this.sourceBufferCount)return;let r=e.config,i=n.currentTime,a=t.levelTargetDuration,o=t.live&&r.liveBackBufferLength!==null?r.liveBackBufferLength:r.backBufferLength;if(q(o)&&o>=0){let e=Math.max(o,a),t=Math.floor(i/a)*a-e;this.flushBackBuffer(i,a,t)}let s=r.frontBufferFlushThreshold;if(q(s)&&s>0){let e=Math.max(r.maxBufferLength,s),t=Math.max(e,a),n=Math.floor(i/a)*a+t;this.flushFrontBuffer(i,a,n)}}flushBackBuffer(e,t,n){this.sourceBuffers.forEach(([e,t])=>{if(t){let i=$I.getBuffered(t);if(i.length>0&&n>i.start(0)){var r;this.hls.trigger(Y.BACK_BUFFER_REACHED,{bufferEnd:n});let t=this.tracks[e];if((r=this.details)!=null&&r.live)this.hls.trigger(Y.LIVE_BACK_BUFFER_REACHED,{bufferEnd:n});else if(t!=null&&t.ended){this.log(`Cannot flush ${e} back buffer while SourceBuffer is in ended state`);return}this.hls.trigger(Y.BUFFER_FLUSHING,{startOffset:0,endOffset:n,type:e})}}})}flushFrontBuffer(e,t,n){this.sourceBuffers.forEach(([t,r])=>{if(r){let i=$I.getBuffered(r),a=i.length;if(a<2)return;let o=i.start(a-1),s=i.end(a-1);if(n>o||e>=o&&e<=s)return;this.hls.trigger(Y.BUFFER_FLUSHING,{startOffset:o,endOffset:1/0,type:t})}})}getDurationAndRange(){let{details:e,mediaSource:t}=this;if(!e||!this.media||t?.readyState!==`open`)return null;let n=e.edge;if(e.live&&this.hls.config.liveDurationInfinity){if(e.fragments.length&&t.setLiveSeekableRange){let t=Math.max(0,e.fragmentStart);return{duration:1/0,start:t,end:Math.max(t,n)}}return{duration:1/0}}let r=this.overrides?.duration;if(r)return q(r)?{duration:r}:null;let i=this.media.duration;return n>(q(t.duration)?t.duration:0)&&n>i||!q(i)?{duration:n}:null}updateMediaSource({duration:e,start:t,end:n}){let r=this.mediaSource;!this.media||!r||r.readyState!==`open`||(r.duration!==e&&(q(e)&&this.log(`Updating MediaSource duration to ${e.toFixed(3)}`),r.duration=e),t!==void 0&&n!==void 0&&(this.log(`MediaSource duration is set to ${r.duration}. Setting seekable range to ${t}-${n}.`),r.setLiveSeekableRange(t,n)))}get tracksReady(){let e=this.pendingTrackCount;return e>0&&(e>=this.bufferCodecEventsTotal||this.isPending(this.tracks.audiovideo))}checkPendingTracks(){let{bufferCodecEventsTotal:e,pendingTrackCount:t,tracks:n}=this;if(this.log(`checkPendingTracks (pending: ${t} codec events expected: ${e}) ${YF(n)}`),this.tracksReady){let e=this.transferData?.tracks;e&&Object.keys(e).length?this.attachTransferred():this.createSourceBuffers()}}bufferCreated(){if(this.sourceBufferCount){let e={};this.sourceBuffers.forEach(([t,n])=>{if(t){let r=this.tracks[t];e[t]={buffer:n,container:r.container,codec:r.codec,supplemental:r.supplemental,levelCodec:r.levelCodec,id:r.id,metadata:r.metadata}}}),this.hls.trigger(Y.BUFFER_CREATED,{tracks:e}),this.log(`SourceBuffers created. Running queue: ${this.operationQueue}`),this.sourceBuffers.forEach(([e])=>{this.executeNext(e)})}else{let e=Error(`could not create source buffer for media codec(s)`);this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,error:e,reason:e.message})}}createSourceBuffers(){let{tracks:e,sourceBuffers:t,mediaSource:n}=this;if(!n)throw Error(`createSourceBuffers called when mediaSource was null`);for(let i in e){let a=i,o=e[a];if(this.isPending(o)){let e=this.getTrackCodec(o,a),i=`${o.container};codecs=${e}`;o.codec=e,this.log(`creating sourceBuffer(${i})${this.currentOp(a)?` Queued`:``} ${YF(o)}`);try{let e=n.addSourceBuffer(i),r=eV(a);t[r]=[a,e],o.buffer=e}catch(e){var r;this.error(`error while trying to add sourceBuffer: ${e.message}`),this.shiftAndExecuteNext(a),(r=this.operationQueue)==null||r.removeBlockers(),delete this.tracks[a],this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:e,sourceBufferName:a,mimeType:i,parent:o.id});return}this.trackSourceBuffer(a,o)}}this.bufferCreated()}getTrackCodec(e,t){let n=e.supplemental,r=e.codec;n&&(t===`video`||t===`audiovideo`)&&uF(n,`video`)&&(r=yF(r,n));let i=bF(r,e.levelCodec);return i?t.slice(0,5)===`audio`?vF(i,this.appendSource):i:``}trackSourceBuffer(e,t){let n=t.buffer;if(!n)return;let r=this.getTrackCodec(t,e);this.tracks[e]={buffer:n,codec:r,container:t.container,levelCodec:t.levelCodec,supplemental:t.supplemental,metadata:t.metadata,id:t.id,listeners:[]},this.removeBufferListeners(e),this.addBufferListener(e,`updatestart`,this.onSBUpdateStart),this.addBufferListener(e,`updateend`,this.onSBUpdateEnd),this.addBufferListener(e,`error`,this.onSBUpdateError),this.appendSource&&this.addBufferListener(e,`bufferedchange`,(e,t)=>{let n=t.removedRanges;n!=null&&n.length&&this.hls.trigger(Y.BUFFER_FLUSHED,{type:e})})}get mediaSrc(){var e,t;return(((e=this.media)==null||(t=e.querySelector)==null?void 0:t.call(e,`source`))||this.media)?.src}onSBUpdateStart(e){let t=this.currentOp(e);t&&t.onStart()}onSBUpdateEnd(e){if(this.mediaSource?.readyState===`closed`){this.resetBuffer(e);return}let t=this.currentOp(e);t&&(t.onComplete(),this.shiftAndExecuteNext(e))}onSBUpdateError(e,t){let n=Error(`${e} SourceBuffer error. MediaSource readyState: ${this.mediaSource?.readyState}`);this.error(`${n}`,t),this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_APPENDING_ERROR,sourceBufferName:e,error:n,fatal:!1});let r=this.currentOp(e);r&&r.onError(n)}updateTimestampOffset(e,t,n,r,i,a){let o=t-e.timestampOffset;Math.abs(o)>=n&&(this.log(`Updating ${r} SourceBuffer timestampOffset to ${t} (sn: ${i} cc: ${a})`),e.timestampOffset=t)}removeExecutor(e,t,n){let{media:r,mediaSource:i}=this,a=this.tracks[e],o=a?.buffer;if(!r||!i||!o){this.warn(`Attempting to remove from the ${e} SourceBuffer, but it does not exist`),this.shiftAndExecuteNext(e);return}let s=q(r.duration)?r.duration:1/0,c=q(i.duration)?i.duration:1/0,l=Math.max(0,t),u=Math.min(n,s,c);u>l&&(!a.ending||a.ended)?(a.ended=!1,this.log(`Removing [${l},${u}] from the ${e} SourceBuffer`),o.remove(l,u)):this.shiftAndExecuteNext(e)}appendExecutor(e,t){let n=this.tracks[t],r=n?.buffer;if(!r)throw new XB(`Attempting to append to the ${t} SourceBuffer, but it does not exist`);n.ending=!1,n.ended=!1,r.appendBuffer(e)}blockUntilOpen(e){if(this.isUpdating()||this.isQueued())this.blockBuffers(e).catch(e=>{this.warn(`SourceBuffer blocked callback ${e}`),this.stepOperationQueue(this.sourceBufferTypes)});else try{e()}catch(e){this.warn(`Callback run without blocking ${this.operationQueue} ${e}`)}}isUpdating(){return this.sourceBuffers.some(([e,t])=>e&&t.updating)}isQueued(){return this.sourceBuffers.some(([e])=>e&&!!this.currentOp(e))}isPending(e){return!!e&&!e.buffer}blockBuffers(e,t=this.sourceBufferTypes){if(!t.length)return this.log(`Blocking operation requested, but no SourceBuffers exist`),Promise.resolve().then(e);let{operationQueue:n}=this,r=t.map(e=>this.appendBlocker(e));return t.length>1&&this.blockedAudioAppend&&this.unblockAudio(),Promise.all(r).then(t=>{n===this.operationQueue&&(e(),this.stepOperationQueue(this.sourceBufferTypes))})}stepOperationQueue(e){e.forEach(e=>{let t=this.tracks[e]?.buffer;!t||t.updating||this.shiftAndExecuteNext(e)})}append(e,t,n){this.operationQueue&&this.operationQueue.append(e,t,n)}appendBlocker(e){if(this.operationQueue)return this.operationQueue.appendBlocker(e)}currentOp(e){return this.operationQueue?this.operationQueue.current(e):null}executeNext(e){e&&this.operationQueue&&this.operationQueue.executeNext(e)}shiftAndExecuteNext(e){this.operationQueue&&this.operationQueue.shiftAndExecuteNext(e)}get pendingTrackCount(){return Object.keys(this.tracks).reduce((e,t)=>e+ +!!this.isPending(this.tracks[t]),0)}get sourceBufferCount(){return this.sourceBuffers.reduce((e,[t])=>e+ +!!t,0)}get sourceBufferTypes(){return this.sourceBuffers.map(([e])=>e).filter(e=>!!e)}addBufferListener(e,t,n){let r=this.tracks[e];if(!r)return;let i=r.buffer;if(!i)return;let a=n.bind(this,e);r.listeners.push({event:t,listener:a}),i.addEventListener(t,a)}removeBufferListeners(e){let t=this.tracks[e];if(!t)return;let n=t.buffer;n&&(t.listeners.forEach(e=>{n.removeEventListener(e.event,e.listener)}),t.listeners.length=0)}};function QB(e){let t=e.querySelectorAll(`source`);[].slice.call(t).forEach(t=>{e.removeChild(t)})}function $B(e,t){let n=self.document.createElement(`source`);n.type=`video/mp4`,n.src=t,e.appendChild(n)}function eV(e){return+(e===`audio`)}var tV=class e{constructor(e){this.hls=void 0,this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.clientRect=void 0,this.streamController=void 0,this.hls=e,this.autoLevelCapping=1/0,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}setStreamController(e){this.streamController=e}destroy(){this.hls&&this.unregisterListener(),this.timer&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null}registerListeners(){let{hls:e}=this;e.on(Y.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.on(Y.MEDIA_ATTA
1818CHING,this.onMediaAttaching,this),e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(Y.BUFFER_CODECS,this.onBufferCodecs,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListener(){let{hls:e}=this;e.off(Y.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(Y.BUFFER_CODECS,this.onBufferCodecs,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this)}onFpsDropLevelCapping(e,t){let n=this.hls.levels[t.droppedLevel];this.isLevelAllowed(n)&&this.restrictedLevels.push({bitrate:n.bitrate,height:n.height,width:n.width})}onMediaAttaching(e,t){this.media=t.media instanceof HTMLVideoElement?t.media:null,this.clientRect=null,this.timer&&this.hls.levels.length&&this.detectPlayerSize()}onManifestParsed(e,t){let n=this.hls;this.restrictedLevels=[],this.firstLevel=t.firstLevel,n.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onLevelsUpdated(e,t){this.timer&&q(this.autoLevelCapping)&&this.detectPlayerSize()}onBufferCodecs(e,t){this.hls.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onMediaDetaching(){this.stopCapping(),this.media=null}detectPlayerSize(){if(this.media){if(this.mediaHeight<=0||this.mediaWidth<=0){this.clientRect=null;return}let e=this.hls.levels;if(e.length){let t=this.hls,n=this.getMaxLevel(e.length-1);n!==this.autoLevelCapping&&t.logger.log(`Setting autoLevelCapping to ${n}: ${e[n].height}p@${e[n].bitrate} for media ${this.mediaWidth}x${this.mediaHeight}`),t.autoLevelCapping=n,t.autoLevelEnabled&&t.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping}}}getMaxLevel(t){let n=this.hls.levels;if(!n.length)return-1;let r=n.filter((e,n)=>this.isLevelAllowed(e)&&n<=t);return this.clientRect=null,e.getMaxLevelByMediaSize(r,this.mediaWidth,this.mediaHeight)}startCapping(){this.timer||(this.autoLevelCapping=1/0,self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())}stopCapping(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=1/0,this.timer&&=(self.clearInterval(this.timer),void 0)}getDimensions(){if(this.clientRect)return this.clientRect;let e=this.media,t={width:0,height:0};if(e){let n=e.getBoundingClientRect();t.width=n.width,t.height=n.height,!t.width&&!t.height&&(t.width=n.right-n.left||e.width||0,t.height=n.bottom-n.top||e.height||0)}return this.clientRect=t,t}get mediaWidth(){return this.getDimensions().width*this.contentScaleFactor}get mediaHeight(){return this.getDimensions().height*this.contentScaleFactor}get contentScaleFactor(){let e=1;if(!this.hls.config.ignoreDevicePixelRatio)try{e=self.devicePixelRatio}catch{}return Math.min(e,this.hls.config.maxDevicePixelRatio)}isLevelAllowed(e){return!this.restrictedLevels.some(t=>e.bitrate===t.bitrate&&e.width===t.width&&e.height===t.height)}static getMaxLevelByMediaSize(e,t,n){if(!(e!=null&&e.length))return-1;let r=(e,t)=>!t||e.width!==t.width||e.height!==t.height,i=e.length-1,a=Math.max(t,n);for(let t=0;t<e.length;t+=1){let n=e[t];if((n.width>=a||n.height>=a)&&r(n,e[t+1])){i=t;break}}return i}},nV={MANIFEST:`m`,AUDIO:`a`,VIDEO:`v`,MUXED:`av`,INIT:`i`,CAPTION:`c`,TIMED_TEXT:`tt`,KEY:`k`,OTHER:`o`},rV={HLS:`h`},iV=class e{constructor(t,n){Array.isArray(t)&&(t=t.map(t=>t instanceof e?t:new e(t))),this.value=t,this.params=n}},aV=`Dict`;function oV(e){return Array.isArray(e)?JSON.stringify(e):e instanceof Map?`Map{}`:e instanceof Set?`Set{}`:typeof e==`object`?JSON.stringify(e):String(e)}function sV(e,t,n,r){return Error(`failed to ${e} "${oV(t)}" as ${n}`,{cause:r})}function cV(e,t,n){return sV(`serialize`,e,t,n)}var lV=class{constructor(e){this.description=e}},uV=`Bare Item`,dV=`Boolean`;function fV(e){if(typeof e!=`boolean`)throw cV(e,dV);return e?`?1`:`?0`}function pV(e){return btoa(String.fromCharCode(...e))}var mV=`Byte Sequence`;function hV(e){if(ArrayBuffer.isView(e)===!1)throw cV(e,mV);return`:${pV(e)}:`}var gV=`Integer`;function _V(e){return e<-999999999999999||999999999999999<e}function vV(e){if(_V(e))throw cV(e,gV);return e.toString()}function yV(e){return`@${vV(e.getTime()/1e3)}`}function bV(e,t){if(e<0)return-bV(-e,t);let n=10**t;if(Math.abs(e*n%1-.5)<2**-52){let t=Math.floor(e*n);return(t%2==0?t:t+1)/n}return Math.round(e*n)/n}var xV=`Decimal`;function SV(e){let t=bV(e,3);if(Math.floor(Math.abs(t)).toString().length>12)throw cV(e,xV);let n=t.toString();return n.includes(`.`)?n:`${n}.0`}var CV=`String`,wV=/[\x00-\x1f\x7f]+/;function TV(e){if(wV.test(e))throw cV(e,CV);return`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function EV(e){return e.description||e.toString().slice(7,-1)}var DV=`Token`;function OV(e){let t=EV(e);if(/^([a-zA-Z*])([!#$%&'*+\-.^_`|~\w:/]*)$/.test(t)===!1)throw cV(t,DV);return t}function kV(e){switch(typeof e){case`number`:if(!q(e))throw cV(e,uV);return Number.isInteger(e)?vV(e):SV(e);case`string`:return TV(e);case`symbol`:return OV(e);case`boolean`:return fV(e);case`object`:if(e instanceof Date)return yV(e);if(e instanceof Uint8Array)return hV(e);if(e instanceof lV)return OV(e);default:throw cV(e,uV)}}var AV=`Key`;function jV(e){if(/^[a-z*][a-z0-9\-_.*]*$/.test(e)===!1)throw cV(e,AV);return e}function MV(e){return e==null?``:Object.entries(e).map(([e,t])=>t===!0?`;${jV(e)}`:`;${jV(e)}=${kV(t)}`).join(``)}function NV(e){return e instanceof iV?`${kV(e.value)}${MV(e.params)}`:kV(e)}function PV(e){return`(${e.value.map(NV).join(` `)})${MV(e.params)}`}function FV(e,t={whitespace:!0}){if(typeof e!=`object`||!e)throw cV(e,aV);let n=e instanceof Map?e.entries():Object.entries(e),r=t?.whitespace?` `:``;return Array.from(n).map(([e,t])=>{t instanceof iV||(t=new iV(t));let n=jV(e);return t.value===!0?n+=MV(t.params):(n+=`=`,Array.isArray(t.value)?n+=PV(t):n+=NV(t)),n}).join(`,${r}`)}function IV(e,t){return FV(e,t)}var LV=`CMCD-Object`,RV=`CMCD-Request`,zV=`CMCD-Session`,BV=`CMCD-Status`,VV={br:LV,ab:LV,d:LV,ot:LV,tb:LV,tpb:LV,lb:LV,tab:LV,lab:LV,url:LV,pb:RV,bl:RV,tbl:RV,dl:RV,ltc:RV,mtp:RV,nor:RV,nrr:RV,rc:RV,sn:RV,sta:RV,su:RV,ttfb:RV,ttfbb:RV,ttlb:RV,cmsdd:RV,cmsds:RV,smrt:RV,df:RV,cs:RV,ts:RV,cid:zV,pr:zV,sf:zV,sid:zV,st:zV,v:zV,msd:zV,bs:BV,bsd:BV,cdn:BV,rtp:BV,bg:BV,pt:BV,ec:BV,e:BV},HV={REQUEST:RV};function UV(e){return Object.keys(e).reduce((t,n)=>{var r;
1818return(r=e[n])==null||r.forEach(e=>t[e]=n),t},{})}function WV(e,t){let n={};if(!e)return n;let r=Object.keys(e),i=t?UV(t):{};return r.reduce((t,n)=>{let r=VV[n]||i[n]||HV.REQUEST,a=t[r]??(t[r]={});return a[n]=e[n],t},n)}function GV(e){return[`ot`,`sf`,`st`,`e`,`sta`].includes(e)}function KV(e){return typeof e==`number`?q(e):e!=null&&e!==``&&e!==!1}var qV=`event`;function JV(e,t){let n=new URL(e),r=new URL(t);if(n.origin!==r.origin)return e;let i=n.pathname.split(`/`).slice(1),a=r.pathname.split(`/`).slice(1,-1);for(;i[0]===a[0];)i.shift(),a.shift();for(;a.length;)a.shift(),i.unshift(`..`);return i.join(`/`)+n.search+n.hash}var YV=e=>Math.round(e),XV=(e,t)=>Array.isArray(e)?e.map(e=>XV(e,t)):e instanceof iV&&typeof e.value==`string`?new iV(XV(e.value,t),e.params):(t.baseUrl&&(e=JV(e,t.baseUrl)),t.version===1?encodeURIComponent(e):e),ZV=e=>YV(e/100)*100,QV={br:YV,d:YV,bl:ZV,dl:ZV,mtp:ZV,nor:(e,t)=>{let n=e;return t.version>=2&&(e instanceof iV&&typeof e.value==`string`?n=new iV([e]):typeof e==`string`&&(n=[e])),XV(n,t)},rtp:ZV,tb:YV},$V=`request`,eH=`response`,tH=`ab.bg.bl.br.bs.bsd.cdn.cid.cs.df.ec.lab.lb.ltc.msd.mtp.pb.pr.pt.sf.sid.sn.st.sta.tab.tb.tbl.tpb.ts.v`.split(`.`),nH=[`e`],rH=/^[a-zA-Z0-9-.]+-[a-zA-Z0-9-.]+$/;function iH(e){return rH.test(e)}function aH(e){return tH.includes(e)||nH.includes(e)||iH(e)}var oH=[`d`,`dl`,`nor`,`ot`,`rtp`,`su`];function sH(e){return tH.includes(e)||oH.includes(e)||iH(e)}var cH=[`cmsdd`,`cmsds`,`rc`,`smrt`,`ttfb`,`ttfbb`,`ttlb`,`url`];function lH(e){return tH.includes(e)||oH.includes(e)||cH.includes(e)||iH(e)}var uH=[`bl`,`br`,`bs`,`cid`,`d`,`dl`,`mtp`,`nor`,`nrr`,`ot`,`pr`,`rtp`,`sf`,`sid`,`st`,`su`,`tb`,`v`];function dH(e){return uH.includes(e)||iH(e)}var fH={[eH]:lH,[qV]:aH,[$V]:sH};function pH(e,t={}){let n={};if(typeof e!=`object`||!e)return n;let r=t.version||e.v||1,i=t.reportingMode||$V,a=r===1?dH:fH[i],o=Object.keys(e).filter(a),s=t.filter;typeof s==`function`&&(o=o.filter(s));let c=i===eH||i===qV;c&&!o.includes(`ts`)&&o.push(`ts`),r>1&&!o.includes(`v`)&&o.push(`v`);let l=qN({},QV,t.formatters),u={version:r,reportingMode:i,baseUrl:t.baseUrl};return o.sort().forEach(t=>{let i=e[t],a=l[t];if(typeof a==`function`&&(i=a(i,u)),t===`v`){if(r===1)return;i=r}(t!=`pr`||i!==1)&&(c&&t===`ts`&&!q(i)&&(i=Date.now()),KV(i)&&(GV(t)&&typeof i==`string`&&(i=new lV(i)),n[t]=i))}),n}function mH(e,t={}){let n={};if(!e)return n;let r=WV(pH(e,t),t?.customHeaderMap);return Object.entries(r).reduce((e,[t,n])=>{let r=IV(n,{whitespace:!1});return r&&(e[t]=r),e},n)}function hH(e,t,n){return qN(e,mH(t,n))}var gH=`CMCD`;function _H(e,t={}){return e?IV(pH(e,t),{whitespace:!1}):``}function vH(e,t={}){if(!e)return``;let n=_H(e,t);return encodeURIComponent(n)}function yH(e,t={}){return e?`${gH}=${vH(e,t)}`:``}var bH=/CMCD=[^&#]+/;function xH(e,t,n){let r=yH(t,n);return r?bH.test(e)?e.replace(bH,r):`${e}${e.includes(`?`)?`&`:`?`}${r}`:e}var SH=class{constructor(e){this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.includeKeys=void 0,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=()=>{this.initialized&&(this.starved=!0),this.buffering=!0},this.onPlaying=()=>{this.initialized||=!0,this.buffering=!1},this.applyPlaylistData=e=>{try{this.apply(e,{ot:nV.MANIFEST,su:!this.initialized})}catch(e){this.hls.logger.warn(`Could not generate manifest CMCD data.`,e)}},this.applyFragmentData=e=>{try{let{frag:t,part:n}=e,r=this.hls.levels[t.level],i=this.getObjectType(t),a={d:(n||t).duration*1e3,ot:i};(i===nV.VIDEO||i===nV.AUDIO||i==nV.MUXED)&&(a.br=r.bitrate/1e3,a.tb=this.getTopBandwidth(i)/1e3,a.bl=this.getBufferLength(i));let o=n?this.getNextPart(n):this.getNextFrag(t);o!=null&&o.url&&o.url!==t.url&&(a.nor=o.url),this.apply(e,a)}catch(e){this.hls.logger.warn(`Could not generate segment CMCD data.`,e)}},this.hls=e;let t=this.config=e.config,{cmcd:n}=t;n!=null&&(t.pLoader=this.createPlaylistLoader(),t.fLoader=this.createFragmentLoader(),this.sid=n.sessionId||e.sessionId,this.cid=n.contentId,this.useHeaders=n.useHeaders===!0,this.includeKeys=n.includeKeys,this.registerListeners())}registerListeners(){let e=this.hls;
vendor: 10,258 bytes, line 1818
1818e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHED,this.onMediaDetached,this),e.on(Y.BUFFER_CREATED,this.onBufferCreated,this)}unregisterListeners(){let e=this.hls;e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHED,this.onMediaDetached,this),e.off(Y.BUFFER_CREATED,this.onBufferCreated,this)}destroy(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null,this.onWaiting=this.onPlaying=this.media=null}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener(`waiting`,this.onWaiting),this.media.addEventListener(`playing`,this.onPlaying)}onMediaDetached(){this.media&&=(this.media.removeEventListener(`waiting`,this.onWaiting),this.media.removeEventListener(`playing`,this.onPlaying),null)}onBufferCreated(e,t){this.audioBuffer=t.tracks.audio?.buffer,this.videoBuffer=t.tracks.video?.buffer}createData(){return{v:1,sf:rV.HLS,sid:this.sid,cid:this.cid,pr:this.media?.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}}apply(e,t={}){qN(t,this.createData());let n=t.ot===nV.INIT||t.ot===nV.VIDEO||t.ot===nV.MUXED;this.starved&&n&&(t.bs=!0,t.su=!0,this.starved=!1),t.su??(t.su=this.buffering);let{includeKeys:r}=this;r&&(t=Object.keys(t).reduce((e,n)=>(r.includes(n)&&(e[n]=t[n]),e),{}));let i={baseUrl:e.url};this.useHeaders?(e.headers||={},hH(e.headers,t,i)):e.url=xH(e.url,t,i)}getNextFrag(e){let t=this.hls.levels[e.level]?.details;if(t){let n=e.sn-t.startSN;return t.fragments[n+1]}}getNextPart(e){var t;let{index:n,fragment:r}=e,i=(t=this.hls.levels[r.level])==null||(t=t.details)==null?void 0:t.partList;if(i){let{sn:e}=r;for(let t=i.length-1;t>=0;t--){let r=i[t];if(r.index===n&&r.fragment.sn===e)return i[t+1]}}}getObjectType(e){let{type:t}=e;if(t===`subtitle`)return nV.TIMED_TEXT;if(e.sn===`initSegment`)return nV.INIT;if(t===`audio`)return nV.AUDIO;if(t===`main`)return this.hls.audioTracks.length?nV.VIDEO:nV.MUXED}getTopBandwidth(e){let t=0,n,r=this.hls;if(e===nV.AUDIO)n=r.audioTracks;else{let e=r.maxAutoLevel,t=e>-1?e+1:r.levels.length;n=r.levels.slice(0,t)}return n.forEach(e=>{e.bitrate>t&&(t=e.bitrate)}),t>0?t:NaN}getBufferLength(e){let t=this.media,n=e===nV.AUDIO?this.audioBuffer:this.videoBuffer;return!n||!t?NaN:$I.bufferInfo(n,t.currentTime,this.config.maxBufferHole).len*1e3}createPlaylistLoader(){let{pLoader:e}=this.config,t=this.applyPlaylistData,n=e||this.config.loader;return class{constructor(e){this.loader=void 0,this.loader=new n(e)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(e,n,r){t(e),this.loader.load(e,n,r)}}}createFragmentLoader(){let{fLoader:e}=this.config,t=this.applyFragmentData,n=e||this.config.loader;return class{constructor(e){this.loader=void 0,this.loader=new n(e)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(e,n,r){t(e),this.loader.load(e,n,r)}}}},CH=3e5,wH=class extends QN{constructor(e){super(`content-steering`,e.logger),this.hls=void 0,this.loader=null,this.uri=null,this.pathwayId=`.`,this._pathwayPriority=null,this.timeToLoad=300,this.reloadTimer=-1,this.updated=0,this.started=!1,this.enabled=!0,this.levels=null,this.audioTracks=null,this.subtitleTracks=null,this.penalizedPathways={},this.hls=e,this.registerListeners()}registerListeners(){let e=this.hls;e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let e=this.hls;e&&(e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.ERROR,this.onError,this))}pathways(){return(this.levels||[]).reduce((e,t)=>(e.indexOf(t.pathwayId)===-1&&e.push(t.pathwayId),e),[])}get pathwayPriority(){return this._pathwayPriority}set pathwayPriority(e){this.updatePathwayPriority(e)}startLoad(){if(this.started=!0,this.clearTimeout(),this.enabled&&this.uri){if(this.updated){let e=this.timeToLoad*1e3-(performance.now()-this.updated);if(e>0){this.scheduleRefresh(this.uri,e);return}}this.loadSteeringManifest(this.uri)}}stopLoad(){this.started=!1,this.loader&&=(this.loader.destroy(),null),this.clearTimeout()}clearTimeout(){this.reloadTimer!==-1&&(self.clearTimeout(this.reloadTimer),this.reloadTimer=-1)}destroy(){this.unregisterListeners(),this.stopLoad(),this.hls=null,this.levels=this.audioTracks=this.subtitleTracks=null}removeLevel(e){let t=this.levels;t&&(this.levels=t.filter(t=>t!==e))}onManifestLoading(){this.stopLoad(),this.enabled=!0,this.timeToLoad=300,this.updated=0,this.uri=null,this.pathwayId=`.`,this.levels=this.audioTracks=this.subtitleTracks=null}onManifestLoaded(e,t){let{contentSteering:n}=t;n!==null&&(this.pathwayId=n.pathwayId,this.uri=n.uri,this.started&&this.startLoad())}onManifestParsed(e,t){this.audioTracks=t.audioTracks,this.subtitleTracks=t.subtitleTracks}onError(e,t){let{errorAction:n}=t;if(n?.action===EI.SendAlternateToPenaltyBox&&n.flags===DI.MoveAllAlternatesMatchingHost){let e=this.levels,r=this._pathwayPriority,i=this.pathwayId;if(t.context){let{groupId:n,pathwayId:r,type:a}=t.context;n&&e?i=this.getPathwayForGroupId(n,a,i):r&&(i=r)}i in this.penalizedPathways||(this.penalizedPathways[i]=performance.now()),!r&&e&&(r=this.pathways()),r&&r.length>1&&(this.updatePathwayPriority(r),n.resolved=this.pathwayId!==i),t.details===J.BUFFER_APPEND_ERROR&&!t.fatal?n.resolved=!0:n.resolved||this.warn(`Could not resolve ${t.details} ("${t.error.message}") with content-steering for Pathway: ${i} levels: ${e&&e.length} priorities: ${YF(r)} penalized: ${YF(this.penalizedPathways)}`)}}filterParsedLevels(e){this.levels=e;let t=this.getLevelsForPathway(this.pathwayId);if(t.length===0){let n=e[0].pathwayId;this.log(`No levels found in Pathway ${this.pathwayId}. Setting initial Pathway to "${n}"`),t=this.getLevelsForPathway(n),this.pathwayId=n}return t.length!==e.length&&this.log(`Found ${t.length}/${e.length} levels in Pathway "${this.pathwayId}"`),t}getLevelsForPathway(e){return this.levels===null?[]:this.levels.filter(t=>e===t.pathwayId)}updatePathwayPriority(e){this._pathwayPriority=e;let t,n=this.penalizedPathways,r=performance.now();Object.keys(n).forEach(e=>{r-n[e]>CH&&delete n[e]});for(let r=0;r<e.length;r++){let i=e[r];if(i in n)continue;if(i===this.pathwayId)return;let a=this.hls.nextLoadLevel,o=this.hls.levels[a];if(t=this.getLevelsForPathway(i),t.length>0){this.log(`Setting Pathway to "${i}"`),this.pathwayId=i,gR(t),this.hls.trigger(Y.LEVELS_UPDATED,{levels:t});let e=this.hls.levels[a];o&&e&&this.levels&&(e.attrs[`STABLE-VARIANT-ID`]!==o.attrs[`STABLE-VARIANT-ID`]&&e.bitrate!==o.bitrate&&this.log(`Unstable Pathways change from bitrate ${o.bitrate} to ${e.bitrate}`),this.hls.nextLoadLevel=a);break}}}getPathwayForGroupId(e,t,n){let r=this.getLevelsForPathway(n).concat(this.levels||[]);for(let n=0;n<r.length;n++)if(t===HN.AUDIO_TRACK&&r[n].hasAudioGroup(e)||t===HN.SUBTITLE_TRACK&&r[n].hasSubtitleGroup(e))return r[n].pathwayId;return n}clonePathways(e){let t=this.levels;if(!t)return;let n={},r={};e.forEach(e=>{let{ID:i,"BASE-ID":a,"URI-REPLACEMENT":o}=e;if(t.some(e=>e.pathwayId===i))return;let s=this.getLevelsForPathway(a).map(e=>{let t=new sL(e.attrs);t[`PATHWAY-ID`]=i;let a=t.AUDIO&&`${t.AUDIO}_clone_${i}`,s=t.SUBTITLES&&`${t.SUBTITLES}_clone_${i}`;a&&(n[t.AUDIO]=a,t.AUDIO=a),s&&(r[t.SUBTITLES]=s,t.SUBTITLES=s);let c=EH(e.uri,t[`STABLE-VARIANT-ID`],`PER-VARIANT-URIS`,o),l=new WF({attrs:t,audioCodec:e.audioCodec,bitrate:e.bitrate,height:e.height,name:e.name,url:c,videoCodec:e.videoCodec,width:e.width});if(e.audioGroups)for(let t=1;t<e.audioGroups.length;t++)l.addGroupId(`audio`,`${e.audioGroups[t]}_clone_${i}`);if(e.subtitleGroups)for(let t=1;t<e.subtitleGroups.length;t++)l.addGroupId(`text`,`${e.subtitleGroups[t]}_clone_${i}`);return l});t.push(...s),TH(this.audioTracks,n,o,i),TH(this.subtitleTracks,r,o,i)})}loadSteeringManifest(e){let t=this.hls.config,n=t.loader;this.loader&&this.loader.destroy(),this.loader=new n(t);let r;try{r=new self.URL(e)}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest URI: ${e}`);return}if(r.protocol!==`data:`){let e=(this.hls.bandwidthEstimate||t.abrEwmaDefaultEstimate)|0;r.searchParams.set(`_HLS_pathway`,this.pathwayId),r.searchParams.set(`_HLS_throughput`,``+e)}let i={responseType:`json`,url:r.href},a=t.steeringManifestLoadPolicy.default,o=a.errorRetry||a.timeoutRetry||{},s={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:o.maxNumRetry||0,retryDelay:o.retryDelayMs||0,maxRetryDelay:o.maxRetryDelayMs||0};this.log(`Requesting steering manifest: ${r}`),this.loader.load(i,s,{onSuccess:(e,t,n,i)=>{this.log(`Loaded steering manifest: "${r}"`);let a=e.data;if(a?.VERSION!==1){this.log(`Steering VERSION ${a.VERSION} not supported!`);return}this.updated=performance.now(),this.timeToLoad=a.TTL;let{"RELOAD-URI":o,"PATHWAY-CLONES":s,"PATHWAY-PRIORITY":c}=a;if(o)try{this.uri=new self.URL(o,r).href}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest RELOAD-URI: ${o}`);return}this.scheduleRefresh(this.uri||n.url),s&&this.clonePathways(s);let l={steeringManifest:a,url:r.toString()};this.hls.trigger(Y.STEERING_MANIFEST_LOADED,l),c&&this.updatePathwayPriority(c)},onError:(e,t,n,r)=>{if(this.log(`Error loading steering manifest: ${e.code} ${e.text} (${t.url})`),this.stopLoad(),e.code===410){this.enabled=!1,this.log(`Steering manifest ${t.url} no longer available`);return}let i=this.timeToLoad*1e3;if(e.code===429){let e=this.loader;if(typeof e?.getResponseHeader==`function`){let t=e.getResponseHeader(`Retry-After`);t&&(i=parseFloat(t)*1e3)}this.log(`Steering manifest ${t.url} rate limited`);return}this.scheduleRefresh(this.uri||t.url,i)},onTimeout:(e,t,n)=>{this.log(`Timeout loading steering manifest (${t.url})`),this.scheduleRefresh(this.uri||t.url)}})}scheduleRefresh(e,t=this.timeToLoad*1e3){this.clearTimeout(),this.reloadTimer=self.setTimeout(()=>{let t=this.hls?.media;if(t&&!t.ended){this.loadSteeringManifest(e);return}this.scheduleRefresh(e,this.timeToLoad*1e3)},t)}};function TH(e,t,n,r){e&&Object.keys(t).forEach(i=>
1818{let a=e.filter(e=>e.groupId===i).map(e=>{let a=qN({},e);return a.details=void 0,a.attrs=new sL(a.attrs),a.url=a.attrs.URI=EH(e.url,e.attrs[`STABLE-RENDITION-ID`],`PER-RENDITION-URIS`,n),a.groupId=a.attrs[`GROUP-ID`]=t[i],a.attrs[`PATHWAY-ID`]=r,a});e.push(...a)})}function EH(e,t,n,r){let{HOST:i,PARAMS:a,[n]:o}=r,s;t&&(s=o?.[t],s&&(e=s));let c=new self.URL(e);return i&&!s&&(c.host=i),a&&Object.keys(a).sort().forEach(e=>{e&&c.searchParams.set(e,a[e])}),c.href}var DH=class e extends QN{constructor(t){super(`eme`,t.logger),this.hls=void 0,this.config=void 0,this.media=null,this.mediaResolved=void 0,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.mediaKeys=null,this.setMediaKeysQueue=e.CDMCleanupPromise?[e.CDMCleanupPromise]:[],this.bannedKeyIds={},this.onMediaEncrypted=e=>{let{initDataType:t,initData:n}=e,r=`"${e.type}" event: init data type: "${t}"`;if(this.debug(r),n!==null){if(!this.keyFormatPromise){let e=Object.keys(this.keySystemAccessPromises);e.length||(e=OL(this.config));let t=e.map(DL).filter(e=>!!e);this.keyFormatPromise=this.getKeyFormatPromise(t)}this.keyFormatPromise.then(i=>{let a=EL(i);if(t!==`sinf`||a!==wL.FAIRPLAY){this.log(`Ignoring "${e.type}" event with init data type: "${t}" for selected key-system ${a}`);return}let o;try{let e=kP(new Uint8Array(n)),t=qP(vL(JSON.parse(e).sinf));if(!t)throw Error(`'schm' box missing or not cbcs/cenc with schi > tenc`);o=new Uint8Array(t.subarray(8,24))}catch(e){this.warn(`${r} Failed to parse sinf: ${e}`);return}let s=dP(o),{keyIdToKeySessionPromise:c,mediaKeySessions:l}=this,u=c[s];for(let e=0;e<l.length;e++){let r=l[e],i=r.decryptdata;if(!i.keyId)continue;let a=dP(i.keyId);if(mL(o,i.keyId)||i.uri.replace(/-/g,``).indexOf(s)!==-1){if(u=c[a],!u)continue;if(i.pssh)break;delete c[a],i.pssh=new Uint8Array(n),i.keyId=o,u=c[s]=u.then(()=>this.generateRequestWithPreferredKeySession(r,t,n,`encrypted-event-key-match`)),u.catch(e=>this.handleError(e));break}}u||this.handleError(Error(`Key ID ${s} not encountered in playlist. Key-system sessions ${l.length}.`))}).catch(e=>this.handleError(e))}},this.onWaitingForKey=e=>{this.log(`"${e.type}" event`)},this.hls=t,this.config=t.config,this.registerListeners()}destroy(){this.onDestroying(),this.onMediaDetached();let e=this.config;e.requestMediaKeySystemAccessFunc=null,e.licenseXhrSetup=e.licenseResponseCallback=void 0,e.drmSystems=e.drmSystemOptions={},this.hls=this.config=this.keyIdToKeySessionPromise=null,this.onMediaEncrypted=this.onWaitingForKey=null}
1818registerListeners(){this.hls.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(Y.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(Y.MANIFEST_LOADED,this.onManifestLoaded,this),this.hls.on(Y.DESTROYING,this.onDestroying,this)}unregisterListeners(){this.hls.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(Y.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(Y.MANIFEST_LOADED,this.onManifestLoaded,this),this.hls.off(Y.DESTROYING,this.onDestroying,this)}getLicenseServerUrl(e){let{drmSystems:t,widevineLicenseUrl:n}=this.config,r=t?.[e];if(r)return r.licenseUrl;if(e===wL.WIDEVINE&&n)return n}getLicenseServerUrlOrThrow(e){let t=this.getLicenseServerUrl(e);if(t===void 0)throw Error(`no license server URL configured for key-system "${e}"`);return t}getServerCertificateUrl(e){let{drmSystems:t}=this.config,n=t?.[e];if(n)return n.serverCertificateUrl;this.log(`No Server Certificate in config.drmSystems["${e}"]`)}attemptKeySystemAccess(e){let t=this.hls.levels,n=(e,t,n)=>!!e&&n.indexOf(e)===t,r=t.map(e=>e.audioCodec).filter(n),i=t.map(e=>e.videoCodec).filter(n);return r.length+i.length===0&&i.push(`avc1.42e01e`),new Promise((t,n)=>{let a=e=>{let o=e.shift();this.getMediaKeysPromise(o,r,i).then(e=>t({keySystem:o,mediaKeys:e})).catch(t=>{e.length?a(e):t instanceof AH?n(t):n(new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_NO_ACCESS,error:t,fatal:!0},t.message))})};a(e)})}requestMediaKeySystemAccess(e,t){let{requestMediaKeySystemAccessFunc:n}=this.config;if(typeof n!=`function`){let e=`Configured requestMediaKeySystemAccess is not a function ${n}`;return kL===null&&self.location.protocol===`http:`&&(e=`navigator.requestMediaKeySystemAccess is not available over insecure protocol ${location.protocol}`),Promise.reject(Error(e))}return n(e,t)}getMediaKeysPromise(e,t,n){let r=AL(e,t,n,this.config.drmSystemOptions||{}),i=this.keySystemAccessPromises[e],a=i?.keySystemAccess;if(!a){this.log(`Requesting encrypted media "${e}" key-system access with config: ${YF(r)}`),a=this.requestMediaKeySystemAccess(e,r);let t=i=this.keySystemAccessPromises[e]={keySystemAccess:a};return a.catch(t=>{this.log(`Failed to obtain access to key-system "${e}": ${t}`)}),a.then(n=>{this.log(`Access for key-system "${n.keySystem}" obtained`);let r=this.fetchServerCertificate(e);this.log(`Create media-keys for "${e}"`);let i=t.mediaKeys=n.createMediaKeys().then(n=>(this.log(`Media-keys created for "${e}"`),t.hasMediaKeys=!0,r.then(t=>t?this.setMediaKeysServerCertificate(n,e,t):n)));return i.catch(t=>{this.error(`Failed to create media-keys for "${e}"}: ${t}`)}),i})}return a.then(()=>i.mediaKeys)}createMediaKeySessionContext({decryptdata:e,keySystem:t,mediaKeys:n}){this.log(`Creating key-system session "${t}" keyId: ${dP(e.keyId||[])} keyUri: ${e.uri}`);let r={decryptdata:e,keySystem:t,mediaKeys:n,mediaKeysSession:n.createSession(),keyStatus:`status-pending`};return this.mediaKeySessions.push(r),r}renewKeySession(e){let t=e.decryptdata;if(t.pssh){let n=this.createMediaKeySessionContext(e),r=OH(t);this.keyIdToKeySessionPromise[r]=this.generateRequestWithPreferredKeySession(n,`cenc`,t.pssh.buffer,`expired`)}else this.warn(`Could not renew expired session. Missing pssh initData.`);this.removeSession(e)}updateKeySession(e,t){let n=e.mediaKeysSession;return this.log(`Updating key-session "${n.sessionId}" for keyId ${dP(e.decryptdata.keyId||[])} 1819 } (data length: ${t.byteLength})`),n.update(t)}getSelectedKeySystemFormats(){return Object.keys(this.keySystemAccessPromises).map(e=>({keySystem:e,hasMediaKeys:this.keySystemAccessPromises[e].hasMediaKeys})).filter(({hasMediaKeys:e})=>!!e).map(({keySystem:e})=>DL(e)).filter(e=>!!e)}getKeySystemAccess(e){return this.getKeySystemSelectionPromise(e).then(({keySystem:e,mediaKeys:t})=>this.attemptSetMediaKeys(e,t))}selectKeySystem(e){return new Promise((t,n)=>{this.getKeySystemSelectionPromise(e).then(({keySystem:e})=>{let r=DL(e);r?t(r):n(Error(`Unable to find format for key-system "${e}"`))}).catch(n)})}selectKeySystemFormat(e){let t=Object.keys(e.levelkeys||{});return this.keyFormatPromise||=(this.log(`Selecting key-system from fragment (sn: ${e.sn} ${e.type}: ${e.level}) key formats ${t.join(`, `)}`),this.getKeyFormatPromise(t)),this.keyFormatPromise}getKeyFormatPromise(e){let t=OL(this.config),n=e.map(EL).filter(e=>!!e&&t.indexOf(e)!==-1);return this.selectKeySystem(n)}getKeyStatus(e){let{mediaKeySessions:t}=this;for(let n=0;n<t.length;n++){let r=kH(e,t[n]);if(r)return r}}loadKey(e){let t=e.keyInfo.decryptdata,n=OH(t),r=this.bannedKeyIds[n];if(r||this.getKeyStatus(t)===`internal-error`){let n=jH(r||`internal-error`,t);return this.handleError(n,e.frag),Promise.reject(n)}let i=`(keyId: ${n} format: "${t.keyFormat}" method: ${t.method} uri: ${t.uri})`;this.log(`Starting session for key ${i}`);let a=this.keyIdToKeySessionPromise[n];if(!a){let r=this.getKeySystemForKeyPromise(t).then(({keySystem:n,mediaKeys:r})=>(this.throwIfDestroyed(),this.log(`Handle encrypted media sn: ${e.frag.sn} ${e.frag.type}: ${e.frag.level} using key ${i}`),this.attemptSetMediaKeys(n,r).then(()=>(this.throwIfDestroyed(),this.createMediaKeySessionContext({keySystem:n,mediaKeys:r,decryptdata:t}))))).then(e=>{let n=t.pssh?t.pssh.buffer:null;return this.generateRequestWithPreferredKeySession(e,`cenc`,n,`playlist-key`)});return r.catch(t=>this.handleError(t,e.frag)),this.keyIdToKeySessionPromise[n]=r,r}return a.catch(n=>{if(n instanceof AH){let r=YN({},n.data);this.getKeyStatus(t)===`internal-error`&&(r.decryptdata=t);let i=new AH(r,n.message);this.handleError(i,e.frag)}}),a}throwIfDestroyed(e=`Invalid state`){if(!this.hls)throw Error(`invalid state`)}handleError(e,t){if(this.hls)if(e instanceof AH){t&&(e.data.frag=t);let n=e.data.decryptdata;this.error(`${e.message}${n?` (${dP(n.keyId||[])})`:``}`),this.hls.trigger(Y.ERROR,e.data)}else this.error(e.message),this.hls.trigger(Y.ERROR,{type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_NO_KEYS,error:e,fatal:!0})}
1819getKeySystemForKeyPromise(e){let t=OH(e),n=this.keyIdToKeySessionPromise[t];if(!n){let t=EL(e.keyFormat),n=t?[t]:OL(this.config);return this.attemptKeySystemAccess(n)}return n}getKeySystemSelectionPromise(e){if(e.length||(e=OL(this.config)),e.length===0)throw new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},`Missing key-system license configuration options ${YF({drmSystems:this.config.drmSystems})}`);return this.attemptKeySystemAccess(e)}attemptSetMediaKeys(e,t){if(this.mediaResolved=void 0,this.mediaKeys===t)return Promise.resolve();let n=this.setMediaKeysQueue.slice();this.log(`Setting media-keys for "${e}"`);let r=Promise.all(n).then(()=>this.media?this.media.setMediaKeys(t):new Promise((e,n)=>{this.mediaResolved=()=>{if(this.mediaResolved=void 0,!this.media)return n(Error(`Attempted to set mediaKeys without media element attached`));this.mediaKeys=t,this.media.setMediaKeys(t).then(e).catch(n)}}));return this.mediaKeys=t,this.setMediaKeysQueue.push(r),r.then(()=>{this.log(`Media-keys set for "${e}"`),n.push(r),this.setMediaKeysQueue=this.setMediaKeysQueue.filter(e=>n.indexOf(e)===-1)})}generateRequestWithPreferredKeySession(e,t,n,r){var i;let a=(i=this.config.drmSystems)==null||(i=i[e.keySystem])==null?void 0:i.generateRequest;if(a)try{let r=a.call(this.hls,t,n,e);if(!r)throw Error(`Invalid response from configured generateRequest filter`);t=r.initDataType,n=r.initData?r.initData:null,e.decryptdata.pssh=n?new Uint8Array(n):null}catch(e){if(this.warn(e.message),this.hls&&this.hls.config.debug)throw e}if(n===null)return this.log(`Skipping key-session request for "${r}" (no initData)`),Promise.resolve(e);let o=OH(e.decryptdata),s=e.decryptdata.uri;this.log(`Generating key-session request for "${r}" keyId: ${o} URI: ${s} (init data type: ${t} length: ${n.byteLength})`);let c=new IR,l=e._onmessage=t=>{let n=e.mediaKeysSession;if(!n){c.emit(`error`,Error(`invalid state`));return}let{messageType:r,message:i}=t;this.log(`"${r}" message event for session "${n.sessionId}" message size: ${i.byteLength}`),r===`license-request`||r===`license-renewal`?this.renewLicense(e,i).catch(e=>{c.eventNames().length?c.emit(`error`,e):this.handleError(e)}):r===`license-release`?e.keySystem===wL.FAIRPLAY&&this.updateKeySession(e,yL(`acknowledged`)).then(()=>this.removeSession(e)).catch(e=>this.handleError(e)):this.warn(`unhandled media key message type "${r}"`)},u=(e,t)=>{t.keyStatus=e;let n;e.startsWith(`usable`)?c.emit(`resolved`):e===`internal-error`||e===`output-restricted`||e===`output-downscaled`?n=jH(e,t.decryptdata):e===`expired`?n=Error(`key expired (keyId: ${o})`):e===`released`?n=Error(`key released`):e===`status-pending`||this.warn(`unhandled key status change "${e}" (keyId: ${o}
1819)`),n&&(c.eventNames().length?c.emit(`error`,n):this.handleError(n))},d=e._onkeystatuseschange=t=>{if(!e.mediaKeysSession){c.emit(`error`,Error(`invalid state`));return}let n=this.getKeyStatuses(e);if(!Object.keys(n).some(e=>n[e]!==`status-pending`))return;if(n[o]===`expired`){this.log(`Expired key ${YF(n)} in key-session "${e.mediaKeysSession.sessionId}"`),this.renewKeySession(e);return}let r=n[o];if(r)u(r,e);else{var i;let t=1e3;e.keyStatusTimeouts||={},(i=e.keyStatusTimeouts)[o]||(i[o]=self.setTimeout(()=>{if(!e.mediaKeysSession||!this.mediaKeys)return;let n=this.getKeyStatus(e.decryptdata);if(n&&n!==`status-pending`)return this.log(`No status for keyId ${o} in key-session "${e.mediaKeysSession.sessionId}". Using session key-status ${n} from other session.`),u(n,e);this.log(`key status for ${o} in key-session "${e.mediaKeysSession.sessionId}" timed out after ${t}ms`),r=`internal-error`,u(r,e)},t)),this.log(`No status for keyId ${o} (${YF(n)}).`)}};ER(e.mediaKeysSession,`message`,l),ER(e.mediaKeysSession,`keystatuseschange`,d);let f=new Promise((e,t)=>{c.on(`error`,t),c.on(`resolved`,e)});return e.mediaKeysSession.generateRequest(t,n).then(()=>{this.log(`Request generated for key-session "${e.mediaKeysSession.sessionId}" keyId: ${o} URI: ${s}`)}).catch(t=>{throw new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_NO_SESSION,error:t,decryptdata:e.decryptdata,fatal:!1},`Error generating key-session request: ${t}`)}).then(()=>f).catch(t=>(c.removeAllListeners(),this.removeSession(e).then(()=>{throw t}))).then(()=>(c.removeAllListeners(),e))}getKeyStatuses(e){let t={};return e.mediaKeysSession.keyStatuses.forEach((n,r)=>{if(typeof r==`string`&&typeof n==`object`){let e=r;r=n,n=e}let i=`buffer`in r?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):new Uint8Array(r);if(e.keySystem===wL.PLAYREADY&&i.length===16){let e=dP(i);t[e]=n,xL(i)}let a=dP(i);n===`internal-error`&&(this.bannedKeyIds[a]=n),this.log(`key status change "${n}" for keyStatuses keyId: ${a} key-session "${e.mediaKeysSession.sessionId}"`),t[a]=n}),t}fetchServerCertificate(e){let t=this.config,n=t.loader,r=new n(t),i=this.getServerCertificateUrl(e);return i?(this.log(`Fetching server certificate for "${e}"`),new Promise((n,a)=>{let o={responseType:`arraybuffer`,url:i},s=t.certLoadPolicy.default,c={loadPolicy:s,timeout:s.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0};r.load(o,c,{onSuccess:(e,t,r,i)=>{n(e.data)},onError:(t,n,r,s)=>{a(new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:YN({url:o.url,data:void 0},t)},`"${e}" certificate request failed (${i}). Status: ${t.code} (${t.text})`))},onTimeout:(t,n,r)=>{a(new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:{url:o.url,data:void 0}},`"${e}" certificate request timed out (${i})`))},onAbort:(e,t,n)=>{a(Error(`aborted`))}})})):Promise.resolve()}setMediaKeysServerCertificate(e,t,n){return new Promise((r,i)=>{e.setServerCertificate(n).then(i=>{this.log(`setServerCertificate ${i?`success`:`not supported by CDM`} (${n.byteLength}) on "${t}"`),r(e)}).catch(e=>{i(new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:e,fatal:!0},e.message))})})}renewLicense(e,t){return this.requestLicense(e,new Uint8Array(t)).then(t=>this.updateKeySession(e,new Uint8Array(t)).catch(t=>{throw new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_SESSION_UPDATE_FAILED,decryptdata:e.decryptdata,error:t,fatal:!1},t.message)}))}unpackPlayReadyKeyMessage(e,t){let n=String.fromCharCode.apply(null,new Uint16Array(t.buffer));if(!n.includes(`PlayReadyKeyMessage`))return e.setRequestHeader(`Content-Type`,`text/xml; charset=utf-8`),t;let r=new DOMParser().parseFromString(n,`application/xml`),i=r.querySelectorAll(`HttpHeader`);if(i.length>0){let t;for(let n=0,r=i.length;n<r;n++){t=i[n];let r=t.querySelector(`name`)?.textContent,a=t.querySelector(`value`)?.textContent;r&&a&&e.setRequestHeader(r,a)}}let a=r.querySelector(`Challenge`)?.textContent;
1819if(!a)throw Error(`Cannot find <Challenge> in key message`);return yL(atob(a))}setupLicenseXHR(e,t,n,r){let i=this.config.licenseXhrSetup;return i?Promise.resolve().then(()=>{if(!n.decryptdata)throw Error(`Key removed`);return i.call(this.hls,e,t,n,r)}).catch(a=>{if(!n.decryptdata)throw a;return e.open(`POST`,t,!0),i.call(this.hls,e,t,n,r)}).then(n=>(e.readyState||e.open(`POST`,t,!0),{xhr:e,licenseChallenge:n||r})):(e.open(`POST`,t,!0),Promise.resolve({xhr:e,licenseChallenge:r}))}requestLicense(e,t){let n=this.config.keyLoadPolicy.default;return new Promise((r,i)=>{let a=this.getLicenseServerUrlOrThrow(e.keySystem);this.log(`Sending license request to URL: ${a}`);let o=new XMLHttpRequest;o.responseType=`arraybuffer`,o.onreadystatechange=()=>{if(!this.hls||!e.mediaKeysSession)return i(Error(`invalid state`));if(o.readyState===4)if(o.status===200){this._requestLicenseFailureCount=0;let t=o.response;this.log(`License received ${t instanceof ArrayBuffer?t.byteLength:t}`);let n=this.config.licenseResponseCallback;if(n)try{t=n.call(this.hls,o,a,e)}catch(e){this.error(e)}r(t)}else{let s=n.errorRetry,c=s?s.maxNumRetry:0;if(this._requestLicenseFailureCount++,this._requestLicenseFailureCount>c||o.status>=400&&o.status<500)i(new AH({type:VN.KEY_SYSTEM_ERROR,details:J.KEY_SYSTEM_LICENSE_REQUEST_FAILED,decryptdata:e.decryptdata,fatal:!0,networkDetails:o,response:{url:a,data:void 0,code:o.status,text:o.statusText}},`License Request XHR failed (${a}). Status: ${o.status} (${o.statusText})`));else{let n=c-this._requestLicenseFailureCount+1;this.warn(`Retrying license request, ${n} attempts left`),this.requestLicense(e,t).then(r,i)}}},e.licenseXhr&&e.licenseXhr.readyState!==XMLHttpRequest.DONE&&e.licenseXhr.abort(),e.licenseXhr=o,this.setupLicenseXHR(o,a,e,t).then(({xhr:t,licenseChallenge:n})=>{e.keySystem==wL.PLAYREADY&&(n=this.unpackPlayReadyKeyMessage(t,n)),t.send(n)}).catch(i)})}onDestroying(){this.unregisterListeners(),this._clear()}onMediaAttached(e,t){if(!this.config.emeEnabled)return;let n=t.media;this.media=n,ER(n,`encrypted`,this.onMediaEncrypted),ER(n,`waitingforkey`,this.onWaitingForKey);let r=this.mediaResolved;r?r():this.mediaKeys=n.mediaKeys}onMediaDetached(){let e=this.media;e&&(DR(e,`encrypted`,this.onMediaEncrypted),DR(e,`waitingforkey`,this.onWaitingForKey),this.media=null,this.mediaKeys=null)}_clear(){var t;this._requestLicenseFailureCount=0,this.keyIdToKeySessionPromise={},this.bannedKeyIds={};let n=this.mediaResolved;if(n&&n(),!this.mediaKeys&&!this.mediaKeySessions.length)return;let r=this.media,i=this.mediaKeySessions.slice();this.mediaKeySessions=[],this.mediaKeys=null,FL.clearKeyUriToKeyIdMap();let a=i.length;e.CDMCleanupPromise=Promise.all(i.map(e=>this.removeSession(e)).concat((r==null||(t=r.setMediaKeys(null))==null?void 0:t.catch(e=>{this.log(`Could not clear media keys: ${e}`),this.hls&&this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR,fatal:!1,error:Error(`Could not clear media keys: ${e}`)})}))||Promise.resolve())).catch(e=>{this.log(`Could not close sessions and clear media keys: ${e}`),this.hls&&this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:Error(`Could not close sessions and clear media keys: ${e}`)})}).then(()=>{a&&this.log(`finished closing key sessions and clearing media keys`)})}onManifestLoading(){this._clear()}onManifestLoaded(e,{sessionKeys:t}){if(!(!t||!this.config.emeEnabled)&&!this.keyFormatPromise){let e=t.reduce((e,t)=>(e.indexOf(t.keyFormat)===-1&&e.push(t.keyFormat),e),[]);this.log(`Selecting key-system from session-keys ${e.join(`, `)}`),this.keyFormatPromise=this.getKeyFormatPromise(e)}}removeSession(e){let{mediaKeysSession:t,licenseXhr:n,decryptdata:r}=e;if(t){this.log(`Remove licenses and keys and close session "${t.sessionId}" keyId: ${dP(r?.keyId||[])}`),e._onmessage&&=(t.removeEventListener(`message`,e._onmessage),void 0),e._onkeystatuseschange&&=(t.removeEventListener(`keystatuseschange`,e._onkeystatuseschange),void 0),n&&n.readyState!==XMLHttpRequest.DONE&&n.abort(),e.mediaKeysSession=e.decryptdata=e.licenseXhr=void 0;let i=this.mediaKeySessions.indexOf(e);i>-1&&this.mediaKeySessions.splice(i,1);let{keyStatusTimeouts:a}=e;
1819a&&Object.keys(a).forEach(e=>self.clearTimeout(a[e]));let{drmSystemOptions:o}=this.config;return(ML(o)?new Promise((e,n)=>{self.setTimeout(()=>n(Error(`MediaKeySession.remove() timeout`)),8e3),t.remove().then(e).catch(n)}):Promise.resolve()).catch(e=>{this.log(`Could not remove session: ${e}`),this.hls&&this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR,fatal:!1,error:Error(`Could not remove session: ${e}`)})}).then(()=>t.close()).catch(e=>{this.log(`Could not close session: ${e}`),this.hls&&this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:Error(`Could not close session: ${e}`)})})}return Promise.resolve()}};DH.CDMCleanupPromise=void 0;function OH(e){if(!e)throw Error(`Could not read keyId of undefined decryptdata`);if(e.keyId===null)throw Error(`keyId is null`);return dP(e.keyId)}function kH(e,t){if(e.keyId&&t.mediaKeysSession.keyStatuses.has(e.keyId))return t.mediaKeysSession.keyStatuses.get(e.keyId);if(e.matches(t.decryptdata))return t.keyStatus}var AH=class extends Error{constructor(e,t){super(t),this.data=void 0,e.error||=Error(t),this.data=e,e.err=e.error}};function jH(e,t){let n=e===`output-restricted`,r=n?J.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:J.KEY_SYSTEM_STATUS_INTERNAL_ERROR;return new AH({type:VN.KEY_SYSTEM_ERROR,details:r,fatal:!1,decryptdata:t},n?`HDCP level output restricted`:`key status changed to "${e}"`)}var MH=class{constructor(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}setStreamController(e){this.streamController=e}
vendor: 15,091 bytes, line 1819
1819registerListeners(){this.hls.on(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListeners(){this.hls.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this)}destroy(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null}onMediaAttaching(e,t){let n=this.hls.config;if(n.capLevelOnFPSDrop){let e=t.media instanceof self.HTMLVideoElement?t.media:null;this.media=e,e&&typeof e.getVideoPlaybackQuality==`function`&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),n.fpsDroppedMonitoringPeriod)}}onMediaDetaching(){this.media=null}checkFPS(e,t,n){let r=performance.now();if(t){if(this.lastTime){let e=r-this.lastTime,i=n-this.lastDroppedFrames,a=t-this.lastDecodedFrames,o=1e3*i/e,s=this.hls;if(s.trigger(Y.FPS_DROP,{currentDropped:i,currentDecoded:a,totalDroppedFrames:n}),o>0&&i>s.config.fpsDroppedMonitoringThreshold*a){let e=s.currentLevel;s.logger.warn(`drop FPS ratio greater than max allowed value for currentLevel: `+e),e>0&&(s.autoLevelCapping===-1||s.autoLevelCapping>=e)&&(--e,s.trigger(Y.FPS_DROP_LEVEL_CAPPING,{level:e,droppedLevel:s.currentLevel}),s.autoLevelCapping=e,this.streamController.nextLevelSwitch())}}this.lastTime=r,this.lastDroppedFrames=n,this.lastDecodedFrames=t}}checkFPSInterval(){let e=this.media;if(e)if(this.isVideoPlaybackQualityAvailable){let t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)}};function NH(e,t){let n;try{n=new Event(`addtrack`)}catch{n=document.createEvent(`Event`),n.initEvent(`addtrack`,!1,!1)}n.track=e,t.dispatchEvent(n)}function PH(e,t){let n=e.mode;if(n===`disabled`&&(e.mode=`hidden`),e.cues&&!e.cues.getCueById(t.id))try{if(e.addCue(t),!e.cues.getCueById(t.id))throw Error(`addCue is failed for: ${t}`)}catch(n){oP.debug(`[texttrack-utils]: ${n}`);try{let n=new self.TextTrackCue(t.startTime,t.endTime,t.text);n.id=t.id,e.addCue(n)}catch(e){oP.debug(`[texttrack-utils]: Legacy TextTrackCue fallback failed: ${e}`)}}n===`disabled`&&(e.mode=n)}function FH(e,t){let n=e.mode;if(n===`disabled`&&(e.mode=`hidden`),e.cues)for(let n=e.cues.length;n--;)t&&e.cues[n].removeEventListener(`enter`,t),e.removeCue(e.cues[n]);n===`disabled`&&(e.mode=n)}function IH(e,t,n,r){let i=e.mode;if(i===`disabled`&&(e.mode=`hidden`),e.cues&&e.cues.length>0){let i=RH(e.cues,t,n);for(let t=0;t<i.length;t++)(!r||r(i[t]))&&e.removeCue(i[t])}i===`disabled`&&(e.mode=i)}function LH(e,t){if(t<=e[0].startTime)return 0;let n=e.length-1;if(t>e[n].endTime)return-1;let r=0,i=n,a;for(;r<=i;)if(a=Math.floor((i+r)/2),t<e[a].startTime)i=a-1;else if(t>e[a].startTime&&r<n)r=a+1;else return a;return e[r].startTime-t<t-e[i].startTime?r:i}function RH(e,t,n){let r=[],i=LH(e,t);if(i>-1)for(let a=i,o=e.length;a<o;a++){let i=e[a];if(i.startTime>=t&&i.endTime<=n)r.push(i);else if(i.startTime>n)return r}return r}function zH(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];(r.kind===`subtitles`||r.kind===`captions`)&&r.label&&t.push(e[n])}return t}var BH=class extends HB{constructor(e){super(e,`subtitle-track-controller`),this.media=null,this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0,this.queuedDefaultTrack=-1,this.useTextTrackPolling=!1,this.subtitlePollingInterval=-1,this._subtitleDisplay=!0,this.asyncPollTrackChange=()=>this.pollTrackChange(0),this.onTextTracksChanged=()=>{if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),!this.media||!this.hls.config.renderTextTracksNatively)return;let e=null,t=zH(this.media.textTracks);for(let n=0;n<t.length;n++)if(t[n].mode===`hidden`)e=t[n];else if(t[n].mode===`showing`){e=t[n];break}let n=this.findTrackForTextTrack(e);this.subtitleTrack!==n&&this.setSubtitleTrack(n)},this.registerListeners()}destroy(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.currentTrack=null,this.onTextTracksChanged=this.asyncPollTrackChange=null,super.destroy()}get subtitleDisplay(){return this._subtitleDisplay}set subtitleDisplay(e){this._subtitleDisplay=e,this.trackId>-1&&this.toggleTrackModes()}registerListeners(){let{hls:e}=this;e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.LEVEL_LOADING,this.onLevelLoading,this),e.on(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(Y.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.on(Y.ERROR,this.onError,this)}unregisterListeners(){let{hls:e}=this;e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.LEVEL_LOADING,this.onLevelLoading,this),e.off(Y.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(Y.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.off(Y.ERROR,this.onError,this)}onMediaAttached(e,t){this.media=t.media,this.media&&(this.queuedDefaultTrack>-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&`onchange`in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener(`change`,this.asyncPollTrackChange))}pollTrackChange(e){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.onTextTracksChanged,e)}onMediaDetaching(e,t){let n=this.media;if(!n)return;let r=!!t.transferMedia;self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||n.textTracks.removeEventListener(`change`,this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId),this.subtitleTrack=-1,this.media=null,!r&&zH(n.textTracks).forEach(e=>{FH(e)})}onManifestLoading(){this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0}onManifestParsed(e,t){this.tracks=t.subtitleTracks}onSubtitleTrackLoaded(e,t){let{id:n,groupId:r,details:i}=t,a=this.tracksInGroup[n];if(!a||a.groupId!==r){this.warn(`Subtitle track with id:${n} and group:${r} not found in active group ${a?.groupId}`);return}let o=a.details;a.details=t.details,this.log(`Subtitle track ${n} "${a.name}" lang:${a.lang} group:${r} loaded [${i.startSN}-${i.endSN}]`),n===this.trackId&&this.playlistLoaded(n,t,o)}onLevelLoading(e,t){this.switchLevel(t.level)}onLevelSwitching(e,t){this.switchLevel(t.level)}switchLevel(e){let t=this.hls.levels[e];if(!t)return;let n=t.subtitleGroups||null,r=this.groupIds,i=this.currentTrack;if(!n||r?.length!==n?.length||n!=null&&n.some(e=>r?.indexOf(e)===-1)){this.groupIds=n,this.trackId=-1,this.currentTrack=null;let e=this.tracks.filter(e=>!n||n.indexOf(e.groupId)!==-1);if(e.length)this.selectDefaultTrack&&!e.some(e=>e.default)&&(this.selectDefaultTrack=!1),e.forEach((e,t)=>{e.id=t});else if(!i&&!this.tracksInGroup.length)return;this.tracksInGroup=e;let t=this.hls.config.subtitlePreference;if(!i&&t){this.selectDefaultTrack=!1;let n=tI(t,e);if(n>-1)i=e[n];else{let e=tI(t,this.tracks);i=this.tracks[e]}}let r=this.findTrackId(i);r===-1&&i&&(r=this.findTrackId(null));let a={subtitleTracks:e};this.log(`Updating subtitle tracks, ${e.length} track(s) found in "${n?.join(`,`)}" group-id`),this.hls.trigger(Y.SUBTITLE_TRACKS_UPDATED,a),r!==-1&&this.trackId===-1&&this.setSubtitleTrack(r)}}findTrackId(e){let t=this.tracksInGroup,n=this.selectDefaultTrack;for(let r=0;r<t.length;r++){let i=t[r];if(!(n&&!i.default||!n&&!e)&&(!e||nI(i,e)))return r}if(e){for(let n=0;n<t.length;n++){let r=t[n];if(WB(e.attrs,r.attrs,[`LANGUAGE`,`ASSOC-LANGUAGE`,`CHARACTERISTICS`]))return n}for(let n=0;n<t.length;n++){let r=t[n];if(WB(e.attrs,r.attrs,[`LANGUAGE`]))return n}}return-1}findTrackForTextTrack(e){if(e){let t=this.tracksInGroup;for(let n=0;n<t.length;n++){let r=t[n];if(GB(r,e))return n}}return-1}onError(e,t){t.fatal||!t.context||t.context.type===HN.SUBTITLE_TRACK&&t.context.id===this.trackId&&(!this.groupIds||this.groupIds.indexOf(t.context.groupId)!==-1)&&this.checkRetry(t)}get allSubtitleTracks(){return this.tracks}get subtitleTracks(){return this.tracksInGroup}get subtitleTrack(){return this.trackId}set subtitleTrack(e){this.selectDefaultTrack=!1,this.setSubtitleTrack(e)}setSubtitleOption(e){if(this.hls.config.subtitlePreference=e,e){if(e.id===-1)return this.setSubtitleTrack(-1),null;let t=this.allSubtitleTracks;if(this.selectDefaultTrack=!1,t.length){let n=this.currentTrack;if(n&&nI(e,n))return n;let r=tI(e,this.tracksInGroup);if(r>-1){let e=this.tracksInGroup[r];return this.setSubtitleTrack(r),e}if(n)return null;{let n=tI(e,t);if(n>-1)return t[n]}}}return null}loadPlaylist(e){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentTrack)&&this.scheduleLoading(this.currentTrack,e)}loadingPlaylist(e,t){super.loadingPlaylist(e,t);let n=e.id,r=e.groupId,i=this.getUrlWithDirectives(e.url,t),a=e.details,o=a?.age;this.log(`Loading subtitle ${n} "${e.name}" lang:${e.lang} group:${r}${t?.msn===void 0?``:` at sn `+t.msn+` part `+t.part}${o&&a.live?` age `+o.toFixed(1)+(a.type&&` `+a.type||``):``} ${i}`),this.hls.trigger(Y.SUBTITLE_TRACK_LOADING,{url:i,id:n,groupId:r,deliveryDirectives:t||null,track:e})}toggleTrackModes(){let{media:e}=this;if(!e)return;let t=zH(e.textTracks),n=this.currentTrack,r;if(n&&(r=t.filter(e=>GB(n,e))[0],r||this.warn(`Unable to find subtitle TextTrack with name "${n.name}" and language "${n.lang}"`)),[].slice.call(t).forEach(e=>{e.mode!==`disabled`&&e!==r&&(e.mode=`disabled`)}),r){let e=this.subtitleDisplay?`showing`:`hidden`;r.mode!==e&&(r.mode=e)}}setSubtitleTrack(e){let t=this.tracksInGroup;if(!this.media){this.queuedDefaultTrack=e;return}if(e<-1||e>=t.length||!q(e)){this.warn(`Invalid subtitle track id: ${e}`);return}this.selectDefaultTrack=!1;let n=this.currentTrack,r=t[e]||null;if(this.trackId=e,this.currentTrack=r,this.toggleTrackModes(),!r){this.hls.trigger(Y.SUBTITLE_TRACK_SWITCH,{id:e});return}let i=!!r.details&&!r.details.live;if(e===this.trackId&&r===n&&i)return;this.log(`Switching to subtitle-track ${e}`+(r?` "${r.name}" lang:${r.lang} group:${r.groupId}`:``));let{id:a,groupId:o=``,name:s,type:c,url:l}=r;this.hls.trigger(Y.SUBTITLE_TRACK_SWITCH,{id:a,groupId:o,name:s,type:c,url:l});let u=this.switchParams(r.url,n?.details,r.details);this.loadPlaylist(u)}};function VH(){try{return crypto.randomUUID()}catch{try{let e=URL.createObjectURL(new Blob),t=e.toString();return URL.revokeObjectURL(e),t.slice(t.lastIndexOf(`/`)+1)}catch{let e=new Date().getTime();return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,t=>{let n=(e+Math.random()*16)%16|0;return e=Math.floor(e/16),(t==`x`?n:n&3|8).toString(16)})}}}function HH(e){let t=5381,n=e.length;for(;n;)t=t*33^e.charCodeAt(--n);return(t>>>0).toString()}var UH=.025,WH=function(e){return e[e.Point=0]=`Point`,e[e.Range=1]=`Range`,e}({});function GH(e,t,n){return`${e.identifier}-${n+1}-${HH(t)}`}var KH=class{constructor(e,t){this.base=void 0,this._duration=null,this._timelineStart=null,this.appendInPlaceDisabled=void 0,this.appendInPlaceStarted=void 0,this.dateRange=void 0,this.hasPlayed=!1,this.cumulativeDuration=0,this.resumeOffset=NaN,this.playoutLimit=NaN,this.restrictions={skip:!1,jump:!1},this.snapOptions={out:!1,in:!1},this.assetList=[],this.assetListLoader=void 0,this.assetListResponse=null,this.resumeAnchor=void 0,this.error=void 0,this.resetOnResume=void 0,this.base=t,this.dateRange=e,this.setDateRange(e)}setDateRange(e){this.dateRange=e,this.resumeOffset=e.attr.optionalFloat(`X-RESUME-OFFSET`,this.resumeOffset),this.playoutLimit=e.attr.optionalFloat(`X-PLAYOUT-LIMIT`,this.playoutLimit),this.restrictions=e.attr.enumeratedStringList(`X-RESTRICT`,this.restrictions),this.snapOptions=e.attr.enumeratedStringList(`X-SNAP`,this.snapOptions)}reset(){var e;this.appendInPlaceStarted=!1,(e=this.assetListLoader)==null||e.destroy(),this.assetListLoader=void 0,this.supplementsPrimary||(this.assetListResponse=null,this.assetList=[],this._duration=null)}isAssetPastPlayoutLimit(e){if(e>0&&e>=this.assetList.length)return!0;let t=this.playoutLimit;return e<=0||isNaN(t)?!1:t===0||(this.assetList[e]?.startOffset||0)>t}findAssetIndex(e){return this.assetList.indexOf(e)}get identifier(){return this.dateRange.id}get startDate(){return this.dateRange.startDate}get startTime(){let e=this.dateRange.startTime;if(this.snapOptions.out){let t=this.dateRange.tagAnchor;if(t)return qH(e,t)}return e}get startOffset(){return this.cue.pre?0:this.startTime}get startIsAligned(){if(this.startTime===0||this.snapOptions.out)return!0;let e=this.dateRange.tagAnchor;if(e){let t=this.dateRange.startTime;return t-qH(t,e)<.1}return!1}get resumptionOffset(){let e=this.resumeOffset,t=q(e)?e:this.duration;return this.cumulativeDuration+t}get resumeTime(){let e=this.startOffset+this.resumptionOffset;if(this.snapOptions.in){let t=this.resumeAnchor;if(t)return qH(e,t)}return e}get appendInPlace(){return this.appendInPlaceStarted?!0:!this.appendInPlaceDisabled&&!!(!this.cue.once&&!this.cue.pre&&this.startIsAligned&&(isNaN(this.playoutLimit)&&isNaN(this.resumeOffset)||this.resumeOffset&&this.duration&&Math.abs(this.resumeOffset-this.duration)<UH))}set appendInPlace(e){if(this.appendInPlaceStarted){this.resetOnResume=!e;return}this.appendInPlaceDisabled=!e}get timelineStart(){return this._timelineStart===null?this.startTime:this._timelineStart}set timelineStart(e){this._timelineStart=e}get duration(){let e=this.playoutLimit,t;return t=this._duration===null?this.dateRange.duration?this.dateRange.duration:this.dateRange.plannedDuration||0:this._duration,!isNaN(e)&&e<t&&(t=e),t}set duration(e){this._duration=e}get cue(){return this.dateRange.cue}get timelineOccupancy(){return this.dateRange.attr[`X-TIMELINE-OCCUPIES`]===`RANGE`?WH.Range:WH.Point}get supplementsPrimary(){return this.dateRange.attr[`X-TIMELINE-STYLE`]===`PRIMARY`}get contentMayVary(){return this.dateRange.attr[`X-CONTENT-MAY-VARY`]!==`NO`}get assetUrl(){return this.dateRange.attr[`X-ASSET-URI`]}get assetListUrl(){return this.dateRange.attr[`X-ASSET-LIST`]}get baseUrl(){return this.base.url}get assetListLoaded(){return this.assetList.length>0||this.assetListResponse!==null}toString(){return XH(this)}};function qH(e,t){return e-t.start<t.duration/2&&!(Math.abs(e-(t.start+t.duration))<UH)?t.start:t.start+t.duration}function JH(e,t,n){let r=new self.URL(e,n);return r.protocol!==`data:`&&r.searchParams.set(`_HLS_primary_id`,t),r}function YH(e,t){for(;(n=e.assetList[++t])!=null&&n.error;)var n;return t}function XH(e){return`["${e.identifier}" ${e.cue.pre?`<pre>`:e.cue.post?`<post>`:``}${e.timelineStart.toFixed(2)}-${e.resumeTime.toFixed(2)}]`}function ZH(e){let t=e.timelineStart,n=e.duration||0;return`["${e.identifier}" ${t.toFixed(2)}-${(t+n).toFixed(2)}]`}
vendor: 4,215 bytes, line 1819
1819var QH=class{constructor(e,t,n,r){this.hls=void 0,this.interstitial=void 0,this.assetItem=void 0,this.tracks=null,this.hasDetails=!1,this.mediaAttached=null,this._currentTime=void 0,this._bufferedEosTime=void 0,this.checkPlayout=()=>{this.reachedPlayout(this.currentTime)&&this.hls&&this.hls.trigger(Y.PLAYOUT_LIMIT_REACHED,{})};let i=this.hls=new e(t);this.interstitial=n,this.assetItem=r;let a=()=>{this.hasDetails=!0};i.once(Y.LEVEL_LOADED,a),i.once(Y.AUDIO_TRACK_LOADED,a),i.once(Y.SUBTITLE_TRACK_LOADED,a),i.on(Y.MEDIA_ATTACHING,(e,{media:t})=>{this.removeMediaListeners(),this.mediaAttached=t,this.interstitial.playoutLimit&&(t.addEventListener(`timeupdate`,this.checkPlayout),this.appendInPlace&&i.on(Y.BUFFER_APPENDED,()=>{let e=this.bufferedEnd;this.reachedPlayout(e)&&(this._bufferedEosTime=e,i.trigger(Y.BUFFERED_TO_END,void 0))}))})}get appendInPlace(){return this.interstitial.appendInPlace}loadSource(){let e=this.hls;if(e)if(e.url)e.levels.length&&!e.started&&e.startLoad(-1,!0);else{let t=this.assetItem.uri;try{t=JH(t,e.config.primarySessionId||``).href}catch{}e.loadSource(t)}}bufferedInPlaceToEnd(e){var t;if(!this.appendInPlace)return!1;if((t=this.hls)!=null&&t.bufferedToEnd)return!0;if(!e)return!1;let n=Math.min(this._bufferedEosTime||1/0,this.duration),r=this.timelineOffset,i=$I.bufferInfo(e,r,0);return this.getAssetTime(i.end)>=n-.02}reachedPlayout(e){let t=this.interstitial.playoutLimit;return this.startOffset+e>=t}get destroyed(){var e;return!((e=this.hls)!=null&&e.userConfig)}get assetId(){return this.assetItem.identifier}get interstitialId(){return this.assetItem.parentIdentifier}get media(){return this.hls?.media||null}get bufferedEnd(){let e=this.media||this.mediaAttached;if(!e)return this._bufferedEosTime?this._bufferedEosTime:this.currentTime;let t=$I.bufferInfo(e,e.currentTime,.001);return this.getAssetTime(t.end)}get currentTime(){let e=this.media||this.mediaAttached;return e?this.getAssetTime(e.currentTime):this._currentTime||0}get duration(){let e=this.assetItem.duration;if(!e)return 0;let t=this.interstitial.playoutLimit;if(t){let n=t-this.startOffset;if(n>0&&n<e)return n}return e}get remaining(){let e=this.duration;return e?Math.max(0,e-this.currentTime):0}get startOffset(){return this.assetItem.startOffset}get timelineOffset(){return this.hls?.config.timelineOffset||0}set timelineOffset(e){let t=this.timelineOffset;if(e!==t){let n=e-t;if(Math.abs(n)>1/9e4&&this.hls){if(this.hasDetails)throw Error(`Cannot set timelineOffset after playlists are loaded`);this.hls.config.timelineOffset=e}}}getAssetTime(e){let t=this.timelineOffset,n=this.duration;return Math.min(Math.max(0,e-t),n)}removeMediaListeners(){let e=this.mediaAttached;e&&(this._currentTime=e.currentTime,this.bufferSnapShot(),e.removeEventListener(`timeupdate`,this.checkPlayout))}bufferSnapShot(){if(this.mediaAttached){var e;(e=this.hls)!=null&&e.bufferedToEnd&&(this._bufferedEosTime=this.bufferedEnd)}}destroy(){this.removeMediaListeners(),this.hls&&this.hls.destroy(),this.hls=null,this.tracks=this.mediaAttached=this.checkPlayout=null}attachMedia(e){var t;this.loadSource(),(t=this.hls)==null||t.attachMedia(e)}detachMedia(){var e;this.removeMediaListeners(),this.mediaAttached=null,(e=this.hls)==null||e.detachMedia()}resumeBuffering(){var e;(e=this.hls)==null||e.resumeBuffering()}pauseBuffering(){var e;(e=this.hls)==null||e.pauseBuffering()}transferMedia(){return this.bufferSnapShot(),this.hls?.transferMedia()||null}resetDetails(){let e=this.hls;if(e&&this.hasDetails){e.stopLoad();let t=e=>delete e.details;e.levels.forEach(t),e.allAudioTracks.forEach(t),e.allSubtitleTracks.forEach(t),this.hasDetails=!1}}on(e,t,n){var r;(r=this.hls)==null||r.on(e,t)}once(e,t,n){var r;(r=this.hls)==null||r.once(e,t)}off(e,t,n){var r;(r=this.hls)==null||r.off(e,t)}toString(){return`HlsAssetPlayer: ${ZH(this.assetItem)} ${this.hls?.sessionId} ${this.appendInPlace?`append-in-place`:``}`}},$H=.033,eU=class extends QN{constructor(e,t){super(`interstitials-sched`,t),this.onScheduleUpdate=void 0,this.eventMap={},this.events=null,this.items=null,this.durations={primary:0,playout:0,integrated:0},this.onScheduleUpdate=e}destroy(){this.reset(),this.onScheduleUpdate=null}reset(){this.eventMap={}
1819,this.setDurations(0,0,0),this.events&&this.events.forEach(e=>e.reset()),this.events=this.items=null}resetErrorsInRange(e,t){return this.events?this.events.reduce((n,r)=>e<=r.startOffset&&t>r.startOffset?(delete r.error,n+1):n,0):0}get duration(){let e=this.items;return e?e[e.length-1].end:0}get length(){return this.items?this.items.length:0}getEvent(e){return e&&this.eventMap[e]||null}hasEvent(e){return e in this.eventMap}findItemIndex(e,t){if(e.event)return this.findEventIndex(e.event.identifier);let n=-1;e.nextEvent?n=this.findEventIndex(e.nextEvent.identifier)-1:e.previousEvent&&(n=this.findEventIndex(e.previousEvent.identifier)+1);let r=this.items;if(r)for(r[n]||(t===void 0&&(t=e.start),n=this.findItemIndexAtTime(t));n>=0&&(i=r[n])!=null&&i.event;){var i;n--}return n}findItemIndexAtTime(e,t){let n=this.items;if(n)for(let r=0;r<n.length;r++){let i=n[r];if(t&&t!==`primary`&&(i=i[t]),e===i.start||e>i.start&&e<i.end)return r}return-1}findJumpRestrictedIndex(e,t){let n=this.items;if(n)for(let r=e;r<=t&&n[r];r++){let e=n[r].event;if(e!=null&&e.restrictions.jump&&!e.appendInPlace)return r}return-1}findEventIndex(e){let t=this.items;if(t){for(let n=t.length;n--;)if(t[n].event?.identifier===e)return n}return-1}findAssetIndex(e,t){let n=e.assetList,r=n.length;if(r>1)for(let e=0;e<r;e++){let i=n[e];if(!i.error){let n=i.timelineStart;if(t===n||t>n&&(t<n+(i.duration||0)||e===r-1))return e}}return 0}get assetIdAtEnd(){var e;let t=(e=this.items)==null||(e=e[this.length-1])==null?void 0:e.event;if(t){let e=t.assetList,n=e[e.length-1];if(n)return n.identifier}return null}parseInterstitialDateRanges(e,t){let n=e.main.details,{dateRanges:r}=n,i=this.events,a=this.parseDateRanges(r,{url:n.url},t),o=Object.keys(r),s=i?i.filter(e=>!o.includes(e.identifier)):[];a.length&&a.sort((e,t)=>{let n=e.cue.pre,r=e.cue.post,i=t.cue.pre,a=t.cue.post;if(n&&!i)return-1;if(i&&!n||r&&!a)return 1;if(a&&!r)return-1;if(!n&&!i&&!r&&!a){let n=e.startTime,r=t.startTime;if(n!==r)return n-r}return e.dateRange.tagOrder-t.dateRange.tagOrder}),this.events=a,s.forEach(e=>{this.removeEvent(e)}),this.updateSchedule(e,s)}updateSchedule(e,t=[],n=!1){let r=this.events||[];
vendor: 4,678 bytes, line 1819
1819if(r.length||t.length||this.length<2){let i=this.items,a=this.parseSchedule(r,e);(n||t.length||i?.length!==a.length||a.some((e,t)=>Math.abs(e.playout.start-i[t].playout.start)>.005||Math.abs(e.playout.end-i[t].playout.end)>.005))&&(this.items=a,this.onScheduleUpdate(t,i))}}parseDateRanges(e,t,n){let r=[],i=Object.keys(e);for(let a=0;a<i.length;a++){let o=i[a],s=e[o];if(s.isInterstitial){let e=this.eventMap[o];e?e.setDateRange(s):(e=new KH(s,t),this.eventMap[o]=e,n===!1&&(e.appendInPlace=n)),r.push(e)}}return r}parseSchedule(e,t){let n=[],r=t.main.details,i=r.live?1/0:r.edge,a=0;if(e=e.filter(e=>!e.error&&!(e.cue.once&&e.hasPlayed)),e.length){this.resolveOffsets(e,t);let r=0,o=0;if(e.forEach((t,s)=>{let c=t.cue.pre,l=t.cue.post,u=e[s-1]||null,d=t.appendInPlace,f=l?i:t.startOffset,p=t.duration,m=t.timelineOccupancy===WH.Range?p:0,h=t.resumptionOffset,g=u?.startTime===f,_=f+t.cumulativeDuration,v=d?_+p:f+h;if(c||!l&&f<=0){let e=o;o+=m,t.timelineStart=_;let r=a;a+=p,n.push({event:t,start:_,end:v,playout:{start:r,end:a},integrated:{start:e,end:o}})}else if(f<=i){if(!g){let i=f-r;if(i>$H){let c=r,l=o;o+=i;let u=a;a+=i;let d={previousEvent:e[s-1]||null,nextEvent:t,start:c,end:c+i,playout:{start:u,end:a},integrated:{start:l,end:o}};n.push(d)}else i>0&&u&&(u.cumulativeDuration+=i,n[n.length-1].end=f)}l&&(v=_),t.timelineStart=_;let i=o;o+=m;let c=a;a+=p,n.push({event:t,start:_,end:v,playout:{start:c,end:a},integrated:{start:i,end:o}})}else return;let y=t.resumeTime;r=l||y>i?i:y}),r<i){let e=r,t=o,s=i-r;o+=s;let c=a;a+=s,n.push({previousEvent:n[n.length-1]?.event||null,nextEvent:null,start:r,end:e+s,playout:{start:c,end:a},integrated:{start:t,end:o}})}this.setDurations(i,a,o)}else n.push({previousEvent:null,nextEvent:null,start:0,end:i,playout:{start:0,end:i},integrated:{start:0,end:i}}),this.setDurations(i,i,i);return n}setDurations(e,t,n){this.durations={primary:e,playout:t,integrated:n}}resolveOffsets(e,t){let n=t.main.details,r=n.live?1/0:n.edge,i=0,a=-1;e.forEach((o,s)=>{let c=o.cue.pre,l=o.cue.post,u=c?0:l?r:o.startTime;this.updateAssetDurations(o),a===u?o.cumulativeDuration=i:(i=0,a=u),!l&&o.snapOptions.in&&(o.resumeAnchor=fI(null,n.fragments,o.startOffset+o.resumptionOffset,0,0)||void 0),o.appendInPlace&&!o.appendInPlaceStarted&&(this.primaryCanResumeInPlaceAt(o,t)||(o.appendInPlace=!1)),!o.appendInPlace&&s+1<e.length&&e[s+1].startTime-e[s].resumeTime<$H&&(e[s+1].appendInPlace=!1,e[s+1].appendInPlace&&this.warn(`Could not change append strategy for abutting event ${o}`));let d=q(o.resumeOffset)?o.resumeOffset:o.duration;i+=d})}primaryCanResumeInPlaceAt(e,t){let n=e.resumeTime,r=e.startTime+e.resumptionOffset;return Math.abs(n-r)>UH?(this.log(`"${e.identifier}" resumption ${n} not aligned with estimated timeline end ${r}`),!1):!Object.keys(t).some(r=>{let i=t[r].details,a=i.edge;if(n>=a)return this.log(`"${e.identifier}" resumption ${n} past ${r} playlist end ${a}`),!1;let o=fI(null,i.fragments,n);if(!o)return this.log(`"${e.identifier}" resumption ${n} does not align with any fragments in ${r} playlist (${i.fragStart}-${i.fragmentEnd})`),!0;let s=r===`audio`?.175:0;return Math.abs(o.start-n)<UH+s||Math.abs(o.end-n)<UH+s?!1:(this.log(`"${e.identifier}" resumption ${n} not aligned with ${r} fragment bounds (${o.start}-${o.end} sn: ${o.sn} cc: ${o.cc})`),!0)})}updateAssetDurations(e){if(!e.assetListLoaded)return;let t=e.timelineStart,n=0,r=!1,i=!1;for(let a=0;a<e.assetList.length;a++){let o=e.assetList[a],s=t+n;o.startOffset=n,o.timelineStart=s,r||=o.duration===null,i||=!!o.error;let c=o.error?0:o.duration||0;n+=c}e.duration=r&&!i?Math.max(n,e.duration):n}removeEvent(e){e.reset(),delete this.eventMap[e.identifier]}};function tU(e){return`[${e.event?`"`+e.event.identifier+`"`:`primary`}: ${e.start.toFixed(2)}-${e.end.toFixed(2)}]`}var nU=class{constructor(e){this.hls=void 0,this.hls=e}destroy(){this.hls=null}loadAssetList(e,t){let n=e.assetListUrl,r;try{r=JH(n,this.hls.sessionId,e.baseUrl)}catch(t){let r=this.assignAssetListError(e,J.ASSET_LIST_LOAD_ERROR,t,n);this.hls.trigger(Y.ERROR,r);return}t&&r.protocol!==`data:`&&r.searchParams.set(`_HLS_start_offset`,``+t);let i=this.hls.config,a=i.loader,o=new a(i),s={responseType:`json`,url:r.href},c=i.interstitialAssetListLoadPolicy.default,l={loadPolicy:c,timeout:c.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0};return o.load(s,l,{onSuccess:(t,n,r,i)=>{let a=t.data,o=a?.ASSETS;if(!Array.isArray(o)){let t=this.assignAssetListError(e,J.ASSET_LIST_PARSING_ERROR,Error(`Invalid interstitial asset list`),r.url,n,i);this.hls.trigger(Y.ERROR,t);return}e.assetListResponse=a,this.hls.trigger(Y.ASSET_LIST_LOADED,{event:e,assetListResponse:a,networkDetails:i}
vendor: 4,291 bytes, lines 1819-1820
1819)},onError:(t,n,r,i)=>{let a=this.assignAssetListError(e,J.ASSET_LIST_LOAD_ERROR,Error(`Error loading X-ASSET-LIST: HTTP status ${t.code} ${t.text} (${n.url})`),n.url,i,r);this.hls.trigger(Y.ERROR,a)},onTimeout:(t,n,r)=>{let i=this.assignAssetListError(e,J.ASSET_LIST_LOAD_TIMEOUT,Error(`Timeout loading X-ASSET-LIST (${n.url})`),n.url,t,r);this.hls.trigger(Y.ERROR,i)}}),this.hls.trigger(Y.ASSET_LIST_LOADING,{event:e}),o}assignAssetListError(e,t,n,r,i,a){return e.error=n,{type:VN.NETWORK_ERROR,details:t,fatal:!1,interstitial:e,url:r,error:n,networkDetails:a,stats:i}}};function rU(e){var t;e==null||(t=e.play())==null||t.catch(()=>{})}function iU(e,t){return`[${e}] Advancing timeline position to ${t}`}var aU=class extends QN{constructor(e,t){super(`interstitials`,e.logger),this.HlsPlayerClass=void 0,this.hls=void 0,this.assetListLoader=void 0,this.mediaSelection=null,this.altSelection=null,this.media=null,this.detachedData=null,this.requiredTracks=null,this.manager=null,this.playerQueue=[],this.bufferedPos=-1,this.timelinePos=-1,this.schedule=void 0,this.playingItem=null,this.bufferingItem=null,this.waitingItem=null,this.endedItem=null,this.playingAsset=null,this.endedAsset=null,this.bufferingAsset=null,this.shouldPlay=!1,this.onPlay=()=>{this.shouldPlay=!0},this.onPause=()=>{this.shouldPlay=!1},this.onSeeking=()=>{let e=this.currentTime;if(e===void 0||this.playbackDisabled||!this.schedule)return;let t=e-this.timelinePos;if(Math.abs(t)<1/7056e5)return;let n=t<=-.01;this.timelinePos===-1&&!this.effectivePlayingItem&&this.checkStart(),this.timelinePos=e,this.bufferedPos=e;let r=this.playingItem;if(!r){this.checkBuffer();return}if(n&&this.schedule.resetErrorsInRange(e,e-t)&&this.updateSchedule(!0),this.checkBuffer(),n&&e<r.start||e>=r.end){var i;let t=this.findItemIndex(r),a=this.schedule.findItemIndexAtTime(e);if(a===-1&&(a=t+(n?-1:1),this.log(`seeked ${n?`back `:``}to position not covered by schedule ${e} (resolving from ${t} to ${a})`)),!this.isInterstitial(r)&&(i=this.media)!=null&&i.paused&&(this.shouldPlay=!1),!n&&a>t){let e=this.schedule.findJumpRestrictedIndex(t+1,a);if(e>t){this.setSchedulePosition(e);return}}this.setSchedulePosition(a);return}let a=this.playingAsset;if(!a){if(this.playingLastItem&&this.isInterstitial(r)){let t=r.event.assetList[0];t&&(this.endedItem=this.playingItem,this.playingItem=null,this.setScheduleToAssetAtTime(e,t))}return}let o=a.timelineStart,s=a.duration||0;if(n&&e<o||e>=o+s){var c;(c=r.event)!=null&&c.appendInPlace&&(this.clearAssetPlayers(r.event,r),this.flushFrontBuffer(e)),this.setScheduleToAssetAtTime(e,a)}},this.onTimeupdate=()=>{let e=this.currentTime;if(e===void 0||this.playbackDisabled)return;if(this.timelinePos===-1&&!this.effectivePlayingItem&&this.checkStart(),e>this.timelinePos)this.timelinePos=e,e>this.bufferedPos&&this.checkBuffer();else return;let t=this.playingItem;if(!t||this.playingLastItem)return;if(e>=t.end){this.timelinePos=t.end;let e=this.findItemIndex(t);this.setSchedulePosition(e+1)}let n=this.playingAsset;n&&e>=n.timelineStart+(n.duration||0)&&this.setScheduleToAssetAtTime(e,n)},this.onScheduleUpdate=(e,t)=>{let n=this.schedule;if(!n)return;let r=this.playingItem,i=n.events||[],a=n.items||[],o=n.durations,s=e.map(e=>e.identifier),c=!!(i.length||s.length);(c||t)&&this.log(`INTERSTITIALS_UPDATED (${i.length}): ${i} 1820Schedule: ${a.map(e=>tU(e))} pos: ${this.timelinePos}`),s.length&&this.log(`Removed events ${s}`);let l=null,u=null;r&&(l=this.updateItem(r,this.timelinePos),this.itemsMatch(r,l)?this.playingItem=l:this.waitingItem=this.endedItem=null),this.waitingItem=this.updateItem(this.waitingItem),this.endedItem=this.updateItem(this.endedItem);let d=this.bufferingItem;if(d&&(u=this.updateItem(d,this.bufferedPos),this.itemsMatch(d,u)?this.bufferingItem=u:d.event&&(this.bufferingItem=this.playingItem,this.clearInterstitial(d.event,null))),e.forEach(e=>{e.assetList.forEach(e=>{this.clearAssetPlayer(e.identifier,null)})}),this.playerQueue.forEach(e=>{if(e.interstitial.appendInPlace){let t=e.assetItem.timelineStart,n=e.timelineOffset-t;if(n)try{e.timelineOffset=t}catch(r){Math.abs(n)>UH&&this.warn(`${r} ("${e.assetId}" ${e.timelineOffset}->${t})`)}}}),c||t){if(this.hls.trigger(Y.INTERSTITIALS_UPDATED,{events:i.slice(0),schedule:a.slice(0),durations:o,removedIds:s}
1820),this.isInterstitial(r)&&s.includes(r.event.identifier)){this.warn(`Interstitial "${r.event.identifier}" removed while playing`),this.primaryFallback(r.event);return}r&&this.trimInPlace(l,r),d&&u!==l&&this.trimInPlace(u,d),this.checkBuffer()}},this.hls=e,this.HlsPlayerClass=t,this.assetListLoader=new nU(e),this.schedule=new eU(this.onScheduleUpdate,e.logger),this.registerListeners()}registerListeners(){let e=this.hls;e&&(e.on(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(Y.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),e.on(Y.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.on(Y.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),e.on(Y.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),e.on(Y.ASSET_LIST_LOADED,this.onAssetListLoaded,this),e.on(Y.BUFFER_APPENDED,this.onBufferAppended,this),e.on(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(Y.BUFFERED_TO_END,this.onBufferedToEnd,this),e.on(Y.MEDIA_ENDED,this.onMediaEnded,this),e.on(Y.ERROR,this.onError,this),e.on(Y.DESTROYING,this.onDestroying,this))}unregisterListeners(){let e=this.hls;
1820e&&(e.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(Y.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),e.off(Y.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.off(Y.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),e.off(Y.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),e.off(Y.ASSET_LIST_LOADED,this.onAssetListLoaded,this),e.off(Y.BUFFER_CODECS,this.onBufferCodecs,this),e.off(Y.BUFFER_APPENDED,this.onBufferAppended,this),e.off(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(Y.BUFFERED_TO_END,this.onBufferedToEnd,this),e.off(Y.MEDIA_ENDED,this.onMediaEnded,this),e.off(Y.ERROR,this.onError,this),e.off(Y.DESTROYING,this.onDestroying,this))}startLoad(){this.resumeBuffering()}stopLoad(){this.pauseBuffering()}resumeBuffering(){var e;(e=this.getBufferingPlayer())==null||e.resumeBuffering()}pauseBuffering(){var e;(e=this.getBufferingPlayer())==null||e.pauseBuffering()}destroy(){this.unregisterListeners(),this.stopLoad(),this.assetListLoader&&this.assetListLoader.destroy(),this.emptyPlayerQueue(),this.clearScheduleState(),this.schedule&&this.schedule.destroy(),this.media=this.detachedData=this.mediaSelection=this.requiredTracks=this.altSelection=this.schedule=this.manager=null,this.hls=this.HlsPlayerClass=this.log=null,this.assetListLoader=null,this.onPlay=this.onPause=this.onSeeking=this.onTimeupdate=null,this.onScheduleUpdate=null}onDestroying(){let e=this.primaryMedia||this.media;e&&this.removeMediaListeners(e)}removeMediaListeners(e){DR(e,`play`,this.onPlay),DR(e,`pause`,this.onPause),DR(e,`seeking`,this.onSeeking),DR(e,`timeupdate`,this.onTimeupdate)}onMediaAttaching(e,t){let n=this.media=t.media;ER(n,`seeking`,this.onSeeking),ER(n,`timeupdate`,this.onTimeupdate),ER(n,`play`,this.onPlay),ER(n,`pause`,this.onPause)}onMediaAttached(e,t){let n=this.effectivePlayingItem,r=this.detachedData;if(this.detachedData=null,n===null)this.checkStart();else if(!r){this.clearScheduleState();let e=this.findItemIndex(n);this.setSchedulePosition(e)}}clearScheduleState(){this.log(`clear schedule state`),this.playingItem=this.bufferingItem=this.waitingItem=this.endedItem=this.playingAsset=this.endedAsset=this.bufferingAsset=null}onMediaDetaching(e,t){let n=!!t.transferMedia,r=this.media;if(this.media=null,!n&&(r&&this.removeMediaListeners(r),this.detachedData)){let e=this.getBufferingPlayer();e&&(this.log(`Removing schedule state for detachedData and ${e}`),this.playingAsset=this.endedAsset=this.bufferingAsset=this.bufferingItem=this.waitingItem=this.detachedData=null,e.detachMedia()),this.shouldPlay=!1}}get interstitialsManager(){if(!this.hls)return null;if(this.manager)return this.manager;let e=this,t=()=>e.bufferingItem||e.waitingItem,n=t=>t&&e.getAssetPlayer(t.identifier),r=(t,r,i,o,s)=>{if(t){let c=t[r].start,l=t.event;if(l){if(r===`playout`||l.timelineOccupancy!==WH.Point){let e=n(i);e?.interstitial===l&&(c+=e.assetItem.startOffset+e[s])}}else{let n=o===`bufferedPos`?a():e[o];c+=n-t.start}return c}return 0},i=(t,n)=>{var r;if(t!==0&&n!==`primary`&&(r=e.schedule)!=null&&r.length){let r=e.schedule.findItemIndexAtTime(t),i=e.schedule.items?.[r];if(i)return t+(i[n].start-i.start)}return t},a=()=>{let t=e.bufferedPos;return t===Number.MAX_VALUE?o(`primary`):Math.max(t,0)},o=t=>{var n;return(n=e.primaryDetails)!=null&&n.live?e.primaryDetails.edge:e.schedule?.durations[t]||0},s=(t,i)=>{var a;let o=e.effectivePlayingItem;if(o!=null&&(a=o.event)!=null&&a.restrictions.skip||!e.schedule)return;e.log(`seek to ${t} "${i}"`);let s=e.effectivePlayingItem,c=e.schedule.findItemIndexAtTime(t,i),l=e.schedule.items?.[c],u=e.getBufferingPlayer(),d=u?.interstitial?.appendInPlace,f=s&&e.itemsMatch(s,l);if(s&&(d||f)){let a=n(e.playingAsset),o=a?.media||e.primaryMedia;if(o){let n=i===`primary`?o.currentTime:r(s,i,e.playingAsset,`timelinePos`,`currentTime`),c=t-n,l=(d?n:o.currentTime)+c;if(l>=0&&(!a||d||l<=a.duration)){o.currentTime=l;return}}}if(l){let n=t;if(i!==`primary`){let e=t-l[i].start;n=l.start+e}let r=!e.isInterstitial(l);if((!e.isInterstitial(s)||s.event.appendInPlace)&&(r||l.event.appendInPlace)){let t=e.media||(d?u?.media:null);t&&(t.currentTime=n)}else if(s){let a=e.findItemIndex(s);if(c>a){let t=e.schedule.findJumpRestrictedIndex(a+1,c);if(t>a){e.setSchedulePosition(t);return}}let o=0;if(r)e.timelinePos=n,e.checkBuffer();else{let e=l.event.assetList,n=t-(l[i]||l).start;for(let t=e.length;t--;){let r=e[t];if(r.duration&&n>=r.startOffset&&n<r.startOffset+r.duration){o=t;break}}}e.setSchedulePosition(c,o)}}},c=()=>{let n=e.effectivePlayingItem;if(e.isInterstitial(n))return n;let r=t();return e.isInterstitial(r)?r:null},l={get bufferedEnd(){let n=t(),i=e.bufferingItem;return i&&i===n&&(r(i,`playout`,e.bufferingAsset,`bufferedPos`,`bufferedEnd`)-i.playout.start||e.bufferingAsset?.startOffset)||0},get currentTime(){let t=c(),n=e.effectivePlayingItem;return n&&n===t?r(n,`playout`,e.effectivePlayingAsset,`timelinePos`,`currentTime`)-n.playout.start:0},set currentTime(t){let n=c(),r=e.effectivePlayingItem;r&&r===n&&s(t+r.playout.start,`playout`)},get duration(){let e=c();return e?e.playout.end-e.playout.start:0},get assetPlayers(){let t=c()?.event.assetList;return t?t.map(t=>e.getAssetPlayer(t.identifier)):[]},get playingIndex(){let t=c()?.event;return t&&e.effectivePlayingAsset?t.findAssetIndex(e.effectivePlayingAsset):-1},get scheduleItem(){return c()}};return this.manager={get events(){var t;return((t=e.schedule)==null||(t=t.events)==null?void 0:t.slice(0))||[]},get schedule(){var t;return((t=e.schedule)==null||(t=t.items)==null?void 0:t.slice(0))||[]},get interstitialPlayer(){return c()?l:null},get playerQueue(){return e.playerQueue.slice(0)},get bufferingAsset(){return e.bufferingAsset},get bufferingItem(){return t()},get bufferingIndex(){let n=t();return e.findItemIndex(n)},get playingAsset(){return e.effectivePlayingAsset},get playingItem(){return e.effectivePlayingItem},get playingIndex(){let t=e.effectivePlayingItem;return e.findItemIndex(t)},primary:{get bufferedEnd(){return a()},get currentTime(){let t=e.timelinePos;return t>0?t:0},set currentTime(e){s(e,`primary`)},get duration(){return o(`primary`)},get seekableStart(){return e.primaryDetails?.fragmentStart||0}},integrated:{get bufferedEnd(){return r(t(),`integrated`,e.bufferingAsset,`bufferedPos`,`bufferedEnd`)},get currentTime(){return r(e.effectivePlayingItem,`integrated`,e.effectivePlayingAsset,`timelinePos`,`currentTime`)},set currentTime(e){s(e,`integrated`)},get duration(){return o(`integrated`)},get seekableStart(){return i(e.primaryDetails?.fragmentStart||0,`integrated`)}},skip:()=>{let t=e.effectivePlayingItem,n=t?.event;if(n&&!n.restrictions.skip){let r=e.findItemIndex(t);if(n.appendInPlace){let e=t.playout.start+t.event.duration;s(e+.001,`playout`)}else e.advanceAfterAssetEnded(n,r,1/0)}}}}get effectivePlayingItem(){return this.waitingItem||this.playingItem||this.endedItem}get effectivePlayingAsset(){return this.playingAsset||this.endedAsset}
1820get playingLastItem(){let e=this.playingItem,t=this.schedule?.items;return!this.playbackStarted||!e||!t?!1:this.findItemIndex(e)===t.length-1}get playbackStarted(){return this.effectivePlayingItem!==null}get currentTime(){var e;if(this.mediaSelection===null)return;let t=this.waitingItem||this.playingItem;if(this.isInterstitial(t)&&!t.event.appendInPlace)return;let n=this.media;!n&&(e=this.bufferingItem)!=null&&(e=e.event)!=null&&e.appendInPlace&&(n=this.primaryMedia);let r=n?.currentTime;if(!(r===void 0||!q(r)))return r}get primaryMedia(){return this.media||this.detachedData?.media||null}isInterstitial(e){return!!(e!=null&&e.event)}retreiveMediaSource(e,t){let n=this.getAssetPlayer(e);n&&this.transferMediaFromPlayer(n,t)}transferMediaFromPlayer(e,t){let n=e.interstitial.appendInPlace,r=e.media;if(n&&r===this.primaryMedia){if(this.bufferingAsset=null,(!t||this.isInterstitial(t)&&!t.event.appendInPlace)&&t&&r){this.detachedData={media:r};return}let n=e.transferMedia();this.log(`transfer MediaSource from ${e} ${YF(n)}`),this.detachedData=n}else t&&r&&(this.shouldPlay||=!r.paused)}transferMediaTo(e,t){if(e.media===t)return;let n=null,r=this.hls,i=e!==r,a=i&&e.interstitial.appendInPlace,o=this.detachedData?.mediaSource,s;if(r.media)a&&(n=r.transferMedia(),this.detachedData=n),s=`Primary`;else if(o){let e=this.getBufferingPlayer();e?(n=e.transferMedia(),s=`${e}`):s=`detached MediaSource`}else s=`detached media`;if(!n){if(o)n=this.detachedData,this.log(`using detachedData: MediaSource ${YF(n)}`);else if(!this.detachedData||r.media===t){let e=this.playerQueue;e.length>1&&e.forEach(e=>{if(i&&e.interstitial.appendInPlace!==a){let t=e.interstitial;this.clearInterstitial(e.interstitial,null),t.appendInPlace=!1,t.appendInPlace&&this.warn(`Could not change append strategy for queued assets ${t}`)}}),this.hls.detachMedia(),this.detachedData={media:t}}}let c=n&&`mediaSource`in n&&n.mediaSource?.readyState!==`closed`,l=c&&n?n:t;this.log(`${c?`transfering MediaSource`:`attaching media`} to ${i?e:`Primary`} from ${s} (media.currentTime: ${t.currentTime})`);let u=this.schedule;if(l===n&&u){let t=i&&e.assetId===u.assetIdAtEnd;l.overrides={duration:u.duration,endOfStream:!i||t,cueRemoval:!i}}e.attachMedia(l)}onInterstitialCueEnter(){this.onTimeupdate()}checkStart(){let e=this.schedule,t=e?.events;if(!t||this.playbackDisabled||!this.media)return;this.bufferedPos===-1&&(this.bufferedPos=0);let n=this.timelinePos,r=this.effectivePlayingItem;if(n===-1){let n=this.hls.startPosition;if(this.timelinePos=n,t.length===0)this.setSchedulePosition(0);else if(t[0].cue.pre){this.log(iU(`checkStart (preroll)`,n));let r=e.findEventIndex(t[0].identifier);this.setSchedulePosition(r)}else if(n>=0||!this.primaryLive){this.log(iU(`checkStart`,n));let t=this.timelinePos=n>0?n:0,r=e.findItemIndexAtTime(t);this.setSchedulePosition(r)}else this.hls.liveSyncPosition===0?this.setSchedulePosition(0):this.log(`[checkStart] waiting for live start`)}else if(r&&!this.playingItem){this.log(iU(`checkStart (playing item)`,r.start));let t=e.findItemIndex(r);this.setSchedulePosition(t)}}advanceAssetBuffering(e,t){let n=e.event,r=YH(n,n.findAssetIndex(t));if(!n.isAssetPastPlayoutLimit(r))this.bufferedToEvent(e,r);else if(this.schedule){let t=this.schedule.items?.[this.findItemIndex(e)+1];t&&this.bufferedToItem(t)}}advanceAfterAssetEnded(e,t,n){let r=YH(e,n);if(!e.isAssetPastPlayoutLimit(r)){if(e.appendInPlace){let t=e.assetList[r];t&&this.advanceInPlace(t.timelineStart)}this.setSchedulePosition(t,r)}else if(this.schedule){let n=this.schedule.items;if(n){let r=t+1;if(r>=n.length){this.setSchedulePosition(-1);return}let i=e.resumeTime;this.timelinePos<i&&(this.log(iU(`advanceAfterAssetEnded`,i)),this.timelinePos=i,e.appendInPlace&&this.advanceInPlace(i),this.checkBuffer(this.bufferedPos<i)),this.setSchedulePosition(r)}}}setScheduleToAssetAtTime(e,t){let n=this.schedule;if(!n)return;let r=t.parentIdentifier,i=n.getEvent(r);if(i){let t=n.findEventIndex(r),a=n.findAssetIndex(i,e);this.advanceAfterAssetEnded(i,t,a-1)}}setSchedulePosition(e,t){let n=this.schedule?.items;if(!n||this.playbackDisabled)return;let r=e>=0?n[e]:null;this.log(`setSchedulePosition ${e}, ${t} (${r&&tU(r)}) pos: ${this.timelinePos}`);let i=this.waitingItem||this.playingItem,a=this.playingLastItem;if(this.isInterstitial(i)){let s=i.event,c=this.playingAsset,l=c?.identifier,u=l?this.getAssetPlayer(l):null;if(u&&l&&(!this.eventItemsMatch(i,r)||t!==void 0&&l!==s.assetList[t].identifier)){var o;let t=s.findAssetIndex(c);if(this.log(`INTERSTITIAL_ASSET_ENDED ${t+1}/${s.assetList.length} ${ZH(c)}`),this.endedAsset=c,this.playingAsset=null,this.hls.trigger(Y.INTERSTITIAL_ASSET_ENDED,{asset:c,assetListIndex:t,event:s,schedule:n.slice(0),scheduleIndex:e,player:u}),i!==this.playingItem){this.itemsMatch(i,this.playingItem)&&!this.playingAsset&&this.advanceAfterAssetEnded(s,this.findItemIndex(this.playingItem),t);return}this.retreiveMediaSource(l,r),u.media&&!((o=this.detachedData)!=null&&o.mediaSource)&&u.detachMedia()}if(!this.eventItemsMatch(i,r)&&(this.endedItem=i,this.playingItem=null,this.log(`INTERSTITIAL_ENDED ${s} ${tU(i)}`),s.hasPlayed=!0,this.hls.trigger(Y.INTERSTITIAL_ENDED,{event:s,schedule:n.slice(0),scheduleIndex:e}),s.cue.once)){this.updateSchedule();
1820let e=this.schedule?.items;if(r&&e){let n=this.findItemIndex(r);this.advanceSchedule(n,e,t,i,a)}return}}this.advanceSchedule(e,n,t,i,a)}advanceSchedule(e,t,n,r,i){let a=this.schedule;if(!a)return;let o=t[e]||null,s=this.primaryMedia,c=this.playerQueue;if(c.length&&c.forEach(t=>{let n=t.interstitial,r=a.findEventIndex(n.identifier);(r<e||r>e+1)&&this.clearInterstitial(n,o)}),this.isInterstitial(o)){this.timelinePos=Math.min(Math.max(this.timelinePos,o.start),o.end);let i=o.event;if(n===void 0){n=a.findAssetIndex(i,this.timelinePos);let t=YH(i,n-1);if(i.isAssetPastPlayoutLimit(t)||i.appendInPlace&&this.timelinePos===o.end){this.advanceAfterAssetEnded(i,e,n);return}n=t}let c=this.waitingItem;this.assetsBuffered(o,s)||this.setBufferingItem(o);let l=this.preloadAssets(i,n);if(this.eventItemsMatch(o,c||r)||(this.waitingItem=o,this.log(`INTERSTITIAL_STARTED ${tU(o)} ${i.appendInPlace?`append in place`:``}`),this.hls.trigger(Y.INTERSTITIAL_STARTED,{event:i,schedule:t.slice(0),scheduleIndex:e})),!i.assetListLoaded){this.log(`Waiting for ASSET-LIST to complete loading ${i}`);return}if(i.assetListLoader&&=(i.assetListLoader.destroy(),void 0),!s){this.log(`Waiting for attachMedia to start Interstitial ${i}`);return}this.waitingItem=this.endedItem=null,this.playingItem=o;let u=i.assetList[n];if(!u){this.advanceAfterAssetEnded(i,e,n||0);return}if(l||=this.getAssetPlayer(u.identifier),l===null||l.destroyed){let e=i.assetList.length;this.warn(`asset ${n+1}/${e} player destroyed ${i}`),l=this.createAssetPlayer(i,u,n),l.loadSource()}if(!this.eventItemsMatch(o,this.bufferingItem)&&i.appendInPlace&&this.isAssetBuffered(u))return;this.startAssetPlayer(l,n,t,e,s),this.shouldPlay&&rU(l.media)}else o?(this.resumePrimary(o,e,r),this.shouldPlay&&rU(this.hls.media)):i&&this.isInterstitial(r)&&(this.endedItem=null,this.playingItem=r,r.event.appendInPlace||this.attachPrimary(a.durations.primary,null))}get playbackDisabled(){return this.hls.config.enableInterstitialPlayback===!1}get primaryDetails(){return this.mediaSelection?.main.details}get primaryLive(){var e;return!!((e=this.primaryDetails)!=null&&e.live)}resumePrimary(e,t,n){var r;if(this.playingItem=e,this.playingAsset=this.endedAsset=null,this.waitingItem=this.endedItem=null,this.bufferedToItem(e),this.log(`resuming ${tU(e)}`),!((r=this.detachedData)!=null&&r.mediaSource)){let n=this.timelinePos;(n<e.start||n>=e.end)&&(n=this.getPrimaryResumption(e,t),this.log(iU(`resumePrimary`,n)),this.timelinePos=n),this.attachPrimary(n,e)}if(!n)return;let i=this.schedule?.items;i&&(this.log(`INTERSTITIALS_PRIMARY_RESUMED ${tU(e)}`),this.hls.trigger(Y.INTERSTITIALS_PRIMARY_RESUMED,{schedule:i.slice(0),scheduleIndex:t}),this.checkBuffer())}getPrimaryResumption(e,t){let n=e.start;if(this.primaryLive){let e=this.primaryDetails;if(t===0)return this.hls.startPosition;if(e&&(n<e.fragmentStart||n>e.edge))return this.hls.liveSyncPosition||-1}return n}isAssetBuffered(e){let t=this.getAssetPlayer(e.identifier);return t!=null&&t.hls?t.hls.bufferedToEnd:$I.bufferInfo(this.primaryMedia,this.timelinePos,0).end+1>=e.timelineStart+(e.duration||0)}attachPrimary(e,t,n){t?this.setBufferingItem(t):this.bufferingItem=this.playingItem,this.bufferingAsset=null;let r=this.primaryMedia;if(!r)return;let i=this.hls;i.media?this.checkBuffer():(this.transferMediaTo(i,r),n&&this.startLoadingPrimaryAt(e,n)),n||(this.log(iU(`attachPrimary`,e)),this.timelinePos=e,this.startLoadingPrimaryAt(e,n))}startLoadingPrimaryAt(e,t){let n=this.hls;!n.loadingEnabled||!n.media||Math.abs((n.mainForwardBufferInfo?.start||n.media.currentTime)-e)>.5?n.startLoad(e,t):n.bufferingEnabled||n.resumeBuffering()}onManifestLoading(){var e;this.stopLoad(),(e=this.schedule)==null||e.reset(),this.emptyPlayerQueue(),this.clearScheduleState(),this.shouldPlay=!1,this.bufferedPos=this.timelinePos=-1,this.mediaSelection=this.altSelection=this.manager=this.requiredTracks=null,this.hls.off(Y.BUFFER_CODECS,this.onBufferCodecs,this),this.hls.on(Y.BUFFER_CODECS,this.onBufferCodecs,this)}onLevelUpdated(e,t){if(t.level===-1||!this.schedule)return;let n=this.hls.levels[t.level];if(!n.details)return;let r=YN(YN({},this.mediaSelection||this.altSelection),{},{main:n});this.mediaSelection=r,this.schedule.parseInterstitialDateRanges(r,this.hls.config.interstitialAppendInPlace),!this.effectivePlayingItem&&this.schedule.items&&this.checkStart()}onAudioTrackUpdated(e,t){let n=this.hls.audioTracks[t.id],r=this.mediaSelection;if(!r){this.altSelection=YN(YN({},this.altSelection),{},{audio:n});return}let i=YN(YN({},r),{},{audio:n});this.mediaSelection=i}onSubtitleTrackUpdated(e,t){let n=this.hls.subtitleTracks[t.id],r=this.mediaSelection;if(!r){this.altSelection=YN(YN({},this.altSelection),{},{subtitles:n});return}let i=YN(YN({},r),{},{subtitles:n});this.mediaSelection=i}onAudioTrackSwitching(e,t){let n=eI(t);this.playerQueue.forEach(({hls:e})=>e&&(e.setAudioOption(t)||e.setAudioOption(n)))}onSubtitleTrackSwitch(e,t){let n=eI(t);this.playerQueue.forEach(({hls:e})=>e&&(e.setSubtitleOption(t)||t.id!==-1&&e.setSubtitleOption(n)))}onBufferCodecs(e,t){let n=t.tracks;n&&(this.requiredTracks=n)}onBufferAppended(e,t){this.checkBuffer()}onBufferFlushed(e,t){let n=this.playingItem;if(n&&!this.itemsMatch(n,this.bufferingItem)&&!this.isInterstitial(n)){let e=this.timelinePos;this.bufferedPos=e,this.checkBuffer()}}onBufferedToEnd(e){if(!this.schedule)return;let t=this.schedule.events;if(this.bufferedPos<Number.MAX_VALUE&&t){for(let e=0;e<t.length;e++){let n=t[e];if(n.cue.post){let e=this.schedule.findEventIndex(n.identifier),t=this.schedule.items?.[e];this.isInterstitial(t)&&this.eventItemsMatch(t,this.bufferingItem)&&this.bufferedToItem(t,0);break}}this.bufferedPos=Number.MAX_VALUE}}onMediaEnded(e){let t=this.playingItem;if(!this.playingLastItem&&t){let e=this.findItemIndex(t);this.setSchedulePosition(e+1)}else this.shouldPlay=!1}
1820updateItem(e,t){let n=this.schedule?.items;return e&&n&&n[this.findItemIndex(e,t)]||null}trimInPlace(e,t){if(this.isInterstitial(e)&&e.event.appendInPlace&&t.end-e.end>.25){e.event.assetList.forEach((t,n)=>{e.event.isAssetPastPlayoutLimit(n)&&this.clearAssetPlayer(t.identifier,null)});let n=e.end+.25,r=$I.bufferInfo(this.primaryMedia,n,0);(r.end>n||(r.nextStart||0)>n)&&(this.log(`trim buffered interstitial ${tU(e)} (was ${tU(t)})`),this.attachPrimary(n,null,!0),this.flushFrontBuffer(n))}}itemsMatch(e,t){return!!t&&(e===t||e.event&&t.event&&this.eventItemsMatch(e,t)||!e.event&&!t.event&&this.findItemIndex(e)===this.findItemIndex(t))}eventItemsMatch(e,t){return!!t&&(e===t||e.event.identifier===t.event?.identifier)}findItemIndex(e,t){return e&&this.schedule?this.schedule.findItemIndex(e,t):-1}updateSchedule(e=!1){var t;let n=this.mediaSelection;n&&((t=this.schedule)==null||t.updateSchedule(n,[],e))}checkBuffer(e){let t=this.schedule?.items;if(!t)return;let n=$I.bufferInfo(this.primaryMedia,this.timelinePos,0);e&&(this.bufferedPos=this.timelinePos),e||=n.len<1,this.updateBufferedPos(n.end,t,e)}updateBufferedPos(e,t,n){let r=this.schedule,i=this.bufferingItem;if(this.bufferedPos>e||!r)return;if(t.length===1&&this.itemsMatch(t[0],i)){this.bufferedPos=e;return}let a=this.playingItem,o=this.findItemIndex(a),s=r.findItemIndexAtTime(e);if(this.bufferedPos<e){var c;let n=this.findItemIndex(i),r=Math.min(n+1,t.length-1),a=t[r];if((s===-1&&i&&e>=i.end||(c=a.event)!=null&&c.appendInPlace&&e+.01>=a.start)&&(s=r),this.isInterstitial(i)){let e=i.event;if(r-o>1&&e.appendInPlace===!1||e.assetList.length===0&&e.assetListLoader)return}if(this.bufferedPos=e,s>n&&s>o)this.bufferedToItem(a);else{let t=this.primaryDetails;this.primaryLive&&t&&e>t.edge-t.targetduration&&a.start<t.edge+this.hls.config.interstitialLiveLookAhead&&this.isInterstitial(a)&&this.preloadAssets(a.event,0)}}else n&&a&&!this.itemsMatch(a,i)&&(s===o?this.bufferedToItem(a):s===o+1&&this.bufferedToItem(t[s]))}assetsBuffered(e,t){return e.event.assetList.length!==0&&!e.event.assetList.some(e=>{let n=this.getAssetPlayer(e.identifier);return!(n!=null&&n.bufferedInPlaceToEnd(t))})}setBufferingItem(e){let t=this.bufferingItem,n=this.schedule;if(!this.itemsMatch(e,t)&&n){let{items:r,events:i}=n;if(!r||!i)return t;let a=this.isInterstitial(e),o=this.getBufferingPlayer();this.bufferingItem=e,this.bufferedPos=Math.max(e.start,Math.min(e.end,this.timelinePos));let s=o?o.remaining:t?t.end-this.timelinePos:0;if(this.log(`INTERSTITIALS_BUFFERED_TO_BOUNDARY ${tU(e)}`+(t?` (${s.toFixed(2)} remaining)`:``)),!this.playbackDisabled)if(a){let t=n.findAssetIndex(e.event,this.bufferedPos);e.event.assetList.forEach((e,n)=>{let r=this.getAssetPlayer(e.identifier);r&&(n===t&&r.loadSource(),r.resumeBuffering())})}else this.hls.resumeBuffering(),this.playerQueue.forEach(e=>e.pauseBuffering());this.hls.trigger(Y.INTERSTITIALS_BUFFERED_TO_BOUNDARY,{events:i.slice(0),schedule:r.slice(0),bufferingIndex:this.findItemIndex(e),playingIndex:this.findItemIndex(this.playingItem)})}else this.bufferingItem!==e&&(this.bufferingItem=e);return t}bufferedToItem(e,t=0){let n=this.setBufferingItem(e);if(!this.playbackDisabled){if(this.isInterstitial(e))this.bufferedToEvent(e,t);else if(n!==null){this.bufferingAsset=null;let t=this.detachedData;t&&t.mediaSource?this.attachPrimary(e.start,e,!0):this.preloadPrimary(e)}}}preloadPrimary(e){let t=this.findItemIndex(e),n=this.getPrimaryResumption(e,t);this.startLoadingPrimaryAt(n)}bufferedToEvent(e,t){let n=e.event,r=n.assetList.length===0&&!n.assetListLoader,i=n.cue.once;if(r||!i){let e=this.preloadAssets(n,t);if(e!=null&&e.interstitial.appendInPlace){let t=this.primaryMedia;t&&this.bufferAssetPlayer(e,t)}}}preloadAssets(e,t){let n=e.assetUrl,r=e.assetList.length,i=r===0&&!e.assetListLoader,a=e.cue.once;if(i){let i=e.timelineStart;if(e.appendInPlace){var o;let t=this.playingItem;!this.isInterstitial(t)&&(t==null||(o=t.nextEvent)==null?void 0:o.identifier)===e.identifier&&this.flushFrontBuffer(i+.25)}let a,s=0;if(!this.playingItem&&this.primaryLive&&(s=this.hls.startPosition,s===-1&&(s=this.hls.liveSyncPosition||0)),s&&!(e.cue.pre||e.cue.post)){let e=s-i;e>0&&(a=Math.round(e*1e3)/1e3)}if(this.log(`Load interstitial asset ${t+1}/${n?1:r} ${e}${a?` live-start: ${s} start-offset: ${a}`:``}`),n)return this.createAsset(e,0,0,i,e.duration,n);let c=this.assetListLoader.loadAssetList(e,a);c&&(e.assetListLoader=c)}else if(!a&&r){for(let n=t;n<r;n++){let t=e.assetList[n],r=this.getAssetPlayerQueueIndex(t.identifier);(r===-1||this.playerQueue[r].destroyed)&&!t.error&&this.createAssetPlayer(e,t,n)}let n=e.assetList[t];if(n){let e=this.getAssetPlayer(n.identifier);return e&&e.loadSource(),e}}return null}flushFrontBuffer(e){let t=this.requiredTracks;t&&(this.log(`Removing front buffer starting at ${e}`),Object.keys(t).forEach(t=>{this.hls.trigger(Y.BUFFER_FLUSHING,{startOffset:e,endOffset:1/0,type:t})}))}getAssetPlayerQueueIndex(e){let t=this.playerQueue;for(let n=0;n<t.length;n++)if(e===t[n].assetId)return n;return-1}getAssetPlayer(e){let t=this.getAssetPlayerQueueIndex(e);return this.playerQueue[t]||null}
1820getBufferingPlayer(){let{playerQueue:e,primaryMedia:t}=this;if(t){for(let n=0;n<e.length;n++)if(e[n].media===t)return e[n]}return null}createAsset(e,t,n,r,i,a){let o={parentIdentifier:e.identifier,identifier:GH(e,a,t),duration:i,startOffset:n,timelineStart:r,uri:a};return this.createAssetPlayer(e,o,t)}createAssetPlayer(e,t,n){let r=this.hls,i=r.userConfig,a=i.videoPreference,o=r.loadLevelObj||r.levels[r.currentLevel];(a||o)&&(a=qN({},a),o.videoCodec&&(a.videoCodec=o.videoCodec),o.videoRange&&(a.allowedVideoRanges=[o.videoRange]));let s=r.audioTracks[r.audioTrack],c=r.subtitleTracks[r.subtitleTrack],l=0;if(this.primaryLive||e.appendInPlace){let e=this.timelinePos-t.timelineStart;if(e>1){let n=t.duration;n&&e<n&&(l=e)}}let u=t.identifier,d=YN(YN({},i),{},{maxMaxBufferLength:Math.min(180,r.config.maxMaxBufferLength),autoStartLoad:!0,startFragPrefetch:!0,primarySessionId:r.sessionId,assetPlayerId:u,abrEwmaDefaultEstimate:r.bandwidthEstimate,interstitialsController:void 0,startPosition:l,liveDurationInfinity:!1,testBandwidth:!1,videoPreference:a,audioPreference:s||i.audioPreference,subtitlePreference:c||i.subtitlePreference});e.appendInPlace&&(e.appendInPlaceStarted=!0,t.timelineStart&&(d.timelineOffset=t.timelineStart));let f=d.cmcd;f!=null&&f.sessionId&&f.contentId&&(d.cmcd=qN({},f,{contentId:HH(t.uri)})),this.getAssetPlayer(u)&&this.warn(`Duplicate date range identifier ${e} and asset ${u}`);let p=new QH(this.HlsPlayerClass,d,e,t);this.playerQueue.push(p),e.assetList[n]=t;let m=!0,h=r=>{if(r.live){let t=Error(`Interstitials MUST be VOD assets ${e}`),r={fatal:!0,type:VN.OTHER_ERROR,details:J.INTERSTITIAL_ASSET_ITEM_ERROR,error:t},i=this.schedule?.findEventIndex(e.identifier)||-1;this.handleAssetItemError(r,e,i,n,t.message);return}let i=r.edge-r.fragmentStart,a=t.duration;(m||a===null||i>a)&&(m=!1,this.log(`Interstitial asset "${u}" duration change ${a} > ${i}`),t.duration=i,this.updateSchedule())};p.on(Y.LEVEL_UPDATED,(e,{details:t})=>h(t)),p.on(Y.LEVEL_PTS_UPDATED,(e,{details:t})=>h(t)),p.on(Y.EVENT_CUE_ENTER,()=>this.onInterstitialCueEnter());let g=(e,t)=>{let n=this.getAssetPlayer(u);if(n&&t.tracks){n.off(Y.BUFFER_CODECS,g),n.tracks=t.tracks;let e=this.primaryMedia;this.bufferingAsset===n.assetItem&&e&&!n.media&&this.bufferAssetPlayer(n,e)}};p.on(Y.BUFFER_CODECS,g),p.on(Y.BUFFERED_TO_END,()=>{let n=this.getAssetPlayer(u);if(this.log(`buffered to end of asset ${n}`),!n||!this.schedule)return;let r=this.schedule.findEventIndex(e.identifier),i=this.schedule.items?.[r];this.isInterstitial(i)&&this.advanceAssetBuffering(i,t)});let _=t=>()=>{if(!this.getAssetPlayer(u)||!this.schedule)return;this.shouldPlay=!0;let n=this.schedule.findEventIndex(e.identifier);this.advanceAfterAssetEnded(e,n,t)};return p.once(Y.MEDIA_ENDED,_(n)),p.once(Y.PLAYOUT_LIMIT_REACHED,_(1/0)),p.on(Y.ERROR,(t,r)=>{if(!this.schedule)return;let i=this.getAssetPlayer(u);if(r.details===J.BUFFER_STALLED_ERROR){if(i!=null&&i.appendInPlace){this.handleInPlaceStall(e);return}this.onTimeupdate(),this.checkBuffer(!0);return}this.handleAssetItemError(r,e,this.schedule.findEventIndex(e.identifier),n,`Asset player error ${r.error} ${e}`)}),p.on(Y.DESTROYING,()=>{if(!this.getAssetPlayer(u)||!this.schedule)return;let t=Error(`Asset player destroyed unexpectedly ${u}`),r={fatal:!0,type:VN.OTHER_ERROR,details:J.INTERSTITIAL_ASSET_ITEM_ERROR,error:t};this.handleAssetItemError(r,e,this.schedule.findEventIndex(e.identifier),n,t.message)}),this.log(`INTERSTITIAL_ASSET_PLAYER_CREATED ${ZH(t)}`),this.hls.trigger(Y.INTERSTITIAL_ASSET_PLAYER_CREATED,{asset:t,assetListIndex:n,event:e,player:p}),p}clearInterstitial(e,t){this.clearAssetPlayers(e,t),e.reset()}clearAssetPlayers(e,t){e.assetList.forEach(e=>{this.clearAssetPlayer(e.identifier,t)})}resetAssetPlayer(e){let t=this.getAssetPlayerQueueIndex(e);if(t!==-1){this.log(`reset asset player "${e}" after error`);let n=this.playerQueue[t];this.transferMediaFromPlayer(n,null),n.resetDetails()}}clearAssetPlayer(e,t){let n=this.getAssetPlayerQueueIndex(e);if(n!==-1){let e=this.playerQueue[n];this.log(`clear ${e} toSegment: ${t&&tU(t)}`),this.transferMediaFromPlayer(e,t),this.playerQueue.splice(n,1),e.destroy()}}emptyPlayerQueue(){let e;for(;e=this.playerQueue.pop();)e.destroy();this.playerQueue=[]}
1820startAssetPlayer(e,t,n,r,i){let{interstitial:a,assetItem:o,assetId:s}=e,c=a.assetList.length,l=this.playingAsset;this.endedAsset=null,this.playingAsset=o,(!l||l.identifier!==s)&&(l&&(this.clearAssetPlayer(l.identifier,n[r]),delete l.error),this.log(`INTERSTITIAL_ASSET_STARTED ${t+1}/${c} ${ZH(o)}`),this.hls.trigger(Y.INTERSTITIAL_ASSET_STARTED,{asset:o,assetListIndex:t,event:a,schedule:n.slice(0),scheduleIndex:r,player:e})),this.bufferAssetPlayer(e,i)}bufferAssetPlayer(e,t){if(!this.schedule)return;let{interstitial:n,assetItem:r}=e,i=this.schedule.findEventIndex(n.identifier),a=this.schedule.items?.[i];if(!a)return;e.loadSource(),this.setBufferingItem(a),this.bufferingAsset=r;let o=this.getBufferingPlayer();if(o===e)return;let s=n.appendInPlace;if(s&&o?.interstitial.appendInPlace===!1)return;let c=o?.tracks||this.detachedData?.tracks||this.requiredTracks;if(s&&r!==this.playingAsset){if(!e.tracks){this.log(`Waiting for track info before buffering ${e}`);return}if(c&&!lP(c,e.tracks)){let t=Error(`Asset ${ZH(r)} SourceBuffer tracks ('${Object.keys(e.tracks)}') are not compatible with primary content tracks ('${Object.keys(c)}')`),a={fatal:!0,type:VN.OTHER_ERROR,details:J.INTERSTITIAL_ASSET_ITEM_ERROR,error:t},o=n.findAssetIndex(r);this.handleAssetItemError(a,n,i,o,t.message);return}}this.transferMediaTo(e,t)}handleInPlaceStall(e){let t=this.schedule,n=this.primaryMedia;if(!t||!n)return;let r=n.currentTime,i=t.findAssetIndex(e,r),a=e.assetList[i];if(a){let o=this.getAssetPlayer(a.identifier);if(o){let s=o.currentTime||r-a.timelineStart,c=o.duration-s;if(this.warn(`Stalled at ${s} of ${s+c} in ${o} ${e} (media.currentTime: ${r})`),s&&(c/n.playbackRate<.5||o.bufferedInPlaceToEnd(n))&&o.hls){let n=t.findEventIndex(e.identifier);this.advanceAfterAssetEnded(e,n,i)}}}}advanceInPlace(e){let t=this.primaryMedia;t&&t.currentTime<e&&(t.currentTime=e)}handleAssetItemError(e,t,n,r,i){if(e.details===J.BUFFER_STALLED_ERROR)return;let a=t.assetList[r]||null;if(this.warn(`INTERSTITIAL_ASSET_ERROR ${a&&ZH(a)} ${e.error}`),!this.schedule)return;let o=a?.identifier||``,s=this.getAssetPlayerQueueIndex(o),c=this.playerQueue[s]||null,l=this.schedule.items,u=qN({},e,{fatal:!1,errorAction:kI(!0),asset:a,assetListIndex:r,event:t,schedule:l,scheduleIndex:n,player:c});if(this.hls.trigger(Y.INTERSTITIAL_ASSET_ERROR,u),!e.fatal)return;let d=this.playingAsset,f=this.bufferingAsset,p=Error(i);if(a&&(this.clearAssetPlayer(o,null),a.error=p),!t.assetList.some(e=>!e.error))t.error=p;else for(let e=r;e<t.assetList.length;e++)this.resetAssetPlayer(t.assetList[e].identifier);this.updateSchedule(!0),t.error?this.primaryFallback(t):d&&d.identifier===o?this.advanceAfterAssetEnded(t,n,r):f&&f.identifier===o&&this.isInterstitial(this.bufferingItem)&&this.advanceAssetBuffering(this.bufferingItem,f)}primaryFallback(e){let t=e.timelineStart,n=this.effectivePlayingItem,r=this.timelinePos;if(n){this.log(`Fallback to primary from event "${e.identifier}" start: ${t} pos: ${r} playing: ${tU(n)} error: ${e.error}`),r===-1&&(r=this.hls.startPosition);let i=this.updateItem(n,r);this.itemsMatch(n,i)&&this.clearInterstitial(e,null),e.appendInPlace&&(this.attachPrimary(t,null),this.flushFrontBuffer(t))}else if(r===-1){this.checkStart();return}if(!this.schedule)return;let i=this.schedule.findItemIndexAtTime(r);this.setSchedulePosition(i)}onAssetListLoaded(e,t){var n;let r=t.event,i=r.identifier,a=t.assetListResponse.ASSETS;if(!((n=this.schedule)!=null&&n.hasEvent(i)))return;let o=r.timelineStart,s=r.duration,c=0;a.forEach((e,t)=>{let n=parseFloat(e.DURATION);this.createAsset(r,t,c,o+c,n,e.URI),c+=n}),r.duration=c,this.log(`Loaded asset-list with duration: ${c} (was: ${s}) ${r}`);let l=this.waitingItem?.event.identifier===i;this.updateSchedule();let u=this.bufferingItem?.event;if(l){let e=this.schedule.findEventIndex(i),t=this.schedule.items?.[e];if(t){if(!this.playingItem&&this.timelinePos>t.end&&this.schedule.findItemIndexAtTime(this.timelinePos)!==e){r.error=Error(`Interstitial ${a.length?`no longer within playback range`:`asset-list is empty`} ${this.timelinePos} ${r}`),this.log(r.error.message),this.updateSchedule(!0),this.primaryFallback(r);return}this.setBufferingItem(t)}this.setSchedulePosition(e)}else if(u?.identifier===i){let e=r.assetList[0];if(e){let t=this.getAssetPlayer(e.identifier);if(u.appendInPlace){let e=this.primaryMedia;t&&e&&this.bufferAssetPlayer(t,e)}else t&&t.loadSource()}}}onError(e,t){if(this.schedule)switch(t.details){case J.ASSET_LIST_PARSING_ERROR:case J.ASSET_LIST_LOAD_ERROR:case J.ASSET_LIST_LOAD_TIMEOUT:{let e=t.interstitial;e&&(this.updateSchedule(!0),this.primaryFallback(e));break}case J.BUFFER_STALLED_ERROR:{let e=this.endedItem||this.waitingItem||this.playingItem;if(this.isInterstitial(e)&&e.event.appendInPlace){this.handleInPlaceStall(e.event);return}this.log(`Primary player stall @${this.timelinePos} bufferedPos: ${this.bufferedPos}`),this.onTimeupdate(),this.checkBuffer(!0);break}}}},oU=500,sU=class extends kR{constructor(e,t,n){super(e,t,n,`subtitle-stream-controller`,UN.SUBTITLE),this.currentTrackId=-1,this.tracksBuffered=[],this.mainDetails=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.mainDetails=null}registerListeners(){super.registerListeners();let{hls:e}=this;e.on(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.on(Y.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUp
vendor: 8,798 bytes, line 1820
1820dated,this),e.on(Y.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.on(Y.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.on(Y.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),e.on(Y.BUFFER_FLUSHING,this.onBufferFlushing,this)}unregisterListeners(){super.unregisterListeners();let{hls:e}=this;e.off(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.off(Y.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(Y.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),e.off(Y.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.off(Y.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),e.off(Y.BUFFER_FLUSHING,this.onBufferFlushing,this)}startLoad(e,t){this.stopLoad(),this.state=X.IDLE,this.setInterval(oU),this.nextLoadPosition=this.lastCurrentTime=e+this.timelineOffset,this.startPosition=t?-1:e,this.tick()}onManifestLoading(){super.onManifestLoading(),this.mainDetails=null}onMediaDetaching(e,t){this.tracksBuffered=[],super.onMediaDetaching(e,t)}onLevelLoaded(e,t){this.mainDetails=t.details}onSubtitleFragProcessed(e,t){let{frag:n,success:r}=t;if(this.fragContextChanged(n)||(xP(n)&&(this.fragPrevious=n),this.state=X.IDLE),!r)return;let i=this.tracksBuffered[this.currentTrackId];if(!i)return;let a,o=n.start;for(let e=0;e<i.length;e++)if(o>=i[e].start&&o<=i[e].end){a=i[e];break}let s=n.start+n.duration;a?a.end=s:(a={start:o,end:s},i.push(a)),this.fragmentTracker.fragBuffered(n),this.fragBufferedComplete(n,null),this.media&&this.tick()}onBufferFlushing(e,t){let{startOffset:n,endOffset:r}=t;if(n===0&&r!==1/0){let e=r-1;if(e<=0)return;t.endOffsetSubtitles=Math.max(0,e),this.tracksBuffered.forEach(t=>{for(let n=0;n<t.length;){if(t[n].end<=e){t.shift();continue}if(t[n].start<e)t[n].start=e;else break;n++}}),this.fragmentTracker.removeFragmentsInRange(n,e,UN.SUBTITLE)}}onError(e,t){let n=t.frag;n?.type===UN.SUBTITLE&&(t.details===J.FRAG_GAP&&this.fragmentTracker.fragBuffered(n,!0),this.fragCurrent&&this.fragCurrent.abortRequests(),this.state!==X.STOPPED&&(this.state=X.IDLE))}onSubtitleTracksUpdated(e,{subtitleTracks:t}){if(this.levels&&UB(this.levels,t)){this.levels=t.map(e=>new WF(e));return}this.tracksBuffered=[],this.levels=t.map(e=>{let t=new WF(e);return this.tracksBuffered[t.id]=[],t}),this.fragmentTracker.removeFragmentsInRange(0,1/0,UN.SUBTITLE),this.fragPrevious=null,this.mediaBuffer=null}onSubtitleTrackSwitch(e,t){var n;if(this.currentTrackId=t.id,!((n=this.levels)!=null&&n.length)||this.currentTrackId===-1){this.clearInterval();return}let r=this.levels[this.currentTrackId];this.mediaBuffer=r!=null&&r.details?this.mediaBufferTimeRanges:null,r&&this.state!==X.STOPPED&&this.setInterval(oU)}onSubtitleTrackLoaded(e,t){var n;let{currentTrackId:r,levels:i}=this,{details:a,id:o}=t;if(!i){this.warn(`Subtitle tracks were reset while loading level ${o}`);return}let s=i[o];if(o>=i.length||!s)return;this.log(`Subtitle track ${o} loaded [${a.startSN},${a.endSN}]${a.lastPartSn?`[part-${a.lastPartSn}-${a.lastPartIndex}]`:``},duration:${a.totalduration}`),this.mediaBuffer=this.mediaBufferTimeRanges;let c=0;if(a.live||(n=s.details)!=null&&n.live){if(a.deltaUpdateFailed)return;let e=this.mainDetails;if(!e){this.startFragRequested=!1;return}let t=e.fragments[0];s.details?(c=this.alignPlaylists(a,s.details,this.levelLastLoaded?.details),c===0&&t&&(c=t.start,dR(a,c))):a.hasProgramDateTime&&e.hasProgramDateTime?(TR(a,e),c=a.fragmentStart):t&&(c=t.start,dR(a,c)),e&&!this.startFragRequested&&this.setStartPosition(e,c)}s.details=a,this.levelLastLoaded=s,o===r&&(this.hls.trigger(Y.SUBTITLE_TRACK_UPDATED,{details:a,id:o,groupId:t.groupId}),this.tick(),a.live&&!this.fragCurrent&&this.media&&this.state===X.IDLE&&(fI(null,a.fragments,this.media.currentTime,0)||(this.warn(`Subtitle playlist not aligned with playback`),s.details=void 0)))}_handleFragmentLoadComplete(e){let{frag:t,payload:n}=e,r=t.decryptdata,i=this.hls;if(!this.fragContextChanged(t)&&n&&n.byteLength>0&&r!=null&&r.key&&r.iv&&gL(r.method)){let e=performance.now();this.decrypter.decrypt(new Uint8Array(n),r.key.buffer,r.iv.buffer,_L(r.method)).catch(e=>{throw i.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.FRAG_DECRYPT_ERROR,fatal:!1,error:e,reason:e.message,frag:t}),e}).then(n=>{let r=performance.now();i.trigger(Y.FRAG_DECRYPTED,{frag:t,payload:n,stats:{tstart:e,tdecrypt:r}})}).catch(e=>{this.warn(`${e.name}: ${e.message}`),this.state=X.IDLE})}}doTick(){if(!this.media){this.state=X.IDLE;return}if(this.state===X.IDLE){let{currentTrackId:e,levels:t}=this,n=t?.[e];if(!n||!t.length||!n.details||this.waitForLive(n))return;let{config:r}=this,i=this.getLoadPosition(),{end:a,len:o}=$I.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],i,r.maxBufferHole),s=n.details;if(o>this.hls.maxBufferLength+s.levelTargetDuration)return;let c=s.fragments,l=c.length,u=s.edge,d=null,f=this.fragPrevious;if(a<u){let e=r.maxFragLookUpTolerance,t=a>u-e?0:e;d=fI(f,c,Math.max(c[0].start,a),t),!d&&f&&f.start<c[0].start&&(d=c[0])}else d=c[l-1];if(d=this.filterReplacedPrimary(d,n.details),!d)return;let p=c[d.sn-s.startSN-1];if(p&&p.cc===d.cc&&this.fragmentTracker.getState(p)===AI.NOT_LOADED&&(d=p),this.fragmentTracker.getState(d)===AI.NOT_LOADED){let e=this.mapToInitFragWhenRequired(d);e&&this.loadFragment(e,n,a)}}}loadFragment(e,t,n){xP(e)?super.loadFragment(e,t,n):this._loadInitSegment(e,t)}get mediaBufferTimeRanges(){return new cU(this.tracksBuffered[this.currentTrackId]||[])}},cU=class{constructor(e){this.buffered=void 0;let t=(t,n,r)=>{if(n>>>=0,n>r-1)throw new DOMException(`Failed to execute '${t}' on 'TimeRanges': The index provided (${n}) is greater than the maximum bound (${r})`);return e[n][t]};this.buffered={get length(){return e.length},end(n){return t(`end`,n,e.length)},start(n){return t(`start`,n,e.length)}}}},lU={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},uU=e=>String.fromCharCode(lU[e]||e),dU=15,fU=100,pU={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},mU={17:2,18:4,21:6,22:8,23:10,19:13,20:15},hU={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},gU={25:2,26:4,29:6,30:8,31:10,27:13,28:15},_U=[`white`,`green`,`blue`,`cyan`,`red`,`yellow`,`magenta`,`black`,`transparent`],vU=class{constructor(){this.time=null,this.verboseLevel=0}log(e,t){if(this.verboseLevel>=e){let n=typeof t==`function`?t():t;oP.log(`${this.time} [${e}] ${n}`)}}},yU=function(e){let t=[];for(let n=0;n<e.length;n++)t.push(e[n].toString(16));return t},bU=class{constructor(){this.foreground=`white`,this.underline=!1,this.italics=!1,this.background=`black`,this.flash=!1}reset(){this.foreground=`white`,this.underline=!1,this.italics=!1,this.background=`black`,this.flash=!1}setStyles(e){let t=[`foreground`,`underline`,`italics`,`background`,`flash`];for(let n=0;n<t.length;n++){let r=t[n];e.hasOwnProperty(r)&&(this[r]=e[r])}}isDefault(){return this.foreground===`white`&&!this.underline&&!this.italics&&this.background===`black`&&!this.flash}equals(e){return this.foreground===e.foreground&&this.underline===e.underline&&this.italics===e.italics&&this.background===e.background&&this.flash===e.flash}copy(e){this.foreground=e.foreground,this.underline=e.underline,this.italics=e.italics,this.background=e.background,this.flash=e.flash}toString(){return`color=`+this.foreground+`, underline=`+this.underline+`, italics=`+this.italics+`, background=`+this.background+`, flash=`+this.flash}},xU=class{constructor(){this.uchar=` `,this.penState=new bU}reset(){this.uchar=` `,this.penState.reset()}setChar(e,t){this.uchar=e,this.penState.copy(t)}setPenState(e){this.penState.copy(e)}equals(e){return this.uchar===e.uchar&&this.penState.equals(e.penState)}copy(e){this.uchar=e.uchar,this.penState.copy(e.penState)}isEmpty(){return this.uchar===` `&&this.penState.isDefault()}},SU=class{constructor(e){this.chars=[],this.pos=0,this.currPenState=new bU,this.cueStartTime=null,this.logger=void 0;for(let e=0;e<fU;e++)this.chars.push(new xU);this.logger=e}equals(e){for(let t=0;t<fU;t++)if(!this.chars[t].equals(e.chars[t]))return!1;return!0}copy(e){for(let t=0;t<fU;t++)this.chars[t].copy(e.chars[t])}isEmpty(){let e=!0;for(let t=0;t<fU;t++)if(!this.chars[t].isEmpty()){e=!1;break}return e}
vendor: 5,634 bytes, lines 1820-1821
1820setCursor(e){this.pos!==e&&(this.pos=e),this.pos<0?(this.logger.log(3,`Negative cursor position `+this.pos),this.pos=0):this.pos>fU&&(this.logger.log(3,`Too large cursor position `+this.pos),this.pos=fU)}moveCursor(e){let t=this.pos+e;if(e>1)for(let e=this.pos+1;e<t+1;e++)this.chars[e].setPenState(this.currPenState);this.setCursor(t)}backSpace(){this.moveCursor(-1),this.chars[this.pos].setChar(` `,this.currPenState)}insertChar(e){e>=144&&this.backSpace();let t=uU(e);if(this.pos>=fU){this.logger.log(0,()=>`Cannot insert `+e.toString(16)+` (`+t+`) at position `+this.pos+`. Skipping it!`);return}this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1)}clearFromPos(e){let t;for(t=e;t<fU;t++)this.chars[t].reset()}clear(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()}clearToEndOfRow(){this.clearFromPos(this.pos)}getTextString(){let e=[],t=!0;for(let n=0;n<fU;n++){let r=this.chars[n].uchar;r!==` `&&(t=!1),e.push(r)}return t?``:e.join(``)}setPenStyles(e){this.currPenState.setStyles(e),this.chars[this.pos].setPenState(this.currPenState)}},CU=class{constructor(e){this.rows=[],this.currRow=14,this.nrRollUpRows=null,this.lastOutputScreen=null,this.logger=void 0;for(let t=0;t<dU;t++)this.rows.push(new SU(e));this.logger=e}reset(){for(let e=0;e<dU;e++)this.rows[e].clear();this.currRow=14}equals(e){let t=!0;for(let n=0;n<dU;n++)if(!this.rows[n].equals(e.rows[n])){t=!1;break}return t}copy(e){for(let t=0;t<dU;t++)this.rows[t].copy(e.rows[t])}isEmpty(){let e=!0;for(let t=0;t<dU;t++)if(!this.rows[t].isEmpty()){e=!1;break}return e}backSpace(){this.rows[this.currRow].backSpace()}clearToEndOfRow(){this.rows[this.currRow].clearToEndOfRow()}insertChar(e){this.rows[this.currRow].insertChar(e)}setPen(e){this.rows[this.currRow].setPenStyles(e)}moveCursor(e){this.rows[this.currRow].moveCursor(e)}setCursor(e){this.logger.log(2,`setCursor: `+e),this.rows[this.currRow].setCursor(e)}setPAC(e){this.logger.log(2,()=>`pacData = `+YF(e));let t=e.row-1;if(this.nrRollUpRows&&t<this.nrRollUpRows-1&&(t=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==t){for(let e=0;e<dU;e++)this.rows[e].clear();let e=this.currRow+1-this.nrRollUpRows,n=this.lastOutputScreen;if(n){let r=n.rows[e].cueStartTime,i=this.logger.time;if(r!==null&&i!==null&&r<i)for(let r=0;r<this.nrRollUpRows;r++)this.rows[t-this.nrRollUpRows+r+1].copy(n.rows[e+r])}}this.currRow=t;let n=this.rows[this.currRow];if(e.indent!==null){let t=e.indent,r=Math.max(t-1,0);n.setCursor(e.indent),e.color=n.chars[r].penState.foreground}let r={foreground:e.color,underline:e.underline,italics:e.italics,background:`black`,flash:!1};this.setPen(r)}setBkgData(e){this.logger.log(2,()=>`bkgData = `+YF(e)),this.backSpace(),this.setPen(e),this.insertChar(32)}setRollUpRows(e){this.nrRollUpRows=e}rollUp(){if(this.nrRollUpRows===null){this.logger.log(3,`roll_up but nrRollUpRows not set yet`);return}this.logger.log(1,()=>this.getDisplayText());let e=this.currRow+1-this.nrRollUpRows,t=this.rows.splice(e,1)[0];t.clear(),this.rows.splice(this.currRow,0,t),this.logger.log(2,`Rolling up`)}getDisplayText(e){e||=!1;let t=[],n=``,r=-1;for(let n=0;n<dU;n++){let i=this.rows[n].getTextString();i&&(r=n+1,e?t.push(`Row `+r+`: '`+i+`'`):t.push(i.trim()))}return t.length>0&&(n=e?`[`+t.join(` | `)+`]`:t.join(` 1821`)),n}getTextAndFormat(){return this.rows}},wU=class{constructor(e,t,n){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=e,this.outputFilter=t,this.mode=null,this.verbose=0,this.displayedMemory=new CU(n),this.nonDisplayedMemory=new CU(n),this.lastOutputScreen=new CU(n),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=n}reset(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null}getHandler(){return this.outputFilter}setHandler(e){this.outputFilter=e}setPAC(e){this.writeScreen.setPAC(e)}setBkgData(e){this.writeScreen.setBkgData(e)}setMode(e){e!==this.mode&&(this.mode=e,this.logger.log(2,()=>`MODE=`+e),this.mode===`MODE_POP-ON`?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),this.mode!==`MODE_ROLL-UP`&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=e)}insertChars(e){for(let t=0;t<e.length;t++)this.writeScreen.insertChar(e[t]);let t=this.writeScreen===this.displayedMemory?`DISP`:`NON_DISP`;this.logger.log(2,()=>t+`: `+this.writeScreen.getDisplayText(!0)),(this.mode===`MODE_PAINT-ON`||this.mode===`MODE_ROLL-UP`)&&(this.logger.log(1,()=>`DISPLAYED: `+this.displayedMemory.getDisplayText(!0)),this.outputDataUpdate())}ccRCL(){this.logger.log(2,`RCL - Resume Caption Loading`),this.setMode(`MODE_POP-ON`)}ccBS(){this.logger.log(2,`BS - BackSpace`),this.mode!==`MODE_TEXT`&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate())}ccAOF(){}ccAON(){}ccDER(){this.logger.log(2,`DER- Delete to End of Row`),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()}ccRU(e){this.logger.log(2,`RU(`+e+`) - Roll Up`),this.writeScreen=this.displayedMemory,this.setMode(`MODE_ROLL-UP`),this.writeScreen.setRollUpRows(e)}ccFON(){this.logger.log(2,`FON - Flash On`),this.writeScreen.setPen({flash:!0})}
vendor: 26,773 bytes, lines 1821-1831
1821ccRDC(){this.logger.log(2,`RDC - Resume Direct Captioning`),this.setMode(`MODE_PAINT-ON`)}ccTR(){this.logger.log(2,`TR`),this.setMode(`MODE_TEXT`)}ccRTD(){this.logger.log(2,`RTD`),this.setMode(`MODE_TEXT`)}ccEDM(){this.logger.log(2,`EDM - Erase Displayed Memory`),this.displayedMemory.reset(),this.outputDataUpdate(!0)}ccCR(){this.logger.log(2,`CR - Carriage Return`),this.writeScreen.rollUp(),this.outputDataUpdate(!0)}ccENM(){this.logger.log(2,`ENM - Erase Non-displayed Memory`),this.nonDisplayedMemory.reset()}ccEOC(){if(this.logger.log(2,`EOC - End Of Caption`),this.mode===`MODE_POP-ON`){let e=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=e,this.writeScreen=this.nonDisplayedMemory,this.logger.log(1,()=>`DISP: `+this.displayedMemory.getDisplayText())}this.outputDataUpdate(!0)}ccTO(e){this.logger.log(2,`TO(`+e+`) - Tab Offset`),this.writeScreen.moveCursor(e)}ccMIDROW(e){let t={flash:!1};t.underline=e%2==1,t.italics=e>=46,t.foreground=t.italics?`white`:[`white`,`green`,`blue`,`cyan`,`red`,`yellow`,`magenta`][Math.floor(e/2)-16],this.logger.log(2,`MIDROW: `+YF(t)),this.writeScreen.setPen(t)}outputDataUpdate(e=!1){let t=this.logger.time;t!==null&&this.outputFilter&&(this.cueStartTime===null&&!this.displayedMemory.isEmpty()?this.cueStartTime=t:this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,t,this.lastOutputScreen),e&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:t),this.lastOutputScreen.copy(this.displayedMemory))}cueSplitAtTime(e){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.displayedMemory),this.cueStartTime=e))}},TU=class{constructor(e,t,n){this.channels=void 0,this.currentChannel=0,this.cmdHistory=OU(),this.logger=void 0;let r=this.logger=new vU;this.channels=[null,new wU(e,t,r),new wU(e+1,n,r)]}getHandler(e){return this.channels[e].getHandler()}setHandler(e,t){this.channels[e].setHandler(t)}addData(e,t){this.logger.time=e;for(let e=0;e<t.length;e+=2){let n=t[e]&127,r=t[e+1]&127,i=!1,a=null;if(n===0&&r===0)continue;this.logger.log(3,()=>`[`+yU([t[e],t[e+1]])+`] -> (`+yU([n,r])+`)`);let o=this.cmdHistory;if(n>=16&&n<=31){if(DU(n,r,o)){EU(null,null,o),this.logger.log(3,()=>`Repeated command (`+yU([n,r])+`) is dropped`);continue}EU(n,r,this.cmdHistory),i=this.parseCmd(n,r),i||=this.parseMidrow(n,r),i||=this.parsePAC(n,r),i||=this.parseBackgroundAttributes(n,r)}else EU(null,null,o);if(!i&&(a=this.parseChars(n,r),a)){let e=this.currentChannel;e&&e>0?this.channels[e].insertChars(a):this.logger.log(2,`No channel found yet. TEXT-MODE?`)}!i&&!a&&this.logger.log(2,()=>`Couldn't parse cleaned data `+yU([n,r])+` orig: `+yU([t[e],t[e+1]]))}}parseCmd(e,t){if(!((e===20||e===28||e===21||e===29)&&t>=32&&t<=47||(e===23||e===31)&&t>=33&&t<=35))return!1;let n=e===20||e===21||e===23?1:2,r=this.channels[n];return e===20||e===21||e===28||e===29?t===32?r.ccRCL():t===33?r.ccBS():t===34?r.ccAOF():t===35?r.ccAON():t===36?r.ccDER():t===37?r.ccRU(2):t===38?r.ccRU(3):t===39?r.ccRU(4):t===40?r.ccFON():t===41?r.ccRDC():t===42?r.ccTR():t===43?r.ccRTD():t===44?r.ccEDM():t===45?r.ccCR():t===46?r.ccENM():t===47&&r.ccEOC():r.ccTO(t-32),this.currentChannel=n,!0}parseMidrow(e,t){let n=0;if((e===17||e===25)&&t>=32&&t<=47){if(n=e===17?1:2,n!==this.currentChannel)return this.logger.log(0,`Mismatch channel in midrow parsing`),!1;let r=this.channels[n];return r?(r.ccMIDROW(t),this.logger.log(3,()=>`MIDROW (`+yU([e,t])+`)`),!0):!1}return!1}parsePAC(e,t){let n;if(!((e>=17&&e<=23||e>=25&&e<=31)&&t>=64&&t<=127||(e===16||e===24)&&t>=64&&t<=95))return!1;let r=e<=23?1:2;n=t>=64&&t<=95?r===1?pU[e]:hU[e]:r===1?mU[e]:gU[e];let i=this.channels[r];return i?(i.setPAC(this.interpretPAC(n,t)),this.currentChannel=r,!0):!1}interpretPAC(e,t){let n,r={color:null,italics:!1,indent:null,underline:!1,row:e};return n=t>95?t-96:t-64,r.underline=(n&1)==1,n<=13?r.color=[`white`,`green`,`blue`,`cyan`,`red`,`yellow`,`magenta`,`white`][Math.floor(n/2)]:n<=15?(r.italics=!0,r.color=`white`):r.indent=Math.floor((n-16)/2)*4,r}parseChars(e,t){let n,r=null,i=null;if(e>=25?(n=2,i=e-8):(n=1,i=e),i>=17&&i<=19){let e;e=i===17?t+80:i===18?t+112:t+144,this.logger.log(2,()=>`Special char '`+uU(e)+`' in channel `+n),r=[e]}else e>=32&&e<=127&&(r=t===0?[e]:[e,t]);return r&&this.logger.log(3,()=>`Char codes = `+yU(r).join(`,`)),r}parseBackgroundAttributes(e,t){if(!((e===16||e===24)&&t>=32&&t<=47||(e===23||e===31)&&t>=45&&t<=47))return!1;let n,r={};e===16||e===24?(n=Math.floor((t-32)/2),r.background=_U[n],t%2==1&&(r.background+=`_semi`)):t===45?r.background=`transparent`:(r.foreground=`black`,t===47&&(r.underline=!0));let i=e<=23?1:2;return this.channels[i].setBkgData(r),!0}reset(){for(let e=0;e<Object.keys(this.channels).length;e++){let t=this.channels[e];t&&t.reset()}EU(null,null,this.cmdHistory)}cueSplitAtTime(e){for(let t=0;t<this.channels.length;t++){let n=this.channels[t];n&&n.cueSplitAtTime(e)}}};function EU(e,t,n){n.a=e,n.b=t}function DU(e,t,n){return n.a===e&&n.b===t}function OU(){return{a:null,b:null}}var kU=(function(){if(CL!=null&&CL.VTTCue)return self.VTTCue;let e=[``,`lr`,`rl`],t=[`start`,`middle`,`end`,`left`,`right`];function n(e,t){if(typeof t!=`string`||!Array.isArray(e))return!1;let n=t.toLowerCase();return~e.indexOf(n)?n:!1}function r(t){return n(e,t)}function i(e){return n(t,e)}function a(e,...t){let n=1;for(;n<arguments.length;n++){let t=arguments[n];for(let n in t)e[n]=t[n]}return e}function o(e,t,n){let o=this,s={enumerable:!0};o.hasBeenReset=!1;let c=``,l=!1,u=e,d=t,f=n,p=null,m=``,h=!0,g=`auto`,_=`start`,v=50,y=`middle`,b=50,x=`middle`;Object.defineProperty(o,"id",a({},s,{get:function(){return c},set:function(e){c=``+e}})),Object.defineProperty(o,"pauseOnExit",a({},s,{get:function(){return l},set:function(e){l=!!e}})),Object.defineProperty(o,"startTime",a({},s,{get:function(){return u},set:function(e){if(typeof e!=`number`)throw TypeError(`Start time must be set to a number.`);u=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"endTime",a({},s,{get:function(){return d},set:function(e){if(typeof e!=`number`)throw TypeError(`End time must be set to a number.`);d=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"text",a({},s,{get:function(){return f},set:function(e){f=``+e,this.hasBeenReset=!0}})),Object.defineProperty(o,"region",a({},s,{get:function(){return p},set:function(e){p=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"vertical",a({},s,{get:function(){return m},set:function(e){let t=r(e);if(t===!1)throw SyntaxError(`An invalid or illegal string was specified.`);m=t,this.hasBeenReset=!0}})),Object.defineProperty(o,"snapToLines",a({},s,{get:function(){return h},set:function(e){h=!!e,this.hasBeenReset=!0}})),Object.defineProperty(o,"line",a({},s,{get:function(){return g},set:function(e){if(typeof e!=`number`&&e!==`auto`)throw SyntaxError(`An invalid number or illegal string was specified.`);g=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"lineAlign",a({},s,{get:function(){return _},set:function(e){let t=i(e);if(!t)throw SyntaxError(`An invalid or illegal string was specified.`);_=t,this.hasBeenReset=!0}})),Object.defineProperty(o,"position",a({},s,{get:function(){return v},set:function(e){if(e<0||e>100)throw Error(`Position must be between 0 and 100.`);v=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"positionAlign",a({},s,{get:function(){return y},set:function(e){let t=i(e);if(!t)throw SyntaxError(`An invalid or illegal string was specified.`);y=t,this.hasBeenReset=!0}})),Object.defineProperty(o,"size",a({},s,{get:function(){return b},set:function(e){if(e<0||e>100)throw Error(`Size must be between 0 and 100.`);b=e,this.hasBeenReset=!0}})),Object.defineProperty(o,"align",a({},s,{get:function(){return x},set:function(e){let t=i(e);if(!t)throw SyntaxError(`An invalid or illegal string was specified.`);x=t,this.hasBeenReset=!0}})),o.displayState=void 0}return o.prototype.getCueAsHTML=function(){return self.WebVTT.convertCueToDOMTree(self,this.text)},o})(),AU=class{decode(e,t){if(!e)return``;if(typeof e!=`string`)throw Error(`Error - expected string data.`);return decodeURIComponent(encodeURIComponent(e))}};function jU(e){function t(e,t,n,r){return(e|0)*3600+(t|0)*60+(n|0)+parseFloat(r||0)}let n=e.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return n?parseFloat(n[2])>59?t(n[2],n[3],0,n[4]):t(n[1],n[2],n[3],n[4]):null}var MU=class{constructor(){this.values=Object.create(null)}set(e,t){!this.get(e)&&t!==``&&(this.values[e]=t)}get(e,t,n){return n?this.has(e)?this.values[e]:t[n]:this.has(e)?this.values[e]:t}has(e){return e in this.values}alt(e,t,n){for(let r=0;r<n.length;++r)if(t===n[r]){this.set(e,t);break}}integer(e,t){/^-?\d+$/.test(t)&&this.set(e,parseInt(t,10))}percent(e,t){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(t)){let n=parseFloat(t);if(n>=0&&n<=100)return this.set(e,n),!0}return!1}};function NU(e,t,n,r){let i=r?e.split(r):[e];for(let e in i){if(typeof i[e]!=`string`)continue;let r=i[e].split(n);if(r.length!==2)continue;let a=r[0],o=r[1];t(a,o)}}var PU=new kU(0,0,``),FU=PU.align===`middle`?`middle`:`center`;function IU(e,t,n){let r=e;function i(){let t=jU(e);if(t===null)throw Error(`Malformed timestamp: `+r);return e=e.replace(/^[^\sa-zA-Z-]+/,``),t}function a(e,t){let r=new MU;NU(e,function(e,t){let i;switch(e){case`region`:for(let i=n.length-1;i>=0;i--)if(n[i].id===t){r.set(e,n[i].region);break}break;case`vertical`:r.alt(e,t,[`rl`,`lr`]);break;case`line`:i=t.split(`,`),r.integer(e,i[0]),r.percent(e,i[0])&&r.set(`snapToLines`,!1),r.alt(e,i[0],[`auto`]),i.length===2&&r.alt(`lineAlign`,i[1],[`start`,FU,`end`]);break;case`position`:i=t.split(`,`),r.percent(e,i[0]),i.length===2&&r.alt(`positionAlign`,i[1],[`start`,FU,`end`,`line-left`,`line-right`,`auto`]);break;case`size`:r.percent(e,t);break;case`align`:r.alt(e,t,[`start`,FU,`end`,`left`,`right`])}},/:/,/\s/),t.region=r.get(`region`,null),t.vertical=r.get(`vertical`,``);let i=r.get(`line`,`auto`);i===`auto`&&PU.line===-1&&(i=-1),t.line=i,t.lineAlign=r.get(`lineAlign`,`start`),t.snapToLines=r.get(`snapToLines`,!0),t.size=r.get(`size`,100),t.align=r.get(`align`,FU);let a=r.get(`position`,`auto`);a===`auto`&&PU.position===50&&(a=t.align===`start`||t.align===`left`?0:t.align===`end`||t.align===`right`?100:50),t.position=a}function o(){e=e.replace(/^\s+/,``)}if(o(),t.startTime=i(),o(),e.slice(0,3)!==`-->`)throw Error(`Malformed time stamp (time stamps must be separated by '-->'): `+r);e=e.slice(3),o(),t.endTime=i(),o(),a(e,t)}function LU(e){return e.replace(/<br(?: \/)?>/gi,` 1822`)}var RU=class{constructor(){this.state=`INITIAL`,this.buffer=``,this.decoder=new AU,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}parse(e){let t=this;e&&(t.buffer+=t.decoder.decode(e,{stream:!0}));function n(){let e=t.buffer,n=0;for(e=LU(e);n<e.length&&e[n]!==`\r`&&e[n]!==` 1823`;)++n;let r=e.slice(0,n);return e[n]===`\r`&&++n,e[n]===` 1824`&&++n,t.buffer=e.slice(n),r}function r(e){NU(e,function(e,t){},/:/)}try{let e=``;if(t.state===`INITIAL`){if(!/\r\n|\n/.test(t.buffer))return this;e=n();let r=e.match(/^()?WEBVTT([ \t].*)?$/);if(!(r!=null&&r[0]))throw Error(`Malformed WebVTT signature.`);t.state=`HEADER`}let i=!1;for(;t.buffer;){if(!/\r\n|\n/.test(t.buffer))return this;switch(i?i=!1:e=n(),t.state){case`HEADER`:/:/.test(e)?r(e):e||(t.state=`ID`);continue;case`NOTE`:e||(t.state=`ID`);continue;case`ID`:if(/^NOTE($|[ \t])/.test(e)){t.state=`NOTE`;break}if(!e)continue;if(t.cue=new kU(0,0,``),t.state=`CUE`,e.indexOf(`-->`)===-1){t.cue.id=e;continue}case`CUE`:if(!t.cue){t.state=`BADCUE`;continue}try{IU(e,t.cue,t.regionList)}catch{t.cue=null,t.state=`BADCUE`;continue}t.state=`CUETEXT`;continue;case`CUETEXT`:{let n=e.indexOf(`-->`)!==-1;if(!e||n&&(i=!0)){t.oncue&&t.cue&&t.oncue(t.cue),t.cue=null,t.state=`ID`;continue}if(t.cue===null)continue;t.cue.text&&(t.cue.text+=` 1825`),t.cue.text+=e}continue;case`BADCUE`:e||(t.state=`ID`)}}}catch{t.state===`CUETEXT`&&t.cue&&t.oncue&&t.oncue(t.cue),t.cue=null,t.state=t.state===`INITIAL`?`BADWEBVTT`:`BADCUE`}return this}flush(){let e=this;try{if((e.cue||e.state===`HEADER`)&&(e.buffer+=` 1826 1827`,e.parse()),e.state===`INITIAL`||e.state===`BADWEBVTT`)throw Error(`Malformed WebVTT signature.`)}catch(t){e.onparsingerror&&e.onparsingerror(t)}return e.onflush&&e.onflush(),this}},zU=/\r\n|\n\r|\n|\r/g,BU=function(e,t,n=0){return e.slice(n,n+t.length)===t},VU=function(e){let t=parseInt(e.slice(-3)),n=parseInt(e.slice(-6,-4)),r=parseInt(e.slice(-9,-7)),i=e.length>9?parseInt(e.substring(0,e.indexOf(`:`))):0;if(!q(t)||!q(n)||!q(r)||!q(i))throw Error(`Malformed X-TIMESTAMP-MAP: Local:${e}`);return t+=1e3*n,t+=6e4*r,t+=36e5*i,t};function HU(e,t,n){return HH(e.toString())+HH(t.toString())+HH(n)}var UU=function(e,t,n){let r=e[t],i=e[r.prevCC];if(!i||!i.new&&r.new){e.ccOffset=e.presentationOffset=r.start,r.new=!1;return}for(;(a=i)!=null&&a.new;){var a;e.ccOffset+=r.start-i.start,r.new=!1,r=i,i=e[r.prevCC]}e.presentationOffset=n};function WU(e,t,n,r,i,a,o){let s=new RU,c=uP(new Uint8Array(e)).trim().replace(zU,` 1828`).split(` 1829`),l=[],u=t?fB(t.baseTime,t.timescale):0,d=`00:00.000`,f=0,p=0,m,h=!0;s.oncue=function(e){let a=n[r],o=n.ccOffset,s=(f-u)/9e4;if(a!=null&&a.new&&(p===void 0?UU(n,r,s):o=n.ccOffset=a.start),s){if(!t){m=Error(`Missing initPTS for VTT MPEGTS`);return}o=s-n.presentationOffset}let c=e.endTime-e.startTime,d=SB((e.startTime+o-p)*9e4,i*9e4)/9e4;e.startTime=Math.max(d,0),e.endTime=Math.max(d+c,0);let h=e.text.trim();e.text=decodeURIComponent(encodeURIComponent(h)),e.id||=HU(e.startTime,e.endTime,h),e.endTime>0&&l.push(e)},s.onparsingerror=function(e){m=e},s.onflush=function(){if(m){o(m);return}a(l)},c.forEach(e=>{if(h){if(BU(e,`X-TIMESTAMP-MAP=`)){h=!1,e.slice(16).split(`,`).forEach(e=>{BU(e,`LOCAL:`)?d=e.slice(6):BU(e,`MPEGTS:`)&&(f=parseInt(e.slice(7)))});try{p=VU(d)/1e3}catch(e){m=e}return}e===``&&(h=!1)}s.parse(e+` 1830`)}),s.flush()}var GU=`stpp.ttml.im1t`,KU=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,qU=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,JU={left:`start`,center:`center`,right:`end`,start:`start`,end:`end`};function YU(e,t,n,r){let i=FP(new Uint8Array(e),[`mdat`]);if(i.length===0){r(Error(`Could not parse IMSC1 mdat`));return}let a=i.map(e=>uP(e)),o=uB(t.baseTime,1,t.timescale);try{a.forEach(e=>n(XU(e,o)))}catch(e){r(e)}}function XU(e,t){let n=new DOMParser().parseFromString(e,`text/xml`).getElementsByTagName(`tt`)[0];if(!n)throw Error(`Invalid ttml`);let r={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},i=Object.keys(r).reduce((e,t)=>(e[t]=n.getAttribute(`ttp:${t}`)||r[t],e),{}),a=n.getAttribute(`xml:space`)!==`preserve`,o=QU(ZU(n,`styling`,`style`)),s=QU(ZU(n,`layout`,`region`)),c=ZU(n,`body`,`[begin]`);return[].map.call(c,e=>{let n=$U(e,a);if(!n||!e.hasAttribute(`begin`))return null;let r=rW(e.getAttribute(`begin`),i),c=rW(e.getAttribute(`dur`),i),l=rW(e.getAttribute(`end`),i);if(r===null)throw nW(e);if(l===null){if(c===null)throw nW(e);l=r+c}let u=new kU(r-t,l-t,n);u.id=HU(u.startTime,u.endTime,u.text);let d=s[e.getAttribute(`region`)],f=o[e.getAttribute(`style`)],p=eW(d,f,o),{textAlign:m}=p;if(m){let e=JU[m];e&&(u.lineAlign=e),u.align=m}return qN(u,p),u}).filter(e=>e!==null)}function ZU(e,t,n){let r=e.getElementsByTagName(t)[0];return r?[].slice.call(r.querySelectorAll(n)):[]}function QU(e){return e.reduce((e,t)=>{let n=t.getAttribute(`xml:id`);return n&&(e[n]=t),e},{})}function $U(e,t){return[].slice.call(e.childNodes).reduce((e,n,r)=>{var i;return n.nodeName===`br`&&r?e+` 1831`:(i=n.childNodes)!=null&&i.length?$U(n,t):t?e+n.textContent.trim().replace(/\s+/g,` `):e+n.textContent},``)}function eW(e,t,n){let r=`http://www.w3.org/ns/ttml#styling`,i=null,a=[`displayAlign`,`textAlign`,`color`,`backgroundColor`,`fontSize`,`fontFamily`],o=e!=null&&e.hasAttribute(`style`)?e.getAttribute(`style`):null;return o&&n.hasOwnProperty(o)&&(i=n[o]),a.reduce((n,a)=>{let o=tW(t,r,a)||tW(e,r,a)||tW(i,r,a);return o&&(n[a]=o),n},{})}function tW(e,t,n){return e&&e.hasAttributeNS(t,n)?e.getAttributeNS(t,n):null}function nW(e){return Error(`Could not parse ttml timestamp ${e}`)}function rW(e,t){if(!e)return null;let n=jU(e);return n===null&&(KU.test(e)?n=iW(e,t):qU.test(e)&&(n=aW(e,t))),n}function iW(e,t){let n=KU.exec(e),r=(n[4]|0)+(n[5]|0)/t.subFrameRate;return(n[1]|0)*3600+(n[2]|0)*60+(n[3]|0)+r/t.frameRate}function aW(e,t){let n=qU.exec(e),r=Number(n[1]);switch(n[2]){case`h`:return r*3600;case`m`:return r*60;case`ms`:return r*1e3;case`f`:return r/t.frameRate;case`t`:return r/t.tickRate}return r}var oW=class{constructor(e,t){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=e,this.trackName=t}dispatchCue(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)}newCue(e,t,n){(this.startTime===null||this.startTime>e)&&(this.startTime=e),this.endTime=t,this.screen=n,this.timelineController.createCaptionsTrack(this.trackName)}reset(){this.cueRanges=[],this.startTime=null}},sW=class{constructor(e){this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=dW(),this.captionsProperties=void 0,this.hls=e,this.config=e.config,this.Cues=e.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},e.on(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(Y.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(Y.FRAG_LOADING,this.onFragLoading,this),e.on(Y.FRAG_LOADED,this.onFragLoaded,this),e.on(Y.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.on(Y.FRAG_DECRYPTED,this.onFragDecrypted,this),e.on(Y.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(Y.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.on(Y.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){let{hls:e}=this;e.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(Y.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(Y.FRAG_LOADING,this.onFragLoading,this),e.off(Y.FRAG_LOADED,this.onFragLoaded,this),e.off(Y.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.off(Y.FRAG_DECRYPTED,this.onFragDecrypted,this),e.off(Y.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(Y.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.off(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.media=null,this.cea608Parser1=this.cea608Parser2=void 0}initCea608Parsers(){let e=new oW(this,`textTrack1`),t=new oW(this,`textTrack2`),n=new oW(this,`textTrack3`),r=new oW(this,`textTrack4`);this.cea608Parser1=new TU(1,e,t),this.cea608Parser2=new TU(3,n,r)}addCues(e,t,n,r,i){let a=!1;for(let e=i.length;e--;){let r=i[e],o=uW(r[0],r[1],t,n);if(o>=0&&(r[0]=Math.min(r[0],t),r[1]=Math.max(r[1],n),a=!0,o/(n-t)>.5))return}if(a||i.push([t,n]),this.config.renderTextTracksNatively){let i=this.captionsTracks[e];this.Cues.newCue(i,t,n,r)}else{let i=this.Cues.newCue(null,t,n,r);this.hls.trigger(Y.CUES_PARSED,{type:`captions`,cues:i,track:e})}}onInitPtsFound(e,{frag:t,id:n,initPTS:r,timescale:i,trackId:a}){let{unparsedVttFrags:o}=this;n===UN.MAIN&&(this.initPTS[t.cc]={baseTime:r,timescale:i,trackId:a}),o.length&&(this.unparsedVttFrags=[],o.forEach(e=>{this.initPTS[e.frag.cc]?this.onFragLoaded(Y.FRAG_LOADED,e):this.hls.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e.frag,error:Error(`Subtitle discontinuity domain does not match main`)})}))}getExistingTrack(e,t){let{media:n}=this;if(n)for(let r=0;r<n.textTracks.length;r++){let i=n.textTracks[r];if(lW(i,{name:e,lang:t,characteristics:`transcribes-spoken-dialog,describes-music-and-sound`}))return i}return null}createCaptionsTrack(e){this.config.renderTextTracksNatively?this.createNativeTrack(e):this.createNonNativeTrack(e)}createNativeTrack(e){if(this.captionsTracks[e])return;let{captionsProperties:t,captionsTracks:n,media:r}=this,{label:i,languageCode:a}=t[e],o=this.getExistingTrack(i,a);if(o)n[e]=o,FH(n[e]),NH(n[e],r);else{let t=this.createTextTrack(`captions`,i,a);t&&(t[e]=!0,n[e]=t)}}createNonNativeTrack(e){if(this.nonNativeCaptionsTracks[e])return;let t=this.captionsProperties[e];if(!t)return;let n={_id:e,label:t.label,kind:`captions`,default:t.media?!!t.media.default:!1,closedCaptions:t.media};this.nonNativeCaptionsTracks[e]=n,this.hls.trigger(Y.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[n]})}createTextTrack(e,t,n){let r=this.media;if(r)return r.addTextTrack(e,t,n)}onMediaAttaching(e,t){this.media=t.media,t.mediaSource||this._cleanTracks()}onMediaDetaching(e,t){let n=!!t.transferMedia;if(this.media=null,n)return;let{captionsTracks:r}=this;Object.keys(r).forEach(e=>{FH(r[e]),delete r[e]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=dW(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){let{media:e}=this;if(!e)return;let t=e.textTracks;if(t)for(let e=0;e<t.length;e++)FH(t[e])}onSubtitleTracksUpdated(e,t){let n=t.subtitleTracks||[],r=n.some(e=>e.textCodec===GU);if(this.config.enableWebVTT||r&&this.config.enableIMSC1){if(UB(this.tracks,n)){this.tracks=n;return}if(this.textTracks=[],this.tracks=n,this.config.renderTextTracksNatively){let e=this.media,t=e?zH(e.textTracks):null;if(this.tracks.forEach((e,n)=>{let r;if(t){let n=null;for(let r=0;r<t.length;r++)if(t[r]&&lW(t[r],e)){n=t[r],t[r]=null;break}n&&(r=n)}if(r)FH(r);else{let t=cW(e);r=this.createTextTrack(t,e.name,e.lang),r&&(r.mode=`disabled`)}r&&this.textTracks.push(r)}),t!=null&&t.length){let e=t.filter(e=>e!==null).map(e=>e.label);e.length&&this.hls.logger.warn(`Media element contains unused subtitle tracks: ${e.join(`, `)}. Replace media element for each source to clear TextTracks and captions menu.`)}}else if(this.tracks.length){let e=this.tracks.map(e=>({label:e.name,kind:e.type.toLowerCase(),default:e.default,subtitleTrack:e}));this.hls.trigger(Y.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:e})}}}onManifestLoaded(e,t){this.config.enableCEA708Captions&&t.captions&&t.captions.forEach(e=>{let t=/(?:CC|SERVICE)([1-4])/.exec(e.instreamId);if(!t)return;let n=`textTrack${t[1]}`,r=this.captionsProperties[n];r&&(r.label=e.name,e.lang&&(r.languageCode=e.lang),r.media=e)})}closedCaptionsForLevel(e){return this.hls.levels[e.level]?.attrs[`CLOSED-CAPTIONS`]}onFragLoading(e,t){if(this.enabled&&t.frag.type===UN.MAIN){let{cea608Parser1:e,cea608Parser2:n,lastSn:r}=this,{cc:i,sn:a}=t.frag,o=t.part?.index??-1;e&&n&&(a!==r+1||a===r&&o!==this.lastPartIndex+1||i!==this.lastCc)&&(e.reset(),n.reset()),this.lastCc=i,this.lastSn=a,this.lastPartIndex=o}}onFragLoaded(e,t){let{frag:n,payload:r}=t;if(n.type===UN.SUBTITLE)if(r.byteLength){let e=n.decryptdata,i=`stats`in t;if(e==null||!e.encrypted||i){let e=this.tracks[n.level],i=this.vttCCs;i[n.cc]||(i[n.cc]={start:n.start,prevCC:this.prevCC,new:!0},this.prevCC=n.cc),e&&e.textCodec===GU?this._parseIMSC1(n,r):this._parseVTTs(t)}}else this.hls.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:n,error:Error(`Empty subtitle payload`)})}_parseIMSC1(e,t){let n=this.hls;YU(t,this.initPTS[e.cc],t=>{this._appendCues(t,e.level),n.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:e})},t=>{n.logger.log(`Failed to parse IMSC1: ${t}`),n.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e,error:t})})}_parseVTTs(e){var t;let{frag:n,payload:r}=e,{initPTS:i,unparsedVttFrags:a}=this,o=i.length-1;if(!i[n.cc]&&o===-1){a.push(e);return}let s=this.hls;WU((t=n.initSegment)!=null&&t.data?XP(n.initSegment.data,new Uint8Array(r)).buffer:r,this.initPTS[n.cc],this.vttCCs,n.cc,n.start,e=>{this._appendCues(e,n.level),s.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:n})},t=>{let i=t.message===`Missing initPTS for VTT MPEGTS`;i?a.push(e):this._fallbackToIMSC1(n,r),s.logger.log(`Failed to parse VTT cue: ${t}`),!(i&&o>n.cc)&&s.trigger(Y.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:n,error:t})})}_fallbackToIMSC1(e,t){let n=this.tracks[e.level];n.textCodec||YU(t,this.initPTS[e.cc],()=>{n.textCodec=GU,this._parseIMSC1(e,t)},()=>{n.textCodec=`wvtt`})}_appendCues(e,t){let n=this.hls;if(this.config.renderTextTracksNatively){let n=this.textTracks[t];if(!n||n.mode===`disabled`)return;e.forEach(e=>PH(n,e))}else{let r=this.tracks[t];if(!r)return;let i=r.default?`default`:`subtitles`+t;n.trigger(Y.CUES_PARSED,{type:`subtitles`,cues:e,track:i})}}onFragDecrypted(e,t){let{frag:n}=t;n.type===UN.SUBTITLE&&this.onFragLoaded(Y.FRAG_LOADED,t)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(e,t){if(!this.enabled||!this.config.enableCEA708Captions)return;let{frag:n,samples:r}=t;if(n.type!==UN.MAIN||this.closedCaptionsForLevel(n)!==`NONE`)for(let e=0;e<r.length;e++){let t=r[e].bytes;if(t){this.cea608Parser1||this.initCea608Parsers();let n=this.extractCea608Data(t);this.cea608Parser1.addData(r[e].pts,n[0]),this.cea608Parser2.addData(r[e].pts,n[1])}}}onBufferFlushing(e,{startOffset:t,endOffset:n,endOffsetSubtitles:r,type:i}){let{media:a}=this;if(!(!a||a.currentTime<n)){if(!i||i===`video`){let{captionsTracks:e}=this;Object.keys(e).forEach(r=>IH(e[r],t,n))}if(this.config.renderTextTracksNatively&&t===0&&r!==void 0){let{textTracks:e}=this;Object.keys(e).forEach(n=>IH(e[n],t,r))}}}extractCea608Data(e){let t=[[],[]],n=e[0]&31,r=2;for(let i=0;i<n;i++){let n=e[r++],i=127&e[r++],a=127&e[r++];if((i!==0||a!==0)&&4&n){let e=3&n;(e===0||e===1)&&(t[e].push(i),t[e].push(a))}}return t}};function cW(e){return e.characteristics&&/transcribes-spoken-dialog/gi.test(e.characteristics)&&/describes-music-and-sound/gi.test(e.characteristics)?`
1831captions`:`subtitles`}function lW(e,t){return!!e&&e.kind===cW(t)&&GB(t,e)}function uW(e,t,n,r){return Math.min(t,r)-Math.max(e,n)}function dW(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}}}var fW=/\s/,pW={newCue(e,t,n,r){let i=[],a,o,s,c,l,u=self.VTTCue||self.TextTrackCue;for(let f=0;f<r.rows.length;f++)if(a=r.rows[f],s=!0,c=0,l=``,!a.isEmpty()){var d;for(let e=0;e<a.chars.length;e++)fW.test(a.chars[e].uchar)&&s?c++:(l+=a.chars[e].uchar,s=!1);a.cueStartTime=t,t===n&&(n+=1e-4),c>=16?c--:c++;let r=LU(l.trim()),p=HU(t,n,r);e!=null&&(d=e.cues)!=null&&d.getCueById(p)||(o=new u(t,n,r),o.id=p,o.line=f+1,o.align=`left`,o.position=10+Math.min(80,Math.floor(c*8/32)*10),i.push(o))}return e&&i.length&&(i.sort((e,t)=>e.line===`auto`||t.line===`auto`?0:e.line>8&&t.line>8?t.line-e.line:e.line-t.line),i.forEach(t=>PH(e,t))),i}};function mW(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var hW=/(\d+)-(\d+)\/(\d+)/,gW=class{constructor(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=null,this.response=null,this.controller=void 0,this.context=null,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||bW,this.controller=new self.AbortController,this.stats=new vP}destroy(){this.loader=this.callbacks=this.context=this.config=this.request=null,this.abortInternal(),this.response=null,this.fetchSetup=this.controller=this.stats=null}abortInternal(){this.controller&&!this.stats.loading.end&&(this.stats.aborted=!0,this.controller.abort())}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(e,t,n){let r=this.stats;if(r.loading.start)throw Error(`Loader can only be used once.`);r.loading.start=self.performance.now();let i=_W(e,this.controller.signal),a=e.responseType===`arraybuffer`,o=a?`byteLength`:`length`,{maxTimeToFirstByteMs:s,maxLoadTimeMs:c}=t.loadPolicy;this.context=e,this.config=t,this.callbacks=n,this.request=this.fetchSetup(e,i),self.clearTimeout(this.requestTimeout),t.timeout=s&&q(s)?s:c,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(r,e,this.response))},t.timeout),(FB(this.request)?this.request.then(self.fetch):self.fetch(this.request)).then(n=>{this.response=this.loader=n;let i=Math.max(self.performance.now(),r.loading.start);if(self.clearTimeout(this.requestTimeout),t.timeout=c,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(r,e,this.response))},c-(i-r.loading.start)),!n.ok){let{status:e,statusText:t}=n;throw new xW(t||`fetch, bad network response`,e,n)}r.loading.first=i,r.total=yW(n.headers)||r.total;let o=this.callbacks?.onProgress;return o&&q(t.highWaterMark)?this.loadProgressively(n,r,e,t.highWaterMark,o):a?n.arrayBuffer():e.responseType===`json`?n.json():n.text()}).then(n=>{var i;let a=this.response;if(!a)throw Error(`loader destroyed`);self.clearTimeout(this.requestTimeout),r.loading.end=Math.max(self.performance.now(),r.loading.first);let s=n[o];s&&(r.loaded=r.total=s);let c={url:a.url,data:n,code:a.status},l=this.callbacks?.onProgress;l&&!q(t.highWaterMark)&&l(r,e,n,a),(i=this.callbacks)==null||i.onSuccess(c,r,e,a)}).catch(t=>{var n;if(self.clearTimeout(this.requestTimeout),r.aborted)return;let i=t&&t.code||0,a=t?t.message:null;(n=this.callbacks)==null||n.onError({code:i,text:a},e,t?t.details:null,r)})}getCacheAge(){let e=null;if(this.response){let t=this.response.headers.get(`age`);e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.response?this.response.headers.get(e):null}loadProgressively(e,t,n,r=0,i){let a=new jR,o=e.body.getReader(),s=()=>o.read().then(o=>{if(o.done)return a.dataLength&&i(t,n,a.flush().buffer,e),Promise.resolve(new ArrayBuffer(0));let c=o.value,l=c.length;return t.loaded+=l,l<r||a.dataLength?(a.push(c),a.dataLength>=r&&i(t,n,a.flush().buffer,e)):i(t,n,c.buffer,e),s()}).catch(()=>Promise.reject());return s()}};function _W(e,t){let n={method:`GET`,mode:`cors`,credentials:`same-origin`,signal:t,headers:new self.Headers(qN({},e.headers))};return e.rangeEnd&&n.headers.set(`Range`,`bytes=`+e.rangeStart+`-`+String(e.rangeEnd-1)),n}function vW(e){let t=hW.exec(e);if(t)return parseInt(t[2])-parseInt(t[1])+1}function yW(e){let t=e.get(`Content-Range`);if(t){let e=vW(t);if(q(e))return e}let n=e.get(`Content-Length`);if(n)return parseInt(n)}
vendor: 18,357 bytes, line 1831
1831function bW(e,t){return new self.Request(e.url,t)}var xW=class extends Error{constructor(e,t,n){super(e),this.code=void 0,this.details=void 0,this.code=t,this.details=n}},SW=/^age:\s*[\d.]+\s*$/im,CW=class{constructor(e){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=null,this.loader=null,this.stats=void 0,this.xhrSetup=e&&e.xhrSetup||null,this.stats=new vP,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null,this.context=null,this.xhrSetup=null}abortInternal(){let e=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),e&&(e.onreadystatechange=null,e.onprogress=null,e.readyState!==4&&(this.stats.aborted=!0,e.abort()))}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(e,t,n){if(this.stats.loading.start)throw Error(`Loader can only be used once.`);this.stats.loading.start=self.performance.now(),this.context=e,this.config=t,this.callbacks=n,this.loadInternal()}loadInternal(){let{config:e,context:t}=this;if(!e||!t)return;let n=this.loader=new self.XMLHttpRequest,r=this.stats;r.loading.first=0,r.loaded=0,r.aborted=!1;let i=this.xhrSetup;i?Promise.resolve().then(()=>{if(!(this.loader!==n||this.stats.aborted))return i(n,t.url)}).catch(e=>{if(!(this.loader!==n||this.stats.aborted))return n.open(`GET`,t.url,!0),i(n,t.url)}).then(()=>{this.loader!==n||this.stats.aborted||this.openAndSendXhr(n,t,e)}).catch(e=>{var i;(i=this.callbacks)==null||i.onError({code:n.status,text:e.message},t,n,r)}):this.openAndSendXhr(n,t,e)}openAndSendXhr(e,t,n){e.readyState||e.open(`GET`,t.url,!0);let r=t.headers,{maxTimeToFirstByteMs:i,maxLoadTimeMs:a}=n.loadPolicy;if(r)for(let t in r)e.setRequestHeader(t,r[t]);t.rangeEnd&&e.setRequestHeader(`Range`,`bytes=`+t.rangeStart+`-`+(t.rangeEnd-1)),e.onreadystatechange=this.readystatechange.bind(this),e.onprogress=this.loadprogress.bind(this),e.responseType=t.responseType,self.clearTimeout(this.requestTimeout),n.timeout=i&&q(i)?i:a,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),n.timeout),e.send()}readystatechange(){let{context:e,loader:t,stats:n}=this;if(!e||!t)return;let r=t.readyState,i=this.config;if(!n.aborted&&r>=2&&(n.loading.first===0&&(n.loading.first=Math.max(self.performance.now(),n.loading.start),i.timeout!==i.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),i.timeout=i.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),i.loadPolicy.maxLoadTimeMs-(n.loading.first-n.loading.start)))),r===4)){self.clearTimeout(this.requestTimeout),t.onreadystatechange=null,t.onprogress=null;let r=t.status,s=t.responseType===`text`?t.responseText:null;if(r>=200&&r<300){let i=s??t.response;if(i!=null){var a;n.loading.end=Math.max(self.performance.now(),n.loading.first),n.loaded=n.total=t.responseType===`arraybuffer`?i.byteLength:i.length,n.bwEstimate=n.total*8e3/(n.loading.end-n.loading.first);let o=this.callbacks?.onProgress;o&&o(n,e,i,t);let s={url:t.responseURL,data:i,code:r};(a=this.callbacks)==null||a.onSuccess(s,n,e,t);return}}let c=i.loadPolicy.errorRetry,l=n.retry;if(CI(c,l,!1,{url:e.url,data:void 0,code:r}))this.retry(c);else{var o;oP.error(`${r} while loading ${e.url}`),(o=this.callbacks)==null||o.onError({code:r,text:t.statusText},e,t,n)}}}loadtimeout(){if(!this.config)return;let e=this.config.loadPolicy.timeoutRetry,t=this.stats.retry;if(CI(e,t,!0))this.retry(e);else{oP.warn(`timeout while loading ${this.context?.url}`);let e=this.callbacks;e&&(this.abortInternal(),e.onTimeout(this.stats,this.context,this.loader))}}retry(e){let{context:t,stats:n}=this;this.retryDelay=xI(e,n.retry),n.retry++,oP.warn(`${status?`HTTP Status `+status:`Timeout`} while loading ${t?.url}, retrying ${n.retry}/${e.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(e){let t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)}getCacheAge(){let e=null;if(this.loader&&SW.test(this.loader.getAllResponseHeaders())){let t=this.loader.getResponseHeader(`age`);e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.loader&&RegExp(`^${e}:\\s*[\\d.]+\\s*$`,`im`).test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(e):null}},wW=YN(YN({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,maxDevicePixelRatio:1/0,preferManagedMediaSource:!0,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,frontBufferFlushThreshold:1/0,startOnSegmentBoundary:!1,maxBufferSize:6e7,maxFragLookUpTolerance:.25,maxBufferHole:.1,detectStallWithCurrentTimeMs:1250,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,nudgeOnVideoHole:!0,liveSyncMode:`edge`,liveSyncDurationCount:3,liveSyncOnStallIncrease:1,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,ignorePlaylistParsingErrors:!1,loader:CW,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:lI,bufferController:ZB,capLevelController:tV,errorController:OI,fpsController:MH,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrEwmaDefaultEstimateMax:5e6,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:kL,requireKeySystemAccessOnStart:!1,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableEmsgKLVMetadata:!1,enableID3MetadataCues:!0,enableInterstitialPlayback:!0,interstitialAppendInPlace:!0,interstitialLiveLookAhead:10,useMediaCapabilities:!0,preserveManualLevelOnError:!1,certLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null}},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:`linear`},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:`linear`}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},interstitialAssetListLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:3e4,timeoutRetry:{maxNumRetry:0,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:0,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},TW()),{},{subtitleStreamController:sU,subtitleTrackController:BH,timelineController:sW,audioStreamController:VB,audioTrackController:KB,emeController:DH,cmcdController:SH,contentSteeringController:wH,interstitialsController:aU});function TW(){return{cueHandler:pW,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:`English`,captionsTextTrack1LanguageCode:`en`,captionsTextTrack2Label:`Spanish`,captionsTextTrack2LanguageCode:`es`,captionsTextTrack3Label:`Unknown CC`,captionsTextTrack3LanguageCode:``,captionsTextTrack4Label:`Unknown CC`,captionsTextTrack4LanguageCode:``,renderTextTracksNatively:!0}}function EW(e,t,n){if((t.liveSyncDurationCount||t.liveMaxLatencyDurationCount)&&(t.liveSyncDuration||t.liveMaxLatencyDuration))throw Error(`Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration`);if(t.liveMaxLatencyDurationCount!==void 0&&(t.liveSyncDurationCount===void 0||t.liveMaxLatencyDurationCount<=t.liveSyncDurationCount))throw Error(`Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"`);if(t.liveMaxLatencyDuration!==void 0&&(t.liveSyncDuration===void 0||t.liveMaxLatencyDuration<=t.liveSyncDuration))throw Error(`Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"`);let r=DW(e),i=[`manifest`,`level`,`frag`],a=[`TimeOut`,`MaxRetry`,`RetryDelay`,`MaxRetryTimeout`];return i.forEach(e=>{let i=`${e===`level`?`playlist`:e}LoadPolicy`,o=t[i]===void 0,s=[];a.forEach(n=>{let a=`${e}Loading${n}`,c=t[a];if(c!==void 0&&o){s.push(a);let e=r[i].default;switch(t[i]={default:e},n){case`TimeOut`:e.maxLoadTimeMs=c,e.maxTimeToFirstByteMs=c;break;case`MaxRetry`:e.errorRetry.maxNumRetry=c,e.timeoutRetry.maxNumRetry=c;break;case`RetryDelay`:e.errorRetry.retryDelayMs=c,e.timeoutRetry.retryDelayMs=c;break;case`MaxRetryTimeout`:e.errorRetry.maxRetryDelayMs=c,e.timeoutRetry.maxRetryDelayMs=c}}}),s.length&&n.warn(`hls.js config: "${s.join(`", "`)}" setting(s) are deprecated, use "${i}": ${YF(t[i])}`)}),YN(YN({},r),t)}function DW(e){return e&&typeof e==`object`?Array.isArray(e)?e.map(DW):Object.keys(e).reduce((t,n)=>(t[n]=DW(e[n]),t),{}):e}function OW(e,t){let n=e.loader;n!==gW&&n!==CW?(t.log(`[config]: Custom loader detected, cannot enable progressive streaming`),e.progressive=!1):mW()&&(e.loader=gW,e.progressive=!0,e.enableSoftwareAES=!0,t.log(`[config]: Progressive streaming enabled, using FetchLoader`))}var kW=2,AW=.1,jW=.05,MW=100,NW=class extends YI{constructor(e,t){super(`gap-controller`,e.logger),this.hls=void 0,this.fragmentTracker=void 0,this.media=null,this.mediaSource=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.buffered={},this.lastCurrentTime=0,this.ended=0,this.waiting=0,this.onMediaPlaying=()=>{this.ended=0,this.waiting=0},this.onMediaWaiting=()=>{var e;(e=this.media)!=null&&e.seeking||(this.waiting=self.performance.now(),this.tick())},this.onMediaEnded=()=>{this.hls&&(this.ended=this.media?.currentTime||1,this.hls.trigger(Y.MEDIA_ENDED,{stalled:!1}))},this.hls=e,this.fragmentTracker=t,this.registerListeners()}registerListeners(){let{hls:e}=this;e&&(e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.BUFFER_APPENDED,this.onBufferAppended,this))}unregisterListeners(){let{hls:e}=this;e&&(e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.BUFFER_APPENDED,this.onBufferAppended,this))}destroy(){super.destroy(),this.unregisterListeners(),this.media=this.hls=this.fragmentTracker=null,this.mediaSource=void 0}onMediaAttached(e,t){this.setInterval(MW),this.mediaSource=t.mediaSource;let n=this.media=t.media;ER(n,`playing`,this.onMediaPlaying),ER(n,`waiting`,this.onMediaWaiting),ER(n,`ended`,this.onMediaEnded)}onMediaDetaching(e,t){this.clearInterval();let{media:n}=this;n&&(DR(n,`playing`,this.onMediaPlaying),DR(n,`waiting`,this.onMediaWaiting),DR(n,`ended`,this.onMediaEnded),this.media=null),this.mediaSource=void 0}onBufferAppended(e,t){this.buffered=t.timeRanges}get hasBuffered(){return Object.keys(this.buffered).length>0}tick(){var e;if(!((e=this.media)!=null&&e.readyState)||!this.hasBuffered)return;let t=this.media.currentTime;this.poll(t,this.lastCurrentTime),this.lastCurrentTime=t}poll(e,t){let n=this.hls?.config;if(!n)return;let r=this.media;if(!r)return;let{seeking:i}=r,a=this.seeking&&!i,o=!this.seeking&&i,s=r.paused&&!i||r.ended||r.playbackRate===0;if(this.seeking=i,e!==t){t&&(this.ended=0),this.moved=!0,i||(this.nudgeRetry=0,n.nudgeOnVideoHole&&!s&&e>t&&this.nudgeOnVideoHole(e,t)),this.waiting===0&&this.stallResolved(e);return}if(o||a){a&&this.stallResolved(e);return}if(s){this.nudgeRetry=0,this.stallResolved(e),!this.ended&&r.ended&&this.hls&&(this.ended=e||1,this.hls.trigger(Y.MEDIA_ENDED,{stalled:!1}));return}if(!$I.getBuffered(r).length){this.nudgeRetry=0;return}let c=$I.bufferInfo(r,e,0),l=c.nextStart||0,u=this.fragmentTracker;if(i&&u&&this.hls){let t=PW(this.hls.inFlightFragments,e),n=c.len>kW,r=!l||t||l-e>kW&&!u.getPartialFragment(e);if(n||r)return;this.moved=!1}let d=this.hls?.latestLevelDetails;if(!this.moved&&this.stalled!==null&&u){if(!(c.len>0)&&!l)return;let t=Math.max(l,c.start||0)-e,n=d!=null&&d.live?d.targetduration*2:kW,i=IW(e,u);if(t>0&&(t<=n||i)){r.paused||this._trySkipBufferHole(i);return}}let f=n.detectStallWithCurrentTimeMs,p=self.performance.now(),m=this.waiting,h=this.stalled;if(h===null)if(m>0&&p-m<f)h=this.stalled=m;else{this.stalled=p;return}let g=p-h;if(!i&&(g>=f||m)&&this.hls){if(this.mediaSource?.readyState===`ended`&&!(d!=null&&d.live)&&Math.abs(e-(d?.edge||0))<1){if(this.ended)return;this.ended=e||1,this.hls.trigger(Y.MEDIA_ENDED,{stalled:!0});return}if(this._reportStall(c),!this.media||!this.hls)return}let _=$I.bufferInfo(r,e,n.maxBufferHole);this._tryFixBufferStall(_,g,e)}stallResolved(e){let t=this.stalled;if(t&&this.hls&&(this.stalled=null,this.stallReported)){let n=self.performance.now()-t;this.log(`playback not stuck anymore @${e}, after ${Math.round(n)}ms`),this.stallReported=!1,this.waiting=0,this.hls.trigger(Y.STALL_RESOLVED,{})}}nudgeOnVideoHole(e,t){var n;let r=this.buffered.video;if(this.hls&&this.media&&this.fragmentTracker&&(n=this.buffered.audio)!=null&&n.length&&r&&r.length>1&&e>r.end(0)){let n=$I.bufferedInfo($I.timeRangesToArray(this.buffered.audio),e,0);if(n.len>1&&t>=n.start){let n=$I.timeRangesToArray(r),i=$I.bufferedInfo(n,t,0).bufferedIndex;if(i>-1&&i<n.length-1){let t=$I.bufferedInfo(n,e,0).bufferedIndex,r=n[i].end,a=n[i+1].start;if((t===-1||t>i)&&a-r<1&&e-r<2){let n=Error(`nudging playhead to flush pipeline after video hole. currentTime: ${e} hole: ${r} -> ${a} buffered index: ${t}`);this.warn(n.message),this.media.currentTime+=1e-6;let i=IW(e,this.fragmentTracker);i&&`fragment`in i?i=i.fragment:i||=void 0;let o=$I.bufferInfo(this.media,e,0);this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:n,reason:n.message,frag:i,buffer:o.len,bufferInfo:o})}}}}}_tryFixBufferStall(e,t,n){let{fragmentTracker:r,media:i}=this,a=this.hls?.config;if(!i||!r||!a)return;let o=this.hls?.latestLevelDetails,s=IW(n,r);if((s||o!=null&&o.live&&n<o.fragmentStart)&&(this._trySkipBufferHole(s)||!this.media))return;let c=e.buffered,l=this.adjacentTraversal(e,n);(c&&c.length>1&&e.len>a.maxBufferHole||e.nextStart&&(e.nextStart-n<a.maxBufferHole||l))&&(t>a.highBufferWatchdogPeriod*1e3||this.waiting)&&(this.warn(`Trying to nudge playhead over buffer-hole`),this._tryNudgeBuffer(e))}adjacentTraversal(e,t){let n=this.fragmentTracker,r=e.nextStart;if(n&&r){let e=n.getFragAtPos(t,UN.MAIN),i=n.getFragAtPos(r,UN.MAIN);if(e&&i)return i.sn-e.sn<2}return!1}_reportStall(e){let{hls:t,media:n,stallReported:r,stalled:i}=this;if(!r&&i!==null&&n&&t){this.stallReported=!0;let r=Error(`Playback stalling at @${n.currentTime} due to low buffer (${YF(e)})`);this.warn(r.message),t.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_STALLED_ERROR,fatal:!1,error:r,buffer:e.len,bufferInfo:e,stalled:{start:i}})}}_trySkipBufferHole(e){let{fragmentTracker:t,media:n}=this,r=this.hls?.config;if(!n||!t||!r)return 0;let i=n.currentTime,a=$I.bufferInfo(n,i,0),o=i<a.start?a.start:a.nextStart;if(o&&this.hls){let c=a.len<=r.maxBufferHole,l=a.len>0&&a.len<1&&n.readyState<3,u=o-i;if(u>0&&(c||l)){if(u>r.maxBufferHole){let n=!1;if(i===0){let e=t.getAppendedFrag(0,UN.MAIN);e&&o<e.end&&(n=!0)}if(!n&&e){var s;if(!((s=this.hls.loadLevelObj)!=null&&s.details)||PW(this.hls.inFlightFragments,o))return 0;let n=!1,r=e.end;for(;r<o;){let e=IW(r,t);if(e)r+=e.duration;else{n=!0;break}}if(n)return 0}}let c=Math.max(o+jW,i+AW);if(this.warn(`skipping hole, adjusting currentTime from ${i} to ${c}`),this.moved=!0,n.currentTime=c,!(e!=null&&e.gap)){let t=Error(`fragment loaded with buffer holes, seeking from ${i} to ${c}`),n={type:VN.MEDIA_ERROR,details:J.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:t,reason:t.message,buffer:a.len,bufferInfo:a};e&&(`fragment`in e?n.part=e:n.frag=e),this.hls.trigger(Y.ERROR,n)}return c}}return 0}_tryNudgeBuffer(e){let{hls:t,media:n,nudgeRetry:r}=this,i=t?.config;if(!n||!i)return 0;let a=n.currentTime;if(this.nudgeRetry++,r<i.nudgeMaxRetry){let o=a+(r+1)*i.nudgeOffset,s=Error(`Nudging 'currentTime' from ${a} to ${o}`);this.warn(s.message),n.currentTime=o,t.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_NUDGE_ON_STALL,error:s,fatal:!1,buffer:e.len,bufferInfo:e})}else{let n=Error(`Playhead still not moving while enough data buffered @${a} after ${i.nudgeMaxRetry} nudges`);this.error(n.message),t.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.BUFFER_STALLED_ERROR,error:n,fatal:!0,buffer:e.len,bufferInfo:e})}}};function PW(e,t){let n=FW(e.main);if(n&&n.start<=t)return n;let r=FW(e.audio);return r&&r.start<=t?r:null}function FW(e){if(!e)return null;switch(e.state){case X.IDLE:case X.STOPPED:case X.ENDED:case X.ERROR:return null}return e.frag}function IW(e,t){return t.getAppendedFrag(e,UN.MAIN)||t.getPartialFragment(e)}var LW=.25;function RW(){if(!(typeof self>`u`))return self.VTTCue||self.TextTrackCue}function zW(e,t,n,r,i){let a=new e(t,n,``);
1831try{a.value=r,i&&(a.type=i)}catch{a=new e(t,n,YF(i?YN({type:i},r):r))}return a}var BW=(()=>{let e=RW();try{e&&new e(0,1/0,``)}catch{return Number.MAX_VALUE}return 1/0})(),VW=class{constructor(e){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.removeCues=!0,this.assetCue=void 0,this.onEventCueEnter=()=>{this.hls&&this.hls.trigger(Y.EVENT_CUE_ENTER,{})},this.hls=e,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=this.onEventCueEnter=null}_registerListeners(){let{hls:e}=this;e&&(e.on(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(Y.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this))}_unregisterListeners(){let{hls:e}=this;
1831e&&(e.off(Y.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(Y.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(Y.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this))}onMediaAttaching(e,t){this.media=t.media,t.overrides?.cueRemoval===!1&&(this.removeCues=!1)}onMediaAttached(){let e=this.hls?.latestLevelDetails;e&&this.updateDateRangeCues(e)}onMediaDetaching(e,t){this.media=null,!t.transferMedia&&(this.id3Track&&=(this.removeCues&&FH(this.id3Track,this.onEventCueEnter),null),this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(e){let t=this.getID3Track(e.textTracks);return t.mode=`hidden`,t}getID3Track(e){if(this.media){for(let t=0;t<e.length;t++){let n=e[t];if(n.kind===`metadata`&&n.label===`id3`)return NH(n,this.media),n}return this.media.addTextTrack(`metadata`,`id3`)}}onFragParsingMetadata(e,t){if(!this.media||!this.hls)return;let{enableEmsgMetadataCues:n,enableID3MetadataCues:r}=this.hls.config;if(!n&&!r)return;let{samples:i}=t;this.id3Track||=this.createTrack(this.media);let a=RW();if(a)for(let e=0;e<i.length;e++){let t=i[e].type;if(t===Cz.emsg&&!n||!r)continue;let o=yz(i[e].data),s=i[e].pts,c=s+i[e].duration;c>BW&&(c=BW),c-s<=0&&(c=s+LW);for(let e=0;e<o.length;e++){let n=o[e];if(!bz(n)){this.updateId3CueEnds(s,t);let e=zW(a,s,c,n,t);e&&this.id3Track.addCue(e)}}}}updateId3CueEnds(e,t){let n=this.id3Track?.cues;if(n)for(let r=n.length;r--;){let i=n[r];i.type===t&&i.startTime<e&&i.endTime===BW&&(i.endTime=e)}}onBufferFlushing(e,{startOffset:t,endOffset:n,type:r}){let{id3Track:i,hls:a}=this;if(!a)return;let{config:{enableEmsgMetadataCues:o,enableID3MetadataCues:s}}=a;if(i&&(o||s)){let e;e=r===`audio`?e=>e.type===Cz.audioId3&&s:r===`video`?e=>e.type===Cz.emsg&&o:e=>e.type===Cz.audioId3&&s||e.type===Cz.emsg&&o,IH(i,t,n,e)}}onLevelUpdated(e,{details:t}){this.updateDateRangeCues(t,!0)}onLevelPtsUpdated(e,t){Math.abs(t.drift)>.01&&this.updateDateRangeCues(t.details)}updateDateRangeCues(e,t){if(!this.hls||!this.media)return;let{assetPlayerId:n,timelineOffset:r,enableDateRangeMetadataCues:i,interstitialsController:a}=this.hls.config;if(!i)return;let o=RW();if(n&&r&&!a){let{fragmentStart:t,fragmentEnd:r}=e,i=this.assetCue;i?(i.startTime=t,i.endTime=r):o&&(i=this.assetCue=zW(o,t,r,{assetPlayerId:this.hls.config.assetPlayerId},`hlsjs.interstitial.asset`),i&&(i.id=n,this.id3Track||=this.createTrack(this.media),this.id3Track.addCue(i),i.addEventListener(`enter`,this.onEventCueEnter)))}if(!e.hasProgramDateTime)return;let{id3Track:s}=this,{dateRanges:c}=e,l=Object.keys(c),u=this.dateRangeCuesAppended;if(s&&t){var d;if((d=s.cues)!=null&&d.length){let e=Object.keys(u).filter(e=>!l.includes(e));for(let t=e.length;t--;){let n=e[t],r=u[n]?.cues;delete u[n],r&&Object.keys(r).forEach(e=>{let t=r[e];if(t){t.removeEventListener(`enter`,this.onEventCueEnter);try{s.removeCue(t)}catch{}}})}}else u=this.dateRangeCuesAppended={}}let f=e.fragments[e.fragments.length-1];if(!(l.length===0||!q(f?.programDateTime))){this.id3Track||=this.createTrack(this.media);for(let e=0;e<l.length;e++){let t=l[e],n=c[t],r=n.startTime,i=u[t],s=i?.cues||{},d=i?.durationKnown||!1,f=BW,{duration:p,endDate:m}=n;if(m&&p!==null)f=r+p,d=!0;else if(n.endOnNext&&!d){let e=l.reduce((e,t)=>{if(t!==n.id){let r=c[t];if(r.class===n.class&&r.startDate>n.startDate&&(!e||n.startDate<e.startDate))return r}return e},null);e&&(f=e.startTime,d=!0)}let h=Object.keys(n.attr);for(let e=0;e<h.length;e++){let c=h[e];if(!lL(c))continue;let l=s[c];if(l)d&&!(i!=null&&i.durationKnown)?l.endTime=f:Math.abs(l.startTime-r)>.01&&(l.startTime=r,l.endTime=f);else if(o){let e=n.attr[c];uL(c)&&(e=fP(e));let i=zW(o,r,f,{key:c,data:e},Cz.dateRange);i&&(i.id=t,this.id3Track.addCue(i),s[c]=i,a&&(c===`X-ASSET-LIST`||c===`X-ASSET-URL`)&&i.addEventListener(`enter`,this.onEventCueEnter))}}u[t]={cues:s,dateRange:n,durationKnown:d}}}}},HW=class{constructor(e){this.hls=void 0,this.config=void 0,this.media=null,this.currentTime=0,this.stallCount=0,this._latency=null,this._targetLatencyUpdated=!1,this.onTimeupdate=()=>{let{media:e}=this,t=this.levelDetails;if(!e||!t)return;this.currentTime=e.currentTime;let n=this.computeLatency();if(n===null)return;this._latency=n;let{lowLatencyMode:r,maxLiveSyncPlaybackRate:i}=this.config;if(!r||i===1||!t.live)return;let a=this.targetLatency;if(a===null)return;let o=n-a;if(o<Math.min(this.maxLatency,a+t.targetduration)&&o>.05&&this.forwardBufferLength>1){let t=Math.min(2,Math.max(1,i)),n=Math.round(2/(1+Math.exp(-.75*o-this.edgeStalled))*20)/20,r=Math.min(t,Math.max(1,n));this.changeMediaPlaybackRate(e,r)}else e.playbackRate!==1&&e.playbackRate!==0&&this.changeMediaPlaybackRate(e,1)},this.hls=e,this.config=e.config,this.registerListeners()}get levelDetails(){return this.hls?.latestLevelDetails||null}get latency(){return this._latency||0}get maxLatency(){let{config:e}=this;if(e.liveMaxLatencyDuration!==void 0)return e.liveMaxLatencyDuration;let t=this.levelDetails;return t?e.liveMaxLatencyDurationCount*t.targetduration:0}get targetLatency(){let e=this.levelDetails;if(e===null||this.hls===null)return null;let{holdBack:t,partHoldBack:n,targetduration:r}=e,{liveSyncDuration:i,liveSyncDurationCount:a,lowLatencyMode:o}=this.config,s=this.hls.userConfig,c=o&&n||t;(this._targetLatencyUpdated||s.liveSyncDuration||s.liveSyncDurationCount||c===0)&&(c=i===void 0?a*r:i);let l=r;return c+Math.min(this.stallCount*this.config.liveSyncOnStallIncrease,l)}set targetLatency(e){this.stallCount=0,this.config.liveSyncDuration=e,this._targetLatencyUpdated=!0}get liveSyncPosition(){let e=this.estimateLiveEdge(),t=this.targetLatency;if(e===null||t===null)return null;let n=this.levelDetails;if(n===null)return null;let r=n.edge,i=e-t-this.edgeStalled,a=r-n.totalduration,o=r-(this.config.lowLatencyMode&&n.partTarget||n.targetduration);return Math.min(Math.max(a,i),o)}get drift(){let e=this.levelDetails;return e===null?1:e.drift}get edgeStalled(){let e=this.levelDetails;if(e===null)return 0;let t=(this.config.lowLatencyMode&&e.partTarget||e.targetduration)*3;return Math.max(e.age-t,0)}get forwardBufferLength(){let{media:e}=this,t=this.levelDetails;if(!e||!t)return 0;let n=e.buffered.length;return(n?e.buffered.end(n-1):t.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.hls=null}registerListeners(){let{hls:e}=this;
vendor: 11,659 bytes, line 1831
1831e&&(e.on(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(Y.ERROR,this.onError,this))}unregisterListeners(){let{hls:e}=this;e&&(e.off(Y.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(Y.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(Y.ERROR,this.onError,this))}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener(`timeupdate`,this.onTimeupdate)}onMediaDetaching(){this.media&&=(this.media.removeEventListener(`timeupdate`,this.onTimeupdate),null)}onManifestLoading(){this._latency=null,this.stallCount=0}onLevelUpdated(e,{details:t}){t.advanced&&this.onTimeupdate(),!t.live&&this.media&&this.media.removeEventListener(`timeupdate`,this.onTimeupdate)}onError(e,t){var n;t.details===J.BUFFER_STALLED_ERROR&&(this.stallCount++,this.hls&&(n=this.levelDetails)!=null&&n.live&&this.hls.logger.warn(`[latency-controller]: Stall detected, adjusting target latency`))}changeMediaPlaybackRate(e,t){var n;e.playbackRate!==t&&((n=this.hls)==null||n.logger.debug(`[latency-controller]: latency=${this.latency.toFixed(3)}, targetLatency=${this.targetLatency?.toFixed(3)}, forwardBufferLength=${this.forwardBufferLength.toFixed(3)}: adjusting playback rate from ${e.playbackRate} to ${t}`),e.playbackRate=t)}estimateLiveEdge(){let e=this.levelDetails;return e===null?null:e.edge+e.age}computeLatency(){let e=this.estimateLiveEdge();return e===null?null:e-this.currentTime}},UW=class extends HB{constructor(e,t){super(e,`level-controller`),this._levels=[],this._firstLevel=-1,this._maxAutoLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=t,this._registerListeners()}_registerListeners(){let{hls:e}=this;e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.on(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.on(Y.ERROR,this.onError,this)}_unregisterListeners(){let{hls:e}=this;e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.off(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(Y.FRAG_BUFFERED,this.onFragBuffered,this),e.off(Y.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}stopLoad(){this._levels.forEach(e=>{e.loadError=0,e.fragmentError=0}),super.stopLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[],this._maxAutoLevel=-1}onManifestLoading(e,t){this.resetLevels()}onManifestLoaded(e,t){let n=this.hls.config.preferManagedMediaSource,r=[],i={},a={},o=!1,s=!1,c=!1;t.levels.forEach(e=>{let t=e.attrs,{audioCodec:l,videoCodec:u}=e;l&&(e.audioCodec=l=vF(l,n)||void 0),u&&=e.videoCodec=SF(u);let{width:d,height:f,unknownCodecs:p}=e,m=p?.length||0;if(o||=!!(d&&f),s||=!!u,c||=!!l,m||l&&!this.isAudioSupported(l)||u&&!this.isVideoSupported(u)){this.log(`Some or all CODECS not supported "${t.CODECS}"`);return}let{CODECS:h,"FRAME-RATE":g,"HDCP-LEVEL":_,"PATHWAY-ID":v,RESOLUTION:y,"VIDEO-RANGE":b}=t,x=`${`${v||`.`}-`}${e.bitrate}-${y}-${g}-${h}-${b}-${_}`;if(!i[x]){let t=this.createLevel(e);i[x]=t,a[x]=1,r.push(t)}else if(i[x].uri!==e.url&&!e.attrs[`PATHWAY-ID`]){let t=a[x]+=1;e.attrs[`PATHWAY-ID`]=Array(t+1).join(`.`);let n=this.createLevel(e);i[x]=n,r.push(n)}else i[x].addGroupId(`audio`,t.AUDIO),i[x].addGroupId(`text`,t.SUBTITLES)}),this.filterAndSortMediaOptions(r,t,o,s,c)}createLevel(e){let t=new WF(e),n=e.supplemental;if(n!=null&&n.videoCodec&&!this.isVideoSupported(n.videoCodec)){let e=Error(`SUPPLEMENTAL-CODECS not supported "${n.videoCodec}"`);this.log(e.message),t.supportedResult=kF(e,[])}return t}isAudioSupported(e){return uF(e,`audio`,this.hls.config.preferManagedMediaSource)}isVideoSupported(e){return uF(e,`video`,this.hls.config.preferManagedMediaSource)}filterAndSortMediaOptions(e,t,n,r,i){let a=[],o=[],s=e,c=t.stats?.parsing||{};if((n||r)&&i&&(s=s.filter(({videoCodec:e,videoRange:t,width:n,height:r})=>(!!e||!!(n&&r))&&BF(t))),s.length===0){Promise.resolve().then(()=>{if(this.hls){let e=`no level with compatible codecs found in manifest`,n=e;t.levels.length&&(n=`one or more CODECS in variant not supported: ${YF(t.levels.map(e=>e.attrs.CODECS).filter((e,t,n)=>n.indexOf(e)===t))}`,this.warn(n),e+=` (${n})`);let r=Error(e);this.hls.trigger(Y.ERROR,{type:VN.MEDIA_ERROR,details:J.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:t.url,error:r,reason:n})}}),c.end=performance.now();return}t.audioTracks&&(a=t.audioTracks.filter(e=>!e.audioCodec||this.isAudioSupported(e.audioCodec)),WW(a)),t.subtitles&&(o=t.subtitles,WW(o));let l=s.slice(0);s.sort((e,t)=>{if(e.attrs[`HDCP-LEVEL`]!==t.attrs[`HDCP-LEVEL`])return(e.attrs[`HDCP-LEVEL`]||``)>(t.attrs[`HDCP-LEVEL`]||``)?1:-1;if(n&&e.height!==t.height)return e.height-t.height;if(e.frameRate!==t.frameRate)return e.frameRate-t.frameRate;if(e.videoRange!==t.videoRange)return zF.indexOf(e.videoRange)-zF.indexOf(t.videoRange);if(e.videoCodec!==t.videoCodec){let n=pF(e.videoCodec),r=pF(t.videoCodec);if(n!==r)return r-n}if(e.uri===t.uri&&e.codecSet!==t.codecSet){let n=mF(e.codecSet),r=mF(t.codecSet);if(n!==r)return r-n}return e.averageBitrate===t.averageBitrate?0:e.averageBitrate-t.averageBitrate});let u=l[0];if(this.steering&&(s=this.steering.filterParsedLevels(s),s.length!==l.length)){for(let e=0;e<l.length;e++)if(l[e].pathwayId===s[0].pathwayId){u=l[e];break}}this._levels=s;for(let e=0;e<s.length;e++)if(s[e]===u){this._firstLevel=e;let t=u.bitrate,n=this.hls.bandwidthEstimate;if(this.log(`manifest loaded, ${s.length} level(s) found, first bitrate: ${t}`),this.hls.userConfig?.abrEwmaDefaultEstimate===void 0){let e=Math.min(t,this.hls.config.abrEwmaDefaultEstimateMax);e>n&&n===this.hls.abrEwmaDefaultEstimate&&(this.hls.bandwidthEstimate=e)}break}let d=i&&!r,f=this.hls.config,p=!!(f.audioStreamController&&f.audioTrackController),m={levels:s,audioTracks:a,subtitleTracks:o,sessionData:t.sessionData,sessionKeys:t.sessionKeys,firstLevel:this._firstLevel,stats:t.stats,audio:i,video:r,altAudio:p&&!d&&a.some(e=>!!e.url)};c.end=performance.now(),this.hls.trigger(Y.MANIFEST_PARSED,m)}get levels(){return this._levels.length===0?null:this._levels}get loadLevelObj(){return this.currentLevel}get level(){return this.currentLevelIndex}set level(e){let t=this._levels;if(t.length===0)return;if(e<0||e>=t.length){let n=Error(`invalid level idx`),r=e<0;if(this.hls.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.LEVEL_SWITCH_ERROR,level:e,fatal:r,error:n,reason:n.message}),r)return;e=Math.min(e,t.length-1)}let n=this.currentLevelIndex,r=this.currentLevel,i=r?r.attrs[`PATHWAY-ID`]:void 0,a=t[e],o=a.attrs[`PATHWAY-ID`];if(this.currentLevelIndex=e,this.currentLevel=a,n===e&&r&&i===o)return;this.log(`Switching to level ${e} (${a.height?a.height+`p `:``}${a.videoRange?a.videoRange+` `:``}${a.codecSet?a.codecSet+` `:``}@${a.bitrate})${o?` with Pathway `+o:``} from level ${n}${i?` with Pathway `+i:``}`);let s={level:e,attrs:a.attrs,details:a.details,bitrate:a.bitrate,averageBitrate:a.averageBitrate,maxBitrate:a.maxBitrate,realBitrate:a.realBitrate,width:a.width,height:a.height,codecSet:a.codecSet,audioCodec:a.audioCodec,videoCodec:a.videoCodec,audioGroups:a.audioGroups,subtitleGroups:a.subtitleGroups,loaded:a.loaded,loadError:a.loadError,fragmentError:a.fragmentError,name:a.name,id:a.id,uri:a.uri,url:a.url,urlId:0,audioGroupIds:a.audioGroupIds,textGroupIds:a.textGroupIds};this.hls.trigger(Y.LEVEL_SWITCHING,s);let c=a.details;if(!c||c.live){let e=this.switchParams(a.uri,r?.details,c);this.loadPlaylist(e)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(e){this.manualLevelIndex=e,this._startLevel===void 0&&(this._startLevel=e),e!==-1&&(this.level=e)}get firstLevel(){return this._firstLevel}set firstLevel(e){this._firstLevel=e}get startLevel(){if(this._startLevel===void 0){let e=this.hls.config.startLevel;return e===void 0?this.hls.firstAutoLevel:e}return this._startLevel}set startLevel(e){this._startLevel=e}get pathways(){return this.steering?this.steering.pathways():[]}get pathwayPriority(){return this.steering?this.steering.pathwayPriority:null}set pathwayPriority(e){if(this.steering){let t=this.steering.pathways(),n=e.filter(e=>t.indexOf(e)!==-1);if(e.length<1){this.warn(`pathwayPriority ${e} should contain at least one pathway from list: ${t}`);return}this.steering.pathwayPriority=n}}onError(e,t){t.fatal||!t.context||t.context.type===HN.LEVEL&&t.context.level===this.level&&this.checkRetry(t)}onFragBuffered(e,{frag:t}){if(t!==void 0&&t.type===UN.MAIN){let e=t.elementaryStreams;if(!Object.keys(e).some(t=>!!e[t]))return;let n=this._levels[t.level];n!=null&&n.loadError&&(this.log(`Resetting level error count of ${n.loadError} on frag buffered`),n.loadError=0)}}onLevelLoaded(e,t){var n;let{level:r,details:i}=t,a=t.levelInfo;if(!a){var o;this.warn(`Invalid level index ${r}`),(o=t.deliveryDirectives)!=null&&o.skip&&(i.deltaUpdateFailed=!0);return}if(a===this.currentLevel||t.withoutMultiVariant){a.fragmentError===0&&(a.loadError=0);let e=a.details;e===t.details&&e.advanced&&(e=void 0),this.playlistLoaded(r,t,e)}else(n=t.deliveryDirectives)!=null&&n.skip&&(i.deltaUpdateFailed=!0)}loadPlaylist(e){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentLevel)&&this.scheduleLoading(this.currentLevel,e)}loadingPlaylist(e,t){super.loadingPlaylist(e,t);let n=this.getUrlWithDirectives(e.uri,t),r=this.currentLevelIndex,i=e.attrs[`PATHWAY-ID`],a=e.details,o=a?.age;this.log(`Loading level index ${r}${t?.msn===void 0?``:` at sn `+t.msn+` part `+t.part}${i?` Pathway `+i:``}${o&&a.live?` age `+o.toFixed(1)+(a.type&&` `+a.type||``):``} ${n}`),this.hls.trigger(Y.LEVEL_LOADING,{url:n,level:r,levelInfo:e,pathwayId:e.attrs[`PATHWAY-ID`],id:0,deliveryDirectives:t||null})}get nextLoadLevel(){return this.manualLevelIndex===-1?this.hls.nextAutoLevel:this.manualLevelIndex}set nextLoadLevel(e){this.level=e,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=e)}removeLevel(e){var t;if(this._levels.length===1)return;let n=this._levels.filter((t,n)=>n!==e||(this.steering&&this.steering.removeLevel(t),t===this.currentLevel&&(this.currentLevel=null,this.currentLevelIndex=-1,t.details&&t.details.fragments.forEach(e=>e.level=-1)),!1));gR(n),this._levels=n,this.currentLevelIndex>-1&&(t=this.currentLevel)!=null&&t.details&&(this.currentLevelIndex=this.currentLevel.details.fragments[0].level),this.manualLevelIndex>-1&&(this.manualLevelIndex=this.currentLevelIndex);let r=n.length-1;this._firstLevel=Math.min(this._firstLevel,r),this._startLevel&&=Math.min(this._startLevel,r),this.hls.trigger(Y.LEVELS_UPDATED,{levels:n})}onLevelsUpdated(e,{levels:t}){this._levels=t}checkMaxAutoUpdated(){let{autoLevelCapping:e,maxAutoLevel:t,maxHdcpLevel:n}=this.hls;this._maxAutoLevel!==t&&(this._maxAutoLevel=t,this.hls.trigger(Y.MAX_AUTO_LEVEL_UPDATED,{autoLevelCapping:e,levels:this.levels,maxAutoLevel:t,minAutoLevel:this.hls.minAutoLevel,maxHdcpLevel:n}))}};function WW(e){let t={};e.forEach(e=>{let n=e.groupId||``;e.id=t[n]=t[n]||0,t[n]++})}function GW(){return self.SourceBuffer||self.WebKitSourceBuffer}function KW(){if(!sP())return!1;let e=GW();return!e||e.prototype&&typeof e.prototype.appendBuffer==`function`&&typeof e.prototype.remove==`function`}
vendor: 4,468 bytes, line 1831
1831function qW(){if(!KW())return!1;let e=sP();return typeof e?.isTypeSupported==`function`&&([`avc1.42E01E,mp4a.40.2`,`av01.0.01M.08`,`vp09.00.50.08`].some(t=>e.isTypeSupported(fF(t,`video`)))||[`mp4a.40.2`,`fLaC`].some(t=>e.isTypeSupported(fF(t,`audio`))))}function JW(){var e;let t=GW();return typeof(t==null||(e=t.prototype)==null?void 0:e.changeType)==`function`}var YW=100,XW=class extends kR{constructor(e,t,n){super(e,t,n,`stream-controller`,UN.MAIN),this.audioCodecSwap=!1,this.level=-1,this._forceStartLoad=!1,this._hasEnoughToStart=!1,this.altAudio=0,this.audioOnly=!1,this.fragPlaying=null,this.fragLastKbps=0,this.couldBacktrack=!1,this.backtrackFragment=null,this.audioCodecSwitch=!1,this.videoBuffer=null,this.onMediaPlaying=()=>{this.tick()},this.onMediaSeeked=()=>{let e=this.media,t=e?e.currentTime:null;if(t===null||!q(t)||(this.log(`Media seeked to ${t.toFixed(3)}`),!this.getBufferedFrag(t)))return;let n=this.getFwdBufferInfoAtPos(e,t,UN.MAIN,0);if(n===null||n.len===0){this.warn(`Main forward buffer length at ${t} on "seeked" event ${n?n.len:`empty`})`);return}this.tick()},this.registerListeners()}registerListeners(){super.registerListeners();let{hls:e}=this;e.on(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.on(Y.LEVEL_LOADING,this.onLevelLoading,this),e.on(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.on(Y.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.on(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(Y.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.on(Y.BUFFER_CREATED,this.onBufferCreated,this),e.on(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(Y.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){super.unregisterListeners();let{hls:e}=this;e.off(Y.MANIFEST_PARSED,this.onManifestParsed,this),e.off(Y.LEVEL_LOADED,this.onLevelLoaded,this),e.off(Y.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.off(Y.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(Y.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.off(Y.BUFFER_CREATED,this.onBufferCreated,this),e.off(Y.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(Y.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(Y.FRAG_BUFFERED,this.onFragBuffered,this)}onHandlerDestroying(){this.onMediaPlaying=this.onMediaSeeked=null,this.unregisterListeners(),super.onHandlerDestroying()}startLoad(e,t){if(this.levels){let{lastCurrentTime:n,hls:r}=this;if(this.stopLoad(),this.setInterval(YW),this.level=-1,!this.startFragRequested){let e=r.startLevel;e===-1&&(r.config.testBandwidth&&this.levels.length>1?(e=0,this.bitrateTest=!0):e=r.firstAutoLevel),r.nextLoadLevel=e,this.level=r.loadLevel,this._hasEnoughToStart=!!t}n>0&&e===-1&&!t&&(this.log(`Override startPosition with lastCurrentTime @${n.toFixed(3)}`),e=n),this.state=X.IDLE,this.nextLoadPosition=this.lastCurrentTime=e+this.timelineOffset,this.startPosition=t?-1:e,this.tick()}else this._forceStartLoad=!0,this.state=X.STOPPED}stopLoad(){this._forceStartLoad=!1,super.stopLoad()}doTick(){switch(this.state){case X.WAITING_LEVEL:{let{levels:e,level:t}=this,n=e?.[t],r=n?.details;if(r&&(!r.live||this.levelLastLoaded===n&&!this.waitForLive(n))){if(this.waitForCdnTuneIn(r))break;this.state=X.IDLE;break}if(this.hls.nextLoadLevel!==this.level){this.state=X.IDLE;break}break}case X.FRAG_LOADING_WAITING_RETRY:this.checkRetryDate()}this.state===X.IDLE&&this.doTickIdle(),this.onTickEnd()}onTickEnd(){var e;super.onTickEnd(),(e=this.media)!=null&&e.readyState&&this.media.seeking===!1&&(this.lastCurrentTime=this.media.currentTime),this.checkFragmentChanged()}doTickIdle(){let{hls:e,levelLastLoaded:t,levels:n,media:r}=this;if(t===null||!r&&!this.primaryPrefetch&&(this.startFragRequested||!e.config.startFragPrefetch)||this.altAudio&&this.audioOnly)return;let i=this.buffering?e.nextLoadLevel:e.loadLevel;if(!(n!=null&&n[i]))return;let a=n[i],o=this.getMainFwdBufferInfo();if(o===null)return;let s=this.getLevelDetails();if(s&&this._streamEnded(o,s)){let e={};this.altAudio===2&&(e.type=`video`),this.hls.trigger(Y.BUFFER_EOS,e),this.state=X.ENDED;return}if(!this.buffering)return;e.loadLevel!==i&&e.manualLevel===-1&&this.log(`Adapting to level ${i} from level ${this.level}`),this.level=e.nextLoadLevel=i;let c=a.details;if(!c||this.state===X.WAITING_LEVEL||this.waitForLive(a)){this.level=i,this.state=X.WAITING_LEVEL,this.startFragRequested=!1;return}let l=o.len,u=this.getMaxBufferLength(a.maxBitrate);
vendor: 15,920 bytes, line 1831
1831if(l>=u)return;this.backtrackFragment&&this.backtrackFragment.start>o.end&&(this.backtrackFragment=null);let d=this.backtrackFragment?this.backtrackFragment.start:o.end,f=this.getNextFragment(d,c);if(this.couldBacktrack&&!this.fragPrevious&&f&&xP(f)&&this.fragmentTracker.getState(f)!==AI.OK){let e=(this.backtrackFragment??f).sn-c.startSN,t=c.fragments[e-1];t&&f.cc===t.cc&&(f=t,this.fragmentTracker.removeFragment(t))}else this.backtrackFragment&&o.len&&(this.backtrackFragment=null);if(f&&this.isLoopLoading(f,d)){if(!f.gap){let e=this.audioOnly&&!this.altAudio?yP.AUDIO:yP.VIDEO,t=(e===yP.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;t&&this.afterBufferFlushed(t,e,UN.MAIN)}f=this.getNextFragmentLoopLoading(f,c,o,UN.MAIN,u)}f&&(this.exceedsMaxBuffer(o,u,f)||(f.initSegment&&!f.initSegment.data&&!this.bitrateTest&&(f=f.initSegment),this.loadFragment(f,a,d)))}loadFragment(e,t,n){let r=this.fragmentTracker.getState(e);r===AI.NOT_LOADED||r===AI.PARTIAL?xP(e)?this.bitrateTest?(this.log(`Fragment ${e.sn} of level ${e.level} is being downloaded to test bitrate and will not be buffered`),this._loadBitrateTestFrag(e,t)):super.loadFragment(e,t,n):this._loadInitSegment(e,t):this.clearTrackerIfNeeded(e)}getBufferedFrag(e){return this.fragmentTracker.getBufferedFrag(e,UN.MAIN)}followingBufferedFrag(e){return e?this.getBufferedFrag(e.end+.5):null}immediateLevelSwitch(){this.abortCurrentFrag(),this.flushMainBuffer(0,1/0),this.altAudio!==0&&(this.getLevelDetails()?.fragmentStart||0)>this.lastCurrentTime&&super.flushMainBuffer(0,1/0,`audio`)}nextLevelSwitch(){let{levels:e,media:t}=this;if(t!=null&&t.readyState){let n,r=this.getAppendedFrag(t.currentTime);r&&r.start>1&&this.flushMainBuffer(0,r.start-1);let i=this.getLevelDetails();if(i!=null&&i.live){let e=this.getMainFwdBufferInfo();if(!e||e.len<i.targetduration*2)return}if(!t.paused&&e){let t=e[this.hls.nextLoadLevel],r=this.fragLastKbps;n=r&&this.fragCurrent?this.fragCurrent.duration*t.maxBitrate/(1e3*r)+1:0}else n=0;let a=this.getBufferedFrag(t.currentTime+n);if(a){let e=this.followingBufferedFrag(a);if(e){this.abortCurrentFrag();let t=e.maxStartPTS?e.maxStartPTS:e.start,n=e.duration,r=Math.max(a.end,t+Math.min(Math.max(n-this.config.maxFragLookUpTolerance,n*(this.couldBacktrack?.5:.125)),n*(this.couldBacktrack?.75:.25)));this.flushMainBuffer(r,1/0)}}}}abortCurrentFrag(){let e=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,e&&(e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.state){case X.KEY_LOADING:case X.FRAG_LOADING:case X.FRAG_LOADING_WAITING_RETRY:case X.PARSING:case X.PARSED:this.state=X.IDLE}this.nextLoadPosition=this.getLoadPosition()}flushMainBuffer(e,t){super.flushMainBuffer(e,t,this.altAudio===2?`video`:null)}onMediaAttached(e,t){super.onMediaAttached(e,t);let n=t.media;ER(n,`playing`,this.onMediaPlaying),ER(n,`seeked`,this.onMediaSeeked)}onMediaDetaching(e,t){let{media:n}=this;n&&(DR(n,`playing`,this.onMediaPlaying),DR(n,`seeked`,this.onMediaSeeked)),this.videoBuffer=null,this.fragPlaying=null,super.onMediaDetaching(e,t),!t.transferMedia&&(this._hasEnoughToStart=!1)}onManifestLoading(){super.onManifestLoading(),this.log(`Trigger BUFFER_RESET`),this.hls.trigger(Y.BUFFER_RESET,void 0),this.couldBacktrack=!1,this.fragLastKbps=0,this.fragPlaying=this.backtrackFragment=null,this.altAudio=0,this.audioOnly=!1}onManifestParsed(e,t){let n=!1,r=!1;for(let e=0;e<t.levels.length;e++){let i=t.levels[e].audioCodec;i&&(n||=i.indexOf(`mp4a.40.2`)!==-1,r||=i.indexOf(`mp4a.40.5`)!==-1)}this.audioCodecSwitch=n&&r&&!JW(),this.audioCodecSwitch&&this.log(`Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC`),this.levels=t.levels,this.startFragRequested=!1}onLevelLoading(e,t){let{levels:n}=this;if(!n||this.state!==X.IDLE)return;let r=t.levelInfo;(!r.details||r.details.live&&(this.levelLastLoaded!==r||r.details.expired)||this.waitForCdnTuneIn(r.details))&&(this.state=X.WAITING_LEVEL)}onLevelLoaded(e,t){var n;let{levels:r,startFragRequested:i}=this,a=t.level,o=t.details,s=o.totalduration;if(!r){this.warn(`Levels were reset while loading level ${a}`);return}this.log(`Level ${a} loaded [${o.startSN},${o.endSN}]${o.lastPartSn?`[part-${o.lastPartSn}-${o.lastPartIndex}]`:``}, cc [${o.startCC}, ${o.endCC}] duration:${s}`);let c=t.levelInfo,l=this.fragCurrent;l&&(this.state===X.FRAG_LOADING||this.state===X.FRAG_LOADING_WAITING_RETRY)&&l.level!==t.level&&l.loader&&this.abortCurrentFrag();let u=0;if(o.live||(n=c.details)!=null&&n.live){if(this.checkLiveUpdate(o),o.deltaUpdateFailed)return;u=this.alignPlaylists(o,c.details,this.levelLastLoaded?.details)}if(c.details=o,this.levelLastLoaded=c,i||this.setStartPosition(o,u),this.hls.trigger(Y.LEVEL_UPDATED,{details:o,level:a}),this.state===X.WAITING_LEVEL){if(this.waitForCdnTuneIn(o))return;this.state=X.IDLE}i&&o.live&&this.synchronizeToLiveEdge(o),this.tick()}synchronizeToLiveEdge(e){let{config:t,media:n}=this;if(!n)return;let r=this.hls.liveSyncPosition,i=this.getLoadPosition(),a=e.fragmentStart,o=e.edge,s=i>=a-t.maxFragLookUpTolerance&&i<=o;if(r!==null&&n.duration>r&&(i<r||!s)){let a=t.liveMaxLatencyDuration===void 0?t.liveMaxLatencyDurationCount*e.targetduration:t.liveMaxLatencyDuration;if((!s&&n.readyState<4||i<o-a)&&(this._hasEnoughToStart||(this.nextLoadPosition=r),n.readyState))if(this.warn(`Playback: ${i.toFixed(3)} is located too far from the end of live sliding playlist: ${o}, reset currentTime to : ${r.toFixed(3)}`),this.config.liveSyncMode===`buffered`){var c;let e=$I.bufferInfo(n,r,0);if(!((c=e.buffered)!=null&&c.length)){n.currentTime=r;return}if(e.start<=i){n.currentTime=r;return}let{nextStart:t}=$I.bufferedInfo(e.buffered,i,0);t&&(n.currentTime=t)}else n.currentTime=r}}_handleFragmentLoadProgress(e){let t=e.frag,{part:n,payload:r}=e,{levels:i}=this;if(!i){this.warn(`Levels were reset while fragment load was in progress. Fragment ${t.sn} of level ${t.level} will not be buffered`);return}let a=i[t.level];if(!a){this.warn(`Level ${t.level} not found on progress`);return}let o=a.details;if(!o){this.warn(`Dropping fragment ${t.sn} of level ${t.level} after level details were reset`),this.fragmentTracker.removeFragment(t);return}let s=a.videoCodec,c=o.PTSKnown||!o.live,l=t.initSegment?.data,u=this._getAudioCodec(a),d=this.transmuxer=this.transmuxer||new zB(this.hls,UN.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),f=n?n.index:-1,p=f!==-1,m=new XI(t.level,t.sn,t.stats.chunkCount,r.byteLength,f,p),h=this.initPTS[t.cc];d.push(r,l,u,s,t,n,o.totalduration,c,m,h)}onAudioTrackSwitching(e,t){let n=this.hls,r=this.altAudio!==0;if(cI(t.url,n))this.altAudio=1;else{if(this.mediaBuffer!==this.media){this.log(`Switching on main audio, use media.buffered to schedule main fragment loading`),this.mediaBuffer=this.media;let e=this.fragCurrent;e&&(this.log(`Switching to main audio track, cancel main fragment load`),e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();if(r){this.altAudio=0,this.fragmentTracker.removeAllFragments(),n.once(Y.BUFFER_FLUSHED,()=>{this.hls&&this.hls.trigger(Y.AUDIO_TRACK_SWITCHED,t)}),n.trigger(Y.BUFFER_FLUSHING,{startOffset:0,endOffset:1/0,type:null});return}n.trigger(Y.AUDIO_TRACK_SWITCHED,t)}}onAudioTrackSwitched(e,t){let n=cI(t.url,this.hls);if(n){let e=this.videoBuffer;e&&this.mediaBuffer!==e&&(this.log(`Switching on alternate audio, use video.buffered to schedule main fragment loading`),this.mediaBuffer=e)}this.altAudio=n?2:0,this.tick()}onBufferCreated(e,t){let n=t.tracks,r,i,a=!1;for(let e in n){let t=n[e];if(t.id===`main`){if(i=e,r=t,e===`video`){let t=n[e];t&&(this.videoBuffer=t.buffer)}}else a=!0}a&&r?(this.log(`Alternate track found, use ${i}.buffered to schedule main fragment loading`),this.mediaBuffer=r.buffer):this.mediaBuffer=this.media}onFragBuffered(e,t){let{frag:n,part:r}=t,i=n.type===UN.MAIN;if(i){if(this.fragContextChanged(n)){this.warn(`Fragment ${n.sn}${r?` p: `+r.index:``} of level ${n.level} finished buffering, but was aborted. state: ${this.state}`),this.state===X.PARSED&&(this.state=X.IDLE);return}let e=r?r.stats:n.stats;this.fragLastKbps=Math.round(8*e.total/(e.buffering.end-e.loading.first)),xP(n)&&(this.fragPrevious=n),this.fragBufferedComplete(n,r)}let a=this.media;a&&(!this._hasEnoughToStart&&$I.getBuffered(a).length&&(this._hasEnoughToStart=!0,this.seekToStartPos()),i&&this.tick())}get hasEnoughToStart(){return this._hasEnoughToStart}onError(e,t){if(t.fatal){this.state=X.ERROR;return}switch(t.details){case J.FRAG_GAP:case J.FRAG_PARSING_ERROR:case J.FRAG_DECRYPT_ERROR:case J.FRAG_LOAD_ERROR:case J.FRAG_LOAD_TIMEOUT:case J.KEY_LOAD_ERROR:case J.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(UN.MAIN,t);break;case J.LEVEL_LOAD_ERROR:case J.LEVEL_LOAD_TIMEOUT:case J.LEVEL_PARSING_ERROR:!t.levelRetry&&this.state===X.WAITING_LEVEL&&t.context?.type===HN.LEVEL&&(this.state=X.IDLE);break;case J.BUFFER_ADD_CODEC_ERROR:case J.BUFFER_APPEND_ERROR:if(t.parent!==`main`)return;this.reduceLengthAndFlushBuffer(t)&&this.resetLoadingState();break;case J.BUFFER_FULL_ERROR:if(t.parent!==`main`)return;this.reduceLengthAndFlushBuffer(t)&&(!this.config.interstitialsController&&this.config.assetPlayerId?this._hasEnoughToStart=!0:this.flushMainBuffer(0,1/0));break;case J.INTERNAL_EXCEPTION:this.recoverWorkerError(t)}}onFragLoadEmergencyAborted(){this.state=X.IDLE,this._hasEnoughToStart||(this.startFragRequested=!1,this.nextLoadPosition=this.lastCurrentTime),this.tickImmediate()}onBufferFlushed(e,{type:t}){if(t!==yP.AUDIO||!this.altAudio){let e=(t===yP.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;e&&(this.afterBufferFlushed(e,t,UN.MAIN),this.tick())}}onLevelsUpdated(e,t){this.level>-1&&this.fragCurrent&&(this.level=this.fragCurrent.level,this.level===-1&&this.resetWhenMissingContext(this.fragCurrent)),this.levels=t.levels}swapAudioCodec(){this.audioCodecSwap=!this.audioCodecSwap}seekToStartPos(){let{media:e}=this;if(!e)return;let t=e.currentTime,n=this.startPosition;if(n>=0&&t<n){if(e.seeking){this.log(`could not seek to ${n}, already seeking at ${t}`);return}let r=this.timelineOffset;r&&n&&(n+=r);let i=this.getLevelDetails(),a=$I.getBuffered(e),o=a.length?a.start(0):0,s=o-n,c=Math.max(this.config.maxBufferHole,this.config.maxFragLookUpTolerance);(this.config.startOnSegmentBoundary||s>0&&(s<c||this.loadingParts&&s<2*(i?.partTarget||0)))&&(this.log(`adjusting start position by ${s} to match buffer start`),n+=s,this.startPosition=n),t<n&&(this.log(`seek to target start position ${n} from current time ${t} buffer start ${o}`),e.currentTime=n)}}_getAudioCodec(e){let t=this.config.defaultAudioCodec||e.audioCodec;return this.audioCodecSwap&&t&&(this.log(`Swapping audio codec`),t=t.indexOf(`mp4a.40.5`)===-1?`mp4a.40.5`:`mp4a.40.2`),t}_loadBitrateTestFrag(e,t){e.bitrateTest=!0,this._doFragLoad(e,t).then(e=>{let{hls:n}=this,r=e?.frag;if(!r||this.fragContextChanged(r))return;t.fragmentError=0,this.state=X.IDLE,this.startFragRequested=!1,this.bitrateTest=!1;let i=r.stats;i.parsing.start=i.parsing.end=i.buffering.start=i.buffering.end=self.performance.now(),n.trigger(Y.FRAG_LOADED,e),r.bitrateTest=!1}).catch(t=>{this.state!==X.STOPPED&&this.state!==X.ERROR&&(this.warn(t),this.resetFragmentLoading(e))})}_handleTransmuxComplete(e){let t=this.playlistType,{hls:n}=this,{remuxResult:r,chunkMeta:i}=e,a=this.getCurrentContext(i);if(!a){this.resetWhenMissingContext(i);return}let{frag:o,part:s,level:c}=a,{video:l,text:u,id3:d,initSegment:f}=r,{details:p}=c,m=this.altAudio?void 0:r.audio;if(this.fragContextChanged(o)){this.fragmentTracker.removeFragment(o);return}if(this.state=X.PARSING,f){let e=f.tracks;if(e){let r=o.initSegment||o;if(this.unhandledEncryptionError(f,o))return;this._bufferInitSegment(c,e,r,i),n.trigger(Y.FRAG_PARSING_INIT_SEGMENT,{frag:r,id:t,tracks:e})}let r=f.initPTS,a=f.timescale,s=this.initPTS[o.cc];if(q(r)&&(!s||s.baseTime!==r||s.timescale!==a)){let e=f.trackId;this.initPTS[o.cc]={baseTime:r,timescale:a,trackId:e},n.trigger(Y.INIT_PTS_FOUND,{frag:o,id:t,initPTS:r,timescale:a,trackId:e})}}if(l&&p){m&&l.type===`audiovideo`&&this.logMuxedErr(o);let e=p.fragments[o.sn-1-p.startSN],t=o.sn===p.startSN,n=!e||o.cc>e.cc;if(r.independent!==!1){let{startPTS:e,endPTS:r,startDTS:a,endDTS:c}=l;if(s)s.elementaryStreams[l.type]={startPTS:e,endPTS:r,startDTS:a,endDTS:c};else if(l.firstKeyFrame&&l.independent&&i.id===1&&!n&&(this.couldBacktrack=!0),l.dropped&&l.independent){let i=this.getMainFwdBufferInfo(),a=(i?i.end:this.getLoadPosition())+this.config.maxBufferHole,s=l.firstKeyFramePTS?l.firstKeyFramePTS:e;if(!t&&a<s-this.config.maxBufferHole&&!n){this.backtrack(o);return}n&&(o.gap=!0),o.setElementaryStreamInfo(l.type,o.start,r,o.start,c,!0)}else t&&e-(p.appliedTimelineOffset||0)>kW&&(o.gap=!0);o.setElementaryStreamInfo(l.type,e,r,a,c),this.backtrackFragment&&=o,this.bufferFragmentData(l,o,s,i,t||n)}else if(t||n)o.gap=!0;else{this.backtrack(o);return}}if(m){let{startPTS:e,endPTS:t,startDTS:n,endDTS:r}=m;s&&(s.elementaryStreams[yP.AUDIO]={startPTS:e,endPTS:t,startDTS:n,endDTS:r}),o.setElementaryStreamInfo(yP.AUDIO,e,t,n,r),this.bufferFragmentData(m,o,s,i)}if(p&&d!=null&&d.samples.length){let e={id:t,frag:o,details:p,samples:d.samples};n.trigger(Y.FRAG_PARSING_METADATA,e)}if(p&&u){let e={id:t,frag:o,details:p,samples:u.samples};n.trigger(Y.FRAG_PARSING_USERDATA,e)}}logMuxedErr(e){this.warn(`${xP(e)?`Media`:`Init`} segment with muxed audiovideo where only video expected: ${e.url}`)}_bufferInitSegment(e,t,n,r){if(this.state!==X.PARSING)return;this.audioOnly=!!t.audio&&!t.video,this.altAudio&&!this.audioOnly&&(delete t.audio,t.audiovideo&&this.logMuxedErr(n));let{audio:i,video:a,audiovideo:o}=t;if(i){let n=e.audioCodec,r=bF(i.codec,n);r===`mp4a`&&(r=`mp4a.40.5`);let a=navigator.userAgent.toLowerCase();if(this.audioCodecSwitch){r&&=r.indexOf(`mp4a.40.5`)===-1?`mp4a.40.5`:`mp4a.40.2`;let e=i.metadata;e&&`channelCount`in e&&(e.channelCount||1)!==1&&a.indexOf(`firefox`)===-1&&(r=`mp4a.40.5`)}r&&r.indexOf(`mp4a.40.5`)!==-1&&a.indexOf(`android`)!==-1&&i.container!==`audio/mpeg`&&(r=`mp4a.40.2`,this.log(`Android: force audio codec to ${r}`)),n&&n!==r&&this.log(`Swapping manifest audio codec "${n}" for "${r}"`),i.levelCodec=r,i.id=UN.MAIN,this.log(`Init audio buffer, container:${i.container}, codecs[selected/level/parsed]=[${r||``}/${n||``}/${i.codec}]`),delete t.audiovideo}if(a){a.levelCodec=e.videoCodec,a.id=UN.MAIN;let n=a.codec;if(n?.length===4)switch(n){case`hvc1`:case`hev1`:a.codec=`hvc1.1.6.L120.90`;break;case`av01`:a.codec=`av01.0.04M.08`;break;case`avc1`:a.codec=`avc1.42e01e`}this.log(`Init video buffer, container:${a.container}, codecs[level/parsed]=[${e.videoCodec||``}/${n}]${a.codec===n?``:` parsed-corrected=`+a.codec}${a.supplemental?` supplemental=`+a.supplemental:``}`),delete t.audiovideo}o&&(this.log(`Init audiovideo buffer, container:${o.container}, codecs[level/parsed]=[${e.codecs}/${o.codec}]`),delete t.video,delete t.audio);let s=Object.keys(t);if(s.length){if(this.hls.trigger(Y.BUFFER_CODECS,t),!this.hls)return;s.forEach(e=>{let i=t[e].initSegment;i!=null&&i.byteLength&&this.hls.trigger(Y.BUFFER_APPENDING,{type:e,data:i,frag:n,part:null,chunkMeta:r,parent:n.type})})}this.tickImmediate()}getMainFwdBufferInfo(){let e=this.mediaBuffer&&this.altAudio===2?this.mediaBuffer:this.media;return this.getFwdBufferInfo(e,UN.MAIN)}get maxBufferLength(){let{levels:e,level:t}=this,n=e?.[t];return n?this.getMaxBufferLength(n.maxBitrate):this.config.maxBufferLength}backtrack(e){this.couldBacktrack=!0,this.backtrackFragment=e,this.resetTransmuxer(),this.flushBufferGap(e),this.fragmentTracker.removeFragment(e),this.fragPrevious=null,this.nextLoadPosition=e.start,this.state=X.IDLE}checkFragmentChanged(){let e=this.media,t=null;if(e&&e.readyState>1&&e.seeking===!1){let n=e.currentTime;if($I.isBuffered(e,n)?t=this.getAppendedFrag(n):$I.isBuffered(e,n+.1)&&
1831(t=this.getAppendedFrag(n+.1)),t){this.backtrackFragment=null;let e=this.fragPlaying,n=t.level;(!e||t.sn!==e.sn||e.level!==n)&&(this.fragPlaying=t,this.hls.trigger(Y.FRAG_CHANGED,{frag:t}),(!e||e.level!==n)&&this.hls.trigger(Y.LEVEL_SWITCHED,{level:n}))}}}get nextLevel(){let e=this.nextBufferedFrag;return e?e.level:-1}get currentFrag(){if(this.fragPlaying)return this.fragPlaying;let e=this.media?.currentTime||this.lastCurrentTime;return q(e)?this.getAppendedFrag(e):null}get currentProgramDateTime(){let e=this.media?.currentTime||this.lastCurrentTime;if(q(e)){let t=this.getLevelDetails(),n=this.currentFrag||(t?fI(null,t.fragments,e):null);if(n){let t=n.programDateTime;if(t!==null){let r=t+(e-n.start)*1e3;return new Date(r)}}}return null}get currentLevel(){let e=this.currentFrag;return e?e.level:-1}get nextBufferedFrag(){let e=this.currentFrag;return e?this.followingBufferedFrag(e):null}get forceStartLoad(){return this._forceStartLoad}},ZW=class extends QN{constructor(e,t){super(`key-loader`,t),this.config=void 0,this.keyIdToKeyInfo={},this.emeController=null,this.config=e}abort(e){for(let t in this.keyIdToKeyInfo){let n=this.keyIdToKeyInfo[t].loader;if(n){if(e&&e!==n.context?.frag.type)return;n.abort()}}}detach(){for(let e in this.keyIdToKeyInfo){let t=this.keyIdToKeyInfo[e];(t.mediaKeySessionContext||t.decryptdata.isCommonEncryption)&&delete this.keyIdToKeyInfo[e]}}destroy(){this.detach();for(let e in this.keyIdToKeyInfo){let t=this.keyIdToKeyInfo[e].loader;t&&t.destroy()}this.keyIdToKeyInfo={}}createKeyLoadError(e,t=J.KEY_LOAD_ERROR,n,r,i){return new JI({type:VN.NETWORK_ERROR,details:t,fatal:!1,frag:e,response:i,error:n,networkDetails:r})}loadClear(e,t,n){if(this.emeController&&this.config.emeEnabled&&!this.emeController.getSelectedKeySystemFormats().length){if(t.length)for(let r=0,i=t.length;r<i;r++){let a=t[r];if(e.cc<=a.cc&&(!xP(e)||!xP(a)||e.sn<a.sn)||!n&&r==i-1)return this.emeController.selectKeySystemFormat(a).then(e=>{if(!this.emeController)return;a.setKeyFormat(e);let t=EL(e);if(t)return this.emeController.getKeySystemAccess([t])})}if(this.config.requireKeySystemAccessOnStart){let e=OL(this.config);if(e.length)return this.emeController.getKeySystemAccess(e)}}return null}load(e){return!e.decryptdata&&e.encrypted&&this.emeController&&this.config.emeEnabled?this.emeController.selectKeySystemFormat(e).then(t=>this.loadInternal(e,t)):this.loadInternal(e)}loadInternal(e,t){var n,r;t&&e.setKeyFormat(t);let i=e.decryptdata;if(!i){let n=Error(t?`Expected frag.decryptdata to be defined after setting format ${t}`:`Missing decryption data on fragment in onKeyLoading (emeEnabled with controller: ${this.emeController&&this.config.emeEnabled})`);return Promise.reject(this.createKeyLoadError(e,J.KEY_LOAD_ERROR,n))}let a=i.uri;if(!a)return Promise.reject(this.createKeyLoadError(e,J.KEY_LOAD_ERROR,Error(`Invalid key URI: "${a}"`)));let o=QW(i),s=this.keyIdToKeyInfo[o];if((n=s)!=null&&n.decryptdata.key)return i.key=s.decryptdata.key,Promise.resolve({frag:e,keyInfo:s});if(this.emeController&&(r=s)!=null&&r.keyLoadPromise)switch(this.emeController.getKeyStatus(s.decryptdata)){case`usable`:case`usable-in-future`:return s.keyLoadPromise.then(t=>{let{keyInfo:n}=t;return i.key=n.decryptdata.key,{frag:e,keyInfo:n}})}switch(this.log(`${this.keyIdToKeyInfo[o]?`Rel`:`L`}oading${i.keyId?` keyId: `+dP(i.keyId):``} URI: ${i.uri} from ${e.type} ${e.level}`),s=this.keyIdToKeyInfo[o]={decryptdata:i,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},i.method){case`SAMPLE-AES`:case`SAMPLE-AES-CENC`:case`SAMPLE-AES-CTR`:return i.keyFormat===`identity`?this.loadKeyHTTP(s,e):this.loadKeyEME(s,e);case`AES-128`:case`AES-256`:case`AES-256-CTR`:return this.loadKeyHTTP(s,e);default:return Promise.reject(this.createKeyLoadError(e,J.KEY_LOAD_ERROR,Error(`Key supplied with unsupported METHOD: "${i.method}"`)))}}loadKeyEME(e,t){let n={frag:t,keyInfo:e};if(this.emeController&&this.config.emeEnabled){var r;if(!e.decryptdata.keyId&&(r=t.initSegment)!=null&&r.data){let n=GP(t.initSegment.data);if(n.length){let t=n[0];t.some(e=>e!==0)?(this.log(`Using keyId found in init segment ${dP(t)}`),FL.setKeyIdForUri(e.decryptdata.uri,t)):(t=FL.addKeyIdForUri(e.decryptdata.uri),this.log(`Generating keyId to patch media ${dP(t)}
1831`)),e.decryptdata.keyId=t}}return!e.decryptdata.keyId&&!xP(t)?Promise.resolve(n):(e.keyLoadPromise=this.emeController.loadKey(n).then(t=>(e.mediaKeySessionContext=t,n))).catch(n=>{throw e.keyLoadPromise=null,`data`in n&&(n.data.frag=t),n})}return Promise.resolve(n)}loadKeyHTTP(e,t){let n=this.config,r=n.loader,i=new r(n);return t.keyLoader=e.loader=i,e.keyLoadPromise=new Promise((r,a)=>{let o={keyInfo:e,frag:t,responseType:`arraybuffer`,url:e.decryptdata.uri},s=n.keyLoadPolicy.default,c={loadPolicy:s,timeout:s.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0};i.load(o,c,{onSuccess:(e,t,n,i)=>{let{frag:o,keyInfo:s}=n,c=QW(s.decryptdata);if(!o.decryptdata||s!==this.keyIdToKeyInfo[c])return a(this.createKeyLoadError(o,J.KEY_LOAD_ERROR,Error(`after key load, decryptdata unset or changed`),i));s.decryptdata.key=o.decryptdata.key=new Uint8Array(e.data),o.keyLoader=null,s.loader=null,r({frag:o,keyInfo:s})},onError:(e,n,r,i)=>{this.resetLoader(n),a(this.createKeyLoadError(t,J.KEY_LOAD_ERROR,Error(`HTTP Error ${e.code} loading key ${e.text}`),r,YN({url:o.url,data:void 0},e)))},onTimeout:(e,n,r)=>{this.resetLoader(n),a(this.createKeyLoadError(t,J.KEY_LOAD_TIMEOUT,Error(`key loading timed out`),r))},onAbort:(e,n,r)=>{this.resetLoader(n),a(this.createKeyLoadError(t,J.INTERNAL_ABORTED,Error(`key loading aborted`),r))}})})}resetLoader(e){let{frag:t,keyInfo:n,url:r}=e,i=n.loader;t.keyLoader===i&&(t.keyLoader=null,n.loader=null);let a=QW(n.decryptdata)||r;delete this.keyIdToKeyInfo[a],i&&i.destroy()}};function QW(e){if(e.keyFormat!==TL.FAIRPLAY){let t=e.keyId;if(t)return dP(t)}return e.uri}function $W(e){let{type:t}=e;switch(t){case HN.AUDIO_TRACK:return UN.AUDIO;case HN.SUBTITLE_TRACK:return UN.SUBTITLE;default:return UN.MAIN}}function eG(e,t){let n=e.url;return(n===void 0||n.indexOf(`data:`)===0)&&(n=t.url),n}var tG=class{constructor(e){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.onManifestLoaded=this.checkAutostartLoad,this.hls=e,this.registerListeners()}startLoad(e){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){let{hls:e}=this;e.on(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.on(Y.LEVEL_LOADING,this.onLevelLoading,this),e.on(Y.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(Y.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),e.on(Y.LEVELS_UPDATED,this.onLevelsUpdated,this)}unregisterListeners(){let{hls:e}=this;e.off(Y.MANIFEST_LOADING,this.onManifestLoading,this),e.off(Y.LEVEL_LOADING,this.onLevelLoading,this),e.off(Y.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(Y.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),e.off(Y.LEVELS_UPDATED,this.onLevelsUpdated,this)}createInternalLoader(e){let t=this.hls.config,n=t.pLoader,r=t.loader,i=new(n||r)(t);return this.loaders[e.type]=i,i}getInternalLoader(e){return this.loaders[e.type]}resetInternalLoader(e){this.loaders[e]&&delete this.loaders[e]}destroyInternalLoaders(){for(let e in this.loaders){let t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(e,t){let{url:n}=t;this.variableList=null,this.load({id:null,level:0,responseType:`text`,type:HN.MANIFEST,url:n,deliveryDirectives:null,levelOrTrack:null})}onLevelLoading(e,t){let{id:n,level:r,pathwayId:i,url:a,deliveryDirectives:o,levelInfo:s}=t;this.load({id:n,level:r,pathwayId:i,responseType:`text`,type:HN.LEVEL,url:a,deliveryDirectives:o,levelOrTrack:s})}onAudioTrackLoading(e,t){let{id:n,groupId:r,url:i,deliveryDirectives:a,track:o}=t;this.load({id:n,groupId:r,level:null,responseType:`text`,type:HN.AUDIO_TRACK,url:i,deliveryDirectives:a,levelOrTrack:o})}onSubtitleTrackLoading(e,t){let{id:n,groupId:r,url:i,deliveryDirectives:a,track:o}=t;this.load({id:n,groupId:r,level:null,responseType:`text`,type:HN.SUBTITLE_TRACK,url:i,deliveryDirectives:a,levelOrTrack:o})}onLevelsUpdated(e,t){let n=this.loaders[HN.LEVEL];if(n){let e=n.context;e&&!t.levels.some(t=>t===e.levelOrTrack)&&(n.abort(),delete this.loaders[HN.LEVEL])}}load(e){let t=this.hls.config,n=this.getInternalLoader(e);if(n){let t=this.hls.logger,r=n.context;if(r&&r.levelOrTrack===e.levelOrTrack&&(r.url===e.url||r.deliveryDirectives&&!e.deliveryDirectives)){r.url===e.url?t.log(`[playlist-loader]: ignore ${e.url} ongoing request`):t.log(`[playlist-loader]: ignore ${e.url} in favor of ${r.url}`);return}t.log(`[playlist-loader]: aborting previous loader for type: ${e.type}`),n.abort()}let r;
vendor: 4,266 bytes, line 1831
1831if(r=e.type===HN.MANIFEST?t.manifestLoadPolicy.default:qN({},t.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),n=this.createInternalLoader(e),q(e.deliveryDirectives?.part)){let t;if(e.type===HN.LEVEL&&e.level!==null?t=this.hls.levels[e.level].details:e.type===HN.AUDIO_TRACK&&e.id!==null?t=this.hls.audioTracks[e.id].details:e.type===HN.SUBTITLE_TRACK&&e.id!==null&&(t=this.hls.subtitleTracks[e.id].details),t){let e=t.partTarget,n=t.targetduration;if(e&&n){let t=Math.max(e*3,n*.8)*1e3;r=qN({},r,{maxTimeToFirstByteMs:Math.min(t,r.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(t,r.maxTimeToFirstByteMs)})}}}let i=r.errorRetry||r.timeoutRetry||{},a={loadPolicy:r,timeout:r.maxLoadTimeMs,maxRetry:i.maxNumRetry||0,retryDelay:i.retryDelayMs||0,maxRetryDelay:i.maxRetryDelayMs||0};n.load(e,a,{onSuccess:(e,t,n,r)=>{let i=this.getInternalLoader(n);this.resetInternalLoader(n.type);let a=e.data;t.parsing.start=performance.now(),WL.isMediaPlaylist(a)||n.type!==HN.MANIFEST?this.handleTrackOrLevelPlaylist(e,t,n,r||null,i):this.handleMasterPlaylist(e,t,n,r)},onError:(e,t,n,r)=>{this.handleNetworkError(t,n,!1,e,r)},onTimeout:(e,t,n)=>{this.handleNetworkError(t,n,!0,void 0,e)}})}checkAutostartLoad(){if(!this.hls)return;let{config:{autoStartLoad:e,startPosition:t},forceStartLoad:n}=this.hls;(e||n)&&(this.hls.logger.log(`${e?`auto`:`force`} startLoad with configured startPosition ${t}`),this.hls.startLoad(t))}handleMasterPlaylist(e,t,n,r){let i=this.hls,a=e.data,o=eG(e,n),s=WL.parseMasterPlaylist(a,o);if(s.playlistParsingError){t.parsing.end=performance.now(),this.handleManifestParsingError(e,n,s.playlistParsingError,r,t);return}let{contentSteering:c,levels:l,sessionData:u,sessionKeys:d,startTimeOffset:f,variableList:p}=s;this.variableList=p,l.forEach(e=>{let{unknownCodecs:t}=e;if(t){let{preferManagedMediaSource:n}=this.hls.config,{audioCodec:r,videoCodec:i}=e;for(let a=t.length;a--;){let o=t[a];uF(o,`audio`,n)?(e.audioCodec=r=r?`${r},${o}`:o,cF.audio[r.substring(0,4)]=2,t.splice(a,1)):uF(o,`video`,n)&&(e.videoCodec=i=i?`${i},${o}`:o,cF.video[i.substring(0,4)]=2,t.splice(a,1))}}});let{AUDIO:m=[],SUBTITLES:h,"CLOSED-CAPTIONS":g}=WL.parseMasterPlaylistMedia(a,o,s);m.length&&!m.some(e=>!e.url)&&l[0].audioCodec&&!l[0].attrs.AUDIO&&(this.hls.logger.log(`[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one`),m.unshift({type:`main`,name:`main`,groupId:`main`,default:!1,autoselect:!1,forced:!1,id:-1,attrs:new sL({}),bitrate:0,url:``})),i.trigger(Y.MANIFEST_LOADED,{levels:l,audioTracks:m,subtitles:h,captions:g,contentSteering:c,url:o,stats:t,networkDetails:r,sessionData:u,sessionKeys:d,startTimeOffset:f,variableList:p})}handleTrackOrLevelPlaylist(e,t,n,r,i){let a=this.hls,{id:o,level:s,type:c}=n,l=eG(e,n),u=q(s)?s:q(o)?o:0,d=$W(n),f=WL.parseLevelPlaylist(e.data,l,u,d,0,this.variableList);if(c===HN.MANIFEST){let e={attrs:new sL({}),bitrate:0,details:f,name:``,url:l};f.requestScheduled=t.loading.start+fR(f,0),a.trigger(Y.MANIFEST_LOADED,{levels:[e],audioTracks:[],url:l,stats:t,networkDetails:r,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}t.parsing.end=performance.now(),n.levelDetails=f,this.handlePlaylistLoaded(f,e,t,n,r,i)}handleManifestParsingError(e,t,n,r,i){this.hls.trigger(Y.ERROR,{type:VN.NETWORK_ERROR,details:J.MANIFEST_PARSING_ERROR,fatal:t.type===HN.MANIFEST,url:e.url,err:n,error:n,reason:n.message,response:e,context:t,networkDetails:r,stats:i})}handleNetworkError(e,t,n=!1,r,i){let a=`A network ${n?`timeout`:`error`+(r?` (status `+r.code+`)`:``)} occurred while loading ${e.type}`;e.type===HN.LEVEL?a+=`: ${e.level} id: ${e.id}`:(e.type===HN.AUDIO_TRACK||e.type===HN.SUBTITLE_TRACK)&&(a+=` id: ${e.id} group-id: "${e.groupId}"`);let o=Error(a);this.hls.logger.warn(`[playlist-loader]: ${a}`);let s=J.UNKNOWN,c=!1,l=this.getInternalLoader(e);switch(e.type){case HN.MANIFEST:s=n?J.MANIFEST_LOAD_TIMEOUT:J.MANIFEST_LOAD_ERROR,c=!0;break;case HN.LEVEL:s=n?J.LEVEL_LOAD_TIMEOUT:J.LEVEL_LOAD_ERROR,c=!1;break;case HN.AUDIO_TRACK:s=n?J.AUDIO_TRACK_LOAD_TIMEOUT:J.AUDIO_TRACK_LOAD_ERROR,c=!1;break;case HN.SUBTITLE_TRACK:s=n?J.SUBTITLE_TRACK_LOAD_TIMEOUT:J.SUBTITLE_LOAD_ERROR,c=!1}l&&this.resetInternalLoader(e.type);
1831let u={type:VN.NETWORK_ERROR,details:s,fatal:c,url:e.url,loader:l,context:e,error:o,networkDetails:t,stats:i};r&&(u.response=YN({url:t?.url||e.url,data:void 0},r)),this.hls.trigger(Y.ERROR,u)}handlePlaylistLoaded(e,t,n,r,i,a){let o=this.hls,{type:s,level:c,levelOrTrack:l,id:u,groupId:d,deliveryDirectives:f}=r,p=eG(t,r),m=$W(r),h=typeof r.level==`number`&&m===UN.MAIN?c:void 0,g=e.playlistParsingError;if(g){if(this.hls.logger.warn(`${g} ${e.url}`),!o.config.ignorePlaylistParsingErrors){o.trigger(Y.ERROR,{type:VN.NETWORK_ERROR,details:J.LEVEL_PARSING_ERROR,fatal:!1,url:p,error:g,reason:g.message,response:t,context:r,level:h,parent:m,networkDetails:i,stats:n});return}e.playlistParsingError=null}if(!e.fragments.length){let a=e.playlistParsingError=Error(`No Segments found in Playlist`);o.trigger(Y.ERROR,{type:VN.NETWORK_ERROR,details:J.LEVEL_EMPTY_ERROR,fatal:!1,url:p,error:a,reason:a.message,response:t,context:r,level:h,parent:m,networkDetails:i,stats:n});return}switch(e.live&&a&&(a.getCacheAge&&(e.ageHeader=a.getCacheAge()||0),(!a.getCacheAge||isNaN(e.ageHeader))&&(e.ageHeader=0)),s){case HN.MANIFEST:case HN.LEVEL:if(h){if(!l)h=0;else if(l!==o.levels[h]){let e=o.levels.indexOf(l);e>-1&&(h=e)}}o.trigger(Y.LEVEL_LOADED,{details:e,levelInfo:l||o.levels[0],level:h||0,id:u||0,stats:n,networkDetails:i,deliveryDirectives:f,withoutMultiVariant:s===HN.MANIFEST});break;case HN.AUDIO_TRACK:o.trigger(Y.AUDIO_TRACK_LOADED,{details:e,track:l,id:u||0,groupId:d||``,stats:n,networkDetails:i,deliveryDirectives:f});break;case HN.SUBTITLE_TRACK:o.trigger(Y.SUBTITLE_TRACK_LOADED,{details:e,track:l,id:u||0,groupId:d||``,stats:n,networkDetails:i,deliveryDirectives:f})}}},nG=class e{static get version(){return LR}static isMSESupported(){return KW()}static isSupported(){return qW()}static getMediaSource(){return sP()}static get Events(){return Y}static get MetadataSchema(){return Cz}static get ErrorTypes(){return VN}static get ErrorDetails(){return J}static get DefaultConfig(){return e.defaultConfig?e.defaultConfig:wW}static set DefaultConfig(t){e.defaultConfig=t}constructor(t={}){this.config=void 0,this.userConfig=void 0,this.logger=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new IR,this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioStreamController=void 0,this.subtititleStreamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.interstitialsController=void 0,this.gapController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this._url=null,this._sessionId=void 0,this.triggeringException=void 0,this.started=!1;let n=this.logger=aP(t.debug||!1,`Hls instance`,t.assetPlayerId),r=this.config=EW(e.DefaultConfig,t,n);this.userConfig=t,r.progressive&&OW(r,n);let{abrController:i,bufferController:a,capLevelController:o,errorController:s,fpsController:c}=r,l=new s(this),u=this.abrController=new i(this),d=new jI(this),f=r.interstitialsController,p=f?this.interstitialsController=new f(this,e):null,m=this.bufferController=new a(this,d),h=this.capLevelController=new o(this),g=new c(this),_=new tG(this),v=r.contentSteeringController,y=v?new v(this):null,b=this.levelController=new UW(this,y),x=new VW(this),S=new ZW(this.config,this.logger),ee=this.streamController=new XW(this,d,S),te=this.gapController=new NW(this,d);h.setStreamController(ee),g.setStreamController(ee);let ne=[_,b,ee];p&&ne.splice(1,0,p),y&&ne.splice(1,0,y),this.networkControllers=ne;let re=[u,m,te,h,g,x,d];this.audioTrackController=this.createController(r.audioTrackController,ne);let ie=r.audioStreamController;ie&&ne.push(this.audioStreamController=new ie(this,d,S)),this.subtitleTrackController=this.createController(r.subtitleTrackController,ne);let C=r.subtitleStreamController;C&&ne.push(this.subtititleStreamController=new C(this,d,S)),this.createController(r.timelineController,re),S.emeController=this.emeController=this.createController(r.emeController,re),this.cmcdController=this.createController(r.cmcdController,re),this.latencyController=this.createController(HW,re),this.coreComponents=re,ne.push(l);let ae=l.onErrorOut;typeof ae==`function`&&this.on(Y.ERROR,ae,l),this.on(Y.MANIFEST_LOADED,_.onManifestLoaded,_)}createController(e,t){if(e){let n=new e(this);return t&&t.push(n),n}return null}on(e,t,n=this){this._emitter.on(e,t,n)}once(e,t,n=this){this._emitter.once(e,t,n)}removeAllListeners(e){this._emitter.removeAllListeners(e)}off(e,t,n=this,r){this._emitter.off(e,t,n,r)}listeners(e){return this._emitter.listeners(e)}emit(e,t,n){return this._emitter.emit(e,t,n)}
vendor: 6,840 bytes, line 1831
1831trigger(e,t){if(this.config.debug)return this.emit(e,e,t);try{return this.emit(e,e,t)}catch(t){if(this.logger.error(`An internal error happened while handling event `+e+`. Error message: "`+t.message+`". Here is a stacktrace:`,t),!this.triggeringException){this.triggeringException=!0;let n=e===Y.ERROR;this.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.INTERNAL_EXCEPTION,fatal:n,event:e,error:t}),this.triggeringException=!1}}return!1}listenerCount(e){return this._emitter.listenerCount(e)}destroy(){this.logger.log(`destroy`),this.trigger(Y.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this._url=null,this.networkControllers.forEach(e=>e.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(e=>e.destroy()),this.coreComponents.length=0;let e=this.config;e.xhrSetup=e.fetchSetup=void 0,this.userConfig=null}attachMedia(e){if(!e||`media`in e&&!e.media){let t=Error(`attachMedia failed: invalid argument (${e})`);this.trigger(Y.ERROR,{type:VN.OTHER_ERROR,details:J.ATTACH_MEDIA_ERROR,fatal:!0,error:t});return}this.logger.log(`attachMedia`),this._media&&(this.logger.warn(`media must be detached before attaching`),this.detachMedia());let t=`media`in e,n=t?e.media:e,r=t?e:{media:n};this._media=n,this.trigger(Y.MEDIA_ATTACHING,r)}detachMedia(){this.logger.log(`detachMedia`),this.trigger(Y.MEDIA_DETACHING,{}),this._media=null}transferMedia(){this._media=null;let e=this.bufferController.transferMedia();return this.trigger(Y.MEDIA_DETACHING,{transferMedia:e}),e}loadSource(e){this.stopLoad();let t=this.media,n=this._url,r=this._url=_P.buildAbsoluteURL(self.location.href,e,{alwaysNormalize:!0});this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.logger.log(`loadSource:${r}`),t&&n&&(n!==r||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(t)),this.trigger(Y.MANIFEST_LOADING,{url:e})}get url(){return this._url}get hasEnoughToStart(){return this.streamController.hasEnoughToStart}get startPosition(){return this.streamController.startPositionValue}startLoad(e=-1,t){this.logger.log(`startLoad(${e+(t?`, <skip seek to start>`:``)})`),this.started=!0,this.resumeBuffering();for(let n=0;n<this.networkControllers.length&&(this.networkControllers[n].startLoad(e,t),!(!this.started||!this.networkControllers));n++);}stopLoad(){this.logger.log(`stopLoad`),this.started=!1;for(let e=0;e<this.networkControllers.length&&(this.networkControllers[e].stopLoad(),!(this.started||!this.networkControllers));e++);}get loadingEnabled(){return this.started}get bufferingEnabled(){return this.streamController.bufferingEnabled}resumeBuffering(){this.bufferingEnabled||(this.logger.log(`resume buffering`),this.networkControllers.forEach(e=>{e.resumeBuffering&&e.resumeBuffering()}))}pauseBuffering(){this.bufferingEnabled&&(this.logger.log(`pause buffering`),this.networkControllers.forEach(e=>{e.pauseBuffering&&e.pauseBuffering()}))}get inFlightFragments(){let e={[UN.MAIN]:this.streamController.inFlightFrag};return this.audioStreamController&&(e[UN.AUDIO]=this.audioStreamController.inFlightFrag),this.subtititleStreamController&&(e[UN.SUBTITLE]=this.subtititleStreamController.inFlightFrag),e}swapAudioCodec(){this.logger.log(`swapAudioCodec`),this.streamController.swapAudioCodec()}recoverMediaError(){this.logger.log(`recoverMediaError`);let e=this._media,t=e?.currentTime;this.detachMedia(),e&&(this.attachMedia(e),t&&this.startLoad(t))}removeLevel(e){this.levelController.removeLevel(e)}get sessionId(){let e=this._sessionId;return e||=this._sessionId=VH(),e}get levels(){return this.levelController.levels||[]}get latestLevelDetails(){return this.streamController.getLevelDetails()||null}get loadLevelObj(){return this.levelController.loadLevelObj}get currentLevel(){return this.streamController.currentLevel}set currentLevel(e){this.logger.log(`set currentLevel:${e}`),this.levelController.manualLevel=e,this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(e){this.logger.log(`set nextLevel:${e}`),this.levelController.manualLevel=e,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(e){this.logger.log(`set loadLevel:${e}`),this.levelController.manualLevel=e}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(e){this.levelController.nextLoadLevel=e}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(e){this.logger.log(`set firstLevel:${e}`),this.levelController.firstLevel=e}get startLevel(){let e=this.levelController.startLevel;return e===-1&&this.abrController.forcedAutoLevel>-1?this.abrController.forcedAutoLevel:e}set startLevel(e){this.logger.log(`set startLevel:${e}`),e!==-1&&(e=Math.max(e,this.minAutoLevel)),this.levelController.startLevel=e}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(e){let t=!!e;t!==this.config.capLevelToPlayerSize&&(t?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=t)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimate():NaN}set bandwidthEstimate(e){this.abrController.resetEstimator(e)}get abrEwmaDefaultEstimate(){let{bwEstimator:e}=this.abrController;return e?e.defaultEstimate:NaN}get ttfbEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimateTTFB():NaN}set autoLevelCapping(e){this._autoLevelCapping!==e&&(this.logger.log(`set autoLevelCapping:${e}`),this._autoLevelCapping=e,this.levelController.checkMaxAutoUpdated())}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(e){RF(e)&&this._maxHdcpLevel!==e&&(this._maxHdcpLevel=e,this.levelController.checkMaxAutoUpdated())}get autoLevelEnabled(){return this.levelController.manualLevel===-1}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){let{levels:e,config:{minAutoBitrate:t}}=this;if(!e)return 0;let n=e.length;for(let r=0;r<n;r++)if(e[r].maxBitrate>=t)return r;return 0}get maxAutoLevel(){let{levels:e,autoLevelCapping:t,maxHdcpLevel:n}=this,r;if(r=t===-1&&e!=null&&e.length?e.length-1:t,n)for(let t=r;t--;){let r=e[t].attrs[`HDCP-LEVEL`];if(r&&r<=n)return t}return r}get firstAutoLevel(){return this.abrController.firstAutoLevel}get nextAutoLevel(){return this.abrController.nextAutoLevel}set nextAutoLevel(e){this.abrController.nextAutoLevel=e}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get maxBufferLength(){return this.streamController.maxBufferLength}setAudioOption(e){return this.audioTrackController?.setAudioOption(e)||null}
1831setSubtitleOption(e){return this.subtitleTrackController?.setSubtitleOption(e)||null}get allAudioTracks(){let e=this.audioTrackController;return e?e.allAudioTracks:[]}get audioTracks(){let e=this.audioTrackController;return e?e.audioTracks:[]}get audioTrack(){let e=this.audioTrackController;return e?e.audioTrack:-1}set audioTrack(e){let t=this.audioTrackController;t&&(t.audioTrack=e)}get allSubtitleTracks(){let e=this.subtitleTrackController;return e?e.allSubtitleTracks:[]}get subtitleTracks(){let e=this.subtitleTrackController;return e?e.subtitleTracks:[]}get subtitleTrack(){let e=this.subtitleTrackController;return e?e.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(e){let t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}get subtitleDisplay(){let e=this.subtitleTrackController;return e?e.subtitleDisplay:!1}set subtitleDisplay(e){let t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(e){this.config.lowLatencyMode=e}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}set targetLatency(e){this.latencyController.targetLatency=e}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}get pathways(){return this.levelController.pathways}get pathwayPriority(){return this.levelController.pathwayPriority}set pathwayPriority(e){this.levelController.pathwayPriority=e}get bufferedToEnd(){var e;return!!((e=this.bufferController)!=null&&e.bufferedToEnd)}get interstitialsManager(){return this.interstitialsController?.interstitialsManager||null}getMediaDecodingInfo(e,t=this.allAudioTracks){return jF(e,QF(t),navigator.mediaCapabilities)}};nG.defaultConfig=void 0;var rG=`/opt/src/frontend/src/components/diverse/AirportWebcamsPage.tsx`,iG=({label:e,isActive:t,onClick:n,index:r})=>(0,E.jsxDEV)(`button`,{role:`tab`,"aria-selected":t,"aria-controls":`panel-${r}`,id:`tab-${r}`,className:` 1832 relative px-8 py-4 text-lg font-semibold transition-all duration-200 1833 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1834 rounded-t-lg 1835 ${t?`text-blue-600 bg-white dark:bg-gray-700 dark:text-blue-400 shadow-lg z-10`:`text-gray-600 hover:text-blue-500 dark:text-gray-300 hover:bg-gray-50 dark:hover:bg-gray-600`} 1836 ${t?`after:absolute after:bottom-0 after:left-0 after:w-full after:h-1 after:bg-blue-600`:``} 1837 `,onClick:n,children:e},void 0,!1,{fileName:rG,lineNumber:14,columnNumber:3},void 0),aG=({title:e,streamUrl:t})=>{let n=S.useRef(null),r=S.useRef(null);return S.useEffect(()=>{if(n.current){if(nG.isSupported()){let e=new nG({autoStartLoad:!0,startPosition:-1,debug:!1,enableWorker:!0,lowLatencyMode:!0,backBufferLength:90,maxBufferLength:30,maxMaxBufferLength:600,maxBufferSize:6e7,maxBufferHole:.5,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:10,liveDurationInfinity:!0,enableWebVTT:!1,enableIMSC1:!1,enableCEA708Captions:!1,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,minAutoBitrate:0});r.current=e,n.current&&(n.current.autoplay=!0,n.current.muted=!0,n.current.playsInline=!0),e.attachMedia(n.current),e.on(nG.Events.MEDIA_ATTACHED,()=>{e.loadSource(t)}),e.on(nG.Events.MANIFEST_PARSED,()=>{n.current?.play().catch(e=>{n.current&&(n.current.muted=!0,n.current.play().catch(()=>{}))})}),e.on(nG.Events.ERROR,(t,n)=>{if(n.fatal)switch(n.type){case nG.ErrorTypes.NETWORK_ERROR:e.startLoad();break;case nG.ErrorTypes.MEDIA_ERROR:e.recoverMediaError();break;default:e.destroy()}})}else n.current.canPlayType(`application/vnd.apple.mpegurl`)&&(n.current.src=t,n.current.autoplay=!0,n.current.muted=!0,n.current.playsInline=!0,n.current.addEventListener(`loadedmetadata`,()=>{n.current?.play().catch(e=>{n.current&&(n.current.muted=!0,n.current.play().catch(()=>{}))})}));return()=>{r.current&&r.current.destroy()}}},[t]),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-700 rounded-lg p-4 shadow-md transition-transform hover:scale-[1.01]`,children:[(0,E.jsxDEV)(`h3`,{className:`text-lg font-semibold mb-2 dark:text-white`,children:e},void 0,!1,{fileName:rG,lineNumber:147,columnNumber:7},void 0),(0,E.jsxDEV)(`video`,{ref:n,controls:!0,muted:!0,playsInl
1837ine:!0,className:`w-full aspect-video bg-black rounded shadow-inner`},void 0,!1,{fileName:rG,lineNumber:148,columnNumber:7},void 0)]},void 0,!0,{fileName:rG,lineNumber:146,columnNumber:5},void 0)},oG=()=>{let e=xt(),{translations:t}=rr(),[n,r]=(0,S.useState)(0),i=()=>{e(`/divers`)},a=[{label:`EDDK - Köln/Bonn`,content:[{title:`EDDK Terminal 1C`,url:`https://stream-5gw.1000eyes.de/cupertino/cgn4463E1.stream/playlist.m3u8`},{title:`EDDK Terminal 2`,url:`https://stream-5gw.1000eyes.de/cupertino/cgn06B1E8.stream/playlist.m3u8`},{title:`EDDK Vorfeld Cargo`,url:`https://stream-5gw.1000eyes.de/cupertino/cgnCDB73A.stream/playlist.m3u8`}]},{label:`EDDL - Düsseldorf`,content:[{title:`EDDL Flugzeugabfertigung`,url:`https://stream-5gw.1000eyes.de/cupertino/dus5abb.stream/playlist.m3u8`},{title:`EDDL Vorfeld`,url:`https://stream-5gw.1000eyes.de/cupertino/dused0c.stream/playlist.m3u8`},{title:`EDDL Start/Landebahn`,url:`https://stream-5gw.1000eyes.de/cupertino/dus1ba9.stream/playlist.m3u8`},{title:`EDDL Rollweg`,url:`https://stream-5gw.1000eyes.de/cupertino/dus5a92.stream/playlist.m3u8`}]},{label:`EDDH - Hamburg`,content:[{title:`EDDH Vorfeld Nord`,url:`https://stream-5gw.1000eyes.de/cupertino/hamDDFB28.stream/playlist.m3u8`},{title:`EDDH Vorfeld Süd`,url:`https://stream-5gw.1000eyes.de/cupertino/hamDDFBCE.stream/playlist.m3u8`}]}];return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-full max-w-[2000px] mx-auto px-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsxDEV)(`button`,{onClick:i,className:` 1838 flex items-center gap-2 1839 bg-blue-500 text-white 1840 px-4 py-2 rounded-lg 1841 hover:bg-blue-600 1842 transition-colors duration-200 1843 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1844 `,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,viewBox:`0 0 20 20`,fill:`currentColor`,children:(0,E.jsxDEV)(`path`,{fillRule:`evenodd`,d:`M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z`,clipRule:`evenodd`},void 0,!1,{fileName:rG,lineNumber:211,columnNumber:15},void 0)},void 0,!1,{fileName:rG,lineNumber:210,columnNumber:13},void 0),t.common.backToMenu]},void 0,!0,{fileName:rG,lineNumber:199,columnNumber:11},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white transition-colors duration-200`,children:t.header.divers.webcams},void 0,!1,{fileName:rG,lineNumber:215,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-[120px]`},void 0,!1,{fileName:rG,lineNumber:218,columnNumber:11},void 0),` `]},void 0,!0,{fileName:rG,lineNumber:198,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-800 rounded-xl shadow-xl`,children:[(0,E.jsxDEV)(`div`,{role:`tablist`,"aria-label":`Airport webcam tabs`,className:`flex gap-1 px-4 pt-4`,children:a.map((e,t)=>(0,E.jsxDEV)(iG,{index:t,label:e.label,isActive:n===t,onClick:()=>r(t)},t,!1,{fileName:rG,lineNumber:228,columnNumber:15},void 0))},void 0,!1,{fileName:rG,lineNumber:222,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{role:`tabpanel`,id:`panel-${n}`,"aria-labelledby":`tab-${n}`,className:`p-6`,children:(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:a[n].content.map((e,t)=>(0,E.jsxDEV)(aG,{title:e.title,streamUrl:e.url},t,!1,{fileName:rG,lineNumber:246,columnNumber:17},void 0))},void 0,!1,{fileName:rG,lineNumber:244,columnNumber:13},void 0)},void 0,!1,{fileName:rG,lineNumber:238,columnNumber:11},void 0)]},void 0,!0,{fileName:rG,lineNumber:221,columnNumber:9},void 0)]},void 0,!0,{fileName:rG,lineNumber:197,columnNumber:7},void 0)},void 0,!1,{fileName:rG,lineNumber:196,columnNumber:5},void 0)},Z=`/opt/src/frontend/src/components/diverse/DronesPage.tsx`,sG=()=>{let e=xt(),{translations:t,language:n}=rr(),[r,i]=(0,S.useState)(``),[a,o]=(0,S.useState)(!1),[s,c]=(0,S.useState)(!1),[l,u]=(0,S.useState)(null),d=()=>{e(`/divers`)},f=e=>{u(e)},p=()=>{l&&(window.open(l,`_blank`,`noopener,noreferrer`),u(null))},m=[{name:`C0`,requirements:n===`de`?[`Drohnen unter 250g Startgewicht`,`Eigenbauten / selbstgebaute Drohnen (nur bis 250g Startgewicht)`,`Gebrauchsanweisung erforderlich`,`EU-weite Spielzeug-Sicherheitsrichtlinien oder max. 19m/s`,`Einstellbares Höhenlimit`,`Keine scharfen Kanten`,`Keine elektronische ID erforderlich`,`Keine Registrierung des Piloten erforderlich`]:[`Drones under 250g takeoff weight`,`Self-built drones (only up to 250g takeoff weight)`,`User manual required`,`EU-wide toy safety guidelines or max. 19m/s`,`Adjustable altitude limit`,`No sharp edges`,`No electronic ID required`,`No pilot registration required`]},{name:`C1`,requirements:n===`de`?[`Drohnen unter 80 J oder unter 900g Abfluggewicht`,`Geschwindigkeit auf 19m/s begrenzt`,`Elektronische ID erforderlich`,`GEO Flugbeschränkungsüberwachung`,`Notfallprozedur für Verbindungsverlust`,`Online-Training und Test erforderlich`,`Registrierung des Piloten erforderlich`,`Plakette mit Registrierungsnummer`]:[`Drones under 80 J or under 900g takeoff weight`,`Speed limited to 19m/s`,`Electronic ID required`,`GEO flight restriction monitoring`,`Emergency procedure for connection loss`,`Online training and test required`,`Pilot registration required`,`Plate with registration number`]},{name:`C2`,requirements:n===`de`?[`Drohnen unter 4kg Abfluggewicht`,`Low-Speed Modus (max 3 m/s)`,`Elektronische ID erforderlich`,`GEO Flugbeschränkungsüberwachung`,`Theoretischer Test in Prüfzentrum`,`Mindestens 5m Abstand zu Personen`,`Online-Training und Test erforderlich`,`GroÃer Drohnen-Führerschein erforderlich`]:[`Drones under 4kg takeoff weight`,`Low-speed mode (max 3 m/s)`,`Electronic ID required`,`GEO flight restriction monitoring`,`Theoretical test at examination center`,`Minimum 5m distance from people`,`Online training and test required`,`Large drone license required`]},{name:`C3`,requirements:n===`de`?[`Drohnen unter 25kg Abfluggewicht`,`Elektronische ID erforderlich`,`GEO Flugbeschränkungsüberwachung`,`Notfallprozedur für Verbindungsverlust`,`Einstellbares Höhenlimit`,`Online-Training und Test erforderlich`,`Registrierung des Piloten erforderlich`,`Nur entfernt von Städten und Menschen`]:[`Drones under 25kg takeoff weight`,`Electronic ID required`,`GEO flight restriction monitoring`,`Emergency procedure for connection loss`,`Adjustable altitude limit`,`Online training and test required`,`Pilot registration required`,`Only away from cities and people`]},{name:`C4`,requirements:n===`de`?[`Drohnen unter 25kg Abfluggewicht`,`Konventionelle Modellflugzeuge`,`Kein automatischer/autonomer Flug`,`Online-Training und Test erforderlich`,`Registrierung des Piloten erforderlich`,`Nur entfernt von Städten und Menschen`,`Elektronische ID wenn in Flugzone erforderlich`]:[`Drones under 25kg takeoff weight`,`Conventional model aircraft`,`No automatic/autonomous flight`,`Online training and test required`,`Pilot registration required`,`Only away from cities and people`,`Electronic ID when in flight zone required`]}],h=[{name:`A1`,description:n===`de`?`Flug über Personen (nicht über Menschenansammlungen)`:`Flight over people (not over crowds)`,droneClasses:[`C0`,`C1`],requirements:n===`de`?[`Gebrauchsanweisung lesen`,`Für C1: Online-Training und Test absolvieren`,`Für C1: Registrierung erforderlich`]:[`Read user manual`,`For C1: Complete online training and test`,`For C1: Registration required`]},{name:`A2`,description:n===`de`?`Flug in der Nähe von Menschen (in sicherer Entfernung)`:`Flight near people (at safe distance)`,droneClasses:[`C2`],requirements:n===`de`?[`Online-Training und Test absolvieren`,`Theoretischer Test in Prüfzentrum`,`Registrierung erforderlich`,`Mindestabstand zu Menschen beachten`]:[`Complete online training and test`,`Theoretical test at examination center`,`Registration required`,`Maintain minimum distance from people`]},{name:`A3`,description:n===`de`?`Flug weit weg von Menschen`:`Flight far from people`,droneClasses:[`C3`,`C4`],requirements:n===`de`?[`Online-Training und Test absolvieren`,`Registrierung erforderlich`,`Nur in unbewohnten Gebieten`]:[`Complete online training and test`,`Registration required`,`Only in uninhabited areas`]}],g=()=>{let e=parseFloat(r);return a?e<=250?`C0`:`C3/C4`:e<=250?`C0`:e<=900?`C1`:e<=4e3?`C2`:e<=25e3?`C3`:n===`de`?`Zu schwer für reguläre Kategorien`:`Too heavy for regular categories`},_=e=>e===`C0`||e===`C1`?`A1`:e===`C2`?`A2`:e===`C3`||e===`C3/C4`||e===`C4`?`A3`:n===`de`?`Keine reguläre Kategorie`:`No regular category`,v=e=>{e.preventDefault(),c(!0)},y=t.dronesPage;return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:[(0,E.jsxDEV)(`div`,{className:`w-full max-w-[2000px] mx-auto px-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsxDEV)(`button`,{onClick:d,className:` 1845 flex items-center gap-2 1846 bg-blue-500 text-white 1847 px-4 py-2 rounded-lg 1848 hover:bg-blue-600 1849 transition-colors duration-200 1850 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1851 `,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,viewBox:`0 0 20 20`,fill:`currentColor`,children:(0,E.jsxDEV)(`path`,{fillRule:`evenodd`,d:`M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z`,clipRule:`evenodd`},void 0,!1,{fileName:Z,lineNumber:233,columnNumber:15},void 0)},void 0,!1,{fileName:Z,lineNumber:232,columnNumber:13},void 0),t.common.backToMenu]},void 0,!0,{fileName:Z,lineNumber:221,columnNumber:11},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-black dark:text-white transition-colors duration-200`,children:y?.pageTitle||`Neue EU Drohnen-Regeln`},void 0,!1,{fileName:Z,lineNumber:237,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-[120px]`},void 0,!1,{fileName:Z,lineNumber:240,columnNumber:11},void 0),` `]},void 0,!0,{fileName:Z,lineNumber:220,columnNumber:9},void 0),n===`en`&&(0,E.jsxDEV)(`div`,{className:`mb-8 p-4 bg-yellow-100 border-l-4 border-yellow-500 text-yellow-700`,children:(0,E.jsxDEV)(`div`,{className:`flex items-center`,children:[(0,E.jsxDEV)(Pi,{className:`w-6 h-6 mr-2`},void 0,!1,{fileName:Z,lineNumber:246,columnNumber:15},void 0),(0,E.jsxDEV)(`p`,{children:`Some links and resources are only available in German.`},void 0,!1,{fileName:Z,lineNumber:247,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:245,columnNumber:13},void 0)},void 0,!1,{fileName:Z,lineNumber:244,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg p-8 space-y-8`,children:[(0,E.jsxDEV)(`div`,{className:`w-full`,children:(0,E.jsxDEV)(`video`,{controls:!0,className:`w-full rounded-lg shadow-2xl`,src:`/video/drohnen-edit-20190601.mp4`,children:`Your browser does not support the video tag.`},void 0,!1,{fileName:Z,lineNumber:254,columnNumber:13},void 0)},void 0,!1,{fileName:Z,lineNumber:253,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-full`,children:[(0,E.jsxDEV)(`div`,{className:`text-sm text-gray-600 dark:text-gray-400 mb-6`,children:(0,E.jsxDEV)(`p`,{children:[y?.lastUpdate||`Letzte Aktualisierung:`,` 31.01.2026`]},void 0,!0,{fileName:Z,lineNumber:265,columnNumber:15},void 0)},void 0,!1,{fileName:Z,lineNumber:264,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`bg-blue-50 dark:bg-blue-900/30 p-6 rounded-lg mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.resourcesTitle},void 0,!1,{fileName:Z,lineNumber:269,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-3`,children:[(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-gray-900 dark:text-white mb-2`,children:y?.euRegulationTitle},void 0,!1,{fileName:Z,lineNumber:272,columnNumber:19},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>f(`https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX:32019R0947`),className:`text-blue-600 dar
1851k:text-blue-400 hover:underline cursor-pointer text-left`,children:y?.euRegulationLink},void 0,!1,{fileName:Z,lineNumber:273,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:271,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-gray-900 dark:text-white mb-2`,children:y?.licenseTitle},void 0,!1,{fileName:Z,lineNumber:281,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200 mb-2`,children:y?.licenseDescription},void 0,!1,{fileName:Z,lineNumber:282,columnNumber:19},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>f(`https://lba-openuav.de/`),className:`text-blue-600 dark:text-blue-400 hover:underline cursor-pointer text-left`,children:y?.licenseLink},void 0,!1,{fileName:Z,lineNumber:285,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-sm text-gray-600 dark:text-gray-400 mt-2`,children:y?.licenseCost},void 0,!1,{fileName:Z,lineNumber:291,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:280,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-gray-900 dark:text-white mb-2`,children:y?.droniqTitle},void 0,!1,{fileName:Z,lineNumber:296,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200 mb-2`,children:y?.droniqDescription},void 0,!1,{fileName:Z,lineNumber:297,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex gap-3 mb-2`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>f(`https://play.google.com/store/apps/details?id=de.droniq.droniqmaps&hl=en`),className:`text-blue-600 dark:text-blue-400 hover:underline cursor-pointer`,children:y?.droniqAndroid},void 0,!1,{fileName:Z,lineNumber:301,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{className:`text-gray-500`,children:`â¢`},void 0,!1,{fileName:Z,lineNumber:307,columnNumber:21},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>f(`https://apps.apple.com/de/app/droniq-maps/id6657980988`),className:`text-blue-600 dark:text-blue-400 hover:underline cursor-pointer`,children:y?.droniqIOS},void 0,!1,{fileName:Z,lineNumber:308,columnNumber:21},void 0)]},void 0,!0,{fileName:Z,lineNumber:300,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-sm text-yellow-600 dark:text-yellow-400`,children:y?.droniqWarning},void 0,!1,{fileName:Z,lineNumber:315,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:295,columnNumber:17},void 0)]},void 0,!0,{fileName:Z,lineNumber:270,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:268,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`bg-orange-50 dark:bg-orange-900/30 p-6 rounded-lg mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.changesTitle},void 0,!1,{fileName:Z,lineNumber:323,columnNumber:15},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200 mb-4`,children:y?.changesIntro},void 0,!1,{fileName:Z,lineNumber:324,columnNumber:15},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 space-y-2 text-gray-800 dark:text-gray-200`,children:y?.changes.map((e,t)=>(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:[e.split(`:`)[0],`:`]},void 0,!0,{fileName:Z,lineNumber:329,columnNumber:35},void 0),` `,e.split(`:`).slice(1).join(`:`)]},t,!0,{fileName:Z,lineNumber:329,columnNumber:19},void 0))},void 0,!1,{fileName:Z,lineNumber:327,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:322,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`bg-red-50 dark:bg-red-900/30 p-6 rounded-lg mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.importantTitle},void 0,!1,{fileName:Z,lineNumber:335,columnNumber:15},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 space-y-2 text-gray-800 dark:text-gray-200`,children:y?.important.map((e,t)=>(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:[e.split(`:`)[0],`:`]},void 0,!0,{fileName:Z,lineNumber:338,columnNumber:35},void 0),` `,e.split(`:`).slice(1).join(`:`)]},t,!0,{fileName:Z,lineNumber:338,columnNumber:19},void 0))},void 0,!1,{fileName:Z,lineNumber:336,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:334,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`bg-blue-50 dark:bg-blue-900/30 p-6 rounded-lg mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.finderTitle},void 0,!1,{fileName:Z,lineNumber:344,columnNumber:15},void 0),(0,E.jsxDEV)(`form`,{onSubmit:v,className:`space-y-4`,children:[(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`label`,{className:`block mb-2 text-gray-800 dark:text-gray-200`,children:y?.weightLabel},void 0,!1,{fileName:Z,lineNumber:347,columnNumber:19},void 0),(0,E.jsxDEV)(`input`,{type:`number`,value:r,onChange:e=>i(e.target.value),className:`w-full p-2 border rounded text-gray-800 dark:text-gray-200 dark:bg-gray-700 dark:border-gray-600`,required:!0},void 0,!1,{fileName:Z,lineNumber:348,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:346,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:(0,E.jsxDEV)(`label`,{className:`flex items-center text-gray-800 dark:text-gray-200`,children:[(0,E.jsxDEV)(`input`,{type:`checkbox`,checked:a,onChange:e=>o(e.target.checked),className:`mr-2`},void 0,!1,{fileName:Z,lineNumber:358,columnNumber:21},void 0),y?.homemadeLabel]},void 0,!0,{fileName:Z,lineNumber:357,columnNumber:19},void 0)},void 0,!1,{fileName:Z,lineNumber:356,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{type:`submit`,className:`bg-blue-500 text-white px-4 py-2 rounded hover:bg-blue-600`,children:y?.findButton},void 0,!1,{fileName:Z,lineNumber:367,columnNumber:17},void 0)]},void 0,!0,{fileName:Z,lineNumber:345,columnNumber:15},void 0),s&&(0,E.jsxDEV)(`div`,{className:`mt-4 p-4 bg-green-50 dark:bg-green-900/30 rounded-lg`,children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-gray-900 dark:text-white mb-2`,children:y?.resultTitle},void 0,!1,{fileName:Z,lineNumber:377,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200`,children:[y?.droneClass,` `,g()]},void 0,!0,{fileName:Z,lineNumber:378,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200`,children:[y?.requiredLicense,` `,_(g())]},void 0,!0,{fileName:Z,lineNumber:379,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:376,columnNumber:17},void 0)]},void 0,!0,{fileName:Z,lineNumber:343,columnNumber:13},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.scenariosTitle},void 0,!1,{fileName:Z,lineNumber:384,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-800 dark:text-gray-200 mb-4`,children:y?.scenariosIntro},void 0,!1,{fileName:Z,lineNumber:385,columnNumber:13},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 mb-8 text-gray-800 dark:text-gray-200`,children:y?.scenarios.map((e,t)=>(0,E.jsxDEV)(`li`,{children:[(0,E.jsxDEV)(`strong`,{children:e.split(` - `)[0]},void 0,!1,{fileName:Z,lineNumber:388,columnNumber:33},void 0),` - `,e.split(` - `).slice(1).join(` - `)]},t,!0,{fileName:Z,lineNumber:388,columnNumber:17},void 0))},void 0,!1,{fileName:Z,lineNumber:386,columnNumber:13},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.droneClassesTitle},void 0,!1,{fileName:Z,lineNumber:392,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid md:grid-cols-2 lg:grid-cols-3 gap-6 mb-8`,children:m.map(e=>(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-600 border border-gray-200 dark:border-gray-700 rounded-lg p-4`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-bold text-gray-900 dark:text-white mb-4`,children:[n===`de`?`Klasse`:`Class`,` `,e.name]},void 0,!0,{fileName:Z,lineNumber:399,columnNumber:19},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 space-y-2`,children:e.requirements.map((e,t)=>(0,E.jsxDEV)(`li`,{className:`text-sm text-gray-800 dark:text-gray-200`,children:e},t,!1,{fileName:Z,lineNumber:402,columnNumber:23},void 0))},void 0,!1,{fileName:Z,lineNumber:400,columnNumber:19},void 0)]},e.name,!0,{fileName:Z,lineNumber:395,columnNumber:17},void 0))},void 0,!1,{fileName:Z,lineNumber:393,columnNumber:13},void 0),(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:y?.pilotClassesTitle},void 0,!1,{fileName:Z,lineNumber:409,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid md:grid-cols-3 gap-6 mb-8`,children:h.map(e=>(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-600 border border-gray-200 dark:border-gray-700 rounded-lg p-4`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-bold text-gray-900 dark:text-white mb-4`,children:[n===`de`?`Kategorie`:`Category`,` `,e.name]},void 0,!0,{fileName:Z,lineNumber:416,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`mb-2 text-sm text-gray-800 dark:text-gray-200`,children:e.description},void 0,!1,{fileName:Z,lineNumber:417,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`mb-2 text-sm font-bold text-gray-900 dark:text-white`,children:[y?.pilotForClasses,` `,e.droneClasses.join(`, `)]},void 0,!0,{fileName:Z,lineNumber:418,columnNumber:19},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 space-y-2`,children:e.requirements.map((e,t)=>(0,E.jsxDEV)(`li`,{className:`text-sm text-gray-800 dark:text-gray-200`,children:e},t,!1,{fileName:Z,lineNumber:421,columnNumber:23},void 0))},void 0,!1,{fileName:Z,lineNumber:419,columnNumber:19},void 0)]},e.name,!0,{fileName:Z,lineNumber:412,columnNumber:17},void 0))},void 0,!1,{fileName:Z,lineNumber:410,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`bg-yellow-50 dark:bg-yellow-900/30 p-4 rounded-lg mb-8`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-bold text-gray-900 dark:text-white mb-2`,children:y?.hintsTitle},void 0,!1,{fileName:Z,lineNumber:429,columnNumber:15},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 space-y-2`,children:y?.hints.map((e,t)=>(0,E.jsxDEV)(`li`,{className:`text-gray-800 dark:text-gray-200`,children:e},t,!1,{fileName:Z,lineNumber:432,columnNumber:19},void 0))},void 0,!1,{fileName:Z,lineNumber:430,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:428,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-center text-black dark:text-gray-300 mb-6`,children:t.drones?.overview||t.divers.dronesDescription},void 0,!1,{fileName:Z,lineNumber:437,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid md:grid-cols-3 gap-6`,children:[(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-600 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center gap-3 text-black dark:text-white`,children:[(0,E.jsxDEV)(ta,{className:`text-blue-500`},void 0,!1,{fileName:Z,lineNumber:444,columnNumber:19},void 0),` `,t.drones?.categories.consumer.title||`Consumer Drones`]},void 0,!0,{fileName:Z,lineNumber:443,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`mb-4 text-black dark:text-gray-300`,children:t.drones?.categories.consumer.description||`Drones for personal and recreational use`},void 0,!1,{fileName:Z,lineNumber:446,columnNumber:17},void 0),(t.drones?.categories.consumer.examples||[]).map((e,t)=>(0,E.jsxDEV)(`div`,{className:`mb-4`,children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-lg text-black dark:text-white`,children:e.name},void 0,!1,{fileName:Z,lineNumber:451,columnNumber:21},void 0),(0,E.jsxDEV)(`p`,{className:`text-black dark:text-gray-300`,children:e.description},void 0,!1,{fileName:Z,lineNumber:452,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-sm text-black dark:text-gray-300`,children:e.features.map((e,t)=>(0,E.jsxDEV)(`li`,{children:e},t,!1,{fileName:Z,lineNumber:455,columnNumber:25},void 0))},void 0,!1,{fileName:Z,lineNumber:453,columnNumber:21},void 0)]}
1851,t,!0,{fileName:Z,lineNumber:450,columnNumber:19},void 0))]},void 0,!0,{fileName:Z,lineNumber:442,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-600 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center gap-3 text-black dark:text-white`,children:[(0,E.jsxDEV)(bi,{className:`text-green-500`},void 0,!1,{fileName:Z,lineNumber:464,columnNumber:19},void 0),` `,t.drones?.categories.professional.title||`Professional Drones`]},void 0,!0,{fileName:Z,lineNumber:463,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`mb-4 text-black dark:text-gray-300`,children:t.drones?.categories.professional.description||`Drones for industrial and specialized applications`},void 0,!1,{fileName:Z,lineNumber:466,columnNumber:17},void 0),(t.drones?.categories.professional.applications||[]).map((e,t)=>(0,E.jsxDEV)(`div`,{className:`mb-4`,children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-lg text-black dark:text-white`,children:e.sector},void 0,!1,{fileName:Z,lineNumber:471,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-black dark:text-gray-300`,children:e.uses.map((e,t)=>(0,E.jsxDEV)(`li`,{children:e},t,!1,{fileName:Z,lineNumber:474,columnNumber:25},void 0))},void 0,!1,{fileName:Z,lineNumber:472,columnNumber:21},void 0)]},t,!0,{fileName:Z,lineNumber:470,columnNumber:19},void 0))]},void 0,!0,{fileName:Z,lineNumber:462,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gray-100 dark:bg-gray-600 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center gap-3 text-black dark:text-white`,children:[(0,E.jsxDEV)(Xr,{className:`text-red-500`},void 0,!1,{fileName:Z,lineNumber:483,columnNumber:19},void 0),` `,t.drones?.categories.military.title||`Military Drones`]},void 0,!0,{fileName:Z,lineNumber:482,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`mb-4 text-black dark:text-gray-300`,children:t.drones?.categories.military.description||`Advanced unmanned aerial vehicles`},void 0,!1,{fileName:Z,lineNumber:485,columnNumber:17},void 0),(t.drones?.categories.military.types||[]).map((e,t)=>(0,E.jsxDEV)(`div`,{className:`mb-4`,children:[(0,E.jsxDEV)(`h3`,{className:`font-bold text-lg text-black dark:text-white`,children:e.name},void 0,!1,{fileName:Z,lineNumber:490,columnNumber:21},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc list-inside text-black dark:text-gray-300`,children:e.capabilities.map((e,t)=>(0,E.jsxDEV)(`li`,{children:e},t,!1,{fileName:Z,lineNumber:493,columnNumber:25},void 0))},void 0,!1,{fileName:Z,lineNumber:491,columnNumber:21},void 0)]},t,!0,{fileName:Z,lineNumber:489,columnNumber:19},void 0))]},void 0,!0,{fileName:Z,lineNumber:481,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:441,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-8 bg-gray-100 dark:bg-gray-600 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center gap-3 text-black dark:text-white`,children:[(0,E.jsxDEV)(Mr,{className:`text-orange-500`},void 0,!1,{fileName:Z,lineNumber:503,columnNumber:17},void 0),` `,t.drones?.ethicalConsiderations.title||`Ethical Considerations`]},void 0,!0,{fileName:Z,lineNumber:502,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`font-bold mb-2 text-black dark:text-white`,children:t.drones?.ethicalConsiderations.privacyTitle||`Privacy`},void 0,!1,{fileName:Z,lineNumber:507,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-black dark:text-gray-300`,children:t.drones?.ethicalConsiderations.privacyDescription||`Considerations about drone privacy`},void 0,!1,{fileName:Z,lineNumber:508,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:506,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`font-bold mb-2 text-black dark:text-white`,children:t.drones?.ethicalConsiderations.regulationTitle||`Regulations`},void 0,!1,{fileName:Z,lineNumber:511,columnNumber:19},void 0),(0,E.jsxDEV)(`p`,{className:`text-black dark:text-gray-300`,children:t.drones?.ethicalConsiderations.regulationDescription||`Legal frameworks for drone usage`},void 0,!1,{fileName:Z,lineNumber:512,columnNumber:19},void 0)]},void 0,!0,{fileName:Z,lineNumber:510,columnNumber:17},void 0)]},void 0,!0,{fileName:Z,lineNumber:505,columnNumber:15},void 0)]},void 0,!0,{fileName:Z,lineNumber:501,columnNumber:13},void 0)]},void 0,!0,{fileName:Z,lineNumber:263,columnNumber:11},void 0)]},void 0,!0,{fileName:Z,lineNumber:252,columnNumber:9},void 0)]},void 0,!0,{fileName:Z,lineNumber:219,columnNumber:7},void 0),(0,E.jsxDEV)(bj,{url:l||``,isOpen:l!==null,onClose:()=>u(null),onConfirm:p},void 0,!1,{fileName:Z,lineNumber:520,columnNumber:7},void 0)]},void 0,!0,{fileName:Z,lineNumber:218,columnNumber:5},void 0)},Q=`/opt/src/frontend/src/components/diverse/3DPrinters.tsx`,cG=()=>{let e=xt(),{translations:t}=rr(),n=t.threeDPrinters.sidewinderX1,r=t.threeDPrinters.bambuLabP1S;return(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`container mx-auto px-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>{e(`/divers`)},className:` 1852 flex items-center gap-2 1853 bg-blue-500 text-white 1854 px-4 py-2 rounded-lg 1855 hover:bg-blue-600 1856 transition-colors duration-200 1857 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1858 `,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,viewBox:`0 0 20 20`,fill:`currentColor`,children:(0,E.jsxDEV)(`path`,{fillRule:`evenodd`,d:`M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z`,clipRule:`evenodd`},void 0,!1,{fileName:Q,lineNumber:32,columnNumber:15},void 0)},void 0,!1,{fileName:Q,lineNumber:31,columnNumber:13},void 0),t.common.backToMenu]},void 0,!0,{fileName:Q,lineNumber:20,columnNumber:11},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-black dark:text-white`,children:t.threeDPrinters.title},void 0,!1,{fileName:Q,lineNumber:36,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-[120px]`},void 0,!1,{fileName:Q,lineNumber:39,columnNumber:11},void 0),` `]},void 0,!0,{fileName:Q,lineNumber:19,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-lg p-8 mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center text-black dark:text-white`,children:[(0,E.jsxDEV)(ai,{className:`mr-3 text-blue-500`},void 0,!1,{fileName:Q,lineNumber:45,columnNumber:13},void 0),` Artillery Sidewinder X1`]},void 0,!0,{fileName:Q,lineNumber:44,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`grid md:grid-cols-2 gap-6`,children:[(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:n.specifications.title},void 0,!1,{fileName:Q,lineNumber:50,columnNumber:15},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(`li`,{children:n.specifications.printVolume},void 0,!1,{fileName:Q,lineNumber:54,columnNumber:17},void 0),(0,E.jsxDEV)(`li`,{children:n.specifications.printSpeed},void 0,!1,{fileName:Q,lineNumber:55,columnNumber:17},void 0),(0,E.jsxDEV)(`li`,{children:n.specifications.nozzleDiameter},void 0,!1,{fileName:Q,lineNumber:56,columnNumber:17},void 0),(0,E.jsxDEV)(`li`,{children:n.specifications.supportedMaterials},void 0,!1,{fileName:Q,lineNumber:57,columnNumber:17},void 0),(0,E.jsxDEV)(`li`,{children:n.specifications.extruder},void 0,!1,{fileName:Q,lineNumber:58,columnNumber:17},void 0),(0,E.jsxDEV)(`li`,{children:n.specifications.mainboard},void 0,!1,{fileName:Q,lineNumber:59,columnNumber:17},void 0)]},void 0,!0,{fileName:Q,lineNumber:53,columnNumber:15},void 0)]},void 0,!0,{fileName:Q,lineNumber:49,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:n.features.title},void 0,!1,{fileName:Q,lineNumber:64,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(bi,{className:`mr-3 text-green-500`},void 0,!1,{fileName:Q,lineNumber:69,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:n.features.metalFrame},void 0,!1,{fileName:Q,lineNumber:70,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:68,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(ri,{className:`mr-3 text-purple-500`},void 0,!1,{fileName:Q,lineNumber:73,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:n.features.autoLeveling},void 0,!1,{fileName:Q,lineNumber:74,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:72,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(ai,{className:`mr-3 text-red-500`},void 0,!1,{fileName:Q,lineNumber:77,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:n.features.precision},void 0,!1,{fileName:Q,lineNumber:78,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:76,columnNumber:17},void 0)]},void 0,!0,{fileName:Q,lineNumber:67,columnNumber:15},void 0)]},void 0,!0,{fileName:Q,lineNumber:63,columnNumber:13},void 0)]},void 0,!0,{fileName:Q,lineNumber:48,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`mt-6`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:`Overview`},void 0,!1,{fileName:Q,lineNumber:85,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-black dark:text-gray-300`,children:n.overview},void 0,!1,{fileName:Q,lineNumber:86,columnNumber:13},void 0)]},void 0,!0,{fileName:Q,lineNumber:84,columnNumber:11},void 0)]},void 0,!0,{fileName:Q,lineNumber:43,columnNumber:9},void 0),r&&(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-lg shadow-lg p-8 mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 flex items-center text-black dark:text-white`,children:[(0,E.jsxDEV)(ai,{className:`mr-3 text-orange-500`},void 0,!1,{fileName:Q,lineNumber:96,columnNumber:15},void 0),` BambuLab P1S`]},void 0,!0,{fileName:Q,lineNumber:95,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid md:grid-cols-2 gap-6`,children:[(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:r.specifications.title},void 0,!1,{fileName:Q,lineNumber:101,columnNumber:17},void 0),(0,E.jsxDEV)(`ul`,{className:`list-disc pl-5 text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(`li`,{children:r.specifications.printVolume},void 0,!1,{fileName:Q,lineNumber:105,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:r.specifications.printSpeed},void 0,!1,{fileName:Q,lineNumber:106,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:r.specifications.nozzleDiameter},void 0,!1,{fileName:Q,lineNumber:107,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:r.specifications.supportedMaterials},void 0,!1,{fileName:Q,lineNumber:108,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:r.specifications.extruder},void 0,!1,{fileName:Q,lineNumber:109,columnNumber:19},void 0),(0,E.jsxDEV)(`li`,{children:r.specifications.connectivity},void 0,!1,{fileName:Q,lineNumber:110,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:104,columnNumber:17},void 0)]},void 0,!0,{fileName:Q,lineNumber:100,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:r.features.title},void 0,!1,{fileName:Q,lineNumber:115,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(ri,{className:`mr-3 text-green-500`},void 0,!1,{fileName:Q,lineNumber:120,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{children:r.features.autoCalibration},void 0,!1,{fileName:Q,lineNumber:121,columnNumber:21},void 0)]},void 0,!0,{fileName:Q,lineNumber:119,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(bi,{className:`mr-3 text-purple-500`},void 0,!1,{fileName:Q,lineNumber:124,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{children:r.features.aiDetection},void 0,!1,{fileName:Q,lineNumber:125,columnNumber:21},void 0)]},void 0,!0,{fileName:Q,lineNumber:123,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(ai,{className:`mr-3 text-blue-500`},void 0,!1,{fileName:Q,lineNumber:128,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{children:r.features.multiColor},void 0,!1,{fileName:Q,lineNumber:129,columnNumber:21},void 0)]},void 0,!0,{fileName:Q,lineNumber:127,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center text-black dark:text-gray-300`,children:[(0,E.jsxDEV)(Ki,{className:`mr-3 text-cyan-500`},void 0,!1,{fileName:Q,lineNumber:132,columnNumber:21},void 0),(0,E.jsxDEV)(`span`,{children:r.features.cloudIntegration},void 0,!1,{fileName:Q,lineNumber:133,columnNumber:21},void 0)]},void 0,!0,{fileName:Q,lineNumber:131,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:118,columnNumber:17},void 0)]},void 0,!0,{fileName:Q,lineNumber:114,columnNumber:15},void 0)]},void 0,!0,{fileName:Q,lineNumber:99,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-6`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-2 text-black dark:text-white`,children:`Overview`},void 0,!1,{fileName:Q,lineNumber:140,columnNumber:15},void 0),(0,E.jsxDEV)(`p`,{className:`text-black dark:text-gray-300`,children:r.overview},void 0,!1,{fileName:Q,lineNumber:141,columnNumber:15},void 0)]},void 0,!0,{fileName:Q,lineNumber:139,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`mt-6 bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-6`,children:[(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold mb-4 flex items-center text-yellow-800 dark:text-yellow-200`,children:[(0,E.jsxDEV)(Pi,{className:`mr-3 text-yellow-600`},void 0,!1,{fileName:Q,lineNumber:149,columnNumber:17},void 0),r.professionalLimitations.title]},void 0,!0,{fileName:Q,lineNumber:148,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-3 text-yellow-800 dark:text-yellow-200`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,E.jsxDEV)(jr,{className:`mr-3 mt-1 text-yellow-600 flex-shrink-0`},void 0,!1,{fileName:Q,lineNumber:154,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:r.professionalLimitations.lanOnlyLimitation},void 0,!1,{fileName:Q,lineNumber:155,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:153,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,E.jsxDEV)(jr,{className:`mr-3 mt-1 text-yellow-600 flex-shrink-0`},void 0,!1,{fileName:Q,lineNumber:158,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:r.professionalLimitations.udpDiscovery},void 0,!1,{fileName:Q,lineNumber:159,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:157,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,E.jsxDEV)(ri,{className:`mr-3 mt-1 text-green-600 flex-shrink-0`},void 0,!1,{fileName:Q,lineNumber:162,columnNumber:19},void 0),(0,E.jsxDEV)(`span`,{children:r.professionalLimitations.vlanSolution},void 0,!1,{fileName:Q,lineNumber:163,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:161,columnNumber:17},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,E.jsxDEV)(gi,{className:`mr-3 mt-1 text-blue-600 flex-shrink-0`},void 0,!1,{fileName:Q,lineNumber:166,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{children:[(0,E.jsxDEV)(`span`,{className:`block mb-1`,children:r.professionalLimitations.wikiReference},void 0,!1,{fileName:Q,lineNumber:168,columnNumber:21},void 0),(0,E
1858.jsxDEV)(`a`,{href:`https://kb.pabr.de/books/3d-print/page/bambu-lab-p1s-on-iot-vlan`,target:`_blank`,rel:`noopener noreferrer`,className:`text-blue-600 dark:text-blue-400 hover:underline`,children:`https://kb.pabr.de/books/3d-print/page/bambu-lab-p1s-on-iot-vlan`},void 0,!1,{fileName:Q,lineNumber:169,columnNumber:21},void 0)]},void 0,!0,{fileName:Q,lineNumber:167,columnNumber:19},void 0)]},void 0,!0,{fileName:Q,lineNumber:165,columnNumber:17},void 0)]},void 0,!0,{fileName:Q,lineNumber:152,columnNumber:15},void 0)]},void 0,!0,{fileName:Q,lineNumber:147,columnNumber:13},void 0)]},void 0,!0,{fileName:Q,lineNumber:94,columnNumber:11},void 0)]},void 0,!0,{fileName:Q,lineNumber:18,columnNumber:7},void 0)},void 0,!1,{fileName:Q,lineNumber:17,columnNumber:5},void 0)},lG=`/opt/src/frontend/src/components/diverse/MachineLearning.tsx`,uG=()=>{let e=xt(),{translations:t}=rr(),[n,r]=(0,S.useState)(``),[i,a]=(0,S.useState)(null),[o,s]=(0,S.useState)(null),c=()=>{e(`/divers`)},l=e=>{if(e.includes(`pabr.de`)){window.open(e,`_blank`,`noopener,noreferrer`);return}s(e)},u=()=>{o&&(window.open(o,`_blank`,`noopener,noreferrer`),s(null))},d=t.machineLearning.categories,f=e=>{switch(e){case`OpenAI ChatGPT`:return(0,E.jsxDEV)(Ui,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:lG,lineNumber:64,columnNumber:37},void 0);case`Claude`:return(0,E.jsxDEV)(Ui,{className:`w-6 h-6 text-green-500`},void 0,!1,{fileName:lG,lineNumber:65,columnNumber:29},void 0);case`AgentGPT`:return(0,E.jsxDEV)(ri,{className:`w-6 h-6 text-purple-500`},void 0,!1,{fileName:lG,lineNumber:66,columnNumber:31},void 0);case`Forefront AI`:return(0,E.jsxDEV)(di,{className:`w-6 h-6 text-red-500`},void 0,!1,{fileName:lG,lineNumber:67,columnNumber:35},void 0);case`Perplexity AI`:return(0,E.jsxDEV)(_i,{className:`w-6 h-6 text-indigo-500`},void 0,!1,{fileName:lG,lineNumber:68,columnNumber:36},void 0);case`Poe`:return(0,E.jsxDEV)(Ri,{className:`w-6 h-6 text-teal-500`},void 0,!1,{fileName:lG,lineNumber:69,columnNumber:26},void 0);case`Midjourney`:return(0,E.jsxDEV)(Si,{className:`w-6 h-6 text-orange-500`},void 0,!1,{fileName:lG,lineNumber:70,columnNumber:33},void 0);case`Stable Diffusion`:return(0,E.jsxDEV)(Si,{className:`w-6 h-6 text-pink-500`},void 0,!1,{fileName:lG,lineNumber:71,columnNumber:39},void 0);case`DALL-E`:return(0,E.jsxDEV)(Si,{className:`w-6 h-6 text-yellow-500`},void 0,!1,{fileName:lG,lineNumber:72,columnNumber:29},void 0);case`Beautiful AI`:return(0,E.jsxDEV)(Ri,{className:`w-6 h-6 text-cyan-500`},void 0,!1,{fileName:lG,lineNumber:73,columnNumber:35},void 0);case`Simplified`:return(0,E.jsxDEV)(Ri,{className:`w-6 h-6 text-lime-500`},void 0,!1,{fileName:lG,lineNumber:74,columnNumber:33},void 0);case`Watermark Remover`:return(0,E.jsxDEV)(ri,{className:`w-6 h-6 text-gray-500`},void 0,!1,{fileName:lG,lineNumber:75,columnNumber:40},void 0);case`Suno`:return(0,E.jsxDEV)(fi,{className:`w-6 h-6 text-rose-500`},void 0,!1,{fileName:lG,lineNumber:76,columnNumber:27},void 0);default:return(0,E.jsxDEV)(ri,{className:`w-6 h-6 text-blue-500`},void 0,!1,{fileName:lG,lineNumber:77,columnNumber:23},void 0)}},p=S.useMemo(()=>{let e={chatBots:{title:d.chatBots.title,items:{}},imageGenerator:{title:d.imageGenerator.title,items:{}},powerpointAI:{title:d.powerpointAI.title,items:{}},tools:{title:d.tools.title,items:{}},music:{title:d.music.title,items:{}}};return Object.keys(d).forEach(t=>{let r=d[t],i={};Object.entries(r.items).forEach(([e,t])=>{let r=t;(r.name.toLowerCase().includes(n.toLowerCase())||r.description.toLowerCase().includes(n.toLowerCase()))&&(i[e]=r)}),Object.keys(i).length>0&&(e[t].items=i)}),e},[n,d]),m=(()=>{for(let e of Object.values(d)){let t=Object.values(e.items).find(t=>{let n=t;return`${e.title}-${n.name}`===i});if(t)return t}return null})();return(0,E.jsxDEV)(`div`,{className:`min-h-screen bg-gray-50 dark:bg-gray-900 pt-6 pb-12 transition-colors duration-200`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] mx-auto`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsxDEV)(`button`,{onClick:c,className:` 1859 flex items-center gap-2 1860 bg-blue-500 text-white 1861 px-4 py-2 rounded-lg 1862 hover:bg-blue-600 1863 transition-colors duration-200 1864 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1865 `,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,viewBox:`0 0 20 20`,fill:`currentColor`,children:(0,E.jsxDEV)(`path`,{fillRule:`evenodd`,d:`M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z`,clipRule:`evenodd`},void 0,!1,{fileName:lG,lineNumber:144,columnNumber:15},void 0)},void 0,!1,{fileName:lG,lineNumber:143,columnNumber:13},void 0),t.common.backToMenu]},void 0,!0,{fileName:lG,lineNumber:132,columnNumber:11},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white transition-colors duration-200`,children:t.machineLearning.title},void 0,!1,{fileName:lG,lineNumber:148,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-[120px]`},void 0,!1,{fileName:lG,lineNumber:151,columnNumber:11},void 0),` `]},void 0,!0,{fileName:lG,lineNumber:131,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`max-w-xl mx-auto mb-8`,children:(0,E.jsxDEV)(`div`,{className:`relative`,children:[(0,E.jsxDEV)(`input`,{type:`text`,placeholder:`Search Machine Learning Tools...`,value:n,onChange:e=>r(e.target.value),className:`w-full px-4 py-3 rounded-lg bg-white dark:bg-gray-800 border border-gray-300 dark:border-gray-700 1866 text-gray-900 dark:text-white placeholder-gray-500 dark:placeholder-gray-400 1867 focus:outline-none focus:ring-2 focus:ring-blue-500 dark:focus:ring-blue-400 1868 transition-colors duration-200`},void 0,!1,{fileName:lG,lineNumber:157,columnNumber:13},void 0),(0,E.jsxDEV)(ei,{className:`absolute right-4 top-1/2 transform -translate-y-1/2 text-gray-400 dark:text-gray-500`},void 0,!1,{fileName:lG,lineNumber:167,columnNumber:13},void 0)]},void 0,!0,{fileName:lG,lineNumber:156,columnNumber:11},void 0)},void 0,!1,{fileName:lG,lineNumber:155,columnNumber:9},void 0),Object.keys(p).map(e=>{let t=p[e];return Object.keys(t.items).length>0?(0,E.jsxDEV)(`div`,{className:`mb-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-semibold mb-4 text-gray-800 dark:text-white`,children:t.title},void 0,!1,{fileName:lG,lineNumber:177,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6`,children:Object.entries(t.items).map(([e,n])=>{let r=n;return(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-800 rounded-xl shadow-lg hover:shadow-xl 1869 transition-all duration-300 transform hover:-translate-y-1 1870 border border-gray-100 dark:border-gray-700 h-full`,children:(0,E.jsxDEV)(`div`,{className:`p-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-start mb-4`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3`,children:[(0,E.jsxDEV)(`div`,{className:`p-3 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:f(r.name)},void 0,!1,{fileName:lG,lineNumber:194,columnNumber:29},void 0),(0,E.jsxDEV)(`h3`,{className:`text-xl font-semibold text-gray-900 dark:text-white transition-colors duration-200`,children:r.name},void 0,!1,{fileName:lG,lineNumber:197,columnNumber:29},void 0)]},void 0,!0,{fileName:lG,lineNumber:193,columnNumber:27},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-2 ml-4`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>a(`${t.title}-${r.name}`),className:`text-blue-500 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 1871 transition-colors duration-200 p-2 rounded-full hover:bg-blue-50 dark:hover:bg-blue-900`,"aria-label":`Show More`,children:(0,E.jsxDEV)(yi,{className:`w-5 h-5`},void 0,!1,{fileName:lG,lineNumber:208,columnNumber:31},void 0)},void 0,!1,{fileName:lG,lineNumber:202,columnNumber:29},void 0),r.url&&(0,E.jsxDEV)(`button`,{onClick:()=>l(r.url),className:`text-blue-500 dark:text-blue-400 hover:text-blue-700 dark:hover:text-blue-300 1872 transition-colors duration-200 p-2 rounded-full hover:bg-blue-50 dark:hover:bg-blue-900`,"aria-label":`Visit Website`,children:(0,E.jsxDEV)(Ni,{className:`w-5 h-5`},void 0,!1,{fileName:lG,lineNumber:217,columnNumber:33},void 0)},void 0,!1,{fileName:lG,lineNumber:211,columnNumber:31},void 0)]},void 0,!0,{fileName:lG,lineNumber:201,columnNumber:27},void 0)]},void 0,!0,{fileName:lG,lineNumber:192,columnNumber:25},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-300 text-base transition-colors duration-200`,children:r.description},void 0,!1,{fileName:lG,lineNumber:222,columnNumber:25},void 0)]},void 0,!0,{fileName:lG,lineNumber:191,columnNumber:23},void 0)},e,!1,{fileName:lG,lineNumber:185,columnNumber:21},void 0)})},void 0,!1,{fileName:lG,lineNumber:180,columnNumber:15},void 0)]},e,!0,{fileName:lG,lineNumber:176,columnNumber:13},void 0):null}),m&&(0,E.jsxDEV)(`div`,{className:`fixed top-0 right-0 w-full sm:w-96 bg-white dark:bg-gray-800 shadow-2xl transform transition-transform duration-300 ease-in-out z-50 1873 ${i?`translate-x-0`:`translate-x-full`} 1874 h-screen pt-16 overflow-y-auto`,children:(0,E.jsxDEV)(`div`,{className:`p-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex justify-between items-center mb-6 sticky top-0 bg-white dark:bg-gray-800 py-2`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-3`,children:[(0,E.jsxDEV)(`div`,{className:`p-2 bg-gray-100 dark:bg-gray-700 rounded-lg`,children:f(m.name)}
1874,void 0,!1,{fileName:lG,lineNumber:244,columnNumber:19},void 0),(0,E.jsxDEV)(`h3`,{className:`text-2xl font-bold text-gray-900 dark:text-white`,children:m.name},void 0,!1,{fileName:lG,lineNumber:247,columnNumber:19},void 0)]},void 0,!0,{fileName:lG,lineNumber:243,columnNumber:17},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>a(null),className:`text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 1875 transition-colors duration-200`,children:(0,E.jsxDEV)(Hr,{className:`w-6 h-6`},void 0,!1,{fileName:lG,lineNumber:256,columnNumber:19},void 0)},void 0,!1,{fileName:lG,lineNumber:251,columnNumber:17},void 0)]},void 0,!0,{fileName:lG,lineNumber:242,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`prose dark:prose-invert max-w-none`,children:m.extendedInfo?.split(` 1876`).map((e,t)=>(0,E.jsxDEV)(`p`,{className:`mb-4 text-gray-700 dark:text-gray-300`,children:e},t,!1,{fileName:lG,lineNumber:261,columnNumber:19},void 0))},void 0,!1,{fileName:lG,lineNumber:259,columnNumber:15},void 0),m.url&&(0,E.jsxDEV)(`button`,{onClick:()=>l(m.url),className:`mt-6 inline-flex items-center text-blue-500 hover:text-blue-700 dark:text-blue-400 1877 dark:hover:text-blue-300 transition-colors duration-200 cursor-pointer`,children:[(0,E.jsxDEV)(`span`,{className:`mr-2`,children:`Visit Website`},void 0,!1,{fileName:lG,lineNumber:272,columnNumber:19},void 0),(0,E.jsxDEV)(Ni,{className:`w-4 h-4`},void 0,!1,{fileName:lG,lineNumber:273,columnNumber:19},void 0)]},void 0,!0,{fileName:lG,lineNumber:267,columnNumber:17},void 0)]},void 0,!0,{fileName:lG,lineNumber:241,columnNumber:13},void 0)},void 0,!1,{fileName:lG,lineNumber:236,columnNumber:11},void 0),i&&(0,E.jsxDEV)(`div`,{className:`fixed inset-0 bg-black bg-opacity-50 transition-opacity duration-300 z-40`,onClick:()=>a(null)},void 0,!1,{fileName:lG,lineNumber:282,columnNumber:11},void 0),(0,E.jsxDEV)(bj,{url:o||``,isOpen:o!==null,onClose:()=>s(null),onConfirm:u},void 0,!1,{fileName:lG,lineNumber:288,columnNumber:9},void 0)]},void 0,!0,{fileName:lG,lineNumber:130,columnNumber:7},void 0)},void 0,!1,{fileName:lG,lineNumber:129,columnNumber:5},void 0)},$=`/opt/src/frontend/src/components/diverse/UnterwasserrugbyPage.tsx`,dG=()=>{let e=xt(),{translations:t}=rr(),[n,r]=(0,S.useState)(null),i=()=>{e(`/divers`)},a=e=>{if(e.includes(`pabr.de`)){window.open(e,`_blank`,`noopener,noreferrer`);return}r(e)};return(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-900 min-h-full w-full pt-6 pb-12 transition-colors duration-200`,children:[(0,E.jsxDEV)(`div`,{className:`w-full max-w-[2000px] mx-auto px-6`,children:[(0,E.jsxDEV)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsxDEV)(`button`,{onClick:i,className:` 1878 flex items-center gap-2 1879 bg-blue-500 text-white 1880 px-4 py-2 rounded-lg 1881 hover:bg-blue-600 1882 transition-colors duration-200 1883 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 1884 `,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,viewBox:`0 0 20 20`,fill:`currentColor`,children:(0,E.jsxDEV)(`path`,{fillRule:`evenodd`,d:`M9.707 16.707a1 1 0 01-1.414 0l-6-6a1 1 0 010-1.414l6-6a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l4.293 4.293a1 1 0 010 1.414z`,clipRule:`evenodd`},void 0,!1,{fileName:$,lineNumber:46,columnNumber:15},void 0)},void 0,!1,{fileName:$,lineNumber:45,columnNumber:13},void 0),t.common.backToMenu]},void 0,!0,{fileName:$,lineNumber:34,columnNumber:11},void 0),(0,E.jsxDEV)(`h1`,{className:`text-4xl font-bold text-center text-gray-900 dark:text-white transition-colors duration-200`,children:t.header.divers.unterwasserrugby},void 0,!1,{fileName:$,lineNumber:50,columnNumber:11},void 0),(0,E.jsxDEV)(`div`,{className:`w-[120px]`},void 0,!1,{fileName:$,lineNumber:53,columnNumber:11},void 0),` `]},void 0,!0,{fileName:$,lineNumber:33,columnNumber:9},void 0),(0,E.jsxDEV)(`div`,{className:`bg-white dark:bg-gray-700 rounded-xl shadow-xl p-8 space-y-8`,children:[(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h2`,{className:`text-3xl font-bold mb-6 dark:text-white text-blue-600`,children:t.unterwasserrugby.generalInfoTitle},void 0,!1,{fileName:$,lineNumber:59,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`space-y-4 text-gray-700 dark:text-gray-200`,children:[(0,E.jsxDEV)(`p`,{className:`text-lg leading-relaxed`,children:t.unterwasserrugby.description1},void 0,!1,{fileName:$,lineNumber:63,columnNumber:15},void 0),(0,E.jsxDEV)(`p`,{className:`text-lg leading-relaxed`,children:t.unterwasserrugby.description2},void 0,!1,{fileName:$,lineNumber:64,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`flex items-center space-x-4 bg-blue-50 dark:bg-blue-900 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`div`,{className:`text-blue-600 dar
1884k:text-blue-300`,children:(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-12 w-12`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M13 10V3L4 14h7v7l9-11h-7z`},void 0,!1,{fileName:$,lineNumber:68,columnNumber:21},void 0)},void 0,!1,{fileName:$,lineNumber:67,columnNumber:19},void 0)},void 0,!1,{fileName:$,lineNumber:66,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`italic text-lg font-medium`,children:t.unterwasserrugby.keyFact},void 0,!1,{fileName:$,lineNumber:71,columnNumber:17},void 0)]},void 0,!0,{fileName:$,lineNumber:65,columnNumber:15},void 0)]},void 0,!0,{fileName:$,lineNumber:62,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:58,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.gameplayTitle},void 0,!1,{fileName:$,lineNumber:78,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed mb-4`,children:t.unterwasserrugby.gameplayDescription},void 0,!1,{fileName:$,lineNumber:81,columnNumber:13},void 0),(0,E.jsxDEV)(`h4`,{className:`text-xl font-semibold mb-3 dark:text-white text-blue-600`,children:t.unterwasserrugby.rulesTitle},void 0,!1,{fileName:$,lineNumber:85,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.rulesDescription},void 0,!1,{fileName:$,lineNumber:88,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:77,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.equipmentTitle},void 0,!1,{fileName:$,lineNumber:95,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.equipmentDescription},void 0,!1,{fileName:$,lineNumber:98,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:94,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.positionsTitle},void 0,!1,{fileName:$,lineNumber:105,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed mb-6`,children:t.unterwasserrugby.positionsDescription},void 0,!1,{fileName:$,lineNumber:108,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:[(0,E.jsxDEV)(`div`,{className:`bg-gradient-to-br from-blue-50 to-blue-100 dark:from-blue-900 dark:to-blue-800 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h4`,{className:`text-xl font-bold mb-3 text-blue-700 dark:text-blue-300`,children:`Deckel`},void 0,!1,{fileName:$,lineNumber:114,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200`,children:t.unterwasserrugby.positionDeckel},void 0,!1,{fileName:$,lineNumber:115,columnNumber:17},void 0)]},void 0,!0,{fileName:$,lineNumber:113,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gradient-to-br from-green-50 to-green-100 dark:from-green-900 dark:to-green-800 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h4`,{className:`text-xl font-bold mb-3 text-green-700 dark:text-green-300`,children:`Dackel`},void 0,!1,{fileName:$,lineNumber:118,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200`,children:t.unterwasserrugby.positionDackel},void 0,!1,{fileName:$,lineNumber:119,columnNumber:17},void 0)]},void 0,!0,{fileName:$,lineNumber:117,columnNumber:15},void 0),(0,E.jsxDEV)(`div`,{className:`bg-gradient-to-br from-red-50 to-red-100 dark:from-red-900 dark:to-red-800 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h4`,{className:`text-xl font-bold mb-3 text-red-700 dark:text-red-300`,children:`Strum`},void 0,!1,{fileName:$,lineNumber:122,columnNumber:17},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200`,children:t.unterwasserrugby.positionStrum},void 0,!1,{fileName:$,lineNumber:123,columnNumber:17},void 0)]},void 0,!0,{fileName:$,lineNumber:121,columnNumber:15},void 0)]},void 0,!0,{fileName:$,lineNumber:112,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:104,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.tacticsTitle},void 0,!1,{fileName:$,lineNumber:130,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.tacticsDescription},void 0,!1,{fileName:$,lineNumber:133,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:129,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.techniquesTitle},void 0,!1,{fileName:$,lineNumber:140,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.techniquesDescription},void 0,!1,{fileName:$,lineNumber:143,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:139,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.challengesTitle},void 0,!1,{fileName:$,lineNumber:150,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.challengesDescription},void 0,!1,{fileName:$,lineNumber:153,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:149,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.originTitle},void 0,!1,{fileName:$,lineNumber:160,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.originDescription},void 0,!1,{fileName:$,lineNumber:163,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:159,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.competitionTitle},void 0,!1,{fileName:$,lineNumber:170,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.competitionDescription},void 0,!1,{fileName:$,lineNumber:173,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:169,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-blue-600`,children:t.unterwasserrugby.safetyTitle},void 0,!1,{fileName:$,lineNumber:180,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed`,children:t.unterwasserrugby.safetyDescription},void 0,!1,{fileName:$,lineNumber:183,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:179,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{className:`bg-gradient-to-r from-purple-50 to-pink-50 dark:from-purple-900 dark:to-pink-900 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-4 dark:text-white text-purple-600`,children:t.unterwasserrugby.linupPlannerTitle},void 0,!1,{fileName:$,lineNumber:190,columnNumber:13},void 0),(0,E.jsxDEV)(`p`,{className:`text-gray-700 dark:text-gray-200 text-lg leading-relaxed mb-4`,children:t.unterwasserrugby.linupPlannerDescription},void 0,!1,{fileName:$,lineNumber:193,columnNumber:13},void 0),(0,E.jsxDEV)(`a`,{href:`https://uwr-plan.de`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-2 bg-purple-600 text-white px-6 py-3 rounded-lg hover:bg-purple-700 transition-colors duration-200 font-semibold`,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14`},void 0,!1,{fileName:$,lineNumber:203,columnNumber:17},void 0)},void 0,!1,{fileName:$,lineNumber:202,columnNumber:15},void 0),t.unterwasserrugby.linupPlannerLink]},void 0,!0,{fileName:$,lineNumber:196,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:189,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{className:`bg-gray-50 dark:bg-gray-800 p-6 rounded-lg`,children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-6 dark:text-white text-blue-600`,children:t.unterwasserrugby.officialResourcesTitle},void 0,!1,{fileName:$,lineNumber:211,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4`,children:[(0,E.jsxDEV)(`button`,{onClick:()=>a(`https://www.vdst.de/zeigen/leistungssport/unterwasser-rugby/`),className:`flex items-center gap-2 bg-blue-600 text-white px-4 py-3 rounded-lg hover:bg-blue-700 transition-colors duration-200 text-center cursor-pointer`,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14`},void 0,!1,{fileName:$,lineNumber:220,columnNumber:19},void 0)},void 0,!1,{fileName:$,lineNumber:219,columnNumber:17},void 0),t.unterwasserrugby.vdstMainPage]},void 0,!0,{fileName:$,lineNumber:215,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>a(`https://www.vdst.de/download/regelwerk-uwr-2020/?tmstv=1748177877`),className:`flex items-center gap-2 bg-green-600 text-white px-4 py-3 rounded-lg hover:bg-green-700 transition-colors duration-200 text-center cursor-pointer`,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z`},void 0,!1,{fileName:$,lineNumber:229,columnNumber:19},void 0)},void 0,!1,{fileName:$,lineNumber:228,columnNumber:17},void 0),t.unterwasserrugby.officialRules]},void 0,!0,{fileName:$,lineNumber:224,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>a(`https://www.vdst.de/download/wettkampfordnung-uwr/?tmstv=1748177877`),className:`flex items-center gap-2 bg-yellow-600 text-white px-4 py-3 rounded-lg hover:bg-yellow-700 transition-colors duration-200 text-center cursor-pointer`,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z`},void 0,!1,{fileName:$,lineNumber:238,columnNumber:19},void 0)},void 0,!1,{fileName:$,lineNumber:237,columnNumber:17},void 0),t.unterwasserrugby.competitionRules]},void 0,!0,{fileName:$,lineNumber:233,columnNumber:15},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>a(`https://www.vdst.de/download/schiedsrichterordnung-uwr/?tmstv=1748177877`),className:`flex items-center gap-2 bg-red-600 text-white px-4 py-3 rounded-lg hover:bg-red-700 transition-colors duration-200 text-center cursor-pointer`,children:[(0,E.jsxDEV)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,className:`h-5 w-5`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,children:(0,E.jsxDEV)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z`},void 0,!1,{fileName:$,lineNumber:247,columnNumber:19},void 0)},void 0,!1,{fileName:$,lineNumber:246,columnNumber:17},void 0),t.unterwasserrugby.refereeRules]},void 0,!0,{fileName:$,lineNumber:242,columnNumber:15},void 0)]},void 0,!0,{fileName:$,lineNumber:214,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:210,columnNumber:11},void 0),(0,E.jsxDEV)(`section`,{children:[(0,E.jsxDEV)(`h3`,{className:`text-2xl font-semibold mb-6 dark:text-white text-blue-600`,children:t.unterwasserrugby.videos},void 0,!1,{fileName:$,lineNumber:256,columnNumber:13},void 0),(0,E.jsxDEV)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:[{url:`/video/unterwasserrugby1.mp4`,title:t.unterwasserrugby.video1Title},{url:`/video/unterwasserrugby2.mp4`,title:t.unterwasserrugby.video2Title}].map((e,t)=>(0,E.jsxDEV)(`div`,{className:`bg-gray-50 dark:bg-gray-800 rounded-lg p-4 shadow-md transition-transform hover:scale-[1.01]`,children:[(0,E.jsxDEV)(`h4`,{className:`text-lg font-semibold mb-2 dark:text-white`,children:e.title},void 0,!1,{fileName:$,lineNumber:271,columnNumber:19},void 0),(0,E.jsxDEV)(`div`,{className:`aspect-video`,children:(0,E.jsxDEV)(`video`,{controls:!0,width:`100%`,height:`100%`,src:e.url,title:e.title,className:`rounded`,children:`Your browser does not support the video tag.`},void 0,!1,{fileName:$,lineNumber:273,columnNumber:21},void 0)},void 0,!1,{fileName:$,lineNumber:272,columnNumber:19},void 0)]},t,!0,{fileName:$,lineNumber:270,columnNumber:17},void 0))},void 0,!1,{fileName:$,lineNumber:259,columnNumber:13},void 0)]},void 0,!0,{fileName:$,lineNumber:255,columnNumber:11},void 0)]},void 0,!0,{fileName:$,lineNumber:56,columnNumber:9},void 0)]},void 0,!0,{fileName:$,lineNumber:32,columnNumber:7},void 0),(0,E.jsxDEV)(bj,{url:n||``,isOpen:n!==null,onClose:()=>r(null),onConfirm:()=>{n&&(window.open(n,`_blank`,`noopener,noreferrer`),r(null))}},void 0,!1,{fileName:$,lineNumber:291,columnNumber:7},void 0)]},void 0,!0,{fileName:$,lineNumber:31,columnNumber:5},void 0)},fG=`/opt/src/frontend/src/App.tsx`,pG=({element:e})=>{let{isAuthenticated:t}=Zn(),n=window.location;return t?(0,E.jsxDEV)(e,{},void 0,!1,{fileName:fG,lineNumber:42,columnNumber:10},void 0):(sessionStorage.setItem(`redirectAfterLogin`,n.pathname+n.search),(0,E.jsxDEV)(Gt,{to:`/login`,replace:!0},void 0,!1,{fileName:fG,lineNumber:39,columnNumber:12},void 0))},mG=()=>{let e=xt();return(0,E.jsxDEV)(`div`,{className:`text-center mt-8`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold mb-4`,children:`Login Error`},void 0,!1,{fileName:fG,lineNumber:50,columnNumber:7},void 0),(0,E.jsxDEV)(`p`,{children:`There was an error during the login process. Please try again.`},void 0,!1,{fileName:fG,lineNumber:51,columnNumber:7},void 0),(0,E.jsxDEV)(`button`,{onClick:()=>e(`/login`),className:`mt-4 bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 roun
1884ded`,children:`Back to Login`},void 0,!1,{fileName:fG,lineNumber:52,columnNumber:7},void 0)]},void 0,!0,{fileName:fG,lineNumber:49,columnNumber:5},void 0)},hG=()=>{let{isDarkMode:e,isRainbowMode:t}=or();return(0,E.jsxDEV)(`div`,{className:`App ${e?`dark`:``} ${t?`rainbow-mode`:``} min-h-screen w-full flex flex-col bg-white dark:bg-gray-900 transition-colors duration-200`,children:[(0,E.jsxDEV)(ga,{},void 0,!1,{fileName:fG,lineNumber:71,columnNumber:7},void 0),(0,E.jsxDEV)(`main`,{className:`flex-grow w-full flex justify-center pt-20 pb-8`,children:(0,E.jsxDEV)(`div`,{className:`w-[95%] max-w-[2000px]`,children:(0,E.jsxDEV)(Jt,{children:[(0,E.jsxDEV)(Kt,{path:`/`,element:(0,E.jsxDEV)(Da,{},void 0,!1,{fileName:fG,lineNumber:75,columnNumber:38},void 0)},void 0,!1,{fileName:fG,lineNumber:75,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/blog`,element:(0,E.jsxDEV)(Da,{},void 0,!1,{fileName:fG,lineNumber:76,columnNumber:42},void 0)},void 0,!1,{fileName:fG,lineNumber:76,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/blog/:postId`,element:(0,E.jsxDEV)(Da,{},void 0,!1,{fileName:fG,lineNumber:77,columnNumber:50},void 0)},void 0,!1,{fileName:fG,lineNumber:77,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/blog/new`,element:(0,E.jsxDEV)(pG,{element:tT},void 0,!1,{fileName:fG,lineNumber:78,columnNumber:46},void 0)},void 0,!1,{fileName:fG,lineNumber:78,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/blog/edit/:postId`,element:(0,E.jsxDEV)(pG,{element:tT},void 0,!1,{fileName:fG,lineNumber:79,columnNumber:55},void 0)},void 0,!1,{fileName:fG,lineNumber:79,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/divers`,element:(0,E.jsxDEV)(rT,{},void 0,!1,{fileName:fG,lineNumber:80,columnNumber:44},void 0)},void 0,!1,{fileName:fG,lineNumber:80,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/divers/drones`,element:(0,E.jsxDEV)(sG,{},void 0,!1,{fileName:fG,lineNumber:81,columnNumber:51},void 0)},void 0,!1,{fileName:fG,lineNumber:81,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/divers/webcams`,element:(0,E.jsxDEV)(oG,{},void 0,!1,{fileName:fG,lineNumber:82,columnNumber:52},void 0)},void 0,!1,{fileName:fG,lineNumber:82,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/divers/3d-printers`,element:(0,E.jsxDEV)(cG,{},void 0,!1,{fileName:fG,lineNumber:83,columnNumber:56},void 0)},void 0,!1,{fileName:fG,lineNumber:83,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/divers/machine-learning`,element:(0,E.jsxDEV)(uG,{},void 0,!1,{fileName:fG,lineNumber:84,columnNumber:61},void 0)},void 0,!1,{fileName:fG,lineNumber:84,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/uwr`,element:(0,E.jsxDEV)(dG,{},void 0,!1,{fileName:fG,lineNumber:85,columnNumber:41},void 0)},void 0,!1,{fileName:fG,lineNumber:85,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/game`,element:(0,E.jsxDEV)(lT,{},void 0,!1,{fileName:fG,lineNumber:86,columnNumber:42},void 0)},void 0,!1,{fileName:fG,lineNumber:86,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/services`,element:(0,E.jsxDEV)(fT,{},void 0,!1,{fileName:fG,lineNumber:87,columnNumber:46},void 0)},void 0,!1,{fileName:fG,lineNumber:87,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/about`,element:(0,E.jsxDEV)(kj,{},void 0,!1,{fileName:fG,lineNumber:88,columnNumber:43},void 0)},void 0,!1,{fileName:fG,lineNumber:88,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/login`,element:(0,E.jsxDEV)(jj,{},void 0,!1,{fileName:fG,lineNumber:89,columnNumber:43},void 0)},void 0,!1,{fileName:fG,lineNumber:89,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/callback`,element:(0,E.jsxDEV)(jj,{},void 0,!1,{fileName:fG,lineNumber:90,columnNumber:46},void 0)},void 0,!1,{fileName:fG,lineNumber:90,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/login-error`,element:(0,E.jsxDEV)(mG,{},void 0,!1,{fileName:fG,lineNumber:91,columnNumber:49},void 0)},void 0,!1,{fileName:fG,lineNumber:91,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/projects`,element:(0,E.jsxDEV)(jN,{},void 0,!1,{fileName:fG,lineNumber:92,columnNumber:46},void 0)},void 0,!1,{fileName:fG,lineNumber:92,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/projects/:projectSlug`,element:(0,E.jsxDEV)(jN,{},void 0,!1,{fileName:fG,lineNumber:93,columnNumber:59},void 0)},void 0,!1,{fileName:fG,lineNumber:93,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/impressum`,element:(0,E.jsxDEV)(LN,{},void 0,!1,{fileName:fG,lineNumber:94,columnNumber:47},void 0)},void 0,!1,{fileName:fG,lineNumber:94,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/datenschutz`,element:(0,E.jsxDEV)(RN,{},void 0,!1,{fileName:fG,lineNumber:95,columnNumber:49},void 0)},void 0,!1,{fileName:fG,lineNumber:95,columnNumber:13},void 0),(0,E.jsxDEV)(Kt,{path:`/profile`,element:(0,E.jsxDEV)(pG,{element:CN},void 0,!1,{fileName:fG,lineNumber:96,columnNumber:45},void 0)},void 0,!1,{fileName:fG,lineNumber:96,columnNumber:13},void 0)]},void 0,!0,{fileName:fG,lineNumber:74,columnNumber:11},void 0)},void 0,!1,{fileName:fG,lineNumber:73,columnNumber:9},void 0)},void 0,!1,{fileName:fG,lineNumber:72,columnNumber:7},void 0),(0,E.jsxDEV)(va,{},void 0,!1,{fileName:fG,lineNumber:100,columnNumber:7},void 0)]},void 0,!0,{fileName:fG,lineNumber:66,columnNumber:5},void 0)},gG=({children:e})=>(0,E.jsxDEV)(Xn,{children:(0,E.jsxDEV)(nr,{children:(0,E.jsxDEV)(sr,{children:(0,E.jsxDEV)(fr,{children:e},void 0,!1,{fileName:fG,lineNumber:111,columnNumber:9},void 0)},void 0,!1,{fileName:fG,lineNumber:110,columnNumber:7},void 0)},void 0,!1,{fileName:fG,lineNumber:109,columnNumber:5},void 0)},void 0,!1,{fileName:fG,lineNumber:108,columnNumber:3},void 0),_G=()=>(0,E.jsxDEV)(gG,{children:(0,E.jsxDEV)(hG,{},void 0,!1,{fileName:fG,lineNumber:121,columnNumber:5},void 0)},void 0,!1,{fileName:fG,lineNumber:120,columnNumber:3},void 0),vG=`/opt/src/frontend/src/components/ErrorBoundary.tsx`,yG=class extends S.Component{state={hasError:!1,error:null};static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){console.error(`Uncaught error:`,e,t.componentStack)}render(){return this.state.hasError?this.props.fallback??(0,E.jsxDEV)(`div`,{className:`min-h-screen flex items-center justify-center bg-gray-50 dark:bg-gray-900`,children:(0,E.jsxDEV)(`div`,{className:`text-center p-8 bg-white dark:bg-gray-800 rounded-xl shadow-lg border border-gray-100 dark:border-gray-700 max-w-md`,children:[(0,E.jsxDEV)(`h2`,{className:`text-2xl font-bold text-gray-900 dark:text-white mb-4`,children:`Something went wrong`},void 0,!1,{fileName:vG,lineNumber:29,columnNumber:13},this),(0,E.jsxDEV)(`p`,{className:`text-gray-600 dark:text-gray-400 mb-6`,children:`An unexpected error occurred. Please reload the page.`},void 0,!1,{fileName:vG,lineNumber:30,columnNumber:13},this),(0,E.jsxDEV)(`button`,{onClick:()=>window.location.reload(),className:`px-6 py-3 bg-blue-500 text-white rounded-lg hover:bg-blue-600 transition-colors duration-200`,children:`Reload page`},void 0,!1,{fileName:vG,lineNumber:33,columnNumber:13},this)]},void 0,!0,{fileName:vG,lineNumber:28,columnNumber:11},this)},void 0,!1,{fileName:vG,lineNumber:27,columnNumber:9},this):this.props.children}},bG=`/opt/src/frontend/src/main.tsx`;(0,Gn.createRoot)(document.getElementById(`root`)).render((0,E.jsxDEV)(S.StrictMode,{children:(0,E.jsxDEV)(yG,{children:(0,E.jsxDEV)(Nn,{children:(0,E.jsxDEV)(_G,{},void 0,!1,{fileName:bG,lineNumber:12,columnNumber:9},void 0)},void 0,!1,{fileName:bG,lineNumber:11,columnNumber:7},void 0)},void 0,!1,{fileName:bG,lineNumber:10,columnNumber:5},void 0)},void 0,!1,{fileName:bG,lineNumber:9,columnNumber:3},void 0));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.