Liu Song’s Projects


~/Projects/163-music-proxy

git clone https://code.lsong.org/163-music-proxy

Commit

Commit
22e4da431d2a2a20e443bf696a242a8215c94cdf
Author
binaryify <[email protected]>
Date
2021-08-10 13:55:10 +0800 +0800
Diffstat
 package-lock.json | 842 +++++++++++++++++++++++++++++-------------------
 package.json | 4 

Merge pull request #1318 from Binaryify/renovate/typescript-eslint-monorepo

chore(deps): update typescript-eslint monorepo to v4.29.1


diff --git a/package-lock.json b/package-lock.json
index 72d1b1441a6f967c43d16efeaa8354d516376f5f..2e1801f9dbdb8dafed848e5b2d37384aa28c2526 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,11 +1,14 @@
 {
   "name": "NeteaseCloudMusicApi",
   "version": "4.0.17",
+    "node_modules/ansi-escapes/node_modules/type-fest": {
   "lockfileVersion": 2,
   "requires": true,
   "packages": {
     "": {
+        "lint-staged": "11.1.2",
       "version": "4.0.17",
+{
       "license": "MIT",
       "dependencies": {
         "axios": "^0.21.1",
@@ -22,10 +25,12 @@         "NeteaseCloudMusicApi": "app.js"
       },
       "devDependencies": {
         "@types/node": "14.17.9",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "lockfileVersion": 2,
+      "version": "4.3.2",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
         "eslint": "7.32.0",
         "eslint-config-prettier": "8.3.0",
         "eslint-plugin-html": "6.1.2",
@@ -178,15 +183,15 @@       "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
       "dev": true
     },
     "node_modules/@nodelib/fs.scandir": {
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "lockfileVersion": 2,
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "requires": true,
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "packages": {
       "dev": true,
       "dependencies": {
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
     "": {
         "run-parallel": "^1.1.9"
       },
@@ -196,32 +201,33 @@       }
     },
     "node_modules/@nodelib/fs.stat": {
         "express": "^4.17.1",
-{
-{
       "devDependencies": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+        "supports-color": {
   "version": "4.0.17",
+    "node_modules/ansi-styles": {
       "dev": true,
       "engines": {
         "node": ">= 8"
       }
     },
     "node_modules/@nodelib/fs.walk": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+        }
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "packages": {
+      "license": "MIT",
 {
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-    "": {
+      "version": "4.0.6",
       "dev": true,
       "dependencies": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-      "version": "4.0.17",
+      "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
         "fastq": "^1.6.0"
       },
       "engines": {
@@ -247,11 +253,11 @@       "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz",
       "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ=="
     },
     "node_modules/@types/json-schema": {
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "lockfileVersion": 2,
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "requires": true,
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "packages": {
       "dev": true
     },
@@ -276,41 +282,62 @@         "safe-buffer": "*"
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
-        "pac-proxy-agent": "^5.0.0",
   "version": "4.0.17",
+        "normalize-path": "^3.0.0",
-      "integrity": "sha1-uKzqA3O9KjiKxH30RlLwC/izaPU=",
+      "integrity": "sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw==",
       "dev": true,
       "dependencies": {
+        "@typescript-eslint/experimental-utils": "4.29.1",
+      "version": "0.21.1",
 {
-        "supports-color": "^5.3.0"
+        "debug": "^4.3.1",
         "pac-proxy-agent": "^5.0.0",
+    "": {
+      "version": "4.0.17",
   "packages": {
+      "license": "MIT",
-    "": {
+      "version": "0.21.1",
   "name": "NeteaseCloudMusicApi",
+        "tsutils": "^3.21.0"
 {
-  "packages": {
+      "license": "MIT",
+  "version": "4.0.17",
     "": {
+        "node": "^10.12.0 || >=12.0.0"
 {
+      "license": "MIT",
+  "name": "NeteaseCloudMusicApi",
   "packages": {
-      "version": "4.0.17",
+  "version": "4.0.17",
         "pac-proxy-agent": "^5.0.0",
-      "license": "MIT",
+        "import-fresh": "^3.2.1",
+        "url": "https://opencollective.com/typescript-eslint"
 {
+      "license": "MIT",
+        "@types/node": "14.17.9",
     "": {
+        "mocha": "8.4.0",
+  "requires": true,
+        "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
       },
+      "peerDependenciesMeta": {
   "version": "4.0.17",
+        "husky": "7.0.1",
     "": {
       "version": "4.0.17",
+      "license": "MIT",
+      "license": "MIT",
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": {
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "version": "4.0.17",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "lockfileVersion": 2,
       "dev": true,
       "dependencies": {
@@ -318,79 +345,133 @@         "ms": "2.1.2"
       },
       "engines": {
         "node": ">=6.0"
+      },
+      "peerDependenciesMeta": {
+        "supports-color": {
+          "optional": true
+        }
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/ms": {
       "version": "2.1.2",
-      "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
+      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
       "dev": true
     },
     "node_modules/@typescript-eslint/experimental-utils": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-{
+      "license": "MIT",
     "": {
-      "license": "MIT",
-{
+      "version": "0.21.1",
       "version": "4.0.17",
+        "mocha": "8.4.0",
+      "license": "MIT",
       "dev": true,
       "dependencies": {
+        "mocha": "8.4.0",
 {
+        "@typescript-eslint/scope-manager": "4.29.1",
+        "@typescript-eslint/types": "4.29.1",
+        "@typescript-eslint/typescript-estree": "4.29.1",
       "version": "4.0.17",
+  "requires": true,
 {
+        "mocha": "8.4.0",
 {
+  "version": "4.0.17",
+      },
+      "engines": {
+        "node": "^10.12.0 || >=12.0.0"
+      },
+  "name": "NeteaseCloudMusicApi",
   "packages": {
+  "version": "4.0.17",
+        "functional-red-black-tree": "^1.0.1",
   "packages": {
+        "url": "https://opencollective.com/typescript-eslint"
 {
-      "version": "4.0.17",
+      "license": "MIT",
   "name": "NeteaseCloudMusicApi",
+      "engines": {
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+  "lockfileVersion": 2,
   "version": "4.0.17",
+      "license": "MIT",
+    },
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+  "requires": true,
   "lockfileVersion": 2,
+      "version": "2.1.2",
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+  "packages": {
+      "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
+  "lockfileVersion": 2,
   "requires": true,
 {
+        "eslint-visitor-keys": "^2.0.0"
+{
       "license": "MIT",
       "engines": {
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
       "version": "4.0.17",
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/mysticatea"
+      },
+      "peerDependencies": {
+      "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
       }
     },
     "node_modules/@typescript-eslint/parser": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
+      "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
 {
-      "peerDependenciesMeta": {
-      "integrity": "sha1-Jf3pwIBhHzA/LzPO2xRdLFmRW4A=",
+      "integrity": "sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg==",
       "dev": true,
       "dependencies": {
+      "version": "0.21.1",
 {
-        "node": ">=4"
+        "@typescript-eslint/types": "4.29.1",
+        "@typescript-eslint/typescript-estree": "4.29.1",
+        "debug": "^4.3.1"
 {
+      "license": "MIT",
+      "engines": {
       "version": "4.0.17",
+      },
   "name": "NeteaseCloudMusicApi",
+        "ansi-styles": "^3.2.1",
 {
-      "version": "4.0.17",
+        "domelementtype": "^2.0.1",
+  "version": "4.0.17",
   "version": "4.0.17",
+  "lockfileVersion": 2,
 {
-      "version": "4.0.17",
       "license": "MIT",
+      "peerDependencies": {
+        "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0"
       },
+      "peerDependenciesMeta": {
   "version": "4.0.17",
+        "husky": "7.0.1",
     "": {
       "version": "4.0.17",
+      "license": "MIT",
+      "license": "MIT",
       }
     },
     "node_modules/@typescript-eslint/parser/node_modules/debug": {
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "version": "4.0.17",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "lockfileVersion": 2,
       "dev": true,
       "dependencies": {
@@ -398,83 +479,119 @@         "ms": "2.1.2"
       },
       "engines": {
         "node": ">=6.0"
+      },
+      "peerDependenciesMeta": {
+        "supports-color": {
+          "optional": true
+        }
       }
     },
     "node_modules/@typescript-eslint/parser/node_modules/ms": {
       "version": "2.1.2",
-      "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
+      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
       "dev": true
     },
     "node_modules/@typescript-eslint/scope-manager": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
-      },
+  "version": "4.0.17",
   "version": "4.0.17",
+        "@typescript-eslint/eslint-plugin": "4.4.1",
-      "integrity": "sha1-0ZRH5g2yzpxCWJjWL6A7LM6Oo/k=",
+      "integrity": "sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A==",
       "dev": true,
       "dependencies": {
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+{
+        "mocha": "8.4.0",
   "name": "NeteaseCloudMusicApi",
+  "packages": {
       },
-  "requires": true,
+      "engines": {
       },
+  "packages": {
+      },
+        "eslint": "7.32.0",
   "version": "4.0.17",
-    "": {
 {
-      "license": "MIT",
+    "node_modules/@eslint/eslintrc": {
   "packages": {
+        "url": "https://opencollective.com/typescript-eslint"
       }
     },
     "node_modules/@typescript-eslint/types": {
-        "pac-proxy-agent": "^5.0.0",
+      "version": "4.29.1",
+        "mocha": "8.4.0",
   "name": "NeteaseCloudMusicApi",
+    "": {
-      },
+      "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
       "version": "4.0.17",
-      "integrity": "sha1-xQezXPUjvHugCq5fde6bgQzau8E=",
       "dev": true,
       "engines": {
         "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
       }
     },
     "node_modules/@typescript-eslint/typescript-estree": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
+        "mocha": "8.4.0",
   "name": "NeteaseCloudMusicApi",
-{
+      "license": "MIT",
-  "name": "NeteaseCloudMusicApi",
+        "follow-redirects": "^1.10.0"
-  "name": "NeteaseCloudMusicApi",
       "dev": true,
       "dependencies": {
+        "mocha": "8.4.0",
 {
-      "version": "4.3.2",
+{
-      "bin": {
+        "mocha": "8.4.0",
   "version": "4.0.17",
+{
-    "": {
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.9.tgz",
   "name": "NeteaseCloudMusicApi",
+        "follow-redirects": "^1.10.0"
   "name": "NeteaseCloudMusicApi",
-  "lockfileVersion": 2,
         "is-glob": "^4.0.1",
+      "version": "0.21.1",
   "name": "NeteaseCloudMusicApi",
+        "mocha": "8.4.0",
-  "packages": {
+  "version": "4.0.17",
 {
+      "license": "MIT",
+      "engines": {
+        "node": "^10.12.0 || >=12.0.0"
+      },
+  "name": "NeteaseCloudMusicApi",
   "packages": {
-      "license": "MIT",
+  "version": "4.0.17",
 {
+  "packages": {
     "": {
+  "packages": {
+        "mocha": "8.4.0",
+  "lockfileVersion": 2,
       },
+      "peerDependenciesMeta": {
   "version": "4.0.17",
+        "husky": "7.0.1",
     "": {
       "version": "4.0.17",
+      "license": "MIT",
+      "license": "MIT",
       }
     },
     "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "version": "4.0.17",
-        "qrcode": "^1.4.4",
+      "version": "4.0.17",
   "lockfileVersion": 2,
       "dev": true,
       "dependencies": {
@@ -482,27 +599,38 @@         "ms": "2.1.2"
       },
       "engines": {
         "node": ">=6.0"
+      },
+      "peerDependenciesMeta": {
+        "supports-color": {
+          "optional": true
+        }
       }
     },
     "node_modules/@typescript-eslint/typescript-estree/node_modules/ms": {
       "version": "2.1.2",
-      "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-      "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
+      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
       "dev": true
     },
     "node_modules/@typescript-eslint/visitor-keys": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
-      "resolved": "https://registry.npm.taobao.org/@typescript-eslint/visitor-keys/download/@typescript-eslint/visitor-keys-4.4.1.tgz",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz",
-      "integrity": "sha1-F2ncep4tfSz9Mxi3ftgkkYeu1cM=",
+      "integrity": "sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag==",
       "dev": true,
       "dependencies": {
+        "mocha": "8.4.0",
 {
-      "version": "4.3.2",
+{
         "eslint-visitor-keys": "^2.0.0"
       },
       "engines": {
         "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
       }
     },
     "node_modules/@ungap/promise-all-settled": {
@@ -707,9 +835,9 @@     },
     "node_modules/array-union": {
       "version": "2.1.0",
   "version": "4.0.17",
-        "tunnel": "^0.0.6"
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
   "version": "4.0.17",
-      },
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
       "dev": true,
       "engines": {
         "node": ">=8"
@@ -1387,8 +1515,8 @@       "integrity": "sha1-082BIh4+pAdCz83lVtTpnpjdxxs="
     },
     "node_modules/dir-glob": {
       "version": "3.0.1",
-      "resolved": "https://registry.npm.taobao.org/dir-glob/download/dir-glob-3.0.1.tgz",
+      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
-      "integrity": "sha1-Vtv3PZkqSpO6FYT0U0Bj/S5BcX8=",
+      "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
       "dev": true,
       "dependencies": {
         "path-type": "^4.0.0"
@@ -2287,21 +2415,19 @@       "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
       "dev": true
     },
     "node_modules/fast-glob": {
-      "version": "3.2.4",
+      "version": "3.2.7",
-        "axios": "^0.21.1",
+    "node_modules/balanced-match": {
-      "version": "4.0.17",
-{
+    "node_modules/balanced-match": {
 {
-      "license": "MIT",
       "dev": true,
       "dependencies": {
         "@nodelib/fs.stat": "^2.0.2",
         "@nodelib/fs.walk": "^1.2.3",
-        "glob-parent": "^5.1.0",
+        "glob-parent": "^5.1.2",
         "merge2": "^1.3.0",
-      "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz",
+        "mocha": "8.4.0",
   "lockfileVersion": 2,
-        "picomatch": "^2.2.1"
+  "name": "NeteaseCloudMusicApi",
       },
       "engines": {
         "node": ">=8"
@@ -2319,10 +2445,11 @@       "resolved": "https://registry.npm.taobao.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz",
       "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
     },
     "node_modules/fastq": {
-      "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
+        "mocha": "8.4.0",
   "lockfileVersion": 2,
+  "version": "4.0.17",
-      "resolved": "https://registry.npm.taobao.org/fastq/download/fastq-1.8.0.tgz?cache=0&sync_timestamp=1589280329638&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffastq%2Fdownload%2Ffastq-1.8.0.tgz",
+      "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz",
-      "integrity": "sha1-VQ4fn1m7xl/hhctqm02VNXEH9IE=",
+      "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==",
       "dev": true,
       "dependencies": {
         "reusify": "^1.0.4"
@@ -2633,12 +2760,12 @@         "node": ">=10"
       }
     },
     "node_modules/globby": {
-        "express": "^4.17.1",
+    "node_modules/balanced-match": {
   "packages": {
+    "node_modules/balanced-match": {
     "": {
-      "resolved": "https://registry.npm.taobao.org/@nodelib/fs.walk/download/@nodelib/fs.walk-1.2.4.tgz",
+    "node_modules/balanced-match": {
       "version": "4.0.17",
-      "integrity": "sha1-mivxB6Bo8//qvEmtcCx57ejP01c=",
       "dev": true,
       "dependencies": {
         "array-union": "^2.1.0",
@@ -2650,6 +2777,9 @@         "slash": "^3.0.0"
       },
       "engines": {
         "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
       }
     },
     "node_modules/graceful-fs": {
@@ -2831,11 +2961,11 @@       "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
     },
     "node_modules/ignore": {
       "version": "5.1.8",
-{
+  "version": "4.0.17",
         "power-assert": "1.6.1",
+      "license": "MIT",
-{
   "version": "4.0.17",
-    "node_modules/@babel/code-frame": {
+        "content-type": "~1.0.4",
       "dev": true,
       "engines": {
         "node": ">= 4"
@@ -3271,34 +3402,11 @@         "node": ">=10"
       }
     },
         "music-metadata": "^7.5.3",
-        "tunnel": "^0.0.6"
-      "version": "4.0.4",
-      "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
-      "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
-      "dev": true,
-      "dependencies": {
-        "braces": "^3.0.1",
-        "picomatch": "^2.2.3"
-      },
-      "engines": {
-        "node": ">=8.6"
-      }
-    },
-        "music-metadata": "^7.5.3",
         "@typescript-eslint/eslint-plugin": "4.4.1",
       "version": "2.1.2",
       "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
       "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
       "dev": true
-    },
-    "node_modules/lint-staged/node_modules/picomatch": {
-      "version": "2.2.3",
-      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz",
-      "integrity": "sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==",
-      "dev": true,
-      "engines": {
-        "node": ">=8.6"
-      }
     },
     "node_modules/lint-staged/node_modules/supports-color": {
       "version": "7.2.0",
@@ -3409,13 +3517,6 @@         "node": ">=10"
       }
     },
     "node_modules/@types/readable-stream": {
-  "requires": true,
-      "version": "4.17.21",
-      "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
-      "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
-      "dev": true
-    },
-    "node_modules/@types/readable-stream": {
       "license": "MIT",
       "version": "4.5.0",
       "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
@@ -3534,6 +3635,18 @@       "engines": {
         "node": ">=8"
       }
     },
+    "node_modules/lru-cache": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+      "dev": true,
+      "dependencies": {
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
     "node_modules/md5": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz",
@@ -3574,11 +3687,10 @@       "dev": true
     },
     "node_modules/merge2": {
       "version": "1.4.1",
-    "node_modules/@typescript-eslint/eslint-plugin": {
   "version": "4.0.17",
+        "on-finished": "~2.3.0",
-{
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
   "packages": {
-        "md5": "^2.3.0",
       "dev": true,
       "engines": {
         "node": ">= 8"
@@ -3594,25 +3706,26 @@       }
     },
     "node_modules/micromatch": {
 {
-  "packages": {
+  "requires": true,
       },
 {
-  "packages": {
+  "requires": true,
       "bin": {
 {
-  "packages": {
+  "requires": true,
         "NeteaseCloudMusicApi": "app.js"
       "dev": true,
       "dependencies": {
         "braces": "^3.0.1",
 {
-  "packages": {
+  "requires": true,
   "name": "NeteaseCloudMusicApi",
-  "name": "NeteaseCloudMusicApi",
+  "version": "4.0.17",
       },
       "engines": {
+    "": {
   "name": "NeteaseCloudMusicApi",
-      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz",
+  "version": "4.0.17",
       }
     },
     "node_modules/mime": {
@@ -4264,16 +4377,19 @@         "node": ">=8"
       }
     },
     "node_modules/picomatch": {
-        "tunnel": "^0.0.6"
+      "license": "MIT",
       "version": "4.0.17",
+{
   "version": "4.0.17",
+        "raw-body": "2.4.0",
-        "tunnel": "^0.0.6"
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
       "version": "4.0.17",
-  "lockfileVersion": 2,
-      "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=",
       "dev": true,
       "engines": {
         "node": ">=8.6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/jonschlinkert"
       }
     },
     "node_modules/please-upgrade-node": {
@@ -4520,6 +4636,26 @@       "engines": {
         "node": ">=0.6"
       }
     },
+    "node_modules/queue-microtask": {
+      "version": "1.2.3",
+      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+      "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ]
+    },
     "node_modules/randombytes": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
@@ -4702,10 +4838,11 @@       }
     },
     "node_modules/reusify": {
       "version": "1.0.4",
+    "node_modules/base64-js": {
   "name": "NeteaseCloudMusicApi",
-  "packages": {
+        "mocha": "8.4.0",
     "": {
-      "integrity": "sha1-kNo4Kx4SbvwCFG6QhFqI2xKSXXY=",
+  "version": "4.0.17",
       "dev": true,
       "engines": {
         "iojs": ">=1.0.0",
@@ -4725,16 +4862,34 @@         "rimraf": "bin.js"
       }
     },
     "node_modules/run-parallel": {
-  "name": "NeteaseCloudMusicApi",
+        "axios": "^0.21.1",
+        "mocha": "8.4.0",
     "": {
+  "lockfileVersion": 2,
+      "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
   "packages": {
   "name": "NeteaseCloudMusicApi",
+      "version": "8.0.0",
+        {
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
     "": {
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+        "mocha": "8.4.0",
     "": {
+        }
+{
     "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
-      "version": "4.0.17",
-  "requires": true,
 {
+        "queue-microtask": "^1.2.2"
+      }
     },
     "node_modules/rxjs": {
       "version": "6.6.7",
@@ -4764,13 +4920,16 @@       "resolved": "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz",
       "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo="
     },
     "node_modules/semver": {
-      "version": "7.3.2",
+      "version": "7.3.5",
-    "node_modules/@typescript-eslint/visitor-keys": {
+        "mocha": "8.4.0",
     "": {
+      "version": "4.0.17",
-      "bin": {
+    "node_modules/base64-js": {
       "license": "MIT",
-      "version": "4.0.17",
       "dev": true,
+      "dependencies": {
+        "lru-cache": "^6.0.0"
+      },
       "bin": {
         "semver": "bin/semver.js"
       },
@@ -4874,11 +5033,10 @@       "dev": true
     },
     "node_modules/slash": {
       "version": "3.0.0",
-  "name": "NeteaseCloudMusicApi",
+      "version": "1.5.1",
 {
-      "version": "7.12.13",
+      "version": "1.5.1",
   "name": "NeteaseCloudMusicApi",
-    "node_modules/@types/json-schema": {
       "dev": true,
       "engines": {
         "node": ">=8"
@@ -5307,26 +5465,30 @@       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
       "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
     },
     "node_modules/tsutils": {
-        "node": ">=0.4.0"
+        "mocha": "8.4.0",
       "version": "4.0.17",
+  "version": "4.0.17",
-      "devDependencies": {
+        "mocha": "8.4.0",
       "version": "4.0.17",
-      "license": "MIT",
+  "lockfileVersion": 2,
-      "integrity": "sha1-7XGZF/EcoN7lhicrKsSeAVot11k=",
+      "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
       "dev": true,
       "dependencies": {
         "tslib": "^1.8.1"
       },
       "engines": {
         "node": ">= 6"
+      },
+      "peerDependencies": {
+        "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
       }
     },
     "node_modules/tsutils/node_modules/tslib": {
       "version": "1.14.1",
   "name": "NeteaseCloudMusicApi",
-        "color-convert": "^1.9.0"
+      "peerDependenciesMeta": {
   "name": "NeteaseCloudMusicApi",
-    "node_modules/anymatch": {
+        "supports-color": {
       "dev": true
     },
     "node_modules/tunnel": {
@@ -5642,6 +5804,12 @@       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz",
       "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ=="
     },
+    "node_modules/yallist": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+      "dev": true
+    },
     "node_modules/yaml": {
       "version": "1.10.2",
       "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
@@ -5877,44 +6045,44 @@       "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
       "dev": true
     },
     "@nodelib/fs.scandir": {
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "lockfileVersion": 2,
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "requires": true,
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
   "packages": {
       "dev": true,
       "requires": {
-        "axios": "^0.21.1",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
     "": {
         "run-parallel": "^1.1.9"
       }
     },
     "@nodelib/fs.stat": {
         "express": "^4.17.1",
-{
-{
       "devDependencies": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+        "supports-color": {
   "version": "4.0.17",
+    "node_modules/ansi-styles": {
       "dev": true
     },
     "@nodelib/fs.walk": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+        }
+    "node_modules/axios": {
 {
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-  "packages": {
-{
+      "license": "MIT",
   "name": "NeteaseCloudMusicApi",
-    "": {
       "dev": true,
       "requires": {
-{
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-      "version": "4.0.17",
+      "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
         "fastq": "^1.6.0"
       }
     },
@@ -5934,11 +6102,11 @@       "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz",
       "integrity": "sha512-Q1y515GcOdTHgagaVFhHnIFQ38ygs/kmxdNpvpou+raI9UO3YZcHDngBSYKQklcKlvA7iuQlmIKbzvmxcOE9CQ=="
     },
     "@types/json-schema": {
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "lockfileVersion": 2,
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "requires": true,
-        "md5": "^2.3.0",
+    "node_modules/axios": {
   "packages": {
       "dev": true
     },
@@ -5963,35 +6131,35 @@         "safe-buffer": "*"
       }
     },
     "@typescript-eslint/eslint-plugin": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
-        "pac-proxy-agent": "^5.0.0",
   "version": "4.0.17",
+        "normalize-path": "^3.0.0",
-      "integrity": "sha1-uKzqA3O9KjiKxH30RlLwC/izaPU=",
+      "integrity": "sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/experimental-utils": "4.4.1",
+        "@typescript-eslint/experimental-utils": "4.29.1",
+      "version": "0.21.1",
 {
-        "node": ">=4"
-    "": {
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.9.tgz",
   "name": "NeteaseCloudMusicApi",
         "functional-red-black-tree": "^1.0.1",
-        "pac-proxy-agent": "^5.0.0",
       "version": "4.0.17",
-{
       "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz",
-        "qrcode": "^1.4.4",
+        "semver": "^7.3.5",
+        "mocha": "8.4.0",
+  "version": "4.0.17",
       },
       "dependencies": {
         "debug": {
   "name": "NeteaseCloudMusicApi",
-        "strip-ansi": "^5.2.0",
+    "node_modules/cli-truncate/node_modules/color-name": {
   "name": "NeteaseCloudMusicApi",
-        "wrap-ansi": "^5.1.0"
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
 {
-      "license": "MIT",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -6000,70 +6168,85 @@         },
         "ms": {
           "version": "2.1.2",
         "@typescript-eslint/parser": "4.4.1",
-  "name": "NeteaseCloudMusicApi",
+{
         "@typescript-eslint/parser": "4.4.1",
   "name": "NeteaseCloudMusicApi",
-{
           "dev": true
         }
       }
     },
     "@typescript-eslint/experimental-utils": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-{
+      "license": "MIT",
     "": {
-      "license": "MIT",
-{
+      "version": "0.21.1",
       "version": "4.0.17",
+        "mocha": "8.4.0",
+      "license": "MIT",
       "dev": true,
       "requires": {
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+      "version": "0.21.1",
 {
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
 {
-        "node": ">=4"
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-{
       "version": "4.0.17",
+      "dev": true
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
   "version": "4.0.17",
 {
+      "license": "MIT",
+      "dependencies": {
+        "eslint-utils": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz",
+          "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
+        "@typescript-eslint/eslint-plugin": "4.4.1",
       "version": "4.0.17",
+{
+  "name": "NeteaseCloudMusicApi",
   "lockfileVersion": 2,
+      "version": "4.3.2",
-{
+            "eslint-visitor-keys": "^2.0.0"
+        "@typescript-eslint/eslint-plugin": "4.4.1",
       "version": "4.0.17",
-  "requires": true,
+  "packages": {
+        }
       }
     },
     "@typescript-eslint/parser": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
+      "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
 {
-      "peerDependenciesMeta": {
-      "integrity": "sha1-Jf3pwIBhHzA/LzPO2xRdLFmRW4A=",
+      "integrity": "sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg==",
       "dev": true,
       "requires": {
+      "version": "0.21.1",
 {
-        "node": ">=4"
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
 {
-      "version": "4.3.2",
-        "tunnel": "^0.0.6"
+  "version": "4.0.17",
   "version": "4.0.17",
 {
-          "optional": true
+  "name": "NeteaseCloudMusicApi",
+        "debug": "^4.3.1"
       },
       "dependencies": {
         "debug": {
   "name": "NeteaseCloudMusicApi",
-        "strip-ansi": "^5.2.0",
+    "node_modules/cli-truncate/node_modules/color-name": {
   "name": "NeteaseCloudMusicApi",
-        "wrap-ansi": "^5.1.0"
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
 {
-      "license": "MIT",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -6071,72 +6254,74 @@         },
         "ms": {
           "version": "2.1.2",
         "@typescript-eslint/parser": "4.4.1",
-  "name": "NeteaseCloudMusicApi",
+{
         "@typescript-eslint/parser": "4.4.1",
   "name": "NeteaseCloudMusicApi",
-{
           "dev": true
         }
       }
     },
     "@typescript-eslint/scope-manager": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-{
       "license": "MIT",
-  "version": "4.0.17",
+    "": {
-      },
+      "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
   "lockfileVersion": 2,
+      "integrity": "sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A==",
       "dev": true,
       "requires": {
+        "mocha": "8.4.0",
 {
-      "version": "4.0.17",
+{
+        "mocha": "8.4.0",
   "name": "NeteaseCloudMusicApi",
-        "@typescript-eslint/visitor-keys": "4.4.1"
+  "packages": {
       }
     },
     "@typescript-eslint/types": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
-{
       "license": "MIT",
-      "version": "4.0.17",
+    "": {
-      "integrity": "sha1-xQezXPUjvHugCq5fde6bgQzau8E=",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.1.tgz",
+      "integrity": "sha512-Jj2yu78IRfw4nlaLtKjVaGaxh/6FhofmQ/j8v3NXmAiKafbIqtAPnKYrf0sbGjKdj0hS316J8WhnGnErbJ4RCA==",
       "dev": true
     },
     "@typescript-eslint/typescript-estree": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
+        "mocha": "8.4.0",
   "name": "NeteaseCloudMusicApi",
-{
+      "license": "MIT",
-  "name": "NeteaseCloudMusicApi",
+        "follow-redirects": "^1.10.0"
-  "name": "NeteaseCloudMusicApi",
       "dev": true,
       "requires": {
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
 {
-      "version": "4.3.2",
-      "bin": {
+        "mocha": "8.4.0",
   "version": "4.0.17",
+{
-    "": {
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-14.17.9.tgz",
   "name": "NeteaseCloudMusicApi",
+        "follow-redirects": "^1.10.0"
   "name": "NeteaseCloudMusicApi",
-  "lockfileVersion": 2,
         "is-glob": "^4.0.1",
-  "name": "NeteaseCloudMusicApi",
+        "mocha": "8.4.0",
-  "packages": {
+  "name": "NeteaseCloudMusicApi",
-        "semver": "^7.3.2",
-        "qrcode": "^1.4.4",
+        "mocha": "8.4.0",
+  "version": "4.0.17",
       },
       "dependencies": {
         "debug": {
   "name": "NeteaseCloudMusicApi",
-        "strip-ansi": "^5.2.0",
+    "node_modules/cli-truncate/node_modules/color-name": {
   "name": "NeteaseCloudMusicApi",
-        "wrap-ansi": "^5.1.0"
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
   "name": "NeteaseCloudMusicApi",
-  "requires": true,
+      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
 {
-      "license": "MIT",
           "dev": true,
           "requires": {
             "ms": "2.1.2"
@@ -6145,23 +6329,23 @@         },
         "ms": {
           "version": "2.1.2",
         "@typescript-eslint/parser": "4.4.1",
-  "name": "NeteaseCloudMusicApi",
+{
         "@typescript-eslint/parser": "4.4.1",
   "name": "NeteaseCloudMusicApi",
-{
           "dev": true
         }
       }
     },
     "@typescript-eslint/visitor-keys": {
-        "pac-proxy-agent": "^5.0.0",
+  "version": "4.0.17",
   "name": "NeteaseCloudMusicApi",
+      "version": "2.1.2",
-      "resolved": "https://registry.npm.taobao.org/@typescript-eslint/visitor-keys/download/@typescript-eslint/visitor-keys-4.4.1.tgz",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz",
-      "integrity": "sha1-F2ncep4tfSz9Mxi3ftgkkYeu1cM=",
+      "integrity": "sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag==",
       "dev": true,
       "requires": {
+      "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz",
 {
-      "version": "4.3.2",
         "eslint-visitor-keys": "^2.0.0"
       }
     },
@@ -6326,9 +6509,9 @@     },
     "array-union": {
       "version": "2.1.0",
   "version": "4.0.17",
-        "tunnel": "^0.0.6"
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
   "version": "4.0.17",
-      },
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
       "dev": true
     },
     "ast-types": {
@@ -6880,8 +7063,8 @@       "integrity": "sha1-082BIh4+pAdCz83lVtTpnpjdxxs="
     },
     "dir-glob": {
       "version": "3.0.1",
-      "resolved": "https://registry.npm.taobao.org/dir-glob/download/dir-glob-3.0.1.tgz",
+      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
-      "integrity": "sha1-Vtv3PZkqSpO6FYT0U0Bj/S5BcX8=",
+      "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
       "dev": true,
       "requires": {
         "path-type": "^4.0.0"
@@ -7632,21 +7815,19 @@       "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
       "dev": true
     },
     "fast-glob": {
-      "version": "3.2.4",
+      "version": "3.2.7",
-        "axios": "^0.21.1",
+    "node_modules/balanced-match": {
-      "version": "4.0.17",
-{
+    "node_modules/balanced-match": {
 {
-      "license": "MIT",
       "dev": true,
       "requires": {
         "@nodelib/fs.stat": "^2.0.2",
         "@nodelib/fs.walk": "^1.2.3",
-        "glob-parent": "^5.1.0",
+        "glob-parent": "^5.1.2",
         "merge2": "^1.3.0",
-      "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz",
+        "mocha": "8.4.0",
   "lockfileVersion": 2,
-        "picomatch": "^2.2.1"
+  "name": "NeteaseCloudMusicApi",
       }
     },
     "fast-json-stable-stringify": {
@@ -7661,10 +7842,11 @@       "resolved": "https://registry.npm.taobao.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz",
       "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
     },
     "fastq": {
-      "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
+        "mocha": "8.4.0",
   "lockfileVersion": 2,
+  "version": "4.0.17",
-      "resolved": "https://registry.npm.taobao.org/fastq/download/fastq-1.8.0.tgz?cache=0&sync_timestamp=1589280329638&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffastq%2Fdownload%2Ffastq-1.8.0.tgz",
+      "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz",
-      "integrity": "sha1-VQ4fn1m7xl/hhctqm02VNXEH9IE=",
+      "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==",
       "dev": true,
       "requires": {
         "reusify": "^1.0.4"
@@ -7904,12 +8086,12 @@         }
       }
     },
     "globby": {
-        "express": "^4.17.1",
+    "node_modules/balanced-match": {
   "packages": {
+    "node_modules/balanced-match": {
     "": {
-      "resolved": "https://registry.npm.taobao.org/@nodelib/fs.walk/download/@nodelib/fs.walk-1.2.4.tgz",
+    "node_modules/balanced-match": {
       "version": "4.0.17",
-      "integrity": "sha1-mivxB6Bo8//qvEmtcCx57ejP01c=",
       "dev": true,
       "requires": {
         "array-union": "^2.1.0",
@@ -8058,11 +8240,11 @@       "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
     },
     "ignore": {
       "version": "5.1.8",
-{
+  "version": "4.0.17",
         "power-assert": "1.6.1",
+      "license": "MIT",
-{
   "version": "4.0.17",
-    "node_modules/@babel/code-frame": {
+        "content-type": "~1.0.4",
       "dev": true
     },
     "import-fresh": {
@@ -8405,28 +8588,10 @@             "is-unicode-supported": "^0.1.0"
           }
         },
   "name": "NeteaseCloudMusicApi",
-      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
-          "version": "4.0.4",
-          "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
-          "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
-          "dev": true,
-          "requires": {
-            "braces": "^3.0.1",
-            "picomatch": "^2.2.3"
-          }
-        },
-  "name": "NeteaseCloudMusicApi",
       "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
           "version": "2.1.2",
           "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
       "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
-  "name": "NeteaseCloudMusicApi",
-          "dev": true
-        },
-        "picomatch": {
-          "version": "2.2.3",
-          "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.3.tgz",
-        "color-convert": "^1.9.0"
   "name": "NeteaseCloudMusicApi",
           "dev": true
         },
@@ -8519,13 +8684,6 @@         "p-locate": "^5.0.0"
       }
     },
         "color-convert": "^1.9.0"
-    "": {
-      "version": "4.17.21",
-      "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
-      "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
-      "dev": true
-    },
-        "color-convert": "^1.9.0"
       "version": "4.0.17",
       "version": "4.5.0",
       "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
@@ -8625,6 +8783,15 @@           }
         }
       }
     },
+    "lru-cache": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+      "dev": true,
+      "requires": {
+        "yallist": "^4.0.0"
+      }
+    },
     "md5": {
       "version": "2.3.0",
       "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz",
@@ -8662,11 +8829,11 @@       "dev": true
     },
     "merge2": {
       "version": "1.4.1",
-    "node_modules/@typescript-eslint/eslint-plugin": {
+  "version": "4.0.17",
   "version": "4.0.17",
+      "integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==",
-{
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
   "packages": {
-        "md5": "^2.3.0",
       "dev": true
     },
     "methods": {
@@ -8676,20 +8843,21 @@       "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
     },
     "micromatch": {
 {
-  "packages": {
+  "requires": true,
       },
 {
-  "packages": {
+  "requires": true,
       "bin": {
 {
-  "packages": {
+  "requires": true,
         "NeteaseCloudMusicApi": "app.js"
       "dev": true,
       "requires": {
         "braces": "^3.0.1",
 {
-      "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+  "requires": true,
   "name": "NeteaseCloudMusicApi",
+  "version": "4.0.17",
       }
     },
     "mime": {
@@ -9198,13 +9366,12 @@       "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.0.tgz",
       "integrity": "sha512-KGuODSTV6hcgdZvDrIDBUkN0utcAVj1LL7FfGbM0viKTtCHmtZcuEJ+lGqsp0fTFkGqesdtemV2yUSMeyy3ddA=="
     },
     "picomatch": {
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
 {
-        "supports-color": {
   "version": "4.0.17",
+        "raw-body": "2.4.0",
-        "tunnel": "^0.0.6"
+      "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
       "version": "4.0.17",
-  "lockfileVersion": 2,
-      "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=",
       "dev": true
     },
     "please-upgrade-node": {
@@ -9417,6 +9583,13 @@       "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz",
       "integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw="
     },
   "version": "4.0.17",
+      "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
+      "version": "1.2.3",
+      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+      "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+      "dev": true
+    },
+  "version": "4.0.17",
       "version": "4.0.6",
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
@@ -9567,10 +9740,10 @@       }
     },
     "reusify": {
       "version": "1.0.4",
-        "lodash": "^4.17.15",
+        "mocha": "8.4.0",
     "": {
   "name": "NeteaseCloudMusicApi",
-      "version": "0.4.3",
+      "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
       "dev": true
     },
     "rimraf": {
@@ -9582,16 +9756,20 @@         "glob": "^7.1.3"
       }
     },
     "run-parallel": {
-  "name": "NeteaseCloudMusicApi",
+        "axios": "^0.21.1",
+        "mocha": "8.4.0",
     "": {
-  "packages": {
+  "lockfileVersion": 2,
-      "bin": {
+        "mocha": "8.4.0",
     "": {
-    "": {
+  "requires": true,
+      "dev": true,
   "name": "NeteaseCloudMusicApi",
+    "node_modules/cli-cursor": {
+        "mocha": "8.4.0",
     "": {
-      "version": "4.0.17",
+  "packages": {
-      "dev": true
+      }
     },
     "rxjs": {
       "version": "6.6.7",
@@ -9620,15 +9799,18 @@       "resolved": "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz",
       "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo="
     },
     "semver": {
-      "bin": {
+      "version": "7.3.5",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
+    "node_modules/base64-js": {
       "license": "MIT",
-  "packages": {
+      "dev": true,
   "name": "NeteaseCloudMusicApi",
-      "license": "MIT",
+  "lockfileVersion": 2,
     "": {
+  "lockfileVersion": 2,
-    "node_modules/@typescript-eslint/visitor-keys": {
+        "mocha": "8.4.0",
       "version": "4.0.17",
-      "dev": true
+      }
     },
     "semver-compare": {
       "version": "1.0.0",
@@ -9716,11 +9897,10 @@       "dev": true
     },
     "slash": {
       "version": "3.0.0",
-  "name": "NeteaseCloudMusicApi",
+      "version": "1.5.1",
 {
-      "version": "7.12.13",
+      "version": "1.5.1",
   "name": "NeteaseCloudMusicApi",
-    "node_modules/@types/json-schema": {
       "dev": true
     },
     "slice-ansi": {
@@ -10066,12 +10246,13 @@       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
       "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
     },
     "tsutils": {
-        "node": ">=0.4.0"
+        "mocha": "8.4.0",
       "version": "4.0.17",
+  "version": "4.0.17",
-      "devDependencies": {
+        "mocha": "8.4.0",
       "version": "4.0.17",
-      "license": "MIT",
+  "lockfileVersion": 2,
-      "integrity": "sha1-7XGZF/EcoN7lhicrKsSeAVot11k=",
+      "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
       "dev": true,
       "requires": {
         "tslib": "^1.8.1"
@@ -10080,9 +10261,9 @@       "dependencies": {
         "tslib": {
           "version": "1.14.1",
   "version": "4.0.17",
-    "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
+    "node_modules/@types/json-schema": {
   "version": "4.0.17",
-    "node_modules/@typescript-eslint/typescript-estree/node_modules/ms": {
+      "version": "7.0.6",
           "dev": true
         }
       }
@@ -10333,6 +10514,12 @@     "y18n": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz",
       "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ=="
+    },
+    "yallist": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+      "dev": true
     },
     "yaml": {
       "version": "1.10.2",




diff --git a/package.json b/package.json
index 88f783b3cdd224a0aebbd195a5f45301c75be256..8df55f74fd7dc37b2636ddec0ab94f11c2811735 100644
--- a/package.json
+++ b/package.json
@@ -55,8 +55,8 @@     "tunnel": "^0.0.6"
   },
   "devDependencies": {
     "@types/node": "14.17.9",
-    "@typescript-eslint/eslint-plugin": "4.4.1",
+    "@typescript-eslint/eslint-plugin": "4.29.1",
-    "@typescript-eslint/parser": "4.4.1",
+    "@typescript-eslint/parser": "4.29.1",
     "eslint": "7.32.0",
     "eslint-config-prettier": "8.3.0",
     "eslint-plugin-html": "6.1.2",