From 4a553c711a2d2f2fd6d71a58404884bff4fe57ad Mon Sep 17 00:00:00 2001 From: LongYinan Date: Tue, 15 Feb 2022 00:29:49 +0800 Subject: [PATCH] feat: upgrade to napi2 (#422) --- .github/workflows/CI.yaml | 10 +- .github/workflows/bench.yml | 8 +- .github/workflows/lint.yml | 8 +- Cargo.toml | 6 +- __test__/pathkit.spec.ts.snap | Bin 771 -> 803 bytes __test__/svg-canvas.spec.ts.snap | Bin 8390 -> 8436 bytes package.json | 30 +- pnpm-lock.yaml | 861 +++++++--------------------- rust-toolchain | 2 +- scripts/__test__/utils.spec.ts.snap | Bin 498 -> 448 bytes scripts/release-skia-binary.js | 16 +- src/ctx.rs | 120 ++-- src/global_fonts.rs | 12 +- src/gradient.rs | 4 +- src/image.rs | 35 +- src/lib.rs | 20 +- src/path.rs | 46 +- 17 files changed, 378 insertions(+), 800 deletions(-) diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index bceae1d7..d277133a 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -93,7 +93,7 @@ jobs: pnpm build -- --target aarch64-linux-android ${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android-strip skia.android-arm64.node - name: stable - ${{ matrix.settings.target }} - node@14 + name: stable - ${{ matrix.settings.target }} - node@16 runs-on: ${{ matrix.settings.host }} steps: @@ -132,19 +132,19 @@ jobs: uses: actions/cache@v2 with: path: ~/.cargo/registry - key: ${{ matrix.settings.target }}-node@14-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: ${{ matrix.settings.target }}-cargo-registry - name: Cache cargo index uses: actions/cache@v2 with: path: ~/.cargo/git - key: ${{ matrix.settings.target }}-node@14-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: ${{ matrix.settings.target }}-cargo-index - name: Cache pnpm store uses: actions/cache@v2 with: path: ~/.pnpm-store - key: npm-cache-${{ matrix.settings.target }}-node@14-${{ hashFiles('pnpm-lock.yaml') }} + key: npm-cache-${{ matrix.settings.target }}-node@16-${{ hashFiles('pnpm-lock.yaml') }} - name: Setup pnpm run: | @@ -155,8 +155,6 @@ jobs: run: ${{ matrix.settings.docker }} env: DOCKER_REGISTRY_URL: ghcr.io - DOCKER_USERNAME: ${{ github.actor }} - DOCKER_PASSWORD: ${{ secrets.GITHUB_TOKEN }} if: ${{ matrix.settings.docker }} - name: Setup toolchain diff --git a/.github/workflows/bench.yml b/.github/workflows/bench.yml index f35d1f79..b4415953 100644 --- a/.github/workflows/bench.yml +++ b/.github/workflows/bench.yml @@ -23,7 +23,7 @@ jobs: - name: Setup node uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 check-latest: true - name: Install @@ -44,19 +44,19 @@ jobs: uses: actions/cache@v2 with: path: ~/.cargo/registry - key: bench-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: bench-cargo-registry - name: Cache cargo index uses: actions/cache@v2 with: path: ~/.cargo/git - key: bench-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: bench-cargo-index - name: Cache pnpm store uses: actions/cache@v2 with: path: ~/.pnpm-store - key: npm-cache-test-linux-x64-gnu-${{ matrix.node }}-${{ hashFiles('pnpm-lock.yaml') }} + key: npm-cache-bench-linux-x64-gnu - name: Setup pnpm run: | diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index db1da6b1..e8e7dc8f 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -19,7 +19,7 @@ jobs: - name: Setup node uses: actions/setup-node@v2 with: - node-version: 14 + node-version: 16 check-latest: true - name: Install nasm @@ -41,19 +41,19 @@ jobs: uses: actions/cache@v2 with: path: ~/.cargo/registry - key: lint-cargo-registry-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: lint-cargo-registry - name: Cache cargo index uses: actions/cache@v2 with: path: ~/.cargo/git - key: lint-cargo-index-trimmed-${{ hashFiles('**/Cargo.lock') }} + key: lint-cargo-index - name: Cache pnpm store uses: actions/cache@v2 with: path: ~/.pnpm-store - key: npm-cache-test-linux-x64-gnu-${{ matrix.node }}-${{ hashFiles('pnpm-lock.yaml') }} + key: npm-cache-lint-linux-x64-gnu - name: Setup pnpm run: | diff --git a/Cargo.toml b/Cargo.toml index d41d72a2..bbffc708 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] authors = ["LongYinan "] -edition = "2018" +edition = "2021" name = "canvas" version = "0.1.0" @@ -11,8 +11,8 @@ crate-type = ["cdylib"] anyhow = "1" base64 = "0.13" cssparser = "0.29" -napi = {version = "1", features = ["serde-json"]} -napi-derive = "1" +napi = {version = "2", default-features = false, features = ["napi3", "serde-json", "compat-mode"]} +napi-derive = {version = "2", default-features = false, features = ["compat-mode"]} nom = "7" once_cell = "1" ravif = "0.8" diff --git a/__test__/pathkit.spec.ts.snap b/__test__/pathkit.spec.ts.snap index 77d0f8c93bebeb79d73cf4d21662d1667392f0d3..93ebc6ffbd06076f0bbfe475d0d426253d0737e0 100644 GIT binary patch literal 803 zcmV+;1Kj*URzVx#sE=5^@>j*jWH`=v=(l%poFZm zx}I-wG9QZw00000000AJRLyeJKnyNWhBG&g9^WyN_D8!jO%HH22X4SEC28YnXgZB) zdxaO^4VZx^;|+KPJ}r*pl+4(Uq;IwQ`J|ucXY0+U%k8&c%f9Q^%lj8^HdnXHo4(ri zH=E04)o-fndB3Wp+g{DDx2sLR{rYpUnD_G!$A6w2Jv*}Bqo+sDAOAi++1_4Mcip02 z&1xU&YPIYxR{gA&R9Cm%^6vHKepXXOl@AqkrzgepdADBA>g(?6vaS}h`Yop>M4nZ2e^QInI)Q4HWTXHzgG?+qb}3#dt6 zVkijKU==N-A+4qS_h_BhFc3NP=057iO_qkc*6C722OO zl~dwLBQVmWsCG5sDsKf76ew7JWXXz(fg=8ZjfFpC3Q)lPQ=rQF0L@PL&?Ql6?079V zDV3s+p|O$2O~YsOuvBGCk!WNifsrrsj=9=AvaTcAMP|~X4)1I?7fEcMgtD#6z z(j0gXg-WUMFd0xpDV-f=2a13c_tOQ17v#4aKgdqfIGqqd9~p-iG6O#jH)OIbcEkT* z^?byNdSyEbAFQ_1VMi|do9^>}>+t=LgKhZzXu1uVXul4NaIg=dvFC6jo~^$uhmDA3 hfTy)DwRw2u&<-zZUk}*pyUVW zsi=Ih3oI>!#lGt zkN*6)*>{HrH+HtF_tS3ETx+gZ)YfiuYx{Gv_u>4wy_g@K&88D3nzXZ{`SI**FwW;k z7mwdvPAAk-3y)uu{k_u{XS4S8{N!Xhd3o~jXwn`|C(oD^VeS1%eHm^=`{73Yz2UY% z;d+j2_dOjRsAPYwx?elv>Y}cSle|$|)E2(A%1-BR-wc)It|TD1iz!CysXkL`xzs>! zod(s=igkoPy+{YNbY#qZFo)|h7-K~*UzSw;i|hxYU5VLX2eV`??5vhyOHqj)x0I^Q zlEvf61SW@A)Wd4Vut|-whofaM*OeSf5(fk;#T`sJMn{O@0P1p-q!q!Y?l6l{izCQ< zEFBsOiW(zoSAiqNEQ%b_i-fI(LWvGAZvu`W8iE5-sE5Q%q!po(szXezrif?(j*uyl zI3l>dN#mK-A?cw=aS*=iPMaV{t%#%nFcUkcT?B$6dyq|3?tXu?s^ z2@?>c-XD3hV&b5LKTu=U54i&p2>%^m**4G|gx6CN)xj>0STxA zfkV;aYP;Zwg8mlk2Rle!ZYNC0N0!SAn}J_0H*E4Q7R$f!>Dm0;{R3@Nazn=j000ZO BZ5sdp diff --git a/__test__/svg-canvas.spec.ts.snap b/__test__/svg-canvas.spec.ts.snap index 1e097bf4c86be98e96ea3c4113d431a8f2ba129d..52f43238d7ab9e3266179f3cf05eb136c91d4b89 100644 GIT binary patch literal 8436 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 literal 8390 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 VW>lNKQsECzM!(L>%^5v;@_(cQ%K88R diff --git a/package.json b/package.json index f869fd95..2fbab32e 100644 --- a/package.json +++ b/package.json @@ -64,34 +64,34 @@ "@jimp/custom": "^0.16.1", "@jimp/jpeg": "^0.16.1", "@jimp/png": "^0.16.1", - "@napi-rs/cli": "^1.3.5", + "@napi-rs/cli": "^2.4.2", "@octokit/rest": "^18.12.0", - "@swc-node/register": "^1.4.0", + "@swc-node/register": "^1.4.2", "@types/lodash": "^4.14.178", - "@typescript-eslint/eslint-plugin": "^5.6.0", - "@typescript-eslint/parser": "^5.6.0", - "ava": "^3.15.0", + "@typescript-eslint/eslint-plugin": "^5.10.2", + "@typescript-eslint/parser": "^5.10.2", + "ava": "^4.0.1", "benny": "^3.7.1", - "canvas": "^2.8.0", + "canvas": "^2.9.0", "canvaskit-wasm": "^0.33.0", - "chalk": "4", - "conventional-changelog-cli": "^2.1.1", - "echarts": "^5.2.2", - "eslint": "^8.4.1", + "colorette": "^2.0.16", + "conventional-changelog-cli": "^2.2.2", + "echarts": "^5.3.0", + "eslint": "^8.8.0", "eslint-config-prettier": "^8.3.0", - "eslint-plugin-import": "^2.25.3", + "eslint-plugin-import": "^2.25.4", "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-sonarjs": "^0.11.0", "husky": "^7.0.4", - "lint-staged": "^12.1.2", + "lint-staged": "^12.3.3", "lodash": "^4.17.21", "npm-run-all": "^4.1.5", "pinst": "^2.1.6", "png.js": "^0.2.1", "prettier": "^2.5.1", "putasset": "^5.0.3", - "skia-canvas": "^0.9.27", - "typescript": "^4.5.3" + "skia-canvas": "^0.9.28", + "typescript": "^4.5.5" }, "lint-staged": { "*.@(js|ts|tsx|yml|yaml|md|json)": [ @@ -108,6 +108,8 @@ "extensions": [ "ts" ], + "workerThreads": false, + "cache": false, "timeout": "3m", "environmentVariables": { "SWC_NODE_PROJECT": "./tsconfig.json", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9e3b40ce..bd7773c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,51 +5,51 @@ specifiers: '@jimp/custom': ^0.16.1 '@jimp/jpeg': ^0.16.1 '@jimp/png': ^0.16.1 - '@napi-rs/cli': ^1.3.5 + '@napi-rs/cli': ^2.4.2 '@octokit/rest': ^18.12.0 - '@swc-node/register': ^1.4.0 + '@swc-node/register': ^1.4.2 '@types/lodash': ^4.14.178 - '@typescript-eslint/eslint-plugin': ^5.6.0 - '@typescript-eslint/parser': ^5.6.0 - ava: ^3.15.0 + '@typescript-eslint/eslint-plugin': ^5.10.2 + '@typescript-eslint/parser': ^5.10.2 + ava: ^4.0.1 benny: ^3.7.1 - canvas: ^2.8.0 + canvas: ^2.9.0 canvaskit-wasm: ^0.33.0 - chalk: '4' - conventional-changelog-cli: ^2.1.1 - echarts: ^5.2.2 - eslint: ^8.4.1 + colorette: ^2.0.16 + conventional-changelog-cli: ^2.2.2 + echarts: ^5.3.0 + eslint: ^8.8.0 eslint-config-prettier: ^8.3.0 - eslint-plugin-import: ^2.25.3 + eslint-plugin-import: ^2.25.4 eslint-plugin-prettier: ^4.0.0 eslint-plugin-sonarjs: ^0.11.0 husky: ^7.0.4 - lint-staged: ^12.1.2 + lint-staged: ^12.3.3 lodash: ^4.17.21 npm-run-all: ^4.1.5 pinst: ^2.1.6 png.js: ^0.2.1 prettier: ^2.5.1 putasset: ^5.0.3 - skia-canvas: ^0.9.27 - typescript: ^4.5.3 + skia-canvas: ^0.9.28 + typescript: ^4.5.5 devDependencies: '@jimp/core': 0.16.1 '@jimp/custom': 0.16.1 '@jimp/jpeg': 0.16.1_@jimp+custom@0.16.1 '@jimp/png': 0.16.1_@jimp+custom@0.16.1 - '@napi-rs/cli': 1.3.5 + '@napi-rs/cli': 2.4.2 '@octokit/rest': 18.12.0 '@swc-node/register': 1.4.2 '@types/lodash': 4.14.178 '@typescript-eslint/eslint-plugin': 5.10.2_2595c2126aec4d4b6e944b931dabb4c2 '@typescript-eslint/parser': 5.10.2_eslint@8.8.0+typescript@4.5.5 - ava: 3.15.0 + ava: 4.0.1 benny: 3.7.1 canvas: 2.9.0 canvaskit-wasm: 0.33.0 - chalk: 4.1.2 + colorette: 2.0.16 conventional-changelog-cli: 2.2.2 echarts: 5.3.0 eslint: 8.8.0 @@ -58,7 +58,7 @@ devDependencies: eslint-plugin-prettier: 4.0.0_43197c8d12d1d439034cfcf65e1c48c2 eslint-plugin-sonarjs: 0.11.0_eslint@8.8.0 husky: 7.0.4 - lint-staged: 12.3.2 + lint-staged: 12.3.3 lodash: 4.17.21 npm-run-all: 4.1.5 pinst: 2.1.6 @@ -127,13 +127,6 @@ packages: regenerator-runtime: 0.13.9 dev: true - /@concordance/react/2.0.0: - resolution: {integrity: sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==} - engines: {node: '>=6.12.3 <7 || >=8.9.4 <9 || >=10.0.0'} - dependencies: - arrify: 1.0.1 - dev: true - /@eslint/eslintrc/1.0.5: resolution: {integrity: sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -241,12 +234,10 @@ packages: - supports-color dev: true - /@napi-rs/cli/1.3.5: - resolution: {integrity: sha512-Z0KZIciemioYODTyO908v2AtL8Zg4sohQDD+dyHeHmOiOfaez/y/xQ8XnpOHc2W5fRidKUW+MVWyTtpLTbKsqw==} + /@napi-rs/cli/2.4.2: + resolution: {integrity: sha512-+yCOuPqernvD8BMphbadF87ElaJ0rjanOZrbnauaEdR07YyoalGw3FTk15HHyflIwQKlYd69gkG5EM4WFkICKw==} engines: {node: '>= 10'} hasBin: true - dependencies: - inquirer: 8.2.0 dev: true /@nodelib/fs.scandir/2.1.5: @@ -437,11 +428,6 @@ packages: '@octokit/openapi-types': 11.2.0 dev: true - /@sindresorhus/is/0.14.0: - resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} - engines: {node: '>=6'} - dev: true - /@swc-node/core/1.8.2: resolution: {integrity: sha512-IoJ7tGHQ6JOMSmFe4VhP64uLmFKMNasS0QEgUrLFQ0h/dTvpQMynnoGBEJoPL6LfsebZ/q4uKqbpWrth6/yrAA==} engines: {node: '>= 10'} @@ -605,13 +591,6 @@ packages: '@swc/core-win32-x64-msvc': 1.2.135 dev: true - /@szmarczak/http-timer/1.1.2: - resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} - engines: {node: '>=6'} - dependencies: - defer-to-connect: 1.1.3 - dev: true - /@types/json-schema/7.0.9: resolution: {integrity: sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==} dev: true @@ -814,6 +793,14 @@ packages: indent-string: 4.0.0 dev: true + /aggregate-error/4.0.0: + resolution: {integrity: sha512-8DGp7zUt1E9k0NE2q4jlXHk+V3ORErmwolEdRz9iV+LKJ40WhMHh92cxAvhqV2I+zEn/gotIoqoMs0NjF3xofg==} + engines: {node: '>=12'} + dependencies: + clean-stack: 4.1.0 + indent-string: 5.0.0 + dev: true + /ajv/6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -823,12 +810,6 @@ packages: uri-js: 4.4.1 dev: true - /ansi-align/3.0.1: - resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} - dependencies: - string-width: 4.2.3 - dev: true - /ansi-escapes/4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} @@ -860,11 +841,6 @@ packages: color-convert: 2.0.1 dev: true - /ansi-styles/5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - dev: true - /ansi-styles/6.1.0: resolution: {integrity: sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==} engines: {node: '>=12'} @@ -929,6 +905,11 @@ packages: engines: {node: '>=8'} dev: true + /array-union/3.0.1: + resolution: {integrity: sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==} + engines: {node: '>=12'} + dev: true + /array.prototype.flat/1.2.5: resolution: {integrity: sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==} engines: {node: '>= 0.4'} @@ -953,72 +934,71 @@ packages: engines: {node: '>=8'} dev: true + /arrify/3.0.0: + resolution: {integrity: sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==} + engines: {node: '>=12'} + dev: true + /astral-regex/2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} dev: true - /ava/3.15.0: - resolution: {integrity: sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==} - engines: {node: '>=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15'} + /ava/4.0.1: + resolution: {integrity: sha512-+12A/JDWyShBCZAKISEEPyM2dwkUrrAfPILqXi4LI4Aa58d92PzjY829hmuoSeACPNqrn2Wlbnja8c/n7bKV6Q==} + engines: {node: '>=12.22 <13 || >=14.17 <15 || >=16.4 <17 || >=17'} hasBin: true + peerDependencies: + '@ava/typescript': '*' + peerDependenciesMeta: + '@ava/typescript': + optional: true dependencies: - '@concordance/react': 2.0.0 acorn: 8.7.0 acorn-walk: 8.2.0 - ansi-styles: 5.2.0 + ansi-styles: 6.1.0 arrgv: 1.0.2 - arrify: 2.0.1 - callsites: 3.1.0 - chalk: 4.1.2 + arrify: 3.0.0 + callsites: 4.0.0 + cbor: 8.1.0 + chalk: 5.0.0 chokidar: 3.5.3 chunkd: 2.0.1 - ci-info: 2.0.0 + ci-info: 3.3.0 ci-parallel-vars: 1.0.1 clean-yaml-object: 0.1.0 - cli-cursor: 3.1.0 - cli-truncate: 2.1.0 + cli-truncate: 3.1.0 code-excerpt: 3.0.0 common-path-prefix: 3.0.0 concordance: 5.0.4 - convert-source-map: 1.8.0 currently-unhandled: 0.4.1 debug: 4.3.3 del: 6.0.0 - emittery: 0.8.1 - equal-length: 1.0.1 - figures: 3.2.0 - globby: 11.1.0 + emittery: 0.10.1 + figures: 4.0.0 + globby: 12.2.0 ignore-by-default: 2.0.0 - import-local: 3.1.0 - indent-string: 4.0.0 + indent-string: 5.0.0 is-error: 2.2.2 is-plain-object: 5.0.0 is-promise: 4.0.0 - lodash: 4.17.21 - matcher: 3.0.0 - md5-hex: 3.0.1 - mem: 8.1.1 + matcher: 5.0.0 + mem: 9.0.2 ms: 2.1.3 - ora: 5.4.1 - p-event: 4.2.0 - p-map: 4.0.0 + p-event: 5.0.1 + p-map: 5.3.0 picomatch: 2.3.1 - pkg-conf: 3.1.0 - plur: 4.0.0 + pkg-conf: 4.0.0 + plur: 5.1.0 pretty-ms: 7.0.1 - read-pkg: 5.2.0 resolve-cwd: 3.0.0 slash: 3.0.0 - source-map-support: 0.5.21 stack-utils: 2.0.5 - strip-ansi: 6.0.1 + strip-ansi: 7.0.1 supertap: 2.0.0 temp-dir: 2.0.0 - trim-off-newlines: 1.0.3 - update-notifier: 5.1.0 write-file-atomic: 3.0.3 - yargs: 16.2.0 + yargs: 17.3.1 transitivePeerDependencies: - supports-color dev: true @@ -1062,32 +1042,10 @@ packages: engines: {node: '>=8'} dev: true - /bl/4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.0 - dev: true - /blueimp-md5/2.19.0: resolution: {integrity: sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==} dev: true - /boxen/5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 - dev: true - /brace-expansion/1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -1118,19 +1076,6 @@ packages: ieee754: 1.2.1 dev: true - /cacheable-request/6.1.0: - resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} - engines: {node: '>=8'} - dependencies: - clone-response: 1.0.2 - get-stream: 5.2.0 - http-cache-semantics: 4.1.0 - keyv: 3.1.0 - lowercase-keys: 2.0.0 - normalize-url: 4.5.1 - responselike: 1.0.2 - dev: true - /call-bind/1.0.2: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: @@ -1143,6 +1088,11 @@ packages: engines: {node: '>=6'} dev: true + /callsites/4.0.0: + resolution: {integrity: sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==} + engines: {node: '>=12.20'} + dev: true + /camelcase-keys/6.2.2: resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} engines: {node: '>=8'} @@ -1157,11 +1107,6 @@ packages: engines: {node: '>=6'} dev: true - /camelcase/6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - dev: true - /canvas/2.9.0: resolution: {integrity: sha512-0l93g7uxp7rMyr7H+XRQ28A3ud0dKIUTIEkUe1Dxh4rjUYN7B93+SjC3r1PDKA18xcQN87OFGgUnyw7LSgNLSQ==} engines: {node: '>=6'} @@ -1184,6 +1129,13 @@ packages: hasBin: true dev: true + /cbor/8.1.0: + resolution: {integrity: sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==} + engines: {node: '>=12.19'} + dependencies: + nofilter: 3.1.0 + dev: true + /chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -1201,8 +1153,9 @@ packages: supports-color: 7.2.0 dev: true - /chardet/0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + /chalk/5.0.0: + resolution: {integrity: sha512-/duVOqst+luxCQRKEo4bNxinsOQtMP80ZYm7mMqzuh5PociNL0PvmHFvREJ9ueYL2TxlHjBcmLCdmocx9Vg+IQ==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true /checkup/1.3.0: @@ -1234,8 +1187,8 @@ packages: resolution: {integrity: sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==} dev: true - /ci-info/2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + /ci-info/3.3.0: + resolution: {integrity: sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==} dev: true /ci-parallel-vars/1.0.1: @@ -1247,16 +1200,18 @@ packages: engines: {node: '>=6'} dev: true + /clean-stack/4.1.0: + resolution: {integrity: sha512-dxXQYI7mfQVcaF12s6sjNFoZ6ZPDQuBBLp3QJ5156k9EvUFClUoZ11fo8HnLQO241DDVntHEug8MOuFO5PSfRg==} + engines: {node: '>=12'} + dependencies: + escape-string-regexp: 5.0.0 + dev: true + /clean-yaml-object/0.1.0: resolution: {integrity: sha1-Y/sRDcLOGoTcIfbZM0h20BCui2g=} engines: {node: '>=0.10.0'} dev: true - /cli-boxes/2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - dev: true - /cli-cursor/3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} @@ -1264,11 +1219,6 @@ packages: restore-cursor: 3.1.0 dev: true - /cli-spinners/2.6.1: - resolution: {integrity: sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==} - engines: {node: '>=6'} - dev: true - /cli-truncate/2.1.0: resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} engines: {node: '>=8'} @@ -1285,11 +1235,6 @@ packages: string-width: 5.1.0 dev: true - /cli-width/3.0.0: - resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} - engines: {node: '>= 10'} - dev: true - /cliui/7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} dependencies: @@ -1298,17 +1243,6 @@ packages: wrap-ansi: 7.0.0 dev: true - /clone-response/1.0.2: - resolution: {integrity: sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=} - dependencies: - mimic-response: 1.0.1 - dev: true - - /clone/1.0.4: - resolution: {integrity: sha1-2jCcwmPfFZlMaIypAheco8fNfH4=} - engines: {node: '>=0.8'} - dev: true - /code-excerpt/3.0.0: resolution: {integrity: sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==} engines: {node: '>=10'} @@ -1390,18 +1324,6 @@ packages: well-known-symbols: 2.0.0 dev: true - /configstore/5.0.1: - resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} - engines: {node: '>=8'} - dependencies: - dot-prop: 5.3.0 - graceful-fs: 4.2.9 - make-dir: 3.1.0 - unique-string: 2.0.0 - write-file-atomic: 3.0.3 - xdg-basedir: 4.0.0 - dev: true - /console-control-strings/1.1.0: resolution: {integrity: sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=} dev: true @@ -1564,12 +1486,6 @@ packages: through2: 4.0.2 dev: true - /convert-source-map/1.8.0: - resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} - dependencies: - safe-buffer: 5.1.2 - dev: true - /convert-to-spaces/1.0.2: resolution: {integrity: sha1-fj5Iu+bZl7FBfdyihoIEtNPYVxU=} engines: {node: '>= 4'} @@ -1599,11 +1515,6 @@ packages: which: 2.0.2 dev: true - /crypto-random-string/2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} - dev: true - /currently-unhandled/0.4.1: resolution: {integrity: sha1-mI3zP+qxke95mmE2nddsF635V+o=} engines: {node: '>=0.10.0'} @@ -1677,13 +1588,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /decompress-response/3.3.0: - resolution: {integrity: sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=} - engines: {node: '>=4'} - dependencies: - mimic-response: 1.0.1 - dev: true - /decompress-response/4.2.1: resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==} engines: {node: '>=8'} @@ -1698,25 +1602,10 @@ packages: mimic-response: 3.1.0 dev: true - /deep-extend/0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - dev: true - /deep-is/0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true - /defaults/1.0.3: - resolution: {integrity: sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=} - dependencies: - clone: 1.0.4 - dev: true - - /defer-to-connect/1.1.3: - resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} - dev: true - /define-properties/1.1.3: resolution: {integrity: sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==} engines: {node: '>= 0.4'} @@ -1784,10 +1673,6 @@ packages: is-obj: 2.0.0 dev: true - /duplexer3/0.1.4: - resolution: {integrity: sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=} - dev: true - /eastasianwidth/0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true @@ -1799,9 +1684,9 @@ packages: zrender: 5.3.0 dev: true - /emittery/0.8.1: - resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==} - engines: {node: '>=10'} + /emittery/0.10.1: + resolution: {integrity: sha512-OBSS9uVXbpgqEGq2V5VnpfCu9vSnfiR9eYVJmxFYToNIcWRHkM4BAFbJe/PWjf/pQdEL7OPxd2jOW/bJiyX7gg==} + engines: {node: '>=12'} dev: true /emoji-regex/8.0.0: @@ -1818,11 +1703,6 @@ packages: once: 1.4.0 dev: true - /equal-length/1.0.1: - resolution: {integrity: sha1-IcoRLUirJLTh5//A5TOdMf38J0w=} - engines: {node: '>=4'} - dev: true - /error-ex/1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: @@ -1869,11 +1749,6 @@ packages: engines: {node: '>=6'} dev: true - /escape-goat/2.1.1: - resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} - engines: {node: '>=8'} - dev: true - /escape-string-regexp/1.0.5: resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} engines: {node: '>=0.8.0'} @@ -1889,6 +1764,11 @@ packages: engines: {node: '>=10'} dev: true + /escape-string-regexp/5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + dev: true + /eslint-config-prettier/8.3.0_eslint@8.8.0: resolution: {integrity: sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==} hasBin: true @@ -2117,15 +1997,6 @@ packages: resolution: {integrity: sha1-WKnS1ywCwfbwKg70qRZicrd2CSI=} dev: true - /external-editor/3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} - dependencies: - chardet: 0.7.0 - iconv-lite: 0.4.24 - tmp: 0.0.33 - dev: true - /fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -2159,11 +2030,12 @@ packages: reusify: 1.0.4 dev: true - /figures/3.2.0: - resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} - engines: {node: '>=8'} + /figures/4.0.0: + resolution: {integrity: sha512-VnYcWq6H6F0qDN0QnorznBr0abEovifzUokmnezpKZBUbDmbLAt7LMryOp1TKFVxLxyNYkxEkCEADZR58U9oSw==} + engines: {node: '>=12'} dependencies: - escape-string-regexp: 1.0.5 + escape-string-regexp: 5.0.0 + is-unicode-supported: 1.1.0 dev: true /file-entry-cache/6.0.1: @@ -2192,13 +2064,6 @@ packages: locate-path: 2.0.0 dev: true - /find-up/3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - dependencies: - locate-path: 3.0.0 - dev: true - /find-up/4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -2207,6 +2072,14 @@ packages: path-exists: 4.0.0 dev: true + /find-up/6.2.0: + resolution: {integrity: sha512-yWHzMzXCaFoABSnFTCPKNFlYoq4mSga9QLRRKOCLSJ33hSkzROB14ITbAWW0QDQDyuzsPQ33S1DsOWQb/oW1yA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + locate-path: 7.0.0 + path-exists: 5.0.0 + dev: true + /flat-cache/3.0.4: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -2305,13 +2178,6 @@ packages: pump: 3.0.0 dev: true - /get-stream/5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - dependencies: - pump: 3.0.0 - dev: true - /get-stream/6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -2385,13 +2251,6 @@ packages: path-is-absolute: 1.0.1 dev: true - /global-dirs/3.0.0: - resolution: {integrity: sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==} - engines: {node: '>=10'} - dependencies: - ini: 2.0.0 - dev: true - /global/4.4.0: resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} dependencies: @@ -2418,21 +2277,16 @@ packages: slash: 3.0.0 dev: true - /got/9.6.0: - resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} - engines: {node: '>=8.6'} + /globby/12.2.0: + resolution: {integrity: sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - '@sindresorhus/is': 0.14.0 - '@szmarczak/http-timer': 1.1.2 - cacheable-request: 6.1.0 - decompress-response: 3.3.0 - duplexer3: 0.1.4 - get-stream: 4.1.0 - lowercase-keys: 1.0.1 - mimic-response: 1.0.1 - p-cancelable: 1.1.0 - to-readable-stream: 1.0.0 - url-parse-lax: 3.0.0 + array-union: 3.0.1 + dir-glob: 3.0.1 + fast-glob: 3.2.11 + ignore: 5.2.0 + merge2: 1.4.1 + slash: 4.0.0 dev: true /graceful-fs/4.2.9: @@ -2487,11 +2341,6 @@ packages: resolution: {integrity: sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=} dev: true - /has-yarn/2.1.0: - resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} - engines: {node: '>=8'} - dev: true - /has/1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} @@ -2510,10 +2359,6 @@ packages: lru-cache: 6.0.0 dev: true - /http-cache-semantics/4.1.0: - resolution: {integrity: sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==} - dev: true - /https-proxy-agent/5.0.0: resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==} engines: {node: '>= 6'} @@ -2535,13 +2380,6 @@ packages: hasBin: true dev: true - /iconv-lite/0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - dependencies: - safer-buffer: 2.1.2 - dev: true - /ieee754/1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} dev: true @@ -2569,20 +2407,6 @@ packages: resolve-from: 4.0.0 dev: true - /import-lazy/2.1.0: - resolution: {integrity: sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=} - engines: {node: '>=4'} - dev: true - - /import-local/3.1.0: - resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} - engines: {node: '>=8'} - hasBin: true - dependencies: - pkg-dir: 4.2.0 - resolve-cwd: 3.0.0 - dev: true - /imurmurhash/0.1.4: resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} engines: {node: '>=0.8.19'} @@ -2593,6 +2417,11 @@ packages: engines: {node: '>=8'} dev: true + /indent-string/5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + dev: true + /inflight/1.0.6: resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} dependencies: @@ -2608,31 +2437,6 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: true - /ini/2.0.0: - resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==} - engines: {node: '>=10'} - dev: true - - /inquirer/8.2.0: - resolution: {integrity: sha512-0crLweprevJ02tTuA6ThpoAERAGyVILC4sS74uib58Xf/zSr1/ZWtmm7D5CI+bSQEaA04f0K7idaHpQbSWgiVQ==} - engines: {node: '>=8.0.0'} - dependencies: - ansi-escapes: 4.3.2 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-width: 3.0.0 - external-editor: 3.1.0 - figures: 3.2.0 - lodash: 4.17.21 - mute-stream: 0.0.8 - ora: 5.4.1 - run-async: 2.4.1 - rxjs: 7.5.2 - string-width: 4.2.3 - strip-ansi: 6.0.1 - through: 2.3.8 - dev: true - /internal-slot/1.0.3: resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} engines: {node: '>= 0.4'} @@ -2677,13 +2481,6 @@ packages: engines: {node: '>= 0.4'} dev: true - /is-ci/2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} - hasBin: true - dependencies: - ci-info: 2.0.0 - dev: true - /is-core-module/2.8.1: resolution: {integrity: sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==} dependencies: @@ -2727,29 +2524,11 @@ packages: is-extglob: 2.1.1 dev: true - /is-installed-globally/0.4.0: - resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} - engines: {node: '>=10'} - dependencies: - global-dirs: 3.0.0 - is-path-inside: 3.0.3 - dev: true - - /is-interactive/1.0.0: - resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} - engines: {node: '>=8'} - dev: true - /is-negative-zero/2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} dev: true - /is-npm/5.0.0: - resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} - engines: {node: '>=10'} - dev: true - /is-number-object/1.0.6: resolution: {integrity: sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==} engines: {node: '>= 0.4'} @@ -2838,9 +2617,9 @@ packages: resolution: {integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=} dev: true - /is-unicode-supported/0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} + /is-unicode-supported/1.1.0: + resolution: {integrity: sha512-lDcxivp8TJpLG75/DpatAqNzOpDPSpED8XNtrpBHTdQ2InQ1PbW78jhwSxyxhhu+xbVSast2X38bwj8atwoUQA==} + engines: {node: '>=12'} dev: true /is-weakref/1.0.2: @@ -2849,10 +2628,6 @@ packages: call-bind: 1.0.2 dev: true - /is-yarn-global/0.3.0: - resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} - dev: true - /isarray/1.0.0: resolution: {integrity: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=} dev: true @@ -2893,10 +2668,6 @@ packages: argparse: 2.0.1 dev: true - /json-buffer/3.0.0: - resolution: {integrity: sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=} - dev: true - /json-parse-better-errors/1.0.2: resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} dev: true @@ -2947,12 +2718,6 @@ packages: engines: {'0': node >= 0.2.0} dev: true - /keyv/3.1.0: - resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} - dependencies: - json-buffer: 3.0.0 - dev: true - /kind-of/6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} engines: {node: '>=0.10.0'} @@ -2963,13 +2728,6 @@ packages: engines: {node: '>=6'} dev: true - /latest-version/5.1.0: - resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} - engines: {node: '>=8'} - dependencies: - package-json: 6.5.0 - dev: true - /levn/0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} @@ -2987,8 +2745,8 @@ packages: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lint-staged/12.3.2: - resolution: {integrity: sha512-gtw4Cbj01SuVSfAOXC6ivd/7VKHTj51yj5xV8TgktFmYNMsZzXuSd5/brqJEA93v63wL7R6iDlunMANOechC0A==} + /lint-staged/12.3.3: + resolution: {integrity: sha512-OqcLsqcPOqzvsfkxjeBpZylgJ3SRG1RYqc9LxC6tkt6tNsq1bNVkAixBwX09f6CobcHswzqVOCBpFR1Fck0+ag==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} hasBin: true dependencies: @@ -3051,15 +2809,9 @@ packages: strip-bom: 3.0.0 dev: true - /load-json-file/5.3.0: - resolution: {integrity: sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==} - engines: {node: '>=6'} - dependencies: - graceful-fs: 4.2.9 - parse-json: 4.0.0 - pify: 4.0.1 - strip-bom: 3.0.0 - type-fest: 0.3.1 + /load-json-file/7.0.1: + resolution: {integrity: sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /locate-path/2.0.0: @@ -3070,14 +2822,6 @@ packages: path-exists: 3.0.0 dev: true - /locate-path/3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - dev: true - /locate-path/5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -3085,6 +2829,13 @@ packages: p-locate: 4.1.0 dev: true + /locate-path/7.0.0: + resolution: {integrity: sha512-+cg2yXqDUKfo4hsFxwa3G1cBJeA+gs1vD8FyV9/odWoUlQe/4syxHQ5DPtKjtfm6gnKbZzjCqzX03kXosvZB1w==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-locate: 6.0.0 + dev: true + /lodash.get/4.4.2: resolution: {integrity: sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=} dev: true @@ -3101,14 +2852,6 @@ packages: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: true - /log-symbols/4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} - dependencies: - chalk: 4.1.2 - is-unicode-supported: 0.1.0 - dev: true - /log-update/4.0.0: resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} engines: {node: '>=10'} @@ -3119,16 +2862,6 @@ packages: wrap-ansi: 6.2.0 dev: true - /lowercase-keys/1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} - dev: true - - /lowercase-keys/2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} - dev: true - /lru-cache/6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} @@ -3165,11 +2898,11 @@ packages: engines: {node: '>=8'} dev: true - /matcher/3.0.0: - resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} - engines: {node: '>=10'} + /matcher/5.0.0: + resolution: {integrity: sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - escape-string-regexp: 4.0.0 + escape-string-regexp: 5.0.0 dev: true /md5-hex/3.0.1: @@ -3179,12 +2912,12 @@ packages: blueimp-md5: 2.19.0 dev: true - /mem/8.1.1: - resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==} - engines: {node: '>=10'} + /mem/9.0.2: + resolution: {integrity: sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==} + engines: {node: '>=12.20'} dependencies: map-age-cleaner: 0.1.3 - mimic-fn: 3.1.0 + mimic-fn: 4.0.0 dev: true /memorystream/0.3.1: @@ -3249,14 +2982,9 @@ packages: engines: {node: '>=6'} dev: true - /mimic-fn/3.1.0: - resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} - engines: {node: '>=8'} - dev: true - - /mimic-response/1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} + /mimic-fn/4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} dev: true /mimic-response/2.1.0: @@ -3344,10 +3072,6 @@ packages: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} dev: true - /mute-stream/0.0.8: - resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} - dev: true - /nan/2.15.0: resolution: {integrity: sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==} dev: true @@ -3376,6 +3100,11 @@ packages: whatwg-url: 5.0.0 dev: true + /nofilter/3.1.0: + resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} + engines: {node: '>=12.19'} + dev: true + /nopt/5.0.0: resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} engines: {node: '>=6'} @@ -3408,11 +3137,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /normalize-url/4.5.1: - resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} - engines: {node: '>=8'} - dev: true - /npm-run-all/4.1.5: resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==} engines: {node: '>= 4'} @@ -3510,21 +3234,6 @@ packages: word-wrap: 1.2.3 dev: true - /ora/5.4.1: - resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} - engines: {node: '>=10'} - dependencies: - bl: 4.1.0 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-spinners: 2.6.1 - is-interactive: 1.0.0 - is-unicode-supported: 0.1.0 - log-symbols: 4.1.0 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - dev: true - /os-name/3.1.0: resolution: {integrity: sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==} engines: {node: '>=6'} @@ -3533,26 +3242,16 @@ packages: windows-release: 3.3.3 dev: true - /os-tmpdir/1.0.2: - resolution: {integrity: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=} - engines: {node: '>=0.10.0'} - dev: true - - /p-cancelable/1.1.0: - resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} - engines: {node: '>=6'} - dev: true - /p-defer/1.0.0: resolution: {integrity: sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=} engines: {node: '>=4'} dev: true - /p-event/4.2.0: - resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==} - engines: {node: '>=8'} + /p-event/5.0.1: + resolution: {integrity: sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - p-timeout: 3.2.0 + p-timeout: 5.0.2 dev: true /p-finally/1.0.0: @@ -3574,6 +3273,13 @@ packages: p-try: 2.2.0 dev: true + /p-limit/4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + yocto-queue: 1.0.0 + dev: true + /p-locate/2.0.0: resolution: {integrity: sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=} engines: {node: '>=4'} @@ -3581,13 +3287,6 @@ packages: p-limit: 1.3.0 dev: true - /p-locate/3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - dependencies: - p-limit: 2.3.0 - dev: true - /p-locate/4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -3595,6 +3294,13 @@ packages: p-limit: 2.3.0 dev: true + /p-locate/6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-limit: 4.0.0 + dev: true + /p-map/4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} @@ -3602,11 +3308,16 @@ packages: aggregate-error: 3.1.0 dev: true - /p-timeout/3.2.0: - resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} - engines: {node: '>=8'} + /p-map/5.3.0: + resolution: {integrity: sha512-SRbIQFoLYNezHkqZslqeg963HYUtqOrfMCxjNrFOpJ19WTYuq26rQoOXeX8QQiMLUlLqdYV/7PuDsdYJ7hLE1w==} + engines: {node: '>=12'} dependencies: - p-finally: 1.0.0 + aggregate-error: 4.0.0 + dev: true + + /p-timeout/5.0.2: + resolution: {integrity: sha512-sEmji9Yaq+Tw+STwsGAE56hf7gMy9p0tQfJojIAamB7WHJYJKf1qlsg9jqBWG8q9VCxKPhZaP/AcXwEoBcYQhQ==} + engines: {node: '>=12'} dev: true /p-try/1.0.0: @@ -3619,16 +3330,6 @@ packages: engines: {node: '>=6'} dev: true - /package-json/6.5.0: - resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} - engines: {node: '>=8'} - dependencies: - got: 9.6.0 - registry-auth-token: 4.2.1 - registry-url: 5.1.0 - semver: 6.3.0 - dev: true - /parent-module/1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -3696,6 +3397,11 @@ packages: engines: {node: '>=8'} dev: true + /path-exists/5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /path-is-absolute/1.0.1: resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=} engines: {node: '>=0.10.0'} @@ -3752,11 +3458,6 @@ packages: engines: {node: '>=4'} dev: true - /pify/4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - dev: true - /pinst/2.1.6: resolution: {integrity: sha512-B4dYmf6nEXg1NpDSB+orYWvKa5Kfmz5KzWC29U59dpVM4S/+xp0ak/JMEsw04UQTNNKps7klu0BUalr343Gt9g==} engines: {node: '>=10.0.0'} @@ -3777,28 +3478,21 @@ packages: pngjs: 3.4.0 dev: true - /pkg-conf/3.1.0: - resolution: {integrity: sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==} - engines: {node: '>=6'} - dependencies: - find-up: 3.0.0 - load-json-file: 5.3.0 - dev: true - - /pkg-dir/4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} + /pkg-conf/4.0.0: + resolution: {integrity: sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - find-up: 4.1.0 + find-up: 6.2.0 + load-json-file: 7.0.1 dev: true /platform/1.3.6: resolution: {integrity: sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==} dev: true - /plur/4.0.0: - resolution: {integrity: sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==} - engines: {node: '>=10'} + /plur/5.1.0: + resolution: {integrity: sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: irregular-plurals: 3.3.0 dev: true @@ -3817,11 +3511,6 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /prepend-http/2.0.0: - resolution: {integrity: sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=} - engines: {node: '>=4'} - dev: true - /prettier-linter-helpers/1.0.0: resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} engines: {node: '>=6.0.0'} @@ -3863,13 +3552,6 @@ packages: engines: {node: '>=6'} dev: true - /pupa/2.1.1: - resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} - engines: {node: '>=8'} - dependencies: - escape-goat: 2.1.1 - dev: true - /putasset/5.0.3: resolution: {integrity: sha512-LGRp0SLOC4PDP/BawMaG3/hw6iKgQPRXcBF7WIzx2XTYwHVk2sS3gpvZqz6bf9GhKMal2phs+DF7J6eIAXEL4w==} engines: {node: '>=10'} @@ -3900,16 +3582,6 @@ packages: engines: {node: '>=8'} dev: true - /rc/1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.5 - strip-json-comments: 2.0.1 - dev: true - /read-pkg-up/3.0.0: resolution: {integrity: sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=} engines: {node: '>=4'} @@ -3999,20 +3671,6 @@ packages: engines: {node: '>=8'} dev: true - /registry-auth-token/4.2.1: - resolution: {integrity: sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==} - engines: {node: '>=6.0.0'} - dependencies: - rc: 1.2.8 - dev: true - - /registry-url/5.1.0: - resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} - engines: {node: '>=8'} - dependencies: - rc: 1.2.8 - dev: true - /require-directory/2.1.1: resolution: {integrity: sha1-jGStX9MNqxyXbiNE/+f3kqam30I=} engines: {node: '>=0.10.0'} @@ -4044,12 +3702,6 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /responselike/1.0.2: - resolution: {integrity: sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=} - dependencies: - lowercase-keys: 1.0.1 - dev: true - /restore-cursor/3.1.0: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} engines: {node: '>=8'} @@ -4074,11 +3726,6 @@ packages: glob: 7.2.0 dev: true - /run-async/2.4.1: - resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} - engines: {node: '>=0.12.0'} - dev: true - /run-parallel/1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -4099,21 +3746,10 @@ packages: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} dev: true - /safer-buffer/2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - dev: true - /sax/1.2.4: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} dev: true - /semver-diff/3.1.1: - resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.0 - dev: true - /semver/5.7.1: resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} hasBin: true @@ -4223,6 +3859,11 @@ packages: engines: {node: '>=8'} dev: true + /slash/4.0.0: + resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} + engines: {node: '>=12'} + dev: true + /slice-ansi/3.0.0: resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} engines: {node: '>=8'} @@ -4406,11 +4047,6 @@ packages: min-indent: 1.0.1 dev: true - /strip-json-comments/2.0.1: - resolution: {integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo=} - engines: {node: '>=0.10.0'} - dev: true - /strip-json-comments/3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -4511,18 +4147,6 @@ packages: resolution: {integrity: sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==} dev: true - /tmp/0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - dependencies: - os-tmpdir: 1.0.2 - dev: true - - /to-readable-stream/1.0.0: - resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} - engines: {node: '>=6'} - dev: true - /to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -4539,11 +4163,6 @@ packages: engines: {node: '>=8'} dev: true - /trim-off-newlines/1.0.3: - resolution: {integrity: sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==} - engines: {node: '>=0.10.0'} - dev: true - /try-catch/3.0.0: resolution: {integrity: sha512-3uAqUnoemzca1ENvZ72EVimR+E8lqBbzwZ9v4CEbLjkaV3Q+FtdmPUt7jRtoSoTiYjyIMxEkf6YgUpe/voJ1ng==} engines: {node: '>=6'} @@ -4612,11 +4231,6 @@ packages: engines: {node: '>=10'} dev: true - /type-fest/0.3.1: - resolution: {integrity: sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==} - engines: {node: '>=6'} - dev: true - /type-fest/0.6.0: resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} engines: {node: '>=8'} @@ -4656,13 +4270,6 @@ packages: which-boxed-primitive: 1.0.2 dev: true - /unique-string/2.0.0: - resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} - engines: {node: '>=8'} - dependencies: - crypto-random-string: 2.0.0 - dev: true - /universal-user-agent/5.0.0: resolution: {integrity: sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==} dependencies: @@ -4678,39 +4285,12 @@ packages: engines: {node: '>= 10.0.0'} dev: true - /update-notifier/5.1.0: - resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} - engines: {node: '>=10'} - dependencies: - boxen: 5.1.2 - chalk: 4.1.2 - configstore: 5.0.1 - has-yarn: 2.1.0 - import-lazy: 2.1.0 - is-ci: 2.0.0 - is-installed-globally: 0.4.0 - is-npm: 5.0.0 - is-yarn-global: 0.3.0 - latest-version: 5.1.0 - pupa: 2.1.1 - semver: 7.3.5 - semver-diff: 3.1.1 - xdg-basedir: 4.0.0 - dev: true - /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.1.1 dev: true - /url-parse-lax/3.0.0: - resolution: {integrity: sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=} - engines: {node: '>=4'} - dependencies: - prepend-http: 2.0.0 - dev: true - /util-deprecate/1.0.2: resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=} dev: true @@ -4732,12 +4312,6 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /wcwidth/1.0.1: - resolution: {integrity: sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=} - dependencies: - defaults: 1.0.3 - dev: true - /webidl-conversions/3.0.1: resolution: {integrity: sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=} dev: true @@ -4785,13 +4359,6 @@ packages: string-width: 4.2.3 dev: true - /widest-line/3.1.0: - resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} - engines: {node: '>=8'} - dependencies: - string-width: 4.2.3 - dev: true - /windows-release/3.3.3: resolution: {integrity: sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg==} engines: {node: '>=6'} @@ -4839,11 +4406,6 @@ packages: typedarray-to-buffer: 3.1.5 dev: true - /xdg-basedir/4.0.0: - resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} - engines: {node: '>=8'} - dev: true - /xhr/2.6.0: resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==} dependencies: @@ -4902,6 +4464,11 @@ packages: engines: {node: '>=10'} dev: true + /yargs-parser/21.0.0: + resolution: {integrity: sha512-z9kApYUOCwoeZ78rfRYYWdiU/iNL6mwwYlkkZfJoyMR1xps+NEBX5X7XmRpxkZHhXJ6+Ey00IwKxBBSW9FIjyA==} + engines: {node: '>=12'} + dev: true + /yargs/16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} @@ -4915,6 +4482,24 @@ packages: yargs-parser: 20.2.9 dev: true + /yargs/17.3.1: + resolution: {integrity: sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==} + engines: {node: '>=12'} + dependencies: + cliui: 7.0.4 + escalade: 3.1.1 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.0.0 + dev: true + + /yocto-queue/1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: true + /zrender/5.3.0: resolution: {integrity: sha512-Ln2QB5uqI1ftNYMtCRxd+XDq6MOttLgam2tmhKAVA+j0ko47UT+VNlDvKTkqe4K2sJhBvB0EhYNLebqlCTjatQ==} dependencies: diff --git a/rust-toolchain b/rust-toolchain index d56abbb0..be30c5d6 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -1 +1 @@ -nightly-2021-12-05 \ No newline at end of file +nightly-2022-02-06 diff --git a/scripts/__test__/utils.spec.ts.snap b/scripts/__test__/utils.spec.ts.snap index 7e18de937ef96e15bd84d963a132229a14ed22ad..28b043a8061a29adba6c6a146b4ba08cea74a570 100644 GIT binary patch literal 448 zcmV;x0YCmhRzVM)adMu^!ar=V=i}WiF!g$+sYiyd- zCf(}UgP&u5Qrj#YrZWn)*jwS(_j#XR(=H|+<$fgIKLSZ44Uz;>5jbi883>dHGyo9@ zg!!CN4j2sv10*5>eFf|1!;5|_X1+^_r%5LUX-}mQ&m_8&Ac?Q;zr>G?_^xfZX-Wyp z@_#Tbz-k}GQ~OL==7J{m4ATCZseXEuud7<7Yt@&fDu%RZ!{RzNCf>HLduaI&P=Xs5QU5vG q##aqE=GUS7VmRdlTkNrccx=U96RVTkSihdP&i@2)GGI~S1^@tP0o6bN literal 498 zcmV{EpEb_11o)w z`ekp-YR#L;3>JL{#bPWFYzxGHKirIQJCmGrdxgu-Q@Z)a%wW+uP<#Z6p93*7Fr+|$ zk(EJ^F(jj;q@dVJUq3ywB%?G*FF8L~->E1c46<`7^YoJw^U4y7^@~z-QWJ|)i}h3T z%ky&b6I1jJ3=H&hGLwq4GZS@lGV@9+bSunEbkp-n^%7BRkkSV!(a$d}(GM<3EXhoU z=|WQ{L6m7RRCI4*QEr(z$d1&+q|A&oGTp5}lBr=-aerc7N>P4hif&?JQF4Zv37IaJ zBGNp{(g@gs^2|JABXE@F7MCUK0qsSxK@!8oVCSMMlOW2l2x=w~NPtj~tYwHcF_g+# oF}JihhfGIH5@%c>Ra~5sSOknwkR4>YRurpI07i5{<`V`00Qf`VTL1t6 diff --git a/scripts/release-skia-binary.js b/scripts/release-skia-binary.js index c3bd22ae..4b7437a9 100644 --- a/scripts/release-skia-binary.js +++ b/scripts/release-skia-binary.js @@ -4,7 +4,7 @@ const { platform } = require('os') const { parse, join } = require('path') const { Octokit } = require('@octokit/rest') -const chalk = require('chalk') +const { green } = require('colorette') const { libPath, TAG, OWNER, REPO } = require('./utils') @@ -29,7 +29,7 @@ async function upload() { const putasset = require('putasset') let assets = [] try { - console.info(chalk.green(`Fetching release by tag: [${TAG}]`)) + console.info(green(`Fetching release by tag: [${TAG}]`)) assets = ( await CLIENT.repos.getReleaseByTag({ repo: REPO, @@ -39,7 +39,7 @@ async function upload() { ).data.assets } catch (e) { if (e.status === 404) { - console.info(chalk.green(`No release tag, creating release tag ${TAG}`)) + console.info(green(`No release tag, creating release tag ${TAG}`)) await CLIENT.repos.createRelease({ repo: REPO, owner: OWNER, @@ -52,13 +52,13 @@ async function upload() { } for (const lib of LIB) { const { copy, binary } = libPath(lib, PLATFORM_NAME, TARGET_TRIPLE) - console.info(chalk.green(`Copy [${binary}] to [${copy}]`)) + console.info(green(`Copy [${binary}] to [${copy}]`)) await fs.copyFile(binary, copy) - console.info(chalk.green(`Uploading [${copy}] to github release: [${TAG}]`)) + console.info(green(`Uploading [${copy}] to github release: [${TAG}]`)) const asset = assets.find(({ name }) => name === parse(copy).base) if (asset) { - console.info(chalk.green(`[${copy}] existed, delete it...`)) + console.info(green(`[${copy}] existed, delete it...`)) await CLIENT.repos.deleteReleaseAsset({ owner: OWNER, repo: REPO, @@ -79,14 +79,14 @@ async function upload() { if (PLATFORM_NAME === 'win32') { const icudtl = assets.find(({ name }) => name === ICU_DAT) if (icudtl) { - console.info(chalk.green(`[${ICU_DAT}] existed, delete it...`)) + console.info(green(`[${ICU_DAT}] existed, delete it...`)) await CLIENT.repos.deleteReleaseAsset({ owner: OWNER, repo: REPO, asset_id: icudtl.id, }) } - console.info(chalk.green(`Uploading [${ICU_DAT}] to github release: [${TAG}]`)) + console.info(green(`Uploading [${ICU_DAT}] to github release: [${TAG}]`)) await putasset(process.env.GITHUB_TOKEN, { owner: OWNER, repo: REPO, diff --git a/src/ctx.rs b/src/ctx.rs index 602fb005..6d6d097f 100644 --- a/src/ctx.rs +++ b/src/ctx.rs @@ -60,181 +60,181 @@ impl Context { context_2d_constructor, &vec![ // properties - Property::new(env, "miterLimit")? + Property::new("miterLimit")? .with_getter(get_miter_limit) .with_setter(set_miter_limit), - Property::new(env, "globalAlpha")? + Property::new("globalAlpha")? .with_getter(get_global_alpha) .with_setter(set_global_alpha), - Property::new(env, "globalCompositeOperation")? + Property::new("globalCompositeOperation")? .with_getter(get_global_composite_operation) .with_setter(set_global_composite_operation), - Property::new(env, "imageSmoothingEnabled")? + Property::new("imageSmoothingEnabled")? .with_getter(get_image_smoothing_enabled) .with_setter(set_image_smoothing_enabled), - Property::new(env, "imageSmoothingQuality")? + Property::new("imageSmoothingQuality")? .with_getter(get_image_smoothing_quality) .with_setter(set_image_smoothing_quality), - Property::new(env, "lineCap")? + Property::new("lineCap")? .with_setter(set_line_cap) .with_getter(get_line_cap), - Property::new(env, "lineDashOffset")? + Property::new("lineDashOffset")? .with_setter(set_line_dash_offset) .with_getter(get_line_dash_offset), - Property::new(env, "lineJoin")? + Property::new("lineJoin")? .with_setter(set_line_join) .with_getter(get_line_join), - Property::new(env, "lineWidth")? + Property::new("lineWidth")? .with_setter(set_line_width) .with_getter(get_line_width), - Property::new(env, "fillStyle")? + Property::new("fillStyle")? .with_setter(set_fill_style) .with_getter(get_fill_style), - Property::new(env, "filter")? + Property::new("filter")? .with_setter(set_filter) .with_getter(get_filter), - Property::new(env, "font")? + Property::new("font")? .with_setter(set_font) .with_getter(get_font), - Property::new(env, "direction")? + Property::new("direction")? .with_setter(set_text_direction) .with_getter(get_text_direction), - Property::new(env, "strokeStyle")? + Property::new("strokeStyle")? .with_setter(set_stroke_style) .with_getter(get_stroke_style), - Property::new(env, "shadowBlur")? + Property::new("shadowBlur")? .with_setter(set_shadow_blur) .with_getter(get_shadow_blur), - Property::new(env, "shadowColor")? + Property::new("shadowColor")? .with_setter(set_shadow_color) .with_getter(get_shadow_color), - Property::new(env, "shadowOffsetX")? + Property::new("shadowOffsetX")? .with_setter(set_shadow_offset_x) .with_getter(get_shadow_offset_x), - Property::new(env, "shadowOffsetY")? + Property::new("shadowOffsetY")? .with_setter(set_shadow_offset_y) .with_getter(get_shadow_offset_y), - Property::new(env, "textAlign")? + Property::new("textAlign")? .with_setter(set_text_align) .with_getter(get_text_align), - Property::new(env, "textBaseline")? + Property::new("textBaseline")? .with_setter(set_text_baseline) .with_getter(get_text_baseline), // methods - Property::new(env, "arc")? + Property::new("arc")? .with_method(arc) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "arcTo")? + Property::new("arcTo")? .with_method(arc_to) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "beginPath")? + Property::new("beginPath")? .with_method(begin_path) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "bezierCurveTo")? + Property::new("bezierCurveTo")? .with_method(bezier_curve_to) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "clearRect")? + Property::new("clearRect")? .with_method(clear_rect) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "clip")? + Property::new("clip")? .with_method(clip) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "closePath")? + Property::new("closePath")? .with_method(close_path) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "createLinearGradient")? + Property::new("createLinearGradient")? .with_method(create_linear_gradient) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "createRadialGradient")? + Property::new("createRadialGradient")? .with_method(create_radial_gradient) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "createConicGradient")? + Property::new("createConicGradient")? .with_method(create_conic_gradient) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "drawImage")? + Property::new("drawImage")? .with_method(draw_image) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "getContextAttributes")? + Property::new("getContextAttributes")? .with_method(get_context_attributes) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "isPointInPath")? + Property::new("isPointInPath")? .with_method(is_point_in_path) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "isPointInStroke")?.with_method(is_point_in_stroke), - Property::new(env, "ellipse")? + Property::new("isPointInStroke")?.with_method(is_point_in_stroke), + Property::new("ellipse")? .with_method(ellipse) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "lineTo")? + Property::new("lineTo")? .with_method(line_to) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "measureText")? + Property::new("measureText")? .with_method(measure_text) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "moveTo")? + Property::new("moveTo")? .with_method(move_to) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "fill")? + Property::new("fill")? .with_method(fill) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "fillRect")? + Property::new("fillRect")? .with_method(fill_rect) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "fillText")? + Property::new("fillText")? .with_method(fill_text) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "_getImageData")? + Property::new("_getImageData")? .with_method(get_image_data) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "getLineDash")? + Property::new("getLineDash")? .with_method(get_line_dash) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "putImageData")? + Property::new("putImageData")? .with_method(put_image_data) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "quadraticCurveTo")? + Property::new("quadraticCurveTo")? .with_method(quadratic_curve_to) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "rect")? + Property::new("rect")? .with_method(rect) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "resetTransform")? + Property::new("resetTransform")? .with_method(reset_transform) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "restore")? + Property::new("restore")? .with_method(restore) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "rotate")? + Property::new("rotate")? .with_method(rotate) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "save")? + Property::new("save")? .with_method(save) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "scale")? + Property::new("scale")? .with_method(scale) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "setLineDash")? + Property::new("setLineDash")? .with_method(set_line_dash) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "stroke")? + Property::new("stroke")? .with_method(stroke) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "strokeRect")? + Property::new("strokeRect")? .with_method(stroke_rect) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "strokeText")? + Property::new("strokeText")? .with_method(stroke_text) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "translate")? + Property::new("translate")? .with_method(translate) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "transform")? + Property::new("transform")? .with_method(transform) .with_property_attributes(PropertyAttributes::Writable), // getter setter method - Property::new(env, "getTransform")? + Property::new("getTransform")? .with_method(get_current_transform) .with_property_attributes(PropertyAttributes::Writable), - Property::new(env, "setTransform")? + Property::new("setTransform")? .with_method(set_current_transform) .with_property_attributes(PropertyAttributes::Writable), ], @@ -2294,7 +2294,7 @@ impl Task for ContextData { } } - fn resolve(self, env: Env, output_data: Self::Output) -> Result { + fn resolve(&mut self, env: Env, output_data: Self::Output) -> Result { match output_data { ContextOutputData::Skia(output) => unsafe { env diff --git a/src/global_fonts.rs b/src/global_fonts.rs index 26596dd9..4f2f00e8 100644 --- a/src/global_fonts.rs +++ b/src/global_fonts.rs @@ -128,14 +128,14 @@ impl FontCollection { "GlobalFonts", global_fonts_constructor, &[ - Property::new(env, "_register")?.with_method(register), - Property::new(env, "_registerFromPath")?.with_method(register_from_path), - Property::new(env, "_families")? + Property::new("_register")?.with_method(register), + Property::new("_registerFromPath")?.with_method(register_from_path), + Property::new("_families")? .with_getter(get_families) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(env, "_loadFontsFromDir")?.with_method(load_fonts), - Property::new(env, "loadSystemFonts")?.with_method(load_system_fonts), - Property::new(env, "setAlias")?.with_method(set_alias), + Property::new("_loadFontsFromDir")?.with_method(load_fonts), + Property::new("loadSystemFonts")?.with_method(load_system_fonts), + Property::new("setAlias")?.with_method(set_alias), ], ) } diff --git a/src/gradient.rs b/src/gradient.rs index c5cea2c0..10a6b012 100644 --- a/src/gradient.rs +++ b/src/gradient.rs @@ -21,10 +21,10 @@ impl CanvasGradient { let gradient_class = env.define_class( "Gradient", gradient_constructor, - &[Property::new(env, "addColorStop")?.with_method(add_color_stop)], + &[Property::new("addColorStop")?.with_method(add_color_stop)], )?; let arguments: Vec = vec![]; - let mut instance = gradient_class.new(&arguments)?; + let mut instance = gradient_class.new_instance(&arguments)?; env.wrap(&mut instance, Pattern::Gradient(self))?; Ok(instance) } diff --git a/src/image.rs b/src/image.rs index eb4b7334..d1d13674 100644 --- a/src/image.rs +++ b/src/image.rs @@ -62,13 +62,6 @@ fn image_data_constructor(ctx: CallContext) -> Result { } ValueType::Object => { let image_data_ab = unsafe { first_arg.cast::() }.into_value()?; - if image_data_ab.typedarray_type != TypedArrayType::Uint8Clamped { - return Err(Error::new( - Status::InvalidArg, - "ImageData constructor: Argument 1 does not implement interface Uint8ClampedArray." - .to_owned(), - )); - } let arraybuffer: &[u8] = image_data_ab.as_ref(); let arraybuffer_length = arraybuffer.len(); let js_width = ctx.get::(1)?; @@ -125,14 +118,14 @@ fn image_data_constructor(ctx: CallContext) -> Result { let mut this = ctx.this_unchecked::(); ctx.env.wrap(&mut this, image_data)?; this.define_properties(&[ - Property::new(ctx.env, "data")? - .with_value(typed_array) + Property::new("data")? + .with_value(&typed_array) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(ctx.env, "width")? - .with_value(js_width) + Property::new("width")? + .with_value(&js_width) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(ctx.env, "height")? - .with_value(js_height) + Property::new("height")? + .with_value(&js_height) .with_property_attributes(PropertyAttributes::Enumerable), ])?; ctx.env.get_undefined() @@ -173,25 +166,25 @@ impl Image { "Image", image_constructor, &vec![ - Property::new(env, "width")? + Property::new("width")? .with_getter(get_width) .with_setter(set_width), - Property::new(env, "height")? + Property::new("height")? .with_getter(get_height) .with_setter(set_height), - Property::new(env, "naturalWidth")? + Property::new("naturalWidth")? .with_getter(get_natural_width) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(env, "naturalHeight")? + Property::new("naturalHeight")? .with_getter(get_natural_height) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(env, "complete")? + Property::new("complete")? .with_getter(get_complete) .with_property_attributes(PropertyAttributes::Enumerable), - Property::new(env, "alt")? + Property::new("alt")? .with_setter(set_alt) .with_getter(get_alt), - Property::new(env, "src")? + Property::new("src")? .with_setter(set_src) .with_getter(get_src), ], @@ -338,7 +331,7 @@ fn set_src(ctx: CallContext) -> Result { let src_data = src_arg.into_value()?; let image = ctx.env.unwrap::(&this)?.get_image().unwrap(); - let length = (&src_data).len(); + let length = src_data.len(); let data_ref: &[u8] = &src_data; let mut is_svg = false; for i in 3..length { diff --git a/src/lib.rs b/src/lib.rs index 77192978..1b521ea8 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -59,25 +59,25 @@ fn init(mut exports: JsObject, env: Env) -> Result<()> { "CanvasElement", canvas_element_constructor, &[ - Property::new(&env, "encode")? + Property::new("encode")? .with_method(encode) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "encodeSync")? + Property::new("encodeSync")? .with_method(encode_sync) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "toBuffer")? + Property::new("toBuffer")? .with_method(to_buffer) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "savePNG")? + Property::new("savePNG")? .with_method(save_png) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "data")? + Property::new("data")? .with_method(data) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "toDataURL")? + Property::new("toDataURL")? .with_method(to_data_url) .with_property_attributes(PropertyAttributes::Writable), - Property::new(&env, "toDataURLAsync")? + Property::new("toDataURLAsync")? .with_method(to_data_url_async) .with_property_attributes(PropertyAttributes::Writable), ], @@ -86,7 +86,7 @@ fn init(mut exports: JsObject, env: Env) -> Result<()> { let svg_canvas_element = env.define_class( "SVGCanvas", canvas_element_constructor, - &[Property::new(&env, "getContent")?.with_method(get_content)], + &[Property::new("getContent")?.with_method(get_content)], )?; let canvas_rendering_context2d = ctx::Context::create_js_class(&env)?; @@ -100,7 +100,7 @@ fn init(mut exports: JsObject, env: Env) -> Result<()> { let canvas_pattern = env.define_class( "CanvasPattern", image_pattern::canvas_pattern_constructor, - &[Property::new(&env, "setTransform")?.with_method(image_pattern::set_transform)], + &[Property::new("setTransform")?.with_method(image_pattern::set_transform)], )?; let global_fonts = sk::FontCollection::create_js_class(&env)?; @@ -481,7 +481,7 @@ impl Task for AsyncDataUrl { Ok(output) } - fn resolve(self, env: Env, output: Self::Output) -> Result { + fn resolve(&mut self, env: Env, output: Self::Output) -> Result { env.create_string_from_std(output) } } diff --git a/src/path.rs b/src/path.rs index 90b2672c..8598659d 100644 --- a/src/path.rs +++ b/src/path.rs @@ -9,30 +9,30 @@ impl Path { path_constructor, &vec![ // Standard Path2d methods - Property::new(env, "addPath")?.with_method(add_path), - Property::new(env, "closePath")?.with_method(close_path), - Property::new(env, "moveTo")?.with_method(move_to), - Property::new(env, "lineTo")?.with_method(line_to), - Property::new(env, "bezierCurveTo")?.with_method(bezier_curve_to), - Property::new(env, "quadraticCurveTo")?.with_method(quadratic_curve_to), - Property::new(env, "arc")?.with_method(arc), - Property::new(env, "arcTo")?.with_method(arc_to), - Property::new(env, "ellipse")?.with_method(ellipse), - Property::new(env, "rect")?.with_method(rect), + Property::new("addPath")?.with_method(add_path), + Property::new("closePath")?.with_method(close_path), + Property::new("moveTo")?.with_method(move_to), + Property::new("lineTo")?.with_method(line_to), + Property::new("bezierCurveTo")?.with_method(bezier_curve_to), + Property::new("quadraticCurveTo")?.with_method(quadratic_curve_to), + Property::new("arc")?.with_method(arc), + Property::new("arcTo")?.with_method(arc_to), + Property::new("ellipse")?.with_method(ellipse), + Property::new("rect")?.with_method(rect), // extra methods in PathKit - Property::new(env, "op")?.with_method(op), - Property::new(env, "simplify")?.with_method(simplify), - Property::new(env, "setFillType")?.with_method(set_fill_type), - Property::new(env, "getFillType")?.with_method(get_fill_type), - Property::new(env, "asWinding")?.with_method(as_winding), - Property::new(env, "toSVGString")?.with_method(to_svg_string), - Property::new(env, "getBounds")?.with_method(get_bounds), - Property::new(env, "computeTightBounds")?.with_method(compute_tight_bounds), - Property::new(env, "transform")?.with_method(transform), - Property::new(env, "trim")?.with_method(trim), - Property::new(env, "dash")?.with_method(dash), - Property::new(env, "equals")?.with_method(equals), - Property::new(env, "_stroke")?.with_method(stroke), + Property::new("op")?.with_method(op), + Property::new("simplify")?.with_method(simplify), + Property::new("setFillType")?.with_method(set_fill_type), + Property::new("getFillType")?.with_method(get_fill_type), + Property::new("asWinding")?.with_method(as_winding), + Property::new("toSVGString")?.with_method(to_svg_string), + Property::new("getBounds")?.with_method(get_bounds), + Property::new("computeTightBounds")?.with_method(compute_tight_bounds), + Property::new("transform")?.with_method(transform), + Property::new("trim")?.with_method(trim), + Property::new("dash")?.with_method(dash), + Property::new("equals")?.with_method(equals), + Property::new("_stroke")?.with_method(stroke), ], ) }