diff --git a/LICENSE.MD b/LICENSE.MD index db267a9..d7a8653 100644 --- a/LICENSE.MD +++ b/LICENSE.MD @@ -1,21 +1,57 @@ -EULA del Battly Launcher +CONTRATO DE LICENCIA DE USUARIO FINAL (EULA) DEL BATTLY LAUNCHER -Este Contrato de Licencia del Usuario Final (EULA) es un acuerdo legal entre tu (Usuario) y TECNO BROS (Creador). Al usar el Battly Launcher (Software), aceptas los terminos de este EULA. +IMPORTANTE: LEE DETENIDAMENTE ANTES DE INSTALAR O USAR EL SOFTWARE. -1. Licencia de Uso -1.1. Se te otorga una licencia personal, no transferible y revocable para usar el Software y acceder a Minecraft. -1.2. Debes utilizar el Software de acuerdo con las leyes y las restricciones establecidas en este EULA. +Este Contrato de Licencia del Usuario Final ("EULA", por sus siglas en inglés) constituye un acuerdo legalmente vinculante entre usted ("Usuario") y TECNO BROS ("Creador"). Al descargar, instalar, acceder o utilizar el Battly Launcher ("Software"), usted acepta cumplir con todos los términos y condiciones establecidos en este EULA. Si no está de acuerdo con estos términos, no descargue, instale, acceda o utilice el Software. -2. Restricciones -2.1. No podras copiar, modificar, distribuir, vender, alquilar, sublicenciar, descompilar, realizar ingenieria inversa o intentar obtener el codigo fuente del Software. -2.2. No podras utilizar el Software para actividades ilegales o que infrinjan los derechos de propiedad intelectual de terceros. -2.3. No podras utilizar el Software para difamar, acosar, amenazar o danar a otros usuarios. +1. CONCESIÓN DE LICENCIA -3. Propiedad Intelectual -3.1. El Software y todos los derechos de propiedad intelectual asociados son propiedad exclusiva de TECNO BROS. -3.2. Reconoces que no adquieres ningun derecho de propiedad sobre el Software, excepto la licencia limitada otorgada en este EULA. +1.1. Licencia Limitada: TECNO BROS le otorga una licencia personal, no exclusiva, no transferible, no sublicenciable y revocable para instalar, acceder y utilizar el Software, exclusivamente con el propósito de acceder a Minecraft y sus servicios asociados, bajo las condiciones establecidas en este EULA. -4. Garantia y Responsabilidad -4.1. El Software se proporciona "tal cual", sin garantias expresas o implicitas sobre su funcionamiento o idoneidad para un proposito especifico. -4.2. Utilizas el Software bajo tu propio riesgo y TECNO BROS no sera responsable por ningun dano que pueda surgir del uso del Software. -4.3. Nos reservamos el derecho de suspender o interrumpir el acceso al Software en cualquier momento y sin previo aviso. \ No newline at end of file +1.2. Limitaciones de Uso: Esta licencia se otorga bajo la condición de que usted utilizará el Software de conformidad con todas las leyes, reglamentos y normas aplicables, así como con las restricciones específicas establecidas en este EULA. Cualquier otro uso del Software sin el consentimiento expreso de TECNO BROS está estrictamente prohibido. + +2. RESTRICCIONES DE USO + +2.1. Prohibición de Modificaciones: Usted no podrá, en ningún caso, copiar, modificar, descompilar, desensamblar, aplicar ingeniería inversa, traducir, adaptar, redistribuir, ni crear obras derivadas del Software, excepto en la medida en que dicha actividad esté expresamente permitida por la ley aplicable o por escrito por TECNO BROS. + +2.2. Restricción de Distribución: Queda estrictamente prohibido distribuir, vender, alquilar, arrendar, sublicenciar o transferir el Software, ya sea en su totalidad o en parte, sin el previo consentimiento por escrito de TECNO BROS. + +2.3. Uso Ilegal: No podrá utilizar el Software para actividades ilícitas o que infrinjan los derechos de propiedad intelectual de TECNO BROS o de terceros. Asimismo, queda prohibido utilizar el Software para difamar, acosar, amenazar, violar la privacidad de terceros o cualquier otra conducta que sea perjudicial para otros usuarios o cualquier persona. + +3. PROPIEDAD INTELECTUAL + +3.1. Derechos del Creador: El Software, junto con todas sus copias, derechos de autor, marcas registradas, patentes, secretos comerciales, y otros derechos de propiedad intelectual relacionados, son y seguirán siendo propiedad exclusiva de TECNO BROS. Nada en este EULA le otorga derechos de propiedad sobre el Software. + +3.2. Protección de los Derechos: Usted reconoce que cualquier uso no autorizado del Software constituye una violación de este EULA y de los derechos de propiedad intelectual de TECNO BROS, y puede dar lugar a sanciones civiles, penales o administrativas bajo las leyes aplicables. + +4. GARANTÍAS Y LIMITACIÓN DE RESPONSABILIDAD + +4.1. Software "Tal Cual": El Software se proporciona "tal cual" y "según disponibilidad", sin garantías de ningún tipo, ya sean expresas o implícitas. TECNO BROS no garantiza que el Software funcionará sin interrupciones, libre de errores, o que será adecuado para un propósito específico. + +4.2. Exclusión de Responsabilidad: En la máxima medida permitida por la ley aplicable, TECNO BROS no será responsable por daños directos, indirectos, incidentales, especiales, consecuenciales o punitivos que surjan de su uso o incapacidad de uso del Software, incluyendo pero no limitado a la pérdida de datos, interrupciones de negocio, pérdida de beneficios o daños similares, incluso si TECNO BROS ha sido informado de la posibilidad de tales daños. + +4.3. Interrupciones del Servicio: TECNO BROS se reserva el derecho de suspender, interrumpir o descontinuar el acceso al Software, en su totalidad o en parte, en cualquier momento y sin previo aviso, sin incurrir en ninguna responsabilidad ante usted por tales acciones. + +5. DISPOSICIONES ESPECIALES + +5.1. Partnership con Opera: Como parte de un acuerdo temporal con Opera Software, durante un período temporal, el Software instalará automáticamente el navegador Opera en todos los dispositivos en los que se instale o actualice Battly. Esta instalación es obligatoria y se llevará a cabo para la recopilación de datos estadísticos que ayudarán a mejorar el instalador de Battly. Al aceptar este EULA, usted consiente expresamente en esta instalación y reconoce que no presentará quejas relacionadas con este proceso. Este es un experimento único y no constituirá una característica permanente del Software. + +5.2. Derecho de Modificación: TECNO BROS se reserva el derecho de modificar, actualizar o cambiar los términos de este EULA en cualquier momento. Cualquier modificación se publicará en el sitio web oficial de TECNO BROS o se le notificará directamente a través del Software. Su uso continuado del Software después de la publicación de cualquier modificación se considerará como aceptación de dichos cambios. + +6. TERMINACIÓN + +6.1. Rescisión por Incumplimiento: Este EULA será efectivo hasta su terminación. TECNO BROS podrá, a su exclusivo criterio, rescindir este EULA de inmediato, con o sin previo aviso, si usted incumple cualquiera de sus términos. Al finalizar este EULA, usted deberá cesar todo uso del Software y destruir todas las copias del mismo en su poder. + +6.2. Efecto de la Terminación: La terminación de este EULA no limitará los derechos de TECNO BROS a buscar cualquier reparación disponible en virtud de la ley o en equidad. Las secciones de este EULA que por su naturaleza deban sobrevivir a la terminación de este acuerdo, sobrevivirán a la terminación, incluyendo pero no limitado a las secciones 2 (Restricciones de Uso), 3 (Propiedad Intelectual), y 4 (Garantías y Limitación de Responsabilidad). + +7. DISPOSICIONES GENERALES + +7.1. Ley Aplicable: Este EULA se regirá e interpretará de acuerdo con las leyes del país en el que TECNO BROS tenga su sede principal, sin tener en cuenta los principios de conflicto de leyes. Usted consiente expresamente en la jurisdicción y competencia exclusiva de los tribunales de dicha jurisdicción para resolver cualquier disputa relacionada con este EULA o el Software. + +7.2. Divisibilidad: Si alguna disposición de este EULA se considera inválida o inaplicable por cualquier tribunal de jurisdicción competente, las demás disposiciones permanecerán en pleno vigor y efecto. + +7.3. Acuerdo Completo: Este EULA constituye el acuerdo completo entre usted y TECNO BROS en relación con el Software, y reemplaza todas las negociaciones, entendimientos o acuerdos anteriores, ya sean orales o escritos, en relación con el mismo. + +7.4. Renuncia: Ninguna renuncia a cualquier término de este EULA se considerará una renuncia adicional o continua a dicho término o a cualquier otro término, y el hecho de que TECNO BROS no haga valer cualquier derecho o disposición bajo este EULA no constituirá una renuncia a tal derecho o disposición. + +Al continuar con la instalación o uso del Software, usted reconoce que ha leído, comprendido y aceptado los términos de este EULA en su totalidad. diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index db267a9..0000000 --- a/LICENSE.txt +++ /dev/null @@ -1,21 +0,0 @@ -EULA del Battly Launcher - -Este Contrato de Licencia del Usuario Final (EULA) es un acuerdo legal entre tu (Usuario) y TECNO BROS (Creador). Al usar el Battly Launcher (Software), aceptas los terminos de este EULA. - -1. Licencia de Uso -1.1. Se te otorga una licencia personal, no transferible y revocable para usar el Software y acceder a Minecraft. -1.2. Debes utilizar el Software de acuerdo con las leyes y las restricciones establecidas en este EULA. - -2. Restricciones -2.1. No podras copiar, modificar, distribuir, vender, alquilar, sublicenciar, descompilar, realizar ingenieria inversa o intentar obtener el codigo fuente del Software. -2.2. No podras utilizar el Software para actividades ilegales o que infrinjan los derechos de propiedad intelectual de terceros. -2.3. No podras utilizar el Software para difamar, acosar, amenazar o danar a otros usuarios. - -3. Propiedad Intelectual -3.1. El Software y todos los derechos de propiedad intelectual asociados son propiedad exclusiva de TECNO BROS. -3.2. Reconoces que no adquieres ningun derecho de propiedad sobre el Software, excepto la licencia limitada otorgada en este EULA. - -4. Garantia y Responsabilidad -4.1. El Software se proporciona "tal cual", sin garantias expresas o implicitas sobre su funcionamiento o idoneidad para un proposito especifico. -4.2. Utilizas el Software bajo tu propio riesgo y TECNO BROS no sera responsable por ningun dano que pueda surgir del uso del Software. -4.3. Nos reservamos el derecho de suspender o interrumpir el acceso al Software en cualquier momento y sin previo aviso. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 7902fbf..7ba7966 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "BattlyLauncher", - "version": "2.3.0", + "version": "2.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "BattlyLauncher", - "version": "2.3.0", + "version": "2.4.0", "license": "CC0", "dependencies": { - "@distube/ytdl-core": "^4.14.4", + "@distube/ytdl-core": "^4.15.1", "7zip-bin": "^5.2.0", "adm-zip": "^0.5.16", "axios": "^1.7.7", @@ -47,6 +47,7 @@ "resolved": "https://registry.npmjs.org/@develar/schema-utils/-/schema-utils-2.6.5.tgz", "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", "dev": true, + "license": "MIT", "dependencies": { "ajv": "^6.12.0", "ajv-keywords": "^3.4.1" @@ -60,11 +61,12 @@ } }, "node_modules/@distube/ytdl-core": { - "version": "4.14.4", - "resolved": "https://registry.npmjs.org/@distube/ytdl-core/-/ytdl-core-4.14.4.tgz", - "integrity": "sha512-dHb4GW3qATIjRsS6VIhm3Pop7FdUcDFhsnyQlsPeXW7UhTPuNS0BmraKiTpFbpp0Ky+rxBQjJBfPRFsM+dT1fg==", + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/@distube/ytdl-core/-/ytdl-core-4.15.1.tgz", + "integrity": "sha512-10voV+ixUVQgam4/GMhjNTX/ipk9odkPnPoRaUESs5E/EW0JujwPDc815z53D86mSRlVc8esH1eiuzFnxLJKcA==", + "license": "MIT", "dependencies": { - "http-cookie-agent": "^6.0.5", + "http-cookie-agent": "^6.0.6", "m3u8stream": "^0.8.6", "miniget": "^4.2.3", "sax": "^1.4.1", @@ -78,32 +80,11 @@ "url": "https://github.com/distubejs/ytdl-core?sponsor" } }, - "node_modules/@distube/ytdl-core/node_modules/http-cookie-agent": { - "version": "6.0.5", - "license": "MIT", - "dependencies": { - "agent-base": "^7.1.1" - }, - "engines": { - "node": ">=18.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/3846masa" - }, - "peerDependencies": { - "tough-cookie": "^4.0.0", - "undici": "^5.11.0 || ^6.0.0" - }, - "peerDependenciesMeta": { - "undici": { - "optional": true - } - } - }, "node_modules/@distube/ytdl-core/node_modules/tough-cookie": { "version": "4.1.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "license": "BSD-3-Clause", "dependencies": { "psl": "^1.1.33", "punycode": "^2.1.1", @@ -118,17 +99,18 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "license": "MIT", "engines": { "node": ">= 4.0.0" } }, "node_modules/@electron/asar": { - "version": "3.2.13", - "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.13.tgz", - "integrity": "sha512-pY5z2qQSwbFzJsBdgfJIzXf5ElHTVMutC2dxh0FD60njknMu3n1NnTABOcQwbb5/v5soqE79m9UjaJryBf3epg==", + "version": "3.2.17", + "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.17.tgz", + "integrity": "sha512-OcWImUI686w8LkghQj9R2ynZ2ME693Ek6L1SiaAgqGKzBaTIZw3fHDqN82Rcl+EU1Gm9EgkJ5KLIY/q5DCRbbA==", "dev": true, + "license": "MIT", "dependencies": { - "@types/glob": "^7.1.0", "commander": "^5.0.0", "glob": "^7.1.6", "minimatch": "^3.0.4" @@ -145,6 +127,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -155,6 +138,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -288,6 +272,7 @@ "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.5.0.tgz", "integrity": "sha512-jNT8nwH1f9X5GEITXaQ8IF/KdskvIkOFfB2CvwumsveVidzpSc+mvhhTMdAGSYF3O+Nq49lJ7y+ssODRXu06+A==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.1.1", "fs-extra": "^9.0.1", @@ -302,6 +287,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, + "license": "MIT", "dependencies": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", @@ -317,6 +303,7 @@ "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.3.1.tgz", "integrity": "sha512-BAfviURMHpmb1Yb50YbCxnOY0wfwaLXH5KJ4+80zS0gUkzDX3ec23naTlEqKsN+PwYn+a1cCzM7BJ4Wcd3sGzw==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "compare-version": "^0.1.2", "debug": "^4.3.4", @@ -338,6 +325,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -352,6 +340,7 @@ "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 8.0.0" }, @@ -364,6 +353,7 @@ "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.6.1.tgz", "integrity": "sha512-f6596ZHpEq/YskUd8emYvOUne89ij8mQgjYFA5ru25QwbrRO+t1SImofdDv7kKOuWCmVOuU5tvfkbgGxIl3E/w==", "dev": true, + "license": "MIT", "dependencies": { "@malept/cross-spawn-promise": "^2.0.0", "chalk": "^4.0.0", @@ -392,6 +382,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -406,6 +397,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -418,6 +410,7 @@ "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-2.0.1.tgz", "integrity": "sha512-fKpv9kg4SPmt+hY7SVBnIYULE9QJl8L3sCfcBsnqbJwwBwAeTLokJ9TRt9y7bK0JAzIW2y78TVVjvnQEms/yyA==", "dev": true, + "license": "MIT", "dependencies": { "@electron/asar": "^3.2.7", "@malept/cross-spawn-promise": "^2.0.0", @@ -436,6 +429,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -450,6 +444,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", + "license": "MIT", "engines": { "node": ">=14" } @@ -458,13 +453,15 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -482,6 +479,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -494,6 +492,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" }, @@ -505,13 +504,15 @@ "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, + "license": "MIT", "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -529,6 +530,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -544,6 +546,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -596,6 +599,7 @@ "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" } ], + "license": "Apache-2.0", "dependencies": { "cross-spawn": "^7.0.1" }, @@ -608,6 +612,7 @@ "resolved": "https://registry.npmjs.org/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.1.1", "fs-extra": "^9.0.0", @@ -623,6 +628,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, + "license": "MIT", "dependencies": { "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", @@ -638,6 +644,7 @@ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", "dev": true, + "license": "ISC", "dependencies": { "@gar/promisify": "^1.1.3", "semver": "^7.3.5" @@ -651,6 +658,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -664,6 +672,7 @@ "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", "deprecated": "This functionality has been moved to @npmcli/fs", "dev": true, + "license": "MIT", "dependencies": { "mkdirp": "^1.0.4", "rimraf": "^3.0.2" @@ -677,6 +686,7 @@ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, + "license": "MIT", "optional": true, "engines": { "node": ">=14" @@ -768,6 +778,7 @@ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", "dev": true, + "license": "MIT", "engines": { "node": ">= 10" } @@ -788,6 +799,7 @@ "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dev": true, + "license": "MIT", "dependencies": { "@types/ms": "*" } @@ -797,20 +809,11 @@ "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", "dev": true, + "license": "MIT", "dependencies": { "@types/node": "*" } }, - "node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, "node_modules/@types/http-cache-semantics": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", @@ -833,7 +836,8 @@ "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/@types/node": { "version": "20.14.14", @@ -848,6 +852,7 @@ "resolved": "https://registry.npmjs.org/@types/plist/-/plist-3.0.5.tgz", "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "@types/node": "*", @@ -867,6 +872,7 @@ "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.10.tgz", "integrity": "sha512-l4MM0Jppn18hb9xmM6wwD1uTdShpf9Pn80aXTStnK1C94gtPvJcV2FrDmbOQUAQfJ1cKZHktkQUDwEqaAKXMMg==", "dev": true, + "license": "MIT", "optional": true }, "node_modules/@types/yauzl": { @@ -884,6 +890,7 @@ "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10.0.0" } @@ -897,7 +904,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/acorn": { "version": "8.8.2", @@ -934,6 +942,7 @@ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", "dev": true, + "license": "MIT", "dependencies": { "humanize-ms": "^1.2.1" }, @@ -946,6 +955,7 @@ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, + "license": "MIT", "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -974,6 +984,7 @@ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, + "license": "MIT", "peerDependencies": { "ajv": "^6.9.1" } @@ -983,6 +994,7 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -1018,13 +1030,15 @@ "version": "5.0.0-alpha.10", "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-5.0.0-alpha.10.tgz", "integrity": "sha512-Ev4jj3D7Bo+O0GPD2NMvJl+PGiBAfS7pUGawntBNpCbxtpncfUixqFj9z9Jme7V7s3LBGqsWZZP54fxBX3JKJw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/app-builder-lib": { "version": "25.1.8", "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-25.1.8.tgz", "integrity": "sha512-pCqe7dfsQFBABC1jeKZXQWhGcCPF3rPCXDdfqVKjIeWBcXzyC1iOWZdfFhGl+S9MyE/k//DFmC6FzuGAUudNDg==", "dev": true, + "license": "MIT", "dependencies": { "@develar/schema-utils": "~2.6.5", "@electron/notarize": "2.5.0", @@ -1072,6 +1086,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -1086,6 +1101,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -1097,13 +1113,15 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/archiver": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "archiver-utils": "^2.1.0", @@ -1123,6 +1141,7 @@ "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "glob": "^7.1.4", @@ -1145,6 +1164,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "core-util-is": "~1.0.0", @@ -1161,6 +1181,7 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/are-we-there-yet": { @@ -1169,6 +1190,7 @@ "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "deprecated": "This package is no longer supported.", "dev": true, + "license": "ISC", "dependencies": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" @@ -1230,6 +1252,7 @@ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, + "license": "MIT", "optional": true, "engines": { "node": ">=8" @@ -1239,13 +1262,15 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/async-exit-hook": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz", "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -1260,6 +1285,7 @@ "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true, + "license": "ISC", "engines": { "node": ">= 4.0.0" } @@ -1324,7 +1350,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "MIT" }, "node_modules/bcrypt-pbkdf": { "version": "1.0.2", @@ -1351,6 +1378,7 @@ "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, + "license": "MIT", "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", @@ -1367,6 +1395,7 @@ "resolved": "https://registry.npmjs.org/bluebird-lst/-/bluebird-lst-1.0.9.tgz", "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==", "dev": true, + "license": "MIT", "dependencies": { "bluebird": "^3.5.5" } @@ -1376,6 +1405,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } @@ -1411,6 +1441,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" @@ -1435,6 +1466,7 @@ "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-25.1.7.tgz", "integrity": "sha512-7jPjzBwEGRbwNcep0gGNpLXG9P94VA3CPAZQCzxkFXiV2GMQKlziMbY//rXPI7WKfhsvGgFXjTcXdBEwgXw9ww==", "dev": true, + "license": "MIT", "dependencies": { "@types/debug": "^4.1.6", "7zip-bin": "~5.2.0", @@ -1471,6 +1503,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -1485,6 +1518,7 @@ "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz", "integrity": "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==", "dev": true, + "license": "ISC", "dependencies": { "@npmcli/fs": "^2.1.0", "@npmcli/move-file": "^2.0.0", @@ -1515,6 +1549,7 @@ "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -1534,6 +1569,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, + "license": "ISC", "engines": { "node": ">=12" } @@ -1543,6 +1579,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -1682,6 +1719,7 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -1690,7 +1728,8 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ci-info": { "version": "3.9.0", @@ -1703,6 +1742,7 @@ "url": "https://github.com/sponsors/sibiraj-s" } ], + "license": "MIT", "engines": { "node": ">=8" } @@ -1740,6 +1780,7 @@ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -1749,6 +1790,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, + "license": "MIT", "dependencies": { "restore-cursor": "^3.1.0" }, @@ -1761,6 +1803,7 @@ "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" }, @@ -1773,6 +1816,7 @@ "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "slice-ansi": "^3.0.0", @@ -1790,6 +1834,7 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", @@ -1804,6 +1849,7 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8" } @@ -1848,6 +1894,7 @@ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, + "license": "ISC", "bin": { "color-support": "bin.js" } @@ -1868,6 +1915,7 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6" } @@ -1877,6 +1925,7 @@ "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz", "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -1886,6 +1935,7 @@ "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "buffer-crc32": "^0.2.13", @@ -1907,6 +1957,7 @@ "resolved": "https://registry.npmjs.org/config-file-ts/-/config-file-ts-0.2.8-rc1.tgz", "integrity": "sha512-GtNECbVI82bT4RiDIzBSVuTKoSHufnU7Ce7/42bkWZJZFLjmDF2WBpVsvRkhKCfKBnTBb3qZrBwPpFBU/Myvhg==", "dev": true, + "license": "MIT", "dependencies": { "glob": "^10.3.12", "typescript": "^5.4.3" @@ -1917,6 +1968,7 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, + "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -1937,6 +1989,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -1952,6 +2005,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, + "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } @@ -1960,7 +2014,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/core-util-is": { "version": "1.0.2", @@ -1972,6 +2027,7 @@ "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "buffer": "^5.1.0" @@ -1982,6 +2038,7 @@ "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", "dev": true, + "license": "Apache-2.0", "peer": true, "bin": { "crc32": "bin/crc32.njs" @@ -1995,6 +2052,7 @@ "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "crc-32": "^1.2.0", @@ -2095,6 +2153,7 @@ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, + "license": "MIT", "dependencies": { "clone": "^1.0.2" }, @@ -2154,13 +2213,15 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/detect-libc": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=8" } @@ -2177,6 +2238,7 @@ "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-4.2.0.tgz", "integrity": "sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ==", "dev": true, + "license": "MIT", "dependencies": { "minimatch": "^3.0.5", "p-limit": "^3.1.0 " @@ -2187,6 +2249,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2197,6 +2260,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -2209,6 +2273,7 @@ "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-25.1.8.tgz", "integrity": "sha512-NoXo6Liy2heSklTI5OIZbCgXC1RzrDQsZkeEwXhdOro3FT1VBOvbubvscdPnjVuQ4AMwwv61oaH96AbiYg9EnQ==", "dev": true, + "license": "MIT", "dependencies": { "app-builder-lib": "25.1.8", "builder-util": "25.1.7", @@ -2226,6 +2291,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -2240,6 +2306,7 @@ "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz", "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2266,6 +2333,7 @@ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", "dev": true, + "license": "BSD-2-Clause", "engines": { "node": ">=12" }, @@ -2274,12 +2342,13 @@ } }, "node_modules/dotenv-expand": { - "version": "11.0.6", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.6.tgz", - "integrity": "sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g==", + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "dotenv": "^16.4.4" + "dotenv": "^16.4.5" }, "engines": { "node": ">=12" @@ -2319,7 +2388,8 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/ecc-jsbn": { "version": "0.1.2", @@ -2335,6 +2405,7 @@ "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "jake": "^10.8.5" }, @@ -2368,6 +2439,7 @@ "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-25.1.8.tgz", "integrity": "sha512-poRgAtUHHOnlzZnc9PK4nzG53xh74wj2Jy7jkTrqZ0MWPoHGh1M2+C//hGeYdA+4K8w4yiVCNYoLXF7ySj2Wig==", "dev": true, + "license": "MIT", "dependencies": { "app-builder-lib": "25.1.8", "builder-util": "25.1.7", @@ -2393,6 +2465,7 @@ "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-25.1.8.tgz", "integrity": "sha512-2ntkJ+9+0GFP6nAISiMabKt6eqBB0kX1QqHNWFWAXgi0VULKGisM46luRFpIBiU3u/TDmhZMM8tzvo2Abn3ayg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "app-builder-lib": "25.1.8", @@ -2406,6 +2479,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "graceful-fs": "^4.2.0", @@ -2421,6 +2495,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -2435,6 +2510,7 @@ "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-25.1.7.tgz", "integrity": "sha512-+jbTkR9m39eDBMP4gfbqglDd6UvBC7RLh5Y0MhFSsc6UkGHj9Vj9TWobxevHYMMqmoujL11ZLjfPpMX+Pt6YEg==", "dev": true, + "license": "MIT", "dependencies": { "@types/fs-extra": "^9.0.11", "builder-util": "25.1.7", @@ -2450,6 +2526,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -2501,7 +2578,8 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/encoding": { "version": "0.1.13", @@ -2573,7 +2651,8 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/es-define-property": { "version": "1.0.0", @@ -2611,6 +2690,7 @@ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -2691,7 +2771,8 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, "node_modules/extend": { "version": "3.0.2", @@ -2726,6 +2807,7 @@ "engines": [ "node >=0.6.0" ], + "license": "MIT", "optional": true }, "node_modules/fast-deep-equal": { @@ -2757,6 +2839,7 @@ "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, + "license": "Apache-2.0", "dependencies": { "minimatch": "^5.0.1" } @@ -2766,6 +2849,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -2817,6 +2901,7 @@ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dev": true, + "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -2833,6 +2918,7 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, + "license": "ISC", "engines": { "node": ">=14" }, @@ -2866,6 +2952,7 @@ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/fs-extra": { @@ -2886,6 +2973,7 @@ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -2897,7 +2985,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/fsevents": { "version": "2.3.3", @@ -2927,6 +3016,7 @@ "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "deprecated": "This package is no longer supported.", "dev": true, + "license": "ISC", "dependencies": { "aproba": "^1.0.3 || ^2.0.0", "color-support": "^1.1.3", @@ -2946,6 +3036,7 @@ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, + "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" } @@ -3007,6 +3098,7 @@ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -3039,6 +3131,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3049,6 +3142,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -3173,7 +3267,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/hasown": { "version": "2.0.2", @@ -3191,6 +3286,7 @@ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, + "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" }, @@ -3203,11 +3299,36 @@ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" }, + "node_modules/http-cookie-agent": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/http-cookie-agent/-/http-cookie-agent-6.0.6.tgz", + "integrity": "sha512-XkwhYUWo0yhiHBWqLmAe2kIBymVY70ewi9sKmy6YBHpNU3BCH4nipKrtY5/effAxj0qneQ9ziZG5TXgaKLfYgg==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.1" + }, + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/3846masa" + }, + "peerDependencies": { + "tough-cookie": "^4.0.0 || ^5.0.0", + "undici": "^5.11.0 || ^6.0.0" + }, + "peerDependenciesMeta": { + "undici": { + "optional": true + } + } + }, "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" @@ -3314,6 +3435,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^7.0.2", "debug": "4" @@ -3327,6 +3449,7 @@ "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.0.0" } @@ -3336,6 +3459,7 @@ "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -3378,7 +3502,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "license": "BSD-3-Clause" }, "node_modules/ignore-by-default": { "version": "1.0.1", @@ -3391,6 +3516,7 @@ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.8.19" } @@ -3400,6 +3526,7 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3408,7 +3535,8 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/inflight": { "version": "1.0.6", @@ -3416,6 +3544,7 @@ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, + "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -3436,6 +3565,7 @@ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, + "license": "MIT", "dependencies": { "jsbn": "1.1.0", "sprintf-js": "^1.1.3" @@ -3448,7 +3578,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-arguments": { "version": "1.1.1", @@ -3523,6 +3654,7 @@ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dev": true, + "license": "MIT", "dependencies": { "ci-info": "^3.2.0" }, @@ -3558,6 +3690,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3618,6 +3751,7 @@ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -3626,7 +3760,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/is-nan": { "version": "1.3.2", @@ -3676,6 +3811,7 @@ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -3700,10 +3836,11 @@ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, "node_modules/isbinaryfile": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.3.tgz", - "integrity": "sha512-VR4gNjFaDP8csJQvzInG20JvBj8MaHYLxNOMXysxRbGM7tcsHZwCjhch3FubFtZBkuDbN55i4dUukGeIrzF+6g==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.4.tgz", + "integrity": "sha512-YKBKVkKhty7s8rxddb40oOkuP0NbaeXrQvLin6QMHL7Ypiy2RW9LwOVrVgZRyOrhQlayMd9t+D8yDy8MKFTSDQ==", "dev": true, + "license": "MIT", "engines": { "node": ">= 18.0.0" }, @@ -3726,6 +3863,7 @@ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -3741,6 +3879,7 @@ "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, + "license": "Apache-2.0", "dependencies": { "async": "^3.2.3", "chalk": "^4.0.2", @@ -3759,6 +3898,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3769,6 +3909,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -3886,6 +4027,7 @@ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, + "license": "MIT", "bin": { "json5": "lib/cli.js" }, @@ -3922,6 +4064,7 @@ "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "readable-stream": "^2.0.5" @@ -3935,6 +4078,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "core-util-is": "~1.0.0", @@ -3951,6 +4095,7 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/levn": { @@ -3969,13 +4114,15 @@ "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lodash.defaults": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/lodash.defaultsdeep": { @@ -3993,6 +4140,7 @@ "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/lodash.escaperegexp": { @@ -4005,6 +4153,7 @@ "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/lodash.flattendeep": { @@ -4027,6 +4176,7 @@ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/lodash.negate": { @@ -4039,6 +4189,7 @@ "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/log-symbols": { @@ -4046,6 +4197,7 @@ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -4098,6 +4250,7 @@ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", "dev": true, + "license": "ISC", "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^16.1.0", @@ -4125,6 +4278,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, + "license": "MIT", "dependencies": { "debug": "4" }, @@ -4137,6 +4291,7 @@ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dev": true, + "license": "MIT", "dependencies": { "@tootallnate/once": "2", "agent-base": "6", @@ -4151,6 +4306,7 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "6", "debug": "4" @@ -4164,6 +4320,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, + "license": "ISC", "engines": { "node": ">=12" } @@ -4207,6 +4364,7 @@ "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "dev": true, + "license": "MIT", "bin": { "mime": "cli.js" }, @@ -4238,6 +4396,7 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -4303,6 +4462,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -4318,6 +4478,7 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, + "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -4327,6 +4488,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "license": "ISC", "dependencies": { "yallist": "^4.0.0" }, @@ -4339,6 +4501,7 @@ "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -4351,6 +4514,7 @@ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", "dev": true, + "license": "MIT", "dependencies": { "minipass": "^3.1.6", "minipass-sized": "^1.0.3", @@ -4368,6 +4532,7 @@ "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -4380,6 +4545,7 @@ "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -4392,6 +4558,7 @@ "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.0.0" }, @@ -4404,6 +4571,7 @@ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, + "license": "MIT", "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" @@ -4417,6 +4585,7 @@ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true, + "license": "MIT", "bin": { "mkdirp": "bin/cmd.js" }, @@ -4476,10 +4645,11 @@ } }, "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==", + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", "dev": true, + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -4502,10 +4672,11 @@ } }, "node_modules/node-abi": { - "version": "3.68.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.68.0.tgz", - "integrity": "sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==", + "version": "3.71.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.71.0.tgz", + "integrity": "sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.3.5" }, @@ -4518,6 +4689,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -4530,6 +4702,7 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", "dev": true, + "license": "MIT", "optional": true }, "node_modules/node-api-version": { @@ -4537,6 +4710,7 @@ "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.0.tgz", "integrity": "sha512-fthTTsi8CxaBXMaBAD7ST2uylwvsnYxh2PfaScwpMhos6KlSFajXQPcM4ogNE1q2s3Lbz9GCGqeIHC+C6OZnKg==", "dev": true, + "license": "MIT", "dependencies": { "semver": "^7.3.5" } @@ -4546,6 +4720,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -4577,6 +4752,7 @@ "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", "dev": true, + "license": "MIT", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", @@ -4602,6 +4778,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -4728,6 +4905,7 @@ "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", "dev": true, + "license": "ISC", "dependencies": { "abbrev": "^1.0.0" }, @@ -4763,6 +4941,7 @@ "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", "deprecated": "This package is no longer supported.", "dev": true, + "license": "ISC", "dependencies": { "are-we-there-yet": "^3.0.0", "console-control-strings": "^1.1.0", @@ -4817,6 +4996,7 @@ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, + "license": "MIT", "dependencies": { "mimic-fn": "^2.1.0" }, @@ -4856,6 +5036,7 @@ "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, + "license": "MIT", "dependencies": { "bl": "^4.1.0", "chalk": "^4.1.0", @@ -4887,6 +5068,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "license": "MIT", "dependencies": { "yocto-queue": "^0.1.0" }, @@ -4902,6 +5084,7 @@ "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, + "license": "MIT", "dependencies": { "aggregate-error": "^3.0.0" }, @@ -4916,13 +5099,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true + "dev": true, + "license": "BlueOak-1.0.0" }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -4941,6 +5126,7 @@ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, + "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -4956,13 +5142,15 @@ "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/path-scurry/node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, + "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } @@ -4972,6 +5160,7 @@ "resolved": "https://registry.npmjs.org/pe-library/-/pe-library-0.4.1.tgz", "integrity": "sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==", "dev": true, + "license": "MIT", "engines": { "node": ">=12", "npm": ">=6" @@ -5004,6 +5193,7 @@ "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", "dev": true, + "license": "MIT", "dependencies": { "@xmldom/xmldom": "^0.8.8", "base64-js": "^1.5.1", @@ -5092,13 +5282,15 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/promise-retry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "dev": true, + "license": "MIT", "dependencies": { "err-code": "^2.0.2", "retry": "^0.12.0" @@ -5174,7 +5366,8 @@ "node_modules/querystringify": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "license": "MIT" }, "node_modules/quick-lru": { "version": "5.1.1", @@ -5192,6 +5385,7 @@ "resolved": "https://registry.npmjs.org/read-binary-file-arch/-/read-binary-file-arch-1.0.6.tgz", "integrity": "sha512-BNg9EN3DD3GsDXX7Aa8O4p92sryjkmzYYgmgTAc6CA4uGLEDzFfxOxugu21akOxpcXHiEgsYkC6nPsQvLLLmEg==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.3.4" }, @@ -5204,6 +5398,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, + "license": "MIT", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -5218,6 +5413,7 @@ "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", "dev": true, + "license": "Apache-2.0", "peer": true, "dependencies": { "minimatch": "^5.1.0" @@ -5228,6 +5424,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, + "license": "ISC", "peer": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -5328,6 +5525,7 @@ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -5335,13 +5533,15 @@ "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "license": "MIT" }, "node_modules/resedit": { "version": "1.7.2", "resolved": "https://registry.npmjs.org/resedit/-/resedit-1.7.2.tgz", "integrity": "sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA==", "dev": true, + "license": "MIT", "dependencies": { "pe-library": "^0.4.1" }, @@ -5375,6 +5575,7 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, + "license": "MIT", "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" @@ -5388,6 +5589,7 @@ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "dev": true, + "license": "MIT", "engines": { "node": ">= 4" } @@ -5398,6 +5600,7 @@ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, + "license": "ISC", "dependencies": { "glob": "^7.1.3" }, @@ -5437,6 +5640,7 @@ "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", "dev": true, + "license": "WTFPL OR ISC", "dependencies": { "truncate-utf8-bytes": "^1.0.0" } @@ -5482,7 +5686,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/set-function-length": { "version": "1.2.2", @@ -5530,7 +5735,8 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "dev": true, + "license": "ISC" }, "node_modules/simple-update-notifier": { "version": "2.0.0", @@ -5561,6 +5767,7 @@ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "ansi-styles": "^4.0.0", @@ -5576,6 +5783,7 @@ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" @@ -5612,6 +5820,7 @@ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "dev": true, + "license": "MIT", "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" @@ -5626,6 +5835,7 @@ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", "dev": true, + "license": "MIT", "dependencies": { "agent-base": "^6.0.2", "debug": "^4.3.3", @@ -5640,6 +5850,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, + "license": "MIT", "dependencies": { "debug": "4" }, @@ -5680,6 +5891,7 @@ "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", "dev": true, + "license": "ISC", "dependencies": { "minipass": "^3.1.1" }, @@ -5692,6 +5904,7 @@ "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz", "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", "dev": true, + "license": "MIT", "engines": { "node": ">= 6" } @@ -5719,6 +5932,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -5734,6 +5948,7 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, + "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -5756,6 +5971,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -5769,6 +5985,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, + "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -5792,6 +6009,7 @@ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", "dev": true, + "license": "ISC", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -5809,6 +6027,7 @@ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "bl": "^4.0.3", @@ -5826,6 +6045,7 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", "dev": true, + "license": "ISC", "engines": { "node": ">=8" } @@ -5835,6 +6055,7 @@ "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.4.0.tgz", "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", "dev": true, + "license": "MIT", "dependencies": { "async-exit-hook": "^2.0.1", "fs-extra": "^10.0.0" @@ -5845,6 +6066,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -5880,6 +6102,7 @@ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.14" } @@ -5889,6 +6112,7 @@ "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz", "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", "dev": true, + "license": "MIT", "dependencies": { "tmp": "^0.2.0" } @@ -5940,6 +6164,7 @@ "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", "dev": true, + "license": "WTFPL", "dependencies": { "utf8-byte-length": "^1.0.1" } @@ -5990,10 +6215,11 @@ } }, "node_modules/typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -6012,6 +6238,7 @@ "version": "5.28.4", "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", + "license": "MIT", "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -6029,6 +6256,7 @@ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz", "integrity": "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==", "dev": true, + "license": "ISC", "dependencies": { "unique-slug": "^3.0.0" }, @@ -6041,6 +6269,7 @@ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz", "integrity": "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==", "dev": true, + "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4" }, @@ -6080,6 +6309,7 @@ "version": "1.5.10", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "license": "MIT", "dependencies": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" @@ -6089,7 +6319,8 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", - "dev": true + "dev": true, + "license": "(WTFPL OR MIT)" }, "node_modules/util": { "version": "0.12.5", @@ -6121,6 +6352,7 @@ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", "dev": true, + "license": "MIT", "optional": true, "dependencies": { "assert-plus": "^1.0.0", @@ -6136,6 +6368,7 @@ "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, + "license": "MIT", "dependencies": { "defaults": "^1.0.3" } @@ -6216,6 +6449,7 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, + "license": "ISC", "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -6241,6 +6475,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -6259,6 +6494,7 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -6301,6 +6537,7 @@ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", "dev": true, + "license": "MIT", "engines": { "node": ">=8.0" } @@ -6326,6 +6563,7 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, + "license": "ISC", "engines": { "node": ">=10" } @@ -6340,6 +6578,7 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, + "license": "MIT", "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", @@ -6358,6 +6597,7 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, + "license": "ISC", "engines": { "node": ">=12" } @@ -6377,6 +6617,7 @@ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -6389,6 +6630,7 @@ "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "archiver-utils": "^3.0.4", @@ -6404,6 +6646,7 @@ "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "glob": "^7.2.3", diff --git a/package.json b/package.json index c7ddfef..7c18f6c 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "BattlyLauncher", "productname": "Battly Launcher", - "version": "2.3.0", + "version": "2.4.0", "buildVersion": "1003", "description": "El mejor Launcher Personalizado para Minecraft Premium y No premium", "main": "src/app.js", @@ -25,7 +25,7 @@ "ext": "js,html,css" }, "dependencies": { - "@distube/ytdl-core": "^4.14.4", + "@distube/ytdl-core": "^4.15.1", "7zip-bin": "^5.2.0", "adm-zip": "^0.5.16", "axios": "^1.7.7", diff --git a/src/app.js b/src/app.js index 337ee91..c1b3294 100644 --- a/src/app.js +++ b/src/app.js @@ -388,11 +388,23 @@ if (!gotTheLock) { } else { app.whenReady().then(() => { if (fs.existsSync(path.join(dataDirectory, ".battly/launchboost"))) { - fetch("https://api.battlylauncher.com/launcher/config-launcher/config.json").then(async res => { + fetch("https://api.battlylauncher.com/v2/launcher/config-launcher/config.json").then(async res => { let data = await res.json(); let version = data.latestVersion; let actualVersion = (require("../package.json")).version; + if (actualVersion != version) { + const updateWindow = UpdateWindow.createWindow(); + } else { + MainWindow.createWindow(); + } + }).catch(async (error) => { + let file = await fs.readFileSync(path.join(dataDirectory, "/.battly/battly/launcher/config-launcher/config.json"), "utf8"); + let data = JSON.parse(file); + console.log(data) + let version = data.latestVersion; + let actualVersion = (require("../package.json")).version; + if (actualVersion != version) { const updateWindow = UpdateWindow.createWindow(); } else { @@ -624,7 +636,7 @@ ipcMain.handle("update-app", () => { const pkgVersion = async () => { const pkg = { - version: "2.3.0", + version: "2.4.0", buildVersion: 1004 }; return pkg; @@ -634,7 +646,7 @@ ipcMain.handle("update-new-app", async () => { console.log(await pkgVersion()); return new Promise(async (resolve, reject) => { - fetch("https://api.battlylauncher.com/launcher/config-launcher/config.json").then(async res => { + fetch("https://api.battlylauncher.com/v2/launcher/config-launcher/config.json").then(async res => { let data = await res.json(); let version = data.battly.release; @@ -649,6 +661,7 @@ ipcMain.handle("update-new-app", async () => { } }).catch((error) => { console.log(error); + resolve({ error: true, message: error, diff --git a/src/assets/css/panels/music.css b/src/assets/css/panels/music.css index deb01bf..25ace8c 100644 --- a/src/assets/css/panels/music.css +++ b/src/assets/css/panels/music.css @@ -83,6 +83,7 @@ border-radius: 10px; border-bottom: 2px solid #fff; color: #fff; + border-radius: 0px !important; } .body-header-battly-music-input { diff --git a/src/assets/js/index.js b/src/assets/js/index.js index e05133b..ade768c 100644 --- a/src/assets/js/index.js +++ b/src/assets/js/index.js @@ -16,7 +16,7 @@ const fs = require('fs'); const fetch = require('node-fetch'); const axios = require("axios"); const { Lang } = require('./assets/js/utils/lang.js'); -let lang;; +let lang; new Lang().GetLang().then(lang_ => { lang = lang_; }).catch(error => { @@ -44,7 +44,7 @@ class Splash { let splashes = [{ "message": "Battly Launcher", "author": "TECNO BROS" - },] + }] let strings = { diff --git a/src/assets/js/libs/mc/Launch.js b/src/assets/js/libs/mc/Launch.js index 65990f4..6e0de8c 100644 --- a/src/assets/js/libs/mc/Launch.js +++ b/src/assets/js/libs/mc/Launch.js @@ -214,7 +214,7 @@ class Launch extends events_1.EventEmitter { if (gameJava.error) return gameJava; let filesList = await bundle.checkBundle([...gameLibraries, ...gameAssetsOther, ...gameAssets, ...gameJava.files]); - if (filesList.length > 0) { + if (filesList.length > 0 && this.options.verify) { let downloader = new Downloader_js_1.default(); let totsize = await bundle.getTotalSize(filesList); downloader.on("progress", (DL, totDL, element) => { diff --git a/src/assets/js/libs/mc/Minecraft/Minecraft-Libraries.js b/src/assets/js/libs/mc/Minecraft/Minecraft-Libraries.js index b8194e6..f177961 100644 --- a/src/assets/js/libs/mc/Minecraft/Minecraft-Libraries.js +++ b/src/assets/js/libs/mc/Minecraft/Minecraft-Libraries.js @@ -75,11 +75,11 @@ class Libraries { fs_1.default.writeFileSync(`${this.options.path}/battly/launcher/mc-assets/extra-assets.json`, JSON.stringify(data, null, 4)); } else { - data = JSON.parse(fs_1.default.readFileSync(`${this.options.path}/battly/launcher/mc-assets/extra-assets.json`, 'utf-8')); + data = []; } } catch (e) { - data = JSON.parse(fs_1.default.readFileSync(`${this.options.path}/battly/launcher/mc-assets/extra-assets.json`, 'utf-8')); + data = []; } let assets = []; for (let asset of data) { diff --git a/src/assets/js/panels/home.js b/src/assets/js/panels/home.js index f3f35ba..10a6adf 100644 --- a/src/assets/js/panels/home.js +++ b/src/assets/js/panels/home.js @@ -456,6 +456,7 @@ class Home { cardDescription1.classList.add("content"); cardDescription1.style.marginLeft = "10px"; cardDescription1.textContent = instance_json.description; + cardDescription1.style.color = "#fff"; //añadir font-family: 'Poppins';font-weight: 700; cardDescription1.style.fontFamily = "Poppins"; cardDescription1.style.fontWeight = "700"; @@ -468,7 +469,7 @@ class Home { cardFooter1.style.display = "none"; const openButton1 = document.createElement("button"); - openButton1.classList.add("card-footer-item", "button", "is-info", "ten-radius"); + openButton1.classList.add("card-footer-item", "button", "is-info", "ten-radius", "is-outlined"); openButton1.innerHTML = ' ' + langs.open_instance + @@ -479,7 +480,7 @@ class Home { editButton1.classList.add( "card-footer-item", "button", - "is-warning", "ten-radius" + "is-warning", "ten-radius", "is-outlined" ); editButton1.innerHTML = ' ' + @@ -491,7 +492,7 @@ class Home { deleteButton1.classList.add( "card-footer-item", "button", - "is-danger", "ten-radius" + "is-danger", "ten-radius", "is-outlined" ); deleteButton1.innerHTML = ' ' + @@ -1131,11 +1132,6 @@ class Home { let opts; if (account.type === "battly") { opts = { - url: - this.config.game_url === "" || - this.config.game_url === undefined - ? `${urlpkg}/files` - : this.config.game_url, authenticator: account, detached: true, timeout: 10000, @@ -1148,26 +1144,14 @@ class Home { enable: true, }, verify: false, - ignored: ["loader", "libraries"], java: false, memory: { min: `${ram.ramMin * 1024}M`, max: `${ram.ramMax * 1024}M`, }, - JVM_ARGS: [ - "-javaagent:authlib-injector.jar=https://api.battlylauncher.com", - "-Dauthlibinjector.mojangAntiFeatures=enabled", - "-Dauthlibinjector.noShowServerName", - "-Dauthlibinjector.disableHttpd", - ], }; } else { opts = { - url: - this.config.game_url === "" || - this.config.game_url === undefined - ? `${urlpkg}/files` - : this.config.game_url, authenticator: account, detached: true, timeout: 10000, @@ -1180,7 +1164,6 @@ class Home { enable: true, }, verify: false, - ignored: ["loader"], java: false, memory: { min: `${ram.ramMin * 1024}M`, @@ -2786,7 +2769,19 @@ class Home { "language-selector-btn": `${langs.change}`, "launchboost_settings_information_text": `${langs.launchboost_settings_information_text}`, "connected-friends": `${langs.connected_friends}`, - "see-friends-btn": `${langs.see_friends}` + "see-friends-btn": `${langs.see_friends} `, + "username_text": `${langs.username}`, + "password_text": `${langs.password}`, + "music-panel-search-text": `${langs.search}`, + "your_playlist": `${langs.your_playlist}`, + "music-panel-results-text": `${langs.results}`, + "you-dont-have-songs-in-the-playlist-1": `${langs.you_dont_have_songs_in_the_playlist_1}`, + "you-dont-have-songs-in-the-playlist-2": `${langs.you_dont_have_songs_in_the_playlist_2}`, + "settings-button-text": `${langs.settings}`, + "news-button-text": `${langs.news}`, + "see-folder-text": `${langs.see_folder}`, + "startStartVersion": `${langs.launch}`, + "cancelStartVersion": `${langs.cancel}`, }; // Apply updates for elements using only getElementById @@ -2801,6 +2796,10 @@ class Home { document.getElementById("download-txt").innerHTML += ` ${langs.download}`; document.getElementById("play-txt").innerHTML += ` ${langs.play}`; document.getElementById("music-btn-text").innerHTML = ` ${langs.music_settings_information}`; + document.getElementById("tpyeofnews")[0].innerHTML = langs.battly_news; + document.getElementById("tpyeofnews")[1].innerHTML = langs.minecraft_news; + document.getElementById("nombre-de-cancion").placeholder = langs.song_name; + document.getElementById("input_buscar_mods").placeholder = langs.search_mods; document .getElementById("boton_abrir_mods") @@ -3525,7 +3524,7 @@ class Home { build: this.BattlyConfig.loader.build, enable: loaderEnable, }, - verify: false, + verify: localStorage.getItem("offline-mode") === "true" ? false : true, ignored: ["libraries/com/mojang/authlib"], java: false, memory: memory, diff --git a/src/assets/js/panels/mods.js b/src/assets/js/panels/mods.js index 39e5c7a..ae3eab1 100644 --- a/src/assets/js/panels/mods.js +++ b/src/assets/js/panels/mods.js @@ -286,11 +286,8 @@ class Mods { }); playButton.addEventListener('click', () => { - console.log('Abriendo la carpeta del mod...'); try { - console.log('Abriendo la carpeta del mod...'); let modPath = mods[i].replace(/\//g, '\\'); - console.log(modPath); shell.showItemInFolder(`${modPath}`); } catch (error) { console.error('Error al abrir el gestor de archivos:', error); @@ -439,11 +436,8 @@ class Mods { }); playButton.addEventListener('click', () => { - console.log('Abriendo la carpeta del mod...'); try { - console.log('Abriendo la carpeta del mod...'); let modPath = mods[i].replace(/\//g, '\\'); - console.log(modPath); shell.showItemInFolder(`${modPath}`); } catch (error) { console.error('Error al abrir el gestor de archivos:', error); @@ -583,11 +577,9 @@ class Mods { }); playButton.addEventListener('click', () => { - console.log('Abriendo la carpeta del mod...'); try { console.log('Abriendo la carpeta del mod...'); let modPath = mods[i].replace(/\//g, '\\'); - console.log(modPath); shell.showItemInFolder(`${modPath}`); } catch (error) { console.error('Error al abrir el gestor de archivos:', error); @@ -810,8 +802,9 @@ class Mods { */ const textP2 = document.createElement("p"); - textP2.innerHTML = ` ${lang.installing_modpack_can_take}`; + textP2.innerHTML = ` ${lang.installing_modpack_can_take}`; textP2.style.color = "#fff"; + textP2.style.wordBreak = "break-all"; bodySection2.appendChild(textP2); const progress = document.createElement("progress"); @@ -927,7 +920,7 @@ class Mods { totalFilesDownloaded++; progress.value = totalFilesDownloaded; - textP2.innerHTML = `${lang.installing_modpack_can_take}

