From 0ced11929bb274783e2810d1caedd4de1c591345 Mon Sep 17 00:00:00 2001 From: Robo Date: Fri, 23 Jan 2026 11:21:39 +0900 Subject: [PATCH] feat: add dmg for macOS (#289179) * feat: add dmg for macOS arm64 * chore: create dmg for all archs * chore: move zx dependency to build * fix: invalid condition in universal build * chore: update background * fix: publishing universal dmg --- build/azure-pipelines/common/publish.ts | 12 +- build/azure-pipelines/darwin/codesign.ts | 20 +- .../darwin/product-build-darwin-universal.yml | 42 +- .../darwin/product-build-darwin.yml | 7 + .../steps/product-build-darwin-compile.yml | 12 + build/darwin/create-dmg.ts | 150 + build/darwin/dmg-background-insider.tiff | Bin 0 -> 614770 bytes build/darwin/dmg-background-stable.tiff | Bin 0 -> 614770 bytes build/filters.ts | 3 + build/package-lock.json | 3134 ++++++++++++++++- build/package.json | 4 +- package-lock.json | 16 +- package.json | 3 +- 13 files changed, 3340 insertions(+), 63 deletions(-) create mode 100644 build/darwin/create-dmg.ts create mode 100644 build/darwin/dmg-background-insider.tiff create mode 100644 build/darwin/dmg-background-stable.tiff diff --git a/build/azure-pipelines/common/publish.ts b/build/azure-pipelines/common/publish.ts index 5761c0d06df..12f9ef4ffa8 100644 --- a/build/azure-pipelines/common/publish.ts +++ b/build/azure-pipelines/common/publish.ts @@ -782,10 +782,16 @@ function getPlatform(product: string, os: string, arch: string, type: string): s case 'darwin': switch (product) { case 'client': - if (arch === 'x64') { - return 'darwin'; + switch (type) { + case 'dmg': + return `darwin-${arch}-dmg`; + case 'archive': + default: + if (arch === 'x64') { + return 'darwin'; + } + return `darwin-${arch}`; } - return `darwin-${arch}`; case 'server': if (arch === 'x64') { return 'server-darwin'; diff --git a/build/azure-pipelines/darwin/codesign.ts b/build/azure-pipelines/darwin/codesign.ts index 848fb0f4647..263f96cd2ff 100644 --- a/build/azure-pipelines/darwin/codesign.ts +++ b/build/azure-pipelines/darwin/codesign.ts @@ -12,17 +12,25 @@ async function main() { const pipelineWorkspace = e('PIPELINE_WORKSPACE'); const folder = `${pipelineWorkspace}/vscode_client_darwin_${arch}_archive`; + const dmgFolder = `${pipelineWorkspace}/vscode_client_darwin_${arch}_dmg`; const glob = `VSCode-darwin-${arch}.zip`; + const dmgGlob = `VSCode-darwin-${arch}.dmg`; // Codesign - printBanner('Codesign'); - const codeSignTask = spawnCodesignProcess(esrpCliDLLPath, 'sign-darwin', folder, glob); - await streamProcessOutputAndCheckResult('Codesign', codeSignTask); + const archiveCodeSignTask = spawnCodesignProcess(esrpCliDLLPath, 'sign-darwin', folder, glob); + const dmgCodeSignTask = spawnCodesignProcess(esrpCliDLLPath, 'sign-darwin', dmgFolder, dmgGlob); + printBanner('Codesign Archive'); + await streamProcessOutputAndCheckResult('Codesign Archive', archiveCodeSignTask); + printBanner('Codesign DMG'); + await streamProcessOutputAndCheckResult('Codesign DMG', dmgCodeSignTask); // Notarize - printBanner('Notarize'); - const notarizeTask = spawnCodesignProcess(esrpCliDLLPath, 'notarize-darwin', folder, glob); - await streamProcessOutputAndCheckResult('Notarize', notarizeTask); + const archiveNotarizeTask = spawnCodesignProcess(esrpCliDLLPath, 'notarize-darwin', folder, glob); + const dmgNotarizeTask = spawnCodesignProcess(esrpCliDLLPath, 'notarize-darwin', dmgFolder, dmgGlob); + printBanner('Notarize Archive'); + await streamProcessOutputAndCheckResult('Notarize Archive', archiveNotarizeTask); + printBanner('Notarize DMG'); + await streamProcessOutputAndCheckResult('Notarize DMG', dmgNotarizeTask); } main().then(() => { diff --git a/build/azure-pipelines/darwin/product-build-darwin-universal.yml b/build/azure-pipelines/darwin/product-build-darwin-universal.yml index 81bff1ae5f6..215df6f65ea 100644 --- a/build/azure-pipelines/darwin/product-build-darwin-universal.yml +++ b/build/azure-pipelines/darwin/product-build-darwin-universal.yml @@ -14,6 +14,13 @@ jobs: sbomBuildDropPath: $(Build.ArtifactStagingDirectory)/VSCode-darwin-$(VSCODE_ARCH) sbomPackageName: "VS Code macOS $(VSCODE_ARCH)" sbomPackageVersion: $(Build.SourceVersion) + - output: pipelineArtifact + targetPath: $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg/VSCode-darwin-$(VSCODE_ARCH).dmg + artifactName: vscode_client_darwin_$(VSCODE_ARCH)_dmg + displayName: Publish client DMG + sbomBuildDropPath: $(Build.ArtifactStagingDirectory)/VSCode-darwin-$(VSCODE_ARCH) + sbomPackageName: "VS Code macOS $(VSCODE_ARCH)" + sbomPackageVersion: $(Build.SourceVersion) steps: - template: ../common/checkout.yml@self @@ -112,8 +119,16 @@ jobs: - script: | set -e - mkdir -p $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive - pushd $(agent.builddirectory)/VSCode-darwin-$(VSCODE_ARCH) && zip -r -X -y $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip * && popd + DMG_OUT="$(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_dmg" + mkdir -p $DMG_OUT + node build/darwin/create-dmg.ts $(agent.builddirectory) $DMG_OUT + echo "##vso[task.setvariable variable=DMG_PATH]$DMG_OUT/VSCode-darwin-$(VSCODE_ARCH).dmg" + displayName: Create DMG installer + + - script: | + set -e + mkdir -p $(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_archive + pushd $(agent.builddirectory)/VSCode-darwin-$(VSCODE_ARCH) && zip -r -X -y $(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip * && popd displayName: Archive build - task: UseDotNet@2 @@ -132,17 +147,21 @@ jobs: Pattern: noop displayName: 'Install ESRP Tooling' - - script: node build/azure-pipelines/common/sign.ts $(Agent.RootDirectory)/_tasks/EsrpCodeSigning_*/*/net6.0/esrpcli.dll sign-darwin $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive VSCode-darwin-$(VSCODE_ARCH).zip - env: - SYSTEM_ACCESSTOKEN: $(System.AccessToken) - displayName: ✍️ Codesign + - pwsh: | + . build/azure-pipelines/win32/exec.ps1 + $ErrorActionPreference = "Stop" + $EsrpCodeSigningTool = (gci -directory -filter EsrpCodeSigning_* $(Agent.RootDirectory)/_tasks | Select-Object -last 1).FullName + $Version = (gci -directory $EsrpCodeSigningTool | Select-Object -last 1).FullName + echo "##vso[task.setvariable variable=EsrpCliDllPath]$Version/net6.0/esrpcli.dll" + displayName: Find ESRP CLI - - script: node build/azure-pipelines/common/sign.ts $(Agent.RootDirectory)/_tasks/EsrpCodeSigning_*/*/net6.0/esrpcli.dll notarize-darwin $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive VSCode-darwin-$(VSCODE_ARCH).zip + - script: node build/azure-pipelines/darwin/codesign.ts env: + EsrpCliDllPath: $(EsrpCliDllPath) SYSTEM_ACCESSTOKEN: $(System.AccessToken) - displayName: ✍️ Notarize + displayName: ✍️ Codesign & Notarize - - script: unzip $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip -d $(Build.ArtifactStagingDirectory)/VSCode-darwin-$(VSCODE_ARCH) + - script: unzip $(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip -d $(Build.ArtifactStagingDirectory)/VSCode-darwin-$(VSCODE_ARCH) displayName: Extract signed app - script: | @@ -157,5 +176,8 @@ jobs: - script: | set -e mkdir -p $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_archive - mv $(Pipeline.Workspace)/unsigned_vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip + mv $(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip + + mkdir -p $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg + mv $(DMG_PATH) $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg/VSCode-darwin-$(VSCODE_ARCH).dmg displayName: Move artifact to out directory diff --git a/build/azure-pipelines/darwin/product-build-darwin.yml b/build/azure-pipelines/darwin/product-build-darwin.yml index 770a54f7925..37282e92146 100644 --- a/build/azure-pipelines/darwin/product-build-darwin.yml +++ b/build/azure-pipelines/darwin/product-build-darwin.yml @@ -69,6 +69,13 @@ jobs: sbomBuildDropPath: $(Agent.BuildDirectory)/vscode-server-darwin-$(VSCODE_ARCH)-web sbomPackageName: "VS Code macOS $(VSCODE_ARCH) Web" sbomPackageVersion: $(Build.SourceVersion) + - output: pipelineArtifact + targetPath: $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg/VSCode-darwin-$(VSCODE_ARCH).dmg + artifactName: vscode_client_darwin_$(VSCODE_ARCH)_dmg + displayName: Publish client DMG + sbomBuildDropPath: $(Build.ArtifactStagingDirectory)/VSCode-darwin-$(VSCODE_ARCH) + sbomPackageName: "VS Code macOS $(VSCODE_ARCH)" + sbomPackageVersion: $(Build.SourceVersion) steps: - template: ./steps/product-build-darwin-compile.yml@self parameters: diff --git a/build/azure-pipelines/darwin/steps/product-build-darwin-compile.yml b/build/azure-pipelines/darwin/steps/product-build-darwin-compile.yml index 1d38413bde4..5bd2665e8f7 100644 --- a/build/azure-pipelines/darwin/steps/product-build-darwin-compile.yml +++ b/build/azure-pipelines/darwin/steps/product-build-darwin-compile.yml @@ -224,6 +224,15 @@ steps: DEBUG=electron-osx-sign* node build/darwin/sign.ts $(agent.builddirectory) displayName: Set Hardened Entitlements + - script: | + set -e + DMG_OUT="$(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_dmg" + mkdir -p $DMG_OUT + node build/darwin/create-dmg.ts $(agent.builddirectory) $DMG_OUT + echo "##vso[task.setvariable variable=DMG_PATH]$DMG_OUT/VSCode-darwin-$(VSCODE_ARCH).dmg" + condition: eq(variables['BUILT_CLIENT'], 'true') + displayName: Create DMG installer + - script: | set -e ARCHIVE_PATH="$(Pipeline.Workspace)/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip" @@ -298,6 +307,9 @@ steps: mv $(CLIENT_PATH) $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_archive/VSCode-darwin-$(VSCODE_ARCH).zip fi + mkdir -p $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg + mv $(DMG_PATH) $(Build.ArtifactStagingDirectory)/out/vscode_client_darwin_$(VSCODE_ARCH)_dmg/VSCode-darwin-$(VSCODE_ARCH).dmg + mkdir -p $(Build.ArtifactStagingDirectory)/out/vscode_server_darwin_$(VSCODE_ARCH)_archive mv $(SERVER_PATH) $(Build.ArtifactStagingDirectory)/out/vscode_server_darwin_$(VSCODE_ARCH)_archive/vscode-server-darwin-$(VSCODE_ARCH).zip diff --git a/build/darwin/create-dmg.ts b/build/darwin/create-dmg.ts new file mode 100644 index 00000000000..63a9d4d403b --- /dev/null +++ b/build/darwin/create-dmg.ts @@ -0,0 +1,150 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import fs from 'fs'; +import path from 'path'; +import { spawn } from '@malept/cross-spawn-promise'; + +const root = path.dirname(path.dirname(import.meta.dirname)); +const product = JSON.parse(fs.readFileSync(path.join(root, 'product.json'), 'utf8')); + +interface DmgBuildSettings { + title: string; + icon?: string | null; + background?: string; + 'background-color'?: string; + 'icon-size'?: number; + 'text-size'?: number; + format?: string; + window?: { + position?: { x: number; y: number }; + size?: { width: number; height: number }; + }; + contents: Array<{ + path: string; + x: number; + y: number; + type: 'file' | 'link'; + name?: string; + }>; +} + +function getDmgBuilderPath(): string { + return path.join(import.meta.dirname, '..', 'node_modules', 'dmg-builder'); +} + +function getDmgBuilderVendorPath(): string { + return path.join(getDmgBuilderPath(), 'vendor'); +} + +async function runDmgBuild(settingsFile: string, volumeName: string, artifactPath: string): Promise { + const vendorDir = getDmgBuilderVendorPath(); + const scriptPath = path.join(vendorDir, 'run_dmgbuild.py'); + await spawn('python3', [scriptPath, '-s', settingsFile, volumeName, artifactPath], { + cwd: vendorDir, + stdio: 'inherit' + }); +} + +async function main(buildDir?: string, outDir?: string): Promise { + const arch = process.env['VSCODE_ARCH']; + const quality = process.env['VSCODE_QUALITY']; + + if (!buildDir) { + throw new Error('Build directory argument is required'); + } + + if (!arch) { + throw new Error('$VSCODE_ARCH not set'); + } + + if (!outDir) { + throw new Error('Output directory argument is required'); + } + + const appRoot = path.join(buildDir, `VSCode-darwin-${arch}`); + const appName = product.nameLong + '.app'; + const appPath = path.join(appRoot, appName); + const dmgName = `VSCode-darwin-${arch}`; + const artifactPath = path.join(outDir, `${dmgName}.dmg`); + const backgroundPath = path.join(import.meta.dirname, `dmg-background-${quality}.tiff`); + const appIconPath = path.join(appPath, 'Contents', 'Resources', `${product.nameShort}.icns`); + let title = 'Code OSS'; + switch (quality) { + case 'stable': + title = 'VS Code'; + break; + case 'insider': + title = 'VS Code Insiders'; + break; + case 'exploration': + title = 'VS Code Exploration'; + break; + } + + if (!fs.existsSync(appPath)) { + throw new Error(`App path does not exist: ${appPath}`); + } + + console.log(`Creating DMG for ${product.nameLong}...`); + console.log(` App path: ${appPath}`); + console.log(` Output directory: ${outDir}`); + console.log(` DMG name: ${dmgName}`); + + if (fs.existsSync(artifactPath)) { + fs.unlinkSync(artifactPath); + } + + const settings: DmgBuildSettings = { + title, + icon: appIconPath, + background: backgroundPath, + format: 'ULMO', + 'text-size': 12, + window: { + position: { x: 100, y: 400 }, + size: { width: 480, height: 320 } + }, + contents: [ + { + path: appPath, + x: 120, + y: 160, + type: 'file' + }, + { + path: '/Applications', + x: 360, + y: 160, + type: 'link' + } + ] + }; + + const settingsFile = path.join(outDir, '.dmg-settings.json'); + fs.writeFileSync(settingsFile, JSON.stringify(settings, null, 2)); + + try { + await runDmgBuild(settingsFile, dmgName, artifactPath); + } finally { + if (fs.existsSync(settingsFile)) { + fs.unlinkSync(settingsFile); + } + } + + if (!fs.existsSync(artifactPath)) { + throw new Error(`DMG was not created at expected path: ${artifactPath}`); + } + + const stats = fs.statSync(artifactPath); + console.log(`Successfully created DMG: ${artifactPath} (${(stats.size / 1024 / 1024).toFixed(2)} MB)`); +} + +if (import.meta.main) { + main(process.argv[2], process.argv[3]).catch(err => { + console.error('Failed to create DMG:', err); + process.exit(1); + }); +} diff --git a/build/darwin/dmg-background-insider.tiff b/build/darwin/dmg-background-insider.tiff new file mode 100644 index 0000000000000000000000000000000000000000..7899b5fbcc862334d1a3be2a36cc56fc082434b0 GIT binary patch literal 614770 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

k&&Yy<)8U7CbWBA>X%D>g-&2RIK*KanD)*Mdq zS3LvrI?PSw^}H>=FMCI6-!NY}r#F=5^H*xqo_Wcwd&p}}_9)*Qd%;i5)RJtBp{A^vIx%lSvl>ouXNdzmi!*YfughozY-%MO3z8aTvY*B|V1 z7<%}!2{uVy#qx0uu6gX|tgoG)qp{D6eNXPwyajWyaeeL9+#R8PxAFEkx_1ogBqq=oYDeHGlm+;KlY#4r?29 zjK7~Z+{JdWJyv)1?BeXML3ZSxCfC2O_5 zm8{iy*bdId->upgww|SreeKTLKGn0Fr**YPKA!f~rL{vB>vfFf4=$MF8bHiz>J4xy4an+Vcx-jO}>l4>R_#bVT-=#VAEbQSLRn5*l?P2 zf^Ayv5B9}MlfgN9m^R$D>;#v=Po|coOT8_Vsky1kKvEgbqgN-k^WL^^a0^Tw&(-eojniwor_UTX= znl`j=so%z4$=OTZ{GFk{RsP*vQ%t6<_?u*JC;rN7Ixo+AVQgye!S&n(eXq7E*YS7S zo%J}|x~#|b9_3N&J&Vtm>_r;mFS*N9o*R7~#O%+w_w;=%$0zcZbu4on4f}whftPKu zKWAv*D|;92Ugro$_#4u}AqImdk~6t^KZp5_hlrn;x;Vh(=M8^-Ta3NnDD>@$t+MXQ zS>N~e{mqiIHt*W>hw*pXoljtQ&S&q`zQ@(Rlf7{}b&9|I{Um#lZ^>VBm+6ha7$<`o z*s>Q4*8GJpm@&{yC37z}X@|vO4ZM}XmN#iO`*`NoSr*f8yo%krGMW4RDcRm8mCTiY zubX#ytJfZD!CyYJMbi!ZOT&H{UeZG^u>#bw2So<-xvF??%(UO7BOp@x4OKQzftCzYv!_l1AB2@>T9*6 z>>h7fsM$E8+>5um-#Y&0YhO7ZsCVASv9s3o;H~a6%3Y)3^g2~r%K7|V+k7_u*KuSuT@Y2A6P{+{Ty}J7kSHH ztAR%{7)-Hqlc@JzH@a`lT_2b8nYU&kxxA&1@UaVHm-ivtJpWd*G&d!0b*j&ANjb@0 zJjdZ$s@zI+uCFaV_Xz9-`?W^xRSq*&&+nDxeE#;lT6n}B<b6P#R&tlT z_A#}l?xm@HBkNBdkG&Yzb_He=p?<{^GhUje(~2 zWva(Bj(r?k^_YutlEH?(f5EMi!KFUo8=DPN)_htxoU4hYPL45Fw)5v*ZJxu{R2%)b z`Pk~KBX5`V`i?4dZhYrAr;gW0G(7}=r`>&9Et4tcq0My<}d)MFD`fPoC)pag!p>;X$Ye{K;$YHIoO_aME?atP2O#5+dx-WaD-MO6C zdVD)`S&!X4%1QP@{|?u_0mg;cC+dB?Y+W~+zw-Ha@jF=tYyFEd>~)t7(^ukKgg-(~r!eS7k~2XA$sN&cRQz2IVN*82J*f4T2czS*Bk z^>5k+E$>OqU%wyt%3p9em%$h2Li>`x3xj?9jm2lV{$R^spFNry*|$%#__DTil80-q zYV8~6E{?Bftnb(~XRoYP`ZmN{$zGg?6l?W_2t*vcCjDp=M>4+P@b`HGSz%dm80A}h~0V7 z$oukFYt&w4d2i?EGub=v{R%xE3(s`AYukd`$o1ch=`mUr!EyJw9N4 zUxpcM$E+Iue$lWP+hTuas_f9PNef$a8HX32Fj*T*L)`V%-`=~F(5^l{_NiOm6{Q&~ z%OS??MPdzH!-NT3GH2@>Ru9%Xad3od-YhyeD+ccPxgj6JlU&lhb_xJbgu3*se5OC7%U{G~E%DG8i^*7|sF!7#_vv7V!G&5l#w4&<^D(z9c`Nhr8!` zu+qX{i)NAJjo!B|m+9g-XMJ4X#@_Y!UHir5-|Ne}ti`*Tjh)}Km2lSA_8jb;cIP;k zGub=s&Xc{_cISGZFPNt}xMx{2_!VP|md`qx!J5BId0}rZe|;JlOfF%tVk>_cpRUKZ4I! zv%ZwSILH2LGnc`*Czt!xH%|D*EUAMzZidEMsefgDt%cJZ26sYClJ#W_TzE{rO8v_^ zf11zK-0vg*2IO7NhIK8qu4HQ{A3RT6`FrJfsQ*+wucPg$|GCk39rvj7-9xSGc)ymX z`TXVk4|=Emu`4vD9lO2@8+yrY5l zW0=1fJAC657;Nj8n3vEPE4eH4F$QZrtXZU46)WfR&({w9w%~8<`*EN9H->d>j?j$3EX>oK`U`NmkXR;MRo zuhyMMDr*L(Y|vyb&$+#p1%nMQ;ec&EYT0VH>36uFm^8Z1pf$eA_&_ zko+o1eXNyrC4JSkweM`CehsBQCWh+B)llm4&Bok?`a^w^zf=2O?uQUBTh`aHw}8K9 zOeY_Er*@n=wysTmPma4i(^2ewgmpGjtWWXRr-AjkU#=O;-*qgsxzASqps)_U@RsZ~ zDaMpFgX20FOwjC=#%A@%Eh(2G<<97VTbEReQWp2_%2QTbh z^Ea-8|MJRTq?gUhU~oCCgHsG9kHKQ*-Bf5{$ztR^JVsqEUqi>+`nXM4Gc{EXF)vgv zxf;vIm<#@ryK*cKe o>w6X)SI6J8cPh_Uem>3ITU^%EzJXYpus-j>THWVl@Aw$$ z3xluga4bGxHx62AV40Wa&OSp*23z)mzu62Xb3LilR5rg&3%ktqvDmybK=W6Z13V5f z*>cv$@^S2qvDLTF^48BB%?01s?c?uAyEFbS`*)P){eQQ;7W?kkzi+Ry@4Th!GWk2% zTg+aJuX4QYk8h+3VvP>iGASrY@txTnRBij@L3CK!499 zdpGhf5LxjF(=_?E6;w6eomFNgiwJl%iz zIQ@6=_i)oVA9BWYJyuKBGXE8Gp1xwV53Uc%-z0md_BGeB^`qyUk1cKVxy&nPvUh6V zs%HYmeMuc>l`8xByZC`$HDe~W)p;>>zU#op;ET-(_n&9GaM<*< ztb=29ujcTIz0}JY3@->)pRE&e+oNJvJtjw@5F%1#_{P z^UJM>zv{f{zcW>Ke+R$rMIY&Q>EE!Y{@udV++$SuXZMi$ z#@E($zH!~D8_r*$2c&m>fE0TRq-SvEJgp!SWmBj>%{j9((P+7;iZaUd9b`FO$E$wJ(0#)Va>vpSrI4 z?k_o4TiWKF=XIL^Yc-1pv3J^?{hBDmY=^Vv9IeWeypi_sBB!`#>kYmUh~t()Ks1RTWiPR_4sNTEB9HQyVx}J zIcAy6{i?Z-xn=Wrfc8!EH+CKM-&cDcOOKQ1Hb0-qUc=%My7!*gi~EP;Xs>j|TJxE! zy2;<6`~{E6;ID}}NofsC_A*T{SlyGj-u(AyC4-@pJsf5o)AabeW_1aV>0oP495Mqfy08u zv2iNS$~A{&dmoeK{&l|XxE}kv?0D(dvU?{-}CUd?Kyf# z_NwRX@cmuST=scp-pcQOyMN@p)Hr`U_SVN-X&dfcm9rQe;;-efyuMO--cRc^&S1uC z`TWDqzN;>dF^l`w+>CRW?f=r~H*T!6Y5BO0?}PE1-%F;NpQUBX+be4WW2QcDzH#Dq zUkBI=+e()9-4OR|f9Je&h4y}5art>FWo)dyJjcEArPs>R9=aFLavA#9^W3(+uP1xu zz2&>FTGrj}QFCs*`M|wfv*t$GIvaHiz9-&(-HeZ`zb9aaUi`t9y?zZ02FGpD^4gR6 z@O@g&Ve(g|7fuJ579Q{N#&ojRpZYl({>*s$+%eR0R_NMH*2?pOJkKf8)jjOozt*2Y zzeW~+EA7uU?DZdW|Ln!}mV52E?J~G~Wpnr*-p*Xvx4u5lT9)@!ul(wM)%UP-|1LhG z{_I_k6C5vM>55f8ex0Ze{9Q44rGXg}jdaalaM-m&TL!}i_!Vqw3=iEe@*Z2~4M!4o zY02AI{-&9WdF*4O)xK-~`r6mkxntromb#2ha~8j8=(pGP91o)RuQ|7|`vv+;#_&S_}NTR9f!>-5ZJ-ebMe=)DULPxh|$=OBKQy-b~F3onBg{^m2- zaM+yR+m^{--cRzLbMs*iU)}>@7+u5Z8hxA|zZOo`YY$hm-2Ai9vE0n>>i#~q%-=F6 z^^F1k`}cYsnCsNXUgtVW@wZa<`t8SYTSfSoG#_JjmI@)_Fr?zfh8{(D#1uTH{WJ*J$!Oy=s;`MW9@>}X*#_I~xU2?m45%{UCs7(QJ$ z$zGjjo0>GFmECd5<>azYj$PP~GTX_0k-Yh>a&$$_c%#pQF3bCOnHO%KzchE9>&BdO zSq|#o4eSlGG|u3o*`BxXwB%TO-SPU%Nh8a4kzqkE^-Pk9dr}*LsxY{p-!2 zguNJROZ{DXX-kR&+R%gy<>Ym{BgtP~L{Tw|Pd!d_47+Tx5j=g+d%wX^!?Ys3JIMVUC z_hW54-p9do7xt!oRrv5#oUK<*X86S9^b&b7amdwi{8rXL~_NdFb{?E{+^d7BgZ|`emZ#LuOW#2CRU7p*0j1AR= z#+$R&d&fz`OJDu+HyZYSr;x!>{*uLU4&$23xtDOCr`px>SZinUS=YPeHr$QNNTQFB{;`!2d&49OG|L(V+UK3ku{!Z$8&&#=yy-eR-NHF3!sPUvebcCDjr zY=3B<%gmUbb@zS6=w!XwzU+7LJ^$mous-y?Sg(JB(z3k=!>r9_F8CXGM!Q@q9_B{* zJGJi+yEE+7UHL1nXI|I6Qr;J5PfPFP()RYg7rZs+=~llBd#BwwI(~Y`)^8h4ylf7C zFIsrfM4G*1E;!4)Onv;db!k0}Yf;{RzH3wNugP1My4*#*=B`_Izgx{`%VT_ho3HM6 zU*Xv&V_Tgwa}4WzI+xF4PI|Q~Yn>~Zi~Q@?&C$PyU@!c{``Mmr{kWyab!9JN?+5W$ z-WO-i`|jV?b#^=u%-x;8ejZ3R`0{79G5fx^Gk$t`D{au0ye8K_l>fhEf*Xm_k zm&f7U>vr7z3O;XRuqGc($yc39&g%Rd=6Gy3{!Z&65--sK$6F)^49t}CN2VdCi#>2|rEc830KE>c= zzpIIFYqm(c$~B*JoyOYu*c@xWUiWL^XiYs?8cQWdbMx|C==}QHFtJnSd|tKye>G=i znaq`G3;s^+o3DL)+nx2?xL$T>-@SOoy7>4}#@J9_LFRId9LnB0e=j+q$EY)x*W+tM z@0f9yoK2-GEu3I5enbAgp){ApH~z|Nir1M)L)U6aJ+A9;`*PNTts$M8%hOQ1lIxV$ z#f`OOE>p7ClqFw%dC6Lv|IX8!-(9u~f2a1H+SlAmxvV}TXG7mPJbuK+mi&E_y^WJTg)>(24 zm-*5$?da|ExeHBf$L3b~)bAsI`&gbl&S{gp)^e`bWE-#-*L@oXYtE*Ax72>kT75n> zdtV20xf$J?uW`f7C3}%#t;j7~8~*MW?>uUqt9yyL0=v(~+0ggx&EI3OciNpfHg{*Q z8K*J-rZR_f?Gd zSN5jXJ_4J4tZ?hnzajpf+TW^_!?mB|Kh85>+At4sYs-dZ=d=-LOhMtOV;ZAP3KDPe#g!alI+}?m%5kvn%FBccYC@Yf5F8O+tj|t@%!%1 z-f4HP)@yMFq#5nwRk$u+cinh#)xMIgMfn2lhudM}**^U&#cx9P-hQ8q zzc0qnl6{)7q4L6Bqi?}mZpJUWm9wGa$y}N4$KU^1C`tWGhDELz&Ryv_YvbI(J(zlz@~z+wJPxoL>0p?a%x$MIHjSTa}U zOZmH9^X~h8g;DIi7rQh3#vwoInd*D9H)(esu6^rcQFF)UGqj8IL$j-bCj~xV$=KYy zW^s&9mdE%z^xxLHT=82Kus6if+FU*1?cm9Fdp2)%nTaK6dD-eUHWM-u%56 z?Ry5MmVC!D4plH^tKC^?-zb+2zheCL?bH0u{XJeY{Elzs-^KU+a(NnRw_+^0du1)x zos#JY=JGQ%Z*{qZziqVdzWR5B&-Y%m@0s*%?7L3(=4;^+wjI4~E^C%{2WPM0v|M}X z!s!YgO9q0?D6bh!w)z;%eQnYZS6MH8v|iRmI4haUJh?a`)vR5Yzni`G)jhCxl4kjmn9q5`R^Epw%Jx%wh?2`#NKawH;=zzmc}^i+qWNk??U^U z7@ijEXr%gx*>cacuea_+|0Ddqao)=HC-Zc!oZHF#k$GDB-OBh|$X>Ae%HNyb%+#4d-J!HZ%1x_Pwb5{F~-ZveeODo{&g37F|t>`Bbdw2C}r|Uke|ZrzPL5jJ*|h=R4KD(7pG_UND_(?48!IH;2D% zwC}#`J+AFJbB#&k_ie@2R6irwIN~!Ni@*7-rM;PH3Ez(1wv4~i?o500WbbxPr}=Ab z&bjvIHte1Ajr_VdPxHP!W3GzV|9C9+!aiNc-=p)i^!w%Wx1POch`AzHbJH+?+r=LD zvM-1F?X7oZ|F!H*>EAZ|-B=-W>jt!*ywxy)PME2)}I4Z3KVA`ZlC{GwjZ0UdzSqJpH~!w&&iu z7yUb|)#a10_nx%xDE8i)-8pP?Ml9CUzA0X(+3U_Tl0ILV_su`5W3AS`_wV&o6~cb@F^%wI~gH&6G5_`5~>y1wH5_&b8V z^?u(>{cE_Gnk&>||42sm{H)&mJ(l*JG0&seJHqaq8>if&UE1z^KKpYkU7OQSn!owl z7Yx?=cME^*vHP+2xO08;xeMEK3%2I;(UXaz`hGn2*73JgUmm&rDE`*08CiNv3$Et& z5$5kXeZD!&Y}KYUdo_P8Ki9roSKF@lyT|Uw-(zcE8&}2nDsMWqZ;?&>9{AgPjma5v zRWRrG>h~?>XifWEZnkK5Z|p^!SSz-s`su;m68^e;jq!Is_MTq*UVXngx^-)tQQEZk z=iCE(^VfKuF;``}_t=3p<7LZzBiY+R|1SRH{rEdV`}*06^)zBzrrmk2wK46^LBDUE&-b2Up1W$_ z8Si`w_Kuq8n`ZB}SZ8WpnQqs=`>}V%Jm;^I)!QaKqW|8y7yU=qnQWkY^W&Z8e4|n9 zeVjEWr``}rEPJ7=!*Jm(udoZWe{_aN+@cIQ*ronu8s))9xJN^`7kA#@}gs_VYQ@_B`kNX7hL2o%75ZQqr> z19k7nxxQico^y?>kXCJ7zqj_S=kL_Mem+m_+dA&*9@v}j_s!F}ururJs5~wGUiZRZ zsZD$4CwtGSd+YV@WbY>S4${7@Ik;DUyYhF=H+m}N=a%+e+52!YSJUSk(#uECy_3J; z*k?aq8`++x-#6R#yeoT$&o^3YTCH(IYr}iz^zG?QhU1Nis z4W(RvBmX@}`|015&$h+>$=-46NTxLPuKb1eZNT8^_syGg)RnyhwXfu3&-`R>IeVdp z)BJ6>#zu&_vY!0SOZQ{%vDdoFobx-i@6^8DwI&~1``!zCj}db>X%#p4zugceiA0sIQ~4 z7i_NOuYLz_&vFa4ruyj0-l=`F+51@9_p$BH;Cfg7UbS!Oni)0id-{51-(kOR9slrd zp}n>cFI(4-iv2Ab+vC#*82KRv9rbguKbD@+Q z_Re)SLd-rgd$s-z$3XAL-xh35^)cCdjF{(pVDDUOBhN10mA%vMyql)Y)zTqewyYn? z-V&d$)WB)|yB~X@g;VTov48S+^0&oYqkQ(xcl&nb??c60?PovEWvy=4lCiPA;{0tl z�EYTL1c4ydQsCur<|3SN2Z7??c(0^ZA>$G2ioA8(rCZhuSx8cRru(ImXOZ`{L{! zyT*ppyE^Y@?*8+QruKd7>C2gZX~nA&%0-?`StitG98MQpU-YHofIe`QQ^&wO0_p3C+e zV`i&;VfJ$Et7F)mse{A%cR%({?K`z^OFeuK^LQKgiNWb^`|GQuQZ%yeRKJ$BT{GZtMJ%9X1{|(Z&E$Kge=34%q dfBb&+v|3Bf+^rQd) literal 0 HcmV?d00001 diff --git a/build/darwin/dmg-background-stable.tiff b/build/darwin/dmg-background-stable.tiff new file mode 100644 index 0000000000000000000000000000000000000000..d506c3e090f830e03b45497bf876189a02087903 GIT binary patch literal 614770 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

