UNPKG

@aigamo/hydrangean-diva

Version:

An open-source online media player that can be deployed to and hosted on GitHub pages.

46 lines (43 loc) 48 kB
"use strict";var er=Object.defineProperty;var tr=(t,e,n)=>e in t?er(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var U=(t,e,n)=>tr(t,typeof e!="symbol"?e+"":e,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("mobx"),p=require("react"),rr=require("@emotion/cache"),l=require("@elastic/eui"),P=require("@fluentui/react-icons"),Y=require("mobx-react-lite"),J=require("@aigamo/nostalgic-diva"),nr=require("react-sortablejs"),ft=require("lodash-es"),ir=require("ajv");function or(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const Z=or(p);class Ke{makeObservable(e,n){return u.makeObservable(e,n)}}class ar{makeObservable(e,n){return e}}var _e={exports:{}},he={};/** * @license React * react-jsx-runtime.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var mt;function sr(){if(mt)return he;mt=1;var t=p,e=Symbol.for("react.element"),n=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,a=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function m(y,h,g){var S,O={},z=null,D=null;g!==void 0&&(z=""+g),h.key!==void 0&&(z=""+h.key),h.ref!==void 0&&(D=h.ref);for(S in h)i.call(h,S)&&!c.hasOwnProperty(S)&&(O[S]=h[S]);if(y&&y.defaultProps)for(S in h=y.defaultProps,h)O[S]===void 0&&(O[S]=h[S]);return{$$typeof:e,type:y,key:z,ref:D,props:O,_owner:a.current}}return he.Fragment=n,he.jsx=m,he.jsxs=m,he}var pe={};/** * @license React * react-jsx-runtime.development.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var vt;function lr(){return vt||(vt=1,process.env.NODE_ENV!=="production"&&function(){var t=p,e=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),c=Symbol.for("react.profiler"),m=Symbol.for("react.provider"),y=Symbol.for("react.context"),h=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),S=Symbol.for("react.suspense_list"),O=Symbol.for("react.memo"),z=Symbol.for("react.lazy"),D=Symbol.for("react.offscreen"),F=Symbol.iterator,W="@@iterator";function K(r){if(r===null||typeof r!="object")return null;var s=F&&r[F]||r[W];return typeof s=="function"?s:null}var B=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function w(r){{for(var s=arguments.length,f=new Array(s>1?s-1:0),b=1;b<s;b++)f[b-1]=arguments[b];M("error",r,f)}}function M(r,s,f){{var b=B.ReactDebugCurrentFrame,I=b.getStackAddendum();I!==""&&(s+="%s",f=f.concat([I]));var R=f.map(function(x){return String(x)});R.unshift("Warning: "+s),Function.prototype.apply.call(console[r],console,R)}}var k=!1,d=!1,L=!1,se=!1,Ee=!1,xe;xe=Symbol.for("react.module.reference");function je(r){return!!(typeof r=="string"||typeof r=="function"||r===i||r===c||Ee||r===a||r===g||r===S||se||r===D||k||d||L||typeof r=="object"&&r!==null&&(r.$$typeof===z||r.$$typeof===O||r.$$typeof===m||r.$$typeof===y||r.$$typeof===h||r.$$typeof===xe||r.getModuleId!==void 0))}function Ne(r,s,f){var b=r.displayName;if(b)return b;var I=s.displayName||s.name||"";return I!==""?f+"("+I+")":f}function Se(r){return r.displayName||"Context"}function H(r){if(r==null)return null;if(typeof r.tag=="number"&&w("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case i:return"Fragment";case n:return"Portal";case c:return"Profiler";case a:return"StrictMode";case g:return"Suspense";case S:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case y:var s=r;return Se(s)+".Consumer";case m:var f=r;return Se(f._context)+".Provider";case h:return Ne(r,r.render,"ForwardRef");case O:var b=r.displayName||null;return b!==null?b:H(r.type)||"Memo";case z:{var I=r,R=I._payload,x=I._init;try{return H(x(R))}catch{return null}}}return null}var X=Object.assign,Q=0,Ie,Te,le,Ce,ce,Pe,Re;function we(){}we.__reactDisabledLog=!0;function De(){{if(Q===0){Ie=console.log,Te=console.info,le=console.warn,Ce=console.error,ce=console.group,Pe=console.groupCollapsed,Re=console.groupEnd;var r={configurable:!0,enumerable:!0,value:we,writable:!0};Object.defineProperties(console,{info:r,log:r,warn:r,error:r,group:r,groupCollapsed:r,groupEnd:r})}Q++}}function $e(){{if(Q--,Q===0){var r={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:X({},r,{value:Ie}),info:X({},r,{value:Te}),warn:X({},r,{value:le}),error:X({},r,{value:Ce}),group:X({},r,{value:ce}),groupCollapsed:X({},r,{value:Pe}),groupEnd:X({},r,{value:Re})})}Q<0&&w("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var ue=B.ReactCurrentDispatcher,de;function re(r,s,f){{if(de===void 0)try{throw Error()}catch(I){var b=I.stack.trim().match(/\n( *(at )?)/);de=b&&b[1]||""}return` `+de+r}}var fe=!1,ne;{var ze=typeof WeakMap=="function"?WeakMap:Map;ne=new ze}function v(r,s){if(!r||fe)return"";{var f=ne.get(r);if(f!==void 0)return f}var b;fe=!0;var I=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var R;R=ue.current,ue.current=null,De();try{if(s){var x=function(){throw Error()};if(Object.defineProperty(x.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(x,[])}catch(V){b=V}Reflect.construct(r,[],x)}else{try{x.call()}catch(V){b=V}r.call(x.prototype)}}else{try{throw Error()}catch(V){b=V}r()}}catch(V){if(V&&b&&typeof V.stack=="string"){for(var E=V.stack.split(` `),$=b.stack.split(` `),A=E.length-1,j=$.length-1;A>=1&&j>=0&&E[A]!==$[j];)j--;for(;A>=1&&j>=0;A--,j--)if(E[A]!==$[j]){if(A!==1||j!==1)do if(A--,j--,j<0||E[A]!==$[j]){var q=` `+E[A].replace(" at new "," at ");return r.displayName&&q.includes("<anonymous>")&&(q=q.replace("<anonymous>",r.displayName)),typeof r=="function"&&ne.set(r,q),q}while(A>=1&&j>=0);break}}}finally{fe=!1,ue.current=R,$e(),Error.prepareStackTrace=I}var ae=r?r.displayName||r.name:"",te=ae?re(ae):"";return typeof r=="function"&&ne.set(r,te),te}function me(r,s,f){return v(r,!1)}function ie(r){var s=r.prototype;return!!(s&&s.isReactComponent)}function ee(r,s,f){if(r==null)return"";if(typeof r=="function")return v(r,ie(r));if(typeof r=="string")return re(r);switch(r){case g:return re("Suspense");case S:return re("SuspenseList")}if(typeof r=="object")switch(r.$$typeof){case h:return me(r.render);case O:return ee(r.type,s,f);case z:{var b=r,I=b._payload,R=b._init;try{return ee(R(I),s,f)}catch{}}}return""}var ve=Object.prototype.hasOwnProperty,Ze={},Qe=B.ReactDebugCurrentFrame;function Oe(r){if(r){var s=r._owner,f=ee(r.type,r._source,s?s.type:null);Qe.setExtraStackFrame(f)}else Qe.setExtraStackFrame(null)}function At(r,s,f,b,I){{var R=Function.call.bind(ve);for(var x in r)if(R(r,x)){var E=void 0;try{if(typeof r[x]!="function"){var $=Error((b||"React class")+": "+f+" type `"+x+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof r[x]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw $.name="Invariant Violation",$}E=r[x](s,x,b,f,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(A){E=A}E&&!(E instanceof Error)&&(Oe(I),w("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",b||"React class",f,x,typeof E),Oe(null)),E instanceof Error&&!(E.message in Ze)&&(Ze[E.message]=!0,Oe(I),w("Failed %s type: %s",f,E.message),Oe(null))}}}var Ft=Array.isArray;function Be(r){return Ft(r)}function Mt(r){{var s=typeof Symbol=="function"&&Symbol.toStringTag,f=s&&r[Symbol.toStringTag]||r.constructor.name||"Object";return f}}function jt(r){try{return et(r),!1}catch{return!0}}function et(r){return""+r}function tt(r){if(jt(r))return w("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",Mt(r)),et(r)}var rt=B.ReactCurrentOwner,Nt={key:!0,ref:!0,__self:!0,__source:!0},nt,it;function Dt(r){if(ve.call(r,"ref")){var s=Object.getOwnPropertyDescriptor(r,"ref").get;if(s&&s.isReactWarning)return!1}return r.ref!==void 0}function $t(r){if(ve.call(r,"key")){var s=Object.getOwnPropertyDescriptor(r,"key").get;if(s&&s.isReactWarning)return!1}return r.key!==void 0}function zt(r,s){typeof r.ref=="string"&&rt.current}function Bt(r,s){{var f=function(){nt||(nt=!0,w("%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://reactjs.org/link/special-props)",s))};f.isReactWarning=!0,Object.defineProperty(r,"key",{get:f,configurable:!0})}}function Lt(r,s){{var f=function(){it||(it=!0,w("%s: `ref` 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://reactjs.org/link/special-props)",s))};f.isReactWarning=!0,Object.defineProperty(r,"ref",{get:f,configurable:!0})}}var Vt=function(r,s,f,b,I,R,x){var E={$$typeof:e,type:r,key:s,ref:f,props:x,_owner:R};return E._store={},Object.defineProperty(E._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(E,"_self",{configurable:!1,enumerable:!1,writable:!1,value:b}),Object.defineProperty(E,"_source",{configurable:!1,enumerable:!1,writable:!1,value:I}),Object.freeze&&(Object.freeze(E.props),Object.freeze(E)),E};function Yt(r,s,f,b,I){{var R,x={},E=null,$=null;f!==void 0&&(tt(f),E=""+f),$t(s)&&(tt(s.key),E=""+s.key),Dt(s)&&($=s.ref,zt(s,I));for(R in s)ve.call(s,R)&&!Nt.hasOwnProperty(R)&&(x[R]=s[R]);if(r&&r.defaultProps){var A=r.defaultProps;for(R in A)x[R]===void 0&&(x[R]=A[R])}if(E||$){var j=typeof r=="function"?r.displayName||r.name||"Unknown":r;E&&Bt(x,j),$&&Lt(x,j)}return Vt(r,E,$,I,b,rt.current,x)}}var Le=B.ReactCurrentOwner,ot=B.ReactDebugCurrentFrame;function oe(r){if(r){var s=r._owner,f=ee(r.type,r._source,s?s.type:null);ot.setExtraStackFrame(f)}else ot.setExtraStackFrame(null)}var Ve;Ve=!1;function Ye(r){return typeof r=="object"&&r!==null&&r.$$typeof===e}function at(){{if(Le.current){var r=H(Le.current.type);if(r)return` Check the render method of \``+r+"`."}return""}}function Wt(r){return""}var st={};function qt(r){{var s=at();if(!s){var f=typeof r=="string"?r:r.displayName||r.name;f&&(s=` Check the top-level render call using <`+f+">.")}return s}}function lt(r,s){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var f=qt(s);if(st[f])return;st[f]=!0;var b="";r&&r._owner&&r._owner!==Le.current&&(b=" It was passed a child from "+H(r._owner.type)+"."),oe(r),w('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',f,b),oe(null)}}function ct(r,s){{if(typeof r!="object")return;if(Be(r))for(var f=0;f<r.length;f++){var b=r[f];Ye(b)&&lt(b,s)}else if(Ye(r))r._store&&(r._store.validated=!0);else if(r){var I=K(r);if(typeof I=="function"&&I!==r.entries)for(var R=I.call(r),x;!(x=R.next()).done;)Ye(x.value)&&lt(x.value,s)}}}function Ut(r){{var s=r.type;if(s==null||typeof s=="string")return;var f;if(typeof s=="function")f=s.propTypes;else if(typeof s=="object"&&(s.$$typeof===h||s.$$typeof===O))f=s.propTypes;else return;if(f){var b=H(s);At(f,r.props,"prop",b,r)}else if(s.PropTypes!==void 0&&!Ve){Ve=!0;var I=H(s);w("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",I||"Unknown")}typeof s.getDefaultProps=="function"&&!s.getDefaultProps.isReactClassApproved&&w("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ht(r){{for(var s=Object.keys(r.props),f=0;f<s.length;f++){var b=s[f];if(b!=="children"&&b!=="key"){oe(r),w("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",b),oe(null);break}}r.ref!==null&&(oe(r),w("Invalid attribute `ref` supplied to `React.Fragment`."),oe(null))}}var ut={};function dt(r,s,f,b,I,R){{var x=je(r);if(!x){var E="";(r===void 0||typeof r=="object"&&r!==null&&Object.keys(r).length===0)&&(E+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var $=Wt();$?E+=$:E+=at();var A;r===null?A="null":Be(r)?A="array":r!==void 0&&r.$$typeof===e?(A="<"+(H(r.type)||"Unknown")+" />",E=" Did you accidentally export a JSX literal instead of a component?"):A=typeof r,w("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",A,E)}var j=Yt(r,s,f,I,R);if(j==null)return j;if(x){var q=s.children;if(q!==void 0)if(b)if(Be(q)){for(var ae=0;ae<q.length;ae++)ct(q[ae],r);Object.freeze&&Object.freeze(q)}else w("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 ct(q,r)}if(ve.call(s,"key")){var te=H(r),V=Object.keys(s).filter(function(Qt){return Qt!=="key"}),We=V.length>0?"{key: someKey, "+V.join(": ..., ")+": ...}":"{key: someKey}";if(!ut[te+We]){var Zt=V.length>0?"{"+V.join(": ..., ")+": ...}":"{}";w(`A props object containing a "key" prop is being spread into JSX: let props = %s; <%s {...props} /> React keys must be passed directly to JSX without using spread: let props = %s; <%s key={someKey} {...props} />`,We,te,Zt,te),ut[te+We]=!0}}return r===i?Ht(j):Ut(j),j}}function Gt(r,s,f){return dt(r,s,f,!0)}function Jt(r,s,f){return dt(r,s,f,!1)}var Kt=Jt,Xt=Gt;pe.Fragment=i,pe.jsx=Kt,pe.jsxs=Xt}()),pe}var ht;function cr(){return ht||(ht=1,process.env.NODE_ENV==="production"?_e.exports=sr():_e.exports=lr()),_e.exports}var be=cr(),ke={exports:{}},T={};/** @license React v16.13.1 * react-is.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var pt;function ur(){if(pt)return T;pt=1;var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,a=t?Symbol.for("react.strict_mode"):60108,c=t?Symbol.for("react.profiler"):60114,m=t?Symbol.for("react.provider"):60109,y=t?Symbol.for("react.context"):60110,h=t?Symbol.for("react.async_mode"):60111,g=t?Symbol.for("react.concurrent_mode"):60111,S=t?Symbol.for("react.forward_ref"):60112,O=t?Symbol.for("react.suspense"):60113,z=t?Symbol.for("react.suspense_list"):60120,D=t?Symbol.for("react.memo"):60115,F=t?Symbol.for("react.lazy"):60116,W=t?Symbol.for("react.block"):60121,K=t?Symbol.for("react.fundamental"):60117,B=t?Symbol.for("react.responder"):60118,w=t?Symbol.for("react.scope"):60119;function M(d){if(typeof d=="object"&&d!==null){var L=d.$$typeof;switch(L){case e:switch(d=d.type,d){case h:case g:case i:case c:case a:case O:return d;default:switch(d=d&&d.$$typeof,d){case y:case S:case F:case D:case m:return d;default:return L}}case n:return L}}}function k(d){return M(d)===g}return T.AsyncMode=h,T.ConcurrentMode=g,T.ContextConsumer=y,T.ContextProvider=m,T.Element=e,T.ForwardRef=S,T.Fragment=i,T.Lazy=F,T.Memo=D,T.Portal=n,T.Profiler=c,T.StrictMode=a,T.Suspense=O,T.isAsyncMode=function(d){return k(d)||M(d)===h},T.isConcurrentMode=k,T.isContextConsumer=function(d){return M(d)===y},T.isContextProvider=function(d){return M(d)===m},T.isElement=function(d){return typeof d=="object"&&d!==null&&d.$$typeof===e},T.isForwardRef=function(d){return M(d)===S},T.isFragment=function(d){return M(d)===i},T.isLazy=function(d){return M(d)===F},T.isMemo=function(d){return M(d)===D},T.isPortal=function(d){return M(d)===n},T.isProfiler=function(d){return M(d)===c},T.isStrictMode=function(d){return M(d)===a},T.isSuspense=function(d){return M(d)===O},T.isValidElementType=function(d){return typeof d=="string"||typeof d=="function"||d===i||d===g||d===c||d===a||d===O||d===z||typeof d=="object"&&d!==null&&(d.$$typeof===F||d.$$typeof===D||d.$$typeof===m||d.$$typeof===y||d.$$typeof===S||d.$$typeof===K||d.$$typeof===B||d.$$typeof===w||d.$$typeof===W)},T.typeOf=M,T}var C={};/** @license React v16.13.1 * react-is.development.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var yt;function dr(){return yt||(yt=1,process.env.NODE_ENV!=="production"&&function(){var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,a=t?Symbol.for("react.strict_mode"):60108,c=t?Symbol.for("react.profiler"):60114,m=t?Symbol.for("react.provider"):60109,y=t?Symbol.for("react.context"):60110,h=t?Symbol.for("react.async_mode"):60111,g=t?Symbol.for("react.concurrent_mode"):60111,S=t?Symbol.for("react.forward_ref"):60112,O=t?Symbol.for("react.suspense"):60113,z=t?Symbol.for("react.suspense_list"):60120,D=t?Symbol.for("react.memo"):60115,F=t?Symbol.for("react.lazy"):60116,W=t?Symbol.for("react.block"):60121,K=t?Symbol.for("react.fundamental"):60117,B=t?Symbol.for("react.responder"):60118,w=t?Symbol.for("react.scope"):60119;function M(v){return typeof v=="string"||typeof v=="function"||v===i||v===g||v===c||v===a||v===O||v===z||typeof v=="object"&&v!==null&&(v.$$typeof===F||v.$$typeof===D||v.$$typeof===m||v.$$typeof===y||v.$$typeof===S||v.$$typeof===K||v.$$typeof===B||v.$$typeof===w||v.$$typeof===W)}function k(v){if(typeof v=="object"&&v!==null){var me=v.$$typeof;switch(me){case e:var ie=v.type;switch(ie){case h:case g:case i:case c:case a:case O:return ie;default:var ee=ie&&ie.$$typeof;switch(ee){case y:case S:case F:case D:case m:return ee;default:return me}}case n:return me}}}var d=h,L=g,se=y,Ee=m,xe=e,je=S,Ne=i,Se=F,H=D,X=n,Q=c,Ie=a,Te=O,le=!1;function Ce(v){return le||(le=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),ce(v)||k(v)===h}function ce(v){return k(v)===g}function Pe(v){return k(v)===y}function Re(v){return k(v)===m}function we(v){return typeof v=="object"&&v!==null&&v.$$typeof===e}function De(v){return k(v)===S}function $e(v){return k(v)===i}function ue(v){return k(v)===F}function de(v){return k(v)===D}function re(v){return k(v)===n}function fe(v){return k(v)===c}function ne(v){return k(v)===a}function ze(v){return k(v)===O}C.AsyncMode=d,C.ConcurrentMode=L,C.ContextConsumer=se,C.ContextProvider=Ee,C.Element=xe,C.ForwardRef=je,C.Fragment=Ne,C.Lazy=Se,C.Memo=H,C.Portal=X,C.Profiler=Q,C.StrictMode=Ie,C.Suspense=Te,C.isAsyncMode=Ce,C.isConcurrentMode=ce,C.isContextConsumer=Pe,C.isContextProvider=Re,C.isElement=we,C.isForwardRef=De,C.isFragment=$e,C.isLazy=ue,C.isMemo=de,C.isPortal=re,C.isProfiler=fe,C.isStrictMode=ne,C.isSuspense=ze,C.isValidElementType=M,C.typeOf=k}()),C}var bt;function fr(){return bt||(bt=1,process.env.NODE_ENV==="production"?ke.exports=ur():ke.exports=dr()),ke.exports}var qe,gt;function mr(){if(gt)return qe;gt=1;var t=fr(),e={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},n={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},c={};c[t.ForwardRef]=i,c[t.Memo]=a;function m(F){return t.isMemo(F)?a:c[F.$$typeof]||e}var y=Object.defineProperty,h=Object.getOwnPropertyNames,g=Object.getOwnPropertySymbols,S=Object.getOwnPropertyDescriptor,O=Object.getPrototypeOf,z=Object.prototype;function D(F,W,K){if(typeof W!="string"){if(z){var B=O(W);B&&B!==z&&D(F,B,K)}var w=h(W);g&&(w=w.concat(g(W)));for(var M=m(F),k=m(W),d=0;d<w.length;++d){var L=w[d];if(!n[L]&&!(K&&K[L])&&!(k&&k[L])&&!(M&&M[L])){var se=S(W,L);try{y(F,L,se)}catch{}}}}return F}return qe=D,qe}mr();var vr=!0;function hr(t,e,n){var i="";return n.split(" ").forEach(function(a){t[a]!==void 0?e.push(t[a]+";"):a&&(i+=a+" ")}),i}var Tt=function(e,n,i){var a=e.key+"-"+n.name;(i===!1||vr===!1)&&e.registered[a]===void 0&&(e.registered[a]=n.styles)},pr=function(e,n,i){Tt(e,n,i);var a=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var c=n;do e.insert(n===c?"."+a:"",c,e.sheet,!0),c=c.next;while(c!==void 0)}};function yr(t){for(var e=0,n,i=0,a=t.length;a>=4;++i,a-=4)n=t.charCodeAt(i)&255|(t.charCodeAt(++i)&255)<<8|(t.charCodeAt(++i)&255)<<16|(t.charCodeAt(++i)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(a){case 3:e^=(t.charCodeAt(i+2)&255)<<16;case 2:e^=(t.charCodeAt(i+1)&255)<<8;case 1:e^=t.charCodeAt(i)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var br={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};function gr(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var Er=/[A-Z]|^ms/g,xr=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Ct=function(e){return e.charCodeAt(1)===45},Et=function(e){return e!=null&&typeof e!="boolean"},Ue=gr(function(t){return Ct(t)?t:t.replace(Er,"-$&").toLowerCase()}),xt=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(xr,function(i,a,c){return G={name:a,styles:c,next:G},a})}return br[e]!==1&&!Ct(e)&&typeof n=="number"&&n!==0?n+"px":n};function ge(t,e,n){if(n==null)return"";var i=n;if(i.__emotion_styles!==void 0)return i;switch(typeof n){case"boolean":return"";case"object":{var a=n;if(a.anim===1)return G={name:a.name,styles:a.styles,next:G},a.name;var c=n;if(c.styles!==void 0){var m=c.next;if(m!==void 0)for(;m!==void 0;)G={name:m.name,styles:m.styles,next:G},m=m.next;var y=c.styles+";";return y}return Sr(t,e,n)}case"function":{if(t!==void 0){var h=G,g=n(t);return G=h,ge(t,e,g)}break}}var S=n;return S}function Sr(t,e,n){var i="";if(Array.isArray(n))for(var a=0;a<n.length;a++)i+=ge(t,e,n[a])+";";else for(var c in n){var m=n[c];if(typeof m!="object"){var y=m;Et(y)&&(i+=Ue(c)+":"+xt(c,y)+";")}else if(Array.isArray(m)&&typeof m[0]=="string"&&e==null)for(var h=0;h<m.length;h++)Et(m[h])&&(i+=Ue(c)+":"+xt(c,m[h])+";");else{var g=ge(t,e,m);switch(c){case"animation":case"animationName":{i+=Ue(c)+":"+g+";";break}default:i+=c+"{"+g+"}"}}}return i}var St=/label:\s*([^\s;{]+)\s*(;|$)/g,G;function Ir(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var i=!0,a="";G=void 0;var c=t[0];if(c==null||c.raw===void 0)i=!1,a+=ge(n,e,c);else{var m=c;a+=m[0]}for(var y=1;y<t.length;y++)if(a+=ge(n,e,t[y]),i){var h=c;a+=h[y]}St.lastIndex=0;for(var g="",S;(S=St.exec(a))!==null;)g+="-"+S[1];var O=yr(a)+g;return{name:O,styles:a,next:G}}var Tr=function(e){return e()},Cr=Z.useInsertionEffect?Z.useInsertionEffect:!1,Pr=Cr||Tr,Pt=Z.createContext(typeof HTMLElement<"u"?rr({key:"css"}):null);Pt.Provider;var Rr=function(e){return p.forwardRef(function(n,i){var a=p.useContext(Pt);return e(n,a,i)})},wr=Z.createContext({}),Fe={}.hasOwnProperty,Ge="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",Rt=function(e,n){var i={};for(var a in n)Fe.call(n,a)&&(i[a]=n[a]);return i[Ge]=e,i},Or=function(e){var n=e.cache,i=e.serialized,a=e.isStringTag;return Tt(n,i,a),Pr(function(){return pr(n,i,a)}),null},_r=Rr(function(t,e,n){var i=t.css;typeof i=="string"&&e.registered[i]!==void 0&&(i=e.registered[i]);var a=t[Ge],c=[i],m="";typeof t.className=="string"?m=hr(e.registered,c,t.className):t.className!=null&&(m=t.className+" ");var y=Ir(c,void 0,Z.useContext(wr));m+=e.key+"-"+y.name;var h={};for(var g in t)Fe.call(t,g)&&g!=="css"&&g!==Ge&&(h[g]=t[g]);return h.className=m,n&&(h.ref=n),Z.createElement(Z.Fragment,null,Z.createElement(Or,{cache:e,serialized:y,isStringTag:typeof a=="string"}),Z.createElement(a,h))}),wt=_r,Me=be.Fragment,o=function(e,n,i){return Fe.call(n,"css")?be.jsx(wt,Rt(e,n),i):be.jsx(e,n,i)},N=function(e,n,i){return Fe.call(n,"css")?be.jsxs(wt,Rt(e,n),i):be.jsxs(e,n,i)};const kr=({onCancel:t,onSave:e})=>{const[n,i]=p.useState(""),[a,c]=p.useState(""),[m,y]=p.useState(!1);return N(l.EuiModal,{onClose:t,initialFocus:"[name=url]",children:[o(l.EuiModalHeader,{children:o(l.EuiModalHeaderTitle,{children:"Add video"})}),o(l.EuiModalBody,{children:N(l.EuiForm,{component:"form",children:[o(l.EuiFormRow,{label:"URL",children:o(l.EuiFieldText,{name:"url",value:n,onChange:h=>i(h.target.value)})}),o(l.EuiFormRow,{label:"Title",children:o(l.EuiFieldText,{name:"title",value:a,onChange:h=>c(h.target.value)})})]})}),N(l.EuiModalFooter,{children:[o(l.EuiButtonEmpty,{onClick:t,children:"Cancel"}),o(l.EuiButton,{type:"submit",onClick:async()=>{try{y(!0),await e({url:n,title:a})}finally{y(!1)}},fill:!0,disabled:n.trim().length===0,isLoading:m,children:"Save"})]})]})};function Ar(t){return t!==null&&typeof t=="object"&&"title"in t&&typeof t.title=="string"}const It=p.memo(({playQueueStore:t})=>{const[e,n]=p.useState(!1),i=p.useCallback(async a=>{const c=J.findVideoService(a.url);if(c!==void 0){const m=c.extractVideoId(a.url);if(m!==void 0){const h=await(await fetch(`https://noembed.com/embed?url=${encodeURIComponent(a.url)}`)).json();await t.addItems([t.createItem({url:a.url,type:c.type,videoId:m,title:a.title||(Ar(h)?h.title:m)})])}}n(!1)},[t]);return N(Me,{children:[o(l.EuiButton,{onClick:()=>n(!0),iconType:P.AddRegular,color:"primary",children:"Add video"}),e&&o(kr,{onCancel:()=>n(!1),onSave:i})]})}),Fr=Y.observer(({playQueueStore:t})=>{const{euiTheme:e}=l.useEuiTheme();return N(l.EuiTableHeader,{style:{position:"sticky",top:112,zIndex:998,background:e.colors.backgroundBasePlain},children:[o(l.EuiTableHeaderCellCheckbox,{children:o(l.EuiCheckbox,{id:"",checked:t.allItemsSelected,onChange:n=>{t.allItemsSelected=n.target.checked}})}),o(l.EuiTableHeaderCell,{width:24}),o(l.EuiTableHeaderCell,{children:"Title"}),o(l.EuiTableHeaderCell,{})]})}),Mr=p.memo(({item:t,closePopover:e})=>{const n=p.memo(({onClick:i,...a})=>{const c=p.useCallback(m=>{e(),i==null||i(m)},[i]);return o(l.EuiContextMenuItem,{...a,onClick:c})});return N(l.EuiContextMenuPanel,{children:[o(n,{icon:o(l.EuiIcon,{type:""}),onClick:t.playFirst,children:"Play first"}),o(n,{icon:o(l.EuiIcon,{type:""}),onClick:t.playNext,children:"Play next"}),o(n,{icon:o(l.EuiIcon,{type:P.AddRegular}),onClick:t.addToPlayQueue,children:"Add to play queue"}),o(l.EuiHorizontalRule,{margin:"none"}),o(n,{icon:o(l.EuiIcon,{type:P.ArrowUploadRegular}),onClick:t.moveToTop,disabled:!t.canMoveToTop,children:"Move to the top"}),o(n,{icon:o(l.EuiIcon,{type:P.ArrowDownloadRegular}),onClick:t.moveToBottom,disabled:!t.canMoveToBottom,children:"Move to the bottom"}),o(l.EuiHorizontalRule,{margin:"none"}),o(n,{icon:o(l.EuiIcon,{type:""}),onClick:t.removeToTop,disabled:!t.canRemoveToTop,children:"Remove to the top"}),o(n,{icon:o(l.EuiIcon,{type:""}),onClick:t.removeOthers,disabled:!t.canRemoveOthers,children:"Remove others"})]})}),jr=p.memo(({item:t})=>{const[e,n]=p.useState(!1),i=p.useCallback(()=>n(!e),[e]),a=p.useCallback(()=>n(!1),[]);return o(l.EuiPopover,{button:o(l.EuiButtonIcon,{title:"More options","aria-label":"More options",iconType:P.MoreHorizontalFilled,size:"s",color:"text",onClick:i}),isOpen:e,closePopover:a,panelPaddingSize:"none",anchorPosition:"leftCenter",children:o(Mr,{item:t,closePopover:a})})}),Nr=Y.observer(({item:t})=>{const e=J.useNostalgicDiva();return N(l.EuiTableRowCell,{textOnly:!1,hasActions:!0,align:"right",children:[o(l.EuiButton,{iconType:P.PlayRegular,size:"s",onClick:async()=>{t.isCurrent?await e.setCurrentTime(0):t.play()},children:"Play"}),o(l.EuiButton,{iconType:P.DismissRegular,size:"s",onClick:t.remove,children:"Remove"}),o(jr,{item:t})]})}),Dr={Audio:"",Dailymotion:"https://www.dailymotion.com/favicon.ico",Niconico:"https://www.nicovideo.jp/favicon.ico",SoundCloud:"https://soundcloud.com/favicon.ico",Twitch:"https://www.twitch.tv/favicon.ico",Vimeo:"https://vimeo.com/favicon.ico",YouTube:"https://www.youtube.com/favicon.ico"},$r=Y.observer(({item:t})=>{const e=J.useNostalgicDiva();return N(l.EuiTableRow,{isSelected:t.isCurrent,children:[o(l.EuiTableRowCellCheckbox,{children:o(l.EuiCheckbox,{id:t.id.toString(),checked:t.isSelected,onChange:t.toggleSelected})}),o(l.EuiTableRowCell,{textOnly:!1,children:o("img",{src:Dr[t.type],width:16,height:16,alt:t.type})}),o(l.EuiTableRowCell,{children:o(l.EuiLink,{href:t.url,target:"_blank",external:!0,onClick:()=>e.pause(),children:t.title})}),o(Nr,{item:t})]},t.id)}),zr=Y.observer(({playQueueStore:t})=>o(nr.ReactSortable,{tag:"tbody",list:t.items,setList:e=>t.setItems(e),children:t.items.map(e=>o($r,{item:e},e.id))})),Br=Y.observer(({playQueueStore:t})=>N(l.EuiTable,{children:[o(Fr,{playQueueStore:t}),o(zr,{playQueueStore:t})]}));Y.observer(({playQueueStore:t})=>{const[e,n]=p.useState(!1);return N(Me,{children:[e&&o(l.EuiFlyout,{type:"push",size:"s",onClose:()=>n(!1),children:o("div",{style:{blockSize:"100%"},children:o(l.EuiCodeBlock,{language:"json",overflowHeight:"100%",isCopyable:!0,isVirtualized:!0,children:JSON.stringify(t.localStorageState,void 0,2)})})}),o(l.EuiButton,{onClick:()=>n(i=>!i),iconType:P.WindowDevToolsRegular,children:"Developer tools"})]})});const Lr=Y.observer(({playQueueStore:t})=>{const{euiTheme:e}=l.useEuiTheme();return N(Me,{children:[N(l.EuiFlexGroup,{alignItems:"center",gutterSize:"m",style:{position:"sticky",top:48,zIndex:998,background:e.colors.backgroundBasePlain},children:[o(l.EuiFlexItem,{grow:!1,children:o(l.EuiButton,{disabled:t.isEmpty||t.selectedItems.length===0,onClick:t.playSelectedItemsNext,children:"Play next"})}),o(l.EuiFlexItem,{grow:!1,children:o(l.EuiButton,{iconType:P.AddRegular,onClick:t.addSelectedItems,disabled:t.isEmpty||t.selectedItems.length===0,children:"Add to play queue"})}),o(l.EuiFlexItem,{grow:!1,children:o(l.EuiButton,{iconType:P.DismissRegular,onClick:t.removeSelectedItems,disabled:t.isEmpty||t.selectedItems.length===0,children:"Remove"})}),o(l.EuiFlexItem,{grow:!1,children:o(l.EuiButton,{iconType:P.DeleteRegular,onClick:t.clear,disabled:t.isEmpty,children:"Clear"})}),o(l.EuiFlexItem,{grow:!0}),N(l.EuiFlexItem,{grow:!1,children:[!1,o(It,{playQueueStore:t})]})]}),o(l.EuiSpacer,{size:"l",style:{position:"sticky",top:88,zIndex:998,background:e.colors.backgroundBasePlain}}),t.isEmpty?o(l.EuiEmptyPrompt,{title:o("h2",{children:"We couldn't find any videos"}),body:o("p",{children:"Your video library doesn't contain any video content."}),actions:o(It,{playQueueStore:t})}):o(Br,{playQueueStore:t})]})}),Vr=Y.observer(({playQueueStore:t})=>N(Me,{children:[o(l.EuiPageTemplate.Header,{pageTitle:"Play queue",rightSideItems:[]}),o(l.EuiPageTemplate.Section,{children:o(Lr,{playQueueStore:t})})]})),He=new ir({coerceTypes:!0});function Yr(t,e){let n;if(n=He.getSchema(e),n===void 0&&(He.addSchema(t,e),n=He.getSchema(e)),n===void 0||n.schema!==t)throw new Error(`Invalid schema. Expected: '${JSON.stringify(t)}', but got '${JSON.stringify(n==null?void 0:n.schema)}'.`);return n}const Wr={type:"object",properties:{url:{type:"string"},type:{type:"string"},videoId:{type:"string"},title:{type:"string"}},required:["url","type","videoId","title"]};var _=(t=>(t.Off="Off",t.All="All",t.One="One",t))(_||{});const qr={type:"object",properties:{version:{type:"string",nullable:!0},repeat:{type:"string",enum:Object.values(_),nullable:!0},shuffle:{type:"boolean",nullable:!0},items:{type:"array",nullable:!0,items:Wr},currentIndex:{type:"integer",nullable:!0}}},ye=class ye{constructor(e,n,i){U(this,"id");U(this,"isSelected",!1);this.observableStateProvider=e,this.playQueueStore=n,this.dto=i,this.id=ye.nextId++,e.makeObservable(this,{isSelected:u.observable,isCurrent:u.computed,index:u.computed,isFirst:u.computed,isLast:u.computed,canMoveToTop:u.computed,canMoveToBottom:u.computed,canRemoveToTop:u.computed,canRemoveOthers:u.computed,unselect:u.action,toggleSelected:u.action.bound,play:u.action,remove:u.action.bound,playFirst:u.action.bound,playNext:u.action.bound,addToPlayQueue:u.action.bound,moveToTop:u.action.bound,moveToBottom:u.action.bound,removeToTop:u.action.bound,removeOthers:u.action.bound})}static fromDto(e,n,i){return new ye(e,n,i)}get url(){return this.dto.url}get type(){return this.dto.type}get videoId(){return this.dto.videoId}get title(){return this.dto.title}get isCurrent(){return this.playQueueStore.currentItem===this}get index(){return this.playQueueStore.items.indexOf(this)}get isFirst(){return this.index===0}get isLast(){return this.index===this.playQueueStore.items.length-1}get canMoveToTop(){return!this.isFirst}get canMoveToBottom(){return!this.isLast}get canRemoveToTop(){return!this.isFirst}get canRemoveOthers(){return this.playQueueStore.hasMultipleItems}clone(){return this.playQueueStore.createItem(this.dto)}unselect(){this.isSelected=!1}toggleSelected(){this.isSelected=!this.isSelected}play(){this.playQueueStore.setCurrentItem(this)}remove(){return this.playQueueStore.removeItems([this])}async playFirst(){await this.playQueueStore.playFirst([this.clone()])}async playNext(){await this.playQueueStore.playNext([this.clone()])}async addToPlayQueue(){await this.playQueueStore.addItems([this.clone()])}moveToTop(){this.playQueueStore.moveItem(this,0)}moveToBottom(){this.playQueueStore.moveItem(this,this.playQueueStore.items.length-1)}removeToTop(){return this.playQueueStore.removeItemsAbove(this)}removeOthers(){return this.playQueueStore.removeOtherItems(this)}};U(ye,"nextId",1);let Je=ye;class Ur{constructor(e){U(this,"interacted",!1);U(this,"items",[]);U(this,"currentId");U(this,"repeat",_.Off);U(this,"shuffle",!1);this.observableStateProvider=e,e.makeObservable(this,{interacted:u.observable,items:u.observable,currentId:u.observable,repeat:u.observable,shuffle:u.observable,localStorageState:u.computed.struct,isEmpty:u.computed,currentItem:u.computed,canPlay:u.computed,canPause:u.computed,hasMultipleItems:u.computed,currentIndex:u.computed,hasPreviousItem:u.computed,hasNextItem:u.computed,isLastItem:u.computed,selectedItems:u.computed,allItemsSelected:u.computed,selectedItemsOrAllItems:u.computed,setItems:u.action,interact:u.action,clear:u.action.bound,unselectAll:u.action,setCurrentItem:u.action,setNextItems:u.action,clearAndSetItems:u.action,playNext:u.action,playSelectedItemsNext:u.action.bound,addItems:u.action,addSelectedItems:u.action.bound,playFirst:u.action,moveItem:u.action,removeItems:u.action,removeSelectedItems:u.action.bound,removeOtherItems:u.action,removeItemsAbove:u.action,toggleRepeat:u.action.bound,toggleShuffle:u.action.bound,previous:u.action,next:u.action.bound,goToFirst:u.action})}createItem(e){return Je.fromDto(this.observableStateProvider,this,e)}get localStorageState(){return{version:"1.0",repeat:this.repeat,shuffle:this.shuffle,items:this.items.map(e=>e.dto),currentIndex:this.currentIndex}}set localStorageState(e){var n;this.repeat=e.repeat??_.Off,this.shuffle=e.shuffle??!1,this.items=((n=e.items)==null?void 0:n.map(i=>this.createItem(i)))??[],this.currentIndex=e.currentIndex}validateLocalStorageState(e){return Yr(qr,"PlayQueueDto")(e)}get isEmpty(){return this.items.length===0}get currentItem(){return this.items.find(e=>e.id===this.currentId)}get canPlay(){return this.currentItem!==void 0}get canPause(){return this.currentItem!==void 0}get hasMultipleItems(){return this.items.length>1}get currentIndex(){return this.currentId!==void 0?this.items.findIndex(e=>e.id===this.currentId):void 0}set currentIndex(e){var n;this.currentId=e!==void 0?(n=this.items.at(e))==null?void 0:n.id:void 0}get hasPreviousItem(){return this.hasMultipleItems&&this.currentIndex!==void 0&&this.currentIndex>0}get hasNextItem(){return this.hasMultipleItems&&this.currentIndex!==void 0&&this.currentIndex<this.items.length-1}get isLastItem(){return this.currentIndex!==void 0&&this.currentIndex===this.items.length-1}get selectedItems(){return this.items.filter(e=>e.isSelected)}get allItemsSelected(){return this.selectedItems.length===this.items.length}set allItemsSelected(e){for(const n of this.items)n.isSelected=e}get selectedItemsOrAllItems(){return this.selectedItems.length>0?this.selectedItems:this.items}setItems(e){this.items=e}interact(){this.interacted=!0}clear(){this.interact(),this.currentIndex=void 0,this.items=[]}unselectAll(){for(const e of this.items)e.unselect()}setCurrentItem(e){this.interact(),this.currentId=e==null?void 0:e.id}setNextItems(e){this.currentIndex!==void 0&&this.items.splice(this.currentIndex+1,0,...e)}clearAndSetItems(e){this.clear(),this.setCurrentItem(e[0]),this.setNextItems(e)}async playNext(e){if(this.isEmpty){this.clearAndSetItems(e);return}this.setNextItems(e)}async playSelectedItemsNext(){await this.playNext(this.selectedItemsOrAllItems.map(e=>e.clone())),this.unselectAll()}async addItems(e){if(this.isEmpty){this.clearAndSetItems(e);return}this.items.push(...e)}async addSelectedItems(){await this.addItems(this.selectedItemsOrAllItems.map(e=>e.clone())),this.unselectAll()}async playFirst(e){if(this.isEmpty){this.clearAndSetItems(e);return}const{currentIndex:n}=this;n!==void 0&&(this.interact(),this.items.splice(n,0,...e),this.currentIndex=n)}moveItem(e,n){const i=this.items.splice(this.items.indexOf(e),1)[0];this.items.splice(n,0,i)}async removeItems(e){const{currentItem:n}=this;ft.pull(this.items,...e.filter(c=>c!==n));const{currentIndex:i,isLastItem:a}=this;ft.pull(this.items,e.find(c=>c===n)),this.currentItem!==n&&(this.interact(),a?await this.goToFirst():this.currentIndex=i)}async removeSelectedItems(){await this.removeItems(this.selectedItemsOrAllItems),this.unselectAll()}async removeOtherItems(e){const n=e.id;return this.removeItems(this.items.filter(i=>i.id!==n))}async removeItemsAbove(e){const n=this.items.indexOf(e);return this.removeItems(this.items.filter((i,a)=>a<n))}toggleRepeat(){switch(this.repeat){case _.Off:this.repeat=_.All;break;case _.All:this.repeat=_.One;break;case _.One:this.repeat=_.Off;break}}toggleShuffle(){this.shuffle=!this.shuffle}async previous(){this.currentIndex!==void 0&&this.hasPreviousItem&&(this.interact(),this.currentIndex--)}async next(){this.currentIndex!==void 0&&this.hasNextItem&&(this.interact(),this.currentIndex++)}async goToFirst(){this.currentIndex!==void 0&&(this.currentIndex=0)}}const Ot=p.createContext(void 0),Hr=({children:t})=>{const[e]=p.useState(()=>new Ur(new Ke)),n=J.useNostalgicDiva();return p.useEffect(()=>u.reaction(()=>e.currentItem,async(i,a)=>{i===void 0||a===void 0||i.type===a.type&&i.videoId===a.videoId&&await n.setCurrentTime(0)}),[e,n]),o(Ot.Provider,{value:e,children:t})},_t=()=>p.useContext(Ot),Xe=81,Gr=Y.observer(({playerStore:t,playQueueStore:e})=>{const n=J.useNostalgicDiva(),i=p.useCallback(m=>{const y=Number(m.currentTarget.value)/100;t.setPercent(y)},[t]),a=p.useCallback(m=>{m.button===0&&t.setSeeking(!0)},[t]),c=p.useCallback(async m=>{if(m.button===0){const y=Number(m.currentTarget.value)/100;t.setSeeking(!1);const h=await n.getDuration();h!==void 0&&await n.setCurrentTime(h*y)}},[t,n]);return o(l.EuiRange,{min:0,max:100,step:1e-7,value:t.percent*100,onChange:i,onMouseDown:a,onMouseUp:c,fullWidth:!0,showRange:!0,css:{blockSize:32},disabled:e.isEmpty})}),Jr=p.memo(({button:t,isOpen:e,closePopover:n})=>{const[i,a]=p.useState("0"),c=J.useNostalgicDiva();p.useLayoutEffect(()=>{e&&c.getVolume().then(y=>{y!==void 0&&a(Math.floor(y*100).toString())})},[e,c]);const m=p.useCallback(async y=>{a(y.currentTarget.value),await c.setVolume(Number(y.currentTarget.value)/100)},[c]);return o(l.EuiPopover,{button:t,isOpen:e,closePopover:n,anchorPosition:"upRight",children:o(l.EuiFormRow,{children:N(l.EuiFlexGroup,{responsive:!1,gutterSize:"s",justifyContent:"center",alignItems:"center",children:[o(l.EuiButtonIcon,{title:"Mute","aria-label":"Mute",iconType:P.Speaker2Regular,size:"s",iconSize:"l"}),o(l.EuiRange,{min:0,max:100,step:1,value:i,onChange:m,css:{blockSize:32}})]})})})}),Kr=p.memo(({playQueueStore:t,closePopover:e})=>{const n=J.useNostalgicDiva(),i=p.useCallback(async()=>{const g=await n.getCurrentTime();g!==void 0&&await n.setCurrentTime(g-10),e()},[n,e]),a=p.useCallback(async()=>{const g=await n.getCurrentTime();g!==void 0&&await n.setCurrentTime(g+30),e()},[n,e]),c=p.useCallback(async g=>{await n.setPlaybackRate(g),e()},[n,e]),m=p.useCallback(async()=>{t.currentItem!==void 0&&await t.removeItems([t.currentItem]),e()},[t,e]),[y]=p.useState(),h=p.useMemo(()=>[{id:0,items:[{name:"Speed",icon:o(l.EuiIcon,{type:P.TopSpeedRegular,size:"m"}),panel:1},{name:"Skip back 10 seconds",icon:o(l.EuiIcon,{type:P.SkipBack10Regular,size:"m"}),onClick:i,disabled:t.isEmpty},{name:"Skip forward 30 seconds",icon:o(l.EuiIcon,{type:P.SkipForward30Regular,size:"m"}),onClick:a,disabled:t.isEmpty},{isSeparator:!0},{name:"Remove from play queue",icon:o(l.EuiIcon,{type:P.DismissRegular,size:"m"}),onClick:m,disabled:t.isEmpty}]},{id:1,title:"Speed",items:[.25,.5,.75,1,1.25,1.5,1.75,2].map(g=>({name:g.toString(),onClick:()=>c(g),icon:g===y?"check":"empty"}))}],[t,i,a,m,c,y]);return o(l.EuiContextMenu,{initialPanelId:0,panels:h})}),Xr=p.memo(({playQueueStore:t,button:e,isOpen:n,closePopover:i})=>o(l.EuiPopover,{button:e,isOpen:n,closePopover:i,panelPaddingSize:"none",anchorPosition:"upRight",children:o(Kr,{playQueueStore:t,closePopover:i})})),Zr={[_.Off]:P.ArrowRepeatAllOffFilled,[_.All]:P.ArrowRepeatAllFilled,[_.One]:P.ArrowRepeat1Filled},Qr=Y.observer(({playerStore:t,playQueueStore:e})=>{const n=J.useNostalgicDiva(),i=p.useCallback(async()=>{if(e.hasPreviousItem){const a=await n.getCurrentTime();a===void 0||a<5?await e.previous():await n.setCurrentTime(0)}else await n.setCurrentTime(0)},[e,n]);return N(l.EuiFlexGroup,{responsive:!1,gutterSize:"s",justifyContent:"center",alignItems:"center",children:[o(l.EuiButtonIcon,{title:`Shuffle: ${e.shuffle?"On":"Off"}`,"aria-label":`Shuffle: ${e.shuffle?"On":"Off"}`,iconType:e.shuffle?P.ArrowShuffleFilled:P.ArrowShuffleOffFilled,size:"s",iconSize:"l",onClick:e.toggleShuffle,disabled:!0}),o(l.EuiButtonIcon,{title:"Previous","aria-label":"Previous",iconType:P.PreviousFilled,size:"s",iconSize:"l",onClick:i,disabled:e.isEmpty}),t.playing?o(l.EuiButtonIcon,{title:"Pause","aria-label":"Pause",iconType:P.PauseFilled,size:"s",iconSize:"l",onClick:()=>n.pause(),disabled:!e.canPlay}):o(l.EuiButtonIcon,{title:"Play","aria-label":"Play",iconType:P.PlayFilled,size:"s",iconSize:"l",onClick:()=>n.play(),disabled:!e.canPlay}),o(l.EuiButtonIcon,{title:"Next","aria-label":"Next",iconType:P.NextFilled,size:"s",iconSize:"l",onClick:e.next,disabled:!e.hasNextItem}),o(l.EuiButtonIcon,{title:`Repeat: ${e.repeat===_.All?"All":e.repeat===_.One?"One":"Off"}`,"aria-label":`Repeat: ${e.repeat===_.All?"All":e.repeat===_.One?"One":"Off"}`,iconType:Zr[e.repeat],size:"s",iconSize:"l",onClick:e.toggleRepeat})]})}),en=p.memo(()=>{const[t,e]=p.useState(!1),n=()=>e(!t);return o(Jr,{button:o(l.EuiButtonIcon,{title:"Volume","aria-label":"Volume",iconType:P.Speaker2Regular,size:"s",iconSize:"l",onClick:n}),isOpen:t,closePopover:()=>e(!1)})}),tn=({onClickPlayQueueButton:t})=>o(l.EuiButtonIcon,{title:"Play queue","aria-label":"Play queue",iconType:P.NavigationPlayRegular,size:"s",iconSize:"l",onClick:t}),rn=p.memo(({playQueueStore:t})=>{const[e,n]=p.useState(!1),i=()=>n(!e);return o(Xr,{playQueueStore:t,button:o(l.EuiButtonIcon,{title:"More options","aria-label":"More options",iconType:P.MoreHorizontalFilled,size:"s",iconSize:"l",onClick:i}),isOpen:e,closePopover:()=>n(!1)})}),nn=p.memo(({playQueueStore:t,onClickPlayQueueButton:e})=>N(l.EuiFlexGroup,{responsive:!1,gutterSize:"s",justifyContent:"flexEnd",alignItems:"center",children:[o(en,{}),e&&o(tn,{onClickPlayQueueButton:e}),o(rn,{playQueueStore:t})]})),on=Y.observer(({playerStore:t,playQueueStore:e,onClickPlayQueueButton:n})=>o(l.EuiBottomBar,{paddingSize:"s",children:N(l.EuiFlexGroup,{direction:"column",gutterSize:"none",children:[o(l.EuiFlexItem,{children:o(Gr,{playerStore:t,playQueueStore:e})}),o(l.EuiFlexItem,{children:N(l.EuiFlexGroup,{responsive:!1,children:[o(l.EuiFlexItem,{css:{width:"calc(100% / 3)"}}),o(l.EuiFlexItem,{css:{width:"calc(100% / 3)"},children:o(Qr,{playerStore:t,playQueueStore:e})}),o(l.EuiFlexItem,{css:{width:"calc(100% / 3)"},children:o(nn,{playQueueStore:e,onClickPlayQueueButton:n})})]})})]})})),Ae={width:16*25,height:9*25},an=Y.observer(({playerStore:t,playQueueStore:e})=>{const n=J.useNostalgicDiva(),i=p.useCallback(async()=>{e.interacted&&await n.play()},[e,n]),a=p.useCallback(async()=>{switch(e.repeat){case _.One:await n.setCurrentTime(0);break;case _.Off:case _.All:if(e.isLastItem)switch(e.repeat){case _.Off:t.onEnded();break;case _.All:e.hasMultipleItems?await e.goToFirst():await n.setCurrentTime(0);break}else await e.next();break}},[e,t,n]),c=p.useMemo(()=>({onLoaded:i,onPlay:t.onPlay,onPause:t.onPause,onEnded:a,onTimeUpdate:t.onTimeUpdate}),[t,i,a]);return o("div",{css:{position:"fixed",right:0,bottom:Xe,width:Ae.width,height:Ae.height,zIndex:998,backgroundColor:"rgb(39, 39, 39)",display:"flex",flexDirection:"column"},children:o("div",{css:{flexGrow:1,backgroundColor:"black"},children:e.currentItem&&o(J.NostalgicDiva,{src:e.currentItem.url,options:c})})})}),sn=Y.observer(({children:t})=>{const e=_t();return N(l.EuiPageTemplate,{panelled:!0,style:{minBlockSize:`max(460px, 100vh - ${Xe}px)`},children:[t,!e.isEmpty&&o(l.EuiSpacer,{style:{blockSize:Ae.height}})]})});class ln{constructor(e){U(this,"playing",!1);U(this,"percent",0);U(this,"seeking",!1);e.makeObservable(this,{playing:u.observable,percent:u.observable,seeking:u.observable,setPlaying:u.action,setPercent:u.action,setSeeking:u.action,onPlay:u.action.bound,onPause:u.action.bound,onEnded:u.action.bound,onTimeUpdate:u.action.bound})}setPlaying(e){this.playing=e}setPercent(e){this.percent=e}setSeeking(e){this.seeking=e}onPlay(){this.playing=!0}onPause(){this.playing=!1}onEnded(){this.playing=!1}onTimeUpdate({percent:e}){e!==void 0&&(this.seeking||(this.percent=e))}}const kt=p.createContext(void 0),cn=({children:t})=>{const[e]=p.useState(()=>new ln(new Ke));return o(kt.Provider,{value:e,children:t})},un=()=>p.useContext(kt);exports.BottomBar=on;exports.HydrangeanDiva=Vr;exports.MediaPlayerLayout=sn;exports.MiniPlayer=an;exports.MobXObservableStateProvider=Ke;exports.ObservableStateProvider=ar;exports.PlayQueueStoreProvider=Hr;exports.PlayerStoreProvider=cn;exports.RepeatMode=_;exports.bottomBarHeight=Xe;exports.miniPlayerSize=Ae;exports.usePlayQueueStore=_t;exports.usePlayerStore=un; //# sourceMappingURL=index.cjs.js.map