From bebc93b838461d49a77bfaf2eab3dc85a18f7d96 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 22 Mar 2023 07:48:44 +0100
Subject: [PATCH 01/55] :arrow_up:(deps-dev): Bump @nestjs/testing from 9.3.9
to 9.3.10 (#124)
Bumps [@nestjs/testing](https://github.com/nestjs/nest) from 9.3.9 to 9.3.10.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.9...v9.3.10)
---
updated-dependencies:
- dependency-name: "@nestjs/testing"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package.json b/package.json
index dc75e73..140fadb 100644
--- a/package.json
+++ b/package.json
@@ -47,7 +47,7 @@
"devDependencies": {
"@nestjs/cli": "^9.2.0",
"@nestjs/schematics": "^9.0.0",
- "@nestjs/testing": "^9.3.9",
+ "@nestjs/testing": "^9.3.10",
"@types/cron": "^2.0.0",
"@types/express": "^4.17.13",
"@types/jest": "28.1.8",
diff --git a/yarn.lock b/yarn.lock
index e3051f1..5758950 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -911,10 +911,10 @@
boxen "5.1.2"
check-disk-space "3.3.1"
-"@nestjs/testing@^9.3.9":
- version "9.3.9"
- resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-9.3.9.tgz#f09a5df30cb1725a06f9fddd666543bbeb87eb35"
- integrity sha512-+mPvSVvSC2SAkYgZZv1mOI2xsdGc1pmq7/sem7iin/JDoFtlvoGSK+pfZHD3IV3EpYtq1v/8/5gi+UFH9yZnDg==
+"@nestjs/testing@^9.3.10":
+ version "9.3.10"
+ resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-9.3.10.tgz#d0229d4d338806758dae824bdbeb935e097d4901"
+ integrity sha512-TGspJkzDx1YmJzlmNG5WrhFa7IGgXbCVt4UXvBVqEk2QRPmJFZnqd0T9waKZ+SxwH4gY5sdw2niTFvOgqGVfJw==
dependencies:
tslib "2.5.0"
From 70f3aa76ee580445073f22f5457742410b00b01d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 22 Mar 2023 07:48:59 +0100
Subject: [PATCH 02/55] :arrow_up:(deps): Bump @nestjs/common from 9.3.9 to
9.3.10 (#123)
Bumps [@nestjs/common](https://github.com/nestjs/nest) from 9.3.9 to 9.3.10.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.9...v9.3.10)
---
updated-dependencies:
- dependency-name: "@nestjs/common"
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package.json b/package.json
index 140fadb..a339636 100644
--- a/package.json
+++ b/package.json
@@ -26,7 +26,7 @@
"@discordjs/opus": "^0.9.0",
"@discordjs/voice": "^0.15.0",
"@jellyfin/sdk": "^0.7.0",
- "@nestjs/common": "^9.0.0",
+ "@nestjs/common": "^9.3.10",
"@nestjs/config": "^2.2.0",
"@nestjs/core": "^9.0.0",
"@nestjs/event-emitter": "^1.3.1",
diff --git a/yarn.lock b/yarn.lock
index 5758950..bf8e93a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -823,10 +823,10 @@
webpack "5.75.0"
webpack-node-externals "3.0.0"
-"@nestjs/common@^9.0.0":
- version "9.3.9"
- resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-9.3.9.tgz#170201ce1c2a8f73bd4babe74b64a2a0b37a95d0"
- integrity sha512-GshTD9Xz+wD2em6NyzU4NXw5IXMUmapgDgD+iuj6XL0258hvDwODmNk37mBBnZvTZlqER+krvIUKnS34etqF/A==
+"@nestjs/common@^9.3.10":
+ version "9.3.10"
+ resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-9.3.10.tgz#c137402cad41123eaf5c74c2404e92490f9bbd50"
+ integrity sha512-wj2bM9TXBlAvzgznkID0s7bN/niVn90sZIDtRFDnvaB1qagEpkWA0Bt39qilIuqdReluIaCjeEW106U0oyz+mQ==
dependencies:
uid "2.0.1"
iterare "1.2.1"
From 07f728126766783b20c9217249d27317e226eba9 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 22 Mar 2023 07:49:26 +0100
Subject: [PATCH 03/55] :arrow_up:(deps): Bump @nestjs/platform-express from
9.3.9 to 9.3.10 (#122)
Bumps [@nestjs/platform-express](https://github.com/nestjs/nest) from 9.3.9 to 9.3.10.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.9...v9.3.10)
---
updated-dependencies:
- dependency-name: "@nestjs/platform-express"
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 40 ++++++++++++++++++++++++++++++++++------
2 files changed, 35 insertions(+), 7 deletions(-)
diff --git a/package.json b/package.json
index a339636..9fe3a57 100644
--- a/package.json
+++ b/package.json
@@ -30,7 +30,7 @@
"@nestjs/config": "^2.2.0",
"@nestjs/core": "^9.0.0",
"@nestjs/event-emitter": "^1.3.1",
- "@nestjs/platform-express": "^9.0.0",
+ "@nestjs/platform-express": "^9.3.10",
"@nestjs/schedule": "^2.1.0",
"@nestjs/serve-static": "^3.0.1",
"@nestjs/terminus": "^9.1.4",
diff --git a/yarn.lock b/yarn.lock
index bf8e93a..a469a36 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -866,12 +866,12 @@
resolved "https://registry.yarnpkg.com/@nestjs/mapped-types/-/mapped-types-1.2.2.tgz#d9ddb143776e309dbc1a518ac1607fddac1e140e"
integrity sha512-3dHxLXs3M0GPiriAcCFFJQHoDFUuzTD5w6JDhE7TyfT89YKpe6tcCCIqOZWdXmt9AZjjK30RkHRSFF+QEnWFQg==
-"@nestjs/platform-express@^9.0.0":
- version "9.3.9"
- resolved "https://registry.yarnpkg.com/@nestjs/platform-express/-/platform-express-9.3.9.tgz#557ace8589b54d4ee7bad87a1247a521058395d7"
- integrity sha512-f8ja2sYuDGj2QSMmjg05n3WF19wJG5yTiYxRi64nsu5GKL0qLM1LzxNemehkni/knExlvF2bDpbKKpna9nC1JA==
+"@nestjs/platform-express@^9.3.10":
+ version "9.3.10"
+ resolved "https://registry.yarnpkg.com/@nestjs/platform-express/-/platform-express-9.3.10.tgz#5493bd4dc3f5f28e3224afd56d113017b746f3d6"
+ integrity sha512-5aWokr8s0pipD5c/n40xC1iv3cMXfWrOhciX430p53cy4uyTAE+sTBk0PhB6tdG8NpK33aNqqHz/tyKlauQu/Q==
dependencies:
- body-parser "1.20.1"
+ body-parser "1.20.2"
cors "2.8.5"
express "4.18.2"
multer "1.4.4-lts.1"
@@ -1777,6 +1777,24 @@ body-parser@1.20.1:
type-is "~1.6.18"
unpipe "1.0.0"
+body-parser@1.20.2:
+ version "1.20.2"
+ resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.2.tgz#6feb0e21c4724d06de7ff38da36dad4f57a747fd"
+ integrity sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==
+ dependencies:
+ bytes "3.1.2"
+ content-type "~1.0.5"
+ debug "2.6.9"
+ depd "2.0.0"
+ destroy "1.2.0"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ on-finished "2.4.1"
+ qs "6.11.0"
+ raw-body "2.5.2"
+ type-is "~1.6.18"
+ unpipe "1.0.0"
+
boxen@5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50"
@@ -2122,7 +2140,7 @@ content-disposition@0.5.4:
dependencies:
safe-buffer "5.2.1"
-content-type@~1.0.4:
+content-type@~1.0.4, content-type@~1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
@@ -4413,6 +4431,16 @@ raw-body@2.5.1:
iconv-lite "0.4.24"
unpipe "1.0.0"
+raw-body@2.5.2:
+ version "2.5.2"
+ resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a"
+ integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==
+ dependencies:
+ bytes "3.1.2"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ unpipe "1.0.0"
+
react-is@^18.0.0:
version "18.2.0"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
From ddf7e52b7c021b558770ac30e6d60bfddf38f98f Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat, 25 Mar 2023 21:03:19 +0100
Subject: [PATCH 04/55] :arrow_up:(deps-dev): Bump @nestjs/cli from 9.2.0 to
9.3.0 (#120)
Bumps [@nestjs/cli](https://github.com/nestjs/nest-cli) from 9.2.0 to 9.3.0.
- [Release notes](https://github.com/nestjs/nest-cli/releases)
- [Changelog](https://github.com/nestjs/nest-cli/blob/master/.release-it.json)
- [Commits](https://github.com/nestjs/nest-cli/compare/9.2.0...9.3.0)
---
updated-dependencies:
- dependency-name: "@nestjs/cli"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 175 ++++++++++++++++++++++++---------------------------
2 files changed, 83 insertions(+), 94 deletions(-)
diff --git a/package.json b/package.json
index 9fe3a57..d8703b0 100644
--- a/package.json
+++ b/package.json
@@ -45,7 +45,7 @@
"ws": "^8.13.0"
},
"devDependencies": {
- "@nestjs/cli": "^9.2.0",
+ "@nestjs/cli": "^9.3.0",
"@nestjs/schematics": "^9.0.0",
"@nestjs/testing": "^9.3.10",
"@types/cron": "^2.0.0",
diff --git a/yarn.lock b/yarn.lock
index a469a36..c32e286 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -21,10 +21,10 @@
rxjs "6.6.7"
source-map "0.7.4"
-"@angular-devkit/core@15.1.4":
- version "15.1.4"
- resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-15.1.4.tgz#462f123d56f9298cb04b3fa31b425fc31abb76c5"
- integrity sha512-PW5MRmd9DHJR4FaXchwQtj9pXnsghSTnwRvfZeCRNYgU2sv0DKyTV+YTSJB+kNXnoPNG1Je6amDEkiXecpspXg==
+"@angular-devkit/core@15.2.4":
+ version "15.2.4"
+ resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-15.2.4.tgz#f7696f09c66d01568a07f0e71672e887fdf57280"
+ integrity sha512-yl+0j1bMwJLKShsyCXw77tbJG8Sd21+itisPLL2MgEpLNAO252kr9zG4TLlFRJyKVftm2l1h78KjqvM5nbOXNg==
dependencies:
ajv "8.12.0"
ajv-formats "2.1.1"
@@ -32,13 +32,13 @@
rxjs "6.6.7"
source-map "0.7.4"
-"@angular-devkit/schematics-cli@15.1.4":
- version "15.1.4"
- resolved "https://registry.yarnpkg.com/@angular-devkit/schematics-cli/-/schematics-cli-15.1.4.tgz#f2ea0379e27ddd6b05b302dd88b8d3f1b6c49ec8"
- integrity sha512-qkM5Mfs28jZzNcJnSM6RlyrKkYvzhQmWFTxBXnn15k5T4EnSs1gI6O054Xn7jo/senfwNNt7h2Mlz2OmBLo6+w==
+"@angular-devkit/schematics-cli@15.2.4":
+ version "15.2.4"
+ resolved "https://registry.yarnpkg.com/@angular-devkit/schematics-cli/-/schematics-cli-15.2.4.tgz#c3a4c162779773d312d36cb23f3dd44d741d7225"
+ integrity sha512-QTTKEH5HOkxvQtCxb2Lna2wubehkaIzA6DKUBISijPQliLomw74tzc7lXCywmMqRTbQPVRLG3kBK97hR4x67nA==
dependencies:
- "@angular-devkit/core" "15.1.4"
- "@angular-devkit/schematics" "15.1.4"
+ "@angular-devkit/core" "15.2.4"
+ "@angular-devkit/schematics" "15.2.4"
ansi-colors "4.1.3"
inquirer "8.2.4"
symbol-observable "4.0.0"
@@ -55,14 +55,14 @@
ora "5.4.1"
rxjs "6.6.7"
-"@angular-devkit/schematics@15.1.4":
- version "15.1.4"
- resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-15.1.4.tgz#30e38777f1bd98e20e6dbe1bfddabc3bcd42605f"
- integrity sha512-jpddxo9Qd2yRQ1t9FLhAx5S+luz6HkyhDytq0LFKbxf9ikf1J4oy9riPBFl4pRmrNARWcHZ6GbD20/Ky8PjmXQ==
+"@angular-devkit/schematics@15.2.4":
+ version "15.2.4"
+ resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-15.2.4.tgz#85129ebabcdb362f4b65a6e290bb2ae846f3d64c"
+ integrity sha512-/W7/vvn59PAVLzhcvD4/N/E8RDhub8ny1A7I96LTRjC5o+yvVV16YJ4YJzolrRrIEN01KmLVQJ9A58VCaweMgw==
dependencies:
- "@angular-devkit/core" "15.1.4"
+ "@angular-devkit/core" "15.2.4"
jsonc-parser "3.2.0"
- magic-string "0.27.0"
+ magic-string "0.29.0"
ora "5.4.1"
rxjs "6.6.7"
@@ -795,32 +795,32 @@
resolved "https://registry.yarnpkg.com/@lukeed/csprng/-/csprng-1.0.1.tgz#625e93a0edb2c830e3c52ce2d67b9d53377c6a66"
integrity sha512-uSvJdwQU5nK+Vdf6zxcWAY2A8r7uqe+gePwLWzJ+fsQehq18pc0I2hJKwypZ2aLM90+Er9u1xn4iLJPZ+xlL4g==
-"@nestjs/cli@^9.2.0":
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/@nestjs/cli/-/cli-9.2.0.tgz#d174f54d7aaa6695b8e413093e3d18367bc8bec7"
- integrity sha512-6B1IjDcJbrOu55oMF67L1x5lDUOZ3Zs9l7bKCBH9D78965m8wq/2rlEWl/gJto5TABLQWy3hVvV/s8VzUlRMxw==
+"@nestjs/cli@^9.3.0":
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/cli/-/cli-9.3.0.tgz#654ae6999d06c6da4ca17d5bdf68b7a85429938e"
+ integrity sha512-v/E8Y3zFk30+FljETvPgpoGIUiOfWuOe6WUFw3ExGfDeWrF/A8ceupDHPWNknBAqvNtz2kVrWu5mwsZUEKGIgg==
dependencies:
- "@angular-devkit/core" "15.1.4"
- "@angular-devkit/schematics" "15.1.4"
- "@angular-devkit/schematics-cli" "15.1.4"
- "@nestjs/schematics" "^9.0.0"
- chalk "3.0.0"
+ "@angular-devkit/core" "15.2.4"
+ "@angular-devkit/schematics" "15.2.4"
+ "@angular-devkit/schematics-cli" "15.2.4"
+ "@nestjs/schematics" "^9.0.4"
+ chalk "4.1.2"
chokidar "3.5.3"
cli-table3 "0.6.3"
commander "4.1.1"
- fork-ts-checker-webpack-plugin "7.3.0"
- inquirer "7.3.3"
+ fork-ts-checker-webpack-plugin "8.0.0"
+ inquirer "8.2.5"
node-emoji "1.11.0"
ora "5.4.1"
os-name "4.0.1"
- rimraf "4.1.2"
+ rimraf "4.4.0"
shelljs "0.8.5"
source-map-support "0.5.21"
tree-kill "1.2.2"
tsconfig-paths "4.1.2"
- tsconfig-paths-webpack-plugin "4.0.0"
+ tsconfig-paths-webpack-plugin "4.0.1"
typescript "4.9.5"
- webpack "5.75.0"
+ webpack "5.76.2"
webpack-node-externals "3.0.0"
"@nestjs/common@^9.3.10":
@@ -885,7 +885,7 @@
cron "2.2.0"
uuid "9.0.0"
-"@nestjs/schematics@^9.0.0":
+"@nestjs/schematics@^9.0.0", "@nestjs/schematics@^9.0.4":
version "9.0.4"
resolved "https://registry.yarnpkg.com/@nestjs/schematics/-/schematics-9.0.4.tgz#ab612f5a8e006ca1d617eddc8143ee00b766312b"
integrity sha512-egurCfAc4e5i1r2TmeAF0UrOKejFmT5oTdv4b7HcOVPupc3QGU7CbEfGleL3mkM5AjrixTQeMxU9bJ00ttAbGg==
@@ -1908,10 +1908,10 @@ caniuse-lite@^1.0.30001449:
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001466.tgz#c1e6197c540392e09709ecaa9e3e403428c53375"
integrity sha512-ewtFBSfWjEmxUgNBSZItFSmVtvk9zkwkl1OfRZlKA8slltRN+/C/tuGVrF9styXkN36Yu3+SeJ1qkXxDEyNZ5w==
-chalk@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4"
- integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
+chalk@4.1.2, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
+ integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
dependencies:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
@@ -1925,14 +1925,6 @@ chalk@^2.0.0:
escape-string-regexp "^1.0.5"
supports-color "^5.3.0"
-chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
char-regex@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
@@ -2780,10 +2772,10 @@ follow-redirects@^1.14.9:
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
-fork-ts-checker-webpack-plugin@7.3.0:
- version "7.3.0"
- resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-7.3.0.tgz#a9c984a018493962360d7c7e77a67b44a2d5f3aa"
- integrity sha512-IN+XTzusCjR5VgntYFgxbxVx3WraPRnKehBFrf00cMSrtUuW9MsG9dhL6MWpY6MkjC3wVwoujfCDgZZCQwbswA==
+fork-ts-checker-webpack-plugin@8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-8.0.0.tgz#dae45dfe7298aa5d553e2580096ced79b6179504"
+ integrity sha512-mX3qW3idpueT2klaQXBzrIM/pHw+T0B/V9KHEvNrqijTq9NFnMZU6oreVxDYcf33P8a5cW+67PjodNHthGnNVg==
dependencies:
"@babel/code-frame" "^7.16.7"
chalk "^4.1.2"
@@ -3115,25 +3107,6 @@ inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-inquirer@7.3.3:
- version "7.3.3"
- resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003"
- integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==
- dependencies:
- ansi-escapes "^4.2.1"
- chalk "^4.1.0"
- cli-cursor "^3.1.0"
- cli-width "^3.0.0"
- external-editor "^3.0.3"
- figures "^3.0.0"
- lodash "^4.17.19"
- mute-stream "0.0.8"
- run-async "^2.4.0"
- rxjs "^6.6.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
- through "^2.3.6"
-
inquirer@8.2.4:
version "8.2.4"
resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.4.tgz#ddbfe86ca2f67649a67daa6f1051c128f684f0b4"
@@ -3155,6 +3128,27 @@ inquirer@8.2.4:
through "^2.3.6"
wrap-ansi "^7.0.0"
+inquirer@8.2.5:
+ version "8.2.5"
+ resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.5.tgz#d8654a7542c35a9b9e069d27e2df4858784d54f8"
+ integrity sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==
+ dependencies:
+ ansi-escapes "^4.2.1"
+ chalk "^4.1.1"
+ cli-cursor "^3.1.0"
+ cli-width "^3.0.0"
+ external-editor "^3.0.3"
+ figures "^3.0.0"
+ lodash "^4.17.21"
+ mute-stream "0.0.8"
+ ora "^5.4.1"
+ run-async "^2.4.0"
+ rxjs "^7.5.5"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+ through "^2.3.6"
+ wrap-ansi "^7.0.0"
+
interpret@^1.0.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e"
@@ -3809,7 +3803,7 @@ lodash.snakecase@^4.1.1:
resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d"
integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==
-lodash@4.17.21, lodash@^4.17.19, lodash@^4.17.21:
+lodash@4.17.21, lodash@^4.17.21:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -3858,10 +3852,10 @@ magic-string@0.26.7:
dependencies:
sourcemap-codec "^1.4.8"
-magic-string@0.27.0:
- version "0.27.0"
- resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.27.0.tgz#e4a3413b4bab6d98d2becffd48b4a257effdbbf3"
- integrity sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==
+magic-string@0.29.0:
+ version "0.29.0"
+ resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.29.0.tgz#f034f79f8c43dba4ae1730ffb5e8c4e084b16cf3"
+ integrity sha512-WcfidHrDjMY+eLjlU+8OvwREqHwpgCeKVBUpQ3OhYYuvfaYCUgcbuBzappNzZvg/v8onU3oQj+BYpkOJe9Iw4Q==
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.13"
@@ -4548,10 +4542,12 @@ reusify@^1.0.4:
resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-rimraf@4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.1.2.tgz#20dfbc98083bdfaa28b01183162885ef213dbf7c"
- integrity sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==
+rimraf@4.4.0, rimraf@^4.4.0:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.4.0.tgz#c7a9f45bb2ec058d2e60ef9aca5167974313d605"
+ integrity sha512-X36S+qpCUR0HjXlkDe4NAOhS//aHH0Z+h8Ckf2auGJk3PTnx5rLmrHkwNdbVQuCSUhOyFrlRvFEllZOYE+yZGQ==
+ dependencies:
+ glob "^9.2.0"
rimraf@^3.0.0, rimraf@^3.0.2:
version "3.0.2"
@@ -4560,13 +4556,6 @@ rimraf@^3.0.0, rimraf@^3.0.2:
dependencies:
glob "^7.1.3"
-rimraf@^4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.4.0.tgz#c7a9f45bb2ec058d2e60ef9aca5167974313d605"
- integrity sha512-X36S+qpCUR0HjXlkDe4NAOhS//aHH0Z+h8Ckf2auGJk3PTnx5rLmrHkwNdbVQuCSUhOyFrlRvFEllZOYE+yZGQ==
- dependencies:
- glob "^9.2.0"
-
run-async@^2.4.0:
version "2.4.1"
resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455"
@@ -4579,7 +4568,7 @@ run-parallel@^1.1.9:
dependencies:
queue-microtask "^1.2.2"
-rxjs@6.6.7, rxjs@^6.6.0:
+rxjs@6.6.7:
version "6.6.7"
resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
@@ -5062,16 +5051,16 @@ ts-node@^10.0.0:
v8-compile-cache-lib "^3.0.1"
yn "3.1.1"
-tsconfig-paths-webpack-plugin@4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.0.0.tgz#84008fc3e3e0658fdb0262758b07b4da6265ff1a"
- integrity sha512-fw/7265mIWukrSHd0i+wSwx64kYUSAKPfxRDksjKIYTxSAp9W9/xcZVBF4Kl0eqQd5eBpAQ/oQrc5RyM/0c1GQ==
+tsconfig-paths-webpack-plugin@4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.0.1.tgz#a24651d0f69668a1abad38d3c2489855c257460d"
+ integrity sha512-m5//KzLoKmqu2MVix+dgLKq70MnFi8YL8sdzQZ6DblmCdfuq/y3OqvJd5vMndg2KEVCOeNz8Es4WVZhYInteLw==
dependencies:
chalk "^4.1.0"
enhanced-resolve "^5.7.0"
- tsconfig-paths "^4.0.0"
+ tsconfig-paths "^4.1.2"
-tsconfig-paths@4.1.2, tsconfig-paths@^4.0.0:
+tsconfig-paths@4.1.2, tsconfig-paths@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz#4819f861eef82e6da52fb4af1e8c930a39ed979a"
integrity sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw==
@@ -5252,10 +5241,10 @@ webpack-sources@^3.2.3:
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde"
integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
-webpack@5.75.0:
- version "5.75.0"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.75.0.tgz#1e440468647b2505860e94c9ff3e44d5b582c152"
- integrity sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==
+webpack@5.76.2:
+ version "5.76.2"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.76.2.tgz#6f80d1c1d1e3bf704db571b2504a0461fac80230"
+ integrity sha512-Th05ggRm23rVzEOlX8y67NkYCHa9nTNcwHPBhdg+lKG+mtiW7XgggjAeeLnADAe7mLjJ6LUNfgHAuRRh+Z6J7w==
dependencies:
"@types/eslint-scope" "^3.7.3"
"@types/estree" "^0.0.51"
From c01ac56061986fb4525327ee220aaa4eb1b95b58 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat, 25 Mar 2023 21:03:28 +0100
Subject: [PATCH 05/55] :arrow_up:(deps): Bump @nestjs/core from 9.3.9 to
9.3.11 (#125)
Bumps [@nestjs/core](https://github.com/nestjs/nest) from 9.3.9 to 9.3.11.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.9...v9.3.11)
---
updated-dependencies:
- dependency-name: "@nestjs/core"
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package.json b/package.json
index d8703b0..6a10dce 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,7 @@
"@jellyfin/sdk": "^0.7.0",
"@nestjs/common": "^9.3.10",
"@nestjs/config": "^2.2.0",
- "@nestjs/core": "^9.0.0",
+ "@nestjs/core": "^9.3.11",
"@nestjs/event-emitter": "^1.3.1",
"@nestjs/platform-express": "^9.3.10",
"@nestjs/schedule": "^2.1.0",
diff --git a/yarn.lock b/yarn.lock
index c32e286..ad509fd 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -842,10 +842,10 @@
lodash "4.17.21"
uuid "9.0.0"
-"@nestjs/core@^9.0.0":
- version "9.3.9"
- resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-9.3.9.tgz#694caf785e0209175479637f11be79a930d0c0d6"
- integrity sha512-9g1A1G9eirLXEpH21rc6dKb08zHc2+adhCRz8NW39hbejcsxxD72FApJzt4QBQAKvu862ixt/tdpStnFT7lOSw==
+"@nestjs/core@^9.3.11":
+ version "9.3.11"
+ resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-9.3.11.tgz#1be65db0e889f8f12b87aec12c9cf66ea6043205"
+ integrity sha512-CI27a2JFd5rvvbgkalWqsiwQNhcP4EAG5BUK8usjp29wVp1kx30ghfBT8FLqIgmkRVo65A0IcEnWsxeXMntkxQ==
dependencies:
uid "2.0.1"
"@nuxtjs/opencollective" "0.3.2"
From 2141880b4401a58b23adea2da4a0215f2ddfbbaf Mon Sep 17 00:00:00 2001
From: Manuel <30572287+manuel-rw@users.noreply.github.com>
Date: Sat, 25 Mar 2023 22:03:06 +0100
Subject: [PATCH 06/55] =?UTF-8?q?=F0=9F=90=9B=20Fix=20crash=20with=20empty?=
=?UTF-8?q?=20playlists=20(#128)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/commands/play/play.comands.ts | 4 ++++
src/models/shared/Playlist.ts | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/src/commands/play/play.comands.ts b/src/commands/play/play.comands.ts
index 72ffbab..0e72eb4 100644
--- a/src/commands/play/play.comands.ts
+++ b/src/commands/play/play.comands.ts
@@ -94,10 +94,14 @@ export class PlayItemCommand {
}
const tracks = await item.toTracks(this.jellyfinSearchService);
+ this.logger.debug(`Extracted ${tracks.length} tracks from the search item`);
const reducedDuration = tracks.reduce(
(sum, item) => sum + item.duration,
0,
);
+ this.logger.debug(
+ `Adding ${tracks.length} tracks with a duration of ${reducedDuration} ticks`,
+ );
this.playbackService.getPlaylistOrDefault().enqueueTracks(tracks);
const remoteImage: RemoteImageInfo | undefined = tracks
diff --git a/src/models/shared/Playlist.ts b/src/models/shared/Playlist.ts
index 37145a5..f96ebea 100644
--- a/src/models/shared/Playlist.ts
+++ b/src/models/shared/Playlist.ts
@@ -84,6 +84,10 @@ export class Playlist {
* @returns the new lendth of the tracks in the playlist
*/
enqueueTracks(tracks: Track[]) {
+ if (tracks.length === 0) {
+ return 0;
+ }
+
this.eventEmitter.emit('controls.playlist.tracks.enqueued', {
count: tracks.length,
activeTrack: this.activeTrackIndex,
From 2c15e38b9491b0b1bc31adf7bd01a349d280bec2 Mon Sep 17 00:00:00 2001
From: Manuel <30572287+manuel-rw@users.noreply.github.com>
Date: Sun, 26 Mar 2023 00:02:57 +0100
Subject: [PATCH 07/55] =?UTF-8?q?=E2=9C=A8=20Add=20enqueue=20random=20item?=
=?UTF-8?q?s=20command=20(#130)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../discord/discord.message.service.ts | 2 +-
.../jellyfin/jellyfin.search.service.ts | 24 ++++++
src/commands/command.module.ts | 2 +
src/commands/random/random.command.ts | 77 +++++++++++++++++++
src/commands/random/random.params.ts | 12 +++
src/models/search/SearchHint.ts | 15 +++-
6 files changed, 129 insertions(+), 3 deletions(-)
create mode 100644 src/commands/random/random.command.ts
create mode 100644 src/commands/random/random.params.ts
diff --git a/src/clients/discord/discord.message.service.ts b/src/clients/discord/discord.message.service.ts
index 3b76577..86e8d52 100644
--- a/src/clients/discord/discord.message.service.ts
+++ b/src/clients/discord/discord.message.service.ts
@@ -39,7 +39,7 @@ export class DiscordMessageService {
}: {
title: string;
description?: string;
- authorUrl?: string;
+ authorUrl?: string | undefined;
mixin?: (embedBuilder: EmbedBuilder) => EmbedBuilder;
}): APIEmbed {
let embedBuilder = new EmbedBuilder()
diff --git a/src/clients/jellyfin/jellyfin.search.service.ts b/src/clients/jellyfin/jellyfin.search.service.ts
index 0f9c087..626d73f 100644
--- a/src/clients/jellyfin/jellyfin.search.service.ts
+++ b/src/clients/jellyfin/jellyfin.search.service.ts
@@ -170,6 +170,30 @@ export class JellyfinSearchService {
}
}
+ async getRandomTracks(limit: number) {
+ const api = this.jellyfinService.getApi();
+ const searchApi = getItemsApi(api);
+
+ try {
+ const response = await searchApi.getItems({
+ includeItemTypes: [BaseItemKind.Audio],
+ limit: limit,
+ sortBy: ['random'],
+ userId: this.jellyfinService.getUserId(),
+ recursive: true,
+ });
+
+ return response.data.Items.map((item) => {
+ return SearchHint.constructFromBaseItem(item);
+ });
+ } catch (err) {
+ this.logger.error(
+ `Unabele to retrieve random items from Jellyfin: ${err}`,
+ );
+ return [];
+ }
+ }
+
private transformToSearchHint(jellyifnHint: JellyfinSearchHint) {
switch (jellyifnHint.Type) {
case BaseItemKind[BaseItemKind.Audio]:
diff --git a/src/commands/command.module.ts b/src/commands/command.module.ts
index c4b34f4..9981a94 100644
--- a/src/commands/command.module.ts
+++ b/src/commands/command.module.ts
@@ -15,6 +15,7 @@ import { StatusCommand } from './status.command';
import { StopPlaybackCommand } from './stop.command';
import { SummonCommand } from './summon.command';
import { PlaylistInteractionCollector } from './playlist/playlist.interaction-collector';
+import { EnqueueRandomItemsCommand } from './random/random.command';
@Module({
imports: [
@@ -28,6 +29,7 @@ import { PlaylistInteractionCollector } from './playlist/playlist.interaction-co
PlaylistInteractionCollector,
HelpCommand,
StatusCommand,
+ EnqueueRandomItemsCommand,
PlaylistCommand,
DisconnectCommand,
PausePlaybackCommand,
diff --git a/src/commands/random/random.command.ts b/src/commands/random/random.command.ts
new file mode 100644
index 0000000..9326175
--- /dev/null
+++ b/src/commands/random/random.command.ts
@@ -0,0 +1,77 @@
+import { SlashCommandPipe } from '@discord-nestjs/common';
+import { Command, Handler, IA, InteractionEvent } from '@discord-nestjs/core';
+import { Injectable } from '@nestjs/common';
+import {
+ CommandInteraction,
+ GuildMember,
+ InteractionReplyOptions,
+} from 'discord.js';
+import { DiscordMessageService } from 'src/clients/discord/discord.message.service';
+import { DiscordVoiceService } from 'src/clients/discord/discord.voice.service';
+import { JellyfinSearchService } from 'src/clients/jellyfin/jellyfin.search.service';
+import { SearchHint } from 'src/models/search/SearchHint';
+import { Track } from 'src/models/shared/Track';
+import { PlaybackService } from 'src/playback/playback.service';
+import { RandomCommandParams } from './random.params';
+
+@Command({
+ name: 'random',
+ description: 'Enqueues a random selection of tracks to your playlist',
+})
+@Injectable()
+export class EnqueueRandomItemsCommand {
+ constructor(
+ private readonly playbackService: PlaybackService,
+ private readonly discordVoiceService: DiscordVoiceService,
+ private readonly discordMessageService: DiscordMessageService,
+ private readonly jellyfinSearchService: JellyfinSearchService,
+ ) {}
+
+ @Handler()
+ async handler(
+ @InteractionEvent(SlashCommandPipe) dto: RandomCommandParams,
+ @IA() interaction: CommandInteraction,
+ ): Promise {
+ await interaction.deferReply();
+
+ const guildMember = interaction.member as GuildMember;
+
+ const tryResult =
+ this.discordVoiceService.tryJoinChannelAndEstablishVoiceConnection(
+ guildMember,
+ );
+
+ if (!tryResult.success) {
+ const replyOptions = tryResult.reply as InteractionReplyOptions;
+ await interaction.editReply({
+ embeds: replyOptions.embeds,
+ });
+ return;
+ }
+
+ const items = await this.jellyfinSearchService.getRandomTracks(dto.count);
+ const tracks = await this.getTracks(items);
+
+ this.playbackService.getPlaylistOrDefault().enqueueTracks(tracks);
+
+ await interaction.editReply({
+ embeds: [
+ this.discordMessageService.buildMessage({
+ title: `Added ${tracks.length} tracks to your playlist`,
+ description: 'Use ``/playlist`` to see them',
+ }),
+ ],
+ });
+ }
+
+ private async getTracks(hints: SearchHint[]) {
+ const promises = await Promise.all(
+ hints.flatMap(async (item) => {
+ const tracks = await item.toTracks(this.jellyfinSearchService);
+ return tracks;
+ }),
+ );
+
+ return promises.flatMap((x) => x);
+ }
+}
diff --git a/src/commands/random/random.params.ts b/src/commands/random/random.params.ts
new file mode 100644
index 0000000..6084a32
--- /dev/null
+++ b/src/commands/random/random.params.ts
@@ -0,0 +1,12 @@
+import { Param, ParamType } from '@discord-nestjs/core';
+
+export class RandomCommandParams {
+ @Param({
+ required: false,
+ description: 'Count of items to search for',
+ type: ParamType.INTEGER,
+ minValue: 0,
+ maxValue: 10000,
+ })
+ count = 20;
+}
diff --git a/src/models/search/SearchHint.ts b/src/models/search/SearchHint.ts
index c890b25..093d45a 100644
--- a/src/models/search/SearchHint.ts
+++ b/src/models/search/SearchHint.ts
@@ -1,7 +1,10 @@
-import { SearchHint as JellyfinSearchHint } from '@jellyfin/sdk/lib/generated-client/models';
+import {
+ BaseItemDto,
+ SearchHint as JellyfinSearchHint,
+} from '@jellyfin/sdk/lib/generated-client/models';
-import { Track } from '../shared/Track';
import { JellyfinSearchService } from '../../clients/jellyfin/jellyfin.search.service';
+import { Track } from '../shared/Track';
export class SearchHint {
constructor(
@@ -28,4 +31,12 @@ export class SearchHint {
static constructFromHint(hint: JellyfinSearchHint) {
return new SearchHint(hint.Id, hint.Name, hint.RunTimeTicks / 10000);
}
+
+ static constructFromBaseItem(baseItem: BaseItemDto) {
+ return new SearchHint(
+ baseItem.Id,
+ baseItem.Name,
+ baseItem.RunTimeTicks / 10000,
+ );
+ }
}
From 0130115be88eae07b3a0fb3b636e49281898bc34 Mon Sep 17 00:00:00 2001
From: Manuel <30572287+manuel-rw@users.noreply.github.com>
Date: Sun, 26 Mar 2023 00:59:20 +0100
Subject: [PATCH 08/55] =?UTF-8?q?=F0=9F=90=9B=20Fix=20missing=20remote=20i?=
=?UTF-8?q?mages=20for=20albums=20(#131)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/models/search/AlbumSearchHint.ts | 13 ++++++++++---
src/models/search/SearchHint.ts | 5 +----
src/models/shared/Track.ts | 2 +-
3 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/src/models/search/AlbumSearchHint.ts b/src/models/search/AlbumSearchHint.ts
index 4cec06c..dd4b440 100644
--- a/src/models/search/AlbumSearchHint.ts
+++ b/src/models/search/AlbumSearchHint.ts
@@ -17,10 +17,17 @@ export class AlbumSearchHint extends SearchHint {
override async toTracks(
searchService: JellyfinSearchService,
): Promise
From 41c98a3c9c7ae125a56bbf4f70bec94e4c39a762 Mon Sep 17 00:00:00 2001
From: Manuel
Date: Sat, 1 Apr 2023 13:02:59 +0200
Subject: [PATCH 39/55] =?UTF-8?q?=F0=9F=91=B7=20Fix=20coverage=20file=20fo?=
=?UTF-8?q?r=20deepsource?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/workflows/deepsource-tests.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/deepsource-tests.yml b/.github/workflows/deepsource-tests.yml
index 703f3fa..7b8b523 100644
--- a/.github/workflows/deepsource-tests.yml
+++ b/.github/workflows/deepsource-tests.yml
@@ -53,6 +53,6 @@ jobs:
curl https://deepsource.io/cli | sh
# Send the report to DeepSource
- ./bin/deepsource report --analyzer test-coverage --key javascript --value-file ./coverage/clover.xml
+ ./bin/deepsource report --analyzer test-coverage --key javascript --value-file ./coverage/lcov.info
env:
DEEPSOURCE_DSN: ${{ secrets.DEEPSOURCE_DSN }}
\ No newline at end of file
From f033790420607df2ecc66560388f4c452adf024f Mon Sep 17 00:00:00 2001
From: "deepsource-autofix[bot]"
<62050782+deepsource-autofix[bot]@users.noreply.github.com>
Date: Sat, 1 Apr 2023 11:22:32 +0000
Subject: [PATCH 40/55] refactor: Replace template strings with regular string
literals
Template literals are useful when you need: 1. [Interpolated strings](https://en.wikipedia.org/wiki/String_interpolation).
---
src/clients/discord/discord.voice.service.ts | 6 +++---
src/clients/jellyfin/jellyfin.playstate.service.ts | 4 ++--
src/clients/jellyfin/jellyfin.search.service.ts | 2 +-
src/clients/jellyfin/jellyfin.websocket.service.ts | 2 +-
src/commands/play/play.comands.ts | 2 +-
src/commands/playlist/playlist.interaction-collector.ts | 2 +-
src/commands/volume/volume.command.ts | 2 +-
7 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/clients/discord/discord.voice.service.ts b/src/clients/discord/discord.voice.service.ts
index fe86177..56bef4a 100644
--- a/src/clients/discord/discord.voice.service.ts
+++ b/src/clients/discord/discord.voice.service.ts
@@ -219,7 +219,7 @@ export class DiscordVoiceService {
if (this.audioPlayer === undefined) {
this.logger.debug(
- `Initialized new instance of AudioPlayer because it has not been defined yet`,
+ "Initialized new instance of AudioPlayer because it has not been defined yet",
);
this.audioPlayer = createAudioPlayer({
debug: process.env.DEBUG?.toLowerCase() === 'true',
@@ -265,7 +265,7 @@ export class DiscordVoiceService {
return;
}
- this.logger.debug(`Audio player finished playing old resource`);
+ this.logger.debug("Audio player finished playing old resource");
const playlist = this.playbackService.getPlaylistOrDefault();
const finishedTrack = playlist.getActiveTrack();
@@ -280,7 +280,7 @@ export class DiscordVoiceService {
);
if (!hasNextTrack) {
- this.logger.debug(`Reached the end of the playlist`);
+ this.logger.debug("Reached the end of the playlist");
return;
}
diff --git a/src/clients/jellyfin/jellyfin.playstate.service.ts b/src/clients/jellyfin/jellyfin.playstate.service.ts
index 2d75cd2..465322c 100644
--- a/src/clients/jellyfin/jellyfin.playstate.service.ts
+++ b/src/clients/jellyfin/jellyfin.playstate.service.ts
@@ -60,7 +60,7 @@ export class JellyinPlaystateService {
private async onPlaybackFinished(track: Track) {
if (!track) {
this.logger.error(
- `Unable to report playback because finished track was undefined`,
+ "Unable to report playback because finished track was undefined",
);
return;
}
@@ -78,7 +78,7 @@ export class JellyinPlaystateService {
if (!track) {
this.logger.error(
- `Unable to report changed playstate to Jellyfin because no track was active`,
+ "Unable to report changed playstate to Jellyfin because no track was active",
);
return;
}
diff --git a/src/clients/jellyfin/jellyfin.search.service.ts b/src/clients/jellyfin/jellyfin.search.service.ts
index ffe755e..0a4b62f 100644
--- a/src/clients/jellyfin/jellyfin.search.service.ts
+++ b/src/clients/jellyfin/jellyfin.search.service.ts
@@ -37,7 +37,7 @@ export class JellyfinSearchService {
if (includeItemTypes.length === 0) {
this.logger.warn(
- `Included item types are empty. This may lead to unwanted results`,
+ "Included item types are empty. This may lead to unwanted results",
);
}
diff --git a/src/clients/jellyfin/jellyfin.websocket.service.ts b/src/clients/jellyfin/jellyfin.websocket.service.ts
index 4d22d37..49ff445 100644
--- a/src/clients/jellyfin/jellyfin.websocket.service.ts
+++ b/src/clients/jellyfin/jellyfin.websocket.service.ts
@@ -123,7 +123,7 @@ export class JellyfinWebSocketService implements OnModuleDestroy {
this.handleSendPlaystateCommandRequest(sendPlaystateCommandRequest);
break;
case SessionMessageType[SessionMessageType.UserDataChanged]:
- this.logger.debug(`Received update for user session data`);
+ this.logger.debug("Received update for user session data");
break;
default:
this.logger.warn(
diff --git a/src/commands/play/play.comands.ts b/src/commands/play/play.comands.ts
index 0e72eb4..85ab999 100644
--- a/src/commands/play/play.comands.ts
+++ b/src/commands/play/play.comands.ts
@@ -70,7 +70,7 @@ export class PlayItemCommand {
embeds: [
this.discordMessageService.buildMessage({
title: 'No results found',
- description: `- Check for any misspellings\n- Grant me access to your desired libraries\n- Avoid special characters`,
+ description: "- Check for any misspellings\n- Grant me access to your desired libraries\n- Avoid special characters",
}),
],
ephemeral: true,
diff --git a/src/commands/playlist/playlist.interaction-collector.ts b/src/commands/playlist/playlist.interaction-collector.ts
index 462ad16..75ba468 100644
--- a/src/commands/playlist/playlist.interaction-collector.ts
+++ b/src/commands/playlist/playlist.interaction-collector.ts
@@ -80,7 +80,7 @@ export class PlaylistInteractionCollector {
return current - 1;
default:
this.logger.error(
- `Unable to map button interaction from collector to target page`,
+ "Unable to map button interaction from collector to target page",
);
return undefined;
}
diff --git a/src/commands/volume/volume.command.ts b/src/commands/volume/volume.command.ts
index 3bbe4ab..a777d9c 100644
--- a/src/commands/volume/volume.command.ts
+++ b/src/commands/volume/volume.command.ts
@@ -36,7 +36,7 @@ export class VolumeCommand {
await interaction.editReply({
embeds: [
this.discordMessageService.buildMessage({
- title: `Unable to change your volume`,
+ title: "Unable to change your volume",
description:
'The bot is not playing any music or is not straming to a channel',
}),
From 128cf2fd3d7384faa155f5fee166ca6054daccca Mon Sep 17 00:00:00 2001
From: Manuel
Date: Sat, 1 Apr 2023 13:27:02 +0200
Subject: [PATCH 41/55] =?UTF-8?q?=F0=9F=9A=A8=20Fix=20deepsource=20warning?=
=?UTF-8?q?s?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/clients/discord/discord.voice.service.ts | 9 ++++-----
src/clients/jellyfin/jellyfin.websocket.service.ts | 2 --
src/commands/play/play.comands.ts | 10 +++++-----
src/models/shared/Playlist.ts | 2 +-
src/updates/updates.service.spec.ts | 2 +-
5 files changed, 11 insertions(+), 14 deletions(-)
diff --git a/src/clients/discord/discord.voice.service.ts b/src/clients/discord/discord.voice.service.ts
index 56bef4a..870dfb4 100644
--- a/src/clients/discord/discord.voice.service.ts
+++ b/src/clients/discord/discord.voice.service.ts
@@ -9,7 +9,6 @@ import {
joinVoiceChannel,
NoSubscriberBehavior,
VoiceConnection,
- VoiceConnectionStatus,
} from '@discordjs/voice';
import { Injectable } from '@nestjs/common';
@@ -18,11 +17,11 @@ import { EventEmitter2, OnEvent } from '@nestjs/event-emitter';
import { GuildMember } from 'discord.js';
+import { GenericTryHandler } from '../../models/generic-try-handler';
+import { Track } from '../../models/shared/Track';
+import { PlaybackService } from '../../playback/playback.service';
import { JellyfinStreamBuilderService } from '../jellyfin/jellyfin.stream.builder.service';
import { JellyfinWebSocketService } from '../jellyfin/jellyfin.websocket.service';
-import { GenericTryHandler } from '../../models/generic-try-handler';
-import { PlaybackService } from '../../playback/playback.service';
-import { Track } from '../../models/shared/Track';
import { DiscordMessageService } from './discord.message.service';
@@ -93,7 +92,7 @@ export class DiscordVoiceService {
this.jellyfinWebSocketService.initializeAndConnect();
- if (this.voiceConnection == undefined) {
+ if (this.voiceConnection === undefined) {
this.voiceConnection = getVoiceConnection(member.guild.id);
}
diff --git a/src/clients/jellyfin/jellyfin.websocket.service.ts b/src/clients/jellyfin/jellyfin.websocket.service.ts
index 49ff445..45fe2d2 100644
--- a/src/clients/jellyfin/jellyfin.websocket.service.ts
+++ b/src/clients/jellyfin/jellyfin.websocket.service.ts
@@ -1,13 +1,11 @@
import {
PlaystateCommand,
SessionMessageType,
- UserItemDataDto,
} from '@jellyfin/sdk/lib/generated-client/models';
import { Injectable, Logger, OnModuleDestroy } from '@nestjs/common';
import { EventEmitter2 } from '@nestjs/event-emitter';
import { Cron } from '@nestjs/schedule';
-import { Session } from 'inspector';
import { WebSocket } from 'ws';
diff --git a/src/commands/play/play.comands.ts b/src/commands/play/play.comands.ts
index 85ab999..3c5fd2e 100644
--- a/src/commands/play/play.comands.ts
+++ b/src/commands/play/play.comands.ts
@@ -20,14 +20,14 @@ import {
InteractionReplyOptions,
} from 'discord.js';
-import { PlaybackService } from '../../playback/playback.service';
-import { formatMillisecondsAsHumanReadable } from '../../utils/timeUtils';
import { DiscordMessageService } from '../../clients/discord/discord.message.service';
import { DiscordVoiceService } from '../../clients/discord/discord.voice.service';
import { JellyfinSearchService } from '../../clients/jellyfin/jellyfin.search.service';
import { SearchHint } from '../../models/search/SearchHint';
+import { PlaybackService } from '../../playback/playback.service';
+import { formatMillisecondsAsHumanReadable } from '../../utils/timeUtils';
-import { SearchType, PlayCommandParams } from './play.params.ts';
+import { PlayCommandParams, SearchType } from './play.params.ts';
@Injectable()
@Command({
@@ -105,8 +105,8 @@ export class PlayItemCommand {
this.playbackService.getPlaylistOrDefault().enqueueTracks(tracks);
const remoteImage: RemoteImageInfo | undefined = tracks
- .flatMap((x) => x.getRemoteImages())
- .find((x) => true);
+ .flatMap((track) => track.getRemoteImages())
+ .find(() => true);
await interaction.followUp({
embeds: [
diff --git a/src/models/shared/Playlist.ts b/src/models/shared/Playlist.ts
index c16a5b5..76cfbab 100644
--- a/src/models/shared/Playlist.ts
+++ b/src/models/shared/Playlist.ts
@@ -1,4 +1,4 @@
-import { EventEmitter2, OnEvent } from '@nestjs/event-emitter';
+import { EventEmitter2 } from '@nestjs/event-emitter';
import { Track } from './Track';
diff --git a/src/updates/updates.service.spec.ts b/src/updates/updates.service.spec.ts
index 911aa04..74f25ab 100644
--- a/src/updates/updates.service.spec.ts
+++ b/src/updates/updates.service.spec.ts
@@ -33,7 +33,7 @@ describe('UpdatesService', () => {
} as DiscordMessageService;
}
- if (token === Client || token == '__inject_discord_client__') {
+ if (token === Client || token === '__inject_discord_client__') {
return {
guilds: {
cache: [
From 606c10ec6d12fa3718b98f91a908718aa3b1a522 Mon Sep 17 00:00:00 2001
From: Manuel
Date: Sun, 2 Apr 2023 16:54:24 +0200
Subject: [PATCH 42/55] =?UTF-8?q?=F0=9F=9A=A8=20Fix=20build=20errors?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/health/health.controller.spec.ts | 9 +++++++--
src/health/indicators/jeyllfin.indicator.spec.ts | 3 ++-
src/updates/updates.service.spec.ts | 3 ++-
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/src/health/health.controller.spec.ts b/src/health/health.controller.spec.ts
index 7de55d4..7d1cf84 100644
--- a/src/health/health.controller.spec.ts
+++ b/src/health/health.controller.spec.ts
@@ -1,3 +1,4 @@
+import { InjectionToken } from '@nestjs/common';
import {
HealthCheckResult,
HealthCheckService,
@@ -42,10 +43,14 @@ describe('HealthController', () => {
}
if (token === HealthCheckService) {
- return new HealthCheckService(new HealthCheckExecutor(), null, null);
+ return new HealthCheckService(
+ new HealthCheckExecutor(),
+ { getErrorMessage: jest.fn() },
+ { log: jest.fn(), error: jest.fn(), warn: jest.fn() },
+ );
}
- return useDefaultMockerToken(token);
+ return useDefaultMockerToken(token as InjectionToken);
})
.compile();
diff --git a/src/health/indicators/jeyllfin.indicator.spec.ts b/src/health/indicators/jeyllfin.indicator.spec.ts
index 38b12c7..dcebe2d 100644
--- a/src/health/indicators/jeyllfin.indicator.spec.ts
+++ b/src/health/indicators/jeyllfin.indicator.spec.ts
@@ -1,3 +1,4 @@
+import { InjectionToken } from '@nestjs/common';
import { HealthIndicatorResult } from '@nestjs/terminus';
import { Test } from '@nestjs/testing';
import { JellyfinService } from '../../clients/jellyfin/jellyfin.service';
@@ -16,7 +17,7 @@ describe('JellyfinHealthIndicator', () => {
if (token === JellyfinService) {
return { isConnected: jest.fn() };
}
- return useDefaultMockerToken(token);
+ return useDefaultMockerToken(token as InjectionToken);
})
.compile();
diff --git a/src/updates/updates.service.spec.ts b/src/updates/updates.service.spec.ts
index 74f25ab..a72d899 100644
--- a/src/updates/updates.service.spec.ts
+++ b/src/updates/updates.service.spec.ts
@@ -6,6 +6,7 @@ import { DiscordMessageService } from '../clients/discord/discord.message.servic
import { GithubRelease } from '../models/github-release';
import { useDefaultMockerToken } from '../utils/tests/defaultMockerToken';
import { UpdatesService } from './updates.service';
+import { InjectionToken } from '@nestjs/common';
// mock axios: https://stackoverflow.com/questions/51275434/type-of-axios-mock-using-jest-typescript/55351900#55351900
jest.mock('axios');
@@ -49,7 +50,7 @@ describe('UpdatesService', () => {
};
}
- return useDefaultMockerToken(token);
+ return useDefaultMockerToken(token as InjectionToken);
})
.compile();
From 831e03a77f70ae0642add845595b3d5fe5108f68 Mon Sep 17 00:00:00 2001
From: Manuel
Date: Sun, 2 Apr 2023 20:43:12 +0200
Subject: [PATCH 43/55] =?UTF-8?q?=E2=9C=A8=20Add=20websocket=20playback=20?=
=?UTF-8?q?control=20for=20next=20and=20previous?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../jellyfin/jellyfin.websocket.service.ts | 15 +++++++++------
src/models/shared/Playlist.ts | 2 +-
src/playback/playback.service.ts | 12 +++++++++++-
3 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/src/clients/jellyfin/jellyfin.websocket.service.ts b/src/clients/jellyfin/jellyfin.websocket.service.ts
index e13946b..136cc69 100644
--- a/src/clients/jellyfin/jellyfin.websocket.service.ts
+++ b/src/clients/jellyfin/jellyfin.websocket.service.ts
@@ -113,9 +113,6 @@ export class JellyfinWebSocketService implements OnModuleDestroy {
msg.Data as SessionApiSendPlaystateCommandRequest;
this.handleSendPlaystateCommandRequest(sendPlaystateCommandRequest);
break;
- case SessionMessageType[SessionMessageType.UserDataChanged]:
- this.logger.debug("Received update for user session data");
- break;
default:
this.logger.warn(
`Received a package from the socket of unknown type: ${msg.MessageType}`,
@@ -129,13 +126,19 @@ export class JellyfinWebSocketService implements OnModuleDestroy {
) {
switch (request.Command) {
case PlaystateCommand.PlayPause:
- this.eventEmitter.emitAsync('internal.voice.controls.togglePause');
+ this.eventEmitter.emit('internal.voice.controls.togglePause');
break;
case PlaystateCommand.Pause:
- this.eventEmitter.emitAsync('internal.voice.controls.pause');
+ this.eventEmitter.emit('internal.voice.controls.pause');
break;
case PlaystateCommand.Stop:
- this.eventEmitter.emitAsync('internal.voice.controls.stop');
+ this.eventEmitter.emit('internal.voice.controls.stop');
+ break;
+ case PlaystateCommand.NextTrack:
+ this.eventEmitter.emit('internal.audio.track.next');
+ break;
+ case PlaystateCommand.PreviousTrack:
+ this.eventEmitter.emit('internal.audio.track.previous');
break;
default:
this.logger.warn(
diff --git a/src/models/shared/Playlist.ts b/src/models/shared/Playlist.ts
index d6a4ede..c93bf5d 100644
--- a/src/models/shared/Playlist.ts
+++ b/src/models/shared/Playlist.ts
@@ -1,4 +1,4 @@
-import { EventEmitter2 } from '@nestjs/event-emitter';
+import { EventEmitter2, OnEvent } from '@nestjs/event-emitter';
import { Track } from './Track';
diff --git a/src/playback/playback.service.ts b/src/playback/playback.service.ts
index 067ecf9..df96f2d 100644
--- a/src/playback/playback.service.ts
+++ b/src/playback/playback.service.ts
@@ -1,5 +1,5 @@
import { Injectable, Logger } from '@nestjs/common';
-import { EventEmitter2 } from '@nestjs/event-emitter';
+import { EventEmitter2, OnEvent } from '@nestjs/event-emitter';
import { Playlist } from '../models/shared/Playlist';
@@ -18,4 +18,14 @@ export class PlaybackService {
this.playlist = new Playlist(this.eventEmitter);
return this.playlist;
}
+
+ @OnEvent('internal.audio.track.previous')
+ private handlePreviousTrackEvent() {
+ this.getPlaylistOrDefault().setPreviousTrackAsActiveTrack();
+ }
+
+ @OnEvent('internal.audio.track.next')
+ private handleNextTrackEvent() {
+ this.getPlaylistOrDefault().setNextTrackAsActiveTrack();
+ }
}
From d1fc61c6fec0b38a7366a342cff00dee9bc79293 Mon Sep 17 00:00:00 2001
From: Manuel
Date: Sun, 2 Apr 2023 19:31:01 +0200
Subject: [PATCH 44/55] =?UTF-8?q?=E2=9C=A8=20Add=20time=20tracking?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
package.json | 3 +-
src/clients/discord/discord.voice.service.ts | 39 ++++++++-
.../jellyfin/jellyfin.playstate.service.ts | 28 ++++++-
src/commands/play/play.comands.ts | 14 +---
src/commands/playlist/playlist.command.ts | 80 ++++++++++++++-----
.../playlist.interaction-collector.ts | 23 ++++--
src/commands/playlist/playlist.types.ts | 6 ++
src/models/search/SearchHint.ts | 22 ++++-
src/models/shared/Track.ts | 11 +++
src/utils/stringUtils/stringUtils.ts | 3 +
yarn.lock | 5 ++
11 files changed, 190 insertions(+), 44 deletions(-)
create mode 100644 src/commands/playlist/playlist.types.ts
diff --git a/package.json b/package.json
index a95f8cd..0794b9e 100644
--- a/package.json
+++ b/package.json
@@ -43,7 +43,8 @@
"rimraf": "^4.4.1",
"rxjs": "^7.2.0",
"uuid": "^9.0.0",
- "ws": "^8.13.0"
+ "ws": "^8.13.0",
+ "zod": "^3.21.4"
},
"devDependencies": {
"@nestjs/cli": "^9.3.0",
diff --git a/src/clients/discord/discord.voice.service.ts b/src/clients/discord/discord.voice.service.ts
index 0b350ba..db81906 100644
--- a/src/clients/discord/discord.voice.service.ts
+++ b/src/clients/discord/discord.voice.service.ts
@@ -14,6 +14,7 @@ import {
import { Injectable } from '@nestjs/common';
import { Logger } from '@nestjs/common/services';
import { EventEmitter2, OnEvent } from '@nestjs/event-emitter';
+import { Interval } from '@nestjs/schedule';
import { GuildMember } from 'discord.js';
@@ -224,7 +225,7 @@ export class DiscordVoiceService {
if (this.audioPlayer === undefined) {
this.logger.debug(
- "Initialized new instance of AudioPlayer because it has not been defined yet",
+ 'Initialized new instance of AudioPlayer because it has not been defined yet',
);
this.audioPlayer = createAudioPlayer({
debug: process.env.DEBUG?.toLowerCase() === 'true',
@@ -291,7 +292,7 @@ export class DiscordVoiceService {
return;
}
- this.logger.debug("Audio player finished playing old resource");
+ this.logger.debug('Audio player finished playing old resource');
const playlist = this.playbackService.getPlaylistOrDefault();
const finishedTrack = playlist.getActiveTrack();
@@ -308,11 +309,43 @@ export class DiscordVoiceService {
);
if (!hasNextTrack) {
- this.logger.debug("Reached the end of the playlist");
+ this.logger.debug('Reached the end of the playlist');
return;
}
this.playbackService.getPlaylistOrDefault().setNextTrackAsActiveTrack();
});
}
+
+ @Interval(500)
+ private checkAudioResourcePlayback() {
+ if (!this.audioResource) {
+ return;
+ }
+
+ const progress = this.audioResource.playbackDuration;
+
+ const playlist = this.playbackService.getPlaylistOrDefault();
+
+ if (!playlist) {
+ this.logger.error(
+ `Failed to update ellapsed audio time because playlist was unexpectitly undefined`,
+ );
+ return;
+ }
+
+ const activeTrack = playlist.getActiveTrack();
+
+ if (!activeTrack) {
+ this.logger.error(
+ `Failed to update ellapsed audio time because active track was unexpectitly undefined`,
+ );
+ return;
+ }
+
+ activeTrack.updatePlaybackProgress(progress);
+ this.logger.verbose(
+ `Reporting progress: ${progress} on track ${activeTrack.id}`,
+ );
+ }
}
diff --git a/src/clients/jellyfin/jellyfin.playstate.service.ts b/src/clients/jellyfin/jellyfin.playstate.service.ts
index 465322c..ae56dc2 100644
--- a/src/clients/jellyfin/jellyfin.playstate.service.ts
+++ b/src/clients/jellyfin/jellyfin.playstate.service.ts
@@ -10,6 +10,7 @@ import { getSessionApi } from '@jellyfin/sdk/lib/utils/api/session-api';
import { Injectable, Logger } from '@nestjs/common';
import { OnEvent } from '@nestjs/event-emitter';
+import { Interval } from '@nestjs/schedule';
import { Track } from '../../models/shared/Track';
import { PlaybackService } from '../../playback/playback.service';
@@ -52,6 +53,7 @@ export class JellyinPlaystateService {
await this.playstateApi.reportPlaybackStart({
playbackStartInfo: {
ItemId: track.id,
+ PositionTicks: 0,
},
});
}
@@ -60,7 +62,7 @@ export class JellyinPlaystateService {
private async onPlaybackFinished(track: Track) {
if (!track) {
this.logger.error(
- "Unable to report playback because finished track was undefined",
+ 'Unable to report playback because finished track was undefined',
);
return;
}
@@ -68,6 +70,7 @@ export class JellyinPlaystateService {
await this.playstateApi.reportPlaybackStopped({
playbackStopInfo: {
ItemId: track.id,
+ PositionTicks: track.playbackProgress * 10000,
},
});
}
@@ -78,7 +81,7 @@ export class JellyinPlaystateService {
if (!track) {
this.logger.error(
- "Unable to report changed playstate to Jellyfin because no track was active",
+ 'Unable to report changed playstate to Jellyfin because no track was active',
);
return;
}
@@ -87,7 +90,28 @@ export class JellyinPlaystateService {
playbackProgressInfo: {
IsPaused: paused,
ItemId: track.id,
+ PositionTicks: track.playbackProgress * 10000,
},
});
}
+
+ @Interval(1000)
+ private async onPlaybackProgress() {
+ const track = this.playbackService.getPlaylistOrDefault().getActiveTrack();
+
+ if (!track) {
+ return;
+ }
+
+ await this.playstateApi.reportPlaybackProgress({
+ playbackProgressInfo: {
+ ItemId: track.id,
+ PositionTicks: track.playbackProgress * 10000,
+ },
+ });
+
+ this.logger.verbose(
+ `Reported playback progress ${track.playbackProgress} to Jellyfin for item ${track.id}`,
+ );
+ }
}
diff --git a/src/commands/play/play.comands.ts b/src/commands/play/play.comands.ts
index 41ae5b0..94acf84 100644
--- a/src/commands/play/play.comands.ts
+++ b/src/commands/play/play.comands.ts
@@ -70,7 +70,8 @@ export class PlayItemCommand {
embeds: [
this.discordMessageService.buildMessage({
title: 'No results found',
- description: "- Check for any misspellings\n- Grant me access to your desired libraries\n- Avoid special characters",
+ description:
+ '- Check for any misspellings\n- Grant me access to your desired libraries\n- Avoid special characters',
}),
],
ephemeral: true,
@@ -136,15 +137,8 @@ export class PlayItemCommand {
const focusedAutoCompleteAction = interaction.options.getFocused(true);
const typeIndex = interaction.options.getInteger('type');
-
- if (typeIndex === null) {
- this.logger.error(
- `Failed to get type integer from play command interaction autocomplete`,
- );
- return;
- }
-
- const type = Object.values(SearchType)[typeIndex] as SearchType;
+ const type =
+ typeIndex !== null ? Object.values(SearchType)[typeIndex] : undefined;
const searchQuery = focusedAutoCompleteAction.value;
if (!searchQuery || searchQuery.length < 1) {
diff --git a/src/commands/playlist/playlist.command.ts b/src/commands/playlist/playlist.command.ts
index d244041..2cd41cf 100644
--- a/src/commands/playlist/playlist.command.ts
+++ b/src/commands/playlist/playlist.command.ts
@@ -22,16 +22,19 @@ import {
InteractionUpdateOptions,
} from 'discord.js';
-import { PlaybackService } from '../../playback/playback.service';
-import { chunkArray } from '../../utils/arrayUtils';
-import { Constants } from '../../utils/constants';
-import { formatMillisecondsAsHumanReadable } from '../../utils/timeUtils';
import { DiscordMessageService } from '../../clients/discord/discord.message.service';
import { Track } from '../../models/shared/Track';
-import { trimStringToFixedLength } from '../../utils/stringUtils/stringUtils';
+import { PlaybackService } from '../../playback/playback.service';
+import { chunkArray } from '../../utils/arrayUtils';
+import { trimStringToFixedLength, zeroPad } from '../../utils/stringUtils/stringUtils';
+import { Interval } from '@nestjs/schedule';
+import { lightFormat } from 'date-fns';
import { PlaylistInteractionCollector } from './playlist.interaction-collector';
import { PlaylistCommandParams } from './playlist.params';
+import { PlaylistTempCommandData } from './playlist.types';
+import { tr } from 'date-fns/locale';
+import { takeCoverage } from 'v8';
@Injectable()
@Command({
@@ -41,7 +44,7 @@ import { PlaylistCommandParams } from './playlist.params';
@UseInterceptors(CollectorInterceptor)
@UseCollectors(PlaylistInteractionCollector)
export class PlaylistCommand {
- public pageData: Map = new Map();
+ public pageData: Map = new Map();
private readonly logger = new Logger(PlaylistCommand.name);
constructor(
@@ -61,7 +64,10 @@ export class PlaylistCommand {
this.getReplyForPage(page) as InteractionReplyOptions,
);
- this.pageData.set(interaction.id, page);
+ this.pageData.set(interaction.id, {
+ page,
+ interaction,
+ });
this.logger.debug(
`Added '${interaction.id}' as a message id for page storage`,
);
@@ -82,6 +88,36 @@ export class PlaylistCommand {
return chunkArray(playlist.tracks, 10);
}
+ private createInterval(interaction: CommandInteraction) {
+ return setInterval(async () => {
+ const tempData = this.pageData.get(interaction.id);
+
+ if (!tempData) {
+ this.logger.warn(
+ `Failed to update from interval, because temp data was not found`,
+ );
+ return;
+ }
+
+ await interaction.editReply(this.getReplyForPage(tempData.page));
+ }, 2000);
+ }
+
+ @Interval(2 * 1000)
+ private async updatePlaylists() {
+ if (this.pageData.size === 0) {
+ return;
+ }
+
+ this.logger.verbose(
+ `Updating playlist for ${this.pageData.size} playlist datas`,
+ );
+
+ this.pageData.forEach(async (value) => {
+ await value.interaction.editReply(this.getReplyForPage(value.page));
+ });
+ }
+
public getReplyForPage(
page: number,
): InteractionReplyOptions | InteractionUpdateOptions {
@@ -176,26 +212,34 @@ export class PlaylistCommand {
);
}
+ const paddingNumber = playlist.getLength() >= 100 ? 3 : 2;
+
const content = chunk
.map((track, index) => {
const isCurrent = track === playlist.getActiveTrack();
- // use the offset for the page, add the current index and offset by one because the array index is used
- let point = `${offset + index + 1}. `;
- point += `**${trimStringToFixedLength(track.name, 30)}**`;
-
+ let line = `\`\`${zeroPad(offset + index + 1, paddingNumber)}.\`\` `;
+ line += this.getTrackName(track, isCurrent) + ' • ';
if (isCurrent) {
- point += ' :loud_sound:';
+ line += lightFormat(track.getPlaybackProgress(), 'mm:ss') + ' / ';
}
-
- point += '\n';
- point += Constants.Design.InvisibleSpace.repeat(2);
- point += formatMillisecondsAsHumanReadable(track.getDuration());
-
- return point;
+ line += lightFormat(track.getDuration(), 'mm:ss');
+ if (isCurrent) {
+ line += ' • (:play_pause:)';
+ }
+ return line;
})
.join('\n');
return new EmbedBuilder().setTitle('Your playlist').setDescription(content);
}
+
+ private getTrackName(track: Track, active: boolean) {
+ const trimmedTitle = trimStringToFixedLength(track.name, 30);
+ if (active) {
+ return `**${trimmedTitle}**`;
+ }
+
+ return trimmedTitle;
+ }
}
diff --git a/src/commands/playlist/playlist.interaction-collector.ts b/src/commands/playlist/playlist.interaction-collector.ts
index 0619c3e..49e3ca8 100644
--- a/src/commands/playlist/playlist.interaction-collector.ts
+++ b/src/commands/playlist/playlist.interaction-collector.ts
@@ -15,6 +15,7 @@ import {
} from 'discord.js';
import { PlaylistCommand } from './playlist.command';
+import { PlaylistTempCommandData } from './playlist.types';
@Injectable({ scope: Scope.REQUEST })
@InteractionEventCollector({ time: 60 * 1000 })
@@ -40,7 +41,7 @@ export class PlaylistInteractionCollector {
async onCollect(interaction: ButtonInteraction): Promise {
const targetPage = this.getInteraction(interaction);
this.logger.verbose(
- `Extracted the target page ${targetPage} from the button interaction`,
+ `Extracted the target page '${targetPage?.page}' from the button interaction`,
);
if (targetPage === undefined) {
@@ -51,14 +52,16 @@ export class PlaylistInteractionCollector {
}
this.logger.debug(
- `Updating current page for interaction ${this.causeInteraction.id} to ${targetPage}`,
+ `Updating current page for interaction ${this.causeInteraction.id} to ${targetPage.page}`,
);
this.playlistCommand.pageData.set(this.causeInteraction.id, targetPage);
- const reply = this.playlistCommand.getReplyForPage(targetPage);
+ const reply = this.playlistCommand.getReplyForPage(targetPage.page);
await interaction.update(reply as InteractionUpdateOptions);
}
- private getInteraction(interaction: ButtonInteraction): number | undefined {
+ private getInteraction(
+ interaction: ButtonInteraction,
+ ): PlaylistTempCommandData | undefined {
const current = this.playlistCommand.pageData.get(this.causeInteraction.id);
if (current === undefined) {
@@ -78,12 +81,18 @@ export class PlaylistInteractionCollector {
switch (interaction.customId) {
case 'playlist-controls-next':
- return current + 1;
+ return {
+ ...current,
+ page: current.page + 1,
+ };
case 'playlist-controls-previous':
- return current - 1;
+ return {
+ ...current,
+ page: current.page - 1,
+ };
default:
this.logger.error(
- "Unable to map button interaction from collector to target page",
+ 'Unable to map button interaction from collector to target page',
);
return undefined;
}
diff --git a/src/commands/playlist/playlist.types.ts b/src/commands/playlist/playlist.types.ts
new file mode 100644
index 0000000..1858151
--- /dev/null
+++ b/src/commands/playlist/playlist.types.ts
@@ -0,0 +1,6 @@
+import { CommandInteraction } from 'discord.js';
+
+export type PlaylistTempCommandData = {
+ page: number;
+ interaction: CommandInteraction;
+};
diff --git a/src/models/search/SearchHint.ts b/src/models/search/SearchHint.ts
index b1355bd..09a382e 100644
--- a/src/models/search/SearchHint.ts
+++ b/src/models/search/SearchHint.ts
@@ -2,6 +2,7 @@ import {
BaseItemDto,
SearchHint as JellyfinSearchHint,
} from '@jellyfin/sdk/lib/generated-client/models';
+import { z } from 'zod';
import { JellyfinSearchService } from '../../clients/jellyfin/jellyfin.search.service';
import { Track } from '../shared/Track';
@@ -26,12 +27,27 @@ export class SearchHint {
}
static constructFromHint(hint: JellyfinSearchHint) {
- if (hint.Id === undefined || !hint.Name || !hint.RunTimeTicks) {
+ const schema = z.object({
+ Id: z.string(),
+ Name: z.string(),
+ RunTimeTicks: z.number(),
+ });
+
+ const result = schema.safeParse(hint);
+
+ if (!result.success) {
throw new Error(
- 'Unable to construct search hint, required properties were undefined',
+ `Unable to construct search hint, required properties were undefined: ${JSON.stringify(
+ hint,
+ )}`,
);
}
- return new SearchHint(hint.Id, hint.Name, hint.RunTimeTicks / 10000);
+
+ return new SearchHint(
+ result.data.Id,
+ result.data.Name,
+ result.data.RunTimeTicks / 10000,
+ );
}
static constructFromBaseItem(baseItem: BaseItemDto) {
diff --git a/src/models/shared/Track.ts b/src/models/shared/Track.ts
index 0168f61..c3cfd8d 100644
--- a/src/models/shared/Track.ts
+++ b/src/models/shared/Track.ts
@@ -29,6 +29,8 @@ export class Track {
playing: boolean;
+ playbackProgress: number;
+
constructor(
id: string,
name: string,
@@ -40,6 +42,7 @@ export class Track {
this.duration = duration;
this.remoteImages = remoteImages;
this.playing = false;
+ this.playbackProgress = 0;
}
getDuration() {
@@ -53,4 +56,12 @@ export class Track {
getRemoteImages(): RemoteImageInfo[] {
return this.remoteImages?.Images ?? [];
}
+
+ getPlaybackProgress() {
+ return this.playbackProgress;
+ }
+
+ updatePlaybackProgress(progress: number) {
+ this.playbackProgress = progress;
+ }
}
diff --git a/src/utils/stringUtils/stringUtils.ts b/src/utils/stringUtils/stringUtils.ts
index b9637a3..18fb29e 100644
--- a/src/utils/stringUtils/stringUtils.ts
+++ b/src/utils/stringUtils/stringUtils.ts
@@ -11,3 +11,6 @@ export const trimStringToFixedLength = (value: string, maxLength: number) => {
return value.substring(0, upperBound) + '...';
};
+
+export const zeroPad = (num: number, places: number) =>
+ String(num).padStart(places, '0');
diff --git a/yarn.lock b/yarn.lock
index 1cd51a4..9e9bebc 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5403,3 +5403,8 @@ yocto-queue@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
+
+zod@^3.21.4:
+ version "3.21.4"
+ resolved "https://registry.yarnpkg.com/zod/-/zod-3.21.4.tgz#10882231d992519f0a10b5dd58a38c9dabbb64db"
+ integrity sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==
From 18972dda89cb93149d0e05b77ceb86c1d09c8e3a Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Apr 2023 04:07:41 +0000
Subject: [PATCH 45/55] :arrow_up:(deps-dev): Bump tsconfig-paths from 4.1.2 to
4.2.0
Bumps [tsconfig-paths](https://github.com/dividab/tsconfig-paths) from 4.1.2 to 4.2.0.
- [Release notes](https://github.com/dividab/tsconfig-paths/releases)
- [Changelog](https://github.com/dividab/tsconfig-paths/blob/master/CHANGELOG.md)
- [Commits](https://github.com/dividab/tsconfig-paths/compare/v4.1.2...v4.2.0)
---
updated-dependencies:
- dependency-name: tsconfig-paths
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 11 ++++++++++-
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/package.json b/package.json
index 0794b9e..e9441c6 100644
--- a/package.json
+++ b/package.json
@@ -67,7 +67,7 @@
"ts-jest": "28.0.8",
"ts-loader": "^9.2.3",
"ts-node": "^10.0.0",
- "tsconfig-paths": "4.1.2",
+ "tsconfig-paths": "4.2.0",
"typescript": "^4.7.4"
},
"jest": {
diff --git a/yarn.lock b/yarn.lock
index 9e9bebc..a620f01 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5072,7 +5072,7 @@ tsconfig-paths-webpack-plugin@4.0.1:
enhanced-resolve "^5.7.0"
tsconfig-paths "^4.1.2"
-tsconfig-paths@4.1.2, tsconfig-paths@^4.1.2:
+tsconfig-paths@4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.1.2.tgz#4819f861eef82e6da52fb4af1e8c930a39ed979a"
integrity sha512-uhxiMgnXQp1IR622dUXI+9Ehnws7i/y6xvpZB9IbUVOPy0muvdvgXeZOn88UcGPiT98Vp3rJPTa8bFoalZ3Qhw==
@@ -5081,6 +5081,15 @@ tsconfig-paths@4.1.2, tsconfig-paths@^4.1.2:
minimist "^1.2.6"
strip-bom "^3.0.0"
+tsconfig-paths@4.2.0, tsconfig-paths@^4.1.2:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz#ef78e19039133446d244beac0fd6a1632e2d107c"
+ integrity sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==
+ dependencies:
+ json5 "^2.2.2"
+ minimist "^1.2.6"
+ strip-bom "^3.0.0"
+
tslib@2.5.0, tslib@^2.1.0, tslib@^2.5.0:
version "2.5.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf"
From 32231b80850635835b3393e397c3e441cc07fc46 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Apr 2023 04:05:13 +0000
Subject: [PATCH 46/55] :arrow_up:(deps): Bump discord.js from 14.8.0 to 14.9.0
Bumps [discord.js](https://github.com/discordjs/discord.js) from 14.8.0 to 14.9.0.
- [Release notes](https://github.com/discordjs/discord.js/releases)
- [Commits](https://github.com/discordjs/discord.js/compare/14.8.0...14.9.0)
---
updated-dependencies:
- dependency-name: discord.js
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 76 ++++++++++++++++++++++++++--------------------------
2 files changed, 39 insertions(+), 39 deletions(-)
diff --git a/package.json b/package.json
index e9441c6..6c99101 100644
--- a/package.json
+++ b/package.json
@@ -35,7 +35,7 @@
"@nestjs/serve-static": "^3.0.1",
"@nestjs/terminus": "^9.2.2",
"date-fns": "^2.29.3",
- "discord.js": "^14.8.0",
+ "discord.js": "^14.9.0",
"joi": "^17.9.1",
"libsodium-wrappers": "^0.7.10",
"opusscript": "^0.0.8",
diff --git a/yarn.lock b/yarn.lock
index a620f01..003537c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -376,30 +376,30 @@
dependencies:
class-transformer "0.5.1"
-"@discordjs/builders@^1.5.0":
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/@discordjs/builders/-/builders-1.5.0.tgz#f6dd4684e46707eb600eabdfdacd3b44c9e924cd"
- integrity sha512-7XxT78mnNBPigHn2y6KAXkicxIBFtZREGWaRZ249EC1l6gBUEP8IyVY5JTciIjJArxkF+tg675aZvsTNTKBpmA==
+"@discordjs/builders@^1.6.0":
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/@discordjs/builders/-/builders-1.6.1.tgz#5b1447cfa493bc1306671ef18ce3aae13c0af0ba"
+ integrity sha512-CCcLwn/8ANhlAbhlE18fcaN0hfXTen53/JiwZs1t9oE/Cqa9maA8ZRarkCIsXF4J7J/MYnd0J6IsxeKsq+f6mw==
dependencies:
- "@discordjs/formatters" "^0.2.0"
+ "@discordjs/formatters" "^0.3.0"
"@discordjs/util" "^0.2.0"
"@sapphire/shapeshift" "^3.8.1"
- discord-api-types "^0.37.35"
+ discord-api-types "^0.37.37"
fast-deep-equal "^3.1.3"
ts-mixer "^6.0.3"
tslib "^2.5.0"
-"@discordjs/collection@^1.4.0":
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/@discordjs/collection/-/collection-1.4.0.tgz#6b5d5429db0691a3f5a962c21f6bc7859eef3333"
- integrity sha512-hiOJyk2CPFf1+FL3a4VKCuu1f448LlROVuu8nLz1+jCOAPokUcdFAV+l4pd3B3h6uJlJQSASoZzrdyNdjdtfzQ==
+"@discordjs/collection@^1.5.0":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@discordjs/collection/-/collection-1.5.0.tgz#478acd5d510cb5996c5101f47b24959ac7499cc2"
+ integrity sha512-suyVndkEAAWrGxyw/CPGdtXoRRU6AUNkibtnbJevQzpelkJh3Q1gQqWDpqf5i39CnAn5+LrN0YS+cULeEjq2Yw==
-"@discordjs/formatters@^0.2.0":
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/@discordjs/formatters/-/formatters-0.2.0.tgz#a861d9c385dfc6c7294e44c5441beee933820a4f"
- integrity sha512-vn4oMSXuMZUm8ITqVOtvE7/fMMISj4cI5oLsR09PEQXHKeKDAMLltG/DWeeIs7Idfy6V8Fk3rn1e69h7NfzuNA==
+"@discordjs/formatters@^0.3.0":
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/@discordjs/formatters/-/formatters-0.3.0.tgz#8313d158c5e974597eec43b1f381d870a507d133"
+ integrity sha512-Fc4MomalbP8HMKEMor3qUiboAKDtR7PSBoPjwm7WYghVRwgJlj5WYvUsriLsxeKk8+Qq2oy+HJlGTUkGvX0YnA==
dependencies:
- discord-api-types "^0.37.35"
+ discord-api-types "^0.37.37"
"@discordjs/node-pre-gyp@^0.4.5":
version "0.4.5"
@@ -424,19 +424,19 @@
"@discordjs/node-pre-gyp" "^0.4.5"
node-addon-api "^5.0.0"
-"@discordjs/rest@^1.6.0":
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/@discordjs/rest/-/rest-1.6.0.tgz#d77c9b5533f6d2079468d4fd497d3fabeb529c20"
- integrity sha512-HGvqNCZ5Z5j0tQHjmT1lFvE5ETO4hvomJ1r0cbnpC1zM23XhCpZ9wgTCiEmaxKz05cyf2CI9p39+9LL+6Yz1bA==
+"@discordjs/rest@^1.7.0":
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/@discordjs/rest/-/rest-1.7.0.tgz#c61fcd14e810b44e4821df5dfb5e74fa5fcb6e5d"
+ integrity sha512-r2HzmznRIo8IDGYBWqQfkEaGN1LrFfWQd3dSyC4tOpMU8nuVvFUEw6V/lwnG44jyOq+vgyDny2fxeUDMt9I4aQ==
dependencies:
- "@discordjs/collection" "^1.4.0"
+ "@discordjs/collection" "^1.5.0"
"@discordjs/util" "^0.2.0"
"@sapphire/async-queue" "^1.5.0"
"@sapphire/snowflake" "^3.4.0"
- discord-api-types "^0.37.35"
+ discord-api-types "^0.37.37"
file-type "^18.2.1"
tslib "^2.5.0"
- undici "^5.20.0"
+ undici "^5.21.0"
"@discordjs/util@^0.2.0":
version "0.2.0"
@@ -2298,29 +2298,29 @@ dir-glob@^3.0.1:
dependencies:
path-type "^4.0.0"
-discord-api-types@^0.37.35:
- version "0.37.36"
- resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.37.36.tgz#650a8f66dce2c5e54a8c2275db74a0bb7936430d"
- integrity sha512-Nlxmp10UpVr/utgZ9uODQvG2Or+5w7LFrvFMswyeKC9l/+UaqGT6H0OVgEFhu9GEO4U6K7NNO5W8Carv7irnCA==
+discord-api-types@^0.37.35, discord-api-types@^0.37.37:
+ version "0.37.37"
+ resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.37.37.tgz#49bc42a36124c85f06297f1548f130329ed5aeb0"
+ integrity sha512-LDMBKzl/zbvHO/yCzno5hevuA6lFIXJwdKSJZQrB+1ToDpFfN9thK+xxgZNR4aVkI7GHRDja0p4Sl2oYVPnHYg==
-discord.js@^14.8.0:
- version "14.8.0"
- resolved "https://registry.yarnpkg.com/discord.js/-/discord.js-14.8.0.tgz#0e5def8a95a22018844cdfc0f63b9806392da79b"
- integrity sha512-UOxYtc/YnV7jAJ2gISluJyYeBw4e+j8gWn+IoqG8unaHAVuvZ13DdYN0M1f9fbUgUvSarV798inIrYFtDNDjwQ==
+discord.js@^14.9.0:
+ version "14.9.0"
+ resolved "https://registry.yarnpkg.com/discord.js/-/discord.js-14.9.0.tgz#61e26c4a7a27f91fd669b4c46892868420a5be43"
+ integrity sha512-ygGms5xP4hG+QrrY9k7d/OYCzMltSMtdl/2Snzq/nLCiZo+Sna91Ulv9l0+B5Jd/Czcq37B7wJAnmja7GOa+bg==
dependencies:
- "@discordjs/builders" "^1.5.0"
- "@discordjs/collection" "^1.4.0"
- "@discordjs/formatters" "^0.2.0"
- "@discordjs/rest" "^1.6.0"
+ "@discordjs/builders" "^1.6.0"
+ "@discordjs/collection" "^1.5.0"
+ "@discordjs/formatters" "^0.3.0"
+ "@discordjs/rest" "^1.7.0"
"@discordjs/util" "^0.2.0"
"@sapphire/snowflake" "^3.4.0"
"@types/ws" "^8.5.4"
- discord-api-types "^0.37.35"
+ discord-api-types "^0.37.37"
fast-deep-equal "^3.1.3"
lodash.snakecase "^4.1.1"
tslib "^2.5.0"
- undici "^5.20.0"
- ws "^8.12.1"
+ undici "^5.21.0"
+ ws "^8.13.0"
doctrine@^3.0.0:
version "3.0.0"
@@ -5154,7 +5154,7 @@ uid@2.0.1:
dependencies:
"@lukeed/csprng" "^1.0.0"
-undici@^5.20.0:
+undici@^5.21.0:
version "5.21.0"
resolved "https://registry.yarnpkg.com/undici/-/undici-5.21.0.tgz#b00dfc381f202565ab7f52023222ab862bb2494f"
integrity sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==
From 0a2086266c5a13190e30e3ead03a7792d45b5116 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Apr 2023 04:04:01 +0000
Subject: [PATCH 47/55] :arrow_up:(deps): Bump @discordjs/voice from 0.15.0 to
0.16.0
Bumps [@discordjs/voice](https://github.com/discordjs/discord.js) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/discordjs/discord.js/releases)
- [Commits](https://github.com/discordjs/discord.js/compare/@discordjs/voice@0.15.0...@discordjs/voice@0.16.0)
---
updated-dependencies:
- dependency-name: "@discordjs/voice"
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 12 ++++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/package.json b/package.json
index 6c99101..0ca8e30 100644
--- a/package.json
+++ b/package.json
@@ -24,7 +24,7 @@
"@discord-nestjs/common": "^5.2.3",
"@discord-nestjs/core": "^5.3.5",
"@discordjs/opus": "^0.9.0",
- "@discordjs/voice": "^0.15.0",
+ "@discordjs/voice": "^0.16.0",
"@jellyfin/sdk": "^0.7.0",
"@nestjs/common": "^9.3.12",
"@nestjs/config": "^2.2.0",
diff --git a/yarn.lock b/yarn.lock
index 003537c..ac99a0a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -443,16 +443,16 @@
resolved "https://registry.yarnpkg.com/@discordjs/util/-/util-0.2.0.tgz#91b590dae3934ffa5fe34530afc5212c569d6751"
integrity sha512-/8qNbebFzLWKOOg+UV+RB8itp4SmU5jw0tBUD3ifElW6rYNOj1Ku5JaSW7lLl/WgjjxF01l/1uQPCzkwr110vg==
-"@discordjs/voice@^0.15.0":
- version "0.15.0"
- resolved "https://registry.yarnpkg.com/@discordjs/voice/-/voice-0.15.0.tgz#774febb2a1623b23e234744fefb60544858db77d"
- integrity sha512-YEvrRchDhjB0QbI9QYOF/qgDwvGb9sNGUyks5d3Srl+VRoMoKkMzWY+wcEfVbAgdMIAdLi5vyrTKP/gLND26jA==
+"@discordjs/voice@^0.16.0":
+ version "0.16.0"
+ resolved "https://registry.yarnpkg.com/@discordjs/voice/-/voice-0.16.0.tgz#9df1e492c8fea95113236a3de3ac52702c587729"
+ integrity sha512-ToGCvHD1cBscuW3p+C7zOF5+L7MJmU4GjdOARfNk9mkHyFFZq4grK+Sxr3QXKbp27DtfDBc9uqD4GUOYgxngfA==
dependencies:
"@types/ws" "^8.5.4"
- discord-api-types "^0.37.35"
+ discord-api-types "^0.37.37"
prism-media "^1.3.5"
tslib "^2.5.0"
- ws "^8.12.1"
+ ws "^8.13.0"
"@eslint-community/eslint-utils@^4.2.0":
version "4.2.0"
From d285ea73f72188b2b10cd5deaadd69196f97d13c Mon Sep 17 00:00:00 2001
From: Manuel
Date: Mon, 3 Apr 2023 20:48:12 +0200
Subject: [PATCH 48/55] =?UTF-8?q?=F0=9F=94=96=20Tag=20to=20version=200.0.7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
package.json | 4 ++--
yarn.lock | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/package.json b/package.json
index 0ca8e30..ec51819 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "jellyfin-discord-music-bot",
- "version": "0.0.6",
- "description": "",
+ "version": "0.0.7",
+ "description": "A simple and leightweight Discord Bot, that integrates with your Jellyfin Media server and enables you to listen to your favourite music directly from discord.",
"author": "manuel-rw",
"private": true,
"license": "MIT",
diff --git a/yarn.lock b/yarn.lock
index ac99a0a..16a3f29 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2298,7 +2298,7 @@ dir-glob@^3.0.1:
dependencies:
path-type "^4.0.0"
-discord-api-types@^0.37.35, discord-api-types@^0.37.37:
+discord-api-types@^0.37.37:
version "0.37.37"
resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.37.37.tgz#49bc42a36124c85f06297f1548f130329ed5aeb0"
integrity sha512-LDMBKzl/zbvHO/yCzno5hevuA6lFIXJwdKSJZQrB+1ToDpFfN9thK+xxgZNR4aVkI7GHRDja0p4Sl2oYVPnHYg==
@@ -5355,7 +5355,7 @@ write-file-atomic@^4.0.1:
imurmurhash "^0.1.4"
signal-exit "^3.0.7"
-ws@^8.12.1, ws@^8.13.0:
+ws@^8.13.0:
version "8.13.0"
resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0"
integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==
From 8ccf9e8c11ae88a55cb0506de8ad957a9a52fbb1 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Apr 2023 18:42:45 +0000
Subject: [PATCH 49/55] :arrow_up:(deps): Bump @jellyfin/sdk from 0.7.0 to
0.8.1
Bumps [@jellyfin/sdk](https://github.com/jellyfin/jellyfin-sdk-typescript) from 0.7.0 to 0.8.1.
- [Release notes](https://github.com/jellyfin/jellyfin-sdk-typescript/releases)
- [Commits](https://github.com/jellyfin/jellyfin-sdk-typescript/compare/v0.7.0...v0.8.1)
---
updated-dependencies:
- dependency-name: "@jellyfin/sdk"
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 38 ++++++++++++++++++++++----------------
2 files changed, 23 insertions(+), 17 deletions(-)
diff --git a/package.json b/package.json
index ec51819..08468f5 100644
--- a/package.json
+++ b/package.json
@@ -25,7 +25,7 @@
"@discord-nestjs/core": "^5.3.5",
"@discordjs/opus": "^0.9.0",
"@discordjs/voice": "^0.16.0",
- "@jellyfin/sdk": "^0.7.0",
+ "@jellyfin/sdk": "^0.8.1",
"@nestjs/common": "^9.3.12",
"@nestjs/config": "^2.2.0",
"@nestjs/core": "^9.3.12",
diff --git a/yarn.lock b/yarn.lock
index 16a3f29..da7c161 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -533,13 +533,13 @@
resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
-"@jellyfin/sdk@^0.7.0":
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/@jellyfin/sdk/-/sdk-0.7.0.tgz#34bcbe53acc089caa9f458e866ed5745726f5397"
- integrity sha512-GNoGv+2qY+xK7WpO7sUUNpZvzgN7RwXMyOhIy9mE/LdDSr6bqZHwrzT1Pv0+vUW7Epw67bwIMWuYivyBYejEHw==
+"@jellyfin/sdk@^0.8.1":
+ version "0.8.1"
+ resolved "https://registry.yarnpkg.com/@jellyfin/sdk/-/sdk-0.8.1.tgz#56491d671219bddf37d1d86cee7d7c7843d17386"
+ integrity sha512-DiyaUax4i2upDz4JS/PpWKyBnFcOoUyRc63GysUvqPWeOT9yPfnRsNFkmTzUV2oRTFIeO++od/INq5DfeUbs8g==
dependencies:
- axios "0.27.2"
- compare-versions "5.0.1"
+ axios "1.3.4"
+ compare-versions "5.0.3"
"@jest/console@^28.1.3":
version "28.1.3"
@@ -1667,13 +1667,14 @@ asynckit@^0.4.0:
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
-axios@0.27.2:
- version "0.27.2"
- resolved "https://registry.yarnpkg.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972"
- integrity sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==
+axios@1.3.4:
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-1.3.4.tgz#f5760cefd9cfb51fd2481acf88c05f67c4523024"
+ integrity sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==
dependencies:
- follow-redirects "^1.14.9"
+ follow-redirects "^1.15.0"
form-data "^4.0.0"
+ proxy-from-env "^1.1.0"
babel-jest@^28.1.3:
version "28.1.3"
@@ -2090,10 +2091,10 @@ commander@^2.20.0:
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
-compare-versions@5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-5.0.1.tgz#14c6008436d994c3787aba38d4087fabe858555e"
- integrity sha512-v8Au3l0b+Nwkp4G142JcgJFh1/TUhdxut7wzD1Nq1dyp5oa3tXaqb03EXOAB6jS4gMlalkjAUPZBMiAfKUixHQ==
+compare-versions@5.0.3:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-5.0.3.tgz#a9b34fea217472650ef4a2651d905f42c28ebfd7"
+ integrity sha512-4UZlZP8Z99MGEY+Ovg/uJxJuvoXuN4M6B3hKaiackiHrgzQFEe3diJi1mf1PNHbFujM7FvLrK2bpgIaImbtZ1A==
component-emitter@^1.3.0:
version "1.3.0"
@@ -2767,7 +2768,7 @@ flatted@^3.1.0:
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"
integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
-follow-redirects@^1.14.9:
+follow-redirects@^1.15.0:
version "1.15.2"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
@@ -4376,6 +4377,11 @@ proxy-addr@~2.0.7:
forwarded "0.2.0"
ipaddr.js "1.9.1"
+proxy-from-env@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
+ integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
+
pump@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
From 237865a4513e7134561431ab8fab9e23801a21c6 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 3 Apr 2023 04:06:03 +0000
Subject: [PATCH 50/55] :arrow_up:(deps-dev): Bump @nestjs/schematics from
9.0.4 to 9.1.0
Bumps [@nestjs/schematics](https://github.com/nestjs/schematics) from 9.0.4 to 9.1.0.
- [Release notes](https://github.com/nestjs/schematics/releases)
- [Changelog](https://github.com/nestjs/schematics/blob/master/.release-it.json)
- [Commits](https://github.com/nestjs/schematics/compare/9.0.4...9.1.0)
---
updated-dependencies:
- dependency-name: "@nestjs/schematics"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
---
package.json | 2 +-
yarn.lock | 66 +++++-----------------------------------------------
2 files changed, 7 insertions(+), 61 deletions(-)
diff --git a/package.json b/package.json
index 08468f5..e09dd09 100644
--- a/package.json
+++ b/package.json
@@ -48,7 +48,7 @@
},
"devDependencies": {
"@nestjs/cli": "^9.3.0",
- "@nestjs/schematics": "^9.0.0",
+ "@nestjs/schematics": "^9.1.0",
"@nestjs/testing": "^9.3.12",
"@types/cron": "^2.0.1",
"@types/express": "^4.17.13",
diff --git a/yarn.lock b/yarn.lock
index da7c161..7a62fec 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -10,17 +10,6 @@
"@jridgewell/gen-mapping" "^0.1.0"
"@jridgewell/trace-mapping" "^0.3.9"
-"@angular-devkit/core@15.0.4":
- version "15.0.4"
- resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-15.0.4.tgz#257ba1d76cd106216d0150f480d0062e726af996"
- integrity sha512-4ITpRAevd652SxB+qNesIQ9qfbm7wT5UBU5kJOPPwGL77I21g8CQpkmV1n5VSacPvC9Zbz90feOWexf7w7JzcA==
- dependencies:
- ajv "8.11.0"
- ajv-formats "2.1.1"
- jsonc-parser "3.2.0"
- rxjs "6.6.7"
- source-map "0.7.4"
-
"@angular-devkit/core@15.2.4":
version "15.2.4"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-15.2.4.tgz#f7696f09c66d01568a07f0e71672e887fdf57280"
@@ -44,17 +33,6 @@
symbol-observable "4.0.0"
yargs-parser "21.1.1"
-"@angular-devkit/schematics@15.0.4":
- version "15.0.4"
- resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-15.0.4.tgz#64de42f9100d7080bc3c59bb06d1e4f6f15a088e"
- integrity sha512-/gXiLFS0+xFdx6wPoBpe/c6/K9I5edMpaASqPf4XheKtrsSvL+qTlIi3nsbfItzOiDXbaBmlbxGfkMHz/yg0Ig==
- dependencies:
- "@angular-devkit/core" "15.0.4"
- jsonc-parser "3.2.0"
- magic-string "0.26.7"
- ora "5.4.1"
- rxjs "6.6.7"
-
"@angular-devkit/schematics@15.2.4":
version "15.2.4"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-15.2.4.tgz#85129ebabcdb362f4b65a6e290bb2ae846f3d64c"
@@ -885,14 +863,13 @@
cron "2.2.0"
uuid "9.0.0"
-"@nestjs/schematics@^9.0.0", "@nestjs/schematics@^9.0.4":
- version "9.0.4"
- resolved "https://registry.yarnpkg.com/@nestjs/schematics/-/schematics-9.0.4.tgz#ab612f5a8e006ca1d617eddc8143ee00b766312b"
- integrity sha512-egurCfAc4e5i1r2TmeAF0UrOKejFmT5oTdv4b7HcOVPupc3QGU7CbEfGleL3mkM5AjrixTQeMxU9bJ00ttAbGg==
+"@nestjs/schematics@^9.0.4", "@nestjs/schematics@^9.1.0":
+ version "9.1.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/schematics/-/schematics-9.1.0.tgz#8afc4b1e7c7988c18d3ab44cffe56773b7507272"
+ integrity sha512-/7CyMTnPJSK9/xD9CkCqwuHPOlHVlLC2RDnbdCJ7mIO07SdbBbY14msTqtYW9VRQtsjZPLh1GTChf7ryJUImwA==
dependencies:
- "@angular-devkit/core" "15.0.4"
- "@angular-devkit/schematics" "15.0.4"
- fs-extra "11.1.0"
+ "@angular-devkit/core" "15.2.4"
+ "@angular-devkit/schematics" "15.2.4"
jsonc-parser "3.2.0"
pluralize "8.0.0"
@@ -1531,16 +1508,6 @@ ajv-keywords@^3.5.2:
resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
-ajv@8.11.0:
- version "8.11.0"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f"
- integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==
- dependencies:
- fast-deep-equal "^3.1.1"
- json-schema-traverse "^1.0.0"
- require-from-string "^2.0.2"
- uri-js "^4.2.2"
-
ajv@8.12.0, ajv@^8.0.0:
version "8.12.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1"
@@ -2820,15 +2787,6 @@ fresh@0.5.2:
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
-fs-extra@11.1.0:
- version "11.1.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.0.tgz#5784b102104433bb0e090f48bfc4a30742c357ed"
- integrity sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
fs-extra@^10.0.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
@@ -3846,13 +3804,6 @@ macos-release@^2.5.0:
resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.5.1.tgz#bccac4a8f7b93163a8d163b8ebf385b3c5f55bf9"
integrity sha512-DXqXhEM7gW59OjZO8NIjBCz9AQ1BEMrfiOAl4AYByHCtVHRF4KoGNO8mqQeM8lRCtQe/UnJ4imO/d2HdkKsd+A==
-magic-string@0.26.7:
- version "0.26.7"
- resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.26.7.tgz#caf7daf61b34e9982f8228c4527474dac8981d6f"
- integrity sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==
- dependencies:
- sourcemap-codec "^1.4.8"
-
magic-string@0.29.0:
version "0.29.0"
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.29.0.tgz#f034f79f8c43dba4ae1730ffb5e8c4e084b16cf3"
@@ -4753,11 +4704,6 @@ source-map@^0.6.0, source-map@^0.6.1:
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-sourcemap-codec@^1.4.8:
- version "1.4.8"
- resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
- integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
-
sprintf-js@~1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
From 5d055698736923cfcbca677bcbb65d21d53c2143 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Apr 2023 10:35:10 +0200
Subject: [PATCH 51/55] :arrow_up:(deps): Bump @nestjs/common from 9.3.12 to
9.4.0 (#160)
Bumps [@nestjs/common](https://github.com/nestjs/nest) from 9.3.12 to 9.4.0.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.12...v9.4.0)
---
updated-dependencies:
- dependency-name: "@nestjs/common"
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: Manuel
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 17 ++++++++++++-----
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index e09dd09..42cc067 100644
--- a/package.json
+++ b/package.json
@@ -26,7 +26,7 @@
"@discordjs/opus": "^0.9.0",
"@discordjs/voice": "^0.16.0",
"@jellyfin/sdk": "^0.8.1",
- "@nestjs/common": "^9.3.12",
+ "@nestjs/common": "^9.4.0",
"@nestjs/config": "^2.2.0",
"@nestjs/core": "^9.3.12",
"@nestjs/event-emitter": "^1.3.1",
diff --git a/yarn.lock b/yarn.lock
index 56f73a8..a36d810 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -801,12 +801,12 @@
webpack "5.76.2"
webpack-node-externals "3.0.0"
-"@nestjs/common@^9.3.12":
- version "9.3.12"
- resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-9.3.12.tgz#9b3a9e162fe73c830ffa588fd3d921fd8a9f174a"
- integrity sha512-NtrUG2VgCbhmZEO1yRt/Utq16uFRV+xeHAOtdYIsfHGG0ssAV2lVLlvFFAQYh0SQ+KuYY1Gsxd3GK2JFoJCNqQ==
+"@nestjs/common@^9.4.0":
+ version "9.4.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/common/-/common-9.4.0.tgz#3597e4f3a1278486fc2e015c94e58bcbbb4f72ca"
+ integrity sha512-RUcVAQsEF4WPrmzFXEOUfZnPwrLTe1UVlzXTlSyfqfqbdWDPKDGlIPVelBLfc5/+RRUQ0I5iE4+CQvpCmkqldw==
dependencies:
- uid "2.0.1"
+ uid "2.0.2"
iterare "1.2.1"
tslib "2.5.0"
@@ -5106,6 +5106,13 @@ uid@2.0.1:
dependencies:
"@lukeed/csprng" "^1.0.0"
+uid@2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/uid/-/uid-2.0.2.tgz#4b5782abf0f2feeefc00fa88006b2b3b7af3e3b9"
+ integrity sha512-u3xV3X7uzvi5b1MncmZo3i2Aw222Zk1keqLA1YkHldREkAhAqi65wuPfe7lHx8H/Wzy+8CE7S7uS3jekIM5s8g==
+ dependencies:
+ "@lukeed/csprng" "^1.0.0"
+
undici@^5.21.0:
version "5.21.0"
resolved "https://registry.yarnpkg.com/undici/-/undici-5.21.0.tgz#b00dfc381f202565ab7f52023222ab862bb2494f"
From 1651fd6fefa8ee4776bdab9f4f4f3aafa3814828 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Apr 2023 10:35:31 +0200
Subject: [PATCH 52/55] :arrow_up:(deps-dev): Bump @nestjs/testing from 9.3.12
to 9.4.0 (#162)
Bumps [@nestjs/testing](https://github.com/nestjs/nest) from 9.3.12 to 9.4.0.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.12...v9.4.0)
---
updated-dependencies:
- dependency-name: "@nestjs/testing"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: Manuel
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package.json b/package.json
index 42cc067..aed0019 100644
--- a/package.json
+++ b/package.json
@@ -49,7 +49,7 @@
"devDependencies": {
"@nestjs/cli": "^9.3.0",
"@nestjs/schematics": "^9.1.0",
- "@nestjs/testing": "^9.3.12",
+ "@nestjs/testing": "^9.4.0",
"@types/cron": "^2.0.1",
"@types/express": "^4.17.13",
"@types/jest": "28.1.8",
diff --git a/yarn.lock b/yarn.lock
index a36d810..11cc7bb 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -888,10 +888,10 @@
boxen "5.1.2"
check-disk-space "3.3.1"
-"@nestjs/testing@^9.3.12":
- version "9.3.12"
- resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-9.3.12.tgz#e02ed34c9a267ba9495ba7f5e3d83d4956e3414f"
- integrity sha512-nH274IXEqU4hr4bcb71POe58hYLONt9RcfKKM5ZvOS7wYMnybMpKKR8DkC1WcfE1P2k2GQmQoHeSH5emPtYrBA==
+"@nestjs/testing@^9.4.0":
+ version "9.4.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/testing/-/testing-9.4.0.tgz#1e5d1e799413e996c9c2da02a89dfefa62c3b70e"
+ integrity sha512-xZWp363P4otcebg++gSjUcdCfTK0RorORzyFq3aLaSAQOlq8kxfFDRIKzEATR4aOUfqTMMsAA8lhnMJWf35N6A==
dependencies:
tslib "2.5.0"
From c6320b7523041ce1f51cde99197eac4d4914926a Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Apr 2023 10:35:40 +0200
Subject: [PATCH 53/55] :arrow_up:(deps-dev): Bump eslint from 8.37.0 to 8.38.0
(#163)
Bumps [eslint](https://github.com/eslint/eslint) from 8.37.0 to 8.38.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.37.0...v8.38.0)
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: Manuel
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 18 +++++++++---------
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/package.json b/package.json
index aed0019..3341166 100644
--- a/package.json
+++ b/package.json
@@ -57,7 +57,7 @@
"@types/supertest": "^2.0.11",
"@typescript-eslint/eslint-plugin": "^5.57.0",
"@typescript-eslint/parser": "^5.57.0",
- "eslint": "^8.37.0",
+ "eslint": "^8.38.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^4.0.0",
"jest": "28.1.3",
diff --git a/yarn.lock b/yarn.lock
index 11cc7bb..c3861d8 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -459,10 +459,10 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
-"@eslint/js@8.37.0":
- version "8.37.0"
- resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.37.0.tgz#cf1b5fa24217fe007f6487a26d765274925efa7d"
- integrity sha512-x5vzdtOOGgFVDCUs81QRB2+liax8rFg3+7hqM+QhBG0/G3F1ZsoYl97UrqgHgQ9KKT7G6c4V+aTUCgu/n22v1A==
+"@eslint/js@8.38.0":
+ version "8.38.0"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.38.0.tgz#73a8a0d8aa8a8e6fe270431c5e72ae91b5337892"
+ integrity sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==
"@hapi/hoek@^9.0.0":
version "9.3.0"
@@ -2417,15 +2417,15 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz#c7f0f956124ce677047ddbc192a68f999454dedc"
integrity sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==
-eslint@^8.37.0:
- version "8.37.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.37.0.tgz#1f660ef2ce49a0bfdec0b0d698e0b8b627287412"
- integrity sha512-NU3Ps9nI05GUoVMxcZx1J8CNR6xOvUT4jAUMH5+z8lpp3aEdPVCImKw6PWG4PY+Vfkpr+jvMpxs/qoE7wq0sPw==
+eslint@^8.38.0:
+ version "8.38.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.38.0.tgz#a62c6f36e548a5574dd35728ac3c6209bd1e2f1a"
+ integrity sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.4.0"
"@eslint/eslintrc" "^2.0.2"
- "@eslint/js" "8.37.0"
+ "@eslint/js" "8.38.0"
"@humanwhocodes/config-array" "^0.11.8"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
From 3d1ca1a5e40fe33b5b887efbbaa96e738f13a9f9 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Apr 2023 10:35:51 +0200
Subject: [PATCH 54/55] :arrow_up:(deps): Bump @nestjs/core from 9.3.12 to
9.4.0 (#164)
Bumps [@nestjs/core](https://github.com/nestjs/nest) from 9.3.12 to 9.4.0.
- [Release notes](https://github.com/nestjs/nest/releases)
- [Commits](https://github.com/nestjs/nest/compare/v9.3.12...v9.4.0)
---
updated-dependencies:
- dependency-name: "@nestjs/core"
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: Manuel
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index 3341166..daf5992 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,7 @@
"@jellyfin/sdk": "^0.8.1",
"@nestjs/common": "^9.4.0",
"@nestjs/config": "^2.2.0",
- "@nestjs/core": "^9.3.12",
+ "@nestjs/core": "^9.4.0",
"@nestjs/event-emitter": "^1.3.1",
"@nestjs/platform-express": "^9.3.12",
"@nestjs/schedule": "^2.1.0",
diff --git a/yarn.lock b/yarn.lock
index c3861d8..e7e5b23 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -820,12 +820,12 @@
lodash "4.17.21"
uuid "9.0.0"
-"@nestjs/core@^9.3.12":
- version "9.3.12"
- resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-9.3.12.tgz#b1c06b56ff5c8ad41e841688c6763aa9748a2395"
- integrity sha512-Qe0ZjJo7bOlfudn7KHLppYrt5i4k1nR1+9d5ppYat2bb5knCIT4kIqblj666n+22/2zvsHRiTo015cLyLKsLRQ==
+"@nestjs/core@^9.4.0":
+ version "9.4.0"
+ resolved "https://registry.yarnpkg.com/@nestjs/core/-/core-9.4.0.tgz#bca5128138fcf9b4668bc524b578f3805a325183"
+ integrity sha512-yTLryCgFD0462wPe4HIzhyTcDgibt8Stfwb5YzcX7Ma0NM4m8uBIpcPG109KBubp8ZmV85e5mw4rl20qLQQVsQ==
dependencies:
- uid "2.0.1"
+ uid "2.0.2"
"@nuxtjs/opencollective" "0.3.2"
fast-safe-stringify "2.1.1"
iterare "1.2.1"
From 12febf55ac7db8e3f9247c62367d2cfe29e04f8f Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 10 Apr 2023 10:36:28 +0200
Subject: [PATCH 55/55] :arrow_up:(deps): Bump rimraf from 4.4.1 to 5.0.0
(#161)
Bumps [rimraf](https://github.com/isaacs/rimraf) from 4.4.1 to 5.0.0.
- [Release notes](https://github.com/isaacs/rimraf/releases)
- [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/rimraf/compare/v4.4.1...v5.0.0)
---
updated-dependencies:
- dependency-name: rimraf
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 45 ++++++++++++++++++++++++++++++++++++++++-----
2 files changed, 41 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index daf5992..a6b3e97 100644
--- a/package.json
+++ b/package.json
@@ -40,7 +40,7 @@
"libsodium-wrappers": "^0.7.10",
"opusscript": "^0.0.8",
"reflect-metadata": "^0.1.13",
- "rimraf": "^4.4.1",
+ "rimraf": "^5.0.0",
"rxjs": "^7.2.0",
"uuid": "^9.0.0",
"ws": "^8.13.0",
diff --git a/yarn.lock b/yarn.lock
index e7e5b23..823b661 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2893,6 +2893,16 @@ glob-to-regexp@^0.4.1:
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
+glob@^10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-10.0.0.tgz#034ab2e93644ba702e769c3e0558143d3fbd1612"
+ integrity sha512-zmp9ZDC6NpDNLujV2W2n+3lH+BafIVZ4/ct+Yj3BMZTH/+bgm/eVjHzeFLwxJrrIGgjjS2eiQLlpurHsNlEAtQ==
+ dependencies:
+ fs.realpath "^1.0.0"
+ minimatch "^9.0.0"
+ minipass "^5.0.0"
+ path-scurry "^1.6.4"
+
glob@^7.0.0, glob@^7.1.3, glob@^7.1.4:
version "7.2.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
@@ -3794,6 +3804,11 @@ lru-cache@^7.14.1:
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89"
integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
+lru-cache@^9.0.0:
+ version "9.0.0"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-9.0.0.tgz#daece36a9fc332e93f8e75f3fcfd17900253567c"
+ integrity sha512-9AEKXzvOZc4BMacFnYiTOlDH/197LNnQIK9wZ6iMB5NXPzuv4bWR/Msv7iUMplkiMQ1qQL+KSv/JF1mZAB5Lrg==
+
luxon@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/luxon/-/luxon-3.3.0.tgz#d73ab5b5d2b49a461c47cedbc7e73309b4805b48"
@@ -3911,6 +3926,13 @@ minimatch@^8.0.2:
dependencies:
brace-expansion "^2.0.1"
+minimatch@^9.0.0:
+ version "9.0.0"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.0.tgz#bfc8e88a1c40ffd40c172ddac3decb8451503b56"
+ integrity sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==
+ dependencies:
+ brace-expansion "^2.0.1"
+
minimist@^1.2.6:
version "1.2.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
@@ -3928,6 +3950,11 @@ minipass@^4.0.0, minipass@^4.0.2, minipass@^4.2.4:
resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.2.5.tgz#9e0e5256f1e3513f8c34691dd68549e85b2c8ceb"
integrity sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==
+minipass@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d"
+ integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==
+
minizlib@^2.1.1:
version "2.1.2"
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931"
@@ -4223,6 +4250,14 @@ path-scurry@^1.6.1:
lru-cache "^7.14.1"
minipass "^4.0.2"
+path-scurry@^1.6.4:
+ version "1.6.4"
+ resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.6.4.tgz#020a9449e5382a4acb684f9c7e1283bc5695de66"
+ integrity sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==
+ dependencies:
+ lru-cache "^9.0.0"
+ minipass "^5.0.0"
+
path-to-regexp@0.1.7:
version "0.1.7"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
@@ -4518,12 +4553,12 @@ rimraf@^3.0.0, rimraf@^3.0.2:
dependencies:
glob "^7.1.3"
-rimraf@^4.4.1:
- version "4.4.1"
- resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-4.4.1.tgz#bd33364f67021c5b79e93d7f4fa0568c7c21b755"
- integrity sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==
+rimraf@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-5.0.0.tgz#5bda14e410d7e4dd522154891395802ce032c2cb"
+ integrity sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==
dependencies:
- glob "^9.2.0"
+ glob "^10.0.0"
run-async@^2.4.0:
version "2.4.1"