(Bqjw$jYVRkksrZ%sLUUVuOD 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 literal 0 HcmV?d00001 diff --git a/build/filters.ts b/build/filters.ts index c75f9cb0201..dfe0db5e147 100644 --- a/build/filters.ts +++ b/build/filters.ts @@ -44,6 +44,7 @@ export const unicodeFilter = Object.freeze([ '!**/*.test.ts', '!**/*.{d.ts,json,md}', '!**/*.mp3', + '!**/*.tiff', '!build/win32/**', '!extensions/markdown-language-features/notebook-out/*.js', @@ -138,6 +139,7 @@ export const indentationFilter = Object.freeze([ '!**/Dockerfile.*', '!**/*.Dockerfile', '!**/*.dockerfile', + '!**/*.tiff', // except for built files '!extensions/mermaid-chat-features/chat-webview-out/*.js', @@ -173,6 +175,7 @@ export const copyrightFilter = Object.freeze([ '!**/*.code-workspace', '!**/*.js.map', '!**/*.wasm', + '!**/*.tiff', '!build/**/*.init', '!build/linux/libcxx-fetcher.*', '!build/npm/gyp/custom-headers/*.patch', diff --git a/build/package-lock.json b/build/package-lock.json index f189cced89c..44c23e95c20 100644 --- a/build/package-lock.json +++ b/build/package-lock.json @@ -53,6 +53,7 @@ "ansi-colors": "^3.2.3", "byline": "^5.0.0", "debug": "^4.3.2", + "dmg-builder": "^26.5.0", "esbuild": "0.27.2", "extract-zip": "^2.0.1", "gulp-merge-json": "^2.1.1", @@ -66,7 +67,8 @@ "tree-sitter": "^0.22.4", "vscode-universal-bundler": "^0.1.3", "workerpool": "^6.4.0", - "yauzl": "^2.10.0" + "yauzl": "^2.10.0", + "zx": "^8.8.5" }, "optionalDependencies": { "tree-sitter-typescript": "^0.23.2", @@ -488,11 +490,54 @@ "node": ">=6.9.0" } }, - "node_modules/@electron/asar": { - "version": "3.2.10", - "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.10.tgz", - "integrity": "sha512-mvBSwIBUeiRscrCeJE1LwctAriBj65eUDm0Pc11iE5gRwzkmsdbS7FnZ1XUWjpSeQWL1L5g12Fc/SchPM9DUOw==", + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "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" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@develar/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@develar/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@electron/asar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.4.1.tgz", + "integrity": "sha512-i4/rNPRS84t0vSRa2HorerGRXWyF4vThfHesw0dmcWHp+cspK743UanA0suA5Q5y8kzY2y6YKrvbIUn69BCAiA==", + "dev": true, + "license": "MIT", "dependencies": { "commander": "^5.0.0", "glob": "^7.1.6", @@ -514,6 +559,136 @@ "node": ">= 6" } }, + "node_modules/@electron/fuses": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@electron/fuses/-/fuses-1.8.0.tgz", + "integrity": "sha512-zx0EIq78WlY/lBb1uXlziZmDZI4ubcCXIMJ4uGjXzZW0nS19TjSPeXPAjzzTmKQlJUZm0SbmZhPKP7tuQ1SsEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.1", + "fs-extra": "^9.0.1", + "minimist": "^1.2.5" + }, + "bin": { + "electron-fuses": "dist/bin.js" + } + }, + "node_modules/@electron/fuses/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@electron/fuses/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@electron/fuses/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@electron/fuses/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@electron/fuses/node_modules/fs-extra": { + "version": "9.1.0", + "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", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/fuses/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/fuses/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/fuses/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/fuses/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/@electron/get": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", @@ -535,6 +710,60 @@ "global-agent": "^3.0.0" } }, + "node_modules/@electron/notarize": { + "version": "2.5.0", + "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", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "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", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/notarize/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/notarize/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/@electron/osx-sign": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-2.0.0.tgz", @@ -583,6 +812,312 @@ "node": ">=10" } }, + "node_modules/@electron/rebuild": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-4.0.1.tgz", + "integrity": "sha512-iMGXb6Ib7H/Q3v+BKZJoETgF9g6KMNZVbsO4b7Dmpgb5qTFqyFTzqW9F3TOSHdybv2vKYKzSS9OiZL+dcJb+1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@malept/cross-spawn-promise": "^2.0.0", + "chalk": "^4.0.0", + "debug": "^4.1.1", + "detect-libc": "^2.0.1", + "got": "^11.7.0", + "graceful-fs": "^4.2.11", + "node-abi": "^4.2.0", + "node-api-version": "^0.2.1", + "node-gyp": "^11.2.0", + "ora": "^5.1.0", + "read-binary-file-arch": "^1.0.6", + "semver": "^7.3.5", + "tar": "^6.0.5", + "yargs": "^17.0.1" + }, + "bin": { + "electron-rebuild": "lib/cli.js" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@electron/rebuild/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@electron/rebuild/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@electron/rebuild/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/rebuild/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@electron/rebuild/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@electron/rebuild/node_modules/fs-minipass": { + "version": "2.1.0", + "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" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@electron/rebuild/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/rebuild/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/rebuild/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/rebuild/node_modules/minizlib": { + "version": "2.1.2", + "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" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@electron/rebuild/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/rebuild/node_modules/node-abi": { + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-4.26.0.tgz", + "integrity": "sha512-8QwIZqikRvDIkXS2S93LjzhsSPJuIbfaMETWH+Bx8oOT9Sa9UsUtBFQlc3gBNd1+QINjaTloitXr1W3dQLi9Iw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.6.3" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@electron/rebuild/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/rebuild/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@electron/rebuild/node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "deprecated": "Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/universal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-2.0.3.tgz", + "integrity": "sha512-Wn9sPYIVFRFl5HmwMJkARCCf7rqK/EurkfQ/rJZ14mHP3iYTjZSIOSVonEAnhWeAXwtw7zOekGRlc6yTtZ0t+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.3.1", + "@malept/cross-spawn-promise": "^2.0.0", + "debug": "^4.3.1", + "dir-compare": "^4.2.0", + "fs-extra": "^11.1.1", + "minimatch": "^9.0.3", + "plist": "^3.1.0" + }, + "engines": { + "node": ">=16.4" + } + }, + "node_modules/@electron/universal/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@electron/universal/node_modules/fs-extra": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", + "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@electron/universal/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/universal/node_modules/minimatch": { + "version": "9.0.5", + "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" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/universal/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.27.2", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz", @@ -1091,6 +1626,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, "node_modules/@malept/cross-spawn-promise": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz", @@ -1113,6 +1661,61 @@ "node": ">= 12.13.0" } }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "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", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "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", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1151,6 +1754,67 @@ "node": ">= 8" } }, + "node_modules/@npmcli/agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "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" + } + }, "node_modules/@secretlint/config-creator": { "version": "10.2.2", "resolved": "https://registry.npmjs.org/@secretlint/config-creator/-/config-creator-10.2.2.tgz", @@ -1583,10 +2247,11 @@ "dev": true }, "node_modules/@types/fs-extra": { - "version": "9.0.12", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.12.tgz", - "integrity": "sha512-I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==", + "version": "9.0.13", + "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": "*" } @@ -1821,6 +2486,18 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/plist": { + "version": "3.0.5", + "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": "*", + "xmlbuilder": ">=11.0.1" + } + }, "node_modules/@types/pump": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@types/pump/-/pump-1.0.1.tgz", @@ -1891,6 +2568,14 @@ "integrity": "sha512-Z4TYuEKn9+RbNVk1Ll2SS4x1JeLHecolIbM/a8gveaHsW0Hr+RQMraZACwTO2VD7JvepgA6UO1A1VrbktQrIbQ==", "dev": true }, + "node_modules/@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "license": "MIT", + "optional": true + }, "node_modules/@types/vinyl": { "version": "2.0.12", "resolved": "https://registry.npmjs.org/@types/vinyl/-/vinyl-2.0.12.tgz", @@ -2304,15 +2989,29 @@ "node": ">=10.0.0" } }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true, + "license": "MIT" + }, + "node_modules/abbrev": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.1.tgz", + "integrity": "sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } @@ -2334,6 +3033,16 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "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" + } + }, "node_modules/ansi-colors": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", @@ -2419,6 +3128,211 @@ "node": ">= 8" } }, + "node_modules/app-builder-bin": { + "version": "5.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-5.0.0-alpha.12.tgz", + "integrity": "sha512-j87o0j6LqPL3QRr8yid6c+Tt5gC7xNfYo6uQIQkorAC6MpeayVMZrEDzKmJJ/Hlv7EnOQpaRm53k6ktDYZyB6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/app-builder-lib": { + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.5.0.tgz", + "integrity": "sha512-iRRiJhM0uFMauDeIuv8ESHZSn+LESbdDEuHi7rKdeETjrvBObecXnWJx1f3vs3KtoGcd3hCk1zURKypyvZOtFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/asar": "3.4.1", + "@electron/fuses": "^1.8.0", + "@electron/notarize": "2.5.0", + "@electron/osx-sign": "1.3.3", + "@electron/rebuild": "4.0.1", + "@electron/universal": "2.0.3", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "builder-util": "26.4.1", + "builder-util-runtime": "9.5.1", + "chromium-pickle-js": "^0.2.0", + "ci-info": "4.3.1", + "debug": "^4.3.4", + "dotenv": "^16.4.5", + "dotenv-expand": "^11.0.6", + "ejs": "^3.1.8", + "electron-publish": "26.4.1", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "isbinaryfile": "^5.0.0", + "jiti": "^2.4.2", + "js-yaml": "^4.1.0", + "json5": "^2.2.3", + "lazy-val": "^1.0.5", + "minimatch": "^10.0.3", + "plist": "3.1.0", + "resedit": "^1.7.0", + "semver": "~7.7.3", + "tar": "7.5.3", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0", + "which": "^5.0.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "26.5.0", + "electron-builder-squirrel-windows": "26.5.0" + } + }, + "node_modules/app-builder-lib/node_modules/@electron/osx-sign": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.3.3.tgz", + "integrity": "sha512-KZ8mhXvWv2rIEgMbWZ4y33bDHyUKMXnx4M0sTyPNK/vcB81ImdeY9Ggdqy0SWbMDgmbqyQ+phgejh6V3R2QuSg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/app-builder-lib/node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/app-builder-lib/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { + "version": "10.1.0", + "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", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/app-builder-lib/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "node_modules/app-builder-lib/node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/app-builder-lib/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/app-builder-lib/node_modules/minimatch": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz", + "integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/app-builder-lib/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/app-builder-lib/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/app-builder-lib/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -2454,6 +3368,17 @@ "node": ">=0.10.0" } }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8" + } + }, "node_modules/assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", @@ -2488,6 +3413,16 @@ "node": ">= 0.10" } }, + "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" + } + }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -2495,6 +3430,16 @@ "dev": true, "license": "MIT" }, + "node_modules/at-least-node": { + "version": "1.0.0", + "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" + } + }, "node_modules/azure-devops-node-api": { "version": "12.5.0", "resolved": "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-12.5.0.tgz", @@ -2562,7 +3507,6 @@ "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, - "optional": true, "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", @@ -2631,7 +3575,6 @@ "url": "https://feross.org/support" } ], - "optional": true, "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" @@ -2652,6 +3595,186 @@ "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "dev": true }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/builder-util": { + "version": "26.4.1", + "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.4.1.tgz", + "integrity": "sha512-FlgH43XZ50w3UtS1RVGDWOz8v9qMXPC7upMtKMtBEnYdt1OVoS61NYhKm/4x+cIaWqJTXua0+VVPI+fSPGXNIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "5.0.0-alpha.12", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.6", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "js-yaml": "^4.1.0", + "sanitize-filename": "^1.6.3", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-9.5.1.tgz", + "integrity": "sha512-qt41tMfgHTllhResqM5DcnHyDIWNgzHvuY2jDcYP9iaGpkWxTUzV6GQjDeLnlR1/DtdlcsWQbA7sByMpmJFTLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/builder-util/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/builder-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/builder-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/builder-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/builder-util/node_modules/fs-extra": { + "version": "10.1.0", + "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", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/builder-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/builder-util/node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/builder-util/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/builder-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/builder-util/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/byline": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/byline/-/byline-5.0.0.tgz", @@ -2661,6 +3784,127 @@ "node": ">=0.10.0" } }, + "node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/jackspeak": { + "version": "3.4.3", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.5", + "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" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/path-scurry": { + "version": "1.11.1", + "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" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.1.tgz", + "integrity": "sha512-r8LA6i4LP4EeWOhqBaZZjDWwehd1xUJPCJd9Sv300H0ZmcUER4+JPh7bqqZeqs1o5pgtgvXm+d9UGrB5zZGDiQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, "node_modules/cacheable-lookup": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", @@ -2799,6 +4043,220 @@ "dev": true, "optional": true }, + "node_modules/chromium-pickle-js": { + "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, + "license": "MIT" + }, + "node_modules/ci-info": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz", + "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "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", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cli-truncate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/cli-truncate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/cli-truncate/node_modules/slice-ansi": { + "version": "3.0.0", + "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", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "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", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cliui/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/cliui/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "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", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", @@ -2915,6 +4373,16 @@ "node": ">=18" } }, + "node_modules/compare-version": { + "version": "0.1.2", + "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" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2927,6 +4395,17 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "devOptional": true }, + "node_modules/crc": { + "version": "3.8.0", + "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" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -3025,6 +4504,29 @@ "node": ">=4.0.0" } }, + "node_modules/defaults": { + "version": "1.0.4", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defaults/node_modules/clone": { + "version": "1.0.4", + "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" + } + }, "node_modules/defer-to-connect": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", @@ -3071,7 +4573,6 @@ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", "dev": true, - "optional": true, "engines": { "node": ">=8" } @@ -3093,6 +4594,134 @@ "p-limit": "^3.1.0 " } }, + "node_modules/dmg-builder": { + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.5.0.tgz", + "integrity": "sha512-AyOCzpS1TCxDkSWxAzpfw5l7jBX4C8jKCucmT/6y6/24H5VKSHpjcVJD0W8o5BrFi+skC7Z7+F4aNyHmvn4AAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.5.0", + "builder-util": "26.4.1", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/dmg-builder/node_modules/fs-extra": { + "version": "10.1.0", + "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", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-builder/node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/dmg-builder/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/dmg-builder/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/dmg-license": { + "version": "1.0.11", + "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" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dmg-license/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/dmg-license/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT", + "optional": true + }, "node_modules/dom-serializer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", @@ -3148,6 +4777,35 @@ "url": "https://github.com/fb55/domutils?sponsor=1" } }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "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.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -3208,6 +4866,166 @@ "url": "https://bevry.me/fund" } }, + "node_modules/ejs": { + "version": "3.1.10", + "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" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-publish": { + "version": "26.4.1", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.4.1.tgz", + "integrity": "sha512-nByal9K5Ar3BNJUfCSglXltpKUhJqpwivNpKVHnkwxTET9LKl+NxoojpGF1dSXVFcoBKVm+OhsVa28ZsoshEPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "26.4.1", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/electron-publish/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/electron-publish/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/electron-publish/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-publish/node_modules/fs-extra": { + "version": "10.1.0", + "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", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/electron-publish/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-publish/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/electron-publish/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/electron-publish/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -3215,6 +5033,17 @@ "dev": true, "license": "MIT" }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -3258,6 +5087,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/err-code": { + "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, + "license": "MIT" + }, "node_modules/es-define-property": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", @@ -3356,6 +5192,16 @@ "@esbuild/win32-x64": "0.27.2" } }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -3398,6 +5244,13 @@ "node": ">=6" } }, + "node_modules/exponential-backoff": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", @@ -3431,6 +5284,17 @@ "@types/yauzl": "^2.9.1" } }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "optional": true + }, "node_modules/fancy-log": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", @@ -3535,6 +5399,57 @@ "pend": "~1.2.0" } }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "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" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "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" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", @@ -3635,6 +5550,19 @@ "node": ">=6 <7 || >=8" } }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3664,6 +5592,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "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.*" + } + }, "node_modules/get-intrinsic": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", @@ -4050,6 +5988,45 @@ "node": ">= 14" } }, + "node_modules/iconv-corefoundation": { + "version": "1.1.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" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "node_modules/iconv-corefoundation/node_modules/node-addon-api": { + "version": "1.7.2", + "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/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -4068,8 +6045,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "optional": true + ] }, "node_modules/ignore": { "version": "7.0.5", @@ -4081,6 +6057,16 @@ "node": ">= 4" } }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, "node_modules/index-to-position": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.1.0.tgz", @@ -4118,6 +6104,16 @@ "dev": true, "optional": true }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -4188,6 +6184,16 @@ "node": ">=0.10.0" } }, + "node_modules/is-interactive": { + "version": "1.0.0", + "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" + } + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -4209,6 +6215,19 @@ "node": ">=0.10.0" } }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", @@ -4233,6 +6252,19 @@ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "devOptional": true }, + "node_modules/isbinaryfile": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.7.tgz", + "integrity": "sha512-gnWD14Jh3FzS3CPhF0AxNOJ8CxqeblPTADzI38r0wt8ZyQl5edpy75myt08EG2oKvpyiqSqsx+Wkz9vtkbTqYQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -4282,6 +6314,41 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jake/node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jiti": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -4330,10 +6397,11 @@ "optional": true }, "node_modules/json5": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", - "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "version": "2.2.3", + "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" }, @@ -4454,6 +6522,13 @@ "json-buffer": "3.0.1" } }, + "node_modules/lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "dev": true, + "license": "MIT" + }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -4492,6 +6567,99 @@ "dev": true, "license": "MIT" }, + "node_modules/log-symbols": { + "version": "4.1.0", + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/lowercase-keys": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", @@ -4513,6 +6681,29 @@ "node": ">=10" } }, + "node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/markdown-it": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", @@ -4646,6 +6837,16 @@ "node": ">= 0.6" } }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/mimic-response": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", @@ -4668,11 +6869,14 @@ } }, "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, - "optional": true + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minipass": { "version": "7.1.2", @@ -4684,6 +6888,141 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.1.tgz", + "integrity": "sha512-j7U11C5HXigVuutxebFadoYBbd7VSdZWggSe64NVdvWNBqGAiXPL2QVCehjmw7lY1oF9gOllYbORh+hiNgfPgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "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" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/mkdirp-classic": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", @@ -4711,6 +7050,16 @@ "dev": true, "optional": true }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/node-abi": { "version": "3.30.0", "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.30.0.tgz", @@ -4753,6 +7102,54 @@ "dev": true, "optional": true }, + "node_modules/node-api-version": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.1.tgz", + "integrity": "sha512-2xP/IGGMmmSQpI1+O/k72jF/ykvZ89JeuKX3TLJAYPDVLUalrshrLHkeVcCCZqG/eEa635cr8IBYzgnDvM2O8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + } + }, + "node_modules/node-api-version/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-gyp": { + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.5.0.tgz", + "integrity": "sha512-ra7Kvlhxn5V9Slyus0ygMa2h+UqExPqUIkfk7Pc8QTLT956JLSy51uWFwHtIYy0vI8cB4BDhc/S03+880My/LQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "tar": "^7.4.3", + "tinyglobby": "^0.2.12", + "which": "^5.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/node-gyp-build": { "version": "4.8.4", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", @@ -4765,6 +7162,45 @@ "node-gyp-build-test": "build-test.js" } }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/node-sarif-builder": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/node-sarif-builder/-/node-sarif-builder-3.2.0.tgz", @@ -4817,6 +7253,22 @@ "node": ">= 10.0.0" } }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/normalize-package-data": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", @@ -4939,6 +7391,22 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "5.1.2", + "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" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/open": { "version": "8.4.0", "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", @@ -4956,6 +7424,129 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ora": { + "version": "5.4.1", + "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", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/strip-ansi": { + "version": "6.0.1", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/p-cancelable": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", @@ -5141,6 +7732,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pe-library": { + "version": "0.4.1", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, "node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", @@ -5261,6 +7867,16 @@ "integrity": "sha1-LuTyPCVgkT4IwHzlzN1t498sWvg= sha512-lg++21mreCEOuGWTbO5DnJKAdxfjrdN0S9ysoW9SzdSJvbkWpkaDdpG/cdsPCsEnoLUwmd9m3WcZhngW7yKA2g==", "dev": true }, + "node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -5276,6 +7892,20 @@ "node": ">=0.4.0" } }, + "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" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -5293,6 +7923,16 @@ "once": "^1.3.1" } }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/punycode.js": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", @@ -5413,6 +8053,19 @@ "node": ">=0.8" } }, + "node_modules/read-binary-file-arch": { + "version": "1.0.6", + "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" + }, + "bin": { + "read-binary-file-arch": "cli.js" + } + }, "node_modules/read-pkg": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-9.0.1.tgz", @@ -5500,6 +8153,16 @@ "node": ">= 0.10" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "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" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -5510,6 +8173,24 @@ "node": ">=0.10.0" } }, + "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" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, "node_modules/resolve-alpn": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", @@ -5528,6 +8209,37 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "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" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/restore-cursor/node_modules/signal-exit": { + "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, + "license": "ISC" + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, "node_modules/reusify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", @@ -5587,6 +8299,23 @@ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "devOptional": true }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "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" + } + }, "node_modules/sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", @@ -5880,6 +8609,47 @@ "dev": true, "license": "MIT" }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "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" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -5889,6 +8659,17 @@ "node": ">=0.10.0" } }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", @@ -5932,6 +8713,29 @@ "dev": true, "optional": true }, + "node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "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" + } + }, "node_modules/stoppable": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", @@ -6248,6 +9052,24 @@ "node": ">=8" } }, + "node_modules/tar": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.3.tgz", + "integrity": "sha512-ENg5JUHUm2rDD7IvKNFGzyElLXNjachNLp6RaGf4+JOgxXHkqA+gq81ZAMCUmtMtqBsoU62lcp6S27g1LCYGGQ==", + "deprecated": "Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/tar-fs": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.4.tgz", @@ -6279,6 +9101,75 @@ "node": ">=6" } }, + "node_modules/tar/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/temp-file": { + "version": "3.4.0", + "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" + } + }, + "node_modules/temp-file/node_modules/fs-extra": { + "version": "10.1.0", + "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", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp-file/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/temp-file/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/terminal-link": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-4.0.0.tgz", @@ -6365,6 +9256,56 @@ "node": ">=0.10.0" } }, + "node_modules/tiny-async-pool": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-async-pool/-/tiny-async-pool-1.3.0.tgz", + "integrity": "sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^5.5.0" + } + }, + "node_modules/tiny-async-pool/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tmp": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.4.tgz", @@ -6375,6 +9316,16 @@ "node": ">=14.14" } }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "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" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -6470,6 +9421,16 @@ "node": "^18 || ^20 || >= 21" } }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "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" + } + }, "node_modules/tslib": { "version": "2.6.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", @@ -6558,6 +9519,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/unique-filename": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/unique-slug": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, "node_modules/universal-user-agent": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", @@ -6573,12 +9560,29 @@ "node": ">= 4.0.0" } }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, "node_modules/url-join": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz", "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==", "dev": true }, + "node_modules/utf8-byte-length": { + "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, + "license": "(WTFPL OR MIT)" + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -6605,6 +9609,22 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/verror": { + "version": "1.10.1", + "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", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/version-range": { "version": "4.15.0", "resolved": "https://registry.npmjs.org/version-range/-/version-range-4.15.0.tgz", @@ -6757,6 +9777,16 @@ "node": ">= 10.0.0" } }, + "node_modules/wcwidth": { + "version": "1.0.1", + "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" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -6958,12 +9988,51 @@ "node": ">=0.4" } }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/yargs": { + "version": "17.7.2", + "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", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "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" + } + }, "node_modules/yauzl": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", @@ -6985,6 +10054,19 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zx": { + "version": "8.8.5", + "resolved": "https://registry.npmjs.org/zx/-/zx-8.8.5.tgz", + "integrity": "sha512-SNgDF5L0gfN7FwVOdEFguY3orU5AkfFZm9B5YSHog/UDHv+lvmd82ZAsOenOkQixigwH2+yyH198AwNdKhj+RA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "zx": "build/cli.js" + }, + "engines": { + "node": ">= 12.17.0" + } } } } diff --git a/build/package.json b/build/package.json index deddb5b0a3b..e45161dc2c3 100644 --- a/build/package.json +++ b/build/package.json @@ -47,6 +47,7 @@ "ansi-colors": "^3.2.3", "byline": "^5.0.0", "debug": "^4.3.2", + "dmg-builder": "^26.5.0", "esbuild": "0.27.2", "extract-zip": "^2.0.1", "gulp-merge-json": "^2.1.1", @@ -60,7 +61,8 @@ "tree-sitter": "^0.22.4", "vscode-universal-bundler": "^0.1.3", "workerpool": "^6.4.0", - "yauzl": "^2.10.0" + "yauzl": "^2.10.0", + "zx": "^8.8.5" }, "type": "module", "scripts": { diff --git a/package-lock.json b/package-lock.json index 64162079136..c6a0e5ab363 100644 --- a/package-lock.json +++ b/package-lock.json @@ -159,8 +159,7 @@ "webpack-cli": "^5.1.4", "webpack-stream": "^7.0.0", "xml2js": "^0.5.0", - "yaserver": "^0.4.0", - "zx": "^8.8.5" + "yaserver": "^0.4.0" }, "optionalDependencies": { "windows-foreground-love": "0.6.1" @@ -18258,19 +18257,6 @@ "funding": { "url": "https://github.com/sponsors/colinhacks" } - }, - "node_modules/zx": { - "version": "8.8.5", - "resolved": "https://registry.npmjs.org/zx/-/zx-8.8.5.tgz", - "integrity": "sha512-SNgDF5L0gfN7FwVOdEFguY3orU5AkfFZm9B5YSHog/UDHv+lvmd82ZAsOenOkQixigwH2+yyH198AwNdKhj+RA==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "zx": "build/cli.js" - }, - "engines": { - "node": ">= 12.17.0" - } } } } diff --git a/package.json b/package.json index 0f86c43a782..f0aabe6fc3a 100644 --- a/package.json +++ b/package.json @@ -222,8 +222,7 @@ "webpack-cli": "^5.1.4", "webpack-stream": "^7.0.0", "xml2js": "^0.5.0", - "yaserver": "^0.4.0", - "zx": "^8.8.5" + "yaserver": "^0.4.0" }, "overrides": { "node-gyp-build": "4.8.1",