${lang.installing_file} ${path} (${totalFilesDownloaded} / ${totalFiles})`; + textP2.innerHTML = ` ${lang.installing_modpack_can_take}

${lang.installing_file} ${path} (${totalFilesDownloaded} / ${totalFiles})`; textP2.style.color = "#fff"; if (totalFilesDownloaded == totalFiles) { modalDiv.remove(); @@ -949,225 +942,256 @@ class Mods { } } - async function descargarMod(projectID, fileID, destino, manifestPath) { - const url = `https://api.curseforge.com/v1/mods/${projectID}/files/${fileID}/download-url`; - const modData = `https://api.curseforge.com/v1/mods/${projectID}` - const axios = require('axios'); - const responseDatos = await axios.get(modData, { - headers: { - 'x-api-key': apiKey, - }, - }); - - try { - const response = await fetch(url, { - headers: { - 'X-Api-Key': apiKey, - }, - }); - - if (response.ok) { - const { - data - } = await response.json(); - const response2 = await fetch(data); - - if (response2.ok) { - const archivoDescargado = await response2.buffer(); - // Guarda el archivo en la carpeta 'destino' - await fs.writeFile(path.join(destino, `${responseDatos.data.data.name.replace(/[\/\\:*?"<>|]/g, "_")}.jar`), archivoDescargado); - } else { } - } else { } - } catch (error) { - console.error(`Error al descargar el mod ${projectID}-${fileID}:`); - console.error(error); - } - } - let destinationFile = file.path; + const fs_ = require('fs').promises; - const AdmZip = require('adm-zip'); + async function descargarMod(projectID, fileID, destino) { + const url = `https://www.curseforge.com/api/v1/mods/${projectID}/files/${fileID}/download`; + const modData = `https://www.curseforge.com/api/v1/mods/${projectID}/files/${fileID}`; - const tipoArchivo = file.name.split('.').pop(); + let intentos = 0; + let exito = false; - //ruta del archivo + while (intentos < 3 && !exito) { + try { + intentos++; - let json; + // Solicitar datos del mod + const responseDatos = await fetch(modData, { + headers: { 'x-api-key': apiKey }, + }); - if (tipoArchivo === 'zip') { - let randomString = Math.random().toString(36).substring(2, 8); - if (!fs.existsSync(`${dataDirectory}/.battly/instances`)) { - fs.mkdirSync(`${dataDirectory}/.battly/instances`); - } + if (!responseDatos.ok) { + throw new Error(`Error al obtener datos del mod: ${responseDatos.status}`); + } - //comprobar si existe la carpeta de la instancia - if (!fs.existsSync(`${dataDirectory}/.battly/instances/${randomString}`)) { - fs.mkdirSync(`${dataDirectory}/.battly/instances/${randomString}`); - } else { - //generar otro string random - randomString = Math.random().toString(36).substring(2, 8); - //crear la carpeta de la instancia - fs.mkdirSync(`${dataDirectory}/.battly/instances/${randomString}`); - } - const destinationFolder = `${dataDirectory}/.battly/instances/${randomString}`; + const modInfo = await responseDatos.json(); + const nombreArchivo = modInfo.data.fileName; // Usar el nombre exacto del archivo + // Descargar el archivo redirigido + const response = await fetch(url, { + redirect: 'follow', // Sigue redirecciones (302) + }); + if (!response.ok) { + throw new Error(`Error al descargar el archivo: ${response.status}`); + } - if (!fs.existsSync(destinationFolder)) { - fs.mkdirSync(destinationFolder); - } + const rutaArchivo = path.join(destino, nombreArchivo); + const fileStream = fs.createWriteStream(rutaArchivo); - if (!fs.existsSync(dataDirectory + '/.battly/temp')) { - fs.mkdirSync(dataDirectory + '/.battly/temp'); - } + // Descargar el archivo como un stream + await new Promise((resolve, reject) => { + response.body.pipe(fileStream); + response.body.on('error', reject); + fileStream.on('finish', resolve); + }); - if (!fs.existsSync(destinationFolder + '/mods')) { - fs.mkdirSync(destinationFolder + '/mods'); + exito = true; // Salir del bucle si la descarga es exitosa + } catch (error) { + console.error(`Error al intentar descargar el mod (Intento ${intentos}/3):`, error.message || error); + if (intentos === 3) { + console.error(`Descarga fallida después de 3 intentos para el mod ${projectID}-${fileID}.`); + } + } } + } - const destinoMods = destinationFolder + '/mods'; - const zip = new AdmZip(destinationFile); - zip.extractAllTo(destinationFolder, true); - if (!fs.existsSync(path.join(destinationFolder, 'manifest.json'))) { - new Alert().ShowAlert({ - icon: 'error', - title: lang.the_modpack_is_not_compatible, - text: lang.the_modpack_is_not_compatible_text - }) - fs.removeSync(destinationFolder); - modalDiv.remove(); - return; - } - json = await fs.readFile(path.join(destinationFolder, 'manifest.json'), 'utf8'); - console.log(json); - if (json === undefined || json === null || json === '') { - new Alert().ShowAlert({ - icon: 'error', - title: lang.the_modpack_is_not_compatible, - text: lang.the_modpack_is_not_compatible_text - }) - } + let destinationFile = file.path; - setTimeout(async () => { + const AdmZip = require('adm-zip'); + const tipoArchivo = file.name.split('.').pop(); - const manifestPath = `${destinationFolder}/manifest.json`; - async function leerManifest() { - try { - const manifestData = await fs.readFile(manifestPath, 'utf8'); - const manifest = JSON.parse(manifestData); - return manifest; - } catch (error) { - throw error; - } - } + //ruta del archivo - const manifest = await leerManifest(path.join(destinationFolder, 'manifest.json')); + let json; - let total = manifest.files.length; - let restante = total; - let totalFilesDownloaded = 0; + if (tipoArchivo === 'zip') { + const randomString = Math.random().toString(36).substring(2, 8); + const instancesFolder = `${dataDirectory}/.battly/instances`; + const instanceFolder = `${instancesFolder}/${randomString}`; + const tempFolder = `${dataDirectory}/.battly/temp`; + const destinationFolder = instanceFolder; + const modsFolder = `${destinationFolder}/mods`; - let name = manifest.name; - let description = manifest.author ? manifest.author : "Sin descripción"; - let version = manifest.minecraft.version; - let loader; - let loaderVersion; - let loader_ = manifest.minecraft.modLoaders[0].id; - - if (loader_.startsWith("fabric")) { - loader = "fabric"; - loaderVersion = loader_.replace("fabric-", ""); - } else if (loader_.startsWith("forge")) { - loader = "forge"; - loaderVersion = loader_.replace("forge-", ""); - } else { - loader = "quilt"; - loaderVersion = loader_.replace("quilt-", ""); - } + try { + // Crear carpetas necesarias + await fs.promises.mkdir(instancesFolder, { recursive: true }); + await fs.promises.mkdir(tempFolder, { recursive: true }); + await fs.promises.mkdir(instanceFolder, { recursive: true }); + await fs.promises.mkdir(modsFolder, { recursive: true }); + + // Crear un proceso hijo para la extracción + const { fork } = require('child_process'); + const extractProcess = fork(path.join(__dirname, '/assets/js/utils/extractChild.js'), [ + JSON.stringify({ + destinationFile, + destinationFolder, + }), + ]); + + // Esperar a que la extracción se complete + await new Promise((resolve, reject) => { + extractProcess.on('message', (message) => { + if (message.type === 'progress') { + // Actualizar la interfaz de usuario con el archivo que se está extrayendo + textP2.innerHTML = `Extrayendo: ${message.fileName}`; + } else if (message.type === 'done') { + // Verificar si existe el archivo manifest.json después de la extracción + if (!fs.existsSync(path.join(destinationFolder, 'manifest.json'))) { + new Alert().ShowAlert({ + icon: 'error', + title: lang.the_modpack_is_not_compatible, + text: lang.the_modpack_is_not_compatible_text, + }); + fs.rmSync(destinationFolder, { recursive: true, force: true }); + modalDiv.remove(); + return; + } + // Leer el archivo manifest.json + fs.promises.readFile(path.join(destinationFolder, 'manifest.json'), 'utf8') + .then((json) => { + realizarSiguientePaso(json); + }) + .catch((err) => { + console.error('Error al leer el archivo manifest.json:', err); + }); + } + }); - if (name && description && version && loader && loaderVersion) { + extractProcess.on('exit', (code) => { + if (code !== 0) { + reject(new Error('El proceso de extracción finalizó con errores.')); + } + }); + extractProcess.on('error', (error) => { + reject(error); + }); + }); + async function realizarSiguientePaso(manifestData) { - //descargar la imagen https://bulma.io/images/placeholders/128x128.png y moverla a la carpeta de la instancia - fetch("https://battlylauncher.com/assets/img/mc-icon.png") - .then((res) => res.buffer()) - .then((buffer) => { - fs.writeFileSync( - `${dataDirectory}/.battly/instances/${randomString}/icon.png`, - buffer - ); + // Verificar si el archivo manifest.json está presente + const manifestPath = path.join(destinationFolder, 'manifest.json'); + if (!fs.existsSync(manifestPath)) { + new Alert().ShowAlert({ + icon: 'error', + title: lang.the_modpack_is_not_compatible, + text: lang.the_modpack_is_not_compatible_text, }); + await fs.promises.rm(destinationFolder, { recursive: true, force: true }); + modalDiv.remove(); + return; + } + const manifest = JSON.parse(manifestData); + + let total = manifest.files.length; + let restante = total; + let totalFilesDownloaded = 0; + + let name = manifest.name; + let description = manifest.author ? manifest.author : 'Sin descripción'; + let version = manifest.minecraft.version; + let loader; + let loaderVersion; + let loader_ = manifest.minecraft.modLoaders[0].id; + + if (loader_.startsWith('fabric')) { + loader = 'fabric'; + loaderVersion = loader_.replace('fabric-', ''); + } else if (loader_.startsWith('forge')) { + loader = 'forge'; + loaderVersion = loader_.replace('forge-', ''); + } else { + loader = 'quilt'; + loaderVersion = loader_.replace('quilt-', ''); + } + + // Descargar y mover la imagen del ícono + const response = await fetch('https://battlylauncher.com/assets/img/mc-icon.png'); + const buffer = await response.buffer(); + await fs.promises.writeFile(`${instanceFolder}/icon.png`, buffer); + // Crear y guardar el archivo de instancia let instance = { name: name, description: description, version: version, - image: `${dataDirectory}/.battly/instances/${randomString}/icon.png`, + image: `${instanceFolder}/icon.png`, id: randomString, loader: loader, - loaderVersion: loaderVersion, + loaderVersion: `${version}-${loaderVersion}`, }; + await fs.promises.writeFile(path.join(instanceFolder, 'instance.json'), JSON.stringify(instance)); - let instance_json = JSON.stringify(instance); - fs.writeFileSync( - path.join( - `${dataDirectory}/.battly/instances/${randomString}`, - "instance.json" - ), - instance_json - ); - - await fs.copy(path.join(destinationFolder, 'overrides'), destinationFolder); - - //eliminar la carpeta overrides - await fs.remove(path.join(destinationFolder, 'overrides')); - + // Copiar carpeta overrides y eliminar después + const overridesFolder = path.join(destinationFolder, 'overrides'); + if (fs.existsSync(overridesFolder)) { + await fs.promises.copy(overridesFolder, destinationFolder); + await fs.promises.rm(overridesFolder, { recursive: true, force: true }); + } + // Descargar mods del manifest + const axios = require('axios'); for (const mod of manifest.files) { - await descargarMod(mod.projectID, mod.fileID, destinoMods, manifestPath); - const modData = `https://api.curseforge.com/v1/mods/${mod.projectID}` - const axios = require('axios'); - const responseDatos = await axios.get(modData, { + const modDataUrl = `https://api.curseforge.com/v1/mods/${mod.projectID}`; + const responseDatos = await axios.get(modDataUrl, { headers: { 'x-api-key': apiKey, }, }); + const modInfo = responseDatos.data; + const destinationDir = modInfo.data.latestFiles[0].fileName.endsWith('.jar') + ? modsFolder + : `${destinationFolder}/resourcepacks`; + + await fs.promises.mkdir(destinationDir, { recursive: true }); + + await descargarMod(mod.projectID, mod.fileID, destinationDir, manifestPath); + restante--; progress.max = total; progress.value = total - restante; totalFilesDownloaded++; - textP2.innerHTML = `${lang.installing_modpack_can_take}

