@music-lyric-player/base 0.15.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.comm.js +1 -1
- package/dist/index.comm.js.map +1 -1
- package/dist/index.ecma.js +841 -827
- package/dist/index.ecma.js.map +1 -1
- package/package.json +3 -3
package/dist/index.comm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ye=require("@music-lyric-player/utils");require("lodash-es");const zt=Ye.freezeObjectDeep({driver:"animation",bridgeActive:!0,mergeWindow:300,mergeLimit:3,offset:{global:0,useMeta:!0,resetTempOnLyricChange:!0}}),mr=Object.freeze(Object.defineProperty({__proto__:null,DEFAULT:zt},Symbol.toStringTag,{value:"Module"})),B=(s=8)=>{let e="";for(;e.length<s;)e+=Math.random().toString(36).slice(2);return e.slice(0,s)};var Yt=(s=>(s.ChineseSimplified="zh-hans",s.ChineseTraditional="zh-hant",s.English="en",s.Japanese="ja",s.Korean="ko",s.Russian="ru",s.French="fr",s.German="de",s.Spanish="es",s.Italian="it",s.Portuguese="pt",s))(Yt||{});class pr{tag="";percent=0}class Kt{list=[];get primary(){let e;for(let t=0,n=this.list.length;t<n;t++)(!e||this.list[t].percent>e.percent)&&(e=this.list[t]);return e}}class Jt{start=0;end=0;get duration(){return this.end-this.start}}class dr{id=B(6).toUpperCase();time;content=""}class Zt{id=B(6).toUpperCase();time;words=[];language;get content(){let e="";for(let t=0,n=this.words.length;t<n;t++)e+=this.words[t].content;return e}}class Er extends Zt{key=""}class gr{ruby;romans;unknowns}var k=(s=>(s.Normal="Normal",s.Space="Space",s))(k||{});class Rr{id=B(6).toUpperCase();type="Normal";time;content="";language;annotation;stress=!1}class vr{type="Space";count=1}class Y{language;content=""}class Qt extends Y{key=""}class er{#e;constructor(e){this.#e=e}#i(e){let t="",n=0,i,c=!1;for(let h=0,o=this.#e.words.length;h<o;h++){const a=this.#e.words[h];if(a.type===k.Space){n+=a.count;continue}const r=e(a);r&&(c&&(t+=" ".repeat(n)),t+=r.content,i??=r.language,n=0,c=!0)}if(!c)return;const l=new Y;return l.content=t,l.language=i,l}#a(e){const t=[];for(let i=0,c=this.#e.words.length;i<c;i++){const l=this.#e.words[i];if(l.type===k.Space)continue;const h=e(l);if(h)for(const o of h){const a=o.language??"";t.includes(a)||t.push(a)}}if(!t.length)return;const n=[];for(const i of t){let c="",l=0,h=!1;for(let a=0,r=this.#e.words.length;a<r;a++){const u=this.#e.words[a];if(u.type===k.Space){l+=u.count;continue}const f=e(u)?.find(E=>(E.language??"")===i);f&&(h&&(c+=" ".repeat(l)),c+=f.content,l=0,h=!0)}const o=new Y;o.content=c,o.language=i||void 0,n.push(o)}return n}#o(){const e=[];for(let n=0,i=this.#e.words.length;n<i;n++){const c=this.#e.words[n];if(c.type===k.Space)continue;const l=c.annotation?.unknowns;if(l)for(const h of l)e.includes(h.key)||e.push(h.key)}if(!e.length)return;const t=[];for(const n of e){let i="",c=0,l,h=!1;for(let a=0,r=this.#e.words.length;a<r;a++){const u=this.#e.words[a];if(u.type===k.Space){c+=u.count;continue}const f=u.annotation?.unknowns?.find(E=>E.key===n);f&&(h&&(i+=" ".repeat(c)),i+=f.content,l??=f.language,c=0,h=!0)}const o=new Qt;o.key=n,o.content=i,o.language=l,t.push(o)}return t}#t;get ruby(){return this.#t??this.#i(e=>e.annotation?.ruby)}set ruby(e){this.#t=e}#r;get romans(){return this.#r??this.#a(e=>e.annotation?.romans)}set romans(e){this.#r=e}#s;get translates(){return this.#s}set translates(e){this.#s=e}#n;get unknowns(){return this.#n??this.#o()}set unknowns(e){this.#n=e}}var tr=(s=>(s.Normal="Normal",s.Interlude="Interlude",s))(tr||{});class rr{id=B(6).toUpperCase();time=new Jt}class sr extends rr{type="Normal";agent;words=[];get original(){let e="";for(let t=0,n=this.words.length;t<n;t++){const i=this.words[t];e+=i.type===k.Normal?i.content:" ".repeat(i.count)}return e}annotation=new er(this);#e;get languages(){if(this.#e?.length)return this.#e;const e=new Set;for(let t=0,n=this.words.length;t<n;t++){const i=this.words[t];i.type===k.Normal&&i.language&&e.add(i.language)}return[...e]}set languages(e){this.#e=e}}class Ir extends sr{background}class $r extends rr{type="Interlude"}var _=(s=>(s.Offset="Offset",s.Duration="Duration",s.Title="Title",s.Singer="Singer",s.Album="Album",s.Creator="Creator",s.Author="Author",s.Isrc="Isrc",s.Unknown="Unknown",s))(_||{});const Lr=(s,e,t)=>({id:B(6).toUpperCase(),type:s,key:e,value:t});class nr{list=[];listOf(e){return this.list.filter(t=>t.type===e)}get offsets(){return this.listOf(_.Offset)}get durations(){return this.listOf(_.Duration)}get titles(){return this.listOf(_.Title)}get singers(){return this.listOf(_.Singer)}get albums(){return this.listOf(_.Album)}get creators(){return this.listOf(_.Creator)}get authors(){return this.listOf(_.Author)}get isrcs(){return this.listOf(_.Isrc)}get unknowns(){return this.listOf(_.Unknown)}}var ir=(s=>(s.Person="Person",s.Group="Group",s.Other="Other",s.Unknown="Unknown",s))(ir||{});class Tr{id="";type="Unknown";count=0;names=[]}class Sr{id="";globalIndex=0;blockIndex=0}const ar="0.8.0";var or=(s=>(s.Invalid="Invalid",s.Empty="Empty",s.Normal="Normal",s))(or||{}),lr=(s=>(s.None="None",s.Line="Line",s.Syllable="Syllable",s))(lr||{});class Or{version=ar;type="Invalid";timing="None";meta=new nr;language=new Kt;agents=[];lines=[]}const z=Object.freeze(Object.defineProperty({__proto__:null,Agent:Tr,AgentType:ir,Info:Or,InfoTiming:lr,InfoType:or,Language:Kt,LanguageItem:pr,LanguageType:Yt,LineAgent:Sr,LineAnnotation:er,LineAnnotationItem:Y,LineInterlude:$r,LineNormal:Ir,LineNormalBase:sr,LineType:tr,LineUnknownAnnotation:Qt,Meta:nr,MetaType:_,Time:Jt,Version:ar,WordAnnotation:gr,WordAnnotationContent:dr,WordAnnotationItem:Zt,WordNormal:Rr,WordSpace:vr,WordType:k,WordUnknownAnnotation:Er,createMetaItem:Lr},Symbol.toStringTag,{value:"Module"}));class Nr{lines=[];mergedEnd=[];getRawTime(e){const t=this.lines;return e<0||e>=t.length?0:e===t.length-1?1/0:Math.max(t[e].time.end,t[e+1].time.start)}build(e,t,n){this.lines=e;const i=e.length,c=new Array(i);if(i===0){this.mergedEnd=c;return}const l=Math.max(0,t),h=n>0?n:1/0;let o=this.getRawTime(i-1);c[i-1]=o;let a=1;for(let r=i-2;r>=0;r--){const u=this.getRawTime(r);l>0&&a<h&&Math.abs(o-u)<l?(c[r]=Math.max(u,c[r+1]),a++):(c[r]=u,a=1),o=u}this.mergedEnd=c}getMergedTime(e){const t=this.mergedEnd[e];return t===void 0?this.getRawTime(e):t}}class wr{temp=0;meta=0;setTemp(e){this.temp=Number.isFinite(e)?e:0}resetTemp(){this.temp=0}refreshFromMeta(e,t){if(!t){this.meta=0;return}const n=e.meta.offsets[0]?.value;this.meta=typeof n=="number"&&Number.isFinite(n)?n:0}resolve(e){const t=e+this.meta+this.temp;return Number.isFinite(t)?t:0}}class Ar{frameId=null;timerId=null;schedule(e,t){switch(e){case"animation":this.frameId=globalThis.requestAnimationFrame(t);break;case"timer":this.timerId=globalThis.setTimeout(t,16);break}}cancel(){this.frameId!==null&&(globalThis.cancelAnimationFrame(this.frameId),this.frameId=null),this.timerId!==null&&(globalThis.clearTimeout(this.timerId),this.timerId=null)}}var H={exports:{}},ie,rt;function K(){if(rt)return ie;rt=1;const s="2.0.0",e=256,t=Number.MAX_SAFE_INTEGER||9007199254740991,n=16,i=e-6;return ie={MAX_LENGTH:e,MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:s,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2},ie}var ae,st;function J(){return st||(st=1,ae=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{}),ae}var nt;function W(){return nt||(nt=1,(function(s,e){const{MAX_SAFE_COMPONENT_LENGTH:t,MAX_SAFE_BUILD_LENGTH:n,MAX_LENGTH:i}=K(),c=J();e=s.exports={};const l=e.re=[],h=e.safeRe=[],o=e.src=[],a=e.safeSrc=[],r=e.t={};let u=0;const f="[a-zA-Z0-9-]",E=[["\\s",1],["\\d",i],[f,n]],O=S=>{for(const[w,G]of E)S=S.split(`${w}*`).join(`${w}{0,${G}}`).split(`${w}+`).join(`${w}{1,${G}}`);return S},p=(S,w,G)=>{const A=O(w),b=u++;c(S,b,w),r[S]=b,o[b]=w,a[b]=A,l[b]=new RegExp(w,G?"g":void 0),h[b]=new RegExp(A,G?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${f}*`),p("MAINVERSION",`(${o[r.NUMERICIDENTIFIER]})\\.(${o[r.NUMERICIDENTIFIER]})\\.(${o[r.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${o[r.NUMERICIDENTIFIERLOOSE]})\\.(${o[r.NUMERICIDENTIFIERLOOSE]})\\.(${o[r.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${o[r.NONNUMERICIDENTIFIER]}|${o[r.NUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${o[r.NONNUMERICIDENTIFIER]}|${o[r.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASE",`(?:-(${o[r.PRERELEASEIDENTIFIER]}(?:\\.${o[r.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${o[r.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${o[r.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${f}+`),p("BUILD",`(?:\\+(${o[r.BUILDIDENTIFIER]}(?:\\.${o[r.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${o[r.MAINVERSION]}${o[r.PRERELEASE]}?${o[r.BUILD]}?`),p("FULL",`^${o[r.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${o[r.MAINVERSIONLOOSE]}${o[r.PRERELEASELOOSE]}?${o[r.BUILD]}?`),p("LOOSE",`^${o[r.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${o[r.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${o[r.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${o[r.XRANGEIDENTIFIER]})(?:\\.(${o[r.XRANGEIDENTIFIER]})(?:\\.(${o[r.XRANGEIDENTIFIER]})(?:${o[r.PRERELEASE]})?${o[r.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${o[r.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[r.XRANGEIDENTIFIERLOOSE]})(?:\\.(${o[r.XRANGEIDENTIFIERLOOSE]})(?:${o[r.PRERELEASELOOSE]})?${o[r.BUILD]}?)?)?`),p("XRANGE",`^${o[r.GTLT]}\\s*${o[r.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${o[r.GTLT]}\\s*${o[r.XRANGEPLAINLOOSE]}$`),p("COERCEPLAIN",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?`),p("COERCE",`${o[r.COERCEPLAIN]}(?:$|[^\\d])`),p("COERCEFULL",o[r.COERCEPLAIN]+`(?:${o[r.PRERELEASE]})?(?:${o[r.BUILD]})?(?:$|[^\\d])`),p("COERCERTL",o[r.COERCE],!0),p("COERCERTLFULL",o[r.COERCEFULL],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${o[r.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",p("TILDE",`^${o[r.LONETILDE]}${o[r.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${o[r.LONETILDE]}${o[r.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${o[r.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",p("CARET",`^${o[r.LONECARET]}${o[r.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${o[r.LONECARET]}${o[r.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${o[r.GTLT]}\\s*(${o[r.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${o[r.GTLT]}\\s*(${o[r.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${o[r.GTLT]}\\s*(${o[r.LOOSEPLAIN]}|${o[r.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${o[r.XRANGEPLAIN]})\\s+-\\s+(${o[r.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${o[r.XRANGEPLAINLOOSE]})\\s+-\\s+(${o[r.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(H,H.exports)),H.exports}var oe,it;function Ke(){if(it)return oe;it=1;const s=Object.freeze({loose:!0}),e=Object.freeze({});return oe=n=>n?typeof n!="object"?s:n:e,oe}var le,at;function cr(){if(at)return le;at=1;const s=/^[0-9]+$/,e=(n,i)=>{if(typeof n=="number"&&typeof i=="number")return n===i?0:n<i?-1:1;const c=s.test(n),l=s.test(i);return c&&l&&(n=+n,i=+i),n===i?0:c&&!l?-1:l&&!c?1:n<i?-1:1};return le={compareIdentifiers:e,rcompareIdentifiers:(n,i)=>e(i,n)},le}var ce,ot;function x(){if(ot)return ce;ot=1;const s=J(),{MAX_LENGTH:e,MAX_SAFE_INTEGER:t}=K(),{safeRe:n,t:i}=W(),c=Ke(),{compareIdentifiers:l}=cr();class h{constructor(a,r){if(r=c(r),a instanceof h){if(a.loose===!!r.loose&&a.includePrerelease===!!r.includePrerelease)return a;a=a.version}else if(typeof a!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof a}".`);if(a.length>e)throw new TypeError(`version is longer than ${e} characters`);s("SemVer",a,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;const u=a.trim().match(r.loose?n[i.LOOSE]:n[i.FULL]);if(!u)throw new TypeError(`Invalid Version: ${a}`);if(this.raw=a,this.major=+u[1],this.minor=+u[2],this.patch=+u[3],this.major>t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>t||this.patch<0)throw new TypeError("Invalid patch version");u[4]?this.prerelease=u[4].split(".").map(f=>{if(/^[0-9]+$/.test(f)){const E=+f;if(E>=0&&E<t)return E}return f}):this.prerelease=[],this.build=u[5]?u[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(a){if(s("SemVer.compare",this.version,this.options,a),!(a instanceof h)){if(typeof a=="string"&&a===this.version)return 0;a=new h(a,this.options)}return a.version===this.version?0:this.compareMain(a)||this.comparePre(a)}compareMain(a){return a instanceof h||(a=new h(a,this.options)),this.major<a.major?-1:this.major>a.major?1:this.minor<a.minor?-1:this.minor>a.minor?1:this.patch<a.patch?-1:this.patch>a.patch?1:0}comparePre(a){if(a instanceof h||(a=new h(a,this.options)),this.prerelease.length&&!a.prerelease.length)return-1;if(!this.prerelease.length&&a.prerelease.length)return 1;if(!this.prerelease.length&&!a.prerelease.length)return 0;let r=0;do{const u=this.prerelease[r],f=a.prerelease[r];if(s("prerelease compare",r,u,f),u===void 0&&f===void 0)return 0;if(f===void 0)return 1;if(u===void 0)return-1;if(u===f)continue;return l(u,f)}while(++r)}compareBuild(a){a instanceof h||(a=new h(a,this.options));let r=0;do{const u=this.build[r],f=a.build[r];if(s("build compare",r,u,f),u===void 0&&f===void 0)return 0;if(f===void 0)return 1;if(u===void 0)return-1;if(u===f)continue;return l(u,f)}while(++r)}inc(a,r,u){if(a.startsWith("pre")){if(!r&&u===!1)throw new Error("invalid increment argument: identifier is empty");if(r){const f=`-${r}`.match(this.options.loose?n[i.PRERELEASELOOSE]:n[i.PRERELEASE]);if(!f||f[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(a){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,u);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,u);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,u),this.inc("pre",r,u);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,u),this.inc("pre",r,u);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{const f=Number(u)?1:0;if(this.prerelease.length===0)this.prerelease=[f];else{let E=this.prerelease.length;for(;--E>=0;)typeof this.prerelease[E]=="number"&&(this.prerelease[E]++,E=-2);if(E===-1){if(r===this.prerelease.join(".")&&u===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(f)}}if(r){let E=[r,f];u===!1&&(E=[r]),l(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=E):this.prerelease=E}break}default:throw new Error(`invalid increment argument: ${a}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}return ce=h,ce}var ue,lt;function M(){if(lt)return ue;lt=1;const s=x();return ue=(t,n,i=!1)=>{if(t instanceof s)return t;try{return new s(t,n)}catch(c){if(!i)return null;throw c}},ue}var he,ct;function yr(){if(ct)return he;ct=1;const s=M();return he=(t,n)=>{const i=s(t,n);return i?i.version:null},he}var fe,ut;function Cr(){if(ut)return fe;ut=1;const s=M();return fe=(t,n)=>{const i=s(t.trim().replace(/^[=v]+/,""),n);return i?i.version:null},fe}var me,ht;function Pr(){if(ht)return me;ht=1;const s=x();return me=(t,n,i,c,l)=>{typeof i=="string"&&(l=c,c=i,i=void 0);try{return new s(t instanceof s?t.version:t,i).inc(n,c,l).version}catch{return null}},me}var pe,ft;function qr(){if(ft)return pe;ft=1;const s=M();return pe=(t,n)=>{const i=s(t,null,!0),c=s(n,null,!0),l=i.compare(c);if(l===0)return null;const h=l>0,o=h?i:c,a=h?c:i,r=!!o.prerelease.length;if(!!a.prerelease.length&&!r){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0)return a.minor&&!a.patch?"minor":"patch"}const f=r?"pre":"";return i.major!==c.major?f+"major":i.minor!==c.minor?f+"minor":i.patch!==c.patch?f+"patch":"prerelease"},pe}var de,mt;function Gr(){if(mt)return de;mt=1;const s=x();return de=(t,n)=>new s(t,n).major,de}var Ee,pt;function br(){if(pt)return Ee;pt=1;const s=x();return Ee=(t,n)=>new s(t,n).minor,Ee}var ge,dt;function Dr(){if(dt)return ge;dt=1;const s=x();return ge=(t,n)=>new s(t,n).patch,ge}var Re,Et;function xr(){if(Et)return Re;Et=1;const s=M();return Re=(t,n)=>{const i=s(t,n);return i&&i.prerelease.length?i.prerelease:null},Re}var ve,gt;function F(){if(gt)return ve;gt=1;const s=x();return ve=(t,n,i)=>new s(t,i).compare(new s(n,i)),ve}var Ie,Rt;function Ur(){if(Rt)return Ie;Rt=1;const s=F();return Ie=(t,n,i)=>s(n,t,i),Ie}var $e,vt;function _r(){if(vt)return $e;vt=1;const s=F();return $e=(t,n)=>s(t,n,!0),$e}var Le,It;function Je(){if(It)return Le;It=1;const s=x();return Le=(t,n,i)=>{const c=new s(t,i),l=new s(n,i);return c.compare(l)||c.compareBuild(l)},Le}var Te,$t;function Fr(){if($t)return Te;$t=1;const s=Je();return Te=(t,n)=>t.sort((i,c)=>s(i,c,n)),Te}var Se,Lt;function jr(){if(Lt)return Se;Lt=1;const s=Je();return Se=(t,n)=>t.sort((i,c)=>s(c,i,n)),Se}var Oe,Tt;function Z(){if(Tt)return Oe;Tt=1;const s=F();return Oe=(t,n,i)=>s(t,n,i)>0,Oe}var Ne,St;function Ze(){if(St)return Ne;St=1;const s=F();return Ne=(t,n,i)=>s(t,n,i)<0,Ne}var we,Ot;function ur(){if(Ot)return we;Ot=1;const s=F();return we=(t,n,i)=>s(t,n,i)===0,we}var Ae,Nt;function hr(){if(Nt)return Ae;Nt=1;const s=F();return Ae=(t,n,i)=>s(t,n,i)!==0,Ae}var ye,wt;function Qe(){if(wt)return ye;wt=1;const s=F();return ye=(t,n,i)=>s(t,n,i)>=0,ye}var Ce,At;function et(){if(At)return Ce;At=1;const s=F();return Ce=(t,n,i)=>s(t,n,i)<=0,Ce}var Pe,yt;function fr(){if(yt)return Pe;yt=1;const s=ur(),e=hr(),t=Z(),n=Qe(),i=Ze(),c=et();return Pe=(h,o,a,r)=>{switch(o){case"===":return typeof h=="object"&&(h=h.version),typeof a=="object"&&(a=a.version),h===a;case"!==":return typeof h=="object"&&(h=h.version),typeof a=="object"&&(a=a.version),h!==a;case"":case"=":case"==":return s(h,a,r);case"!=":return e(h,a,r);case">":return t(h,a,r);case">=":return n(h,a,r);case"<":return i(h,a,r);case"<=":return c(h,a,r);default:throw new TypeError(`Invalid operator: ${o}`)}},Pe}var qe,Ct;function kr(){if(Ct)return qe;Ct=1;const s=x(),e=M(),{safeRe:t,t:n}=W();return qe=(c,l)=>{if(c instanceof s)return c;if(typeof c=="number"&&(c=String(c)),typeof c!="string")return null;l=l||{};let h=null;if(!l.rtl)h=c.match(l.includePrerelease?t[n.COERCEFULL]:t[n.COERCE]);else{const E=l.includePrerelease?t[n.COERCERTLFULL]:t[n.COERCERTL];let O;for(;(O=E.exec(c))&&(!h||h.index+h[0].length!==c.length);)(!h||O.index+O[0].length!==h.index+h[0].length)&&(h=O),E.lastIndex=O.index+O[1].length+O[2].length;E.lastIndex=-1}if(h===null)return null;const o=h[2],a=h[3]||"0",r=h[4]||"0",u=l.includePrerelease&&h[5]?`-${h[5]}`:"",f=l.includePrerelease&&h[6]?`+${h[6]}`:"";return e(`${o}.${a}.${r}${u}${f}`,l)},qe}var Ge,Pt;function Mr(){if(Pt)return Ge;Pt=1;class s{constructor(){this.max=1e3,this.map=new Map}get(t){const n=this.map.get(t);if(n!==void 0)return this.map.delete(t),this.map.set(t,n),n}delete(t){return this.map.delete(t)}set(t,n){if(!this.delete(t)&&n!==void 0){if(this.map.size>=this.max){const c=this.map.keys().next().value;this.delete(c)}this.map.set(t,n)}return this}}return Ge=s,Ge}var be,qt;function j(){if(qt)return be;qt=1;const s=/\s+/g;class e{constructor(m,v){if(v=i(v),m instanceof e)return m.loose===!!v.loose&&m.includePrerelease===!!v.includePrerelease?m:new e(m.raw,v);if(m instanceof c)return this.raw=m.value,this.set=[[m]],this.formatted=void 0,this;if(this.options=v,this.loose=!!v.loose,this.includePrerelease=!!v.includePrerelease,this.raw=m.trim().replace(s," "),this.set=this.raw.split("||").map(g=>this.parseRange(g.trim())).filter(g=>g.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const g=this.set[0];if(this.set=this.set.filter(I=>!p(I[0])),this.set.length===0)this.set=[g];else if(this.set.length>1){for(const I of this.set)if(I.length===1&&S(I[0])){this.set=[I];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let m=0;m<this.set.length;m++){m>0&&(this.formatted+="||");const v=this.set[m];for(let g=0;g<v.length;g++)g>0&&(this.formatted+=" "),this.formatted+=v[g].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(m){const g=((this.options.includePrerelease&&E)|(this.options.loose&&O))+":"+m,I=n.get(g);if(I)return I;const R=this.options.loose,$=R?o[a.HYPHENRANGELOOSE]:o[a.HYPHENRANGE];m=m.replace($,se(this.options.includePrerelease)),l("hyphen replace",m),m=m.replace(o[a.COMPARATORTRIM],r),l("comparator trim",m),m=m.replace(o[a.TILDETRIM],u),l("tilde trim",m),m=m.replace(o[a.CARETTRIM],f),l("caret trim",m);let N=m.split(" ").map(P=>G(P,this.options)).join(" ").split(/\s+/).map(P=>re(P,this.options));R&&(N=N.filter(P=>(l("loose invalid filter",P,this.options),!!P.match(o[a.COMPARATORLOOSE])))),l("range list",N);const T=new Map,y=N.map(P=>new c(P,this.options));for(const P of y){if(p(P))return[P];T.set(P.value,P)}T.size>1&&T.has("")&&T.delete("");const D=[...T.values()];return n.set(g,D),D}intersects(m,v){if(!(m instanceof e))throw new TypeError("a Range is required");return this.set.some(g=>w(g,v)&&m.set.some(I=>w(I,v)&&g.every(R=>I.every($=>R.intersects($,v)))))}test(m){if(!m)return!1;if(typeof m=="string")try{m=new h(m,this.options)}catch{return!1}for(let v=0;v<this.set.length;v++)if(ne(this.set[v],m,this.options))return!0;return!1}}be=e;const t=Mr(),n=new t,i=Ke(),c=Q(),l=J(),h=x(),{safeRe:o,t:a,comparatorTrimReplace:r,tildeTrimReplace:u,caretTrimReplace:f}=W(),{FLAG_INCLUDE_PRERELEASE:E,FLAG_LOOSE:O}=K(),p=d=>d.value==="<0.0.0-0",S=d=>d.value==="",w=(d,m)=>{let v=!0;const g=d.slice();let I=g.pop();for(;v&&g.length;)v=g.every(R=>I.intersects(R,m)),I=g.pop();return v},G=(d,m)=>(d=d.replace(o[a.BUILD],""),l("comp",d,m),d=C(d,m),l("caret",d),d=b(d,m),l("tildes",d),d=L(d,m),l("xrange",d),d=te(d,m),l("stars",d),d),A=d=>!d||d.toLowerCase()==="x"||d==="*",b=(d,m)=>d.trim().split(/\s+/).map(v=>U(v,m)).join(" "),U=(d,m)=>{const v=m.loose?o[a.TILDELOOSE]:o[a.TILDE];return d.replace(v,(g,I,R,$,N)=>{l("tilde",d,g,I,R,$,N);let T;return A(I)?T="":A(R)?T=`>=${I}.0.0 <${+I+1}.0.0-0`:A($)?T=`>=${I}.${R}.0 <${I}.${+R+1}.0-0`:N?(l("replaceTilde pr",N),T=`>=${I}.${R}.${$}-${N} <${I}.${+R+1}.0-0`):T=`>=${I}.${R}.${$} <${I}.${+R+1}.0-0`,l("tilde return",T),T})},C=(d,m)=>d.trim().split(/\s+/).map(v=>q(v,m)).join(" "),q=(d,m)=>{l("caret",d,m);const v=m.loose?o[a.CARETLOOSE]:o[a.CARET],g=m.includePrerelease?"-0":"";return d.replace(v,(I,R,$,N,T)=>{l("caret",d,I,R,$,N,T);let y;return A(R)?y="":A($)?y=`>=${R}.0.0${g} <${+R+1}.0.0-0`:A(N)?R==="0"?y=`>=${R}.${$}.0${g} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.0${g} <${+R+1}.0.0-0`:T?(l("replaceCaret pr",T),R==="0"?$==="0"?y=`>=${R}.${$}.${N}-${T} <${R}.${$}.${+N+1}-0`:y=`>=${R}.${$}.${N}-${T} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.${N}-${T} <${+R+1}.0.0-0`):(l("no pr"),R==="0"?$==="0"?y=`>=${R}.${$}.${N}${g} <${R}.${$}.${+N+1}-0`:y=`>=${R}.${$}.${N}${g} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.${N} <${+R+1}.0.0-0`),l("caret return",y),y})},L=(d,m)=>(l("replaceXRanges",d,m),d.split(/\s+/).map(v=>V(v,m)).join(" ")),V=(d,m)=>{d=d.trim();const v=m.loose?o[a.XRANGELOOSE]:o[a.XRANGE];return d.replace(v,(g,I,R,$,N,T)=>{l("xRange",d,g,I,R,$,N,T);const y=A(R),D=y||A($),P=D||A(N),X=P;return I==="="&&X&&(I=""),T=m.includePrerelease?"-0":"",y?I===">"||I==="<"?g="<0.0.0-0":g="*":I&&X?(D&&($=0),N=0,I===">"?(I=">=",D?(R=+R+1,$=0,N=0):($=+$+1,N=0)):I==="<="&&(I="<",D?R=+R+1:$=+$+1),I==="<"&&(T="-0"),g=`${I+R}.${$}.${N}${T}`):D?g=`>=${R}.0.0${T} <${+R+1}.0.0-0`:P&&(g=`>=${R}.${$}.0${T} <${R}.${+$+1}.0-0`),l("xRange return",g),g})},te=(d,m)=>(l("replaceStars",d,m),d.trim().replace(o[a.STAR],"")),re=(d,m)=>(l("replaceGTE0",d,m),d.trim().replace(o[m.includePrerelease?a.GTE0PRE:a.GTE0],"")),se=d=>(m,v,g,I,R,$,N,T,y,D,P,X)=>(A(g)?v="":A(I)?v=`>=${g}.0.0${d?"-0":""}`:A(R)?v=`>=${g}.${I}.0${d?"-0":""}`:$?v=`>=${v}`:v=`>=${v}${d?"-0":""}`,A(y)?T="":A(D)?T=`<${+y+1}.0.0-0`:A(P)?T=`<${y}.${+D+1}.0-0`:X?T=`<=${y}.${D}.${P}-${X}`:d?T=`<${y}.${D}.${+P+1}-0`:T=`<=${T}`,`${v} ${T}`.trim()),ne=(d,m,v)=>{for(let g=0;g<d.length;g++)if(!d[g].test(m))return!1;if(m.prerelease.length&&!v.includePrerelease){for(let g=0;g<d.length;g++)if(l(d[g].semver),d[g].semver!==c.ANY&&d[g].semver.prerelease.length>0){const I=d[g].semver;if(I.major===m.major&&I.minor===m.minor&&I.patch===m.patch)return!0}return!1}return!0};return be}var De,Gt;function Q(){if(Gt)return De;Gt=1;const s=Symbol("SemVer ANY");class e{static get ANY(){return s}constructor(r,u){if(u=t(u),r instanceof e){if(r.loose===!!u.loose)return r;r=r.value}r=r.trim().split(/\s+/).join(" "),l("comparator",r,u),this.options=u,this.loose=!!u.loose,this.parse(r),this.semver===s?this.value="":this.value=this.operator+this.semver.version,l("comp",this)}parse(r){const u=this.options.loose?n[i.COMPARATORLOOSE]:n[i.COMPARATOR],f=r.match(u);if(!f)throw new TypeError(`Invalid comparator: ${r}`);this.operator=f[1]!==void 0?f[1]:"",this.operator==="="&&(this.operator=""),f[2]?this.semver=new h(f[2],this.options.loose):this.semver=s}toString(){return this.value}test(r){if(l("Comparator.test",r,this.options.loose),this.semver===s||r===s)return!0;if(typeof r=="string")try{r=new h(r,this.options)}catch{return!1}return c(r,this.operator,this.semver,this.options)}intersects(r,u){if(!(r instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new o(r.value,u).test(this.value):r.operator===""?r.value===""?!0:new o(this.value,u).test(r.semver):(u=t(u),u.includePrerelease&&(this.value==="<0.0.0-0"||r.value==="<0.0.0-0")||!u.includePrerelease&&(this.value.startsWith("<0.0.0")||r.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&r.operator.startsWith(">")||this.operator.startsWith("<")&&r.operator.startsWith("<")||this.semver.version===r.semver.version&&this.operator.includes("=")&&r.operator.includes("=")||c(this.semver,"<",r.semver,u)&&this.operator.startsWith(">")&&r.operator.startsWith("<")||c(this.semver,">",r.semver,u)&&this.operator.startsWith("<")&&r.operator.startsWith(">")))}}De=e;const t=Ke(),{safeRe:n,t:i}=W(),c=fr(),l=J(),h=x(),o=j();return De}var xe,bt;function ee(){if(bt)return xe;bt=1;const s=j();return xe=(t,n,i)=>{try{n=new s(n,i)}catch{return!1}return n.test(t)},xe}var Ue,Dt;function Vr(){if(Dt)return Ue;Dt=1;const s=j();return Ue=(t,n)=>new s(t,n).set.map(i=>i.map(c=>c.value).join(" ").trim().split(" ")),Ue}var _e,xt;function Xr(){if(xt)return _e;xt=1;const s=x(),e=j();return _e=(n,i,c)=>{let l=null,h=null,o=null;try{o=new e(i,c)}catch{return null}return n.forEach(a=>{o.test(a)&&(!l||h.compare(a)===-1)&&(l=a,h=new s(l,c))}),l},_e}var Fe,Ut;function Br(){if(Ut)return Fe;Ut=1;const s=x(),e=j();return Fe=(n,i,c)=>{let l=null,h=null,o=null;try{o=new e(i,c)}catch{return null}return n.forEach(a=>{o.test(a)&&(!l||h.compare(a)===1)&&(l=a,h=new s(l,c))}),l},Fe}var je,_t;function Wr(){if(_t)return je;_t=1;const s=x(),e=j(),t=Z();return je=(i,c)=>{i=new e(i,c);let l=new s("0.0.0");if(i.test(l)||(l=new s("0.0.0-0"),i.test(l)))return l;l=null;for(let h=0;h<i.set.length;++h){const o=i.set[h];let a=null;o.forEach(r=>{const u=new s(r.semver.version);switch(r.operator){case">":u.prerelease.length===0?u.patch++:u.prerelease.push(0),u.raw=u.format();case"":case">=":(!a||t(u,a))&&(a=u);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${r.operator}`)}}),a&&(!l||t(l,a))&&(l=a)}return l&&i.test(l)?l:null},je}var ke,Ft;function Hr(){if(Ft)return ke;Ft=1;const s=j();return ke=(t,n)=>{try{return new s(t,n).range||"*"}catch{return null}},ke}var Me,jt;function tt(){if(jt)return Me;jt=1;const s=x(),e=Q(),{ANY:t}=e,n=j(),i=ee(),c=Z(),l=Ze(),h=et(),o=Qe();return Me=(r,u,f,E)=>{r=new s(r,E),u=new n(u,E);let O,p,S,w,G;switch(f){case">":O=c,p=h,S=l,w=">",G=">=";break;case"<":O=l,p=o,S=c,w="<",G="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(i(r,u,E))return!1;for(let A=0;A<u.set.length;++A){const b=u.set[A];let U=null,C=null;if(b.forEach(q=>{q.semver===t&&(q=new e(">=0.0.0")),U=U||q,C=C||q,O(q.semver,U.semver,E)?U=q:S(q.semver,C.semver,E)&&(C=q)}),U.operator===w||U.operator===G||(!C.operator||C.operator===w)&&p(r,C.semver))return!1;if(C.operator===G&&S(r,C.semver))return!1}return!0},Me}var Ve,kt;function zr(){if(kt)return Ve;kt=1;const s=tt();return Ve=(t,n,i)=>s(t,n,">",i),Ve}var Xe,Mt;function Yr(){if(Mt)return Xe;Mt=1;const s=tt();return Xe=(t,n,i)=>s(t,n,"<",i),Xe}var Be,Vt;function Kr(){if(Vt)return Be;Vt=1;const s=j();return Be=(t,n,i)=>(t=new s(t,i),n=new s(n,i),t.intersects(n,i)),Be}var We,Xt;function Jr(){if(Xt)return We;Xt=1;const s=ee(),e=F();return We=(t,n,i)=>{const c=[];let l=null,h=null;const o=t.sort((f,E)=>e(f,E,i));for(const f of o)s(f,n,i)?(h=f,l||(l=f)):(h&&c.push([l,h]),h=null,l=null);l&&c.push([l,null]);const a=[];for(const[f,E]of c)f===E?a.push(f):!E&&f===o[0]?a.push("*"):E?f===o[0]?a.push(`<=${E}`):a.push(`${f} - ${E}`):a.push(`>=${f}`);const r=a.join(" || "),u=typeof n.raw=="string"?n.raw:String(n);return r.length<u.length?r:n},We}var He,Bt;function Zr(){if(Bt)return He;Bt=1;const s=j(),e=Q(),{ANY:t}=e,n=ee(),i=F(),c=(u,f,E={})=>{if(u===f)return!0;u=new s(u,E),f=new s(f,E);let O=!1;e:for(const p of u.set){for(const S of f.set){const w=o(p,S,E);if(O=O||w!==null,w)continue e}if(O)return!1}return!0},l=[new e(">=0.0.0-0")],h=[new e(">=0.0.0")],o=(u,f,E)=>{if(u===f)return!0;if(u.length===1&&u[0].semver===t){if(f.length===1&&f[0].semver===t)return!0;E.includePrerelease?u=l:u=h}if(f.length===1&&f[0].semver===t){if(E.includePrerelease)return!0;f=h}const O=new Set;let p,S;for(const L of u)L.operator===">"||L.operator===">="?p=a(p,L,E):L.operator==="<"||L.operator==="<="?S=r(S,L,E):O.add(L.semver);if(O.size>1)return null;let w;if(p&&S){if(w=i(p.semver,S.semver,E),w>0)return null;if(w===0&&(p.operator!==">="||S.operator!=="<="))return null}for(const L of O){if(p&&!n(L,String(p),E)||S&&!n(L,String(S),E))return null;for(const V of f)if(!n(L,String(V),E))return!1;return!0}let G,A,b,U,C=S&&!E.includePrerelease&&S.semver.prerelease.length?S.semver:!1,q=p&&!E.includePrerelease&&p.semver.prerelease.length?p.semver:!1;C&&C.prerelease.length===1&&S.operator==="<"&&C.prerelease[0]===0&&(C=!1);for(const L of f){if(U=U||L.operator===">"||L.operator===">=",b=b||L.operator==="<"||L.operator==="<=",p){if(q&&L.semver.prerelease&&L.semver.prerelease.length&&L.semver.major===q.major&&L.semver.minor===q.minor&&L.semver.patch===q.patch&&(q=!1),L.operator===">"||L.operator===">="){if(G=a(p,L,E),G===L&&G!==p)return!1}else if(p.operator===">="&&!n(p.semver,String(L),E))return!1}if(S){if(C&&L.semver.prerelease&&L.semver.prerelease.length&&L.semver.major===C.major&&L.semver.minor===C.minor&&L.semver.patch===C.patch&&(C=!1),L.operator==="<"||L.operator==="<="){if(A=r(S,L,E),A===L&&A!==S)return!1}else if(S.operator==="<="&&!n(S.semver,String(L),E))return!1}if(!L.operator&&(S||p)&&w!==0)return!1}return!(p&&b&&!S&&w!==0||S&&U&&!p&&w!==0||q||C)},a=(u,f,E)=>{if(!u)return f;const O=i(u.semver,f.semver,E);return O>0?u:O<0||f.operator===">"&&u.operator===">="?f:u},r=(u,f,E)=>{if(!u)return f;const O=i(u.semver,f.semver,E);return O<0?u:O>0||f.operator==="<"&&u.operator==="<="?f:u};return He=c,He}var ze,Wt;function Qr(){if(Wt)return ze;Wt=1;const s=W(),e=K(),t=x(),n=cr(),i=M(),c=yr(),l=Cr(),h=Pr(),o=qr(),a=Gr(),r=br(),u=Dr(),f=xr(),E=F(),O=Ur(),p=_r(),S=Je(),w=Fr(),G=jr(),A=Z(),b=Ze(),U=ur(),C=hr(),q=Qe(),L=et(),V=fr(),te=kr(),re=Q(),se=j(),ne=ee(),d=Vr(),m=Xr(),v=Br(),g=Wr(),I=Hr(),R=tt(),$=zr(),N=Yr(),T=Kr(),y=Jr(),D=Zr();return ze={parse:i,valid:c,clean:l,inc:h,diff:o,major:a,minor:r,patch:u,prerelease:f,compare:E,rcompare:O,compareLoose:p,compareBuild:S,sort:w,rsort:G,gt:A,lt:b,eq:U,neq:C,gte:q,lte:L,cmp:V,coerce:te,Comparator:re,Range:se,satisfies:ne,toComparators:d,maxSatisfying:m,minSatisfying:v,minVersion:g,validRange:I,outside:R,gtr:$,ltr:N,intersects:T,simplifyRange:y,subset:D,SemVer:t,re:s.re,src:s.src,tokens:s.t,SEMVER_SPEC_VERSION:e.SEMVER_SPEC_VERSION,RELEASE_TYPES:e.RELEASE_TYPES,compareIdentifiers:n.compareIdentifiers,rcompareIdentifiers:n.rcompareIdentifiers},ze}var es=Qr();const Ht=`^${z.Version}`;class ts{config=new Ye.ConfigManager(zt);event=new Ye.Event;state;active;time;info;merger=new Nr;offset=new wr;driver=new Ar;constructor(){this.state={playing:!1,scanIndex:0},this.active={lines:[],index:[]},this.time={start:0,seek:0},this.info=new z.Info,this.config.event.add("update",this.onConfigUpdate)}onConfigUpdate=e=>{const t=e.has("offset.useMeta");t&&this.offset.refreshFromMeta(this.info,this.config.current.offset.useMeta),(t||e.has("offset.global"))&&this.handleSyncTime(),(e.has("mergeWindow")||e.has("mergeLimit"))&&(this.handleBuildMergedLineEnd(),this.handleSyncTime())};handleGetCurrentTime(){return this.state.playing?this.time.seek+(performance.now()-this.time.start):this.time.seek}handleGetEffectiveTime(){return this.handleGetCurrentTime()+this.currentOffset}handleBuildMergedLineEnd(){this.merger.build(this.info.lines,this.config.current.mergeWindow,this.config.current.mergeLimit)}handleGetActiveIndex(){return this.active.index.length>0?this.active.index[0]:-1}handleBridgeActive(e,t){if(!this.config.current.bridgeActive||t.length<2)return{lines:e,index:t};const n=t[0],i=t[t.length-1];if(i-n+1===t.length)return{lines:e,index:t};const c=new Map;for(let o=0;o<t.length;o++)c.set(t[o],e[o]);const l=[],h=[];for(let o=n;o<=i;o++){const a=c.get(o)??this.info.lines[o];a&&(l.push(a),h.push(o))}return{lines:l,index:h}}handleEmitLinesUpdate(e){const t=this.handleBridgeActive(this.active.lines,this.active.index);this.event.emit("linesUpdate",t.lines,t.index,this.handleGetActiveIndex(),e)}handleSyncTime(e){if(!this.info.lines.length||(e===void 0&&(e=this.handleGetEffectiveTime()),!Number.isFinite(e)))return;const t=[],n=[];let i=this.info.lines.length;for(let c=0;c<this.info.lines.length;c++){const l=this.info.lines[c];if(l.time.start>e){i=c;break}this.merger.getMergedTime(c)>e&&(t.push(l),n.push(c))}this.state.scanIndex=i,this.active.lines=t,this.active.index=n,this.handleEmitLinesUpdate(!0)}handleUpdateActiveLines(e){let t=!1;const n=[],i=[];for(let c=0;c<this.active.lines.length;c++){const l=this.active.lines[c],h=this.active.index[c];e>=this.merger.getMergedTime(h)?t=!0:(n.push(l),i.push(h))}for(;this.state.scanIndex<this.info.lines.length;){const c=this.info.lines[this.state.scanIndex];if(e>=c.time.start)e<this.merger.getMergedTime(this.state.scanIndex)&&(n.push(c),i.push(this.state.scanIndex),t=!0),this.state.scanIndex++;else break}t&&(this.active.lines=n,this.active.index=i,this.handleEmitLinesUpdate(!1))}onTick=()=>{if(!this.state.playing)return;const e=this.handleGetEffectiveTime();this.handleUpdateActiveLines(e),this.driver.schedule(this.config.current.driver,this.onTick)};updateLyric(e){if(!e)return;let t=e;es.satisfies(e.version,Ht)||(console.warn(`[music-lyric-player] ignored lyric with incompatible version "${e.version}", expected "${Ht}"`),t=new z.Info),this.pause(),this.info=t,this.handleBuildMergedLineEnd(),this.offset.refreshFromMeta(this.info,this.config.current.offset.useMeta),this.config.current.offset.resetTempOnLyricChange&&this.offset.resetTemp(),this.active.lines=[],this.active.index=[],this.state.scanIndex=0,this.time.seek=0,this.event.emit("lyricUpdate",t),this.event.emit("linesUpdate",[],[],-1,!1)}play(e){this.pause(),typeof e=="number"&&Number.isFinite(e)&&(this.time.seek=e,this.handleSyncTime()),this.time.start=performance.now(),this.state.playing=!0,this.onTick(),this.event.emit("play",this.handleGetCurrentTime())}pause(){this.state.playing&&(this.time.seek=this.handleGetCurrentTime(),this.state.playing=!1,this.event.emit("pause",this.time.seek)),this.driver.cancel()}dispose(){this.pause(),this.event.clear(),this.config.event.remove("update",this.onConfigUpdate),this.active.lines=[],this.active.index=[],this.info=new z.Info}updateTempOffset(e){this.offset.setTemp(e),this.handleSyncTime()}matchLinesWithTime(e){const t=e+this.currentOffset,n=[],i=[];for(let c=0;c<this.info.lines.length;c++){const l=this.info.lines[c];if(l.time.start>t)break;this.merger.getMergedTime(c)>t&&(n.push(l),i.push(c))}return this.handleBridgeActive(n,i)}convertContentTime(e){return e-this.currentOffset}get currentPlaying(){return this.state.playing}get currentLines(){return this.handleBridgeActive(this.active.lines,this.active.index).lines}get currentIndex(){return this.handleBridgeActive(this.active.lines,this.active.index).index}get currentActive(){return this.handleGetActiveIndex()}get currentInfo(){return this.info}get currentTime(){return this.handleGetCurrentTime()}get currentOffset(){return this.offset.resolve(this.config.current.offset.global)}}exports.BaseLyricPlayer=ts;exports.BaseLyricPlayerConfig=mr;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ze=require("@music-lyric-player/utils"),zt=ze.freezeObjectDeep({driver:"animation",bridgeActive:!0,mergeWindow:300,mergeLimit:3,offset:{global:0,useMeta:!0,resetTempOnLyricChange:!0}}),dr=Object.freeze(Object.defineProperty({__proto__:null,DEFAULT:zt},Symbol.toStringTag,{value:"Module"}));var Yt=(r=>(r.ChineseSimplified="zh-hans",r.ChineseTraditional="zh-hant",r.English="en",r.Japanese="ja",r.Korean="ko",r.Russian="ru",r.French="fr",r.German="de",r.Spanish="es",r.Italian="it",r.Portuguese="pt",r))(Yt||{});class pr{tag;percent;constructor(e={}){this.tag=e.tag??"",this.percent=e.percent??0}}class Kt{list;constructor(e={}){this.list=e.list??[]}has(e){return this.list.some(t=>t.tag===e)}byType(e){return this.list.find(t=>t.tag===e)}get primary(){let e;for(let t=0,n=this.list.length;t<n;t++)(!e||this.list[t].percent>e.percent)&&(e=this.list[t]);return e}}class Zt{start;end;constructor(e=0,t=0){this.start=e,this.end=t}get duration(){return this.end-this.start}}class Er{time;content;constructor(e={}){this.time=e.time,this.content=e.content??""}}class Ye{time;words;language;constructor(e={}){this.time=e.time,this.words=e.words??[],this.language=e.language}get content(){let e="";for(let t=0,n=this.words.length;t<n;t++)e+=this.words[t].content;return e}}class gr extends Ye{phraseStart;constructor(e={}){super(e),this.phraseStart=e.phraseStart??!1}}class Rr extends Ye{key;constructor(e={}){super(e),this.key=e.key??""}}class vr{ruby;romans;unknowns;constructor(e={}){this.ruby=e.ruby,this.romans=e.romans,this.unknowns=e.unknowns}}var k=(r=>(r.Normal="Normal",r.Space="Space",r))(k||{});class Ir{type="Normal";time;content;language;annotation;stress;constructor(e={}){this.time=e.time,this.content=e.content??"",this.language=e.language,this.annotation=e.annotation,this.stress=e.stress??!1}}class $r{type="Space";count;constructor(e={}){this.count=e.count??1}}var Jt=(r=>(r.Ruby="Ruby",r.Roman="Roman",r.Translate="Translate",r.Unknown="Unknown",r))(Jt||{});const Lr=["Ruby","Roman","Unknown"];class Qt{list;constructor(e={}){this.list=e.list??[]}has(e){return this.list.some(t=>t.kind===e)}all(e){return this.list.filter(t=>t.kind===e)}first(e,t){const n=this.all(e);if(t!==void 0){const i=n.find(c=>c.language===t);if(i)return i}return n[0]}}const H=(r,e)=>({derived:!1,...e,kind:r}),se=(r,e,t,n)=>{const i=[];for(let o=0,h=r.length;o<h;o++){const a=r[o];if(a.type===k.Space)continue;const l=e(a);if(l)for(const s of l){const u=t(s);i.includes(u)||i.push(u)}}const c=[];for(const o of i){let h="",a=0,l,s=!1;for(let u=0,f=r.length;u<f;u++){const E=r[u];if(E.type===k.Space){a+=E.count;continue}const N=e(E)?.find(d=>t(d)===o);N&&(s&&(h+=" ".repeat(a)),h+=N.content,l??=N.language,a=0,s=!0)}s&&c.push(n(o,h,l))}return c},Tr=r=>{const{words:e,annotation:t}=r;for(const n of Lr){const i=t.list.some(o=>o.kind===n&&!o.derived);if(t.list=t.list.filter(o=>!(o.kind===n&&o.derived)),i)continue;let c;switch(n){case"Ruby":c=se(e,o=>{const h=o.annotation?.ruby;return h?[h]:void 0},()=>"",(o,h,a)=>H("Ruby",{content:h,language:a,derived:!0}));break;case"Roman":c=se(e,o=>o.annotation?.romans,o=>o.language??"",(o,h)=>H("Roman",{content:h,language:o||void 0,derived:!0}));break;default:c=se(e,o=>o.annotation?.unknowns,o=>o.key,(o,h,a)=>H("Unknown",{content:h,language:a,key:o,derived:!0}))}t.list.push(...c)}};var er=(r=>(r.Normal="Normal",r.Interlude="Interlude",r))(er||{});class tr{time;constructor(e={}){this.time=e.time??new Zt}}class rr extends tr{type="Normal";agent;words;annotation;constructor(e={}){super(e),this.agent=e.agent,this.words=e.words??[],this.annotation=e.annotation??new Qt,e.languages&&(this.languages=e.languages)}get original(){let e="";for(let t=0,n=this.words.length;t<n;t++){const i=this.words[t];e+=i.type===k.Normal?i.content:" ".repeat(i.count)}return e}#e;get languages(){if(this.#e?.length)return this.#e;const e=new Set;for(let t=0,n=this.words.length;t<n;t++){const i=this.words[t];i.type===k.Normal&&i.language&&e.add(i.language)}return[...e]}set languages(e){this.#e=e}}class Sr extends rr{background;constructor(e={}){super(e),this.background=e.background}}class Nr extends tr{type="Interlude"}var sr=(r=>(r.Offset="Offset",r.Duration="Duration",r.Title="Title",r.Singer="Singer",r.Album="Album",r.Creator="Creator",r.Author="Author",r.Isrc="Isrc",r.Unknown="Unknown",r))(sr||{});const Or=(r,e,t)=>({type:r,key:e,value:t});class nr{list;constructor(e={}){this.list=e.list??[]}has(e){return this.list.some(t=>t.type===e)}all(e){return this.list.filter(t=>t.type===e)}first(e){return this.list.find(t=>t.type===e)}byKey(e){return this.list.filter(t=>t.key===e)}}var ir=(r=>(r.Person="Person",r.Group="Group",r.Other="Other",r.Unknown="Unknown",r))(ir||{});class Ar{id;type;count;names;constructor(e={}){this.id=e.id??"",this.type=e.type??"Unknown",this.count=e.count??0,this.names=e.names??[]}}class wr{id;globalIndex;blockIndex;constructor(e={}){this.id=e.id??"",this.globalIndex=e.globalIndex??0,this.blockIndex=e.blockIndex??0}}class ar{list;constructor(e={}){this.list=e.list??[]}has(e){return this.list.some(t=>t.type===e)}all(e){return this.list.filter(t=>t.type===e)}byId(e){return this.list.find(t=>t.id===e)}get primary(){let e;for(let t=0,n=this.list.length;t<n;t++)(!e||this.list[t].count>e.count)&&(e=this.list[t]);return e}}const or="0.9.0";var lr=(r=>(r.Invalid="Invalid",r.Empty="Empty",r.Normal="Normal",r))(lr||{}),cr=(r=>(r.None="None",r.Line="Line",r.Syllable="Syllable",r))(cr||{});class yr{version=or;type;timing;meta;language;agent;lines;constructor(e={}){this.type=e.type??"Invalid",this.timing=e.timing??"None",this.meta=e.meta??new nr,this.language=e.language??new Kt,this.agent=e.agent??new ar,this.lines=e.lines??[]}}const X=Object.freeze(Object.defineProperty({__proto__:null,Agent:ar,AgentItem:Ar,AgentType:ir,Info:yr,InfoTiming:cr,InfoType:lr,Language:Kt,LanguageItem:pr,LanguageType:Yt,LineAgent:wr,LineAnnotation:Qt,LineAnnotationKind:Jt,LineInterlude:Nr,LineNormal:Sr,LineNormalBase:rr,LineType:er,Meta:nr,MetaType:sr,Time:Zt,Version:or,WordAnnotation:vr,WordAnnotationContent:Er,WordAnnotationItem:Ye,WordNormal:Ir,WordRubyAnnotation:gr,WordSpace:$r,WordType:k,WordUnknownAnnotation:Rr,createLineAnnotationItem:H,createMetaItem:Or,deriveLineAnnotation:Tr},Symbol.toStringTag,{value:"Module"}));class Cr{lines=[];mergedEnd=[];getRawTime(e){const t=this.lines;return e<0||e>=t.length?0:e===t.length-1?1/0:Math.max(t[e].time.end,t[e+1].time.start)}build(e,t,n){this.lines=e;const i=e.length,c=new Array(i);if(i===0){this.mergedEnd=c;return}const o=Math.max(0,t),h=n>0?n:1/0;let a=this.getRawTime(i-1);c[i-1]=a;let l=1;for(let s=i-2;s>=0;s--){const u=this.getRawTime(s);o>0&&l<h&&Math.abs(a-u)<o?(c[s]=Math.max(u,c[s+1]),l++):(c[s]=u,l=1),a=u}this.mergedEnd=c}getMergedTime(e){const t=this.mergedEnd[e];return t===void 0?this.getRawTime(e):t}}class Pr{temp=0;meta=0;setTemp(e){this.temp=Number.isFinite(e)?e:0}resetTemp(){this.temp=0}refreshFromMeta(e,t){if(!t){this.meta=0;return}const n=e.meta.first(X.MetaType.Offset)?.value;this.meta=typeof n=="number"&&Number.isFinite(n)?n:0}resolve(e){const t=e+this.meta+this.temp;return Number.isFinite(t)?t:0}}class qr{frameId=null;timerId=null;schedule(e,t){switch(e){case"animation":this.frameId=globalThis.requestAnimationFrame(t);break;case"timer":this.timerId=globalThis.setTimeout(t,16);break}}cancel(){this.frameId!==null&&(globalThis.cancelAnimationFrame(this.frameId),this.frameId=null),this.timerId!==null&&(globalThis.clearTimeout(this.timerId),this.timerId=null)}}var W={exports:{}},ne,rt;function z(){if(rt)return ne;rt=1;const r="2.0.0",e=256,t=Number.MAX_SAFE_INTEGER||9007199254740991,n=16,i=e-6;return ne={MAX_LENGTH:e,MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:r,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2},ne}var ie,st;function Y(){return st||(st=1,ie=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{}),ie}var nt;function B(){return nt||(nt=1,(function(r,e){const{MAX_SAFE_COMPONENT_LENGTH:t,MAX_SAFE_BUILD_LENGTH:n,MAX_LENGTH:i}=z(),c=Y();e=r.exports={};const o=e.re=[],h=e.safeRe=[],a=e.src=[],l=e.safeSrc=[],s=e.t={};let u=0;const f="[a-zA-Z0-9-]",E=[["\\s",1],["\\d",i],[f,n]],N=S=>{for(const[A,b]of E)S=S.split(`${A}*`).join(`${A}{0,${b}}`).split(`${A}+`).join(`${A}{1,${b}}`);return S},d=(S,A,b)=>{const w=N(A),G=u++;c(S,G,A),s[S]=G,a[G]=A,l[G]=w,o[G]=new RegExp(A,b?"g":void 0),h[G]=new RegExp(w,b?"g":void 0)};d("NUMERICIDENTIFIER","0|[1-9]\\d*"),d("NUMERICIDENTIFIERLOOSE","\\d+"),d("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${f}*`),d("MAINVERSION",`(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})`),d("MAINVERSIONLOOSE",`(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})`),d("PRERELEASEIDENTIFIER",`(?:${a[s.NONNUMERICIDENTIFIER]}|${a[s.NUMERICIDENTIFIER]})`),d("PRERELEASEIDENTIFIERLOOSE",`(?:${a[s.NONNUMERICIDENTIFIER]}|${a[s.NUMERICIDENTIFIERLOOSE]})`),d("PRERELEASE",`(?:-(${a[s.PRERELEASEIDENTIFIER]}(?:\\.${a[s.PRERELEASEIDENTIFIER]})*))`),d("PRERELEASELOOSE",`(?:-?(${a[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${a[s.PRERELEASEIDENTIFIERLOOSE]})*))`),d("BUILDIDENTIFIER",`${f}+`),d("BUILD",`(?:\\+(${a[s.BUILDIDENTIFIER]}(?:\\.${a[s.BUILDIDENTIFIER]})*))`),d("FULLPLAIN",`v?${a[s.MAINVERSION]}${a[s.PRERELEASE]}?${a[s.BUILD]}?`),d("FULL",`^${a[s.FULLPLAIN]}$`),d("LOOSEPLAIN",`[v=\\s]*${a[s.MAINVERSIONLOOSE]}${a[s.PRERELEASELOOSE]}?${a[s.BUILD]}?`),d("LOOSE",`^${a[s.LOOSEPLAIN]}$`),d("GTLT","((?:<|>)?=?)"),d("XRANGEIDENTIFIERLOOSE",`${a[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),d("XRANGEIDENTIFIER",`${a[s.NUMERICIDENTIFIER]}|x|X|\\*`),d("XRANGEPLAIN",`[v=\\s]*(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:${a[s.PRERELEASE]})?${a[s.BUILD]}?)?)?`),d("XRANGEPLAINLOOSE",`[v=\\s]*(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:${a[s.PRERELEASELOOSE]})?${a[s.BUILD]}?)?)?`),d("XRANGE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAIN]}$`),d("XRANGELOOSE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAINLOOSE]}$`),d("COERCEPLAIN",`(^|[^\\d])(\\d{1,${t}})(?:\\.(\\d{1,${t}}))?(?:\\.(\\d{1,${t}}))?`),d("COERCE",`${a[s.COERCEPLAIN]}(?:$|[^\\d])`),d("COERCEFULL",a[s.COERCEPLAIN]+`(?:${a[s.PRERELEASE]})?(?:${a[s.BUILD]})?(?:$|[^\\d])`),d("COERCERTL",a[s.COERCE],!0),d("COERCERTLFULL",a[s.COERCEFULL],!0),d("LONETILDE","(?:~>?)"),d("TILDETRIM",`(\\s*)${a[s.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",d("TILDE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAIN]}$`),d("TILDELOOSE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAINLOOSE]}$`),d("LONECARET","(?:\\^)"),d("CARETTRIM",`(\\s*)${a[s.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",d("CARET",`^${a[s.LONECARET]}${a[s.XRANGEPLAIN]}$`),d("CARETLOOSE",`^${a[s.LONECARET]}${a[s.XRANGEPLAINLOOSE]}$`),d("COMPARATORLOOSE",`^${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]})$|^$`),d("COMPARATOR",`^${a[s.GTLT]}\\s*(${a[s.FULLPLAIN]})$|^$`),d("COMPARATORTRIM",`(\\s*)${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]}|${a[s.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",d("HYPHENRANGE",`^\\s*(${a[s.XRANGEPLAIN]})\\s+-\\s+(${a[s.XRANGEPLAIN]})\\s*$`),d("HYPHENRANGELOOSE",`^\\s*(${a[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${a[s.XRANGEPLAINLOOSE]})\\s*$`),d("STAR","(<|>)?=?\\s*\\*"),d("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),d("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")})(W,W.exports)),W.exports}var ae,it;function Ke(){if(it)return ae;it=1;const r=Object.freeze({loose:!0}),e=Object.freeze({});return ae=n=>n?typeof n!="object"?r:n:e,ae}var oe,at;function ur(){if(at)return oe;at=1;const r=/^[0-9]+$/,e=(n,i)=>{if(typeof n=="number"&&typeof i=="number")return n===i?0:n<i?-1:1;const c=r.test(n),o=r.test(i);return c&&o&&(n=+n,i=+i),n===i?0:c&&!o?-1:o&&!c?1:n<i?-1:1};return oe={compareIdentifiers:e,rcompareIdentifiers:(n,i)=>e(i,n)},oe}var le,ot;function x(){if(ot)return le;ot=1;const r=Y(),{MAX_LENGTH:e,MAX_SAFE_INTEGER:t}=z(),{safeRe:n,t:i}=B(),c=Ke(),{compareIdentifiers:o}=ur();class h{constructor(l,s){if(s=c(s),l instanceof h){if(l.loose===!!s.loose&&l.includePrerelease===!!s.includePrerelease)return l;l=l.version}else if(typeof l!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof l}".`);if(l.length>e)throw new TypeError(`version is longer than ${e} characters`);r("SemVer",l,s),this.options=s,this.loose=!!s.loose,this.includePrerelease=!!s.includePrerelease;const u=l.trim().match(s.loose?n[i.LOOSE]:n[i.FULL]);if(!u)throw new TypeError(`Invalid Version: ${l}`);if(this.raw=l,this.major=+u[1],this.minor=+u[2],this.patch=+u[3],this.major>t||this.major<0)throw new TypeError("Invalid major version");if(this.minor>t||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>t||this.patch<0)throw new TypeError("Invalid patch version");u[4]?this.prerelease=u[4].split(".").map(f=>{if(/^[0-9]+$/.test(f)){const E=+f;if(E>=0&&E<t)return E}return f}):this.prerelease=[],this.build=u[5]?u[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(l){if(r("SemVer.compare",this.version,this.options,l),!(l instanceof h)){if(typeof l=="string"&&l===this.version)return 0;l=new h(l,this.options)}return l.version===this.version?0:this.compareMain(l)||this.comparePre(l)}compareMain(l){return l instanceof h||(l=new h(l,this.options)),this.major<l.major?-1:this.major>l.major?1:this.minor<l.minor?-1:this.minor>l.minor?1:this.patch<l.patch?-1:this.patch>l.patch?1:0}comparePre(l){if(l instanceof h||(l=new h(l,this.options)),this.prerelease.length&&!l.prerelease.length)return-1;if(!this.prerelease.length&&l.prerelease.length)return 1;if(!this.prerelease.length&&!l.prerelease.length)return 0;let s=0;do{const u=this.prerelease[s],f=l.prerelease[s];if(r("prerelease compare",s,u,f),u===void 0&&f===void 0)return 0;if(f===void 0)return 1;if(u===void 0)return-1;if(u===f)continue;return o(u,f)}while(++s)}compareBuild(l){l instanceof h||(l=new h(l,this.options));let s=0;do{const u=this.build[s],f=l.build[s];if(r("build compare",s,u,f),u===void 0&&f===void 0)return 0;if(f===void 0)return 1;if(u===void 0)return-1;if(u===f)continue;return o(u,f)}while(++s)}inc(l,s,u){if(l.startsWith("pre")){if(!s&&u===!1)throw new Error("invalid increment argument: identifier is empty");if(s){const f=`-${s}`.match(this.options.loose?n[i.PRERELEASELOOSE]:n[i.PRERELEASE]);if(!f||f[1]!==s)throw new Error(`invalid identifier: ${s}`)}}switch(l){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",s,u);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",s,u);break;case"prepatch":this.prerelease.length=0,this.inc("patch",s,u),this.inc("pre",s,u);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",s,u),this.inc("pre",s,u);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{const f=Number(u)?1:0;if(this.prerelease.length===0)this.prerelease=[f];else{let E=this.prerelease.length;for(;--E>=0;)typeof this.prerelease[E]=="number"&&(this.prerelease[E]++,E=-2);if(E===-1){if(s===this.prerelease.join(".")&&u===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(f)}}if(s){let E=[s,f];u===!1&&(E=[s]),o(this.prerelease[0],s)===0?isNaN(this.prerelease[1])&&(this.prerelease=E):this.prerelease=E}break}default:throw new Error(`invalid increment argument: ${l}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}return le=h,le}var ce,lt;function j(){if(lt)return ce;lt=1;const r=x();return ce=(t,n,i=!1)=>{if(t instanceof r)return t;try{return new r(t,n)}catch(c){if(!i)return null;throw c}},ce}var ue,ct;function br(){if(ct)return ue;ct=1;const r=j();return ue=(t,n)=>{const i=r(t,n);return i?i.version:null},ue}var he,ut;function Gr(){if(ut)return he;ut=1;const r=j();return he=(t,n)=>{const i=r(t.trim().replace(/^[=v]+/,""),n);return i?i.version:null},he}var fe,ht;function Dr(){if(ht)return fe;ht=1;const r=x();return fe=(t,n,i,c,o)=>{typeof i=="string"&&(o=c,c=i,i=void 0);try{return new r(t instanceof r?t.version:t,i).inc(n,c,o).version}catch{return null}},fe}var me,ft;function xr(){if(ft)return me;ft=1;const r=j();return me=(t,n)=>{const i=r(t,null,!0),c=r(n,null,!0),o=i.compare(c);if(o===0)return null;const h=o>0,a=h?i:c,l=h?c:i,s=!!a.prerelease.length;if(!!l.prerelease.length&&!s){if(!l.patch&&!l.minor)return"major";if(l.compareMain(a)===0)return l.minor&&!l.patch?"minor":"patch"}const f=s?"pre":"";return i.major!==c.major?f+"major":i.minor!==c.minor?f+"minor":i.patch!==c.patch?f+"patch":"prerelease"},me}var de,mt;function _r(){if(mt)return de;mt=1;const r=x();return de=(t,n)=>new r(t,n).major,de}var pe,dt;function Ur(){if(dt)return pe;dt=1;const r=x();return pe=(t,n)=>new r(t,n).minor,pe}var Ee,pt;function Fr(){if(pt)return Ee;pt=1;const r=x();return Ee=(t,n)=>new r(t,n).patch,Ee}var ge,Et;function kr(){if(Et)return ge;Et=1;const r=j();return ge=(t,n)=>{const i=r(t,n);return i&&i.prerelease.length?i.prerelease:null},ge}var Re,gt;function U(){if(gt)return Re;gt=1;const r=x();return Re=(t,n,i)=>new r(t,i).compare(new r(n,i)),Re}var ve,Rt;function jr(){if(Rt)return ve;Rt=1;const r=U();return ve=(t,n,i)=>r(n,t,i),ve}var Ie,vt;function Mr(){if(vt)return Ie;vt=1;const r=U();return Ie=(t,n)=>r(t,n,!0),Ie}var $e,It;function Ze(){if(It)return $e;It=1;const r=x();return $e=(t,n,i)=>{const c=new r(t,i),o=new r(n,i);return c.compare(o)||c.compareBuild(o)},$e}var Le,$t;function Vr(){if($t)return Le;$t=1;const r=Ze();return Le=(t,n)=>t.sort((i,c)=>r(i,c,n)),Le}var Te,Lt;function Xr(){if(Lt)return Te;Lt=1;const r=Ze();return Te=(t,n)=>t.sort((i,c)=>r(c,i,n)),Te}var Se,Tt;function K(){if(Tt)return Se;Tt=1;const r=U();return Se=(t,n,i)=>r(t,n,i)>0,Se}var Ne,St;function Je(){if(St)return Ne;St=1;const r=U();return Ne=(t,n,i)=>r(t,n,i)<0,Ne}var Oe,Nt;function hr(){if(Nt)return Oe;Nt=1;const r=U();return Oe=(t,n,i)=>r(t,n,i)===0,Oe}var Ae,Ot;function fr(){if(Ot)return Ae;Ot=1;const r=U();return Ae=(t,n,i)=>r(t,n,i)!==0,Ae}var we,At;function Qe(){if(At)return we;At=1;const r=U();return we=(t,n,i)=>r(t,n,i)>=0,we}var ye,wt;function et(){if(wt)return ye;wt=1;const r=U();return ye=(t,n,i)=>r(t,n,i)<=0,ye}var Ce,yt;function mr(){if(yt)return Ce;yt=1;const r=hr(),e=fr(),t=K(),n=Qe(),i=Je(),c=et();return Ce=(h,a,l,s)=>{switch(a){case"===":return typeof h=="object"&&(h=h.version),typeof l=="object"&&(l=l.version),h===l;case"!==":return typeof h=="object"&&(h=h.version),typeof l=="object"&&(l=l.version),h!==l;case"":case"=":case"==":return r(h,l,s);case"!=":return e(h,l,s);case">":return t(h,l,s);case">=":return n(h,l,s);case"<":return i(h,l,s);case"<=":return c(h,l,s);default:throw new TypeError(`Invalid operator: ${a}`)}},Ce}var Pe,Ct;function Br(){if(Ct)return Pe;Ct=1;const r=x(),e=j(),{safeRe:t,t:n}=B();return Pe=(c,o)=>{if(c instanceof r)return c;if(typeof c=="number"&&(c=String(c)),typeof c!="string")return null;o=o||{};let h=null;if(!o.rtl)h=c.match(o.includePrerelease?t[n.COERCEFULL]:t[n.COERCE]);else{const E=o.includePrerelease?t[n.COERCERTLFULL]:t[n.COERCERTL];let N;for(;(N=E.exec(c))&&(!h||h.index+h[0].length!==c.length);)(!h||N.index+N[0].length!==h.index+h[0].length)&&(h=N),E.lastIndex=N.index+N[1].length+N[2].length;E.lastIndex=-1}if(h===null)return null;const a=h[2],l=h[3]||"0",s=h[4]||"0",u=o.includePrerelease&&h[5]?`-${h[5]}`:"",f=o.includePrerelease&&h[6]?`+${h[6]}`:"";return e(`${a}.${l}.${s}${u}${f}`,o)},Pe}var qe,Pt;function Wr(){if(Pt)return qe;Pt=1;class r{constructor(){this.max=1e3,this.map=new Map}get(t){const n=this.map.get(t);if(n!==void 0)return this.map.delete(t),this.map.set(t,n),n}delete(t){return this.map.delete(t)}set(t,n){if(!this.delete(t)&&n!==void 0){if(this.map.size>=this.max){const c=this.map.keys().next().value;this.delete(c)}this.map.set(t,n)}return this}}return qe=r,qe}var be,qt;function F(){if(qt)return be;qt=1;const r=/\s+/g;class e{constructor(m,v){if(v=i(v),m instanceof e)return m.loose===!!v.loose&&m.includePrerelease===!!v.includePrerelease?m:new e(m.raw,v);if(m instanceof c)return this.raw=m.value,this.set=[[m]],this.formatted=void 0,this;if(this.options=v,this.loose=!!v.loose,this.includePrerelease=!!v.includePrerelease,this.raw=m.trim().replace(r," "),this.set=this.raw.split("||").map(g=>this.parseRange(g.trim())).filter(g=>g.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const g=this.set[0];if(this.set=this.set.filter(I=>!d(I[0])),this.set.length===0)this.set=[g];else if(this.set.length>1){for(const I of this.set)if(I.length===1&&S(I[0])){this.set=[I];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let m=0;m<this.set.length;m++){m>0&&(this.formatted+="||");const v=this.set[m];for(let g=0;g<v.length;g++)g>0&&(this.formatted+=" "),this.formatted+=v[g].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(m){const g=((this.options.includePrerelease&&E)|(this.options.loose&&N))+":"+m,I=n.get(g);if(I)return I;const R=this.options.loose,$=R?a[l.HYPHENRANGELOOSE]:a[l.HYPHENRANGE];m=m.replace($,te(this.options.includePrerelease)),o("hyphen replace",m),m=m.replace(a[l.COMPARATORTRIM],s),o("comparator trim",m),m=m.replace(a[l.TILDETRIM],u),o("tilde trim",m),m=m.replace(a[l.CARETTRIM],f),o("caret trim",m);let O=m.split(" ").map(P=>b(P,this.options)).join(" ").split(/\s+/).map(P=>ee(P,this.options));R&&(O=O.filter(P=>(o("loose invalid filter",P,this.options),!!P.match(a[l.COMPARATORLOOSE])))),o("range list",O);const T=new Map,y=O.map(P=>new c(P,this.options));for(const P of y){if(d(P))return[P];T.set(P.value,P)}T.size>1&&T.has("")&&T.delete("");const D=[...T.values()];return n.set(g,D),D}intersects(m,v){if(!(m instanceof e))throw new TypeError("a Range is required");return this.set.some(g=>A(g,v)&&m.set.some(I=>A(I,v)&&g.every(R=>I.every($=>R.intersects($,v)))))}test(m){if(!m)return!1;if(typeof m=="string")try{m=new h(m,this.options)}catch{return!1}for(let v=0;v<this.set.length;v++)if(re(this.set[v],m,this.options))return!0;return!1}}be=e;const t=Wr(),n=new t,i=Ke(),c=Z(),o=Y(),h=x(),{safeRe:a,t:l,comparatorTrimReplace:s,tildeTrimReplace:u,caretTrimReplace:f}=B(),{FLAG_INCLUDE_PRERELEASE:E,FLAG_LOOSE:N}=z(),d=p=>p.value==="<0.0.0-0",S=p=>p.value==="",A=(p,m)=>{let v=!0;const g=p.slice();let I=g.pop();for(;v&&g.length;)v=g.every(R=>I.intersects(R,m)),I=g.pop();return v},b=(p,m)=>(p=p.replace(a[l.BUILD],""),o("comp",p,m),p=C(p,m),o("caret",p),p=G(p,m),o("tildes",p),p=L(p,m),o("xrange",p),p=Q(p,m),o("stars",p),p),w=p=>!p||p.toLowerCase()==="x"||p==="*",G=(p,m)=>p.trim().split(/\s+/).map(v=>_(v,m)).join(" "),_=(p,m)=>{const v=m.loose?a[l.TILDELOOSE]:a[l.TILDE];return p.replace(v,(g,I,R,$,O)=>{o("tilde",p,g,I,R,$,O);let T;return w(I)?T="":w(R)?T=`>=${I}.0.0 <${+I+1}.0.0-0`:w($)?T=`>=${I}.${R}.0 <${I}.${+R+1}.0-0`:O?(o("replaceTilde pr",O),T=`>=${I}.${R}.${$}-${O} <${I}.${+R+1}.0-0`):T=`>=${I}.${R}.${$} <${I}.${+R+1}.0-0`,o("tilde return",T),T})},C=(p,m)=>p.trim().split(/\s+/).map(v=>q(v,m)).join(" "),q=(p,m)=>{o("caret",p,m);const v=m.loose?a[l.CARETLOOSE]:a[l.CARET],g=m.includePrerelease?"-0":"";return p.replace(v,(I,R,$,O,T)=>{o("caret",p,I,R,$,O,T);let y;return w(R)?y="":w($)?y=`>=${R}.0.0${g} <${+R+1}.0.0-0`:w(O)?R==="0"?y=`>=${R}.${$}.0${g} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.0${g} <${+R+1}.0.0-0`:T?(o("replaceCaret pr",T),R==="0"?$==="0"?y=`>=${R}.${$}.${O}-${T} <${R}.${$}.${+O+1}-0`:y=`>=${R}.${$}.${O}-${T} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.${O}-${T} <${+R+1}.0.0-0`):(o("no pr"),R==="0"?$==="0"?y=`>=${R}.${$}.${O}${g} <${R}.${$}.${+O+1}-0`:y=`>=${R}.${$}.${O}${g} <${R}.${+$+1}.0-0`:y=`>=${R}.${$}.${O} <${+R+1}.0.0-0`),o("caret return",y),y})},L=(p,m)=>(o("replaceXRanges",p,m),p.split(/\s+/).map(v=>M(v,m)).join(" ")),M=(p,m)=>{p=p.trim();const v=m.loose?a[l.XRANGELOOSE]:a[l.XRANGE];return p.replace(v,(g,I,R,$,O,T)=>{o("xRange",p,g,I,R,$,O,T);const y=w(R),D=y||w($),P=D||w(O),V=P;return I==="="&&V&&(I=""),T=m.includePrerelease?"-0":"",y?I===">"||I==="<"?g="<0.0.0-0":g="*":I&&V?(D&&($=0),O=0,I===">"?(I=">=",D?(R=+R+1,$=0,O=0):($=+$+1,O=0)):I==="<="&&(I="<",D?R=+R+1:$=+$+1),I==="<"&&(T="-0"),g=`${I+R}.${$}.${O}${T}`):D?g=`>=${R}.0.0${T} <${+R+1}.0.0-0`:P&&(g=`>=${R}.${$}.0${T} <${R}.${+$+1}.0-0`),o("xRange return",g),g})},Q=(p,m)=>(o("replaceStars",p,m),p.trim().replace(a[l.STAR],"")),ee=(p,m)=>(o("replaceGTE0",p,m),p.trim().replace(a[m.includePrerelease?l.GTE0PRE:l.GTE0],"")),te=p=>(m,v,g,I,R,$,O,T,y,D,P,V)=>(w(g)?v="":w(I)?v=`>=${g}.0.0${p?"-0":""}`:w(R)?v=`>=${g}.${I}.0${p?"-0":""}`:$?v=`>=${v}`:v=`>=${v}${p?"-0":""}`,w(y)?T="":w(D)?T=`<${+y+1}.0.0-0`:w(P)?T=`<${y}.${+D+1}.0-0`:V?T=`<=${y}.${D}.${P}-${V}`:p?T=`<${y}.${D}.${+P+1}-0`:T=`<=${T}`,`${v} ${T}`.trim()),re=(p,m,v)=>{for(let g=0;g<p.length;g++)if(!p[g].test(m))return!1;if(m.prerelease.length&&!v.includePrerelease){for(let g=0;g<p.length;g++)if(o(p[g].semver),p[g].semver!==c.ANY&&p[g].semver.prerelease.length>0){const I=p[g].semver;if(I.major===m.major&&I.minor===m.minor&&I.patch===m.patch)return!0}return!1}return!0};return be}var Ge,bt;function Z(){if(bt)return Ge;bt=1;const r=Symbol("SemVer ANY");class e{static get ANY(){return r}constructor(s,u){if(u=t(u),s instanceof e){if(s.loose===!!u.loose)return s;s=s.value}s=s.trim().split(/\s+/).join(" "),o("comparator",s,u),this.options=u,this.loose=!!u.loose,this.parse(s),this.semver===r?this.value="":this.value=this.operator+this.semver.version,o("comp",this)}parse(s){const u=this.options.loose?n[i.COMPARATORLOOSE]:n[i.COMPARATOR],f=s.match(u);if(!f)throw new TypeError(`Invalid comparator: ${s}`);this.operator=f[1]!==void 0?f[1]:"",this.operator==="="&&(this.operator=""),f[2]?this.semver=new h(f[2],this.options.loose):this.semver=r}toString(){return this.value}test(s){if(o("Comparator.test",s,this.options.loose),this.semver===r||s===r)return!0;if(typeof s=="string")try{s=new h(s,this.options)}catch{return!1}return c(s,this.operator,this.semver,this.options)}intersects(s,u){if(!(s instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new a(s.value,u).test(this.value):s.operator===""?s.value===""?!0:new a(this.value,u).test(s.semver):(u=t(u),u.includePrerelease&&(this.value==="<0.0.0-0"||s.value==="<0.0.0-0")||!u.includePrerelease&&(this.value.startsWith("<0.0.0")||s.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&s.operator.startsWith(">")||this.operator.startsWith("<")&&s.operator.startsWith("<")||this.semver.version===s.semver.version&&this.operator.includes("=")&&s.operator.includes("=")||c(this.semver,"<",s.semver,u)&&this.operator.startsWith(">")&&s.operator.startsWith("<")||c(this.semver,">",s.semver,u)&&this.operator.startsWith("<")&&s.operator.startsWith(">")))}}Ge=e;const t=Ke(),{safeRe:n,t:i}=B(),c=mr(),o=Y(),h=x(),a=F();return Ge}var De,Gt;function J(){if(Gt)return De;Gt=1;const r=F();return De=(t,n,i)=>{try{n=new r(n,i)}catch{return!1}return n.test(t)},De}var xe,Dt;function Hr(){if(Dt)return xe;Dt=1;const r=F();return xe=(t,n)=>new r(t,n).set.map(i=>i.map(c=>c.value).join(" ").trim().split(" ")),xe}var _e,xt;function zr(){if(xt)return _e;xt=1;const r=x(),e=F();return _e=(n,i,c)=>{let o=null,h=null,a=null;try{a=new e(i,c)}catch{return null}return n.forEach(l=>{a.test(l)&&(!o||h.compare(l)===-1)&&(o=l,h=new r(o,c))}),o},_e}var Ue,_t;function Yr(){if(_t)return Ue;_t=1;const r=x(),e=F();return Ue=(n,i,c)=>{let o=null,h=null,a=null;try{a=new e(i,c)}catch{return null}return n.forEach(l=>{a.test(l)&&(!o||h.compare(l)===1)&&(o=l,h=new r(o,c))}),o},Ue}var Fe,Ut;function Kr(){if(Ut)return Fe;Ut=1;const r=x(),e=F(),t=K();return Fe=(i,c)=>{i=new e(i,c);let o=new r("0.0.0");if(i.test(o)||(o=new r("0.0.0-0"),i.test(o)))return o;o=null;for(let h=0;h<i.set.length;++h){const a=i.set[h];let l=null;a.forEach(s=>{const u=new r(s.semver.version);switch(s.operator){case">":u.prerelease.length===0?u.patch++:u.prerelease.push(0),u.raw=u.format();case"":case">=":(!l||t(u,l))&&(l=u);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),l&&(!o||t(o,l))&&(o=l)}return o&&i.test(o)?o:null},Fe}var ke,Ft;function Zr(){if(Ft)return ke;Ft=1;const r=F();return ke=(t,n)=>{try{return new r(t,n).range||"*"}catch{return null}},ke}var je,kt;function tt(){if(kt)return je;kt=1;const r=x(),e=Z(),{ANY:t}=e,n=F(),i=J(),c=K(),o=Je(),h=et(),a=Qe();return je=(s,u,f,E)=>{s=new r(s,E),u=new n(u,E);let N,d,S,A,b;switch(f){case">":N=c,d=h,S=o,A=">",b=">=";break;case"<":N=o,d=a,S=c,A="<",b="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(i(s,u,E))return!1;for(let w=0;w<u.set.length;++w){const G=u.set[w];let _=null,C=null;if(G.forEach(q=>{q.semver===t&&(q=new e(">=0.0.0")),_=_||q,C=C||q,N(q.semver,_.semver,E)?_=q:S(q.semver,C.semver,E)&&(C=q)}),_.operator===A||_.operator===b||(!C.operator||C.operator===A)&&d(s,C.semver))return!1;if(C.operator===b&&S(s,C.semver))return!1}return!0},je}var Me,jt;function Jr(){if(jt)return Me;jt=1;const r=tt();return Me=(t,n,i)=>r(t,n,">",i),Me}var Ve,Mt;function Qr(){if(Mt)return Ve;Mt=1;const r=tt();return Ve=(t,n,i)=>r(t,n,"<",i),Ve}var Xe,Vt;function es(){if(Vt)return Xe;Vt=1;const r=F();return Xe=(t,n,i)=>(t=new r(t,i),n=new r(n,i),t.intersects(n,i)),Xe}var Be,Xt;function ts(){if(Xt)return Be;Xt=1;const r=J(),e=U();return Be=(t,n,i)=>{const c=[];let o=null,h=null;const a=t.sort((f,E)=>e(f,E,i));for(const f of a)r(f,n,i)?(h=f,o||(o=f)):(h&&c.push([o,h]),h=null,o=null);o&&c.push([o,null]);const l=[];for(const[f,E]of c)f===E?l.push(f):!E&&f===a[0]?l.push("*"):E?f===a[0]?l.push(`<=${E}`):l.push(`${f} - ${E}`):l.push(`>=${f}`);const s=l.join(" || "),u=typeof n.raw=="string"?n.raw:String(n);return s.length<u.length?s:n},Be}var We,Bt;function rs(){if(Bt)return We;Bt=1;const r=F(),e=Z(),{ANY:t}=e,n=J(),i=U(),c=(u,f,E={})=>{if(u===f)return!0;u=new r(u,E),f=new r(f,E);let N=!1;e:for(const d of u.set){for(const S of f.set){const A=a(d,S,E);if(N=N||A!==null,A)continue e}if(N)return!1}return!0},o=[new e(">=0.0.0-0")],h=[new e(">=0.0.0")],a=(u,f,E)=>{if(u===f)return!0;if(u.length===1&&u[0].semver===t){if(f.length===1&&f[0].semver===t)return!0;E.includePrerelease?u=o:u=h}if(f.length===1&&f[0].semver===t){if(E.includePrerelease)return!0;f=h}const N=new Set;let d,S;for(const L of u)L.operator===">"||L.operator===">="?d=l(d,L,E):L.operator==="<"||L.operator==="<="?S=s(S,L,E):N.add(L.semver);if(N.size>1)return null;let A;if(d&&S){if(A=i(d.semver,S.semver,E),A>0)return null;if(A===0&&(d.operator!==">="||S.operator!=="<="))return null}for(const L of N){if(d&&!n(L,String(d),E)||S&&!n(L,String(S),E))return null;for(const M of f)if(!n(L,String(M),E))return!1;return!0}let b,w,G,_,C=S&&!E.includePrerelease&&S.semver.prerelease.length?S.semver:!1,q=d&&!E.includePrerelease&&d.semver.prerelease.length?d.semver:!1;C&&C.prerelease.length===1&&S.operator==="<"&&C.prerelease[0]===0&&(C=!1);for(const L of f){if(_=_||L.operator===">"||L.operator===">=",G=G||L.operator==="<"||L.operator==="<=",d){if(q&&L.semver.prerelease&&L.semver.prerelease.length&&L.semver.major===q.major&&L.semver.minor===q.minor&&L.semver.patch===q.patch&&(q=!1),L.operator===">"||L.operator===">="){if(b=l(d,L,E),b===L&&b!==d)return!1}else if(d.operator===">="&&!n(d.semver,String(L),E))return!1}if(S){if(C&&L.semver.prerelease&&L.semver.prerelease.length&&L.semver.major===C.major&&L.semver.minor===C.minor&&L.semver.patch===C.patch&&(C=!1),L.operator==="<"||L.operator==="<="){if(w=s(S,L,E),w===L&&w!==S)return!1}else if(S.operator==="<="&&!n(S.semver,String(L),E))return!1}if(!L.operator&&(S||d)&&A!==0)return!1}return!(d&&G&&!S&&A!==0||S&&_&&!d&&A!==0||q||C)},l=(u,f,E)=>{if(!u)return f;const N=i(u.semver,f.semver,E);return N>0?u:N<0||f.operator===">"&&u.operator===">="?f:u},s=(u,f,E)=>{if(!u)return f;const N=i(u.semver,f.semver,E);return N<0?u:N>0||f.operator==="<"&&u.operator==="<="?f:u};return We=c,We}var He,Wt;function ss(){if(Wt)return He;Wt=1;const r=B(),e=z(),t=x(),n=ur(),i=j(),c=br(),o=Gr(),h=Dr(),a=xr(),l=_r(),s=Ur(),u=Fr(),f=kr(),E=U(),N=jr(),d=Mr(),S=Ze(),A=Vr(),b=Xr(),w=K(),G=Je(),_=hr(),C=fr(),q=Qe(),L=et(),M=mr(),Q=Br(),ee=Z(),te=F(),re=J(),p=Hr(),m=zr(),v=Yr(),g=Kr(),I=Zr(),R=tt(),$=Jr(),O=Qr(),T=es(),y=ts(),D=rs();return He={parse:i,valid:c,clean:o,inc:h,diff:a,major:l,minor:s,patch:u,prerelease:f,compare:E,rcompare:N,compareLoose:d,compareBuild:S,sort:A,rsort:b,gt:w,lt:G,eq:_,neq:C,gte:q,lte:L,cmp:M,coerce:Q,Comparator:ee,Range:te,satisfies:re,toComparators:p,maxSatisfying:m,minSatisfying:v,minVersion:g,validRange:I,outside:R,gtr:$,ltr:O,intersects:T,simplifyRange:y,subset:D,SemVer:t,re:r.re,src:r.src,tokens:r.t,SEMVER_SPEC_VERSION:e.SEMVER_SPEC_VERSION,RELEASE_TYPES:e.RELEASE_TYPES,compareIdentifiers:n.compareIdentifiers,rcompareIdentifiers:n.rcompareIdentifiers},He}var ns=ss();const Ht=`^${X.Version}`;class is{config=new ze.ConfigManager(zt);event=new ze.Event;state;active;time;info;merger=new Cr;offset=new Pr;driver=new qr;constructor(){this.state={playing:!1,scanIndex:0},this.active={lines:[],index:[]},this.time={start:0,seek:0},this.info=new X.Info,this.config.event.add("update",this.onConfigUpdate)}onConfigUpdate=e=>{const t=e.has("offset.useMeta");t&&this.offset.refreshFromMeta(this.info,this.config.current.offset.useMeta),(t||e.has("offset.global"))&&this.handleSyncTime(),(e.has("mergeWindow")||e.has("mergeLimit"))&&(this.handleBuildMergedLineEnd(),this.handleSyncTime())};handleGetCurrentTime(){return this.state.playing?this.time.seek+(performance.now()-this.time.start):this.time.seek}handleGetEffectiveTime(){return this.handleGetCurrentTime()+this.currentOffset}handleBuildMergedLineEnd(){this.merger.build(this.info.lines,this.config.current.mergeWindow,this.config.current.mergeLimit)}handleGetActiveIndex(){return this.active.index.length>0?this.active.index[0]:-1}handleBridgeActive(e,t){if(!this.config.current.bridgeActive||t.length<2)return{lines:e,index:t};const n=t[0],i=t[t.length-1];if(i-n+1===t.length)return{lines:e,index:t};const c=new Map;for(let a=0;a<t.length;a++)c.set(t[a],e[a]);const o=[],h=[];for(let a=n;a<=i;a++){const l=c.get(a)??this.info.lines[a];l&&(o.push(l),h.push(a))}return{lines:o,index:h}}handleEmitLinesUpdate(e){const t=this.handleBridgeActive(this.active.lines,this.active.index);this.event.emit("linesUpdate",t.lines,t.index,this.handleGetActiveIndex(),e)}handleSyncTime(e){if(!this.info.lines.length||(e===void 0&&(e=this.handleGetEffectiveTime()),!Number.isFinite(e)))return;const t=[],n=[];let i=this.info.lines.length;for(let c=0;c<this.info.lines.length;c++){const o=this.info.lines[c];if(o.time.start>e){i=c;break}this.merger.getMergedTime(c)>e&&(t.push(o),n.push(c))}this.state.scanIndex=i,this.active.lines=t,this.active.index=n,this.handleEmitLinesUpdate(!0)}handleUpdateActiveLines(e){let t=!1;const n=[],i=[];for(let c=0;c<this.active.lines.length;c++){const o=this.active.lines[c],h=this.active.index[c];e>=this.merger.getMergedTime(h)?t=!0:(n.push(o),i.push(h))}for(;this.state.scanIndex<this.info.lines.length;){const c=this.info.lines[this.state.scanIndex];if(e>=c.time.start)e<this.merger.getMergedTime(this.state.scanIndex)&&(n.push(c),i.push(this.state.scanIndex),t=!0),this.state.scanIndex++;else break}t&&(this.active.lines=n,this.active.index=i,this.handleEmitLinesUpdate(!1))}onTick=()=>{if(!this.state.playing)return;const e=this.handleGetEffectiveTime();this.handleUpdateActiveLines(e),this.driver.schedule(this.config.current.driver,this.onTick)};updateLyric(e){if(!e)return;let t=e;ns.satisfies(e.version,Ht)||(console.warn(`[music-lyric-player] ignored lyric with incompatible version "${e.version}", expected "${Ht}"`),t=new X.Info),this.pause(),this.info=t,this.handleBuildMergedLineEnd(),this.offset.refreshFromMeta(this.info,this.config.current.offset.useMeta),this.config.current.offset.resetTempOnLyricChange&&this.offset.resetTemp(),this.active.lines=[],this.active.index=[],this.state.scanIndex=0,this.time.seek=0,this.event.emit("lyricUpdate",t),this.event.emit("linesUpdate",[],[],-1,!1)}play(e){this.pause(),typeof e=="number"&&Number.isFinite(e)&&(this.time.seek=e,this.handleSyncTime()),this.time.start=performance.now(),this.state.playing=!0,this.onTick(),this.event.emit("play",this.handleGetCurrentTime())}pause(){this.state.playing&&(this.time.seek=this.handleGetCurrentTime(),this.state.playing=!1,this.event.emit("pause",this.time.seek)),this.driver.cancel()}dispose(){this.pause(),this.event.clear(),this.config.event.remove("update",this.onConfigUpdate),this.active.lines=[],this.active.index=[],this.info=new X.Info}updateTempOffset(e){this.offset.setTemp(e),this.handleSyncTime()}matchLinesWithTime(e){const t=e+this.currentOffset,n=[],i=[];for(let c=0;c<this.info.lines.length;c++){const o=this.info.lines[c];if(o.time.start>t)break;this.merger.getMergedTime(c)>t&&(n.push(o),i.push(c))}return this.handleBridgeActive(n,i)}convertContentTime(e){return e-this.currentOffset}get currentPlaying(){return this.state.playing}get currentLines(){return this.handleBridgeActive(this.active.lines,this.active.index).lines}get currentIndex(){return this.handleBridgeActive(this.active.lines,this.active.index).index}get currentActive(){return this.handleGetActiveIndex()}get currentInfo(){return this.info}get currentTime(){return this.handleGetCurrentTime()}get currentOffset(){return this.offset.resolve(this.config.current.offset.global)}}exports.BaseLyricPlayer=is;exports.BaseLyricPlayerConfig=dr;
|
|
2
2
|
//# sourceMappingURL=index.comm.js.map
|