diff --git a/backend/package-lock.json b/backend/package-lock.json index d630d9f..813899c 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -16,6 +16,7 @@ "body-parser": "^1.20.2", "cors": "^2.8.5", "express": "^4.19.2", + "express-session": "^1.18.0", "jsonwebtoken": "^9.0.2", "node-mysql": "^0.4.2", "oauth-janishutz-client-server": "file:../../oauth/client/server/dist", @@ -23,6 +24,7 @@ "store.janishutz.com-sdk": "file:../../store/sdk/dist" }, "devDependencies": { + "@types/express-session": "^1.18.0", "typescript": "^5.4.5" } }, @@ -116,6 +118,16 @@ "@types/send": "*" } }, + "node_modules/@types/express-session": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@types/express-session/-/express-session-1.18.0.tgz", + "integrity": "sha512-27JdDRgor6PoYlURY+Y5kCakqp5ulC0kmf7y+QwaY+hv9jEFuQOThgkjyA53RP3jmKuBsH5GR6qEfFmvb8mwOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/express": "*" + } + }, "node_modules/@types/http-errors": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", @@ -548,6 +560,31 @@ "node": ">= 0.10.0" } }, + "node_modules/express-session": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.0.tgz", + "integrity": "sha512-m93QLWr0ju+rOwApSsyso838LQwgfs44QtOP/WBiwtAgPIo/SAh1a5c6nn2BR6mFNZehTpqKDESzP+fRHVbxwQ==", + "license": "MIT", + "dependencies": { + "cookie": "0.6.0", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", + "license": "MIT" + }, "node_modules/finalhandler": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", @@ -956,6 +993,15 @@ "node": ">= 0.8" } }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -1005,6 +1051,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", @@ -1366,6 +1421,18 @@ "node": ">=14.17" } }, + "node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "license": "MIT", + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/underscore": { "version": "1.13.6", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", diff --git a/backend/package.json b/backend/package.json index 24c79f0..f59b0bd 100644 --- a/backend/package.json +++ b/backend/package.json @@ -17,6 +17,7 @@ }, "homepage": "https://github.com/simplePCBuilding/MusicPlayerV2#readme", "devDependencies": { + "@types/express-session": "^1.18.0", "typescript": "^5.4.5" }, "dependencies": { @@ -27,6 +28,7 @@ "body-parser": "^1.20.2", "cors": "^2.8.5", "express": "^4.19.2", + "express-session": "^1.18.0", "jsonwebtoken": "^9.0.2", "node-mysql": "^0.4.2", "oauth-janishutz-client-server": "file:../../oauth/client/server/dist", diff --git a/backend/src/sdk/sdk-stub.ts b/backend/src/sdk/sdk-stub.ts index b442710..695c6f3 100644 --- a/backend/src/sdk/sdk-stub.ts +++ b/backend/src/sdk/sdk-stub.ts @@ -1,11 +1,50 @@ import express from 'express'; +import expressSession from 'express-session'; +import crypto from 'node:crypto'; // TODO: Use also express-session to make it work with getSessionID and session referencing const checkAuth = ( request: express.Request ) => { return true; } +export interface AuthSDKConfig { + token: string; + name: string; + client: string; + backendURL: string; + failReturnURL: string; + useSecureCookie?: boolean; +} + +declare module 'express-session' { + interface SessionData { + isAuth: boolean; + uid: string; + username: string; + email: string; + additionalData: object; + } +} + +const routes = ( app: express.Application, + check_user: ( uid: string ) => Promise, + save_user: ( uid: string, email: string, username: string ) => Promise, + conf?: AuthSDKConfig +): undefined => { + +} + +const getUserData = ( request: express.Request ) => { + if ( !request.session.uid ) { + request.session.uid = crypto.randomUUID(); + request.session.username = 'FOSS-Version'; + request.session.email = 'example@example.com'; + } + return { 'email': request.session.email, 'username': request.session.username, 'uid': request.session.uid, 'id': request.session.id }; +} export default { - checkAuth + checkAuth, + routes, + getUserData } \ No newline at end of file diff --git a/backend/src/sdk/store-sdk-stub.ts b/backend/src/sdk/store-sdk-stub.ts index 6ad9010..87d4986 100644 --- a/backend/src/sdk/store-sdk-stub.ts +++ b/backend/src/sdk/store-sdk-stub.ts @@ -3,9 +3,14 @@ const getSubscriptions = ( uid: string ) => { 'id': 'com.janishutz.MusicPlayer.subscription', 'expires': new Date().getTime() + 200000, 'status': true - } ] + } ]; +} + +const configure = ( config: object ) => { + } export default { - getSubscriptions + getSubscriptions, + configure } \ No newline at end of file diff --git a/old/backend/app.js b/old/backend/app.js deleted file mode 100644 index 05304fe..0000000 --- a/old/backend/app.js +++ /dev/null @@ -1,184 +0,0 @@ -const express = require( 'express' ); -let app = express(); -const path = require( 'path' ); -const expressSession = require( 'express-session' ); -const fs = require( 'fs' ); -const bodyParser = require( 'body-parser' ); -// const favicon = require( 'serve-favicon' ); - -const authKey = '' + fs.readFileSync( path.join( __dirname + '/authorizationKey.txt' ) ); - -app.use( expressSession ( { - secret: 'akgfsdkgfösdolfgslöodfvolwseifvoiwefö', - resave: true, - saveUninitialized: true -} ) ); -app.use( bodyParser.urlencoded( { extended: false } ) ); -app.use( bodyParser.json() ); -// app.use( favicon( path.join( __dirname + '' ) ) ); - -let connectedClients = {}; -let currentDetails = { - 'songQueue': [], - 'playingSong': {}, - 'pos': 0, - 'isPlaying': false, - 'queuePos': 0, -}; - -app.get( '/', ( request, response ) => { - response.sendFile( path.join( __dirname + '/ui/index.html' ) ); -} ); - -app.get( '/showcase.js', ( request, response ) => { - response.sendFile( path.join( __dirname + '/ui/showcase.js' ) ); -} ); - -app.get( '/showcase.css', ( request, response ) => { - response.sendFile( path.join( __dirname + '/ui/showcase.css' ) ); -} ); - -app.post( '/authSSE', ( req, res ) => { - if ( req.body.authKey === authKey ) { - req.session.isAuth = true; - res.send( 'ok' ); - } else { - res.send( 'hello' ); - } -} ); - -app.post( '/fancy/auth', ( req, res ) => { - if ( req.body.key === authKey ) { - req.session.isAuth = true; - res.redirect( '/fancy' ); - } else { - res.send( 'wrong' ); - } -} ); - -app.get( '/fancy', ( req, res ) => { - if ( req.session.isAuth ) { - res.sendFile( path.join( __dirname + '/ui/fancy/showcase.html' ) ); - } else { - res.sendFile( path.join( __dirname + '/ui/fancy/auth.html' ) ); - } -} ); - -app.get( '/fancy/showcase.js', ( req, res ) => { - if ( req.session.isAuth ) { - res.sendFile( path.join( __dirname + '/ui/fancy/showcase.js' ) ); - } else { - res.redirect( '/' ); - } -} ); - -app.get( '/fancy/showcase.css', ( req, res ) => { - if ( req.session.isAuth ) { - res.sendFile( path.join( __dirname + '/ui/fancy/showcase.css' ) ); - } else { - res.redirect( '/' ); - } -} ); - -app.get( '/fancy/backgroundAnim.css', ( req, res ) => { - if ( req.session.isAuth ) { - res.sendFile( path.join( __dirname + '/ui/fancy/backgroundAnim.css' ) ); - } else { - res.redirect( '/' ); - } -} ); - -let connectedMain = {}; - -app.get( '/mainNotifier', ( req, res ) => { - const ipRetrieved = req.headers[ 'x-forwarded-for' ]; - const ip = ipRetrieved ? ipRetrieved.split( /, / )[ 0 ] : req.connection.remoteAddress; - if ( req.session.isAuth ) { - res.writeHead( 200, { - 'Content-Type': 'text/event-stream', - 'Cache-Control': 'no-cache', - 'Connection': 'keep-alive', - } ); - res.status( 200 ); - res.flushHeaders(); - let det = { 'type': 'basics' }; - res.write( `data: ${ JSON.stringify( det ) }\n\n` ); - connectedMain = res; - } else { - res.send( 'wrong' ); - } -} ); - -// STATUS UPDATE from the client display to send to main ui -// Send update if page is closed -const allowedMainUpdates = [ 'blur', 'visibility' ]; -app.post( '/clientStatusUpdate', ( req, res ) => { - if ( allowedMainUpdates.includes( req.body.type ) ) { - const ipRetrieved = req.headers[ 'x-forwarded-for' ]; - const ip = ipRetrieved ? ipRetrieved.split( /, / )[ 0 ] : req.connection.remoteAddress; - sendClientUpdate( req.body.type, ip ); - res.send( 'ok' ); - } else { - res.status( 400 ).send( 'ERR_UNKNOWN_TYPE' ); - } -} ); - -const sendClientUpdate = ( update, ip ) => { - try { - connectedMain.write( 'data: ' + JSON.stringify( { 'type': update, 'ip': ip } ) + '\n\n' ); - } catch ( err ) {} -} - - -app.post( '/connect', ( request, response ) => { - if ( request.body.authKey === authKey ) { - request.session.authorized = true; - response.send( 'Handshake OK' ); - } else { - response.status( 403 ).send( 'AuthKey wrong' ); - } -} ); - -app.get( '/clientDisplayNotifier', ( req, res ) => { - res.writeHead( 200, { - 'Content-Type': 'text/event-stream', - 'Cache-Control': 'no-cache', - 'Connection': 'keep-alive', - } ); - res.status( 200 ); - res.flushHeaders(); - let det = { 'type': 'basics', 'data': currentDetails }; - res.write( `data: ${ JSON.stringify( det ) }\n\n` ); - connectedClients[ req.session.id ] = res; - req.on( 'close', () => { - connectedClients.splice( Object.keys( connectedClients ).indexOf( req.session.id ), 1 ); - } ); -} ); - -const sendUpdate = ( update ) => { - for ( let client in connectedClients ) { - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': update, 'data': currentDetails[ update ] } ) + '\n\n' ); - } -}; - -const allowedTypes = [ 'playingSong', 'isPlaying', 'songQueue', 'pos', 'queuePos' ]; -app.post( '/statusUpdate', ( req, res ) => { - if ( req.body.authKey === authKey ) { - if ( allowedTypes.includes( req.body.type ) ) { - currentDetails[ req.body.type ] = req.body.data - res.send( 'thanks' ); - sendUpdate( req.body.type ); - } else { - res.status( 400 ).send( 'incorrect request' ); - } - } else { - res.status( 403 ).send( 'Unauthorized' ); - } -} ); - -app.use( ( request, response, next ) => { - response.sendFile( path.join( __dirname + '' ) ) -} ); - -const PORT = process.env.PORT || 3000; -app.listen( PORT ); \ No newline at end of file diff --git a/old/backend/authorizationKey.txt b/old/backend/authorizationKey.txt deleted file mode 100644 index 0169bdf..0000000 --- a/old/backend/authorizationKey.txt +++ /dev/null @@ -1 +0,0 @@ -gaöwovwef89voawö8p9 odövefw8öoaewpf89wec \ No newline at end of file diff --git a/old/backend/package-lock.json b/old/backend/package-lock.json deleted file mode 100644 index ead9d9a..0000000 --- a/old/backend/package-lock.json +++ /dev/null @@ -1,752 +0,0 @@ -{ - "name": "backend", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "backend", - "dependencies": { - "body-parser": "^1.20.2", - "express": "^4.18.2", - "express-session": "^1.17.3", - "express-static": "^1.2.6", - "serve-favicon": "^2.5.0" - } - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" - }, - "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", - "dependencies": { - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", - "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.6.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express-session": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz", - "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==", - "dependencies": { - "cookie": "0.4.2", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/express-session/node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express-static": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/express-static/-/express-static-1.2.6.tgz", - "integrity": "sha512-pmp8fSe+bCxGCTk5+X6HzIF2APYMvrAq3Y7sT/WOELc0JZZxJhMTVgCbxcoUgMRBSqnQ9EfTw/Uv3J1ONoIAuA==", - "dependencies": { - "mime2": "latest" - }, - "bin": { - "express-static": "bin/server.js" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", - "dependencies": { - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", - "dependencies": { - "get-intrinsic": "^1.2.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime2": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/mime2/-/mime2-0.0.11.tgz", - "integrity": "sha512-Ch599Y8U4vUgG9AaQgLEnIdXRRLoZPfjAdWFDLYePBEJS1nsS43H2pzbZn0u8lkbYx+yInuKxLsUEgM3fa9ZLQ==" - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/serve-favicon": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz", - "integrity": "sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA==", - "dependencies": { - "etag": "~1.8.1", - "fresh": "0.5.2", - "ms": "2.1.1", - "parseurl": "~1.3.2", - "safe-buffer": "5.1.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-favicon/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" - }, - "node_modules/serve-favicon/node_modules/safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", - "dependencies": { - "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "dependencies": { - "random-bytes": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "engines": { - "node": ">= 0.8" - } - } - } -} diff --git a/old/backend/package.json b/old/backend/package.json deleted file mode 100644 index f5c343d..0000000 --- a/old/backend/package.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "dependencies": { - "body-parser": "^1.20.2", - "express": "^4.18.2", - "express-session": "^1.17.3", - "express-static": "^1.2.6", - "serve-favicon": "^2.5.0" - } -} diff --git a/old/backend/ui/fancy/auth.html b/old/backend/ui/fancy/auth.html deleted file mode 100644 index 93fe795..0000000 --- a/old/backend/ui/fancy/auth.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - Authenticate - Fancy Remote Display - - - -
-

Authenticate - Fancy Remote Display

-
- - - -
-
- - \ No newline at end of file diff --git a/old/backend/ui/fancy/backgroundAnim.css b/old/backend/ui/fancy/backgroundAnim.css deleted file mode 100644 index 59d4fba..0000000 --- a/old/backend/ui/fancy/backgroundAnim.css +++ /dev/null @@ -1,44 +0,0 @@ -.background { - position: fixed; - left: -50vw; - width: 200vw; - height: 200vw; - top: -50vw; - z-index: -1; - filter: blur(10px); - background: conic-gradient( blue, green, red, blue ); - animation: gradientAnim 10s infinite linear; - background-position: center; -} - -.beat, .beat-manual { - height: 100%; - width: 100%; - background-color: rgba( 0, 0, 0, 0.15 ); - display: none; -} - -.beat { - animation: beatAnim 0.6s infinite linear; -} - -@keyframes beatAnim { - 0% { - background-color: rgba( 0, 0, 0, 0.2 ); - } - 20% { - background-color: rgba( 0, 0, 0, 0 ); - } - 100% { - background-color: rgba( 0, 0, 0, 0.2 ); - } -} - -@keyframes gradientAnim { - from { - transform: rotate( 0deg ); - } - to { - transform: rotate( 360deg ); - } -} \ No newline at end of file diff --git a/old/backend/ui/fancy/showcase.css b/old/backend/ui/fancy/showcase.css deleted file mode 100644 index bc3c4b3..0000000 --- a/old/backend/ui/fancy/showcase.css +++ /dev/null @@ -1,208 +0,0 @@ -.material-symbols-outlined { - font-variation-settings: - 'FILL' 0, - 'wght' 400, - 'GRAD' 0, - 'opsz' 24 -} - -body, html { - width: 100%; - height: 100%; - margin: 0; - padding: 0; - color: white; -} - -body { - font-family: sans-serif; -} - -.content { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.playing-symbols { - position: absolute; - left: 10vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; - width: 5vw; - height: 5vw; - background-color: rgba( 0, 0, 0, 0.6 ); -} - -.playing-symbols-wrapper { - width: 4vw; - height: 5vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; -} - -.playing-bar { - height: 60%; - background-color: white; - width: 10%; - border-radius: 50px; - margin: auto; -} - -#bar-1 { - animation: music-playing 0.9s infinite ease-in-out; -} - -#bar-2 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.3s; -} - -#bar-3 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.6s; -} - -@keyframes music-playing { - 0% { - transform: scaleY( 1 ); - } - 50% { - transform: scaleY( 0.5 ); - } - 100% { - transform: scaleY( 1 ); - } -} - -.song-list-wrapper { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.song-list { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - width: 80%; - margin: 2px; - padding: 1vh; - border: 1px white solid; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.song-details-wrapper { - margin: 0; - display: block; - margin-left: 10px; - margin-right: auto; -} - -.song-list .song-image { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw; -} - -.pause-icon { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw !important; - user-select: none; -} - -.current-song-wrapper { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - height: 55vh; - width: 100%; - margin-bottom: 0.5%; - margin-top: 0.25%; -} - -.current-song { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - margin-top: 1vh; - padding: 1vh; - text-align: center; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.fancy-view-song-art { - height: 30vh; - width: 30vh; - object-fit: cover; - object-position: center; - margin-bottom: 10px; - font-size: 30vh !important; -} - -#app { - background-color: rgba( 0, 0, 0, 0 ); -} - -#progress, #progress::-webkit-progress-bar { - background-color: rgba(45, 28, 145); - color: rgba(45, 28, 145); - width: 30vw; - border: none; - border-radius: 0px; - accent-color: white; - -webkit-appearance: none; - appearance: none; -} - -#progress::-moz-progress-bar { - background-color: white; -} - -#progress::-webkit-progress-value { - background-color: white !important; -} - -.mode-selector-wrapper { - opacity: 0; - position: fixed; - right: 0.5%; - top: 0.5%; - padding: 0.5%; -} - -.mode-selector-wrapper:hover { - opacity: 1; -} - -.dancing-style { - font-size: 250%; - margin: 0; - font-weight: bolder; -} - -.info { - position: fixed; - font-size: 12px; - transform: rotate(270deg); - left: -150px; - margin: 0; - padding: 0; - top: 50%; -} \ No newline at end of file diff --git a/old/backend/ui/fancy/showcase.html b/old/backend/ui/fancy/showcase.html deleted file mode 100644 index 86973e6..0000000 --- a/old/backend/ui/fancy/showcase.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - Showcase - MusicPlayerV2 - - - - - -
Designed and developed by Janis Hutz https://janishutz.com
-
-
-
- music_note - - -
- -

{{ playingSong.title }}

-

{{ playingSong.dancingStyle }}

-

{{ playingSong.artist }}

-
-
-
- -
-
-
- music_note - - -
-
-
-
-
-
-
- pause -
-

{{ song.title }}

-

{{ song.artist }}

-
-
- {{ getTimeUntil( song ) }} -
-
- -
-
-
-

Loading...

-
-
-
-
-
-
- - - - - - \ No newline at end of file diff --git a/old/backend/ui/fancy/showcase.js b/old/backend/ui/fancy/showcase.js deleted file mode 100644 index 6af6903..0000000 --- a/old/backend/ui/fancy/showcase.js +++ /dev/null @@ -1,361 +0,0 @@ -// eslint-disable-next-line no-undef -const { createApp } = Vue; - -createApp( { - data() { - return { - hasLoaded: false, - songs: [], - playingSong: {}, - isPlaying: false, - pos: 0, - queuePos: 0, - colourPalette: [], - progressBar: 0, - timeTracker: null, - visualizationSettings: 'mic', - micAnalyzer: null, - beatDetected: false, - colorThief: null, - lastDispatch: new Date().getTime() - 5000, - isReconnecting: false, - }; - }, - computed: { - songQueue() { - let ret = []; - let pos = 0; - for ( let song in this.songs ) { - if ( pos >= this.queuePos ) { - ret.push( this.songs[ song ] ); - } - pos += 1; - } - return ret; - }, - getTimeUntil() { - return ( song ) => { - let timeRemaining = 0; - for ( let i = this.queuePos; i < Object.keys( this.songs ).length - 1; i++ ) { - if ( this.songs[ i ] == song ) { - break; - } - timeRemaining += parseInt( this.songs[ i ].duration ); - } - if ( this.isPlaying ) { - if ( timeRemaining === 0 ) { - return 'Currently playing'; - } else { - return 'Playing in less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min'; - } - } else { - if ( timeRemaining === 0 ) { - return 'Plays next'; - } else { - return 'Playing less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min after starting to play'; - } - } - } - } - }, - methods: { - startTimeTracker () { - this.timeTracker = setInterval( () => { - this.pos = ( new Date().getTime() - this.playingSong.startTime ) / 1000 + this.oldPos; - this.progressBar = ( this.pos / this.playingSong.duration ) * 1000; - if ( isNaN( this.progressBar ) ) { - this.progressBar = 0; - } - }, 100 ); - }, - stopTimeTracker () { - clearInterval( this.timeTracker ); - this.oldPos = this.pos; - }, - getImageData() { - return new Promise( ( resolve, reject ) => { - if ( this.playingSong.hasCoverArt ) { - setTimeout( () => { - const img = document.getElementById( 'current-image' ); - if ( img.complete ) { - resolve( this.colorThief.getPalette( img ) ); - } else { - img.addEventListener( 'load', () => { - resolve( this.colorThief.getPalette( img ) ); - } ); - } - }, 500 ); - } else { - reject( 'no image' ); - } - } ); - }, - connect() { - this.colorThief = new ColorThief(); - let source = new EventSource( '/clientDisplayNotifier', { withCredentials: true } ); - source.onmessage = ( e ) => { - let data; - try { - data = JSON.parse( e.data ); - } catch ( err ) { - data = { 'type': e.data }; - } - if ( data.type === 'basics' ) { - this.isPlaying = data.data.isPlaying ?? false; - this.playingSong = data.data.playingSong ?? {}; - this.songs = data.data.songQueue ?? []; - this.pos = data.data.pos ?? 0; - this.oldPos = data.data.pos ?? 0; - this.progressBar = this.pos / this.playingSong.duration * 1000; - this.queuePos = data.data.queuePos ?? 0; - this.getImageData().then( palette => { - this.colourPalette = palette; - this.handleBackground(); - } ).catch( () => { - this.colourPalette = [ { 'r': 255, 'g': 0, 'b': 0 }, { 'r': 0, 'g': 255, 'b': 0 }, { 'r': 0, 'g': 0, 'b': 255 } ]; - this.handleBackground(); - } ); - } else if ( data.type === 'pos' ) { - this.pos = data.data; - this.oldPos = data.data; - this.progressBar = data.data / this.playingSong.duration * 1000; - } else if ( data.type === 'isPlaying' ) { - this.isPlaying = data.data; - this.handleBackground(); - } else if ( data.type === 'songQueue' ) { - this.songs = data.data; - } else if ( data.type === 'playingSong' ) { - this.playingSong = data.data; - this.getImageData().then( palette => { - this.colourPalette = palette; - this.handleBackground(); - } ).catch( () => { - this.colourPalette = [ [ 255, 0, 0 ], [ 0, 255, 0 ], [ 0, 0, 255 ] ]; - this.handleBackground(); - } ); - } else if ( data.type === 'queuePos' ) { - this.queuePos = data.data; - } - }; - - source.onopen = () => { - this.isReconnecting = false; - this.hasLoaded = true; - }; - - let self = this; - - source.addEventListener( 'error', function( e ) { - if ( e.eventPhase == EventSource.CLOSED ) source.close(); - - if ( e.target.readyState == EventSource.CLOSED ) { - console.log( 'disconnected' ); - } - - // TODO: Notify about disconnect - setTimeout( () => { - if ( !self.isReconnecting ) { - self.isReconnecting = true; - self.tryReconnect(); - } - }, 1000 ); - }, false ); - }, - tryReconnect() { - const int = setInterval( () => { - if ( !this.isReconnecting ) { - clearInterval( int ); - } else { - connectToSSESource(); - } - }, 1000 ); - }, - handleBackground() { - let colourDetails = []; - let colours = []; - let differentEnough = true; - if ( this.colourPalette[ 0 ] ) { - for ( let i in this.colourPalette ) { - for ( let colour in colourDetails ) { - const colourDiff = ( Math.abs( colourDetails[ colour ][ 0 ] - this.colourPalette[ i ][ 0 ] ) / 255 - + Math.abs( colourDetails[ colour ][ 1 ] - this.colourPalette[ i ][ 1 ] ) / 255 - + Math.abs( colourDetails[ colour ][ 2 ] - this.colourPalette[ i ][ 2 ] ) / 255 ) / 3 * 100; - if ( colourDiff > 15 ) { - differentEnough = true; - } - } - if ( differentEnough ) { - colourDetails.push( this.colourPalette[ i ] ); - colours.push( 'rgb(' + this.colourPalette[ i ][ 0 ] + ',' + this.colourPalette[ i ][ 1 ] + ',' + this.colourPalette[ i ][ 2 ] + ')' ); - } - differentEnough = false; - } - } - let outColours = 'conic-gradient('; - if ( colours.length < 3 ) { - for ( let i = 0; i < 3; i++ ) { - if ( colours[ i ] ) { - outColours += colours[ i ] + ','; - } else { - if ( i === 0 ) { - outColours += 'blue,'; - } else if ( i === 1 ) { - outColours += 'green,'; - } else if ( i === 2 ) { - outColours += 'red,'; - } - } - } - } else if ( colours.length < 11 ) { - for ( let i in colours ) { - outColours += colours[ i ] + ','; - } - } else { - for ( let i = 0; i < 10; i++ ) { - outColours += colours[ i ] + ','; - } - } - outColours += colours[ 0 ] ?? 'blue' + ')'; - - $( '#background' ).css( 'background', outColours ); - this.setVisualization(); - }, - setVisualization () { - if ( Object.keys( this.playingSong ).length > 0 ) { - if ( this.visualizationSettings === 'bpm' ) { - if ( this.playingSong.bpm && this.isPlaying ) { - $( '.beat' ).show(); - $( '.beat' ).css( 'animation-duration', 60 / this.playingSong.bpm ); - $( '.beat' ).css( 'animation-delay', this.pos % ( 60 / this.playingSong.bpm * this.pos ) + this.playingSong.bpmOffset - ( 60 / this.playingSong.bpm * this.pos / 2 ) ); - } else { - $( '.beat' ).hide(); - } - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - } else if ( this.visualizationSettings === 'off' ) { - $( '.beat' ).hide(); - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - } else if ( this.visualizationSettings === 'mic' ) { - $( '.beat-manual' ).hide(); - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - this.micAudioHandler(); - } - } else { - console.log( 'not playing yet' ); - } - }, - micAudioHandler () { - const audioContext = new ( window.AudioContext || window.webkitAudioContext )(); - const analyser = audioContext.createAnalyser(); - analyser.fftSize = 256; - const bufferLength = analyser.frequencyBinCount; - const dataArray = new Uint8Array( bufferLength ); - - navigator.mediaDevices.getUserMedia( { audio: true } ).then( ( stream ) => { - const mic = audioContext.createMediaStreamSource( stream ); - mic.connect( analyser ); - analyser.getByteFrequencyData( dataArray ); - let prevSpectrum = null; - let threshold = 10; // Adjust as needed - this.beatDetected = false; - this.micAnalyzer = setInterval( () => { - analyser.getByteFrequencyData( dataArray ); - // Convert the frequency data to a numeric array - const currentSpectrum = Array.from( dataArray ); - - if ( prevSpectrum ) { - // Calculate the spectral flux - const flux = this.calculateSpectralFlux( prevSpectrum, currentSpectrum ); - - if ( flux > threshold && !this.beatDetected ) { - // Beat detected - this.beatDetected = true; - this.animateBeat(); - } - } - prevSpectrum = currentSpectrum; - }, 20 ); - } ); - }, - animateBeat () { - $( '.beat-manual' ).stop(); - const duration = Math.ceil( 60 / ( this.playingSong.bpm ?? 180 ) * 500 ) - 50; - $( '.beat-manual' ).fadeIn( 50 ); - setTimeout( () => { - $( '.beat-manual' ).fadeOut( duration ); - setTimeout( () => { - $( '.beat-manual' ).stop(); - this.beatDetected = false; - }, duration ); - }, 50 ); - }, - calculateSpectralFlux( prevSpectrum, currentSpectrum ) { - let flux = 0; - - for ( let i = 0; i < prevSpectrum.length; i++ ) { - const diff = currentSpectrum[ i ] - prevSpectrum[ i ]; - flux += Math.max( 0, diff ); - } - - return flux; - }, - notifier() { - if ( parseInt( this.lastDispatch ) + 5000 < new Date().getTime() ) { - - } - Notification.requestPermission(); - - console.warn( '[ notifier ]: Status is now enabled \n\n-> Any leaving or tampering with the website will send a notification to the host' ); - // Detect if window is currently in focus - window.onblur = () => { - this.sendNotification( 'blur' ); - } - - // Detect if browser window becomes hidden (also with blur event) - document.onvisibilitychange = () => { - if ( document.visibilityState === 'hidden' ) { - this.sendNotification( 'visibility' ); - } - }; - }, - sendNotification( notification ) { - let fetchOptions = { - method: 'post', - body: JSON.stringify( { 'type': notification } ), - headers: { - 'Content-Type': 'application/json', - 'charset': 'utf-8' - }, - }; - fetch( '/clientStatusUpdate', fetchOptions ).catch( err => { - console.error( err ); - } ); - - new Notification( 'YOU ARE UNDER SURVEILLANCE', { - body: 'Please return to the original webpage immediately!', - requireInteraction: true, - } ) - } - }, - mounted() { - this.connect(); - this.notifier(); - // if ( this.visualizationSettings === 'mic' ) { - // this.micAudioHandler(); - // } - }, - watch: { - isPlaying( value ) { - if ( value ) { - this.startTimeTracker(); - } else { - this.stopTimeTracker(); - } - } - } -} ).mount( '#app' ); diff --git a/old/backend/ui/index.html b/old/backend/ui/index.html deleted file mode 100644 index ecd1587..0000000 --- a/old/backend/ui/index.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - Showcase - MusicPlayerV2 - - - - -
Designed and developed by Janis Hutz https://janishutz.com
-
-

Loading...

-

Please wait

-
-
-
-
- music_note - -
- -

{{ playingSong.title }}

-

{{ playingSong.dancingStyle }}

-

{{ playingSong.artist }}

-
-
-
-
-
-

{{ song.title }}

-

{{ song.artist }}

-
-
- {{ getTimeUntil( song ) }} -
-
- -
-
-
-

Loading...

-
-
- - - - - - \ No newline at end of file diff --git a/old/backend/ui/showcase.css b/old/backend/ui/showcase.css deleted file mode 100644 index 24bdd56..0000000 --- a/old/backend/ui/showcase.css +++ /dev/null @@ -1,188 +0,0 @@ -.material-symbols-outlined { - font-variation-settings: - 'FILL' 0, - 'wght' 400, - 'GRAD' 0, - 'opsz' 24 -} - -body, html { - width: 100%; - height: 100%; - margin: 0; - padding: 0; - color: white; - background-color: rgb(29, 29, 29); -} - -body { - font-family: sans-serif; -} - -.content { - width: 100%; - display: none; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.loaded { - display: block; -} - -.loading { - display: flex; - height: 100vh; -} - -.playing-symbols { - position: absolute; - left: 10vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; - width: 5vw; - height: 5vw; - background-color: rgba( 0, 0, 0, 0.6 ); -} - -.playing-symbols-wrapper { - width: 4vw; - height: 5vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; -} - -.song-list-wrapper { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - margin-bottom: 5%; -} - -.song-list { - display: flex; - flex-direction: row; - align-items: center; - width: 80%; - margin: 2px; - padding: 1vh; - border: 1px white solid; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.song-details-wrapper { - margin: 0; - display: block; - margin-left: 10px; - margin-right: auto; - width: 65%; -} - -.song-list .song-image { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw; -} - -.pause-icon { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw !important; - user-select: none; -} - -.current-song-wrapper { - display: flex; - align-items: center; - flex-direction: column; - width: 100%; - margin-bottom: 2%; - margin-top: 1%; -} - -.current-song { - display: flex; - align-items: center; - flex-direction: column; - margin-top: 1vh; - padding: 1vh; - max-width: 80%; - text-align: center; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.fancy-view-song-art { - height: 30vh; - width: 30vh; - object-fit: cover; - object-position: center; - margin-bottom: 10px; - font-size: 30vh !important; -} - -#app { - background-color: rgba( 0, 0, 0, 0 ); -} - -#progress, #progress::-webkit-progress-bar { - background-color: rgba(45, 28, 145); - color: rgba(45, 28, 145); - width: 30vw; - border: none; - border-radius: 0px; - accent-color: white; - -webkit-appearance: none; - appearance: none; -} - -#progress::-moz-progress-bar { - background-color: white; -} - -#progress::-webkit-progress-value { - background-color: white !important; -} - -.mode-selector-wrapper { - opacity: 0; - position: fixed; - right: 0.5%; - top: 0.5%; - padding: 0.5%; -} - -.mode-selector-wrapper:hover { - opacity: 1; -} - -.dancing-style { - font-size: 250%; - margin: 0; - font-weight: bolder; -} - -.info { - position: fixed; - font-size: 12px; - transform: rotate(270deg); - left: -150px; - margin: 0; - padding: 0; - top: 50%; -} - -.time-until { - width: 30%; - text-align: end; -} \ No newline at end of file diff --git a/old/backend/ui/showcase.js b/old/backend/ui/showcase.js deleted file mode 100644 index 90796db..0000000 --- a/old/backend/ui/showcase.js +++ /dev/null @@ -1,159 +0,0 @@ -// eslint-disable-next-line no-undef -const { createApp } = Vue; - -createApp( { - data() { - return { - hasLoaded: false, - songs: [], - playingSong: {}, - isPlaying: false, - pos: 0, - queuePos: 0, - colourPalette: [], - progressBar: 0, - timeTracker: null, - isReconnecting: false, - }; - }, - computed: { - songQueue() { - let ret = []; - let pos = 0; - for ( let song in this.songs ) { - if ( pos >= this.queuePos ) { - ret.push( this.songs[ song ] ); - } - pos += 1; - } - return ret; - }, - getTimeUntil() { - return ( song ) => { - let timeRemaining = 0; - for ( let i = this.queuePos; i < Object.keys( this.songs ).length; i++ ) { - if ( this.songs[ i ] == song ) { - break; - } - timeRemaining += parseInt( this.songs[ i ].duration ); - } - if ( this.isPlaying ) { - if ( timeRemaining === 0 ) { - return 'Currently playing'; - } else { - return 'Playing in less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min'; - } - } else { - if ( timeRemaining === 0 ) { - return 'Plays next'; - } else { - return 'Playing less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min after starting to play'; - } - } - } - } - }, - methods: { - startTimeTracker () { - try { - clearInterval( this.timeTracker ); - } catch ( err ) {} - this.timeTracker = setInterval( () => { - this.pos = ( new Date().getTime() - this.playingSong.startTime ) / 1000 + this.oldPos; - this.progressBar = ( this.pos / this.playingSong.duration ) * 1000; - if ( isNaN( this.progressBar ) ) { - this.progressBar = 0; - } - }, 100 ); - }, - stopTimeTracker () { - clearInterval( this.timeTracker ); - this.oldPos = this.pos; - }, - connect() { - let source = new EventSource( '/clientDisplayNotifier', { withCredentials: true } ); - source.onmessage = ( e ) => { - let data; - try { - data = JSON.parse( e.data ); - } catch ( err ) { - data = { 'type': e.data }; - } - if ( data.type === 'basics' ) { - this.isPlaying = data.data.isPlaying ?? false; - this.playingSong = data.data.playingSong ?? {}; - this.songs = data.data.songQueue ?? []; - this.pos = data.data.pos ?? 0; - this.oldPos = data.data.pos ?? 0; - this.progressBar = this.pos / this.playingSong.duration * 1000; - this.queuePos = data.data.queuePos ?? 0; - } else if ( data.type === 'pos' ) { - this.pos = data.data; - this.oldPos = data.data; - this.progressBar = data.data / this.playingSong.duration * 1000; - } else if ( data.type === 'isPlaying' ) { - this.isPlaying = data.data; - } else if ( data.type === 'songQueue' ) { - this.songs = data.data; - } else if ( data.type === 'playingSong' ) { - this.playingSong = data.data; - } else if ( data.type === 'queuePos' ) { - this.queuePos = data.data; - } - }; - - source.onopen = () => { - this.isReconnecting = false; - this.hasLoaded = true; - if ( document.fonts.status === 'loaded' ) { - document.getElementById( 'loading' ).classList.remove( 'loading' ); - document.getElementById( 'app' ).classList.add( 'loaded' ); - } else { - document.fonts.onloadingdone = () => { - document.getElementById( 'loading' ).classList.remove( 'loading' ); - document.getElementById( 'app' ).classList.add( 'loaded' ); - }; - } - - }; - - let self = this; - - source.addEventListener( 'error', function( e ) { - if ( e.eventPhase == EventSource.CLOSED ) source.close(); - - if ( e.target.readyState == EventSource.CLOSED ) { - console.log( 'disconnected' ); - } - - setTimeout( () => { - if ( !self.isReconnecting ) { - self.isReconnecting = true; - self.tryReconnect(); - } - }, 1000 ); - }, false ); - }, - tryReconnect() { - const int = setInterval( () => { - if ( !this.isReconnecting ) { - clearInterval( int ); - } else { - connectToSSESource(); - } - }, 1000 ); - }, - }, - mounted() { - this.connect(); - }, - watch: { - isPlaying( value ) { - if ( value ) { - this.startTimeTracker(); - } else { - this.stopTimeTracker(); - } - } - } -} ).mount( '#app' ); diff --git a/old/frontend/.browserslistrc b/old/frontend/.browserslistrc deleted file mode 100644 index dc3bc09..0000000 --- a/old/frontend/.browserslistrc +++ /dev/null @@ -1,4 +0,0 @@ -> 1% -last 2 versions -not dead -not ie 11 diff --git a/old/frontend/.gitignore b/old/frontend/.gitignore deleted file mode 100644 index ca42f33..0000000 --- a/old/frontend/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -.DS_Store -node_modules -/dist - - -# local env files -.env.local -.env.*.local - -# Log files -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* - -# Editor directories and files -.idea -.vscode -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? - -#Electron-builder output -/dist_electron -test \ No newline at end of file diff --git a/old/frontend/README.md b/old/frontend/README.md deleted file mode 100644 index aeb14fb..0000000 --- a/old/frontend/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# musicplayerv2 - -## Project setup -``` -npm install -``` - -### Compiles and hot-reloads for development -``` -npm run serve -``` - -### Compiles and minifies for production -``` -npm run build -``` - -### Customize configuration -See [Configuration Reference](https://cli.vuejs.org/config/). diff --git a/old/frontend/babel.config.js b/old/frontend/babel.config.js deleted file mode 100644 index e955840..0000000 --- a/old/frontend/babel.config.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - presets: [ - '@vue/cli-plugin-babel/preset' - ] -} diff --git a/old/frontend/jsconfig.json b/old/frontend/jsconfig.json deleted file mode 100644 index 4aafc5f..0000000 --- a/old/frontend/jsconfig.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "compilerOptions": { - "target": "es5", - "module": "esnext", - "baseUrl": "./", - "moduleResolution": "node", - "paths": { - "@/*": [ - "src/*" - ] - }, - "lib": [ - "esnext", - "dom", - "dom.iterable", - "scripthost" - ] - } -} diff --git a/old/frontend/package-lock.json b/old/frontend/package-lock.json deleted file mode 100644 index c0ecfa7..0000000 --- a/old/frontend/package-lock.json +++ /dev/null @@ -1,26497 +0,0 @@ -{ - "name": "musicplayerv2", - "version": "1.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "musicplayerv2", - "version": "1.0.0", - "hasInstallScript": true, - "license": "GPL-3.0-or-later", - "dependencies": { - "axios": "^1.6.1", - "core-js": "^3.8.3", - "cors": "^2.8.5", - "csv-parser": "^3.0.0", - "electron-squirrel-startup": "^1.0.0", - "eventsource": "^2.0.2", - "express-session": "^1.17.3", - "ip": "^1.1.8", - "jquery": "^3.7.1", - "json-beautify": "^1.1.1", - "jsonwebtoken": "^9.0.2", - "music-metadata": "^7.13.0", - "node-fetch": "^2.7.0", - "node-musickit-api": "^2.1.1", - "realtime-bpm-analyzer": "^3.2.1", - "vue": "^3.2.13", - "vue-router": "^4.0.3", - "web-audio-beat-detector": "^8.1.55" - }, - "devDependencies": { - "@vue/cli-plugin-babel": "~5.0.0", - "@vue/cli-plugin-router": "~5.0.0", - "@vue/cli-service": "~5.0.0", - "electron": "^13.0.0", - "electron-devtools-installer": "^3.1.0", - "vue-cli-plugin-electron-builder": "~2.1.1" - } - }, - "node_modules/@achrinza/node-ipc": { - "version": "9.2.6", - "resolved": "https://registry.npmmirror.com/@achrinza/node-ipc/-/node-ipc-9.2.6.tgz", - "integrity": "sha512-ULSIYPy4ZPM301dfCxRz0l2GJjOwIo/PqmWonIu1bLml7UmnVQmH+juJcoyXp6E8gIRRNAjGYftJnNQlfy4vPg==", - "dev": true, - "dependencies": { - "@node-ipc/js-queue": "2.0.3", - "event-pubsub": "4.3.0", - "js-message": "1.0.7" - }, - "engines": { - "node": "8 || 9 || 10 || 11 || 12 || 13 || 14 || 15 || 16 || 17 || 18 || 19" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz", - "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz", - "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.21.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz", - "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz", - "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.21.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", - "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz", - "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmmirror.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-decorators": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.21.0.tgz", - "integrity": "sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/plugin-syntax-decorators": "^7.21.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-decorators": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.21.0.tgz", - "integrity": "sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz", - "integrity": "sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", - "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", - "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/template": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.21.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", - "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", - "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", - "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-simple-access": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.21.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", - "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", - "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5", - "regenerator-transform": "^0.15.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.4.tgz", - "integrity": "sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", - "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/preset-env/-/preset-env-7.21.5.tgz", - "integrity": "sha512-wH00QnTTldTbf/IefEVyChtRdw5RJvODT/Vb4Vcxq1AZvtXj6T0YeX0cAcXhI6/BdGuiP3GcNIL4OQbI2DVNxg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", - "@babel/plugin-proposal-async-generator-functions": "^7.20.7", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.21.0", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.21.0", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.21.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.21.5", - "@babel/plugin-transform-async-to-generator": "^7.20.7", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.21.0", - "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.21.5", - "@babel/plugin-transform-destructuring": "^7.21.3", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.5", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.5", - "@babel/plugin-transform-modules-systemjs": "^7.20.11", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.21.3", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.21.5", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.20.7", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.21.5", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.5", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmmirror.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmmirror.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, - "node_modules/@babel/runtime": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.2.tgz", - "integrity": "sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@develar/schema-utils": { - "version": "2.6.5", - "resolved": "https://registry.npmmirror.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz", - "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", - "dev": true, - "dependencies": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" - }, - "engines": { - "node": ">= 8.9.0" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmmirror.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@electron/get": { - "version": "1.14.1", - "resolved": "https://registry.npmmirror.com/@electron/get/-/get-1.14.1.tgz", - "integrity": "sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "env-paths": "^2.2.0", - "fs-extra": "^8.1.0", - "got": "^9.6.0", - "progress": "^2.0.3", - "semver": "^6.2.0", - "sumchecker": "^3.0.1" - }, - "engines": { - "node": ">=8.6" - }, - "optionalDependencies": { - "global-agent": "^3.0.0", - "global-tunnel-ng": "^2.7.1" - } - }, - "node_modules/@electron/get/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/@electron/get/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/@electron/get/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/@electron/universal": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/@electron/universal/-/universal-1.0.5.tgz", - "integrity": "sha512-zX9O6+jr2NMyAdSkwEUlyltiI4/EBLu2Ls/VD3pUQdi3cAYeYfdQnT2AJJ38HE4QxLccbU13LSpccw1IWlkyag==", - "dev": true, - "dependencies": { - "@malept/cross-spawn-promise": "^1.1.0", - "asar": "^3.0.3", - "debug": "^4.3.1", - "dir-compare": "^2.4.0", - "fs-extra": "^9.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "node_modules/@hapi/address": { - "version": "2.1.4", - "resolved": "https://registry.npmmirror.com/@hapi/address/-/address-2.1.4.tgz", - "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==", - "deprecated": "Moved to 'npm install @sideway/address'", - "dev": true - }, - "node_modules/@hapi/bourne": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/@hapi/bourne/-/bourne-1.3.2.tgz", - "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==", - "deprecated": "This version has been deprecated and is no longer supported or maintained", - "dev": true - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmmirror.com/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", - "dev": true - }, - "node_modules/@hapi/joi": { - "version": "15.1.1", - "resolved": "https://registry.npmmirror.com/@hapi/joi/-/joi-15.1.1.tgz", - "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", - "deprecated": "Switch to 'npm install joi'", - "dev": true, - "dependencies": { - "@hapi/address": "2.x.x", - "@hapi/bourne": "1.x.x", - "@hapi/hoek": "8.x.x", - "@hapi/topo": "3.x.x" - } - }, - "node_modules/@hapi/joi/node_modules/@hapi/hoek": { - "version": "8.5.1", - "resolved": "https://registry.npmmirror.com/@hapi/hoek/-/hoek-8.5.1.tgz", - "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==", - "deprecated": "This version has been deprecated and is no longer supported or maintained", - "dev": true - }, - "node_modules/@hapi/joi/node_modules/@hapi/topo": { - "version": "3.1.6", - "resolved": "https://registry.npmmirror.com/@hapi/topo/-/topo-3.1.6.tgz", - "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", - "deprecated": "This version has been deprecated and is no longer supported or maintained", - "dev": true, - "dependencies": { - "@hapi/hoek": "^8.3.0" - } - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "dev": true, - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "node_modules/@malept/cross-spawn-promise": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz", - "integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@malept/cross-spawn-promise/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@malept/cross-spawn-promise/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@malept/cross-spawn-promise/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@malept/cross-spawn-promise/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@malept/cross-spawn-promise/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@malept/flatpak-bundler": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", - "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "fs-extra": "^9.0.0", - "lodash": "^4.17.15", - "tmp-promise": "^3.0.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@node-ipc/js-queue": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/@node-ipc/js-queue/-/js-queue-2.0.3.tgz", - "integrity": "sha512-fL1wpr8hhD5gT2dA1qifeVaoDFlQR5es8tFuKqjHX+kdOtdNHnxkVZbtIrR2rxnMFvehkjaZRNV2H/gPXlb0hw==", - "dev": true, - "dependencies": { - "easy-stack": "1.0.1" - }, - "engines": { - "node": ">=1.0.0" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "dependencies": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - } - }, - "node_modules/@npmcli/fs/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/fs/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "dev": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/move-file/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmmirror.com/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", - "dev": true - }, - "node_modules/@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "dev": true, - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", - "dev": true - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", - "dev": true - }, - "node_modules/@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz", - "integrity": "sha512-h2ooWqP8XuFqTXT+NyAFbrArzfQA7R6HTezADrvD9Re8fxMLTPPniLdqVTdDaO0eIoLaAwKT+d6w+5GeTk7Vbg==", - "dev": true, - "dependencies": { - "chalk": "^3.0.0", - "error-stack-parser": "^2.0.6", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.0.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@soda/friendly-errors-webpack-plugin/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@soda/get-current-script": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/@soda/get-current-script/-/get-current-script-1.0.2.tgz", - "integrity": "sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==", - "dev": true - }, - "node_modules/@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "dependencies": { - "defer-to-connect": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmmirror.com/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmmirror.com/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmmirror.com/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.0", - "resolved": "https://registry.npmmirror.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==", - "dev": true, - "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "node_modules/@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmmirror.com/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", - "dev": true, - "dependencies": { - "@types/ms": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.35", - "resolved": "https://registry.npmmirror.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", - "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "node_modules/@types/fs-extra": { - "version": "9.0.13", - "resolved": "https://registry.npmmirror.com/@types/fs-extra/-/fs-extra-9.0.13.tgz", - "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "optional": true, - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==", - "dev": true - }, - "node_modules/@types/http-proxy": { - "version": "1.17.11", - "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz", - "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", - "dev": true - }, - "node_modules/@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true, - "optional": true - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmmirror.com/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", - "dev": true - }, - "node_modules/@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmmirror.com/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.2.1", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.2.1.tgz", - "integrity": "sha512-DqJociPbZP1lbZ5SQPk4oag6W7AyaGMO6gSfRwq3PWl4PXTwJpRQJhDq4W0kzrg3w6tJ1SwlvGZ5uKFHY13LIg==", - "dev": true - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmmirror.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "node_modules/@types/plist": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/@types/plist/-/plist-3.0.2.tgz", - "integrity": "sha512-ULqvZNGMv0zRFvqn8/4LSPtnmN4MfhlPNtJCTpKuIIxGVGZ2rYWzFXrvEBoh9CVyqSE7D6YFRJ1hydLHI6kbWw==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "*", - "xmlbuilder": ">=11.0.1" - } - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmmirror.com/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmmirror.com/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/send": { - "version": "0.17.1", - "resolved": "https://registry.npmmirror.com/@types/send/-/send-0.17.1.tgz", - "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", - "dev": true, - "dependencies": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "dependencies": { - "@types/express": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmmirror.com/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "dev": true, - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmmirror.com/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/verror": { - "version": "1.10.6", - "resolved": "https://registry.npmmirror.com/@types/verror/-/verror-1.10.6.tgz", - "integrity": "sha512-NNm+gdePAX1VGvPcGZCDKQZKYSiAWigKhKaz5KF94hG6f2s8de9Ow5+7AbXoeKxL8gavZfk4UquSAygOF2duEQ==", - "dev": true, - "optional": true - }, - "node_modules/@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmmirror.com/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "node_modules/@vue/babel-helper-vue-jsx-merge-props": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.4.0.tgz", - "integrity": "sha512-JkqXfCkUDp4PIlFdDQ0TdXoIejMtTHP67/pvxlgeY+u5k3LEdKuWZ3LK6xkxo52uDoABIVyRwqVkfLQJhk7VBA==", - "dev": true - }, - "node_modules/@vue/babel-helper-vue-transform-on": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.0.2.tgz", - "integrity": "sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==", - "dev": true - }, - "node_modules/@vue/babel-plugin-jsx": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.1.tgz", - "integrity": "sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "@vue/babel-helper-vue-transform-on": "^1.0.2", - "camelcase": "^6.0.0", - "html-tags": "^3.1.0", - "svg-tags": "^1.0.0" - } - }, - "node_modules/@vue/babel-plugin-transform-vue-jsx": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.4.0.tgz", - "integrity": "sha512-Fmastxw4MMx0vlgLS4XBX0XiBbUFzoMGeVXuMV08wyOfXdikAFqBTuYPR0tlk+XskL19EzHc39SgjrPGY23JnA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "html-tags": "^2.0.0", - "lodash.kebabcase": "^4.1.1", - "svg-tags": "^1.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-plugin-transform-vue-jsx/node_modules/html-tags": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-2.0.0.tgz", - "integrity": "sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@vue/babel-preset-app": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/babel-preset-app/-/babel-preset-app-5.0.8.tgz", - "integrity": "sha512-yl+5qhpjd8e1G4cMXfORkkBlvtPCIgmRf3IYCWYDKIQ7m+PPa5iTm4feiNmCMD6yGqQWMhhK/7M3oWGL9boKwg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.16", - "@babel/helper-compilation-targets": "^7.12.16", - "@babel/helper-module-imports": "^7.12.13", - "@babel/plugin-proposal-class-properties": "^7.12.13", - "@babel/plugin-proposal-decorators": "^7.12.13", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-jsx": "^7.12.13", - "@babel/plugin-transform-runtime": "^7.12.15", - "@babel/preset-env": "^7.12.16", - "@babel/runtime": "^7.12.13", - "@vue/babel-plugin-jsx": "^1.0.3", - "@vue/babel-preset-jsx": "^1.1.2", - "babel-plugin-dynamic-import-node": "^2.3.3", - "core-js": "^3.8.3", - "core-js-compat": "^3.8.3", - "semver": "^7.3.4" - }, - "peerDependencies": { - "@babel/core": "*", - "core-js": "^3", - "vue": "^2 || ^3.2.13" - }, - "peerDependenciesMeta": { - "core-js": { - "optional": true - }, - "vue": { - "optional": true - } - } - }, - "node_modules/@vue/babel-preset-app/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@vue/babel-preset-app/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@vue/babel-preset-app/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@vue/babel-preset-jsx": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-preset-jsx/-/babel-preset-jsx-1.4.0.tgz", - "integrity": "sha512-QmfRpssBOPZWL5xw7fOuHNifCQcNQC1PrOo/4fu6xlhlKJJKSA3HqX92Nvgyx8fqHZTUGMPHmFA+IDqwXlqkSA==", - "dev": true, - "dependencies": { - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "@vue/babel-sugar-composition-api-inject-h": "^1.4.0", - "@vue/babel-sugar-composition-api-render-instance": "^1.4.0", - "@vue/babel-sugar-functional-vue": "^1.4.0", - "@vue/babel-sugar-inject-h": "^1.4.0", - "@vue/babel-sugar-v-model": "^1.4.0", - "@vue/babel-sugar-v-on": "^1.4.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0", - "vue": "*" - }, - "peerDependenciesMeta": { - "vue": { - "optional": true - } - } - }, - "node_modules/@vue/babel-sugar-composition-api-inject-h": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.4.0.tgz", - "integrity": "sha512-VQq6zEddJHctnG4w3TfmlVp5FzDavUSut/DwR0xVoe/mJKXyMcsIibL42wPntozITEoY90aBV0/1d2KjxHU52g==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-composition-api-render-instance": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.4.0.tgz", - "integrity": "sha512-6ZDAzcxvy7VcnCjNdHJ59mwK02ZFuP5CnucloidqlZwVQv5CQLijc3lGpR7MD3TWFi78J7+a8J56YxbCtHgT9Q==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-functional-vue": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.4.0.tgz", - "integrity": "sha512-lTEB4WUFNzYt2In6JsoF9sAYVTo84wC4e+PoZWSgM6FUtqRJz7wMylaEhSRgG71YF+wfLD6cc9nqVeXN2rwBvw==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-inject-h": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.4.0.tgz", - "integrity": "sha512-muwWrPKli77uO2fFM7eA3G1lAGnERuSz2NgAxuOLzrsTlQl8W4G+wwbM4nB6iewlKbwKRae3nL03UaF5ffAPMA==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-v-model": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.4.0.tgz", - "integrity": "sha512-0t4HGgXb7WHYLBciZzN5s0Hzqan4Ue+p/3FdQdcaHAb7s5D9WZFGoSxEZHrR1TFVZlAPu1bejTKGeAzaaG3NCQ==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "camelcase": "^5.0.0", - "html-tags": "^2.0.0", - "svg-tags": "^1.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-v-model/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@vue/babel-sugar-v-model/node_modules/html-tags": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-2.0.0.tgz", - "integrity": "sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@vue/babel-sugar-v-on": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.4.0.tgz", - "integrity": "sha512-m+zud4wKLzSKgQrWwhqRObWzmTuyzl6vOP7024lrpeJM4x2UhQtRDLgYjXAw9xBXjCwS0pP9kXjg91F9ZNo9JA==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "camelcase": "^5.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@vue/babel-sugar-v-on/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@vue/cli-overlay": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-overlay/-/cli-overlay-5.0.8.tgz", - "integrity": "sha512-KmtievE/B4kcXp6SuM2gzsnSd8WebkQpg3XaB6GmFh1BJGRqa1UiW9up7L/Q67uOdTigHxr5Ar2lZms4RcDjwQ==", - "dev": true - }, - "node_modules/@vue/cli-plugin-babel": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-babel/-/cli-plugin-babel-5.0.8.tgz", - "integrity": "sha512-a4qqkml3FAJ3auqB2kN2EMPocb/iu0ykeELwed+9B1c1nQ1HKgslKMHMPavYx3Cd/QAx2mBD4hwKBqZXEI/CsQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.16", - "@vue/babel-preset-app": "^5.0.8", - "@vue/cli-shared-utils": "^5.0.8", - "babel-loader": "^8.2.2", - "thread-loader": "^3.0.0", - "webpack": "^5.54.0" - }, - "peerDependencies": { - "@vue/cli-service": "^3.0.0 || ^4.0.0 || ^5.0.0-0" - } - }, - "node_modules/@vue/cli-plugin-router": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-router/-/cli-plugin-router-5.0.8.tgz", - "integrity": "sha512-Gmv4dsGdAsWPqVijz3Ux2OS2HkMrWi1ENj2cYL75nUeL+Xj5HEstSqdtfZ0b1q9NCce+BFB6QnHfTBXc/fCvMg==", - "dev": true, - "dependencies": { - "@vue/cli-shared-utils": "^5.0.8" - }, - "peerDependencies": { - "@vue/cli-service": "^3.0.0 || ^4.0.0 || ^5.0.0-0" - } - }, - "node_modules/@vue/cli-plugin-vuex": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-vuex/-/cli-plugin-vuex-5.0.8.tgz", - "integrity": "sha512-HSYWPqrunRE5ZZs8kVwiY6oWcn95qf/OQabwLfprhdpFWAGtLStShjsGED2aDpSSeGAskQETrtR/5h7VqgIlBA==", - "dev": true, - "peerDependencies": { - "@vue/cli-service": "^3.0.0 || ^4.0.0 || ^5.0.0-0" - } - }, - "node_modules/@vue/cli-service": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-service/-/cli-service-5.0.8.tgz", - "integrity": "sha512-nV7tYQLe7YsTtzFrfOMIHc5N2hp5lHG2rpYr0aNja9rNljdgcPZLyQRb2YRivTHqTv7lI962UXFURcpStHgyFw==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.12.16", - "@soda/friendly-errors-webpack-plugin": "^1.8.0", - "@soda/get-current-script": "^1.0.2", - "@types/minimist": "^1.2.0", - "@vue/cli-overlay": "^5.0.8", - "@vue/cli-plugin-router": "^5.0.8", - "@vue/cli-plugin-vuex": "^5.0.8", - "@vue/cli-shared-utils": "^5.0.8", - "@vue/component-compiler-utils": "^3.3.0", - "@vue/vue-loader-v15": "npm:vue-loader@^15.9.7", - "@vue/web-component-wrapper": "^1.3.0", - "acorn": "^8.0.5", - "acorn-walk": "^8.0.2", - "address": "^1.1.2", - "autoprefixer": "^10.2.4", - "browserslist": "^4.16.3", - "case-sensitive-paths-webpack-plugin": "^2.3.0", - "cli-highlight": "^2.1.10", - "clipboardy": "^2.3.0", - "cliui": "^7.0.4", - "copy-webpack-plugin": "^9.0.1", - "css-loader": "^6.5.0", - "css-minimizer-webpack-plugin": "^3.0.2", - "cssnano": "^5.0.0", - "debug": "^4.1.1", - "default-gateway": "^6.0.3", - "dotenv": "^10.0.0", - "dotenv-expand": "^5.1.0", - "fs-extra": "^9.1.0", - "globby": "^11.0.2", - "hash-sum": "^2.0.0", - "html-webpack-plugin": "^5.1.0", - "is-file-esm": "^1.0.0", - "launch-editor-middleware": "^2.2.1", - "lodash.defaultsdeep": "^4.6.1", - "lodash.mapvalues": "^4.6.0", - "mini-css-extract-plugin": "^2.5.3", - "minimist": "^1.2.5", - "module-alias": "^2.2.2", - "portfinder": "^1.0.26", - "postcss": "^8.2.6", - "postcss-loader": "^6.1.1", - "progress-webpack-plugin": "^1.0.12", - "ssri": "^8.0.1", - "terser-webpack-plugin": "^5.1.1", - "thread-loader": "^3.0.0", - "vue-loader": "^17.0.0", - "vue-style-loader": "^4.1.3", - "webpack": "^5.54.0", - "webpack-bundle-analyzer": "^4.4.0", - "webpack-chain": "^6.5.1", - "webpack-dev-server": "^4.7.3", - "webpack-merge": "^5.7.3", - "webpack-virtual-modules": "^0.4.2", - "whatwg-fetch": "^3.6.2" - }, - "bin": { - "vue-cli-service": "bin/vue-cli-service.js" - }, - "engines": { - "node": "^12.0.0 || >= 14.0.0" - }, - "peerDependencies": { - "vue-template-compiler": "^2.0.0", - "webpack-sources": "*" - }, - "peerDependenciesMeta": { - "cache-loader": { - "optional": true - }, - "less-loader": { - "optional": true - }, - "pug-plain-loader": { - "optional": true - }, - "raw-loader": { - "optional": true - }, - "sass-loader": { - "optional": true - }, - "stylus-loader": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - }, - "webpack-sources": { - "optional": true - } - } - }, - "node_modules/@vue/cli-shared-utils": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-shared-utils/-/cli-shared-utils-5.0.8.tgz", - "integrity": "sha512-uK2YB7bBVuQhjOJF+O52P9yFMXeJVj7ozqJkwYE9PlMHL1LMHjtCYm4cSdOebuPzyP+/9p0BimM/OqxsevIopQ==", - "dev": true, - "dependencies": { - "@achrinza/node-ipc": "^9.2.5", - "chalk": "^4.1.2", - "execa": "^1.0.0", - "joi": "^17.4.0", - "launch-editor": "^2.2.1", - "lru-cache": "^6.0.0", - "node-fetch": "^2.6.7", - "open": "^8.0.2", - "ora": "^5.3.0", - "read-pkg": "^5.1.1", - "semver": "^7.3.4", - "strip-ansi": "^6.0.0" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@vue/cli-shared-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@vue/cli-shared-utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", - "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - } - }, - "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", - "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", - "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", - "source-map-js": "^1.0.2" - } - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", - "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/component-compiler-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", - "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", - "dev": true, - "dependencies": { - "consolidate": "^0.15.1", - "hash-sum": "^1.0.2", - "lru-cache": "^4.1.2", - "merge-source-map": "^1.1.0", - "postcss": "^7.0.36", - "postcss-selector-parser": "^6.0.2", - "source-map": "~0.6.1", - "vue-template-es2015-compiler": "^1.9.0" - }, - "optionalDependencies": { - "prettier": "^1.18.2 || ^2.0.0" - } - }, - "node_modules/@vue/component-compiler-utils/node_modules/hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "node_modules/@vue/component-compiler-utils/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/@vue/component-compiler-utils/node_modules/picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "node_modules/@vue/component-compiler-utils/node_modules/postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmmirror.com/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "dependencies": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@vue/component-compiler-utils/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - }, - "node_modules/@vue/devtools-api": { - "version": "6.5.0", - "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz", - "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==" - }, - "node_modules/@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", - "dependencies": { - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", - "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", - "dependencies": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", - "dependencies": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" - } - }, - "node_modules/@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", - "dependencies": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" - }, - "peerDependencies": { - "vue": "3.3.4" - } - }, - "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" - }, - "node_modules/@vue/vue-loader-v15": { - "name": "vue-loader", - "version": "15.11.1", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.11.1.tgz", - "integrity": "sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q==", - "dev": true, - "dependencies": { - "@vue/component-compiler-utils": "^3.1.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - }, - "peerDependencies": { - "css-loader": "*", - "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0" - }, - "peerDependenciesMeta": { - "cache-loader": { - "optional": true - }, - "prettier": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } - } - }, - "node_modules/@vue/vue-loader-v15/node_modules/hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "node_modules/@vue/web-component-wrapper": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz", - "integrity": "sha512-Iu8Tbg3f+emIIMmI2ycSI8QcEuAUgPTgHwesDU1eKMLE4YC/c/sFbGc70QgMq31ijRftV0R7vCm9co6rldCeOA==", - "dev": true - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/7zip-bin": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/7zip-bin/-/7zip-bin-5.1.1.tgz", - "integrity": "sha512-sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", - "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/address": { - "version": "1.2.2", - "resolved": "https://registry.npmmirror.com/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", - "dev": true, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "dependencies": { - "string-width": "^4.1.0" - } - }, - "node_modules/ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmmirror.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/app-builder-bin": { - "version": "3.7.1", - "resolved": "https://registry.npmmirror.com/app-builder-bin/-/app-builder-bin-3.7.1.tgz", - "integrity": "sha512-ql93vEUq6WsstGXD+SBLSIQw6SNnhbDEM0swzgugytMxLp3rT24Ag/jcC80ZHxiPRTdew1niuR7P3/FCrDqIjw==", - "dev": true - }, - "node_modules/app-builder-lib": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/app-builder-lib/-/app-builder-lib-22.14.13.tgz", - "integrity": "sha512-SufmrtxU+D0Tn948fjEwAOlCN9757UXLkzzTWXMwZKR/5hisvgqeeBepWfphMIE6OkDGz0fbzEhL1P2Pty4XMg==", - "dev": true, - "dependencies": { - "@develar/schema-utils": "~2.6.5", - "@electron/universal": "1.0.5", - "@malept/flatpak-bundler": "^0.4.0", - "7zip-bin": "~5.1.1", - "async-exit-hook": "^2.0.1", - "bluebird-lst": "^1.0.9", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chromium-pickle-js": "^0.2.0", - "debug": "^4.3.2", - "ejs": "^3.1.6", - "electron-osx-sign": "^0.5.0", - "electron-publish": "22.14.13", - "form-data": "^4.0.0", - "fs-extra": "^10.0.0", - "hosted-git-info": "^4.0.2", - "is-ci": "^3.0.0", - "isbinaryfile": "^4.0.8", - "js-yaml": "^4.1.0", - "lazy-val": "^1.0.5", - "minimatch": "^3.0.4", - "read-config-file": "6.2.0", - "sanitize-filename": "^1.6.3", - "semver": "^7.3.5", - "temp-file": "^3.4.0" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/app-builder-lib/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/app-builder-lib/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/app-builder-lib/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/app-builder-lib/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/app-builder-lib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/asar": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/asar/-/asar-3.2.0.tgz", - "integrity": "sha512-COdw2ZQvKdFGFxXwX3oYh2/sOsJWJegrdJCGxnN4MZ7IULgRBp9P6665aqj9z1v9VwP4oP1hRBojRDQ//IGgAg==", - "deprecated": "Please use @electron/asar moving forward. There is no API change, just a package name change", - "dev": true, - "dependencies": { - "chromium-pickle-js": "^0.2.0", - "commander": "^5.0.0", - "glob": "^7.1.6", - "minimatch": "^3.0.4" - }, - "bin": { - "asar": "bin/asar.js" - }, - "engines": { - "node": ">=10.12.0" - }, - "optionalDependencies": { - "@types/glob": "^7.1.1" - } - }, - "node_modules/asar/node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmmirror.com/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmmirror.com/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/async-exit-hook": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz", - "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/automation-events": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/automation-events/-/automation-events-6.0.11.tgz", - "integrity": "sha512-tUqFMJalQ3OAcbQOXzzNDpxzkuygMQ3eM92lJWJRn6YWJnH4oYIU3pzKipANOul/6L2vDFrOzgXVE21Dv4z/zw==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.1.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmmirror.com/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmmirror.com/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmmirror.com/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "node_modules/axios": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.1.tgz", - "integrity": "sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==", - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/babel-loader": { - "version": "8.3.0", - "resolved": "https://registry.npmmirror.com/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=5" - } - }, - "node_modules/babel-loader/node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "node_modules/bluebird-lst": { - "version": "1.0.9", - "resolved": "https://registry.npmmirror.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz", - "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==", - "dev": true, - "dependencies": { - "bluebird": "^3.5.5" - } - }, - "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmmirror.com/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/bonjour-service/-/bonjour-service-1.1.1.tgz", - "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", - "dev": true, - "dependencies": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/boolean": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/boolean/-/boolean-3.2.0.tgz", - "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", - "dev": true, - "optional": true - }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/boxen/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/boxen/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/boxen/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/boxen/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "dev": true, - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "dependencies": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "node_modules/buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha512-tcBWO2Dl4e7Asr9hTGcpVrCe+F7DubpmqWCTbj4FHLmjqO2hIaC383acQubWtRJhdceqs5uBHs6Es+Sk//RKiQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" - }, - "node_modules/buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", - "dev": true - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builder-util": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/builder-util/-/builder-util-22.14.13.tgz", - "integrity": "sha512-oePC/qrrUuerhmH5iaCJzPRAKlSBylrhzuAJmRQClTyWnZUv6jbaHh+VoHMbEiE661wrj2S2aV7/bQh12cj1OA==", - "dev": true, - "dependencies": { - "@types/debug": "^4.1.6", - "@types/fs-extra": "^9.0.11", - "7zip-bin": "~5.1.1", - "app-builder-bin": "3.7.1", - "bluebird-lst": "^1.0.9", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "cross-spawn": "^7.0.3", - "debug": "^4.3.2", - "fs-extra": "^10.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-ci": "^3.0.0", - "js-yaml": "^4.1.0", - "source-map-support": "^0.5.19", - "stat-mode": "^1.0.0", - "temp-file": "^3.4.0" - } - }, - "node_modules/builder-util-runtime": { - "version": "8.9.2", - "resolved": "https://registry.npmmirror.com/builder-util-runtime/-/builder-util-runtime-8.9.2.tgz", - "integrity": "sha512-rhuKm5vh7E0aAmT6i8aoSfEjxzdYEFX7zDApK+eNgOhjofnWb74d9SRJv0H/8nsgOkos0TZ4zxW0P8J4N7xQ2A==", - "dev": true, - "dependencies": { - "debug": "^4.3.2", - "sax": "^1.2.4" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/builder-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/builder-util/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/builder-util/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/builder-util/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/builder-util/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/builder-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/builder-util/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmmirror.com/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "dependencies": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/cacache/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/cacache/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "dependencies": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cacheable-request/node_modules/normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dev": true, - "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001488", - "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001488.tgz", - "integrity": "sha512-NORIQuuL4xGpIy6iCCQGN4iFjlBXtfKWIenlUuyZJumLRIindLb7wXM+GO8erEhb7vXfcnf4BAg2PrSDN5TNLQ==", - "dev": true - }, - "node_modules/case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmmirror.com/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/chromium-pickle-js": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", - "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", - "dev": true - }, - "node_modules/ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmmirror.com/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-highlight": { - "version": "2.1.11", - "resolved": "https://registry.npmmirror.com/cli-highlight/-/cli-highlight-2.1.11.tgz", - "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "highlight.js": "^10.7.1", - "mz": "^2.4.0", - "parse5": "^5.1.1", - "parse5-htmlparser2-tree-adapter": "^6.0.0", - "yargs": "^16.0.0" - }, - "bin": { - "highlight": "bin/highlight" - }, - "engines": { - "node": ">=8.0.0", - "npm": ">=5.0.0" - } - }, - "node_modules/cli-highlight/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-highlight/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/cli-highlight/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/cli-highlight/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/cli-highlight/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-highlight/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cli-spinners": { - "version": "2.9.0", - "resolved": "https://registry.npmmirror.com/cli-spinners/-/cli-spinners-2.9.0.tgz", - "integrity": "sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "optional": true, - "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/clipboardy": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/clipboardy/-/clipboardy-2.3.0.tgz", - "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", - "dev": true, - "dependencies": { - "arch": "^2.1.1", - "execa": "^1.0.0", - "is-wsl": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmmirror.com/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", - "dev": true - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "node_modules/colors": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/colors/-/colors-1.0.3.tgz", - "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/compare-version": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/compare-version/-/compare-version-0.1.2.tgz", - "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmmirror.com/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmmirror.com/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmmirror.com/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dev": true, - "optional": true, - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "node_modules/config-chain/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "optional": true - }, - "node_modules/configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "dependencies": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/consolidate": { - "version": "0.15.1", - "resolved": "https://registry.npmmirror.com/consolidate/-/consolidate-0.15.1.tgz", - "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", - "dev": true, - "dependencies": { - "bluebird": "^3.1.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "node_modules/copy-webpack-plugin": { - "version": "9.1.0", - "resolved": "https://registry.npmmirror.com/copy-webpack-plugin/-/copy-webpack-plugin-9.1.0.tgz", - "integrity": "sha512-rxnR7PaGigJzhqETHGmAcxKnLZSR5u1Y3/bcIv/1FnqXedcL/E2ewK7ZCNrArJKCiSv8yVXhTqetJh8inDvfsA==", - "dev": true, - "dependencies": { - "fast-glob": "^3.2.7", - "glob-parent": "^6.0.1", - "globby": "^11.0.3", - "normalize-path": "^3.0.0", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.1.0" - } - }, - "node_modules/copy-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/core-js": { - "version": "3.30.2", - "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.30.2.tgz", - "integrity": "sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg==", - "hasInstallScript": true - }, - "node_modules/core-js-compat": { - "version": "3.30.2", - "resolved": "https://registry.npmmirror.com/core-js-compat/-/core-js-compat-3.30.2.tgz", - "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.5" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dependencies": { - "object-assign": "^4", - "vary": "^1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmmirror.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/crc": { - "version": "3.8.0", - "resolved": "https://registry.npmmirror.com/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "dev": true, - "optional": true, - "dependencies": { - "buffer": "^5.1.0" - } - }, - "node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/css-declaration-sorter": { - "version": "6.4.0", - "resolved": "https://registry.npmmirror.com/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz", - "integrity": "sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.0.9" - } - }, - "node_modules/css-loader": { - "version": "6.7.4", - "resolved": "https://registry.npmmirror.com/css-loader/-/css-loader-6.7.4.tgz", - "integrity": "sha512-0Y5uHtK5BswfaGJ+jrO+4pPg1msFBc0pwPIE1VqfpmVn6YbDfYfXMj8rfd7nt+4goAhJueO+H/I40VWJfcP1mQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.21", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.1", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/css-loader/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/css-loader/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/css-loader/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/css-minimizer-webpack-plugin": { - "version": "3.4.1", - "resolved": "https://registry.npmmirror.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz", - "integrity": "sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==", - "dev": true, - "dependencies": { - "cssnano": "^5.0.6", - "jest-worker": "^27.0.2", - "postcss": "^8.3.5", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - } - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmmirror.com/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "dev": true, - "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmmirror.com/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dev": true, - "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "dependencies": { - "css-tree": "^1.1.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "node_modules/csv-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/csv-parser/-/csv-parser-3.0.0.tgz", - "integrity": "sha512-s6OYSXAK3IdKqYO33y09jhypG/bSDHPuyCme/IdEHfWpLf/jKcpitVFyOC6UemgGk8v7Q5u2XE0vvwmanxhGlQ==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "csv-parser": "bin/csv-parser" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmmirror.com/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dev": true, - "dependencies": { - "mimic-response": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deepmerge": { - "version": "1.5.2", - "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz", - "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmmirror.com/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/default-gateway/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/default-gateway/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/default-gateway/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/default-gateway/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-gateway/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-gateway/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-gateway/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-gateway/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-gateway/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "dev": true, - "dependencies": { - "clone": "^1.0.2" - } - }, - "node_modules/defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/dir-compare": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/dir-compare/-/dir-compare-2.4.0.tgz", - "integrity": "sha512-l9hmu8x/rjVC9Z2zmGzkhOEowZvW7pmYws5CWHutg8u1JgvsKWMx7Q/UODeu4djLZ4FgW5besw5yvMQnBHzuCA==", - "dev": true, - "dependencies": { - "buffer-equal": "1.0.0", - "colors": "1.0.3", - "commander": "2.9.0", - "minimatch": "3.0.4" - }, - "bin": { - "dircompare": "src/cli/dircompare.js" - } - }, - "node_modules/dir-compare/node_modules/commander": { - "version": "2.9.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.9.0.tgz", - "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", - "dev": true, - "dependencies": { - "graceful-readlink": ">= 1.0.0" - }, - "engines": { - "node": ">= 0.6.x" - } - }, - "node_modules/dir-compare/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dmg-builder": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/dmg-builder/-/dmg-builder-22.14.13.tgz", - "integrity": "sha512-xNOugB6AbIRETeU2uID15sUfjdZZcKdxK8xkFnwIggsM00PJ12JxpLNPTjcRoUnfwj3WrPjilrO64vRMwNItQg==", - "dev": true, - "dependencies": { - "app-builder-lib": "22.14.13", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "fs-extra": "^10.0.0", - "iconv-lite": "^0.6.2", - "js-yaml": "^4.1.0" - }, - "optionalDependencies": { - "dmg-license": "^1.0.9" - } - }, - "node_modules/dmg-builder/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/dmg-builder/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dmg-license": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/dmg-license/-/dmg-license-1.0.11.tgz", - "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "dependencies": { - "@types/plist": "^3.0.1", - "@types/verror": "^1.10.3", - "ajv": "^6.10.0", - "crc": "^3.8.0", - "iconv-corefoundation": "^1.1.7", - "plist": "^3.0.4", - "smart-buffer": "^4.0.2", - "verror": "^1.10.0" - }, - "bin": { - "dmg-license": "bin/dmg-license.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.6.0", - "resolved": "https://registry.npmmirror.com/dns-packet/-/dns-packet-5.6.0.tgz", - "integrity": "sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ==", - "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "dependencies": { - "utila": "~0.4" - } - }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmmirror.com/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "dependencies": { - "is-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "node_modules/duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmmirror.com/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" - } - }, - "node_modules/easy-stack": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/easy-stack/-/easy-stack-1.0.1.tgz", - "integrity": "sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/ejs": { - "version": "3.1.9", - "resolved": "https://registry.npmmirror.com/ejs/-/ejs-3.1.9.tgz", - "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==", - "dev": true, - "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/electron": { - "version": "13.6.9", - "resolved": "https://registry.npmmirror.com/electron/-/electron-13.6.9.tgz", - "integrity": "sha512-Es/sBy85NIuqsO9MW41PUCpwIkeinlTQ7g0ainfnmRAM2rmog3GBxVCaoV5dzEjwTF7TKG1Yr/E7Z3qHmlfWAg==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@electron/get": "^1.0.1", - "@types/node": "^14.6.2", - "extract-zip": "^1.0.3" - }, - "bin": { - "electron": "cli.js" - }, - "engines": { - "node": ">= 8.6" - } - }, - "node_modules/electron-builder": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/electron-builder/-/electron-builder-22.14.13.tgz", - "integrity": "sha512-3fgLxqF2TXVKiUPeg74O4V3l0l3j7ERLazo8sUbRkApw0+4iVAf2BJkHsHMaXiigsgCoEzK/F4/rB5rne/VAnw==", - "dev": true, - "dependencies": { - "@types/yargs": "^17.0.1", - "app-builder-lib": "22.14.13", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "dmg-builder": "22.14.13", - "fs-extra": "^10.0.0", - "is-ci": "^3.0.0", - "lazy-val": "^1.0.5", - "read-config-file": "6.2.0", - "update-notifier": "^5.1.0", - "yargs": "^17.0.1" - }, - "bin": { - "electron-builder": "cli.js", - "install-app-deps": "install-app-deps.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/electron-builder/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-builder/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/electron-builder/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/electron-builder/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/electron-builder/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/electron-builder/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/electron-builder/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-builder/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-builder/node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/electron-builder/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/electron-devtools-installer": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/electron-devtools-installer/-/electron-devtools-installer-3.2.0.tgz", - "integrity": "sha512-t3UczsYugm4OAbqvdImMCImIMVdFzJAHgbwHpkl5jmfu1izVgUcP/mnrPqJIpEeCK1uZGpt+yHgWEN+9EwoYhQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.2", - "semver": "^7.2.1", - "tslib": "^2.1.0", - "unzip-crx-3": "^0.2.0" - } - }, - "node_modules/electron-devtools-installer/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/electron-devtools-installer/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/electron-devtools-installer/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/electron-osx-sign": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/electron-osx-sign/-/electron-osx-sign-0.5.0.tgz", - "integrity": "sha512-icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==", - "deprecated": "Please use @electron/osx-sign moving forward. Be aware the API is slightly different", - "dev": true, - "dependencies": { - "bluebird": "^3.5.0", - "compare-version": "^0.1.2", - "debug": "^2.6.8", - "isbinaryfile": "^3.0.2", - "minimist": "^1.2.0", - "plist": "^3.0.1" - }, - "bin": { - "electron-osx-flat": "bin/electron-osx-flat.js", - "electron-osx-sign": "bin/electron-osx-sign.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/electron-osx-sign/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/electron-osx-sign/node_modules/isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", - "dev": true, - "dependencies": { - "buffer-alloc": "^1.2.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/electron-osx-sign/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/electron-publish": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/electron-publish/-/electron-publish-22.14.13.tgz", - "integrity": "sha512-0oP3QiNj3e8ewOaEpEJV/o6Zrmy2VarVvZ/bH7kyO/S/aJf9x8vQsKVWpsdmSiZ5DJEHgarFIXrnO0ZQf0P9iQ==", - "dev": true, - "dependencies": { - "@types/fs-extra": "^9.0.11", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "fs-extra": "^10.0.0", - "lazy-val": "^1.0.5", - "mime": "^2.5.2" - } - }, - "node_modules/electron-publish/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-publish/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/electron-publish/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/electron-publish/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/electron-publish/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/electron-publish/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-publish/node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/electron-publish/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-squirrel-startup": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/electron-squirrel-startup/-/electron-squirrel-startup-1.0.0.tgz", - "integrity": "sha512-Oce8mvgGdFmwr+DsAcXBmFK8jFfN6yaFAP9IvyhTfupM3nFkBku/7VS/mdtJteWumImkC6P+BKGsxScoDDkv9Q==", - "dependencies": { - "debug": "^2.2.0" - } - }, - "node_modules/electron-squirrel-startup/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/electron-squirrel-startup/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/electron-to-chromium": { - "version": "1.4.401", - "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.401.tgz", - "integrity": "sha512-AswqHsYyEbfSn0x87n31Na/xttUqEAg7NUjpiyxC20MaWKLyadOYHMzyLdF78N1iw+FK8/2KHLpZxRdyRILgtA==", - "dev": true - }, - "node_modules/electron/node_modules/@types/node": { - "version": "14.18.47", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-14.18.47.tgz", - "integrity": "sha512-OuJi8bIng4wYHHA3YpKauL58dZrPxro3d0tabPHyiNF8rKfGKuVfr83oFlPLmKri1cX+Z3cJP39GXmnqkP11Gw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enhanced-resolve": { - "version": "5.14.0", - "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz", - "integrity": "sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmmirror.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "dev": true, - "dependencies": { - "stackframe": "^1.3.4" - } - }, - "node_modules/es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", - "dev": true - }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true, - "optional": true - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/event-pubsub": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/event-pubsub/-/event-pubsub-4.3.0.tgz", - "integrity": "sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==", - "dev": true, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/eventsource": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", - "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmmirror.com/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express-session": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz", - "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==", - "dependencies": { - "cookie": "0.4.2", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/express-session/node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/express-session/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express-session/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmmirror.com/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "dependencies": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - } - }, - "node_modules/extract-zip/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/extract-zip/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/extsprintf": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.4.1.tgz", - "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "optional": true - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-unique-numbers": { - "version": "8.0.10", - "resolved": "https://registry.npmjs.org/fast-unique-numbers/-/fast-unique-numbers-8.0.10.tgz", - "integrity": "sha512-NUIqIhFYSwexP73lH76CLFkqNk9wHP00mUuqo4CMdhW+ETEGaIb6meriqdXRClwOQcTx2Qj4Ctw9Axo8cSwSqw==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.1.0" - } - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmmirror.com/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/figures": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/figures/-/figures-2.0.0.tgz", - "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/file-type": { - "version": "16.5.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", - "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", - "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" - } - }, - "node_modules/filelist": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/filelist/-/filelist-1.0.4.tgz", - "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", - "dev": true, - "dependencies": { - "minimatch": "^5.0.1" - } - }, - "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmmirror.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmmirror.com/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/friendly-errors-webpack-plugin": { - "version": "1.7.0", - "resolved": "https://registry.npmmirror.com/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0.tgz", - "integrity": "sha512-K27M3VK30wVoOarP651zDmb93R9zF28usW4ocaK3mfQeIEI5BPht/EzZs5E8QLLwbLRJQMwscAjDxYPb1FuNiw==", - "dev": true, - "dependencies": { - "chalk": "^1.1.3", - "error-stack-parser": "^2.0.0", - "string-width": "^2.0.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/friendly-errors-webpack-plugin/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - } - }, - "node_modules/get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmmirror.com/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/global-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/global-agent/-/global-agent-3.0.0.tgz", - "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", - "dev": true, - "optional": true, - "dependencies": { - "boolean": "^3.0.1", - "es6-error": "^4.1.1", - "matcher": "^3.0.0", - "roarr": "^2.15.3", - "semver": "^7.3.2", - "serialize-error": "^7.0.1" - }, - "engines": { - "node": ">=10.0" - } - }, - "node_modules/global-agent/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "optional": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/global-agent/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/global-agent/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true - }, - "node_modules/global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dev": true, - "dependencies": { - "ini": "2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/global-tunnel-ng": { - "version": "2.7.1", - "resolved": "https://registry.npmmirror.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", - "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", - "dev": true, - "optional": true, - "dependencies": { - "encodeurl": "^1.0.2", - "lodash": "^4.17.10", - "npm-conf": "^1.1.3", - "tunnel": "^0.0.6" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmmirror.com/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "optional": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/got": { - "version": "9.6.0", - "resolved": "https://registry.npmmirror.com/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", - "dev": true - }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dev": true, - "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmmirror.com/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", - "dev": true, - "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/hash-sum": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", - "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", - "dev": true - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmmirror.com/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmmirror.com/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - } - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hpack.js/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "node_modules/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/html-tags": { - "version": "3.3.1", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-3.3.1.tgz", - "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/html-webpack-plugin": { - "version": "5.5.1", - "resolved": "https://registry.npmmirror.com/html-webpack-plugin/-/html-webpack-plugin-5.5.1.tgz", - "integrity": "sha512-cTUzZ1+NqjGEKjmVgZKLMdiFg3m9MdRXkZW2OEe69WYVi5ONLMmlnSZdXzGGMOq0C8jGDrL6EWyEDDUioHO/pA==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "webpack": "^5.20.0" - } - }, - "node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmmirror.com/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmmirror.com/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmmirror.com/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" - }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } - } - }, - "node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/iconv-corefoundation": { - "version": "1.1.7", - "resolved": "https://registry.npmmirror.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", - "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "dependencies": { - "cli-truncate": "^2.1.0", - "node-addon-api": "^1.6.3" - }, - "engines": { - "node": "^8.11.2 || >=10" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmmirror.com/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ini": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" - }, - "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.2.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-file-esm": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-file-esm/-/is-file-esm-1.0.0.tgz", - "integrity": "sha512-rZlaNKb4Mr8WlRu2A9XdeoKgnO5aA53XdPHgCKVyCrQ/rWi89RET1+bq37Ru46obaQXeiX4vmFIm1vks41hoSA==", - "dev": true, - "dependencies": { - "read-pkg-up": "^7.0.1" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dev": true, - "dependencies": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmmirror.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmmirror.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "node_modules/jake": { - "version": "10.8.6", - "resolved": "https://registry.npmmirror.com/jake/-/jake-10.8.6.tgz", - "integrity": "sha512-G43Ub9IYEFfu72sua6rzooi8V8Gz2lkfk48rW20vEWCGizeaEPlKB1Kh8JIA84yQbiAEfqlPmSpGgCKKxH3rDA==", - "dev": true, - "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.4", - "minimatch": "^3.1.2" - }, - "bin": { - "jake": "bin/cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jake/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jake/node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmmirror.com/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/jake/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jake/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/jake/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/jake/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jake/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/javascript-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz", - "integrity": "sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==", - "dev": true - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/joi": { - "version": "17.9.2", - "resolved": "https://registry.npmmirror.com/joi/-/joi-17.9.2.tgz", - "integrity": "sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw==", - "dev": true, - "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "node_modules/jquery": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" - }, - "node_modules/js-message": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/js-message/-/js-message-1.0.7.tgz", - "integrity": "sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==", - "dev": true, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-beautify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/json-beautify/-/json-beautify-1.1.1.tgz", - "integrity": "sha512-17j+Hk2lado0xqKtUcyAjK0AtoHnPSIgktWRsEXgdFQFG9UnaGw6CHa0J7xsvulxRpFl6CrkDFHght1p5ZJc4A==", - "bin": { - "json-beautify": "bin/json-beautify" - } - }, - "node_modules/json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", - "dependencies": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=12", - "npm": ">=6" - } - }, - "node_modules/jsonwebtoken/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jsonwebtoken/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/jsprim/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - }, - "node_modules/jsprim/node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/jsprim/node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmmirror.com/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", - "dev": true, - "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" - } - }, - "node_modules/jszip/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/jszip/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/jszip/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.0" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "dependencies": { - "package-json": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/launch-editor": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/launch-editor/-/launch-editor-2.6.0.tgz", - "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", - "dev": true, - "dependencies": { - "picocolors": "^1.0.0", - "shell-quote": "^1.7.3" - } - }, - "node_modules/launch-editor-middleware": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/launch-editor-middleware/-/launch-editor-middleware-2.6.0.tgz", - "integrity": "sha512-K2yxgljj5TdCeRN1lBtO3/J26+AIDDDw+04y6VAiZbWcTdBwsYN6RrZBnW5DN/QiSIdKNjKdATLUUluWWFYTIA==", - "dev": true, - "dependencies": { - "launch-editor": "^2.6.0" - } - }, - "node_modules/lazy-val": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/lazy-val/-/lazy-val-1.0.5.tgz", - "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", - "dev": true - }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "dev": true, - "dependencies": { - "immediate": "~3.0.5" - } - }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/loader-utils/node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmmirror.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/lodash.defaultsdeep": { - "version": "4.6.1", - "resolved": "https://registry.npmmirror.com/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz", - "integrity": "sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==", - "dev": true - }, - "node_modules/lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" - }, - "node_modules/lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" - }, - "node_modules/lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" - }, - "node_modules/lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" - }, - "node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" - }, - "node_modules/lodash.kebabcase": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", - "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", - "dev": true - }, - "node_modules/lodash.mapvalues": { - "version": "4.6.0", - "resolved": "https://registry.npmmirror.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz", - "integrity": "sha512-JPFqXFeZQ7BfS00H58kClY7SPVeHertPE0lNuCyZ26/XlN8TvakYD7b9bGyNmXbT/D3BbtPAAmq90gPWqLkxlQ==", - "dev": true - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" - }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmmirror.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/log-update": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/log-update/-/log-update-2.3.0.tgz", - "integrity": "sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg==", - "dev": true, - "dependencies": { - "ansi-escapes": "^3.0.0", - "cli-cursor": "^2.0.0", - "wrap-ansi": "^3.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "dev": true, - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "dev": true, - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log-update/node_modules/wrap-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz", - "integrity": "sha512-iXR3tDXpbnTpzjKSylUJRkLuOrEC7hwEB221cgn6wtF8wpmz28puFXAEfPT5zrjM3wahygB//VuWEr1vTkDcNQ==", - "dev": true, - "dependencies": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/magic-string": { - "version": "0.30.0", - "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.0.tgz", - "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", - "dev": true, - "optional": true, - "dependencies": { - "escape-string-regexp": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/matcher/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "optional": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmmirror.com/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.5.1", - "resolved": "https://registry.npmmirror.com/memfs/-/memfs-3.5.1.tgz", - "integrity": "sha512-UWbFJKvj5k+nETdteFndTpYxdeTMox/ULeqX5k/dpaQJCCFmj5EeKv3dBcyO2xmkRAx2vppRu5dVG7SOtsGOzA==", - "dev": true, - "dependencies": { - "fs-monkey": "^1.0.3" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "node_modules/merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/mini-css-extract-plugin": { - "version": "2.7.6", - "resolved": "https://registry.npmmirror.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", - "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", - "dev": true, - "dependencies": { - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/module-alias": { - "version": "2.2.2", - "resolved": "https://registry.npmmirror.com/module-alias/-/module-alias-2.2.2.tgz", - "integrity": "sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==", - "dev": true - }, - "node_modules/mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmmirror.com/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "dependencies": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - }, - "bin": { - "multicast-dns": "cli.js" - } - }, - "node_modules/music-metadata": { - "version": "7.13.4", - "resolved": "https://registry.npmjs.org/music-metadata/-/music-metadata-7.13.4.tgz", - "integrity": "sha512-eRRoEMhhYdth2Ws24FmkvIqrtkIBE9sqjHbrRNpkg2Iux3zc37PQKRv2/r/mTtELb7XlB1uWC2UcKKX7BzNMGA==", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "content-type": "^1.0.5", - "debug": "^4.3.4", - "file-type": "^16.5.4", - "media-typer": "^1.1.0", - "strtok3": "^6.3.0", - "token-types": "^4.2.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/music-metadata/node_modules/media-typer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", - "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmmirror.com/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node_modules/node-addon-api": { - "version": "1.7.2", - "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-1.7.2.tgz", - "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", - "dev": true, - "optional": true - }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmmirror.com/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true, - "engines": { - "node": ">= 6.13.0" - } - }, - "node_modules/node-musickit-api": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/node-musickit-api/-/node-musickit-api-2.1.1.tgz", - "integrity": "sha512-6dl6KbvSSXZyabxvFEYhW3yQbrqM0pn/8b0BNk2wHJfjIxWkgjMl+Uh0q/NkxdWIq/pY1jTsGuVEfraRDv5nQQ==", - "dependencies": { - "axios": "^0.21.4", - "jsonwebtoken": "^8.5.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/node-musickit-api/node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/node-musickit-api/node_modules/jsonwebtoken": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", - "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", - "dependencies": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=4", - "npm": ">=1.4.28" - } - }, - "node_modules/node-musickit-api/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", - "dev": true - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm-conf": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/npm-conf/-/npm-conf-1.1.3.tgz", - "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", - "dev": true, - "optional": true, - "dependencies": { - "config-chain": "^1.1.11", - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-conf/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "dev": true, - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - } - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmmirror.com/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmmirror.com/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmmirror.com/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/opener": { - "version": "1.5.2", - "resolved": "https://registry.npmmirror.com/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "dev": true, - "bin": { - "opener": "bin/opener-bin.js" - } - }, - "node_modules/ora": { - "version": "5.4.1", - "resolved": "https://registry.npmmirror.com/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/ora/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmmirror.com/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "dependencies": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmmirror.com/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "dependencies": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", - "dev": true - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "dependencies": { - "parse5": "^6.0.1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/peek-readable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/plist": { - "version": "3.0.6", - "resolved": "https://registry.npmmirror.com/plist/-/plist-3.0.6.tgz", - "integrity": "sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA==", - "dev": true, - "dependencies": { - "base64-js": "^1.5.1", - "xmlbuilder": "^15.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/portfinder": { - "version": "1.0.32", - "resolved": "https://registry.npmmirror.com/portfinder/-/portfinder-1.0.32.tgz", - "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", - "dev": true, - "dependencies": { - "async": "^2.6.4", - "debug": "^3.2.7", - "mkdirp": "^0.5.6" - }, - "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/portfinder/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmmirror.com/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - }, - "peerDependencies": { - "postcss": "^8.2.2" - } - }, - "node_modules/postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmmirror.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-loader": { - "version": "6.2.1", - "resolved": "https://registry.npmmirror.com/postcss-loader/-/postcss-loader-6.2.1.tgz", - "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", - "dev": true, - "dependencies": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.5" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "postcss": "^7.0.0 || ^8.0.1", - "webpack": "^5.0.0" - } - }, - "node_modules/postcss-loader/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postcss-loader/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/postcss-loader/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmmirror.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmmirror.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "dev": true, - "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmmirror.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmmirror.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.1.tgz", - "integrity": "sha512-Zr/dB+IlXaEqdoslLHhhqecwj73vc3rDmOpsBNBEVk7P2aqAlz+Ijy0fFbU5Ie9PtreDOIgGa9MsLWakVGl+fA==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "dev": true, - "dependencies": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmmirror.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "dev": true, - "dependencies": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "dev": true, - "dependencies": { - "postcss-selector-parser": "^6.0.5" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "dev": true, - "optional": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/progress-webpack-plugin": { - "version": "1.0.16", - "resolved": "https://registry.npmmirror.com/progress-webpack-plugin/-/progress-webpack-plugin-1.0.16.tgz", - "integrity": "sha512-sdiHuuKOzELcBANHfrupYo+r99iPRyOnw15qX+rNlVUqXGfjXdH4IgxriKwG1kNJwVswKQHMdj1hYZMcb9jFaA==", - "dev": true, - "dependencies": { - "chalk": "^2.1.0", - "figures": "^2.0.0", - "log-update": "^2.3.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "node_modules/proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "dev": true, - "optional": true - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmmirror.com/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-addr/node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/pumpify": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/pumpify/-/pumpify-2.0.1.tgz", - "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", - "dev": true, - "dependencies": { - "duplexify": "^4.1.1", - "inherits": "^2.0.3", - "pump": "^3.0.0" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "dependencies": { - "escape-goat": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dev": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "node_modules/random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmmirror.com/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/read-config-file": { - "version": "6.2.0", - "resolved": "https://registry.npmmirror.com/read-config-file/-/read-config-file-6.2.0.tgz", - "integrity": "sha512-gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==", - "dev": true, - "dependencies": { - "dotenv": "^9.0.2", - "dotenv-expand": "^5.1.0", - "js-yaml": "^4.1.0", - "json5": "^2.2.0", - "lazy-val": "^1.0.4" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/read-config-file/node_modules/dotenv": { - "version": "9.0.2", - "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-9.0.2.tgz", - "integrity": "sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "dependencies": { - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/realtime-bpm-analyzer": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/realtime-bpm-analyzer/-/realtime-bpm-analyzer-3.2.1.tgz", - "integrity": "sha512-q2jlMLwkPlZsCJk/e8gTM8qlqcOITnpUTPbWdwPBgvKGzixIMh7VmseRqxULKFdJWOrgM0GLTXzWys6JDmiQMw==" - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" - }, - "node_modules/regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmmirror.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmmirror.com/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dev": true, - "dependencies": { - "rc": "1.2.8" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "dependencies": { - "rc": "^1.2.8" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmmirror.com/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmmirror.com/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "dev": true, - "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - } - }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmmirror.com/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/request/node_modules/qs": { - "version": "6.5.3", - "resolved": "https://registry.npmmirror.com/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/request/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dev": true, - "dependencies": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "dependencies": { - "lowercase-keys": "^1.0.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/retry": { - "version": "0.13.1", - "resolved": "https://registry.npmmirror.com/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/roarr": { - "version": "2.15.4", - "resolved": "https://registry.npmmirror.com/roarr/-/roarr-2.15.4.tgz", - "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", - "dev": true, - "optional": true, - "dependencies": { - "boolean": "^3.0.1", - "detect-node": "^2.0.4", - "globalthis": "^1.0.1", - "json-stringify-safe": "^5.0.1", - "semver-compare": "^1.0.0", - "sprintf-js": "^1.1.2" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/sanitize-filename": { - "version": "1.6.3", - "resolved": "https://registry.npmmirror.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz", - "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", - "dev": true, - "dependencies": { - "truncate-utf8-bytes": "^1.0.0" - } - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 8.9.0" - } - }, - "node_modules/select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "dev": true, - "dependencies": { - "node-forge": "^1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true, - "optional": true - }, - "node_modules/semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "dependencies": { - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmmirror.com/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/serialize-error": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/serialize-error/-/serialize-error-7.0.1.tgz", - "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", - "dev": true, - "optional": true, - "dependencies": { - "type-fest": "^0.13.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/serialize-error/node_modules/type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-index/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/serve-index/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmmirror.com/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-index/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/serve-index/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/serve-index/node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "node_modules/serve-index/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmmirror.com/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmmirror.com/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dev": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shebang-loader": { - "version": "0.0.1", - "resolved": "https://registry.npmmirror.com/shebang-loader/-/shebang-loader-0.0.1.tgz", - "integrity": "sha512-nQvhUHvKyzGK5aqPxHfHB5nlAN2EZ2U61S2G0YrxAuCRU5iGhFcxxRiaAdb18UoRS1zVMhRz4gdQ1xFEg3AOyA==", - "dev": true - }, - "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", - "dev": true - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmmirror.com/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "dev": true, - "dependencies": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "optional": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "optional": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "optional": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "optional": true - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmmirror.com/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "dependencies": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "node_modules/source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmmirror.com/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", - "dev": true - }, - "node_modules/spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmmirror.com/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "dependencies": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "node_modules/split2": { - "version": "3.2.2", - "resolved": "https://registry.npmmirror.com/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "dependencies": { - "readable-stream": "^3.0.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true, - "optional": true - }, - "node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmmirror.com/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmmirror.com/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", - "dev": true - }, - "node_modules/stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmmirror.com/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", - "dev": true - }, - "node_modules/standardized-audio-context": { - "version": "25.3.58", - "resolved": "https://registry.npmjs.org/standardized-audio-context/-/standardized-audio-context-25.3.58.tgz", - "integrity": "sha512-1p5wVGiy4MfmhEt9MRY8yjZdkX+fi5jMxG1lqnAS1YmLUpE9VrOowxSINQ9Gjs89dFZMaENVwcMSPeQCjlz90Q==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "automation-events": "^6.0.11", - "tslib": "^2.6.2" - } - }, - "node_modules/stat-mode": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/stat-mode/-/stat-mode-1.0.0.tgz", - "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strtok3": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", - "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" - } - }, - "node_modules/sumchecker": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/sumchecker/-/sumchecker-3.0.1.tgz", - "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", - "dev": true, - "dependencies": { - "debug": "^4.1.0" - }, - "engines": { - "node": ">= 8.0" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", - "dev": true - }, - "node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmmirror.com/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dev": true, - "dependencies": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "bin": { - "svgo": "bin/svgo" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/svgo/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar": { - "version": "6.1.15", - "resolved": "https://registry.npmmirror.com/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tar/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/tar/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/temp-file": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/temp-file/-/temp-file-3.4.0.tgz", - "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", - "dev": true, - "dependencies": { - "async-exit-hook": "^2.0.1", - "fs-extra": "^10.0.0" - } - }, - "node_modules/temp-file/node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/terser": { - "version": "5.17.4", - "resolved": "https://registry.npmmirror.com/terser/-/terser-5.17.4.tgz", - "integrity": "sha512-jcEKZw6UPrgugz/0Tuk/PVyLAPfMBJf5clnGueo45wTweoV8yh7Q7PEkhkJ5uuUbC7zAxEcG3tqNr1bstkQ8nw==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" - }, - "engines": { - "node": ">= 10.13.0" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmmirror.com/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmmirror.com/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/thread-loader": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/thread-loader/-/thread-loader-3.0.4.tgz", - "integrity": "sha512-ByaL2TPb+m6yArpqQUZvP+5S1mZtXsEP7nWKKlAUTm7fCml8kB5s1uI3+eHRP2bk5mVYfRSBI7FFf+tWEyLZwA==", - "dev": true, - "dependencies": { - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^4.1.0", - "loader-utils": "^2.0.0", - "neo-async": "^2.6.2", - "schema-utils": "^3.0.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/thread-loader/node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, - "node_modules/thread-loader/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", - "dev": true, - "dependencies": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - }, - "node_modules/through2-map": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/through2-map/-/through2-map-3.0.0.tgz", - "integrity": "sha512-Ms68QPbSJKjRYY7fmqZHB0VGt+vD0/tjmDHUWgxltjifCof6hZWWeQAEi27Wjbs7jyNlIIyerQw/TVj7gHkd/Q==", - "dev": true, - "dependencies": { - "through2": "~2.0.0", - "xtend": "^4.0.0" - } - }, - "node_modules/through2/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/through2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/through2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/tmp-promise": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/tmp-promise/-/tmp-promise-3.0.3.tgz", - "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", - "dev": true, - "dependencies": { - "tmp": "^0.2.0" - } - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/token-types": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", - "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/truncate-utf8-bytes": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", - "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", - "dev": true, - "dependencies": { - "utf8-byte-length": "^1.0.1" - } - }, - "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "node_modules/tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmmirror.com/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.6.11 <=0.7.0 || >=0.7.3" - } - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmmirror.com/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmmirror.com/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmmirror.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "dependencies": { - "random-bytes": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "dependencies": { - "crypto-random-string": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unzip-crx": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/unzip-crx/-/unzip-crx-0.2.0.tgz", - "integrity": "sha512-6LGdnpdnX5mkTdjdsZVuKRC63ht8pgOUGYYYK/wsDtgw81+W7WUBXLHzhhAcc/lxUvK7ByqZAzlwaa9U6CMSCQ==", - "dev": true, - "dependencies": { - "jszip": "^3.1.0", - "mkdirp": "^0.5.1", - "yaku": "^0.16.6" - } - }, - "node_modules/unzip-crx-3": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/unzip-crx-3/-/unzip-crx-3-0.2.0.tgz", - "integrity": "sha512-0+JiUq/z7faJ6oifVB5nSwt589v1KCduqIJupNVDoWSXZtWDmjDGO3RAEOvwJ07w90aoXoP4enKsR7ecMrJtWQ==", - "dev": true, - "dependencies": { - "jszip": "^3.1.0", - "mkdirp": "^0.5.1", - "yaku": "^0.16.6" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dev": true, - "dependencies": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/update-notifier/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/update-notifier/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "node_modules/update-notifier/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/update-notifier/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/update-notifier/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/update-notifier/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/update-notifier/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/update-notifier/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/update-notifier/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "dependencies": { - "prepend-http": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/utf8-byte-length": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", - "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==", - "dev": true - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "node_modules/utila": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/verror": { - "version": "1.10.1", - "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.1.tgz", - "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", - "dev": true, - "optional": true, - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true, - "optional": true - }, - "node_modules/vue": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", - "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "node_modules/vue-cli-plugin-electron-builder": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/vue-cli-plugin-electron-builder/-/vue-cli-plugin-electron-builder-2.1.1.tgz", - "integrity": "sha512-ZrxFZ2uxgpwyFUE8LtguYqaTzSfZ1osME1uFlIj/Iz7GtLrATqs23n/BkKEpyEf5nYNAylzIM8ykGAfH/0QdmA==", - "dev": true, - "dependencies": { - "@vue/cli-shared-utils": "^4.5.6", - "chokidar": "^3.0.2", - "electron-builder": "^22.2.0", - "execa": "^5.0.0", - "friendly-errors-webpack-plugin": "^1.7.0", - "fs-extra": "^9.0.1", - "lodash.merge": "^4.6.1", - "portfinder": "^1.0.16", - "pumpify": "^2.0.1", - "semver": "^7.3.2", - "shebang-loader": "^0.0.1", - "split2": "^3.0.0", - "terser-webpack-plugin": "^3.0.3", - "through2-filter": "^3.0.0", - "through2-map": "^3.0.0", - "unzip-crx": "^0.2.0", - "webpack": "^5.0.0", - "webpack-chain": "^6.0.0", - "webpack-merge": "^4.2.2", - "yargs": "^15.3.1" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/@achrinza/node-ipc": { - "version": "9.2.2", - "resolved": "https://registry.npmmirror.com/@achrinza/node-ipc/-/node-ipc-9.2.2.tgz", - "integrity": "sha512-b90U39dx0cU6emsOvy5hxU4ApNXnE3+Tuo8XQZfiKTGelDwpMwBVgBP7QX6dGTcJgu/miyJuNJ/2naFBliNWEw==", - "dev": true, - "dependencies": { - "@node-ipc/js-queue": "2.0.3", - "event-pubsub": "4.3.0", - "js-message": "1.0.7" - }, - "engines": { - "node": "8 || 10 || 12 || 14 || 16 || 17" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/@vue/cli-shared-utils": { - "version": "4.5.19", - "resolved": "https://registry.npmmirror.com/@vue/cli-shared-utils/-/cli-shared-utils-4.5.19.tgz", - "integrity": "sha512-JYpdsrC/d9elerKxbEUtmSSU6QRM60rirVubOewECHkBHj+tLNznWq/EhCjswywtePyLaMUK25eTqnTSZlEE+g==", - "dev": true, - "dependencies": { - "@achrinza/node-ipc": "9.2.2", - "@hapi/joi": "^15.0.1", - "chalk": "^2.4.2", - "execa": "^1.0.0", - "launch-editor": "^2.2.1", - "lru-cache": "^5.1.1", - "open": "^6.3.0", - "ora": "^3.4.0", - "read-pkg": "^5.1.1", - "request": "^2.88.2", - "semver": "^6.1.0", - "strip-ansi": "^6.0.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/@vue/cli-shared-utils/node_modules/execa": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/@vue/cli-shared-utils/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "dev": true, - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/execa/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/execa/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/execa/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/execa/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "dependencies": { - "chalk": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/open": { - "version": "6.4.0", - "resolved": "https://registry.npmmirror.com/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", - "dev": true, - "dependencies": { - "is-wsl": "^1.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/ora": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/ora/-/ora-3.4.0.tgz", - "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", - "dev": true, - "dependencies": { - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-spinners": "^2.0.0", - "log-symbols": "^2.2.0", - "strip-ansi": "^5.2.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/ora/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "dev": true, - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/restore-cursor/node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/terser": { - "version": "4.8.1", - "resolved": "https://registry.npmmirror.com/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/terser-webpack-plugin": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-3.1.0.tgz", - "integrity": "sha512-cjdZte66fYkZ65rQ2oJfrdCAkkhJA7YLYk5eGOcGCSGlq0ieZupRdjedSQXYknMPo2IveQL+tPdrxUkERENCFA==", - "dev": true, - "dependencies": { - "cacache": "^15.0.5", - "find-cache-dir": "^3.3.1", - "jest-worker": "^26.2.1", - "p-limit": "^3.0.2", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.8.0", - "webpack-sources": "^1.4.3" - }, - "engines": { - "node": ">= 10.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, - "dependencies": { - "lodash": "^4.17.15" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "dependencies": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-cli-plugin-electron-builder/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/vue-hot-reload-api": { - "version": "2.3.4", - "resolved": "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", - "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", - "dev": true - }, - "node_modules/vue-loader": { - "version": "17.1.1", - "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-17.1.1.tgz", - "integrity": "sha512-qpqEVkKdrAsgyIBMHaiXurDeCuBWqRyKqg2GI4aG3NbggEls+BLqTZdqahbJJh7fm83sz+iz3gg6eDWdbNlG7Q==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "hash-sum": "^2.0.0", - "watchpack": "^2.4.0" - }, - "peerDependencies": { - "webpack": "^5.0.0-0" - }, - "peerDependenciesMeta": { - "@vue/compiler-sfc": { - "optional": true - }, - "vue": { - "optional": true - } - } - }, - "node_modules/vue-loader/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-loader/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-loader/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/vue-loader/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/vue-loader/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-loader/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/vue-router": { - "version": "4.2.1", - "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.2.1.tgz", - "integrity": "sha512-nW28EeifEp8Abc5AfmAShy5ZKGsGzjcnZ3L1yc2DYUo+MqbBClrRP9yda3dIekM4I50/KnEwo1wkBLf7kHH5Cw==", - "dependencies": { - "@vue/devtools-api": "^6.5.0" - }, - "peerDependencies": { - "vue": "^3.2.0" - } - }, - "node_modules/vue-style-loader": { - "version": "4.1.3", - "resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz", - "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", - "dev": true, - "dependencies": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" - } - }, - "node_modules/vue-style-loader/node_modules/hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "node_modules/vue-template-es2015-compiler": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", - "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", - "dev": true - }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmmirror.com/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/web-audio-beat-detector": { - "version": "8.1.55", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector/-/web-audio-beat-detector-8.1.55.tgz", - "integrity": "sha512-K/RdkLNl+oBSM9lXb7t2scdqXhk4nkG8+6abknRD3YM+VP4nSYIugN7p8Bm/4EYZua1GWx7JeJXDDdrfFhabYg==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2", - "web-audio-beat-detector-broker": "^4.0.92", - "web-audio-beat-detector-worker": "^5.2.43" - } - }, - "node_modules/web-audio-beat-detector-broker": { - "version": "4.0.92", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector-broker/-/web-audio-beat-detector-broker-4.0.92.tgz", - "integrity": "sha512-uxCHh9iVlS4fqc1Tn2A3jIybeoyvmtm1pqvC0/k2IjmcW44pIvaZMMkHCLf7SPJmPZMlbotBR4LDatnRacE5zA==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "fast-unique-numbers": "^8.0.10", - "standardized-audio-context": "^25.3.58", - "tslib": "^2.6.2", - "web-audio-beat-detector-worker": "^5.2.43" - } - }, - "node_modules/web-audio-beat-detector-worker": { - "version": "5.2.43", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector-worker/-/web-audio-beat-detector-worker-5.2.43.tgz", - "integrity": "sha512-/7U/eHDixwM5NBGZ6CEF9K5D5XrhJbRawY+52vrpIkhHpoyaM0EF02LDwW8WZ7lLjTDo0ab/WzjUIO+oeUpEDg==", - "dependencies": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/webpack": { - "version": "5.83.1", - "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.83.1.tgz", - "integrity": "sha512-TNsG9jDScbNuB+Lb/3+vYolPplCS3bbEaJf+Bj0Gw4DhP3ioAflBb1flcRt9zsWITyvOhM96wMQNRWlSX52DgA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.14.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmmirror.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "dev": true, - "dependencies": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/webpack-bundle-analyzer/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-bundle-analyzer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-chain": { - "version": "6.5.1", - "resolved": "https://registry.npmmirror.com/webpack-chain/-/webpack-chain-6.5.1.tgz", - "integrity": "sha512-7doO/SRtLu8q5WM0s7vPKPWX580qhi0/yBHkOxNkv50f6qB76Zy9o2wRTrrPULqYTvQlVHuvbA8v+G5ayuUDsA==", - "dev": true, - "dependencies": { - "deepmerge": "^1.5.2", - "javascript-stringify": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmmirror.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.15.0", - "resolved": "https://registry.npmmirror.com/webpack-dev-server/-/webpack-dev-server-4.15.0.tgz", - "integrity": "sha512-HmNB5QeSl1KpulTBQ8UT4FPrByYyaLxpJoQ0+s7EvUrMc16m0ZS1sgb1XGqzmgCPk0c9y+aaXxn11tbLzuM7NQ==", - "dev": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.13.0" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "webpack": { - "optional": true - }, - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "node_modules/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmmirror.com/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmmirror.com/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.4.6", - "resolved": "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.6.tgz", - "integrity": "sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==", - "dev": true - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmmirror.com/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmmirror.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/whatwg-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmmirror.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmmirror.com/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true - }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmmirror.com/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - "dev": true, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yaku": { - "version": "0.16.7", - "resolved": "https://registry.npmmirror.com/yaku/-/yaku-0.16.7.tgz", - "integrity": "sha512-Syu3IB3rZvKvYk7yTiyl1bo/jiEFaaStrgv1V2TIJTqYPStSMQVO8EQjg/z+DRzLq/4LIIharNT3iH1hylEIRw==", - "dev": true - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmmirror.com/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - } - } - }, - "dependencies": { - "@achrinza/node-ipc": { - "version": "9.2.6", - "resolved": "https://registry.npmmirror.com/@achrinza/node-ipc/-/node-ipc-9.2.6.tgz", - "integrity": "sha512-ULSIYPy4ZPM301dfCxRz0l2GJjOwIo/PqmWonIu1bLml7UmnVQmH+juJcoyXp6E8gIRRNAjGYftJnNQlfy4vPg==", - "dev": true, - "requires": { - "@node-ipc/js-queue": "2.0.3", - "event-pubsub": "4.3.0", - "js-message": "1.0.7" - } - }, - "@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", - "dev": true, - "requires": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" - } - }, - "@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", - "dev": true - }, - "@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - } - }, - "@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz", - "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==", - "dev": true, - "requires": { - "@babel/types": "^7.21.5" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz", - "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.21.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6", - "semver": "^6.3.0" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmmirror.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz", - "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1", - "semver": "^6.3.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz", - "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==", - "dev": true, - "requires": { - "@babel/types": "^7.21.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", - "dev": true, - "requires": { - "@babel/types": "^7.21.4" - } - }, - "@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", - "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" - } - }, - "@babel/helper-replace-supers": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz", - "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - } - }, - "@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", - "dev": true, - "requires": { - "@babel/types": "^7.21.5" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmmirror.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dev": true, - "requires": { - "@babel/types": "^7.20.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmmirror.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - } - }, - "@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", - "dev": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - } - }, - "@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==" - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-decorators": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.21.0.tgz", - "integrity": "sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/plugin-syntax-decorators": "^7.21.0" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-decorators": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.21.0.tgz", - "integrity": "sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.19.0" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz", - "integrity": "sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", - "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.21.5" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", - "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/template": "^7.20.7" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.21.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", - "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", - "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.21.5" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", - "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-simple-access": "^7.21.5" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.21.3", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", - "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", - "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.21.5", - "regenerator-transform": "^0.15.1" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.21.4", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.21.4.tgz", - "integrity": "sha512-1J4dhrw1h1PqnNNpzwxQ2UBymJUF8KuPjAAnlLwZcGhHAIqUigFW7cdK6GHoB64ubY4qXQNYknoUeks4Wz7CUA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-plugin-utils": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", - "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.21.5" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/preset-env": { - "version": "7.21.5", - "resolved": "https://registry.npmmirror.com/@babel/preset-env/-/preset-env-7.21.5.tgz", - "integrity": "sha512-wH00QnTTldTbf/IefEVyChtRdw5RJvODT/Vb4Vcxq1AZvtXj6T0YeX0cAcXhI6/BdGuiP3GcNIL4OQbI2DVNxg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", - "@babel/plugin-proposal-async-generator-functions": "^7.20.7", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.21.0", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.21.0", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.21.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.21.5", - "@babel/plugin-transform-async-to-generator": "^7.20.7", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.21.0", - "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.21.5", - "@babel/plugin-transform-destructuring": "^7.21.3", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.5", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.5", - "@babel/plugin-transform-modules-systemjs": "^7.20.11", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.21.3", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.21.5", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.20.7", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.21.5", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.5", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - } - }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmmirror.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmmirror.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, - "@babel/runtime": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.2.tgz", - "integrity": "sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==", - "requires": { - "regenerator-runtime": "^0.14.0" - } - }, - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - }, - "@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@develar/schema-utils": { - "version": "2.6.5", - "resolved": "https://registry.npmmirror.com/@develar/schema-utils/-/schema-utils-2.6.5.tgz", - "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", - "dev": true, - "requires": { - "ajv": "^6.12.0", - "ajv-keywords": "^3.4.1" - } - }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmmirror.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@electron/get": { - "version": "1.14.1", - "resolved": "https://registry.npmmirror.com/@electron/get/-/get-1.14.1.tgz", - "integrity": "sha512-BrZYyL/6m0ZXz/lDxy/nlVhQz+WF+iPS6qXolEU8atw7h6v1aYkjwJZ63m+bJMBTxDE66X+r2tPS4a/8C82sZw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "env-paths": "^2.2.0", - "fs-extra": "^8.1.0", - "global-agent": "^3.0.0", - "global-tunnel-ng": "^2.7.1", - "got": "^9.6.0", - "progress": "^2.0.3", - "semver": "^6.2.0", - "sumchecker": "^3.0.1" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - } - } - }, - "@electron/universal": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/@electron/universal/-/universal-1.0.5.tgz", - "integrity": "sha512-zX9O6+jr2NMyAdSkwEUlyltiI4/EBLu2Ls/VD3pUQdi3cAYeYfdQnT2AJJ38HE4QxLccbU13LSpccw1IWlkyag==", - "dev": true, - "requires": { - "@malept/cross-spawn-promise": "^1.1.0", - "asar": "^3.0.3", - "debug": "^4.3.1", - "dir-compare": "^2.4.0", - "fs-extra": "^9.0.1" - } - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@hapi/address": { - "version": "2.1.4", - "resolved": "https://registry.npmmirror.com/@hapi/address/-/address-2.1.4.tgz", - "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==", - "dev": true - }, - "@hapi/bourne": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/@hapi/bourne/-/bourne-1.3.2.tgz", - "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==", - "dev": true - }, - "@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmmirror.com/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", - "dev": true - }, - "@hapi/joi": { - "version": "15.1.1", - "resolved": "https://registry.npmmirror.com/@hapi/joi/-/joi-15.1.1.tgz", - "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", - "dev": true, - "requires": { - "@hapi/address": "2.x.x", - "@hapi/bourne": "1.x.x", - "@hapi/hoek": "8.x.x", - "@hapi/topo": "3.x.x" - }, - "dependencies": { - "@hapi/hoek": { - "version": "8.5.1", - "resolved": "https://registry.npmmirror.com/@hapi/hoek/-/hoek-8.5.1.tgz", - "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==", - "dev": true - }, - "@hapi/topo": { - "version": "3.1.6", - "resolved": "https://registry.npmmirror.com/@hapi/topo/-/topo-3.1.6.tgz", - "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", - "dev": true, - "requires": { - "@hapi/hoek": "^8.3.0" - } - } - } - }, - "@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "dev": true, - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - }, - "dependencies": { - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - } - } - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@malept/cross-spawn-promise": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz", - "integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.1" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "@malept/flatpak-bundler": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", - "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "fs-extra": "^9.0.0", - "lodash": "^4.17.15", - "tmp-promise": "^3.0.2" - } - }, - "@node-ipc/js-queue": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/@node-ipc/js-queue/-/js-queue-2.0.3.tgz", - "integrity": "sha512-fL1wpr8hhD5gT2dA1qifeVaoDFlQR5es8tFuKqjHX+kdOtdNHnxkVZbtIrR2rxnMFvehkjaZRNV2H/gPXlb0hw==", - "dev": true, - "requires": { - "easy-stack": "1.0.1" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } - } - }, - "@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmmirror.com/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", - "dev": true - }, - "@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", - "dev": true, - "requires": { - "@hapi/hoek": "^9.0.0" - } - }, - "@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", - "dev": true - }, - "@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", - "dev": true - }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true - }, - "@soda/friendly-errors-webpack-plugin": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz", - "integrity": "sha512-h2ooWqP8XuFqTXT+NyAFbrArzfQA7R6HTezADrvD9Re8fxMLTPPniLdqVTdDaO0eIoLaAwKT+d6w+5GeTk7Vbg==", - "dev": true, - "requires": { - "chalk": "^3.0.0", - "error-stack-parser": "^2.0.6", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@soda/get-current-script": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/@soda/get-current-script/-/get-current-script-1.0.2.tgz", - "integrity": "sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==", - "dev": true - }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "requires": { - "defer-to-connect": "^1.0.1" - } - }, - "@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" - }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true - }, - "@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmmirror.com/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmmirror.com/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmmirror.com/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.5.0", - "resolved": "https://registry.npmmirror.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==", - "dev": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmmirror.com/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", - "dev": true, - "requires": { - "@types/ms": "*" - } - }, - "@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", - "dev": true - }, - "@types/express": { - "version": "4.17.17", - "resolved": "https://registry.npmmirror.com/@types/express/-/express-4.17.17.tgz", - "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.35", - "resolved": "https://registry.npmmirror.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", - "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "@types/fs-extra": { - "version": "9.0.13", - "resolved": "https://registry.npmmirror.com/@types/fs-extra/-/fs-extra-9.0.13.tgz", - "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "optional": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==", - "dev": true - }, - "@types/http-proxy": { - "version": "1.17.11", - "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.11.tgz", - "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", - "dev": true - }, - "@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true, - "optional": true - }, - "@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmmirror.com/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", - "dev": true - }, - "@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmmirror.com/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==", - "dev": true - }, - "@types/node": { - "version": "20.2.1", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.2.1.tgz", - "integrity": "sha512-DqJociPbZP1lbZ5SQPk4oag6W7AyaGMO6gSfRwq3PWl4PXTwJpRQJhDq4W0kzrg3w6tJ1SwlvGZ5uKFHY13LIg==", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmmirror.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@types/plist": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/@types/plist/-/plist-3.0.2.tgz", - "integrity": "sha512-ULqvZNGMv0zRFvqn8/4LSPtnmN4MfhlPNtJCTpKuIIxGVGZ2rYWzFXrvEBoh9CVyqSE7D6YFRJ1hydLHI6kbWw==", - "dev": true, - "optional": true, - "requires": { - "@types/node": "*", - "xmlbuilder": ">=11.0.1" - } - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmmirror.com/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true - }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmmirror.com/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/send": { - "version": "0.17.1", - "resolved": "https://registry.npmmirror.com/@types/send/-/send-0.17.1.tgz", - "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", - "dev": true, - "requires": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.15.1", - "resolved": "https://registry.npmmirror.com/@types/serve-static/-/serve-static-1.15.1.tgz", - "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmmirror.com/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/verror": { - "version": "1.10.6", - "resolved": "https://registry.npmmirror.com/@types/verror/-/verror-1.10.6.tgz", - "integrity": "sha512-NNm+gdePAX1VGvPcGZCDKQZKYSiAWigKhKaz5KF94hG6f2s8de9Ow5+7AbXoeKxL8gavZfk4UquSAygOF2duEQ==", - "dev": true, - "optional": true - }, - "@types/ws": { - "version": "8.5.4", - "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.5.4.tgz", - "integrity": "sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmmirror.com/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", - "dev": true - }, - "@vue/babel-helper-vue-jsx-merge-props": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.4.0.tgz", - "integrity": "sha512-JkqXfCkUDp4PIlFdDQ0TdXoIejMtTHP67/pvxlgeY+u5k3LEdKuWZ3LK6xkxo52uDoABIVyRwqVkfLQJhk7VBA==", - "dev": true - }, - "@vue/babel-helper-vue-transform-on": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.0.2.tgz", - "integrity": "sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==", - "dev": true - }, - "@vue/babel-plugin-jsx": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.1.tgz", - "integrity": "sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "@vue/babel-helper-vue-transform-on": "^1.0.2", - "camelcase": "^6.0.0", - "html-tags": "^3.1.0", - "svg-tags": "^1.0.0" - } - }, - "@vue/babel-plugin-transform-vue-jsx": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.4.0.tgz", - "integrity": "sha512-Fmastxw4MMx0vlgLS4XBX0XiBbUFzoMGeVXuMV08wyOfXdikAFqBTuYPR0tlk+XskL19EzHc39SgjrPGY23JnA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "html-tags": "^2.0.0", - "lodash.kebabcase": "^4.1.1", - "svg-tags": "^1.0.0" - }, - "dependencies": { - "html-tags": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-2.0.0.tgz", - "integrity": "sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g==", - "dev": true - } - } - }, - "@vue/babel-preset-app": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/babel-preset-app/-/babel-preset-app-5.0.8.tgz", - "integrity": "sha512-yl+5qhpjd8e1G4cMXfORkkBlvtPCIgmRf3IYCWYDKIQ7m+PPa5iTm4feiNmCMD6yGqQWMhhK/7M3oWGL9boKwg==", - "dev": true, - "requires": { - "@babel/core": "^7.12.16", - "@babel/helper-compilation-targets": "^7.12.16", - "@babel/helper-module-imports": "^7.12.13", - "@babel/plugin-proposal-class-properties": "^7.12.13", - "@babel/plugin-proposal-decorators": "^7.12.13", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-jsx": "^7.12.13", - "@babel/plugin-transform-runtime": "^7.12.15", - "@babel/preset-env": "^7.12.16", - "@babel/runtime": "^7.12.13", - "@vue/babel-plugin-jsx": "^1.0.3", - "@vue/babel-preset-jsx": "^1.1.2", - "babel-plugin-dynamic-import-node": "^2.3.3", - "core-js": "^3.8.3", - "core-js-compat": "^3.8.3", - "semver": "^7.3.4" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "@vue/babel-preset-jsx": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-preset-jsx/-/babel-preset-jsx-1.4.0.tgz", - "integrity": "sha512-QmfRpssBOPZWL5xw7fOuHNifCQcNQC1PrOo/4fu6xlhlKJJKSA3HqX92Nvgyx8fqHZTUGMPHmFA+IDqwXlqkSA==", - "dev": true, - "requires": { - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "@vue/babel-sugar-composition-api-inject-h": "^1.4.0", - "@vue/babel-sugar-composition-api-render-instance": "^1.4.0", - "@vue/babel-sugar-functional-vue": "^1.4.0", - "@vue/babel-sugar-inject-h": "^1.4.0", - "@vue/babel-sugar-v-model": "^1.4.0", - "@vue/babel-sugar-v-on": "^1.4.0" - } - }, - "@vue/babel-sugar-composition-api-inject-h": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.4.0.tgz", - "integrity": "sha512-VQq6zEddJHctnG4w3TfmlVp5FzDavUSut/DwR0xVoe/mJKXyMcsIibL42wPntozITEoY90aBV0/1d2KjxHU52g==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@vue/babel-sugar-composition-api-render-instance": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.4.0.tgz", - "integrity": "sha512-6ZDAzcxvy7VcnCjNdHJ59mwK02ZFuP5CnucloidqlZwVQv5CQLijc3lGpR7MD3TWFi78J7+a8J56YxbCtHgT9Q==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@vue/babel-sugar-functional-vue": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.4.0.tgz", - "integrity": "sha512-lTEB4WUFNzYt2In6JsoF9sAYVTo84wC4e+PoZWSgM6FUtqRJz7wMylaEhSRgG71YF+wfLD6cc9nqVeXN2rwBvw==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@vue/babel-sugar-inject-h": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.4.0.tgz", - "integrity": "sha512-muwWrPKli77uO2fFM7eA3G1lAGnERuSz2NgAxuOLzrsTlQl8W4G+wwbM4nB6iewlKbwKRae3nL03UaF5ffAPMA==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@vue/babel-sugar-v-model": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.4.0.tgz", - "integrity": "sha512-0t4HGgXb7WHYLBciZzN5s0Hzqan4Ue+p/3FdQdcaHAb7s5D9WZFGoSxEZHrR1TFVZlAPu1bejTKGeAzaaG3NCQ==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-helper-vue-jsx-merge-props": "^1.4.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "camelcase": "^5.0.0", - "html-tags": "^2.0.0", - "svg-tags": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "html-tags": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-2.0.0.tgz", - "integrity": "sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g==", - "dev": true - } - } - }, - "@vue/babel-sugar-v-on": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.4.0.tgz", - "integrity": "sha512-m+zud4wKLzSKgQrWwhqRObWzmTuyzl6vOP7024lrpeJM4x2UhQtRDLgYjXAw9xBXjCwS0pP9kXjg91F9ZNo9JA==", - "dev": true, - "requires": { - "@babel/plugin-syntax-jsx": "^7.2.0", - "@vue/babel-plugin-transform-vue-jsx": "^1.4.0", - "camelcase": "^5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } - }, - "@vue/cli-overlay": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-overlay/-/cli-overlay-5.0.8.tgz", - "integrity": "sha512-KmtievE/B4kcXp6SuM2gzsnSd8WebkQpg3XaB6GmFh1BJGRqa1UiW9up7L/Q67uOdTigHxr5Ar2lZms4RcDjwQ==", - "dev": true - }, - "@vue/cli-plugin-babel": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-babel/-/cli-plugin-babel-5.0.8.tgz", - "integrity": "sha512-a4qqkml3FAJ3auqB2kN2EMPocb/iu0ykeELwed+9B1c1nQ1HKgslKMHMPavYx3Cd/QAx2mBD4hwKBqZXEI/CsQ==", - "dev": true, - "requires": { - "@babel/core": "^7.12.16", - "@vue/babel-preset-app": "^5.0.8", - "@vue/cli-shared-utils": "^5.0.8", - "babel-loader": "^8.2.2", - "thread-loader": "^3.0.0", - "webpack": "^5.54.0" - } - }, - "@vue/cli-plugin-router": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-router/-/cli-plugin-router-5.0.8.tgz", - "integrity": "sha512-Gmv4dsGdAsWPqVijz3Ux2OS2HkMrWi1ENj2cYL75nUeL+Xj5HEstSqdtfZ0b1q9NCce+BFB6QnHfTBXc/fCvMg==", - "dev": true, - "requires": { - "@vue/cli-shared-utils": "^5.0.8" - } - }, - "@vue/cli-plugin-vuex": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-plugin-vuex/-/cli-plugin-vuex-5.0.8.tgz", - "integrity": "sha512-HSYWPqrunRE5ZZs8kVwiY6oWcn95qf/OQabwLfprhdpFWAGtLStShjsGED2aDpSSeGAskQETrtR/5h7VqgIlBA==", - "dev": true, - "requires": {} - }, - "@vue/cli-service": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-service/-/cli-service-5.0.8.tgz", - "integrity": "sha512-nV7tYQLe7YsTtzFrfOMIHc5N2hp5lHG2rpYr0aNja9rNljdgcPZLyQRb2YRivTHqTv7lI962UXFURcpStHgyFw==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.12.16", - "@soda/friendly-errors-webpack-plugin": "^1.8.0", - "@soda/get-current-script": "^1.0.2", - "@types/minimist": "^1.2.0", - "@vue/cli-overlay": "^5.0.8", - "@vue/cli-plugin-router": "^5.0.8", - "@vue/cli-plugin-vuex": "^5.0.8", - "@vue/cli-shared-utils": "^5.0.8", - "@vue/component-compiler-utils": "^3.3.0", - "@vue/vue-loader-v15": "npm:vue-loader@^15.9.7", - "@vue/web-component-wrapper": "^1.3.0", - "acorn": "^8.0.5", - "acorn-walk": "^8.0.2", - "address": "^1.1.2", - "autoprefixer": "^10.2.4", - "browserslist": "^4.16.3", - "case-sensitive-paths-webpack-plugin": "^2.3.0", - "cli-highlight": "^2.1.10", - "clipboardy": "^2.3.0", - "cliui": "^7.0.4", - "copy-webpack-plugin": "^9.0.1", - "css-loader": "^6.5.0", - "css-minimizer-webpack-plugin": "^3.0.2", - "cssnano": "^5.0.0", - "debug": "^4.1.1", - "default-gateway": "^6.0.3", - "dotenv": "^10.0.0", - "dotenv-expand": "^5.1.0", - "fs-extra": "^9.1.0", - "globby": "^11.0.2", - "hash-sum": "^2.0.0", - "html-webpack-plugin": "^5.1.0", - "is-file-esm": "^1.0.0", - "launch-editor-middleware": "^2.2.1", - "lodash.defaultsdeep": "^4.6.1", - "lodash.mapvalues": "^4.6.0", - "mini-css-extract-plugin": "^2.5.3", - "minimist": "^1.2.5", - "module-alias": "^2.2.2", - "portfinder": "^1.0.26", - "postcss": "^8.2.6", - "postcss-loader": "^6.1.1", - "progress-webpack-plugin": "^1.0.12", - "ssri": "^8.0.1", - "terser-webpack-plugin": "^5.1.1", - "thread-loader": "^3.0.0", - "vue-loader": "^17.0.0", - "vue-style-loader": "^4.1.3", - "webpack": "^5.54.0", - "webpack-bundle-analyzer": "^4.4.0", - "webpack-chain": "^6.5.1", - "webpack-dev-server": "^4.7.3", - "webpack-merge": "^5.7.3", - "webpack-virtual-modules": "^0.4.2", - "whatwg-fetch": "^3.6.2" - } - }, - "@vue/cli-shared-utils": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/@vue/cli-shared-utils/-/cli-shared-utils-5.0.8.tgz", - "integrity": "sha512-uK2YB7bBVuQhjOJF+O52P9yFMXeJVj7ozqJkwYE9PlMHL1LMHjtCYm4cSdOebuPzyP+/9p0BimM/OqxsevIopQ==", - "dev": true, - "requires": { - "@achrinza/node-ipc": "^9.2.5", - "chalk": "^4.1.2", - "execa": "^1.0.0", - "joi": "^17.4.0", - "launch-editor": "^2.2.1", - "lru-cache": "^6.0.0", - "node-fetch": "^2.6.7", - "open": "^8.0.2", - "ora": "^5.3.0", - "read-pkg": "^5.1.1", - "semver": "^7.3.4", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", - "requires": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "source-map-js": "^1.0.2" - } - }, - "@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", - "requires": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", - "requires": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", - "source-map-js": "^1.0.2" - } - }, - "@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", - "requires": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "@vue/component-compiler-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", - "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", - "dev": true, - "requires": { - "consolidate": "^0.15.1", - "hash-sum": "^1.0.2", - "lru-cache": "^4.1.2", - "merge-source-map": "^1.1.0", - "postcss": "^7.0.36", - "postcss-selector-parser": "^6.0.2", - "prettier": "^1.18.2 || ^2.0.0", - "source-map": "~0.6.1", - "vue-template-es2015-compiler": "^1.9.0" - }, - "dependencies": { - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmmirror.com/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - } - } - }, - "@vue/devtools-api": { - "version": "6.5.0", - "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz", - "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==" - }, - "@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", - "requires": { - "@vue/shared": "3.3.4" - } - }, - "@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", - "requires": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" - } - }, - "@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", - "requires": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", - "requires": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" - } - }, - "@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", - "requires": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" - }, - "@vue/vue-loader-v15": { - "version": "npm:vue-loader@15.11.1", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.11.1.tgz", - "integrity": "sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q==", - "dev": true, - "requires": { - "@vue/component-compiler-utils": "^3.1.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - }, - "dependencies": { - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - } - } - }, - "@vue/web-component-wrapper": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz", - "integrity": "sha512-Iu8Tbg3f+emIIMmI2ycSI8QcEuAUgPTgHwesDU1eKMLE4YC/c/sFbGc70QgMq31ijRftV0R7vCm9co6rldCeOA==", - "dev": true - }, - "@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "7zip-bin": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/7zip-bin/-/7zip-bin-5.1.1.tgz", - "integrity": "sha512-sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "dev": true - }, - "acorn-import-assertions": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", - "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, - "requires": {} - }, - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true - }, - "address": { - "version": "1.2.2", - "resolved": "https://registry.npmmirror.com/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "requires": { - "ajv": "^8.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - } - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "requires": { - "string-width": "^4.1.0" - } - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmmirror.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "app-builder-bin": { - "version": "3.7.1", - "resolved": "https://registry.npmmirror.com/app-builder-bin/-/app-builder-bin-3.7.1.tgz", - "integrity": "sha512-ql93vEUq6WsstGXD+SBLSIQw6SNnhbDEM0swzgugytMxLp3rT24Ag/jcC80ZHxiPRTdew1niuR7P3/FCrDqIjw==", - "dev": true - }, - "app-builder-lib": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/app-builder-lib/-/app-builder-lib-22.14.13.tgz", - "integrity": "sha512-SufmrtxU+D0Tn948fjEwAOlCN9757UXLkzzTWXMwZKR/5hisvgqeeBepWfphMIE6OkDGz0fbzEhL1P2Pty4XMg==", - "dev": true, - "requires": { - "@develar/schema-utils": "~2.6.5", - "@electron/universal": "1.0.5", - "@malept/flatpak-bundler": "^0.4.0", - "7zip-bin": "~5.1.1", - "async-exit-hook": "^2.0.1", - "bluebird-lst": "^1.0.9", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chromium-pickle-js": "^0.2.0", - "debug": "^4.3.2", - "ejs": "^3.1.6", - "electron-osx-sign": "^0.5.0", - "electron-publish": "22.14.13", - "form-data": "^4.0.0", - "fs-extra": "^10.0.0", - "hosted-git-info": "^4.0.2", - "is-ci": "^3.0.0", - "isbinaryfile": "^4.0.8", - "js-yaml": "^4.1.0", - "lazy-val": "^1.0.5", - "minimatch": "^3.0.4", - "read-config-file": "6.2.0", - "sanitize-filename": "^1.6.3", - "semver": "^7.3.5", - "temp-file": "^3.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "arch": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "asar": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/asar/-/asar-3.2.0.tgz", - "integrity": "sha512-COdw2ZQvKdFGFxXwX3oYh2/sOsJWJegrdJCGxnN4MZ7IULgRBp9P6665aqj9z1v9VwP4oP1hRBojRDQ//IGgAg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "chromium-pickle-js": "^0.2.0", - "commander": "^5.0.0", - "glob": "^7.1.6", - "minimatch": "^3.0.4" - }, - "dependencies": { - "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "dev": true - } - } - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmmirror.com/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "optional": true - }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmmirror.com/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } - }, - "async-exit-hook": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/async-exit-hook/-/async-exit-hook-2.0.1.tgz", - "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true - }, - "automation-events": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/automation-events/-/automation-events-6.0.11.tgz", - "integrity": "sha512-tUqFMJalQ3OAcbQOXzzNDpxzkuygMQ3eM92lJWJRn6YWJnH4oYIU3pzKipANOul/6L2vDFrOzgXVE21Dv4z/zw==", - "requires": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - } - }, - "autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmmirror.com/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", - "dev": true, - "requires": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - } - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmmirror.com/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true - }, - "aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmmirror.com/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true - }, - "axios": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.1.tgz", - "integrity": "sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==", - "requires": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "babel-loader": { - "version": "8.3.0", - "resolved": "https://registry.npmmirror.com/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "bluebird-lst": { - "version": "1.0.9", - "resolved": "https://registry.npmmirror.com/bluebird-lst/-/bluebird-lst-1.0.9.tgz", - "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==", - "dev": true, - "requires": { - "bluebird": "^3.5.5" - } - }, - "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmmirror.com/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "bonjour-service": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/bonjour-service/-/bonjour-service-1.1.1.tgz", - "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "boolean": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/boolean/-/boolean-3.2.0.tgz", - "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", - "dev": true, - "optional": true - }, - "boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", - "dev": true - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true - }, - "buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha512-tcBWO2Dl4e7Asr9hTGcpVrCe+F7DubpmqWCTbj4FHLmjqO2hIaC383acQubWtRJhdceqs5uBHs6Es+Sk//RKiQ==", - "dev": true - }, - "buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "builder-util": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/builder-util/-/builder-util-22.14.13.tgz", - "integrity": "sha512-oePC/qrrUuerhmH5iaCJzPRAKlSBylrhzuAJmRQClTyWnZUv6jbaHh+VoHMbEiE661wrj2S2aV7/bQh12cj1OA==", - "dev": true, - "requires": { - "@types/debug": "^4.1.6", - "@types/fs-extra": "^9.0.11", - "7zip-bin": "~5.1.1", - "app-builder-bin": "3.7.1", - "bluebird-lst": "^1.0.9", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "cross-spawn": "^7.0.3", - "debug": "^4.3.2", - "fs-extra": "^10.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-ci": "^3.0.0", - "js-yaml": "^4.1.0", - "source-map-support": "^0.5.19", - "stat-mode": "^1.0.0", - "temp-file": "^3.4.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "builder-util-runtime": { - "version": "8.9.2", - "resolved": "https://registry.npmmirror.com/builder-util-runtime/-/builder-util-runtime-8.9.2.tgz", - "integrity": "sha512-rhuKm5vh7E0aAmT6i8aoSfEjxzdYEFX7zDApK+eNgOhjofnWb74d9SRJv0H/8nsgOkos0TZ4zxW0P8J4N7xQ2A==", - "dev": true, - "requires": { - "debug": "^4.3.2", - "sax": "^1.2.4" - } - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmmirror.com/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true - } - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" - } - }, - "caniuse-lite": { - "version": "1.0.30001488", - "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001488.tgz", - "integrity": "sha512-NORIQuuL4xGpIy6iCCQGN4iFjlBXtfKWIenlUuyZJumLRIindLb7wXM+GO8erEhb7vXfcnf4BAg2PrSDN5TNLQ==", - "dev": true - }, - "case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmmirror.com/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "chromium-pickle-js": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", - "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", - "dev": true - }, - "ci-info": { - "version": "3.8.0", - "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", - "dev": true - }, - "clean-css": { - "version": "5.3.2", - "resolved": "https://registry.npmmirror.com/clean-css/-/clean-css-5.3.2.tgz", - "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-highlight": { - "version": "2.1.11", - "resolved": "https://registry.npmmirror.com/cli-highlight/-/cli-highlight-2.1.11.tgz", - "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "highlight.js": "^10.7.1", - "mz": "^2.4.0", - "parse5": "^5.1.1", - "parse5-htmlparser2-tree-adapter": "^6.0.0", - "yargs": "^16.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "cli-spinners": { - "version": "2.9.0", - "resolved": "https://registry.npmmirror.com/cli-spinners/-/cli-spinners-2.9.0.tgz", - "integrity": "sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==", - "dev": true - }, - "cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", - "dev": true, - "optional": true, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - } - }, - "clipboardy": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/clipboardy/-/clipboardy-2.3.0.tgz", - "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", - "dev": true, - "requires": { - "arch": "^2.1.1", - "execa": "^1.0.0", - "is-wsl": "^2.1.1" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "colord": { - "version": "2.9.3", - "resolved": "https://registry.npmmirror.com/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", - "dev": true - }, - "colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/colors/-/colors-1.0.3.tgz", - "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "8.3.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "compare-version": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/compare-version/-/compare-version-0.1.2.tgz", - "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", - "dev": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmmirror.com/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmmirror.com/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmmirror.com/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dev": true, - "optional": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "optional": true - } - } - }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - } - }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true - }, - "consolidate": { - "version": "0.15.1", - "resolved": "https://registry.npmmirror.com/consolidate/-/consolidate-0.15.1.tgz", - "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", - "dev": true, - "requires": { - "bluebird": "^3.1.1" - } - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" - }, - "copy-webpack-plugin": { - "version": "9.1.0", - "resolved": "https://registry.npmmirror.com/copy-webpack-plugin/-/copy-webpack-plugin-9.1.0.tgz", - "integrity": "sha512-rxnR7PaGigJzhqETHGmAcxKnLZSR5u1Y3/bcIv/1FnqXedcL/E2ewK7ZCNrArJKCiSv8yVXhTqetJh8inDvfsA==", - "dev": true, - "requires": { - "fast-glob": "^3.2.7", - "glob-parent": "^6.0.1", - "globby": "^11.0.3", - "normalize-path": "^3.0.0", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "core-js": { - "version": "3.30.2", - "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.30.2.tgz", - "integrity": "sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg==" - }, - "core-js-compat": { - "version": "3.30.2", - "resolved": "https://registry.npmmirror.com/core-js-compat/-/core-js-compat-3.30.2.tgz", - "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", - "dev": true, - "requires": { - "browserslist": "^4.21.5" - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmmirror.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "crc": { - "version": "3.8.0", - "resolved": "https://registry.npmmirror.com/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "dev": true, - "optional": true, - "requires": { - "buffer": "^5.1.0" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - } - } - }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true - }, - "css-declaration-sorter": { - "version": "6.4.0", - "resolved": "https://registry.npmmirror.com/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz", - "integrity": "sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==", - "dev": true, - "requires": {} - }, - "css-loader": { - "version": "6.7.4", - "resolved": "https://registry.npmmirror.com/css-loader/-/css-loader-6.7.4.tgz", - "integrity": "sha512-0Y5uHtK5BswfaGJ+jrO+4pPg1msFBc0pwPIE1VqfpmVn6YbDfYfXMj8rfd7nt+4goAhJueO+H/I40VWJfcP1mQ==", - "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.21", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.1", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "css-minimizer-webpack-plugin": { - "version": "3.4.1", - "resolved": "https://registry.npmmirror.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz", - "integrity": "sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==", - "dev": true, - "requires": { - "cssnano": "^5.0.6", - "jest-worker": "^27.0.2", - "postcss": "^8.3.5", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmmirror.com/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", - "dev": true, - "requires": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - } - }, - "cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmmirror.com/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dev": true, - "requires": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" - } - }, - "cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", - "dev": true, - "requires": {} - }, - "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "requires": { - "css-tree": "^1.1.2" - } - }, - "csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "csv-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/csv-parser/-/csv-parser-3.0.0.tgz", - "integrity": "sha512-s6OYSXAK3IdKqYO33y09jhypG/bSDHPuyCme/IdEHfWpLf/jKcpitVFyOC6UemgGk8v7Q5u2XE0vvwmanxhGlQ==", - "requires": { - "minimist": "^1.2.0" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmmirror.com/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "deepmerge": { - "version": "1.5.2", - "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz", - "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmmirror.com/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "requires": { - "execa": "^5.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true - }, - "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "dir-compare": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/dir-compare/-/dir-compare-2.4.0.tgz", - "integrity": "sha512-l9hmu8x/rjVC9Z2zmGzkhOEowZvW7pmYws5CWHutg8u1JgvsKWMx7Q/UODeu4djLZ4FgW5besw5yvMQnBHzuCA==", - "dev": true, - "requires": { - "buffer-equal": "1.0.0", - "colors": "1.0.3", - "commander": "2.9.0", - "minimatch": "3.0.4" - }, - "dependencies": { - "commander": { - "version": "2.9.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.9.0.tgz", - "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", - "dev": true, - "requires": { - "graceful-readlink": ">= 1.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dmg-builder": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/dmg-builder/-/dmg-builder-22.14.13.tgz", - "integrity": "sha512-xNOugB6AbIRETeU2uID15sUfjdZZcKdxK8xkFnwIggsM00PJ12JxpLNPTjcRoUnfwj3WrPjilrO64vRMwNItQg==", - "dev": true, - "requires": { - "app-builder-lib": "22.14.13", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "dmg-license": "^1.0.9", - "fs-extra": "^10.0.0", - "iconv-lite": "^0.6.2", - "js-yaml": "^4.1.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "dmg-license": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/dmg-license/-/dmg-license-1.0.11.tgz", - "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", - "dev": true, - "optional": true, - "requires": { - "@types/plist": "^3.0.1", - "@types/verror": "^1.10.3", - "ajv": "^6.10.0", - "crc": "^3.8.0", - "iconv-corefoundation": "^1.1.7", - "plist": "^3.0.4", - "smart-buffer": "^4.0.2", - "verror": "^1.10.0" - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "5.6.0", - "resolved": "https://registry.npmmirror.com/dns-packet/-/dns-packet-5.6.0.tgz", - "integrity": "sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ==", - "dev": true, - "requires": { - "@leichtgewicht/ip-codec": "^2.0.1" - } - }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "requires": { - "utila": "~0.4" - } - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmmirror.com/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, - "dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", - "dev": true - }, - "dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmmirror.com/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", - "dev": true, - "requires": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" - } - }, - "easy-stack": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/easy-stack/-/easy-stack-1.0.1.tgz", - "integrity": "sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w==", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "ejs": { - "version": "3.1.9", - "resolved": "https://registry.npmmirror.com/ejs/-/ejs-3.1.9.tgz", - "integrity": "sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==", - "dev": true, - "requires": { - "jake": "^10.8.5" - } - }, - "electron": { - "version": "13.6.9", - "resolved": "https://registry.npmmirror.com/electron/-/electron-13.6.9.tgz", - "integrity": "sha512-Es/sBy85NIuqsO9MW41PUCpwIkeinlTQ7g0ainfnmRAM2rmog3GBxVCaoV5dzEjwTF7TKG1Yr/E7Z3qHmlfWAg==", - "dev": true, - "requires": { - "@electron/get": "^1.0.1", - "@types/node": "^14.6.2", - "extract-zip": "^1.0.3" - }, - "dependencies": { - "@types/node": { - "version": "14.18.47", - "resolved": "https://registry.npmmirror.com/@types/node/-/node-14.18.47.tgz", - "integrity": "sha512-OuJi8bIng4wYHHA3YpKauL58dZrPxro3d0tabPHyiNF8rKfGKuVfr83oFlPLmKri1cX+Z3cJP39GXmnqkP11Gw==", - "dev": true - } - } - }, - "electron-builder": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/electron-builder/-/electron-builder-22.14.13.tgz", - "integrity": "sha512-3fgLxqF2TXVKiUPeg74O4V3l0l3j7ERLazo8sUbRkApw0+4iVAf2BJkHsHMaXiigsgCoEzK/F4/rB5rne/VAnw==", - "dev": true, - "requires": { - "@types/yargs": "^17.0.1", - "app-builder-lib": "22.14.13", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "dmg-builder": "22.14.13", - "fs-extra": "^10.0.0", - "is-ci": "^3.0.0", - "lazy-val": "^1.0.5", - "read-config-file": "6.2.0", - "update-notifier": "^5.1.0", - "yargs": "^17.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - } - } - }, - "electron-devtools-installer": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/electron-devtools-installer/-/electron-devtools-installer-3.2.0.tgz", - "integrity": "sha512-t3UczsYugm4OAbqvdImMCImIMVdFzJAHgbwHpkl5jmfu1izVgUcP/mnrPqJIpEeCK1uZGpt+yHgWEN+9EwoYhQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.2", - "semver": "^7.2.1", - "tslib": "^2.1.0", - "unzip-crx-3": "^0.2.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "electron-osx-sign": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/electron-osx-sign/-/electron-osx-sign-0.5.0.tgz", - "integrity": "sha512-icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.0", - "compare-version": "^0.1.2", - "debug": "^2.6.8", - "isbinaryfile": "^3.0.2", - "minimist": "^1.2.0", - "plist": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", - "dev": true, - "requires": { - "buffer-alloc": "^1.2.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "electron-publish": { - "version": "22.14.13", - "resolved": "https://registry.npmmirror.com/electron-publish/-/electron-publish-22.14.13.tgz", - "integrity": "sha512-0oP3QiNj3e8ewOaEpEJV/o6Zrmy2VarVvZ/bH7kyO/S/aJf9x8vQsKVWpsdmSiZ5DJEHgarFIXrnO0ZQf0P9iQ==", - "dev": true, - "requires": { - "@types/fs-extra": "^9.0.11", - "builder-util": "22.14.13", - "builder-util-runtime": "8.9.2", - "chalk": "^4.1.1", - "fs-extra": "^10.0.0", - "lazy-val": "^1.0.5", - "mime": "^2.5.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "electron-squirrel-startup": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/electron-squirrel-startup/-/electron-squirrel-startup-1.0.0.tgz", - "integrity": "sha512-Oce8mvgGdFmwr+DsAcXBmFK8jFfN6yaFAP9IvyhTfupM3nFkBku/7VS/mdtJteWumImkC6P+BKGsxScoDDkv9Q==", - "requires": { - "debug": "^2.2.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "electron-to-chromium": { - "version": "1.4.401", - "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.401.tgz", - "integrity": "sha512-AswqHsYyEbfSn0x87n31Na/xttUqEAg7NUjpiyxC20MaWKLyadOYHMzyLdF78N1iw+FK8/2KHLpZxRdyRILgtA==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "enhanced-resolve": { - "version": "5.14.0", - "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz", - "integrity": "sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmmirror.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", - "dev": true, - "requires": { - "stackframe": "^1.3.4" - } - }, - "es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", - "dev": true - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true, - "optional": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "event-pubsub": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/event-pubsub/-/event-pubsub-4.3.0.tgz", - "integrity": "sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "eventsource": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", - "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==" - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "express": { - "version": "4.18.2", - "resolved": "https://registry.npmmirror.com/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "express-session": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz", - "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==", - "requires": { - "cookie": "0.4.2", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "dependencies": { - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmmirror.com/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "extsprintf": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.4.1.tgz", - "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", - "dev": true, - "optional": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-unique-numbers": { - "version": "8.0.10", - "resolved": "https://registry.npmjs.org/fast-unique-numbers/-/fast-unique-numbers-8.0.10.tgz", - "integrity": "sha512-NUIqIhFYSwexP73lH76CLFkqNk9wHP00mUuqo4CMdhW+ETEGaIb6meriqdXRClwOQcTx2Qj4Ctw9Axo8cSwSqw==", - "requires": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - } - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmmirror.com/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/figures/-/figures-2.0.0.tgz", - "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-type": { - "version": "16.5.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", - "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", - "requires": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - } - }, - "filelist": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/filelist/-/filelist-1.0.4.tgz", - "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", - "dev": true, - "requires": { - "minimatch": "^5.0.1" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmmirror.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmmirror.com/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "friendly-errors-webpack-plugin": { - "version": "1.7.0", - "resolved": "https://registry.npmmirror.com/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0.tgz", - "integrity": "sha512-K27M3VK30wVoOarP651zDmb93R9zF28usW4ocaK3mfQeIEI5BPht/EzZs5E8QLLwbLRJQMwscAjDxYPb1FuNiw==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "error-stack-parser": "^2.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - } - } - }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmmirror.com/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "global-agent": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/global-agent/-/global-agent-3.0.0.tgz", - "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", - "dev": true, - "optional": true, - "requires": { - "boolean": "^3.0.1", - "es6-error": "^4.1.1", - "matcher": "^3.0.0", - "roarr": "^2.15.3", - "semver": "^7.3.2", - "serialize-error": "^7.0.1" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "optional": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "optional": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true - } - } - }, - "global-dirs": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/global-dirs/-/global-dirs-3.0.1.tgz", - "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", - "dev": true, - "requires": { - "ini": "2.0.0" - } - }, - "global-tunnel-ng": { - "version": "2.7.1", - "resolved": "https://registry.npmmirror.com/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz", - "integrity": "sha512-4s+DyciWBV0eK148wqXxcmVAbFVPqtc3sEtUE/GTQfuU80rySLcMhUmHKSHI7/LDj8q0gDYI1lIhRRB7ieRAqg==", - "dev": true, - "optional": true, - "requires": { - "encodeurl": "^1.0.2", - "lodash": "^4.17.10", - "npm-conf": "^1.1.3", - "tunnel": "^0.0.6" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmmirror.com/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "optional": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmmirror.com/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", - "dev": true - }, - "gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dev": true, - "requires": { - "duplexer": "^0.1.2" - } - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmmirror.com/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - } - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true - }, - "hash-sum": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", - "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", - "dev": true - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmmirror.com/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmmirror.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmmirror.com/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", - "dev": true - }, - "html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", - "dev": true, - "requires": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - } - }, - "html-tags": { - "version": "3.3.1", - "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-3.3.1.tgz", - "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", - "dev": true - }, - "html-webpack-plugin": { - "version": "5.5.1", - "resolved": "https://registry.npmmirror.com/html-webpack-plugin/-/html-webpack-plugin-5.5.1.tgz", - "integrity": "sha512-cTUzZ1+NqjGEKjmVgZKLMdiFg3m9MdRXkZW2OEe69WYVi5ONLMmlnSZdXzGGMOq0C8jGDrL6EWyEDDUioHO/pA==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" - } - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmmirror.com/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmmirror.com/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmmirror.com/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", - "dev": true, - "requires": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "iconv-corefoundation": { - "version": "1.1.7", - "resolved": "https://registry.npmmirror.com/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", - "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", - "dev": true, - "optional": true, - "requires": { - "cli-truncate": "^2.1.0", - "node-addon-api": "^1.6.3" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "requires": {} - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" - }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmmirror.com/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "ini": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ini/-/ini-2.0.0.tgz", - "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", - "dev": true - }, - "ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", - "dev": true, - "requires": { - "ci-info": "^3.2.0" - } - }, - "is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-file-esm": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-file-esm/-/is-file-esm-1.0.0.tgz", - "integrity": "sha512-rZlaNKb4Mr8WlRu2A9XdeoKgnO5aA53XdPHgCKVyCrQ/rWi89RET1+bq37Ru46obaQXeiX4vmFIm1vks41hoSA==", - "dev": true, - "requires": { - "read-pkg-up": "^7.0.1" - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-installed-globally": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz", - "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", - "dev": true, - "requires": { - "global-dirs": "^3.0.0", - "is-path-inside": "^3.0.2" - } - }, - "is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true - }, - "is-npm": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/is-npm/-/is-npm-5.0.0.tgz", - "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmmirror.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmmirror.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "isbinaryfile": { - "version": "4.0.10", - "resolved": "https://registry.npmmirror.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz", - "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "jake": { - "version": "10.8.6", - "resolved": "https://registry.npmmirror.com/jake/-/jake-10.8.6.tgz", - "integrity": "sha512-G43Ub9IYEFfu72sua6rzooi8V8Gz2lkfk48rW20vEWCGizeaEPlKB1Kh8JIA84yQbiAEfqlPmSpGgCKKxH3rDA==", - "dev": true, - "requires": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.4", - "minimatch": "^3.1.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmmirror.com/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "javascript-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/javascript-stringify/-/javascript-stringify-2.1.0.tgz", - "integrity": "sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==", - "dev": true - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "joi": { - "version": "17.9.2", - "resolved": "https://registry.npmmirror.com/joi/-/joi-17.9.2.tgz", - "integrity": "sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw==", - "dev": true, - "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" - } - }, - "jquery": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" - }, - "js-message": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/js-message/-/js-message-1.0.7.tgz", - "integrity": "sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-beautify": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/json-beautify/-/json-beautify-1.1.1.tgz", - "integrity": "sha512-17j+Hk2lado0xqKtUcyAjK0AtoHnPSIgktWRsEXgdFQFG9UnaGw6CHa0J7xsvulxRpFl6CrkDFHght1p5ZJc4A==" - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", - "requires": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^7.5.4" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - }, - "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - } - } - }, - "jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmmirror.com/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", - "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "requires": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klona": { - "version": "2.0.6", - "resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true - }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "requires": { - "package-json": "^6.3.0" - } - }, - "launch-editor": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/launch-editor/-/launch-editor-2.6.0.tgz", - "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", - "dev": true, - "requires": { - "picocolors": "^1.0.0", - "shell-quote": "^1.7.3" - } - }, - "launch-editor-middleware": { - "version": "2.6.0", - "resolved": "https://registry.npmmirror.com/launch-editor-middleware/-/launch-editor-middleware-2.6.0.tgz", - "integrity": "sha512-K2yxgljj5TdCeRN1lBtO3/J26+AIDDDw+04y6VAiZbWcTdBwsYN6RrZBnW5DN/QiSIdKNjKdATLUUluWWFYTIA==", - "dev": true, - "requires": { - "launch-editor": "^2.6.0" - } - }, - "lazy-val": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/lazy-val/-/lazy-val-1.0.5.tgz", - "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", - "dev": true - }, - "lie": { - "version": "3.3.0", - "resolved": "https://registry.npmmirror.com/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "dev": true, - "requires": { - "immediate": "~3.0.5" - } - }, - "lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "dev": true - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - } - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmmirror.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "lodash.defaultsdeep": { - "version": "4.6.1", - "resolved": "https://registry.npmmirror.com/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz", - "integrity": "sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==", - "dev": true - }, - "lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" - }, - "lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" - }, - "lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" - }, - "lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" - }, - "lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" - }, - "lodash.kebabcase": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", - "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", - "dev": true - }, - "lodash.mapvalues": { - "version": "4.6.0", - "resolved": "https://registry.npmmirror.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz", - "integrity": "sha512-JPFqXFeZQ7BfS00H58kClY7SPVeHertPE0lNuCyZ26/XlN8TvakYD7b9bGyNmXbT/D3BbtPAAmq90gPWqLkxlQ==", - "dev": true - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmmirror.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "log-update": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/log-update/-/log-update-2.3.0.tgz", - "integrity": "sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg==", - "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "cli-cursor": "^2.0.0", - "wrap-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "wrap-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz", - "integrity": "sha512-iXR3tDXpbnTpzjKSylUJRkLuOrEC7hwEB221cgn6wtF8wpmz28puFXAEfPT5zrjM3wahygB//VuWEr1vTkDcNQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0" - } - } - } - }, - "lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "requires": { - "tslib": "^2.0.3" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "magic-string": { - "version": "0.30.0", - "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.0.tgz", - "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.13" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "matcher": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/matcher/-/matcher-3.0.0.tgz", - "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", - "dev": true, - "optional": true, - "requires": { - "escape-string-regexp": "^4.0.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "optional": true - } - } - }, - "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmmirror.com/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memfs": { - "version": "3.5.1", - "resolved": "https://registry.npmmirror.com/memfs/-/memfs-3.5.1.tgz", - "integrity": "sha512-UWbFJKvj5k+nETdteFndTpYxdeTMox/ULeqX5k/dpaQJCCFmj5EeKv3dBcyO2xmkRAx2vppRu5dVG7SOtsGOzA==", - "dev": true, - "requires": { - "fs-monkey": "^1.0.3" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.7.6", - "resolved": "https://registry.npmmirror.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", - "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", - "dev": true, - "requires": { - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "module-alias": { - "version": "2.2.2", - "resolved": "https://registry.npmmirror.com/module-alias/-/module-alias-2.2.2.tgz", - "integrity": "sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==", - "dev": true - }, - "mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "multicast-dns": { - "version": "7.2.5", - "resolved": "https://registry.npmmirror.com/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", - "dev": true, - "requires": { - "dns-packet": "^5.2.2", - "thunky": "^1.0.2" - } - }, - "music-metadata": { - "version": "7.13.4", - "resolved": "https://registry.npmjs.org/music-metadata/-/music-metadata-7.13.4.tgz", - "integrity": "sha512-eRRoEMhhYdth2Ws24FmkvIqrtkIBE9sqjHbrRNpkg2Iux3zc37PQKRv2/r/mTtELb7XlB1uWC2UcKKX7BzNMGA==", - "requires": { - "@tokenizer/token": "^0.3.0", - "content-type": "^1.0.5", - "debug": "^4.3.4", - "file-type": "^16.5.4", - "media-typer": "^1.1.0", - "strtok3": "^6.3.0", - "token-types": "^4.2.1" - }, - "dependencies": { - "media-typer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz", - "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==" - } - } - }, - "mz": { - "version": "2.7.0", - "resolved": "https://registry.npmmirror.com/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "requires": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==" - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, - "node-addon-api": { - "version": "1.7.2", - "resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-1.7.2.tgz", - "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", - "dev": true, - "optional": true - }, - "node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmmirror.com/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true - }, - "node-musickit-api": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/node-musickit-api/-/node-musickit-api-2.1.1.tgz", - "integrity": "sha512-6dl6KbvSSXZyabxvFEYhW3yQbrqM0pn/8b0BNk2wHJfjIxWkgjMl+Uh0q/NkxdWIq/pY1jTsGuVEfraRDv5nQQ==", - "requires": { - "axios": "^0.21.4", - "jsonwebtoken": "^8.5.1" - }, - "dependencies": { - "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "requires": { - "follow-redirects": "^1.14.0" - } - }, - "jsonwebtoken": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", - "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", - "requires": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^5.6.0" - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==" - } - } - }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - } - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "dev": true - }, - "npm-conf": { - "version": "1.1.3", - "resolved": "https://registry.npmmirror.com/npm-conf/-/npm-conf-1.1.3.tgz", - "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", - "dev": true, - "optional": true, - "requires": { - "config-chain": "^1.1.11", - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true, - "optional": true - } - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmmirror.com/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" - }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmmirror.com/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.2", - "resolved": "https://registry.npmmirror.com/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "opener": { - "version": "1.5.2", - "resolved": "https://registry.npmmirror.com/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "dev": true - }, - "ora": { - "version": "5.4.1", - "resolved": "https://registry.npmmirror.com/ora/-/ora-5.4.1.tgz", - "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", - "dev": true, - "requires": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmmirror.com/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", - "dev": true, - "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmmirror.com/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - } - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", - "dev": true - }, - "parse5-htmlparser2-tree-adapter": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", - "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", - "dev": true, - "requires": { - "parse5": "^6.0.1" - }, - "dependencies": { - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - } - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" - }, - "pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "peek-readable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==" - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "plist": { - "version": "3.0.6", - "resolved": "https://registry.npmmirror.com/plist/-/plist-3.0.6.tgz", - "integrity": "sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA==", - "dev": true, - "requires": { - "base64-js": "^1.5.1", - "xmlbuilder": "^15.1.1" - } - }, - "portfinder": { - "version": "1.0.32", - "resolved": "https://registry.npmmirror.com/portfinder/-/portfinder-1.0.32.tgz", - "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", - "dev": true, - "requires": { - "async": "^2.6.4", - "debug": "^3.2.7", - "mkdirp": "^0.5.6" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "requires": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmmirror.com/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "colord": "^2.9.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmmirror.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", - "dev": true, - "requires": {} - }, - "postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", - "dev": true, - "requires": {} - }, - "postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", - "dev": true, - "requires": {} - }, - "postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", - "dev": true, - "requires": {} - }, - "postcss-loader": { - "version": "6.2.1", - "resolved": "https://registry.npmmirror.com/postcss-loader/-/postcss-loader-6.2.1.tgz", - "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.0", - "klona": "^2.0.5", - "semver": "^7.3.5" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmmirror.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" - } - }, - "postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmmirror.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", - "dev": true, - "requires": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmmirror.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmmirror.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.1.tgz", - "integrity": "sha512-Zr/dB+IlXaEqdoslLHhhqecwj73vc3rDmOpsBNBEVk7P2aqAlz+Ijy0fFbU5Ie9PtreDOIgGa9MsLWakVGl+fA==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", - "dev": true, - "requires": {} - }, - "postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", - "dev": true, - "requires": { - "normalize-url": "^6.0.1", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmmirror.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", - "dev": true, - "requires": { - "cssnano-utils": "^3.1.0", - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "caniuse-api": "^3.0.0" - } - }, - "postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0" - } - }, - "postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", - "dev": true, - "requires": { - "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" - } - }, - "postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.5" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true - }, - "prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "dev": true, - "optional": true - }, - "pretty-error": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/pretty-error/-/pretty-error-4.0.0.tgz", - "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", - "dev": true, - "requires": { - "lodash": "^4.17.20", - "renderkid": "^3.0.0" - } - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "progress-webpack-plugin": { - "version": "1.0.16", - "resolved": "https://registry.npmmirror.com/progress-webpack-plugin/-/progress-webpack-plugin-1.0.16.tgz", - "integrity": "sha512-sdiHuuKOzELcBANHfrupYo+r99iPRyOnw15qX+rNlVUqXGfjXdH4IgxriKwG1kNJwVswKQHMdj1hYZMcb9jFaA==", - "dev": true, - "requires": { - "chalk": "^2.1.0", - "figures": "^2.0.0", - "log-update": "^2.3.0" - } - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", - "dev": true, - "optional": true - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmmirror.com/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } - } - }, - "proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/pumpify/-/pumpify-2.0.1.tgz", - "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", - "dev": true, - "requires": { - "duplexify": "^4.1.1", - "inherits": "^2.0.3", - "pump": "^3.0.0" - } - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true - }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "requires": { - "escape-goat": "^2.0.0" - } - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==" - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmmirror.com/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmmirror.com/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmmirror.com/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - } - } - }, - "read-config-file": { - "version": "6.2.0", - "resolved": "https://registry.npmmirror.com/read-config-file/-/read-config-file-6.2.0.tgz", - "integrity": "sha512-gx7Pgr5I56JtYz+WuqEbQHj/xWo+5Vwua2jhb1VwM4Wid5PqYmZ4i00ZB0YEGIfkVBsCv9UrjgyqCiQfS/Oosg==", - "dev": true, - "requires": { - "dotenv": "^9.0.2", - "dotenv-expand": "^5.1.0", - "js-yaml": "^4.1.0", - "json5": "^2.2.0", - "lazy-val": "^1.0.4" - }, - "dependencies": { - "dotenv": { - "version": "9.0.2", - "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-9.0.2.tgz", - "integrity": "sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==", - "dev": true - } - } - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "requires": { - "readable-stream": "^3.6.0" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "realtime-bpm-analyzer": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/realtime-bpm-analyzer/-/realtime-bpm-analyzer-3.2.1.tgz", - "integrity": "sha512-q2jlMLwkPlZsCJk/e8gTM8qlqcOITnpUTPbWdwPBgvKGzixIMh7VmseRqxULKFdJWOrgM0GLTXzWys6JDmiQMw==" - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "requires": { - "regenerate": "^1.4.2" - } - }, - "regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" - }, - "regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmmirror.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmmirror.com/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dev": true, - "requires": { - "rc": "1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } - }, - "regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmmirror.com/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } - } - }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmmirror.com/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", - "dev": true - }, - "renderkid": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/renderkid/-/renderkid-3.0.0.tgz", - "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", - "dev": true, - "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^6.0.1" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmmirror.com/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmmirror.com/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true - }, - "resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dev": true, - "requires": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" - } - }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmmirror.com/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "roarr": { - "version": "2.15.4", - "resolved": "https://registry.npmmirror.com/roarr/-/roarr-2.15.4.tgz", - "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", - "dev": true, - "optional": true, - "requires": { - "boolean": "^3.0.1", - "detect-node": "^2.0.4", - "globalthis": "^1.0.1", - "json-stringify-safe": "^5.0.1", - "semver-compare": "^1.0.0", - "sprintf-js": "^1.1.2" - } - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sanitize-filename": { - "version": "1.6.3", - "resolved": "https://registry.npmmirror.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz", - "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", - "dev": true, - "requires": { - "truncate-utf8-bytes": "^1.0.0" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", - "dev": true, - "requires": { - "node-forge": "^1" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "semver-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", - "dev": true, - "optional": true - }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "requires": { - "semver": "^6.3.0" - } - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmmirror.com/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } - } - }, - "serialize-error": { - "version": "7.0.1", - "resolved": "https://registry.npmmirror.com/serialize-error/-/serialize-error-7.0.1.tgz", - "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", - "dev": true, - "optional": true, - "requires": { - "type-fest": "^0.13.1" - }, - "dependencies": { - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "dev": true, - "optional": true - } - } - }, - "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmmirror.com/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmmirror.com/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - } - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmmirror.com/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmmirror.com/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-loader": { - "version": "0.0.1", - "resolved": "https://registry.npmmirror.com/shebang-loader/-/shebang-loader-0.0.1.tgz", - "integrity": "sha512-nQvhUHvKyzGK5aqPxHfHB5nlAN2EZ2U61S2G0YrxAuCRU5iGhFcxxRiaAdb18UoRS1zVMhRz4gdQ1xFEg3AOyA==", - "dev": true - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "dev": true - }, - "shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmmirror.com/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmmirror.com/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", - "dev": true, - "requires": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "optional": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "optional": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "optional": true - } - } - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "optional": true - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmmirror.com/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "spdx-correct": { - "version": "3.2.0", - "resolved": "https://registry.npmmirror.com/spdx-correct/-/spdx-correct-3.2.0.tgz", - "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmmirror.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmmirror.com/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", - "dev": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmmirror.com/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "split2": { - "version": "3.2.2", - "resolved": "https://registry.npmmirror.com/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "requires": { - "readable-stream": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true, - "optional": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmmirror.com/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmmirror.com/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmmirror.com/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, - "stackframe": { - "version": "1.3.4", - "resolved": "https://registry.npmmirror.com/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", - "dev": true - }, - "standardized-audio-context": { - "version": "25.3.58", - "resolved": "https://registry.npmjs.org/standardized-audio-context/-/standardized-audio-context-25.3.58.tgz", - "integrity": "sha512-1p5wVGiy4MfmhEt9MRY8yjZdkX+fi5jMxG1lqnAS1YmLUpE9VrOowxSINQ9Gjs89dFZMaENVwcMSPeQCjlz90Q==", - "requires": { - "@babel/runtime": "^7.23.2", - "automation-events": "^6.0.11", - "tslib": "^2.6.2" - } - }, - "stat-mode": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/stat-mode/-/stat-mode-1.0.0.tgz", - "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true - }, - "strtok3": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", - "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", - "requires": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - } - }, - "stylehacks": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", - "dev": true, - "requires": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" - } - }, - "sumchecker": { - "version": "3.0.1", - "resolved": "https://registry.npmmirror.com/sumchecker/-/sumchecker-3.0.1.tgz", - "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", - "dev": true, - "requires": { - "debug": "^4.1.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", - "dev": true - }, - "svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmmirror.com/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", - "dev": true, - "requires": { - "@trysound/sax": "0.2.0", - "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "dependencies": { - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true - } - } - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "tar": { - "version": "6.1.15", - "resolved": "https://registry.npmmirror.com/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "temp-file": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/temp-file/-/temp-file-3.4.0.tgz", - "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", - "dev": true, - "requires": { - "async-exit-hook": "^2.0.1", - "fs-extra": "^10.0.0" - }, - "dependencies": { - "fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - } - } - }, - "terser": { - "version": "5.17.4", - "resolved": "https://registry.npmmirror.com/terser/-/terser-5.17.4.tgz", - "integrity": "sha512-jcEKZw6UPrgugz/0Tuk/PVyLAPfMBJf5clnGueo45wTweoV8yh7Q7PEkhkJ5uuUbC7zAxEcG3tqNr1bstkQ8nw==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmmirror.com/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "requires": { - "any-promise": "^1.0.0" - } - }, - "thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmmirror.com/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "requires": { - "thenify": ">= 3.1.0 < 4" - } - }, - "thread-loader": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/thread-loader/-/thread-loader-3.0.4.tgz", - "integrity": "sha512-ByaL2TPb+m6yArpqQUZvP+5S1mZtXsEP7nWKKlAUTm7fCml8kB5s1uI3+eHRP2bk5mVYfRSBI7FFf+tWEyLZwA==", - "dev": true, - "requires": { - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^4.1.0", - "loader-utils": "^2.0.0", - "neo-async": "^2.6.2", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmmirror.com/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", - "dev": true, - "requires": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - }, - "through2-map": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/through2-map/-/through2-map-3.0.0.tgz", - "integrity": "sha512-Ms68QPbSJKjRYY7fmqZHB0VGt+vD0/tjmDHUWgxltjifCof6hZWWeQAEi27Wjbs7jyNlIIyerQw/TVj7gHkd/Q==", - "dev": true, - "requires": { - "through2": "~2.0.0", - "xtend": "^4.0.0" - } - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmmirror.com/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "tmp-promise": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/tmp-promise/-/tmp-promise-3.0.3.tgz", - "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", - "dev": true, - "requires": { - "tmp": "^0.2.0" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "token-types": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", - "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", - "requires": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - } - }, - "totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", - "dev": true - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "truncate-utf8-bytes": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", - "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", - "dev": true, - "requires": { - "utf8-byte-length": "^1.0.1" - } - }, - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" - }, - "tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmmirror.com/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "dev": true, - "optional": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmmirror.com/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmmirror.com/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmmirror.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "requires": { - "random-bytes": "~1.0.0" - } - }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "requires": { - "crypto-random-string": "^2.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "unzip-crx": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/unzip-crx/-/unzip-crx-0.2.0.tgz", - "integrity": "sha512-6LGdnpdnX5mkTdjdsZVuKRC63ht8pgOUGYYYK/wsDtgw81+W7WUBXLHzhhAcc/lxUvK7ByqZAzlwaa9U6CMSCQ==", - "dev": true, - "requires": { - "jszip": "^3.1.0", - "mkdirp": "^0.5.1", - "yaku": "^0.16.6" - } - }, - "unzip-crx-3": { - "version": "0.2.0", - "resolved": "https://registry.npmmirror.com/unzip-crx-3/-/unzip-crx-3-0.2.0.tgz", - "integrity": "sha512-0+JiUq/z7faJ6oifVB5nSwt589v1KCduqIJupNVDoWSXZtWDmjDGO3RAEOvwJ07w90aoXoP4enKsR7ecMrJtWQ==", - "dev": true, - "requires": { - "jszip": "^3.1.0", - "mkdirp": "^0.5.1", - "yaku": "^0.16.6" - } - }, - "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "update-notifier": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/update-notifier/-/update-notifier-5.1.0.tgz", - "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", - "dev": true, - "requires": { - "boxen": "^5.0.0", - "chalk": "^4.1.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.4.0", - "is-npm": "^5.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.1.0", - "pupa": "^2.1.1", - "semver": "^7.3.4", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - } - }, - "utf8-byte-length": { - "version": "1.0.4", - "resolved": "https://registry.npmmirror.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", - "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmmirror.com/utila/-/utila-0.4.0.tgz", - "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmmirror.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" - }, - "verror": { - "version": "1.10.1", - "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.1.tgz", - "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true, - "optional": true - } - } - }, - "vue": { - "version": "3.3.4", - "resolved": "https://registry.npmmirror.com/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", - "requires": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" - } - }, - "vue-cli-plugin-electron-builder": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/vue-cli-plugin-electron-builder/-/vue-cli-plugin-electron-builder-2.1.1.tgz", - "integrity": "sha512-ZrxFZ2uxgpwyFUE8LtguYqaTzSfZ1osME1uFlIj/Iz7GtLrATqs23n/BkKEpyEf5nYNAylzIM8ykGAfH/0QdmA==", - "dev": true, - "requires": { - "@vue/cli-shared-utils": "^4.5.6", - "chokidar": "^3.0.2", - "electron-builder": "^22.2.0", - "execa": "^5.0.0", - "friendly-errors-webpack-plugin": "^1.7.0", - "fs-extra": "^9.0.1", - "lodash.merge": "^4.6.1", - "portfinder": "^1.0.16", - "pumpify": "^2.0.1", - "semver": "^7.3.2", - "shebang-loader": "^0.0.1", - "split2": "^3.0.0", - "terser-webpack-plugin": "^3.0.3", - "through2-filter": "^3.0.0", - "through2-map": "^3.0.0", - "unzip-crx": "^0.2.0", - "webpack": "^5.0.0", - "webpack-chain": "^6.0.0", - "webpack-merge": "^4.2.2", - "yargs": "^15.3.1" - }, - "dependencies": { - "@achrinza/node-ipc": { - "version": "9.2.2", - "resolved": "https://registry.npmmirror.com/@achrinza/node-ipc/-/node-ipc-9.2.2.tgz", - "integrity": "sha512-b90U39dx0cU6emsOvy5hxU4ApNXnE3+Tuo8XQZfiKTGelDwpMwBVgBP7QX6dGTcJgu/miyJuNJ/2naFBliNWEw==", - "dev": true, - "requires": { - "@node-ipc/js-queue": "2.0.3", - "event-pubsub": "4.3.0", - "js-message": "1.0.7" - } - }, - "@vue/cli-shared-utils": { - "version": "4.5.19", - "resolved": "https://registry.npmmirror.com/@vue/cli-shared-utils/-/cli-shared-utils-4.5.19.tgz", - "integrity": "sha512-JYpdsrC/d9elerKxbEUtmSSU6QRM60rirVubOewECHkBHj+tLNznWq/EhCjswywtePyLaMUK25eTqnTSZlEE+g==", - "dev": true, - "requires": { - "@achrinza/node-ipc": "9.2.2", - "@hapi/joi": "^15.0.1", - "chalk": "^2.4.2", - "execa": "^1.0.0", - "launch-editor": "^2.2.1", - "lru-cache": "^5.1.1", - "open": "^6.3.0", - "ora": "^3.4.0", - "read-pkg": "^5.1.1", - "request": "^2.88.2", - "semver": "^6.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - } - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", - "dev": true - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmmirror.com/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "requires": { - "chalk": "^2.0.1" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "open": { - "version": "6.4.0", - "resolved": "https://registry.npmmirror.com/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "ora": { - "version": "3.4.0", - "resolved": "https://registry.npmmirror.com/ora/-/ora-3.4.0.tgz", - "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-spinners": "^2.0.0", - "log-symbols": "^2.2.0", - "strip-ansi": "^5.2.0", - "wcwidth": "^1.0.1" - }, - "dependencies": { - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "dependencies": { - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - } - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "terser": { - "version": "4.8.1", - "resolved": "https://registry.npmmirror.com/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - } - }, - "terser-webpack-plugin": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-3.1.0.tgz", - "integrity": "sha512-cjdZte66fYkZ65rQ2oJfrdCAkkhJA7YLYk5eGOcGCSGlq0ieZupRdjedSQXYknMPo2IveQL+tPdrxUkERENCFA==", - "dev": true, - "requires": { - "cacache": "^15.0.5", - "find-cache-dir": "^3.3.1", - "jest-worker": "^26.2.1", - "p-limit": "^3.0.2", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.8.0", - "webpack-sources": "^1.4.3" - } - }, - "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "vue-hot-reload-api": { - "version": "2.3.4", - "resolved": "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", - "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", - "dev": true - }, - "vue-loader": { - "version": "17.1.1", - "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-17.1.1.tgz", - "integrity": "sha512-qpqEVkKdrAsgyIBMHaiXurDeCuBWqRyKqg2GI4aG3NbggEls+BLqTZdqahbJJh7fm83sz+iz3gg6eDWdbNlG7Q==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "hash-sum": "^2.0.0", - "watchpack": "^2.4.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "vue-router": { - "version": "4.2.1", - "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.2.1.tgz", - "integrity": "sha512-nW28EeifEp8Abc5AfmAShy5ZKGsGzjcnZ3L1yc2DYUo+MqbBClrRP9yda3dIekM4I50/KnEwo1wkBLf7kHH5Cw==", - "requires": { - "@vue/devtools-api": "^6.5.0" - } - }, - "vue-style-loader": { - "version": "4.1.3", - "resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz", - "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", - "dev": true, - "requires": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" - }, - "dependencies": { - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - } - } - }, - "vue-template-es2015-compiler": { - "version": "1.9.1", - "resolved": "https://registry.npmmirror.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", - "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", - "dev": true - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmmirror.com/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "web-audio-beat-detector": { - "version": "8.1.55", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector/-/web-audio-beat-detector-8.1.55.tgz", - "integrity": "sha512-K/RdkLNl+oBSM9lXb7t2scdqXhk4nkG8+6abknRD3YM+VP4nSYIugN7p8Bm/4EYZua1GWx7JeJXDDdrfFhabYg==", - "requires": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2", - "web-audio-beat-detector-broker": "^4.0.92", - "web-audio-beat-detector-worker": "^5.2.43" - } - }, - "web-audio-beat-detector-broker": { - "version": "4.0.92", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector-broker/-/web-audio-beat-detector-broker-4.0.92.tgz", - "integrity": "sha512-uxCHh9iVlS4fqc1Tn2A3jIybeoyvmtm1pqvC0/k2IjmcW44pIvaZMMkHCLf7SPJmPZMlbotBR4LDatnRacE5zA==", - "requires": { - "@babel/runtime": "^7.23.2", - "fast-unique-numbers": "^8.0.10", - "standardized-audio-context": "^25.3.58", - "tslib": "^2.6.2", - "web-audio-beat-detector-worker": "^5.2.43" - } - }, - "web-audio-beat-detector-worker": { - "version": "5.2.43", - "resolved": "https://registry.npmjs.org/web-audio-beat-detector-worker/-/web-audio-beat-detector-worker-5.2.43.tgz", - "integrity": "sha512-/7U/eHDixwM5NBGZ6CEF9K5D5XrhJbRawY+52vrpIkhHpoyaM0EF02LDwW8WZ7lLjTDo0ab/WzjUIO+oeUpEDg==", - "requires": { - "@babel/runtime": "^7.23.2", - "tslib": "^2.6.2" - } - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "webpack": { - "version": "5.83.1", - "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.83.1.tgz", - "integrity": "sha512-TNsG9jDScbNuB+Lb/3+vYolPplCS3bbEaJf+Bj0Gw4DhP3ioAflBb1flcRt9zsWITyvOhM96wMQNRWlSX52DgA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.14.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-bundle-analyzer": { - "version": "4.8.0", - "resolved": "https://registry.npmmirror.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.8.0.tgz", - "integrity": "sha512-ZzoSBePshOKhr+hd8u6oCkZVwpVaXgpw23ScGLFpR6SjYI7+7iIWYarjN6OEYOfRt8o7ZyZZQk0DuMizJ+LEIg==", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "webpack-chain": { - "version": "6.5.1", - "resolved": "https://registry.npmmirror.com/webpack-chain/-/webpack-chain-6.5.1.tgz", - "integrity": "sha512-7doO/SRtLu8q5WM0s7vPKPWX580qhi0/yBHkOxNkv50f6qB76Zy9o2wRTrrPULqYTvQlVHuvbA8v+G5ayuUDsA==", - "dev": true, - "requires": { - "deepmerge": "^1.5.2", - "javascript-stringify": "^2.0.1" - } - }, - "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmmirror.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", - "dev": true, - "requires": { - "colorette": "^2.0.10", - "memfs": "^3.4.3", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } - } - }, - "webpack-dev-server": { - "version": "4.15.0", - "resolved": "https://registry.npmmirror.com/webpack-dev-server/-/webpack-dev-server-4.15.0.tgz", - "integrity": "sha512-HmNB5QeSl1KpulTBQ8UT4FPrByYyaLxpJoQ0+s7EvUrMc16m0ZS1sgb1XGqzmgCPk0c9y+aaXxn11tbLzuM7NQ==", - "dev": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/express": "^4.17.13", - "@types/serve-index": "^1.9.1", - "@types/serve-static": "^1.13.10", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", - "ansi-html-community": "^0.0.8", - "bonjour-service": "^1.0.11", - "chokidar": "^3.5.3", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^2.0.0", - "default-gateway": "^6.0.3", - "express": "^4.17.3", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.3", - "ipaddr.js": "^2.0.1", - "launch-editor": "^2.6.0", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "rimraf": "^3.0.2", - "schema-utils": "^4.0.0", - "selfsigned": "^2.1.1", - "serve-index": "^1.9.1", - "sockjs": "^0.3.24", - "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.13.0" - }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - }, - "ws": { - "version": "8.13.0", - "resolved": "https://registry.npmmirror.com/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "dev": true, - "requires": {} - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmmirror.com/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "webpack-virtual-modules": { - "version": "0.4.6", - "resolved": "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.4.6.tgz", - "integrity": "sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==", - "dev": true - }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmmirror.com/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmmirror.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "whatwg-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmmirror.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==", - "dev": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmmirror.com/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "dev": true - }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmmirror.com/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "requires": { - "string-width": "^4.0.0" - } - }, - "wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmmirror.com/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "dev": true, - "requires": {} - }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmmirror.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true - }, - "xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yaku": { - "version": "0.16.7", - "resolved": "https://registry.npmmirror.com/yaku/-/yaku-0.16.7.tgz", - "integrity": "sha512-Syu3IB3rZvKvYk7yTiyl1bo/jiEFaaStrgv1V2TIJTqYPStSMQVO8EQjg/z+DRzLq/4LIIharNT3iH1hylEIRw==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmmirror.com/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmmirror.com/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } - } -} diff --git a/old/frontend/package.json b/old/frontend/package.json deleted file mode 100644 index 702f66e..0000000 --- a/old/frontend/package.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "name": "musicplayerv2", - "version": "1.0.0", - "maintainers": [ - "Janis Hutz " - ], - "description": "A music player", - "homepage": "https://janishutz.com/projects/musicplayerv2", - "author": { - "name": "Janis Hutz", - "email": "development@janishutz.com", - "url": "https://janishutz.com" - }, - "license": "GPL-3.0-or-later", - "bugs": { - "url": "https://github.com/simplePCBuilding/musicplayerv2/issues" - }, - "private": true, - "scripts": { - "serve": "vue-cli-service serve", - "build": "vue-cli-service build", - "electron:build": "vue-cli-service electron:build", - "electron:serve": "vue-cli-service electron:serve", - "postinstall": "electron-builder install-app-deps", - "postuninstall": "electron-builder install-app-deps" - }, - "main": "background.js", - "dependencies": { - "axios": "^1.6.1", - "core-js": "^3.8.3", - "cors": "^2.8.5", - "csv-parser": "^3.0.0", - "electron-squirrel-startup": "^1.0.0", - "eventsource": "^2.0.2", - "express-session": "^1.17.3", - "ip": "^1.1.8", - "jquery": "^3.7.1", - "json-beautify": "^1.1.1", - "jsonwebtoken": "^9.0.2", - "music-metadata": "^7.13.0", - "node-fetch": "^2.7.0", - "node-musickit-api": "^2.1.1", - "realtime-bpm-analyzer": "^3.2.1", - "vue": "^3.2.13", - "vue-router": "^4.0.3", - "web-audio-beat-detector": "^8.1.55" - }, - "devDependencies": { - "@vue/cli-plugin-babel": "~5.0.0", - "@vue/cli-plugin-router": "~5.0.0", - "@vue/cli-service": "~5.0.0", - "electron": "^13.0.0", - "electron-devtools-installer": "^3.1.0", - "vue-cli-plugin-electron-builder": "~2.1.1" - } -} diff --git a/old/frontend/public/favicon.ico b/old/frontend/public/favicon.ico deleted file mode 100644 index df36fcf..0000000 Binary files a/old/frontend/public/favicon.ico and /dev/null differ diff --git a/old/frontend/public/icon-font.css b/old/frontend/public/icon-font.css deleted file mode 100644 index c221497..0000000 --- a/old/frontend/public/icon-font.css +++ /dev/null @@ -1,24 +0,0 @@ -/* fallback */ -@font-face { - font-family: 'Material Symbols Outlined'; - font-style: normal; - font-weight: 100 700; - src: url(/iconFont.woff2) format('woff2'); - } - - .material-symbols-outlined { - font-family: 'Material Symbols Outlined'; - font-weight: normal; - font-style: normal; - font-size: 24px; - line-height: 1; - letter-spacing: normal; - text-transform: none; - display: inline-block; - white-space: nowrap; - word-wrap: normal; - direction: ltr; - -moz-font-feature-settings: 'liga'; - -moz-osx-font-smoothing: grayscale; - } - \ No newline at end of file diff --git a/old/frontend/public/iconFont.woff2 b/old/frontend/public/iconFont.woff2 deleted file mode 100644 index 3ac032b..0000000 Binary files a/old/frontend/public/iconFont.woff2 and /dev/null differ diff --git a/old/frontend/public/index.html b/old/frontend/public/index.html deleted file mode 100644 index 50f6f62..0000000 --- a/old/frontend/public/index.html +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - <%= htmlWebpackPlugin.options.title %> - - - -
- - - diff --git a/old/frontend/public/jquery.min.js b/old/frontend/public/jquery.min.js deleted file mode 100644 index e7e29d5..0000000 --- a/old/frontend/public/jquery.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v3.7.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.0",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},R=function(){V()},M=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&z(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function X(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&M(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function U(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function z(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",R),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Me(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return R(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return R(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 0 - - - - - - - - - - diff --git a/old/frontend/src/app.js b/old/frontend/src/app.js deleted file mode 100644 index 28e2aa4..0000000 --- a/old/frontend/src/app.js +++ /dev/null @@ -1,382 +0,0 @@ -const express = require( 'express' ); -let app = express(); -const path = require( 'path' ); -const cors = require( 'cors' ); -const fs = require( 'fs' ); -const bodyParser = require( 'body-parser' ); -const dialog = require( 'electron' ).dialog; -const session = require( 'express-session' ); -const indexer = require( './indexer.js' ); -const axios = require( 'axios' ); -const ip = require( 'ip' ); -const jwt = require( 'jsonwebtoken' ); -const shell = require( 'electron' ).shell; -const beautify = require( 'json-beautify' ); -const EventSource = require( 'eventsource' ); - - -app.use( bodyParser.urlencoded( { extended: false } ) ); -app.use( bodyParser.json() ); -app.use( cors() ); -app.use( session( { - secret: 'aeogetwöfaöow0ofö034eö8ptqw39eöavfui786uqew9t0ez9eauigwöfqewoöaiq938w0c8p9awöäf9¨äüöe', - saveUninitialized: true, - resave: false, -} ) ); - -const conf = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/config.json' ) ) ); - -// TODO: Import from config -const remoteURL = conf.connectionURL ?? 'http://localhost:3000'; -let hasConnected = false; - -const connect = () => { - if ( authKey !== '' && conf.doConnect ) { - axios.post( remoteURL + '/connect', { 'authKey': authKey } ).then( res => { - if ( res.status === 200 ) { - console.log( '[ BACKEND INTEGRATION ] Connection successful' ); - hasConnected = true; - } else { - console.error( '[ BACKEND INTEGRATION ] Connection error occurred' ); - } - } ).catch( err => { - console.error( err ); - } ); - connectToSSESource(); - return 'connecting'; - } else { - return 'noAuthKey'; - } -}; - -let isSSEAuth = false; -let sessionToken = ''; -let errorCount = 0; -let isReconnecting = false; - -const connectToSSESource = () => { - if ( isSSEAuth ) { - let source = new EventSource( remoteURL + '/mainNotifier', { - https: true, - withCredentials: true, - headers: { - 'Cookie': sessionToken - } - } ); - source.onmessage = ( e ) => { - let data; - try { - data = JSON.parse( e.data ); - } catch ( err ) { - data = { 'type': e.data }; - } - if ( data.type === 'blur' ) { - sendClientUpdate( data.type, data.ip ); - } else if ( data.type === 'visibility' ) { - sendClientUpdate( data.type, data.ip ); - } - }; - - source.onopen = () => { - isReconnecting = false; - console.log( '[ BACKEND INTEGRATION ] Connection to notifier successful' ); - }; - - source.addEventListener( 'error', function( e ) { - if ( e.eventPhase == EventSource.CLOSED ) source.close(); - - setTimeout( () => { - if ( !isReconnecting ) { - isReconnecting = true; - console.log( '[ BACKEND INTEGRATION ] Disconnected from notifier, reconnecting...' ); - tryReconnect(); - } - }, 1000 ); - }, false ); - } else { - axios.post( remoteURL + '/authSSE', { 'authKey': authKey } ).then( res => { - if ( res.status == 200 ) { - sessionToken = res.headers[ 'set-cookie' ][ 0 ].slice( 0, res.headers[ 'set-cookie' ][ 0 ].indexOf( ';' ) ); - isSSEAuth = true; - connectToSSESource(); - } else { - connectToSSESource(); - } - } ); - } -} - -const tryReconnect = () => { - const int = setInterval( () => { - if ( !isReconnecting ) { - clearInterval( int ); - } else { - if ( errorCount > 5 ) { - isSSEAuth = false; - errorCount = 0; - } else { - errorCount += 1; - } - connectToSSESource(); - } - }, 1000 ); -} - -let authKey = conf.authKey ?? ''; - -connect(); - - -let connectedClients = {}; -let changedStatus = []; - -let currentDetails = { - 'songQueue': [], - 'playingSong': {}, - 'pos': 0, - 'isPlaying': false, - 'queuePos': 0, -}; - -let connectedMain = {}; -// TODO: Add backend integration - -require( './appleMusicRoutes.js' )( app ); - -app.get( '/', ( request, response ) => { - response.sendFile( path.join( __dirname + '/client/showcase.html' ) ); -} ); - -app.get( '/getLocalIP', ( req, res ) => { - res.send( ip.address() ); -} ); - -app.get( '/useAppleMusic', ( req, res ) => { - shell.openExternal( 'http://localhost:8081/apple-music' ); - res.send( 'ok' ); -} ); - -app.get( '/openSongs', ( req, res ) => { - // res.send( '{ "data": [ "/home/janis/Music/KB2022" ] }' ); - // res.send( '{ "data": [ "/mnt/storage/SORTED/Music/audio/KB2022" ] }' ); - res.send( { 'data': dialog.showOpenDialogSync( { properties: [ 'openDirectory' ], title: 'Open music library folder' } ) } ); -} ); - -app.get( '/showcase.js', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/showcase.js' ) ); -} ); - -app.get( '/showcase.css', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/showcase.css' ) ); -} ); - -app.get( '/backgroundAnim.css', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/backgroundAnim.css' ) ); -} ); - -app.get( '/clientDisplayNotifier', ( req, res ) => { - res.writeHead( 200, { - 'Content-Type': 'text/event-stream', - 'Cache-Control': 'no-cache', - 'Connection': 'keep-alive', - } ); - res.status( 200 ); - res.flushHeaders(); - let det = { 'type': 'basics', 'data': currentDetails }; - res.write( `data: ${ JSON.stringify( det ) }\n\n` ); - connectedClients[ req.session.id ] = res; - req.on( 'close', () => { - connectedClients.splice( Object.keys( connectedClients ).indexOf( req.session.id ), 1 ); - } ); -} ); - -app.get( '/mainNotifier', ( req, res ) => { - const ipRetrieved = req.headers[ 'x-forwarded-for' ]; - const ip = ipRetrieved ? ipRetrieved.split( /, / )[ 0 ] : req.connection.remoteAddress; - if ( ip === '::ffff:127.0.0.1' || ip === '::1' ) { - res.writeHead( 200, { - 'Content-Type': 'text/event-stream', - 'Cache-Control': 'no-cache', - 'Connection': 'keep-alive', - } ); - res.status( 200 ); - res.flushHeaders(); - let det = { 'type': 'basics' }; - res.write( `data: ${ JSON.stringify( det ) }\n\n` ); - connectedMain = res; - } else { - res.send( 'wrong' ); - } -} ); - -const sendUpdate = ( update ) => { - if ( update === 'pos' ) { - currentDetails[ 'playingSong' ][ 'startTime' ] = new Date().getTime(); - for ( let client in connectedClients ) { - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': 'playingSong', 'data': currentDetails[ 'playingSong' ] } ) + '\n\n' ); - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': 'pos', 'data': currentDetails[ 'pos' ] } ) + '\n\n' ); - } - } else if ( update === 'playingSong' ) { - if ( !currentDetails[ 'playingSong' ] ) { - currentDetails[ 'playingSong' ] = {}; - } - currentDetails[ 'playingSong' ][ 'startTime' ] = new Date().getTime(); - for ( let client in connectedClients ) { - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': 'pos', 'data': currentDetails[ 'pos' ] } ) + '\n\n' ); - } - } else if ( update === 'isPlaying' ) { - currentDetails[ 'playingSong' ][ 'startTime' ] = new Date().getTime(); - for ( let client in connectedClients ) { - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': 'playingSong', 'data': currentDetails[ 'playingSong' ] } ) + '\n\n' ); - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': 'pos', 'data': currentDetails[ 'pos' ] } ) + '\n\n' ); - } - } - - for ( let client in connectedClients ) { - connectedClients[ client ].write( 'data: ' + JSON.stringify( { 'type': update, 'data': currentDetails[ update ] } ) + '\n\n' ); - } - - // Check if connected and if not, try to authenticate with data from authKey file - - if ( hasConnected ) { - if ( update === 'isPlaying' ) { - axios.post( remoteURL + '/statusUpdate', { 'type': 'playingSong', 'data': currentDetails[ 'playingSong' ], 'authKey': authKey } ).catch( err => { - console.error( err ); - } ); - - axios.post( remoteURL + '/statusUpdate', { 'type': 'pos', 'data': currentDetails[ 'pos' ], 'authKey': authKey } ).catch( err => { - console.error( err ); - } ); - } else if ( update === 'pos' ) { - axios.post( remoteURL + '/statusUpdate', { 'type': 'playingSong', 'data': currentDetails[ 'playingSong' ], 'authKey': authKey } ).catch( err => { - console.error( err ); - } ); - - axios.post( remoteURL + '/statusUpdate', { 'type': 'pos', 'data': currentDetails[ 'pos' ], 'authKey': authKey } ).catch( err => { - console.error( err ); - } ); - } - axios.post( remoteURL + '/statusUpdate', { 'type': update, 'data': currentDetails[ update ], 'authKey': authKey } ).catch( err => { - console.error( err ); - } ); - } else { - connect(); - } -} - -const allowedTypes = [ 'playingSong', 'isPlaying', 'songQueue', 'pos', 'queuePos' ]; -app.post( '/statusUpdate', ( req, res ) => { - if ( allowedTypes.includes( req.body.type ) ) { - currentDetails[ req.body.type ] = req.body.data; - changedStatus.push( req.body.type ); - sendUpdate( req.body.type ); - res.send( 'ok' ); - } else { - res.status( 400 ).send( 'ERR_UNKNOWN_TYPE' ); - } -} ); - -// STATUS UPDATE from the client display to send to main ui -// Send update if page is closed -const allowedMainUpdates = [ 'blur', 'visibility' ]; -app.post( '/clientStatusUpdate', ( req, res ) => { - if ( allowedMainUpdates.includes( req.body.type ) ) { - const ipRetrieved = req.headers[ 'x-forwarded-for' ]; - const ip = ipRetrieved ? ipRetrieved.split( /, / )[ 0 ] : req.connection.remoteAddress; - sendClientUpdate( req.body.type, ip ); - res.send( 'ok' ); - } else { - res.status( 400 ).send( 'ERR_UNKNOWN_TYPE' ); - } -} ); - -const sendClientUpdate = ( update, ip ) => { - try { - connectedMain.write( 'data: ' + JSON.stringify( { 'type': update, 'ip': ip } ) + '\n\n' ); - } catch ( err ) {} -} - -app.get( '/indexDirs', ( req, res ) => { - if ( req.query.dir ) { - indexer.index( req ).then( dirIndex => { - res.send( dirIndex ); - } ).catch( err => { - if ( err === 'ERR_DIR_NOT_FOUND' ) { - res.status( 404 ).send( 'ERR_DIR_NOT_FOUND' ); - } else { - res.status( 500 ).send( 'unable to process' ); - } - } ); - } else { - res.status( 400 ).send( 'ERR_REQ_INCOMPLETE' ); - } -} ); - -app.get( '/loadPlaylist', ( req, res ) => { - const selFile = dialog.showOpenDialogSync( { properties: [ 'openFile' ], title: 'Open file with playlist' } )[ 0 ]; - res.send( { 'data': JSON.parse( fs.readFileSync( selFile ) ), 'path': selFile } ); -} ); - -app.get( '/getMetadata', async ( req, res ) => { - res.send( await indexer.analyzeFile( req.query.file ) ); -} ); - -app.post( '/savePlaylist', ( req, res ) => { - fs.writeFileSync( dialog.showSaveDialogSync( { - properties: [ 'createDirectory' ], - title: 'Save the playlist as a json file', - filters: [ - { - extensions: [ 'json' ], - name: 'JSON files', - } - ], - defaultPath: 'songs.json' - } ), beautify( req.body, null, 2, 50 ) ); - res.send( 'ok' ); -} ); - -app.get( '/getSongCover', ( req, res ) => { - if ( req.query.filename ) { - if ( indexer.getImages( req.query.filename ) ) { - res.send( indexer.getImages( req.query.filename ) ); - } else { - res.status( 404 ).send( 'No cover image for this file' ); - } - } else { - res.status( 400 ).send( 'ERR_REQ_INCOMPLETE' ); - } -} ); - -app.get( '/getSongFile', ( req, res ) => { - if ( req.query.filename ) { - res.sendFile( req.query.filename ); - } else { - res.status( 400 ).send( 'ERR_REQ_INCOMPLETE' ); - } -} ); - - -app.get( '/getAppleMusicDevToken', ( req, res ) => { - // sign dev token - const privateKey = fs.readFileSync( path.join( __dirname + '/config/apple_private_key.p8' ) ).toString(); - // TODO: Remove secret - const config = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/apple-music-api.config.json' ) ) ); - const jwtToken = jwt.sign( {}, privateKey, { - algorithm: "ES256", - expiresIn: "180d", - issuer: config.teamID, - header: { - alg: "ES256", - kid: config.keyID - } - } ); - res.send( jwtToken ); -} ); - - -app.use( ( request, response, next ) => { - response.sendFile( path.join( __dirname + '' ) ) -} ); - -app.listen( 8081 ); \ No newline at end of file diff --git a/old/frontend/src/appleMusicRoutes.js b/old/frontend/src/appleMusicRoutes.js deleted file mode 100644 index f863dcb..0000000 --- a/old/frontend/src/appleMusicRoutes.js +++ /dev/null @@ -1,84 +0,0 @@ -/* -* MusicPlayerV2 - appleMusicRoutes.js -* -* Created by Janis Hutz 11/14/2023, Licensed under the GPL V3 License -* https://janishutz.com, development@janishutz.com -* -* -*/ - -const path = require( 'path' ); -const fs = require( 'fs' ); -const csv = require( 'csv-parser' ); -const dialog = require( 'electron' ).dialog; - -const analyzeFile = ( filepath ) => { - return new Promise( ( resolve, reject ) => { - if ( filepath.includes( '.csv' ) ) { - // This will assume that line #1 will be song #1 in the file list - // (when sorted by name) - let results = {}; - let pos = 0; - fs.createReadStream( filepath ) - .pipe( csv() ) - .on( 'data', ( data ) => { - results[ pos ] = data; - pos += 1; - } ).on( 'end', () => { - resolve( results ); - } ); - } else if ( filepath.includes( '.json' ) ) { - resolve( JSON.parse( fs.readFileSync( filepath ) ) ); - } else { - reject( 'NO_CSV_OR_JSON_FILE' ); - } - } ); -} - -module.exports = ( app ) => { - app.get( '/apple-music', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/appleMusic/index.html' ) ); - } ); - - app.get( '/apple-music/helpers/:file', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/appleMusic/' + req.params.file ) ); - } ); - - app.get( '/icon-font.css', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/icon-font.css' ) ); - } ); - - app.get( '/iconFont.woff2', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/iconFont.woff2' ) ); - } ); - - app.get( '/logo.png', ( req, res ) => { - res.sendFile( path.join( __dirname + '/client/logo.png' ) ); - } ); - - app.get( '/apple-music/getAdditionalData', ( req, res ) => { - const filepath = dialog.showOpenDialogSync( { - properties: [ 'openFile' ], - title: 'Open file with additional data on the songs', - filters: [ - { - name: 'All supported files (.csv, .json)', - extensions: [ 'csv', 'json' ], - }, - { - name: 'JSON', - extensions: [ 'json' ], - }, - { - name: 'CSV', - extensions: [ 'csv' ], - } - ], - } )[ 0 ]; - analyzeFile( filepath ).then( analyzedFile => { - res.send( analyzedFile ); - } ).catch( () => { - res.status( 500 ).send( 'no csv / json file' ); - } ) - } ); -} \ No newline at end of file diff --git a/old/frontend/src/assets/loadingSymbol.svg b/old/frontend/src/assets/loadingSymbol.svg deleted file mode 100644 index 60646d6..0000000 --- a/old/frontend/src/assets/loadingSymbol.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/old/frontend/src/assets/logo.png b/old/frontend/src/assets/logo.png deleted file mode 100644 index 52cdfa9..0000000 Binary files a/old/frontend/src/assets/logo.png and /dev/null differ diff --git a/old/frontend/src/background.js b/old/frontend/src/background.js deleted file mode 100644 index 94ebb82..0000000 --- a/old/frontend/src/background.js +++ /dev/null @@ -1,82 +0,0 @@ -'use strict' - -import { app, protocol, BrowserWindow } from 'electron' -import { createProtocol } from 'vue-cli-plugin-electron-builder/lib/index.js' -import installExtension, { VUEJS3_DEVTOOLS } from 'electron-devtools-installer' -const isDevelopment = process.env.NODE_ENV !== 'production' - -// Scheme must be registered before the app is ready -protocol.registerSchemesAsPrivileged([ - { scheme: 'app', privileges: { secure: true, standard: true } } -]) - -async function createWindow() { - // Create the browser window. - const win = new BrowserWindow({ - width: 800, - height: 600, - webPreferences: { - - // Use pluginOptions.nodeIntegration, leave this alone - // See nklayman.github.io/vue-cli-plugin-electron-builder/guide/security.html#node-integration for more info - nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION, - contextIsolation: !process.env.ELECTRON_NODE_INTEGRATION - } - }) - - if (process.env.WEBPACK_DEV_SERVER_URL) { - // Load the url of the dev server if in development mode - await win.loadURL(process.env.WEBPACK_DEV_SERVER_URL) - if (!process.env.IS_TEST) win.webContents.openDevTools() - } else { - createProtocol('app') - // Load the index.html when not in development - win.loadURL('app://./index.html') - } - require( './app.js' ); -} - -// Quit when all windows are closed. -app.on('window-all-closed', () => { - // On macOS it is common for applications and their menu bar - // to stay active until the user quits explicitly with Cmd + Q - if (process.platform !== 'darwin') { - app.quit() - } -}) - -app.on('activate', () => { - // On macOS it's common to re-create a window in the app when the - // dock icon is clicked and there are no other windows open. - if (BrowserWindow.getAllWindows().length === 0) createWindow() -}) - -// This method will be called when Electron has finished -// initialization and is ready to create browser windows. -// Some APIs can only be used after this event occurs. -app.on('ready', async () => { - if (isDevelopment && !process.env.IS_TEST) { - // Install Vue Devtools - try { - await installExtension(VUEJS3_DEVTOOLS) - } catch (e) { - console.error('Vue Devtools failed to install:', e.toString()) - } - } - createWindow() -}) - -// Exit cleanly on request from parent process in development mode. -if (isDevelopment) { - if (process.platform === 'win32') { - process.on('message', (data) => { - if (data === 'graceful-exit') { - app.quit() - } - }) - } else { - process.on('SIGTERM', () => { - app.quit() - }) - } -} diff --git a/old/frontend/src/client/appleMusic/appleMusicIcon.svg b/old/frontend/src/client/appleMusic/appleMusicIcon.svg deleted file mode 100644 index 7fcf6a0..0000000 --- a/old/frontend/src/client/appleMusic/appleMusicIcon.svg +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/old/frontend/src/client/appleMusic/index.html b/old/frontend/src/client/appleMusic/index.html deleted file mode 100644 index 32f69cb..0000000 --- a/old/frontend/src/client/appleMusic/index.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - MusicPlayerV2 - - - - - - -
-
-

WARNING!

-

A client display is being tampered with!

-

A desktop notification with a warning has already been dispatched.

- - -
-
-
- autorenew -

Loading player...

-
-
-
- Music player icon - -
-

Apple Music integration

- -
-
-
-

Your playlists

- -
- autorenew -

Loading playlists...

-
-
-

{{ playlist.title }}

-
-
-
-
- - -
-
-
- skip_previous - replay_10 - play_arrow - pause - play_disabled - forward_10 - skip_next - shuffle - shuffle_on - repeat - repeat_one_on - repeat_on - upload - ios_share -
- info -
-

IP to connect to:


-

{{ localIP }}:8081

-
-
- -
-
-
- - music_note -
-

{{ playingSong.title ?? 'No song selected' }}

-

{{ playingSong.artist }}

-
-
-
-
-
{{ playbackPosBeautified }}
-
{{ durationBeautified }}
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
- play_arrow - pause -

{{ song.title }}

-
-
-
-
-
-
- - - - \ No newline at end of file diff --git a/old/frontend/src/client/appleMusic/index.js b/old/frontend/src/client/appleMusic/index.js deleted file mode 100644 index 49bfd70..0000000 --- a/old/frontend/src/client/appleMusic/index.js +++ /dev/null @@ -1,720 +0,0 @@ -/* -* MusicPlayerV2 - index.js -* -* Created by Janis Hutz 11/20/2023, Licensed under the GPL V3 License -* https://janishutz.com, development@janishutz.com -* -* -*/ - -/* - Quick side note here: This is terribly ugly code, but I was in a hurry to finish it, - so I had no time to clean it up. I will do that at some point -jh -*/ - -const app = Vue.createApp( { - data() { - return { - musicKit: null, - isLoggedIn: false, - config: { - 'devToken': '', - 'userToken': '' - }, - playlists: {}, - hasSelectedPlaylist: false, - songQueue: {}, - queuePos: 0, - pos: 0, - playingSong: {}, - isPlaying: false, - isShuffleEnabled: false, - repeatMode: 'off', - playbackPosBeautified: '', - durationBeautified: '', - isShowingRemainingTime: false, - localIP: '', - hasLoadedPlaylists: false, - isPreparingToPlay: false, - additionalSongInfo: {}, - hasFinishedInit: false, - isShowingWarning: false, - - // For use with playlists that are partially from apple music and - // local drive - isUsingCustomPlaylist: false, - rawLoadedPlaylistData: {}, - basePath: '', - audioPlayer: null, - isReconnecting: false, - - // slider - offset: 0, - isDragging: false, - sliderPos: 0, - originalPos: 0, - sliderProgress: 0, - active: false, - } - }, - methods: { - logInto() { - if ( !this.musicKit.isAuthorized ) { - this.musicKit.authorize().then( () => { - this.isLoggedIn = true; - this.initMusicKit(); - } ); - } else { - this.musicKit.authorize().then( () => { - this.isLoggedIn = true; - this.initMusicKit(); - } ); - } - }, - initMusicKit () { - fetch( '/getAppleMusicDevToken' ).then( res => { - if ( res.status === 200 ) { - res.text().then( token => { - // MusicKit global is now defined - MusicKit.configure( { - developerToken: token, - app: { - name: 'MusicPlayer', - build: '2' - }, - storefrontId: 'CH', - } ).then( () => { - this.config.devToken = token; - this.musicKit = MusicKit.getInstance(); - if ( this.musicKit.isAuthorized ) { - this.isLoggedIn = true; - this.config.userToken = this.musicKit.musicUserToken; - } - this.musicKit.shuffleMode = MusicKit.PlayerShuffleMode.off; - this.apiGetRequest( 'https://api.music.apple.com/v1/me/library/playlists', this.playlistHandler ); - } ); - } ); - } - } ); - }, - playlistHandler ( data ) { - if ( data.status === 'ok' ) { - const d = data.data.data; - this.playlist = {}; - for ( let el in d ) { - this.playlists[ d[ el ].id ] = { - title: d[ el ].attributes.name, - id: d[ el ].id, - playParams: d[ el ].attributes.playParams, - } - } - this.hasLoadedPlaylists = true; - } - }, - apiGetRequest( url, callback ) { - if ( this.config.devToken != '' && this.config.userToken != '' ) { - fetch( url, { - method: 'GET', - headers: { - 'Authorization': `Bearer ${ this.config.devToken }`, - 'Music-User-Token': this.config.userToken - } - } ).then( res => { - if ( res.status === 200 ) { - res.json().then( json => { - try { - callback( { 'status': 'ok', 'data': json } ); - } catch( err ) {} - } ); - } else { - try { - callback( { 'status': 'error', 'error': res.status } ); - } catch( err ) {} - } - } ); - } else return false; - }, - getAdditionalSongInfo() { - if ( Object.keys( this.additionalSongInfo ).length < 1 ) { - fetch( '/apple-music/getAdditionalData' ).then( res => { - if ( res.status === 200 ) { - res.json().then( json => { - this.additionalSongInfo = json; - this.handleAdditionalData(); - } ); - } - } ); - } - }, - handleAdditionalData () { - if ( Object.keys( this.additionalSongInfo ).length > 0 ) { - for ( let item in this.songQueue ) { - if ( this.additionalSongInfo[ item ] ) { - for ( let d in this.additionalSongInfo[ item ] ) { - if ( !this.songQueue[ item ][ d ] ) { - this.songQueue[ item ][ d ] = this.additionalSongInfo[ item ][ d ]; - } - } - } - } - this.playingSong = this.songQueue[ this.queuePos ]; - this.sendUpdate( 'songQueue' ); - this.sendUpdate( 'playingSong' ); - } - }, - selectPlaylist( id ) { - this.isPreparingToPlay = true; - this.musicKit.setQueue( { playlist: id } ).then( () => { - try { - this.loadPlaylist(); - this.hasSelectedPlaylist = true; - this.isPreparingToPlay = false; - } catch( err ) { - this.hasSelectedPlaylist = false; - console.error( err ); - alert( 'We were unable to play. Please ensure that DRM (yeah sorry it is Apple Music, we cannot do anything about that) is enabled and working' ); - } - } ).catch( err => { - console.error( 'ERROR whilst settings Queue', err ); - } ); - }, - handleDrag( e ) { - if ( this.isDragging ) { - if ( 0 < this.originalPos + e.screenX - this.offset && this.originalPos + e.screenX - this.offset < document.getElementById( 'progress-slider' ).clientWidth - 5 ) { - this.sliderPos = e.screenX - this.offset; - this.calcProgressPos(); - } - } - }, - startMove( e ) { - this.offset = e.screenX; - this.isDragging = true; - document.getElementById( 'drag-support' ).classList.add( 'drag-support-active' ); - }, - stopMove() { - this.originalPos += parseInt( this.sliderPos ); - this.isDragging = false; - this.offset = 0; - this.sliderPos = 0; - document.getElementById( 'drag-support' ).classList.remove( 'drag-support-active' ); - this.calcPlaybackPos(); - }, - setPos ( e ) { - if ( this.hasSelectedPlaylist ) { - this.originalPos = e.offsetX; - this.calcProgressPos(); - this.calcPlaybackPos(); - if ( this.playingSong.origin === 'apple-music' ) { - this.musicKit.seekToTime( this.pos ); - } else { - this.audioPlayer.currentTime = this.pos; - } - this.sendUpdate( 'pos' ); - } - }, - calcProgressPos() { - this.sliderProgress = Math.ceil( ( this.originalPos + parseInt( this.sliderPos ) ) / ( document.getElementById( 'progress-slider' ).clientWidth - 5 ) * 1000 ); - }, - calcPlaybackPos() { - this.pos = Math.round( ( this.originalPos + parseInt( this.sliderPos ) ) / ( document.getElementById( 'progress-slider' ).clientWidth - 5 ) * this.playingSong.duration ); - }, - sendUpdate( update ) { - let data = {}; - let up = update; - if ( update === 'pos' ) { - data = this.pos; - } else if ( update === 'playingSong' ) { - data = this.playingSong; - } else if ( update === 'isPlaying' ) { - data = this.isPlaying; - } else if ( update === 'songQueue' ) { - data = this.songQueue; - } else if ( update === 'queuePos' ) { - data = this.queuePos; - } else if ( update === 'posReset' ) { - data = 0; - up = 'pos'; - } - let fetchOptions = { - method: 'post', - body: JSON.stringify( { 'type': up, 'data': data } ), - headers: { - 'Content-Type': 'application/json', - 'charset': 'utf-8' - }, - }; - fetch( 'http://localhost:8081/statusUpdate', fetchOptions ).catch( err => { - console.error( err ); - } ); - }, - loadPlaylist() { - const songQueue = this.musicKit.queue.items; - for ( let item in songQueue ) { - this.songQueue[ item ] = { - 'artist': songQueue[ item ].attributes.artistName, - 'title': songQueue[ item ].attributes.name, - 'year': songQueue[ item ].attributes.releaseDate, - 'genre': songQueue[ item ].attributes.genreNames, - 'duration': Math.round( songQueue[ item ].attributes.durationInMillis / 1000 ), - 'filename': songQueue[ item ].id, - 'coverArtOrigin': 'api', - 'hasCoverArt': true, - 'queuePos': item, - 'origin': 'apple-music', - } - let url = songQueue[ item ].attributes.artwork.url; - url = url.replace( '{w}', songQueue[ item ].attributes.artwork.width ); - url = url.replace( '{h}', songQueue[ item ].attributes.artwork.height ); - this.songQueue[ item ][ 'coverArtURL' ] = url; - this.handleAdditionalData(); - this.sendUpdate( 'songQueue' ); - } - }, - control( action ) { - if ( action === 'play' ) { - if ( !this.playingSong.origin ) { - this.play( this.songQueue[ 0 ] ); - this.isPlaying = true; - } else { - if ( this.playingSong.origin === 'apple-music' ) { - if( !this.musicKit || !this.isPlaying ) { - this.musicKit.play().then( () => { - this.sendUpdate( 'pos' ); - } ).catch( err => { - console.log( 'player failed to start' ); - console.log( err ); - } ); - } else { - this.musicKit.pause().then( () => { - this.musicKit.play().catch( err => { - console.log( 'player failed to start' ); - console.log( err ); - } ); - } ); - } - try { - this.audioPlayer.pause(); - } catch ( err ) {} - } else { - this.audioPlayer.play(); - this.musicKit.pause(); - } - this.isPlaying = true; - try { - clearInterval( this.progressTracker ); - } catch( err ) {}; - this.progressTracker = setInterval( () => { - if ( this.playingSong.origin === 'apple-music' ) { - this.pos = parseInt( this.musicKit.currentPlaybackTime ); - } else { - this.pos = parseInt( this.audioPlayer.currentTime ); - } - - if ( this.pos > this.playingSong.duration - 1 ) { - this.control( 'next' ); - } - - const minuteCount = Math.floor( this.pos / 60 ); - this.playbackPosBeautified = minuteCount + ':'; - if ( ( '' + minuteCount ).length === 1 ) { - this.playbackPosBeautified = '0' + minuteCount + ':'; - } - const secondCount = Math.floor( this.pos - minuteCount * 60 ); - if ( ( '' + secondCount ).length === 1 ) { - this.playbackPosBeautified += '0' + secondCount; - } else { - this.playbackPosBeautified += secondCount; - } - - if ( this.isShowingRemainingTime ) { - const minuteCounts = Math.floor( ( this.playingSong.duration - this.pos ) / 60 ); - this.durationBeautified = '-' + String( minuteCounts ) + ':'; - if ( ( '' + minuteCounts ).length === 1 ) { - this.durationBeautified = '-0' + minuteCounts + ':'; - } - const secondCounts = Math.floor( ( this.playingSong.duration - this.pos ) - minuteCounts * 60 ); - if ( ( '' + secondCounts ).length === 1 ) { - this.durationBeautified += '0' + secondCounts; - } else { - this.durationBeautified += secondCounts; - } - } - }, 50 ); - this.sendUpdate( 'pos' ); - this.sendUpdate( 'isPlaying' ); - } - } else if ( action === 'pause' ) { - if ( this.playingSong.origin === 'apple-music' ) { - this.musicKit.pause(); - } else { - this.audioPlayer.pause(); - } - this.sendUpdate( 'pos' ); - try { - clearInterval( this.progressTracker ); - clearInterval( this.notifier ); - } catch ( err ) {}; - this.isPlaying = false; - this.sendUpdate( 'isPlaying' ); - } else if ( action === 'replay10' ) { - if ( this.playingSong.origin === 'apple-music' ) { - this.musicKit.seekToTime( this.musicKit.currentPlaybackTime > 10 ? this.musicKit.currentPlaybackTime - 10 : 0 ); - this.pos = this.musicKit.currentPlaybackTime; - } else { - this.audioPlayer.currentTime = this.audioPlayer.currentTime > 10 ? this.audioPlayer.currentTime - 10 : 0; - this.pos = this.audioPlayer.currentTime; - } - this.sendUpdate( 'pos' ); - } else if ( action === 'forward10' ) { - if ( this.playingSong.origin === 'apple-music' ) { - if ( this.musicKit.currentPlaybackTime < ( this.playingSong.duration - 10 ) ) { - this.musicKit.seekToTime( this.musicKit.currentPlaybackTime + 10 ); - this.pos = this.musicKit.currentPlaybackTime; - this.sendUpdate( 'pos' ); - } else { - if ( this.repeatMode !== 'one' ) { - this.control( 'next' ); - } else { - this.musicKit.seekToTime( 0 ); - this.pos = this.musicKit.currentPlaybackTime; - this.sendUpdate( 'pos' ); - } - } - } else { - if ( this.audioPlayer.currentTime < ( this.playingSong.duration - 10 ) ) { - this.audioPlayer.currentTime = this.audioPlayer.currentTime + 10; - this.pos = this.audioPlayer.currentTime; - this.sendUpdate( 'pos' ); - } else { - if ( this.repeatMode !== 'one' ) { - this.control( 'next' ); - } else { - this.audioPlayer.currentTime = 0; - this.pos = this.audioPlayer.currentTime; - this.sendUpdate( 'pos' ); - } - } - } - } else if ( action === 'reset' ) { - clearInterval( this.progressTracker ); - this.pos = 0; - if ( this.playingSong.origin === 'apple-music' ) { - this.musicKit.seekToTime( 0 ); - } else { - this.audioPlayer.currentTime = 0; - } - this.sendUpdate( 'pos' ); - } else if ( action === 'next' ) { - if ( this.queuePos < parseInt( Object.keys( this.songQueue ).length ) - 1 ) { - this.queuePos = parseInt( this.queuePos ) + 1; - this.play( this.songQueue[ this.queuePos ] ); - } else { - if ( this.repeatMode === 'all' ) { - this.queuePos = 0; - this.play( this.songQueue[ 0 ] ); - } else { - this.control( 'pause' ); - } - } - } else if ( action === 'previous' ) { - if ( this.pos > 3 ) { - this.pos = 0; - if ( this.isUsingCustomPlaylist ) { - this.audioPlayer.currentTime = 0; - this.sendUpdate( 'pos' ); - } else { - this.musicKit.seekToTime( 0 ).then( () => { - this.sendUpdate( 'pos' ); - this.control( 'play' ); - } ); - } - } else { - if ( this.queuePos > 0 ) { - this.queuePos = parseInt( this.queuePos ) - 1; - this.play( this.songQueue[ this.queuePos ] ); - } else { - this.queuePos = parseInt( Object.keys( this.songQueue ).length ) - 1; - this.play[ this.songQueue[ this.queuePos ] ]; - } - } - - } else if ( action === 'shuffleOff' ) { - // TODO: Make shuffle function - this.isShuffleEnabled = false; - // this.loadPlaylist(); - alert( 'not implemented yet' ); - } else if ( action === 'shuffleOn' ) { - this.isShuffleEnabled = true; - alert( 'not implemented yet' ); - // this.loadPlaylist(); - } else if ( action === 'repeatOne' ) { - this.repeatMode = 'one'; - } else if ( action === 'repeatAll' ) { - this.repeatMode = 'all'; - } else if ( action === 'repeatOff' ) { - this.musicKit.repeatMode = MusicKit.PlayerRepeatMode.none; - this.repeatMode = 'off'; - } - }, - play( song, specificID ) { - let foundSong = specificID ?? 0; - if ( !specificID ) { - for ( let s in this.songQueue ) { - if ( this.songQueue[ s ] === song ) { - foundSong = s; - } - } - } - - this.queuePos = foundSong; - this.sendUpdate( 'queuePos' ); - this.pos = 0; - this.sendUpdate( 'posReset' ); - this.playingSong = song; - this.sendUpdate( 'playingSong' ); - if ( song.origin === 'apple-music' ) { - this.musicKit.setQueue( { 'song': song.filename } ).then( () => { - setTimeout( () => { - this.control( 'play' ); - }, 500 ); - } ).catch( ( err ) => { - console.log( err ); - } ); - } else { - setTimeout( () => { - this.control( 'play' ); - }, 500 ); - } - const minuteCounts = Math.floor( ( this.playingSong.duration ) / 60 ); - this.durationBeautified = String( minuteCounts ) + ':'; - if ( ( '' + minuteCounts ).length === 1 ) { - this.durationBeautified = '0' + minuteCounts + ':'; - } - const secondCounts = Math.floor( ( this.playingSong.duration ) - minuteCounts * 60 ); - if ( ( '' + secondCounts ).length === 1 ) { - this.durationBeautified += '0' + secondCounts; - } else { - this.durationBeautified += secondCounts; - } - this.hasFinishedInit = true; - }, - toggleShowMode() { - this.isShowingRemainingTime = !this.isShowingRemainingTime; - }, - exportCurrentPlaylist() { - let fetchOptions = { - method: 'post', - body: JSON.stringify( this.songQueue ), - headers: { - 'Content-Type': 'application/json', - 'charset': 'utf-8' - }, - }; - fetch( '/savePlaylist', fetchOptions ).then( res => { - if ( res.status === 200 ) { - console.log( 'saved' ); - } - } ); - }, - selectPlaylistFromDisk() { - this.isPreparingToPlay = true; - let playlistSongs = []; - fetch( '/loadPlaylist' ).then( res => { - res.json().then( data => { - this.rawLoadedPlaylistData = data.data; - this.basePath = data.path.slice( 0, data.path.lastIndexOf( '/' ) ); - for ( let song in this.rawLoadedPlaylistData ) { - if ( this.rawLoadedPlaylistData[ song ].origin === 'apple-music' ) { - playlistSongs.push( this.rawLoadedPlaylistData[ song ].filename ); - } - } - this.musicKit.setQueue( { songs: playlistSongs } ).then( () => { - this.isUsingCustomPlaylist = true; - try { - this.loadCustomPlaylist(); - this.hasSelectedPlaylist = true; - this.isPreparingToPlay = false; - } catch( err ) { - this.hasSelectedPlaylist = false; - console.error( err ); - alert( 'We were unable to play. Please ensure that DRM (yeah sorry it is Apple Music, we cannot do anything about that) is enabled and working' ); - } - } ).catch( err => { - console.error( 'ERROR whilst settings Queue', err ); - } ); - } ); - } ); - }, - loadCustomPlaylist() { - const songQueue = this.musicKit.queue.items; - let offset = 0; - ( async() => { - for ( let item in this.rawLoadedPlaylistData ) { - if ( this.rawLoadedPlaylistData[ item ].origin === 'apple-music' ) { - this.songQueue[ item ] = { - 'artist': songQueue[ item - offset ].attributes.artistName, - 'title': songQueue[ item - offset ].attributes.name, - 'year': songQueue[ item - offset ].attributes.releaseDate, - 'genre': songQueue[ item - offset ].attributes.genreNames, - 'duration': Math.round( songQueue[ item - offset ].attributes.durationInMillis / 1000 ), - 'filename': songQueue[ item - offset ].id, - 'coverArtOrigin': 'api', - 'hasCoverArt': true, - 'queuePos': item, - 'origin': 'apple-music', - 'offset': offset, - } - let url = songQueue[ item - offset ].attributes.artwork.url; - url = url.replace( '{w}', songQueue[ item - offset ].attributes.artwork.width ); - url = url.replace( '{h}', songQueue[ item - offset ].attributes.artwork.height ); - this.songQueue[ item ][ 'coverArtURL' ] = url; - } else { - offset += 1; - const queryParameters = { - term: ( this.rawLoadedPlaylistData[ item ].artist ?? '' ) + ' ' + ( this.rawLoadedPlaylistData[ item ].title ?? '' ), - types: [ 'songs' ], - }; - // TODO: Make storefront adjustable - const result = await this.musicKit.api.music( '/v1/catalog/ch/search', queryParameters ); - let json; - try { - const res = await fetch( '/getMetadata?file=' + this.basePath + '/' + this.rawLoadedPlaylistData[ item ].filename ); - json = await res.json(); - } catch( err ) {} - if ( result.data ) { - if ( result.data.results.songs ) { - const dat = result.data.results.songs.data[ 0 ]; - console.log( json ); - this.songQueue[ item ] = { - 'artist': dat.attributes.artistName, - 'title': dat.attributes.name, - 'year': dat.attributes.releaseDate, - 'genre': dat.attributes.genreNames, - 'duration': json ? Math.round( json.duration ) : undefined, - 'filename': this.rawLoadedPlaylistData[ item ].filename, - 'coverArtOrigin': 'api', - 'hasCoverArt': true, - 'queuePos': item, - 'origin': 'local', - } - let url = dat.attributes.artwork.url; - url = url.replace( '{w}', dat.attributes.artwork.width ); - url = url.replace( '{h}', dat.attributes.artwork.height ); - this.songQueue[ item ][ 'coverArtURL' ] = url; - } - } - } - this.handleAdditionalData(); - this.sendUpdate( 'songQueue' ); - } - } )(); - setTimeout( () => { - this.audioPlayer = document.getElementById( 'audio-player' ); - }, 1000 ); - }, - search() { - ( async() => { - const searchTerm = prompt( 'Enter search term...' ) - const queryParameters = { - term: ( searchTerm ), - types: [ 'songs' ], - }; - // TODO: Make storefront adjustable - const result = await this.musicKit.api.music( '/v1/catalog/ch/search', queryParameters ); - console.log( result ); - } )(); - }, - connectToNotifier() { - let source = new EventSource( '/mainNotifier', { withCredentials: true } ); - source.onmessage = ( e ) => { - let data; - try { - data = JSON.parse( e.data ); - } catch ( err ) { - data = { 'type': e.data }; - } - if ( data.type === 'blur' ) { - this.isShowingWarning = true; - } else if ( data.type === 'visibility' ) { - this.isShowingWarning = true; - } - }; - - source.onopen = () => { - this.isReconnecting = false; - console.log( 'client notifier connected successfully' ); - }; - - let self = this; - - source.addEventListener( 'error', function( e ) { - if ( e.eventPhase == EventSource.CLOSED ) source.close(); - - if ( e.target.readyState == EventSource.CLOSED ) { - setTimeout( () => { - if ( !self.isReconnecting ) { - console.log( 'disconnected' ); - console.log( 'reconnecting...' ); - self.isReconnecting = true; - self.tryReconnect(); - } - }, 1000 ); - } - - }, false ); - }, - tryReconnect() { - const int = setInterval( () => { - if ( !this.isReconnecting ) { - clearInterval( int ); - } else { - this.connectToNotifier(); - } - }, 1000 ); - }, - dismissNotification() { - this.isShowingWarning = false; - } - }, - watch: { - pos() { - if ( !this.isDragging ) { - this.sliderProgress = Math.ceil( this.pos / this.playingSong.duration * 1000 + 2 ); - this.originalPos = Math.ceil( this.pos / this.playingSong.duration * ( document.getElementById( 'progress-slider' ).scrollWidth - 5 ) ); - } - } - }, - created() { - document.addEventListener( 'keydown', ( e ) => { - if ( e.key === ' ' ) { - e.preventDefault(); - if ( !this.isPlaying ) { - this.control( 'play' ); - } else { - this.control( 'pause' ); - } - } else if ( e.key === 'ArrowRight' ) { - e.preventDefault(); - this.control( 'next' ); - } else if ( e.key === 'ArrowLeft' ) { - e.preventDefault(); - this.control( 'previous' ); - } - } ); - if ( !window.MusicKit ) { - document.addEventListener( 'musickitloaded', () => { - self.initMusicKit(); - } ); - } else { - this.initMusicKit(); - } - this.connectToNotifier(); - fetch( '/getLocalIP' ).then( res => { - if ( res.status === 200 ) { - res.text().then( ip => { - this.localIP = ip; - } ); - } - } ); - }, -} ).mount( '#app' ); \ No newline at end of file diff --git a/old/frontend/src/client/appleMusic/musickit.js b/old/frontend/src/client/appleMusic/musickit.js deleted file mode 100644 index 2d2d7ed..0000000 --- a/old/frontend/src/client/appleMusic/musickit.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * IMPORTANT NOTE: - * - * This file is licensed only for the use of Apple developers in providing MusicKit Web Services, - * and is subject to the Apple Media Services Terms and Conditions and the Apple Developer Program - * License Agreement. You may not copy, modify, re-host, or create derivative works of this file or the - * accompanying Documentation, or any part thereof, including any updates, without Apple's written consent. - * - * ACKNOWLEDGEMENTS: - * https://js-cdn.music.apple.com/musickit/v1/acknowledgements.txt - */ - -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).MusicKit={})}(this,(function(e){"use strict";var n=void 0!==typeof self?self:this;function formatArtworkURL(e,n,d){return n=n||e.height||100,d=d||e.width||100,window.devicePixelRatio>=1.5&&(d*=2,n*=2),e.url.replace("{h}",""+n).replace("{w}",""+d).replace("{f}","jpeg")}const K=()=>{},asAsync=e=>{e.then(K,K)},d=/\/(?:([a-z]{2})\/)?(album|artist|episode|movie|music-video|playlist|podcast|post|season|show|song|station)\/(?:[^/]*\/)?(?:id)?(\d+|[a-z]{2}\.[a-z0-9-]+|umc.cmc.[a-zA-Z0-9]+)(?:.*(?:[?|&]i=(\d+)).*)?.*$/i;function formattedMediaURL(e){const n=function(e){const n=e.match(d)||[];let[,p,h,y,_]=n;return"music-video"===h&&(h="musicVideo"),-1!==["album","playlist"].indexOf(h)&&_?(h="song",y=_):"podcast"===h&&_&&(h="episode",y=_),{storefrontId:p,kind:h,contentId:y,itemId:_}}(e),{storefrontId:p,kind:h,contentId:y}=n;if([p,h,y].some(e=>void 0===e))throw new TypeError("Invalid Media URL: "+e);return{storefrontId:p,kind:h,contentId:y,isUTS:!!y&&y.startsWith("umc.")}}const p=/^http(?:s)?\:\/\/(?:itunes|(embed\.)?(music|podcasts|tv))\.apple\.com/i,h=["allow-forms","allow-popups","allow-same-origin","allow-scripts","allow-storage-access-by-user-activation","allow-top-navigation-by-user-activation"],y=["autoplay *","encrypted-media *","fullscreen *","clipboard-write"];const _=["contributors","modalities","movie","musicVideo","musicMovie","trailer","tvEpisode","uploadedVideo","uploaded-videos","music-videos","music-movies","tv-episodes","workouts"];function isVideo(e){var n;return null!=e&&(!0===e.isUTS||_.includes(e.type)||"video"===(null===(n=e.attributes)||void 0===n?void 0:n.mediaKind))}function isLive(e){var n,d;return!!(null===(d=e)||void 0===d||null===(n=d.attributes)||void 0===n?void 0:n.isLive)}function isStream$1(e){var n,d,p;return"stream"===(null===(p=e)||void 0===p||null===(d=p.attributes)||void 0===d||null===(n=d.playParams)||void 0===n?void 0:n.format)}function isLiveRadioStation(e){return isLive(e)&&isStream$1(e)}function isLiveRadioKind(e,n){var d;return isLiveRadioStation(e)&&(null===(d=e.attributes)||void 0===d?void 0:d.mediaKind)===n}function isAOD(e){var n,d;return!isLive(e)&&isStream$1(e)&&"Episode"===e.attributes.streamingRadioSubType||!!(null===(d=e)||void 0===d||null===(n=d.attributes)||void 0===n?void 0:n.isAOD)}function isBroadcastRadio(e){return isLive(e)&&isStream$1(e)&&void 0!==e.attributes.stationProviderName&&"Shoutcast"===e.attributes.streamingRadioSubType}function getFilterFromFlags(e){const n=e.includes("radio-live"),d=e.includes("radio-aod"),p=e.includes("radio-broadcast");return function(e){return(!n||n&&!isLiveRadioStation(e))&&(!d||d&&!isAOD(e))&&(!p||p&&!isBroadcastRadio(e))}}const m={};function normalizeContentType(e){if(void 0!==m[e])return m[e];let n=e.replace(/[A-Z]/g,(function(e,n){const d=e.toLowerCase();return 0!==n?"-"+d:d})).replace(/_+/g,"-").replace(/-+/g,"-").replace(/(^-*)|(-*$)/,"");return e.endsWith("y")?n=n.substring(0,n.length-1)+"ies":n.endsWith("s")||(n+="s"),m[e]=n,n}function _define_property$1X(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const g={INVALID_ERROR_ID:"INVALID_ERROR_ID",INVALID_ERROR_REASON:"INVALID_ERROR_REASON",ACCESS_DENIED:"ACCESS_DENIED",AGE_VERIFICATION:"AGE_VERIFICATION",AGE_GATE:"AGE_GATE",AUTHORIZATION_ERROR:"AUTHORIZATION_ERROR",BUFFER_STALLED_ERROR:"BUFFER_STALLED_ERROR",CONFIGURATION_ERROR:"CONFIGURATION_ERROR",CONTENT_EQUIVALENT:"CONTENT_EQUIVALENT",CONTENT_RESTRICTED:"CONTENT_RESTRICTED",CONTENT_UNAVAILABLE:"CONTENT_UNAVAILABLE",CONTENT_UNSUPPORTED:"CONTENT_UNSUPPORTED",DEVICE_LIMIT:"DEVICE_LIMIT",GEO_BLOCK:"GEO_BLOCK",INVALID_ARGUMENTS:"INVALID_ARGUMENTS",PLAYREADY_CBC_ENCRYPTION_ERROR:"PLAYREADY_CBC_ENCRYPTION_ERROR",MEDIA_CERTIFICATE:"MEDIA_CERTIFICATE",MEDIA_DESCRIPTOR:"MEDIA_DESCRIPTOR",MEDIA_LICENSE:"MEDIA_LICENSE",MEDIA_KEY:"MEDIA_KEY",MEDIA_PLAYBACK:"MEDIA_PLAYBACK",MEDIA_SESSION:"MEDIA_SESSION",NETWORK_ERROR:"NETWORK_ERROR",NOT_FOUND:"NOT_FOUND",PARSE_ERROR:"PARSE_ERROR",PLAY_ACTIVITY:"PLAY_ACTIVITY",REQUEST_ERROR:"REQUEST_ERROR",QUOTA_EXCEEDED:"QUOTA_EXCEEDED",SERVER_ERROR:"SERVER_ERROR",SERVICE_UNAVAILABLE:"SERVICE_UNAVAILABLE",STREAM_UPSELL:"STREAM_UPSELL",SUBSCRIPTION_ERROR:"SUBSCRIPTION_ERROR",TOKEN_EXPIRED:"TOKEN_EXPIRED",UNAUTHORIZED_ERROR:"UNAUTHORIZED_ERROR",UNKNOWN_ERROR:"UNKNOWN_ERROR",UNSUPPORTED_ERROR:"UNSUPPORTED_ERROR",USER_INTERACTION_REQUIRED:"USER_INTERACTION_REQUIRED",INTERNAL_ERROR:"INTERNAL_ERROR",OUTPUT_RESTRICTED:"OUTPUT_RESTRICTED",WIDEVINE_CDM_EXPIRED:"WIDEVINE_CDM_EXPIRED"},b={400:g.REQUEST_ERROR,401:g.UNAUTHORIZED_ERROR,403:g.ACCESS_DENIED,404:g.NOT_FOUND,405:g.NOT_FOUND,413:g.REQUEST_ERROR,414:g.REQUEST_ERROR,429:g.QUOTA_EXCEEDED,500:g.SERVER_ERROR,501:g.NOT_FOUND,503:g.SERVICE_UNAVAILABLE},S={"-1004":g.DEVICE_LIMIT,"-1017":g.GEO_BLOCK,1010:g.NOT_FOUND,2002:g.AUTHORIZATION_ERROR,2034:g.TOKEN_EXPIRED,3059:g.DEVICE_LIMIT,3063:g.SUBSCRIPTION_ERROR,3076:g.CONTENT_UNAVAILABLE,3082:g.CONTENT_RESTRICTED,3084:g.STREAM_UPSELL,5002:g.SERVER_ERROR,180202:g.PLAYREADY_CBC_ENCRYPTION_ERROR,190121:g.WIDEVINE_CDM_EXPIRED},P=new Set([g.CONTENT_EQUIVALENT,g.CONTENT_UNAVAILABLE,g.CONTENT_UNSUPPORTED,g.SERVER_ERROR,g.SUBSCRIPTION_ERROR,g.UNSUPPORTED_ERROR,g.USER_INTERACTION_REQUIRED]);class MKError extends Error{static isMKError(e){return function(e){return void 0!==e&&e instanceof MKError}(e)}get errorCode(){return this.reason}static playActivityError(e){return new this(g.PLAY_ACTIVITY,e)}static parseError(e){return new this(g.PARSE_ERROR,e)}static responseError(e){const{status:n,statusText:d}=e,p=new this(b[n]||g.NETWORK_ERROR,d||""+n);return p.data=e,p}static serverError(e,n=g.UNKNOWN_ERROR){let{status:d,dialog:p,failureType:h,customerMessage:y,errorMessage:_,message:m}=e;p&&(m=p.message||p.customerMessage||p.errorMessage,p.message=m);const b=S[h]||S[d]||n,P=new this(b,m||y||_);return b===g.STREAM_UPSELL&&p&&p.okButtonAction&&p.okButtonAction.url&&(p.okButtonAction.url=p.okButtonAction.url.replace(/\&(?:challenge|key-system|uri|user-initiated)=[^\&]+/gim,"")),P.dialog=p,P}static internalError(e){return new this(g.INTERNAL_ERROR,e)}constructor(e,n){super(),_define_property$1X(this,"isMKError",!0),_define_property$1X(this,"reason",g.UNKNOWN_ERROR),_define_property$1X(this,"description",void 0),_define_property$1X(this,"dialog",void 0),_define_property$1X(this,"data",void 0),e&&P.has(e)?(this.name=this.reason=e,this.message=this.description=n||e):n||"string"!=typeof e?(this.name=this.reason=e||g.UNKNOWN_ERROR,n&&(this.message=this.description=n)):(this.name=this.reason=g.UNKNOWN_ERROR,this.message=this.description=e),Error.captureStackTrace&&Error.captureStackTrace(this,MKError)}}_define_property$1X(MKError,"Reason",g),Object.assign(MKError,g);class GenericStorage{get data(){return this._data}set data(e){this._data=e}get length(){return this.keys.length}get keys(){return Object.keys(this.data)}getItem(e){return this.data[e]||null}setItem(e,n){this.data[e]=n}removeItem(e){delete this.data[e]}clear(){this.keys.forEach(e=>this.removeItem(e))}key(e){return this.keys[e]||null}constructor(e={}){var n,d,p;p=void 0,(d="_data")in(n=this)?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p,this.data=e}}function getCookie(e="",n=document.cookie){const d=n.match(new RegExp(`(?:^|;\\s*)${e}=([^;]*)`));if(d)return d[1]}function setCookie(e,n,d="",p=14,h,y){const _=new Date;h=null!=h?h:window;const m=(y=null!=y?y:/\./.test(h.location.hostname)?h.location.hostname:"").length>0?`domain=${y}; `:"";_.setTime(_.getTime()+24*p*60*60*1e3);let g="";"https:"===h.location.protocol&&(g="; secure"),h.document.cookie=`${e}=${n}; expires=${_.toUTCString()}; ${m}path=${d}${g}`}function removeCookie(e,n,d){setCookie(e,"","/",0,n,d)}function hasSessionStorage(){let e=!1;try{e="undefined"!=typeof sessionStorage}catch(Ut){}return e}function getSessionStorage(){let e;return hasSessionStorage()&&(e=sessionStorage),e}function hasLocalStorage(){let e=!1;try{e="undefined"!=typeof localStorage}catch(Ut){}return e}function getLocalStorage(){let e;return hasLocalStorage()&&(e=localStorage),e}function _define_property$1V(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class Notifications{get shouldStorageDispatch(){return"undefined"!=typeof window&&hasSessionStorage()&&this.dispatchNamespace}addEventListener(e,n){Array.isArray(this._eventRegistry[e])&&this._eventRegistry[e].push(n)}dispatchEvent(e,n){Array.isArray(this._eventRegistry[e])&&this._eventRegistry[e].forEach(e=>e(n))}dispatchDistributedEvent(e,n){if(this.dispatchEvent(e,n),this.shouldStorageDispatch){var d;const p=`${this.dispatchNamespace}:${e}`;null===(d=getSessionStorage())||void 0===d||d.setItem(p,JSON.stringify(n))}}removeEventListener(e,n){if(Array.isArray(this._eventRegistry[e])){const d=this._eventRegistry[e].indexOf(n);this._eventRegistry[e].splice(d,1)}}_handleGlobalStorageEvent(e){var n;if(this.dispatchNamespace&&(null===(n=e.key)||void 0===n?void 0:n.startsWith(this.dispatchNamespace+":"))){const n=e.key.substring(this.dispatchNamespace.length+1);this.dispatchEvent(n,JSON.parse(e.newValue))}}constructor(e=[],n){_define_property$1V(this,"dispatchNamespace",void 0),_define_property$1V(this,"_eventRegistry",{}),e.forEach(e=>{this._eventRegistry[e]=[]}),n&&n.namespace&&(this.dispatchNamespace="com.apple."+n.namespace),this.shouldStorageDispatch&&(this._handleGlobalStorageEvent=this._handleGlobalStorageEvent.bind(this),window.addEventListener("storage",this._handleGlobalStorageEvent))}}var E="undefined"!=typeof FastBoot?FastBoot.require("buffer").Buffer:"undefined"!=typeof process&&null!==process.versions&&null!==process.versions.node?Buffer:window.Buffer;function memoize(e){return function(...n){let d="",p=n.length;for(e._memoized=e._memoized||{};p--;){const e=n[p];d+=e===Object(e)?JSON.stringify(e):e}return d in e._memoized?e._memoized[d]:e._memoized[d]=e(...n)}}function generateUUID(){let e=strRandomizer()+strRandomizer();for(;e.length<16;)e+=strRandomizer();return e.slice(0,16)}function strRandomizer(){return Math.random().toString(16).substring(2)}const T=memoize(e=>/^[a|i|l|p]{1}\.[a-zA-Z0-9]+$/.test(e));function detectNodeEnvironment(){var e,n,d,p;return void 0!==(null===(d=globalThis)||void 0===d||null===(n=d.process)||void 0===n||null===(e=n.versions)||void 0===e?void 0:e.node)||void 0!==(null===(p=globalThis)||void 0===p?void 0:p.FastBoot)}function isNodeEnvironment$1(){return detectNodeEnvironment()}const k=memoize(detectNodeEnvironment()?e=>E.from(e,"base64").toString("binary"):e=>window.atob(e));memoize(detectNodeEnvironment()?e=>E.from(e).toString("base64"):e=>window.btoa(e));const debounce=(e,n=250,d={isImmediate:!1})=>{let p;return function(...h){const y=this,_=d.isImmediate&&void 0===p;void 0!==p&&clearTimeout(p),p=setTimeout((function(){p=void 0,d.isImmediate||e.apply(y,h)}),n),_&&e.apply(y,h)}},exceptFields=(e,...n)=>{const d={};return Object.keys(e).forEach(p=>{n.includes(p)||(d[p]=e[p])}),d},arrayEquals=(e,n)=>!!e&&!!n&&[].every.call(e,(e,d)=>e===n[d]);function hasOwn(e,n){return Object.prototype.hasOwnProperty.call(Object(e),n)}function deepClone(e){const n=Object.prototype.toString.call(e).toLowerCase().slice(8,-1);switch(n){case"set":return new Set([...e].map(e=>deepClone(e)));case"map":return new Map([...e].map(([e,n])=>[deepClone(e),deepClone(n)]));case"date":return new Date(e.getTime());case"regexp":{const n=e,d="string"==typeof n.flags?n.flags:[n.global?"g":void 0,n.ignoreCase?"i":void 0,n.multiline?"m":void 0,n.sticky?"y":void 0,n.unicode?"u":void 0].filter(e=>void 0!==e).join("");return RegExp(e.source,d)}case"arraybuffer":{const n=e;if("function"==typeof n.slice)return n.slice(0);{const d=new e.constructor(n.byteLength);return new Uint8Array(d).set(new Uint8Array(n)),d}}case"dataview":case"int8array":case"uint8array":case"uint8clampedarray":case"int16array":case"uint16array":case"int32array":case"uint32array":case"float32array":case"float64array":case"bigint64array":case"biguint64array":{const d=e;return new(0,d.constructor)(deepClone(d.buffer),d.byteOffset,"dataview"===n?d.byteLength:d.length)}case"array":case"object":{const n=Array.isArray(e)?[]:{};for(const d in e)hasOwn(e,d)&&(n[d]=deepClone(e[d]));return n}default:return e}}function isEmpty(e){if("object"!=typeof e)throw new TypeError("Source is not an Object");for(const n in e)if(hasOwn(e,n))return!1;return!0}function transform$8(e,n,d=!1){return d&&(e=Object.keys(e).reduce((n,d)=>(n[e[d]]=d,n),{})),Object.keys(e).reduce((d,p)=>{const h=e[p],y="function"==typeof h?h():function(e,n){return n.split(".").reduce((e,n)=>{if(void 0!==e)return e[n]},e)}(n,h);return y&&function(e,n,d){n.split(".").reduce((n,p,h,y)=>{const _=h===y.length-1,m=hasOwn(n,p),g=n[p]instanceof Object,b=null===n[p];if(!_&&m&&(!g||b))throw new TypeError(`Value at ${y.slice(0,h+1).join(".")} in keypath is not an Object.`);return _?(n[p]=d,e):m?n[p]:n[p]={}},e)}(d,p,y),d},{})}const w=["contributors","modalities","musicVideo","podcast-episodes","radioStation","song","uploaded-audios","uploadedAudio","uploaded-videos","uploadedVideo","workouts","workout-programs"],I={"uploaded-videos":!0,uploadedVideo:!0,"uploaded-audios":!0,uploadedAudio:!0,"podcast-episodes":!0},O=[],A={mediaItemStateDidChange:"mediaItemStateDidChange",mediaItemStateWillChange:"mediaItemStateWillChange"},R={CRITICAL:50,ERROR:40,WARNING:30,NOTICE:20,INFO:10,DEBUG:2,TRACE:1,NONE:0};const $={OFF:"NONE",0:"NONE","+":"INFO","++":"DEBUG",V:"DEBUG",D:"DEBUG",VERBOSE:"DEBUG",VV:"TRACE",SILLY:"TRACE","*":"TRACE"};function getLoggingLevel(e,n={}){if("number"==typeof e)return function(e){return"number"==typeof e&&Object.values(R).includes(e)}(e)?e:void 0;let d=e.toUpperCase();return n.allowShorthands&&void 0!==$[d]&&(d=$[d]),function(e){return"string"==typeof e&&void 0!==R[e.toUpperCase()]}(d)?R[d]:void 0}function getLoggingLevelName(e){for(const[n,d]of Object.entries(R))if(e===d)return n}function walk(e,n){const d=[e];for(;d.length>0;){const e=d.shift();void 0!==e&&(d.push(...e.children),n(e))}}function _define_property$1U(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$N(e){for(var n=1;ne!==R.NONE&&n>=e;class Logger{get parent(){return this._parent}get children(){return Array.from(this._children.values())}get namespace(){return void 0===this._parent?this.name:this._parent.namespace+"/"+this.name}get enabled(){return this.level!==R.NONE}get level(){var e,n,d;return null!==(d=null!==(n=this._level)&&void 0!==n?n:null===(e=this.parent)||void 0===e?void 0:e.level)&&void 0!==d?d:C}get levelName(){var e;return null!==(e=getLoggingLevelName(this.level))&&void 0!==e?e:"UNKNOWN"}get levelPolicy(){var e,n,d;return null!==(d=null!==(n=this._levelPolicy)&&void 0!==n?n:null===(e=this.parent)||void 0===e?void 0:e.levelPolicy)&&void 0!==d?d:DEFAULT_POLICY}get handlers(){var e,n,d;return null!==(d=null!==(n=this._handlers)&&void 0!==n?n:null===(e=this.parent)||void 0===e?void 0:e.handlers)&&void 0!==d?d:{}}isEnabledFor(e){return this.levelPolicy(this.level,e)}setLevel(e){const n=getLoggingLevel(e);void 0!==n&&(this._level=n)}clearLevel(){this._level=void 0}setLevelPolicy(e){this._levelPolicy=e}clearLevelPolicy(){this._levelPolicy=void 0}addHandler(e,n){this._handlers||(this._handlers={}),this._handlers[e]=n}hasHandler(e){var n;return void 0!==(null===(n=this._handlers)||void 0===n?void 0:n[e])}removeHandler(e){void 0!==this._handlers&&(delete this._handlers[e],0===Object.keys(this._handlers).length&&this.clearHandlers())}clearHandlers(){this._handlers=void 0}createChild(e,n){const d=this._children.get(e);return void 0!==d?d:new Logger(e,_object_spread_props$v(_object_spread$N({},n),{parent:this}))}linkChild(e){if(void 0!==e.parent&&e.parent!==this)throw new Error(`Logger '${e.name}' is already a child of a different parent ('${e.parent.name}')`);const n=this._children.get(e.name);if(void 0!==n&&n!==e)throw new Error(`A child with name '${e.name}' is already registered`);return void 0===n&&(this._children.set(e.name,e),e.linkParent(this)),e}unlinkChild(e){const n=this._children.get(e.name);return n===e&&(this._children.delete(e.name),n.unlinkParent()),e}getByName(e){return this._children.get(e)}getByNamespace(e){return function(e,n,d="/"){if(""===(n=n.trim())||"*"===n)return e;const p=n.split(d);p[0].trim()===e.name&&p.shift();if(0===p.length)return e;let h=e;for(;void 0!==h&&p.length>0;){const e=p.shift();h=h.getByName(e.trim())}return h}(this,e)}linkParent(e){return this.parent!==e&&(this.unlinkParent(),this._parent=e,e.linkChild(this)),this}unlinkParent(){return void 0!==this._parent&&(this._parent.unlinkChild(this),this._parent=void 0),this}log(e,n,...d){const p=getLoggingLevel(e);void 0!==p&&this.logRecord({time:Date.now(),namespace:this.namespace,level:p,message:n,args:d})}logRecord(e){if(!this.levelPolicy(this.level,e.level))return;const n=_object_spread$N({namespace:this.namespace},e);for(const d of Object.values(this.handlers))d.process(n)}error(e,...n){this.log(R.ERROR,e,...n)}warning(e,...n){this.log(R.WARNING,e,...n)}warn(e,...n){this.warning(e,...n)}info(e,...n){this.log(R.INFO,e,...n)}debug(e,...n){this.log(R.DEBUG,e,...n)}trace(e,...n){this.log(R.TRACE,e,...n)}constructor(e,n){var d,p,h,y;_define_property1(this,"name",void 0),_define_property1(this,"_parent",void 0),_define_property1(this,"_children",new Map),_define_property1(this,"_level",void 0),_define_property1(this,"_levelPolicy",void 0),_define_property1(this,"_handlers",void 0),this.name=e,this._levelPolicy=null===(d=n)||void 0===d?void 0:d.levelPolicy,this._handlers=null===(p=n)||void 0===p?void 0:p.handlers,void 0!==(null===(h=n)||void 0===h?void 0:h.parent)&&this.linkParent(n.parent),void 0!==(null===(y=n)||void 0===y?void 0:y.level)&&this.setLevel(n.level)}}function _define_property$1T(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class CallbackHandler{process(e){this.enabled&&void 0!==this.callback&&this.callback(e)}constructor(e,n={}){var d;_define_property$1T(this,"enabled",void 0),_define_property$1T(this,"callback",void 0),this.callback=e,this.enabled=null===(d=n.enabled)||void 0===d||d}}const M=/%{([^}]+)}/gi;var D;const x={timestamp:e=>String(e.time),time:e=>String(e.time),datetime:e=>new Date(e.time).toISOString(),date:e=>new Date(e.time).toISOString(),level:e=>String(e.level),levelname:e=>null!==(D=getLoggingLevelName(e.level))&&void 0!==D?D:"UNKNOWN",message:e=>e.message,name:e=>e.namespace.split("/").pop(),namespace:e=>e.namespace};function _define_property$1S(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const L=new Map([[R.CRITICAL,"error"],[R.ERROR,"error"],[R.WARNING,"warn"],[R.NOTICE,"warn"],[R.INFO,"log"],[R.DEBUG,"debug"]]),N=(j="%{datetime} %{levelname} - [%{namespace}] %{message}",function(e){return j.replace(M,(function(n,d){return d=d.toLowerCase(),void 0!==x[d]?x[d](e):n}))});var j;const U=new Logger("media-item");var B,F;e.PlaybackType=void 0,(B=e.PlaybackType||(e.PlaybackType={}))[B.none=0]="none",B[B.preview=1]="preview",B[B.unencryptedFull=2]="unencryptedFull",B[B.encryptedFull=3]="encryptedFull",function(e){e[e.none=0]="none",e[e.loading=1]="loading",e[e.ready=2]="ready",e[e.playing=3]="playing",e[e.ended=4]="ended",e[e.unavailable=5]="unavailable",e[e.restricted=6]="restricted",e[e.error=7]="error",e[e.unsupported=8]="unsupported"}(F||(F={}));const{none:G,loading:V,ready:H,playing:q,ended:W,unavailable:Y,restricted:z,error:Q,unsupported:J}=F,X={[G]:{allowed:[V],unknown:[W,Y,z,Q,J]},[V]:{allowed:[H,z,Q,J],unknown:[]},[H]:{allowed:[q],unknown:[Q]},[q]:{allowed:[W,Q],unknown:[Y,z,J]},[W]:{allowed:[],unknown:[]},[Y]:{allowed:[],unknown:[]},[z]:{allowed:[],unknown:[]},[Q]:{allowed:[],unknown:[]},[J]:{allowed:[],unknown:[]}},toName=e=>F[e],createMediaItemStateGuard=(e=G)=>{const n={current:e,set(e){const{current:d}=n;if(!((e,n)=>X[e].allowed.includes(n))(d,e)){const n=((e,n)=>X[e].unknown.includes(n))(d,e);U.debug(`MediaItem.state was changed from ${toName(d)} to ${toName(e)}`,n?"but it is unknown whether it should be allowed or not.":"and it should not be happening")}n.current=e}};return n};function isStringNotEmpty(e){return!function(e){return void 0===e||""===e.trim()}(e)}function transform$7(e){return transform$8({"attributes.albumName":"metadata.playlistName","attributes.artistName":"metadata.artistName","attributes.artwork"(){var n;const d=null===(n=e)||void 0===n?void 0:n.artworkURL;if(d)return function(e){const n=e.split("/").pop(),[d,p]=!!n&&n.match(/\d+/g)||["100","100"];return{width:parseInt(d,10),height:parseInt(p,10),url:e.replace(`${d}x${p}`,"{w}x{h}")}}(d)},"attributes.composerName":"metadata.composerName","attributes.contentRating"(){var n,d;if(1===(null===(d=e)||void 0===d||null===(n=d.metadata)||void 0===n?void 0:n.explicit))return"explicit"},"attributes.discNumber"(){var n,d;return(null===(d=e)||void 0===d||null===(n=d.metadata)||void 0===n?void 0:n.discNumber)||1},"attributes.durationInMillis":"metadata.duration","attributes.genreNames"(){var n,d;return[null===(d=e)||void 0===d||null===(n=d.metadata)||void 0===n?void 0:n.genre]},"attributes.isrc"(){var n,d;const p=null===(d=e)||void 0===d||null===(n=d.metadata)||void 0===n?void 0:n.xid;if(p)return p.replace(/^([^:]+):isrc:/,"$1")},"attributes.name":"metadata.itemName","attributes.playParams.id":"metadata.itemId","attributes.playParams.kind":"metadata.kind","attributes.previews"(){var n;return[{url:null===(n=e)||void 0===n?void 0:n.previewURL}]},"attributes.releaseDate":"metadata.releaseDate","attributes.trackNumber":"metadata.trackNumber",assetURL:"URL",cloudId:"metadata.cloud-id",id(){var n,d;return""+(null===(d=e)||void 0===d||null===(n=d.metadata)||void 0===n?void 0:n.itemId)},flavor:"flavor",type:"metadata.kind"},e)}function _define_property$1R(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const{mediaItemStateDidChange:Z,mediaItemStateWillChange:ee}=A,te={isEntitledToPlay:!0};class MediaItem extends Notifications{get ageGatePolicy(){var e;return null===(e=this.defaultPlayable)||void 0===e?void 0:e.ageGatePolicy}get albumInfo(){const{albumName:e,artistName:n}=this,d=[];return n&&d.push(n),e&&d.push(e),d.join(" - ")}get albumName(){return this.attributes.albumName}get artistName(){return this.attributes.genreNames&&this.attributes.genreNames.indexOf("Classical")>-1&&this.attributes.composerName?this.attributes.composerName:this.attributes.artistName}get artwork(){var e,n;return null!==(n=this.attributes.artwork)&&void 0!==n?n:null===(e=this.attributes.images)||void 0===e?void 0:e.coverArt16X9}get artworkURL(){if(this.artwork&&this.artwork.url)return this.artwork.url}get assets(){return this._assets}get canPlay(){return this.isPlayable&&this.isReady}get container(){return this._container}set container(e){this._container=e}get contentRating(){return this.attributes.contentRating}get context(){return this._context}set context(e){this._context=e}get defaultPlayable(){var e;return null===(e=this.playables)||void 0===e?void 0:e[0]}get discNumber(){return this.attributes.discNumber}get hasContainerArtwork(){return this.container&&this.container.attributes&&this.container.attributes.artwork&&this.container.attributes.artwork.url}get hasPlaylistContainer(){return this.container&&"playlists"===this.container.type&&this.container.attributes}get isEntitledToPlay(){var e;const{attributes:n,defaultPlayable:d}=this;var p;return null!==(p=n.isEntitledToPlay||(null===(e=d)||void 0===e?void 0:e.isEntitledToPlay))&&void 0!==p&&p}get supportsLinearScrubbing(){var e,n,d;return this.isLinearStream&&!0===(null===(d=this.defaultPlayable)||void 0===d||null===(n=d.assets)||void 0===n||null===(e=n.streamCapability)||void 0===e?void 0:e.supportsLinearScrubbing)}get isAssetScrubbingDisabled(){return!!this.isLinearStream&&!this.supportsLinearScrubbing}get isLinearStream(){return"LiveService"===(null===(n=e=this)||void 0===n?void 0:n.type)||"Event"===(null===(p=e)||void 0===p||null===(d=p.defaultPlayable)||void 0===d?void 0:d.type)||"EbsEvent"===(null===(y=e)||void 0===y||null===(h=y.defaultPlayable)||void 0===h?void 0:h.type);var e,n,d,p,h,y}get isLiveRadioStation(){return isLiveRadioStation(this)}get isLiveAudioStation(){return isLiveRadioKind(this,"audio")}get isLiveVideoStation(){return isLiveRadioKind(this,"video")}get isAOD(){return isAOD(this)}get isSong(){return"song"===this.type}get info(){return`${this.title} - ${this.albumInfo}`}get isCloudItem(){return this.playParams&&this.playParams.isLibrary||T(this.id)}get isCloudUpload(){return-1===this._songId}get isExplicitItem(){return"explicit"===this.contentRating}get isLoading(){return this.state===F.loading}get isPlayableMediaType(){return this.isUTS||-1!==w.indexOf(this.type)}get isPlayable(){var e;return!!this.isPlayableMediaType&&(!(!this.isLiveRadioStation&&!this.hasOffersHlsUrl)||(this.needsPlayParams?!!this.playParams:this.isUTS?this.isEntitledToPlay:!!this.attributes.assetUrl||!!(null===(e=this.attributes.previews)||void 0===e?void 0:e.length)))}get isPlaying(){return this.state===F.playing}get isPreparedToPlay(){if("song"===this.type)return!!this._assets&&!!this.keyURLs&&!!this._songId;if(this.isUTS){const e=isStringNotEmpty(this.assetURL),n=!!(this.keyURLs&&isStringNotEmpty(this.keyURLs["hls-key-cert-url"])&&isStringNotEmpty(this.keyURLs["hls-key-server-url"])&&isStringNotEmpty(this.keyURLs["widevine-cert-url"]));return e&&n}return!!isStringNotEmpty(this.assetURL)||this.playRawAssetURL&&!!isStringNotEmpty(this.attributes.assetUrl)}get isrc(){return this.attributes.isrc}get isReady(){return this.state===F.ready}get isRestricted(){return this.state===F.restricted}get isUTS(){var e;return!(!(null===(e=this.defaultPlayable)||void 0===e?void 0:e.type)||!O.includes(this.defaultPlayable.type))}get isUnavailable(){return this.state===F.unavailable}get needsPlayParams(){return["musicVideo","song"].includes(this.type)}get normalizedType(){return normalizeContentType(this.type)}get offers(){return this.attributes.offers}get offersHlsUrl(){var e,n;const{offers:d}=this;return null===(n=null===(e=d)||void 0===e?void 0:e.find(e=>{var n;return!!(null===(n=e.hlsUrl)||void 0===n?void 0:n.length)}))||void 0===n?void 0:n.hlsUrl}get hasOffersHlsUrl(){return isStringNotEmpty(this.offersHlsUrl)}set playbackData(e){if(void 0===e)return;this.previewURL&&(e.previewURL=this.previewURL);const n=transform$7(e);this.artwork&&n.artwork&&delete n.artwork,n.id!==this.id&&delete n.id,this.playParams&&n.attributes.playParams&&(n.attributes.playParams=this.playParams),n.attributes=function(e){for(var n=1;n{hasOwn(te,e)||(this[e]=n[e])}),this.type=this.playParams&&this.playParams.kind?this.playParams.kind:this.type||"song"):(this.id=n.id||generateUUID(),this.type=n.type||"song",this.attributes={playParams:{id:this.id,kind:this.type}}),this._context=n.context||{},n.container?this._container=n.container:n.containerId&&n.containerType&&(this._container={id:n.containerId,type:n.containerType})}}const re=["contributors","modalities","movie","musicVideo","musicMovie","trailer","tvEpisode","uploadedVideo","uploaded-videos","music-videos","music-movies","tv-episodes","workouts"];var ie,ne;function asyncGeneratorStep$1g(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1g(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1g(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1g(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}e.PlaybackStates=void 0,(ie=e.PlaybackStates||(e.PlaybackStates={}))[ie.none=0]="none",ie[ie.loading=1]="loading",ie[ie.playing=2]="playing",ie[ie.paused=3]="paused",ie[ie.stopped=4]="stopped",ie[ie.ended=5]="ended",ie[ie.seeking=6]="seeking",ie[ie.waiting=8]="waiting",ie[ie.stalled=9]="stalled",ie[ie.completed=10]="completed",e.PresentationMode=void 0,(ne=e.PresentationMode||(e.PresentationMode={}))[ne.pictureinpicture=0]="pictureinpicture",ne[ne.inline=1]="inline";function _define_property$1Q(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class DeveloperToken{get isExpired(){return this.expiration"function"!=typeof e)(e)?e:e()}function _define_property$1P(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$L(e){for(var n=1;nvoid 0===e||""===e?n||"":void 0===n?e:(e.endsWith("/")&&(e=e.slice(0,-1)),n.startsWith("/")&&(n=n.slice(1)),`${e}/${n}`),addQueryParamsToURL=(e,n)=>{const d=urlEncodeParameters(n);return""===d?e:e.endsWith("&")||e.endsWith("?")?`${e}${d}`:e.includes("?")?`${e}&${d}`:`${e}?${d}`},oe="undefined"!=typeof Headers,headersToDict=e=>{let n={};var d;return d=e,oe&&d instanceof Headers?e.forEach((e,d)=>n[d]=e):Array.isArray(e)?e.forEach(([e,d])=>n[e]=d):n=e,n},mergeFetchHeaders=(e={},n={})=>_object_spread$L({},headersToDict(e),headersToDict(n)),mergeFetchOptions=(e,n)=>{var d,p;if(e||n)return(null===(d=e)||void 0===d?void 0:d.headers)&&(null===(p=n)||void 0===p?void 0:p.headers)?_object_spread_props$u(_object_spread$L({},e,n),{headers:mergeFetchHeaders(e.headers,n.headers)}):_object_spread$L({},e,n)};function parseQueryParams(e){if(!e||e.startsWith("http")&&!e.includes("?"))return{};try{var n;return parseParams(null!==(n=e.split("?")[1])&&void 0!==n?n:e,"&",decodeURIComponent)}catch(Ut){return{}}}function parseParams(e,n="&",d=(e=>e)){return"string"!=typeof e?{}:e.split(n).map(e=>e.trim().split("=",2)).reduce((e,n)=>{const[p,h]=n;return""===p&&void 0===h||(e[d(p)]=d(h),void 0===h&&(e[d(p)]=void 0)),e},{})}function getMaxAgeFromHeaders(e){const n=function(e,n){if(void 0!==n)return oe&&n instanceof Headers?n.get(e):n[e]}("cache-control",e);if(n){return(e=>{const n=Number(e);if(Number.isFinite(n))return n})(parseParams(n,",")["max-age"])}}function rewriteLastUrlPath(e,n){const d=e.split("/");return d.pop(),d.push(n),d.join("/")}const recursiveEncodeParameters=(e,n)=>Object.keys(e).reduce((d,p)=>{const h=e[p],y=n?`${n}[${encodeURIComponent(p)}]`:encodeURIComponent(p);return`${d}${d?"&":""}${function(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}(h)?recursiveEncodeParameters(h,y):`${y}=${encodeURIComponent(""+h)}`}`},"");function urlEncodeParameters(e){return e?recursiveEncodeParameters(e):""}const ae={};function findOrCreate(e,n){const d=e.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g,(e,n)=>n.toUpperCase());if(hasOwn(ae,d)){const p=ae[d];if(n!==p.constructor)throw new Error(`DevFlag ${e} was already registered with a different type (${p.constructor.name})`);return p}const p=new n(e);return Object.defineProperty(ae,d,{configurable:!0,enumerable:!0,get:function(){return p},set(e){p.set(e)}}),p}class LocalStorageDevFlag{get value(){return this.get()}get configured(){return void 0!==this.value}read(){var e,n;const d=null!==(n=null===(e=getLocalStorage())||void 0===e?void 0:e.getItem(this.key))&&void 0!==n?n:null;return null!==d?d:void 0}write(e){var n;null===(n=getLocalStorage())||void 0===n||n.setItem(this.key,e)}clear(){var e;null===(e=getLocalStorage())||void 0===e||e.removeItem(this.key)}constructor(e){if(function(e,n,d){n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d}(this,"key",void 0),"string"!=typeof e||""===e.trim())throw new Error("DevFlag requires a non-empty string key");this.key=e}}class StringDevFlag extends LocalStorageDevFlag{static register(e){return findOrCreate(e,this)}static get(e){return this.register(e).get()}static set(e,n){this.register(e).set(n)}get(){return this.read()}set(e){"string"!=typeof e&&console.warn("Value for StringDevFlag should be a string"),this.write(e)}}class BooleanDevFlag extends LocalStorageDevFlag{static register(e){return findOrCreate(e,this)}static get(e){return this.register(e).get()}static set(e,n){this.register(e).set(n)}get(){const e=this.read();if(void 0!==e)return"1"===e||"true"===e.toLowerCase()}set(e){"boolean"==typeof e?this.write(!0===e?"1":"0"):console.warn("Value for BooleanDevFlag should be a boolean")}get enabled(){return!0===this.get()}enable(){this.set(!0)}disable(){this.set(!1)}toggle(){this.set(!this.get())}}class JsonDevFlag extends LocalStorageDevFlag{static register(e){return findOrCreate(e,this)}static get(e){return this.register(e).get()}static set(e,n){this.register(e).set(n)}get(){const e=this.read();if(void 0!==e)try{return JSON.parse(e)}catch(Q){return}}set(e){this.write(JSON.stringify(e))}prop(e){if(void 0!==this.value)return this.value[e]}}const se=JsonDevFlag.register("mk-hlsjs-automation-config"),ce=new RegExp("^https://([a-z0-9]+-)?"+("js-cdn.music.apple.com"+"/musickit/v3/".replace(/v3/,"(v2|v3)")).replace(/[\.\/]/g,"\\$&"),"i"),de=/^https:\/\/(.*\/includes\/js-cdn)\//i,le=/^([a-z]+:)?\/\//;function findScript(e){return isNodeEnvironment$1()||!e?null:document.querySelector(`script[src*="${e}"]`)}function getScriptSrcElements(){if("undefined"==typeof document||!document.querySelectorAll)return[];return Array.from(document.querySelectorAll("script[src]"))}function determineCdnBasePrefix(){for(const e of getScriptSrcElements()){const n=ce.exec(e.src);if(n)return n[1]||""}return""}function determineCdnPathPrefix(){for(const e of getScriptSrcElements()){const n=de.exec(e.src);if(n)return n[1]||""}return""}function determineCdnBaseHost(){if(isNodeEnvironment$1())return"";return`//${determineCdnBasePrefix()}js-cdn.music.apple.com`}function determineCdnPathHost(){const e=determineCdnPathPrefix();return e?"//"+e:e}const ue=StringDevFlag.register("mk-hlsjs-log-level"),pe=StringDevFlag.register("mk-hlsjs-version");function getHlsJsCdnConfig(){const e={hls:"",rtc:""};if(isNodeEnvironment$1())return e;const n=determineCdnPathHost()||determineCdnBaseHost(),d=pe.get()||"2.510.3",p=function(){const e=ue.value;switch(e){case"info":case"error":case"warn":return"hls.production.verbose.min.js";case"trace":case"debug":return console.warn(`HLS log level ${e} is not supported, loading production build.`),"hls.js";default:return"hls.js"}}();return e.hls=`https:${n}/hls.js/${d}/hls.js/${p}`,e.rtc=`https:${n}/hls.js/${d}/rtc.js/rtc.min.js`,function(e){var n;const d=se.get();if(!(null===(n=d)||void 0===n?void 0:n.url))return;const{url:p}=d;isAppleHostname(p)&&"carry-"===determineCdnBasePrefix()&&(e.hls=p)}(e),e}function isAppleHostname(e){try{return new URL(e).hostname.endsWith(".apple.com")}catch(Ut){}return!1}function cdnBaseURL(e,n=window){var d;if(isNodeEnvironment$1())return"";const p=null===(d=getLocalStorage())||void 0===d?void 0:d.getItem("mkCDNBaseURLOverride");if(p)return p;const h=findScript(e);return h?h.getAttribute("src").replace(new RegExp(e+"$"),""):(determineCdnPathHost()||determineCdnBaseHost())+"/musickit/v3/"}const he=new Map;function loadScript(e,n){const d=he.get(e);if(d)return d;const p=new Promise((d,p)=>{isNodeEnvironment$1()&&p("Dynamic script loading is unsupported in Node environments.");if(findScript(e))return d();const h=document.createElement("script");let y;if(n&&Object.keys(n).forEach(e=>{h.setAttribute(e,n[e])}),h.onload=()=>{d()},h.onerror=e=>{p(e)},le.test(e))y=e;else{y=`${cdnBaseURL(e)}${e}`}h.src=y,document.head.appendChild(h)});return he.set(e,p),p}const ye=new Logger("storekit");function _define_property$1N(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const _e=["apps.apple.com","books.apple.com","fitness.apple.com","mediaauth.apple.com","multidev.apple.com","music.apple.com","one.apple.com","podcasts.apple.com","tv.apple.com","itunes.apple.com"];function _define_property$1M(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class AuthBridgeApp extends class{init(e,n){var d;this._receiveWindow=e,this._sendWindow=n,this.handleMessage=this.handleMessage.bind(this),null===(d=this._receiveWindow)||void 0===d||d.addEventListener("message",this.handleMessage)}sendMessage(e,n){const d={action:"mediakit:"+e,data:n};this._sendWindow&&this._sendWindow.postMessage(JSON.stringify(d),this._targetOrigin)}handleMessage(e){if(!this._isOriginAllowed(e.origin))return;let n;try{n=JSON.parse(e.data)}catch(Ut){}if(!n||!this._isNamespacedData(n))return;"*"===this._targetOrigin&&(this._targetOrigin=e.origin),ye.debug("auth-bridge: handleMessage",n);const d=n.action.replace("mediakit:","");this[d]?this[d](n.data):ye.debug("auth-bridge: unsupported method",d)}_isOriginAllowed(e){if(!e)return!1;const[n,d]=e.split("://");let p="";return d&&(p=d.split(":")[0],p&&(p=p.toLocaleLowerCase())),"https"===n&&!!p&&_e.some(e=>p===e||p.endsWith("."+e))}_isNamespacedData(e){return e.action&&-1!==e.action.indexOf("mediakit:")}constructor(){_define_property$1N(this,"_receiveWindow",void 0),_define_property$1N(this,"_sendWindow",void 0),_define_property$1N(this,"_targetOrigin","*")}}{requestAuthUpdate(){this.whenFrameInited.then(()=>this.sendMessage("requestAuthUpdate"))}setCookieItem(e,n){this.whenFrameInited.then(()=>this.sendMessage("setCookieItem",{name:e,value:n}))}clearAuth(){this.whenFrameInited.then(()=>this.sendMessage("clearAuth"))}frameInit(){var e;null===(e=this._frameInitResolve)||void 0===e||e.call(this),this.requestAuthUpdate()}updateAuth(e){var n,d;if((null===(n=e)||void 0===n?void 0:n.enabled)&&(null===(d=e)||void 0===d?void 0:d.cookies)){const n=e.cookies;Object.keys(n).forEach(e=>{var d;const p=null!==(d=n[e])&&void 0!==d?d:"";p?setCookie(e,p,"/",30):removeCookie(e)})}this._authUpdateResolve&&(this._authUpdateResolve(),this._authUpdateResolve=void 0)}authClearedFromOtherFrame(){ye.warn("Override auth-bridge/app's authClearedFromOtherFrame to trigger app-specific sign out behavior")}_getIframeSrc(){let e="",n=determineCdnPathPrefix();if(n)n+="/musickit/v3/",e="?inc="+encodeURIComponent(n);else{const n=determineCdnBasePrefix();n&&(e="?env="+n.substring(0,n.length-1))}return"https://mediaauth.apple.com/auth-bridge/"+e}constructor(){super(),_define_property$1M(this,"whenAuthCompleted",void 0),_define_property$1M(this,"frame",void 0),_define_property$1M(this,"whenFrameInited",void 0),_define_property$1M(this,"_frameInitResolve",void 0),_define_property$1M(this,"_authUpdateResolve",void 0),this.whenFrameInited=new Promise(e=>this._frameInitResolve=e),this.whenAuthCompleted=new Promise(e=>this._authUpdateResolve=e),this.frame=document.createElement("iframe"),this.frame.src=this._getIframeSrc(),this.frame.style.display="none",document.body.appendChild(this.frame),this.init(window,this.frame.contentWindow)}}const fe=new Set([]),ve=/\.apple\.com$/;function getCommerceHostname(e,n){!n&&"undefined"!=typeof location&&location.hostname&&(n=location);let d=e+".itunes.apple.com";if(!n)return d;const p=function(e){if(!e||!ve.test(e))return;const n=e.split(".");let d=n[n.length-3];const p=d;if(d&&d.includes("-")){const e=d.split("-");d=e[e.length-1]}return fe.has(d)?p:void 0}(n.hostname);return p&&(d=`${e}.${p}.apple.com`),d}var me,ge,be;function buildQueryParams(e={app:me.APP,p:me.P}){return void 0===e.app&&(e.app=me.APP),void 0===e.p&&(e.p=me.P),Object.keys(e).map(n=>`${encodeURIComponent(n)}=${encodeURIComponent(e[n])}`).join("&")}!function(e){e.APP="music",e.P="subscribe"}(me||(me={})),function(e){e.DEFAULT_CID="pldfltcid",e.TV_CID="pltvcid",e.RESTRICTIONS_ENABLED="itre",e.STOREFRONT_COUNTRY_CODE="itua",e.USER_TOKEN="media-user-token"}(ge||(ge={})),e.SKRealm=void 0,(be=e.SKRealm||(e.SKRealm={}))[be.MUSIC=0]="MUSIC",be[be.PODCAST=1]="PODCAST",be[be.TV=2]="TV";const Se={[e.SKRealm.TV]:"com.apple.onboarding.tvapp",[e.SKRealm.MUSIC]:"com.apple.onboarding.applemusic"},Pe={[e.SKRealm.TV]:"pltvcid",[e.SKRealm.MUSIC]:"pldfltcid"},Ee=memoize(e=>{const n=new Uint16Array(e),d=n.length;let p="";for(let h=0;h{const n=k(e);return ke(n)});function ensureArray(e=[]){return Array.isArray(e)?e:[e]}const ke=memoize(e=>{const n=e.length,d=new ArrayBuffer(n),p=new Uint8Array(d);for(let h=0;h{const n=e.length,d=new ArrayBuffer(2*n),p=new Uint16Array(d);for(let h=0;h{let n,d,p,h,y,_,m,g=0;const b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let S="";for(;g>2,y=(3&n)<<4|d>>4,_=(15&d)<<2|p>>6,m=63&p,isNaN(d)?_=m=64:isNaN(p)&&(m=64),S+=b.charAt(h)+b.charAt(y)+b.charAt(_)+b.charAt(m);return S});function asyncGeneratorStep$1f(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1L(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}var Oe;!function(e){e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError"}(Oe||(Oe={}));class Dispatch{get source(){return this._source}set source(e){if(!e&&this._source)return this._source.removeEventListener("message",this.handle),void(this._source=void 0);e.addEventListener("message",this.handle),this._source=e}apply(e,n){if(!this.destination)throw new Error("No destination");const d=this._sequence++,p=new Promise((e,n)=>{this._registry[d]={resolve:e,reject:n}});return this.send(this.destination,{jsonrpc:"2.0",id:d,method:e,params:n}),p}call(e,...n){return this.apply(e,n)}handleRequest(e){var n,d=this;return(n=function*(){const n={jsonrpc:"2.0",id:e.id},p=d.methods[e.method];if(!p)return Object.assign(n,{error:{code:Oe.MethodNotFound,message:"Method not found"}});try{const d=yield p.apply(void 0,ensureArray(e.params));return Object.assign(n,{result:d})}catch(Q){return Object.assign(n,{error:{code:Q.code||Oe.InternalError,message:Q.message}})}},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$1f(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1f(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}handleResponse(e){const n=this._registry[e.id];delete this._registry[e.id],n&&(e.error?n.reject(Object.assign(Error(),e.error)):n.resolve(e.result))}send(e,n){e.postMessage(n,e.window===e?this.origin:void 0)}constructor(e={}){_define_property$1L(this,"destination",void 0),_define_property$1L(this,"origin",void 0),_define_property$1L(this,"methods",void 0),_define_property$1L(this,"_registry",{}),_define_property$1L(this,"_sequence",0),_define_property$1L(this,"_source",void 0),_define_property$1L(this,"handle",e=>{e.data&&"2.0"===e.data.jsonrpc&&("*"!==this.origin&&this.origin!==e.origin||(e.data.method&&this.destination?this.handleRequest(e.data).then(e=>{this.send(this.destination,e)}):(hasOwn(e.data,"result")||e.data.error)&&this.handleResponse(e.data)))}),this.destination=e.destination,this.methods=e.methods||{},this.origin=e.origin||"*",e.source&&(this.source=e.source)}}function asyncGeneratorStep$1e(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1e(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1e(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1e(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1K(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$K(e){for(var n=1;n0)&&void 0!==d&&d}!function(e){e[e.UNAVAILABLE=-1]="UNAVAILABLE",e[e.NOT_DETERMINED=0]="NOT_DETERMINED",e[e.DENIED=1]="DENIED",e[e.RESTRICTED=2]="RESTRICTED",e[e.AUTHORIZED=3]="AUTHORIZED"}(Ae||(Ae={}));const Re=`https://${getCommerceHostname("buy")}/commerce/account/authenticateMusicKitRequest`,$e="https://authorize.music.apple.com",Ce=/^https?:\/\/(.+\.)*(apple\.com|apps\.mzstatic\.com)(\/[\w\d]+)*$/;var Me,De,xe;!function(e){e[e.AUTHORIZE=0]="AUTHORIZE",e[e.SUBSCRIBE=1]="SUBSCRIBE"}(Me||(Me={}));class ServiceSetupView{get isServiceView(){return/(authorize\.(.+\.)*apple\.com)/i.test(window.location.hostname)||window&&window.name===this.target||!1}focus(){this._window&&window.focus&&this._window.focus()}load(e={action:Me.AUTHORIZE}){var n=this;return _async_to_generator$1e((function*(){return e.action===Me.SUBSCRIBE?n._subscribeAction(e.parameters):n._authorizeAction(e.parameters)}))()}present(e="",n){const{height:d,left:p,top:h,width:y}=this._calculateClientDimensions(),_={height:650,menubar:"no",resizable:"no",scrollbars:"no",status:"no",toolbar:"no",width:650},m=_object_spread$K(_object_spread_props$t(_object_spread$K({},_),{left:y/2-_.width/2+p,top:d/2-_.height/2+h}),n),g=Object.keys(m).map(e=>`${e}=${m[e]}`).join(",");return/trident|msie/i.test(navigator.userAgent)?(this._window=window.open(window.location.href,this.target,g)||void 0,this._window.location.href=e):this._window=window.open(e,this.target,g)||void 0,/\bedge\b/i.test(navigator.userAgent)&&(this._window.opener=self),this.focus(),this._window}_startPollingForWindowClosed(e){this._window&&void 0===this._windowClosedInterval&&(this._windowClosedInterval=setInterval(()=>{var n;(null===(n=this._window)||void 0===n?void 0:n.closed)&&(this._stopPollingForWindowClosed(),e())},500))}_stopPollingForWindowClosed(){void 0!==this._windowClosedInterval&&(clearInterval(this._windowClosedInterval),this._windowClosedInterval=void 0)}_authorizeAction(e={}){var n=this;return _async_to_generator$1e((function*(){var d;let p,h;const y=(null===(d=window.location)||void 0===d?void 0:d.href)||"";return"GET"===n.authenticateMethod?h=`${$e}/woa?${buildQueryParams(_object_spread_props$t(_object_spread$K({},n.deeplinkParameters),{a:btoa(n._thirdPartyInfo()),referrer:y}))}`:(p=n._buildFormElement(Re),document.body.appendChild(p)),new Promise((d,y)=>{const _=n.present(h);n._startPollingForWindowClosed(()=>{y(Ae.NOT_DETERMINED)}),n.dispatch=new Dispatch({methods:{authorize(e,n,p){validateToken(e)?d({restricted:n&&"1"===n,userToken:e,cid:p}):y(Ae.NOT_DETERMINED)},close(){},decline(){y(Ae.DENIED)},switchUserId(){y(Ae.NOT_DETERMINED)},thirdPartyInfo:()=>n._thirdPartyInfo(n.developerToken,_object_spread$K({},n.deeplinkParameters,e)),unavailable(){y(Ae.UNAVAILABLE)}},origin:$e,source:window,destination:_}),p&&p.submit()})}))()}_buildFormElement(e,n=this.target,d=this.developerToken){const p=document.createElement("form");p.setAttribute("method","post"),p.setAttribute("action",e),p.setAttribute("target",n),p.style.display="none";const h=document.createElement("input");h.setAttribute("name","jwtToken"),h.setAttribute("value",d),p.appendChild(h);const y=document.createElement("input");y.setAttribute("name","isWebPlayer"),y.setAttribute("value","true"),p.appendChild(y);const _=document.createElement("input");return _.setAttribute("name","LogoURL"),_.setAttribute("value",""),p.appendChild(_),p}_calculateClientDimensions(e=window){return{height:e.innerHeight?e.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:screen.height,left:e.screenLeft?e.screenLeft:screen.availLeft||screen.left,top:e.screenTop?e.screenTop:screen.availTop||screen.top,width:e.innerWidth?e.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:screen.width}}_subscribeAction(e={}){var n=this;return _async_to_generator$1e((function*(){return Object.assign(e,n.deeplinkParameters),new Promise((d,p)=>{const h="https://authorize.music.apple.com/upsell?"+buildQueryParams(e);n.present(h),window.addEventListener("message",({data:e,origin:n,source:h})=>{const{closeWindow:y,launchClient:_}="string"==typeof e?JSON.parse(e):e;n&&!Ce.test(n)||(_?0===_.supported?p("Unable to subscribe on this platform."):d(_):p("Subscribe action error."))})})}))()}_thirdPartyInfo(e=this.developerToken,n){let d=this.iconURL;const p=window.location.host||document.referrer,h=[...[].slice.call(document.querySelectorAll('link[rel="apple-music-app-icon"]')),...[].slice.call(document.querySelectorAll('link[rel="apple-touch-icon-precomposed"]')),...[].slice.call(document.querySelectorAll('link[rel="apple-touch-icon"]'))];if(h&&h[0]&&h[0].href){var y;var _;d=null!==(_=null===(y=h.find(e=>!!e.sizes&&"120x120"===e.sizes.value))||void 0===y?void 0:y.href)&&void 0!==_?_:h[0].href}return JSON.stringify({thirdPartyIconURL:d,thirdPartyName:p,thirdPartyParameters:n,thirdPartyToken:e})}constructor(e,n={}){if(_define_property$1K(this,"developerToken",void 0),_define_property$1K(this,"authenticateMethod",void 0),_define_property$1K(this,"deeplinkParameters",void 0),_define_property$1K(this,"iconURL",void 0),_define_property$1K(this,"target",void 0),_define_property$1K(this,"dispatch",void 0),_define_property$1K(this,"_window",void 0),_define_property$1K(this,"_windowClosedInterval",void 0),this.developerToken=e,this.authenticateMethod="GET",this.target="apple-music-service-view",this.deeplinkParameters=n&&n.deeplinkParameters||{},this.iconURL=n&&n.iconURL,this.authenticateMethod=n&&n.authenticateMethod||"GET",this.isServiceView&&window.opener!==window){var d;const e=null===(d=getSessionStorage())||void 0===d?void 0:d.getItem("ac"),n=null!=e?new URL(e).origin:void 0;var p;if(n)this.dispatch=new Dispatch({destination:null!==(p=window.opener)&&void 0!==p?p:void 0,origin:n,source:window})}}}function asyncGeneratorStep$1d(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1d(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1d(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1d(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1J(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _fetchStorefronts(){return(_fetchStorefronts=_async_to_generator$1d((function*(e,n="https://api.music.apple.com/v1"){const d=new Headers({Authorization:"Bearer "+e}),p=yield fetch(n+"/storefronts",{headers:d}),h=yield p.json();return h.errors?Promise.reject(h.errors):h.data}))).apply(this,arguments)}!function(e){e.ID="us",e.LANGUAGE_TAG="en-gb"}(De||(De={}));function asyncGeneratorStep$1c(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1c(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1c(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1c(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1I(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$J(e){for(var n=1;nAe.DENIED}get logoutURL(){if(!this._disableLogoutURL)return this.playBase+"/webPlayerLogout"}get _pldfltcid(){return this._cids[ge.DEFAULT_CID]}set _pldfltcid(e){this._cids[ge.DEFAULT_CID]=e}get restrictedEnabled(){if(this.userToken&&"boolean"!=typeof this._restrictedEnabled){const e=this._getStorageItem(ge.RESTRICTIONS_ENABLED);if(e)this._restrictedEnabled="0"!==e;else if(this._storefrontCountryCode){const e=["br","ch","gt","hu","id","in","it","kr","la","lt","my","ru","sg","tr"];this._restrictedEnabled=-1!==e.indexOf(this._storefrontCountryCode)||void 0}}return this._restrictedEnabled}set restrictedEnabled(e){this._restrictedEnabledOverridden||(this.userToken&&void 0!==e&&this._setStorageItem(ge.RESTRICTIONS_ENABLED,e?"1":"0"),this._restrictedEnabled=e,e&&(this.authorizationStatus=Ae.RESTRICTED))}overrideRestrictEnabled(e){this._restrictedEnabledOverridden=!1,this.restrictedEnabled=e,this._restrictedEnabledOverridden=!0}get storefrontCountryCode(){if(!this._storefrontCountryCode){var e;const n=this._getStorageItem(ge.STOREFRONT_COUNTRY_CODE);this._storefrontCountryCode=(null===(e=n)||void 0===e?void 0:e.toLowerCase())||De.ID}return this._storefrontCountryCode}set storefrontCountryCode(e){e&&this.userToken?this._setStorageItem(ge.STOREFRONT_COUNTRY_CODE,e):this._removeStorageItem(ge.STOREFRONT_COUNTRY_CODE),e!==this._storefrontCountryCode&&(this._storefrontCountryCode=e,this.dispatchEvent(xe.storefrontCountryCodeDidChange,{storefrontCountryCode:e}))}get storefrontIdentifier(){return this._storefrontIdentifier}set storefrontIdentifier(e){this._storefrontIdentifier=e,this.dispatchEvent(xe.storefrontIdentifierDidChange,{storefrontIdentifier:e})}runTokenValidations(e,n=!0){e&&validateToken(e)?(n&&this._setStorageItem(ge.USER_TOKEN,e),this.authorizationStatus=this.restrictedEnabled?Ae.RESTRICTED:Ae.AUTHORIZED):(this._removeStorageItem(ge.USER_TOKEN),this.authorizationStatus=Ae.NOT_DETERMINED)}wrapDynamicUserTokenForChanges(e,n=invoke(e)){if("function"!=typeof e)return e;let d=n;return()=>{const n=invoke(e);return d!==n&&(d=n,this.runTokenValidations(n,!1),this.dispatchEvent(xe.userTokenDidChange,{userToken:n})),n||""}}get dynamicUserToken(){return this._dynamicUserToken}set dynamicUserToken(e){const n=invoke(e);this._dynamicUserToken=this.wrapDynamicUserTokenForChanges(e,n),this.runTokenValidations(n,"function"!=typeof e),this.dispatchEvent(xe.userTokenDidChange,{userToken:n})}get userToken(){return invoke(this.dynamicUserToken)}set userToken(e){this.dynamicUserToken=e}get userTokenIsValid(){return validateToken(this.userToken)}deeplinkURL(e={}){return"https://finance-app.itunes.apple.com/deeplink?"+buildQueryParams(e=_object_spread$J({},this.deeplinkParameters||{},e))}itunesDeeplinkURL(e={p:"browse"}){return"https://itunes.apple.com/deeplink?"+buildQueryParams(e=_object_spread$J({},this.deeplinkParameters||{},e))}pldfltcid(){var e=this;return _async_to_generator$1c((function*(){if(!e._cids[ge.DEFAULT_CID])try{yield e.infoRefresh()}catch(Ut){return}return e._cids[ge.DEFAULT_CID]}))()}renewUserToken(){var e=this;return _async_to_generator$1c((function*(){if(!e.userToken)return e.requestUserToken();const n=new Headers({Authorization:"Bearer "+e.developerToken,Accept:"application/json","Content-Type":"application/json","X-Apple-Music-User-Token":""+e.userToken}),d=yield fetch(e.playBase+"/renewMusicToken",{method:"POST",headers:n});if(401===d.status)return yield e.revokeUserToken(),Promise.reject(new Error("Renew token"));const p=yield d.json();return p["music-token"]&&(e.userToken=p["music-token"]),e.userToken}))()}requestStorefrontCountryCode(){var e=this;return _async_to_generator$1c((function*(){if(e.authorizationStatus<=Ae.DENIED)return Promise.reject("Not authorized: "+e.authorizationStatus);const n=new Headers({Authorization:"Bearer "+e.developerToken,"Music-User-Token":e.userToken||""}),d=yield fetch(e.apiBase+"/me/storefront",{headers:n});if(d&&!d.ok)return e._reset(),Promise.reject("Storefront Country Code error.");const p=yield d.json();if(p.errors)return Promise.reject(p.errors);const[h]=p.data;return h&&h.id?(e.storefrontCountryCode=h.id,e.storefrontCountryCode):Promise.reject("Storefront Country Code error.")}))()}requestStorefrontIdentifier(){var e=this;return _async_to_generator$1c((function*(){if(!e.storefrontIdentifier){const n=yield class{static inferFromLanguages(e,n=function(){if("undefined"==typeof navigator)return[];if(navigator.languages)return navigator.languages;const e=navigator.language||navigator.userLanguage;return e?[e]:[]}()){return _async_to_generator$1d((function*(){const d=yield function(e){return _fetchStorefronts.apply(this,arguments)}(e),p=d.map(e=>e.id),h=n[0]||"en-US",[y,_]=h.toLowerCase().split(/-|_/),m=p.includes(_)?_:"us";return d.find(e=>e.id===m)}))()}constructor(e,n,d){_define_property$1J(this,"id",void 0),_define_property$1J(this,"attributes",void 0),_define_property$1J(this,"href",void 0),_define_property$1J(this,"type",void 0),this.id=e,this.attributes=n,this.type="storefronts",this.href=d||`/v1/${this.type}/${e}`}}.inferFromLanguages(e.developerToken);e.storefrontIdentifier=n.id}return e.storefrontIdentifier}))()}requestUserToken(){var e=this;return _async_to_generator$1c((function*(){if(e._serviceSetupView.isServiceView)return e.userToken||"";try{const n=yield e._serviceSetupView.load({action:Me.AUTHORIZE});e.cid=n.cid,e.userToken=n.userToken,e.restrictedEnabled=n.restricted}catch(n){return e._reset(),e.authorizationStatus=n,Promise.reject(n)}return e.userToken}))()}revokeUserToken(){var e=this;return _async_to_generator$1c((function*(){var n;try{yield e._webPlayerLogout()}catch(Ut){}null===(n=e.authBridgeApp)||void 0===n||n.clearAuth(),e.dispatchEvent(xe.authorizationStatusWillChange,{authorizationStatus:e.authorizationStatus,newAuthorizationStatus:Ae.NOT_DETERMINED}),e._reset(),e.dispatchEvent(xe.authorizationStatusDidChange,{authorizationStatus:e.authorizationStatus}),e.dispatchEvent(xe.userTokenDidChange,{userToken:e.userToken})}))()}setCids(e){this._cids=_object_spread$J({},this._cids,e),Object.keys(this._cids).forEach(e=>{this._setStorageItem(e,this._cids[e])})}hasMusicSubscription(){var e=this;return _async_to_generator$1c((function*(){return!!e.hasAuthorized&&e._getIsActiveSubscription()}))()}_getIsActiveSubscription(){var e=this;return _async_to_generator$1c((function*(){var n;return!!(null===(n=(yield e.me()).subscription)||void 0===n?void 0:n.active)}))()}resetSubscribeViewEligibility(){this._dispatchedSubscribeView=!1}presentSubscribeViewForEligibleUsers(e={},n=!0){var d=this;return _async_to_generator$1c((function*(){const p=yield d.eligibleForSubscribeView();if(!d._serviceSetupView.isServiceView&&p){if(!n)return d.dispatchEvent(xe.eligibleForSubscribeView,e),void(d._dispatchedSubscribeView=!0);try{const e=yield d._serviceSetupView.load({action:Me.SUBSCRIBE});return d._dispatchedSubscribeView=!0,e}catch(h){return d.revokeUserToken()}}}))()}infoRefresh(){var e=this;return _async_to_generator$1c((function*(){if(e.authorizationStatus<=Ae.DENIED)return Promise.reject("Not authorized: "+e.authorizationStatus);const n=new Headers({Authorization:"Bearer "+e.developerToken,"Music-User-Token":e.userToken||""});try{const d=yield fetch(e.iTunesBuyBase+"/account/web/infoRefresh",{credentials:"include",headers:n}),p=yield d.json();e.setCids(p)}catch(Ut){}}))()}me(){if(this.authorizationStatus<=Ae.DENIED)return Promise.reject("Not authorized: "+this.authorizationStatus);if(!this._me){var n=this;this._me=new Promise(function(){var d=_async_to_generator$1c((function*(d,p){const h=new Headers({Authorization:"Bearer "+n.developerToken,"Music-User-Token":n.userToken||""}),y=addQueryParamsToURL(n.apiBase+"/me/account",_object_spread$J({meta:"subscription"},n.meParameters));let _;try{_=yield fetch(y,{headers:h})}catch(Ut){return p(new MKError(MKError.Reason.NETWORK_ERROR,"Failed to fetch /me/account"))}if(_&&!_.ok)return n.realm!==e.SKRealm.TV&&n._reset(),p("Account error.");let m=yield _.json();if(m.errors)return p(m.errors);const{data:g,meta:b}=m;if(!b||!b.subscription)return p("Account error.");n.storefrontCountryCode=b.subscription.storefront;const S={meta:b,subscription:b.subscription};return g&&g.length&&(S.attributes=g[0].attributes),d(S)}));return function(e,n){return d.apply(this,arguments)}}()).then(e=>{var n;return this._getIsActiveSubscription.updateCache((null===(n=e.subscription)||void 0===n?void 0:n.active)||!1),this._me=null,e}).catch(e=>(this._me=null,Promise.reject(e)))}return this._me}_getStorageItem(e){var n;if(e)return"cookie"===this.persist?getCookie(e):"localstorage"===this.persist?null===(n=this.storage)||void 0===n?void 0:n.getItem(`${this.storagePrefix}.${e}`):void 0}_processLocationHash(e){const n=/^\#([a-zA-Z0-9+\/]{200,}={0,2})$/;if(n.test(e)){const d=e.replace(n,"$1");try{const{itre:e,musicUserToken:n,cid:p}=JSON.parse(atob(d));this.restrictedEnabled=e&&"1"===e,this.userToken=n,this.cid=p}catch(Ut){}history.replaceState(null,document.title," ")}}_removeStorageItem(e){if("cookie"===this.persist)this._removeCookieFromDomains(e);else if("localstorage"===this.persist){var n;return null===(n=this.storage)||void 0===n?void 0:n.removeItem(`${this.storagePrefix}.${e}`)}}_removeCookieFromDomains(e,n=window){removeCookie(e);const{hostname:d}=n.location,p=d.split(".");if(p.length&&(p.shift(),p.length>2))for(let h=p.length;h>2;h--){const d=p.join(".");p.shift(),removeCookie(e,n,d)}}_reset(e=Ae.NOT_DETERMINED){this._authorizationStatus=e,this._cids={},this._dispatchedSubscribeView=!1,this._restrictedEnabled=void 0,this._storefrontCountryCode=void 0,this._getIsActiveSubscription.updateCache(void 0),Object.keys(Pe).forEach(e=>{this._removeStorageItem(Pe[e])}),this._removeStorageItem(ge.RESTRICTIONS_ENABLED),this._removeStorageItem(ge.USER_TOKEN),this._removeStorageItem(ge.STOREFRONT_COUNTRY_CODE),this._dynamicUserToken=void 0,this._me=null}_setStorageItem(e,n){var d,p;return"cookie"===this.persist?(null===(d=this.authBridgeApp)||void 0===d||d.setCookieItem(e,n),setCookie(e,n,"/",180)):"localstorage"===this.persist?null===(p=this.storage)||void 0===p?void 0:p.setItem(`${this.storagePrefix}.${e}`,n):void 0}_webPlayerLogout(){var e=this;return _async_to_generator$1c((function*(){const n=e.logoutURL;if(!n)return;const d=new Headers({Authorization:"Bearer "+e.developerToken,Accept:"application/json","Content-Type":"application/json","X-Apple-Music-User-Token":""+e.userToken}),p=yield fetch(n,{method:"POST",headers:d,credentials:"same-origin"});return p&&!p.ok?Promise.reject(p.status):p.json()}))()}constructor(n,d){var p;(super([xe.authorizationStatusDidChange,xe.authorizationStatusWillChange,xe.eligibleForSubscribeView,xe.storefrontCountryCodeDidChange,xe.userTokenDidChange,xe.storefrontIdentifierDidChange]),_define_property$1I(this,"developerToken",void 0),_define_property$1I(this,"apiBase",void 0),_define_property$1I(this,"bundleId",void 0),_define_property$1I(this,"cidNamespace",void 0),_define_property$1I(this,"deeplinkParameters",void 0),_define_property$1I(this,"iconURL",void 0),_define_property$1I(this,"iTunesBuyBase",void 0),_define_property$1I(this,"meParameters",void 0),_define_property$1I(this,"persist",void 0),_define_property$1I(this,"playBase",void 0),_define_property$1I(this,"prefix",void 0),_define_property$1I(this,"realm",void 0),_define_property$1I(this,"storage",void 0),_define_property$1I(this,"storagePrefix",void 0),_define_property$1I(this,"whenAuthCompleted",void 0),_define_property$1I(this,"_authorizationStatus",void 0),_define_property$1I(this,"_developerToken",void 0),_define_property$1I(this,"_disableLogoutURL",void 0),_define_property$1I(this,"_dispatchedSubscribeView",void 0),_define_property$1I(this,"_me",void 0),_define_property$1I(this,"_cids",void 0),_define_property$1I(this,"_restrictedEnabled",void 0),_define_property$1I(this,"_restrictedEnabledOverridden",void 0),_define_property$1I(this,"_serviceSetupView",void 0),_define_property$1I(this,"authBridgeApp",void 0),_define_property$1I(this,"_storefrontCountryCode",void 0),_define_property$1I(this,"_storefrontIdentifier",void 0),_define_property$1I(this,"_dynamicUserToken",void 0),this.developerToken=n,this.apiBase="https://api.music.apple.com/v1",this.iTunesBuyBase=Le,this.meParameters={},this.persist="localstorage",this.playBase=Ne,this.prefix="music",this.realm=e.SKRealm.MUSIC,this.storage=getLocalStorage(),this._authorizationStatus=Ae.NOT_DETERMINED,this._disableLogoutURL=!1,this._dispatchedSubscribeView=!1,this._me=null,this._cids={},this._restrictedEnabledOverridden=!1,this._dynamicUserToken=getCookie(ge.USER_TOKEN),ye.info("StoreKit initialized"),d&&(d.apiBase&&(this.apiBase=d.apiBase),d.deeplink&&(this.deeplinkParameters=d.deeplink),d.meParameters&&(this.meParameters=d.meParameters),d.persist&&(this.persist=d.persist),d.prefix&&(this.prefix=d.prefix),void 0!==d.realm&&(this.realm=d.realm),this.bundleId=Se[this.realm]),this.cidNamespace=Pe[this.realm],this._developerToken=new DeveloperToken(n),this._serviceSetupView=new ServiceSetupView(n,{authenticateMethod:d&&d.authenticateMethod,iconURL:d&&d.iconURL,deeplinkParameters:this.deeplinkParameters}),this.storagePrefix=`${this.prefix}.${this._developerToken.teamId}`.toLocaleLowerCase(),this.updateUserTokenFromStorage(),this.developerToken&&this.userTokenIsValid&&(this._restrictedEnabled=this.restrictedEnabled),this._storefrontCountryCode=this.storefrontCountryCode,this.whenAuthCompleted=Promise.resolve(),isNodeEnvironment$1())||(this._processLocationHash(window.location.hash),"cookie"!==this.persist||(null===(p=d)||void 0===p?void 0:p.disableAuthBridge)||(this.authBridgeApp=new AuthBridgeApp,this.authBridgeApp.authClearedFromOtherFrame=this.revokeUserToken.bind(this),this.whenAuthCompleted=this.authBridgeApp.whenAuthCompleted.then(()=>{this.updateUserTokenFromStorage()})))}}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([((e=300)=>(n,d,p)=>{if(void 0===p||"function"!=typeof p.value)throw new TypeError(`Only methods can be decorated with @CachedResult, but ${d} is not a method.`);return{configurable:!0,get(){const n=p.value,h=1e3*e;let y,_=-1;function cachedResultMethod(){return _cachedResultMethod.apply(this,arguments)}function _cachedResultMethod(){return(_cachedResultMethod=_async_to_generator$1g((function*(...e){const d=Date.now();return(void 0===y||-1===_||_>0&&d>_+h)&&(_=d,y=yield n.apply(this,e)),y}))).apply(this,arguments)}return cachedResultMethod.updateCache=function(e){_=Date.now(),y=e},cachedResultMethod.getCachedValue=()=>y,Object.defineProperty(this,d,{value:cachedResultMethod,configurable:!0,writable:!0}),cachedResultMethod}}})(900),_ts_metadata$r("design:type",Function),_ts_metadata$r("design:paramtypes",[])],StoreKit.prototype,"_getIsActiveSubscription",null);const je=new Logger("player"),Ue=new Logger("paf"),Be=new Logger("services"),Fe=StringDevFlag.register("mk-logging-levels"),Ke=BooleanDevFlag.register("mk-console-logging"),Ge=R.ERROR;let Ve=Ge;const He=new Logger("mk",{level:Ve,handlers:{console:new class{get hasConsole(){return"undefined"!=typeof console}process(e){if(!this.enabled||!this.hasConsole)return;let n="log";if(this.mapLevels){const p=this.levelMapping.get(e.level);void 0!==(d=p)&&d in console&&(n=p)}var d,p;const h=null!==(p=e.args)&&void 0!==p?p:[],y=this.format(e);console[n](y,...h)}constructor(e={}){var n,d,p,h;_define_property$1S(this,"enabled",void 0),_define_property$1S(this,"mapLevels",void 0),_define_property$1S(this,"levelMapping",void 0),_define_property$1S(this,"format",void 0),this.enabled=null===(n=e.enabled)||void 0===n||n,this.mapLevels=null===(d=e.mapLevels)||void 0===d||d,this.levelMapping=null!==(p=e.levelMapping)&&void 0!==p?p:L,this.format=null!==(h=e.formatter)&&void 0!==h?h:N}}({enabled:!1}),external:new CallbackHandler(()=>{})}});function applyLoggingLevels(e){!function(e,n){walk(e,(function(e){let d;const p=e.namespace;e.clearLevel(),void 0===e.parent&&void 0!==n["*"]?d=getLoggingLevel(n["*"]):void 0!==n[p]&&(d=getLoggingLevel(n[p])),void 0!==d&&e.setLevel(d)}))}(He,function(e){const n=getLoggingLevel(e.trim(),{allowShorthands:!0});if(void 0!==n)return{"*":n};const d={},p=e.split(",").filter(e=>""!==e.trim());for(const g of p){var h,y;const e=g.split("=",2);if(2!==e.length)continue;var _;const n=null!==(_=null===(h=e[0])||void 0===h?void 0:h.trim())&&void 0!==_?_:"";var m;const p=getLoggingLevel(null!==(m=null===(y=e[1])||void 0===y?void 0:y.trim())&&void 0!==m?m:"",{allowShorthands:!0});""!==n&&void 0!==p&&(d[n]=p)}return d}(e))}function clearLoggingLevels(){He.setLevel(Ve),function(e,n={includeRoot:!0}){walk(e,(function(e){(void 0!==e.parent||n.includeRoot)&&e.clearLevel()}))}(He,{includeRoot:!1})}function setConsoleOutput(e){He.handlers.console.enabled=null!=e&&e}function setRootLoggingLevel(e){var n;Ve=null!==(n=getLoggingLevel(e))&&void 0!==n?n:Ve}const qe={getLogger:(e="*")=>He.getByNamespace(null!=e?e:"*"),setConsoleOutput(e){!0===e?(Ke.enable(),setConsoleOutput(!0),He.info("Console output is enabled with level "+He.levelName)):(Ke.disable(),setConsoleOutput(!1))},setLoggingLevels(e,n){""!==e.trim()?(Fe.set(e),applyLoggingLevels(e),qe.setConsoleOutput(null==n||n)):qe.clearLoggingLevels(null!=n&&n)},clearLoggingLevels(e=!1){qe.setConsoleOutput(e),Fe.clear(),clearLoggingLevels()}};var We;Ke.enabled&&qe.setConsoleOutput(Ke.enabled),void 0!==Fe.value&&qe.setLoggingLevels(Fe.value,Ke.enabled),function(e){e.NONE="none",e.FAIRPLAY="com.apple.fps",e.PLAYREADY="com.microsoft.playready",e.WIDEVINE="com.widevine.alpha"}(We||(We={}));const Ye={app:{},features:{},urls:{}},ze="mk-player-tsid",Qe='audio/mp4;codecs="mp4a.40.2"';var Je,Xe,Ze;function asyncGeneratorStep$1b(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1b(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1b(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1b(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function findMediaKeySystemAccess(e,n){return _findMediaKeySystemAccess.apply(this,arguments)}function _findMediaKeySystemAccess(){return(_findMediaKeySystemAccess=_async_to_generator$1b((function*(e,n){for(let d=0;d!!e);if(d.length<=1&&!/^\d+$/.test(d[0]))return n;const p=parseInt(d[0],10),h=parseInt(d[1],10),y=parseInt(d[2],10);return Number.isNaN(p)||(n.major=p,Number.isNaN(h)||(n.minor=h),Number.isNaN(y)||(n.patch=y)),n}function applyRules(e,n,d){const{userAgent:p}=null!=n?n:{};if("string"!=typeof p||""===p.trim())return d;for(let h of e){const e=h.slice(0,-1),y=h[h.length-1];let _=null;for(let h of e)if(_=p.match(h),null!==_){Object.assign(d,y(_,n,d));break}if(null!==_)break}return d}function _define_property$1H(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$I(e){for(var n=1;n_object_spread_props$s(_object_spread$I({name:"webview",variant:e[1].trim().toLowerCase().replace(/(music|tv)/i,"$1.app")},parseVersion(e[2])),{mobile:!1})],[/(?:(?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i,e=>_object_spread$I({name:"webview",variant:"facebook",mobile:!0},parseVersion(e[1]))],[/(instagram|snapchat)[\/ ]([-\w\.]+)/i,e=>_object_spread$I({name:"webview",variant:e[1].trim().toLowerCase(),mobile:!0},parseVersion(e[2]))],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i,e=>_object_spread$I({name:"webview",variant:"tiktok",mobile:!0},parseVersion(e[1]))],[/twitter/i,()=>({name:"webview",variant:"twitter",mobile:!0})],[/ wv\).+?(?:version|chrome)\/([\w\.]+)/i,e=>_object_spread$I({name:"webview",mobile:!0},parseVersion(e[1]))],[/electron\/([\w\.]+) safari/i,e=>_object_spread$I({name:"electron",mobile:!1},parseVersion(e[1]))],[/tesla\/(.*?(20\d\d\.([-\w\.])+))/i,e=>_object_spread_props$s(_object_spread$I({name:"other",variant:"tesla",mobile:!1},parseVersion(e[2])),{version:e[1]})],[/(samsung|huawei)browser\/([-\w\.]+)/i,e=>_object_spread$I({name:"other",variant:e[1].trim().toLowerCase().replace(/browser/i,""),mobile:!0},parseVersion(e[2]))],[/yabrowser\/([-\w\.]+)/i,e=>_object_spread$I({name:"other",variant:"yandex",mobile:!1},parseVersion(e[1]))],[/(brave|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,(e,{userAgent:n})=>_object_spread$I({name:"other",variant:e[1].trim().toLowerCase(),mobile:/mobile/i.test(n)},parseVersion(e[2].replace(/\-/g,".")))],[/edg(e|ios|a)?\/([\w\.]+)/i,e=>_object_spread$I({name:"edge",mobile:/(edgios|edga)/i.test(null!==(ot=e[1])&&void 0!==ot?ot:"")},parseVersion(e[2]))],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i,e=>_object_spread$I({name:"ie",mobile:!1},parseVersion(e[1]))],[/opr\/([\w\.]+)/i,/opera mini\/([-\w\.]+)/i,/opera [mobiletab]{3,6}\b.+version\/([-\w\.]+)/i,/opera(?:.+version\/|[\/ ]+)([\w\.]+)/i,e=>_object_spread$I({name:"opera",mobile:/mobile/i.test(e[0])},parseVersion(e[1]))],[/headlesschrome(?:\/([\w\.]+)| )/i,e=>_object_spread$I({name:"chrome",variant:"headless",mobile:!1},parseVersion(e[1]))],[/\b(?:crmo|crios)\/([\w\.]+)/i,e=>_object_spread$I({name:"chrome",mobile:!0},parseVersion(e[1]))],[/chrome(?: browser)?\/v?([\w\.]+)( mobile)?/i,e=>_object_spread$I({name:"chrome",mobile:/mobile/i.test(null!==(at=e[2])&&void 0!==at?at:"")},parseVersion(e[1]))],[/\bfocus\/([\w\.]+)/i,e=>_object_spread$I({name:"firefox",variant:"focus",mobile:!0},parseVersion(e[1]))],[/fxios\/([\w\.-]+)/i,/(?:mobile|tablet);.*(?:firefox)\/([\w\.-]+)/i,e=>_object_spread$I({name:"firefox",mobile:!0},parseVersion(e[1]))],[/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,e=>_object_spread$I({name:"firefox",variant:e[1].trim().toLowerCase(),mobile:!1},parseVersion(e[2]))],[/(?:firefox)\/([\w\.]+)/i,/(?:mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,e=>_object_spread$I({name:"firefox",mobile:!1},parseVersion(e[1]))],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i,/version\/([\w\.\,]+) .*(safari)/i,/webkit.+?(?:mobile ?safari|safari)(?:\/([\w\.]+))/i,e=>_object_spread$I({name:"safari",mobile:/mobile/i.test(e[0])},parseVersion(e[1]))]],engine:[[/webkit\/(?:537\.36).+chrome\/(?!27)([\w\.]+)/i,e=>_object_spread$I({name:"blink"},parseVersion(e[1]))],[/windows.+ edge\/([\w\.]+)/i,e=>_object_spread$I({name:"blink"},parseVersion(e[1]))],[/presto\/([\w\.]+)/i,e=>_object_spread$I({name:"presto"},parseVersion(e[2]))],[/trident\/([\w\.]+)/i,e=>_object_spread$I({name:"trident"},parseVersion(e[1]))],[/gecko\/([\w\.]+)/i,e=>_object_spread$I({name:"gecko"},parseVersion(e[1]))],[/(khtml|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,e=>_object_spread$I({name:"other"},parseVersion(e[2]))],[/webkit\/([\w\.]+)/i,e=>_object_spread$I({name:"webkit"},parseVersion(e[1]))]],os:[[/microsoft windows (vista|xp)/i,/windows nt 6\.2; (arm)/i,/windows (?:phone(?: os)?|mobile)[\/ ]?([\d\.\w ]*)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i,e=>_object_spread$I({name:"windows"},parseVersion(e[1]))],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,e=>_object_spread$I({name:"ios"},parseVersion(e[1].replace(/_/g,".")))],[/mac(?:intosh;?)? os x ?([\d\._]+)/i,e=>_object_spread$I({name:"macos"},parseVersion(e[1].replace(/_/g,".")))],[/cros [\w]+(?:\)| ([\w\.]+)\b)/i,e=>_object_spread$I({name:"chromeos"},parseVersion(e[1]))],[/(?:android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/droid ([\w\.]+|[\d+])\b.+(android[- ]x86|harmonyos)/i,e=>_object_spread$I({name:"android"},parseVersion(e[1]))],[/linux/i,()=>({name:"linux"})]]};function parseUserAgent(e,n){var d,p,h;var y;return function(e,n){let d=e;for(let p of n)d=p(d);return d}({navigator:e,ua:null!==(h=null===(d=e)||void 0===d?void 0:d.userAgent)&&void 0!==h?h:"",extensions:[],browser:applyRules(st.browser,e,{name:"unknown",mobile:!1}),engine:applyRules(st.engine,e,{name:"unknown"}),os:applyRules(st.os,e,{name:"unknown"})},null!==(y=null===(p=n)||void 0===p?void 0:p.extensions)&&void 0!==y?y:[])}function _define_property$1G(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$H(e){for(var n=1;n=2;_&&(n="ipados",h=!1,p=!1);const m=_object_spread_props$r(_object_spread$H({},e.browser),{isUnknown:"unknown"===e.browser.name,isSafari:"safari"===e.browser.name,isChrome:"chrome"===e.browser.name,isFirefox:"firefox"===e.browser.name,isEdge:"edge"===e.browser.name,isWebView:"webview"===e.browser.name,isOther:"other"===e.browser.name,isMobile:e.browser.mobile||h||_||d||!1}),g=_object_spread_props$r(_object_spread$H({},e.engine),{isUnknown:"unknown"===e.engine.name,isWebKit:"webkit"===e.engine.name,isBlink:"blink"===e.engine.name,isGecko:"gecko"===e.engine.name}),b=_object_spread_props$r(_object_spread$H({},e.os),{name:n,isUnknown:"unknown"===e.os.name,isLinux:"linux"===e.os.name,isWindows:"windows"===e.os.name,isMacOS:p,isAndroid:d,isIOS:h,isIPadOS:_});return _object_spread_props$r(_object_spread$H({},e),{extensions:[...e.extensions,"flags"],browser:m,os:b,engine:g})}function asyncGeneratorStep$1a(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1a(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1a(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1a(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function isBrowserEnvironment(){return _isBrowserEnvironment.apply(this,arguments)}function _isBrowserEnvironment(){return(_isBrowserEnvironment=_async_to_generator$1a((function*(){var e;return void 0!==(null===(e=window)||void 0===e?void 0:e.navigator)}))).apply(this,arguments)}function asyncGeneratorStep$19(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$19(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$19(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$19(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function isNodeEnvironment(){return _isNodeEnvironment.apply(this,arguments)}function _isNodeEnvironment(){return(_isNodeEnvironment=_async_to_generator$19((function*(){var e;return void 0!==(null===(e=globalThis)||void 0===e?void 0:e.process)}))).apply(this,arguments)}function asyncGeneratorStep$18(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$18(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$18(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$18(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}const ct={playready:["com.microsoft.playready","com.youtube.playready"],widevine:["com.widevine.alpha"],clearkey:["org.w3.clearkey"],fairplay:["com.apple.fps","com.apple.fairplay"]};function detectEMESupport(){return _detectEMESupport.apply(this,arguments)}function _detectEMESupport(){return(_detectEMESupport=_async_to_generator$18((function*(){var e,n,d,p;return void 0!==(null===(n=window)||void 0===n||null===(e=n.navigator)||void 0===e?void 0:e.requestMediaKeySystemAccess)&&void 0!==(null===(d=window)||void 0===d?void 0:d.MediaKeys)&&void 0!==(null===(p=window)||void 0===p?void 0:p.MediaKeySystemAccess)}))).apply(this,arguments)}function detectEMEKeySystems(){return _detectEMEKeySystems.apply(this,arguments)}function _detectEMEKeySystems(){return(_detectEMEKeySystems=_async_to_generator$18((function*(){var e,n;if(yield isNodeEnvironment())return[];const d=[],p=window;if("function"==typeof(null===(e=p.WebKitMediaKeys)||void 0===e?void 0:e.isTypeSupported))for(let _ of ct.fairplay){var h,y;if((null===(h=p.WebKitMediaKeys)||void 0===h?void 0:h.isTypeSupported(_,"video/mp4"))||(null===(y=p.WebKitMediaKeys)||void 0===y?void 0:y.isTypeSupported(_+".1_0","video/mp4")))return d.push("fairplay"),d}if("function"==typeof(null===(n=p.MSMediaKeys)||void 0===n?void 0:n.isTypeSupported))for(let _ of ct.playready)p.MSMediaKeys.isTypeSupported(_,"video/mp4")&&d.push("playready");if(yield detectEMESupport()){const e=[{initDataTypes:["keyids","cenc"],distinctiveIdentifier:"optional",persistentState:"required",videoCapabilities:[{contentType:'video/mp4;codecs="avc1.42E01E"',robustness:"SW_SECURE_CRYPTO"}],audioCapabilities:[{contentType:'audio/mp4;codecs="mp4a.40.2"'}]}];for(let[n,p]of Object.entries(ct))for(let h of p)try{yield navigator.requestMediaKeySystemAccess(h,e),d.push(n);break}catch(Ut){}}return d}))).apply(this,arguments)}function asyncGeneratorStep$17(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$17(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$17(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$17(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function detectES2015(){return _detectES2015.apply(this,arguments)}function _detectES2015(){return(_detectES2015=_async_to_generator$17((function*(){try{new Function('"use strict"; class Test {}; const identity = (x) => x;')()}catch(Ut){return!1}return"undefined"!=typeof Symbol}))).apply(this,arguments)}function asyncGeneratorStep$16(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$16(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$16(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$16(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function detectMSESupport(){return _detectMSESupport.apply(this,arguments)}function _detectMSESupport(){return(_detectMSESupport=_async_to_generator$16((function*(){var e,n;return void 0!==(null===(e=window)||void 0===e?void 0:e.MediaSource)&&void 0!==(null===(n=window)||void 0===n?void 0:n.SourceBuffer)}))).apply(this,arguments)}function asyncGeneratorStep$15(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$15(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$15(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$15(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function detectPictureInPictureSupport(){return _detectPictureInPictureSupport.apply(this,arguments)}function _detectPictureInPictureSupport(){return(_detectPictureInPictureSupport=_async_to_generator$15((function*(){var e,n,d;if(yield isNodeEnvironment())return!1;const p=document.createElement("video");return void 0!==(null===(e=p)||void 0===e?void 0:e.webkitSupportsPresentationMode)&&"function"==typeof(null===(n=p)||void 0===n?void 0:n.webkitSetPresentationMode)||void 0!==(null===(d=document)||void 0===d?void 0:d.pictureInPictureEnabled)}))).apply(this,arguments)}function asyncGeneratorStep$14(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1F(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class RuntimeEnvironment{get isConfigured(){return this.configured}get userAgent(){return this.config.userAgent}get ua(){return this.userAgent.ua}get isNodeEnvironment(){return this.config.isNodeEnvironment}get isBrowserEnvironment(){return this.config.isBrowserEnvironment}get isPictureInPictureSupported(){return this.config.isPictureInPictureSupported}get isES2015Supported(){return this.config.isES2015Supported}get isMSESupported(){return this.config.isMSESupported}get isEMESupported(){return this.config.isEMESupported}get availableKeySystems(){return this.config.availableKeySystems}get browser(){return this.userAgent.browser}get engine(){return this.userAgent.engine}get os(){return this.userAgent.os}get isMobile(){return this.browser.isMobile}static detect(){var e,n=this;return(e=function*(){var e,d;const p=null!==(d=null===(e=window)||void 0===e?void 0:e.navigator)&&void 0!==d?d:{userAgent:"",maxTouchPoints:0};return new n({userAgent:yield parseUserAgent(p,{extensions:[flagsExtension]}),isNodeEnvironment:yield isNodeEnvironment(),isBrowserEnvironment:yield isBrowserEnvironment(),isPictureInPictureSupported:yield detectPictureInPictureSupport(),isES2015Supported:yield detectES2015(),isMSESupported:yield detectMSESupport(),isEMESupported:yield detectEMESupport(),availableKeySystems:yield detectEMEKeySystems()})},function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$14(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$14(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}configure(e){for(const[n,d]of Object.entries(this.filterConfig(e)))this.config[n]=d;this.configured=!0}filterConfig(e){const n=["userAgent","isNodeEnvironment","isBrowserEnvironment","isES2015Supported","isPictureInPictureSupported","availableKeySystems"],d={};for(const[p,h]of Object.entries(e))void 0!==h&&n.includes(p)&&(d[p]=h);return d}constructor(e){_define_property$1F(this,"configured",!1),_define_property$1F(this,"config",void 0),this.config=this.filterConfig(e),this.configured=!0}}const AsyncDebounce=(e=100,n)=>(d,p,h)=>{const y=h.value,_=asyncDebounce(y,e,n);h.value=_},asyncDebounce=(e,n=250,d={isImmediate:!1})=>{let p,h;function fulfill(e){var n;return null===(n=e)||void 0===n?void 0:n.resolve(d.cancelledValue)}const clearLastPromise=()=>{p&&(p.resolved||(fulfill(p),p.timeoutId&&clearTimeout(p.timeoutId)),p=void 0)},invokeFn=(n,d,h,y)=>{e.apply(n,y).then(e=>{d(e),p&&(p.resolved=!0)}).catch(h)};return d.isImmediate?function(...e){const d=Date.now(),y=this;return h&&d>=h&&clearLastPromise(),h=Date.now()+n,p?fulfill(Promise):new Promise((n,d)=>{p={resolve:n,reject:d},invokeFn(y,n,d,e)})}:function(...e){const d=this;return p&&clearLastPromise(),new Promise((function(h,y){const _=setTimeout(invokeFn.bind(void 0,d,h,y,e),n);p={resolve:h,reject:y,timeoutId:_}}))}},dt={AFG:"143610",AGO:"143564",AIA:"143538",ALB:"143575",AND:"143611",ARE:"143481",ARG:"143505",ARM:"143524",ATG:"143540",AUS:"143460",AUT:"143445",AZE:"143568",BEL:"143446",BEN:"143576",BFA:"143578",BGD:"143490",BGR:"143526",BHR:"143559",BHS:"143539",BIH:"143612",BLR:"143565",BLZ:"143555",BMU:"143542",BOL:"143556",BRA:"143503",BRB:"143541",BRN:"143560",BTN:"143577",BWA:"143525",CAF:"143623",CAN:"143455",CHE:"143459",CHL:"143483",CHN:"143465",CIV:"143527",CMR:"143574",COD:"143613",COG:"143582",COL:"143501",CPV:"143580",CRI:"143495",CYM:"143544",CYP:"143557",CZE:"143489",DEU:"143443",DMA:"143545",DNK:"143458",DOM:"143508",DZA:"143563",ECU:"143509",EGY:"143516",ESP:"143454",EST:"143518",ETH:"143569",FIN:"143447",FJI:"143583",FRA:"143442",FSM:"143591",GAB:"143614",GBR:"143444",GEO:"143615",GHA:"143573",GIN:"143616",GMB:"143584",GNB:"143585",GRC:"143448",GRD:"143546",GTM:"143504",GUY:"143553",HKG:"143463",HND:"143510",HRV:"143494",HUN:"143482",IDN:"143476",IND:"143467",IRL:"143449",IRQ:"143617",ISL:"143558",ISR:"143491",ITA:"143450",JAM:"143511",JOR:"143528",JPN:"143462",KAZ:"143517",KEN:"143529",KGZ:"143586",KHM:"143579",KNA:"143548",KOR:"143466",KWT:"143493",LAO:"143587",LBN:"143497",LBR:"143588",LBY:"143567",LCA:"143549",LIE:"143522",LKA:"143486",LTU:"143520",LUX:"143451",LVA:"143519",MAC:"143515",MAR:"143620",MCO:"143618",MDA:"143523",MDG:"143531",MDV:"143488",MEX:"143468",MKD:"143530",MLI:"143532",MLT:"143521",MMR:"143570",MNE:"143619",MNG:"143592",MOZ:"143593",MRT:"143590",MSR:"143547",MUS:"143533",MWI:"143589",MYS:"143473",NAM:"143594",NER:"143534",NGA:"143561",NIC:"143512",NLD:"143452",NOR:"143457",NPL:"143484",NRU:"143606",NZL:"143461",OMN:"143562",PAK:"143477",PAN:"143485",PER:"143507",PHL:"143474",PLW:"143595",PNG:"143597",POL:"143478",PRT:"143453",PRY:"143513",PSE:"143596",QAT:"143498",ROU:"143487",RUS:"143469",RWA:"143621",SAU:"143479",SEN:"143535",SGP:"143464",SLB:"143601",SLE:"143600",SLV:"143506",SRB:"143500",STP:"143598",SUR:"143554",SVK:"143496",SVN:"143499",SWE:"143456",SWZ:"143602",SYC:"143599",TCA:"143552",TCD:"143581",THA:"143475",TJK:"143603",TKM:"143604",TON:"143608",TTO:"143551",TUN:"143536",TUR:"143480",TWN:"143470",TZA:"143572",UGA:"143537",UKR:"143492",URY:"143514",USA:"143441",UZB:"143566",VCT:"143550",VEN:"143502",VGB:"143543",VNM:"143471",VUT:"143609",WSM:"143607",XKX:"143624",YEM:"143571",ZAF:"143472",ZMB:"143622",ZWE:"143605"};let isMergeableObject=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){let n=Object.prototype.toString.call(e);return"[object RegExp]"===n||"[object Date]"===n||function(e){return e.$$typeof===lt}(e)}(e)};let lt="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function cloneUnlessOtherwiseSpecified(e,n){return!1!==n.clone&&n.isMergeableObject(e)?deepmerge((d=e,Array.isArray(d)?[]:{}),e,n):e;var d}function defaultArrayMerge(e,n,d){return e.concat(n).map((function(e){return cloneUnlessOtherwiseSpecified(e,d)}))}function getKeys(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(n){return e.propertyIsEnumerable(n)})):[]}(e))}function mergeObject(e,n,d){let p={};return d.isMergeableObject(e)&&getKeys(e).forEach((function(n){p[n]=cloneUnlessOtherwiseSpecified(e[n],d)})),getKeys(n).forEach((function(h){d.isMergeableObject(n[h])&&e[h]?p[h]=function(e,n){if(!n.customMerge)return deepmerge;let d=n.customMerge(e);return"function"==typeof d?d:deepmerge}(h,d)(e[h],n[h],d):p[h]=cloneUnlessOtherwiseSpecified(n[h],d)})),p}function deepmerge(e,n,d){(d=d||{}).arrayMerge=d.arrayMerge||defaultArrayMerge,d.isMergeableObject=d.isMergeableObject||isMergeableObject;let p=Array.isArray(n);return p===Array.isArray(e)?p?d.arrayMerge(e,n,d):mergeObject(e,n,d):cloneUnlessOtherwiseSpecified(n,d)}function _define_property$1E(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$G(e){for(var n=1;n=0||(h[d]=e[d]);return h}(e,n);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(e);for(p=0;p=0||Object.prototype.propertyIsEnumerable.call(e,d)&&(h[d]=e[d])}return h}var ut;deepmerge.all=function(e,n){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,d){return deepmerge(e,d,n)}),{})},function(e){e.dataRecordDidDelete="dataRecordDidDelete",e.dataRecordWillDelete="dataRecordWillDelete",e.dataRecordDidMaterialize="dataRecordDidMaterialize",e.dataRecordDidPopulate="dataRecordDidPopulate",e.dataRecordWillPopulate="dataRecordWillPopulate"}(ut||(ut={}));const isDataRecord=e=>!(!e||"function"!=typeof e.hasAttributes||"function"!=typeof e.hasRelationships||"function"!=typeof e.hasViews||"function"!=typeof e.serialize);class DataRecord{hasProperties(e){return!e||(e.attributes||e.relationships||e.views?!(e.attributes&&!this.hasAttributes(e.attributes))&&(!(e.relationships&&!this.hasRelationships(e.relationships))&&!(e.views&&!this.hasViews(e.views))):this.hasAttributes()||this.hasRelationships()||this.hasViews())}hasAttributes(e){return this._hasProperties(this._mjs.attributes,e)}hasRelationships(e){return this._hasProperties(this._mjs.relationships,e)}hasViews(e){return this._hasProperties(this._mjs.views,e)}meta(e){return e?this._meta[e]:this._meta}serialize(e=!0,n={},d={}){const p={id:this.id,type:this.type};return n[`${this.type}-${this.id}`]&&!d.allowFullDuplicateSerializations?p:(n[`${this.type}-${this.id}`]=!0,this.hasAttributes()&&(p.attributes=this._mjs.attributes.reduce((e,n)=>(e[n]=this[n],e),{})),this._mjs.relationships.length>0&&(p.relationships=this._serializeRelatedData(this._mjs.relationships,n,d)),this._mjs.views.length>0&&(p.views=this._serializeRelatedData(this._mjs.views,n,d)),e?{data:p}:p)}setProperty(e,n,d="attributes",p={}){function isMergeableObject(e){return!(!e||"object"!=typeof e||e instanceof DataRecord)}hasOwn(this,e)||(this._mjs[d]||(this._mjs[d]=[]),this._mjs[d].push(e));const setDescriptor=e=>({value:e,writable:!0,configurable:!0,enumerable:!0});this[e]&&n&&"object"==typeof this[e]&&"object"==typeof n?"attributes"===d?Object.defineProperty(this,e,setDescriptor(deepmerge(this[e],n,{arrayMerge:function(e,n,d){return n},isMergeableObject:isMergeableObject}))):"relationships"===d&&Array.isArray(this[e])&&p.extendRelationships?Object.defineProperty(this,e,setDescriptor(deepmerge(this[e],n,{isMergeableObject:isMergeableObject}))):Object.defineProperty(this,e,setDescriptor(n)):Object.defineProperty(this,e,setDescriptor(n))}removeRelative(e,n){this[e]&&(Array.isArray(this[e])?this[e]=this[e].filter(e=>e.id!==n):delete this[e])}setParent(e){const n=this._mjs.parents,d=n&&n.length>0;this._mjs.parents=d?n.concat(e):e}_hasProperties(e,n){return!!e&&(n?ensureArray(n).every(n=>e.includes(n)):e.length>0)}_serializeRelatedData(e,n={},d={}){return e.reduce((e,p)=>{if(d.excludeRelationships&&d.excludeRelationships.has(p))return e;if(d.includeRelationships&&!d.includeRelationships.has(p))return e;const h=this[p];return Array.isArray(h)?e[p]={data:h.map(e=>"function"==typeof e.serialize?e.serialize(!1,n,d):e)}:e[p]=h&&"function"==typeof h.serialize?h.serialize(!1,n,d):h,e},{})}constructor(e,n,d={}){_define_property$1E(this,"type",void 0),_define_property$1E(this,"id",void 0),_define_property$1E(this,"_mjs",void 0),_define_property$1E(this,"_meta",void 0),this.type=e,this.id=n,this._mjs={attributes:[],relationships:[],views:[]},this._meta={},this._mjs=_object_spread$G({},this._mjs,d)}}class DataStore extends Notifications{get mapping(){return this._mapping}set mapping(e){this._mapping=e}clear(){this._records={},this._expiryRecords=new Set}peek(e,n,d){if(this._checkForExpiredRecords(),!this._records[e])return n?null:[];if(!n)return Object.values(this._records[e]);if(Array.isArray(n))return n.map(n=>{const p=this._records[e][n];if(p&&p.hasProperties(d))return p});const p=this._records[e][n];return p&&p.hasProperties(d)?p:null}populateDataRecords(e,n={},d={}){if(!e.data)return[];if(!Array.isArray(e.data))return this.populateDataRecord(e.data,n,d);const p=[];return e.data.forEach((e,h)=>{const y=_object_spread_props$q(_object_spread$G({},d),{parents:d.parents?[_object_spread_props$q(_object_spread$G({},d.parents[0]),{position:h})]:[]});d.parents&&(d.parents[0].position=h);const _=this.populateDataRecord(e,n,y);p.push(_)}),p}populateDataRecord(e,n={},d){const p=d.filter||this.filter,h=d.mapping||this.mapping;if(p&&!p(e))return;if(h){let n="function"==typeof h?h(e):transform$8(h,e);Object.assign(e,n)}this._shouldDisableRecordReuse&&(n={});const y=this._materializeRecord(n,_object_spread$G({id:e.id,type:e.type},d));return e.meta&&(y._meta=e.meta),e.attributes&&e.attributes.cachingPolicy&&e.attributes.cachingPolicy.maxAge&&(y._mjs.expiration=Date.now()+1e3*e.attributes.cachingPolicy.maxAge,this._removeOnExpiration&&this._expiryRecords.add(y)),this._populateDataAttributes(e,y),"object"==typeof e.relationships&&Object.keys(e.relationships).forEach(p=>{let _=e.relationships[p];_&&"data"in _&&(_=this.populateDataRecords(_,n,{mapping:h,parents:[{relationshipName:p,parentType:y.type,parentId:y.id}]}),y.setProperty(p,_,"relationships",d))}),"object"==typeof e.views&&Object.keys(e.views).forEach(d=>{const p=e.views[d];if(p.attributes||p.data){const e=new DataRecord("view",d);if(this._populateDataAttributes(p,e),p.data){const d=this.populateDataRecords(p,n,h);e.setProperty("data",d,"relationships")}y.setProperty(d,e,"views")}}),y}query(e,n){this._checkForExpiredRecords();let includeRecord=e=>!1;return"string"==typeof e&&n?includeRecord=d=>{var p;return(null===(p=d)||void 0===p?void 0:p[e])===n}:"function"==typeof e?includeRecord=n=>{try{return e(n)}catch(Ut){return!1}}:"object"==typeof e&&(includeRecord=n=>{const d=Object.keys(e);let p=0;return d.forEach(d=>{var h;(null===(h=n)||void 0===h?void 0:h[d])===e[d]&&p++}),d.length===p}),Object.values(this._records).reduce((e,n)=>(Object.values(n).forEach(n=>{includeRecord(n)&&e.push(n)}),e),[])}remove(e,n){setTimeout(this._checkForExpiredRecords.bind(this),0);if(!hasOwn(this._records,e))return;const d=this.peek(e,n);d&&(this.dispatchEvent(ut.dataRecordWillDelete,[e,n]),d._mjs.parents&&d._mjs.parents.length>0&&d._mjs.parents.forEach(({relationshipName:e,parentType:n,parentId:p})=>{this.peek(n,p).removeRelative(e,d.id)}),delete this._records[e][n],this.dispatchEvent(ut.dataRecordDidDelete,[e,n]))}save(e,n={}){return setTimeout(this._checkForExpiredRecords.bind(this),0),this.populateDataRecords(e,this._records,n)}_populateDataAttributes(e,n){"object"==typeof e.attributes&&(this.dispatchEvent(ut.dataRecordWillPopulate,[n.type,n.id]),Object.keys(e.attributes).forEach(d=>{n.setProperty(d,e.attributes[d],"attributes")}),this.dispatchEvent(ut.dataRecordDidPopulate,[n.type,n.id]))}_materializeRecord(e,n){const{type:d,id:p}=n,h=_object_without_properties$4(n,["type","id"]);return e[d]=e[d]||{},e[d][p]?e[d][p].setParent(h.parents||[]):e[d][p]=new DataRecord(d,p,h),this.dispatchEvent(ut.dataRecordDidMaterialize,[d,p]),e[d][p]}_checkForExpiredRecords(){const e=[];this._expiryRecords.forEach(n=>{Date.now()>n._mjs.expiration&&(e.push([n.type,n.id]),this._expiryRecords.delete(n))}),e.forEach(e=>{this.remove(...e)})}constructor(e={}){super([ut.dataRecordDidDelete,ut.dataRecordWillDelete,ut.dataRecordDidMaterialize,ut.dataRecordWillPopulate,ut.dataRecordDidPopulate]),_define_property$1E(this,"_records",void 0),_define_property$1E(this,"_expiryRecords",void 0),_define_property$1E(this,"_mapping",void 0),_define_property$1E(this,"_removeOnExpiration",!1),_define_property$1E(this,"_shouldDisableRecordReuse",!0),_define_property$1E(this,"filter",void 0),this._records={},this._expiryRecords=new Set,this._removeOnExpiration=!!e.removeOnExpiration,this._mapping=e.mapping,this._shouldDisableRecordReuse=!!e.shouldDisableRecordReuse,this.filter=e.filter}}const pt={AW:"ABW",AF:"AFG",AO:"AGO",AI:"AIA",AX:"ALA",AL:"ALB",AD:"AND",AE:"ARE",AR:"ARG",AM:"ARM",AS:"ASM",AQ:"ATA",TF:"ATF",AG:"ATG",AU:"AUS",AT:"AUT",AZ:"AZE",BI:"BDI",BE:"BEL",BJ:"BEN",BQ:"BES",BF:"BFA",BD:"BGD",BG:"BGR",BH:"BHR",BS:"BHS",BA:"BIH",BL:"BLM",BY:"BLR",BZ:"BLZ",BM:"BMU",BO:"BOL",BR:"BRA",BB:"BRB",BN:"BRN",BT:"BTN",BV:"BVT",BW:"BWA",CF:"CAF",CA:"CAN",CC:"CCK",CH:"CHE",CL:"CHL",CN:"CHN",CI:"CIV",CM:"CMR",CD:"COD",CG:"COG",CK:"COK",CO:"COL",KM:"COM",CV:"CPV",CR:"CRI",CU:"CUB",CW:"CUW",CX:"CXR",KY:"CYM",CY:"CYP",CZ:"CZE",DE:"DEU",DJ:"DJI",DM:"DMA",DK:"DNK",DO:"DOM",DZ:"DZA",EC:"ECU",EG:"EGY",ER:"ERI",EH:"ESH",ES:"ESP",EE:"EST",ET:"ETH",FI:"FIN",FJ:"FJI",FK:"FLK",FR:"FRA",FO:"FRO",FM:"FSM",GA:"GAB",GB:"GBR",GE:"GEO",GG:"GGY",GH:"GHA",GI:"GIB",GN:"GIN",GP:"GLP",GM:"GMB",GW:"GNB",GQ:"GNQ",GR:"GRC",GD:"GRD",GL:"GRL",GT:"GTM",GF:"GUF",GU:"GUM",GY:"GUY",HK:"HKG",HM:"HMD",HN:"HND",HR:"HRV",HT:"HTI",HU:"HUN",ID:"IDN",IM:"IMN",IN:"IND",IO:"IOT",IE:"IRL",IR:"IRN",IQ:"IRQ",IS:"ISL",IL:"ISR",IT:"ITA",JM:"JAM",JE:"JEY",JO:"JOR",JP:"JPN",KZ:"KAZ",KE:"KEN",KG:"KGZ",KH:"KHM",KI:"KIR",KN:"KNA",KR:"KOR",KW:"KWT",LA:"LAO",LB:"LBN",LR:"LBR",LY:"LBY",LC:"LCA",LI:"LIE",LK:"LKA",LS:"LSO",LT:"LTU",LU:"LUX",LV:"LVA",MO:"MAC",MF:"MAF",MA:"MAR",MC:"MCO",MD:"MDA",MG:"MDG",MV:"MDV",MX:"MEX",MH:"MHL",MK:"MKD",ML:"MLI",MT:"MLT",MM:"MMR",ME:"MNE",MN:"MNG",MP:"MNP",MZ:"MOZ",MR:"MRT",MS:"MSR",MQ:"MTQ",MU:"MUS",MW:"MWI",MY:"MYS",YT:"MYT",NA:"NAM",NC:"NCL",NE:"NER",NF:"NFK",NG:"NGA",NI:"NIC",NU:"NIU",NL:"NLD",NO:"NOR",NP:"NPL",NR:"NRU",NZ:"NZL",OM:"OMN",PK:"PAK",PA:"PAN",PN:"PCN",PE:"PER",PH:"PHL",PW:"PLW",PG:"PNG",PL:"POL",PR:"PRI",KP:"PRK",PT:"PRT",PY:"PRY",PS:"PSE",PF:"PYF",QA:"QAT",RE:"REU",RO:"ROU",RU:"RUS",RW:"RWA",SA:"SAU",SD:"SDN",SN:"SEN",SG:"SGP",GS:"SGS",SH:"SHN",SJ:"SJM",SB:"SLB",SL:"SLE",SV:"SLV",SM:"SMR",SO:"SOM",PM:"SPM",RS:"SRB",SS:"SSD",ST:"STP",SR:"SUR",SK:"SVK",SI:"SVN",SE:"SWE",SZ:"SWZ",SX:"SXM",SC:"SYC",SY:"SYR",TC:"TCA",TD:"TCD",TG:"TGO",TH:"THA",TJ:"TJK",TK:"TKL",TM:"TKM",TL:"TLS",TO:"TON",TT:"TTO",TN:"TUN",TR:"TUR",TV:"TUV",TW:"TWN",TZ:"TZA",UG:"UGA",UA:"UKR",UM:"UMI",UY:"URY",US:"USA",UZ:"UZB",VA:"VAT",VC:"VCT",VE:"VEN",VG:"VGB",VI:"VIR",VN:"VNM",VU:"VUT",WF:"WLF",WS:"WSM",XK:"XKX",YE:"YEM",ZA:"ZAF",ZM:"ZMB",ZW:"ZWE"};class PubSub{publish(e,n){const d=this.getSubscribersForType(e);void 0!==d&&d.forEach(d=>{d(e,n)})}subscribe(e,n){this.getSubscribersForType(e,!0).push(n)}subscribeOnce(e,n){const onceCallback=(e,d)=>{this.unsubscribe(e,onceCallback),n(e,d)};this.subscribe(e,onceCallback)}unsubscribe(e,n){const d=this.getSubscribersForType(e);if(void 0!==d)for(const p in d)if(d[p]===n){delete d[p];break}}clear(e){void 0===e?this.events={}:delete this.events[e]}getSubscribersForType(e,n=!1){return!this.events.hasOwnProperty(e)&&n&&(this.events[e]=[]),this.events[e]}constructor(){var e,n,d;d={},(n="events")in(e=this)?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d}}function asyncGeneratorStep$13(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$13(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$13(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$13(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}const ht={},SerialAsync=e=>{let n=Promise.resolve();return(d,p,h)=>{const y=h.value;return h.value=_async_to_generator$13((function*(...d){return e&&(n=(e=>{let n=ht[e];return n||(n=Promise.resolve(),ht[e]=n),n})(e)),n=n.catch(()=>{}).then(()=>y.apply(this,d)),e&&(ht[e]=n),n})),h}};var yt,_t,ft;e.PlaybackBitrate=void 0,(yt=e.PlaybackBitrate||(e.PlaybackBitrate={}))[yt.STANDARD=64]="STANDARD",yt[yt.HIGH=256]="HIGH",function(e){e.apiStorefrontChanged="apiStorefrontChanged",e.hlsLevelUpdated="hlsLevelUpdated",e.mediaContentComplete="mediaContentComplete",e.playbackPause="playbackPause",e.playbackPlay="playbackPlay",e.playbackScrub="playbackScrub",e.playbackSeek="playbackSeek",e.playbackSkip="playbackSkip",e.playbackStop="playbackStop",e.lyricsPlay="lyricsPlay",e.lyricsStop="lyricsStop",e.playerActivate="playerActivate",e.playerExit="playerExit",e.queueModified="queueModified",e.userActivityIntent="userActivityIntent",e.applicationActivityIntent="applicationActivityIntent"}(_t||(_t={})),function(e){e[e.ACCURATE=0]="ACCURATE",e[e.ROUND=1]="ROUND"}(ft||(ft={}));class TimingAccuracy{time(e=0){return this.mode===ft.ROUND?Math.round(e):e}constructor(e=!1){var n,d,p;p=void 0,(d="mode")in(n=this)?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p,this.mode=e?ft.ACCURATE:ft.ROUND}}const vt={audioTrackAdded:"audioTrackAdded",audioTrackChanged:"audioTrackChanged",audioTrackRemoved:"audioTrackRemoved",bufferedProgressDidChange:"bufferedProgressDidChange",drmUnsupported:"drmUnsupported",forcedTextTrackChanged:"forcedTextTrackChanged",mediaCanPlay:"mediaCanPlay",mediaElementCreated:"mediaElementCreated",mediaPlaybackError:"mediaPlaybackError",nowPlayingItemDidChange:"nowPlayingItemDidChange",nowPlayingItemWillChange:"nowPlayingItemWillChange",metadataDidChange:"metadataDidChange",playbackBitrateDidChange:"playbackBitrateDidChange",playbackDurationDidChange:"playbackDurationDidChange",playbackProgressDidChange:"playbackProgressDidChange",playbackRateDidChange:"playbackRateDidChange",playbackStateDidChange:"playbackStateDidChange",playbackStateWillChange:"playbackStateWillChange",playbackTargetAvailableDidChange:"playbackTargetAvailableDidChange",playbackTargetIsWirelessDidChange:"playbackTargetIsWirelessDidChange",playbackTimeDidChange:"playbackTimeDidChange",playbackVolumeDidChange:"playbackVolumeDidChange",playerTypeDidChange:"playerTypeDidChange",presentationModeDidChange:"presentationModeDidChange",primaryPlayerDidChange:"primaryPlayerDidChange",textTrackAdded:"textTrackAdded",textTrackChanged:"textTrackChanged",textTrackRemoved:"textTrackRemoved",timedMetadataDidChange:"timedMetadataDidChange"};function _define_property$1B(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class BitrateCalculator{get bitrate(){return this._bitrate}set bitrate(e){this._bitrate!==e&&(this._bitrate=e,this._dispatcher.publish(vt.playbackBitrateDidChange,{bitrate:e}))}_calculateAverageDownlink(){return 0===this._downlinkSamples.length?0:this._downlinkSamples.reduce((e,n)=>e+n,0)/this._downlinkSamples.length||0}_recalculateBitrate(n){je.debug("_recalculateBitrate",n),this._downlinkSamples.push(n);this._calculateAverageDownlink()>e.PlaybackBitrate.STANDARD?(je.debug("setting bitrate to",e.PlaybackBitrate.HIGH),this.bitrate=e.PlaybackBitrate.HIGH):(je.debug("setting bitrate to",e.PlaybackBitrate.STANDARD),this.bitrate=e.PlaybackBitrate.STANDARD)}constructor(n,d=e.PlaybackBitrate.STANDARD){var p,h,y;_define_property$1B(this,"_bitrate",void 0),_define_property$1B(this,"_dispatcher",void 0),_define_property$1B(this,"_downlinkSamples",[]),this._bitrate=d,this._dispatcher=n,void 0!==(null===(y=window)||void 0===y||null===(h=y.navigator)||void 0===h||null===(p=h.connection)||void 0===p?void 0:p.downlink)&&this._recalculateBitrate(100*(window.navigator.connection.downlink||0))}}var mt,gt,bt,St,Pt,Et,Tt;!function(e){e.MUSICKIT="music_kit-integration",e.OTHER="other",e.MINI="mini",e.SONG="song",e.ALBUM="album",e.ALBUM_CLASSICAL="album-classical",e.ARTIST="artist",e.COMPILATION="compilation",e.COMPILATION_CLASSICAL="compilation-classical",e.PLAYLIST="playlist",e.PLAYLIST_CLASSICAL="playlist-classical",e.RADIO="radio",e.SEARCH="search",e.STATION="station"}(mt||(mt={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.RADIO=1]="RADIO",e[e.PLAYLIST=2]="PLAYLIST",e[e.ALBUM=3]="ALBUM",e[e.ARTIST=4]="ARTIST"}(gt||(gt={})),e.PlayActivityEndReasonType=void 0,(bt=e.PlayActivityEndReasonType||(e.PlayActivityEndReasonType={}))[bt.NOT_APPLICABLE=0]="NOT_APPLICABLE",bt[bt.OTHER=1]="OTHER",bt[bt.TRACK_SKIPPED_FORWARDS=2]="TRACK_SKIPPED_FORWARDS",bt[bt.PLAYBACK_MANUALLY_PAUSED=3]="PLAYBACK_MANUALLY_PAUSED",bt[bt.PLAYBACK_SUSPENDED=4]="PLAYBACK_SUSPENDED",bt[bt.MANUALLY_SELECTED_PLAYBACK_OF_A_DIFF_ITEM=5]="MANUALLY_SELECTED_PLAYBACK_OF_A_DIFF_ITEM",bt[bt.PLAYBACK_PAUSED_DUE_TO_INACTIVITY=6]="PLAYBACK_PAUSED_DUE_TO_INACTIVITY",bt[bt.NATURAL_END_OF_TRACK=7]="NATURAL_END_OF_TRACK",bt[bt.PLAYBACK_STOPPED_DUE_TO_SESSION_TIMEOUT=8]="PLAYBACK_STOPPED_DUE_TO_SESSION_TIMEOUT",bt[bt.TRACK_BANNED=9]="TRACK_BANNED",bt[bt.FAILED_TO_LOAD=10]="FAILED_TO_LOAD",bt[bt.PAUSED_ON_TIMEOUT=11]="PAUSED_ON_TIMEOUT",bt[bt.SCRUB_BEGIN=12]="SCRUB_BEGIN",bt[bt.SCRUB_END=13]="SCRUB_END",bt[bt.TRACK_SKIPPED_BACKWARDS=14]="TRACK_SKIPPED_BACKWARDS",bt[bt.NOT_SUPPORTED_BY_CLIENT=15]="NOT_SUPPORTED_BY_CLIENT",bt[bt.QUICK_PLAY=16]="QUICK_PLAY",bt[bt.EXITED_APPLICATION=17]="EXITED_APPLICATION",function(e){e[e.Manual=0]="Manual",e[e.Interval=1]="Interval",e[e.SkipIntro=2]="SkipIntro"}(St||(St={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.NO_RIGHTS=1]="NO_RIGHTS",e[e.PURCHASED=2]="PURCHASED",e[e.UPLOADED=3]="UPLOADED",e[e.MATCHED=4]="MATCHED",e[e.ADDED=5]="ADDED",e[e.SUBSCRIBED=6]="SUBSCRIBED",e[e.NOT_SUPPORTED=7]="NOT_SUPPORTED"}(Pt||(Pt={})),function(e){e[e.NO_SELECTION_PLAY=0]="NO_SELECTION_PLAY",e[e.RESUME_LAST_PLAYED_SONG=1]="RESUME_LAST_PLAYED_SONG",e[e.RESUME_CURRENT_DEVICE_POSITION=2]="RESUME_CURRENT_DEVICE_POSITION"}(Et||(Et={})),function(e){e[e.NOT_APPLICABLE=0]="NOT_APPLICABLE",e[e.SIMILARITIES=1]="SIMILARITIES",e[e.ESSENTIALS=2]="ESSENTIALS",e[e.USER_LIBRARY=3]="USER_LIBRARY",e[e.ALGO_HEATSEEKER=4]="ALGO_HEATSEEKER",e[e.SEED_TRACK=5]="SEED_TRACK",e[e.GN_1M_TEMPORARY=6]="GN_1M_TEMPORARY",e[e.VECTOR=8]="VECTOR",e[e.ARTIST_SIMILARITIES=9]="ARTIST_SIMILARITIES",e[e.STORY_ALBUM_LISTENERS_ALSO_BOUGHT=10]="STORY_ALBUM_LISTENERS_ALSO_BOUGHT",e[e.STORY_ALBUM_SALES_LEADER=11]="STORY_ALBUM_SALES_LEADER",e[e.STORY_BILLBOARD=12]="STORY_BILLBOARD",e[e.STORY_COMPLETE_MY_ALBUM=13]="STORY_COMPLETE_MY_ALBUM",e[e.STORY_CRITICAL_PICK=14]="STORY_CRITICAL_PICK",e[e.STORY_ITUNES_ESSENTIAL=15]="STORY_ITUNES_ESSENTIAL",e[e.STORY_HEATSEEKER=16]="STORY_HEATSEEKER",e[e.STORY_IDENTITY=17]="STORY_IDENTITY",e[e.STORY_POWER_SONG=18]="STORY_POWER_SONG",e[e.STORY_SONG_SALES_LEADER=20]="STORY_SONG_SALES_LEADER",e[e.GENRE_SIMILARITIES=21]="GENRE_SIMILARITIES",e[e.STORY_IMIX=22]="STORY_IMIX",e[e.STORY_OTHER_MIX=23]="STORY_OTHER_MIX",e[e.EDITORIAL=24]="EDITORIAL",e[e.TOP_SONGS=25]="TOP_SONGS",e[e.SUBFORMAT_SONGS=26]="SUBFORMAT_SONGS",e[e.CRITICAL_PICKS=27]="CRITICAL_PICKS",e[e.US_ARTIST_SIMS=28]="US_ARTIST_SIMS",e[e.HEAVY_ROTATION=29]="HEAVY_ROTATION",e[e.STORY_FORMAT_STATION_HEAVY_ROTATION=30]="STORY_FORMAT_STATION_HEAVY_ROTATION",e[e.ARTIST_BASED_CORE_SIMILAR_ARTISTS=31]="ARTIST_BASED_CORE_SIMILAR_ARTISTS",e[e.ARTIST_BASED_FAMILIAR_SIMILAR_ARTISTS=32]="ARTIST_BASED_FAMILIAR_SIMILAR_ARTISTS",e[e.ARTIST_BASED_DISCOVERIES=33]="ARTIST_BASED_DISCOVERIES",e[e.ARTIST_BASED_HOT_SONGS=34]="ARTIST_BASED_HOT_SONGS",e[e.ARTIST_BASED_SEED_ARTIST=35]="ARTIST_BASED_SEED_ARTIST",e[e.ARTIST_BASED_COMPOSER=36]="ARTIST_BASED_COMPOSER",e[e.EDITORIAL_STATION_INTRO=37]="EDITORIAL_STATION_INTRO",e[e.EDITORIAL_RELATIVE_REPEAT=38]="EDITORIAL_RELATIVE_REPEAT",e[e.EDITORIAL_ABSOLUTE_REPEAT=39]="EDITORIAL_ABSOLUTE_REPEAT",e[e.EDITORIAL_SCHEDULED=40]="EDITORIAL_SCHEDULED",e[e.EDITORIAL_SUGGESTED_ARTIST=41]="EDITORIAL_SUGGESTED_ARTIST",e[e.FOR_YOU_FAMILIAR=42]="FOR_YOU_FAMILIAR",e[e.FOR_YOU_RECOMMENDED=43]="FOR_YOU_RECOMMENDED",e[e.FOR_YOU_FAVORITE_ARTIST=44]="FOR_YOU_FAVORITE_ARTIST",e[e.FOR_YOU_RECOMMENDED_ARTIST=45]="FOR_YOU_RECOMMENDED_ARTIST",e[e.EDITORIAL_POSITIONAL=46]="EDITORIAL_POSITIONAL",e[e.SIMILAR_SONGS=47]="SIMILAR_SONGS",e[e.SONG_ATTRIBUTE_FAVORITE_ARTIST=48]="SONG_ATTRIBUTE_FAVORITE_ARTIST",e[e.SONG_ATTRIBUTE_FAVORITE_ARTIST_DERIVED=49]="SONG_ATTRIBUTE_FAVORITE_ARTIST_DERIVED",e[e.SONG_ATTRIBUTE_FAVORITE_ARTIST_EDITORIAL=50]="SONG_ATTRIBUTE_FAVORITE_ARTIST_EDITORIAL",e[e.SONG_ATTRIBUTE_RECOMMENDED=51]="SONG_ATTRIBUTE_RECOMMENDED",e[e.SONG_ATTRIBUTE_RECOMMENDED_DERIVED=52]="SONG_ATTRIBUTE_RECOMMENDED_DERIVED",e[e.SONG_ATTRIBUTE_RECOMMENDED_EDITORIAL=53]="SONG_ATTRIBUTE_RECOMMENDED_EDITORIAL",e[e.SONG_ATTRIBUTE_NON_PERSONALIZED=54]="SONG_ATTRIBUTE_NON_PERSONALIZED",e[e.SONG_ATTRIBUTE_NON_PERSONALIZED_DERIVED=55]="SONG_ATTRIBUTE_NON_PERSONALIZED_DERIVED",e[e.SONG_ATTRIBUTE_NON_PERSONALIZED_EDITORIAL=56]="SONG_ATTRIBUTE_NON_PERSONALIZED_EDITORIAL",e[e.PERSONAL_STATION=57]="PERSONAL_STATION",e[e.PERSONAL_STATION_FAVORITE_ARTIST=58]="PERSONAL_STATION_FAVORITE_ARTIST",e[e.PERSONAL_STATION_RECOMMENDED=59]="PERSONAL_STATION_RECOMMENDED",e[e.NEW_MUSIC_STATION=60]="NEW_MUSIC_STATION",e[e.NEW_MUSIC_STATION_FAVORITE_ARTIST=61]="NEW_MUSIC_STATION_FAVORITE_ARTIST",e[e.NEW_MUSIC_STATION_RECOMMENDED=62]="NEW_MUSIC_STATION_RECOMMENDED"}(Tt||(Tt={}));var kt,wt,It,Ot,At,Rt,$t,Ct,Mt,Dt,xt,Lt,Nt,jt; -/*! ***************************************************************************** - Copyright (c) Microsoft Corporation. - - Permission to use, copy, modify, and/or distribute this software for any - purpose with or without fee is hereby granted. - - THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */ -function t(e,n){var d="function"==typeof Symbol&&e[Symbol.iterator];if(!d)return e;var p,h,y=d.call(e),_=[];try{for(;(void 0===n||n-- >0)&&!(p=y.next()).done;)_.push(p.value)}catch(e){h={error:e}}finally{try{p&&!p.done&&(d=y.return)&&d.call(y)}finally{if(h)throw h.error}}return _}!function(e){e[e.UNKNOWN_FORMAT=0]="UNKNOWN_FORMAT",e[e.STEREO=1]="STEREO",e[e.SPATIAL=2]="SPATIAL",e[e.PREFERENCE_FORMAT_UNSUPPORTED=3]="PREFERENCE_FORMAT_UNSUPPORTED"}(kt||(kt={})),function(e){e[e.UNKNOWN_QUALITY=0]="UNKNOWN_QUALITY",e[e.HIGH_EFFICIENCY=1]="HIGH_EFFICIENCY",e[e.HIGH_QUALITY=2]="HIGH_QUALITY",e[e.LOSSLESS=3]="LOSSLESS",e[e.HIGH_RESOLUTION_LOSSLESS=4]="HIGH_RESOLUTION_LOSSLESS",e[e.PREFERENCE_QUALITY_UNSUPPORTED=5]="PREFERENCE_QUALITY_UNSUPPORTED"}(wt||(wt={})),function(e){e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.STATIC=1]="STATIC",e[e.LINE_BY_LINE=2]="LINE_BY_LINE",e[e.WORD_BY_WORD=3]="WORD_BY_WORD"}(It||(It={})),function(e){e[e.REPEAT_UNKNOWN=0]="REPEAT_UNKNOWN",e[e.REPEAT_OFF=1]="REPEAT_OFF",e[e.REPEAT_ONE=2]="REPEAT_ONE",e[e.REPEAT_ALL=3]="REPEAT_ALL"}(Ot||(Ot={})),function(e){e[e.SHUFFLE_UNKNOWN=0]="SHUFFLE_UNKNOWN",e[e.SHUFFLE_OFF=1]="SHUFFLE_OFF",e[e.SHUFFLE_ON=2]="SHUFFLE_ON"}(At||(At={})),function(e){e[e.AUTO_UNKNOWN=0]="AUTO_UNKNOWN",e[e.AUTO_OFF=1]="AUTO_OFF",e[e.AUTO_ON=2]="AUTO_ON",e[e.AUTO_ON_CONTENT_UNSUPPORTED=3]="AUTO_ON_CONTENT_UNSUPPORTED"}(Rt||(Rt={})),function(e){e[e.NOT_SPECIFIED=0]="NOT_SPECIFIED",e[e.CONTAINER_CHANGED=1]="CONTAINER_CHANGED"}($t||($t={})),function(e){e[e.PLAY_END=0]="PLAY_END",e[e.PLAY_START=1]="PLAY_START",e[e.LYRIC_DISPLAY=2]="LYRIC_DISPLAY"}(Ct||(Ct={})),function(e){e[e.INVALID=0]="INVALID",e[e.ITUNES_STORE_CONTENT=1]="ITUNES_STORE_CONTENT",e[e.NON_SONG_CLIP=2]="NON_SONG_CLIP",e[e.AD=3]="AD",e[e.STREAM=4]="STREAM",e[e.AUDIO_AD=5]="AUDIO_AD",e[e.VIDEO_AD=6]="VIDEO_AD",e[e.TIMED_METADATA_PING=7]="TIMED_METADATA_PING",e[e.ARTIST_UPLOADED_CONTENT=8]="ARTIST_UPLOADED_CONTENT",e[e.AGGREGATE_NON_CATALOG_PLAY_TIME=9]="AGGREGATE_NON_CATALOG_PLAY_TIME",e[e.ORIGINAL_CONTENT_MOVIES=10]="ORIGINAL_CONTENT_MOVIES",e[e.ORIGINAL_CONTENT_SHOWS=11]="ORIGINAL_CONTENT_SHOWS"}(Mt||(Mt={})),function(e){e[e.AUDIO=0]="AUDIO",e[e.VIDEO=1]="VIDEO"}(Dt||(Dt={})),function(e){e[e.AUTO=0]="AUTO",e[e.MANUAL=1]="MANUAL"}(xt||(xt={})),function(e){e[e.ORIGINATING_DEVICE=0]="ORIGINATING_DEVICE",e[e.PAIRED_WATCH=1]="PAIRED_WATCH",e[e.SONOS=2]="SONOS",e[e.CAR_PLAY=3]="CAR_PLAY",e[e.WEB_AUC=4]="WEB_AUC",e[e.TWITTER_AUC=5]="TWITTER_AUC",e[e.MUSIC_SDK=6]="MUSIC_SDK",e[e.ATV_REMOTE=7]="ATV_REMOTE",e[e.WEBPLAYER=8]="WEBPLAYER",e[e.WHOLE_HOUSE_AUDIO=9]="WHOLE_HOUSE_AUDIO",e[e.MUSICKIT=10]="MUSICKIT",e[e.VW=11]="VW",e[e.UNKNOWN_SOURCE_TYPE=12]="UNKNOWN_SOURCE_TYPE",e[e.AMAZON=13]="AMAZON",e[e.PORSCHE=14]="PORSCHE",e[e.CHROMECAST=15]="CHROMECAST",e[e.WEB_APP=16]="WEB_APP",e[e.MERCEDES_BENZ=17]="MERCEDES_BENZ",e[e.THIRD_PARTY_TV=18]="THIRD_PARTY_TV",e[e.SEAT=19]="SEAT",e[e.CUPRA=20]="CUPRA"}(Lt||(Lt={})),function(e){e[e.EPISODE=1]="EPISODE",e[e.SHOUTCAST=2]="SHOUTCAST"}(Nt||(Nt={})),function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"}(jt||(jt={}));var Ut={type:"xstate.init"};function r(e){return void 0===e?[]:[].concat(e)}function o(e){return{type:"xstate.assign",assignment:e}}function i(e,n){return"string"==typeof(e="string"==typeof e&&n&&n[e]?n[e]:e)?{type:e}:"function"==typeof e?{type:e.name,exec:e}:e}function a(e){return function(n){return e===n}}function u(e){return"string"==typeof e?{type:e}:e}function c(e,n){return{value:e,context:n,actions:[],changed:!1,matches:a(e)}}function f(e,n,d){var p=n,h=!1;return[e.filter((function(e){if("xstate.assign"===e.type){h=!0;var n=Object.assign({},p);return"function"==typeof e.assignment?n=e.assignment(p,d):Object.keys(e.assignment).forEach((function(h){n[h]="function"==typeof e.assignment[h]?e.assignment[h](p,d):e.assignment[h]})),p=n,!1}return!0})),p,h]}function s(e,n){void 0===n&&(n={});var d=t(f(r(e.states[e.initial].entry).map((function(e){return i(e,n.actions)})),e.context,Ut),2),p=d[0],h=d[1],y={config:e,_options:n,initialState:{value:e.initial,actions:p,context:h,matches:a(e.initial)},transition:function(n,d){var p,h,_="string"==typeof n?{value:n,context:e.context}:n,m=_.value,g=_.context,b=u(d),S=e.states[m];if(S.on){var P=r(S.on[b.type]);try{for(var E=function(e){var n="function"==typeof Symbol&&Symbol.iterator,d=n&&e[n],p=0;if(d)return d.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&p>=e.length&&(e=void 0),{value:e&&e[p++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(P),T=E.next();!T.done;T=E.next()){var k=T.value;if(void 0===k)return c(m,g);var w="string"==typeof k?{target:k}:k,I=w.target,O=w.actions,A=void 0===O?[]:O,R=w.cond,$=void 0===R?function(){return!0}:R,C=void 0===I,M=null!=I?I:m,D=e.states[M];if($(g,b)){var x=t(f((C?r(A):[].concat(S.exit,A,D.entry).filter((function(e){return e}))).map((function(e){return i(e,y._options.actions)})),g,b),3),L=x[0],N=x[1],j=x[2],U=null!=I?I:m;return{value:U,context:N,actions:L,changed:I!==m||L.length>0||j,matches:a(U)}}}}catch(t){p={error:t}}finally{try{T&&!T.done&&(h=E.return)&&h.call(E)}finally{if(p)throw p.error}}}return c(m,g)}};return y}var l=function(e,n){return e.actions.forEach((function(d){var p=d.exec;return p&&p(e.context,n)}))};function v(e){var n=e.initialState,d=jt.NotStarted,p=new Set,h={_machine:e,send:function(h){d===jt.Running&&(n=e.transition(n,h),l(n,u(h)),p.forEach((function(e){return e(n)})))},subscribe:function(e){return p.add(e),e(n),{unsubscribe:function(){return p.delete(e)}}},start:function(p){if(p){var y="object"==typeof p?p:{context:e.config.context,value:p};n={value:y.value,actions:[],context:y.context,matches:a(y.value)}}return d=jt.Running,l(n,Ut),h},stop:function(){return d=jt.Stopped,p.clear(),h},get state(){return n},get status(){return d}};return h}const Bt=/(?:st|ra)\.([0-9]+)/,Ft=/st\.([0-9]+)/;function asyncGeneratorStep$12(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1A(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$F(e){for(var n=1;n=0||(h[d]=e[d]);return h}(e,n);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(e);for(p=0;p=0||Object.prototype.propertyIsEnumerable.call(e,d)&&(h[d]=e[d])}return h}const toTimeMeasuredData=e=>{var{timestamp:n}=e;return _object_spread_props$p(_object_spread$F({},_object_without_properties$3(e,["timestamp"])),{"milliseconds-since-play":Date.now()-n})};class PlayActivitySender{get accessToken(){return invoke(this._accessToken)}get musicUserToken(){return invoke(this._musicUserToken)}get url(){return this._isQA?"https://universal-activity-service.itunes.apple.com/qa/play":"https://universal-activity-service.itunes.apple.com/play"}send(e){var n,d=this;return(n=function*(){const n={client_id:d._clientId,event_type:d._eventType,data:ensureArray(e).map(toTimeMeasuredData)};if(0===n.data.length)throw new Error("send() called without any data");const p=d._generateFetchOptions({method:"POST",body:JSON.stringify(n),headers:d.headers()});return yield d._fetch(d.url,p),d._logInfo&&console.info("play activity:",d._sourceType===Lt.AMAZON?JSON.stringify(n):n),n},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$12(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$12(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}baseHeaders(){var e,n;const d=null!==(n=null===(e=this._fetchOptions)||void 0===e?void 0:e.headers)&&void 0!==n?n:{};return d instanceof this._headersClass?new this._headersClass(Array.from(d.entries())):new this._headersClass(d)}headers(){const e=this._preferDSID?"X-Dsid":"media-user-token",n=this.baseHeaders();return n.set("Authorization","Bearer "+this.accessToken),n.set("Content-Type","application/json"),n.set(e,""+this.musicUserToken),this._isQA&&void 0!==this._traceTag&&n.set("Data-Trace-Tag",this._traceTag),n}_generateFetchOptions(e){return _object_spread$F({},this._fetchOptions,e)}constructor(e){var n,d,p,h;_define_property$1A(this,"mode",xt.AUTO),_define_property$1A(this,"_accessToken",void 0),_define_property$1A(this,"_musicUserToken",void 0),_define_property$1A(this,"_clientId",void 0),_define_property$1A(this,"_eventType",void 0),_define_property$1A(this,"_fetch",void 0),_define_property$1A(this,"_fetchOptions",void 0),_define_property$1A(this,"_headersClass",void 0),_define_property$1A(this,"_isQA",!1),_define_property$1A(this,"_logInfo",!1),_define_property$1A(this,"_preferDSID",!1),_define_property$1A(this,"_sourceType",void 0),_define_property$1A(this,"_traceTag",void 0),this._accessToken=e.accessToken,this._clientId=e.clientId,this._eventType=e.eventType,this._fetch=null!==(n=e.fetch)&&void 0!==n?n:fetch,this._fetchOptions=null!==(d=e.fetchOptions)&&void 0!==d?d:{},this._headersClass=null!==(p=e.headersClass)&&void 0!==p?p:Headers,this._isQA=null!==(h=e.isQA)&&void 0!==h&&h,this._logInfo=e.logInfo||this._isQA,this._musicUserToken=e.musicUserToken,this._preferDSID=e.preferDSID,this._sourceType=e.sourceType,this._traceTag=e.traceTag}}const fullAppId=(e,n)=>{var d,p;if(void 0===(null===(d=n)||void 0===d?void 0:d.name))return"MusicKitApp/1.0";if(void 0!==e)return e;return`${function(e){return e.toLowerCase().replace(/[-_]+/g," ").replace(/[^\w\s]/g,"").replace(/\b./g,e=>e.toUpperCase()).replace(/\s/g,"")}(n.name)}/${(null===(p=n)||void 0===p?void 0:p.version)||"1.0"}`},os=e=>{var n,d,p;const h=e.toLowerCase();let y,_="Unidentified OS";const m=/mobile/.test(h);var g;m&&/android|adr/.test(h)?(_="Android",y=h.match(/(?:android|adr)\ ((\d+[._])+\d+)/)):m&&/iphone|ipad|ipod/.test(h)?(_="iOS",y=h.match(/os\ ((\d+[._])+\d+)\ like\ mac\ os\ x/)):/tizen/.test(h)?(_="Tizen",y=h.match(/tizen (.*)/)):/web0s|webos/.test(h)?(_="WebOS",y=h.match(/[web0s|webos] (.*)/)):!m&&/cros/.test(h)?_="ChromeOS":!m&&/macintosh/.test(h)?(_="macOS",y=h.match(/os\ x\ ((\d+[._])+\d+)\b/)):!m&&/linux/.test(h)?_="Linux":!m&&/windows/.test(h)&&(_="Windows",y=h.match(/windows ([^\)]*)/));return`${_}/${null!==(g=null===(p=y)||void 0===p||null===(d=p[1])||void 0===d||null===(n=d.replace)||void 0===n?void 0:n.call(d,/_/g,"."))&&void 0!==g?g:"0.0"}`},model=e=>{var n;return"model/"+((null===(n=e)||void 0===n?void 0:n.platform)||"Unavailable")},build=e=>{var n;const d=null===(n=e)||void 0===n?void 0:n.build;return void 0===d||""===d?"build/0.0.0":"build/"+d};function asyncGeneratorStep$11(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1z(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$E(e){for(var n=1;n[fullAppId(e,n),os(p),model(d),build(n)].join(" "))(this._appId,this._appInfo,this.navigator,this.userAgent),this.sender=new PlayActivitySender({accessToken:this._accessToken,clientId:this.clientId,eventType:this.eventType,fetch:null===(h=p)||void 0===h?void 0:h.fetch,fetchOptions:null===(y=p)||void 0===y?void 0:y.fetchOptions,headersClass:null===(m=p)||void 0===m||null===(_=m.fetch)||void 0===_?void 0:_.Headers,isQA:null===(g=p)||void 0===g?void 0:g.isQA,logInfo:null===(b=p)||void 0===b?void 0:b.logInfo,musicUserToken:this._musicUserToken,preferDSID:this.preferDSID,sourceType:this.sourceType,traceTag:null===(S=p)||void 0===S?void 0:S.traceTag})}}function _define_property$1y(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const DEFAULT_CACHE_KEY_FUNCTION=(e,n)=>`${n}${e}`;class NetworkCache{getItem(e){const n=this.cacheKeyForPath(e),d=this.storage.getItem(n);if(null!==d){const{x:e,d:p}=JSON.parse(d);if(e>Date.now())return p;this.storage.removeItem(n)}}setItem(e,n,d=this.ttl){const p=this.cacheKeyForPath(e);this.storage.setItem(p,JSON.stringify({x:Date.now()+d,d:n}))}removeItem(e){const n=this.cacheKeyForPath(e);this.storage.removeItem(n)}removeItemsMatching(e,n=!0){const d=this.cacheKeyForPath(e);this.removeItemsMatchingCacheKey(d,n)}clear(){this.removeItemsMatchingCacheKey(this.prefix,!1)}removeItemsMatchingCacheKey(e,n){const d=new RegExp(`^${e}${n?"$":""}`);(this.storage instanceof GenericStorage?this.storage.keys:Object.keys(this.storage)).forEach(e=>{e&&d.test(e)&&this.storage.removeItem(e)})}cacheKeyForPath(e){return this.cacheKeyFunction(e,this.prefix)}constructor(e={}){_define_property$1y(this,"storage",void 0),_define_property$1y(this,"prefix",void 0),_define_property$1y(this,"ttl",void 0),_define_property$1y(this,"cacheKeyFunction",void 0),this.storage=e.storage||new GenericStorage,this.prefix=e.prefix||"",this.ttl=e.ttl||3e5,this.cacheKeyFunction=e.cacheKeyFunction||DEFAULT_CACHE_KEY_FUNCTION}}function asyncGeneratorStep$10(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1x(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$D(e){for(var n=1;n{const[e,n]=process.hrtime();return Math.floor(1e3*e+1e-6*n)}:()=>{var e,n;return null!==(Ht=null===(n=performance)||void 0===n||null===(e=n.now)||void 0===e?void 0:e.call(n))&&void 0!==Ht?Ht:Date.now()-Vt},formatByte=e=>("0"+(255&e).toString(16)).slice(-2),Wt=new Map([["play",Ct.PLAY_START],["playbackstarted",Ct.PLAY_START],["stop",Ct.PLAY_END],["playbackstopped",Ct.PLAY_END]]);function mapEventTypeString(e){return"number"==typeof e?e:null!==(n=Wt.get(e))&&void 0!==n?n:Ct.PLAY_END;var n}const Yt=new Map([["exit",e.PlayActivityEndReasonType.EXITED_APPLICATION],["next",e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS],["pause",e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED],["playbackfinished",e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK],["playbackstopped",e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED],["previous",e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS],["scrub_begin",e.PlayActivityEndReasonType.SCRUB_BEGIN],["scrub_end",e.PlayActivityEndReasonType.SCRUB_END],["stop",e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK]]);function normalizePlayActivityDescriptor(e){const n=deepClone(e),d=function(e){var n;const d=null!==(n=e.eventType)&&void 0!==n?n:Ct.PLAY_START;if("number"==typeof d)return{eventType:d};return{eventTypeString:d,eventType:mapEventTypeString(d)}}(e);return n.eventType=d.eventType,n.eventTypeString=d.eventTypeString,void 0===n.endReasonType&&void 0!==d.eventTypeString&&(n.endReasonType=function(e){if(void 0!==e)return Yt.get(e)}(d.eventTypeString)),!1!==n.reporting&&(n.reporting=!0),n}function _define_property$1w(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$n(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}const createHelper=(e,n)=>(d,p,h)=>{const{helpers:y}=h.cache;return e in y||(y[e]=n(d,p,h)),y[e]};const returnAsField=(e,n)=>(...d)=>function(e,n){if(void 0!==n)return{[e]:n}}(e,n(...d)),createFieldFn=(e,n)=>(d,p,h)=>{const{fields:y}=h.cache;var _;return e in y||(h.cache.fields=_object_spread_props$n(function(e){for(var n=1;ncreateFieldFn(e,(e,d,{client:p})=>p[n]),zt=createFieldFn("event-type",(e,n,d)=>{return void 0===e.eventType?Ct.PLAY_START:e.itemType===Mt.TIMED_METADATA_PING&&void 0!==e.timedMetadata?Ct.PLAY_END:null!==(p=e.eventType)&&void 0!==p?p:Ct.PLAY_START;var p}),Qt=createHelper("should-include-audio-quality",(e,n,d)=>{var p,h,y,_;const m=e.userPreference;return zt(e,n,d)["event-type"]===Ct.PLAY_END&&void 0!==(null===(p=e.audioQuality)||void 0===p?void 0:p.provided)&&void 0!==(null===(h=e.audioQuality)||void 0===h?void 0:h.targeted)&&void 0!==(null===(y=m)||void 0===y?void 0:y.audioQuality)&&void 0!==(null===(_=m)||void 0===_?void 0:_.playbackFormat)}),Jt=createFieldFn("audio-quality-provided",(e,n,d)=>{var p;if(!Qt(e,n,d))return;const h=e.audioQuality;if(void 0===(null===(p=h)||void 0===p?void 0:p.provided))return;const{provided:y}=h;var _,m,g;return{"audio-sample-rate-in-hz":null!==(_=y.audioSampleRateHz)&&void 0!==_?_:0,"audio-bit-depth":null!==(m=y.audioBitDepth)&&void 0!==m?m:0,"bit-rate-in-bps":null!==(g=y.bitRateBps)&&void 0!==g?g:0,codec:y.codec,"audio-channel-type":y.audioChannelType,"playback-format":y.playbackFormat}}),Xt=createFieldFn("audio-quality-targeted",(e,n,d)=>{var p;if(!Qt(e,n,d))return;const h=e.audioQuality;if(void 0===(null===(p=h)||void 0===p?void 0:p.targeted))return;const{targeted:y}=h;var _,m,g;return{"audio-sample-rate-in-hz":null!==(_=y.audioSampleRateHz)&&void 0!==_?_:0,"audio-bit-depth":null!==(m=y.audioBitDepth)&&void 0!==m?m:0,"bit-rate-in-bps":null!==(g=y.bitRateBps)&&void 0!==g?g:0,codec:y.codec,"audio-channel-type":y.audioChannelType,"playback-format":y.playbackFormat}}),Zt=createClientFieldFn("build-version","buildVersion"),er=["uploadedVideo","uploadedAudio","uploaded-videos","uploaded-audios"],tr=createHelper("is-auc",({kind:e})=>void 0!==e&&er.includes(e)),rr=createHelper("should-send-timed-metadata",({endReasonType:n,eventType:d,itemType:p,timedMetadata:h})=>void 0!==h&&(p===Mt.TIMED_METADATA_PING||d===Ct.PLAY_START||n===e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED)),ir=createFieldFn("type",(e,n,d)=>{const{id:p,reporting:h}=e;var y;if("-1"===p||!h)switch(null===(y=zt(e,n,d))||void 0===y?void 0:y["event-type"]){case Ct.PLAY_END:return Mt.AGGREGATE_NON_CATALOG_PLAY_TIME;case Ct.PLAY_START:if("-1"===p)return Mt.INVALID}const{format:_,itemType:m}=e;return rr(e,n,d)?m===Mt.TIMED_METADATA_PING?m:Mt.STREAM:"stream"===_?Mt.STREAM:tr(e,n,d)?Mt.ARTIST_UPLOADED_CONTENT:null!=m?m:Mt.ITUNES_STORE_CONTENT}),nr=createFieldFn("container-type",(e,n,d)=>{var p;if((null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return;const{container:h}=e;if(void 0===h)return gt.UNKNOWN;var y;const _=null!==(y=h.type)&&void 0!==y?y:h.kind;if("number"==typeof _)return _;switch(_){case"album":case"albums":case"library-albums":return gt.ALBUM;case"artist":case"artists":case"library-artists":return gt.ARTIST;case"playlist":case"playlists":case"library-playlists":return gt.PLAYLIST;case"radio":case"radioStation":case"station":case"stations":return gt.RADIO;default:return gt.UNKNOWN}});function _define_property$1v(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const or=[returnAsField("album-adam-id",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.ALBUM)return;const{container:y}=e,_=null===(h=y)||void 0===h?void 0:h.id;return void 0===_||T(_)?void 0:_}),returnAsField("cloud-album-id",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.ALBUM)return;const{container:y}=e,_=null===(h=y)||void 0===h?void 0:h.id;return void 0!==_&&T(_)?_:void 0}),returnAsField("global-playlist-id",(e,n,d)=>{var p,h,y,_,m;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.PLAYLIST)return;const{container:g}=e;var b;const S=null!==(b=null===(h=g)||void 0===h?void 0:h.catalogId)&&void 0!==b?b:null===(y=g)||void 0===y?void 0:y.globalId;return(null===(_=g)||void 0===_?void 0:_.isLibrary)&&S?S:T(null===(m=g)||void 0===m?void 0:m.id)||null===(P=g)||void 0===P?void 0:P.id;var P}),returnAsField("playlist-version-hash",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.PLAYLIST)return;const{container:y}=e,_=null===(h=y)||void 0===h?void 0:h.versionHash;return void 0!==_&&""!==_?_:void 0}),returnAsField("station-hash",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.RADIO)return;const y=null===(h=e.container)||void 0===h?void 0:h.stationHash;return void 0!==y&&""!==y?y:void 0}),returnAsField("station-id",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])===gt.RADIO)return null===(h=e.container)||void 0===h?void 0:h.id}),returnAsField("station-personalized-id",(e,n,d)=>{var p,h;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.RADIO)return;const y=null===(h=e.container)||void 0===h?void 0:h.id;return void 0!==y&&Ft.test(y)?parseInt(y.replace(Ft,"$1"),10):void 0}),returnAsField("universal-library-id",(e,n,d)=>{var p,h,y,_,m;if((null===(p=nr(e,n,d))||void 0===p?void 0:p["container-type"])!==gt.PLAYLIST)return;const{container:g}=e;var b;const S=null!==(b=null===(h=g)||void 0===h?void 0:h.catalogId)&&void 0!==b?b:null===(y=g)||void 0===y?void 0:y.globalId,P=null===(_=g)||void 0===_?void 0:_.id;if(void 0!==P)if((null===(m=g)||void 0===m?void 0:m.isLibrary)&&S){if(""!==P)return P}else if(T(P))return P})],ar=createFieldFn("container-ids",(e,n,d)=>{var p;if((null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return;const h=or.reduce((p,h)=>function(e){for(var n=1;n{var p,h;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.LYRIC_DISPLAY)return null===(h=e.lyricDescriptor)||void 0===h?void 0:h.displayType}),lr=createHelper("initial-start-position-in-milliseconds",({position:e=0,startPositionInMilliseconds:n})=>n||Math.round(1e3*e)),ur=createFieldFn("end-position-in-milliseconds",(e,n,d)=>{var p;switch(null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"]){case Ct.LYRIC_DISPLAY:var h;if(void 0===(null===(h=e.lyricDescriptor)||void 0===h?void 0:h.duration))return;return Math.round(e.lyricDescriptor.duration);case Ct.PLAY_START:return;default:if(n&&void 0===n.position)return;return e.endPositionInMilliseconds||lr(e,n,d)}}),pr=createHelper("is-private",({id:e,reporting:n})=>"-1"===e||!n),hr=createFieldFn("end-reason-type",(n,d,p)=>{var h,y;if(!d||void 0!==(null===(h=d)||void 0===h?void 0:h.position))return(null===(y=ir(n,d,p))||void 0===y?void 0:y.type)===Mt.TIMED_METADATA_PING&&void 0!==n.timedMetadata||pr(n,d,p)&&n.eventType===Ct.PLAY_END?e.PlayActivityEndReasonType.NOT_APPLICABLE:n.endReasonType}),{CONTAINER_CHANGED:yr,NOT_SPECIFIED:_r}=$t,fr=createFieldFn("event-reason-hint-type",(e,n,d)=>{var p,h,y;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])!==Ct.PLAY_START)return;const _=e.container;return void 0===_?_r:!1===n?d.isAlexa?_r:yr:(null===(y=n)||void 0===y||null===(h=y.container)||void 0===h?void 0:h.id)!==_.id?yr:_r}),vr=createFieldFn("feature-name",(e,n,d)=>{var p,h,y;if((null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return;return""+(null!==(y=null===(h=e.container)||void 0===h?void 0:h.name)&&void 0!==y?y:mt.MUSICKIT)}),mr=createClientFieldFn("guid","guid"),gr=createHelper("should-have-auc-adam-id",tr),br=createHelper("should-have-radio-adam-id",({id:e,container:n})=>{var d;return Bt.test(e)||"radioStation"===(null===(d=n)||void 0===d?void 0:d.kind)}),Sr=createHelper("is-library-item-or-library-type",({id:e,isLibrary:n},d,p)=>n||T(e)),Pr=createHelper("catalog-id",({catalogId:e,container:n})=>{var d;return null!=e?e:null===(d=n)||void 0===d?void 0:d.catalogId}),Er=createHelper("is-library-item-with-catalog-id",(e,n,d)=>e.isLibrary&&!!Pr(e,n,d));function _define_property$1u(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const Tr=[returnAsField("auc-adam-id",(e,n,d)=>{if(!pr(e,n,d)&&!br(e,n,d))return gr(e,n,d)?e.id:void 0}),returnAsField("cloud-id",(e,n,d)=>{var p;const{id:h}=e,y=void 0!==h&&""!==h;return pr(e,n,d)&&(null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.PLAY_START&&y&&"-1"!==h?h:br(e,n,d)||gr(e,n,d)?e.cloudId:Er(e,n,d)&&y||Sr(e,n,d)?h:e.cloudId}),returnAsField("lyric-id",(e,n,d)=>{var p,h;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.LYRIC_DISPLAY)return null===(h=e.lyricDescriptor)||void 0===h?void 0:h.id}),returnAsField("purchased-adam-id",(e,n,d)=>e.purchasedId),returnAsField("reporting-adam-id",(e,n,d)=>{if(!0!==d.client.allowReportingId)return;var p;return(null!==(p=zt(e,n,d))&&void 0!==p?p:{})["event-type"],Sr(e,n,d)?e.reportingId:void 0}),returnAsField("radio-adam-id",(e,n,d)=>{var p;if(pr(e,n,d))return;const{container:h,id:y}=e;return Bt.test(y)||"radioStation"===(null===(p=h)||void 0===p?void 0:p.kind)?parseInt((""+y).replace(Bt,"$1"),10):void 0}),returnAsField("subscription-adam-id",(e,n,d)=>{if(!(pr(e,n,d)||br(e,n,d)||gr(e,n,d))){if(Er(e,n,d))return Pr(e,n,d);if(!Sr(e,n,d))return e.id}})],kr=createFieldFn("ids",(e,n,d)=>{var p;if((null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return;const h=Tr.reduce((p,h)=>function(e){for(var n=1;n{var p;return!0===(null===(p=e.container)||void 0===p?void 0:p.isCollaborative)||void 0}),Or=createFieldFn("lyric-language",(e,n,d)=>{var p,h;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.LYRIC_DISPLAY)return null===(h=e.lyricDescriptor)||void 0===h?void 0:h.language}),Ar=createHelper("has-episode-streaming-kind",({streamingKind:e},n,d)=>e===Nt.EPISODE),Rr=createHelper("is-stream",(e,n,d)=>{var p;return(null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.STREAM}),$r=createHelper("is-live-stream",(e,n,d)=>Rr(e,n,d)&&!Ar(e,n,d)),Cr=createFieldFn("media-duration-in-milliseconds",(e,n,d)=>{var p;const h=null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"];if(h===Ct.LYRIC_DISPLAY)return 0;if($r(e,n,d))return 0;const y=Math.round(1e3*e.duration);if(h===Ct.PLAY_START)return y;var _,m;const g=null!==(m=e.startPositionInMilliseconds)&&void 0!==m?m:Math.round(1e3*(null!==(_=e.position)&&void 0!==_?_:0));return g>1e3*e.duration?g:y}),{AUDIO:Mr,VIDEO:Dr}=Dt,xr=createFieldFn("media-type",(e,n,d)=>{var p;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.LYRIC_DISPLAY)return Mr;const{kind:h,mediaType:y}=e;if("number"==typeof y)return y;const _="string"==typeof y?y:h;return _&&/video/i.test(_)?Dr:Mr}),Lr=createClientFieldFn("metrics-client-id","metricsClientId"),Nr=createFieldFn("offline",()=>!1),jr=createFieldFn("persistent-id",()=>generateUUID()),Ur=createFieldFn("play-mode",(e,n,d)=>{var p,h,y,_,m;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])===Ct.LYRIC_DISPLAY||(null===(h=ir(e,n,d))||void 0===h?void 0:h.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return{"auto-play-mode":null!==(y=Ur.autoplayMode)&&void 0!==y?y:0,"repeat-play-mode":null!==(_=Ur.repeatPlayMode)&&void 0!==_?_:0,"shuffle-play-mode":null!==(m=Ur.shufflePlayMode)&&void 0!==m?m:0};const g=invoke(e.playMode);var b,S,P;return void 0!==g?{"auto-play-mode":null!==(b=g.autoplayMode)&&void 0!==b?b:0,"repeat-play-mode":null!==(S=g.repeatPlayMode)&&void 0!==S?S:0,"shuffle-play-mode":null!==(P=g.shufflePlayMode)&&void 0!==P?P:0}:void 0}),Br=createClientFieldFn("private-enabled","privateEnabled"),Fr=createFieldFn("reco-data",(e,n,d)=>{var p,h;if((null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"])!==Ct.LYRIC_DISPLAY&&(null===(h=ir(e,n,d))||void 0===h?void 0:h.type)!==Mt.AGGREGATE_NON_CATALOG_PLAY_TIME)return e.recoData}),Kr=createClientFieldFn("sb-enabled","userIsSubscribed"),Gr=createClientFieldFn("siri-initiated","siriInitiated"),Vr=createClientFieldFn("source-type","sourceType"),Hr=createFieldFn("start-position-in-milliseconds",(e,n,d)=>{var p,h;const y=null===(p=zt(e,n,d))||void 0===p?void 0:p["event-type"];return y===Ct.LYRIC_DISPLAY||(null===(h=ir(e,n,d))||void 0===h?void 0:h.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME||$r(e,n,d)?0:y===Ct.PLAY_START?lr(e,n,d):null!==(m=null!==(_=e.startPositionInMilliseconds)&&void 0!==_?_:previousPosition(n))&&void 0!==m?m:0;var _,m}),previousPosition=e=>e&&void 0!==e.position?Math.round(1e3*e.position):0,qr=createClientFieldFn("store-front","storefrontId"),Wr=createFieldFn("timed-metadata",(e,n,d)=>{const p=e.timedMetadata;if(void 0!==p&&shouldSendTimedMetadata(e,n,d))return((e,n=8)=>{if(!(e instanceof Uint8Array))return"";const d=Array.prototype.map.call(e,formatByte).join("");return 0===n?d:d.replace(new RegExp(`(.{1,${n}})`,"g"),"$1 ").trim()})(p,0)}),shouldSendTimedMetadata=(e,n,d)=>{var p,h;return(null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.TIMED_METADATA_PING||(null===(h=zt(e,n,d))||void 0===h?void 0:h["event-type"])!==Ct.LYRIC_DISPLAY},Yr=createFieldFn("timestamp",({timestamp:e},n,d)=>null!=e?e:Date.now()),zr=createClientFieldFn("user-agent","userAgent"),Qr=createFieldFn("user-preference-audio-quality",(e,n,d)=>{var p;if(Qt(e,n,d))return null===(p=e.userPreference)||void 0===p?void 0:p.audioQuality}),Jr=createFieldFn("user-preference-playback-format",(e,n,d)=>{var p;if(Qt(e,n,d))return null===(p=e.userPreference)||void 0===p?void 0:p.playbackFormat}),Xr=createFieldFn("user-token",(e,n,{client:d})=>{if(!d.preferDSID)return d.musicUserToken}),Zr=createFieldFn("utc-offset-in-seconds",(e,n,d)=>{var p;return(null===(p=ir(e,n,d))||void 0===p?void 0:p.type)===Mt.AGGREGATE_NON_CATALOG_PLAY_TIME?0:d.client.utcOffsetInSeconds}),ei={"audio-quality-provided":Jt,"audio-quality-targeted":Xt,"build-version":Zt,"container-ids":ar,"container-type":nr,"developer-token":sr,"device-name":cr,"display-type":dr,"end-position-in-milliseconds":ur,"end-reason-type":hr,"event-reason-hint-type":fr,"event-type":zt,"feature-name":vr,guid:mr,ids:kr,"internal-build":wr,"is-collaborative":Ir,"lyric-language":Or,"media-duration-in-milliseconds":Cr,"media-type":xr,"metrics-client-id":Lr,offline:Nr,"persistent-id":jr,"play-mode":Ur,"private-enabled":Br,"reco-data":Fr,"sb-enabled":Kr,"siri-initiated":Gr,"source-type":Vr,"start-position-in-milliseconds":Hr,"store-front":qr,"timed-metadata":Wr,timestamp:Yr,type:ir,"user-agent":zr,"user-preference-audio-quality":Qr,"user-preference-playback-format":Jr,"user-token":Xr,"utc-offset-in-seconds":Zr};function _define_property$1t(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$z(e){for(var n=1;n{const h=((e,...n)=>_object_spread_props$m(_object_spread$z({},e,Object.assign({},...n)),{cache:{fields:Object.assign({},...n.map(e=>{var n,d;return null===(d=e)||void 0===d||null===(n=d.cache)||void 0===n?void 0:n.fields})),helpers:Object.assign({},...n.map(e=>{var n,d;return null===(d=e)||void 0===d||null===(n=d.cache)||void 0===n?void 0:n.helpers}))}}))("boolean"==typeof p?((e={},n)=>_object_spread$z({id:(ti++).toFixed(0),client:n,isAlexa:!1},e))({isAlexa:p},e):_object_spread_props$l(function(e){for(var n=1;n{var p;return null===(p=e)||void 0===p?void 0:p(n,d,h)}))};function _define_property$1r(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$x(e){for(var n=1;n{if(void 0===n)throw new Error("called without a play activity descriptor");const p=_object_spread_props$k(_object_spread$x({},n),{eventType:Ct.LYRIC_DISPLAY});return((e,...n)=>n.reduce((e,n)=>n(e),e))(_object_spread_props$k(_object_spread$x({},buildPlayActivityData$1(e,p,d,!1)),{"media-duration-in-milliseconds":0,"media-type":Dt.AUDIO,"start-position-in-milliseconds":0,"play-mode":{"auto-play-mode":0,"repeat-play-mode":0,"shuffle-play-mode":0}}),e=>exceptFields(e,"character-display-count","event-reason-hint-type","reco-data"))})(this,e,n)}constructor(e,n,d,p){super(e,n,d,p),_define_property$1p(this,"_machine",void 0),_define_property$1p(this,"startDescriptor",void 0),this._machine=v(s({id:"lpaf",initial:"idle",context:{initialShowTime:-1,duration:-1},states:{idle:{entry:o(e=>_object_spread_props$j(_object_spread$w({},e),{initialShowTime:void 0,duration:qt()-e.initialShowTime})),on:{play:"playing"}},playing:{entry:o(e=>_object_spread_props$j(_object_spread$w({},e),{initialShowTime:qt()})),on:{stop:"idle"}}}})).start()}}var ri;!function(e){e[e.ALEXA=13]="ALEXA"}(ri||(ri={}));const createCookieJar=e=>{switch(void 0===e&&(e="browser"),e){case"browser":return{get:getCookie,set:setCookie};case"memory":return((e={})=>({get(n){if(void 0!==n)return e[n]},set(n,d){e[n]=d}}))();default:return e}},empty=(e,n)=>write(e,n,[],"/",0),read=(e,n)=>{const d=e.get(n);if(void 0===d||""===d)return[];return ensureArray(JSON.parse(atob(d)))},write=(e,n,d,p,h,y)=>e.set(n,btoa(JSON.stringify(d)),p,h,y);function asyncGeneratorStep$_(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$_(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$_(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$_(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1o(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const{AUTO:ii}=xt;class PlayActivityBatchableSender{flush(){var e=this;return _async_to_generator$_((function*(){const n=read(e.jar,"amupaee");if(void 0!==n&&0!==n.length)try{yield e.sender.send(n),empty(e.jar,"amupaee")}catch({message:d}){throw new Error("flush: "+d)}}))()}send(n){var d=this;return _async_to_generator$_((function*(){if(d.mode===ii&&(Array.isArray(n)||n["end-reason-type"]!==e.PlayActivityEndReasonType.EXITED_APPLICATION))return d.sender.send(n);var p,h,y,_,m,g;p=d.jar,y=n,_="/",write(p,h="amupaee",[...read(p,h),y],_,m,g)}))()}constructor(e,n){_define_property$1o(this,"sender",void 0),_define_property$1o(this,"jar",void 0),_define_property$1o(this,"mode",void 0),this.sender=e,this.jar=n,this.mode=ii}}function asyncGeneratorStep$Z(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$Z(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$Z(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$Z(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1n(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class Timeline{get events(){return this._events}get first(){return this.at(0)}get keys(){return this._keys}get last(){return this.at(this.length-1)}get length(){return this._keys.length}get second(){return this.at(1)}at(e){if(e>this.length-1)throw new Error("Invalid timeline index");const n=this._keys[e];return this._events[n]}before(e){if("number"!=typeof e){const n=[];for(const e in this._events)hasOwn(this._events,e)&&n.push(this._events[e]);e=this._keys[n.indexOf(e)]}const n=this._keys.indexOf(e);if(-1===n)throw new Error("Key not found");if(n>0)return this._events[this._keys[n-1]]}drain(){const e=this._keys.map(e=>this._events[e]);return this.reset(),e}reset(){this._events={},this._keys=[]}pop(){var e=this;return _async_to_generator$Z((function*(){const n=e._keys.pop();if(void 0===n)return Promise.reject("TIMELINE IS EMPTY");const d=e._events[n];return delete e._events[n],Promise.resolve(d)}))()}add(e,n){var d=this;return _async_to_generator$Z((function*(){return d.push(e,n)}))()}push(e,n=Date.now()){var d=this;return _async_to_generator$Z((function*(){for(;-1!==d._keys.indexOf(n);)n++;return d._events[n]=e,d._keys.push(n),Promise.resolve(n)}))()}shift(){var e=this;return _async_to_generator$Z((function*(){const n=e._keys.shift();if(void 0===n)return Promise.reject("TIMELINE IS EMPTY");const d=e._events[n];return delete e._events[n],Promise.resolve(d)}))()}unshift(e,n=Date.now()){var d=this;return _async_to_generator$Z((function*(){for(;-1!==d._keys.indexOf(n);)n++;return d._events[n]=e,d._keys.unshift(n),Promise.resolve(n)}))()}constructor(){_define_property$1n(this,"_events",{}),_define_property$1n(this,"_keys",[])}}function asyncGeneratorStep$Y(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1m(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class TimedMetadataTracker{get currentValue(){return this._currentValue}clear(){this._currentValue=void 0}ping(e,n){var d,p=this;return(d=function*(){p.timedMetadataChanged(e)&&(void 0!==p._currentValue&&(yield p.client.pingTimedMetadata(n,p._currentValue)),p._currentValue=void 0===e?void 0:e.slice(0))},function(){var e=this,n=arguments;return new Promise((function(p,h){var y=d.apply(e,n);function _next(e){asyncGeneratorStep$Y(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$Y(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}timedMetadataChanged(e){const{_currentValue:n}=this;return void 0===n?void 0!==e:void 0===e||(e.length!==n.length||n.some((n,d)=>n!==e[d]))}constructor(e,n){_define_property$1m(this,"client",void 0),_define_property$1m(this,"_currentValue",void 0),this.client=e,this._currentValue=n}}const transitionEvent=e=>({type:e});function deriveTransitionEvent(n){if(n.itemType===Mt.TIMED_METADATA_PING)return!1;if(function(e){return e.eventType===Ct.PLAY_START}(n))return transitionEvent("play");if(function(e){if(e.eventType!==Ct.PLAY_END)return!1;if(void 0===e.endReasonType)throw new Error("PLAY_END activity descriptor requires an endReasonType value");return!0}(n)){const d=n.endReasonType;if(d===e.PlayActivityEndReasonType.SCRUB_BEGIN)return transitionEvent("scrubBegin");if(d===e.PlayActivityEndReasonType.SCRUB_END)return transitionEvent("scrubEnd");if(d===e.PlayActivityEndReasonType.EXITED_APPLICATION)return!1}return transitionEvent("stop")}function _define_property$1l(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$u(e){for(var n=1;n=0||(h[d]=e[d]);return h}(e,n);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(e);for(p=0;p=0||Object.prototype.propertyIsEnumerable.call(e,d)&&(h[d]=e[d])}return h}class MPAFStateMachine{get currentState(){return this.machineService.state}get currentStateName(){return this.currentState.value}matches(e){return this.machineService.state.matches(e)}transition(e,n){const d=deriveTransitionEvent(e);if(!1===d)return this.currentStateName;if(this.machineService.send(d),this.matches("error"))throw new Error(this.machineService.state.context.errorMessage);return this.currentStateName}constructor(){_define_property$1l(this,"machine",void 0),_define_property$1l(this,"machineService",void 0),this.machine=s({id:"mpaf",initial:"idle",context:{},states:{error:{},idle:{on:{play:"playing",stop:"idle",scrubBegin:{target:"scrubbing",actions:o(e=>_object_spread_props$h(_object_spread$u({},e),{stateBeforeScrub:"idle"}))},scrubEnd:{target:"error",actions:["clearStateBeforeScrub","setScrubEndError"]}}},playing:{on:{scrubBegin:{target:"scrubbing",actions:o(e=>_object_spread_props$h(_object_spread$u({},e),{stateBeforeScrub:"playing"}))},stop:"idle",scrubEnd:{target:"error",actions:["clearStateBeforeScrub","setScrubEndError"]}}},scrubbing:{on:{scrubEnd:[{target:"idle",cond:({stateBeforeScrub:e})=>"idle"===e,actions:["clearStateBeforeScrub"]},{target:"playing",actions:["clearStateBeforeScrub"]}]}}}},{actions:{clearStateBeforeScrub:o(e=>_object_without_properties$2(e,["stateBeforeScrub"])),setScrubEndError:o(e=>_object_spread_props$h(_object_spread$u({},e),{errorMessage:"The scrub() method was called with the SCRUB_END action without a previous SCRUB_START descriptor"}))}}),this.machineService=v(this.machine).start()}}function asyncGeneratorStep$X(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$X(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$X(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$X(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1k(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$t(e){for(var n=1;n(e=>{switch(typeof e){case"string":return e;case"object":return e.message?"string"!=typeof e.message?"":e.message:"";default:return""}})(e).includes("send() called without any data"))(h))throw h}const p=d.timeline.last;if(p&&p.endReasonType===e.PlayActivityEndReasonType.EXITED_APPLICATION)return d.timeline.pop()}))()}exit(n=0){var d=this;return _async_to_generator$X((function*(){yield d.stop(n,e.PlayActivityEndReasonType.EXITED_APPLICATION)}))()}pause(n=0){var d=this;return _async_to_generator$X((function*(){yield d.stop(n,e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED)}))()}pingTimedMetadata(n,d,p=this.previousDescriptor){var h=this;return _async_to_generator$X((function*(){yield h._addToTimeline(_object_spread_props$g(_object_spread$t({},p),{position:n,endReasonType:e.PlayActivityEndReasonType.NOT_APPLICABLE,eventType:Ct.PLAY_END,itemType:Mt.TIMED_METADATA_PING,timedMetadata:d}))}))()}play(e,n=0){var d=this;return _async_to_generator$X((function*(){const p=d.timeline.length>0;if(void 0===e){if(!p)return;const e=d.previousDescriptor;return e.eventType===Ct.PLAY_END&&delete e.endReasonType,void(yield d._addToTimeline(_object_spread_props$g(_object_spread$t({},d.sanitizePreviousDescriptor(e)),{eventType:Ct.PLAY_START})))}if(p){const e=d.previousDescriptor;if(d._machine.matches("playing")&&!(({id:e,reporting:n=!0,eventType:d})=>("-1"===e||!n)&&d===Ct.PLAY_END)(e))return Promise.reject(new Error("The play() method was called without a previous stop() or pause() call."))}yield d._addToTimeline(_object_spread_props$g(_object_spread$t({},e),{eventType:Ct.PLAY_START,position:n}))}))()}scrub(n=0,d=e.PlayActivityEndReasonType.SCRUB_BEGIN){var p=this;return _async_to_generator$X((function*(){yield p._addToTimeline(_object_spread_props$g(_object_spread$t({},p.sanitizePreviousDescriptor(p.previousDescriptor)),{eventType:Ct.PLAY_END,endReasonType:d,position:n}))}))()}skip(n,d=e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS,p=0){var h=this;return _async_to_generator$X((function*(){yield h.stop(p,d),yield h.play(n)}))()}stop(n=0,d=e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK){var p=this;return _async_to_generator$X((function*(){let h=p.previousDescriptor;if(h.endReasonType===e.PlayActivityEndReasonType.EXITED_APPLICATION&&(yield p.timeline.pop(),empty(p._cookieJar,"amupaee"),h=p.previousDescriptor),p._machine.matches("playing")){const e=_object_spread_props$g(_object_spread$t({},p.sanitizePreviousDescriptor(h)),{eventType:Ct.PLAY_END,endReasonType:d,position:n,timedMetadata:p._timedMetadataTracker.currentValue});yield p._addToTimeline(e)}}))()}build(e,n){if(void 0===e&&void 0===n&&Ue.warn("You are calling build() from a stateful PAF client. Please, use a stateless client or exit(), pause(), play(), scrub(), skip() or stop() instead."),void 0===e){if(0===this.timeline.length)throw new Error("build() called without a play activity descriptor");e=this.timeline.last}if(void 0===n){if(void 0===(n=this.timeline.before(e))&&e.eventType===Ct.PLAY_END)throw new Error("Cannot build() for PLAY_END descriptors without previous descriptors");n=null!=n&&n}return this._paf.build(_object_spread_props$g(_object_spread$t({},e),{timedMetadata:this.timedMetadata}),n)}addForPlayParams(e,n,d,p=0,h={}){var y=this;return _async_to_generator$X((function*(){yield y._addToTimeline(y.buildDescriptorForPlayParams(e,n,d,p,h))}))()}buildDescriptorForPlayParams(e,n,d,p=0,h={}){const y="stream"===e.format?Mt.STREAM:Mt.ITUNES_STORE_CONTENT;return normalizePlayActivityDescriptor(_object_spread$t(_object_spread_props$g(_object_spread$t({},e),{container:d,duration:p,eventType:n,itemType:y}),h))}flush(){return this.sender.flush()}_addToTimeline(e){var n=this;return _async_to_generator$X((function*(){e=_object_spread_props$g(_object_spread$t({},e),{timestamp:Date.now()});const d=n.timeline.length>0&&n.timeline.last;yield n.timeline.add(e);const p=n.build(e,d);yield n.send(p,e)}))()}get previousDescriptor(){const e=this.timeline.last;if(void 0===e)throw new Error("A method was called without a previous descriptor");return exceptFields(e,"timestamp")}buildForPlayParams(e,n,d,p=0,h={},y=!1){return Ue.warn("You are using buildsForPlayParams from a stateful PlayActivity. Please, use StatelessPlayActivity instead"),this._paf.buildForPlayParams(e,n,d,p,h,y)}send(e,n){e=ensureArray(e);const d=normalizePlayActivityDescriptor(n);return e.forEach(e=>this._machine.transition(d,e)),this.sender.send(e)}sanitizePreviousDescriptor(e){let n=deepClone(e);return n.itemType===Mt.TIMED_METADATA_PING&&(n=exceptFields(n,"itemType")),n}constructor(e,n,d,p){var h;_define_property$1k(this,"sender",void 0),_define_property$1k(this,"timeline",new Timeline),_define_property$1k(this,"_cookieJar",void 0),_define_property$1k(this,"_paf",void 0),_define_property$1k(this,"_machine",void 0),_define_property$1k(this,"_timedMetadataTracker",void 0),this._paf=new StatelessPlayActivity(e,n,d,p),this._cookieJar=createCookieJar(null===(h=p)||void 0===h?void 0:h.cookieJar),this.sender=new PlayActivityBatchableSender(this._paf.sender,this._cookieJar),this._machine=new MPAFStateMachine,this._timedMetadataTracker=new TimedMetadataTracker(this)}}const Bind=()=>(e,n,d)=>{if(void 0===d||"function"!=typeof d.value)throw new TypeError(`Only methods can be decorated with @Bind, but ${n} is not a method.`);return{configurable:!0,get(){const e=d.value.bind(this);return Object.defineProperty(this,n,{value:e,configurable:!0,writable:!0}),e}}},ni=["exitFullscreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen"],oi=["fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement"],ai=["requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen"],noop=()=>Promise.resolve(),si=(e=>{if(void 0===e)return noop;const n=ni.find(n=>"function"==typeof e.prototype[n]);return"string"!=typeof n?noop:(e=self.document)=>{var d,p;return null===(p=e)||void 0===p||null===(d=p[n])||void 0===d?void 0:d.call(p)}})(HTMLDocument),ci=(e=>{if(void 0===e)return()=>!1;const n=oi.find(n=>n in e.prototype);return"string"!=typeof n?()=>!1:(e=self.document)=>!!e[n]})(HTMLDocument),di=(e=>{if(void 0===e)return noop;const n=ai.find(n=>"function"==typeof e.prototype[n]);return"string"!=typeof n?noop:e=>{var d;return null===(d=e)||void 0===d?void 0:d[n]()}})(HTMLElement);function asyncGeneratorStep$W(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$W(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$W(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$W(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}class Fullscreen{exit(){var e=this;return _async_to_generator$W((function*(){if(e.isInFullscreen())return e.stopDispatchingEvents(()=>e.exitFullscreen())}))()}request(e){var n=this;return _async_to_generator$W((function*(){if(void 0!==e)return n.stopDispatchingEvents(()=>n.requestFullscreenForElement(e))}))()}stopDispatchingEvents(e){var n=this;return _async_to_generator$W((function*(){return n.player.windowHandlers.stopListeningToVisibilityChanges(e)}))()}exitFullscreen(){return si()}isInFullscreen(){return ci()}requestFullscreenForElement(e){return di(e)}constructor(e){var n,d,p;p=void 0,(d="player")in(n=this)?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p,this.player=e}}function asyncGeneratorStep$V(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1i(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class UnsupportedSeeker{start(){je.warn("seeker.start is not supported in this playback method")}end(){je.warn("seeker.end is not supported in this playback method")}seekToTime(e){return je.warn("seekToTime is not supported in this playback method"),Promise.resolve()}constructor(){_define_property$1i(this,"ended",!1)}}class PlayerSeeker{get ended(){return this._ended}get isEngagedInPlayback(){return this._player.isEngagedInPlayback}get stillPlayingSameItem(){return this._currentItem===this._player.nowPlayingItem}end(){je.debug("seeker: end"),-1!==this._startTime?this._ended?je.warn("seeker: Cannot end the same seeker twice."):(this.dispatchStartEvent(),this.dispatchEndEvent()):je.warn("seeker: Cannot end a seeker before starting it.")}seekToTime(e){var n,d=this;return(n=function*(){if(je.debug("seeker: seekToTime",e),!d.ended)return d.stillPlayingSameItem||(d._currentItem=d._player.nowPlayingItem,d._startTime=0),d._lastSeekedTime=e,d._player.seekToTime(e);je.warn("seeker: Cannot seek once the seeker has ended")},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$V(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$V(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}start(){je.debug("seeker: start"),-1===this._startTime?(this._currentItem=this._player.nowPlayingItem,this._startTime=this._player.currentPlaybackTime,this._lastSeekedTime=this._startTime):je.warn("seeker: Cannot start same seeker twice")}dispatch(e,n){this.isEngagedInPlayback?(je.debug("seeker: dispatch",e),this._player.dispatch(e,n)):je.debug("seeker: do not dispatch because isEngagedInPlayback",this.isEngagedInPlayback)}dispatchStartEvent(){this.stillPlayingSameItem||(this._startTime=0,this._lastSeekedTime=0),this.dispatch(_t.playbackScrub,{item:this._currentItem,position:this._startTime})}dispatchEndEvent(){this._ended=!0,this.dispatch(_t.playbackScrub,{item:this._currentItem,position:this._lastSeekedTime,endReasonType:e.PlayActivityEndReasonType.SCRUB_END})}constructor(e){_define_property$1i(this,"_ended",!1),_define_property$1i(this,"_lastSeekedTime",-1),_define_property$1i(this,"_player",void 0),_define_property$1i(this,"_startTime",-1),_define_property$1i(this,"_currentItem",void 0),je.debug("seeker: new"),this._player=e}}function asyncGeneratorStep$U(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$1h(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$q(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$q(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const{visibilityChangeEvent:li,visibilityState:ui,unloadEventName:pi}=(()=>{let e="visibilitychange",n="visibilityState";void 0!==document.mozHidden?(e="mozvisibilitychange",n="mozVisibilityState"):void 0!==document.msHidden?(e="msvisibilitychange",n="msVisibilityState"):document.webkitHidden&&(e="webkitvisibilitychange",n="webkitVisibilityState");return{visibilityChangeEvent:e,visibilityState:n,unloadEventName:"onpagehide"in window?"pagehide":"unload"}})();class WindowHandlers{activate(e=self,n=self.document){n.addEventListener(li,this.visibilityChanged),e.addEventListener("storage",this.storage,!1),e.addEventListener(pi,this.windowUnloaded)}deactivate(){document.removeEventListener(li,this.visibilityChanged),window.removeEventListener("storage",this.storage),window.addEventListener(pi,this.windowUnloaded)}stopListeningToVisibilityChanges(e){var n,d=this;return(n=function*(){d.dispatchVisibilityChanges=!1;const n=yield e();return d.dispatchVisibilityChanges=!0,n},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$U(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$U(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}dispatch(e,n={}){this.player.dispatch(e,n)}storage({key:e,newValue:n}){e===ze&&this.player.tsidChanged(n)}visibilityChanged(e){const n=e.target[ui];je.info("dc visibilityState",n,e,ci()),this.runtimeEnvironment.os.isIOS&&this.dispatchVisibilityChanges&&("hidden"===n?this.dispatch(_t.playerExit,{item:this.player.nowPlayingItem,position:this.player.currentPlaybackTime}):"visible"===n&&this.dispatch(_t.playerActivate))}windowUnloaded(){this.player.isPlaying&&this.dispatch(_t.playerExit,{item:this.player.nowPlayingItem,position:this.player.currentPlaybackTime})}constructor(e,n){_define_property$1h(this,"player",void 0),_define_property$1h(this,"runtimeEnvironment",void 0),_define_property$1h(this,"dispatchVisibilityChanges",!0),this.player=e,this.runtimeEnvironment=n}}function asyncGeneratorStep$T(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$T(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$T(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$T(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1g(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$s(e){for(var n=1;n{this.playbackTargetAvailable="available"===e.availability}),e.addEventListener("webkitcurrentplaybacktargetiswirelesschanged",e=>{this.playbackTargetIsWireless=e.target===this._targetElement&&!this.playbackTargetIsWireless})),Ri.forEach(n=>e.addEventListener(n,this)),this._dispatcher.publish(_t.playerActivate)}removeEventHandlers(){Ri.forEach(e=>this._targetElement.removeEventListener(e,this)),this.windowHandlers.deactivate()}isPaused(){return this._paused}exitFullscreen(){return this.fullscreen.exit()}requestFullscreen(e){return this.fullscreen.request(e)}newSeeker(){var e;return null===(e=this._seeker)||void 0===e||e.end(),this._seeker=new PlayerSeeker(this),this._seeker}stop(e){var n=this;return _async_to_generator$T((function*(){je.debug("BasePlayer.stop",e),yield n._waitForPendingPlay(),n.isPlaying&&(je.debug("BasePlayer.play dispatching playbackStop"),n.dispatch(_t.playbackStop,_object_spread$s({item:n.nowPlayingItem,position:n.currentPlaybackTime,startPosition:n.initialBufferPosition,playingDate:n.currentPlayingDate,startPlayingDate:n.initialPlayingDate},e))),yield n.stopMediaAndCleanup()}))()}stopMediaAndCleanup(e=Ni){var n=this;return _async_to_generator$T((function*(){je.debug("stopMediaAndCleanup"),yield n._stopMediaElement(),n._stopped=!0,n._paused=!1;const d=n.nowPlayingItem;n.nowPlayingItem=void 0,n.initialBufferPosition=void 0,n.initialPlayingDate=void 0,n.setPlaybackState(e,d)}))()}onPlaybackError(n,d){this.resetDeferredPlay(),this.stop({endReasonType:e.PlayActivityEndReasonType.FAILED_TO_LOAD,userInitiated:!1})}calculatePlaybackProgress(){const e=Math.round(100*(this.currentPlaybackTime/this.currentPlaybackDuration||0))/100;this._currentPlaybackProgress!==e&&(this._currentPlaybackProgress=e,this._dispatcher.publish(Pi,{progress:this._currentPlaybackProgress}))}calculateBufferedProgress(e){const n=Math.round(e/this.currentPlaybackDuration*100);this._currentBufferedProgress!==n&&(this._currentBufferedProgress=n,this._dispatcher.publish(hi,{progress:n}))}destroy(){var e,n;if(je.debug("BasePlayer.destroy"),this._isDestroyed=!0,this._dispatcher.unsubscribe(fi,this.onPlaybackError),!this.hasMediaElement)return;const d=this._targetElement;null===(e=this.extension)||void 0===e||e.destroy(d),this.removeEventHandlers(),this.cleanupElement(),null===(n=d.parentNode)||void 0===n||n.removeChild(d)}handleEvent(n){var d=this;return _async_to_generator$T((function*(){"timeupdate"!==n.type&&je.debug("BasePlayer.handleEvent: ",n.type,n,d.isPaused(),d._stopped);const{nowPlayingItem:p}=d;switch(n.timestamp=Date.now(),n.type){case"canplay":d._dispatcher.publish(yi,n),d._playbackState!==ji||d._targetElement.paused||d.setPlaybackState(xi,p);break;case"durationchange":d._targetElement.duration!==1/0&&(n.duration=d.currentPlaybackDuration,d._dispatcher.publish(Si,n),d.calculatePlaybackProgress());break;case"ended":{var h,y;if(je.debug('media element "ended" event'),null===(h=d.nowPlayingItem)||void 0===h?void 0:h.isLinearStream)return void je.warn("ignoring ended event for linear stream",n);if(d.isElementCleaned()){je.debug('media element already cleaned, ignoring "ended" event');break}const p=d.nowPlayingItem,_=(null===(y=p)||void 0===y?void 0:y.playbackDuration)?p.playbackDuration/1e3:d.currentPlaybackTime,m=d.currentPlayingDate;yield d.stopMediaAndCleanup(Ci),d.dispatch(_t.playbackStop,{item:p,position:_,playingDate:m,endReasonType:e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK});break}case"error":je.error("Playback Error",n,d._targetElement.error),d._dispatcher.publish(fi,new MKError(MKError.Reason.MEDIA_PLAYBACK,"Playback Error"));break;case"loadedmetadata":d._dispatcher.publish(gi,n);break;case"loadstart":d.setPlaybackState(Mi,p);break;case"pause":d.setPlaybackState(d._stopped?Ni:Di,p);break;case"play":case"playing":d._paused=!1,d._stopped=!1,d.isPrimaryPlayer=!0,d.setPlaybackState(xi,p);break;case"progress":{const e=d._targetElement.buffered;d.handleBufferStart(),1===e.length&&0===e.start(0)&&d.calculateBufferedProgress(e.end(0));break}case"ratechange":d._dispatcher.publish(Ti,n);break;case"seeked":d._stopped?d.setPlaybackState(Ni,p):d._paused?d.setPlaybackState(Di,p):d.playbackState!==Ci&&d.setPlaybackState(xi,p);break;case"seeking":d.playbackState===Di?d._paused=!0:d.playbackState===Ni&&(d._stopped=!0),d.playbackState!==Ci&&d.setPlaybackState(Li,p);break;case"timeupdate":{d._dispatcher.publish(Oi,{currentPlaybackDuration:d.currentPlaybackDuration,currentPlaybackTime:d.currentPlaybackTime,currentPlaybackTimeRemaining:d.currentPlaybackTimeRemaining}),d.calculatePlaybackProgress();const e=d._buffer;e&&(e.currentTime=d.currentPlaybackTime);break}case"volumechange":d._dispatcher.publish(Ai,n);break;case"waiting":d.setPlaybackState(ji,p)}}))()}handleBufferStart(){const{_targetElement:e}=this;void 0!==this.initialBufferPosition||e.paused||0===e.buffered.length||(this.initialBufferPosition=e.buffered.start(0),this.initialPlayingDate=this.currentPlayingDate,je.debug("BasePlayer.handleBufferStart: setting initial buffer position ",this.initialBufferPosition))}pause(e={}){var n=this;return _async_to_generator$T((function*(){yield n._waitForPendingPlay(),n.isPlaying&&(yield n._pauseMedia(),n._paused=!0,n.dispatch(_t.playbackPause,_object_spread$s({item:n.nowPlayingItem,position:n.currentPlaybackTime,playingDate:n.currentPlayingDate},e)))}))()}play(e=!0){var n=this;return _async_to_generator$T((function*(){if(je.debug("BasePlayer.play()"),n.nowPlayingItem)try{yield n._playMedia(),je.debug("BasePlayer.play dispatching playbackPlay"),n.dispatch(_t.playbackPlay,{userInitiated:e,item:n.nowPlayingItem,position:n.currentPlaybackTime,playingDate:n.currentPlayingDate})}catch(Ut){var d;if(Ut&&$i.includes(Ut.name)&&je.error("BasePlayer.play() rejected due to",Ut),"NotAllowedError"===(null===(d=Ut)||void 0===d?void 0:d.name))throw new MKError(MKError.Reason.USER_INTERACTION_REQUIRED,"Playback of media content requires user interaction first and cannot be automatically started on page load.")}}))()}preload(){return this._loadMedia()}showPlaybackTargetPicker(){this.playbackTargetAvailable&&this._targetElement.webkitShowPlaybackTargetPicker()}dispatch(e,n){void 0===n.item&&(n.item=this.nowPlayingItem),hasOwn(n,"isPlaying")||(n.isPlaying=this.isPlaying),this._dispatcher.publish(e,n)}tsidChanged(e){void 0!==e&&""!==e&&(this.isPrimaryPlayer=e===this._serial)}_waitForPendingPlay(){var e=this;return _async_to_generator$T((function*(){e._deferredPlay&&(yield e._deferredPlay.promise,e._deferredPlay=void 0)}))()}_loadMedia(){var e=this;return _async_to_generator$T((function*(){je.debug("BasePlayer._loadMedia",e._targetElement),e._targetElement.load()}))()}_pauseMedia(){var e=this;return _async_to_generator$T((function*(){e._targetElement.pause()}))()}_playAssetURL(e,n){var d=this;return _async_to_generator$T((function*(){je.debug("BasePlayer._playAssetURL",e),d._targetElement.src=e;const p=d._loadMedia();if(n)return je.debug("BasePlayer.loadOnly"),void(yield p);yield d._playMedia()}))()}playItemFromUnencryptedSource(e,n,d){var p=this;return _async_to_generator$T((function*(){var h;return(null===(h=d)||void 0===h?void 0:h.startTime)&&(e+="#t="+d.startTime),n||p.startPlaybackSequence(),yield p._playAssetURL(e,n),p.finishPlaybackSequence()}))()}_playMedia(){var e=this;return _async_to_generator$T((function*(){je.debug("BasePlayer._playMedia",e._targetElement,e.extension);try{yield e._targetElement.play(),e._playbackDidStart=!0}catch(Q){throw je.error("BasePlayer._playMedia: targetElement.play() rejected",Q),Q}}))()}_setTargetElementTitle(e){this.hasMediaElement&&(this._targetElement.title=e)}resetDeferredPlay(){this._deferredPlay=void 0}_stopMediaElement(){var e=this;return _async_to_generator$T((function*(){e.hasMediaElement&&(e._targetElement.pause(),e.cleanupElement())}))()}cleanupElement(){const e=this._targetElement;e&&!this.isElementCleaned()&&(e.currentTime=0,e.removeAttribute("src"),e.removeAttribute("title"))}isElementCleaned(){const e=this._targetElement;return!e||0===e.currentTime&&""===e.src&&""===e.title}finishPlaybackSequence(){var e;je.debug("BasePlayer.finishPlaybackSequence",this._deferredPlay);const n=null===(e=this._deferredPlay)||void 0===e?void 0:e.resolve(void 0);return this._deferredPlay=void 0,n}startPlaybackSequence(){return je.debug("BasePlayer.startPlaybackSequence",this._deferredPlay),this._deferredPlay&&(je.warn("Previous playback sequence not cleared"),this.finishPlaybackSequence()),this._deferredPlay=function(){let e,n;return{promise:new Promise((function(d,p){e=d,n=p})),resolve(n){var d;null===(d=e)||void 0===d||d(n)},reject(e){var d;null===(d=n)||void 0===d||d(e)}}}(),this._deferredPlay.promise}constructor(n){var d;_define_property$1g(this,"privateEnabled",!1),_define_property$1g(this,"siriInitiated",!1),_define_property$1g(this,"windowHandlers",void 0),_define_property$1g(this,"_dispatcher",void 0),_define_property$1g(this,"_buffer",void 0),_define_property$1g(this,"services",void 0),_define_property$1g(this,"_context",void 0),_define_property$1g(this,"_currentBufferedProgress",0),_define_property$1g(this,"initialBufferPosition",void 0),_define_property$1g(this,"initialPlayingDate",void 0),_define_property$1g(this,"_paused",!1),_define_property$1g(this,"_playbackState",e.PlaybackStates.none),_define_property$1g(this,"_stopped",!1),_define_property$1g(this,"_playbackDidStart",!1),_define_property$1g(this,"_nowPlayingItem",void 0),_define_property$1g(this,"_bitrateCalculator",void 0),_define_property$1g(this,"_currentPlaybackProgress",0),_define_property$1g(this,"_isPrimaryPlayer",!0),_define_property$1g(this,"_playbackTargetAvailable",!1),_define_property$1g(this,"_playbackTargetIsWireless",!1),_define_property$1g(this,"_seeker",void 0),_define_property$1g(this,"_serial",Date.now().toString()),_define_property$1g(this,"_timing",void 0),_define_property$1g(this,"fullscreen",void 0),_define_property$1g(this,"_isDestroyed",!1),_define_property$1g(this,"_deferredPlay",void 0),this.services=n.services,this._dispatcher=n.services.dispatcher,this._timing=n.services.timing,this._context=n.context||{},this.privateEnabled=n.privateEnabled||!1,this.siriInitiated=n.siriInitiated||!1,this._bitrateCalculator=n.services.bitrateCalculator,this.windowHandlers=new WindowHandlers(this,n.services.runtime),this.fullscreen=new Fullscreen(this),null===(d=getLocalStorage())||void 0===d||d.setItem(ze,this._serial),this._dispatcher.subscribe(fi,this.onPlaybackError)}}function generateAssetUrl(e,n){if("Preview"===e.type&&isStringNotEmpty(e.previewURL))return e.previewURL;let d=e.assetURL;if(!d)throw new Error("Cannot generate asset URL");return n&&(n.startOver&&(d=addQueryParamsToURL(d,{startOver:!0})),n.bingeWatching&&(d=addQueryParamsToURL(d,{bingeWatching:!0}))),e.supportsLinearScrubbing&&(d=addQueryParamsToURL(d,{linearScrubbingSupported:!0})),d.match(/xapsub=accepts-css/)||(d=addQueryParamsToURL(d,{xapsub:"accepts-css"})),d}function restoreSelectedTrack(e,n){je.debug("MEDIA_TRACKS restoreSelectedTrack");const d=e.getPersistedTrack(),p=e.fields,h=n.currentTrack;if(!d)return void je.debug("MEDIA_TRACKS no persisted track");if(h&&trackEquals(h,d,p))return void je.debug("MEDIA_TRACKS persisted track is equal to current track, not setting");const y=n.tracks;if(y&&y.length)for(let _=0;_=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$p("design:type",Function),_ts_metadata$p("design:paramtypes",[String,void 0===MKError?Object:MKError])],BasePlayer.prototype,"onPlaybackError",null);class TrackPersistence{getPersistedTrack(){var e;if(!hasLocalStorage())return!1;const n=(null===(e=getLocalStorage())||void 0===e?void 0:e.getItem(this.storageKey))||"";try{return JSON.parse(n)}catch(Ut){return je.warn("MEDIA_TRACK could not parse persisted value "+n),!1}}setPersistedTrack(e){var n,d;if(!hasLocalStorage())return;if(je.debug(`MEDIA_TRACK setPersistedTrack ${e.language},${e.label},${e.kind} with keys ${this.fields}`),!e)return void(null===(d=getLocalStorage())||void 0===d||d.setItem(this.storageKey,""));const p=JSON.stringify(this.extractFieldValuesFromTrack(e));je.debug("MEDIA_TRACK Extracted values "+p),null===(n=getLocalStorage())||void 0===n||n.setItem(this.storageKey,p)}extractFieldValuesFromTrack(e){const n={};return this.fields.forEach(d=>{const p=e[d];null==p&&je.warn(`MEDIA_TRACK No value for field ${d} on track ${JSON.stringify(e)}`),n[d]=p}),n}constructor(e,n){_define_property$1f(this,"storageKey",void 0),_define_property$1f(this,"fields",void 0),this.storageKey=e,this.fields=n}}var Ui;!function(e){e.Home="com.apple.amp.appletv.home-team-radio",e.Away="com.apple.amp.appletv.away-team-radio"}(Ui||(Ui={}));class TrackManagerStub{get isDestroyed(){return this._isDestroyed}get currentTrack(){return{}}set currentTrack(e){}get tracks(){return[]}destroy(){this._isDestroyed=!0}restoreSelectedTrack(){}constructor(){var e,n,d;d=!1,(n="_isDestroyed")in(e=this)?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d}}function _define_property$1d(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const{audioTrackAdded:Bi,audioTrackChanged:Fi,audioTrackRemoved:Ki}=vt,{audioTracksSwitched:Gi,audioTracksUpdated:Vi}=Je;class AudioTrackManager{get isDestroyed(){return this._isDestroyed}get currentTrack(){return this.tracks.find(e=>e.enabled)}set currentTrack(e){e&&(je.debug("MEDIA_TRACK Setting audio track "+e.label),this.extensionTracks?(je.debug(`MEDIA_TRACK Setting track on extension ${e.id}-${e.label}`),this.extensionTracks.audioTrack=e):(je.debug("MEDIA_TRACK disabling all audio tracks"),Array.from(this.mediaElement.audioTracks).forEach(n=>{n!==e&&(n.enabled=!1)}),je.debug("MEDIA_TRACK enabling",e),e.enabled=!0),function(e){return void 0!==e.characteristics&&e.characteristics.includes("com.apple.amp.appletv.home-team-radio")}(e)||function(e){return void 0!==e.characteristics&&e.characteristics.includes("com.apple.amp.appletv.away-team-radio")}(e)||this.trackPersistence.setPersistedTrack(e))}get tracks(){return this.extensionTracks?this._extensionTracks||this.extensionTracks.audioTracks||[]:Array.from(this.mediaElement.audioTracks)}destroy(){if(this._isDestroyed=!0,this.extensionTracks){const e=this.extensionTracks;e.removeEventListener(Vi,this.onExtensionAudioTracksUpdated),e.removeEventListener(Gi,this.onExtensionAudioTrackSwitched)}else{if(!this.mediaElement.audioTracks)return;this.mediaElement.audioTracks.removeEventListener("addtrack",this.onAudioTrackAdded),this.mediaElement.audioTracks.removeEventListener("change",this.onAudioTrackChanged),this.mediaElement.audioTracks.removeEventListener("removetrack",this.onAudioTrackRemoved)}}restoreSelectedTrack(){return restoreSelectedTrack(this.trackPersistence,this)}onExtensionAudioTracksUpdated(e){je.debug("MEDIA_TRACK Extension audio tracks updated "+JSON.stringify(e)),this._extensionTracks=e,this.restoreSelectedTrack(),this.dispatcher.publish(Bi,e)}onExtensionAudioTrackSwitched(e){if(je.debug("MEDIA_TRACK Extension audio track switched "+JSON.stringify(e)),this._extensionTracks){const preserveSelectedTrack=n=>{n.enabled=e.selectedId===n.id};this._extensionTracks.forEach(preserveSelectedTrack)}this.dispatcher.publish(Fi,e)}onAudioTrackAdded(e){!function(e,n,d){const p=n.getPersistedTrack();p&&trackEquals(e,p,n.fields)&&(je.debug("MEDIA_TRACK onTrackAdded with track that matches persisted track "+e.label),d.currentTrack=e)}(e.track,this.trackPersistence,this),this.dispatcher.publish(Bi,e)}onAudioTrackChanged(e){this.dispatcher.publish(Fi,e)}onAudioTrackRemoved(e){this.dispatcher.publish(Ki,e)}constructor(e,n,d){if(_define_property$1d(this,"mediaElement",void 0),_define_property$1d(this,"dispatcher",void 0),_define_property$1d(this,"extensionTracks",void 0),_define_property$1d(this,"_extensionTracks",void 0),_define_property$1d(this,"trackPersistence",void 0),_define_property$1d(this,"_isDestroyed",void 0),this.mediaElement=e,this.dispatcher=n,this.extensionTracks=d,this._extensionTracks=[],this.trackPersistence=new TrackPersistence("mk-audio-track",["label","language","kind"]),this._isDestroyed=!1,this.extensionTracks){je.debug("MEDIA_TRACK Initializing audio track manager for hls track events"),this.onExtensionAudioTracksUpdated=this.onExtensionAudioTracksUpdated.bind(this),this.onExtensionAudioTrackSwitched=this.onExtensionAudioTrackSwitched.bind(this);const e=this.extensionTracks;e.addEventListener(Vi,this.onExtensionAudioTracksUpdated),e.addEventListener(Gi,this.onExtensionAudioTrackSwitched)}else{if(!e.audioTracks)return;je.debug("MEDIA_TRACK Initializing audio track manager for native track events"),this.onAudioTrackAdded=this.onAudioTrackAdded.bind(this),this.onAudioTrackChanged=this.onAudioTrackChanged.bind(this),this.onAudioTrackRemoved=this.onAudioTrackRemoved.bind(this),e.audioTracks.addEventListener("addtrack",this.onAudioTrackAdded),e.audioTracks.addEventListener("change",this.onAudioTrackChanged),e.audioTracks.addEventListener("removetrack",this.onAudioTrackRemoved)}}}const Hi=[],qi=[];function nextAvailableAudioElement(){let e=qi.pop();return e?je.debug(`dom-helpers: retrieving audio tag, ${qi.length} remain`):(je.debug("dom-helpers: no available audio tags, creating one"),e=document.createElement("audio")),e}function deferPlayback(){fillAvailableElements("audio",qi),fillAvailableElements("video",Hi),je.debug(`dom-helpers: defer playback called. There are ${Hi.length} available video elements and ${qi.length} available audio elements.`)}function fillAvailableElements(e,n){let d=100-n.length;for(;d>0;){const p=document.createElement(e);p.load(),n.push(p),d--}}const Wi=BooleanDevFlag.register("mk-load-manifest-once"),shouldLoadManifestOnce=()=>!Wi.configured||Wi.enabled;var Yi="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n?n:"undefined"!=typeof self?self:{};function unwrapExports(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function createCommonjsModule(e,n){return e(n={exports:{}},n.exports),n.exports}var zi=createCommonjsModule((function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.isValidScrollSetting=n.isValidPositionAlignSetting=n.isValidLineAlignSetting=n.isValidLineAndPositionSetting=n.isValidDirectionSetting=n.isValidAlignSetting=n.isValidPercentValue=void 0,n.isValidPercentValue=function(e){return"number"==typeof e&&e>=0&&e<=100},n.isValidAlignSetting=function(e){return"string"==typeof e&&["start","center","end","left","right","middle"].includes(e)},n.isValidDirectionSetting=function(e){return"string"==typeof e&&["","rl","lr"].includes(e)},n.isValidLineAndPositionSetting=function(e){return"number"==typeof e||"auto"===e},n.isValidLineAlignSetting=function(e){return"string"==typeof e&&["start","center","end"].includes(e)},n.isValidPositionAlignSetting=function(e){return"string"==typeof e&&["line-left","center","line-right","auto","left","start","middle","end","right"].includes(e)},n.isValidScrollSetting=function(e){return["","up"].includes(e)}}));unwrapExports(zi),zi.isValidScrollSetting,zi.isValidPositionAlignSetting,zi.isValidLineAlignSetting,zi.isValidLineAndPositionSetting,zi.isValidDirectionSetting,zi.isValidAlignSetting,zi.isValidPercentValue;var Qi=createCommonjsModule((function(e,n){Object.defineProperty(n,"__esModule",{value:!0});const d={"&":"&","<":"<",">":">","‎":"‎","‏":"‏"," ":" "},p={c:"span",i:"i",b:"b",u:"u",ruby:"ruby",rt:"rt",v:"span",lang:"span"},h={v:"title",lang:"lang"},y={rt:"ruby"},_={"text-combine-upright":"-webkit-text-combine:horizontal; text-orientation: mixed;"};class ParserUtility{static parseTimeStamp(e){function computeSeconds(e){const[n,d,p,h]=e.map(e=>e?parseInt(""+e):0);return 3600*n+60*d+p+h/1e3}const n=/^(\d+):(\d{2})(:\d{2})?\.(\d{3})/.exec(e);return n?n[3]?computeSeconds([n[1],n[2],n[3].substring(1),n[4]]):parseInt(n[1])>59?computeSeconds([n[1],n[2],null,n[4]]):computeSeconds([null,n[1],n[2],n[4]]):null}static parseContent(e,n,m){let g=n.text;function nextToken(){if(!g)return null;const e=/^([^<]*)(<[^>]+>?)?/.exec(g);return n=e[1]?e[1]:e[2],g=g.substr(n.length),n;var n}function unescape1(e){return d[e]}function unescape(e){return e.replace(/&(amp|lt|gt|lrm|rlm|nbsp);/g,unescape1)}function shouldAdd(e,n){return!y[n.dataset.localName]||y[n.dataset.localName]===e.dataset.localName}function createElement(n,d,y){const g=p[n];if(!g)return null;const b=e.document.createElement(g);b.dataset.localName=g;const S=h[n];if(S&&y&&(b[S]=y.trim()),d)if(m[d]){const e=function(e){let n="";for(const d in e)n+=_[d]?_[d]:d+":"+e[d]+";";return n}(m[d]);b.setAttribute("style",e)}else console.info(`WebVTT: parseContent: Style referenced, but no style defined for '${d}'!`);return b}const b=e.document.createElement("div"),S=[];let P,E,T=b;for(;null!==(P=nextToken());)if("<"!==P[0])T.appendChild(e.document.createTextNode(unescape(P)));else{if("/"===P[1]){S.length&&S[S.length-1]===P.substr(2).replace(">","")&&(S.pop(),T=T.parentNode);continue}const n=ParserUtility.parseTimeStamp(P.substr(1,P.length-2));let d;if(n){d=e.document.createProcessingInstruction("timestamp",n.toString()),T.appendChild(d);continue}if(E=/^<([^.\s/0-9>]+)(\.[^\s\\>]+)?([^>\\]+)?(\\?)>?$/.exec(P),!E)continue;if(d=createElement(E[1],E[2],E[3]),!d)continue;if(!shouldAdd(T,d))continue;E[2],S.push(E[1]),T.appendChild(d),T=d}return b}}n.default=ParserUtility}));unwrapExports(Qi);var Ji=createCommonjsModule((function(e,n){var d=Yi&&Yi.__decorate||function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_};Object.defineProperty(n,"__esModule",{value:!0}),n.VTTCue=void 0;let p=class{get id(){return this._id}set id(e){this._id=""+e}get pauseOnExit(){return this._pauseOnExit}set pauseOnExit(e){this._pauseOnExit=!!e}get startTime(){return this._startTime}set startTime(e){if("number"!=typeof e)throw new TypeError("Start time must be set to a number: "+e);this._startTime=e,this.hasBeenReset=!0}get endTime(){return this._endTime}set endTime(e){if("number"!=typeof e)throw new TypeError("End time must be set to a number: "+e);this._endTime=e,this.hasBeenReset=!0}get text(){return this._text}set text(e){this._text=""+e,this.hasBeenReset=!0}get region(){return this._region}set region(e){this._region=e,this.hasBeenReset=!0}get vertical(){return this._vertical}set vertical(e){if(!zi.isValidDirectionSetting(e))throw new SyntaxError("An invalid or illegal string was specified for vertical: "+e);this._vertical=e,this.hasBeenReset=!0}get snapToLines(){return this._snapToLines}set snapToLines(e){this._snapToLines=!!e,this.hasBeenReset=!0}get line(){return this._line}set line(e){if(!zi.isValidLineAndPositionSetting(e))throw new SyntaxError("An invalid number or illegal string was specified for line: "+e);this._line=e,this.hasBeenReset=!0}get lineAlign(){return this._lineAlign}set lineAlign(e){if(!zi.isValidLineAlignSetting(e))throw new SyntaxError("An invalid or illegal string was specified for lineAlign: "+e);this._lineAlign=e,this.hasBeenReset=!0}get position(){return this._position}set position(e){if(!zi.isValidLineAndPositionSetting(e))throw new Error("Position must be between 0 and 100 or auto: "+e);this._position=e,this.hasBeenReset=!0}get positionAlign(){return this._positionAlign}set positionAlign(e){if(!zi.isValidPositionAlignSetting(e))throw new SyntaxError("An invalid or illegal string was specified for positionAlign: "+e);this._positionAlign=e,this.hasBeenReset=!0}get size(){return this._size}set size(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100: "+e);this._size=e,this.hasBeenReset=!0}get align(){return this._align}set align(e){if(!zi.isValidAlignSetting(e))throw new SyntaxError("An invalid or illegal string was specified for align: "+e);this._align=e,this.hasBeenReset=!0}getCueAsHTML(){return Qi.default.parseContent(window,this,{})}static create(e){if(!e.hasOwnProperty("startTime")||!e.hasOwnProperty("endTime")||!e.hasOwnProperty("text"))throw new Error("You must at least have start time, end time, and text.");const n=new this(e.startTime,e.endTime,e.text);return Object.keys(e).forEach(d=>{n.hasOwnProperty(d)&&(n[d]=e[d])}),n}static fromJSON(e){return this.create(JSON.parse(e))}toJSON(){const e={};return Object.keys(this).forEach(n=>{this.hasOwnProperty(n)&&"getCueAsHTML"!==n&&"hasBeenReset"!==n&&"displayState"!==n&&(e[n]=this[n])}),e}constructor(e,n,d){this._id="",this._pauseOnExit=!1,this._region=null,this._vertical="",this._snapToLines=!0,this._line="auto",this._lineAlign="start",this._position="auto",this._positionAlign="auto",this._size=100,this._align="center",this.hasBeenReset=!1,this._startTime=e,this._endTime=n,this._text=d}};p=d([function(e){let n=e;"undefined"!=typeof window&&null!=window.VTTCue&&(n=window.VTTCue,n.create=e.create,n.fromJSON=e.fromJSON,n.prototype.toJSON=e.prototype.toJSON);return n}],p),n.VTTCue=p}));unwrapExports(Ji),Ji.VTTCue;var Xi=createCommonjsModule((function(e,n){var d=Yi&&Yi.__decorate||function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_};Object.defineProperty(n,"__esModule",{value:!0}),n.VTTRegion=void 0;let p=class{get id(){return this._id}set id(e){if("string"!=typeof e)throw new Error("ID must be a string.");this._id=e}get lines(){return this._lines}set lines(e){if("number"!=typeof e)throw new TypeError("Lines must be set to a number.");this._lines=e}get regionAnchorX(){return this._regionAnchorX}set regionAnchorX(e){if(!zi.isValidPercentValue(e))throw new TypeError("RegionAnchorX must be between 0 and 100.");this._regionAnchorX=e}get regionAnchorY(){return this._regionAnchorY}set regionAnchorY(e){if(!zi.isValidPercentValue(e))throw new TypeError("RegionAnchorY must be between 0 and 100.");this._regionAnchorY=e}get scroll(){return this._scroll}set scroll(e){if("string"==typeof e){const n=e.toLowerCase();if(zi.isValidScrollSetting(n))return void(this._scroll=n)}throw new SyntaxError("An invalid or illegal string was specified.")}get viewportAnchorX(){return this._viewportAnchorX}set viewportAnchorX(e){if(!zi.isValidPercentValue(e))throw new TypeError("ViewportAnchorX must be between 0 and 100.");this._viewportAnchorX=e}get viewportAnchorY(){return this._viewportAnchorY}set viewportAnchorY(e){if(!zi.isValidPercentValue(e))throw new TypeError("ViewportAnchorY must be between 0 and 100.");this._viewportAnchorY=e}get width(){return this._width}set width(e){if(!zi.isValidPercentValue(e))throw new TypeError("Width must be between 0 and 100.");this._lines=e}toJSON(){const e={};return Object.keys(this).forEach(n=>{this.hasOwnProperty(n)&&(e[n]=this[n])}),e}static create(e){const n=new this;return Object.keys(e).forEach(d=>{n.hasOwnProperty(d)&&(n[d]=e[d])}),n}static fromJSON(e){return this.create(JSON.parse(e))}constructor(){this._id="",this._lines=3,this._regionAnchorX=0,this._regionAnchorY=100,this._scroll="",this._viewportAnchorX=0,this._viewportAnchorY=100,this._width=100}};p=d([function(e){let n=e;"undefined"!=typeof window&&null!=window.VTTRegion&&(n=window.VTTRegion,n.create=e.create,n.fromJSON=e.fromJSON,n.prototype.toJSON=e.prototype.toJSON);return n}],p),n.VTTRegion=p}));unwrapExports(Xi),Xi.VTTRegion;var Zi=createCommonjsModule((function(e,n){Object.defineProperty(n,"__esModule",{value:!0})}));unwrapExports(Zi);var en=createCommonjsModule((function(e,n){var d=Yi&&Yi.__createBinding||(Object.create?function(e,n,d,p){void 0===p&&(p=d),Object.defineProperty(e,p,{enumerable:!0,get:function(){return n[d]}})}:function(e,n,d,p){void 0===p&&(p=d),e[p]=n[d]}),p=Yi&&Yi.__exportStar||function(e,n){for(var p in e)"default"===p||n.hasOwnProperty(p)||d(n,e,p)};Object.defineProperty(n,"__esModule",{value:!0}),n.VTTRegion=n.VTTCue=n.WebVTTParser=n.ParsingError=void 0,Object.defineProperty(n,"VTTCue",{enumerable:!0,get:function(){return Ji.VTTCue}}),Object.defineProperty(n,"VTTRegion",{enumerable:!0,get:function(){return Xi.VTTRegion}});class ParsingError extends Error{constructor(e,n){super(),this.name="ParsingError",this.code="number"==typeof e?e:e.code,n?this.message=n:e instanceof ParsingError&&(this.message=e.message)}}n.ParsingError=ParsingError,ParsingError.Errors={BadSignature:new ParsingError(0,"Malformed WebVTT signature."),BadTimeStamp:new ParsingError(1,"Malformed time stamp.")};class Settings{set(e,n){this.get(e)||""===n||(this.values[e]=n)}get(e,n,d){return"object"==typeof n&&"string"==typeof d?this.has(e)?this.values[e]:n[d]:this.has(e)?this.values[e]:n}has(e){return e in this.values}alt(e,n,d){for(let p=0;p=0&&d<=100)return this.set(e,d),!0}catch(d){return!1}return!1}constructor(){this.values={}}}class WebVTTParser{static StringDecoder(){return{decode:e=>{if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}}reportOrThrowError(e){if(!(e instanceof ParsingError&&"function"==typeof this.onparsingerror))throw e;this.onparsingerror(e)}parseOptions(e,n,d,p){const h=p?e.split(p):[e];for(const y of h){if("string"!=typeof y)continue;const e=y.split(d);if(2!==e.length)continue;n(e[0],e[1])}}parseCue(e,n,d){const p=e,consumeTimeStamp=()=>{const n=Qi.default.parseTimeStamp(e);if(null===n)throw new ParsingError(ParsingError.Errors.BadTimeStamp,"Malformed timestamp: "+p);return e=e.replace(/^[^\sa-zA-Z-]+/,""),n},skipWhitespace=()=>{e=e.replace(/^\s+/,"")};if(skipWhitespace(),n.startTime=consumeTimeStamp(),skipWhitespace(),"--\x3e"!==e.substr(0,3))throw new ParsingError(ParsingError.Errors.BadTimeStamp,"Malformed time stamp (time stamps must be separated by '--\x3e'): "+p);e=e.substr(3),skipWhitespace(),n.endTime=consumeTimeStamp(),skipWhitespace(),((e,n)=>{const p=new Settings;this.parseOptions(e,(e,n)=>{let h,y;switch(e){case"region":for(let h=d.length-1;h>=0;h--)if(d[h].id===n){p.set(e,d[h].region);break}break;case"vertical":p.alt(e,n,["rl","lr"]);break;case"line":h=n.split(","),y=h[0],p.integer(e,y),p.percent(e,y)&&p.set("snapToLines",!1),p.alt(e,y,["auto"]),2===h.length&&p.alt("lineAlign",h[1],["start","middle","center","end"]);break;case"position":if(h=n.split(","),p.percent(e,h[0]),2===h.length){let e=["line-left","line-right","center","auto","left","start","middle","end","right"];p.alt("positionAlign",h[1],e)}break;case"size":p.percent(e,n);break;case"align":let _=["start","center","end","left","right","middle"];p.alt(e,n,_)}},/:/,/\s/),n.region=p.get("region",null),n.vertical=p.get("vertical",""),n.line=p.get("line",void 0===n.line?"auto":n.line);const h=p.get("lineAlign","start");n.lineAlign="center"===h||"middle"===h?this.middleOrCenter:h,n.snapToLines=p.get("snapToLines",!0),n.size=p.get("size",100);const y=p.get("align","center");n.align="center"===y||"middle"===y?this.middleOrCenter:y,n.position=p.get("position","auto");let _=p.get("positionAlign",{start:"start",left:"start",center:"center",middle:"middle",right:"end",end:"end"},n.align);n.positionAlign="center"===_||"middle"===_?this.middleOrCenter:{start:"start","line-left":"start",left:"start",center:"center",middle:"middle","line-right":"end",right:"end",end:"end"}[_]})(e,n)}parseRegion(e){const n=new Settings;if(this.parseOptions(e,(e,d)=>{switch(e){case"id":n.set(e,d);break;case"width":n.percent(e,d);break;case"lines":n.integer(e,d);break;case"regionanchor":case"viewportanchor":{const p=d.split(",");if(2!==p.length)break;const h=new Settings;if(h.percent("x",p[0]),h.percent("y",p[1]),!h.has("x")||!h.has("y"))break;n.set(e+"X",h.get("x")),n.set(e+"Y",h.get("y"));break}case"scroll":n.alt(e,d,["up"])}},/=/,/\s/),n.has("id")){const e=new Xi.VTTRegion;e.width=n.get("width",100),e.lines=n.get("lines",3),e.regionAnchorX=n.get("regionanchorX",0),e.regionAnchorY=n.get("regionanchorY",100),e.viewportAnchorX=n.get("viewportanchorX",0),e.viewportAnchorY=n.get("viewportanchorY",100),e.scroll=n.get("scroll",""),this.onregion&&this.onregion(e),this.regionList.push({id:n.get("id"),region:e})}}parseStyle(e){const parseStyles=e=>{const n={},d=e.split(";");for(let p=0;p{const e=this.buffer;let n=0;const calculateBreakPosition=(e,n)=>{const d={start:-1,length:-1};if("\r"===e[n])d.start=n,d.length=1;else if("\n"===e[n])d.start=n,d.length=1;else if("<"===e[n]&&n+1"!==e[p++];);d.start=n,d.length=p-n}return d};let d={start:e.length,length:0};for(;n0){d=p;break}++n}const p=e.substr(0,d.start);return this.buffer=e.substr(d.start+d.length),p};try{let e;if("INITIAL"===this.state){if(!/\r\n|\n/.test(this.buffer))return this;this.alreadyCollectedLine="",e=collectNextLine();const n=/^()?WEBVTT([ \t].*)?$/.exec(e);if(!n||!n[0])throw new ParsingError(ParsingError.Errors.BadSignature);this.state="HEADER"}for(;this.buffer;){if(!/\r\n|\n/.test(this.buffer))return this;switch(this.alreadyCollectedLine?(e=this.alreadyCollectedLine,this.alreadyCollectedLine=""):e=collectNextLine(),this.state){case"HEADER":e.includes(":")?this.parseHeader(e):e||(this.state="ID");continue;case"NOTE":e||(this.state="ID");continue;case"STYLE":e?this.styleCollector+=e:(this.parseStyle(this.styleCollector),this.state="ID",this.styleCollector="");continue;case"ID":if(/^NOTE($|[ \t])/.test(e)){this.state="NOTE";break}if(/^STYLE($|[ \t])/.test(e)){this.state="STYLE";break}if(!e)continue;if(this.cue=new Ji.VTTCue(0,0,""),this.state="CUE",!e.includes("--\x3e")){this.cue.id=e;continue}case"CUE":try{this.parseCue(e,this.cue,this.regionList)}catch(Ut){this.reportOrThrowError(Ut),this.cue=null,this.state="BADCUE";continue}this.state="CUETEXT";continue;case"CUETEXT":{const n=e.includes("--\x3e");if(!e||n){this.alreadyCollectedLine=e,this.oncue&&this.oncue(this.cue),this.cue=null,this.state="ID";continue}this.cue.text&&(this.cue.text+="\n"),this.cue.text+=e;continue}case"BADCUE":e||(this.state="ID");continue}}}catch(Ut){this.reportOrThrowError(Ut),"CUETEXT"===this.state&&this.cue&&this.oncue&&this.oncue(this.cue),this.cue=null,this.state="INITIAL"===this.state?"BADWEBVTT":"BADCUE"}return this}flush(){try{if(this.buffer+=this.decoder.decode(),(this.cue||"HEADER"===this.state)&&(this.buffer+="\n\n",this.parse()),"INITIAL"===this.state)throw new ParsingError(ParsingError.Errors.BadSignature)}catch(Ut){this.reportOrThrowError(Ut)}return this.onflush&&this.onflush(),this}styles(){return this._styles}constructor(e,n,d){this.window=e,this.state="INITIAL",this.styleCollector="",this.buffer="",this.decoder=n||new TextDecoder("utf8"),this.regionList=[],this.alreadyCollectedLine="",this.onStylesParsedCallback=d,this._styles={},this.middleOrCenter="center";const p=new Ji.VTTCue(0,0,"middleOrCenter");try{p.align="center","center"!==p.align&&(this.middleOrCenter="middle")}catch(Ut){this.middleOrCenter="middle"}}}n.default=WebVTTParser,n.WebVTTParser=WebVTTParser,p(Zi,n)}));unwrapExports(en),en.VTTRegion,en.VTTCue,en.WebVTTParser,en.ParsingError;var tn=createCommonjsModule((function(e,n){var d=Yi&&Yi.__createBinding||(Object.create?function(e,n,d,p){void 0===p&&(p=d),Object.defineProperty(e,p,{enumerable:!0,get:function(){return n[d]}})}:function(e,n,d,p){void 0===p&&(p=d),e[p]=n[d]}),p=Yi&&Yi.__exportStar||function(e,n){for(var p in e)"default"===p||n.hasOwnProperty(p)||d(n,e,p)};Object.defineProperty(n,"__esModule",{value:!0}),n.VTTCue=n.WebVTTRenderer=n.BoxPosition=n.CueStyleBox=n.StyleBox=void 0,Object.defineProperty(n,"VTTCue",{enumerable:!0,get:function(){return Ji.VTTCue}});const h=[/^(::cue\()(\..*)(\))/,/^(::cue\()(#.*)(\))/,/^(::cue\()(c|i|b|u|ruby|rt|v|lang)(\))/],y=[[1470,1470],[1472,1472],[1475,1475],[1478,1478],[1488,1514],[1520,1524],[1544,1544],[1547,1547],[1549,1549],[1563,1563],[1566,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],[1969,1969],[1984,2026],[2036,2037],[2042,2042],[2048,2069],[2074,2074],[2084,2084],[2088,2088],[2096,2110],[2112,2136],[2142,2142],[2208,2208],[2210,2220],[8207,8207],[64285,64285],[64287,64296],[64298,64310],[64312,64316],[64318,64318],[64320,64321],[64323,64324],[64326,64449],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[67584,67589],[67592,67592],[67594,67637],[67639,67640],[67644,67644],[67647,67669],[67671,67679],[67840,67867],[67872,67897],[67903,67903],[67968,68023],[68030,68031],[68096,68096],[68112,68115],[68117,68119],[68121,68147],[68160,68167],[68176,68184],[68192,68223],[68352,68405],[68416,68437],[68440,68466],[68472,68479],[68608,68680],[126464,126467],[126469,126495],[126497,126498],[126500,126500],[126503,126503],[126505,126514],[126516,126519],[126521,126521],[126523,126523],[126530,126530],[126535,126535],[126537,126537],[126539,126539],[126541,126543],[126545,126546],[126548,126548],[126551,126551],[126553,126553],[126555,126555],[126557,126557],[126559,126559],[126561,126562],[126564,126564],[126567,126570],[126572,126578],[126580,126583],[126585,126588],[126590,126590],[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[1114109,1114109]];class StyleBox{applyStyles(e,n){n=n||this.div;for(const d in e)e.hasOwnProperty(d)&&(n.style[d]=e[d])}formatStyle(e,n){return 0===e?"0":e+n}}n.StyleBox=StyleBox;class CueStyleBox extends StyleBox{determineBidi(e){let n,d=[],p="";if(!e||!e.childNodes)return"ltr";function pushNodes(e,n){for(let d=n.childNodes.length-1;d>=0;d--)e.push(n.childNodes[d])}function nextTextNode(e){if(!e||!e.length)return null;let n=e.pop(),d=n.textContent||n.innerText;if(d){const n=/^.*(\n|\r)/.exec(d);return n?(e.length=0,n[0]):d}return"ruby"===n.tagName?nextTextNode(e):n.childNodes?(pushNodes(e,n),nextTextNode(e)):void 0}function isContainedInCharacterList(e,n){for(const d of n)if(e>=d[0]&&e<=d[1])return!0;return!1}for(pushNodes(d,e);p=nextTextNode(d);)for(let e=0;e=4?n[3]:null}directionSettingToWritingMode(e){return""===e?"horizontal-tb":"lr"===e?"vertical-lr":"vertical-rl"}move(e){this.applyStyles({top:this.formatStyle(e.top,"px"),bottom:this.formatStyle(e.bottom,"px"),left:this.formatStyle(e.left,"px"),right:this.formatStyle(e.right,"px"),height:this.formatStyle(e.height,"px"),width:this.formatStyle(e.width,"px")})}constructor(e,n,d,p,h){super(),this.cue=n;let y={start:"left","line-left":"left",left:"left",center:"center",middle:"center","line-right":"right",right:"right",end:"right"}[n.positionAlign]||n.align;"middle"===y&&(y="center");let _={textAlign:y,whiteSpace:"pre-line",position:"absolute"};_.direction=this.determineBidi(this.cueDiv),_.writingMode=this.directionSettingToWritingMode(n.vertical),_.unicodeBidi="plaintext",this.div=e.document.createElement("div"),this.applyStyles(_),_={backgroundColor:p.backgroundColor,display:"inline-block"},this.parseOpacity(_.backgroundColor)&&(_.padding="5px",_.borderRadius="5px"),this.backgroundDiv=e.document.createElement("div"),this.applyStyles(_,this.backgroundDiv),_={color:d.color,backgroundColor:d.backgroundColor,textShadow:d.textShadow,fontSize:d.fontSize,fontFamily:d.fontFamily,position:"relative",left:"0",right:"0",top:"0",bottom:"0",display:"inline-block",textOrientation:"upright"},_.writingMode=this.directionSettingToWritingMode(n.vertical),_.unicodeBidi="plaintext",this.cueDiv=Qi.default.parseContent(e,n,h),this.applyStyles(_,this.cueDiv),this.backgroundDiv.appendChild(this.cueDiv),this.div.appendChild(this.backgroundDiv);let m=0;if("number"==typeof n.position){let e=n.positionAlign||n.align;if(e)switch(e){case"start":case"left":m=n.position;break;case"center":case"middle":m=n.position-n.size/2;break;case"end":case"right":m=n.position-n.size}}""===n.vertical?this.applyStyles({left:this.formatStyle(m,"%"),width:this.formatStyle(n.size,"%")}):this.applyStyles({top:this.formatStyle(m,"%"),height:this.formatStyle(n.size,"%")})}}n.CueStyleBox=CueStyleBox;class BoxPosition{calculateNewLines(e){let n=1;for(let d=0;de.left&&this.tope.top}overlapsAny(e){for(const n of e)if(this.overlaps(n))return!0;return!1}within(e){return this.top>=e.top&&this.bottom<=e.bottom&&this.left>=e.left&&this.right<=e.right}moveIfOutOfBounds(e,n){switch(n){case"+x":this.lefte.right&&(this.right=e.right,this.left=this.right-this.width);break;case"+y":this.tope.bottom&&(this.bottom=e.bottom,this.top=this.bottom-this.height)}}toCSSCompatValues(e){return{top:this.top-e.top,bottom:e.bottom-this.bottom,left:this.left-e.left,right:e.right-this.right,height:this.height,width:this.width}}static getSimpleBoxPosition(e){let n=null;e instanceof StyleBox&&e.div?n=e.div:e instanceof HTMLElement&&(n=e);let d=n.offsetHeight||0,p=n.offsetWidth||0,h=n.offsetTop||0,y=h+d,_=n.getBoundingClientRect();const{left:m,right:g}=_;return _.top&&(h=_.top),_.height&&(d=_.height),_.width&&(p=_.width),_.bottom&&(y=_.bottom),{left:m,right:g,top:h,height:d,bottom:y,width:p}}static getBoxPosition(e,n){if(e&&e.length>0){let d=0,p=e[0][n];for(let h=0;hp&&(d=h,p=e[h][n]):n in["bottom","left"]&&e[h][n]=0&&e.line<=100))return e.line;if(!e.track||!e.track.textTrackList||!e.track.textTrackList.mediaElement)return-1;let n=0;const d=e.track,p=d.textTrackList;for(let h=0;hg&&(e=e<0?-1:1,e*=Math.ceil(g/d)*d)}y.move(b,e)}else{const d=""===p.vertical?n.height:n.width,h=y.lineHeight/d*100;switch(p.lineAlign){case"center":case"middle":_-=h/2;break;case"end":_-=h}switch(p.vertical){case"":e.applyStyles({top:e.formatStyle(_,"%")});break;case"rl":e.applyStyles({right:e.formatStyle(_,"%")});break;case"lr":e.applyStyles({left:e.formatStyle(_,"%")})}m=["+y","-y","+x","-x"],"+y"===p.axis?m=["+y","-y","+x","-x"]:"-y"===p.axis&&(m=["-y","+y","+x","-x"]),y=new BoxPosition(e)}const g=function(e,p){let h;for(let y=0;y9);)m?e.move(p[y]):(d&&d.length>0&&(h||(h={topMostBoxPosition:BoxPosition.getBoxPosition(d,"top"),bottomMostBoxPosition:BoxPosition.getBoxPosition(d,"bottom"),leftMostBoxPosition:BoxPosition.getBoxPosition(d,"left"),rightMostBoxPosition:BoxPosition.getBoxPosition(d,"right")}),BoxPosition.moveToMinimumDistancePlacement(e,p[y],h)),m=!0),_++}return e}(y,m);e.move(g.toCSSCompatValues(n))}constructor(e){var n;let d,p,h,y,_,m;if(e instanceof CueStyleBox&&e.cue?(n=e.cue)&&""!==n.vertical?this.property="width":this.property="height":e instanceof BoxPosition&&(this.property=e.property||"height"),e instanceof CueStyleBox&&e.div){h=e.div.offsetHeight,y=e.div.offsetWidth,_=e.div.offsetTop;const n=e.div.firstChild;if(m=n?n.getBoundingClientRect():e.div.getBoundingClientRect(),d=m&&m[this.property]||null,n&&n.firstChild){const e=n.firstChild;if(e&&"string"==typeof e.textContent){p=d/this.calculateNewLines(e.textContent)}}}else e instanceof BoxPosition&&(m=e);this.left=m.left,this.right=m.right,this.top=m.top||_,this.height=m.height||h,this.bottom=m.bottom||_+(m.height||h),this.width=m.width||y,this.lineHeight=null!==d?d:m.lineHeight,this.singleLineHeight=null!==p?p:m.singleLineHeight,this.singleLineHeight||(this.singleLineHeight=41)}}n.BoxPosition=BoxPosition;class WebVTTRenderer{initSubtitleCSS(){const e=[new Ji.VTTCue(0,0,"String to init CSS - Won't be visible to user")];this.paddedOverlay.style.opacity="0",this.processCues(e),this.processCues([]),this.paddedOverlay.style.opacity="1"}convertCueToDOMTree(e){return e?Qi.default.parseContent(this.window,e,this.globalStyleCollection):null}setStyles(e){function applyStyles(e,n,d){for(const p in n)n.hasOwnProperty(p)&&(!0===d&&void 0!==e[p]||!1===d)&&(e[p]=n[p])}for(const n in e){let d=!1,p=null;"::cue"===n?(p=this.foregroundStyleOptions,d=!0):"::-webkit-media-text-track-display"===n&&(p=this.backgroundStyleOptions,d=!0);const y=e[n];if(!0===d)applyStyles(p,y,d);else for(let e=0;e1&&(e=function(e){const n=[];let d=0;for(let p=0;p50?(n.forEach((function(e){e.axis="-y"})),n.sort((e,n)=>n.line-e.line)):(n.forEach((function(e){e.axis="+y"})),n.sort((e,n)=>e.line-n.line)),n}(e));for(let p=0;p"showing"===e.mode)}set currentTrack(e){if(!e)return;let n;this.trackPersistence.setPersistedTrack(e),this.extensionTracks?(je.debug("MEDIA_TRACK Setting track on extension "+e.label),"Off"===e.label?(this.clearCurrentlyPlayingTrack(),n=this.extensionTracks.selectForcedTrack(),void 0===n&&this.onExtensionTextTrackSwitched({track:e})):this.extensionTracks.textTrack=e):(je.debug("MEDIA_TRACK Setting track on element "+e.label),this._tracks.forEach(n=>{n!==e&&"showing"===n.mode&&(n.mode="disabled")}),e&&(je.debug("MEDIA_TRACK setting track mode to showing for "+e.label),this.isTrackOff(e)?(this._tracks[0].mode="showing",n=this.selectNativeForcedTrack(this.mediaElement.audioTracks)):e.mode="showing")),this.dispatcher.publish(vt.forcedTextTrackChanged,n)}get tracks(){return this._tracks}destroy(){if(this._isDestroyed=!0,this.clearCurrentlyPlayingTrack(),this.extensionTracks){const e=this.extensionTracks;e.removeEventListener(pn,this.onExtensionTextTracksAdded),e.removeEventListener(un,this.onExtensionTextTrackSwitched),e.removeEventListener(hn,this.onExtensionInlineStylesParsed)}else this.mediaElement.textTracks.removeEventListener("addtrack",this.onTextTrackAdded),this.mediaElement.textTracks.removeEventListener("change",this.onTextTrackChanged),this.mediaElement.textTracks.removeEventListener("removetrack",this.onTextTrackRemoved),this.mediaElement.removeEventListener("playing",this.onPlayStart);this.dispatcher.unsubscribe(an,this.onAudioTrackAddedOrChanged),this.dispatcher.unsubscribe(on,this.onAudioTrackAddedOrChanged)}restoreSelectedTrack(){return restoreSelectedTrack(this.trackPersistence,this)}onExtensionInlineStylesParsed(e){je.debug("MEDIA_TRACK Extension inline styles parsed",e),this.renderer.setStyles(e.styles)}onExtensionTextTracksAdded(e){je.debug("MEDIA_TRACK Extension text tracks updated "+JSON.stringify(e)),this._tracks.push(...e),this.restoreSelectedTrack(),this.dispatcher.publish(cn,e)}onExtensionTextTrackSwitched(e){je.debug("MEDIA_TRACKS Extension text track switched "+e),this.handleVTT(e);const n=e.track;if(this._tracks){const preserveSelectedTrack=d=>{e.track?n.forced&&"Off"===d.label||"Off"===n.label&&"Off"===d.label?d.mode="showing":d.mode=e.track.persistentID===d.id?"showing":"disabled":d.mode="Off"===d.label?"showing":"disabled"};this._tracks.forEach(preserveSelectedTrack)}this.dispatcher.publish(dn,e)}handleVTT(e){const n=e&&e.track&&e.track.id;if(void 0!==n&&n>=0){const e=this.filterSelectableTextTracks(this.mediaElement.textTracks)[n];this.onNativeTrackChange(e)}else this.clearCurrentlyPlayingTrack()}onAudioTrackAddedOrChanged(e,n){if(je.debug("MEDIA_TRACKS text track manager detects audio track change"),this.shouldForceSubtitle())if(this.extensionTracks){je.debug("MEDIA_TRACKS selecting forced text track via extension");const e=this.extensionTracks.selectForcedTrack();e?this.dispatcher.publish(sn,e):this.clearCurrentlyPlayingTrack()}else je.debug("MEDIA_TRACKS selecting forced text track natively"),this.currentTrack=this._tracks[0]}onTextTrackAdded(e){this._tracks.push(e.track),this.dispatcher.publish(cn,e)}onPlayStart(){this.restoreSelectedTrack()}onTextTrackRemoved(e){this.dispatcher.publish(ln,e)}onTextTrackChanged(e){const n=this.findNativeSelectedTextTrack();let d=this.trackPersistence.getPersistedTrack();if(d||(d=this._tracks[0]),n&&!trackEquals(n,d,this.trackPersistence.fields))if(this.isTrackOff(d)&&"forced"!==n.kind)this.currentTrack=d;else{const e=this.findNativeTrack(d);e&&(this.currentTrack=e)}else this.dispatcher.publish(dn,e)}findNativeSelectedTextTrack(){for(let e=0;esuper.initializeEventHandlers;return _async_to_generator$S((function*(){_superprop_get_initializeEventHandlers().call(e),e.hasMediaElement&&(e._targetElement.addEventListener("webkitpresentationmodechanged",e.pipEventHandler),e._targetElement.addEventListener("enterpictureinpicture",e.pipEventHandler),e._targetElement.addEventListener("leavepictureinpicture",e.pipEventHandler))}))()}removeEventHandlers(){if(super.removeEventHandlers(),!this.hasMediaElement)return;const{_targetElement:e}=this;e.removeEventListener("webkitpresentationmodechanged",this.pipEventHandler),e.removeEventListener("enterpictureinpicture",this.pipEventHandler),e.removeEventListener("leavepictureinpicture",this.pipEventHandler)}initializeMediaElement(){var e=this;return _async_to_generator$S((function*(){je.debug("videoPlayer.initializeMediaElement Initializing media element");const n=e.containerElement;n?(e.video=function(){let e=Hi.pop();return e?je.debug(`dom-helpers: retrieving video tag, ${Hi.length} remain`):(je.debug("dom-helpers: no available video tags, creating one"),e=document.createElement("video")),e}(),e.video.autoplay=!1,e.video.controls=!1,e.video.playsInline=!0,e.video.id="apple-music-video-player",n.appendChild(e.video)):je.warn("videoPlayer.initializeMediaElement No video element; no container defined")}))()}isPlayerSupported(){return this.services.runtime.isES2015Supported}_stopMediaElement(){var e=this,_superprop_get__stopMediaElement=()=>super._stopMediaElement;return _async_to_generator$S((function*(){yield _superprop_get__stopMediaElement().call(e),e.destroy()}))()}pipEventHandler(n){switch(n.type){case"enterpictureinpicture":this._dispatcher.publish(fn,{mode:e.PresentationMode.pictureinpicture});break;case"leavepictureinpicture":this._dispatcher.publish(fn,{mode:e.PresentationMode.inline});break;case"webkitpresentationmodechanged":{const e=this._targetElement;this._dispatcher.publish(fn,{mode:this._translateStringToPresentationMode(e.webkitPresentationMode)});break}}}playItemFromEncryptedSource(n,d=!1,p={}){var h=this;return _async_to_generator$S((function*(){if(je.debug("videoPlayer.playItemFromEncryptedSource",n,d),h.playbackState===mn)return void je.debug("video-player.playItemFromEncryptedSource aborting playback because player is stopped");n.playbackType=e.PlaybackType.encryptedFull,h.nowPlayingItem=n,n.state=F.loading,h.userInitiated=d;const y=generateAssetUrl(n,p);yield h.playHlsStream(y,n,p)}))()}playItemFromUnencryptedSource(e,n,d){var p=this;return _async_to_generator$S((function*(){if(je.debug("videoPlayer.playItemFromUnencryptedSource",e,n),p.playbackState===mn)return void je.debug("videoPlayer.playItemFromUnencryptedSource aborting playback because player is stopped");const[d]=e.split("?");d.endsWith("m3u")||d.endsWith("m3u8")?yield p.playHlsStream(e):yield p._playAssetURL(e,n)}))()}setPresentationMode(n){var d=this;return _async_to_generator$S((function*(){const p=d._targetElement;if(p.webkitSupportsPresentationMode&&"function"==typeof p.webkitSetPresentationMode)return p.webkitSetPresentationMode(d._translatePresentationModeToString(n));if(p.requestPictureInPicture&&document.exitPictureInPicture){if(n===e.PresentationMode.pictureinpicture)return p.requestPictureInPicture();if(n===e.PresentationMode.inline)return document.exitPictureInPicture()}}))()}_translateStringToPresentationMode(n){let d=yn[n];return void 0===d&&(je.warn(`videoPlayer._translateStringToPresentationMode ${n} is not a valid presentation mode, setting to inline`),d=e.PresentationMode.inline),d}_translatePresentationModeToString(e){let n=_n[e];return void 0===n&&(je.warn(`videoPlayer._translatePresentationModeToString ${e} is not a valid presentation mode, setting to inline`),n="inline"),n}setNextSeamlessItem(e){return _async_to_generator$S((function*(){}))()}constructor(e){super(e),_define_property$1b(this,"extension",void 0),_define_property$1b(this,"video",void 0),_define_property$1b(this,"mediaPlayerType","video"),_define_property$1b(this,"restrictPlatforms",void 0),_define_property$1b(this,"_textTrackManager",new TrackManagerStub),_define_property$1b(this,"_audioTrackManager",new TrackManagerStub),_define_property$1b(this,"_shouldLoadManifestsOnce",!1),_define_property$1b(this,"userInitiated",!1),this.restrictPlatforms=!("restrict-platforms"in Ye.features)||Ye.features["restrict-platforms"],this.pipEventHandler=this.pipEventHandler.bind(this),this._shouldLoadManifestsOnce=shouldLoadManifestOnce()}}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$o("design:type",Function),_ts_metadata$o("design:paramtypes",[void 0])],VideoPlayer.prototype,"onPlaybackLicenseError",null);const decayingOperation=(e,n,d,p=0)=>e().catch(h=>{const y=p+1;function possiblyRetry(p){if(p&&y<3){const p=1e3*y;return new Promise((h,_)=>{setTimeout(()=>{decayingOperation(e,n,d,y).then(h,_)},p)})}throw h}const _=n(h);return"boolean"==typeof _?possiblyRetry(_):_.then(possiblyRetry)});let gn={developerToken:"developerTokenNotSet",musicUserToken:"musicUserTokenNotSet",cid:"cidNotSet"};function asyncGeneratorStep$R(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$R(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$R(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$R(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1a(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$q(e){for(var n=1;nfetch(this.licenseUrl,{method:"POST",body:JSON.stringify(e),headers:d}),e=>e instanceof TypeError,"license fetch")}reset(){this.licenseUrl=void 0,this.playableItem=void 0,this.data=void 0,this.initiated=void 0,this.keySystem=void 0,this.startResponse=void 0}start(e,n,d,p,h=!1,y=!1){var _=this;return _async_to_generator$R((function*(){_.licenseUrl=e,_.playableItem=n,_.data=d,_.keySystem=p,_.initiated=h;const m=d.isRenewalRequest?"renew":"start",g=createLicenseChallengeBody(e,m,n,d,p,h,y);n.hasOffersHlsUrl&&!_.licenseUrl.includes("start")&&(_.licenseUrl+="/"+m),_.startResponse=_.fetch(g);try{var b,S,P,E,T;const e=yield _.startResponse;if(!e.ok){let n;try{n=yield e.json()}catch(Ut){}_.processJsonError(n)}const n=yield e.json();let d=n;var k;return(null===(P=n)||void 0===P||null===(S=P["streaming-response"])||void 0===S||null===(b=S["streaming-keys"])||void 0===b?void 0:b.length)?d=n["streaming-response"]["streaming-keys"][0]:(null===(T=n)||void 0===T||null===(E=T["license-responses"])||void 0===E?void 0:E.length)&&(d=n["license-responses"][0]),d.status=null!==(k=d.status)&&void 0!==k?k:d.errorCode,0!==d.status&&_.processJsonError(d),d}catch(Q){throw _.startResponse=void 0,Q}}))()}processJsonError(e){var n,d;let p=new MKError(MKError.Reason.MEDIA_LICENSE,"Error acquiring license");if((null===(n=e)||void 0===n?void 0:n.errorCode)&&(e.status=e.errorCode),-1021===(null===(d=e)||void 0===d?void 0:d.status)&&(e.status=190121),e&&0!==e.status){if(!e.message)switch(e.status){case-1004:e.message=MKError.Reason.DEVICE_LIMIT;break;case-1017:e.message=MKError.Reason.GEO_BLOCK;break;default:e.message=MKError.Reason.MEDIA_LICENSE}p=MKError.serverError(e),p.data=e,p.reason===MKError.Reason.PLAYREADY_CBC_ENCRYPTION_ERROR&&function(){const e=getSessionStorage();e&&e.setItem("mk-playready-cbcs-unsupported","true")}()}throw p}stop(){var e=this;return _async_to_generator$R((function*(){if(e.startResponse)try{yield e.startResponse}catch(Q){}if(!e.playableItem||!e.data||!e.licenseUrl)return;if(!e.playableItem.isUTS)return;const n=createLicenseChallengeBody(e.licenseUrl,"stop",e.playableItem,e.data,e.keySystem,e.initiated),d=e.fetch(n);e.reset();try{yield d}catch(Q){je.warn("license.stop request error",Q)}}))()}constructor(){_define_property$1a(this,"licenseUrl",void 0),_define_property$1a(this,"playableItem",void 0),_define_property$1a(this,"data",void 0),_define_property$1a(this,"initiated",void 0),_define_property$1a(this,"keySystem",void 0),_define_property$1a(this,"startResponse",void 0)}}function asyncGeneratorStep$Q(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$Q(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$Q(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$Q(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$19(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$n(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class KeySession extends Notifications{get extID(){if(this.extURI)return this.extURI.replace("data:;base64,","")}get isFairplay(){return this.keySystem===We.FAIRPLAY}get isPlayReady(){return this.keySystem===We.PLAYREADY}get isWidevine(){return this.keySystem===We.WIDEVINE}acquirePlaybackLicense(e,n,d,p){var h=this;return _async_to_generator$Q((function*(){if(!h.keyServerURL||!h.developerToken||!h.userToken)return;const{keyServerURL:d,keySystem:y}=h,_=p.item;try{return yield h.license.start(d,_,{challenge:n,keyuri:e},y,h.initiated,h.isLegacyEme&&_.isUTS)}catch(Ut){h.dispatchEvent(Je.playbackLicenseError,Ut)}}))()}startLicenseSession(e){var n=this;return _async_to_generator$Q((function*(){let d;je.debug("Starting License Session",e);const{message:p,target:h,messageType:y}=e;if(n.keySystem!==We.FAIRPLAY&&"license-request"!==y)return void je.debug("not making license request for",y);if(n.isPlayReady){const e=String.fromCharCode.apply(null,new Uint16Array(p.buffer||p));d=(new DOMParser).parseFromString(e,"application/xml").getElementsByTagName("Challenge")[0].childNodes[0].nodeValue}else d=Ie(new Uint8Array(p));const _=h.extURI||n.extURI,m=n.mediaKeySessions[_];if(!m)return void je.debug("no key session info, aborting license request");const g=n.acquirePlaybackLicense(_,d,n.initiated,m);if(m.delayCdmUpdate)m["license-json"]=g;else{const e=yield g;yield n.handleLicenseJson(e,h,_)}}))()}setKeyURLs(e){this.keyCertURL=e[this.isFairplay?"hls-key-cert-url":"widevine-cert-url"],this.keyServerURL=e["hls-key-server-url"]}dispatchKeyError(e){var n,d,p;this.isFairplay&&4294955417===(null===(p=e)||void 0===p||null===(d=p.target)||void 0===d||null===(n=d.error)||void 0===n?void 0:n.systemCode)?je.error("Ignoring error",e):(console.error(MKError.Reason.MEDIA_KEY+" error in dispatchKeyError:",e),this.dispatchEvent(Je.playbackSessionError,new MKError(MKError.Reason.MEDIA_KEY,e)))}dispatchSessionError(e){this.dispatchEvent(Je.playbackSessionError,new MKError(MKError.Reason.MEDIA_SESSION,e))}loadCertificateBuffer(){var e=this;return _async_to_generator$Q((function*(){if(!e.keyCertURL)return Promise.reject(new MKError(MKError.Reason.MEDIA_SESSION,"No certificate URL"));let n;try{n=yield fetch(`${e.keyCertURL}?t=${Date.now()}`)}catch(Q){throw e.dispatchKeyError(Q),Q}const d=yield n.arrayBuffer(),p=String.fromCharCode.apply(String,new Uint8Array(d));return/^\<\?xml/.test(p)?Promise.reject(new MKError(MKError.Reason.MEDIA_CERTIFICATE,"Invalid certificate.")):d}))()}handleSessionCreation(e){var n=this;return _async_to_generator$Q((function*(){return n.createSession(e).catch(e=>{n.dispatchSessionError(e)})}))()}handleLicenseJson(e,n,d){var p=this;return _async_to_generator$Q((function*(){var h;if(je.debug(`updating session ${d} with license response`,e),null===(h=e)||void 0===h?void 0:h.license){const d=Te(e.license);try{yield n.update(d)}catch(Ut){je.error("Failed to updated media keys",Ut),p.dispatchKeyError(Ut)}}}))()}addMediaKeySessionInfo(e,n,d,p=!1){const h=this.mediaKeySessions[e];h?(je.debug(`keySession info exists for ${d.title}, making existing session ${h.session.sessionId} the old session`),h.oldSession=h.session,h.session=n):(je.debug("creating key session info for "+d.title),this.mediaKeySessions[e]={session:n,item:d,delayCdmUpdate:p})}stopLicenseSession(){je.info("key session sending license stop"),this.license.stop()}constructor(){super([Je.playbackLicenseError,Je.playbackSessionError]),_define_property$19(this,"developerToken",void 0),_define_property$19(this,"adamId",void 0),_define_property$19(this,"userToken",void 0),_define_property$19(this,"extURI",void 0),_define_property$19(this,"item",void 0),_define_property$19(this,"initiated",!0),_define_property$19(this,"isLibrary",!1),_define_property$19(this,"keyCertURL",void 0),_define_property$19(this,"keyServerURL",void 0),_define_property$19(this,"keySystem",We.FAIRPLAY),_define_property$19(this,"isLegacyEme",!1),_define_property$19(this,"boundDispatchKeyError",void 0),_define_property$19(this,"boundDispatchSessionError",void 0),_define_property$19(this,"boundHandleSessionCreation",void 0),_define_property$19(this,"boundStartLicenseSession",void 0),_define_property$19(this,"mediaKeySessions",{}),_define_property$19(this,"_pendingRenewal",void 0),_define_property$19(this,"license",void 0),this.boundDispatchKeyError=this.dispatchKeyError.bind(this),this.boundDispatchSessionError=this.dispatchSessionError.bind(this),this.boundHandleSessionCreation=this.handleSessionCreation.bind(this),this.boundStartLicenseSession=this.startLicenseSession.bind(this),this.license=new License}}function asyncGeneratorStep$P(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$P(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$P(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$P(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$18(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$m(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$n("design:type",Function),_ts_metadata$n("design:paramtypes",[void 0])],KeySession.prototype,"startLicenseSession",null);class FairplayEncryptedSession extends KeySession{attachMedia(e,n){var d=this;return _async_to_generator$P((function*(){d.keySystem=n.keySystem,d._keySystemAccess=n,e.addEventListener("encrypted",d.boundHandleSessionCreation,!1)}))()}detachMedia(e){e.removeEventListener("encrypted",this.boundHandleSessionCreation);const n=this._mediaKeySessions,d=this._mediaKeySessionRenewals;Object.values(n).forEach(e=>{e.removeEventListener("message",this.boundStartLicenseSession),asAsync(e.close())}),this._mediaKeySessions={},Object.values(d).forEach(e=>clearTimeout(e)),this._mediaKeySessionRenewals={}}createSession(e){var n=this;return _async_to_generator$P((function*(){je.debug("fairplay eme: createSession",e);const d=n._keySystemAccess;if(!d)return;const{initData:p,target:h,initDataType:y}=e;n._mediaKeysPromise||(n._mediaKeysPromise=new Promise(function(){var e=_async_to_generator$P((function*(e,p){const y=yield d.createMediaKeys();try{yield h.setMediaKeys(y),n._mediaKeys=y;const e=yield n.loadCertificateBuffer();yield y.setServerCertificate(e)}catch(Q){n.dispatchKeyError(Q),p(Q)}e(y)}));return function(n,d){return e.apply(this,arguments)}}()));const _=yield n._mediaKeysPromise,m=new Uint8Array(p),g=String.fromCharCode.apply(void 0,Array.from(m));if(n.mediaKeySessions[g])return void je.error("fairplay eme: not creating new session for extURI",g);const b=_.createSession();je.debug("fairplay eme: creating new key session for",g),n.addMediaKeySessionInfo(g,b,n.item),b.addEventListener("message",n.startFairplayLicenseSession),b.extURI=g,yield b.generateRequest(y,p),n._mediaKeySessions[b.sessionId]=b,je.debug("fairplay eme: created session",b)}))()}startFairplayLicenseSession(e){const{message:n,target:d}=e,p=Ie(new Uint8Array(n)),h=d.extURI||this.extURI,y=this.mediaKeySessions[h];if(y)return this.acquirePlaybackLicense(h,p,this.initiated,y).then(e=>this.handleLicenseJson(e,d,h));je.debug("fairplay eme: no key session info, aborting license request",h)}handleLicenseJson(e,n,d){var p=this,_superprop_get_handleLicenseJson=()=>super.handleLicenseJson;return _async_to_generator$P((function*(){if(!e)return;const h=p.mediaKeySessions[d];if(!h)return void je.debug("fairplay eme: media key session does not exist, not updating");const y=e["renew-after"];if(e.license&&y){je.debug("fairplay eme: got renew after value",y,d);const e=p._mediaKeySessionRenewals,_=e[n.sessionId];_&&clearTimeout(_),e[n.sessionId]=setTimeout(()=>p._renewMediaKeySession(h,d),1e3*y)}yield _superprop_get_handleLicenseJson().call(p,e,n,d)}))()}_renewMediaKeySession(e,n){delete this._mediaKeySessionRenewals[e.session.sessionId],je.debug("fairplay eme: renewing session",e),e.session.update(ke("renew"))}applyDelayedCdmUpdates(){}loadKeys(e){return _async_to_generator$P((function*(){}))()}clearSessions(){return _async_to_generator$P((function*(){}))()}constructor(...e){super(...e),_define_property$18(this,"_keySystemAccess",void 0),_define_property$18(this,"_mediaKeysPromise",void 0),_define_property$18(this,"_mediaKeySessions",{}),_define_property$18(this,"_mediaKeySessionRenewals",{}),_define_property$18(this,"_mediaKeys",void 0)}}function asyncGeneratorStep$O(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$O(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$O(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$O(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$17(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$m("design:type",Function),_ts_metadata$m("design:paramtypes",[void 0])],FairplayEncryptedSession.prototype,"startFairplayLicenseSession",null);const bn=/^(?:.*)(skd:\/\/.+)$/i;class WebKitSession extends KeySession{get isDestroyed(){return this._isDestroyed}attachMedia(e,n){return this.target=e,e.addEventListener("webkitneedkey",this.boundHandleSessionCreation,!1),e.addEventListener("webkitkeyerror",this.boundDispatchKeyError),e}detachMedia(e){e&&(e.removeEventListener("webkitneedkey",this.boundHandleSessionCreation,!1),e.removeEventListener("webkitkeyerror",this.boundDispatchKeyError))}destroy(){je.debug("FPS destroy"),this._isDestroyed=!0,this.detachMedia(this.target),this.session&&(this.session.removeEventListener("webkitkeyerror",this.boundDispatchKeyError),this.session.removeEventListener("webkitkeymessage",this.boundStartLicenseSession))}createSession(e){je.debug("FPS createSession",e);const{initData:n,target:d}=e,{item:p}=this;if(!p)return je.error("Cannot createSession without item"),Promise.resolve();const h=this._extractAssetId(n);if(je.debug("extURI",h),!d.webkitKeys&&window.WebKitMediaKeys){const e=new window.WebKitMediaKeys(this.keySystem);d.webkitSetMediaKeys(e)}return this.loadCertificateBuffer().then(e=>{const y=this._concatInitDataIdAndCertificate(n,h,e),_="VIDEO"===d.tagName?Xe.AVC1:Xe.MP4,m=d.webkitKeys.createSession(_,y);this.addMediaKeySessionInfo(h,m,p),this.session=m,m.extURI=h,m.addEventListener("webkitkeyerror",this.boundDispatchKeyError),m.addEventListener("webkitkeymessage",this.boundStartLicenseSession)})}_extractAssetId(e){let n=String.fromCharCode.apply(null,new Uint16Array(e.buffer||e));const d=n.match(bn);return d&&d.length>=2&&(n=d[1]),je.debug("Extracted assetId from EXT-X-KEY URI",n),n}_concatInitDataIdAndCertificate(e,n,d){"string"==typeof n&&(n=we(n)),d=new Uint8Array(d);let p=0;const h=new ArrayBuffer(e.byteLength+4+n.byteLength+4+d.byteLength),y=new DataView(h);new Uint8Array(h,p,e.byteLength).set(e),p+=e.byteLength,y.setUint32(p,n.byteLength,!0),p+=4;const _=new Uint8Array(h,p,n.byteLength);_.set(n),p+=_.byteLength,y.setUint32(p,d.byteLength,!0),p+=4;return new Uint8Array(h,p,d.byteLength).set(d),new Uint8Array(h,0,h.byteLength)}applyDelayedCdmUpdates(){}loadKeys(e){return _async_to_generator$O((function*(){}))()}clearSessions(){return _async_to_generator$O((function*(){}))()}constructor(...e){super(...e),_define_property$17(this,"target",void 0),_define_property$17(this,"session",void 0),_define_property$17(this,"_isDestroyed",!1),_define_property$17(this,"isLegacyEme",!0)}}function asyncGeneratorStep$N(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$N(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$N(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$N(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}class MSSession extends KeySession{attachMedia(e,n){return this.keySystem=n.keySystem,e.addEventListener("msneedkey",this.boundHandleSessionCreation,!1),e.addEventListener("mskeyerror",this.boundDispatchKeyError),e}detachMedia(e){e.removeEventListener("msneedkey",this.boundHandleSessionCreation,!1),e.removeEventListener("mskeyerror",this.boundDispatchKeyError)}createSession(e){const{initData:n,target:d}=e;if(!d.msKeys){const e=new MSMediaKeys(this.keySystem);d.msSetMediaKeys(e)}const p=d.msKeys.createSession(Xe.MP4,n);return p.addEventListener("mskeyerror",this.dispatchKeyError),p.addEventListener("mskeymessage",this.startLicenseSession.bind(this)),p}applyDelayedCdmUpdates(){}loadKeys(e){return _async_to_generator$N((function*(){}))()}clearSessions(){return _async_to_generator$N((function*(){}))()}}const Sn={[We.WIDEVINE]:Ze.WIDEVINE,[We.FAIRPLAY]:Ze.FAIRPLAY,[We.PLAYREADY]:Ze.PLAYREADY},Pn=[0,0,1,222,112,115,115,104,0,0,0,0,154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149,0,0,1,190],En=[190,1,0,0,1,0,1,0,180,1];function concatenate(e,...n){let d=0;for(const y of n)d+=y.length;const p=new e(d);let h=0;for(const y of n)p.set(y,h),h+=y.length;return p}const{WIDEVINE:Tn,PLAYREADY:kn}=We,wn={};wn[Tn]=e=>{je.debug("generating Widevine pssh for keyId");const n=new Uint8Array([0,0,0,52,112,115,115,104,0,0,0,0,237,239,139,169,121,214,74,206,163,200,39,220,213,29,33,237,0,0,0,20,8,1,18,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);for(let d=0;d{je.debug("generating Playready pssh for keyId"),(e=>{const swap=(e,n,d)=>{const p=e[n];e[n]=e[d],e[d]=p};swap(e,0,3),swap(e,1,2),swap(e,4,5),swap(e,6,7)})(e);const n=Ie(e),d=''.replace("[KEYID]",n),p=we(d),h=new Uint8Array(p.buffer,p.byteOffset,p.byteLength);return concatenate(Uint8Array,Pn,En,h)};function asyncGeneratorStep$M(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$M(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$M(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$M(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$16(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class PreloadingEncryptedSession extends KeySession{attachMedia(e,n){this.keySystem=n.keySystem,this._keySystemAccess=n,this._target=e}detachMedia(){asAsync(this.clearSessions())}createSession(e){return _async_to_generator$M((function*(){}))()}_mediaKeysSetup(){var e=this;return _async_to_generator$M((function*(){const n=e._keySystemAccess;n&&(e._mediaKeysPromise||(e._mediaKeysPromise=new Promise(function(){var d=_async_to_generator$M((function*(d,p){const h=yield n.createMediaKeys();try{var y;yield null===(y=e._target)||void 0===y?void 0:y.setMediaKeys(h),e._mediaKeys=h}catch(Q){e.dispatchKeyError(Q),p(Q)}if(e.isWidevine){const n=yield e.loadCertificateBuffer();yield h.setServerCertificate(n)}d(h)}));return function(e,n){return d.apply(this,arguments)}}())),yield e._mediaKeysPromise)}))()}createSessionAndGenerateRequest(e,n,d){var p=this;return _async_to_generator$M((function*(){var h,y,_;const m=!!(null===(h=d)||void 0===h?void 0:h.isRenewal),g=!!(null===(y=d)||void 0===y?void 0:y.delayCdmUpdate);if(!m&&p.mediaKeySessions[e])return;je.debug(`createSessionAndGenerateRequest for item ${n.title}, isRenewal ${m}`);const b=null===(_=p._mediaKeys)||void 0===_?void 0:_.createSession(),{keySystem:S}=p;if(!b)return;p.addMediaKeySessionInfo(e,b,n,g);const P=(e=>{if(e.includes("data")){const[n,d]=e.split(",");return d}return e})(e),E=Te(P),T=p.isWidevine&&n.isSong||16===E.length;let k;var w;return je.debug("extracted uri",e),p.isPlayReady&&!T?(je.debug("handling Playready object"),b.extURI=e,w=E,k=concatenate(Uint8Array,new Uint8Array(Pn),w)):T?(je.debug("handling keyId only initData"),b.extURI="data:;base64,"+Ie(E),k=((e,n)=>{const d=wn[n];if(!d)return je.warn("No pssh generator for ",n),e;return d(Uint8Array.from(e))})(E,S)):(je.debug("handling pssh initData"),b.extURI=e,k=E),b.addEventListener("message",p.startLicenseSession),b.generateRequest("cenc",k).catch(e=>{if(e.message.match(/generateRequest.*\(75\)/))return b.generateRequest("cenc",k);throw e})}))()}handleLicenseJson(e,n,d){var p=this,_superprop_get_handleLicenseJson=()=>super.handleLicenseJson;return _async_to_generator$M((function*(){var h;if(!e)return;const y=p.mediaKeySessions[d];if(!y)return void je.debug("media key session does not exist, not updating");const _=e["renew-after"];if(e.license&&_){je.debug("Got renew after value",_,d);const e=p._mediaKeySessionRenewals,h=e[n.sessionId];h&&clearTimeout(h),e[n.sessionId]=setTimeout(()=>p._renewMediaKeySession(y,d),1e3*_)}yield _superprop_get_handleLicenseJson().call(p,e,n,d);const m=null===(h=p.mediaKeySessions[d])||void 0===h?void 0:h.oldSession;m&&(je.debug("removing old key session after updating",d),yield p._removeAndCloseSession(m),delete p.mediaKeySessions[d].oldSession,delete p._mediaKeySessionRenewals[m.sessionId])}))()}_renewMediaKeySession(e,n){delete this._mediaKeySessionRenewals[e.session.sessionId],asAsync(this.createSessionAndGenerateRequest(n,e.item,{isRenewal:!0}))}applyDelayedCdmUpdates(){var e=this;return _async_to_generator$M((function*(){je.debug("applying delayed CDM updates");const n=Object.entries(e.mediaKeySessions);for(const d of n){const[n,p]=d;if(p.delayCdmUpdate){const d=yield p["license-json"];je.debug("delayed update of license",d),p.delayCdmUpdate=!1,yield e.handleLicenseJson(d,p.session,n)}}}))()}loadKeys(e,n,d){var p=this;return _async_to_generator$M((function*(){var h;yield p._mediaKeysSetup();const y=p.filterKeyValues(e);for(const e of y){const{dataUri:h}=e;yield p.createSessionAndGenerateRequest(h,n,d)}if(null===(h=n)||void 0===h?void 0:h.isLiveAudioStation){const e=Object.keys(p.mediaKeySessions),n=y.reduce((e,n)=>(e[n.dataUri]=!0,e),{});for(const d of e)n[d]||(yield p._scheduleRemoveSession(d))}}))()}filterKeyValues(e){let n;if(1===e.length)n=e;else{const d=Sn[this.keySystem];n=e.filter(e=>e.keyFormat===d)}return n}clearSessions(e){var n=this;return _async_to_generator$M((function*(){var d;const p=n.mediaKeySessions;if(null===(d=e)||void 0===d?void 0:d.length){const d=n.filterKeyValues(e);for(const e of d){const d=e.dataUri;clearTimeout(n._sessionRemovalTimeouts[d]),yield n._removeSessionImmediately(d)}}else{Object.values(n._sessionRemovalTimeouts).forEach(e=>clearTimeout(e)),je.debug("clearing key sessions",p);for(const e of Object.keys(p))yield n._removeSessionImmediately(e)}}))()}_scheduleRemoveSession(e){var n=this;return _async_to_generator$M((function*(){if(!n.mediaKeySessions[e])return void je.warn("no session for dataUri, not scheduling remove",e);if(n._sessionRemovalTimeouts[e])return;const d=setTimeout(()=>{asAsync(n._removeSessionImmediately(e))},6e4);je.debug("deferring removal of keysession for dataUri",e),n._sessionRemovalTimeouts[e]=d}))()}_removeSessionImmediately(e){var n=this;return _async_to_generator$M((function*(){const d=n.mediaKeySessions[e];if(!d)return void je.warn("no session for dataUri, not removing",e);je.debug("removing keysession for",e);const{session:p,oldSession:h}=d;n._clearSessionRenewal(p),delete n.mediaKeySessions[e],yield n._removeAndCloseSession(p),h&&(yield n._removeAndCloseSession(h))}))()}_removeAndCloseSession(e){var n=this;return _async_to_generator$M((function*(){e.removeEventListener("message",n.startLicenseSession),je.debug("tearing down session",e.sessionId);try{yield e.remove()}catch(Ut){je.warn("Error invoking session.remove()",Ut)}finally{try{yield e.close()}catch(Ut){je.warn("Error invoking session.close()",Ut)}}}))()}_clearSessionRenewal(e){const n=this._mediaKeySessionRenewals[e.sessionId];n&&(je.debug("clearing scheduled license renewal for session",e.sessionId),clearTimeout(n),delete this._mediaKeySessionRenewals[e.sessionId])}constructor(...e){super(...e),_define_property$16(this,"_keySystemAccess",void 0),_define_property$16(this,"_mediaKeysPromise",void 0),_define_property$16(this,"_mediaKeys",void 0),_define_property$16(this,"_target",void 0),_define_property$16(this,"_sessionRemovalTimeouts",{}),_define_property$16(this,"_mediaKeySessionRenewals",{})}}function asyncGeneratorStep$L(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$L(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$L(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$L(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$15(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const In=BooleanDevFlag.register("mk-safari-modern-eme");class MediaExtension extends Notifications{get hasMediaKeySupport(){return hasMediaKeySupport()}get hasMediaSession(){return void 0!==this._session}get isFairplay(){return this._session.isFairplay}set extURI(e){this._session.extURI=e}set initiated(e){this._session.initiated=e}get session(){return this._session}clearSessions(e){var n=this;return _async_to_generator$L((function*(){var d;return null===(d=n.session)||void 0===d?void 0:d.clearSessions(e)}))()}initializeKeySystem(){var e=this;return _async_to_generator$L((function*(){yield e._attachSession();const{_session:n}=e;n&&[Je.playbackLicenseError,Je.playbackSessionError].forEach(d=>{n.addEventListener(d,n=>{e.dispatchEvent(d,n)})})}))()}_requestModernFairplayAccess(){var e=this;return _async_to_generator$L((function*(){const{contentType:n}=e,d=[{initDataTypes:["skd"],audioCapabilities:[{contentType:n,robustness:""}],videoCapabilities:[{contentType:n,robustness:""}],distinctiveIdentifier:"not-allowed",persistentState:"not-allowed",sessionTypes:["temporary"]}],[,p]=yield findMediaKeySystemAccess([We.FAIRPLAY],d);return p}))()}_attachSession(){var e=this;return _async_to_generator$L((function*(){var n,d;const{mediaElement:p,contentType:h}=e;if(null===(n=window.WebKitMediaKeys)||void 0===n?void 0:n.isTypeSupported(We.FAIRPLAY+".1_0",Xe.MP4)){let n;In.enabled&&e.hasMediaKeySupport&&(n=yield e._requestModernFairplayAccess()),n?(je.warn("media-extension: Using Fairplay modern EME"),e._session=new FairplayEncryptedSession,e._session.attachMedia(p,n)):(je.warn("media-extension: Using Fairplay legacy EME"),e._session=new WebKitSession,e._session.attachMedia(p,{keySystem:We.FAIRPLAY}))}else if(null===(d=window.MSMediaKeys)||void 0===d?void 0:d.isTypeSupported(We.PLAYREADY,Xe.MP4))e._session=new MSSession,e._session.attachMedia(p,{keySystem:We.PLAYREADY});else if(e.hasMediaKeySupport&&p.canPlayType(h)){e._session=new PreloadingEncryptedSession;const n=[{initDataTypes:["cenc","keyids"],audioCapabilities:[{contentType:h}],distinctiveIdentifier:"optional",persistentState:"required"}],d=potentialKeySystemsForAccess(),[,_]=yield findMediaKeySystemAccess(d,n);var y;if(_)null===(y=e._session)||void 0===y||y.attachMedia(p,_);else je.warn("media-extension: No keysystem detected!")}}))()}setMediaItem(e){!function(e,n){n.keyURLs&&(e.developerToken=gn.developerToken,e.userToken=gn.musicUserToken,e.item=n,e.adamId=n.songId,e.isLibrary=n.isCloudItem,e.setKeyURLs(n.keyURLs))}(this._session,e)}destroy(e){var n;null===(n=this._session)||void 0===n||n.detachMedia(e)}constructor(e,n){super([Je.playbackLicenseError,Je.playbackSessionError]),_define_property$15(this,"_session",void 0),_define_property$15(this,"mediaElement",void 0),_define_property$15(this,"contentType",void 0),this.mediaElement=e,this.contentType=n}}const On=BooleanDevFlag.register("mk-force-audio-mse"),shouldForceAudioMse=()=>On.enabled;function asyncGeneratorStep$K(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$14(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class ByteRangeSegment{load(){var e,n=this;return(e=function*(){const{url:e,range:d}=n;if(!e)return new Uint8Array;const p=new Headers;p.append("Range",d);const h=yield fetch(e,{headers:p}),y=yield h.arrayBuffer();return new Uint8Array(y)},function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$K(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$K(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}constructor({url:e,startByte:n,length:d,isInitSegment:p=!1}){_define_property$14(this,"url",void 0),_define_property$14(this,"range",void 0),_define_property$14(this,"startByte",void 0),_define_property$14(this,"endByte",void 0),_define_property$14(this,"length",void 0),_define_property$14(this,"startTime",void 0),_define_property$14(this,"endTime",void 0),_define_property$14(this,"isInitSegment",void 0),this.url=e,this.isInitSegment=p,this.startByte=parseInt(n,10),this.length=parseInt(d,10),this.endByte=this.startByte+this.length-1,this.range=`bytes=${this.startByte}-${this.endByte}`}}function asyncGeneratorStep$J(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$13(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class ContinuousSegment{load(){var e,n=this;return(e=function*(){const{url:e}=n;if(!e)return new Uint8Array;const d=yield fetch(e),p=yield d.arrayBuffer();return new Uint8Array(p)},function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$J(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$J(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}constructor(e,n=!1){_define_property$13(this,"url",void 0),_define_property$13(this,"isInitSegment",void 0),this.url=e,this.isInitSegment=n}}function _define_property$12(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const An=/^#EXT-X-BYTERANGE:([^\n]+)\n/gim,Rn=/^#EXT-X-MAP:([^\n]+)\n/im,$n=/#EXTINF:\d*\.\d*\,[\n](.+)|^#EXT-X-MAP:URI="([^"]*)"/gim,Cn=/#EXTINF:\d*\.\d*,\s*#EXT-X-BITRATE:\d{1,3}[\n](.+)|^#EXT-X-MAP:URI="([^"]*)"/gim;class SegmentList{get segments(){return this._segments}addSegment(e,n){this._addedSegments[n]||(je.debug("Adding segment",n),this._segments.push(e),this._addedSegments[n]=!0)}extractLiveRadioSegments(e,n){this._extractContinuousSegments($n,e,n)}extractHlsOffersSegments(e,n){this._extractContinuousSegments(Cn,e,n)}_extractContinuousSegments(e,n,d){if(!n||!e.test(n))return;let p;for(e.lastIndex=0;p=e.exec(n);){const e=p[0].startsWith("#EXT-X-MAP")?p[2]:p[1],n=rewriteLastUrlPath(d,e),h=p[0].startsWith("#EXT-X-MAP");this.addSegment(new ContinuousSegment(n,h),e)}}extractByteRangeSegments(e,n){if(!e||!An.test(e))return;const d=function(e){if(!e||!Rn.test(e))return;const[,n]=e.match(Rn);return n.split(",").reduce((e,n)=>{const[d,p]=n.split("=");return e[d.toLowerCase()]=p.replace(/\"/gi,""),e},{})}(e);var p;const h=null!==(p=n.split("/").pop())&&void 0!==p?p:"",y=n.replace(h,d.uri),[_,m]=d.byterange.split("@"),g=new ByteRangeSegment({url:y,startByte:m,length:_});var b;this.addSegment(g,g.range),(null!==(b=e.match(An))&&void 0!==b?b:[]).forEach(e=>{const[,n,d]=e.match(/^#EXT-X-BYTERANGE:(\d+)@(\d+)\n/),p=new ByteRangeSegment({url:y,startByte:d,length:n});this.addSegment(p,p.range)})}constructor(){_define_property$12(this,"_segments",[]),_define_property$12(this,"_addedSegments",{})}}var Mn;function asyncGeneratorStep$I(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$I(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$I(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$I(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$11(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$l(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}!function(e){e.keysParsed="keysParsed"}(Mn||(Mn={}));const Dn=/^#EXT-X-TARGETDURATION:(\d+)/im,xn=/^#EXT-X-KEY:[^\n]+URI="([^"]+)"/im,Ln=/^#EXT-X-KEY:[^\n]+URI="([^"]+)",KEYFORMAT="([^"]+)"/gim;function loadManifestData(e){return _loadManifestData.apply(this,arguments)}function _loadManifestData(){return(_loadManifestData=_async_to_generator$I((function*(e){return(yield fetch(e)).text()}))).apply(this,arguments)}class Manifest extends Notifications{parse(){const e=this._item,n=this._data;if(et!==We.FAIRPLAY||shouldForceAudioMse())if(this._detectKeyTags(),e.hasOffersHlsUrl)this._segmentList.extractHlsOffersSegments(n,e.assetURL);else if(e.isLiveRadioStation){this._segmentList.extractLiveRadioSegments(n,e.assetURL);const[,d]=this._data.match(Dn);je.debug(`manifest: setting up manifest refresh interval at ${d} seconds`);const p=1e3*parseInt(d,10);this._manifestRefreshInterval=setInterval(this.liveRadioRefresh,p)}else this._segmentList.extractByteRangeSegments(n,e.assetURL)}static load(e,n=!0){var d=this;return _async_to_generator$I((function*(){var p;je.debug("loading manifest for item",e.title);const h=e.assetURL;let y;const _=getSessionStorage(),m=!!_&&n;var g;if(m&&(y=null===(g=_)||void 0===g?void 0:g.getItem(h),y))return new d(y,e);const b=(new Date).getTime();y=yield loadManifestData(h);const S=new d(y,e);return S.downlink=function(e,n){return 8*n.length/(((new Date).getTime()-e)/1e3)/1024}(b,y),m&&(null===(p=_)||void 0===p||p.setItem(h,y)),Promise.resolve(S)}))()}get downlink(){return this._downlink}set downlink(e){this._downlink=e}get mediaItem(){return this._item}liveRadioRefresh(){var e=this;return _async_to_generator$I((function*(){const n=yield loadManifestData(e._url);e._data=n,e._detectKeyTags(),e._segmentList.extractLiveRadioSegments(n,e._url),e.dispatchEvent(Je.manifestParsed)}))()}segmentsForTimeRange(e){const n=Math.floor(e.start/10)+1,d=Math.floor(e.end/10)+1,{segments:p}=this;return[p[0],...p.slice(n,d+1)]}get segments(){return this._segmentList.segments}get extURI(){if(!this._extURI){const e=this._data.match(xn);je.debug("manifest: EXT_X_KEY_URI matches",e),this._extURI=e&&e[1]||void 0}return this._extURI}get keyValues(){let e=this._modernKeys;return e.length||(e=this._legacyKeys),e}_detectKeyTags(){const e=this.keyValues;e.length&&this.dispatchEvent(Mn.keysParsed,{item:this.mediaItem,keys:e})}get _legacyKeys(){const e=this._data.match(xn);je.debug("manifest: EXT_X_KEY_URI matches",e);const n=e&&e[1]||void 0;this._extURI=n;const d=[];return n&&d.push({keyFormat:Ze.WIDEVINE,dataUri:n}),d}get _modernKeys(){let e;Ln.lastIndex=0;const n=[];for(;e=Ln.exec(this._data);){const[d,p,h]=e;n.push({keyFormat:h,dataUri:p})}return n}stop(){this._manifestRefreshInterval&&clearInterval(this._manifestRefreshInterval)}constructor(e,n){super([Je.manifestParsed,Mn.keysParsed]),_define_property$11(this,"_data",void 0),_define_property$11(this,"_downlink",0),_define_property$11(this,"_extURI",void 0),_define_property$11(this,"_url",void 0),_define_property$11(this,"_item",void 0),_define_property$11(this,"_segmentList",new SegmentList),_define_property$11(this,"_manifestRefreshInterval",void 0),this._data=e,this._item=n,this._url=n.assetURL}}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$l("design:type",Function),_ts_metadata$l("design:paramtypes",[])],Manifest.prototype,"liveRadioRefresh",null);const Nn="seamlessAudioTransition",jn="bufferTimedMetadataDidChange",Un="loadSegmentError",Bn=isNodeEnvironment$1()?require("util").TextDecoder:self.TextDecoder;function encodedArrayToString(e,n="utf-8"){if("iso-8859-1"===n)return String.fromCharCode(...e);return new Bn(n).decode(e)}function readNullTerminatedString(e,n=0,d){const p=[];d=null!=d?d:e.length;for(let h=n;h{const[n]=function(e){const n=findBox(e,0,["moov","trak","mdia","minf","stbl","stsd"]),d=[];if(!n)return d;for(let p=n.start+16;pe.isWidevine);d&&(n.defaultKeyId=d.keyBytes)};function _define_property$Z(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function readSynchSafeUint32(e){return 2097152*(127&e[0])+16384*(127&e[1])+128*(127&e[2])+(127&e[3])}const Kn={0:"iso-8859-1",1:"utf-16",2:"utf-16be",3:"utf-8"},Gn={TPE1:!0,TIT2:!0,WXXX:!0,PRIV:!0,TALB:!0,CHAP:!0};class ID3{_parseID3Flags(e){this.unsynchronized=isBitAtPositionOn(e,7),this.hasExtendedHeader=isBitAtPositionOn(e,6),this.isExperimental=isBitAtPositionOn(e,5),this.hasFooter=isBitAtPositionOn(e,4)}_parseID3Frames(e,n,d,p){const h=new DataView(n.buffer,0,p),{minor:y}=this;for(;d+8<=p;){const _=Ee(n.subarray(d,d+4));d+=4;const m=4===y?readSynchSafeUint32(n.subarray(d,d+4)):h.getUint32(d);if(d+=4,n[d++],n[d++],Gn[_]){const h=d,y=this._extractID3FramePayload(n,_,m,h,p);if(y){const n=this.decodeID3Frame(y);n&&e.frames.push(n)}d+=m}else d+=m}}_extractID3FramePayload(e,n,d,p,h){const y=p+d;let _;return y<=h&&(_={type:n,size:d,data:e.slice(p,y)}),_}decodeID3Frame(e){if("TXXX"!==e.type)return"WXXX"===e.type?this.decodeWxxxFrame(e):"PRIV"===e.type?this.decodePrivFrame(e):"CHAP"===e.type?this.decodeChapFrame(e):"T"===e.type[0]?this.decodeTextFrame(e):{key:e.type,data:e.data}}decodeChapFrame(e){const{data:n}=e,d=new DataView(n.buffer),p={key:"CHAP",frames:[]};let[h,y]=readNullTerminatedString(n,0,n.length);return p.id=h,y++,p.startTime=d.getUint32(y),y+=4,p.endTime=d.getUint32(y),y+=4,y+=4,y+=4,this._parseID3Frames(p,n,y,n.length),p}decodeTextFrame(e){const{data:n}=e,d=Kn[n[0]],p=encodedArrayToString(n.subarray(1),d);return{key:e.type,text:p}}decodeWxxxFrame(e){const{data:n}=e,d=Kn[n[0]];let p=1;const h=encodedArrayToString(n.subarray(p),d);p+=h.length+1;return{key:"WXXX",description:h,text:encodedArrayToString(n.subarray(p))}}decodePrivFrame(e){const n=encodedArrayToString(e.data);if(!n)return;return{key:"PRIV",info:n,data:e.data.slice(n.length+1)}}constructor(e){_define_property$Z(this,"minor",void 0),_define_property$Z(this,"revision",void 0),_define_property$Z(this,"frameLength",void 0),_define_property$Z(this,"endPos",void 0),_define_property$Z(this,"frames",[]),_define_property$Z(this,"unsynchronized",!1),_define_property$Z(this,"hasExtendedHeader",!1),_define_property$Z(this,"hasFooter",!1),_define_property$Z(this,"isExperimental",!1);let n=0;const d=Ee(e.subarray(n,n+3));if(n+=3,"ID3"!==d)return;this.minor=e[n++],this.revision=e[n++];const p=e[n++];this._parseID3Flags(p);const h=readSynchSafeUint32(e.subarray(n,n+4));n+=4,this.frameLength=h;const y=n+h;if(this.endPos=y,this.hasExtendedHeader){n+=readSynchSafeUint32(e.subarray(n,n+4))}this.minor>2&&this._parseID3Frames(this,e,n,y)}}var Vn;function checkBoxName(e,n,d){return!(n+4>e.length)&&(e[n]===d[0]&&e[n+1]===d[1]&&e[n+2]===d[2]&&e[n+3]===d[3])}function findEmsgs(e){const n=e.length,d=[];if(function(e){var n;return(null===(n=e)||void 0===n?void 0:n.length)>=8&&checkBoxName(e,4,[102,116,121,112])}(e))return d;for(let p=0;pthis[n]===e[n]))return!1;const{links:n}=this,d=e.links;if(n.length!==d.length)return!1;for(let p=0;p{const{key:n}=e,d=Hn[n];var p;if(d)this[d]=null===(p=e.text)||void 0===p?void 0:p.replace(/\0/g,"");else if("WXXX"===e.key){if(e.description){const[n,d]=e.description.split("\0");this.links.push({description:n,url:d})}}else if("PRIV"===e.key){var h;const n=null===(h=e.info)||void 0===h?void 0:h.split("\0");if(n&&n.length&&n[0].startsWith("com.apple.radio.adamid")){n[1].split(",").forEach(e=>{const[n,d]=e.split(":");n&&d&&"0"!==d&&!hasOwn(this.storefrontToIds,n)&&(this.storefrontToIds[n]=d)})}}})}}function _define_property$X(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class Emsg{get length(){return this.data.length}get elementPresentationTime(){const{presentationTime:e,timeScale:n}=this;return e&&n?Math.round(e/n):NaN}get timedMetadata(){var e;if(this._timedMetadata)return this._timedMetadata;const n=null===(e=this.id3)||void 0===e?void 0:e.frames;return n?(this._timedMetadata=new TimedMetadata(n),this._timedMetadata):void 0}constructor(e){_define_property$X(this,"data",void 0),_define_property$X(this,"schemeIdUri",void 0),_define_property$X(this,"eventDuration",void 0),_define_property$X(this,"presentationTime",void 0),_define_property$X(this,"payload",void 0),_define_property$X(this,"timeScale",void 0),_define_property$X(this,"id3",void 0),_define_property$X(this,"id",void 0),_define_property$X(this,"_timedMetadata",void 0),this.data=e;const n=new DataView(e.buffer);let d=8;if(1!==e[d])return;d+=4,this.timeScale=n.getUint32(d),d+=4;const p=n.getUint32(d);d+=4;const h=n.getUint32(d);if(d+=4,this.presentationTime=Math.pow(2,32)*p+h,!Number.isSafeInteger(this.presentationTime))throw this.presentationTime=Number.MAX_SAFE_INTEGER,new Error("Failed to create 64 bit integer");this.eventDuration=n.getUint32(d),d+=4,this.id=n.getUint32(d),d+=4;const[y,_]=readNullTerminatedString(e,d);d+=_+1,this.schemeIdUri=y;const[m,g]=readNullTerminatedString(e,d);d+=g+1,this.payload=e.subarray(d,e.byteLength),this.id3=new ID3(this.payload)}}function _define_property$W(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class TimedMetadataManager{processEmsgs(e){const n=findEmsgs(e);n.length&&(this._currentEmsgInterval||(this._currentEmsgInterval=setInterval(this._getCurrentEmsg,1e3)),n.forEach(e=>{const n=new Emsg(e);this._emsgLookup[n.elementPresentationTime]=n}))}stop(){const{_currentEmsgInterval:e}=this;e&&clearInterval(e)}_getCurrentEmsg(){const{_currentTime:e,_emsgLookup:n}=this,d=Math.round(e()),p=[],h=Object.keys(n);for(let m=0;m{parseInt(d,10)n.currentTime,e=>{d.publish(jn,e.timedMetadata)})}}function asyncGeneratorStep$H(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$H(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$H(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$H(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$U(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$k(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$k(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const Wn=je.createChild("mse"),Yn=BooleanDevFlag.get("mk-mse-buffer"),{manifestParsed:zn}=Je;class MseBuffer{onSourceOpen(){Wn.debug("mediaSource open handler");const{mediaSource:e}=this;if(e.activeSourceBuffers.length>0)return void Wn.debug("not adding new source buffer");Wn.debug("adding new source buffer");const n=e.addSourceBuffer(Qe);this.sourceBuffer=n,n.addEventListener("updateend",this.updateEndHandler);const{clip:d,hasAppendWindowSupport:p}=this;d&&(p?(Wn.debug("appendWindowStart/End",d.start,d.end),n.appendWindowStart=d.start,n.appendWindowEnd=d.end):(Wn.debug("seeking for clip",d.start),asAsync(this.seek(d.start)))),this.updateSegmentToFetch(0,!0)}setNextManifest(e){Wn.debug("setting next manifest for ",e.mediaItem.title),this.nextSeamlessTransition?(Wn.debug("abandoning transition scheduled for "+this.nextSeamlessTransition),this.revertSeamlessTransition(!0),this.playbackTimeline.next={manifest:e}):(this.playbackTimeline.next={manifest:e},this.isFullyBuffered&&(Wn.debug("current song is fully buffered, beginning transition to next"),this.transitionToNextManifest()))}isItemPlaying(e){var n,d;const{playbackTimeline:p}=this,h=this.nextSeamlessTransition?null===(n=p.previous)||void 0===n?void 0:n.manifest.mediaItem:null===(d=p.current)||void 0===d?void 0:d.manifest.mediaItem;return!!h&&(Wn.debug(`isItemPlaying ${e.title}, ${h.title}, ${e.id===h.id}`),e.id===h.id)}get currentItem(){return this.manifest.mediaItem}get playableUrl(){let e=this._playableUrl;return e||(e=window.URL.createObjectURL(this.mediaSource),Wn.debug("created url",e),this._playableUrl=e,e)}get segments(){const{manifest:e,clip:n}=this;return n?e.segmentsForTimeRange(n):e.segments||[]}get currentTime(){return this._currentTime}set currentTime(e){if(e+=this.currentTimestampOffset,this._currentTime===e)return;const{nextSeamlessTransition:n}=this;if(n&&e>=n){var d,p;Wn.debug("setting offset to",n),this.currentTimestampOffset=n||0,this.nextSeamlessTransition=void 0,this.duration=this.manifest.mediaItem.playbackDuration/1e3,Wn.debug("buffer setting duration to",this.duration);const e={previous:null===(p=this.playbackTimeline.previous)||void 0===p||null===(d=p.manifest)||void 0===d?void 0:d.mediaItem,current:this.manifest.mediaItem};Wn.debug("dispatching seamless audio transition",e),this.dispatcher.publish(Nn,e)}this._currentTime=e;const{isOverBufferLimit:h,timeToTrim:y}=this,_=e>this.timeToTrim;h&&_&&(Wn.debug("buffer over limit, trimming to ",y),this.removeToTime(y),this.timeToTrim+=10)}get hasAppendWindowSupport(){var e;return void 0!==(null===(e=this.sourceBuffer)||void 0===e?void 0:e.appendWindowStart)}seek(e){var n=this;return _async_to_generator$H((function*(){const{duration:d,seekWhenUpdated:p,sourceBuffer:h}=n;if(n.resolveSeekPromise(!1),Wn.debug("seek to ",e),(e=+e)>d&&(Wn.debug("rounding seek time to duration",e,d),e=d),!h)return!1;if(n.revertSeamlessTransition(),h.updating)return Wn.debug("sourcebuffer updating, deferring seek"),new Promise(d=>{p&&p.resolve(!1),n.seekWhenUpdated={seek:n.seek.bind(n,e),resolve:d}});n.currentlyLoadingSegmentIndex=void 0,n.updateSegmentToFetch(0,!0),n.removeToTime(e),n.timeToTrim=10*Math.floor(e/10);const y=n.getSegmentForTime(e);0!==y&&(yield n.firstSegmentLoadPromise),Wn.debug("seeking to",e,"segment",y),n.updateSegmentToFetch(y,!0);const _=new Promise(d=>{n.seekResolver={time:e,resolve:d}});return n.checkSeekBuffered(),_}))()}clearNextManifest(){this.revertSeamlessTransition(!0),this.playbackTimeline.next=void 0}revertSeamlessTransition(e=!1){const{playbackTimeline:n,nextSeamlessTransition:d}=this;if(!d||!n.previous)return void Wn.debug("no need to revert, no transition");this.isAtEndOfStream=e,Wn.debug("reverting seamless transition with discardNextManifest",e),e?this.clearBufferToEnd(d):this.clearBuffer(),Wn.debug("abandoning transition to "+this.manifest.mediaItem.title),n.next=e?void 0:n.current,n.current=n.previous,n.previous=void 0;const p=this.manifest.mediaItem;Wn.debug("current item reverted to "+p.title),this.nextSeamlessTransition=void 0,this.duration=p.playbackDuration/1e3,Wn.debug("reverted duration to "+this.duration),e||(this.currentTimestampOffset=0,this.timestampOffsetAdjustment=0,Wn.debug("reverted currentTimestampOffset and timestampOffsetAdjustment to 0")),this.printInfo(),this.segmentIndexToFetch=-1}get streamHasEnding(){return!this.manifest.mediaItem.isLiveRadioStation}stop(){this.segmentProcessor.stop(),this.setEndOfStream(),this.remove()}remove(){var e;Wn.debug("removing sourceBuffer and mediaSource");const{sourceBuffer:n,mediaSource:d}=this;null===(e=this.seekResolver)||void 0===e||e.resolve(!1),this.manifest.removeEventListener(zn,this.onManifestParsed);const p=this._playableUrl;p&&(Wn.debug("revoking url",p),window.URL.revokeObjectURL(p)),d.removeEventListener("sourceopen",this.onSourceOpen),n&&(n.removeEventListener("updateend",this.updateEndHandler),this.sourceBuffer=void 0)}onManifestParsed(){const e=this.segmentIndexToFetch+1;Wn.debug("manifestParsed, loading segment",e),this.updateSegmentToFetch(e,!0)}updateEndHandler(){if(this.kickstartBuffer(),this.clearDeferredRemove())return;if(Wn.debug("update end",this.seekWhenUpdated),this.seekWhenUpdated){Wn.debug("updateEndHandler resolving seekWhenUpdated");const{seekWhenUpdated:e}=this;return asAsync(e.seek().then(e.resolve)),void(this.seekWhenUpdated=void 0)}this.checkSeekBuffered();const{clip:e,sourceBuffer:n,hasAppendWindowSupport:d}=this;if(e&&n&&!d){const{buffered:d}=n;if(this.isTimeBuffered(e.end+1)){const p=d.end(d.length-1);return Wn.debug("clipping sourcebuffer to",e.end,p),void n.remove(e.end,p)}}if(this.isAtEndOfStream)return Wn.debug("buffer is at end of stream"),this.streamHasEnding&&(Wn.debug("isAtEndOfStream, not fetching any more segments"),this.playbackTimeline.next||this.setEndOfStream(),this.transitionToNextManifest()),void(this.isAtEndOfStream=!1);Wn.debug("updateEndHandler invoking loadSegment"),asAsync(this.loadSegment())}clearDeferredRemove(){var e;if(0===this.deferredRemoves.length)return!1;const n=this.deferredRemoves.shift();return null===(e=this.sourceBuffer)||void 0===e||e.remove(n.start,n.end),!0}transitionToNextManifest(){var e;Wn.debug("beginning transition to next manifest");const{playbackTimeline:n,sourceBuffer:d}=this;if(!n.next||!d)return void Wn.debug("no next manifest");const p=this.endOfBufferTime||this.currentTimestampOffset;Wn.debug("setting seamless transition at",p),this.nextSeamlessTransition=p,this.timestampOffsetAdjustment=p,this.playbackTimeline.current.endTime=p,n.previous=n.current,Wn.debug("previous manifest set to",null===(e=n.previous)||void 0===e?void 0:e.manifest.mediaItem.title),n.current=n.next,Wn.debug("current manifest set to",n.current.manifest.mediaItem.title),n.next=void 0,this.updateSegmentToFetch(0,!0),this.printInfo()}updateSegmentToFetch(e,n=!1){this.segments.length&&e0&&(this.isTimeBuffered(e)||this.isOverBufferLimit)&&this.safeSourceBufferRemove(0,e)}safeSourceBufferRemove(e,n){const{sourceBuffer:d}=this;d&&(d.updating?this.deferredRemoves.push({start:e,end:n}):d.remove(e,n))}get previousOffset(){var e,n;return(null===(n=this.playbackTimeline)||void 0===n||null===(e=n.previous)||void 0===e?void 0:e.endTime)||0}get manifest(){var e;return null===(e=this.playbackTimeline.current)||void 0===e?void 0:e.manifest}checkSeekBuffered(){const{seekResolver:e,currentTimestampOffset:n}=this;if(!e)return;const{time:d}=e,p=d+n,h=this.isTimeBuffered(p);Wn.debug("resolving seek for time, adjustedTime, isBuffered",d,p,h),this.printBufferTimes(),h&&(Wn.debug("resolving seek to true for time:",p),this.element.currentTime=p,this.resolveSeekPromise(!0))}resolveSeekPromise(e){this.seekResolver&&(this.seekResolver.resolve(e),this.seekResolver=void 0)}get endOfBufferTime(){var e;const n=null===(e=this.sourceBuffer)||void 0===e?void 0:e.buffered;return!(!n||!n.length)&&n.end(n.length-1)}isTimeBuffered(e){var n;const d=null===(n=this.sourceBuffer)||void 0===n?void 0:n.buffered;if(!d)return!1;for(let p=0;p=d.start(p)&&e<=d.end(p))return!0;return!1}clearBufferToEnd(e){const{sourceBuffer:n}=this;if(!n||!n.buffered)return;const d=n.buffered.end(n.buffered.length-1);this.safeSourceBufferRemove(e,d)}clearBuffer(){const{sourceBuffer:e}=this;if(!e||!e.buffered)return;const n=e.buffered;for(let d=0;d=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$j(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}_ts_decorate$k([Bind(),_ts_metadata$k("design:type",Function),_ts_metadata$k("design:paramtypes",[])],MseBuffer.prototype,"onSourceOpen",null),_ts_decorate$k([Bind(),_ts_metadata$k("design:type",Function),_ts_metadata$k("design:paramtypes",[])],MseBuffer.prototype,"onManifestParsed",null),_ts_decorate$k([Bind(),_ts_metadata$k("design:type",Function),_ts_metadata$k("design:paramtypes",[])],MseBuffer.prototype,"updateEndHandler",null);const{mediaPlaybackError:Qn}=vt;class AudioPlayer extends BasePlayer{destroy(){var e=this,_superprop_get_destroy=()=>super.destroy;return _async_to_generator$G((function*(){_superprop_get_destroy().call(e),e._dispatcher.unsubscribe(Un,e.onLoadSegmentError)}))()}onLoadSegmentError(e){this._dispatcher.publish(Qn,new MKError(MKError.Reason.MEDIA_SESSION,e)),this.destroy()}get currentPlayingDate(){}get isPlayingAtLiveEdge(){return!1}get seekableTimeRanges(){return this.currentPlaybackDuration?[{start:0,end:this.currentPlaybackDuration}]:void 0}get supportsPreviewImages(){return!1}get _targetElement(){return this.audio}initializeExtension(){var e=this;return _async_to_generator$G((function*(){e.extension=new MediaExtension(e.audio,Qe),yield e.extension.initializeKeySystem(),e.extension.addEventListener(Je.playbackLicenseError,n=>{e.resetDeferredPlay(),e._dispatcher.publish(Qn,n)}),e.extension.addEventListener(Je.playbackSessionError,n=>{e._dispatcher.publish(Qn,new MKError(MKError.Reason.MEDIA_SESSION,n)),e.destroy()})}))()}initializeMediaElement(){var e=this;return _async_to_generator$G((function*(){const n=nextAvailableAudioElement();n.autoplay=!1,n.id="apple-music-player",n.controls=!1,n.muted=!1,n.playbackRate=1,n.preload="metadata",n.volume=1,e.audio=n,document.body.appendChild(n),je.debug("initializedMediaElement",n)}))()}removeEventHandlers(){this._targetElement.removeEventListener("timeupdate",this.onTimeUpdate),this._targetElement.removeEventListener("timeupdate",this.delayedCdmUpdateCheck),super.removeEventHandlers()}isPlayerSupported(){return!0}_stopMediaElement(){var e=this,_superprop_get__stopMediaElement=()=>super._stopMediaElement;return _async_to_generator$G((function*(){var n;yield _superprop_get__stopMediaElement().call(e),yield e.tearDownManifests(),null===(n=e._buffer)||void 0===n||n.stop(),e._buffer=void 0}))()}setNextSeamlessItem(e){var n=this;return _async_to_generator$G((function*(){var d;const{extension:p,nextManifest:h}=n,y=n._buffer;if(!y||!p)return;if((null===(d=h)||void 0===d?void 0:d.mediaItem.id)===e.id)return void je.debug("already have next manifest for ",e.title);n._targetElement.removeEventListener("timeupdate",n.onTimeUpdate),n._targetElement.addEventListener("timeupdate",n.onTimeUpdate),je.debug("player preparing next manifest for",e.title);const _=yield n.loadAndParseManifest(e,!1);y.setNextManifest(_),p.setMediaItem(e),p.extURI=_.extURI,n.nextManifest=_}))()}playItemFromEncryptedSource(n,d=!1,p){var h=this;return _async_to_generator$G((function*(){const y=h._paused&&!d;je.debug("playItemFromEncryptedSource",n.title);const _=y?void 0:h.startPlaybackSequence();if(n.playRawAssetURL)return n.playbackType=e.PlaybackType.unencryptedFull,h.nowPlayingItem=n,yield h._playAssetURL(n.assetURL,y),h.finishPlaybackSequence();const{extension:m}=h;var g,b;h.delaySeamlessCdmUpdates&&(null===(b=h.extension)||void 0===b||null===(g=b.session)||void 0===g||g.applyDelayedCdmUpdates());if(!m)return _;m.initiated=d,m.setMediaItem(n),n.playbackType=e.PlaybackType.encryptedFull,h.nowPlayingItem=n,n.state=F.loading;const S=yield h.getManifestForItem(n);h.manifest=S;const P=shouldForceAudioMse();if((n.isSong||m.isFairplay&&P)&&(m.extURI=S.extURI),n.state=F.ready,m.isFairplay&&!P){var E;let e=n.assetURL;(null===(E=p)||void 0===E?void 0:E.startTime)&&(e+="#t="+p.startTime),yield h._playAssetURL(e,y)}else{const e=h._buffer;e&&h.isSeamlessAudioTransitionsEnabled&&e.isItemPlaying(S.mediaItem)?je.debug("already have buffer, continuing playback"):yield h.beginNewBufferForItem(y,S,p)}return h.finishPlaybackSequence()}))()}getManifestForItem(e){var n=this;return _async_to_generator$G((function*(){var d,p;je.debug("reconciling item to play against playing item");const{nextManifest:h,manifest:y,isSeamlessAudioTransitionsEnabled:_}=n,m=n._buffer;if(!m||!y)return je.debug("no buffer or manifest, creating manifest [title, buffer, manifest]",e.title,!!m,!!y),n.loadAndParseManifest(e);if(!_)return je.debug("seamless transitions disabled, stopping and creating manifest for",e.title),yield n.tearDownManifests(),n.loadAndParseManifest(e);const g=!m.isItemPlaying(e);let b;if(je.debug("itemMismatch",g),h&&!g)je.debug(`replacing manifest for ${y.mediaItem.title} with next manifest ${h.mediaItem.title}`),b=h,n.nextManifest=void 0,je.debug("cease listening for keys on manifest for",y.mediaItem.title),yield n.tearDownManifest(y);else if(g){var S;(null===(S=h)||void 0===S?void 0:S.mediaItem.id)!==e.id?(je.debug(`item to play ${e.title} does not match playing or next items, tearing down all manifests`),yield n.tearDownManifests(),b=yield n.loadAndParseManifest(e)):(je.debug(`item to play ${e.title} matches next item, tearing down current manifest`),yield n.tearDownManifest(y),b=h)}else je.debug("item is already playing, returning existing manifest"),b=y;return je.debug("getManifestForItem loading keys for",y.mediaItem.title),null===(p=n.extension)||void 0===p||null===(d=p.session)||void 0===d||d.loadKeys(b.keyValues,b.mediaItem),b}))()}seekToTime(e){var n=this;return _async_to_generator$G((function*(){const d=n._buffer;if(d){je.debug("audio-player: buffer seek to",e);if(!(yield d.seek(e)))return;n.isSeamlessAudioTransitionsEnabled&&n.onTimeUpdate()}else je.debug("audio-player: media element seek to",e),n._targetElement.currentTime=e}))()}tearDownManifests(){var e=this;return _async_to_generator$G((function*(){e.manifest=yield e.tearDownManifest(e.manifest),e.nextManifest=yield e.tearDownManifest(e.nextManifest)}))()}tearDownManifest(e){var n=this;return _async_to_generator$G((function*(){const{extension:d}=n;e&&(je.debug("tearing down manifest for",e.mediaItem.title),e.stop(),d&&(yield d.clearSessions(e.keyValues)),e.removeEventListener(Mn.keysParsed,n.loadKeysHandler))}))()}loadAndParseManifest(e,n=!0){var d=this;return _async_to_generator$G((function*(){let p;je.debug(`will load and parse manifest for ${e.title}, loadKeys ${n}`);try{return p=yield Manifest.load(e,!1),n&&p.addEventListener(Mn.keysParsed,d.loadKeysHandler),p.parse(),p}catch(Q){d.resetDeferredPlay();const n=new MKError(MKError.Reason.NETWORK_ERROR,"Could not fetch manifest");throw n.data=Q,d._dispatcher.publish(Qn,n),n}}))()}onTimeUpdate(){if(!this._buffer)return;const{currentPlaybackTimeRemaining:e,nextManifest:n,delaySeamlessCdmUpdates:d}=this;if(n&&e<15){var p,h,y,_;if(je.debug("player loading keys for",n.mediaItem.title,d),d)null===(h=this.extension)||void 0===h||null===(p=h.session)||void 0===p||p.loadKeys(n.keyValues,n.mediaItem,{delayCdmUpdate:!0}),this._targetElement.addEventListener("timeupdate",this.delayedCdmUpdateCheck);else null===(_=this.extension)||void 0===_||null===(y=_.session)||void 0===y||y.loadKeys(n.keyValues,n.mediaItem);this._targetElement.removeEventListener("timeupdate",this.onTimeUpdate)}}delayedCdmUpdateCheck(){var e;const n=null===(e=this.nowPlayingItem)||void 0===e?void 0:e.playbackDuration,d=n?n/1e3:this.currentPlaybackDuration,p=this._currentTime,h=Number((d-p).toFixed(3));if(h<1){const e=1e3*h;je.debug("delayed CDM update in ",e),setTimeout(()=>{var e,n;je.debug("applying delayed CDM update"),null===(n=this.extension)||void 0===n||null===(e=n.session)||void 0===e||e.applyDelayedCdmUpdates()},e),this._targetElement.removeEventListener("timeupdate",this.delayedCdmUpdateCheck)}}loadKeysHandler(e){var n,d;null===(d=this.extension)||void 0===d||null===(n=d.session)||void 0===n||n.loadKeys(e.keys,e.item)}beginNewBufferForItem(e,n,d){var p=this;return _async_to_generator$G((function*(){if(je.debug("creating new MseBuffer for item",n.mediaItem.title,e),p._buffer&&(je.debug("stopping old buffer"),p._buffer.stop()),p._buffer=new MseBuffer({dispatcher:p._dispatcher,element:p._targetElement,duration:n.mediaItem.playbackDuration/1e3,manifest:n}),yield p._playAssetURL(p._buffer.playableUrl,!0),!e){var h;let e=Promise.resolve();return(null===(h=d)||void 0===h?void 0:h.startTime)&&(e=p.seekToTime(d.startTime)),e.then(()=>p._playMedia())}}))()}setPresentationMode(e){return _async_to_generator$G((function*(){return Promise.resolve()}))()}loadPreviewImage(e){return _async_to_generator$G((function*(){}))()}constructor(e){var n,d;super(e),_define_property$T(this,"currentAudioTrack",void 0),_define_property$T(this,"currentTextTrack",void 0),_define_property$T(this,"textTracks",[]),_define_property$T(this,"audioTracks",[]),_define_property$T(this,"audio",void 0),_define_property$T(this,"isSeamlessAudioTransitionsEnabled",!1),_define_property$T(this,"delaySeamlessCdmUpdates",!1),_define_property$T(this,"extension",void 0),_define_property$T(this,"mediaPlayerType","audio"),_define_property$T(this,"manifest",void 0),_define_property$T(this,"nextManifest",void 0);const p=null!==(d=null===(n=e.bag)||void 0===n?void 0:n.features)&&void 0!==d?d:{};this.isSeamlessAudioTransitionsEnabled=!!p["seamless-audio-transitions"],this.delaySeamlessCdmUpdates=!!p["delay-seamless-cdm-updates"],window.audioPlayer=this,this._dispatcher.subscribe(Un,this.onLoadSegmentError)}}function asyncGeneratorStep$F(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$F(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$F(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$F(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$S(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}_ts_decorate$j([Bind(),_ts_metadata$j("design:type",Function),_ts_metadata$j("design:paramtypes",[void 0])],AudioPlayer.prototype,"onLoadSegmentError",null),_ts_decorate$j([AsyncDebounce(250),_ts_metadata$j("design:type",Function),_ts_metadata$j("design:paramtypes",[Number])],AudioPlayer.prototype,"seekToTime",null),_ts_decorate$j([Bind(),_ts_metadata$j("design:type",Function),_ts_metadata$j("design:paramtypes",[])],AudioPlayer.prototype,"onTimeUpdate",null),_ts_decorate$j([Bind(),_ts_metadata$j("design:type",Function),_ts_metadata$j("design:paramtypes",[])],AudioPlayer.prototype,"delayedCdmUpdateCheck",null),_ts_decorate$j([Bind(),_ts_metadata$j("design:type",Function),_ts_metadata$j("design:paramtypes",[void 0])],AudioPlayer.prototype,"loadKeysHandler",null);class EncryptedSession extends KeySession{attachMedia(e,n){var d=this;return _async_to_generator$F((function*(){d.keySystem=n.keySystem,d._keySystemAccess=n,e.addEventListener("encrypted",d.boundHandleSessionCreation,!1)}))()}detachMedia(e){e.removeEventListener("encrypted",this.boundHandleSessionCreation)}createSession(e){var n=this;return _async_to_generator$F((function*(){je.debug("Encrypted createSession",e);const d=n._keySystemAccess;if(!d)return;const{initData:p,initDataType:h,target:y}=e;return n._mediaKeysPromise||(n._mediaKeysPromise=new Promise(function(){var e=_async_to_generator$F((function*(e,p){const h=yield d.createMediaKeys();try{yield y.setMediaKeys(h)}catch(Q){n.dispatchKeyError(Q),p(Q)}const _=yield n.loadCertificateBuffer();yield h.setServerCertificate(_),n._mediaKeysServerCertificate=_,e(h)}));return function(n,d){return e.apply(this,arguments)}}())),yield n._mediaKeysPromise,n._mediaKeysServerCertificate?n._createSession(y,p,h):void 0}))()}generatePSSH(e){const n=new Uint8Array([0,0,0,52,112,115,115,104,0,0,0,0,237,239,139,169,121,214,74,206,163,200,39,220,213,29,33,237,0,0,0,20,8,1,18,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),d=Te(e);for(let p=0;pe.isWidevine))||void 0===_?void 0:_.rawBytes,d=Ie(e);je.debug("extracted uri",d),p.extURI=d,y=n}return p.addEventListener("message",this.startLicenseSession),this._currentSession=p,p.generateRequest(d,y).catch(e=>{if(e.message.match(/generateRequest.*\(75\)/))return p.generateRequest(d,y);throw e})}_teardownCurrentSession(){this._currentSession&&(je.debug("tearing down media key session",this._currentSession),this._currentSession.removeEventListener("message",this.startLicenseSession),this._currentSession=void 0)}applyDelayedCdmUpdates(){}loadKeys(e,n,d){return _async_to_generator$F((function*(){}))()}clearSessions(){return _async_to_generator$F((function*(){}))()}constructor(...e){super(...e),_define_property$S(this,"_currentSession",void 0),_define_property$S(this,"_keySystemAccess",void 0),_define_property$S(this,"_mediaKeysPromise",void 0),_define_property$S(this,"_mediaKeysServerCertificate",void 0)}}function asyncGeneratorStep$E(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$E(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$E(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$E(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$R(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class MediaExtensionStub extends Notifications{destroy(e){}setMediaItem(e){}initializeKeySystem(){var e=this;return _async_to_generator$E((function*(){e.session=new EncryptedSession}))()}clearSessions(){return _async_to_generator$E((function*(){}))()}constructor(e){super(e),_define_property$R(this,"audioTracks",[]),_define_property$R(this,"textTracks",[]),_define_property$R(this,"session",void 0),_define_property$R(this,"extURI",void 0),_define_property$R(this,"hasMediaKeySupport",void 0),_define_property$R(this,"hasMediaSession",void 0),_define_property$R(this,"initiated",void 0),_define_property$R(this,"isFairplay",void 0),this.extURI="",this.hasMediaKeySupport=!0,this.initiated=!0,this.isFairplay=!0,this.hasMediaKeySupport=!0,this.hasMediaSession=!0}}function asyncGeneratorStep$D(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$D(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$D(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$D(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$Q(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class PlayerStub{get hasMediaElement(){return!0}get isEngagedInPlayback(){return!this.paused}get playbackRate(){return this._playbackRate}set playbackRate(e){this._playbackRate=e,this._dispatcher.publish(vt.playbackRateDidChange,new Event("ratechange"))}get volume(){return this._volume}set volume(e){this._volume=e,this._dispatcher.publish(vt.playbackVolumeDidChange,new Event("volumeChange"))}destroy(){}dispatch(){}exitFullscreen(){return _async_to_generator$D((function*(){}))()}loadPreviewImage(e){return _async_to_generator$D((function*(){}))()}initialize(){return _async_to_generator$D((function*(){}))()}isPaused(){return this.paused}calculateTime(e){return e}clearNextManifest(){}mute(){}newSeeker(){return new PlayerSeeker(this)}pause(e){return _async_to_generator$D((function*(){}))()}play(){return _async_to_generator$D((function*(){}))()}playItemFromEncryptedSource(e,n,d){return _async_to_generator$D((function*(){}))()}playItemFromUnencryptedSource(e,n,d){return _async_to_generator$D((function*(){}))()}preload(){return _async_to_generator$D((function*(){}))()}prepareToPlay(e,n,d){return _async_to_generator$D((function*(){}))()}seekToTime(e){return _async_to_generator$D((function*(){}))()}requestFullscreen(){return _async_to_generator$D((function*(){}))()}setPlaybackState(e,n){}setPresentationMode(e){return _async_to_generator$D((function*(){}))()}showPlaybackTargetPicker(){}stop(e){return _async_to_generator$D((function*(){}))()}stopMediaAndCleanup(){return _async_to_generator$D((function*(){}))()}supportsPictureInPicture(){return!1}tsidChanged(){}setNextSeamlessItem(e){return _async_to_generator$D((function*(){}))()}constructor(n){_define_property$Q(this,"bitrate",e.PlaybackBitrate.STANDARD),_define_property$Q(this,"audioTracks",[]),_define_property$Q(this,"currentBufferedProgress",0),_define_property$Q(this,"currentPlaybackDuration",0),_define_property$Q(this,"currentPlaybackProgress",0),_define_property$Q(this,"currentPlaybackTime",0),_define_property$Q(this,"currentPlaybackTimeRemaining",0),_define_property$Q(this,"currentPlayingDate",void 0),_define_property$Q(this,"isPlayingAtLiveEdge",!1),_define_property$Q(this,"isPlaying",!1),_define_property$Q(this,"isPrimaryPlayer",!0),_define_property$Q(this,"isReady",!1),_define_property$Q(this,"nowPlayingItem",void 0),_define_property$Q(this,"paused",!1),_define_property$Q(this,"playbackState",e.PlaybackStates.none),_define_property$Q(this,"playbackTargetAvailable",!1),_define_property$Q(this,"playbackTargetIsWireless",!1),_define_property$Q(this,"previewOnly",!1),_define_property$Q(this,"supportsPreviewImages",!1),_define_property$Q(this,"textTracks",[]),_define_property$Q(this,"extension",new MediaExtensionStub([])),_define_property$Q(this,"hasAuthorization",!0),_define_property$Q(this,"windowHandlers",void 0),_define_property$Q(this,"isDestroyed",!1),_define_property$Q(this,"services",void 0),_define_property$Q(this,"_dispatcher",void 0),_define_property$Q(this,"_volume",1),_define_property$Q(this,"_playbackRate",1),_define_property$Q(this,"currentAudioTrack",void 0),_define_property$Q(this,"currentTextTrack",void 0),_define_property$Q(this,"seekableTimeRanges",void 0),this.services=n.services,this._dispatcher=n.services.dispatcher,this.windowHandlers=new WindowHandlers(this,n.services.runtime)}}class VideoMediaExtension extends MediaExtension{destroy(e){var n;null===(n=this._session)||void 0===n||n.stopLicenseSession(),super.destroy(e)}}const Jn=BooleanDevFlag.register("mk-send-manifest-headers");function asyncGeneratorStep$C(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$C(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$C(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$C(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$P(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const Xn=["https://play.itunes.apple.com/","https://linear.tv.apple.com/","https://play-edge.itunes.apple.com"];const Zn=new class{fetchManifest(e){var n=this;return _async_to_generator$C((function*(){return je.info("fetching manifest at",e),shouldLoadManifestOnce()?n.fetchForCache(e):n.fetchOnly(e)}))()}getManifest(e){return this.cache.get(e)}clear(e){e?this.cache.delete(e):this.cache.clear()}fetchForCache(e){var n=this;return _async_to_generator$C((function*(){const d=function(e){const n={};Xn.some(n=>e.startsWith(n))&&gn.musicUserToken&&(!Jn.configured||Jn.enabled)&&(n["media-user-token"]=gn.musicUserToken,n.Authorization="Bearer "+gn.developerToken);return n}(e),p=yield n.fetch(e,{headers:new Headers(d)});let h=yield p.text();var y;h=((e,n)=>{je.info("converting manifest URIs to absolute paths");const d=new URL(e);let p=n.replace(/URI="([^"]*)"/g,(function(e,n){return`URI="${new URL(n,d).href}"`}));return p=p.replace(/^(#EXT-X-STREAM-INF:[^\n]*\n)(.*$)/gim,(function(e,n,p){return`${n}${new URL(p,d).href}`})),p})(e,h);const _={url:e,content:h,contentType:null!==(y=p.headers.get("content-type"))&&void 0!==y?y:void 0};return n.cache.set(e,_),_}))()}fetchOnly(e){var n=this;return _async_to_generator$C((function*(){const d=yield n.fetch(e),p=yield d.text();var h;return{url:e,content:p,contentType:null!==(h=d.headers.get("content-type"))&&void 0!==h?h:void 0}}))()}constructor(e={}){var n,d;_define_property$P(this,"cache",void 0),_define_property$P(this,"fetch",void 0),this.fetch=null!==(n=e.fetch)&&void 0!==n?n:fetch.bind(globalThis),this.cache=null!==(d=e.cache)&&void 0!==d?d:new Map}};function asyncGeneratorStep$B(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$B(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$B(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$B(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _ts_decorate$i(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$i(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const{mediaPlaybackError:eo}=vt,{playbackLicenseError:to,playbackSessionError:ro}=Je;class NativeSafariVideoPlayer extends VideoPlayer{get currentPlayingDate(){}get isPlayingAtLiveEdge(){return!1}get seekableTimeRanges(){return this.currentPlaybackDuration?[{start:0,end:this.currentPlaybackDuration}]:void 0}get supportsPreviewImages(){return!1}initializeExtension(){var e=this;return _async_to_generator$B((function*(){if(!e.video)return void je.warn("NativeSafariVideoPlayer.initializeExtension No video element, not initializing extension");const n=new VideoMediaExtension(e.video,'video/mp4;codecs="avc1.42E01E"');e.extension=n,yield n.initializeKeySystem(),n.addEventListener(to,e.onPlaybackLicenseError),n.addEventListener(ro,e.onPlaybackSessionError)}))()}destroy(){je.debug("native-safari-video-player.destroy");const{extension:e,video:n}=this;this._blobUrl&&(URL.revokeObjectURL(this._blobUrl),this._blobUrl=void 0),e&&n&&(e.removeEventListener(to,this.onPlaybackLicenseError),e.removeEventListener(ro,this.onPlaybackSessionError),n.removeEventListener("loadedmetadata",this.onMetadataLoaded),super.destroy())}loadPreviewImage(e){return _async_to_generator$B((function*(){}))()}playHlsStream(e,n,d={}){var p=this;return _async_to_generator$B((function*(){je.debug("native-safari-video-player.playHlsStream",e);const{video:h}=p;if(!h){const e="NativeSafariVideoPlayer.playHlsStream(): No video element";throw je.error(e),new Error(e)}p.setupTrackManagers();const y=p.startPlaybackSequence(),_=(p._shouldLoadManifestsOnce?p.playByBlob(e,h,d):p.playBySource(e,h,d)).then(()=>y);var m;n&&(null===(m=p.extension)||void 0===m||m.setMediaItem(n));return h.addEventListener("loadedmetadata",p.onMetadataLoaded),_}))()}onPlaybackSessionError(e){this._dispatcher.publish(eo,new MKError(MKError.Reason.MEDIA_SESSION,e))}onMetadataLoaded(){var e=this;return _async_to_generator$B((function*(){je.debug("native-safari-video-player.onMetadataLoaded");const{nowPlayingItem:n}=e;n&&(n.state=F.ready),yield e._playMedia(),e.finishPlaybackSequence()}))()}seekToTime(e){var n=this;return _async_to_generator$B((function*(){je.debug("native-safari-video-player: media element seek to",e),n._targetElement.currentTime=e}))()}playByBlob(e,n,d={}){var p=this;return _async_to_generator$B((function*(){je.debug("native-safari-video-player: playing video by blob");let h=Zn.getManifest(e);if(!h&&(je.debug("native-safari-video-player: fetching manifest"),h=yield Zn.fetchManifest(e),!h))throw je.error("No manifest for "+e),new MKError(MKError.Reason.CONTENT_UNAVAILABLE,"Failed to load manifest");je.debug("native-safari-video-player: loaded manifest",!!h),Zn.clear(e);const y=h.contentType,_=h.content.replace(/^#EXT-X-SESSION-DATA-ITUNES:.*$/gm,""),m=new Blob([_],{type:y});e=URL.createObjectURL(m),p._blobUrl=e;const g=document.createElement("source");g.setAttribute("src",e),y&&g.setAttribute("type",y),je.debug("native-safari-video-player: blob url",e),void 0!==d.startTime&&(n.currentTime=d.startTime),n.appendChild(g)}))()}playBySource(e,n,d={}){return _async_to_generator$B((function*(){je.debug("native-safari-video-player: playing video by source"),void 0!==d.startTime&&(e+="#t="+d.startTime),n.src=e}))()}constructor(...e){var n,d,p;super(...e),p=void 0,(d="_blobUrl")in(n=this)?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p}}function _define_property$N(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}_ts_decorate$i([Bind(),_ts_metadata$i("design:type",Function),_ts_metadata$i("design:paramtypes",[void 0])],NativeSafariVideoPlayer.prototype,"onPlaybackSessionError",null),_ts_decorate$i([Bind(),_ts_metadata$i("design:type",Function),_ts_metadata$i("design:paramtypes",[])],NativeSafariVideoPlayer.prototype,"onMetadataLoaded",null),_ts_decorate$i([AsyncDebounce(250),_ts_metadata$i("design:type",Function),_ts_metadata$i("design:paramtypes",[Number])],NativeSafariVideoPlayer.prototype,"seekToTime",null);class HlsJsPreviewImageLoader{loadPreviewImage(e){return this.lastPosition===e||(this.lastPosition=e,this.lastPromise=new Promise((n,d)=>{this.hls.loadImageIframeData$(e).subscribe(e=>{const{data:d}=e,p=new Blob([d],{type:"image/jpeg"});n(p)})})),this.lastPromise}constructor(e){_define_property$N(this,"hls",void 0),_define_property$N(this,"lastPosition",void 0),_define_property$N(this,"lastPromise",void 0),this.hls=e}}function _define_property$M(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$p(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$h(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const{audioTracksSwitched:io,audioTracksUpdated:no,inlineStylesParsed:oo,textTracksSwitched:ao,textTracksUpdated:so}=Je;class HlsJsTracks extends Notifications{get isDestroyed(){return this._isDestroyed}get audioTracks(){return this._audioTracks}get textTracks(){return this._textTracks}set audioTrack(e){this.session&&e&&void 0!==e.id&&(this.session.audioSelectedPersistentID=e.id)}set textTrack(e){var n,d;this.session.subtitleSelectedPersistentID=null!==(d=null===(n=e)||void 0===n?void 0:n.id)&&void 0!==d?d:-1}selectForcedTrack(){var e,n;const{session:d}=this;if(!(null===(e=d)||void 0===e?void 0:e.audioTracks))return;const p=d.audioTracks.filter(e=>e.persistentID===d.audioSelectedPersistentID),h=p&&p.length&&p[0];if(!h)return;const y=null===(n=d.subtitleMediaOptions.filter(e=>0===e.MediaSelectionOptionsDisplaysNonForcedSubtitles&&e.MediaSelectionOptionsExtendedLanguageTag===h.lang))||void 0===n?void 0:n[0];let _;return y?(je.debug("hlsjsTracks: found forced track for "+y.MediaSelectionOptionsExtendedLanguageTag),d.subtitleSelectedPersistentID=y.MediaSelectionOptionsPersistentID,_=this.normalizeTextTrack(y)):d.subtitleSelectedPersistentID=-1,_}audioTracksUpdated(e,n){const d=(n&&n.audioMediaSelectionGroup&&n.audioMediaSelectionGroup.MediaSelectionGroupOptions||[]).map(this.normalizeAudioTrack,this);this._audioTracks=d,this.dispatchEvent(no,d)}handleAudioTrackSwitched(){this.dispatchEvent(io,{selectedId:this.session.audioSelectedPersistentID})}handleInlineStylesParsed(e,n){this.dispatchEvent(oo,n)}handleManifestLoaded(e,n){this.audioTracksUpdated(e,n),this.subtitleTracksUpdated(e,n)}handleSessionDataComplete(e,n){var d,p;null===(p=n)||void 0===p||null===(d=p.itemList)||void 0===d||d.forEach(e=>{if("_hls.localized-rendition-names"===e["DATA-ID"]&&e.VALUE)try{this._localizedRenditionNames=JSON.parse(e.VALUE),this._audioTracks.forEach(e=>{var n;const d=null===(n=this._localizedRenditionNames)||void 0===n?void 0:n[e.label];d&&(e.localizedRenditionNames=d)}),this.dispatchEvent(no,this._audioTracks)}catch(Ut){return void je.error("Failed to parse _hls.localized-rendition-names",Ut)}})}handleSubtitleTrackSwitch(e,n){this.dispatchEvent(ao,n)}subtitleTracksUpdated(e,n){const d=n&&n.subtitleMediaSelectionGroup&&n.subtitleMediaSelectionGroup.MediaSelectionGroupOptions||[],p=[];d.forEach(e=>{0!==e.MediaSelectionOptionsDisplaysNonForcedSubtitles&&p.push(this.normalizeTextTrack(e))}),this._textTracks=p,this.dispatchEvent(so,p)}normalizeAudioTrack(e){const n=e.MediaSelectionOptionsTaggedMediaCharacteristics,d=(null!=n?n:[]).includes("public.accessibility.describes-video")?"description":"main";return _object_spread_props$f(_object_spread$p({},this.normalizeSelectionOption(e)),{enabled:!1,kind:d,characteristics:n})}normalizeTextTrack(e){var n;let d;return d=(null===(n=e.MediaSelectionOptionsTaggedMediaCharacteristics)||void 0===n?void 0:n.includes("public.accessibility.describes-music-and-sound"))||"clcp"===e.MediaSelectionOptionsMediaType?"captions":"subtitles",_object_spread_props$f(_object_spread$p({},this.normalizeSelectionOption(e)),{mode:"disabled",kind:d})}normalizeSelectionOption(e){return{id:e.MediaSelectionOptionsPersistentID,label:e.MediaSelectionOptionsName,language:e.MediaSelectionOptionsExtendedLanguageTag}}destroy(){this._isDestroyed=!0;const{MANIFEST_LOADED:e,AUDIO_TRACK_SWITCHED:n,SUBTITLE_TRACK_SWITCH:d,INLINE_STYLES_PARSED:p,SESSION_DATA_COMPLETE:h}=window.Hls.Events;this.session.off(e,this.handleManifestLoaded),this.session.off(n,this.handleAudioTrackSwitched),this.session.off(d,this.handleSubtitleTrackSwitch),this.session.off(p,this.handleInlineStylesParsed),this.session.off(h,this.handleSessionDataComplete)}constructor(e){super([io,no,oo,ao,so]),_define_property$M(this,"session",void 0),_define_property$M(this,"_audioTracks",void 0),_define_property$M(this,"_textTracks",void 0),_define_property$M(this,"_localizedRenditionNames",void 0),_define_property$M(this,"_isDestroyed",void 0),this.session=e,this._audioTracks=[],this._textTracks=[],this._isDestroyed=!1;const{MANIFEST_LOADED:n,AUDIO_TRACK_SWITCHED:d,SUBTITLE_TRACK_SWITCH:p,INLINE_STYLES_PARSED:h,SESSION_DATA_COMPLETE:y}=window.Hls.Events;this.session.on(n,this.handleManifestLoaded),this.session.on(d,this.handleAudioTrackSwitched),this.session.on(p,this.handleSubtitleTrackSwitch),this.session.on(h,this.handleInlineStylesParsed),this.session.on(y,this.handleSessionDataComplete)}}function asyncGeneratorStep$A(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$A(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$A(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$A(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$L(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$g(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$g(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}_ts_decorate$h([Bind(),_ts_metadata$h("design:type",Function),_ts_metadata$h("design:paramtypes",[])],HlsJsTracks.prototype,"handleAudioTrackSwitched",null),_ts_decorate$h([Bind(),_ts_metadata$h("design:type",Function),_ts_metadata$h("design:paramtypes",[void 0,void 0])],HlsJsTracks.prototype,"handleInlineStylesParsed",null),_ts_decorate$h([Bind(),_ts_metadata$h("design:type",Function),_ts_metadata$h("design:paramtypes",[void 0,void 0])],HlsJsTracks.prototype,"handleManifestLoaded",null),_ts_decorate$h([Bind(),_ts_metadata$h("design:type",Function),_ts_metadata$h("design:paramtypes",[void 0,void 0])],HlsJsTracks.prototype,"handleSessionDataComplete",null),_ts_decorate$h([Bind(),_ts_metadata$h("design:type",Function),_ts_metadata$h("design:paramtypes",[void 0,void 0])],HlsJsTracks.prototype,"handleSubtitleTrackSwitch",null);const co={bufferStalledError:"bufferStalledError",keySystemGenericError:"keySystemGenericError"};var lo;!function(e){e.Seek="Seek",e.HighBuffer="HighBuffer",e.LowBuffer="LowBuffer"}(lo||(lo={}));const uo=new Set([MKError.Reason.DEVICE_LIMIT,MKError.Reason.GEO_BLOCK,MKError.Reason.WIDEVINE_CDM_EXPIRED]),po={};po[We.FAIRPLAY]="fairplaystreaming",po[We.PLAYREADY]="playready",po[We.WIDEVINE]="widevine";const ho=BooleanDevFlag.get("mk-block-report-cdn-server"),yo={nightly:!0,carry:!0},_o=JsonDevFlag.register("mk-hlsjs-config-overrides");class HlsJsVideoPlayer extends VideoPlayer{get shouldDispatchErrors(){return!this.userInitiated||this._playbackDidStart}get supportsPreviewImages(){var e,n;return!this.services.runtime.isMobile&&(null===(n=this._hls)||void 0===n||null===(e=n.iframeVariants)||void 0===e?void 0:e.some(e=>"mjpg"===e.imageCodec))}get currentPlayingDate(){var e;return null===(e=this._hls)||void 0===e?void 0:e.playingDate}get isPlayingAtLiveEdge(){var e;const n=this._hls;return!(!n||!(null===(e=this.nowPlayingItem)||void 0===e?void 0:e.isLinearStream))&&!!n.isPlayingAtLive}get seekableTimeRanges(){const e=this._hls;return e?e.seekableTimeRanges:this.currentPlaybackDuration?[{start:0,end:this.currentPlaybackDuration}]:void 0}initializeExtension(){var e=this;return _async_to_generator$A((function*(){e._keySystem=yield findKeySystemPreference(e.services.runtime);try{var n;if(!Ye.urls.hls)throw new Error("bag.urls.hls is not configured");yield Promise.all([loadScript(Ye.urls.hls),null===(n=e._rtcTracker)||void 0===n?void 0:n.loadScript()])}catch(Ut){throw je.error("hlsjs-video-player failed to load script "+Ye.urls.hls,Ut),Ut}}))()}destroy(){var e;if(je.debug("hlsjs-video-player.destroy"),null===(e=this._hlsJsTracks)||void 0===e||e.destroy(),this._hls){const{ERROR:e,INTERNAL_ERROR:n,MANIFEST_PARSED:d,KEY_REQUEST_STARTED:p,LICENSE_CHALLENGE_CREATED:h,LEVEL_SWITCHED:y,UNRESOLVED_URI_LOADING:_}=window.Hls.Events,m=this._hls;m.stopLoad(),m.detachMedia(),m.off(e,this.handleHlsError),m.off(n,this.handleHlsError),m.off(d,this.handleManifestParsed),m.off(p,this.handleKeyRequestStarted),m.off(h,this.handleLicenseChallengeCreated),m.off(y,this.handleLevelSwitched),this._shouldLoadManifestsOnce&&m.off(_,this.handleUnresolvedUriLoading),m.destroy(),window.hlsSession=void 0}super.destroy(),asAsync(this._license.stop())}playHlsStream(e,n,d={}){var p=this;return _async_to_generator$A((function*(){je.debug("hlsjs-video-player.playHlsStream",e,n);const{_keySystem:h}=p;if(!h)return;let y,_;p._unrecoverableError=void 0,p.createHlsPlayer();const hasKey=(e,n)=>{var d,p;return void 0!==(null===(p=n)||void 0===p||null===(d=p.keyURLs)||void 0===d?void 0:d[e])};h===We.WIDEVINE&&hasKey("widevine-cert-url",n)&&(y="WIDEVINE_SOFTWARE",_={initDataTypes:["cenc","keyids"],distinctiveIdentifier:"optional",persistentState:"required"});const m={subs:"accepts-css",platformInfo:{requiresCDMAttachOnStart:h!==We.NONE,maxSecurityLevel:y,keySystemConfig:_},appData:{serviceName:Ye.app.name}},{_rtcTracker:g,_hls:b}=p;if(g){const e=g.prepareReportingAgent(n);void 0!==e&&(m.appData.reportingAgent=e)}je.debug("RTC: loadSource with load options",m);const S=p.startPlaybackSequence();return p._shouldLoadManifestsOnce&&(e=e.replace("https://","manifest://"),je.info("Manifest already loaded, passing url to HLSJS",e)),b.loadSource(e,m,d.startTime),b.attachMedia(p.video),n&&(p._licenseServerUrl=n.keyURLs["hls-key-server-url"],h===We.FAIRPLAY&&hasKey("hls-key-cert-url",n)?b.setProtectionData({fairplaystreaming:{serverCertUrl:n.keyURLs["hls-key-cert-url"]}}):hasKey("widevine-cert-url",n)&&b.setProtectionData({widevine:{serverCertUrl:n.keyURLs["widevine-cert-url"]}})),S}))()}createHlsPlayer(){const{_keySystem:e}=this,{Hls:n}=window,d=ue.get(),{os:p}=this.services.runtime,h={clearMediaKeysOnPromise:!1,customTextTrackCueRenderer:!0,debug:!!d,debugLevel:d,enableIFramePreloading:!1,enablePerformanceLogging:!!d,enablePlayReadyKeySystem:!0,enableQueryParamsForITunes:!this._shouldLoadManifestsOnce,enableRtcReporting:void 0!==this._rtcTracker,keySystemPreference:po[e],useMediaKeySystemAccessFilter:!0,nativeControlsEnabled:p.isAndroid,enableContentSteering:!0,allowFastSwitchUp:!0,enableBoss:!1};(e=>{const{Hls:n}=window;if(n&&ho){const d=deepClone(n.DefaultConfig.fragLoadPolicy);d.default.reportCDNServer=!1,d.customURL.reportCDNServer=!1,e.fragLoadPolicy=d}})(h),(e=>{const n=se.value;if(!n)return;var d;const p=null!==(d=determineCdnPathPrefix())&&void 0!==d?d:"";n.socketurl&&isAppleHostname(n.socketurl)&&yo[p.split(".")[0]]&&(e.socketurl=n.socketurl,e.socketid=n.socketid,e.log=n.log)})(h),(e=>{const n=_o.value;n&&"object"==typeof n&&Object.assign(e,n)})(h);const y=new n(h),{ERROR:_,INTERNAL_ERROR:m,MANIFEST_PARSED:g,KEY_REQUEST_STARTED:b,LICENSE_CHALLENGE_CREATED:S,LEVEL_SWITCHED:P,UNRESOLVED_URI_LOADING:E}=n.Events;y.on(_,this.handleHlsError),y.on(m,this.handleHlsError),y.on(g,this.handleManifestParsed),y.on(b,this.handleKeyRequestStarted),y.on(S,this.handleLicenseChallengeCreated),y.on(P,this.handleLevelSwitched),this._shouldLoadManifestsOnce&&y.on(E,this.handleUnresolvedUriLoading),this._hls=y,window.hlsSession=y,this._hlsJsTracks=new HlsJsTracks(this._hls),this.setupTrackManagers(this._hlsJsTracks),this._hlsPreviewImageLoader=new HlsJsPreviewImageLoader(this._hls)}handleUnresolvedUriLoading(e,n){var d=this;return _async_to_generator$A((function*(){const e=d._hls,p=n.uri,h=p.replace("manifest://","https://");var y;je.debug("handleUnresolvedUriLoading for uri ",p);const _=null!==(y=Zn.getManifest(h))&&void 0!==y?y:yield Zn.fetchManifest(h);_?(Zn.clear(h),e.off(window.Hls.Events.UNRESOLVED_URI_LOADING,d.handleUnresolvedUriLoading),e.handleResolvedUri(p,{url:h,status:200,data:_.content})):je.error("No cached manifest for "+h)}))()}handleLevelSwitched(e,n){var d,p,h;const{level:y}=n;if(!y)return;const _=null===(d=this._levels)||void 0===d?void 0:d.find(e=>e.persistentId===y);if(!_||(null===(p=this._currentLevel)||void 0===p?void 0:p.persistentId)===(null===(h=_)||void 0===h?void 0:h.persistentId))return;this._currentLevel=_;const m=void 0!==_.audioGroupId?this._channelsByGroup[_.audioGroupId]:void 0;this._dispatcher.publish(_t.hlsLevelUpdated,{level:_,channels:m})}handleHlsError(e,n){var d;if(je.warn("HLS.js error",JSON.stringify(n)),this._unrecoverableError)return;let p=new MKError(MKError.Reason.UNSUPPORTED_ERROR,n.reason);p.data=n;const{bufferStalledError:h,keySystemGenericError:y}=co;if(n.details===y)return void this._dispatcher.publish(y,p);let _=!1;var m;n.details===h&&n.stallType===lo.Seek&&-12909===(null===(d=n.response)||void 0===d?void 0:d.code)&&(p=new MKError(MKError.Reason.BUFFER_STALLED_ERROR,n.stallType),p.data={stallType:n.stallType,code:null===(m=n.response)||void 0===m?void 0:m.code},_=!0);if("output-restricted"===n.reason&&(p=new MKError(MKError.Reason.OUTPUT_RESTRICTED,n.reason)),n.fatal){if(this._hls.destroy(),!this.shouldDispatchErrors&&!_)throw p;this._dispatcher.publish(vt.mediaPlaybackError,p)}}handleManifestParsed(e,n){var d=this;return _async_to_generator$A((function*(){var e,p;let h;je.debug("handleManifestParsed",n),d._levels=null!==(e=n.levels)&&void 0!==e?e:[],d.nowPlayingItem.state=F.ready,d._channelsByGroup=(null!==(p=n.audioTracks)&&void 0!==p?p:[]).reduce((e,n)=>(e[n.groupId]=n.channels,e),{});try{yield d._playMedia()}catch(Ut){throw je.warn("error from media element, possibly non-fatal",Ut),Ut}finally{h=yield d.finishPlaybackSequence()}return h}))()}handleKeyRequestStarted(e,n){je.debug("hlsjs-video.handleKeyRequestStarted"),this._hls.generateKeyRequest(n.keyuri,{})}handleLicenseChallengeCreated(n,d){var p=this;return _async_to_generator$A((function*(){const{_licenseServerUrl:n,nowPlayingItem:h,_keySystem:y,userInitiated:_}=p;try{var m,g;const e=yield null===(m=p._license)||void 0===m?void 0:m.start(n,h,d,y,_),b={statusCode:e.status};(null===(g=e)||void 0===g?void 0:g.license)&&(y===We.FAIRPLAY?b.ckc=Te(e.license):b.license=Te(e.license));const S=e["renew-after"];S&&(b.renewalDate=new Date(Date.now()+1e3*S)),p._hls.setLicenseResponse(d.keyuri,b)}catch(Q){var b;if(p._unrecoverableError)return;const h=Q.data,y={};void 0!==(null===(b=h)||void 0===b?void 0:b.status)&&(y.statusCode=+h.status),je.warn("Passing license response error to Hls.js",y),p._hls.setLicenseResponse(d.keyuri,y),MKError.isMKError(Q)&&uo.has(Q.reason)&&(p._unrecoverableError=Q,p.resetDeferredPlay(),yield p.stop({endReasonType:e.PlayActivityEndReasonType.FAILED_TO_LOAD,userInitiated:_})),p.onPlaybackLicenseError(Q)}}))()}seekToTime(e){var n=this;return _async_to_generator$A((function*(){n._hls?(je.debug("hlsjs-video: hls seekTo",e),n._hls.seekTo=e):(je.debug("hlsjs-video: media element seek to",e),n._targetElement.currentTime=e)}))()}loadPreviewImage(e){var n=this;return _async_to_generator$A((function*(){var d;return null===(d=n._hlsPreviewImageLoader)||void 0===d?void 0:d.loadPreviewImage(e)}))()}constructor(e){var n,d;super(e),_define_property$L(this,"_hls",void 0),_define_property$L(this,"_hlsPreviewImageLoader",void 0),_define_property$L(this,"_hlsJsTracks",void 0),_define_property$L(this,"_keySystem",void 0),_define_property$L(this,"_license",void 0),_define_property$L(this,"_rtcTracker",void 0),_define_property$L(this,"_levels",void 0),_define_property$L(this,"_channelsByGroup",{}),_define_property$L(this,"_currentLevel",void 0),_define_property$L(this,"_licenseServerUrl",void 0),_define_property$L(this,"_unrecoverableError",void 0),this._rtcTracker=null===(d=e)||void 0===d||null===(n=d.playbackServices)||void 0===n?void 0:n.getRTCStreamingTracker(),this._license=new License}}var fo;_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[String,"undefined"==typeof HlsUnresolvedUriData?Object:HlsUnresolvedUriData])],HlsJsVideoPlayer.prototype,"handleUnresolvedUriLoading",null),_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[void 0,void 0])],HlsJsVideoPlayer.prototype,"handleLevelSwitched",null),_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[void 0,void 0])],HlsJsVideoPlayer.prototype,"handleHlsError",null),_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[void 0,void 0])],HlsJsVideoPlayer.prototype,"handleManifestParsed",null),_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[void 0,void 0])],HlsJsVideoPlayer.prototype,"handleKeyRequestStarted",null),_ts_decorate$g([Bind(),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[void 0,void 0])],HlsJsVideoPlayer.prototype,"handleLicenseChallengeCreated",null),_ts_decorate$g([AsyncDebounce(250),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[Number])],HlsJsVideoPlayer.prototype,"seekToTime",null),_ts_decorate$g([(fo=250,(e,n,d)=>{const p=function(e,n){let d,p,h=0;const resetState=()=>{clearTimeout(p),p=0,d=void 0};return function(...y){const _=this;return new Promise((function(m,g){const b=Date.now();b-h{e.apply(_,d.args).then(d.resolve).catch(d.reject),resetState()},n-(b-h+1))):(resetState(),h=b,e.apply(_,y).then(m).catch(g))}))}}(d.value,fo);d.value=p}),_ts_metadata$g("design:type",Function),_ts_metadata$g("design:paramtypes",[Number])],HlsJsVideoPlayer.prototype,"loadPreviewImage",null),e.version="2.2346.3";const vo=e.version.split(".");vo[0];const mo=vo[vo.length-1];var go,bo;vo[0]="3",vo[vo.length-1]=mo+"-prerelease",e.version=vo.join("."),e.PlaybackActions=void 0,(go=e.PlaybackActions||(e.PlaybackActions={})).REPEAT="REPEAT",go.SHUFFLE="SHUFFLE",go.AUTOPLAY="AUTOPLAY",e.PlaybackMode=void 0,(bo=e.PlaybackMode||(e.PlaybackMode={}))[bo.PREVIEW_ONLY=0]="PREVIEW_ONLY",bo[bo.MIXED_CONTENT=1]="MIXED_CONTENT",bo[bo.FULL_PLAYBACK_ONLY=2]="FULL_PLAYBACK_ONLY";const So={configured:"musickitconfigured",loaded:"musickitloaded",audioTrackAdded:vt.audioTrackAdded,audioTrackChanged:vt.audioTrackChanged,audioTrackRemoved:vt.audioTrackRemoved,authorizationStatusDidChange:xe.authorizationStatusDidChange,authorizationStatusWillChange:xe.authorizationStatusWillChange,bufferedProgressDidChange:vt.bufferedProgressDidChange,capabilitiesChanged:"capabilitiesChanged",autoplayEnabledDidChange:"autoplayEnabledDidChange",drmUnsupported:vt.drmUnsupported,eligibleForSubscribeView:xe.eligibleForSubscribeView,forcedTextTrackChanged:vt.forcedTextTrackChanged,mediaCanPlay:vt.mediaCanPlay,mediaElementCreated:vt.mediaElementCreated,mediaItemStateDidChange:A.mediaItemStateDidChange,mediaItemStateWillChange:A.mediaItemStateWillChange,mediaPlaybackError:vt.mediaPlaybackError,mediaSkipAvailable:"mediaSkipAvailable",mediaRollEntered:"mediaRollEntered",mediaUpNext:"mediaUpNext",metadataDidChange:vt.metadataDidChange,nowPlayingItemDidChange:vt.nowPlayingItemDidChange,nowPlayingItemWillChange:vt.nowPlayingItemWillChange,playInitiated:"playInitiated",playbackBitrateDidChange:vt.playbackBitrateDidChange,playbackDurationDidChange:vt.playbackDurationDidChange,playbackProgressDidChange:vt.playbackProgressDidChange,playbackRateDidChange:vt.playbackRateDidChange,playbackStateDidChange:vt.playbackStateDidChange,playbackStateWillChange:vt.playbackStateWillChange,playbackTargetAvailableDidChange:vt.playbackTargetAvailableDidChange,playbackTargetIsWirelessDidChange:vt.playbackTargetIsWirelessDidChange,playbackTimeDidChange:vt.playbackTimeDidChange,playbackVolumeDidChange:vt.playbackVolumeDidChange,playerTypeDidChange:vt.playerTypeDidChange,presentationModeDidChange:vt.presentationModeDidChange,primaryPlayerDidChange:vt.primaryPlayerDidChange,queueIsReady:"queueIsReady",queueItemsDidChange:"queueItemsDidChange",queueItemForStartPosition:"queueItemForStartPosition",queuePositionDidChange:"queuePositionDidChange",shuffleModeDidChange:"shuffleModeDidChange",repeatModeDidChange:"repeatModeDidChange",storefrontCountryCodeDidChange:xe.storefrontCountryCodeDidChange,storefrontIdentifierDidChange:xe.storefrontIdentifierDidChange,textTrackAdded:vt.textTrackAdded,textTrackChanged:vt.textTrackChanged,textTrackRemoved:vt.textTrackRemoved,timedMetadataDidChange:vt.timedMetadataDidChange,userTokenDidChange:xe.userTokenDidChange,webComponentsLoaded:"musickitwebcomponentsloaded"};function asyncGeneratorStep$z(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$K(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$f(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class SpanWatcher{startMonitor(){this.dispatcher.unsubscribe(So.playbackTimeDidChange,this.handleTimeChange),this.dispatcher.subscribe(So.playbackTimeDidChange,this.handleTimeChange)}stopMonitor(){this.dispatcher.unsubscribe(So.playbackTimeDidChange,this.handleTimeChange)}handleTimeChange(e,{currentPlaybackTime:n}){var d,p=this;return(d=function*(){!Number.isFinite(n)||np.stop?p.inWatchSpan=!1:p.inWatchSpan||(p.allowMultiple||p.stopMonitor(),p.inWatchSpan=!0,yield p.callback(n,p))},function(){var e=this,n=arguments;return new Promise((function(p,h){var y=d.apply(e,n);function _next(e){asyncGeneratorStep$z(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$z(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}constructor(e,n,d,p,h=!1){_define_property$K(this,"dispatcher",void 0),_define_property$K(this,"callback",void 0),_define_property$K(this,"start",void 0),_define_property$K(this,"stop",void 0),_define_property$K(this,"allowMultiple",void 0),_define_property$K(this,"inWatchSpan",void 0),this.dispatcher=e,this.callback=n,this.start=d,this.stop=p,this.allowMultiple=h,this.inWatchSpan=!1}}function _define_property$J(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$e(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$f("design:type",Function),_ts_metadata$f("design:paramtypes",[void 0,void 0])],SpanWatcher.prototype,"handleTimeChange",null);class PlaybackMonitor{activate(){this.isActive=!0,this.startMonitor()}deactivate(){this.isActive=!1,this.clearMonitor()}clearMonitor(){this.isMonitoring&&(this.watchers.forEach(e=>e.stopMonitor()),this.isMonitoring=!1)}shouldMonitor(){return this.isActive}startMonitor(){this.shouldMonitor()&&(this.watchers.forEach(e=>e.startMonitor()),this.isMonitoring=!0)}handleMediaItemChange(){this.isActive&&(this.clearMonitor(),this.shouldMonitor()&&this.startMonitor())}constructor(e){_define_property$J(this,"isActive",!1),_define_property$J(this,"isMonitoring",!1),_define_property$J(this,"apiManager",void 0),_define_property$J(this,"dispatcher",void 0),_define_property$J(this,"playbackController",void 0),_define_property$J(this,"watchers",[]),this.handlePlaybackThreshold=this.handlePlaybackThreshold.bind(this),this.playbackController=e.controller,this.dispatcher=e.services.dispatcher,this.dispatcher.subscribe(So.nowPlayingItemDidChange,this.handleMediaItemChange),this.apiManager=e.services.apiManager}}function asyncGeneratorStep$y(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$e("design:type",Function),_ts_metadata$e("design:paramtypes",[])],PlaybackMonitor.prototype,"handleMediaItemChange",null);class RollMonitor extends PlaybackMonitor{handlePlaybackThreshold(e,n){var d,p=this;return(d=function*(){if(!p.rollMap.has(n))return;const e=p.rollMap.get(n);p.dispatcher.publish(So.mediaRollEntered,e),p.rollMap.delete(n)},function(){var e=this,n=arguments;return new Promise((function(p,h){var y=d.apply(e,n);function _next(e){asyncGeneratorStep$y(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$y(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}shouldMonitor(){if(!super.shouldMonitor())return!1;return this.getRollMetadata().length>0}startMonitor(){this.setupWatchers(this.getRollMetadata()),super.startMonitor()}getRollMetadata(){const e=this.playbackController.nowPlayingItem;return void 0===e?[]:function(e,n=["pre-roll","mid-roll","post-roll"]){if(void 0===e.hlsMetadata)return[];const d=[];return n.forEach(n=>{const p=parseInt(e.hlsMetadata[n+".count"],10);if(!isNaN(p))for(let h=0;h{const{start:d,duration:p}=e,h=new SpanWatcher(this.dispatcher,this.handlePlaybackThreshold,d,d+p);n.push(h),this.rollMap.set(h,e)}),this.watchers=n}constructor(e){var n,d,p;super(e),n=this,d="rollMap",p=new Map,d in n?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p}}function asyncGeneratorStep$x(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}class SkipAvailable extends PlaybackMonitor{handlePlaybackThreshold(e,n){var d,p=this;return(d=function*(){if(!p.skipMap.has(n))return;const e=p.skipMap.get(n);p.dispatcher.publish(So.mediaSkipAvailable,e),p.skipMap.delete(n)},function(){var e=this,n=arguments;return new Promise((function(p,h){var y=d.apply(e,n);function _next(e){asyncGeneratorStep$x(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$x(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}shouldMonitor(){if(!super.shouldMonitor())return!1;return this.getNowPlayingMetadata().length>0}startMonitor(){this.setupWatchers(this.getNowPlayingMetadata()),super.startMonitor()}getNowPlayingMetadata(){const e=this.playbackController.nowPlayingItem;return void 0===e?[]:function(e){const n=parseInt(e.hlsMetadata["skip.count"],10),d=[];if(isNaN(n)||0===n)return d;for(let p=0;p{const{start:d,target:p,duration:h,promo:y}=e,_=new SpanWatcher(this.dispatcher,this.handlePlaybackThreshold,d,y?p:d+h);n.push(_),this.skipMap.set(_,e)}),this.watchers=n}constructor(e){var n,d,p;super(e),n=this,d="skipMap",p=new Map,d in n?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p}}function asyncGeneratorStep$w(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$G(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const hasContentCompletionThresholdData=e=>!isNaN(getUpNextStart(e))&&!isNaN(getWatchedTime(e)),getUpNextStart=e=>parseFloat(e.hlsMetadata["up-next.start"]),getWatchedTime=e=>parseFloat(e.hlsMetadata["watched.time"]),Po=function(){var e,n=(e=function*(e,n){if(e.isUTS&&e.assetURL)try{const d=generateAssetUrl(e,n),p=yield Zn.fetchManifest(d);e.hlsMetadata=function(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$d("design:type",Function),_ts_metadata$d("design:paramtypes",[])],UpNextMonitor.prototype,"handlePlaybackThreshold",null);const Eo=getHlsJsCdnConfig(),To={app:{},autoplay:{maxQueueSizeForAutoplay:50,maxQueueSizeInRequest:10,maxUpcomingTracksToMaintain:10},features:{xtrick:!0,isWeb:!0,bookmarking:!1,"seamless-audio-transitions":!0,"enhanced-hls":!1},urls:{hls:Eo.hls,rtc:Eo.rtc,mediaApi:"https://api.music.apple.com/v1",webPlayback:`https://${getCommerceHostname("play")}/WebObjects/MZPlay.woa/wa/webPlayback`}},ko=JsonDevFlag.register("mk-offers-key-urls").get();function asyncGeneratorStep$u(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$u(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$u(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$u(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$F(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$e(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}let wo;ko&&(To.urls.hlsOffersKeyUrls=ko);class Store{get authorizationStatus(){return this.storekit.authorizationStatus}get cid(){return this.storekit.cid}get developerToken(){return this.storekit.developerToken}get hasAuthorized(){return this._hasAuthorized}get isAuthorized(){return this.storekit.hasAuthorized}get isRestricted(){return this.storekit.authorizationStatus===Ae.RESTRICTED}get metricsClientId(){return this._metricsClientId}set metricsClientId(e){this._metricsClientId=e}get musicUserToken(){return this.storekit.userToken}set musicUserToken(e){this.storekit.userToken=e}set dynamicMusicUserToken(e){this.storekit.dynamicUserToken=e}get realm(){return this.storekit.realm}set requestUserToken(e){this._providedRequestUserToken=!0,this.storekit.requestUserToken=e}get restrictedEnabled(){return this.storekit.restrictedEnabled}set restrictedEnabled(e){this.storekit.overrideRestrictEnabled(e)}get storefrontCountryCode(){var e;return this.isAuthorized?this.storekit.storefrontCountryCode:null!==(e=this._defaultStorefrontCountryCode)&&void 0!==e?e:this.storekit.storefrontCountryCode}get storefrontId(){return this._apiStorefrontId||this.storekit.storefrontCountryCode}set storefrontId(e){e&&(e=e.toLowerCase()),e!==this._apiStorefrontId&&(this._apiStorefrontId=e,this._dispatcher.publish(_t.apiStorefrontChanged,{storefrontId:e}))}get subscribeURL(){return this.storekit.deeplinkURL({p:"subscribe"})}get subscribeFamilyURL(){return this.storekit.deeplinkURL({p:"subscribe-family"})}get subscribeIndividualURL(){return this.storekit.deeplinkURL({p:"subscribe-individual"})}get subscribeStudentURL(){return this.storekit.deeplinkURL({p:"subscribe-student"})}get userToken(){return this.musicUserToken}authorize(){var e=this;return _async_to_generator$u((function*(){if(e.storekit.userTokenIsValid)return e.storekit.userToken;let n;try{n=yield e.storekit.requestUserToken()}catch(Q){try{yield e.unauthorize()}catch(Ut){}throw new MKError(MKError.Reason.AUTHORIZATION_ERROR,"Unauthorized")}return e._providedRequestUserToken&&(e.storekit.userToken=n),e.storekit.userTokenIsValid?(yield e.storekit.requestStorefrontCountryCode().catch(function(){var n=_async_to_generator$u((function*(n){return yield e.unauthorize(),Promise.reject(n)}));return function(e){return n.apply(this,arguments)}}()),n):void 0}))()}unauthorize(){var e=this;return _async_to_generator$u((function*(){return e.storekit.revokeUserToken()}))()}constructor(n,d={}){_define_property$F(this,"precache",void 0),_define_property$F(this,"storekit",void 0),_define_property$F(this,"_apiStorefrontId",void 0),_define_property$F(this,"_defaultStorefrontCountryCode",void 0),_define_property$F(this,"_dispatcher",void 0),_define_property$F(this,"_hasAuthorized",!1),_define_property$F(this,"_metricsClientId",void 0),_define_property$F(this,"_providedRequestUserToken",!1),_define_property$F(this,"_ageVerificationRequired",(e,n)=>!0),this._dispatcher=d.services.dispatcher,d.precache&&(this.precache=d.precache),d.storefrontId&&(this.storefrontId=d.storefrontId),this._defaultStorefrontCountryCode=d.storefrontCountryCode,(d.affiliateToken||d.campaignToken)&&(d.linkParameters=_object_spread_props$e(function(e){for(var n=1;n{const{authorizationStatus:n}=e;this._hasAuthorized=[Ae.AUTHORIZED,Ae.RESTRICTED].includes(n)})}}function formattedSeconds(e){return{hours:Math.floor(e/3600),minutes:Math.floor(e%3600/60)}}function asyncGeneratorStep$t(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$t(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$t(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$t(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function hasAuthorization(e){return void 0===e&&(e=wo&&wo.storekit),void 0!==e&&e.hasAuthorized&&e.userTokenIsValid}function hasMusicSubscription(e){return _hasMusicSubscription.apply(this,arguments)}function _hasMusicSubscription(){return(_hasMusicSubscription=_async_to_generator$t((function*(e){return void 0===e&&(e=wo&&wo.storekit),e.hasMusicSubscription()}))).apply(this,arguments)}function _define_property$E(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$c(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$c(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class MediaSessionManager{onCapabilitiesChanged(){this._resetHandlers(),this._setMediaSessionHandlers()}onNowPlayingItemDidChange(e,{item:n}){this._setMediaSessionMetadata(n)}_setMediaSessionMetadata(e){var n,d;this.session&&"MediaMetadata"in window&&e&&(this.session.metadata=new window.MediaMetadata({title:e.title,artist:null!==(d=e.artistName)&&void 0!==d?d:null===(n=e.attributes)||void 0===n?void 0:n.showTitle,album:e.albumName,artwork:e.artwork?[96,128,192,256,384,512].map(n=>({src:formatArtworkURL(e.artwork,n,n),sizes:`${n}x${n}`,type:"image/jpeg"})):[]}))}_setMediaSessionHandlers(){this.session&&(this._resetHandlers(),this.session.setActionHandler("play",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.play()}),this.capabilities.canPause?this.session.setActionHandler("pause",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.pause()}):this.session.setActionHandler("pause",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.stop()}),this.capabilities.canSeek&&(this.session.setActionHandler("seekforward",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.seekForward()}),this.session.setActionHandler("seekbackward",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.seekBackward()})),this.capabilities.canSkipToNextItem&&this.session.setActionHandler("nexttrack",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.skipToNextItem()}),this.capabilities.canSkipToPreviousItem&&this.session.setActionHandler("previoustrack",()=>{var e;return null===(e=this.controller)||void 0===e?void 0:e.skipToPreviousItem()}))}_resetHandlers(){this.session&&(this.session.setActionHandler("play",void 0),this.session.setActionHandler("pause",void 0),this.session.setActionHandler("seekforward",void 0),this.session.setActionHandler("seekbackward",void 0),this.session.setActionHandler("nexttrack",void 0),this.session.setActionHandler("previoustrack",void 0))}constructor(e,n){_define_property$E(this,"capabilities",void 0),_define_property$E(this,"dispatcher",void 0),_define_property$E(this,"controller",void 0),_define_property$E(this,"session",void 0),this.capabilities=e,this.dispatcher=n,this.session=navigator.mediaSession,this.session&&(this.dispatcher.subscribe(So.nowPlayingItemDidChange,this.onNowPlayingItemDidChange),this.dispatcher.subscribe(So.capabilitiesChanged,this.onCapabilitiesChanged),this._setMediaSessionHandlers())}}function _define_property$D(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}var Io;_ts_decorate$c([Bind(),_ts_metadata$c("design:type",Function),_ts_metadata$c("design:paramtypes",[])],MediaSessionManager.prototype,"onCapabilitiesChanged",null),_ts_decorate$c([Bind(),_ts_metadata$c("design:type",Function),_ts_metadata$c("design:paramtypes",[void 0,void 0])],MediaSessionManager.prototype,"onNowPlayingItemDidChange",null),function(e){e[e.PAUSE=0]="PAUSE",e[e.EDIT_QUEUE=1]="EDIT_QUEUE",e[e.SEEK=2]="SEEK",e[e.REPEAT=3]="REPEAT",e[e.SHUFFLE=4]="SHUFFLE",e[e.SKIP_NEXT=5]="SKIP_NEXT",e[e.SKIP_PREVIOUS=6]="SKIP_PREVIOUS",e[e.SKIP_TO_ITEM=7]="SKIP_TO_ITEM",e[e.AUTOPLAY=8]="AUTOPLAY",e[e.VOLUME=9]="VOLUME"}(Io||(Io={}));class Capabilities{set controller(e){this._mediaSession.controller=e}updateChecker(e){this._checkCapability!==e&&(this._checkCapability=e,this._dispatcher.publish(So.capabilitiesChanged))}get canEditPlaybackQueue(){return this._checkCapability(Io.EDIT_QUEUE)}get canPause(){return this._checkCapability(Io.PAUSE)}get canSeek(){return this._checkCapability(Io.SEEK)}get canSetRepeatMode(){return this._checkCapability(Io.REPEAT)}get canSetShuffleMode(){return this._checkCapability(Io.SHUFFLE)}get canSkipToNextItem(){return this._checkCapability(Io.SKIP_NEXT)}get canSkipToMediaItem(){return this._checkCapability(Io.SKIP_TO_ITEM)}get canSkipToPreviousItem(){return this._checkCapability(Io.SKIP_PREVIOUS)}get canAutoplay(){return this._checkCapability(Io.AUTOPLAY)}get canSetVolume(){return this._checkCapability(Io.VOLUME)}constructor(e){_define_property$D(this,"_dispatcher",void 0),_define_property$D(this,"_checkCapability",void 0),_define_property$D(this,"_mediaSession",void 0),this._dispatcher=e,this._checkCapability=e=>e===Io.VOLUME,this._mediaSession=new MediaSessionManager(this,e)}}function _define_property$C(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function transform$6(e){return function(e){for(var n=1;n!0,toOptions:(e,n,d)=>[_object_spread_props$d(_object_spread$l({},e),{context:d})]};function _define_property$A(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$k(e){for(var n=1;n{var n;return"stations"===e.type&&(null===(n=e.attributes)||void 0===n?void 0:n.isLive)},toOptions:(e,n,d)=>{var p;return[_object_spread_props$c(_object_spread$k({},e),{context:d,container:{attributes:e.attributes,id:e.id,type:e.type,name:null===(p=d)||void 0===p?void 0:p.featureName}})]}},typeIs=(...e)=>({type:n})=>e.includes(n),withBagPrefix=e=>{if(void 0===e||""===e)return;const{prefix:n}=To;return n?`${n}:${e}`:e};function _define_property$z(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$b(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}var Ro;const getContainerName$1=(e,n)=>{var d,p;return null!==(Ro=null!=n?n:null===(p=e)||void 0===p||null===(d=p.container)||void 0===d?void 0:d.name)&&void 0!==Ro?Ro:mt.SONG},$o={toOptions:(e,n,d)=>{var p;const h=_object_spread_props$b(function(e){for(var n=1;ne.includes("udio")?(e=>{if(void 0===e)return;const[n]=Object.keys(e);return e[n]})(n):(e=>{if(void 0===e)return;const n=Object.keys(e);return e[n[n.length-1]]})(n),Co={condition:typeIs("uploaded-audios","uploadedAudio","uploaded-videos","uploadedVideo"),toOptions:(e,n,d)=>{var p,h,y,_;const m=_object_spread_props$a(_object_spread$i({},e),{context:d,attributes:_object_spread_props$a(_object_spread$i({},e.attributes),{assetUrl:parseAssets(e),playParams:null!==(_=null===(h=e)||void 0===h||null===(p=h.attributes)||void 0===p?void 0:p.playParams)&&void 0!==_?_:{id:e.id,kind:e.type}})});var g;(void 0!==n&&(m.container=n),void 0!==(null===(y=d)||void 0===y?void 0:y.featureName))&&(m.container=_object_spread_props$a(_object_spread$i({},m.container),{name:null===(g=d)||void 0===g?void 0:g.featureName}));return[m]}};const getFeatureName=(e,n)=>{if(n)return n;const d=function(e=[]){return 0!==e.length&&e.filter(({attributes:e})=>!!e&&(e.workName||e.movementName||e.movementCount||e.movementNumber)).length>0}(e.relationships.tracks.data);return"albums"===e.type||"library-albums"===e.type?d?mt.ALBUM_CLASSICAL:mt.ALBUM:"playlists"===e.type||"library-playlists"===e.type?d?mt.PLAYLIST_CLASSICAL:mt.PLAYLIST:void 0};var Mo;const Do=[{toOptions:(e,n,d)=>{var p;const h={attributes:e.attributes,id:e.id,type:e.type,name:withBagPrefix(getFeatureName(e,null===(p=d)||void 0===p?void 0:p.featureName))};return e.relationships.tracks.data.map(e=>({attributes:e.attributes,id:e.id,type:e.type,container:h,context:d}))},condition:(Mo="tracks",e=>{var n,d;return!!(null===(d=e.relationships)||void 0===d||null===(n=d[Mo])||void 0===n?void 0:n.data)}),requiredRelationships:["tracks"]},$o,Ao,Co],xo=Do.reduce((e,n)=>{const d=n.requiredRelationships;return d&&e.push(...d),e},[]),Lo=new Set(xo),isArrayOf=(e,n)=>Array.isArray(e)&&(0===e.length||n(e[0])),isMediaAPIResource=e=>e&&void 0!==e.id&&void 0!==e.type,isMediaItem=e=>e&&void 0!==e.id,isMPMediaItem=e=>e&&void 0!==e.contentId&&void 0!==e.metadata&&void 0!==e.metadata.itemId&&void 0!==e.metadata.itemType,isQueueItems=e=>e&&e.items&&Array.isArray(e.items),isQueueLoaded=e=>e&&e.loaded,isQueueURLOption=e=>e&&e.url;function _define_property$x(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const No=He.linkChild(new Logger("queue")),descriptorToMediaItems=e=>{if(!isQueueItems(e)&&!isQueueLoaded(e))return[];const n=isQueueLoaded(e)?loadedDescriptorToMediaItem(e):unloadedDescriptorToMediaItem(e);return n.forEach(n=>n.context=function(e){for(var n=1;nisArrayOf(e,isMPMediaItem)?e.map(e=>new MediaItem(transform$6(e))):isArrayOf(e,isMediaItem)?e.map(e=>new MediaItem(e)):[],loadedDescriptorToMediaItem=e=>{const n=[],{loaded:d,container:p,context:h}=e;return void 0===d?[]:isArrayOf(d,isDataRecord)?(d.forEach(e=>{n.push(...dataRecordToMediaItems(e,p,h))}),n):isArrayOf(d,isMediaAPIResource)?(d.forEach(e=>{n.push(...resourceToMediaItem(e,p,h))}),n):isDataRecord(d)?dataRecordToMediaItems(d,p,h):isMediaAPIResource(d)?resourceToMediaItem(d,p,h):[]},dataRecordToMediaItems=(e,n,d={})=>{const{data:p}=e.serialize(!0,void 0,{includeRelationships:Lo,allowFullDuplicateSerializations:!0});return resourceToMediaItem(p,n,d)},resourceToMediaItem=(e,n,d={})=>(No.debug("_resourceToMediaItem",e),((e,n,d={})=>{var p,h,y,_;n=null!==(y=null===(h=n)||void 0===h||null===(p=h.serialize)||void 0===p?void 0:p.call(h).data)&&void 0!==y?y:n;return(null!==(_=Do.find(p=>p.condition(e,n,d)))&&void 0!==_?_:Oo).toOptions(e,n,d).map(e=>new MediaItem(e))})(e,n,d));function _define_property$w(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}class BaseModifiableQueue{append(e){Be.warn("Append is not supported for this type of playback")}clear(){Be.warn("Clear is not supported for this type of playback")}insertAt(e,n){Be.warn("InsertAt is not supported for this type of playback")}prepend(e,n=!1){Be.warn("Prepend is not supported for this type of playback")}constructor(){_define_property$w(this,"queue",void 0),_define_property$w(this,"canModifyQueue",!1)}}class ModifiableQueue{append(e){const n=descriptorToMediaItems(e);this.queue.splice(this.queue.appendTargetIndex,0,n)}clear(){this.queue.length&&(this.queue.splice(0,this.queue.length),this.queue.reset())}insertAt(e,n){const d=descriptorToMediaItems(n);this.queue.splice(e,0,d)}prepend(e,n=!1){const d=descriptorToMediaItems(e),p=this.queue.position+1;n&&this.queue.splice(p,this.queue.length),this.queue.splice(p,0,d)}constructor(e,n){_define_property$w(this,"queue",void 0),_define_property$w(this,"canModifyQueue",!0),_define_property$w(this,"_mediaItemPlayback",void 0),this.queue=e,this._mediaItemPlayback=n}}function _define_property$v(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}var jo;e.PlayerRepeatMode=void 0,(jo=e.PlayerRepeatMode||(e.PlayerRepeatMode={}))[jo.none=0]="none",jo[jo.one=1]="one",jo[jo.all=2]="all";class BaseRepeatable{get repeatMode(){return e.PlayerRepeatMode.none}set repeatMode(e){e!==this.repeatMode&&Be.warn("setting repeatMode is not supported in this playback method")}constructor(){_define_property$v(this,"canSetRepeatMode",!1)}}class Repeatable{get repeatMode(){return this._repeatMode}set repeatMode(n){n in e.PlayerRepeatMode&&n!==this._repeatMode&&(this._repeatMode=n,this.dispatcher.publish(So.repeatModeDidChange,this._repeatMode))}constructor(n,d=e.PlayerRepeatMode.none){_define_property$v(this,"canSetRepeatMode",!0),_define_property$v(this,"dispatcher",void 0),_define_property$v(this,"_repeatMode",void 0),this.dispatcher=n,this._repeatMode=d}}function _define_property$u(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function asyncGeneratorStep$s(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$s(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$s(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$s(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$t(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}!function(e){for(var n=1;n{var n,d,p;return(null===(n=e)||void 0===n?void 0:n.isUTS)||Uo.includes(null===(d=e)||void 0===d?void 0:d.type)?{FORWARD:10,BACK:10}:(null===(p=e)||void 0===p?void 0:p.isAOD)?{FORWARD:30,BACK:30}:{FORWARD:30,BACK:15}})(e)}seekBackward(e=this._seekToBeginning){var n=this;return _async_to_generator$s((function*(){if(void 0===n.mediaItemPlayback.nowPlayingItem)return void Be.warn("Cannot seekBackward when nowPlayingItem is not yet set.");const d=n.mediaItemPlayback.currentPlaybackTime-n.getSeekSeconds(n.mediaItemPlayback.nowPlayingItem).BACK;d<0?yield e.call(n):yield n.seekToTime(d,St.Interval)}))()}seekForward(e=this._seekToEnd){var n=this;return _async_to_generator$s((function*(){if(void 0===n.mediaItemPlayback.nowPlayingItem)return void Be.warn("Cannot seekForward when nowPlayingItem is not yet set.");const d=n.mediaItemPlayback.currentPlaybackTime+n.getSeekSeconds(n.mediaItemPlayback.nowPlayingItem).FORWARD;d>n.mediaItemPlayback.currentPlaybackDuration?yield e.call(n):yield n.seekToTime(d,St.Interval)}))()}seekToTime(e,n=St.Manual){var d=this;return _async_to_generator$s((function*(){if(void 0===d.mediaItemPlayback.nowPlayingItem)return void Be.warn("Cannot seekToTime when nowPlayingItem is not yet set.");const p=d.mediaItemPlayback.nowPlayingItem,h=d.mediaItemPlayback.currentPlaybackTime,y=d.mediaItemPlayback.currentPlayingDate,_=Math.min(Math.max(0,e),d.mediaItemPlayback.currentPlaybackDuration);let m;if(p.isLinearStream&&void 0!==y){const e=1e3*(_-h);m=new Date(y.getTime()+e)}yield d.mediaItemPlayback.seekToTime(_,n),d._dispatcher.publish(_t.playbackSeek,{item:p,startPosition:h,position:_,playingDate:m,startPlayingDate:y,seekReasonType:n})}))()}_seekToBeginning(){var e=this;return _async_to_generator$s((function*(){yield e.seekToTime(0,St.Interval)}))()}_seekToEnd(){var e=this;return _async_to_generator$s((function*(){yield e.seekToTime(e.mediaItemPlayback.currentPlaybackDuration,St.Interval)}))()}constructor(e,n){_define_property$t(this,"_dispatcher",void 0),_define_property$t(this,"mediaItemPlayback",void 0),_define_property$t(this,"canSeek",void 0),this._dispatcher=e,this.mediaItemPlayback=n,this.canSeek=!0}}const shuffleCollection=e=>{const n=[...e],{length:d}=n;for(let p=0;p0?` (${h.join(", ")})`:""))}function _define_property$s(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_without_properties$1(e,n){if(null==e)return{};var d,p,h=function(e,n){if(null==e)return{};var d,p,h={},y=Object.keys(e);for(p=0;p=0||(h[d]=e[d]);return h}(e,n);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(e);for(p=0;p=0||Object.prototype.propertyIsEnumerable.call(e,d)&&(h[d]=e[d])}return h}const Fo=He.createChild("queue");class QueueItem{restrict(){return this.item.restrict()}constructor(e,n){var d,p;_define_property$s(this,"isAutoplay",!1),_define_property$s(this,"item",void 0),this.item=e,this.isAutoplay=null!==(p=null===(d=n)||void 0===d?void 0:d.isAutoplay)&&void 0!==p&&p}}function toQueueItems(e,n){return e.map(e=>new QueueItem(e,n))}function toMediaItems(e){return e.map(e=>e.item)}const parseQueueURLOption=e=>{if(!isQueueURLOption(e))return e;const{url:n}=e,d=_object_without_properties$1(e,["url"]),{contentId:p,kind:h,storefrontId:y}=formattedMediaURL(n);return h&&(d[h]=p),y&&(wo.storefrontId=y),Fo.debug("parseQueueURLOption",d),d},{queueItemsDidChange:Ko,queuePositionDidChange:Go}=So;class Queue{get isEmpty(){return 0===this.length}set isRestricted(e){this._isRestricted=e,this._isRestricted&&this._queueItems&&this._queueItems.forEach(e=>{e.restrict()})}get isRestricted(){return this._isRestricted}get appendTargetIndex(){let e=this.length;const n=this._queueItems.findIndex(e=>e.isAutoplay);return-1!==n&&this.positione.isAutoplay))}get unplayedAutoplayItems(){return toMediaItems(this._unplayedQueueItems.filter(e=>e.isAutoplay))}get userAddedItems(){return toMediaItems(this._queueItems.filter(e=>!e.isAutoplay))}get unplayedUserItems(){return toMediaItems(this._unplayedQueueItems.filter(e=>!e.isAutoplay))}get playableItems(){return toMediaItems(this._queueItems.filter(e=>canPlay(e.item,this.playbackMode)))}get unplayedPlayableItems(){return toMediaItems(this._unplayedQueueItems.filter(e=>canPlay(e.item,this.playbackMode)))}get length(){return this._queueItems.length}get nextPlayableItem(){if(-1!==this.nextPlayableItemIndex)return this.item(this.nextPlayableItemIndex)}get nextPlayableItemIndex(){return this._nextPlayableItemIndex=this.findPlayableIndexForward(),this._nextPlayableItemIndex}get position(){return this._position}set position(e){this._updatePosition(e)}get isInitiated(){return this.position>=0}get previousPlayableItem(){if(-1!==this.previousPlayableItemIndex)return this.item(this.previousPlayableItemIndex)}get previousPlayableItemIndex(){return this.findPlayableIndexBackward()}removeQueueItems(e){for(let n=this.length-1;n>=0;n--)e(this.queueItem(n),n)&&this.spliceQueueItems(n,1)}indexForItem(e){return("string"==typeof e?this._itemIDs:this.items).indexOf(e)}item(e){var n;return null===(n=this.queueItem(e))||void 0===n?void 0:n.item}get currentItem(){return this.item(this.position)}queueItem(e){var n;return null===(n=this._queueItems)||void 0===n?void 0:n[e]}updateItems(e){this._queueItems=toQueueItems(e),this._reindex(),this._dispatcher.publish(So.queueItemsDidChange,this.items)}get currentQueueItem(){return this.queueItem(this.position)}remove(e){if(deprecationWarning("remove",{message:"The queue remove function has been deprecated"}),e===this.position)throw new MKError(MKError.Reason.INVALID_ARGUMENTS);this.splice(e,1)}append(e=[]){return this.appendQueueItems(toQueueItems(e))}appendQueueItems(e=[]){return this.spliceQueueItems(this.appendTargetIndex,0,e)}splice(e,n,d=[]){return toMediaItems(this.spliceQueueItems(e,n,toQueueItems(d)))}spliceQueueItems(e,n,d=[],p=!0){d=d.filter(e=>{var n;return isPlayable(null===(n=e)||void 0===n?void 0:n.item,this.playbackMode)});const h=this._queueItems.splice(e,n,...d);return this._itemIDs.splice(e,n,...d.map(e=>e.item.id)),p&&(this._dispatcher.publish(_t.queueModified,{start:e,added:toMediaItems(d),removed:toMediaItems(h)}),this._dispatcher.publish(Ko,this.items)),h}reset(){const e=this.position;this._position=-1,this._dispatcher.publish(Go,{oldPosition:e,position:this.position})}_isSameItems(e){if(e.length!==this.length)return!1;const n=e.map(e=>e.id).sort(),d=[...this._itemIDs].sort();let p,h;try{p=JSON.stringify(n),h=JSON.stringify(d)}catch(Ut){return!1}return p===h}_reindex(){this._queueItems&&(this._itemIDs=this._queueItems.map(e=>e.item.id))}_updatePosition(e){if(e===this._position)return;const n=this._position;this._position=e;const d=this.item(e);d&&canPlay(d,this.playbackMode)||(this._position=this.findPlayableIndexForward(e)),this._position!==n&&this._dispatcher.publish(Go,{oldPosition:n,position:this._position})}findPlayableIndexForward(n=this.position){var d;if(this.isEmpty)return-1;if(this.isInitiated&&!indexInBounds([0,this.position],n))return-1;const p=null===(d=this.repeatable)||void 0===d?void 0:d.repeatMode;if(n0)for(let e=n-1;e>=0;e--){if(canPlay(this.item(e),this.playbackMode))return e}if(p===e.PlayerRepeatMode.all)for(let e=this.length-1;e>=n;e--){if(canPlay(this.item(e),this.playbackMode))return e}return-1}get _unplayedQueueItems(){const e=this.position<0?0:this.position;return this._queueItems.slice(e)}_getStartItemPosition(e){if(void 0===e)return-1;if("object"==typeof e&&"id"in e&&(e=e.id),"string"==typeof e)return this.indexForItem(e);const n=parseInt(""+e,10);return n>=0&&nisPlayable(e,this.playbackMode));this._queueItems=toQueueItems(d),this._reindex(),void 0!==n.descriptor.startWith&&(this.position=this._getStartItemPosition(n.descriptor.startWith))}}function isPlayable(n,d){return n.isPlayable||d!==e.PlaybackMode.FULL_PLAYBACK_ONLY&&void 0!==n.previewURL}function canPlay(e,n){return isPlayable(e,n)&&!function(e){return e.isRestricted}(e)&&!function(e){return e.isUnavailable}(e)}function indexInBounds(e,n){return e[0]<=n&&n<=e[1]}function _define_property$r(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$b(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}var Vo;e.PlayerShuffleMode=void 0,(Vo=e.PlayerShuffleMode||(e.PlayerShuffleMode={}))[Vo.off=0]="off",Vo[Vo.songs=1]="songs";const Ho="Shuffling is not supported in this playback method.";class BaseShuffler{set shuffle(e){Be.warn(Ho)}get shuffleMode(){return e.PlayerShuffleMode.off}set shuffleMode(e){Be.warn(Ho)}checkAndReshuffle(e){Be.warn(Ho)}constructor(){_define_property$r(this,"canSetShuffleMode",!1),_define_property$r(this,"queue",void 0)}}class Shuffler{get queue(){return this._queue}set queue(e){this._queue=e,this._unshuffledIDs=e.userAddedItems.map(e=>e.id),this.checkAndReshuffle(!1)}queueModifiedHandler(e,n){if(this._isSpliceFromShuffle)return void(this._isSpliceFromShuffle=!1);const{start:d,added:p,removed:h}=n;if(h.length>0){const e=h.map(e=>e.id);this._unshuffledIDs=this._unshuffledIDs.filter(n=>!e.includes(n))}p.length>0&&this._unshuffledIDs.splice(d,0,...p.map(e=>e.id))}set shuffle(n){this.shuffleMode=n?e.PlayerShuffleMode.songs:e.PlayerShuffleMode.off}get shuffleMode(){return this.mode}set shuffleMode(n){n!==this.shuffleMode&&n in e.PlayerShuffleMode&&(Be.debug(`mk: set shuffleMode from ${this.shuffleMode} to ${n}`),this.mode=n,this.mode===e.PlayerShuffleMode.songs?this.shuffleQueue():this.unshuffleQueue(),this.controller.nowPlayingItem&&(this._queue.position=this._queue.indexForItem(this.controller.nowPlayingItem.id)),this.dispatcher.publish(So.shuffleModeDidChange,this.shuffleMode))}checkAndReshuffle(n=!1){this.shuffleMode===e.PlayerShuffleMode.songs&&this.shuffleQueue(n)}shuffleQueue(e=!0){const{userAddedItems:n}=this._queue;if(n.length<=1)return n;const d=n.slice(0),p=this._queue.position>-1?d.splice(this._queue.position,1):[];let h=[];do{h=shuffleCollection(d)}while(d.length>1&&arrayEquals(h,d));const y=[...p,...h];this._isSpliceFromShuffle=!0,this._queue.spliceQueueItems(0,y.length,toQueueItems(y),e)}unshuffleQueue(e=!0){let n=[];const d=this._unshuffledIDs.reduce((e,n,d)=>(e[n]=d,e),{}),p=[];let h=0;const y=this._queue.item(this._queue.position);this._queue.userAddedItems.forEach(e=>{var _;const m=d[e.id];void 0===m&&p.push(e),n[m]=e,e.id===(null===(_=y)||void 0===_?void 0:_.id)&&(h=m)}),n=n.filter(Boolean);const _=n.concat(p);this._isSpliceFromShuffle=!0,this._queue.spliceQueueItems(0,_.length,toQueueItems(_),e),this._queue.position=h}constructor(n,{dispatcher:d}){_define_property$r(this,"controller",void 0),_define_property$r(this,"canSetShuffleMode",void 0),_define_property$r(this,"dispatcher",void 0),_define_property$r(this,"mode",void 0),_define_property$r(this,"_queue",void 0),_define_property$r(this,"_unshuffledIDs",void 0),_define_property$r(this,"_isSpliceFromShuffle",void 0),this.controller=n,this.canSetShuffleMode=!0,this.mode=e.PlayerShuffleMode.off,this._unshuffledIDs=[],this._isSpliceFromShuffle=!1,this.dispatcher=d,this.dispatcher.subscribe(_t.queueModified,this.queueModifiedHandler),this._queue=n.queue}}function asyncGeneratorStep$r(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$r(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$r(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$r(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$q(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$f(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$b("design:type",Function),_ts_metadata$b("design:paramtypes",[String,Object])],Shuffler.prototype,"queueModifiedHandler",null),function(e){e.continuous="continuous",e.serial="serial"}(qo||(qo={}));const{queueItemsDidChange:Wo}=So;class PlaybackController{get isDestroyed(){return this._isDestroyed}updateAutoplay(e,n){this.autoplayEnabled=n}constructContext(e,n){var d;let p=e.context;var h;return void 0!==e.featureName&&void 0===(null===(d=p)||void 0===d?void 0:d.featureName)&&(Be.warn("featureName is deprecated, pass it inside context"),p||(p={}),p.featureName=e.featureName),null!==(h=null!=p?p:n)&&void 0!==h?h:{}}get context(){return this._context}get continuous(){return this._continuous||this.hasAuthorization}set continuous(e){this._continuous=e}get autoplayEnabled(){return this._autoplayEnabled}set autoplayEnabled(e){this._autoplayEnabled=e}get previewOnly(){return this._mediaItemPlayback.previewOnly}get _dispatcher(){return this._services.dispatcher}get hasAuthorization(){return hasAuthorization(this.storekit)}get isPlaying(){return this._mediaItemPlayback.isPlaying}get isPrimaryPlayer(){return this._mediaItemPlayback.isPrimaryPlayer}set isPrimaryPlayer(e){this._mediaItemPlayback.isPrimaryPlayer=e}get isReady(){return this._mediaItemPlayback.isReady}get _mediaItemPlayback(){return this._services.mediaItemPlayback}get nowPlayingItem(){return this._mediaItemPlayback.nowPlayingItem}get nowPlayingItemIndex(){return this.queue?this.queue.position:-1}get playbackMode(){return this._playbackMode}set playbackMode(e){this._playbackMode=e,this.queue&&(this.queue.playbackMode=e)}get queue(){return this._queue}set queue(e){this._prepareQueue(e),this._queue=e,this._shuffler.queue=this._queue,this._queueModifier.queue=this._queue,this._dispatcher.publish(Wo,e.items)}get repeatMode(){return this._repeatable.repeatMode}set repeatMode(e){this._repeatable.repeatMode=e}get seekSeconds(){const{nowPlayingItem:e}=this;if(void 0!==e)return this._seekable.getSeekSeconds(e)}set shuffle(e){this._shuffler.shuffle=e}get shuffleMode(){return this._shuffler.shuffleMode}set shuffleMode(e){this._shuffler.shuffleMode=e}get storekit(){return this._storekit}set storekit(n){if(n){var d=this;n.addEventListener(xe.authorizationStatusWillChange,function(){var n=_async_to_generator$r((function*({authorizationStatus:n,newAuthorizationStatus:p}){n>Ae.DENIED&&p=0)return e.changeToMediaAtIndex(e.nowPlayingItemIndex);const{queue:n}=e;if(-1!==n.nextPlayableItemIndex)return e.changeToMediaAtIndex(n.nextPlayableItemIndex);n.isRestricted&&n.items.every(e=>e.isRestricted)&&e._dispatcher.publish(So.mediaPlaybackError,new MKError(MKError.Reason.CONTENT_RESTRICTED,"Content restricted"))}))()}playSingleMediaItem(e,n){var d=this;return _async_to_generator$r((function*(){yield Po(e,n),d._dispatcher.publish(So.queueItemsDidChange,[e]);const p=yield d._mediaItemPlayback.startMediaItemPlayback(e,!0);if(p){var h;const e={item:p,position:null!==(h=d._mediaItemPlayback.currentPlaybackTime)&&void 0!==h?h:0,playingDate:d._mediaItemPlayback.currentPlayingDate,userInitiated:!0};Be.debug("playSingleMediaItem: Dispatching DispatchTypes.playbackPlay event",e),d._dispatcher.publish(_t.playbackPlay,e)}}))()}onPlaybackStateDidChange(n,d){var p=this;return _async_to_generator$r((function*(){d.state===e.PlaybackStates.ended&&(p.continuous||p.repeatMode===e.PlayerRepeatMode.one)&&(Be.debug("controller detected track ended event, moving to next item."),p._dispatcher.publish(_t.applicationActivityIntent,{endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS,userInitiated:!1}),yield p._next())}))()}preload(){var e=this;return _async_to_generator$r((function*(){return e._mediaItemPlayback.preload()}))()}prepend(e,n){var d=this;return _async_to_generator$r((function*(){const p=yield d._dataForQueueOptions(e);return d._queueModifier.prepend(p,n),d.queue}))()}prepareToPlay(e){var n=this;return _async_to_generator$r((function*(){return n._mediaItemPlayback.prepareToPlay(e)}))()}showPlaybackTargetPicker(){this._mediaItemPlayback.showPlaybackTargetPicker()}seekBackward(){var e=this;return _async_to_generator$r((function*(){return e._seekable.seekBackward()}))()}seekForward(){var e=this;return _async_to_generator$r((function*(){return e._seekable.seekForward(e.skipToNextItem.bind(e))}))()}skipToNextItem(){var e=this;return _async_to_generator$r((function*(){return e._next({userInitiated:!0})}))()}skipToPreviousItem(){var e=this;return _async_to_generator$r((function*(){return e._previous({userInitiated:!0})}))()}getNewSeeker(){return this._mediaItemPlayback.getNewSeeker()}seekToTime(e,n){var d=this;return _async_to_generator$r((function*(){yield d._seekable.seekToTime(e,n)}))()}setQueue(e){var n=this;return _async_to_generator$r((function*(){return yield n.extractGlobalValues(e),yield n._mediaItemPlayback.stop(),n.returnQueueForOptions(e)}))()}extractGlobalValues(e){var n=this;return _async_to_generator$r((function*(){n._context=n.constructContext(e),void 0!==e.featureName&&e.context&&(Be.warn("featureName is deprecated, pass it inside context"),e.context.featureName=e.featureName)}))()}stop(e){var n=this;return _async_to_generator$r((function*(){yield n._mediaItemPlayback.stop(e)}))()}_changeToMediaAtIndex(e=0,n={}){var d=this;return _async_to_generator$r((function*(){if(d.queue.isEmpty)return;d.queue.position=e;const p=d.queue.item(d.queue.position);if(!p)return;var h;const y=yield d._mediaItemPlayback.startMediaItemPlayback(p,null!==(h=n.userInitiated)&&void 0!==h&&h);if(y||p.state!==F.unsupported)return y;yield d.skipToNextItem()}))()}_next(n={}){var d=this;return _async_to_generator$r((function*(){if(d.queue.isEmpty)return;const{userInitiated:p=!1}=n;return d.repeatMode===e.PlayerRepeatMode.one&&void 0!==d.queue.currentItem?(yield d.stop(_object_spread$f({userInitiated:p},n)),void(yield d.play())):(!p&&n.seamlessAudioTransition&&(d._dispatcher.publish(_t.playbackStop,_object_spread$f({userInitiated:p,endReasonType:e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK},n)),n={userInitiated:n.userInitiated,seamlessAudioTransition:!0}),d._nextAtIndex(d.queue.nextPlayableItemIndex,n))}))()}_nextAtIndex(n,d={}){var p=this;return _async_to_generator$r((function*(){if(p.queue.isEmpty)return;const{_mediaItemPlayback:h}=p;var y;const _=null!==(y=d.userInitiated)&&void 0!==y&&y;if(n<0)return Be.debug("controller/index._next no next item available, stopping playback"),yield p.stop({userInitiated:_,seamlessAudioTransition:d.seamlessAudioTransition}),void(h.playbackState=e.PlaybackStates.completed);const m=p.isPlaying,g=h.currentPlaybackTime,b=yield p._changeToMediaAtIndex(n,{userInitiated:_});var S;return p._notifySkip(m,b,{userInitiated:_,seamlessAudioTransition:null!==(S=d.seamlessAudioTransition)&&void 0!==S&&S,position:g,direction:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS}),b}))()}_previous(n={}){var d=this;return _async_to_generator$r((function*(){if(d.queue.isEmpty)return;const{userInitiated:p=!1}=n;if(d.repeatMode===e.PlayerRepeatMode.one&&void 0!==d.queue.currentItem)return yield d.stop({endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS,userInitiated:p}),void(yield d.play());const h=d.queue.previousPlayableItemIndex;if(p&&d.repeatMode===e.PlayerRepeatMode.none&&void 0!==d.nowPlayingItem&&-1===h)return yield d.stop({endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS,userInitiated:!0}),void(yield d.play());if(-1===h)return;const y=d.isPlaying,_=d._mediaItemPlayback.currentPlaybackTime,m=yield d._changeToMediaAtIndex(h,{userInitiated:p});return d._notifySkip(y,m,{userInitiated:p,seamlessAudioTransition:!1,direction:e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS,position:_}),m}))()}_notifySkip(n,d,p){const{userInitiated:h,direction:y,position:_,seamlessAudioTransition:m=!1}=p,g=this._dispatcher;m?(Be.debug("seamlessAudioTransition transition, PAF play"),g.publish(_t.playbackPlay,{item:d,position:0,endReasonType:e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK})):n?d?g.publish(_t.playbackSkip,{item:d,userInitiated:h,direction:y,position:_}):g.publish(_t.playbackStop,{item:d,userInitiated:h,position:_}):d&&g.publish(_t.playbackPlay,_object_spread$f({item:d,position:0},h?{endReasonType:e.PlayActivityEndReasonType.MANUALLY_SELECTED_PLAYBACK_OF_A_DIFF_ITEM}:{}))}_prepareQueue(e){Be.debug("mk: _prepareQueue"),this.hasAuthorization&&(e.isRestricted=this.storekit.restrictedEnabled||!1),e.repeatable=this._repeatable}constructor(e){var n,d;_define_property$q(this,"_context",{}),_define_property$q(this,"_continuous",void 0),_define_property$q(this,"_autoplayEnabled",void 0),_define_property$q(this,"_playerOptions",void 0),_define_property$q(this,"_queue",void 0),_define_property$q(this,"_storekit",void 0),_define_property$q(this,"_queueModifier",void 0),_define_property$q(this,"_repeatable",void 0),_define_property$q(this,"_shuffler",void 0),_define_property$q(this,"_seekable",void 0),_define_property$q(this,"_services",void 0),_define_property$q(this,"_rollMonitor",void 0),_define_property$q(this,"_skipIntro",void 0),_define_property$q(this,"_upNext",void 0),_define_property$q(this,"_playbackMode",void 0),_define_property$q(this,"_isDestroyed",!0),this.onPlaybackStateDidChange=this.onPlaybackStateDidChange.bind(this),this._autoplayEnabled=null!==(d=null===(n=e)||void 0===n?void 0:n.autoplayEnabled)&&void 0!==d&&d,this._services=e.services,this._playerOptions=e,this.storekit=e.storekit,this._skipIntro=new SkipAvailable({controller:this,services:e.services}),this._upNext=new UpNextMonitor({controller:this,services:e.services}),this._rollMonitor=new RollMonitor({controller:this,services:e.services}),this._queueModifier=new BaseModifiableQueue,this._shuffler=new BaseShuffler,this._seekable=new BaseSeekable(this._mediaItemPlayback),this._repeatable=new BaseRepeatable,this._dispatcher.subscribe(So.autoplayEnabledDidChange,this.updateAutoplay),this._playbackMode=e.playbackMode}}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$a("design:type",Function),_ts_metadata$a("design:paramtypes",[String,Boolean])],PlaybackController.prototype,"updateAutoplay",null);function rejectOnLast(){return Promise.reject("The last middleware in the stack should not call next")}function processMiddleware(e,...n){return e.length?function createNextFunction([e,...n]){return(...d)=>e(createNextFunction(n),...d)}([...e,rejectOnLast])(...n):Promise.reject("processMiddleware requires at mimimum one middleware function")}function parameterizeString(e,n){return function(e){try{return function recursiveTokenizeParameterizedString(e,n=[]){if(e.startsWith("{{")){const d=e.indexOf("}}");if(-1===d)throw new Error("UNCLOSED_PARAMETER");const p={type:Yo.Parameter,value:e.slice(2,d)};return d+2{switch(e.type){case Yo.Parameter:return e.value in n?encodeURIComponent(""+n[e.value]):`{{${e.value}}}`;case Yo.Static:default:return e.value}}).join("")}var Yo;function _define_property$p(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$8(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}function constructUrlMiddleware(e,n){let d=n.url;return d||(d=addPathToURL(n.baseUrl,n.path)),n.urlParameters&&(d=parameterizeString(d,n.urlParameters)),n.queryParameters&&(d=addQueryParamsToURL(d,n.queryParameters)),e(_object_spread_props$8(function(e){for(var n=1;n{throw new Error("window.fetch is not defined")});function _define_property$o(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$d(e){for(var n=1;n{if(void 0===e[n])throw new Error(`Session requires a valid SessionConfig, missing "${n}"`)}),this._config=e,this.middlewareStack=this.createMiddlewareStack()}createMiddlewareStack(){return Array.isArray(this.config.middleware)?[constructUrlMiddleware,...this.config.middleware,this.makeFetchMiddleware()]:[constructUrlMiddleware,this.makeFetchMiddleware()]}makeFetchMiddleware(){return"function"==typeof this.config.fetchFunction?fetchMiddlewareFactory(this.config.fetchFunction):zo}constructor(e){_define_property$o(this,"_config",void 0),_define_property$o(this,"middlewareStack",void 0),this.reconfigure(e)}}function _object_without_properties(e,n){if(null==e)return{};var d,p,h=function(e,n){if(null==e)return{};var d,p,h={},y=Object.keys(e);for(p=0;p=0||(h[d]=e[d]);return h}(e,n);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(e);for(p=0;p=0||Object.prototype.propertyIsEnumerable.call(e,d)&&(h[d]=e[d])}return h}const Xo={music:{url:"https://api.music.apple.com"}};class MediaAPIV3{configure(e,n,d=Qo.Merge){this.storefrontId=n.storefrontId;const p=function(e){let n={};e.url&&(n.url=e.url);e.storefrontId&&(n.defaultUrlParameters={storefrontId:e.storefrontId});e.mediaUserToken&&(n.defaultOptions={fetchOptions:{headers:{"Media-User-Token":e.mediaUserToken}}});e.developerToken&&(n=deepmerge(n,{defaultOptions:{fetchOptions:{headers:{Authorization:"Bearer "+e.developerToken}}}}));e.options&&(n=deepmerge(n,e.options));return n}(n);if(this[e])this[e].session.reconfigure(p,d);else{var h;const n=new APISession(p),d=n.request.bind(n);d.session=n;const y="undefined"!=typeof process&&"test"===(null===(h=process.env)||void 0===h?void 0:h.NODE_ENV);Object.defineProperty(this,e,{value:d,writable:y,enumerable:!0})}}constructor(e){var n,d,p;p=void 0,(d="storefrontId")in(n=this)?Object.defineProperty(n,d,{value:p,enumerable:!0,configurable:!0,writable:!0}):n[d]=p;const{realmConfig:h}=e,y=_object_without_properties(e,["realmConfig"]);for(const m in Xo){var _;let e=deepmerge(Xo[m],y);const n=null===(_=h)||void 0===_?void 0:_[m];n&&(e=deepmerge(e,n)),this.configure(m,e)}}}function asyncGeneratorStep$p(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$m(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$9(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class StationTrackLoader{activate(){this.dispatcher.unsubscribe(So.queuePositionDidChange,this.checkLoadMore),this.dispatcher.subscribe(So.queuePositionDidChange,this.checkLoadMore),this.isActive=!0}deactivate(){this.dispatcher.unsubscribe(So.queuePositionDidChange,this.checkLoadMore),this.isActive=!1}start(){return this.isActive||this.activate(),this.loadNextTracks()}checkLoadMore(){if(!(this.queue.isEmpty||this.queue.nextPlayableItemIndex>=0))return this.loadNextTracks()}loadNextTracks(){var e,n=this;return(e=function*(){var e;let d=[];const{apiManager:p}=n;if((null===(e=p)||void 0===e?void 0:e.api)instanceof MediaAPIV3){var h,y;d=null===(y=yield p.api.music("v1/me/stations/next-tracks/"+n.station.id,void 0,{fetchOptions:{method:"POST"}}))||void 0===y||null===(h=y.data)||void 0===h?void 0:h.data}else{var _;const e={};var m;To.features["enhanced-hls"]&&(e.extend={songs:["extendedAssetUrls"]}),d=null!==(m=yield null===(_=p.mediaAPI)||void 0===_?void 0:_.nextStationTracks(n.station.id,null,{queryParameters:e}))&&void 0!==m?m:[]}if(0===d.length)throw Be.warn("No track data is available for the current station",{stationId:n.station.id}),new MKError(MKError.Reason.CONTENT_UNAVAILABLE,"No track data is available for the current station.");const g=descriptorToMediaItems({context:n.context,loaded:d,container:n.station});n.queue.splice(n.queue.length,0,g)},function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$p(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$p(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}constructor(e,n,{dispatcher:d,apiManager:p},h={}){_define_property$m(this,"queue",void 0),_define_property$m(this,"station",void 0),_define_property$m(this,"context",void 0),_define_property$m(this,"apiManager",void 0),_define_property$m(this,"dispatcher",void 0),_define_property$m(this,"isActive",void 0),this.queue=e,this.station=n,this.context=h,this.isActive=!1,this.dispatcher=d,this.apiManager=p}}var Zo,ea;!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$9("design:type",Function),_ts_metadata$9("design:paramtypes",[])],StationTrackLoader.prototype,"checkLoadMore",null),function(e){e.artist="artist",e.song="song",e.station="station",e.radioStation="radioStation"}(Zo||(Zo={})),function(e){e.BEATS1="beats1"}(ea||(ea={}));const isIdentityQueue=e=>e&&void 0!==e.identity;function asyncGeneratorStep$o(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$o(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$o(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$o(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$l(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_metadata$8(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const{queueIsReady:ta}=So;class ContinuousPlaybackController extends PlaybackController{get continuous(){return!0}set continuous(e){if(!0!==e)throw new MKError(MKError.Reason.UNSUPPORTED_ERROR,"Continuous playback cannot be disabled for station queues.")}get context(){return function(e){for(var n=1;nsuper.pause;return _async_to_generator$o((function*(){if(!n.isLive)return _superprop_get_pause().call(n,e);n.generateMethodNotAvailable("pause")}))()}skipToPreviousItem(){var e=this,_superprop_get_skipToPreviousItem=()=>super.skipToPreviousItem;return _async_to_generator$o((function*(){if(!e.isLive)return _superprop_get_skipToPreviousItem().call(e);e.generateMethodNotAvailable("skipToPreviousItem")}))()}_dataForQueueOptions(e){var n=this,_superprop_get__dataForQueueOptions=()=>super._dataForQueueOptions;return _async_to_generator$o((function*(){const d=yield _superprop_get__dataForQueueOptions().call(n,e);return n.isLive&&(d.loaded=n.station),d}))()}returnQueueForOptions(e){var n=this;return _async_to_generator$o((function*(){var d,p,h;const y=isIdentityQueue(e)?yield n.loadStationByIdentity(e.identity):yield n.loadStationByStationId(n.generateStationId(e));if(void 0===y)return Promise.reject(new MKError(MKError.Reason.UNSUPPORTED_ERROR,"Cannot load requested station"));n.station=y,n.isLive=isIdentityQueue(e)||!!(null===(d=y)||void 0===d?void 0:d.isLive)||!!(null===(h=y)||void 0===h||null===(p=h.attributes)||void 0===p?void 0:p.isLive);const _={services:{runtime:n._services.runtime,dispatcher:n._services.dispatcher},descriptor:yield n._dataForQueueOptions(e),playbackMode:n.playbackMode};return n.queue=new Queue(_),n.isLive||(n.trackLoader=new StationTrackLoader(n.queue,y,{dispatcher:n._dispatcher,apiManager:n._services.apiManager},n.context),yield n.trackLoader.start()),n._seekable=n.isLive?new BaseSeekable(n._mediaItemPlayback):new Seekable(n._dispatcher,n._mediaItemPlayback),n._dispatcher.publish(ta,n.queue.items),n.queue}))()}getNewSeeker(){return this.hasCapabilities(Io.SEEK)?super.getNewSeeker():new UnsupportedSeeker}skipToNextItem(){var e=this,_superprop_get_skipToNextItem=()=>super.skipToNextItem;return _async_to_generator$o((function*(){if(!e.isLive)return _superprop_get_skipToNextItem().call(e);e.generateMethodNotAvailable("skipToNextItem")}))()}generateMethodNotAvailable(e){Be.warn(e+" is not supported for this type of playback")}generateStationId(e){let n;if(isQueueURLOption(e)){const{contentId:d,kind:p,storefrontId:h}=formattedMediaURL(e.url);p&&(e[p]=d),h&&(wo.storefrontId=h),n=p}const d=e;if(d.artist)return"ra."+d.artist;if(d.song)return"ra."+d.song;if(d.station)return d.station;if(d.radioStation)return d.radioStation;throw new MKError(MKError.Reason.UNSUPPORTED_ERROR,n?n+" is not a supported option. Use setQueue instead.":"Unsupported options specified for setStationQueue. You may want setQueue instead.")}loadStationByIdentity(e){var n=this;return _async_to_generator$o((function*(){var d,p,h;const{apiManager:y}=n._services;if((null===(d=y)||void 0===d?void 0:d.api)instanceof MediaAPIV3){var _,m,g;return null===(g=yield y.api.music("v1/catalog/{{storefrontId}}/stations",{filter:{identity:e}}))||void 0===g||null===(m=g.data)||void 0===m||null===(_=m.data)||void 0===_?void 0:_[0]}const b=yield null===(h=y)||void 0===h||null===(p=h.mediaAPI)||void 0===p?void 0:p.stations(void 0,{filter:{identity:e}});return b&&b[0]}))()}loadStationByStationId(e){var n=this;return _async_to_generator$o((function*(){var d,p,h;const{apiManager:y}=n._services;if((null===(d=y)||void 0===d?void 0:d.api)instanceof MediaAPIV3){var _,m,g;return null===(g=yield y.api.music("v1/catalog/{{storefrontId}}/stations/"+e))||void 0===g||null===(m=g.data)||void 0===m||null===(_=m.data)||void 0===_?void 0:_[0]}return null===(h=y)||void 0===h||null===(p=h.mediaAPI)||void 0===p?void 0:p.station(e)}))()}activate(){super.activate(),this.trackLoader&&this.trackLoader.activate()}deactivate(){var e=this,_superprop_get_deactivate=()=>super.deactivate;return _async_to_generator$o((function*(){yield _superprop_get_deactivate().call(e),e.trackLoader&&e.trackLoader.deactivate()}))()}constructor(e){super(e),_define_property$l(this,"type",qo.continuous),_define_property$l(this,"_isLive",!1),_define_property$l(this,"trackLoader",void 0),_define_property$l(this,"station",void 0),this._continuous=!0}}function asyncGeneratorStep$n(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$k(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$7(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$7(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([Bind(),_ts_metadata$8("design:type",Function),_ts_metadata$8("design:paramtypes",[void 0===Io?Object:Io])],ContinuousPlaybackController.prototype,"hasCapabilities",null);class PercentageWatcher{startMonitor(){this.dispatcher.unsubscribe(So.playbackDurationDidChange,this.updateThreshold),this.dispatcher.unsubscribe(So.playbackTimeDidChange,this.handleTimeChange),this.dispatcher.subscribe(So.playbackDurationDidChange,this.updateThreshold),this.dispatcher.subscribe(So.playbackTimeDidChange,this.handleTimeChange)}stopMonitor(){this.dispatcher.unsubscribe(So.playbackDurationDidChange,this.updateThreshold),this.dispatcher.unsubscribe(So.playbackTimeDidChange,this.handleTimeChange),this.threshold=-1}handleTimeChange(e,{currentPlaybackDuration:n,currentPlaybackTime:d}){var p,h=this;return(p=function*(){h.threshold<0&&h.updateThreshold(e,{duration:n}),d0&&_{const d=[],p=e.namedQueueOptions;for(const h in n)Object.keys(p).includes(h)&&d.push([h,p[h]]);return d},ia=function(){var e=_async_to_generator$l((function*(e,n,d){const[p]=d,h=n[p];if(!Array.isArray(h))return loadSelectedQueueValue(e,n,d,h);const y=new Map;h.forEach(e=>{const n=e.indexOf("."),d=-1===n?"":e.substring(0,n);y.has(d)||y.set(d,[]);const p=y.get(d);p&&p.push(e)});const _=(yield Promise.all([...y.values()].map(p=>loadSelectedQueueValue(e,n,d,p)))).reduce((e,n)=>{var d;return(n=null!==(d=n.data)&&void 0!==d?d:n).forEach(n=>{e.set(n.id,n)}),e},new Map),m=[];return h.forEach(e=>{const n=_.get(e);n&&m.push(n)}),m}));return function(n,d,p){return e.apply(this,arguments)}}();function loadSelectedQueueValue(e,n,d,p){return _loadSelectedQueueValue.apply(this,arguments)}function _loadSelectedQueueValue(){return(_loadSelectedQueueValue=_async_to_generator$l((function*(e,n,d,p){const h=yield e.getAPIForItem(Array.isArray(p)?p[0]:p);return h instanceof MediaAPIV3?loadSelectedQueueValueV3(h,n,d,p):loadSelectedQueueValueV2(h,n,d,p)}))).apply(this,arguments)}function loadSelectedQueueValueV2(e,n,d,p){return _loadSelectedQueueValueV2.apply(this,arguments)}function _loadSelectedQueueValueV2(){return(_loadSelectedQueueValueV2=_async_to_generator$l((function*(e,n,d,p){const[,h]=d;let y=n.parameters;To.features["enhanced-hls"]&&(y=_object_spread_props$6(_object_spread$b({},y),{extend:{songs:["extendedAssetUrls"]}}));let _=yield e[h.apiMethod](p,y);return h.loadedQueueTransform&&(_=h.loadedQueueTransform(_)),Array.isArray(p)||(yield loadRelationshipData(e,h.relationshipMethod,_)),_}))).apply(this,arguments)}function loadSelectedQueueValueV3(e,n,d,p){return _loadSelectedQueueValueV3.apply(this,arguments)}function _loadSelectedQueueValueV3(){return(_loadSelectedQueueValueV3=_async_to_generator$l((function*(e,n,d,p){const[h]=d,y=Array.isArray(p),_=T(y?""+p[0]:""+p),m=/^(?:playlists?|albums?)$/i.test(h);let g=dasherize(h);g.endsWith("s")||(g+="s");let b=(_?"/v1/me/library":"/v1/catalog/{{storefrontId}}")+"/"+g;y||(b+="/{{id}}");const S={};y&&(S.ids=p),_&&m&&(S.include="tracks");const P=yield e.music(b,S,{urlParameters:{id:p}});return y?P.data.data:P.data.data[0]}))).apply(this,arguments)}function asyncGeneratorStep$k(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$k(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$k(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$k(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$h(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$a(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$6(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const na=["library-songs","songs"],isAutoplaySupportedForType=e=>na.includes(e),normalizeTypeForAutoplay=(e,n)=>(T(e)&&!(null!=n?n:"").startsWith("library-")?"library-":"")+normalizeContentType(n);class AutoplayTrackLoader{activate(){this.isActive||(this.dispatcher.unsubscribe(So.queuePositionDidChange,this.onQueueChanged),this.dispatcher.subscribe(So.queuePositionDidChange,this.onQueueChanged),this.dispatcher.unsubscribe(So.repeatModeDidChange,this.onRepeatableChanged),this.dispatcher.subscribe(So.repeatModeDidChange,this.onRepeatableChanged),this.isActive=!0)}deactivate(){this.isActive&&(this.dispatcher.unsubscribe(So.queuePositionDidChange,this.onQueueChanged),this.dispatcher.unsubscribe(So.repeatModeDidChange,this.onRepeatableChanged),this.isActive=!1,this.station=void 0,this.queue.hasAutoplayStation=!1)}start(){if(!this.isActive)return this.activate(),this.loadNextTracks()}stop(){this.isActive&&(this.deactivate(),this.cleanupQueue())}onRepeatableChanged(){this.repeatable.repeatMode===e.PlayerRepeatMode.none?this.checkLoadMore():this.cleanupQueue()}onQueueChanged(){if(!(this.queue.nextPlayableItemIndex>=0))return this.checkLoadMore()}get api(){var e;const n=this.apiManager.mediaAPI;var d;return null!==(d=null===(e=n)||void 0===e?void 0:e.v3)&&void 0!==d?d:n}checkLoadMore(){var e;const n=null!==(e=this.queue.unplayedAutoplayItems.length)&&void 0!==e?e:0,d=To.autoplay.maxUpcomingTracksToMaintain;if(!(this.queue.isEmpty||this.queue.unplayedUserItems.length>To.autoplay.maxQueueSizeForAutoplay))return n!(n<=this.queue.position)&&!!e.isAutoplay)}loadNextTracks(n=To.autoplay.maxUpcomingTracksToMaintain){var d=this;return _async_to_generator$k((function*(){var p;if(d.repeatable.repeatMode!==e.PlayerRepeatMode.none)return;let h,{station:y}=d;if(d.station){try{var _,m;h=yield d.api.music("v1/me/stations/next-tracks/"+d.station.id,{limit:n},{fetchOptions:{method:"POST"}}),h=null===(m=h)||void 0===m||null===(_=m.data)||void 0===_?void 0:_.data}catch(Ut){return}if(!d.isActive)return}else{var g,b;const e=yield d.startStation(n);if(!e||!d.isActive)return void(d.queue.hasAutoplayStation=!1);var S;if(y=d.station=e.station,d.queue.hasAutoplayStation=!0,h=e.tracks,!(null===(b=e)||void 0===b||null===(g=b.tracks)||void 0===g?void 0:g.length))Be.warn("No track data is available for the current station",{stationId:null===(S=y)||void 0===S?void 0:S.id})}const P=descriptorToMediaItems({context:_object_spread_props$5(_object_spread$a({},d.context),{featureName:"now_playing",reco_id:(null===(p=d.context.featureName)||void 0===p?void 0:p.startsWith("listen-now"))?void 0:d.context.reco_id}),loaded:h,container:y});d.queue.appendQueueItems(toQueueItems(P,{isAutoplay:!0}))}))()}startStation(e){var n=this;return _async_to_generator$k((function*(){var d;const{userAddedItems:p}=n.queue;var h;const y=null===(d=null!==(h=p[p.length-2])&&void 0!==h?h:p[p.length-1])||void 0===d?void 0:d.container,_=y?{container:{id:y.id,type:y.type}}:void 0,m=n.queue.items.slice(-1*To.autoplay.maxQueueSizeInRequest).reduce((e,{id:d,type:p})=>{const h=normalizeTypeForAutoplay(d,p);return isAutoplaySupportedForType(h)&&!n.errorIds.has(d)&&e.push({id:d,type:h,meta:_}),e},[]);if(0===m.length)return;const g={data:m};let b;try{var S,P;b=yield n.api.music("v1/me/stations/continuous",{"limit[results:tracks]":e,with:["tracks"]},{fetchOptions:{method:"POST",body:JSON.stringify(g,void 0,2)}}),b=null===(P=b)||void 0===P||null===(S=P.data)||void 0===S?void 0:S.results}catch(Ut){m.forEach(e=>n.errorIds.add(e.id))}return b}))()}constructor(e,n,{dispatcher:d,apiManager:p},h={}){_define_property$h(this,"queue",void 0),_define_property$h(this,"repeatable",void 0),_define_property$h(this,"context",void 0),_define_property$h(this,"apiManager",void 0),_define_property$h(this,"dispatcher",void 0),_define_property$h(this,"isActive",void 0),_define_property$h(this,"errorIds",void 0),_define_property$h(this,"station",void 0),this.queue=e,this.repeatable=n,this.context=h,this.isActive=!1,this.errorIds=new Set,this.dispatcher=d,this.apiManager=p}}function asyncGeneratorStep$j(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$j(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$j(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$j(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$g(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$9(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$5(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}_ts_decorate$6([Bind(),_ts_metadata$6("design:type",Function),_ts_metadata$6("design:paramtypes",[])],AutoplayTrackLoader.prototype,"onRepeatableChanged",null),_ts_decorate$6([Bind(),_ts_metadata$6("design:type",Function),_ts_metadata$6("design:paramtypes",[])],AutoplayTrackLoader.prototype,"onQueueChanged",null),_ts_decorate$6([(e,n,d)=>{const p=d.value,h="_singlePromise_"+n,y="undefined"!=typeof Symbol?Symbol(h):h;return d.value=function(...e){if(this[y])return this[y];const n=this[y]=p.apply(this,e),reset=()=>{this[y]=void 0};return n.then(reset,reset),n},d},_ts_metadata$6("design:type",Function),_ts_metadata$6("design:paramtypes",[Number])],AutoplayTrackLoader.prototype,"loadNextTracks",null);const{queueIsReady:oa}=So;var aa,sa;!function(e){e.album="album",e.musicVideo="musicVideo",e.playlist="playlist",e.song="song"}(aa||(aa={})),function(e){e.albums="albums",e.musicVideos="musicVideos",e.playlists="playlists",e.songs="songs"}(sa||(sa={}));class SerialPlaybackController extends PlaybackController{get autoplayEnabled(){return this._autoplayEnabled}set autoplayEnabled(e){var n;this._autoplayEnabled=e;const d=e?"start":"stop";null===(n=this._autoplayTrackLoader)||void 0===n||n[d]()}activate(){super.activate(),this._preloader.activate(),this._dispatcher.subscribe(Nn,this.onSeamlessAudioTransition),this._dispatcher.subscribe(So.repeatModeDidChange,this.onRepeatModeChange)}deactivate(){var e=this,_superprop_get_deactivate=()=>super.deactivate;return _async_to_generator$j((function*(){var n;yield _superprop_get_deactivate().call(e),e._preloader.deactivate(),e._dispatcher.unsubscribe(Nn,e.onSeamlessAudioTransition),e._dispatcher.unsubscribe(So.repeatModeDidChange,e.onRepeatModeChange),null===(n=e._autoplayTrackLoader)||void 0===n||n.stop()}))()}onSeamlessAudioTransition(n,d){Be.debug("controller handling seamless audio transition, PAF stop",d),this._next({userInitiated:!1,seamlessAudioTransition:!0,endReasonType:e.PlayActivityEndReasonType.NATURAL_END_OF_TRACK,position:d.previous.playbackDuration/1e3,isPlaying:!1})}hasCapabilities(e){var n,d,p;return e===Io.SKIP_PREVIOUS||(e!==Io.REPEAT&&e!==Io.SHUFFLE||!(null===(d=this.queue)||void 0===d||null===(n=d.currentQueueItem)||void 0===n?void 0:n.isAutoplay))&&((e!==Io.SEEK&&e!==Io.PAUSE||!(null===(p=this.nowPlayingItem)||void 0===p?void 0:p.isAssetScrubbingDisabled))&&super.hasCapabilities(e))}onRepeatModeChange(){var e;this.queue.nextPlayableItem&&(Be.info("SerialPlaybackController: preparing new item after RepeatMode change",null===(e=this.queue.nextPlayableItem)||void 0===e?void 0:e.title),this.prepareToPlay(this.queue.nextPlayableItem,!0))}prepareToPlay(n,d=!1){var p=this;return _async_to_generator$j((function*(){if(Be.debug("mk: SerialController - prepareToPlay - ",{item:n,preload:d}),n.isPlayable)return p._mediaItemPlayback.prepareToPlay(n).catch(n=>{const h=!d&&-1===[MKError.Reason.DEVICE_LIMIT,MKError.Reason.STREAM_UPSELL].indexOf(n.reason);if(p.continuous&&h)return p._dispatcher.publish(_t.applicationActivityIntent,{endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS,userInitiated:!1}),p._next();throw n})}))()}prepend(e,n){var d=this,_superprop_get_prepend=()=>super.prepend;return _async_to_generator$j((function*(){const p=yield _superprop_get_prepend().call(d,e,n);if(d.shouldTransitionSeamlessly){const e=d.queue,n=e.position,p=e.item(n+1);Be.debug("prepend preparing ",p.title),yield d._mediaItemPlayback.prepareToPlay(p)}return p}))()}returnQueueForOptions(e){var n=this;return _async_to_generator$j((function*(){void 0!==(e=parseQueueURLOption(e)).startPosition&&(deprecationWarning("startPosition",{message:"startPosition has been deprecated in favor of startWith"}),void 0===e.startWith&&(e.startWith=e.startPosition));const d=yield n._dataForQueueOptions(e),p={services:{runtime:n._services.runtime,dispatcher:n._services.dispatcher,mediaItemPlayback:n._services.mediaItemPlayback},descriptor:d,playbackMode:n.playbackMode};if(void 0!==e.shuffleMode&&(n.shuffleMode=e.shuffleMode),n.queue=new Queue(p),"number"==typeof e.startTime){const d=n.queue.nextPlayableItem;d&&n._mediaItemPlayback.playOptions.set(d.id,{startTime:e.startTime})}if(0===n.queue.length)throw Be.warn("No item data is available for the current media queue",e),new MKError(MKError.Reason.CONTENT_UNAVAILABLE,"No item data is available for the current media queue.");return n._autoplayTrackLoader&&n._autoplayTrackLoader.deactivate(),n._autoplayTrackLoader=new AutoplayTrackLoader(n.queue,n._repeatable,{dispatcher:n._dispatcher,apiManager:n._services.apiManager},n._context),n.autoplayEnabled&&n.hasCapabilities(Io.AUTOPLAY)&&n._autoplayTrackLoader.start(),n._dispatcher.publish(oa,n.queue.items),n.queue}))()}_dataForQueueOptions(e){var n=this,_superprop_get__dataForQueueOptions=()=>super._dataForQueueOptions;return _async_to_generator$j((function*(){var d;const p=e,h=((e,n)=>{const d=getNamedQueueOptions(e,n);if(d.length>1)throw new MKError(MKError.Reason.UNSUPPORTED_ERROR,"Queues with multiple media types are not supported.");if(0===d.length)return;const[p]=d,[h,y]=p;if(Array.isArray(n[h])!==y.isPlural)throw new MKError(MKError.Reason.UNSUPPORTED_ERROR,y.isPlural?`Queue option ${h} must be an array of id values`:`Queue option ${h} must be a single id value`);return p})(n._services.apiManager.apiService,e);return void 0===h||((null===(d=n.storekit)||void 0===d?void 0:d.restrictedEnabled)&&(e.parameters=_object_spread_props$4(_object_spread$9({},e.parameters),{restrict:"explicit"})),p.loaded=yield ia(n._services.apiManager.apiService,e,h)),_object_spread$9({},yield _superprop_get__dataForQueueOptions().call(n,e),p)}))()}_changeToMediaAtIndex(e=0,n={userInitiated:!1}){var d=this,_superprop_get__changeToMediaAtIndex=()=>super._changeToMediaAtIndex;return _async_to_generator$j((function*(){const p=yield _superprop_get__changeToMediaAtIndex().call(d,e,n),h=d.queue.nextPlayableItem;return h&&d.shouldTransitionSeamlessly&&(yield d.prepareToPlay(h)),p}))()}_prepareQueue(e){super._prepareQueue(e),this._shuffler.checkAndReshuffle()}get shouldTransitionSeamlessly(){return this._isSeamlessAudioTransitionsEnabled&&this.hasAuthorization&&!this.previewOnly}constructor(e){var n,d;super(e),_define_property$g(this,"type",qo.serial),_define_property$g(this,"_preloader",void 0),_define_property$g(this,"_isSeamlessAudioTransitionsEnabled",void 0),_define_property$g(this,"_autoplayTrackLoader",void 0),this._queue=new Queue(e),this._repeatable=new Repeatable(this._dispatcher),this._seekable=new Seekable(this._dispatcher,this._mediaItemPlayback),this._shuffler=new Shuffler(this,{dispatcher:this._dispatcher}),this._queueModifier=new ModifiableQueue(this._queue,this._mediaItemPlayback),this._isSeamlessAudioTransitionsEnabled=!!(null===(d=e)||void 0===d||null===(n=d.bag)||void 0===n?void 0:n.features["seamless-audio-transitions"]);const p={controller:this,services:e.services};this._preloader=new Preloader(p)}}function _define_property$f(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}_ts_decorate$5([Bind(),_ts_metadata$5("design:type",Function),_ts_metadata$5("design:paramtypes",[void 0,void 0])],SerialPlaybackController.prototype,"onSeamlessAudioTransition",null),_ts_decorate$5([Bind(),_ts_metadata$5("design:type",Function),_ts_metadata$5("design:paramtypes",[void 0===Io?Object:Io])],SerialPlaybackController.prototype,"hasCapabilities",null),_ts_decorate$5([Bind(),_ts_metadata$5("design:type",Function),_ts_metadata$5("design:paramtypes",[])],SerialPlaybackController.prototype,"onRepeatModeChange",null);class MKDialog{static presentError(e){const n=e.dialog;void 0!==n?MKDialog.serverDialog(n).present():new MKDialog(e.message).present()}static serverDialog(e){const n=new this(e.message,e.explanation);return e.okButtonAction&&e.okButtonAction.url&&(n._okButtonActionURL=e.okButtonAction.url),e.okButtonString&&(n._okButtonString=e.okButtonString),e.cancelButtonString&&(n._cancelButtonString=e.cancelButtonString),n}static clientDialog(e){const n=new this(e.message,e.explanation);return e.okButtonAction&&(n._okButtonAction=e.okButtonAction),e.cancelButtonAction&&(n._cancelButtonAction=e.cancelButtonAction),e.okButtonString&&(n._okButtonString=e.okButtonString),e.cancelButtonString&&(n._cancelButtonString=e.cancelButtonString),n}get actions(){return this.cancelButton?`
${this.cancelButton}${this.okButton}
`:`
${this.okButton}
`}get cancelButton(){if("string"==typeof this._cancelButtonString)return``}set cancelButton(e){this._cancelButtonString=e}get explanation(){return`

${this._explanation}

`}get hasOKButtonAction(){return!!this._okButtonActionURL||!!this._okButtonAction}get message(){return`
${this._message}
`}get okButton(){return this.hasOKButtonAction&&this._okButtonActionURL?``:``}present(){const e=document.createDocumentFragment(),n=document.createElement("div");n.id=this.scrimId,e.appendChild(n);const d=document.createElement("div");d.id=this.id,d.classList.add("mk-dialog"),d.setAttribute("role","alertDialog"),d.setAttribute("aria-modal","true"),d.setAttribute("aria-labeledby","mk-dialog-title"),d.setAttribute("aria-describedby","mk-dialog-explanation");let p=`\n
\n ${this.message}\n ${this.explanation}\n
`;p=`\n ${p}\n ${this.actions}\n `,d.innerHTML=p,e.appendChild(d),document.body.appendChild(e),document.querySelector(`#${d.id} #mk-dialog-actions *:first-child`).focus(),setTimeout(()=>{document.querySelector(`#${d.id} #mk-dialog-actions *:first-child`).addEventListener("click",()=>{this._cancelButtonAction&&this._cancelButtonAction(),d.parentElement.removeChild(d),n.parentElement.removeChild(n)}),this.hasOKButtonAction&&(this._okButtonActionURL?document.querySelector(`#${d.id} #mk-dialog-actions *:last-child`).addEventListener("click",e=>{window.open(e.target.dataset.okActionUrl,"_blank"),d.parentElement.removeChild(d),n.parentElement.removeChild(n)}):this._okButtonAction&&document.querySelector(`#${d.id} #mk-dialog-actions *:last-child`).addEventListener("click",e=>{this._okButtonAction(),d.parentElement.removeChild(d),n.parentElement.removeChild(n)}))})}_appendStyle(e){const n=document.createElement("style");n.id=this.styleId,n.styleSheet?n.styleSheet.cssText=e:n.innerHTML=e,document.body.appendChild(n)}constructor(e,n=""){_define_property$f(this,"_message",void 0),_define_property$f(this,"_explanation",void 0),_define_property$f(this,"id",void 0),_define_property$f(this,"scrimId",void 0),_define_property$f(this,"styleId",void 0),_define_property$f(this,"_cancelButtonString",void 0),_define_property$f(this,"_cancelButtonAction",void 0),_define_property$f(this,"_okButtonAction",void 0),_define_property$f(this,"_okButtonActionURL",void 0),_define_property$f(this,"_okButtonString",void 0),this._message=e,this._explanation=n,this.id="musickit-dialog",this.scrimId=this.id+"-scrim",this.styleId=this.id+"-style",this._okButtonString="OK",[this.id,this.scrimId,this.styleId].forEach(e=>{try{const n=document.getElementById(e);n.parentElement.removeChild(n)}catch(Ut){}}),this._appendStyle("\n#musickit-dialog {\n --mk-dialog-background: rgba(255, 255, 255, 1);\n --mk-dialog-text: rgba(0, 0, 0, 0.95);\n --mk-dialog-border: rgba(0, 0, 0, 0.07);\n --mk-dialog-scrim: rgba(255, 255, 255, 0.8);\n --mk-dialog-primary: rgba(0, 122, 255, 1);\n}\n\n@media (prefers-color-scheme: dark) {\n #musickit-dialog {\n --mk-dialog-background: rgba(30, 30, 30, 1);\n --mk-dialog-text: rgba(255, 255, 255, 0.85);\n --mk-dialog-border: rgba(255, 255, 255, 0.1);\n --mk-dialog-scrim: rgba(38, 38, 38, 0.8);\n --mk-dialog-primary: rgba(8, 132, 255, 1);\n }\n}\n\n#musickit-dialog-scrim {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.35);\n}\n\n#musickit-dialog * {\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n -ms-touch-action: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n font-family: -apple-system, SF UI Text, Helvetica Neue, Helvetica, sans-serif;\n font-size: 15px;\n line-height: 20px;\n}\n\n#musickit-dialog *:focus { outline: 0; }\n\n#musickit-dialog {\n display: -webkit-box;\n display: -moz-box;\n display: -ms-flexbox;\n display: -webkit-flex;\n display: flex;\n -webkit-flex-direction: column;\n -moz-flex-direction: column;\n flex-direction: column;\n -webkit-justify-content: space-between;\n -moz-justify-content: space-between;\n justify-content: space-between;\n min-width: 277px;\n max-width: 290px;\n min-height: 109px;\n background: var(--mk-dialog-background);\n box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.18);\n border-radius: 10px;\n color: var(--mk-dialog-text);\n position: fixed;\n top: 50%;\n left: 50%;\n margin-left: -142px;\n margin-top: -67px;\n z-index: 9999999999999999999999999;\n}\n\n#musickit-dialog #mk-dialog-body {\n display: -webkit-box;\n display: -moz-box;\n display: -ms-flexbox;\n display: -webkit-flex;\n display: flex;\n -webkit-flex-direction: column;\n -moz-flex-direction: column;\n flex-direction: column;\n flex-grow: 1;\n -webkit-justify-content: space-evenly;\n -moz-justify-content: space-evenly;\n justify-content: space-evenly;\n -webkit-align-items: stretch;\n align-items: stretch;\n padding: 10px 20px;\n min-height: 74px;\n text-align: center;\n}\n\n#musickit-dialog .mk-dialog h5 {\n font-weight: 500;\n line-height: 20px;\n margin: 7px 0 0 0;\n padding: 0;\n}\n\n#musickit-dialog .mk-dialog p {\n margin: 0 0 7px 0;\n padding: 0;\n paddin-top: 3px;\n line-height: 18px;\n font-size: 13px;\n font-weight: 300;\n}\n\n#musickit-dialog #mk-dialog-actions {\n border-top: 1px solid var(--mk-dialog-border);\n display: -webkit-box;\n display: -moz-box;\n display: -ms-flexbox;\n display: -webkit-flex;\n display: flex;\n -webkit-flex-direction: row;\n -moz-flex-direction: colrowumn;\n flex-direction: row;\n max-height: 41px;\n min-height: 34px;\n -webkit-justify-self: flex-end;\n -moz-justify-self: flex-end;\n justify-self: flex-end;\n}\n\n#musickit-dialog #mk-dialog-actions button {\n flex-grow: 1;\n border: 0;\n background: none;\n color: var(--mk-dialog-primary);\n padding: 0;\n margin: 0;\n min-height: 34px;\n height: 41px;\n text-align: center;\n}\n\n#musickit-dialog #mk-dialog-actions *:nth-child(2) {\n border-left: 1px solid var(--mk-dialog-border);\n font-weight: 500;\n}\n")}}var ca;function asyncGeneratorStep$i(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$e(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}!function(e){e.MEDIA_API="media-api",e.UTS_CLIENT="uts-client"}(ca||(ca={}));class APIServiceManager{get api(){return this.getApiByType(this._defaultAPI)}get apiService(){if(void 0!==this._defaultAPI)return this._apisByType[this._defaultAPI];Be.error("There is no API instance configured")}get mediaAPI(){return this.getApiByType(ca.MEDIA_API)}get utsClient(){return this.getApiByType(ca.UTS_CLIENT)}getApiByType(e){let n;if(void 0!==e&&(n=this._apisByType[e]),void 0===n||void 0===n.api)throw new MKError(MKError.Reason.CONFIGURATION_ERROR,"There is no API instance configured for the requested type: "+e);return n.api}set defaultApiType(e){this._defaultAPI=e}registerAPIService(e){var n,d=this;return(n=function*(){const{apiType:n,configureFn:p,options:h}=e,y=h.apiOptions||{};void 0===d._defaultAPI&&(d._defaultAPI=n),d._apisByType[n]=yield p.call(d,{apiOptions:y,store:d.store,dispatcher:d._dispatcher})},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$i(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$i(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}constructor(e,n){_define_property$e(this,"store",void 0),_define_property$e(this,"_dispatcher",void 0),_define_property$e(this,"_apisByType",void 0),_define_property$e(this,"_defaultAPI",void 0),this.store=e,this._dispatcher=n,this._apisByType={}}}const da={};function adaptAddEventListener(e,n,d,p={}){const{once:h}=p,y=function(e,n){const d=getCallbacksForName(e),wrappedCallback=(e,d)=>{n(d)};return d.push([n,wrappedCallback]),wrappedCallback}(n,d);!0===h?e.subscribeOnce(n,y):e.subscribe(n,y)}function getCallbacksForName(e){let n=da[e];return n||(n=[],da[e]=n),n}function asyncGeneratorStep$h(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$h(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$h(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$h(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$d(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}const la=Be.createChild("rtc");class RTCStreamingTracker{get isConfigured(){return void 0!==this.instance}configure(e){var n=this;return _async_to_generator$h((function*(){n.instance=e.instance}))()}handleEvent(e,n,d){}loadScript(){return _async_to_generator$h((function*(){if(!To.urls.rtc)throw new Error("bag.urls.rtc is not configured");yield loadScript(To.urls.rtc)}))()}prepareReportingAgent(e){this.clearReportingAgent();const{Sender:n,ClientName:d,ServiceName:p,ApplicationName:h,ReportingStoreBag:y,DeviceName:_}=window.rtc.RTCReportingAgentConfigKeys;e=null!=e?e:this.instance.nowPlayingItem;const m=function(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$4(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class PlayActivityService{cleanup(){this.trackers.forEach(e=>{var n,d;return null===(n=(d=e).cleanup)||void 0===n?void 0:n.call(d)}),this.clearIntention(),this.teardownListeners(),this.registeredEvents.clear()}configure(e){var n,d=this;return(n=function*(){d.cleanup(),d.registeredEvents=function(e){const n=[];for(const d of e)n.push(...d.requestedEvents);return new Set(n)}(d.trackers),d.setupListeners();try{yield Promise.all(d.trackers.map(n=>n.configure(e)))}catch(Ut){Be.error("Error configuring a play activity service",Ut)}},function(){var e=this,d=arguments;return new Promise((function(p,h){var y=n.apply(e,d);function _next(e){asyncGeneratorStep$g(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$g(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))})()}getTrackerByType(e){return this.trackers.find(n=>n instanceof e)}handleEvent(e,n={}){const d=this.addIntention(e,n);e===_t.playerActivate&&(d.flush="boolean"==typeof n.isPlaying?!n.isPlaying:void 0);for(const p of this.trackers)p.handleEvent(e,d,n.item)}addIntention(e,n){if(![_t.playbackPause,_t.playbackStop].includes(e))return n;const d=function(e){for(var n=1;n{this.dispatcher.subscribe(e,this.handleEvent)}),this.dispatcher.subscribe(_t.userActivityIntent,this.recordUserIntent),this.dispatcher.subscribe(_t.applicationActivityIntent,this.recordApplicationIntent)}teardownListeners(){this.registeredEvents.forEach(e=>{this.dispatcher.unsubscribe(e,this.handleEvent)}),this.dispatcher.unsubscribe(_t.userActivityIntent,this.recordUserIntent),this.dispatcher.unsubscribe(_t.applicationActivityIntent,this.recordApplicationIntent)}constructor(e,n){_define_property$c(this,"dispatcher",void 0),_define_property$c(this,"trackers",void 0),_define_property$c(this,"registeredEvents",void 0),_define_property$c(this,"lastUserIntent",void 0),_define_property$c(this,"lastApplicationIntent",void 0),_define_property$c(this,"isConfigured",void 0),this.dispatcher=e,this.trackers=n,this.registeredEvents=new Set,this.isConfigured=!0}}function asyncGeneratorStep$f(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$f(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$f(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$f(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}_ts_decorate$4([Bind(),_ts_metadata$4("design:type",Function),_ts_metadata$4("design:paramtypes",[String,Object])],PlayActivityService.prototype,"handleEvent",null),_ts_decorate$4([Bind(),_ts_metadata$4("design:type",Function),_ts_metadata$4("design:paramtypes",[String,"undefined"==typeof ActivityIntention?Object:ActivityIntention])],PlayActivityService.prototype,"recordApplicationIntent",null),_ts_decorate$4([Bind(),_ts_metadata$4("design:type",Function),_ts_metadata$4("design:paramtypes",[String,"undefined"==typeof ActivityIntention?Object:ActivityIntention])],PlayActivityService.prototype,"recordUserIntent",null);const ua=BooleanDevFlag.register("mk-force-safari-hlsjs");function useNativeSafariPlayback(){return!ua.enabled}function requiresHlsJs(e){return _requiresHlsJs.apply(this,arguments)}function _requiresHlsJs(){return(_requiresHlsJs=_async_to_generator$f((function*(e){const n=null!=e?e:yield findKeySystemPreference(),d=!useNativeSafariPlayback();return n!==We.FAIRPLAY||d}))).apply(this,arguments)}function asyncGeneratorStep$e(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _define_property$b(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$3(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}const pa=function(){var e,n=(e=function*(e,n,d){const p=new Headers({Authorization:"Bearer "+n,Accept:"application/json","Content-Type":"application/json","X-Apple-Music-User-Token":""+d}),h=urlEncodeParameters(_object_spread_props$3(function(e){for(var n=1;n{const p=/^#EXT-X-STREAM-INF:.*BANDWIDTH=(\d+),CODECS="(.*)"\s*\n(.*$)/gim;let h;for(;h=p.exec(e);){let[e,p,y,_]=h;/^http(s)?:\/\//.test(_)||(_=rewriteLastUrlPath(n,_)),d.assets.push({bandwidth:Number(p),codec:y,URL:_})}},filterUnavailableLiveRadioUrls=(e,n)=>{const d=new URL(e.url);if(!d.host.endsWith(".apple.com")&&!d.host.endsWith(".applemusic.com"))throw makeContentUnavailableError(n)},makeContentUnavailableError=e=>{const n=new MKError(MKError.Reason.CONTENT_UNAVAILABLE);return n.data=e,n},va=function(){var e=_async_to_generator$d((function*(e,n,d){var p;if(Be.debug("mk: loadWithMZPlay",e.playParams),"podcast-episodes"===e.type)return void(e.assetURL=e.attributes.assetUrl);if(!(yield hasMusicSubscription()))return;const h=null===(p=e.playParams)||void 0===p?void 0:p.id,y=new Headers({Authorization:"Bearer "+n,Accept:"application/json","Content-Type":"application/json","X-Apple-Music-User-Token":""+d});let _={salableAdamId:h};if(e.isCloudItem){_={},e.playParams.purchasedId&&(_.purchaseAdamId=e.playParams.purchasedId),e.playParams.catalogId&&(_.subscriptionAdamId=e.playParams.catalogId);const n=/^a\.(\d+)$/;n.test(h)?_.subscriptionAdamId=h.replace(n,"$1"):T(h)&&(_.universalLibraryId=h)}if(!To.urls.webPlayback)throw new Error("bag.urls.webPlayback is not configured");const m=yield fetch(To.urls.webPlayback,{method:"POST",body:JSON.stringify(_),headers:y}),g=yield m.text(),b=JSON.parse(g);if(!b||!b.songList){const n=MKError.serverError(b,MKError.Reason.UNSUPPORTED_ERROR);return e.updateFromLoadError(n),Be.debug("mk: prepareItemWithMZPlay - rejecting with error",n),Promise.reject(n)}const[S]=b.songList;e.updateFromSongList(S)}));return function(n,d,p){return e.apply(this,arguments)}}();function asyncGeneratorStep$c(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$c(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$c(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$c(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function prepareToPlayMediaItem(e,n){return _prepareToPlayMediaItem.apply(this,arguments)}function _prepareToPlayMediaItem(){return(_prepareToPlayMediaItem=_async_to_generator$c((function*(e,n){const{developerToken:d,userToken:p}=e.store;if(void 0===d||void 0===p)return Promise.reject(new MKError(MKError.Reason.AUTHORIZATION_ERROR,"Unable to prepare media item for play."));if(n.isPreparedToPlay)Be.warn("media-item: item is prepared to play");else{if(Be.debug("media-item: item.prepareToPlay playParams",n.playParams),n.state=F.loading,n.isUTS)return Promise.reject(new MKError(MKError.Reason.UNSUPPORTED_ERROR,"Item was not prepared to play"));yield ha(n,d,p)}}))).apply(this,arguments)}function _shouldPlayPreview(){return(_shouldPlayPreview=_async_to_generator$c((function*(e,n){return!!e.previewURL&&(!!n||!e.playRawAssetURL&&(!e.isUTS&&!(yield hasMusicSubscription())||(!hasAuthorization()||!e.isPlayable||(e.isUTS?"Preview"===e.type:!supportsDrm()))))}))).apply(this,arguments)}function _prepareForEncryptedPlayback(){return(_prepareForEncryptedPlayback=_async_to_generator$c((function*(e,n,d){if(Be.debug("prepareForEncryptedPlayback"),!hasAuthorization())return Promise.reject(new MKError(MKError.Reason.AUTHORIZATION_ERROR,"Unable to prepare for playback."));try{yield prepareToPlayMediaItem(e,n)}catch(Q){if(Q.reason===MKError.Reason.AUTHORIZATION_ERROR)yield e.store.storekit.revokeUserToken();else if(Q.reason===MKError.Reason.TOKEN_EXPIRED)try{return yield e.store.storekit.renewUserToken(),yield prepareToPlayMediaItem(e,n),n.playbackData=_playbackDataForItem(n,d),n}catch(Ut){}if(Q)return Promise.reject(Q)}return n.playbackData=_playbackDataForItem(n,d),n}))).apply(this,arguments)}function _playbackDataForItem(n,d){if(Be.debug("mk: _playbackDataForItem",n),n.isCloudUpload)return n.assets[0];if("musicVideo"!==n.type&&!n.isLiveVideoStation){if(!n.isLiveRadioStation){const[e]=n.assets.filter(e=>{if(!("flavor"in e))return!1;const n=new RegExp(`\\d{1,2}\\:(c${(null===(p=window.WebKitMediaKeys)||void 0===p?void 0:p.isTypeSupported(rt+".1_0",Xe.AVC1))?"bc":"tr"}p)(\\d{2,3})`,"i");var p;const h=n.test(e.flavor);var y;const _=null!==(y=e.flavor.match(n))&&void 0!==y?y:[];return h&&parseInt(_[2],10)<=d.bitrate});return e}{var p,h;const y=n.assets.reduce((e,n)=>{const d=n.bandwidth;return e[d]||(e[d]=[]),e[d].push(n),e},{}),_=Object.keys(y).sort((e,n)=>parseInt(e,10)-parseInt(n,10)),m=d.bitrate===e.PlaybackBitrate.STANDARD?_[0]:_[_.length-1];(null===(h=y)||void 0===h||null===(p=h[m])||void 0===p?void 0:p[0].URL)&&(n.assetURL=y[m][0].URL)}}}function asyncGeneratorStep$b(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$b(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$b(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$b(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$a(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$3(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$3(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const ma={keySystemGenericError:"keySystemGenericError"},ga=new Set([MKError.Reason.DEVICE_LIMIT,MKError.Reason.GEO_BLOCK]),ba={};ba[We.FAIRPLAY]="fairplaystreaming",ba[We.PLAYREADY]="playready",ba[We.WIDEVINE]="widevine";const Sa=je.createChild("hlsjs-audio"),Pa=JsonDevFlag.register("mk-hlsjs-config-overrides");class HlsJsAudioPlayer extends BasePlayer{loadPreviewImage(){return _async_to_generator$b((function*(){}))()}get _targetElement(){return this.mediaElement}setNextSeamlessItem(e){return _async_to_generator$b((function*(){}))()}setPresentationMode(e){return _async_to_generator$b((function*(){return Promise.resolve()}))()}get shouldDispatchErrors(){return!this.userInitiated||this._playbackDidStart}get currentPlayingDate(){var e;return null===(e=this.hls)||void 0===e?void 0:e.playingDate}get isPlayingAtLiveEdge(){var e;const n=this.hls;return!(!n||!(null===(e=this.nowPlayingItem)||void 0===e?void 0:e.isLinearStream))&&!!n.isPlayingAtLive}playItemFromEncryptedSource(n,d=!1,p={}){var h=this;return _async_to_generator$b((function*(){h.playbackState!==e.PlaybackStates.stopped?(n.playbackType=e.PlaybackType.encryptedFull,h.nowPlayingItem=n,n.state=F.loading,h.userInitiated=d,yield h.playHlsStream(n.assetURL,n,p)):Sa.debug("hlsjsAudioPlayer.playItemFromEncryptedSource aborting playback because player is stopped")}))()}isPlayerSupported(){return!0}initializeMediaElement(){var e=this;return _async_to_generator$b((function*(){const n=nextAvailableAudioElement();n.autoplay=!1,n.id="apple-music-player",n.controls=!1,n.muted=!1,n.playbackRate=1,n.preload="metadata",n.volume=1,e.mediaElement=n,document.body.appendChild(n),Sa.debug("initializedMediaElement",n)}))()}get seekableTimeRanges(){const e=this.hls;return e?e.seekableTimeRanges:this.currentPlaybackDuration?[{start:0,end:this.currentPlaybackDuration}]:void 0}initializeExtension(){var e=this;return _async_to_generator$b((function*(){e._keySystem=yield findKeySystemPreference();try{var n;if(!Ye.urls.hls)throw new Error("bag.urls.hls is not configured");yield Promise.all([loadScript(Ye.urls.hls),null===(n=e._rtcTracker)||void 0===n?void 0:n.loadScript()])}catch(Ut){throw Sa.error("hlsjs-audio-player failed to load script "+Ye.urls.hls,Ut),Ut}}))()}_stopMediaElement(){var e=this,_superprop_get__stopMediaElement=()=>super._stopMediaElement;return _async_to_generator$b((function*(){yield _superprop_get__stopMediaElement().call(e),e.destroy()}))()}destroy(){if(Sa.debug("hlsjs-audio-player.destroy"),this.hls){const{ERROR:e,INTERNAL_ERROR:n,MANIFEST_PARSED:d,KEY_REQUEST_STARTED:p,LICENSE_CHALLENGE_CREATED:h,LEVEL_SWITCHED:y}=window.Hls.Events,_=this.hls;_.stopLoad(),_.detachMedia(),_.off(e,this.handleHlsError),_.off(n,this.handleHlsError),_.off(d,this.handleManifestParsed),_.off(p,this.handleKeyRequestStarted),_.off(h,this.handleLicenseChallengeCreated),_.off(y,this.handleLevelSwitched),_.destroy()}super.destroy(),asAsync(this._license.stop())}playHlsStream(e,n,d={}){var p=this;return _async_to_generator$b((function*(){const{_keySystem:h}=p;if(!h)return;let y,_;p._unrecoverableError=void 0,p.createHlsPlayer(),h===We.WIDEVINE&&(y="WIDEVINE_SOFTWARE",_={initDataTypes:["cenc","keyids"],distinctiveIdentifier:"optional",persistentState:"required"});const m={subs:"accepts-css",platformInfo:{requiresCDMAttachOnStart:h!==We.NONE,maxSecurityLevel:y,keySystemConfig:_},appData:{serviceName:Ye.app.name}},{_rtcTracker:g,hls:b}=p;if(g){const e=g.prepareReportingAgent(n);void 0!==e&&(m.appData.reportingAgent=e)}Sa.debug("RTC: loadSource with load options",m);const S=p.startPlaybackSequence();return Sa.info("Manifest already loaded, passing url to HLSJS",e),b.loadSource(e,m,d.startTime),b.attachMedia(p.mediaElement),n&&(p._licenseServerUrl=n.keyURLs["hls-key-server-url"],h===We.FAIRPLAY?b.setProtectionData({fairplaystreaming:{serverCertUrl:n.keyURLs["hls-key-cert-url"]}}):b.setProtectionData({widevine:{serverCertUrl:n.keyURLs["widevine-cert-url"]}})),S}))()}createHlsPlayer(){const{_keySystem:e}=this,{os:n}=this.services.runtime,{Hls:d}=window,p=ue.get(),h={clearMediaKeysOnPromise:!1,debug:!!p,debugLevel:p,enablePerformanceLogging:!!p,enablePlayReadyKeySystem:!0,enableRtcReporting:void 0!==this._rtcTracker,keySystemPreference:ba[e],useMediaKeySystemAccessFilter:!0,nativeControlsEnabled:n.isAndroid,enableID3Cues:!0};(e=>{const n=se.value;n&&n.socketurl&&isAppleHostname(n.socketurl)&&"carry-"===determineCdnBasePrefix()&&(e.socketurl=n.socketurl,e.socketid=n.socketid,e.log=n.log)})(h),(e=>{const n=Pa.value;n&&"object"==typeof n&&Object.assign(e,n)})(h);const y=new d(h),{ERROR:_,INTERNAL_ERROR:m,MANIFEST_PARSED:g,KEY_REQUEST_STARTED:b,LICENSE_CHALLENGE_CREATED:S,LEVEL_SWITCHED:P}=d.Events;y.on(_,this.handleHlsError),y.on(m,this.handleHlsError),y.on(g,this.handleManifestParsed),y.on(b,this.handleKeyRequestStarted),y.on(S,this.handleLicenseChallengeCreated),y.on(P,this.handleLevelSwitched),this.hls=y}handleLevelSwitched(e,n){var d,p,h;const{level:y}=n;if(!y)return;const _=null===(d=this._levels)||void 0===d?void 0:d.find(e=>e.persistentId===y);if(!_||(null===(p=this._currentLevel)||void 0===p?void 0:p.persistentId)===(null===(h=_)||void 0===h?void 0:h.persistentId))return;this._currentLevel=_;const m=void 0!==_.audioGroupId?this._channelsByGroup[_.audioGroupId]:void 0;this._dispatcher.publish(_t.hlsLevelUpdated,{level:_,channels:m})}handleHlsError(e,n){if(Sa.warn("HLS.js error",JSON.stringify(n)),this._unrecoverableError)return;let d=new MKError(MKError.Reason.UNSUPPORTED_ERROR,n.reason);d.data=n;const{keySystemGenericError:p}=ma;if(n.details!==p){if("output-restricted"===n.reason&&(d=new MKError(MKError.Reason.OUTPUT_RESTRICTED,n.reason)),n.fatal){if(this.hls.destroy(),!this.shouldDispatchErrors)throw d;this._dispatcher.publish(vt.mediaPlaybackError,d)}}else this._dispatcher.publish(p,d)}handleManifestParsed(e,n){var d=this;return _async_to_generator$b((function*(){var e,p;let h;Sa.debug("handleManifestParsed",n),d._levels=null!==(e=n.levels)&&void 0!==e?e:[],d.nowPlayingItem.state=F.ready,d._channelsByGroup=(null!==(p=n.audioTracks)&&void 0!==p?p:[]).reduce((e,n)=>(e[n.groupId]=n.channels,e),{});try{yield d._playMedia()}catch(Ut){throw Sa.warn("error from media element, possibly non-fatal",Ut),Ut}finally{h=yield d.finishPlaybackSequence()}return h}))()}handleKeyRequestStarted(e,n){Sa.debug("hlsjs-video.handleKeyRequestStarted"),this.hls.generateKeyRequest(n.keyuri,{})}handleLicenseChallengeCreated(n,d){var p=this;return _async_to_generator$b((function*(){const{_licenseServerUrl:n,nowPlayingItem:h,_keySystem:y,userInitiated:_}=p;try{var m,g;const e=yield null===(m=p._license)||void 0===m?void 0:m.start(n,h,d,y,_),b={statusCode:e.status};(null===(g=e)||void 0===g?void 0:g.license)&&(y===We.FAIRPLAY?b.ckc=Te(e.license):b.license=Te(e.license));const S=e["renew-after"];S&&(b.renewalDate=new Date(Date.now()+1e3*S)),p.hls.setLicenseResponse(d.keyuri,b)}catch(Ut){var b;if(p._unrecoverableError)return;const h=Ut.data,y={};void 0!==(null===(b=h)||void 0===b?void 0:b.status)&&(y.statusCode=+h.status),Sa.warn("Passing license response error to Hls.js",y),p.hls.setLicenseResponse(d.keyuri,y),ga.has(Ut.name)&&(p._unrecoverableError=Ut,p.resetDeferredPlay(),yield p.stop({endReasonType:e.PlayActivityEndReasonType.FAILED_TO_LOAD,userInitiated:_})),p.onPlaybackLicenseError(Ut)}}))()}onPlaybackLicenseError(e){this.resetDeferredPlay(),this._dispatcher.publish(Je.playbackLicenseError,e)}seekToTime(e){var n=this;return _async_to_generator$b((function*(){n.hls?(Sa.debug("hlsjs-video: hls seekTo",e),n.hls.seekTo=e):(Sa.debug("hlsjs-video: media element seek to",e),n._targetElement.currentTime=e)}))()}constructor(e){var n,d;super(e),_define_property$a(this,"currentAudioTrack",void 0),_define_property$a(this,"currentTextTrack",void 0),_define_property$a(this,"textTracks",[]),_define_property$a(this,"audioTracks",[]),_define_property$a(this,"userInitiated",!1),_define_property$a(this,"mediaElement",void 0),_define_property$a(this,"mediaPlayerType","hlsjs-audio"),_define_property$a(this,"hls",void 0),_define_property$a(this,"supportsPreviewImages",!1),_define_property$a(this,"extension",void 0),_define_property$a(this,"_keySystem",void 0),_define_property$a(this,"_license",void 0),_define_property$a(this,"_rtcTracker",void 0),_define_property$a(this,"_levels",void 0),_define_property$a(this,"_channelsByGroup",{}),_define_property$a(this,"_currentLevel",void 0),_define_property$a(this,"_licenseServerUrl",void 0),_define_property$a(this,"_unrecoverableError",void 0),this._rtcTracker=null===(d=e)||void 0===d||null===(n=d.playbackServices)||void 0===n?void 0:n.getRTCStreamingTracker(),this._license=new License}}function asyncGeneratorStep$a(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$a(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$a(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$a(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$9(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[void 0,void 0])],HlsJsAudioPlayer.prototype,"handleLevelSwitched",null),_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[void 0,void 0])],HlsJsAudioPlayer.prototype,"handleHlsError",null),_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[void 0,void 0])],HlsJsAudioPlayer.prototype,"handleManifestParsed",null),_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[void 0,void 0])],HlsJsAudioPlayer.prototype,"handleKeyRequestStarted",null),_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[void 0,void 0])],HlsJsAudioPlayer.prototype,"handleLicenseChallengeCreated",null),_ts_decorate$3([Bind(),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",["undefined"==typeof Error?Object:Error])],HlsJsAudioPlayer.prototype,"onPlaybackLicenseError",null),_ts_decorate$3([AsyncDebounce(250),_ts_metadata$3("design:type",Function),_ts_metadata$3("design:paramtypes",[Number])],HlsJsAudioPlayer.prototype,"seekToTime",null);const Ea=BooleanDevFlag.register("mk-force-native-safari-video-player"),Ta=BooleanDevFlag.register("mk-force-hlsjs-video-player"),ka=BooleanDevFlag.register("mk-force-hls-audio-player"),wa=je.createChild("factory");class Factory{get isDestroyed(){return this._isDestroyed}getPlayerForMediaItem(e){var n=this;return _async_to_generator$a((function*(){let d;if(wa.debug("Factory.getPlayerForMediaItem",e),function(e){return null!=e&&!isVideo(e)}(e)){const p=n.playersByType.get("audio");if(!e.hasOffersHlsUrl&&p&&!p.isDestroyed)return wa.debug("Returning pooled AudioPlayer"),p;d=yield n.createAudioPlayer(e,n.playerOptions),"audio"===d.mediaPlayerType&&n.playersByType.set("audio",d)}else isVideo(e)&&(d=yield n.createVideoPlayer(e,n.playerOptions));var p;if(void 0===d)throw new Error("Unable to create player for MediaItem: "+(null===(p=e)||void 0===p?void 0:p.id));return wa.debug("Initializing player: "+d.constructor.name),yield d.initialize(),d}))()}createAudioPlayer(e,n){return _async_to_generator$a((function*(){return e.hasOffersHlsUrl||ka.enabled?(wa.debug("Creating HLSAudioPlayer"),new HlsJsAudioPlayer(n)):(wa.debug("Creating AudioPlayer"),new AudioPlayer(n))}))()}createVideoPlayer(e,n){return _async_to_generator$a((function*(){var d,p,h,y;return wa.debug("Creating VideoPlayer"),Ea.enabled?(wa.debug("Creating NativeSafariVideoPlayer with mkForceSafariNativeVideoPlayer enabled"),new NativeSafariVideoPlayer(n)):Ta.enabled?(wa.debug("Creating HlsJsVideoPlayer with mkForceHlsjsVideoPlayer enabled"),new HlsJsVideoPlayer(n)):(yield null===(d=n.playbackServices)||void 0===d?void 0:d.requiresHlsJs())?(wa.debug("Creating HlsJsVideoPlayer required for the KeySystem"),new HlsJsVideoPlayer(n)):e.isLiveVideoStation||e.isLinearStream||(null===(y=e.defaultPlayable)||void 0===y||null===(h=y.assets)||void 0===h||null===(p=h.fpsKeyServerUrl)||void 0===p?void 0:p.startsWith("https://linear.tv.apple.com"))?(wa.debug("Creating HlsJsVideoPlayer for Live Video stream"),new HlsJsVideoPlayer(n)):(wa.debug("Creating NativeSafariVideoPlayer as a fall through"),new NativeSafariVideoPlayer(n))}))()}destroy(){this._isDestroyed=!0;for(const e of this.playersByType.values())e.destroy();this.playersByType.clear()}constructor(e){_define_property$9(this,"playerOptions",void 0),_define_property$9(this,"playersByType",void 0),_define_property$9(this,"_isDestroyed",!1),this.playersByType=new Map,this.playerOptions=e}}function asyncGeneratorStep$9(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$9(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$9(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$9(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$8(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _ts_decorate$2(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$2(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}const{mediaPlaybackError:Ia,playerTypeDidChange:Oa}=vt,{playbackLicenseError:Aa}=Je,{keySystemGenericError:Ra}=co,$a=function(){var e=_async_to_generator$9((function*(e,n){var d,p;if(null===(p=e.container)||void 0===p||null===(d=p.attributes)||void 0===d?void 0:d.requiresSubscription){if(!(yield n())){const n=new MKError(MKError.Reason.SUBSCRIPTION_ERROR);throw n.data=e,n}}}));return function(n,d){return e.apply(this,arguments)}}();let Ca=!1;class MediaItemPlayback{get isDestroyed(){return this._isDestroyed}get currentPlaybackTime(){return this._currentPlayer.currentPlaybackTime}get currentPlaybackTimeRemaining(){return this._currentPlayer.currentPlaybackTimeRemaining}get currentPlayingDate(){return this._currentPlayer.currentPlayingDate}get isPlayingAtLiveEdge(){return this._currentPlayer.isPlayingAtLiveEdge}get seekableTimeRanges(){return this._currentPlayer.seekableTimeRanges}get audioTracks(){return this._currentPlayer.audioTracks}get currentAudioTrack(){return this._currentPlayer.currentAudioTrack}set currentAudioTrack(e){this._currentPlayer.currentAudioTrack=e}get currentPlaybackDuration(){return this._currentPlayer.currentPlaybackDuration}get currentBufferedProgress(){return this._currentPlayer.currentBufferedProgress}get currentPlaybackProgress(){return this._currentPlayer.currentPlaybackProgress}get currentTextTrack(){return this._currentPlayer.currentTextTrack}set currentTextTrack(e){this._currentPlayer.currentTextTrack=e}get previewOnly(){return this._previewOnly}set previewOnly(e){this._previewOnly=e}get isPlaying(){return this._currentPlayer.isPlaying}get isPrimaryPlayer(){return this._currentPlayer.isPrimaryPlayer}set isPrimaryPlayer(e){this._currentPlayer.isPrimaryPlayer=e}get isReady(){return this._currentPlayer.isReady}get nowPlayingItem(){return this._currentPlayer.nowPlayingItem}get playbackRate(){return this._currentPlayer.playbackRate}set playbackRate(e){this._updatePlayerState("playbackRate",e)}get playbackState(){return this._currentPlayer.playbackState}set playbackState(e){this._currentPlayer.setPlaybackState(e,this.nowPlayingItem)}get playbackTargetAvailable(){return this._currentPlayer.playbackTargetAvailable}get playbackTargetIsWireless(){return this._currentPlayer.playbackTargetIsWireless}get supportsPreviewImages(){return this._currentPlayer.supportsPreviewImages}get textTracks(){return this._currentPlayer.textTracks}get volume(){return this._currentPlayer.volume}set volume(e){var n;this._currentPlayer.isDestroyed&&(null===(n=this._dispatcher)||void 0===n||n.publish(vt.playbackVolumeDidChange,{}));this._updatePlayerState("volume",e)}clearNextManifest(){this._currentPlayer.clearNextManifest()}destroy(){var e,n;this._isDestroyed=!0,this._playerFactory.destroy(),null===(e=this._dispatcher)||void 0===e||e.unsubscribe(Aa,this.onPlaybackLicenseError),null===(n=this._dispatcher)||void 0===n||n.unsubscribe(Ra,this.onKeySystemGenericError)}exitFullscreen(){return this._currentPlayer.exitFullscreen()}loadPreviewImage(e){var n=this;return _async_to_generator$9((function*(){return n._currentPlayer.loadPreviewImage(e)}))()}getNewSeeker(){return this._currentPlayer.newSeeker()}mute(){this._volumeAtMute=this.volume,this.volume=0}pause(e){var n=this;return _async_to_generator$9((function*(){return n._currentPlayer.pause(e)}))()}play(){var e=this;return _async_to_generator$9((function*(){return e._currentPlayer.play()}))()}preload(){var e=this;return _async_to_generator$9((function*(){return e._currentPlayer.preload()}))()}prepareToPlay(e){var n=this;return _async_to_generator$9((function*(){var d,p;He.debug("invoking prepareToPlay for ",e.title);const h=yield n.prepareForEncryptedPlayback(e,{bitrate:n._bitrateCalculator.bitrate}),y=null===(d=n._currentPlayback)||void 0===d?void 0:d.item,_=Ye.features["seamless-audio-transitions"],m="song"===(null===(p=y)||void 0===p?void 0:p.type)&&"song"===e.type,g=!e.playRawAssetURL;return _&&m&&g&&(He.debug(`setting ${e.title} for seamless audio transition`),yield n._currentPlayer.setNextSeamlessItem(e)),h}))()}requestFullscreen(e){return this._currentPlayer.requestFullscreen(e)}showPlaybackTargetPicker(){this._currentPlayer.showPlaybackTargetPicker()}seekToTime(e,n=St.Manual){var d=this;return _async_to_generator$9((function*(){yield d._currentPlayer.seekToTime(e,n)}))()}setPresentationMode(e){var n=this;return _async_to_generator$9((function*(){return n._currentPlayer.setPresentationMode(e)}))()}startMediaItemPlayback(e,n=!1){var d=this;return _async_to_generator$9((function*(){var p;He.debug("MediaItemPlayback: startMediaItemPlayback",e),e.resetState(),((e,n)=>{const{os:d}=n;if(e.isLinearStream&&("ios"===d.name||"ipados"===d.name)){He.warn("Cannot play linear stream on iOS or iPad");const n=new MKError(MKError.Reason.CONTENT_UNSUPPORTED,"IOS LINEAR");throw n.data={item:e},n}})(e,d.services.runtime),yield $a(e,d.hasMusicSubscription);const h=yield d._getPlayerForMediaItem(e);if(yield d.setCurrentPlayer(h),!(null===(p=d._currentPlayer)||void 0===p?void 0:p.hasMediaElement))return He.warn(`MediaItemPlayback: Could not play media of type ${e.type}, marking item as unsupported and skipping.`),void e.notSupported();try{const{dispatcher:p}=d.services;e.beginMonitoringStateDidChange(e=>p.publish(A.mediaItemStateDidChange,e)),e.beginMonitoringStateWillChange(e=>p.publish(A.mediaItemStateWillChange,e));const h=d.playOptions.get(e.id);h&&d.playOptions.delete(e.id);const y=yield d._playAccordingToPlaybackType(e,n,h);return d._currentPlayback={item:e,userInitiated:n},y}catch(Q){throw e.updateFromLoadError(Q),He.error(Q.message,Q),Q}}))()}_playAccordingToPlaybackType(e,n,d){var p=this;return _async_to_generator$9((function*(){return(yield function(e,n){return _shouldPlayPreview.apply(this,arguments)}(e,p._previewOnly))?p._playPreview(e,n):function(e){return!(!e.playRawAssetURL||!e.attributes.assetUrl)}(e)?p._playRawAsset(e,n,d):isBroadcastRadio(e)?p._playBroadcastRadio(e,n):((e=>{if(!supportsDrm()){const n=new MKError(MKError.Reason.CONTENT_UNSUPPORTED,"NO DRM");throw n.data={item:e},He.warn("No DRM detected"),n}})(e),p._playEncryptedFull(e,n,d))}))()}_playEncryptedFull(e,n,d){var p=this;return _async_to_generator$9((function*(){if(He.debug("MediaItemPlayback: play encrypted full",e),!e||!e.isPlayable)return Promise.reject(new MKError(MKError.Reason.MEDIA_PLAYBACK,"Not Playable"));const h=p._currentPlayer;try{yield p.prepareForEncryptedPlayback(e,{bitrate:p._bitrateCalculator.bitrate})}catch(Q){return He.error("prepareForEncryptedPlayback Error: userInitiated "+n),h.destroy(),n?Promise.reject(Q):void h.dispatch(vt.mediaPlaybackError,Q)}return yield function(e){return new Promise((n,d)=>{var p,h;const{ageGatePolicy:y}=e;if(!y||!y.age||!y.frequencyInMinutes)return Be.debug("No ageGatePolicy. Resolving handleAgeGate()"),n(void 0);const _=getLocalStorage(),m=null===(p=_)||void 0===p?void 0:p.ageGatePolicyAge,g=null===(h=_)||void 0===h?void 0:h.ageGatePolicyExpiration;if(m&&g&&parseInt(g,10)>Date.now()&&parseInt(m,10)>=y.age)return n(void 0);MKDialog.clientDialog({okButtonString:"Yes",okButtonAction:()=>{var e,d;return null===(e=_)||void 0===e||e.setItem("ageGatePolicyAge",y.age.toString()),null===(d=_)||void 0===d||d.setItem("ageGatePolicyExpiration",(Date.now()+60*y.frequencyInMinutes*1e3).toString()),n(void 0)},cancelButtonString:"No",cancelButtonAction:()=>d(new MKError("AGE_GATE","Age Gate Declined")),explanation:`This content may not be appropriate for ages younger than ${y.age}.`,message:`Are you ${y.age} or older?`}).present()})}(e),He.debug("About to play item as encrypted",e),yield h.playItemFromEncryptedSource(e,n,d),e}))()}_playBroadcastRadio(n,d){var p=this;return _async_to_generator$9((function*(){if(He.debug("MediaItemPlayback: play broadcast radio",n),!Ye.features["broadcast-radio"]){const e=new MKError(MKError.Reason.CONTENT_UNAVAILABLE);throw e.data=n,e}const h=p._currentPlayer,y=h.isPaused()&&!d,_=yield pa(n,gn.developerToken,gn.musicUserToken),m=_.assets[0];return n.playbackType=e.PlaybackType.unencryptedFull,n.trackInfo=_["track-info"],h.nowPlayingItem=n,yield h.playItemFromUnencryptedSource(m.url,y),n}))()}_playRawAsset(n,d,p){var h=this;return _async_to_generator$9((function*(){He.debug("MediaItemPlayback: play raw asset",n);const y=h._currentPlayer,_=y.isPaused()&&!d;return n.playbackType=e.PlaybackType.unencryptedFull,y.nowPlayingItem=n,yield y.playItemFromUnencryptedSource(n.attributes.assetUrl,_,p),n}))()}_playPreview(n,d){var p=this;return _async_to_generator$9((function*(){He.debug("MediaItemPlayback: play preview",n);const h=p._currentPlayer,y=h.isPaused()&&!d;return supportsDrm()||h.dispatch(vt.drmUnsupported,{item:n}),n.playbackType=e.PlaybackType.preview,h.nowPlayingItem=n,yield h.playItemFromUnencryptedSource(n.previewURL,y),n}))()}stop(e){var n=this;return _async_to_generator$9((function*(){yield n._currentPlayer.stop(e)}))()}unmute(){this.volume>0||(this.volume=this._volumeAtMute||1,this._volumeAtMute=void 0)}_getPlayerForMediaItem(e){var n=this;return _async_to_generator$9((function*(){He.trace("MediaItemPlayback._getPlayerForMediaItem",e);const d=yield n._playerFactory.getPlayerForMediaItem(e);return He.trace("Applying default player state",d,n.playerState),Object.assign(d,n.playerState),d}))()}setCurrentPlayer(e){var n=this;return _async_to_generator$9((function*(){var d;n._currentPlayer!==e&&(He.debug("MediaItemPlayback: setting currentPlayer",e),yield n._currentPlayer.stop(),n._currentPlayer=e,null===(d=n._dispatcher)||void 0===d||d.publish(Oa,{player:e}))}))()}getCurrentPlayer(){return this._currentPlayer}onKeySystemGenericError(e,n){var d=this;return _async_to_generator$9((function*(){var e;Ca?null===(e=d._dispatcher)||void 0===e||e.publish(Ia,n):(Ca=!0,He.warn("Retrying playback after keysystemGenericError"),yield d.restartPlayback())}))()}onPlaybackLicenseError(e,n){var d=this;return _async_to_generator$9((function*(){var e;n.reason===MKError.Reason.PLAYREADY_CBC_ENCRYPTION_ERROR?(He.warn("MediaItemPlayback: PLAYREADY_CBC_ENCRYPTION_ERROR...retrying with different key system"),yield d.restartPlayback()):null===(e=d._dispatcher)||void 0===e||e.publish(Ia,n)}))()}restartPlayback(){var e=this;return _async_to_generator$9((function*(){yield e.stop();const{_currentPlayback:n}=e;if(n){const{item:d,userInitiated:p}=n;d.resetState(),yield e.startMediaItemPlayback(d,p)}}))()}_updatePlayerState(e,n){this.playerState[e]=n,this._currentPlayer[e]=n}constructor(e){_define_property$8(this,"playerState",{playbackRate:1,volume:1}),_define_property$8(this,"playOptions",new Map),_define_property$8(this,"hasMusicSubscription",void 0),_define_property$8(this,"prepareForEncryptedPlayback",void 0),_define_property$8(this,"_currentPlayer",void 0),_define_property$8(this,"services",void 0),_define_property$8(this,"_dispatcher",void 0),_define_property$8(this,"_playerFactory",void 0),_define_property$8(this,"_previewOnly",!1),_define_property$8(this,"_volumeAtMute",void 0),_define_property$8(this,"_currentPlayback",void 0),_define_property$8(this,"_bitrateCalculator",void 0),_define_property$8(this,"_isDestroyed",!1);const{playbackServices:n}=e;var d,p;this.hasMusicSubscription=n.hasMusicSubscription,this.prepareForEncryptedPlayback=n.prepareForEncryptedPlayback,d=e.tokens,gn=d,e.bag&&(p=e.bag,Object.assign(Ye,p)),this.services=e.services,this._dispatcher=e.services.dispatcher,this._bitrateCalculator=e.services.bitrateCalculator,this._playerFactory=new Factory(e),this._currentPlayer=new PlayerStub(e),this._dispatcher.subscribe(Aa,this.onPlaybackLicenseError),this._dispatcher.subscribe(Ra,this.onKeySystemGenericError)}}function asyncGeneratorStep$8(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$8(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$8(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$8(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$7(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$5(e){for(var n=1;n=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);return y>3&&_&&Object.defineProperty(n,d,_),_}function _ts_metadata$1(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}_ts_decorate$2([Bind(),_ts_metadata$2("design:type",Function),_ts_metadata$2("design:paramtypes",[void 0,void 0])],MediaItemPlayback.prototype,"onKeySystemGenericError",null),_ts_decorate$2([Bind(),_ts_metadata$2("design:type",Function),_ts_metadata$2("design:paramtypes",[void 0,void 0])],MediaItemPlayback.prototype,"onPlaybackLicenseError",null);const Ma=[MKError.Reason.AGE_VERIFICATION,MKError.Reason.CONTENT_EQUIVALENT,MKError.Reason.CONTENT_RESTRICTED,MKError.Reason.CONTENT_UNAVAILABLE,MKError.Reason.CONTENT_UNSUPPORTED,MKError.Reason.SERVER_ERROR,MKError.Reason.SUBSCRIPTION_ERROR,MKError.Reason.UNSUPPORTED_ERROR,MKError.Reason.USER_INTERACTION_REQUIRED],Da=JsonDevFlag.register("mk-bag-features-overrides");class MKInstance{get developerToken(){return wo.developerToken}get api(){return this._services.apiManager.api}get audioTracks(){return this._mediaItemPlayback.audioTracks}get authorizationStatus(){return wo.authorizationStatus}get bitrate(){return this._services.bitrateCalculator.bitrate}set bitrate(e){this._services.bitrateCalculator.bitrate=e}get browserSupportsPictureInPicture(){return detectPictureInPictureSupport()}get browserSupportsVideoDrm(){return supportsDrm()}get cid(){return(this.realm===e.SKRealm.TV||this.sourceType!==Lt.MUSICKIT)&&wo.cid}get continuous(){return this._playbackController.continuous}set continuous(e){this._playbackController.continuous=e}get autoplayEnabled(){return this._autoplayEnabled}set autoplayEnabled(n){this.realm!==e.SKRealm.MUSIC&&(n=!1),n!==this.autoplayEnabled&&(this._autoplayEnabled=n,this._services.dispatcher.publish(So.autoplayEnabledDidChange,this.autoplayEnabled))}get currentAudioTrack(){return this._mediaItemPlayback.currentAudioTrack}set currentAudioTrack(e){this._mediaItemPlayback.currentAudioTrack=e}get currentPlaybackDuration(){return this._mediaItemPlayback.currentPlaybackDuration}get currentPlaybackProgress(){return this._mediaItemPlayback.currentPlaybackProgress}get currentPlaybackTime(){return this._mediaItemPlayback.currentPlaybackTime}get currentPlaybackTimeRemaining(){return this._mediaItemPlayback.currentPlaybackTimeRemaining}get currentTextTrack(){return this._mediaItemPlayback.currentTextTrack}set currentTextTrack(e){this._mediaItemPlayback.currentTextTrack=e}get isAuthorized(){return wo.isAuthorized}get isPlaying(){return this._playbackController.isPlaying}get isRestricted(){return wo.isRestricted}get metricsClientId(){return wo.metricsClientId}set metricsClientId(e){wo.metricsClientId=e}get musicUserToken(){return wo.musicUserToken}set musicUserToken(e){e&&wo.musicUserToken===e||(wo.musicUserToken=e)}get nowPlayingItem(){return this._mediaItemPlayback.nowPlayingItem}get nowPlayingItemIndex(){return this._playbackController.nowPlayingItemIndex}get playbackMode(){return this._playbackMode}set playbackMode(n){if(-1===Object.values(e.PlaybackMode).indexOf(n))return;const d=n===e.PlaybackMode.PREVIEW_ONLY,p=this._services.mediaItemPlayback;p&&(p.previewOnly=d),this._playbackMode!==n&&(this._playbackController.playbackMode=n,this._playbackMode=n)}get playbackRate(){return this._mediaItemPlayback.playbackRate}set playbackRate(e){this._mediaItemPlayback.playbackRate=e}get playbackState(){return this._mediaItemPlayback.playbackState}get playbackTargetAvailable(){return this._mediaItemPlayback.playbackTargetAvailable}get playbackTargetIsWireless(){return this._mediaItemPlayback.playbackTargetIsWireless}get previewOnly(){return this.playbackMode===e.PlaybackMode.PREVIEW_ONLY}set previewOnly(n){this.playbackMode=n?e.PlaybackMode.PREVIEW_ONLY:e.PlaybackMode.MIXED_CONTENT}get queue(){return this._playbackController.queue}get queueIsEmpty(){return this._playbackController.queue.isEmpty}get realm(){return wo.realm}get repeatMode(){return this._playbackController.repeatMode}set repeatMode(e){this._playbackController.repeatMode=e}set requestUserToken(e){wo.requestUserToken=e}get restrictedEnabled(){return wo.restrictedEnabled}set restrictedEnabled(e){wo.restrictedEnabled=e}get supportsPreviewImages(){return this._mediaItemPlayback.supportsPreviewImages}get seekSeconds(){return this._playbackController.seekSeconds}get services(){return this._services}set shuffle(e){this._playbackController.shuffle=e}get shuffleMode(){return this._playbackController.shuffleMode}set shuffleMode(e){this._playbackController.shuffleMode=e}get storefrontCountryCode(){return wo.storefrontCountryCode}get subscribeURL(){return wo.subscribeURL}get subscribeFamilyURL(){return wo.subscribeFamilyURL}get subscribeIndividualURL(){return wo.subscribeIndividualURL}get subscribeStudentURL(){return wo.subscribeStudentURL}get textTracks(){return this._mediaItemPlayback.textTracks}get videoContainerElement(){return this.context.videoContainerElement}set videoContainerElement(e){this.context.videoContainerElement=e}get volume(){return this._mediaItemPlayback.volume}set volume(e){this._mediaItemPlayback.volume=e}get storefrontId(){return wo.storefrontId}set storefrontId(e){wo.storefrontId=e}get _mediaItemPlayback(){return this._services.mediaItemPlayback}get _playbackController(){if(void 0!==this._playbackControllerInternal)return this._playbackControllerInternal;He.debug("setting _playbackController");const e=this._getPlaybackControllerByType(qo.serial);return this._playbackController=e,e}set _playbackController(e){this._playbackControllerInternal=e,this._playbackControllerInternal.autoplayEnabled=this._autoplayEnabled,this._playbackControllerInternal.activate(),this.capabilities.updateChecker(this._playbackControllerInternal.hasCapabilities),this.capabilities.controller=this._playbackControllerInternal}addEventListener(e,n,d={}){adaptAddEventListener(this._services.dispatcher,e,n,d)}authorize(){var e=this;return _async_to_generator$8((function*(){return e.deferPlayback(),wo.authorize()}))()}canAuthorize(){return supportsDrm()&&!this.isAuthorized}canUnauthorize(){return supportsDrm()&&this.isAuthorized}changeToMediaAtIndex(e){var n=this;return _async_to_generator$8((function*(){n._isPlaybackSupported()&&(yield n._validateAuthorization(),n._signalChangeItemIntent(),yield n._playbackController.changeToMediaAtIndex(e))}))()}changeToMediaItem(e){var n=this;return _async_to_generator$8((function*(){He.debug("instance.changeToMediaItem",e),n._isPlaybackSupported()&&(yield n._validateAuthorization(),n._signalChangeItemIntent(),yield n._playbackController.changeToMediaItem(e))}))()}changeUserStorefront(e){var n=this;return _async_to_generator$8((function*(){n.storefrontId=e}))()}cleanup(){var n=this;return _async_to_generator$8((function*(){var d;null===(d=n._services.mediaItemPlayback)||void 0===d||d.destroy(),n._signalIntent({endReasonType:e.PlayActivityEndReasonType.EXITED_APPLICATION});const p=Object.keys(n._playbackControllers).map(e=>n._playbackControllers[e].destroy());try{yield Promise.all(p)}catch(Ut){He.error("Error cleaning up controller",Ut)}n._services.dispatcher.clear()}))()}configure(e){var n=this;return _async_to_generator$8((function*(){return n._whenConfigured=n._configure(e),n._whenConfigured}))()}_configure(e){var n=this;return _async_to_generator$8((function*(){yield wo.storekit.whenAuthCompleted;const d=e.map(n._services.apiManager.registerAPIService,n._services.apiManager);yield Promise.all(d),yield n._configurePlayActivity(),n._initializeExternalEventPublishing()}))()}deferPlayback(){He.debug("deferPlayback",this._playbackControllerInternal),deferPlayback()}me(){return _async_to_generator$8((function*(){try{return yield wo.storekit.me()}catch(Ut){return Promise.reject(new MKError(MKError.Reason.AUTHORIZATION_ERROR,"Unauthorized"))}}))()}hasMusicSubscription(){return hasMusicSubscription(wo.storekit)}mute(){return this._mediaItemPlayback.mute()}pause(n){var d=this;return _async_to_generator$8((function*(){if(d._isPlaybackSupported()){try{d._signalIntent({endReasonType:e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED}),yield d._playbackController.pause(n)}catch(Q){d._handlePlaybackError(Q)}return Promise.resolve()}}))()}play(){var e=this;return _async_to_generator$8((function*(){if(He.debug("instance.play()"),e._isPlaybackSupported()){yield e._validateAuthorization();try{yield e._playbackController.play()}catch(Q){e._handlePlaybackError(Q)}return Promise.resolve()}}))()}playMediaItem(e,n){var d=this;return _async_to_generator$8((function*(){var p,h,y,_;if(He.debug("mk: playMediaItem",e),(null===(p=n)||void 0===p?void 0:p.bingeWatching)||d.deferPlayback(),n=_object_spread$5({},n),(null===(h=e)||void 0===h?void 0:h.playEvent)&&!hasOwn(n,"startTime")){const{playEvent:d}=e;d.isDone||void 0===d.playCursorInSeconds||(n.startTime=d.playCursorInSeconds)}d.services.dispatcher.publish(So.playInitiated,{item:e,timestamp:null!==(_=null===(y=n.meta)||void 0===y?void 0:y.initiatedTimestamp)&&void 0!==_?_:Date.now()});try{n&&d._mediaItemPlayback.playOptions.set(e.id,n);const p=yield d._playbackController.playSingleMediaItem(e,n);return d.services.dispatcher.publish(So.capabilitiesChanged),p}catch(Q){He.error("mk:playMediaItem error",Q),d._handlePlaybackError(Q)}}))()}removeEventListener(e,n){!function(e,n,d){const p=getCallbacksForName(n);let h;for(let y=p.length-1;y>=0;y--){const[e,n]=p[y];if(e===d){h=n,p.splice(y,1);break}}h&&e.unsubscribe(n,h)}(this._services.dispatcher,e,n)}exitFullscreen(){return this._mediaItemPlayback.exitFullscreen()}requestFullscreen(e){return this._mediaItemPlayback.requestFullscreen(e)}loadPreviewImage(e){var n=this;return _async_to_generator$8((function*(){return n._mediaItemPlayback.loadPreviewImage(e)}))()}getNewSeeker(){return this._playbackController.getNewSeeker()}seekToTime(e,n=St.Manual){var d=this;return _async_to_generator$8((function*(){if(d._isPlaybackSupported()){yield d._validateAuthorization();try{yield d._playbackController.seekToTime(e,n)}catch(Q){d._handlePlaybackError(Q)}return Promise.resolve()}}))()}setPresentationMode(e){var n=this;return _async_to_generator$8((function*(){return n._mediaItemPlayback.setPresentationMode(e)}))()}skipToNextItem(){var n=this;return _async_to_generator$8((function*(){if(n._isPlaybackSupported()){yield n._validateAuthorization(),n._signalIntent({endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS,direction:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS});try{yield n._playbackController.skipToNextItem()}catch(Q){n._handlePlaybackError(Q)}}}))()}skipToPreviousItem(){var n=this;return _async_to_generator$8((function*(){if(n._isPlaybackSupported()){yield n._validateAuthorization(),n._signalIntent({endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS,direction:e.PlayActivityEndReasonType.TRACK_SKIPPED_BACKWARDS});try{yield n._playbackController.skipToPreviousItem()}catch(Q){n._handlePlaybackError(Q)}}}))()}seekForward(){var n=this;return _async_to_generator$8((function*(){if(n._isPlaybackSupported()){yield n._validateAuthorization();try{n._signalIntent({endReasonType:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS,direction:e.PlayActivityEndReasonType.TRACK_SKIPPED_FORWARDS}),yield n._playbackController.seekForward()}catch(Q){n._handlePlaybackError(Q)}}}))()}seekBackward(){var e=this;return _async_to_generator$8((function*(){if(e._isPlaybackSupported()){yield e._validateAuthorization();try{yield e._playbackController.seekBackward()}catch(Q){e._handlePlaybackError(Q)}}}))()}showPlaybackTargetPicker(){this._playbackController.showPlaybackTargetPicker()}stop(e){var n=this;return _async_to_generator$8((function*(){var d,p;if(n._isPlaybackSupported()){var h;n._signalIntent({endReasonType:null===(d=e)||void 0===d?void 0:d.endReasonType,userInitiated:null===(h=null===(p=e)||void 0===p?void 0:p.userInitiated)||void 0===h||h});try{yield n._playbackController.stop(e)}catch(Q){n._handlePlaybackError(Q)}}}))()}unauthorize(){return _async_to_generator$8((function*(){return wo.unauthorize()}))()}unmute(){return this._mediaItemPlayback.unmute()}_createPlayerControllerOptions(){var e;return{tokens:wo,bag:To,playbackServices:{getRTCStreamingTracker:()=>{var e;return null===(e=this._services.playActivity)||void 0===e?void 0:e.getTrackerByType(RTCStreamingTracker)},hasMusicSubscription:hasMusicSubscription,prepareForEncryptedPlayback:(e,n)=>function(e,n,d){return _prepareForEncryptedPlayback.apply(this,arguments)}(this._services.apiManager,e,n),requiresHlsJs:requiresHlsJs},services:this._services,context:this.context,autoplayEnabled:this.autoplayEnabled,privateEnabled:this.privateEnabled,siriInitiated:this.siriInitiated,storekit:null===(e=wo)||void 0===e?void 0:e.storekit,playbackMode:this.playbackMode}}_getPlaybackControllerByType(e){const n=this._playbackControllers[e];if(n)return n;let d;switch(e){case qo.serial:d=new SerialPlaybackController(this._createPlayerControllerOptions());break;case qo.continuous:d=new ContinuousPlaybackController(this._createPlayerControllerOptions());break;default:throw new MKError(MKError.Reason.UNSUPPORTED_ERROR,"Unsupported controller requested: "+e)}return this._playbackControllers[e]=d,d}_handlePlaybackError(e){if(He.error("mediaPlaybackError",e),MKError.isMKError(e)&&Ma.includes(e.reason))throw e;this._playbackErrorDialog&&!this._services.runtime.isNodeEnvironment&&MKDialog.presentError(e)}_initializeInternalEventHandling(){wo.storekit.addEventListener(So.userTokenDidChange,()=>{this._whenConfigured&&this._whenConfigured.then(()=>this._configurePlayActivity().catch()).catch()});const n=this._services.dispatcher;n.subscribe(So.mediaPlaybackError,(e,n)=>this._handlePlaybackError(n)),n.subscribe(So.playbackStateDidChange,(n,d)=>{d.state===e.PlaybackStates.paused&&(He.debug("mk: playbackStateDidChange callback - calling storekit.presentSubscribeViewForEligibleUsers"),wo.storekit.presentSubscribeViewForEligibleUsers({state:d.state,item:this.nowPlayingItem},!1))})}_initializeExternalEventPublishing(){[So.authorizationStatusDidChange,So.storefrontCountryCodeDidChange,So.storefrontIdentifierDidChange,So.userTokenDidChange,So.eligibleForSubscribeView].forEach(e=>{wo.storekit.addEventListener(e,n=>this._services.dispatcher.publish(e,n))});const e=pt[this.storefrontId.toUpperCase()],n=dt[e];this._services.dispatcher.subscribe(jn,(e,d)=>{d.resolveAdamIdFromStorefront(n),this._services.dispatcher.publish(So.timedMetadataDidChange,d)})}configureLogger(e){var n;He.level===Ge&&(!0===e.debug?setRootLoggingLevel(R.DEBUG):void 0!==e.logLevel&&setRootLoggingLevel(e.logLevel)),void 0!==e.logHandler&&(n=e.logHandler,He.handlers.external=new CallbackHandler(n))}_configurePlayActivity(){var e=this;return _async_to_generator$8((function*(){void 0!==e._services.playActivity&&(yield e._services.playActivity.configure({instance:e,services:e._services}))}))()}_isPlaybackSupported(){return!this._services.runtime.isNodeEnvironment||(He.warn("Media playback is not supported in Node environments."),!1)}_updatePlaybackController(e){var n=this;return _async_to_generator$8((function*(){He.debug("mk: _updatePlaybackController",e),n._playbackControllerInternal!==e&&(n._playbackControllerInternal&&(yield n._playbackControllerInternal.deactivate()),n._playbackController=e)}))()}_signalChangeItemIntent(){this._signalIntent({endReasonType:e.PlayActivityEndReasonType.MANUALLY_SELECTED_PLAYBACK_OF_A_DIFF_ITEM})}_signalIntent(e){this.services.dispatcher.publish(_t.userActivityIntent,_object_spread$5({userInitiated:!0},e))}_validateAuthorization(n=!1){var d=this;return _async_to_generator$8((function*(){(n||d.playbackMode===e.PlaybackMode.FULL_PLAYBACK_ONLY)&&(void 0!==d._playbackControllerInternal&&d._playbackControllerInternal.isReady&&d._playbackControllerInternal.isPlaying||(yield d.authorize()))}))()}constructor(n,d,p){if(_define_property$7(this,"app",void 0),_define_property$7(this,"capabilities",void 0),_define_property$7(this,"context",void 0),_define_property$7(this,"_autoplayEnabled",!1),_define_property$7(this,"id",void 0),_define_property$7(this,"prefix",void 0),_define_property$7(this,"privateEnabled",!1),_define_property$7(this,"siriInitiated",!1),_define_property$7(this,"sourceType",Lt.MUSICKIT),_define_property$7(this,"version",e.version),_define_property$7(this,"playbackActions",void 0),_define_property$7(this,"guid",void 0),_define_property$7(this,"_bag",To),_define_property$7(this,"_playbackControllers",{}),_define_property$7(this,"_playbackControllerInternal",void 0),_define_property$7(this,"_services",void 0),_define_property$7(this,"_playbackErrorDialog",!0),_define_property$7(this,"_playbackMode",e.PlaybackMode.MIXED_CONTENT),_define_property$7(this,"_whenConfigured",void 0),"string"!=typeof n)throw new Error("MusicKit was initialized without an developerToken.");Object.assign(To.features,function(e=[]){const n={};return e.forEach(e=>{"-"===e.charAt(0)?(e=e.substr(1),n[e]=!1):n[e]=!0}),n}(p.features));const h=Da.get();h&&(He.warn("Overriding bag.features with",h),To.features=_object_spread$5({},To.features,h)),Object.assign(To.autoplay,p.autoplay),this.context={};const y=new PubSub;this.capabilities=new Capabilities(y),p.playbackActions&&(this.playbackActions=p.playbackActions),p.guid&&(this.guid=p.guid);const _=new TimingAccuracy(!!To.features["player-accurate-timing"]),m=new BitrateCalculator(y,p.bitrate);this._services={runtime:d,dispatcher:y,timing:_,bitrateCalculator:m},void 0!==p.playActivityAPI&&(this._services.playActivity=new PlayActivityService(y,p.playActivityAPI)),p.services=this._services,this.configureLogger(p),To.app=p.app||{},To.store=new DataStore({filter:getFilterFromFlags(p.storeFilterTypes||[]),shouldDisableRecordReuse:!!To.features["disable-data-store-record-reuse"]}),Object.assign(To.urls,p.urls||{});const g=function(e,n){return wo=new Store(e,n),wo}(n,p);this._services.apiManager=new APIServiceManager(g,y);const b=new MediaItemPlayback(this._createPlayerControllerOptions());this._services.mediaItemPlayback=b,p.sourceType&&(this.sourceType=p.sourceType),this._initializeInternalEventHandling(),p.bitrate&&(this.bitrate=p.bitrate),p.prefix&&/^(?:web|preview)$/.test(p.prefix)&&(this.prefix=To.prefix=p.prefix),p.suppressErrorDialog&&(this._playbackErrorDialog=!p.suppressErrorDialog),void 0!==p.playbackMode&&(this.playbackMode=p.playbackMode),this.privateEnabled=p.privateEnabled||!1,this.siriInitiated=p.siriInitiated||!1,this.id=generateUUID(),He.info("MusicKit JS Version: "+this.version),He.info("InstanceId",this.id),He.debug("Link Parameters",p.linkParameters),To.app&&He.debug("App",To.app)}}function asyncGeneratorStep$7(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$7(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$7(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$7(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function dispatchDocumentEvent(e){if(detectNodeEnvironment())return;const n=new Event(e,{bubbles:!0,cancelable:!0});setTimeout(()=>document.dispatchEvent(n))}function _loadWebComponents(){return(_loadWebComponents=_async_to_generator$7((function*(){var e,n;if(detectNodeEnvironment())return;const d=findScript("musickit.js");if(""!==(null===(n=d)||void 0===n||null===(e=n.dataset)||void 0===e?void 0:e.webComponents))return;const p="noModule"in d,h=`components/musickit-components/musickit-components${p?".esm":""}.js`,y="https:"+cdnBaseURL(h)+h,_={};p&&(_.type="module"),d.hasAttribute("async")&&(_.async=""),d.hasAttribute("defer")&&(_.defer=""),yield loadScript(y,_),dispatchDocumentEvent(So.webComponentsLoaded)}))).apply(this,arguments)}function asyncGeneratorStep$6(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$6(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$6(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$6(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$6(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$4(e){for(var n=1;ne.cleanup());yield Promise.all(e),Na.splice(0,Na.length)}))).apply(this,arguments)}function configure$2(e){return _configure$1.apply(this,arguments)}function _configure$1(){return(_configure$1=_async_to_generator$6((function*(e,n=MKInstance,d){if(!e)throw new MKError(MKError.Reason.INVALID_ARGUMENTS,"configuration required");const p={},{developerToken:h,mergeQueryParams:y}=e;if(!h)throw new MKError(MKError.Reason.CONFIGURATION_ERROR,"Missing developer token");y&&xa&&window.location&&(p.linkParameters=_object_spread$4({},e.linkParameters||{},parseQueryParams(window.location.href)));const _=yield RuntimeEnvironment.detect();yield findKeySystemPreference(_);const m=new n(h,_,_object_spread$4({},e,p));return La||(yield cleanupInstances()),d&&(yield d(m)),Na.push(m),dispatchDocumentEvent(So.configured),m}))).apply(this,arguments)}function getInstances(){return Na}function _define_property$5(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$3(e){for(var n=1;n/^(fields|extend)/.test(e)),d.views&&(h.views=d.views),d.include&&(h.relationships=d.include)),this.hasDataStore&&!y){let p,y=[];if(d&&(y=Object.keys(d).reduce((e,n)=>(-1===ja.indexOf(n)&&e.push([n,d[n]]),e),y)),p=y&&1===y.length?this._store.query(y[0][0],y[0][1]):this._store.peek(e,n,h),Array.isArray(p)){if(!d&&p.length)return p}else if(p)return p}if("function"==typeof p)return p()}write(e){return this._prepareDataForDataStore(e,e=>this._store.save(e))}parse(e){return this._prepareDataForDataStore(e,e=>this._store.populateDataRecords(e,{}))}_prepareDataForDataStore(e,n){return this.hasDataStore?Array.isArray(e)?n({data:e}):Object.keys(e).reduce((d,p)=>{const h=e[p];return hasOwn(h,"data")&&(d[p]=n({data:h.data})),"meta"===p&&(d[p]=e[p]),d},{}):e}constructor(e={}){_define_property$4(this,"_store",void 0),_define_property$4(this,"enableDataStore",!1);let n=!1;e.features&&hasOwn(e.features,"api-data-store")&&(this.enableDataStore=!!e.features["api-data-store"]),e.features&&hasOwn(e.features,"disable-data-store-record-reuse")&&(n=!!e.features["disable-data-store-record-reuse"]),this.enableDataStore&&(this._store=e.store||new DataStore({shouldDisableRecordReuse:n}),this._store.mapping=transformStoreData)}}function _define_property$3(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread_props$2(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):function(e,n){var d=Object.keys(e);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(e);n&&(p=p.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),d.push.apply(d,p)}return d}(Object(n)).forEach((function(d){Object.defineProperty(e,d,Object.getOwnPropertyDescriptor(n,d))})),e}var Ua,Ba;!function(e){e[e.Global=0]="Global",e.Catalog="catalog",e.Personalized="me",e.Editorial="editorial",e.Engagement="engagement",e.Social="social"}(Ua||(Ua={})),function(e){e.songs="songs",e.albums="albums",e.playlists="playlists",e.stations="stations",e["music-videos"]="music-videos",e["library-music-videos"]="library-music-videos",e["library-playlists"]="library-playlists",e["library-songs"]="library-songs"}(Ba||(Ba={}));class API extends class extends class{clearCacheForRequest(e,n){"object"==typeof e&&(n=e,e=void 0);const d=this.constructURL(e,n);this.networkCache.removeItemsMatching(d)}request(e,n,d){var p,h=this;return(p=function*(){d||"object"!=typeof e||(d=n||{},n=e,e=void 0);let p={};"object"==typeof(d=_object_spread$D({method:h.method,headers:h.headers,reload:!1},h._fetchOptions,d)).queryParameters?(p=d.queryParameters,delete d.queryParameters):"GET"!==d.method&&"DELETE"!==d.method||(p=n);const y=h.constructURL(e,p),{method:_,reload:m=!1,useRawResponse:g}=d;if(d.headers=h.buildHeaders(d),delete d.reload,delete d.useRawResponse,"GET"===_&&!m){const e=h.getCacheItem(y);if(e)return Promise.resolve(e)}n&&Object.keys(n).length&&("POST"===_||"PUT"===_)&&(d.body=d.body||n,d.contentType===Gt.FORM?(d.body=urlEncodeParameters(d.body),d.headers.set("Content-Type",Gt.FORM)):(d.body=JSON.stringify(d.body),d.headers.set("Content-Type",Gt.JSON)));const b=yield h._fetchFunction(y,d);if(!b.ok)return Promise.reject(b);let S;try{S=yield b.json()}catch(Ut){S={}}if(S.errors)return Promise.reject(S.errors);const P=g?S:S.results||S.data||S;if("GET"===_){var E;const e=null!==(E=getMaxAgeFromHeaders(b.headers))&&void 0!==E?E:h.ttl;h.setCacheItem(y,P,e)}return P},function(){var e=this,n=arguments;return new Promise((function(d,h){var y=p.apply(e,n);function _next(e){asyncGeneratorStep$10(y,d,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$10(y,d,h,_next,_throw,"throw",e)}_next(void 0)}))})()}buildHeaders({headers:e,reload:n=!1}={}){void 0===e&&(e=this.headers);const d=(e=>new e.constructor(e))(e);return n&&d.set("Cache-Control","no-cache"),d}constructURL(e,n){return d=this.url,p=n,addQueryParamsToURL(addPathToURL(d,e),p);var d,p}getCacheItem(e){const n=this.networkCache.storage,d=`${this.prefix}${this.prefix}cache-mut`,p=n.getItem(d)||null,h=this.headers.get("Music-User-Token")||this.headers.get("Media-User-Token")||null;return h!==p&&(this.networkCache.clear(),null===h?n.removeItem(d):n.setItem(d,h)),this.networkCache.getItem(e)}setCacheItem(e,n,d=this.ttl){this.networkCache.setItem(e,n,d)}clearNetworkCache(){this.networkCache.clear()}_key(e,n){const d=function(e){try{const[n,d]=e.split("?",2);if(void 0===d)return n;const p=d.split("&").map(e=>e.split("=",2)),h=[...Array(p.length).keys()];h.sort((e,n)=>{const d=p[e],h=p[n];return dh?1:e-n});const y=h.map(e=>p[e]);return`${n}?${y.map(([e,n])=>void 0!==n?`${e}=${n}`:e).join("&")}`}catch(Ut){return e}}(e).toLowerCase().replace(this.url,"");return`${this.prefix}${d.replace(/[^-_0-9a-z]{1,}/g,".")}`}constructor(e,n){if(_define_property$1x(this,"url",void 0),_define_property$1x(this,"headers",void 0),_define_property$1x(this,"prefix",""),_define_property$1x(this,"storage",void 0),_define_property$1x(this,"networkCache",void 0),_define_property$1x(this,"ttl",void 0),_define_property$1x(this,"method","GET"),_define_property$1x(this,"_fetchOptions",void 0),_define_property$1x(this,"_fetchFunction",void 0),this.url=e,(n=n||{}).storage&&n.underlyingStorage)throw new Error("only pass storage OR underlyingStorage in sessionOptions to URLSession");const d=n.underlyingStorage||{};if(this.storage=n.storage||new GenericStorage(d),this.networkCache=new NetworkCache({storage:this.storage,prefix:this.prefix,cacheKeyFunction:this._key.bind(this)}),this.ttl=n.ttl||3e5,this._fetchOptions=_object_spread$D({},n.fetchOptions),"function"!=typeof n.fetch&&"function"!=typeof fetch)throw new Error("window.fetch is not defined");var p;this._fetchFunction=null!==(p=n.fetch)&&void 0!==p?p:fetch.bind(window),this.headers=this._fetchOptions.headers||new Headers,delete this._fetchOptions.headers}}{get developerToken(){return this._developerToken.token}constructor(e,n,d){super(e,d),_define_property$1x(this,"userToken",void 0),_define_property$1x(this,"_developerToken",void 0),this._developerToken=new DeveloperToken(n),this.headers.set("Authorization","Bearer "+this.developerToken),d=d||{},this.userToken=d.userToken,this.userToken&&this.headers.set("Media-User-Token",this.userToken)}}{get needsEquivalents(){const{userStorefrontId:e}=this;return void 0!==e&&""!==e&&e!==this.storefrontId}constructor(e,n,d,p,h,y,_={},m){super(e,n,_object_spread_props$2(function(e){for(var n=1;n{n.store.storekit.addEventListener(e,()=>n.resetAPI())}),n._initializeAPI(e))}))()}clear(){this.api&&this.api.clearNetworkCache&&this.api.clearNetworkCache()}getAPIForItem(e){var n=this;return _async_to_generator$5((function*(){return T(e)?(yield n.store.authorize(),n.api.library||n.api):n.api}))()}resetAPI(){var e=this;return _async_to_generator$5((function*(){e.clear(),e._initializeAPI()}))()}_initializeAPI(e){var n;if(void 0!==(null===(n=e)||void 0===n?void 0:n.api))return void(this._api=e.api);const d=e&&e.store||this.store;if(void 0===d)return;const p=To.features["api-session-storage"]?getSessionStorage():void 0,h=e&&e.storefrontId||d.storefrontId,y=new API(this.url,d.developerToken,h,d.storekit.userToken,d.storekit.storefrontCountryCode,p,To,e&&e.apiOptions&&e.apiOptions.sessionOptions);this._api=y.v3}_updateStorefrontId(e){var n=this;return _async_to_generator$5((function*(){n.api&&e===n.api.storefrontId||(yield n.configure({dispatcher:n._dispatcher,store:n.store,storefrontId:e}))}))()}constructor(e){if(_define_property$2(this,"_dispatcher",void 0),_define_property$2(this,"namedQueueOptions",void 0),_define_property$2(this,"url",void 0),_define_property$2(this,"store",void 0),_define_property$2(this,"_api",void 0),this._dispatcher=e,!To.urls.mediaApi)throw new Error("bag.urls.mediaApi is not configured");this.url=To.urls.mediaApi,this.namedQueueOptions=Ga;var n=this;this._dispatcher.subscribe(_t.apiStorefrontChanged,function(){var e=_async_to_generator$5((function*(e,{storefrontId:d}){yield n._updateStorefrontId(d)}));return function(n,d){return e.apply(this,arguments)}}())}}const Va=["uploadedVideo","uploadedAudio","uploaded-videos","uploaded-audios"];function asyncGeneratorStep$4(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$4(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$4(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$4(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property$1(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread$1(e){for(var n=1;n{switch(typeof n){case"string":return n;case"undefined":return"undefined";default:return"PlayActivityEndReasonType."+e.PlayActivityEndReasonType[n]}};class MPAFTracker{get requestedEvents(){return Array.from(this.dispatchTable.keys())}get isConfigured(){return void 0!==this.instance}get activityTracker(){if(void 0===this._activityTracker)throw new MKError(MKError.Reason.CONFIGURATION_ERROR,"Play Activity service was called before configuration.");return this._activityTracker}configure(e){var n=this;return _async_to_generator$4((function*(){var d,p,h;n.instance=e.instance,n.services=e.services,n._activityTracker=(d=e.instance,p=e.services.runtime,new PlayActivity(d.developerToken,d.musicUserToken,d.storefrontCountryCode,{app:{build:To.app.build,name:null!==(h=To.app.name)&&void 0!==h?h:"",version:To.app.version},fetch:!p.isNodeEnvironment&&fetch.bind(globalThis),isQA:qa.enabled,logInfo:Ha.enabled,sourceType:d.sourceType,guid:d.guid,userIsSubscribed:()=>!(!d.isAuthorized||!wo.storekit._getIsActiveSubscription.getCachedValue())}))}))()}handleEvent(e,n,d){if(!this.shouldTrackPlayActivity(e,d))return;const p=this.dispatchTable.get(e);void 0!==p&&"function"==typeof this[p]&&this[p](d,n)}activate(e,n={}){return this.activityTracker.activate(n.flush)}exit(e,n={}){return Ha.debug("PAF debug",`client.exit(${n.position})`),this.activityTracker.exit(n.position)}pause(e,n={}){return"number"==typeof n.endReasonType?(Ha.debug("PAF debug",`client.stop(${n.position}, ${n.endReasonType})`),this.activityTracker.stop(n.position,n.endReasonType)):(Ha.debug("PAF debug",`client.pause(${n.position})`),this.activityTracker.pause(n.position))}play(e,n={}){const d=generateItemDescriptorForPAF(_t.playbackPlay,this.instance,e);return isLiveRadioKind(e,"video")&&(this.musicLiveVideoStartTime=Date.now()),Ha.debug("PAF debug",`client.play(${JSON.stringify(d)}, ${n.position})`),this.activityTracker.play(d,n.position)}scrub(e,n={}){return Ha.debug("PAF debug",`client.scrub(${n.position}, ${asCode(n.endReasonType)})`),this.activityTracker.scrub(n.position,n.endReasonType)}seek(n,d={}){var p=this;return _async_to_generator$4((function*(){yield p.scrub(n,{position:d.startPosition,endReasonType:e.PlayActivityEndReasonType.SCRUB_BEGIN}),yield p.scrub(n,{position:d.position,endReasonType:e.PlayActivityEndReasonType.SCRUB_END})}))()}skip(e,n={}){var d=this;return _async_to_generator$4((function*(){const p=generateItemDescriptorForPAF(_t.playbackSkip,d.instance,e);Ha.debug("PAF debug",`client.skip(${JSON.stringify(p)}, ${asCode(n.direction)}, ${n.position})`);try{yield d.activityTracker.skip(p,n.direction,n.position)}catch(Ut){if("A play stop() method was called without a previous play() descriptor"!==Ut.message)return Promise.reject(Ut);yield d.play(e,n)}}))()}stop(n,d={}){var p,h,y;(isLiveRadioKind(n,"video")?(d.position=(Date.now()-this.musicLiveVideoStartTime)/1e3,this.musicLiveVideoStartTime=0):(null===(p=n)||void 0===p?void 0:p.isLiveRadioStation)&&d.position&&(d.position=d.position-(d.startPosition||0)),null===(h=n)||void 0===h?void 0:h.isLiveRadioStation)&&(d.endReasonType=null!==(y=d.endReasonType)&&void 0!==y?y:e.PlayActivityEndReasonType.PLAYBACK_MANUALLY_PAUSED);return Ha.debug("PAF debug",`client.stop(${d.position}, ${asCode(d.endReasonType)})`),this.activityTracker.stop(d.position,d.endReasonType)}shouldTrackPlayActivity(n,d){const p=hasAuthorization(),h=!d||d.playbackType!==e.PlaybackType.preview,y=this.alwaysSendForActivityType(n),_=!d||d&&this.mediaRequiresPlayActivity(d);return!(!p||!h||!y&&!_)}alwaysSendForActivityType(e){return e===_t.playerActivate||e===_t.playerExit}mediaRequiresPlayActivity(e){return void 0!==(n=e.type)&&Va.includes(n)||-1!==["musicVideo","song","radioStation"].indexOf(e.type);var n}constructor(){_define_property$1(this,"instance",void 0),_define_property$1(this,"services",void 0),_define_property$1(this,"_activityTracker",void 0),_define_property$1(this,"musicLiveVideoStartTime",0),_define_property$1(this,"dispatchTable",new Map([[_t.playbackPlay,"play"],[_t.playbackPause,"pause"],[_t.playbackScrub,"scrub"],[_t.playbackSeek,"seek"],[_t.playbackSkip,"skip"],[_t.playbackStop,"stop"],[_t.playerActivate,"activate"],[_t.playerExit,"exit"]]))}}function generateItemDescriptorForPAF(n,d,p){var h;const y=_object_spread_props$1(_object_spread$1({},function(n,d,p){var h;if(void 0===(null===(h=p)||void 0===h?void 0:h.playbackActions)||void 0===d)return{};const y={[e.PlayerRepeatMode.all]:Ot.REPEAT_ALL,[e.PlayerRepeatMode.none]:Ot.REPEAT_OFF,[e.PlayerRepeatMode.one]:Ot.REPEAT_ONE},_={[e.PlayerShuffleMode.off]:At.SHUFFLE_OFF,[e.PlayerShuffleMode.songs]:At.SHUFFLE_ON};return{playMode(){let n=Ot.REPEAT_UNKNOWN,d=At.SHUFFLE_UNKNOWN,h=Rt.AUTO_UNKNOWN;const{playbackActions:m}=p;var g;return m&&(m.includes(e.PlaybackActions.REPEAT)&&(n=y[p.repeatMode]),m.includes(e.PlaybackActions.SHUFFLE)&&(d=_[p.shuffleMode]),m.includes(e.PlaybackActions.AUTOPLAY)&&(h=p.autoplayEnabled?(g=p.queue).hasAutoplayStation&&g.items.some(e=>{const{id:n,type:d,container:p}=e;if(p&&"stations"===p.type&&p.name===mt.RADIO)return!1;const h=normalizeTypeForAutoplay(n,d);return isAutoplaySupportedForType(h)})?Rt.AUTO_ON:Rt.AUTO_ON_CONTENT_UNSUPPORTED:Rt.AUTO_OFF)),{repeatPlayMode:n,shufflePlayMode:d,autoplayMode:h}}}}(0,p,d),function(e,n){var d;if(!typeRequiresItem(e))return{};if(void 0===n)return{};const p=null===(d=n.attributes)||void 0===d?void 0:d.mediaKind;return _object_spread$1({},void 0!==p?{mediaType:p}:{},n.playParams)}(n,p),function(e,n){if(!typeRequiresItem(e)||void 0===n)return{};const{context:d={}}=n;return{recoData:d.reco_id}}(n,p),function(e,n){if(!typeRequiresItem(e)||void 0===n)return{};const d=n.playbackDuration;if(!d)return{};return{duration:d/1e3}}(n,p),function(e,n){var d,p,h,y,_,m,g;const b=function(e,n){var d,p;return itemIsRequired(e,n)&&(null===(p=n)||void 0===p||null===(d=p.container)||void 0===d?void 0:d.name)||null}(e,n),S=itemIsRequired(e,n)?_object_spread$1({},null===(d=n)||void 0===d?void 0:d.container,null===(y=n)||void 0===y||null===(h=y.container)||void 0===h||null===(p=h.attributes)||void 0===p?void 0:p.playParams,(null===(g=n)||void 0===g||null===(m=g.container)||void 0===m||null===(_=m.attributes)||void 0===_?void 0:_.hasCollaboration)&&{isCollaborative:!0}):null;if(null===b&&null===S)return;return{container:cleanContainer(_object_spread$1({},S,null!==b?{name:b}:{}))}}(n,p)),{trackInfo:null===(h=p)||void 0===h?void 0:h.trackInfo});return Ha.trace("PAF descriptor",y),y}const qa=BooleanDevFlag.register("mk-use-paf-qa-endpoint");const typeRequiresItem=e=>[_t.playbackPlay,_t.playbackSkip].includes(e),itemIsRequired=(e,n)=>void 0!==n&&typeRequiresItem(e);function cleanContainer(e){const n=_object_spread$1({},e);return delete n.attributes,n}function asyncGeneratorStep$3(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$3(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$3(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$3(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _define_property(e,n,d){return n in e?Object.defineProperty(e,n,{value:d,enumerable:!0,configurable:!0,writable:!0}):e[n]=d,e}function _object_spread(e){for(var n=1;ne.isAuthorized&&wo.storekit._getIsActiveSubscription.getCachedValue()}))),this._activityTracker}get isConfigured(){return void 0!==this.instance}static configure(e){var n=this;return _async_to_generator$3((function*(){const d=new n;return d.configure(e),d}))()}configure(e){var n=this;return _async_to_generator$3((function*(){n.instance=e.instance,n.services=e.services}))()}handleEvent(e,n,d){const p=this.dispatchTable.get(e);void 0!==p&&"function"==typeof this[p]&&this[p](d,n)}lyricsPlay(e,n){var d=this;return _async_to_generator$3((function*(){var p;const h=null===(p=n)||void 0===p?void 0:p.lyrics;if(void 0===h)throw new MKError(MKError.Reason.MEDIA_DESCRIPTOR,"Key lyrics is missing from descriptor provided to lyricsPlay");if(void 0===e)throw new MKError(MKError.Reason.MEDIA_DESCRIPTOR,"Cannot display lyrics without a MediaItem");d.activityTracker.play(function(e,n,d){var p,h,y,_;return _object_spread_props(_object_spread({id:n.id,duration:0,eventType:Ct.LYRIC_DISPLAY,container:_object_spread({},n.container,null===(h=n.container)||void 0===h||null===(p=h.attributes)||void 0===p?void 0:p.playParams)},n.playParams),{lyricDescriptor:{id:null!==(_=d.id)&&void 0!==_?_:n.id,displayType:d.displayType,language:d.language},trackInfo:n.trackInfo,recoData:null===(y=n.attributes)||void 0===y?void 0:y.reco_id})}(_t.lyricsPlay,e,h))}))()}lyricsStop(e,n){var d=this;return _async_to_generator$3((function*(){d.activityTracker.stop()}))()}exit(e,n){var d=this;return _async_to_generator$3((function*(){d.activityTracker.exit()}))()}constructor(){_define_property(this,"dispatchTable",new Map([[_t.lyricsPlay,"lyricsPlay"],[_t.lyricsStop,"lyricsStop"],[_t.playerExit,"exit"]])),_define_property(this,"instance",void 0),_define_property(this,"services",void 0),_define_property(this,"_activityTracker",void 0)}}const Ya=BooleanDevFlag.register("mk-use-paf-qa-endpoint");function asyncGeneratorStep$2(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$2(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$2(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$2(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function _ts_metadata(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}class MusicKitInstance extends MKInstance{addToLibrary(e,n){var d=this;return _async_to_generator$2((function*(){let p;return yield d.authorize(),n||(n=/[a-z]{2}\.[a-z0-9\-]+/i.test(e)?"playlists":"albums"),d.api.music&&(p=d.api.music("/v1/me/library",{[`ids[${n}]`]:e},{fetchOptions:{method:"POST"}})),p}))()}changeToMediaItem(e){var n=this,_superprop_get_changeToMediaItem=()=>super.changeToMediaItem;return _async_to_generator$2((function*(){return n._checkNeedsEquivalent(),_superprop_get_changeToMediaItem().call(n,e)}))()}play(){var e=this,_superprop_get_play=()=>super.play;return _async_to_generator$2((function*(){return e._checkNeedsEquivalent(),_superprop_get_play().call(e)}))()}playMediaItem(e,n){var d=this,_superprop_get_playMediaItem=()=>super.playMediaItem;return _async_to_generator$2((function*(){if(d._isPlaybackSupported())return d._checkNeedsEquivalent(),_superprop_get_playMediaItem().call(d,e,n)}))()}_isStationQueueOptions(e){return!(!(e=>!!e&&(!!isIdentityQueue(e)||(!!isQueueURLOption(e)||Object.keys(Zo).some(n=>void 0!==e[n]))))(e=parseQueueURLOption(e))||(e=>{if(!e)return!1;if(isQueueURLOption(e))return!0;if(isQueueItems(e))return!0;return Object.keys(aa).concat(Object.keys(sa)).some(n=>void 0!==e[n])})(e))}setStationQueue(e){var n=this,_superprop_get__validateAuthorization=()=>super._validateAuthorization;return _async_to_generator$2((function*(){if(!n._isPlaybackSupported())return void He.warn("Playback is not supported");n._signalChangeItemIntent(),n.deferPlayback(),yield n._updatePlaybackController(n._getPlaybackControllerByType(qo.continuous)),yield _superprop_get__validateAuthorization().call(n,!0),e=parseQueueURLOption(e);const d=n._playbackController.setQueue(e);return void 0!==e.autoplay&&(deprecationWarning("autoplay",{message:"autoplay has been deprecated, use startPlaying instead"}),void 0===e.startPlaying&&(e.startPlaying=e.autoplay)),e.startPlaying&&(yield n.play()),d}))()}setQueue(e){var n=this;return _async_to_generator$2((function*(){if(He.debug("instance.setQueue()",e),n._checkNeedsEquivalent(),!n._isPlaybackSupported())return void He.warn("Playback is not supported");if(n._isStationQueueOptions(e))return He.warn("setQueue options contained a station queue request. Changing to setStationQueue mode."),n.setStationQueue(e);n._signalChangeItemIntent(),n.deferPlayback(),yield n._updatePlaybackController(n._getPlaybackControllerByType(qo.serial));const d=yield n._playbackController.setQueue(e);return void 0!==e.repeatMode&&(n._playbackController.repeatMode=e.repeatMode),void 0!==e.autoplay&&(deprecationWarning("autoplay",{message:"autoplay has been deprecated, use startPlaying instead"}),void 0===e.startPlaying&&(e.startPlaying=e.autoplay)),e.startPlaying&&(yield n.play()),d}))()}_checkNeedsEquivalent(){var n;if(this.realm===e.SKRealm.MUSIC&&!this.previewOnly&&(null===(n=this.api)||void 0===n?void 0:n.needsEquivalents))throw new MKError(MKError.Reason.CONTENT_EQUIVALENT)}playNext(e,n=!1){var d=this;return _async_to_generator$2((function*(){if(d._isPlaybackSupported())return d._playbackController.queue?(d.deferPlayback(),d._playbackController.prepend(e,n)):d.setQueue(e);He.warn("Playback is not supported")}))()}playLater(e){var n=this;return _async_to_generator$2((function*(){if(n._isPlaybackSupported())return n._playbackController.queue?(n.deferPlayback(),n._playbackController.append(e)):n.setQueue(e);He.warn("Playback is not supported")}))()}playAt(e,n){var d=this;return _async_to_generator$2((function*(){if(d._isPlaybackSupported())return d._playbackController.queue?(d.deferPlayback(),d._playbackController.insertAt(e,n)):d.setQueue(n);He.warn("Playback is not supported")}))()}clearQueue(){var e=this;return _async_to_generator$2((function*(){return e._mediaItemPlayback.clearNextManifest(),e._playbackController.clear()}))()}}var za;function asyncGeneratorStep$1(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator$1(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep$1(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep$1(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}!function(e,n,d,p){var h,y=arguments.length,_=y<3?n:null===p?p=Object.getOwnPropertyDescriptor(n,d):p;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)_=Reflect.decorate(e,n,d,p);else for(var m=e.length-1;m>=0;m--)(h=e[m])&&(_=(y<3?h(_):y>3?h(n,d,_):h(n,d))||_);y>3&&_&&Object.defineProperty(n,d,_)}([(e,n,d)=>{const p=d.value;return d.value=function(...e){if(!this.isInSharePlay)return p.apply(this,e);za&&this.services.dispatcher.publish(za)},d},_ts_metadata("design:type",Function),_ts_metadata("design:paramtypes",[Number,"undefined"==typeof SerialQueueOptions?Object:SerialQueueOptions])],MusicKitInstance.prototype,"playAt",null);function loadLinksData(){return _loadLinksData.apply(this,arguments)}function _loadLinksData(){return(_loadLinksData=_async_to_generator$1((function*(){const e=[{feature:"album-song",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/albums?/(?:[^/]+/)?(?\\d+)$",requiredQueryParams:{i:"(?\\d+)"},mediaAPI:{resources:["songs"]}},{feature:"albums",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/albums?/(?:[^/]+/)?(?\\d+)$",mediaAPI:{resources:["albums"]}},{feature:"algo-stations",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/stations?/(?:[^/]+/)?(?(?:ra|st).\\d+)",mediaAPI:{resources:["stations"]}},{feature:"artist-default-playable-content",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/artists?/(?:[^/]+/)?(?\\d+)$",mediaAPI:{resources:["artists","default-playable-content"]}},{feature:"genre-stations",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/genre-stations?",mediaAPI:{resources:["stations"],parameterMapping:{genres:"filter[genres]",eras:"filter[eras]",tags:"filter[tags]",moods:"filter[moods]"}}},{feature:"library-albums",regex:"http(?:s)?://(?itunes|music).apple.com/library/albums?/(?:[^/]+/)?(?(?:l).[a-zA-Z0-9-]+)$",mediaAPI:{resources:["albums"]}},{feature:"library-album-song",regex:"http(?:s)?://(?itunes|music).apple.com/library/albums?/(?:[^/]+/)?(?(?:l).[a-zA-Z0-9-]+)$",requiredQueryParams:{i:"(?i\\.[a-zA-Z0-9-]+)"},mediaAPI:{resources:["songs"]}},{feature:"library-playlists",regex:"http(?:s)?://(?itunes|music).apple.com/library/playlists?/(?:[^/]+/)?(?(?:p).[a-zA-Z0-9-]+)$",mediaAPI:{resources:["playlists"]}},{feature:"music-videos",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/music-videos?/(?:[^/]+/)?(?\\d+)$",mediaAPI:{resources:["musicVideos"]}},{feature:"personal-general-radio",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/stations?/me$",mediaAPI:{resources:["stations"],parameters:{"filter[identity]":"personal"}}},{feature:"personal-mixes",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/(?:personal-)?mix/(?:[^/]+/)?(?mx.(?:\\d{1,2}|rp-\\d{4}))$",mediaAPI:{resources:["playlists"]}},{feature:"playlists",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/playlists?/(?:[^/]+/)?(?(?:pl).[a-zA-Z0-9-]+)$",mediaAPI:{resources:["playlists"]}},{feature:"song",regex:"http(?:s)?://(?itunes|music).apple.com/(?\\w{2})/songs?/(?:[^/]+/)?(?\\d+)$",mediaAPI:{resources:["songs"]}},{feature:"steering-request",regex:"http(?:s)?://(?itunes|music).apple.com/me/stations?/change-station/?$",mediaAPI:{resources:["stations"]}}].map(e=>(e.regex=new RegExp(e.regex),e.requiredQueryParams&&(e.requiredQueryParams=Object.keys(e.requiredQueryParams).reduce((n,d)=>(n[d]=new RegExp(e.requiredQueryParams[d]),n),{})),e));return Promise.resolve(e)}))).apply(this,arguments)}function meetsLinkRequirements(e,n,d={}){const[p]=e.split(/\?|\#|\&/),h=n.regex.test(p);return h&&n.requiredQueryParams?Object.keys(n.requiredQueryParams).every(e=>{const p=d[e];return n.requiredQueryParams[e].test(p)}):h}function filterLinks(e){return _filterLinks.apply(this,arguments)}function _filterLinks(){return(_filterLinks=_async_to_generator$1((function*(e){const n=yield loadLinksData(),d=parseQueryParams(e);return n.reduce((n,p)=>{if(meetsLinkRequirements(e,p,d)){if(n.length>0)if(p.requiredQueryParams)n=n.filter(e=>e.requiredQueryParams);else if(n.some(e=>e.requiredQueryParams))return n;p.requiredQueryParams?p.mediaAPI.parameters=Object.keys(p.requiredQueryParams).reduce((e,n)=>(e[n]=d[n],e),{}):p.mediaAPI.parameterMapping&&(p.mediaAPI.parameters=transform$8(p.mediaAPI.parameterMapping,d,!0)),n.push(p)}return n},[])}))).apply(this,arguments)}function _resolveCanonical(){return(_resolveCanonical=_async_to_generator$1((function*(e){return{results:{links:yield filterLinks(e)},meta:{originalUrl:e,originalQueryParams:parseQueryParams(e)}}}))).apply(this,arguments)}function asyncGeneratorStep(e,n,d,p,h,y,_){try{var m=e[y](_),g=m.value}catch(Q){return void d(Q)}m.done?n(g):Promise.resolve(g).then(p,h)}function _async_to_generator(e){return function(){var n=this,d=arguments;return new Promise((function(p,h){var y=e.apply(n,d);function _next(e){asyncGeneratorStep(y,p,h,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(y,p,h,_next,_throw,"throw",e)}_next(void 0)}))}}function configure(e){return _configure.apply(this,arguments)}function _configure(){return(_configure=_async_to_generator((function*(e){He.linkChild(Be),He.linkChild(je),He.linkChild(ye),He.linkChild(Ue),e.playActivityAPI=[new MPAFTracker,new LyricsTracker];let n=MusicKitInstance;return yield configure$2(e,n,function(){var n=_async_to_generator((function*(n){const d={apiType:ca.MEDIA_API,configureFn:Ka,options:{}};yield n.configure([d]),e.declarativeMarkup&&"undefined"!=typeof console&&console.warn&&console.warn("The declarativeMarkup configuration option has been removed in MusicKit JS V3")}));return function(e){return n.apply(this,arguments)}}())}))).apply(this,arguments)}if(xa){const e=function(){function meta(e){var n;if(detectNodeEnvironment())return;return(null===(n=document.head.querySelector(`meta[name=${e}]`))||void 0===n?void 0:n.content)||void 0}const e=meta("apple-music-developer-token")||meta("JWT"),n=meta("apple-music-app-build")||meta("version"),d=meta("apple-music-app-name"),p=meta("apple-music-app-version");let h;return(e||n||d||p)&&(h={},e&&(h.developerToken=e),(n||d||p)&&(h.app={},n&&(h.app.build=n),d&&(h.app.name=d),p&&(h.app.version=p))),h}(),n=/interactive|complete|loaded/.test(document.readyState);e&&e.developerToken&&0===getInstances().length&&(n?asAsync(configure(e)):document.addEventListener("DOMContentLoaded",()=>configure(e)))}e.Events=So,e.MKError=MKError,e.MediaItem=MediaItem,e.VideoTypes={movie:!0,musicVideo:!0,musicMovie:!0,trailer:!0,tvEpisode:!0,uploadedVideo:!0,"uploaded-videos":!0,"music-videos":!0,"music-movies":!0,"tv-episodes":!0,Bonus:!0,Extra:!0,Episode:!0,Movie:!0,Preview:!0,Promotional:!0,Season:!0,Show:!0,Vod:!0,EditorialVideoClip:!0,RealityVideo:!0,SportingEvent:!0,LiveService:!0},e.configure=configure,e.enableMultipleInstances=function(){La=!0},e.formatArtworkURL=formatArtworkURL,e.formatMediaTime=function(e,n=":"){const{hours:d,minutes:p}=formattedSeconds(e);e=Math.floor(e%3600%60);const h=[];return d?(h.push(""+d),h.push(p<10?"0"+p:""+p)):h.push(""+p),h.push(e<10?"0"+e:""+e),h.join(n)},e.formattedMediaURL=formattedMediaURL,e.formattedMilliseconds=function(e){return formattedSeconds(e/1e3)},e.formattedSeconds=formattedSeconds,e.generateEmbedCode=function(e,n={height:"450",width:"660"}){if(!p.test(e))throw new Error("Invalid content url");var d;let _=null!==(d=n.height)&&void 0!==d?d:"450";var m;let g=null!==(m=n.width)&&void 0!==m?m:"660";const{kind:b,isUTS:S}=formattedMediaURL(e),P="post"===b||"musicVideo"===b||S;"song"===b||"episode"===b?_="175":P&&(_=""+Math.round(.5625*parseInt(g,10))),_=(""+_).replace(/(\d+)px/i,"$1"),g=(""+g).replace(/^(\d+)(?!px)%?$/i,"$1px");const E=(P?"width:"+g:"width:100%;"+(g?"max-width:"+g:""))+";overflow:hidden;border-radius:10px;";return``},e.getHlsJsCdnConfig=getHlsJsCdnConfig,e.getInstance=function(e){if(0!==Na.length)return void 0===e?Na[Na.length-1]:Na.find(n=>n.id===e)},e.getInstances=getInstances,e.getPlayerType=function(e){var n,d,p,h,y,_;return(null===(n=e)||void 0===n?void 0:n.isUTS)||re.includes(null===(d=e)||void 0===d?void 0:d.type)?"video":"podcast-episodes"===(null===(p=e)||void 0===p?void 0:p.type)?"audio":null!==(_=null===(y=e)||void 0===y||null===(h=y.attributes)||void 0===h?void 0:h.mediaKind)&&void 0!==_?_:"audio"},e.resolveCanonical=function(e){return _resolveCanonical.apply(this,arguments)},Object.defineProperty(e,"__esModule",{value:!0})})); \ No newline at end of file diff --git a/old/frontend/src/client/appleMusic/playerStyle.css b/old/frontend/src/client/appleMusic/playerStyle.css deleted file mode 100644 index 2d8bd6e..0000000 --- a/old/frontend/src/client/appleMusic/playerStyle.css +++ /dev/null @@ -1,136 +0,0 @@ -.song-info { - background-color: #8e9ced; - height: 13vh; - width: 50%; - margin-left: auto; - margin-right: auto; - position: relative; -} - -.image { - width: 7vh; - height: 7vh; - object-fit: cover; - object-position: center; - font-size: 7vh; - margin-left: 1vh; - margin-top: 1vh; -} - -.name { - margin-left: auto; - margin-right: auto; -} - -.song-info-wrapper { - display: flex; - flex-direction: row; -} - -.song-info-wrapper h3 { - margin: 0; - margin-bottom: 0.5vh; - margin-top: 1vh; -} - -.controls { - margin-left: 5%; - display: flex; - justify-content: center; - align-items: center; -} - -.control-icon { - cursor: pointer; - font-size: 3vh; - user-select: none; -} - -.play-pause { - font-size: 5vh; -} - -.inactive { - color: gray; - cursor: default; -} - -.player { - display: flex; - flex-direction: row; - align-items: center; - justify-content: center; - width: 100%; - height: 100%; -} - -.playback-pos-info { - display: flex; - flex-direction: row; - width: 98%; - margin-left: 1%; - position: absolute; - bottom: 17px; -} - -#showIP { - background-color: rgb(63, 63, 63); - display: none; - position: absolute; - min-height: 16vh; - padding: 2vh; - min-width: 20vw; - z-index: 10; - justify-content: center; - align-items: center; - flex-direction: column; - font-size: 70%; - border-radius: 5px 10px 10px 10px; -} - -#showIP h4, #showIP p { - margin: 0; -} - -#settings:hover #showIP { - display: flex; -} - -#showIP::before { - content: " "; - position: absolute; - bottom: 100%; /* At the bottom of the tooltip */ - left: 0; - margin-left: 3px; - border-width: 10px; - border-style: solid; - border-color: transparent transparent rgb(63, 63, 63) transparent; -} - -/* Prepare to play */ - -.preparingToPlay { - background-color: rgba(0, 0, 0, 0.7); - width: 100vw; - height: 100vh; - position: fixed; - align-items: center; - justify-content: center; - display: flex; - flex-direction: column; - top: 0; - left: 0; -} - -.loading-spinner { - animation: spin 2s infinite linear; -} - -@keyframes spin { - from { - transform: rotate( 0deg ); - } - to { - transform: rotate( 720deg ); - } -} \ No newline at end of file diff --git a/old/frontend/src/client/appleMusic/style.css b/old/frontend/src/client/appleMusic/style.css deleted file mode 100644 index 097e646..0000000 --- a/old/frontend/src/client/appleMusic/style.css +++ /dev/null @@ -1,359 +0,0 @@ -/* -* MusicPlayerV2 - style.css -* -* Created by Janis Hutz 11/14/2023, Licensed under the GPL V3 License -* https://janishutz.com, development@janishutz.com -* -* -*/ - -body, html { - width: 100%; - height: 100%; - margin: 0; - padding: 0; - background-color: rgb(49, 49, 49); - font-family: sans-serif; - color: white; -} - -/* Start page style */ -.start-page { - width: 100%; - height: 100vh; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.image-wrapper { - height: 50vh; - width: 50vh; -} - -#logo-main { - height: 50vh; -} - -#apple-music-logo { - height: 10vh; - position: relative; - bottom: 10vh; - left: 41vh; -} - -.button { - padding: 20px; - background-color: rgb(1, 1, 88); - color: white; - border: none; - border-radius: 50px; - transition: all 1s; - cursor: pointer; - font-size: 120%; -} - -.button:hover { - background-color: rgb(1, 1, 120); - border-radius: 20px; -} - -/* Main style */ - -.home { - width: 100%; - height: 100%; -} - -.pool-wrapper { - height: 84vh; - margin-top: 16vh; -} - -.top-bar { - top: 0; - margin-left: auto; - margin-right: auto; - position: fixed; - z-index: 8; - width: 99%; - height: 15vh; - display: flex; - align-items: center; - flex-direction: row; - border: white 2px solid; - background-color: rgb(49, 49, 49); -} - -.player-wrapper { - width: 70vw; - margin-right: auto; - height: 100%; - display: flex; - justify-content: center; - align-items: center; -} - -.logo { - height: 13vh; - margin-left: 3%; - margin-right: auto; -} - - -/* Media Pool */ - -.playing-symbols { - position: absolute; - left: 10%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; - margin: 0; - width: 5vw; - height: 5vw; - background-color: rgba( 0, 0, 0, 0.6 ); -} - -.playing-symbols-wrapper { - width: 4vw; - height: 5vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; -} - -.playing-bar { - height: 60%; - background-color: white; - width: 10%; - border-radius: 50px; - margin: auto; -} - -#bar-1 { - animation: music-playing 0.9s infinite ease-in-out; -} - -#bar-2 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.3s; -} - -#bar-3 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.6s; -} - -@keyframes music-playing { - 0% { - transform: scaleY( 1 ); - } - 50% { - transform: scaleY( 0.5 ); - } - 100% { - transform: scaleY( 1 ); - } -} - -.loading-spinner { - animation: spin 2s infinite linear; -} - -@keyframes spin { - from { - transform: rotate( 0deg ); - } - to { - transform: rotate( 720deg ); - } -} - -.media-pool { - width: 100%; - height: 100%; - display: flex; - align-items: center; - flex-direction: column; -} - -.no-songs { - height: 50vh; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.song-list-wrapper { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.song-list { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - width: 80%; - margin: 2px; - padding: 1vh; - border: 1px white solid; -} - -.song-list h3 { - margin: 0; - display: block; - margin-left: 10px; - margin-right: auto; -} - -.song-list .song-image { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw; -} - -.play-icon, .pause-icon { - display: none; - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw; - cursor: pointer; - user-select: none; -} - -.playing:hover .pause-icon { - display: block; -} - -.playing:hover .playing-symbols { - display: none; -} - -.song-list:hover .song-image { - display: none; -} - -.not-playing:hover .play-icon { - display: block; -} - -.active-song .pause-icon { - display: block; -} - -.active-song .song-image, .active-song:hover .pause-icon { - display: none; -} - -/* Slider */ - -.progress-slider { - width: 100%; - margin: 0; - position: absolute; - left: 0; - bottom: 0; - height: 5px; - cursor: pointer; - background-color: #baf4c9; -} - -.progress-slider::-webkit-progress-value { - background-color: #baf4c9; -} - -#slider-knob { - height: 20px; - width: 10px; - display: flex; - justify-content: flex-start; - align-items: flex-end; - position: absolute; - bottom: 0; - left: 0; - z-index: 2; - cursor: grab; -} - -#slider-knob-style { - background-color: #baf4c9; - height: 15px; - width: 5px; -} - -#drag-support { - display: none; - opacity: 0; - height: 100vh; - width: 100vw; - position: fixed; - top: 0; - left: 0; - z-index: 10; - cursor: grabbing; -} - -.drag-support-active { - display: block !important; -} - -.slider-inactive { - cursor: default !important; -} - - -.warning { - display: flex; - justify-content: center; - align-items: center; - width: 40vw; - height: 50vh; - font-size: 2vh; - background-color: rgb(255, 0, 0); - color: white; - position: fixed; - right: 1vh; - top: 1vh; - flex-direction: column; - z-index: 100; -} - -.warning h3 { - font-size: 4vh; -} - -.warning .flash { - background-color: rgba(255, 0, 0, 0.4); - animation: flashing linear infinite 1s; - width: 100vw; - height: 100vh; - top: 0; - left: 0; - position: fixed; - z-index: -1; -} - -@keyframes flashing { - 0% { - opacity: 0; - } - 50% { - opacity: 1; - } - 100% { - opacity: 0; - } -} \ No newline at end of file diff --git a/old/frontend/src/client/backgroundAnim.css b/old/frontend/src/client/backgroundAnim.css deleted file mode 100644 index 59d4fba..0000000 --- a/old/frontend/src/client/backgroundAnim.css +++ /dev/null @@ -1,44 +0,0 @@ -.background { - position: fixed; - left: -50vw; - width: 200vw; - height: 200vw; - top: -50vw; - z-index: -1; - filter: blur(10px); - background: conic-gradient( blue, green, red, blue ); - animation: gradientAnim 10s infinite linear; - background-position: center; -} - -.beat, .beat-manual { - height: 100%; - width: 100%; - background-color: rgba( 0, 0, 0, 0.15 ); - display: none; -} - -.beat { - animation: beatAnim 0.6s infinite linear; -} - -@keyframes beatAnim { - 0% { - background-color: rgba( 0, 0, 0, 0.2 ); - } - 20% { - background-color: rgba( 0, 0, 0, 0 ); - } - 100% { - background-color: rgba( 0, 0, 0, 0.2 ); - } -} - -@keyframes gradientAnim { - from { - transform: rotate( 0deg ); - } - to { - transform: rotate( 360deg ); - } -} \ No newline at end of file diff --git a/old/frontend/src/client/icon-font.css b/old/frontend/src/client/icon-font.css deleted file mode 100644 index c221497..0000000 --- a/old/frontend/src/client/icon-font.css +++ /dev/null @@ -1,24 +0,0 @@ -/* fallback */ -@font-face { - font-family: 'Material Symbols Outlined'; - font-style: normal; - font-weight: 100 700; - src: url(/iconFont.woff2) format('woff2'); - } - - .material-symbols-outlined { - font-family: 'Material Symbols Outlined'; - font-weight: normal; - font-style: normal; - font-size: 24px; - line-height: 1; - letter-spacing: normal; - text-transform: none; - display: inline-block; - white-space: nowrap; - word-wrap: normal; - direction: ltr; - -moz-font-feature-settings: 'liga'; - -moz-osx-font-smoothing: grayscale; - } - \ No newline at end of file diff --git a/old/frontend/src/client/iconFont.woff2 b/old/frontend/src/client/iconFont.woff2 deleted file mode 100644 index 3ac032b..0000000 Binary files a/old/frontend/src/client/iconFont.woff2 and /dev/null differ diff --git a/old/frontend/src/client/logo.png b/old/frontend/src/client/logo.png deleted file mode 100644 index 52cdfa9..0000000 Binary files a/old/frontend/src/client/logo.png and /dev/null differ diff --git a/old/frontend/src/client/showcase.css b/old/frontend/src/client/showcase.css deleted file mode 100644 index bc3c4b3..0000000 --- a/old/frontend/src/client/showcase.css +++ /dev/null @@ -1,208 +0,0 @@ -.material-symbols-outlined { - font-variation-settings: - 'FILL' 0, - 'wght' 400, - 'GRAD' 0, - 'opsz' 24 -} - -body, html { - width: 100%; - height: 100%; - margin: 0; - padding: 0; - color: white; -} - -body { - font-family: sans-serif; -} - -.content { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.playing-symbols { - position: absolute; - left: 10vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; - width: 5vw; - height: 5vw; - background-color: rgba( 0, 0, 0, 0.6 ); -} - -.playing-symbols-wrapper { - width: 4vw; - height: 5vw; - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; -} - -.playing-bar { - height: 60%; - background-color: white; - width: 10%; - border-radius: 50px; - margin: auto; -} - -#bar-1 { - animation: music-playing 0.9s infinite ease-in-out; -} - -#bar-2 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.3s; -} - -#bar-3 { - animation: music-playing 0.9s infinite ease-in-out; - animation-delay: 0.6s; -} - -@keyframes music-playing { - 0% { - transform: scaleY( 1 ); - } - 50% { - transform: scaleY( 0.5 ); - } - 100% { - transform: scaleY( 1 ); - } -} - -.song-list-wrapper { - width: 100%; - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; -} - -.song-list { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - width: 80%; - margin: 2px; - padding: 1vh; - border: 1px white solid; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.song-details-wrapper { - margin: 0; - display: block; - margin-left: 10px; - margin-right: auto; -} - -.song-list .song-image { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw; -} - -.pause-icon { - width: 5vw; - height: 5vw; - object-fit: cover; - object-position: center; - font-size: 5vw !important; - user-select: none; -} - -.current-song-wrapper { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - height: 55vh; - width: 100%; - margin-bottom: 0.5%; - margin-top: 0.25%; -} - -.current-song { - display: flex; - justify-content: center; - align-items: center; - flex-direction: column; - margin-top: 1vh; - padding: 1vh; - text-align: center; - background-color: rgba( 0, 0, 0, 0.4 ); -} - -.fancy-view-song-art { - height: 30vh; - width: 30vh; - object-fit: cover; - object-position: center; - margin-bottom: 10px; - font-size: 30vh !important; -} - -#app { - background-color: rgba( 0, 0, 0, 0 ); -} - -#progress, #progress::-webkit-progress-bar { - background-color: rgba(45, 28, 145); - color: rgba(45, 28, 145); - width: 30vw; - border: none; - border-radius: 0px; - accent-color: white; - -webkit-appearance: none; - appearance: none; -} - -#progress::-moz-progress-bar { - background-color: white; -} - -#progress::-webkit-progress-value { - background-color: white !important; -} - -.mode-selector-wrapper { - opacity: 0; - position: fixed; - right: 0.5%; - top: 0.5%; - padding: 0.5%; -} - -.mode-selector-wrapper:hover { - opacity: 1; -} - -.dancing-style { - font-size: 250%; - margin: 0; - font-weight: bolder; -} - -.info { - position: fixed; - font-size: 12px; - transform: rotate(270deg); - left: -150px; - margin: 0; - padding: 0; - top: 50%; -} \ No newline at end of file diff --git a/old/frontend/src/client/showcase.html b/old/frontend/src/client/showcase.html deleted file mode 100644 index 6e526b5..0000000 --- a/old/frontend/src/client/showcase.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - Showcase - MusicPlayerV2 - - - - - -
Designed and developed by Janis Hutz https://janishutz.com
-
-
-
- music_note - - -
- -

{{ playingSong.title }}

-

{{ playingSong.dancingStyle }}

-

{{ playingSong.artist }}

-
-
-
- -
-
-
- music_note - - -
-
-
-
-
-
-
- pause -
-

{{ song.title }}

-

{{ song.artist }}

-
-
- {{ getTimeUntil( song ) }} -
-
- -
-
-
-

Loading...

-
-
-
-
-
-
- - - - - - \ No newline at end of file diff --git a/old/frontend/src/client/showcase.js b/old/frontend/src/client/showcase.js deleted file mode 100644 index 60f0242..0000000 --- a/old/frontend/src/client/showcase.js +++ /dev/null @@ -1,359 +0,0 @@ -// eslint-disable-next-line no-undef -const { createApp } = Vue; - -createApp( { - data() { - return { - hasLoaded: false, - songs: [], - playingSong: {}, - isPlaying: false, - pos: 0, - queuePos: 0, - colourPalette: [], - progressBar: 0, - timeTracker: null, - visualizationSettings: 'mic', - micAnalyzer: null, - beatDetected: false, - colorThief: null, - lastDispatch: new Date().getTime() - 5000, - isReconnecting: false, - }; - }, - computed: { - songQueue() { - let ret = []; - let pos = 0; - for ( let song in this.songs ) { - if ( pos >= this.queuePos ) { - ret.push( this.songs[ song ] ); - } - pos += 1; - } - return ret; - }, - getTimeUntil() { - return ( song ) => { - let timeRemaining = 0; - for ( let i = this.queuePos; i < Object.keys( this.songs ).length - 1; i++ ) { - if ( this.songs[ i ] == song ) { - break; - } - timeRemaining += parseInt( this.songs[ i ].duration ); - } - if ( this.isPlaying ) { - if ( timeRemaining === 0 ) { - return 'Currently playing'; - } else { - return 'Playing in less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min'; - } - } else { - if ( timeRemaining === 0 ) { - return 'Plays next'; - } else { - return 'Playing less than ' + Math.ceil( timeRemaining / 60 - this.pos / 60 ) + 'min after starting to play'; - } - } - } - } - }, - methods: { - startTimeTracker () { - this.timeTracker = setInterval( () => { - this.pos = ( new Date().getTime() - this.playingSong.startTime ) / 1000 + this.oldPos; - this.progressBar = ( this.pos / this.playingSong.duration ) * 1000; - if ( isNaN( this.progressBar ) ) { - this.progressBar = 0; - } - }, 100 ); - }, - stopTimeTracker () { - clearInterval( this.timeTracker ); - this.oldPos = this.pos; - }, - getImageData() { - return new Promise( ( resolve, reject ) => { - if ( this.playingSong.hasCoverArt ) { - setTimeout( () => { - const img = document.getElementById( 'current-image' ); - if ( img.complete ) { - resolve( this.colorThief.getPalette( img ) ); - } else { - img.addEventListener( 'load', () => { - resolve( this.colorThief.getPalette( img ) ); - } ); - } - }, 500 ); - } else { - reject( 'no image' ); - } - } ); - }, - connect() { - this.colorThief = new ColorThief(); - let source = new EventSource( '/clientDisplayNotifier', { withCredentials: true } ); - source.onmessage = ( e ) => { - let data; - try { - data = JSON.parse( e.data ); - } catch ( err ) { - data = { 'type': e.data }; - } - if ( data.type === 'basics' ) { - this.isPlaying = data.data.isPlaying ?? false; - this.playingSong = data.data.playingSong ?? {}; - this.songs = data.data.songQueue ?? []; - this.pos = data.data.pos ?? 0; - this.oldPos = data.data.pos ?? 0; - this.progressBar = this.pos / this.playingSong.duration * 1000; - this.queuePos = data.data.queuePos ?? 0; - this.getImageData().then( palette => { - this.colourPalette = palette; - this.handleBackground(); - } ).catch( () => { - this.colourPalette = [ { 'r': 255, 'g': 0, 'b': 0 }, { 'r': 0, 'g': 255, 'b': 0 }, { 'r': 0, 'g': 0, 'b': 255 } ]; - this.handleBackground(); - } ); - } else if ( data.type === 'pos' ) { - this.pos = data.data; - this.oldPos = data.data; - this.progressBar = data.data / this.playingSong.duration * 1000; - } else if ( data.type === 'isPlaying' ) { - this.isPlaying = data.data; - this.handleBackground(); - } else if ( data.type === 'songQueue' ) { - this.songs = data.data; - } else if ( data.type === 'playingSong' ) { - this.playingSong = data.data; - this.getImageData().then( palette => { - this.colourPalette = palette; - this.handleBackground(); - } ).catch( () => { - this.colourPalette = [ [ 255, 0, 0 ], [ 0, 255, 0 ], [ 0, 0, 255 ] ]; - this.handleBackground(); - } ); - } else if ( data.type === 'queuePos' ) { - this.queuePos = data.data; - } - }; - - source.onopen = () => { - this.isReconnecting = false; - this.hasLoaded = true; - }; - - let self = this; - - source.addEventListener( 'error', function( e ) { - if ( e.eventPhase == EventSource.CLOSED ) source.close(); - - if ( e.target.readyState == EventSource.CLOSED ) { - setTimeout( () => { - if ( !self.isReconnecting ) { - console.log( 'disconnected' ); - self.isReconnecting = true; - self.tryReconnect(); - } - }, 1000 ); - } - }, false ); - }, - tryReconnect() { - const int = setInterval( () => { - if ( !this.isReconnecting ) { - clearInterval( int ); - } else { - this.connect(); - } - }, 1000 ); - }, - handleBackground() { - let colourDetails = []; - let colours = []; - let differentEnough = true; - if ( this.colourPalette[ 0 ] ) { - for ( let i in this.colourPalette ) { - for ( let colour in colourDetails ) { - const colourDiff = ( Math.abs( colourDetails[ colour ][ 0 ] - this.colourPalette[ i ][ 0 ] ) / 255 - + Math.abs( colourDetails[ colour ][ 1 ] - this.colourPalette[ i ][ 1 ] ) / 255 - + Math.abs( colourDetails[ colour ][ 2 ] - this.colourPalette[ i ][ 2 ] ) / 255 ) / 3 * 100; - if ( colourDiff > 15 ) { - differentEnough = true; - } - } - if ( differentEnough ) { - colourDetails.push( this.colourPalette[ i ] ); - colours.push( 'rgb(' + this.colourPalette[ i ][ 0 ] + ',' + this.colourPalette[ i ][ 1 ] + ',' + this.colourPalette[ i ][ 2 ] + ')' ); - } - differentEnough = false; - } - } - let outColours = 'conic-gradient('; - if ( colours.length < 3 ) { - for ( let i = 0; i < 3; i++ ) { - if ( colours[ i ] ) { - outColours += colours[ i ] + ','; - } else { - if ( i === 0 ) { - outColours += 'blue,'; - } else if ( i === 1 ) { - outColours += 'green,'; - } else if ( i === 2 ) { - outColours += 'red,'; - } - } - } - } else if ( colours.length < 11 ) { - for ( let i in colours ) { - outColours += colours[ i ] + ','; - } - } else { - for ( let i = 0; i < 10; i++ ) { - outColours += colours[ i ] + ','; - } - } - outColours += colours[ 0 ] ?? 'blue' + ')'; - - $( '#background' ).css( 'background', outColours ); - this.setVisualization(); - }, - setVisualization () { - if ( Object.keys( this.playingSong ).length > 0 ) { - if ( this.visualizationSettings === 'bpm' ) { - if ( this.playingSong.bpm && this.isPlaying ) { - $( '.beat' ).show(); - $( '.beat' ).css( 'animation-duration', 60 / this.playingSong.bpm ); - $( '.beat' ).css( 'animation-delay', this.pos % ( 60 / this.playingSong.bpm * this.pos ) + this.playingSong.bpmOffset - ( 60 / this.playingSong.bpm * this.pos / 2 ) ); - } else { - $( '.beat' ).hide(); - } - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - } else if ( this.visualizationSettings === 'off' ) { - $( '.beat' ).hide(); - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - } else if ( this.visualizationSettings === 'mic' ) { - $( '.beat-manual' ).hide(); - try { - clearInterval( this.micAnalyzer ); - } catch ( err ) {} - this.micAudioHandler(); - } - } else { - console.log( 'not playing yet' ); - } - }, - micAudioHandler () { - const audioContext = new ( window.AudioContext || window.webkitAudioContext )(); - const analyser = audioContext.createAnalyser(); - analyser.fftSize = 256; - const bufferLength = analyser.frequencyBinCount; - const dataArray = new Uint8Array( bufferLength ); - - navigator.mediaDevices.getUserMedia( { audio: true } ).then( ( stream ) => { - const mic = audioContext.createMediaStreamSource( stream ); - mic.connect( analyser ); - analyser.getByteFrequencyData( dataArray ); - let prevSpectrum = null; - let threshold = 10; // Adjust as needed - this.beatDetected = false; - this.micAnalyzer = setInterval( () => { - analyser.getByteFrequencyData( dataArray ); - // Convert the frequency data to a numeric array - const currentSpectrum = Array.from( dataArray ); - - if ( prevSpectrum ) { - // Calculate the spectral flux - const flux = this.calculateSpectralFlux( prevSpectrum, currentSpectrum ); - - if ( flux > threshold && !this.beatDetected ) { - // Beat detected - this.beatDetected = true; - this.animateBeat(); - } - } - prevSpectrum = currentSpectrum; - }, 20 ); - } ); - }, - animateBeat () { - $( '.beat-manual' ).stop(); - const duration = Math.ceil( 60 / ( this.playingSong.bpm ?? 180 ) * 500 ) - 50; - $( '.beat-manual' ).fadeIn( 50 ); - setTimeout( () => { - $( '.beat-manual' ).fadeOut( duration ); - setTimeout( () => { - $( '.beat-manual' ).stop(); - this.beatDetected = false; - }, duration ); - }, 50 ); - }, - calculateSpectralFlux( prevSpectrum, currentSpectrum ) { - let flux = 0; - - for ( let i = 0; i < prevSpectrum.length; i++ ) { - const diff = currentSpectrum[ i ] - prevSpectrum[ i ]; - flux += Math.max( 0, diff ); - } - - return flux; - }, - notifier() { - if ( parseInt( this.lastDispatch ) + 5000 < new Date().getTime() ) { - - } - Notification.requestPermission(); - - console.warn( '[ notifier ]: Status is now enabled \n\n-> Any leaving or tampering with the website will send a notification to the host' ); - // Detect if window is currently in focus - window.onblur = () => { - this.sendNotification( 'blur' ); - } - - // Detect if browser window becomes hidden (also with blur event) - document.onvisibilitychange = () => { - if ( document.visibilityState === 'hidden' ) { - this.sendNotification( 'visibility' ); - } - }; - }, - sendNotification( notification ) { - let fetchOptions = { - method: 'post', - body: JSON.stringify( { 'type': notification } ), - headers: { - 'Content-Type': 'application/json', - 'charset': 'utf-8' - }, - }; - fetch( '/clientStatusUpdate', fetchOptions ).catch( err => { - console.error( err ); - } ); - - new Notification( 'YOU ARE UNDER SURVEILLANCE', { - body: 'Please return to the original webpage immediately!', - requireInteraction: true, - } ) - } - }, - mounted() { - this.connect(); - this.notifier(); - // if ( this.visualizationSettings === 'mic' ) { - // this.micAudioHandler(); - // } - }, - watch: { - isPlaying( value ) { - if ( value ) { - this.startTimeTracker(); - } else { - this.stopTimeTracker(); - } - } - } -} ).mount( '#app' ); diff --git a/old/frontend/src/components/fancyView.vue b/old/frontend/src/components/fancyView.vue deleted file mode 100644 index 6256c6d..0000000 --- a/old/frontend/src/components/fancyView.vue +++ /dev/null @@ -1,162 +0,0 @@ - - - - - \ No newline at end of file diff --git a/old/frontend/src/components/mediaPool.vue b/old/frontend/src/components/mediaPool.vue deleted file mode 100644 index 6030e81..0000000 --- a/old/frontend/src/components/mediaPool.vue +++ /dev/null @@ -1,388 +0,0 @@ - - - - - \ No newline at end of file diff --git a/old/frontend/src/components/notifications.vue b/old/frontend/src/components/notifications.vue deleted file mode 100644 index 58dd47b..0000000 --- a/old/frontend/src/components/notifications.vue +++ /dev/null @@ -1,282 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/old/frontend/src/components/player.vue b/old/frontend/src/components/player.vue deleted file mode 100644 index 0db63e6..0000000 --- a/old/frontend/src/components/player.vue +++ /dev/null @@ -1,451 +0,0 @@ - - - - - \ No newline at end of file diff --git a/old/frontend/src/components/sliderView.vue b/old/frontend/src/components/sliderView.vue deleted file mode 100644 index 6616abc..0000000 --- a/old/frontend/src/components/sliderView.vue +++ /dev/null @@ -1,149 +0,0 @@ - - - - - \ No newline at end of file diff --git a/old/frontend/src/config/apple-music-api.config.json b/old/frontend/src/config/apple-music-api.config.json deleted file mode 100644 index ce385e8..0000000 --- a/old/frontend/src/config/apple-music-api.config.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "teamID": "", - "keyID": "", - "storefront": "us" -} \ No newline at end of file diff --git a/old/frontend/src/config/config.json b/old/frontend/src/config/config.json deleted file mode 100644 index 6d4cf6a..0000000 --- a/old/frontend/src/config/config.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "connectionURL": "http://localhost:3000", - "authKey": "gaöwovwef89voawö8p9 odövefw8öoaewpf89wec", - "doConnect": true -} \ No newline at end of file diff --git a/old/frontend/src/imageFetcher.js b/old/frontend/src/imageFetcher.js deleted file mode 100644 index 212893f..0000000 --- a/old/frontend/src/imageFetcher.js +++ /dev/null @@ -1,31 +0,0 @@ -/* -* MusicPlayerV2 - imageFetcher.js -* -* Created by Janis Hutz 10/23/2023, Licensed under the GPL V3 License -* https://janishutz.com, development@janishutz.com -* -* -*/ - -const MusicKit = require( 'node-musickit-api' ); -const fs = require( 'fs' ); -const path = require( 'path' ); - -// TODO: deploy non-secret version -const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/apple-music-api.config.secret.json' ) ) ); - -const music = new MusicKit( { - key: fs.readFileSync( path.join( __dirname + '/config/apple_private_key.p8' ) ).toString(), - teamId: settings.teamID, - keyId: settings.keyID -} ); - -module.exports.fetch = ( type, searchQuery, callback ) => { - music.search( settings.storefront, type, searchQuery, ( err, data ) => { - if ( err ) { - callback( err, null ); - return; - } - callback( null, data ); - } ); -} \ No newline at end of file diff --git a/old/frontend/src/indexer.js b/old/frontend/src/indexer.js deleted file mode 100644 index 39110af..0000000 --- a/old/frontend/src/indexer.js +++ /dev/null @@ -1,214 +0,0 @@ -/* -* MusicPlayerV2 - indexer.js -* -* Created by Janis Hutz 11/05/2023, Licensed under the GPL V3 License -* https://janishutz.com, development@janishutz.com -* -* -*/ - -const fs = require( 'fs' ); -const imageFetcher = require( './imageFetcher.js' ); -const musicMetadata = require( 'music-metadata' ); -const allowedFileTypes = [ '.mp3', '.wav', '.flac' ]; -const csv = require( 'csv-parser' ); -const path = require( 'path' ); - -let coverArtIndex = {}; - -module.exports.index = ( req ) => { - return new Promise( ( resolve, reject ) => { - fs.readdir( req.query.dir, { encoding: 'utf-8' }, ( err, dat ) => { - if ( err ) { - reject( 'ERR_DIR_NOT_FOUND' ); - return; - }; - ( async() => { - // Check for songlist.csv or songlist.json file and use the data provided there for each song to override - // what was found automatically. If no song title was found in songlist or metadata, use filename - // additionally check if dir has been indexed (songs.json file) - if ( dat.includes( 'songs.json' ) ) { - parseExistingData( dat, req.query.dir ).then( data => { - resolve( data ); - } ).catch( err => { - reject( err ); - } ); - } else if ( dat.includes( 'songlist.csv' ) || dat.includes( 'songlist.json' ) ) { - parseExistingData( dat, req.query.dir ).then( data => { - parseDir( dat, req, data ).then( indexedDir => { - resolve( indexedDir ); - } ); - } ); - } else { - resolve( await parseDir( dat, req ) ); - } - } )(); - } ); - } ); -} - -module.exports.getImages = ( filename ) => { - return coverArtIndex[ filename ]; -}; - -const parseExistingData = ( dat, dir ) => { - return new Promise( ( resolve, reject ) => { - if ( dat.includes( 'songs.json' ) ) { - resolve( JSON.parse( fs.readFileSync( path.join( dir + '/songs.json' ) ) ) ); - } else if ( dat.includes( 'songlist.csv' ) ) { - // This will assume that line #1 will be song #1 in the file list - // (when sorted by name) - let results = {}; - let pos = 0; - fs.createReadStream( path.join( dir + '/songlist.csv' ) ) - .pipe( csv() ) - .on( 'data', ( data ) => { - results[ dir + '/' + dat[ pos ] ] = data; - pos += 1; - } ).on( 'end', () => { - resolve( results ); - } ); - } else if ( dat.includes( 'songlist.json' ) ) { - resolve( JSON.parse( fs.readFileSync( path.join( dir + '/songlist.json' ) ) ) ); - } - } ); -} - -module.exports.analyzeFile = async ( filepath ) => { - let metadata = await musicMetadata.parseFile( filepath ); - return { - 'artist': metadata[ 'common' ][ 'artist' ], - 'title': metadata[ 'common' ][ 'title' ], - 'year': metadata[ 'common' ][ 'year' ], - 'bpm': metadata[ 'common' ][ 'bpm' ], - 'genre': metadata[ 'common' ][ 'genre' ], - 'duration': Math.round( metadata[ 'format' ][ 'duration' ] ), - 'isLossless': metadata[ 'format' ][ 'lossless' ], - 'sampleRate': metadata[ 'format' ][ 'sampleRate' ], - 'bitrate': metadata[ 'format' ][ 'bitrate' ], - 'numberOfChannels': metadata[ 'format' ][ 'numberOfChannels' ], - 'container': metadata[ 'format' ][ 'container' ], - 'filename': filepath, - } -} - -hasCompletedFetching = {}; -let files = {}; -const parseDir = ( dat, req, existingData ) => { - return new Promise( ( resolve, reject ) => { - ( async() => { - files = {}; - for ( let file in dat ) { - if ( allowedFileTypes.includes( dat[ file ].slice( dat[ file ].indexOf( '.' ), dat[ file ].length ) ) ) { - try { - let metadata = await musicMetadata.parseFile( req.query.dir + '/' + dat[ file ] ); - files[ req.query.dir + '/' + dat[ file ] ] = { - 'artist': metadata[ 'common' ][ 'artist' ], - 'title': metadata[ 'common' ][ 'title' ], - 'year': metadata[ 'common' ][ 'year' ], - 'bpm': metadata[ 'common' ][ 'bpm' ], - 'genre': metadata[ 'common' ][ 'genre' ], - 'duration': Math.round( metadata[ 'format' ][ 'duration' ] ), - 'isLossless': metadata[ 'format' ][ 'lossless' ], - 'sampleRate': metadata[ 'format' ][ 'sampleRate' ], - 'bitrate': metadata[ 'format' ][ 'bitrate' ], - 'numberOfChannels': metadata[ 'format' ][ 'numberOfChannels' ], - 'container': metadata[ 'format' ][ 'container' ], - 'filename': req.query.dir + '/' + dat[ file ], - 'coverArtOrigin': req.query.coverart ?? 'none', - } - runReplace( existingData, req.query.dir + '/' + dat[ file ], req.query.doOverride ?? false ); - if ( req.query.coverart == 'meta' ) { - if ( metadata[ 'common' ][ 'picture' ] ) { - files[ req.query.dir + '/' + dat[ file ] ][ 'hasCoverArt' ] = true; - coverArtIndex[ req.query.dir + '/' + dat[ file ] ] = metadata[ 'common' ][ 'picture' ] ? metadata[ 'common' ][ 'picture' ][ 0 ][ 'data' ] : undefined; - } else { - files[ req.query.dir + '/' + dat[ file ] ][ 'hasCoverArt' ] = false; - } - hasCompletedFetching[ req.query.dir + '/' + dat[ file ] ] = true; - } else if ( req.query.coverart == 'api' ) { - hasCompletedFetching[ req.query.dir + '/' + dat[ file ] ] = false; - fetchImages( metadata[ 'common' ][ 'title' ], metadata[ 'common' ][ 'artist' ], metadata[ 'common' ][ 'year' ], req.query.dir, dat[ file ] ); - } else { - files[ req.query.dir + '/' + dat[ file ] ][ 'hasCoverArt' ] = false; - } - } catch ( err ) { - console.error( err ); - files[ req.query.dir + '/' + dat[ file ] ] = 'ERROR'; - } - } - } - let ok = false; - let waiter = setInterval( () => { - for ( let song in hasCompletedFetching ) { - if ( !hasCompletedFetching[ song ] ) { - ok = false; - } - } - if ( ok ) { - saveToDisk( req.query.dir ); - clearInterval( waiter ); - resolve( files ); - } - ok = true; - }, 250 ); - } )(); - } ) -}; - -const runReplace = ( existingData, currentFile, doOverride ) => { - for ( let param in existingData[ currentFile ] ) { - if ( !files[ currentFile ][ param ] || doOverride ) { - files[ currentFile ][ param ] = existingData[ currentFile ][ param ]; - } - } -}; - -let imageQueue = []; -let runInterval = null; -const fetchImages = ( title, artist, year, dir, filename ) => { - imageQueue.push( { 'title': title, 'artist': artist, 'year': year, 'dir': dir, 'filename': filename } ); - if ( runInterval === null ) { - runInterval = setInterval( () => { - if ( imageQueue.length > 0 ) { - const cur = imageQueue.reverse().pop(); - imageQueue.reverse(); - runFetch( cur.title, cur.artist, cur.year, cur.dir, cur.filename ); - } else { - clearInterval( runInterval ); - runInterval = null; - } - }, 100 ); - } -}; - -const runFetch = ( title, artist, year, dir, filename ) => { - imageFetcher.fetch( 'songs', ( artist ?? '' ) + ' ' + ( title ?? '' ) + ' ' + ( year ?? '' ), ( err, data ) => { - if ( err ) { - files[ dir + '/' + filename ][ 'hasCoverArt' ] = false; - console.error( dir + '/' + filename ); - console.error( err ); - hasCompletedFetching[ dir + '/' + filename ] = true; - return; - } - if ( data.results.songs ) { - if ( data.results.songs.data ) { - let url = data.results.songs.data[ 0 ].attributes.artwork.url; - url = url.replace( '{w}', data.results.songs.data[ 0 ].attributes.artwork.width ); - url = url.replace( '{h}', data.results.songs.data[ 0 ].attributes.artwork.height ); - files[ dir + '/' + filename ][ 'coverArtURL' ] = url; - files[ dir + '/' + filename ][ 'hasCoverArt' ] = true; - } else { - files[ dir + '/' + filename ][ 'hasCoverArt' ] = false; - } - } else { - files[ dir + '/' + filename ][ 'hasCoverArt' ] = false; - } - hasCompletedFetching[ dir + '/' + filename ] = true; - } ); -} - - -const saveToDisk = ( dir ) => { - fs.writeFileSync( path.join( dir + '/songs.json' ), JSON.stringify( files ) ); -}; \ No newline at end of file diff --git a/old/frontend/src/main.js b/old/frontend/src/main.js deleted file mode 100644 index 3e79677..0000000 --- a/old/frontend/src/main.js +++ /dev/null @@ -1,5 +0,0 @@ -import { createApp } from 'vue' -import App from './App.vue' -import router from './router' - -createApp(App).use(router).mount('#app') diff --git a/old/frontend/src/router/index.js b/old/frontend/src/router/index.js deleted file mode 100644 index 22e540a..0000000 --- a/old/frontend/src/router/index.js +++ /dev/null @@ -1,17 +0,0 @@ -import { createRouter, createWebHistory } from 'vue-router' -import HomeView from '../views/HomeView.vue' - -const routes = [ - { - path: '/', - name: 'home', - component: HomeView - }, -] - -const router = createRouter({ - history: createWebHistory(process.env.BASE_URL), - routes -}) - -export default router diff --git a/old/frontend/src/views/HomeView.vue b/old/frontend/src/views/HomeView.vue deleted file mode 100644 index a943e83..0000000 --- a/old/frontend/src/views/HomeView.vue +++ /dev/null @@ -1,85 +0,0 @@ - - - - - diff --git a/old/frontend/vue.config.js b/old/frontend/vue.config.js deleted file mode 100644 index c130444..0000000 --- a/old/frontend/vue.config.js +++ /dev/null @@ -1,39 +0,0 @@ -const { defineConfig } = require('@vue/cli-service') -module.exports = defineConfig({ - transpileDependencies: true, - pluginOptions: { - electronBuilder: { - nodeIntegration: true, - "appId": "com.janishutz.MusicPlayerV2", - "copyright": "Copyright (c) 2023 MusicPlayer contributors", - "buildVersion": "V2.0.0-dev2", - builderOptions: { - files: [ - "**/*", - { - from: "./*", - to: "./*", - filter: [ "**/*" ] - }, - { - from: "./public/*", - to: "./*", - filter: [ "**/*" ] - } - ], - extraFiles: [ - { - from: "./src/client", - to: "./client", - filter: [ "**/*" ] - }, - { - from: "./src/config", - to: "./config", - filter: [ "*.config.json" ] - } - ] - } - } - } -}) diff --git a/package.sh b/package.sh deleted file mode 100755 index b095a55..0000000 --- a/package.sh +++ /dev/null @@ -1,7 +0,0 @@ -cd frontend/ -npm i - -npm run electron:build -- --linux deb rpm --win nsis - -cd .. -zip -9r musicplayerv2-server.zip backend \ No newline at end of file