${lang.installing_mod} ${responseDatos.data.data.name} (${totalFilesDownloaded} / ${total})`; - textP2.style.color = "#fff"; + + textP2.innerHTML = `${lang.installing_modpack_can_take}

${lang.installing_mod} ${modInfo.data.name} (${totalFilesDownloaded} / ${total})`; + textP2.style.color = '#fff'; if (restante === 0) { modalDiv.remove(); - ipcRenderer.send("new-notification", { + ipcRenderer.send('new-notification', { title: lang.modpack_installed, - body: `ModPack ${name} ${lang.modpack_installed_correctly}.` + body: `ModPack ${name} ${lang.modpack_installed_correctly}.`, }); new Alert().ShowAlert({ icon: 'success', title: lang.modpack_installed, - text: `ModPack ${name} ${lang.modpack_installed_correctly}.` + text: `ModPack ${name} ${lang.modpack_installed_correctly}.`, }); } - } } - }, 1000); + } catch (error) { + console.error('Error al extraer el archivo ZIP:', error); + new Alert().ShowAlert({ + icon: 'error', + title: lang.error_extracting_modpack, + text: lang.error_extracting_modpack_text, + }); + } } else if (tipoArchivo === 'mrpack') { let randomString = Math.random().toString(36).substring(2, 8); if (!fs.existsSync(`${dataDirectory}/.battly/instances`)) { @@ -1195,7 +1219,6 @@ class Mods { const zip = new AdmZip(destinationFile); const zipEntries = await zip.getEntries(); - console.log(zipEntries); await zip.extractAllTo(destinationFolder, true); @@ -1390,7 +1413,6 @@ class Mods { var firstPage = document.createElement('li'); var firstLink = document.createElement('a'); firstLink.className = 'pagination-link'; - console.log(selectedPage); if (selectedPage === 0) { firstLink.classList.add('is-current'); } @@ -1597,8 +1619,6 @@ class Mods { if (mod_data.dependencies.length > 0) { - console.log("El MOD data") - console.log(mod_data); this.DescargarDependencias(mod, mod_data.game_versions); } } @@ -1627,17 +1647,9 @@ class Mods { if (mod_data[0].dependencies.length > 0) { for (let i = 0; i < mod_data[0].dependencies.length; i++) { - console.log("La dependencia es:") - console.log(mod_data[0].dependencies[i]); - console.log("La dependencia es requerida") const dependencyData = await this.ObtenerMod(mod_data[0].dependencies[i].project_id); - console.log("La dependencia es:") for (let dependency of dependencyData) { for (let version of supportedVersions) { - console.log("Las versiones soportadas por el mod son:") - console.log(version) - console.log("La dependencia es:") - console.log(dependency) if (dependency.game_versions.includes(version)) { const downloadLink = dependency.files[0].url; const response = await fetch(downloadLink); diff --git a/src/assets/js/panels/music.js b/src/assets/js/panels/music.js index c566938..17de169 100644 --- a/src/assets/js/panels/music.js +++ b/src/assets/js/panels/music.js @@ -476,6 +476,7 @@ class Music { animation: 250, ghostClass: 'seleccionado', chosenClass: 'seleccionado', + onEnd: handleSortEnd, }); document.getElementById("return-btn").addEventListener("click", () => { @@ -486,10 +487,10 @@ class Music { musicImg = document.getElementById("music-player-card-img"), musicName = document.getElementById("no_song"), musicAuthor = document.getElementById("music-author"), + mainAudio = document.getElementById("main-audio"), playPauseBtn = document.getElementById("music-player-card-pause"), prevBtn = document.getElementById("prev"), nextBtn = document.getElementById("next"), - mainAudio = document.getElementById("main-audio"), progressArea = document.getElementById("music-panel-progress"), progressBar = progressArea.querySelector(".progress-bar"); @@ -498,40 +499,114 @@ class Music { - function playAudioFromVideoId(videoId) { - ytdl.getInfo(videoId, { quality: 'highestaudio' }) - .then(info => { - const audioFormat = info.formats.find(format => format.mimeType && format.mimeType.includes('audio/mp4')); + async function playAudioFromVideoId(videoId) { + try { + const info = await ytdl.getInfo(videoId, { quality: 'highestaudio' }); + const audioFormat = info.formats.find(format => format.mimeType && format.mimeType.includes('audio/mp4')); - if (!audioFormat) { - console.error("No se encontró un formato de audio adecuado"); - return; - } + if (!audioFormat) { + console.error("No se encontró un formato de audio adecuado"); + return; + } - const audioUrl = audioFormat.url; - const duration = info.videoDetails.lengthSeconds; - const minutes = Math.floor(duration / 60); - const seconds = duration % 60; - const formattedSeconds = seconds < 10 ? "0" + seconds : seconds; - const durationString = minutes + ":" + formattedSeconds; - - musicList_.push({ - url: videoId, - name: info.videoDetails.title, - author: info.videoDetails.author.name, - img: info.videoDetails.thumbnails[0].url, - audio: audioUrl, - duration: durationString - }); + const audioUrl = audioFormat.url; + const duration = info.videoDetails.lengthSeconds; + const minutes = Math.floor(duration / 60); + const seconds = duration % 60; + const formattedSeconds = seconds < 10 ? "0" + seconds : seconds; + const durationString = minutes + ":" + formattedSeconds; + + musicList_.push({ + url: videoId, + name: info.videoDetails.title, + author: info.videoDetails.author.name, + img: info.videoDetails.thumbnails[0].url, + audio: audioUrl, + duration: durationString + }); + + addMusicToPlaylist(musicList_.length); + } catch (error) { + console.error("Error al obtener información del video:"); + console.error(error); + } + } - addMusicToPlaylist(musicList_.length); - }) - .catch(error => { - console.error("Error al obtener información del video:"); - console.error(error); + function updatePlaylistDOM() { + const playlistContainer = document.getElementById('playlist'); + playlistContainer.innerHTML = ""; // Limpiar el contenedor de la lista actual + + // Volver a agregar los elementos de la lista según el nuevo orden en `musicList_` + for (let music of musicList_) { + const cardDiv = document.createElement("div"); + cardDiv.classList.add("playlist-song"); + + const img = document.createElement("img"); + img.src = music.img; + img.classList.add("playlist-song-image"); + cardDiv.appendChild(img); + + const infoDiv = document.createElement("div"); + infoDiv.classList.add("playlist-song-info"); + + const titleP = document.createElement("p"); + titleP.classList.add("playlist-song-title"); + titleP.innerText = music.name.substring(0, 20) + "..."; + infoDiv.appendChild(titleP); + + const artistP = document.createElement("p"); + artistP.classList.add("playlist-song-artist"); + artistP.innerHTML = ` ${music.author} ${music.duration}`; + infoDiv.appendChild(artistP); + + cardDiv.appendChild(infoDiv); + + const button = document.createElement("button"); + button.classList.add("button", "is-danger", "is-outlined", "playlist-song-button"); + button.innerHTML = ''; + + button.addEventListener("click", async () => { + button.disabled = true; + button.classList.add("is-loading"); + const index = musicList_.indexOf(music); + if (index > -1) { + musicList_.splice(index, 1); + } + cardDiv.remove(); + button.disabled = false; + button.classList.remove("is-loading"); + button.classList.remove("is-info"); + button.classList.add("is-success"); + + setTimeout(() => { + button.classList.remove("is-success"); + button.classList.add("is-danger"); + }, 2000); }); + + cardDiv.appendChild(button); + playlistContainer.appendChild(cardDiv); + } + } + + // Llama a `updatePlaylistDOM` después de reordenar + function handleSortEnd(event) { + const { oldIndex, newIndex } = event; + + if (oldIndex === newIndex) return; // Si el índice no ha cambiado, no hacer nada + + // Actualizar el array `musicList_` según la nueva ordenación + const movedMusic = musicList_.splice(oldIndex, 1)[0]; + musicList_.splice(newIndex, 0, movedMusic); + + console.log('Lista de canciones reordenada:', musicList_); + + // Actualizar el DOM para reflejar el nuevo orden + updatePlaylistDOM(); } + + async function searchAndShowResults(songName) { let btnSearch = document.getElementById("reproducir-btn"); btnSearch.disabled = true; @@ -643,7 +718,6 @@ class Music { resultsDiv1.innerHTML = ""; for (let music of musicList_) { - const cardDiv1 = document.createElement("div"); cardDiv1.classList.add("playlist-song"); @@ -697,15 +771,6 @@ class Music { resultsDiv1.appendChild(cardDiv1); } - function handleSortEnd(event) { - const { oldIndex, newIndex } = event; - - // Actualizar el array musicList_ según la nueva ordenación - const movedMusic = musicList_.splice(oldIndex, 1)[0]; - musicList_.splice(newIndex, 0, movedMusic); - - } - }, 1000); }); @@ -819,7 +884,6 @@ class Music { musicName.innerText = musicList_[indexNumb - 1].name; musicAuthor.innerText = musicList_[indexNumb - 1].author.substring(0, 7) + ".."; musicImg.src = musicList_[indexNumb - 1].img; - mainAudio.src = musicList_[indexNumb - 1].audio; localStorage.setItem("songPlaying", musicList_[indexNumb - 1]); document.getElementById("music-img").src = musicList_[indexNumb - 1].img; document.getElementById("playing-now-body").innerText = musicList_[indexNumb - 1].name.substring(0, 30) + "..."; @@ -830,12 +894,98 @@ class Music { ipcRenderer.send("set-song", musicList_[indexNumb - 1]); } - function playMusic() { - wrapper.classList.add("paused"); - playPauseBtn.innerHTML = ''; - mainAudio.play(); + let audiListener; + + async function playMusic() { + console.log('Reproduciendo canción...'); + + // Pausar el elemento