From 2e53feb38cd548bd2fe68957797bffe66b832eaf Mon Sep 17 00:00:00 2001 From: ab77 Date: Thu, 13 Oct 2022 12:03:54 -0700 Subject: [PATCH] Switch to Flowzone Change-type: patch --- .gitattributes | 7 + .github/actions/finalize/action.yml | 48 + .github/actions/publish/action.yml | 251 ++ .github/actions/test/action.yml | 76 + .github/workflows/flowzone.yml | 16 + .gitignore | 6 + .gitsecret/keys/pubring.kbx | Bin 0 -> 5864 bytes .gitsecret/keys/pubring.kbx~ | Bin 0 -> 3405 bytes .gitsecret/keys/trustdb.gpg | Bin 0 -> 1200 bytes .gitsecret/paths/mapping.cfg | 5 + .nvmrc | 1 + .resinci.json | 74 - afterSignHook.js | 6 +- electron-builder.yml | 26 +- package-lock.json | 3185 ++++++++++++------ package.json | 34 +- repo.yml | 13 +- secrets/APPLE_SIGNING.p12.secret | Bin 0 -> 7343 bytes secrets/APPLE_SIGNING_PASSWORD.txt.secret | Bin 0 -> 1315 bytes secrets/WINDOWS_SIGNING.pfx.secret | Bin 0 -> 5732 bytes secrets/WINDOWS_SIGNING_PASSWORD.txt.secret | Bin 0 -> 1317 bytes secrets/XCODE_APP_LOADER_PASSWORD.txt.secret | Bin 0 -> 1307 bytes webpack.config.ts | 70 +- 23 files changed, 2586 insertions(+), 1232 deletions(-) create mode 100644 .github/actions/finalize/action.yml create mode 100644 .github/actions/publish/action.yml create mode 100644 .github/actions/test/action.yml create mode 100644 .github/workflows/flowzone.yml create mode 100644 .gitsecret/keys/pubring.kbx create mode 100644 .gitsecret/keys/pubring.kbx~ create mode 100644 .gitsecret/keys/trustdb.gpg create mode 100644 .gitsecret/paths/mapping.cfg create mode 100644 .nvmrc delete mode 100644 .resinci.json create mode 100644 secrets/APPLE_SIGNING.p12.secret create mode 100644 secrets/APPLE_SIGNING_PASSWORD.txt.secret create mode 100644 secrets/WINDOWS_SIGNING.pfx.secret create mode 100644 secrets/WINDOWS_SIGNING_PASSWORD.txt.secret create mode 100644 secrets/XCODE_APP_LOADER_PASSWORD.txt.secret diff --git a/.gitattributes b/.gitattributes index faf9cb50bb..f330ab3f43 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,3 +1,6 @@ +# default +* text + # Javascript files must retain LF line-endings (to keep eslint happy) *.js text eol=lf *.jsx text eol=lf @@ -59,3 +62,7 @@ CODEOWNERS text *.ttf binary diff=hex xz-without-extension binary diff=hex wmic-output.txt binary diff=hex + +# gitsecret +*.secret binary +.gitsecret/** binary diff --git a/.github/actions/finalize/action.yml b/.github/actions/finalize/action.yml new file mode 100644 index 0000000000..0b0d0759a1 --- /dev/null +++ b/.github/actions/finalize/action.yml @@ -0,0 +1,48 @@ +--- +name: publish GitHub release +# https://github.com/product-os/flowzone/tree/master/.github/actions +inputs: + json: + description: "JSON stringified object containing all the inputs from the calling workflow" + required: true + secrets: + description: "JSON stringified object containing all the secrets from the calling workflow" + required: true + +runs: + # https://docs.github.com/en/actions/creating-actions/creating-a-composite-action + using: "composite" + steps: + - name: Get release version + id: get_release + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + echo "version=$(jq -r '.version' package.json)" >> $GITHUB_OUTPUT + + - name: Rename release + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + gh release edit '${{ github.event.pull_request.head.ref }}' \ + --title 'v${{ steps.get_release.outputs.version }}' \ + --tag 'v${{ steps.get_release.outputs.version }}' + + env: + GITHUB_TOKEN: ${{ fromJSON(inputs.secrets).FLOWZONE_TOKEN }} + + - name: Finalize GitHub release + uses: softprops/action-gh-release@v1 + with: + name: v${{ steps.get_release.outputs.version }} + tag_name: v${{ steps.get_release.outputs.version }} + draft: false + generate_release_notes: true + prerelease: false + token: ${{ fromJSON(inputs.secrets).FLOWZONE_TOKEN }} diff --git a/.github/actions/publish/action.yml b/.github/actions/publish/action.yml new file mode 100644 index 0000000000..23b94b4c72 --- /dev/null +++ b/.github/actions/publish/action.yml @@ -0,0 +1,251 @@ +--- +name: package and publish GitHub (draft) release +# https://github.com/product-os/flowzone/tree/master/.github/actions +inputs: + json: + description: "JSON stringified object containing all the inputs from the calling workflow" + required: true + secrets: + description: "JSON stringified object containing all the secrets from the calling workflow" + required: true + + # --- custom environment + XCODE_APP_LOADER_EMAIL: + type: string + default: "accounts+apple@balena.io" + NODE_VERSION: + type: string + default: "14.x" + VERBOSE: + type: string + default: "true" + +runs: + # https://docs.github.com/en/actions/creating-actions/creating-a-composite-action + using: "composite" + steps: + - name: Download custom source artifact + uses: actions/download-artifact@v3 + with: + name: custom-${{ github.event.pull_request.head.sha || github.event.head_commit.id }}-${{ runner.os }} + path: ${{ runner.temp }} + + - name: Extract custom source artifact + if: runner.os != 'Windows' + shell: bash --noprofile --norc -eo pipefail -x {0} + working-directory: . + run: tar -xf ${{ runner.temp }}/custom.tgz + + - name: Extract custom source artifact + if: runner.os == 'Windows' + shell: powershell + working-directory: . + run: tar -xf ${{ runner.temp }}\custom.tgz + + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: ${{ inputs.NODE_VERSION }} + cache: npm + + - name: Install yq + shell: bash --noprofile --norc -eo pipefail -x {0} + run: choco install yq + if: runner.os == 'Windows' + + # FIXME: resinci-deploy is not actively maintained + # https://github.com/product-os/resinci-deploy + - name: Checkout resinci-deploy + uses: actions/checkout@v3 + with: + repository: product-os/resinci-deploy + token: ${{ fromJSON(inputs.secrets).FLOWZONE_TOKEN }} + path: resinci-deploy + + - name: Build and install resinci-deploy + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + runner_os="$(echo "${RUNNER_OS}" | tr '[:upper:]' '[:lower:]')" + + rm -rf ../resinci-deploy && mv resinci-deploy .. + + pushd ../resinci-deploy && npm ci && npm link && popd + + if [ $runner_os =~ linux|macos ]]; then + chmod +x "$(dirname "$(which node)")/resinci-deploy" && which resinci-deploy + fi + + # FIXME: store sentry workflow is not documented + # https://github.com/product-os/resinci-deploy/blob/master/lib/sentry.ts + # https://github.com/getsentry/sentry-cli + # https://docs.sentry.io/api/projects/create-a-new-client-key/ + - name: Generate Sentry DSN + id: sentry + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + branch="$(echo '${{ github.event.pull_request.head.ref }}' | sed 's/[^[:alnum:]]/-/g')" + + stdout="$(resinci-deploy store sentry \ + --branch="${branch}" \ + --name="$(jq -r '.name' package.json)" \ + --team="$(yq e '.sentry.team' repo.yml)" \ + --org="$(yq e '.sentry.org' repo.yml)" \ + --type="$(yq e '.sentry.type' repo.yml)")" + + echo "dsn=$(echo "${stdout}" | tail -n 1)" >> $GITHUB_OUTPUT + + env: + SENTRY_TOKEN: ${{ fromJSON(inputs.secrets).SENTRY_AUTH_TOKEN }} + + # https://www.electron.build/code-signing.html + # https://github.com/Apple-Actions/import-codesign-certs + - name: Import Apple code signing certificate + if: runner.os == 'macOS' + uses: apple-actions/import-codesign-certs@v1 + with: + p12-file-base64: ${{ fromJSON(inputs.secrets).APPLE_SIGNING }} + p12-password: ${{ fromJSON(inputs.secrets).APPLE_SIGNING_PASSWORD }} + + - name: Import Windows code signing certificate + if: runner.os == 'Windows' + shell: powershell + run: | + Set-Content -Path ${{ runner.temp }}/certificate.base64 -Value $env:WINDOWS_CERTIFICATE + certutil -decode ${{ runner.temp }}/certificate.base64 ${{ runner.temp }}/certificate.pfx + Remove-Item -path ${{ runner.temp }} -include certificate.base64 + + Import-PfxCertificate ` + -FilePath ${{ runner.temp }}/certificate.pfx ` + -CertStoreLocation Cert:\CurrentUser\My ` + -Password (ConvertTo-SecureString -String $env:WINDOWS_CERTIFICATE_PASSWORD -Force -AsPlainText) + + Remove-Item -path ${{ runner.temp }} -include certificate.pfx + + env: + WINDOWS_CERTIFICATE: ${{ fromJSON(inputs.secrets).WINDOWS_SIGNING }} + WINDOWS_CERTIFICATE_PASSWORD: ${{ fromJSON(inputs.secrets).WINDOWS_SIGNING_PASSWORD }} + + # ... or refactor (e.g.) https://github.com/samuelmeuli/action-electron-builder + # https://github.com/product-os/scripts/tree/master/electron + # https://github.com/product-os/scripts/tree/master/shared + # https://github.com/product-os/balena-concourse/blob/master/pipelines/github-events/template.yml + - name: Package release + id: package_release + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + runner_os="$(echo "${RUNNER_OS}" | tr '[:upper:]' '[:lower:]')" + runner_arch="$(echo "${RUNNER_ARCH}" | tr '[:upper:]' '[:lower:]')" + + ELECTRON_BUILDER_ARCHITECTURE="${runner_arch}" + APPLICATION_VERSION="$(jq -r '.version' package.json)" + ARCHITECTURE_FLAGS="--${ELECTRON_BUILDER_ARCHITECTURE}" + + if [[ $runner_os =~ linux ]]; then + ELECTRON_BUILDER_OS='--linux' + TARGETS="$(yq e .linux.target[] electron-builder.yml)" + + elif [[ $runner_os =~ darwin|macos|osx ]]; then + CSC_KEY_PASSWORD=${{ fromJSON(inputs.secrets).APPLE_SIGNING_PASSWORD }} + CSC_KEYCHAIN=signing_temp + CSC_LINK=${{ fromJSON(inputs.secrets).APPLE_SIGNING }} + ELECTRON_BUILDER_OS='--mac' + TARGETS="$(yq e .mac.target[] electron-builder.yml)" + + elif [[ $runner_os =~ windows|win ]]; then + ARCHITECTURE_FLAGS="--ia32 ${ARCHITECTURE_FLAGS}" + CSC_KEY_PASSWORD=${{ fromJSON(inputs.secrets).WINDOWS_SIGNING_PASSWORD }} + CSC_LINK=${{ fromJSON(inputs.secrets).WINDOWS_SIGNING }} + ELECTRON_BUILDER_OS='--win' + TARGETS="$(yq e .win.target[] electron-builder.yml)" + + else + exit 1 + fi + + npm link electron-builder + + for target in ${TARGETS}; do + electron-builder ${ELECTRON_BUILDER_OS} ${ARCHITECTURE_FLAGS} \ + --c.extraMetadata.analytics.sentry.token='${{ steps.sentry.outputs.dsn }}' \ + --c.extraMetadata.packageType="${target}" + + find dist -type f -maxdepth 1 + done + + echo "version=${APPLICATION_VERSION}" >> $GITHUB_OUTPUT + + env: + # Apple notarization (afterSignHook.js) + XCODE_APP_LOADER_EMAIL: ${{ inputs.XCODE_APP_LOADER_EMAIL }} + XCODE_APP_LOADER_PASSWORD: ${{ fromJSON(inputs.secrets).XCODE_APP_LOADER_PASSWORD }} + # https://github.blog/2020-08-03-github-actions-improvements-for-fork-and-pull-request-workflows/#improvements-for-public-repository-forks + # https://docs.github.com/en/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks#about-workflow-runs-from-public-forks + CSC_FOR_PULL_REQUEST: true + + # https://www.electron.build/auto-update.html#staged-rollouts + - name: Configure staged rollout(s) + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + percentage="$(cat < repo.yml | yq e .triggerNotification.stagingPercentage)" + + find dist -type f -maxdepth 1 \ + -name "latest*.yml" \ + -exec yq -i e .version=\"${{ steps.package_release.outputs.version }}\" {} \; + + find dist -type f -maxdepth 1 \ + -name "latest*.yml" \ + -exec yq -i e .stagingPercentage=\"$percentage\" {} \; + + # https://github.com/softprops/action-gh-release#-customizing + - name: Create draft GitHub (pre)release + uses: softprops/action-gh-release@v1 + with: + # use PR branch name for draft releases + name: ${{ github.event.pull_request.head.ref }} + tag_name: ${{ github.event.pull_request.head.ref }} + draft: true + generate_release_notes: false + prerelease: true + token: ${{ fromJSON(inputs.secrets).FLOWZONE_TOKEN }} + files: | + dist/*.AppImage + dist/*.blockmap + dist/*.deb + dist/*.dmg + dist/*.exe + dist/*.rpm + dist/*.zip + dist/latest*.yml + + - name: Compress custom source + if: runner.os != 'Windows' + shell: bash --noprofile --norc -eo pipefail -x {0} + run: tar -acf ${{ runner.temp }}/custom.tgz . + + - name: Compress custom source + if: runner.os == 'Windows' + shell: powershell + run: tar -acf ${{ runner.temp }}\custom.tgz . + + - name: Upload custom artifact + uses: actions/upload-artifact@v3 + with: + name: custom-${{ github.event.pull_request.head.sha || github.event.head_commit.id }}-${{ runner.os }} + path: ${{ runner.temp }}/custom.tgz + retention-days: 1 diff --git a/.github/actions/test/action.yml b/.github/actions/test/action.yml new file mode 100644 index 0000000000..289f6b531c --- /dev/null +++ b/.github/actions/test/action.yml @@ -0,0 +1,76 @@ +--- +name: test release +# https://github.com/product-os/flowzone/tree/master/.github/actions +inputs: + json: + description: "JSON stringified object containing all the inputs from the calling workflow" + required: true + secrets: + description: "JSON stringified object containing all the secrets from the calling workflow" + required: true + + # --- custom environment + NODE_VERSION: + type: string + default: "14.x" + VERBOSE: + type: string + default: "true" + +runs: + # https://docs.github.com/en/actions/creating-actions/creating-a-composite-action + using: "composite" + steps: + - name: Delete previous draft release + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + gh release delete --yes '${{ github.event.pull_request.head.ref }}' || true + + env: + GITHUB_TOKEN: ${{ fromJSON(inputs.secrets).FLOWZONE_TOKEN }} + + # https://github.com/actions/setup-node#caching-global-packages-data + - name: Setup Node.js + uses: actions/setup-node@v3 + with: + node-version: ${{ inputs.NODE_VERSION }} + cache: npm + + - name: Test release + shell: bash --noprofile --norc -eo pipefail -x {0} + run: | + set -ea + + [[ '${{ inputs.VERBOSE }}' =~ on|On|Yes|yes|true|True ]] && set -x + + runner_os="$(echo "${RUNNER_OS}" | tr '[:upper:]' '[:lower:]')" + + npm run flowzone-preinstall-${runner_os} + npm ci + npm run build + npm run test-${runner_os} + + env: + # https://www.electronjs.org/docs/latest/api/environment-variables + ELECTRON_NO_ATTACH_CONSOLE: true + + - name: Compress custom source + if: runner.os != 'Windows' + shell: bash --noprofile --norc -eo pipefail -x {0} + run: tar -acf ${{ runner.temp }}/custom.tgz . + + - name: Compress custom source + if: runner.os == 'Windows' + shell: powershell + run: tar -acf ${{ runner.temp }}\custom.tgz . + + - name: Upload custom artifact + uses: actions/upload-artifact@v3 + with: + name: custom-${{ github.event.pull_request.head.sha || github.event.head_commit.id }}-${{ runner.os }} + path: ${{ runner.temp }}/custom.tgz + retention-days: 1 diff --git a/.github/workflows/flowzone.yml b/.github/workflows/flowzone.yml new file mode 100644 index 0000000000..a081a82d84 --- /dev/null +++ b/.github/workflows/flowzone.yml @@ -0,0 +1,16 @@ +name: Flowzone + +on: + pull_request: + types: [opened, synchronize, closed] + branches: + - "main" + - "master" + +jobs: + flowzone: + name: Flowzone + uses: product-os/flowzone/.github/workflows/flowzone.yml@master + secrets: inherit + with: + tests_run_on: '["ubuntu-latest","macos-latest","windows-2019"]' diff --git a/.gitignore b/.gitignore index fcabc3d650..560e86a5fa 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,9 @@ node_modules # VSCode files .vscode +.gitsecret/keys/random_seed +!*.secret +secrets/APPLE_SIGNING_PASSWORD.txt +secrets/WINDOWS_SIGNING_PASSWORD.txt +secrets/XCODE_APP_LOADER_PASSWORD.txt +secrets/WINDOWS_SIGNING.pfx diff --git a/.gitsecret/keys/pubring.kbx b/.gitsecret/keys/pubring.kbx new file mode 100644 index 0000000000000000000000000000000000000000..eda0670e39ea1c6445c0f53ddfcfad94c1ff0ae8 GIT binary patch literal 5864 zcmai21yod9+nyO31}Q120i_%1?(Tu1yAc>dTDqi5T0*)Mq?88fkO4)JMnbx~f4KMa zzu)(-`~7#XbPXd?QCk0Q2IPL0eKY_ec|+*{wOkj!R%|Vd)oMDs z3k%plMC9t1%C~K{uyg0u6%KC-dRk*pUw^m!?@W&n!)V=^3QtXCX?AN0LsW;O; z4(=&jTs|zek|Jiy1TFytc51ggOsYLqwvIh(hbI?Qw%&4%G5|av09bvudN$5Bf93;F z_gKQ|Iot^%Y2^U7w6e5vdIpCGo85=R&CMLFoXptl;G+L}1oY<$M*>xm3GP;tA4G

)_^^Y%RA-k-f+Waa01XCzRmeJ$U$M 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 kYB~TQw{53MNxubUk literal 0 HcmV?d00001 diff --git a/.gitsecret/keys/pubring.kbx~ b/.gitsecret/keys/pubring.kbx~ new file mode 100644 index 0000000000000000000000000000000000000000..b875319a3b1df5a365a0bfb76fc1e724e7bb65de GIT binary patch literal 3405 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 VI_vgZ!!i4kGJ93eg%oq*zW~kt&l&&# literal 0 HcmV?d00001 diff --git a/.gitsecret/keys/trustdb.gpg b/.gitsecret/keys/trustdb.gpg new file mode 100644 index 0000000000000000000000000000000000000000..19a2c8e4a3254209b6436503dd322bdf98e70c4f GIT binary patch literal 1200 zcmZQfFGy!*W@Ke#Vqi#)HrvU79WZiX7sn7CRfiEIV1dza84VXu2#lr!%F+P=0.3.0 <0.4" @@ -4182,9 +5318,9 @@ "dev": true }, "chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, "requires": { "anymatch": "~3.1.2", @@ -4215,17 +5351,6 @@ "lighthouse-logger": "^1.0.0", "mkdirp": "^0.5.3", "rimraf": "^3.0.2" - }, - "dependencies": { - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } } }, "chrome-trace-event": { @@ -4237,7 +5362,7 @@ "chromium-pickle-js": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", - "integrity": "sha1-BKEGZywYsIWrd02YPfo+oTjyIgU=", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", "dev": true }, "chs": { @@ -4274,57 +5399,19 @@ } }, "cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", "dev": true }, "cli-truncate": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-1.1.0.tgz", - "integrity": "sha512-bAtZo0u82gCfaAGfSNxUdTI9mNyza7D8w4CVCcaOsy7sgwDzvx6ekr6cuWJqY3UGzgnQ1+4wgENup5eIhgxEYA==", + "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, - "optional": true, "requires": { - "slice-ansi": "^1.0.0", - "string-width": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "optional": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "optional": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" } }, "cliui": { @@ -4367,7 +5454,7 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", "dev": true }, "codemirror": { @@ -4476,15 +5563,15 @@ "dev": true }, "colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", "dev": true }, "colors": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", "dev": true }, "combined-stream": { @@ -4503,14 +5590,14 @@ "dev": true }, "command-line-usage": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.1.tgz", - "integrity": "sha512-F59pEuAR9o1SF/bD0dQBDluhpT4jJQNWUHEuVBqpDmCUo6gPjCi+m9fCWnWZVR/oG6cMTUms4h+3NPl74wGXvA==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", + "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", "dev": true, "requires": { - "array-back": "^4.0.1", + "array-back": "^4.0.2", "chalk": "^2.4.2", - "table-layout": "^1.0.1", + "table-layout": "^1.0.2", "typical": "^5.2.0" } }, @@ -4671,12 +5758,20 @@ "dev": true }, "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "5.2.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } } }, "content-type": { @@ -4703,7 +5798,7 @@ "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true }, "copy-to-clipboard": { @@ -5614,9 +6709,9 @@ } }, "del": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", - "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", "dev": true, "requires": { "globby": "^11.0.1", @@ -5627,17 +6722,6 @@ "p-map": "^4.0.0", "rimraf": "^3.0.2", "slash": "^3.0.0" - }, - "dependencies": { - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } } }, "delaunator": { @@ -5652,7 +6736,7 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "dev": true }, "delegates": { @@ -5729,9 +6813,9 @@ "dev": true }, "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true }, "detect-libc": { @@ -5807,7 +6891,7 @@ "commander": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", "dev": true, "requires": { "graceful-readlink": ">= 1.0.0" @@ -5894,19 +6978,18 @@ } }, "dmg-license": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.9.tgz", - "integrity": "sha512-Rq6qMDaDou2+aPN2SYy0x7LDznoJ/XaG6oDcH5wXUp+WRWQMUYE6eM+F+nex+/LSXOp1uw4HLFoed0YbfU8R/Q==", + "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, "optional": true, "requires": { "@types/plist": "^3.0.1", "@types/verror": "^1.10.3", "ajv": "^6.10.0", - "cli-truncate": "^1.1.0", "crc": "^3.8.0", - "iconv-corefoundation": "^1.1.6", - "plist": "^3.0.1", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", "smart-buffer": "^4.0.2", "verror": "^1.10.0" } @@ -5914,7 +6997,7 @@ "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", "dev": true }, "dns-packet": { @@ -5925,12 +7008,20 @@ "requires": { "ip": "^1.1.0", "safe-buffer": "^5.0.1" + }, + "dependencies": { + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true + } } }, "dns-txt": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==", "dev": true, "requires": { "buffer-indexof": "^1.0.0" @@ -6075,16 +7166,16 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true }, "ejs": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.6.tgz", - "integrity": "sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.8.tgz", + "integrity": "sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==", "dev": true, "requires": { - "jake": "^10.6.1" + "jake": "^10.8.5" } }, "electron": { @@ -6664,9 +7755,9 @@ } }, "@sindresorhus/is": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.2.0.tgz", - "integrity": "sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", "dev": true }, "@szmarczak/http-timer": { @@ -6693,11 +7784,16 @@ "responselike": "^2.0.0" } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true + "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, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } }, "colors": { "version": "1.4.0", @@ -6721,9 +7817,9 @@ "dev": true }, "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "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, "requires": { "graceful-fs": "^4.2.0", @@ -6731,15 +7827,6 @@ "universalify": "^2.0.0" } }, - "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, - "requires": { - "minipass": "^3.0.0" - } - }, "get-stream": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", @@ -6750,9 +7837,9 @@ } }, "got": { - "version": "11.8.3", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz", - "integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==", + "version": "11.8.5", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.5.tgz", + "integrity": "sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==", "dev": true, "requires": { "@sindresorhus/is": "^4.0.0", @@ -6785,9 +7872,9 @@ } }, "keyv": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.4.tgz", - "integrity": "sha512-vqNHbAc8BBsxk+7QBYLW0Y219rWcClspR6WSeoHYKG5mnsSoOH+BL1pWq02DDCVdvvuUny5rkBlzMRzoqc+GIg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.0.tgz", + "integrity": "sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==", "dev": true, "requires": { "json-buffer": "3.0.1" @@ -6799,63 +7886,21 @@ "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", "dev": true }, - "lzma-native": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/lzma-native/-/lzma-native-8.0.1.tgz", - "integrity": "sha512-Ryr9X3yDVZhRYOxR8QhUBCNe6GdEfy9BvFDIFtUvEkocvSvnrYt9lRm6FR1z0eQn0QSMenrgrDIJRMgUf9zsKQ==", - "dev": true, - "requires": { - "node-addon-api": "^3.1.0", - "node-gyp-build": "^4.2.1", - "readable-stream": "^3.6.0" - } - }, "mimic-response": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", "dev": true }, - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, "node-abi": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.5.0.tgz", - "integrity": "sha512-LtHvNIBgOy5mO8mPEUtkCW/YCRWYEKshIvqhe1GHHyXEHEB5mgICyYnAcl4qan3uFeRROErKGzatFHPf6kDxWw==", + "version": "3.28.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.28.0.tgz", + "integrity": "sha512-fRlDb4I0eLcQeUvGq7IY3xHrSb0c9ummdvDSYWfT9+LKP+3jCKw/tKoqaM7r1BAoiAC6GtwyjaGnOz6B3OtF+A==", "dev": true, "requires": { "semver": "^7.3.5" } }, - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", - "dev": true - }, "normalize-url": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", @@ -6868,47 +7913,22 @@ "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", "dev": true }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, "responselike": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", - "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", "dev": true, "requires": { "lowercase-keys": "^2.0.0" } }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "lru-cache": "^6.0.0" } }, "universalify": { @@ -6918,19 +7938,25 @@ "dev": true }, "yargs": { - "version": "17.2.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz", - "integrity": "sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==", + "version": "17.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.0.tgz", + "integrity": "sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==", "dev": true, "requires": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.0.0" } + }, + "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 } } }, @@ -7066,13 +8092,13 @@ "endian-toggle": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/endian-toggle/-/endian-toggle-0.0.0.tgz", - "integrity": "sha1-5cx1eLEDLW7gHq/Nc3ZdsNtNwKY=", + "integrity": "sha512-ShfqhXeHRE4TmggSlHXG8CMGIcsOsqDw/GcoPcosToE59Rm9e4aXaMhEQf2kPBsBRrKem1bbOAv5gOKnkliMFQ==", "dev": true }, "enhanced-resolve": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", - "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", + "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", "dev": true, "requires": { "graceful-fs": "^4.2.4", @@ -7510,20 +8536,20 @@ "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true }, "etcher-sdk": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/etcher-sdk/-/etcher-sdk-6.3.0.tgz", - "integrity": "sha512-lbEGzYx5gCkkTgQK4Uwq8mzT+T52kFNbKXkoQkgOSAcisi5NzlVSqOnbAy/jHMObSFesIIdRfYORJ2udrIkmXA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/etcher-sdk/-/etcher-sdk-7.4.0.tgz", + "integrity": "sha512-R3arfPoOYgXoNzKX/1YkCyNZsf3z89iQRHIb4BQklzK6gpC/hD0EU5BkQGNaQn6Ldp3FtWk3KwSqRB7NWx19ig==", "dev": true, "requires": { - "@balena/node-beaglebone-usbboot": "^1.0.3", - "@balena/udif": "^1.1.1", + "@balena/node-beaglebone-usbboot": "^2.0.1", + "@balena/udif": "^1.1.2", "@ronomon/direct-io": "^3.0.1", - "aws4-axios": "^2.0.1", - "axios": "^0.21.1", + "aws4-axios": "^2.4.9", + "axios": "^0.27.0", "balena-image-fs": "^7.0.6", "blockmap": "^4.0.3", "check-disk-space": "^2.1.0", @@ -7533,16 +8559,16 @@ "file-disk": "^8.0.1", "file-type": "^8.0.0", "gzip-stream": "^1.1.2", - "lzma-native": "^6.0.0", + "lzma-native": "^8.0.6", "mountutils": "^1.3.20", - "node-raspberrypi-usbboot": "^0.3.0", - "outdent": "^0.7.0", + "node-raspberrypi-usbboot": "^1.0.2", + "outdent": "^0.8.0", "partitioninfo": "^6.0.2", "rwmutex": "^1.0.0", "tslib": "^2.0.0", - "unbzip2-stream": "github:balena-io-modules/unbzip2-stream#4a54f56a25b58950f9e4277c56db2912d62242e7", + "unbzip2-stream": "^1.4.2", "unzip-stream": "^0.3.0", - "winusb-driver-generator": "^1.2.3", + "winusb-driver-generator": "^1.2.7", "xxhash-addon": "^1.4.0", "yauzl": "^2.9.2", "zip-part-stream": "^1.0.3" @@ -7556,6 +8582,12 @@ "requires": { "ms": "^2.1.1" } + }, + "outdent": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.8.0.tgz", + "integrity": "sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==", + "dev": true } } }, @@ -7618,38 +8650,39 @@ "dev": true }, "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", "dev": true, "requires": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.0", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -7658,13 +8691,13 @@ "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", "dev": true }, "debug": { @@ -7676,16 +8709,34 @@ "ms": "2.0.0" } }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true } } @@ -7708,9 +8759,9 @@ } }, "ext2fs": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/ext2fs/-/ext2fs-3.0.5.tgz", - "integrity": "sha512-QHnfxD7C9jjg1HR5vuZ+oe+IPTM3XwY8OAWU2y2TFUhXXOOf6J7P0M9eQFXDaEUYnT2trdYjJaJQUrldMmhfiQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/ext2fs/-/ext2fs-3.1.1.tgz", + "integrity": "sha512-6yN/XqcIjqRqc7lFa6lp62wjUTtWGZ181w03SgFW7JSFb/C3kAj4e0w5FUKfyXGHcP0Z5J2EqHIletZCFZkxGA==", "dev": true }, "extend": { @@ -7780,6 +8831,15 @@ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, + "fast-xml-parser": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz", + "integrity": "sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==", + "dev": true, + "requires": { + "strnum": "^1.0.5" + } + }, "fastq": { "version": "1.13.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", @@ -7790,9 +8850,9 @@ } }, "fatfs": { - "version": "0.10.7", - "resolved": "https://registry.npmjs.org/fatfs/-/fatfs-0.10.7.tgz", - "integrity": "sha512-MYhg+WjcgyidtfEngBySpF1tm7kgPKDBVd7S9wZSg6Ij3P++UIsPV1Lj9TdpAhIybnTHVLVLP/5DnUe5EFgDcg==", + "version": "0.10.8", + "resolved": "https://registry.npmjs.org/fatfs/-/fatfs-0.10.8.tgz", + "integrity": "sha512-SgtbqGNMwptNXpgLeqSSShm254JIzoVUyyFQBbqMmSPDpKsdZ65vSiS2SzyUI8sMtPvYK62hkuYhXzGZCMt5uQ==", "dev": true, "requires": { "fifolock": "^1.0.0", @@ -7853,7 +8913,7 @@ "fifolock": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fifolock/-/fifolock-1.0.0.tgz", - "integrity": "sha1-o35U8+vmnRNIDZWoKrxCt6XBeS0=", + "integrity": "sha512-CqipzmuW6+xm7emSaBx1rV/fX17UGF9HkzLH887cFOj/Pe3TJsrboGxjZZtzV/5JrQ5vMegQ7ipZkB9wvsBDDQ==", "dev": true }, "figures": { @@ -7897,12 +8957,32 @@ "dev": true }, "filelist": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz", - "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==", + "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, "requires": { - "minimatch": "^3.0.4" + "minimatch": "^5.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } } }, "fill-range": { @@ -7915,17 +8995,17 @@ } }, "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "dependencies": { @@ -7941,7 +9021,13 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true } } @@ -7972,11 +9058,22 @@ "dev": true }, "follow-redirects": { - "version": "1.14.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.5.tgz", - "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", "dev": true }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -7986,7 +9083,7 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true }, "fs-constants": { @@ -8007,12 +9104,12 @@ } }, "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dev": true, "requires": { - "minipass": "^2.6.0" + "minipass": "^3.0.0" } }, "fs-monkey": { @@ -8040,10 +9137,16 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, "gauge": { "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", "dev": true, "requires": { "aproba": "^1.0.3", @@ -8059,13 +9162,13 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, "requires": { "number-is-nan": "^1.0.0" @@ -8074,7 +9177,7 @@ "string-width": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, "requires": { "code-point-at": "^1.0.0", @@ -8085,7 +9188,7 @@ "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" @@ -8156,7 +9259,7 @@ "github-from-package": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", "dev": true }, "glob": { @@ -8300,15 +9403,15 @@ } }, "graceful-fs": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", - "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "graceful-readlink": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", "dev": true }, "grapheme-splitter": { @@ -8588,30 +9691,36 @@ "dev": true }, "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true } } }, "http-parser-js": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", - "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true }, "http-proxy": { @@ -8648,12 +9757,12 @@ } }, "http-proxy-middleware": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz", - "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", "dev": true, "requires": { - "@types/http-proxy": "^1.17.5", + "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", "is-glob": "^4.0.1", "is-plain-obj": "^3.0.0", @@ -8708,7 +9817,7 @@ "humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dev": true, "requires": { "ms": "^2.0.0" @@ -8843,13 +9952,13 @@ } }, "iconv-corefoundation": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.6.tgz", - "integrity": "sha512-1NBe55C75bKGZaY9UHxvXG3G0gEp0ziht7quhuFrW3SPgZDw9HI6qvYXRSV5M/Eupyu8ljuJ6Cba+ec15PZ4Xw==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", "dev": true, "optional": true, "requires": { - "cli-truncate": "^1.1.0", + "cli-truncate": "^2.1.0", "node-addon-api": "^1.6.3" } }, @@ -8880,15 +9989,6 @@ "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "dev": true }, - "ignore-walk": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", - "dev": true, - "requires": { - "minimatch": "^3.0.4" - } - }, "immutable": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.1.tgz", @@ -8908,7 +10008,7 @@ "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", "dev": true }, "import-local": { @@ -8972,7 +10072,7 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true }, "indent-string": { @@ -9074,9 +10174,9 @@ "dev": true }, "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", "dev": true }, "ip-regex": { @@ -9173,9 +10273,9 @@ } }, "is-core-module": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", - "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", "dev": true, "requires": { "has": "^1.0.3" @@ -9269,7 +10369,7 @@ "is-lambda": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", "dev": true }, "is-map": { @@ -9390,7 +10490,7 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, "is-unicode-supported": { @@ -9484,15 +10584,66 @@ } }, "jake": { - "version": "10.8.2", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz", - "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==", + "version": "10.8.5", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.5.tgz", + "integrity": "sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==", "dev": true, "requires": { - "async": "0.9.x", - "chalk": "^2.4.2", + "async": "^3.2.3", + "chalk": "^4.0.2", "filelist": "^1.0.1", "minimatch": "^3.0.4" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } } }, "jest-worker": { @@ -9956,16 +11107,6 @@ "supports-color": "^7.1.0" } }, - "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, - "requires": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -9987,17 +11128,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "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, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -10286,40 +11416,32 @@ } }, "lzma-native": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/lzma-native/-/lzma-native-6.0.1.tgz", - "integrity": "sha512-O6oWF0xe1AFvOCjU8uOZBZ/lhjaMNwHfVNaqVMqmoQXlRwBcFWpCAToiZOdXcKVMdo/5s/D0a2QgA5laMErxHQ==", + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/lzma-native/-/lzma-native-8.0.6.tgz", + "integrity": "sha512-09xfg67mkL2Lz20PrrDeNYZxzeW7ADtpYFbwSQh9U8+76RIzx5QsJBMy8qikv3hbUPfpy6hqwxt6FcGK81g9AA==", "dev": true, "requires": { - "node-addon-api": "^1.6.0", - "node-pre-gyp": "^0.11.0", - "readable-stream": "^2.3.5", - "rimraf": "^2.7.1" + "node-addon-api": "^3.1.0", + "node-gyp-build": "^4.2.1", + "readable-stream": "^3.6.0" }, "dependencies": { - "node-pre-gyp": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.11.0.tgz", - "integrity": "sha512-TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q==", + "node-addon-api": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", + "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true } } }, @@ -10389,23 +11511,14 @@ } }, "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "requires": { "agent-base": "6", "debug": "4" } - }, - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } } } }, @@ -10521,7 +11634,7 @@ "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true }, "mem": { @@ -10542,12 +11655,12 @@ } }, "memfs": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.3.0.tgz", - "integrity": "sha512-BEE62uMfKOavX3iG7GYX43QJ+hAeeWnwIAuJ/R6q96jaMtiLzhsxHJC8B1L7fK7Pt/vXDRwb3SG/yBpNGDPqzg==", + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", + "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", "dev": true, "requires": { - "fs-monkey": "1.0.3" + "fs-monkey": "^1.0.3" } }, "memory-fs": { @@ -10563,7 +11676,7 @@ "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", "dev": true }, "merge-stream": { @@ -10872,7 +11985,7 @@ "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true }, "micromatch": { @@ -10969,21 +12082,12 @@ "dev": true }, "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", "dev": true, "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - }, - "dependencies": { - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "yallist": "^4.0.0" } }, "minipass-collect": { @@ -10993,17 +12097,6 @@ "dev": true, "requires": { "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } } }, "minipass-fetch": { @@ -11016,27 +12109,6 @@ "minipass": "^3.1.0", "minipass-sized": "^1.0.3", "minizlib": "^2.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - } } }, "minipass-flush": { @@ -11046,17 +12118,6 @@ "dev": true, "requires": { "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } } }, "minipass-pipeline": { @@ -11066,17 +12127,6 @@ "dev": true, "requires": { "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } } }, "minipass-sized": { @@ -11086,26 +12136,16 @@ "dev": true, "requires": { "minipass": "^3.0.0" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } } }, "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, "requires": { - "minipass": "^2.9.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" } }, "mixpanel": { @@ -11124,18 +12164,18 @@ "dev": true }, "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "dependencies": { "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true } } @@ -11545,9 +12585,9 @@ "dev": true }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, "prebuild-install": { @@ -11584,9 +12624,9 @@ } }, "simple-get": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz", - "integrity": "sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", + "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", "dev": true, "requires": { "decompress-response": "^3.3.0", @@ -11654,7 +12694,7 @@ "multicast-dns-service-types": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==", "dev": true }, "multimatch": { @@ -11671,9 +12711,9 @@ } }, "nan": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", - "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==", + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", "dev": true }, "nanoid": { @@ -11725,32 +12765,10 @@ } } }, - "needle": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz", - "integrity": "sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==", - "dev": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true }, "neo-async": { @@ -11799,7 +12817,8 @@ "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 + "dev": true, + "optional": true }, "node-api-version": { "version": "0.1.4", @@ -11811,9 +12830,9 @@ }, "dependencies": { "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -11864,90 +12883,40 @@ }, "dependencies": { "are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "dev": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^3.6.0" } }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "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, - "requires": { - "minipass": "^3.0.0" - } - }, "gauge": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.0.tgz", - "integrity": "sha512-F8sU45yQpjQjxKkm1UOAhf0U/O0aFt//Fl7hsrNVto+patMHjs7dPI9mFOGUKbhrgKm0S3EjW3scMFuQmWSROw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", "dev": true, "requires": { - "ansi-regex": "^5.0.1", "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", "has-unicode": "^2.0.1", - "signal-exit": "^3.0.0", + "signal-exit": "^3.0.7", "string-width": "^4.2.3", "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - } - }, - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" + "wide-align": "^1.1.5" } }, "npmlog": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.0.tgz", - "integrity": "sha512-03ppFRGlsyUaQFbGC2C8QWJN/C/K7PsfyD9aQdhVKAQIH4sQBc8WASqFBP7O+Ut4d2oo5LoeoboB3cGdBZSp6Q==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", "dev": true, "requires": { - "are-we-there-yet": "^2.0.0", + "are-we-there-yet": "^3.0.0", "console-control-strings": "^1.1.0", - "gauge": "^4.0.0", + "gauge": "^4.0.3", "set-blocking": "^2.0.0" } }, @@ -11962,44 +12931,30 @@ "util-deprecate": "^1.0.1" } }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "string-width": "^1.0.2 || 2 || 3 || 4" } } } }, "node-gyp-build": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.3.0.tgz", - "integrity": "sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", "dev": true }, "node-ipc": { @@ -12013,42 +12968,27 @@ "js-queue": "2.0.0" } }, - "node-pre-gyp": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz", - "integrity": "sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==", + "node-raspberrypi-usbboot": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/node-raspberrypi-usbboot/-/node-raspberrypi-usbboot-1.0.4.tgz", + "integrity": "sha512-MJFV/ohII3yjykJR/Jce+VnCbp2Tq/9nmnq+gSwDTlAAZnZ1gDm4gmvsqvN7FDZ/6tf//XUwPqZzFWbb23QOoQ==", "dev": true, "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" + "debug": "^4.3.4", + "usb": "^2.5.2" }, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } } } }, - "node-raspberrypi-usbboot": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/node-raspberrypi-usbboot/-/node-raspberrypi-usbboot-0.3.1.tgz", - "integrity": "sha512-KNbyHoyDayAHtP6jNGvSE68OIcLlgjaUqyGA/YdslHnLKrHlFmedajfTJ/o53g1+9reft2fTcv6P/LK13Oec6Q==", - "dev": true, - "requires": { - "@balena.io/usb": "^1.3.14", - "debug": "^4.1.1" - } - }, "node-releases": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", @@ -12058,17 +12998,16 @@ "noop-logger": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz", - "integrity": "sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI=", + "integrity": "sha512-6kM8CLXvuW5crTxsAtva2YLrRrDaiTIkIePWs9moLHqbFWT94WpNFjwS/5dfLfECg5i/lkmw3aoqVidxt23TEQ==", "dev": true }, "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", "dev": true, "requires": { - "abbrev": "1", - "osenv": "^0.1.4" + "abbrev": "1" } }, "normalize-package-data": { @@ -12084,18 +13023,18 @@ }, "dependencies": { "hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", "dev": true, "requires": { "lru-cache": "^6.0.0" } }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -12115,15 +13054,6 @@ "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", "dev": true }, - "npm-bundled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", - "dev": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, "npm-conf": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", @@ -12135,23 +13065,6 @@ "pify": "^3.0.0" } }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true - }, - "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", - "dev": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, "npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -12185,7 +13098,7 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", "dev": true }, "object-assign": { @@ -12274,9 +13187,9 @@ } }, "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "requires": { "ee-first": "1.1.1" @@ -12404,7 +13317,7 @@ "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true }, "os-locale": { @@ -12513,26 +13426,10 @@ } } }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, "outdent": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.7.1.tgz", - "integrity": "sha512-VjIzdUHunL74DdhcwMDt5FhNDQ8NYmTkuW0B+usIV2afS9aWT/1c9z1TsnFW349TP3nxmYeUl7Z++XpJRByvgg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/outdent/-/outdent-0.8.0.tgz", + "integrity": "sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==", "dev": true }, "p-cancelable": { @@ -12685,9 +13582,9 @@ "dev": true }, "partitioninfo": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/partitioninfo/-/partitioninfo-6.0.2.tgz", - "integrity": "sha512-LxmwiC0tSqlTvjL7SYH0MQYRwQkUTfcm55mZPG8+jPNmhhYfhr7QiYr6FUAaF3ixHlhF5pV/YcSLgp8DXq+jYQ==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/partitioninfo/-/partitioninfo-6.0.3.tgz", + "integrity": "sha512-4B88aRAwZm/KYT9dxvdTbrqZ24AiUOnVfkuKVqjQWO3tNvnD2o8g6afZzQnd6+JUuCZWzMq7JrfxtfbL8EyPNQ==", "dev": true, "requires": { "file-disk": "^8.0.1", @@ -12806,23 +13703,14 @@ } }, "plist": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.4.tgz", - "integrity": "sha512-ksrr8y9+nXOxQB2osVNqrgvX/XQPOXaU4BQMKjYq8PvaY1U18mo+fKgBSwzK+luSyinOuPae956lSVcBwxlAMg==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.0.6.tgz", + "integrity": "sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA==", "dev": true, "optional": true, "requires": { "base64-js": "^1.5.1", - "xmlbuilder": "^9.0.7" - }, - "dependencies": { - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", - "dev": true, - "optional": true - } + "xmlbuilder": "^15.1.1" } }, "pnp-webpack-plugin": { @@ -12835,20 +13723,20 @@ } }, "portfinder": { - "version": "1.0.28", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", - "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "version": "1.0.32", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz", + "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", "dev": true, "requires": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.5" + "async": "^2.6.4", + "debug": "^3.2.7", + "mkdirp": "^0.5.6" }, "dependencies": { "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", "dev": true, "requires": { "lodash": "^4.17.14" @@ -12957,9 +13845,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true } } @@ -13018,7 +13906,7 @@ "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", "dev": true }, "promise-retry": { @@ -13034,7 +13922,7 @@ "retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "dev": true } } @@ -13252,13 +14140,14 @@ "find-up": "^4.0.0" } }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", "dev": true, "requires": { - "glob": "^7.1.3" + "buffer": "^5.2.1", + "through": "^2.3.8" } } } @@ -13270,10 +14159,13 @@ "dev": true }, "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } }, "query-ast": { "version": "1.0.4", @@ -13287,7 +14179,7 @@ "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", "dev": true }, "queue-microtask": { @@ -13354,21 +14246,21 @@ "dev": true }, "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dev": true, "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, "dependencies": { "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true } } @@ -13691,13 +14583,14 @@ "dev": true }, "regexp.prototype.flags": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", - "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" } }, "regexpu-core": { @@ -13715,12 +14608,12 @@ } }, "registry-auth-token": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", - "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", "dev": true, "requires": { - "rc": "^1.2.8" + "rc": "1.2.8" } }, "registry-url": { @@ -13957,7 +14850,7 @@ "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", "dev": true }, "resin-corvus": { @@ -14087,9 +14980,9 @@ "dev": true }, "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { "glob": "^7.1.3" @@ -14143,7 +15036,7 @@ "rwmutex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/rwmutex/-/rwmutex-1.0.0.tgz", - "integrity": "sha1-/dHqaoe3f0SecteF+eonTL4UDe0=", + "integrity": "sha512-1sLNznM7PB0Grdi3NjddvfzP+dWMlaeKPf98W6On5l1yNcuKkqJ8FYCEFHhMRwoqp2iTGaDMPrsRgnKiSKbwQQ==", "dev": true, "requires": { "debug": "^3.0.1" @@ -14237,7 +15130,7 @@ "schemapack": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/schemapack/-/schemapack-1.4.2.tgz", - "integrity": "sha1-i1gqVeEo40WFTOP7OANxxYJk80k=", + "integrity": "sha512-jVc7vmXDjj9DlPQjD79+S8Mqt29kRFqGeZV1to7vVtFoadKAYHqsvtsxWFpQRSvfH00uuqZ+wkKLcrSYB+kEQA==", "dev": true }, "scss-parser": { @@ -14256,9 +15149,9 @@ "dev": true }, "selfsigned": { - "version": "1.10.11", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz", - "integrity": "sha512-aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==", + "version": "1.10.14", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", + "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", "dev": true, "requires": { "node-forge": "^0.10.0" @@ -14300,24 +15193,24 @@ "dev": true }, "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "2.0.0", "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", + "ms": "2.1.3", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { "debug": { @@ -14332,11 +15225,17 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -14344,9 +15243,15 @@ "dev": true }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true } } @@ -14427,15 +15332,15 @@ } }, "serve-static": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.18.0" } }, "set-blocking": { @@ -14451,9 +15356,9 @@ "dev": true }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, "shallowequal": { @@ -14506,9 +15411,9 @@ } }, "signal-exit": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", - "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==", + "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 }, "simple-concat": { @@ -14518,9 +15423,9 @@ "dev": true }, "simple-get": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.0.tgz", - "integrity": "sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", "dev": true, "requires": { "decompress-response": "^4.2.0", @@ -14726,21 +15631,39 @@ "dev": true }, "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", "dev": true, - "optional": true, "requires": { - "is-fullwidth-code-point": "^2.0.0" + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" }, "dependencies": { - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "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, - "optional": true + "requires": { + "color-convert": "^2.0.1" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 } } }, @@ -14751,43 +15674,43 @@ "dev": true }, "sockjs": { - "version": "0.3.21", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz", - "integrity": "sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==", + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, "requires": { "faye-websocket": "^0.11.3", - "uuid": "^3.4.0", + "uuid": "^8.3.2", "websocket-driver": "^0.7.4" }, "dependencies": { "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true } } }, "socks": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", - "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dev": true, "requires": { - "ip": "^1.1.5", - "smart-buffer": "^4.1.0" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" } }, "socks-proxy-agent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.0.tgz", - "integrity": "sha512-57e7lwCN4Tzt3mXz25VxOErJKXlPfXmkMLnk310v/jwW20jWRVcgsOit+xNkN3eIEdB47GwnfAEBLacZ/wVIKg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", + "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", "dev": true, "requires": { "agent-base": "^6.0.2", - "debug": "^4.3.1", - "socks": "^2.6.1" + "debug": "^4.3.3", + "socks": "^2.6.2" }, "dependencies": { "agent-base": { @@ -14800,9 +15723,9 @@ } }, "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -14885,9 +15808,9 @@ } }, "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, "spdy": { @@ -15089,17 +16012,6 @@ "dev": true, "requires": { "minipass": "^3.1.1" - }, - "dependencies": { - "minipass": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.5.tgz", - "integrity": "sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - } } }, "stable": { @@ -15234,6 +16146,12 @@ "integrity": "sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E=", "dev": true }, + "strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "dev": true + }, "struct-fu": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/struct-fu/-/struct-fu-1.2.1.tgz", @@ -15369,30 +16287,29 @@ "dev": true }, "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "dev": true, - "requires": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "dev": true }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true } } @@ -15446,9 +16363,9 @@ }, "dependencies": { "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "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, "requires": { "graceful-fs": "^4.2.0", @@ -15515,9 +16432,9 @@ } }, "textextensions": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-5.14.0.tgz", - "integrity": "sha512-4cAYwNFNYlIAHBUo7p6zw8POUvWbZor+/R0Tanv+rIhsauEyV9QSrEXL40pI+GfTQxKX8k6Tyw6CmdSDSmASrg==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-5.15.0.tgz", + "integrity": "sha512-MeqZRHLuaGamUXGuVn2ivtU3LA3mLCCIO5kUGoohTCoGmCBg/+8yPhWVX9WSl9telvVd8erftjFk9Fwb2dD6rw==", "dev": true }, "through": { @@ -15572,9 +16489,9 @@ "dev": true }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true }, "tr46": { @@ -15586,7 +16503,7 @@ "traverse": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "integrity": "sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==", "dev": true }, "trim": { @@ -15610,7 +16527,7 @@ "truncate-utf8-bytes": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", - "integrity": "sha1-QFkjkJWS1W94pYGENLC3hInKXys=", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", "dev": true, "requires": { "utf8-byte-length": "^1.0.1" @@ -15810,7 +16727,7 @@ "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, "requires": { "safe-buffer": "^5.0.1" @@ -15903,9 +16820,14 @@ } }, "unbzip2-stream": { - "version": "github:balena-io-modules/unbzip2-stream#4a54f56a25b58950f9e4277c56db2912d62242e7", - "from": "github:balena-io-modules/unbzip2-stream#4a54f56a25b58950f9e4277c56db2912d62242e7", - "dev": true + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, + "requires": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } }, "unherit": { "version": "1.1.3", @@ -16058,7 +16980,7 @@ "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true }, "unquote": { @@ -16140,9 +17062,9 @@ "dev": true }, "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -16171,7 +17093,7 @@ "url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", "dev": true, "requires": { "punycode": "1.3.2", @@ -16181,7 +17103,7 @@ "punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", "dev": true } } @@ -16206,10 +17128,29 @@ "prepend-http": "^2.0.0" } }, + "usb": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/usb/-/usb-2.5.2.tgz", + "integrity": "sha512-/7hWfbPL4ExGTQO2v2XfuKoBHDwNMoNPZmyKjsPpS4bnEY3BIsaanPpGsLmaI4MOq9pAWDrIz0DwRA8SqJ1pVQ==", + "dev": true, + "requires": { + "@types/w3c-web-usb": "1.0.6", + "node-addon-api": "^4.2.0", + "node-gyp-build": "^4.3.0" + }, + "dependencies": { + "node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "dev": true + } + } + }, "utf8-byte-length": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", - "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", + "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==", "dev": true }, "util-deprecate": { @@ -16233,7 +17174,7 @@ "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "dev": true }, "uuid": { @@ -16316,7 +17257,7 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "dev": true, "optional": true } @@ -16351,9 +17292,9 @@ } }, "watchpack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", - "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", "dev": true, "requires": { "glob-to-regexp": "^0.4.1", @@ -16633,6 +17574,14 @@ "terser-webpack-plugin": "^5.0.3", "watchpack": "^2.0.0", "webpack-sources": "^2.1.1" + }, + "dependencies": { + "@types/estree": { + "version": "0.0.45", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.45.tgz", + "integrity": "sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g==", + "dev": true + } } }, "webpack-cli": { @@ -16656,6 +17605,12 @@ "webpack-merge": "^4.2.2" }, "dependencies": { + "colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", + "dev": true + }, "commander": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", @@ -16665,22 +17620,22 @@ } }, "webpack-dev-middleware": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.2.2.tgz", - "integrity": "sha512-DjZyYrsHhkikAFNvSNKrpnziXukU1EChFAh9j4LAm6ndPLPW8cN0KhM7T+RAiOqsQ6ABfQ8hoKIs9IWMTjov+w==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", "dev": true, "requires": { "colorette": "^2.0.10", - "memfs": "^3.2.2", + "memfs": "^3.4.3", "mime-types": "^2.1.31", "range-parser": "^1.2.1", "schema-utils": "^4.0.0" }, "dependencies": { "ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -16698,12 +17653,6 @@ "fast-deep-equal": "^3.1.3" } }, - "colorette": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", - "dev": true - }, "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -16763,12 +17712,6 @@ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true }, - "colorette": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", - "dev": true - }, "strip-ansi": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", @@ -16779,9 +17722,9 @@ } }, "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", + "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", "dev": true } } @@ -17065,7 +18008,7 @@ "xok": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/xok/-/xok-1.0.0.tgz", - "integrity": "sha1-G04aLcjlk72JB9xM/Wof5uQlSJk=", + "integrity": "sha512-DVb6F65Oiq0/fQxLH4adxE92OeNl1njEd+A1pPknmujM/nJhid2iofGXhrU4subNbUi2F0whuKhLv8ReFsqg6g==", "dev": true }, "xtend": { @@ -17087,9 +18030,9 @@ "dev": true }, "xxhash-addon": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/xxhash-addon/-/xxhash-addon-1.4.0.tgz", - "integrity": "sha512-n3Ml0Vgvy7jMYJBlQIoFLjYxXNZQ5CbzW8E2Ynq2QCUpWMqCouooW7j02+7Oud5FijBuSrjQNuN/fCiz1SHN+w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/xxhash-addon/-/xxhash-addon-1.5.0.tgz", + "integrity": "sha512-ZkfBZMrrpbyT8/uw7x+2voPBXO2oczajlGo11+OOO1YqGbk6DuF7erwirCUPvydN17lEjilu3VGDWWG4+fV45Q==", "dev": true }, "y18n": { diff --git a/package.json b/package.json index 689cc8ea57..0bc65ead89 100644 --- a/package.json +++ b/package.json @@ -13,21 +13,26 @@ "url": "git@github.com:balena-io/etcher.git" }, "scripts": { - "lint-ts": "balena-lint --fix --typescript typings lib tests scripts/clean-shrinkwrap.ts webpack.config.ts", + "build": "npm run webpack", + "flowzone-preinstall-linux": "sudo apt-get install -y xvfb libudev-dev && cat < electron-builder.yml | yq e .deb.depends[] - | xargs -L1 echo | sed 's/|//g' | xargs -L1 sudo apt-get --ignore-missing install || true", + "flowzone-preinstall-macos": "true", + "flowzone-preinstall-windows": "true", + "flowzone-preinstall": "npm run flowzone-preinstall-linux", "lint-css": "prettier --write lib/**/*.css", + "lint-ts": "balena-lint --fix --typescript typings lib tests scripts/clean-shrinkwrap.ts webpack.config.ts", "lint": "npm run lint-ts && npm run lint-css", - "test-spectron": "mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts tests/spectron/runner.spec.ts", - "test-gui": "electron-mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts --full-trace --no-sandbox --renderer tests/gui/**/*.ts", - "test-shared": "electron-mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts --full-trace --no-sandbox tests/shared/**/*.ts", - "test": "npm run lint && npm run test-gui && npm run test-shared && npm run test-spectron && npm run sanity-checks", + "postinstall": "electron-rebuild -t prod,dev,optional", "sanity-checks": "bash scripts/ci/ensure-all-file-extensions-in-gitattributes.sh", "start": "./node_modules/.bin/electron .", - "postinstall": "electron-rebuild -t prod,dev,optional", - "webpack": "webpack", + "test-macos": "npm run lint && npm run test-gui && npm run test-shared && npm run test-spectron && npm run sanity-checks", + "test-gui": "electron-mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts --full-trace --no-sandbox --renderer tests/gui/**/*.ts", + "test-linux": "npm run lint && xvfb-run --auto-servernum npm run test-gui && xvfb-run --auto-servernum npm run test-shared && xvfb-run --auto-servernum npm run test-spectron && npm run sanity-checks", + "test-shared": "electron-mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts --full-trace --no-sandbox tests/shared/**/*.ts", + "test-spectron": "mocha --recursive --reporter spec --require ts-node/register/transpile-only --require-main tests/gui/allow-renderer-process-reuse.ts tests/spectron/runner.spec.ts", + "test-windows": "npm run lint && npm run test-gui && npm run test-shared && npm run test-spectron && npm run sanity-checks", + "test": "echo npm run test-{linux,windows,macos}", "watch": "webpack serve --no-optimization-minimize --config ./webpack.dev.config.ts", - "concourse-build-electron": "npm run webpack", - "concourse-test": "npx npm@6.14.8 test", - "concourse-test-electron": "npx npm@6.14.8 test" + "webpack": "webpack" }, "husky": { "hooks": { @@ -63,7 +68,7 @@ "@types/terser-webpack-plugin": "5.0.2", "@types/tmp": "0.2.0", "@types/webpack-node-externals": "2.5.0", - "aws4-axios": "2.2.1", + "aws4-axios": "2.4.9", "chai": "4.2.0", "copy-webpack-plugin": "7.0.0", "css-loader": "5.0.1", @@ -76,7 +81,7 @@ "electron-rebuild": "3.2.5", "electron-updater": "4.3.5", "esbuild-loader": "2.16.0", - "etcher-sdk": "6.3.0", + "etcher-sdk": "7.4.0", "file-loader": "6.2.0", "husky": "4.2.5", "immutable": "3.8.1", @@ -87,7 +92,7 @@ "native-addon-loader": "2.0.1", "node-ipc": "9.1.1", "omit-deep-lodash": "1.1.4", - "outdent": "0.7.1", + "outdent": "0.8.0", "path-is-inside": "1.0.2", "pnp-webpack-plugin": "1.6.4", "pretty-bytes": "5.3.0", @@ -115,6 +120,9 @@ "webpack-cli": "4.2.0", "webpack-dev-server": "4.5.0" }, + "engines": { + "node": ">=14 < 16" + }, "versionist": { "publishedAt": "2022-04-22T13:10:47.906Z" } diff --git a/repo.yml b/repo.yml index f9ab959c92..aa97f35669 100644 --- a/repo.yml +++ b/repo.yml @@ -1,17 +1,18 @@ +--- type: electron release: github publishMetadata: true sentry: - org: balenaetcher - team: resinio - type: electron + org: balenaetcher + team: resinio + type: electron triggerNotification: - version: 1.7.9 - stagingPercentage: 100 + version: 1.7.9 + stagingPercentage: 100 upstream: - repo: etcher-sdk url: https://github.com/balena-io-modules/etcher-sdk - module: 'etcher-sdk' + module: etcher-sdk - repo: sys-class-rgb-led url: https://github.com/balena-io-modules/sys-class-rgb-led module: sys-class-rgb-led diff --git a/secrets/APPLE_SIGNING.p12.secret b/secrets/APPLE_SIGNING.p12.secret new file mode 100644 index 0000000000000000000000000000000000000000..eb23a1a1ab5961ce58591b2414f05adaca2313e8 GIT binary patch literal 7343 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

JHcs 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 V9FC{9{kk0)hKA}x3zDq2QO^JX literal 0 HcmV?d00001 diff --git a/secrets/APPLE_SIGNING_PASSWORD.txt.secret b/secrets/APPLE_SIGNING_PASSWORD.txt.secret new file mode 100644 index 0000000000000000000000000000000000000000..d22d7ac4d6b72c17c7ba2cc5ae27c8052bd9fefb GIT binary patch literal 1315 zcmV+;1>E|D0Sp8EO1-3wRJ!;92mKgs(0FkCVFolWb9~h$j3G|BJzhsFC0~!>ans79 z5z7O3lg)>32uDJ4%oq0PReB>015Y&|^_WHR`P*+$hs!4{1Wn#-Ou!Eu(hZWxN3xBD zA@d5pkwNHJ|&CJi56xPoe>GRVIG|2uvLPzHi{R|zyVcyor&F@ ze>~(@UpUaw^((gpO$de5?OKHaj05E+RqaY9P=Wyr0H^Vw0h}q`Ye$Z*P$z7I;#3B1 z+LAQ`;9Js5o@_I{mC`FB(T4cmdbzvpejX|V6?j%dh~uHhSAv`K_{rDrh<3S3Yy}dg$w|dspeV^h$cT5>KNKp zc?3G>qPqrayYViSTY`uhN&gzvS-C@9H3N~rIknMp%+X3dcPumz zd4&QD18r3&b(*#IECCPzuQ9Jf_YGy+l~-Z!oloXeP>@?5*n57_@og-EtX?*6hKc@P z{w!6s2XW0pm`ad{cMsJE;ZWGN#1*!NvK|~61@MQ~_zMS(d|%i-F-{@sq$AAclDY_@ zv%%_CAW@#2a%SgApe}N+TDGLgzG_+A*^y>>+QzhQ#*9!D!OG~il|P-2*HY6l>O0ti zBjA7#{!sMg`($efp=EZuv$zh=ryAq0Q^=V<2YJ z;)9uHZYnE*>Cg=Y{XDgKr#T#Xru@f2P<%&2_*uy7sj#^xO4+b=HiUpezECqMSJ zI1gj7+H=ai0o?Brm^tBO_lh>9dhs(hQL4pB2|1&K7}Ap{tN0O(uB4gE=++Jlyp*D) zx5>e?*TsaFuqnh?^p$?b7*@RPiET?+@981>dKV!euOwCwI(sTiDxZq$>0vWkJN5J$kD+n=f@nY5|QN9i`f7G literal 0 HcmV?d00001 diff --git a/secrets/WINDOWS_SIGNING.pfx.secret b/secrets/WINDOWS_SIGNING.pfx.secret new file mode 100644 index 0000000000000000000000000000000000000000..f6ac240e9a0b87975cb45b7009e87c2b95cf13cc GIT binary patch literal 5732 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 RrrzHQ@GTVMWg%$$^FNNmcE|t# literal 0 HcmV?d00001 diff --git a/webpack.config.ts b/webpack.config.ts index d26d27b9d5..2a3d52dc9b 100644 --- a/webpack.config.ts +++ b/webpack.config.ts @@ -77,11 +77,63 @@ function renameNodeModules(resourcePath: string) { ); } +function findUsbPrebuild(): string[] { + const usbPrebuildsFolder = path.join('node_modules', 'usb', 'prebuilds') + const prebuildFolders = readdirSync(usbPrebuildsFolder); + let bindingFile: string | undefined = 'node.napi.node'; + const platformFolder = prebuildFolders.find( + (f) => + f.startsWith(os.platform()) && + f.indexOf(os.arch()) > -1, + ); + if (platformFolder === undefined) { + throw new Error('Could not find usb prebuild. Should try fallback to node-gyp and use /build/Release instead of /prebuilds'); + } + + const bindingFiles = readdirSync( + path.join(usbPrebuildsFolder, platformFolder) + ) + + if (!bindingFiles.length) { + throw new Error('Could not find usb prebuild for platform') + } + + if (bindingFiles.length === 1) { + bindingFile = bindingFiles[0]; + } + + // armv6 vs v7 in linux-arm and + // glibc vs musl in linux-x64 + if (bindingFiles.length > 1) { + bindingFile = bindingFiles.find((file) => { + if (bindingFiles.indexOf('arm') > -1) { + const process = require('process') + return file.indexOf(process.config.variables.arm_version) > -1 + } else { + return file.indexOf('glibc') > -1 + } + }) + } + + if (bindingFile === undefined) { + throw new Error('Could not find usb prebuild for platform') + } + + return [platformFolder, bindingFile]; +} + +const [ + USB_BINDINGS_FOLDER, + USB_BINDINGS_FILE, +] = findUsbPrebuild(); + function findLzmaNativeBindingsFolder(): string { - const files = readdirSync(path.join('node_modules', 'lzma-native')); + const files = readdirSync( + path.join('node_modules', 'lzma-native', 'prebuilds'), + ); const bindingsFolder = files.find( (f) => - f.startsWith('binding-') && + f.startsWith(os.platform()) && f.endsWith(env.npm_config_target_arch || os.arch()), ); if (bindingsFolder === undefined) { @@ -210,8 +262,8 @@ const commonConfig = { /node_modules\/lzma-native\/index\.js$/, // remove node-pre-gyp magic from lzma-native { - search: 'require(binding_path)', - replace: `require('./${LZMA_BINDINGS_FOLDER}/lzma_native.node')`, + search: `require('node-gyp-build')(__dirname);`, + replace: `require('./prebuilds/${LZMA_BINDINGS_FOLDER}/electron.napi.node')`, }, // use regular stream module instead of readable-stream { @@ -220,9 +272,9 @@ const commonConfig = { }, ), // remove node-pre-gyp magic from usb - replace(/node_modules\/@balena.io\/usb\/usb\.js$/, { - search: 'require(binding_path)', - replace: "require('./build/Release/usb_bindings.node')", + replace(/node_modules\/usb\/dist\/usb\/bindings\.js$/, { + search: `require('node-gyp-build')(path_1.join(__dirname, '..', '..'));`, + replace: `require('../../prebuilds/${USB_BINDINGS_FOLDER}/${USB_BINDINGS_FILE}')`, }), // remove bindings magic from mountutils replace(/node_modules\/mountutils\/index\.js$/, { @@ -348,8 +400,8 @@ const guiConfigCopyPatterns = [ if (os.platform() === 'win32') { // liblzma.dll is required on Windows for lzma-native guiConfigCopyPatterns.push({ - from: `node_modules/lzma-native/${LZMA_BINDINGS_FOLDER}/liblzma.dll`, - to: `modules/lzma-native/${LZMA_BINDINGS_FOLDER_RENAMED}/liblzma.dll`, + from: `node_modules/lzma-native/prebuilds/${LZMA_BINDINGS_FOLDER}/liblzma.dll`, + to: `modules/lzma-native/prebuilds/${LZMA_BINDINGS_FOLDER_RENAMED}/liblzma.dll`, }); }