diff --git a/package.json b/package.json
index 1571c62..282ab71 100755
--- a/package.json
+++ b/package.json
@@ -36,8 +36,8 @@
"jade": "^1.11.0",
"jsonwebtoken": "^8.5.1",
"lodash": "^4.17.21",
- "mongodb": "^4.1.2",
- "mongoose": "^5.13.13",
+ "mongodb": "^4.4.1",
+ "mongoose": "^5.10.19",
"mysql": "^2.18.1",
"node-cron": "^3.0.0",
"node-emoji": "^1.11.0",
diff --git a/src/server/locales/en.json b/src/server/locales/en.json
index 26074ea..00e5eb6 100755
--- a/src/server/locales/en.json
+++ b/src/server/locales/en.json
@@ -12,5 +12,6 @@
"%s new Service: %s": "%s new Service: %s",
"OPEN PAGE": "OPEN PAGE",
"%s asked you for Friendship": "%s asked you for Friendship",
- "%s accepted your Friendship": "%s accepted your Friendship"
+ "%s accepted your Friendship": "%s accepted your Friendship",
+ "%s refused your Friendship": "%s refused your Friendship"
}
diff --git a/src/server/locales/it.json b/src/server/locales/it.json
index dad6388..529c5da 100755
--- a/src/server/locales/it.json
+++ b/src/server/locales/it.json
@@ -7,5 +7,6 @@
"%s new Service: %s": "%s nuovo Servizio: %s",
"OPEN PAGE": "APRI PAGINA",
"%s asked you for Friendship": "%s ti ha chiesto l'Amicizia",
- "%s accepted your Friendship": "%s ha accettato l'Amicizia"
+ "%s accepted your Friendship": "%s ha accettato l'Amicizia",
+ "%s refused your Friendship": "%s ha rifiutato l'Amicizia"
}
diff --git a/src/server/models/sendnotif.js b/src/server/models/sendnotif.js
index 9817a1a..3e7058f 100755
--- a/src/server/models/sendnotif.js
+++ b/src/server/models/sendnotif.js
@@ -25,15 +25,19 @@ const sendNotifSchema = new Schema({
},
typedir: {
type: Number,
+ default: 0,
},
typeid: {
type: Number,
+ default: 0,
},
sender: { // mittente
type: String,
+ default: '',
},
dest: {
type: String,
+ default: '',
},
title: {
type: String,
@@ -49,6 +53,7 @@ const sendNotifSchema = new Schema({
},
status: {
type: Number,
+ default: 0,
},
read: {
type: Boolean,
@@ -142,6 +147,15 @@ sendNotifSchema.statics.getDescrAndLinkByRecNotif = function(recnotif) {
newdescr = i18n.__('%s asked you for Friendship', userorig, mydescr);
} else if (recnotif.typeid === shared_consts.TypeNotifs.ID_FRIENDS_ACCEPTED) {
newdescr = i18n.__('%s accepted your Friendship', userorig, mydescr);
+ } else if (recnotif.typeid === shared_consts.TypeNotifs.ID_FRIENDS_REFUSED) {
+ newdescr = i18n.__('%s refused your Friendship', userorig, mydescr);
+ }
+ } else if (recnotif.typedir === shared_consts.TypeNotifs.TYPEDIR_GROUPS) {
+ recnotif.openUrl = '/group/' + paramsObj.groupNameDest;
+ if (recnotif.typeid === shared_consts.TypeNotifs.ID_GROUP_NEW_REC) {
+ newdescr = i18n.__('%s asked you for Friendship', userorig, mydescr);
+ } else if (recnotif.typeid === shared_consts.TypeNotifs.ID_GROUP_ACCEPTED) {
+ newdescr = i18n.__('%s accepted your Friendship', userorig, mydescr);
}
}
@@ -230,7 +244,46 @@ sendNotifSchema.statics.saveAndSendNotif = function(myrecnotif, req, res, user)
});
};
-sendNotifSchema.statics.saveNotif = function(myrecnotif) {
+sendNotifSchema.statics.saveNotif = async function(myrecnotif) {
+
+ const SendNotif = this;
+
+ let newstatus = 0;
+ let typeidsearch = 0;
+ // Controllare se devo modificare un Notif giĆ esistente !
+ if (myrecnotif.typedir === shared_consts.TypeNotifs.TYPEDIR_FRIENDS) {
+ typeidsearch = shared_consts.TypeNotifs.ID_FRIENDS_NEW_REC;
+ if (myrecnotif.typeid === shared_consts.TypeNotifs.ID_FRIENDS_ACCEPTED) {
+ newstatus = shared_consts.StatusNotifs.STATUS_FRIENDS_ACCEPTED;
+ } else if (myrecnotif.typeid === shared_consts.TypeNotifs.ID_FRIENDS_REFUSED) {
+ newstatus = shared_consts.StatusNotifs.STATUS_FRIENDS_REFUSED;
+ }
+ if (newstatus) {
+ const fields_to_update = {
+ status: newstatus,
+ read: true,
+ };
+
+ const query = {
+ idapp: myrecnotif.idapp,
+ typedir: myrecnotif.typedir,
+ typeid: typeidsearch,
+ dest: myrecnotif.sender,
+ deleted: false,
+ status: 0,
+ };
+
+ // Cerca il record e se lo trova lo aggiorna
+ const myrec = await SendNotif.findOneAndUpdate(query, {$set: fields_to_update}, {
+ new: false,
+ returnNewDocument: true
+ });
+
+ if (myrec) {
+ return myrec._doc;
+ }
+ }
+ }
myrecnotif._id = new ObjectID();
if (!myrecnotif.openUrl) {
@@ -250,6 +303,7 @@ sendNotifSchema.statics.saveNotif = function(myrecnotif) {
console.log(e.message);
return null;
});
+
};
sendNotifSchema.statics.getDefaultRec = function(req) {
@@ -294,7 +348,7 @@ sendNotifSchema.statics.createNewNotification = async function(req, res, table,
}
};
-sendNotifSchema.statics.createNewNotifToSingleUser = async function(req, res, usernameDest, onlysave, typedir, typeid) {
+sendNotifSchema.statics.createNewNotifToSingleUser = async function(req, res, paramsObj, onlysave, typedir, typeid) {
const SendNotif = this;
try {
@@ -303,7 +357,7 @@ sendNotifSchema.statics.createNewNotifToSingleUser = async function(req, res, us
myrecnotif.typedir = typedir;
myrecnotif.typeid = typeid;
- await SendNotif.sendToSingleUserDest(myrecnotif, req, res, usernameDest, onlysave);
+ await SendNotif.sendToSingleUserDest(myrecnotif, req, res, paramsObj, onlysave);
return true;
} catch (e) {
@@ -416,14 +470,15 @@ sendNotifSchema.statics.sendToTheDestinations = async function(myrecnotif, req,
};
-sendNotifSchema.statics.sendToSingleUserDest = async function(myrecnotif, req, res, usernameDest, onlysave) {
+sendNotifSchema.statics.sendToSingleUserDest = async function(myrecnotif, req, res, paramsObj, onlysave) {
const SendNotif = this;
try {
myrecnotif = this.getDescrAndLinkByRecNotif(myrecnotif);
- myrecnotif.dest = usernameDest;
+ myrecnotif.dest = paramsObj.usernameDest;
+ myrecnotif.paramsObj = paramsObj;
if (onlysave) {
await SendNotif.saveNotif(myrecnotif);
} else {
diff --git a/src/server/models/user.js b/src/server/models/user.js
index 68369eb..cd47404 100755
--- a/src/server/models/user.js
+++ b/src/server/models/user.js
@@ -1597,8 +1597,7 @@ UserSchema.statics.setFriendsCmd = async function(idapp, usernameOrig, usernameD
// CREATE NOTIFICATION IN TABLE SENDNOTIF
const req = tools.getReqByPar(idapp, usernameOrig);
- SendNotif.createNewNotifToSingleUser(req, null, usernameDest, true, shared_consts.TypeNotifs.TYPEDIR_FRIENDS, shared_consts.TypeNotifs.ID_FRIENDS_ACCEPTED);
-
+ await SendNotif.createNewNotifToSingleUser(req, null, {usernameDest}, true, shared_consts.TypeNotifs.TYPEDIR_FRIENDS, shared_consts.TypeNotifs.ID_FRIENDS_ACCEPTED);
update = {$pull: {'profile.req_friends': {username: {$in: [usernameDest]}}}};
ris = await User.updateOne({idapp, username: usernameOrig}, update);
@@ -1677,6 +1676,10 @@ UserSchema.statics.setFriendsCmd = async function(idapp, usernameOrig, usernameD
} else if (cmd === shared_consts.FRIENDSCMD.CANCEL_REQ_FRIEND) {
+ // CREATE NOTIFICATION IN TABLE SENDNOTIF
+ const req = tools.getReqByPar(idapp, usernameOrig);
+ await SendNotif.createNewNotifToSingleUser(req, null, {usernameDest}, true, shared_consts.TypeNotifs.TYPEDIR_FRIENDS, shared_consts.TypeNotifs.ID_FRIENDS_REFUSED);
+
await this.removeReqFriend(idapp, usernameDest, usernameOrig); // Rimuovo la Richiesta di Amicizia da lui
ris = await this.removeFriend(idapp, usernameOrig, usernameDest); // Rimuovo l'Amicizia da me
@@ -1737,6 +1740,11 @@ UserSchema.statics.setGroupsCmd = async function(idapp, usernameOrig, groupnameD
};
ris = await User.updateOne({idapp, username: usernameOrig}, update);
+
+ // CREATE NOTIFICATION IN TABLE SENDNOTIF
+ const req = tools.getReqByPar(idapp, usernameOrig);
+ SendNotif.createNewNotifToSingleUser(req, null, {usernameDest, groupnameDest}, true, shared_consts.TypeNotifs.TYPEDIR_GROUPS, shared_consts.TypeNotifs.ID_GROUP_ACCEPTED);
+
// Elimina la richiesta:
update = {$pull: {req_users: {username: {$in: [usernameOrig]}}}};
ris = await MyGroup.updateOne({idapp, groupname: groupnameDest},
diff --git a/src/server/router/index_router.js b/src/server/router/index_router.js
index 511f556..e604c34 100755
--- a/src/server/router/index_router.js
+++ b/src/server/router/index_router.js
@@ -1063,6 +1063,7 @@ router.get('/loadsite/:userId/:idapp/:vers', authenticate_noerror,
let version = tools.getVersionint(versionstr);
load(req, res, version);
+
});
function load(req, res, version) {
@@ -1496,9 +1497,10 @@ function uploadFile(req, res, version) {
sharp(newname, {failOnError: false}).
resize({
width: 512,
- height: 512,
- fit: sharp.fit.cover,
- position: sharp.strategy.entropy,
+ // height: 512,
+ //fit: sharp.fit.cover,
+ fit: sharp.fit.contain,
+ // position: sharp.strategy.entropy,
}).withMetadata().toFile(resized_img, function(err) {
// console.log('3) Ridimensionata Immagine ' + newname, 'in', resized_img);
diff --git a/src/server/router/subscribe_router.js b/src/server/router/subscribe_router.js
index f608af2..1d6134a 100755
--- a/src/server/router/subscribe_router.js
+++ b/src/server/router/subscribe_router.js
@@ -26,7 +26,7 @@ const isValidSaveRequest = (req, res) => {
}
};
-router.post('/', authenticate, (req, res) => {
+router.post('/', authenticate, async (req, res) => {
// console.log('req.body.others', req.body.others);
if (!isValidSaveRequest(req, res)) {
@@ -39,7 +39,7 @@ router.post('/', authenticate, (req, res) => {
subscriptionModel.browser = req.get('User-Agent');
// Find if already exist
- Subscription.findOne({
+ await Subscription.findOne({
userId: subscriptionModel.userId,
access: subscriptionModel.access,
browser: subscriptionModel.browser,
diff --git a/src/server/tools/general.js b/src/server/tools/general.js
index 2d01311..e64d99b 100755
--- a/src/server/tools/general.js
+++ b/src/server/tools/general.js
@@ -898,7 +898,7 @@ module.exports = {
const req = this.getReqByPar(idapp, usernameOrig);
// CREATE NOTIFICATION IN TABLE SENDNOTIF
- SendNotif.createNewNotifToSingleUser(req, null, username, true, shared_consts.TypeNotifs.TYPEDIR_FRIENDS, shared_consts.TypeNotifs.ID_FRIENDS_NEW_REC);
+ SendNotif.createNewNotifToSingleUser(req, null, {usernameDest: username}, true, shared_consts.TypeNotifs.TYPEDIR_FRIENDS, shared_consts.TypeNotifs.ID_FRIENDS_NEW_REC);
if (userrecDest) {
sendmynotif = false; // non lo rimandare 2 volte !
diff --git a/src/server/tools/shared_nodejs.js b/src/server/tools/shared_nodejs.js
index e2369fc..e11afe6 100755
--- a/src/server/tools/shared_nodejs.js
+++ b/src/server/tools/shared_nodejs.js
@@ -287,6 +287,12 @@ module.exports = {
NEW_ADV_SECTOR: 32,
},
+ StatusNotifs: {
+ STATUS_FRIENDS_ACCEPTED: 1,
+ STATUS_FRIENDS_REFUSED: 2,
+
+ },
+
TypeNotifs: {
TYPEDIR_BACHECA: 1,
ID_BACHECA_NEW_GOOD: 1,
@@ -299,12 +305,17 @@ module.exports = {
TYPEDIR_FRIENDS: 3,
ID_FRIENDS_NEW_REC: 1,
ID_FRIENDS_ACCEPTED: 2,
+ ID_FRIENDS_REFUSED: 3,
- TYPEDIR_CIRCUITS: 4,
+ TYPEDIR_GROUPS: 4,
+ ID_GROUP_NEW_REC: 1,
+ ID_GROUP_ACCEPTED: 2,
- TYPEDIR_BOOKING: 5,
+ TYPEDIR_CIRCUITS: 5,
- TYPEDIR_MSGS: 6,
+ TYPEDIR_BOOKING: 6,
+
+ TYPEDIR_MSGS: 7,
ID_MSGS_NEW_REC: 1,
},
diff --git a/yarn.lock b/yarn.lock
index b8cb7f0..058ba7f 100755
--- a/yarn.lock
+++ b/yarn.lock
@@ -1936,10 +1936,10 @@ bser@2.1.1:
dependencies:
node-int64 "^0.4.0"
-bson@*, bson@^4.5.2:
- version "4.5.2"
- resolved "https://registry.yarnpkg.com/bson/-/bson-4.5.2.tgz#567b4ee94372d5284a4d6c47fb6e1cc711ae76ba"
- integrity sha512-8CEMJpwc7qlQtrn2rney38jQSEeMar847lz0LyitwRmVknAW8iHXrzW4fTjHfyWm0E3sukyD/zppdH+QU1QefA==
+bson@*, bson@^4.6.5:
+ version "4.6.5"
+ resolved "https://registry.yarnpkg.com/bson/-/bson-4.6.5.tgz#1a410148c20eef4e40d484878a037a7036e840fb"
+ integrity sha512-uqrgcjyOaZsHfz7ea8zLRCLe1u+QGUSzMZmvXqO24CDW7DWoW1qiN9folSwa7hSneTSgM2ykDIzF5kcQQ8cwNw==
dependencies:
buffer "^5.6.0"
@@ -4762,6 +4762,11 @@ ip@^1.1.5:
resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=
+ip@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da"
+ integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==
+
ipaddr.js@1.9.0:
version "1.9.0"
resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.0.tgz#37df74e430a0e47550fe54a2defe30d8acd95f65"
@@ -6555,13 +6560,13 @@ moment-timezone@^0.5.31:
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
-mongodb-connection-string-url@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.1.0.tgz#9c522c11c37f571fecddcb267ac4a76ef432aeb7"
- integrity sha512-Qf9Zw7KGiRljWvMrrUFDdVqo46KIEiDuCzvEN97rh/PcKzk2bd6n9KuzEwBwW9xo5glwx69y1mI6s+jFUD/aIQ==
+mongodb-connection-string-url@^2.5.2:
+ version "2.5.3"
+ resolved "https://registry.yarnpkg.com/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.3.tgz#c0c572b71570e58be2bd52b33dffd1330cfb6990"
+ integrity sha512-f+/WsED+xF4B74l3k9V/XkTVj5/fxFH2o5ToKXd8Iyi5UhM+sO9u0Ape17Mvl/GkZaFtM0HQnzAG5OTmhKw+tQ==
dependencies:
"@types/whatwg-url" "^8.2.1"
- whatwg-url "^9.1.0"
+ whatwg-url "^11.0.0"
mongodb@3.7.3:
version "3.7.3"
@@ -6576,14 +6581,15 @@ mongodb@3.7.3:
optionalDependencies:
saslprep "^1.0.0"
-mongodb@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-4.1.2.tgz#36ab494db3a9a827df41ccb0d9b36a94bfeae8d7"
- integrity sha512-pHCKDoOy1h6mVurziJmXmTMPatYWOx8pbnyFgSgshja9Y36Q+caHUzTDY6rrIy9HCSrjnbXmx3pCtvNZHmR8xg==
+mongodb@^4.4.1:
+ version "4.8.1"
+ resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-4.8.1.tgz#596de88ff4519128266d9254dbe5b781c4005796"
+ integrity sha512-/NyiM3Ox9AwP5zrfT9TXjRKDJbXlLaUDQ9Rg//2lbg8D2A8GXV0VidYYnA/gfdK6uwbnL4FnAflH7FbGw3TS7w==
dependencies:
- bson "^4.5.2"
+ bson "^4.6.5"
denque "^2.0.1"
- mongodb-connection-string-url "^2.0.0"
+ mongodb-connection-string-url "^2.5.2"
+ socks "^2.6.2"
optionalDependencies:
saslprep "^1.0.3"
@@ -6592,7 +6598,7 @@ mongoose-legacy-pluralize@1.0.2:
resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4"
integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ==
-mongoose@^5.13.13:
+mongoose@^5.10.19:
version "5.13.14"
resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.13.14.tgz#ffc9704bd022dd018fbddcbe27dc802c77719fb4"
integrity sha512-j+BlQjjxgZg0iWn42kLeZTB91OejcxWpY2Z50bsZTiKJ7HHcEtcY21Godw496GMkBqJMTzmW7G/kZ04mW+Cb7Q==
@@ -8561,7 +8567,7 @@ slash@^3.0.0:
sliced@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41"
- integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=
+ integrity sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==
slick@^1.12.2:
version "1.12.2"
@@ -8573,6 +8579,11 @@ smart-buffer@^4.1.0:
resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.1.0.tgz#91605c25d91652f4661ea69ccf45f1b331ca21ba"
integrity sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==
+smart-buffer@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae"
+ integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==
+
snapdragon-node@^2.0.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b"
@@ -8672,6 +8683,14 @@ socks@^2.3.3:
ip "^1.1.5"
smart-buffer "^4.1.0"
+socks@^2.6.2:
+ version "2.7.0"
+ resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.0.tgz#f9225acdb841e874dca25f870e9130990f3913d0"
+ integrity sha512-scnOe9y4VuiNUULJN72GrM26BNOjVsfPXI+j+98PkyEfsIXroa5ofyjT+FzGvn/xHs73U2JtoBYAVx9Hl4quSA==
+ dependencies:
+ ip "^2.0.0"
+ smart-buffer "^4.2.0"
+
source-map-resolve@^0.5.0:
version "0.5.3"
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
@@ -9355,10 +9374,10 @@ tr46@^2.0.2:
dependencies:
punycode "^2.1.1"
-tr46@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240"
- integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==
+tr46@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9"
+ integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==
dependencies:
punycode "^2.1.1"
@@ -9862,6 +9881,11 @@ webidl-conversions@^6.1.0:
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
+webidl-conversions@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a"
+ integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==
+
whatwg-encoding@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
@@ -9874,6 +9898,14 @@ whatwg-mimetype@^2.3.0:
resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
+whatwg-url@^11.0.0:
+ version "11.0.0"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018"
+ integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==
+ dependencies:
+ tr46 "^3.0.0"
+ webidl-conversions "^7.0.0"
+
whatwg-url@^8.0.0, whatwg-url@^8.5.0:
version "8.5.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.5.0.tgz#7752b8464fc0903fec89aa9846fc9efe07351fd3"
@@ -9883,14 +9915,6 @@ whatwg-url@^8.0.0, whatwg-url@^8.5.0:
tr46 "^2.0.2"
webidl-conversions "^6.1.0"
-whatwg-url@^9.1.0:
- version "9.1.0"
- resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-9.1.0.tgz#1b112cf237d72cd64fa7882b9c3f6234a1c3050d"
- integrity sha512-CQ0UcrPHyomtlOCot1TL77WyMIm/bCwrJ2D6AOKGwEczU9EpyoqAokfqrf/MioU9kHcMsmJZcg1egXix2KYEsA==
- dependencies:
- tr46 "^2.1.0"
- webidl-conversions "^6.1.0"
-
which-module@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"