@lordbex/thelounge 4.4.4-blowfish → 4.5.1-blowfish

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +2 -2
  2. package/dist/defaults/config.js +31 -2
  3. package/dist/package.json +93 -91
  4. package/dist/server/client.js +188 -194
  5. package/dist/server/clientManager.js +65 -63
  6. package/dist/server/command-line/index.js +44 -43
  7. package/dist/server/command-line/install.js +37 -70
  8. package/dist/server/command-line/outdated.js +12 -17
  9. package/dist/server/command-line/start.js +25 -26
  10. package/dist/server/command-line/storage.js +26 -31
  11. package/dist/server/command-line/uninstall.js +16 -23
  12. package/dist/server/command-line/upgrade.js +20 -26
  13. package/dist/server/command-line/users/add.js +33 -40
  14. package/dist/server/command-line/users/edit.js +18 -24
  15. package/dist/server/command-line/users/index.js +12 -16
  16. package/dist/server/command-line/users/list.js +11 -39
  17. package/dist/server/command-line/users/remove.js +16 -22
  18. package/dist/server/command-line/users/reset.js +34 -35
  19. package/dist/server/command-line/utils.js +231 -87
  20. package/dist/server/config.js +61 -52
  21. package/dist/server/helper.js +29 -28
  22. package/dist/server/identification.js +39 -34
  23. package/dist/server/index.js +1 -3
  24. package/dist/server/log.js +19 -16
  25. package/dist/server/models/chan.js +36 -33
  26. package/dist/server/models/msg.js +15 -19
  27. package/dist/server/models/network.js +88 -86
  28. package/dist/server/models/prefix.js +4 -7
  29. package/dist/server/models/user.js +5 -10
  30. package/dist/server/path-helper.js +8 -0
  31. package/dist/server/plugins/auth/ldap.js +177 -112
  32. package/dist/server/plugins/auth/local.js +10 -15
  33. package/dist/server/plugins/auth.js +6 -35
  34. package/dist/server/plugins/changelog.js +30 -27
  35. package/dist/server/plugins/clientCertificate.js +33 -37
  36. package/dist/server/plugins/dev-server.js +15 -21
  37. package/dist/server/plugins/inputs/action.js +9 -14
  38. package/dist/server/plugins/inputs/away.js +1 -3
  39. package/dist/server/plugins/inputs/ban.js +9 -14
  40. package/dist/server/plugins/inputs/blow.js +9 -14
  41. package/dist/server/plugins/inputs/connect.js +5 -10
  42. package/dist/server/plugins/inputs/ctcp.js +7 -12
  43. package/dist/server/plugins/inputs/disconnect.js +1 -3
  44. package/dist/server/plugins/inputs/ignore.js +23 -29
  45. package/dist/server/plugins/inputs/ignorelist.js +12 -18
  46. package/dist/server/plugins/inputs/index.js +8 -34
  47. package/dist/server/plugins/inputs/invite.js +7 -12
  48. package/dist/server/plugins/inputs/kick.js +7 -12
  49. package/dist/server/plugins/inputs/kill.js +1 -3
  50. package/dist/server/plugins/inputs/list.js +1 -3
  51. package/dist/server/plugins/inputs/mode.js +10 -15
  52. package/dist/server/plugins/inputs/msg.js +13 -18
  53. package/dist/server/plugins/inputs/mute.js +9 -15
  54. package/dist/server/plugins/inputs/nick.js +9 -14
  55. package/dist/server/plugins/inputs/notice.js +5 -7
  56. package/dist/server/plugins/inputs/part.js +11 -16
  57. package/dist/server/plugins/inputs/quit.js +7 -13
  58. package/dist/server/plugins/inputs/rainbow.js +55 -0
  59. package/dist/server/plugins/inputs/raw.js +1 -3
  60. package/dist/server/plugins/inputs/rejoin.js +7 -12
  61. package/dist/server/plugins/inputs/topic.js +7 -12
  62. package/dist/server/plugins/inputs/whois.js +1 -3
  63. package/dist/server/plugins/irc-events/away.js +14 -20
  64. package/dist/server/plugins/irc-events/cap.js +16 -22
  65. package/dist/server/plugins/irc-events/chghost.js +14 -13
  66. package/dist/server/plugins/irc-events/connection.js +61 -63
  67. package/dist/server/plugins/irc-events/ctcp.js +22 -28
  68. package/dist/server/plugins/irc-events/error.js +20 -26
  69. package/dist/server/plugins/irc-events/help.js +7 -13
  70. package/dist/server/plugins/irc-events/info.js +7 -13
  71. package/dist/server/plugins/irc-events/invite.js +7 -13
  72. package/dist/server/plugins/irc-events/join.js +30 -27
  73. package/dist/server/plugins/irc-events/kick.js +21 -17
  74. package/dist/server/plugins/irc-events/link.js +75 -96
  75. package/dist/server/plugins/irc-events/list.js +23 -26
  76. package/dist/server/plugins/irc-events/message.js +46 -52
  77. package/dist/server/plugins/irc-events/mode.js +66 -63
  78. package/dist/server/plugins/irc-events/modelist.js +29 -35
  79. package/dist/server/plugins/irc-events/motd.js +10 -16
  80. package/dist/server/plugins/irc-events/names.js +3 -6
  81. package/dist/server/plugins/irc-events/nick.js +26 -23
  82. package/dist/server/plugins/irc-events/part.js +19 -15
  83. package/dist/server/plugins/irc-events/quit.js +17 -14
  84. package/dist/server/plugins/irc-events/sasl.js +9 -15
  85. package/dist/server/plugins/irc-events/spgroups.js +38 -0
  86. package/dist/server/plugins/irc-events/spjoin.js +52 -0
  87. package/dist/server/plugins/irc-events/topic.js +12 -18
  88. package/dist/server/plugins/irc-events/unhandled.js +12 -12
  89. package/dist/server/plugins/irc-events/welcome.js +7 -13
  90. package/dist/server/plugins/irc-events/whois.js +20 -24
  91. package/dist/server/plugins/massEventAggregator.js +214 -0
  92. package/dist/server/plugins/messageStorage/sqlite.js +322 -141
  93. package/dist/server/plugins/messageStorage/text.js +21 -26
  94. package/dist/server/plugins/packages/index.js +105 -74
  95. package/dist/server/plugins/packages/publicClient.js +7 -16
  96. package/dist/server/plugins/packages/themes.js +11 -16
  97. package/dist/server/plugins/storage.js +28 -33
  98. package/dist/server/plugins/sts.js +12 -17
  99. package/dist/server/plugins/uploader.js +40 -43
  100. package/dist/server/plugins/webpush.js +23 -51
  101. package/dist/server/server.js +318 -271
  102. package/dist/server/storageCleaner.js +29 -37
  103. package/dist/server/utils/fish.js +7 -14
  104. package/dist/shared/irc.js +3 -6
  105. package/dist/shared/linkify.js +7 -14
  106. package/dist/shared/types/chan.js +6 -9
  107. package/dist/shared/types/changelog.js +1 -2
  108. package/dist/shared/types/config.js +1 -2
  109. package/dist/shared/types/mention.js +1 -2
  110. package/dist/shared/types/msg.js +3 -5
  111. package/dist/shared/types/network.js +1 -2
  112. package/dist/shared/types/storage.js +1 -2
  113. package/dist/shared/types/user.js +1 -2
  114. package/index.js +14 -10
  115. package/package.json +93 -91
  116. package/public/css/style.css +9 -6
  117. package/public/css/style.css.map +1 -1
  118. package/public/fonts/font-awesome/fa-brands-400.ttf +0 -0
  119. package/public/fonts/font-awesome/fa-brands-400.woff2 +0 -0
  120. package/public/fonts/font-awesome/fa-duotone-900.ttf +0 -0
  121. package/public/fonts/font-awesome/fa-duotone-900.woff2 +0 -0
  122. package/public/fonts/font-awesome/fa-light-300.ttf +0 -0
  123. package/public/fonts/font-awesome/fa-light-300.woff2 +0 -0
  124. package/public/fonts/font-awesome/fa-regular-400.ttf +0 -0
  125. package/public/fonts/font-awesome/fa-regular-400.woff2 +0 -0
  126. package/public/fonts/font-awesome/fa-solid-900.ttf +0 -0
  127. package/public/fonts/font-awesome/fa-solid-900.woff2 +0 -0
  128. package/public/fonts/font-awesome/fa-thin-100.ttf +0 -0
  129. package/public/fonts/font-awesome/fa-thin-100.woff2 +0 -0
  130. package/public/fonts/font-awesome/fa-v4compatibility.ttf +0 -0
  131. package/public/fonts/font-awesome/fa-v4compatibility.woff2 +0 -0
  132. package/public/js/bundle.js +1 -1
  133. package/public/js/bundle.js.map +1 -1
  134. package/public/js/bundle.vendor.js +1 -1
  135. package/public/js/bundle.vendor.js.LICENSE.txt +24 -6
  136. package/public/js/bundle.vendor.js.map +1 -1
  137. package/public/service-worker.js +1 -1
  138. package/public/themes/default.css +1 -1
  139. package/public/themes/morning.css +1 -1
  140. package/dist/webpack.config.js +0 -224
package/README.md CHANGED
@@ -74,8 +74,8 @@ The Lounge is the official and community-managed fork of [Shout](https://github.
74
74
 
75
75
  ## Installation and usage
76
76
 
77
- The Lounge requires latest [Node.js](https://nodejs.org/) LTS version or more recent.
78
- The [Yarn package manager](https://yarnpkg.com/) is also recommended.
77
+ The Lounge requires [Node.js](https://nodejs.org/) v24.11.1 or newer (Node.js v24 LTS or v25+ recommended).
78
+ The [Yarn package manager](https://yarnpkg.com/) v4.11.0+ is also recommended.
79
79
  If you want to install with npm, `--unsafe-perm` is required for a correct install.
80
80
 
81
81
  ### Running stable releases
@@ -1,5 +1,4 @@
1
- "use strict";
2
- module.exports = {
1
+ export default {
3
2
  // ## Server settings
4
3
  // ### `public`
5
4
  //
@@ -293,6 +292,32 @@ module.exports = {
293
292
  maxAgeDays: 7,
294
293
  deletionPolicy: "statusOnly",
295
294
  },
295
+ // ### `massEventDetection`
296
+ //
297
+ // Configure detection and aggregation of mass IRC events (netsplits/reconnects).
298
+ // When enabled, rapid consecutive status messages are buffered and displayed as
299
+ // a single summary message instead of flooding the chat with individual messages.
300
+ //
301
+ // The available keys for the `massEventDetection` object are:
302
+ //
303
+ // - `enable`: When set to `true`, mass event detection is active.
304
+ // - `threshold`: Number of status messages within the window that triggers
305
+ // mass event mode.
306
+ // - `windowMs`: Time window in milliseconds for counting messages toward threshold.
307
+ // - `cooldownMs`: Time in milliseconds of inactivity before ending a mass event.
308
+ // - `maxDurationMs`: Maximum duration of a mass event in milliseconds (safety limit).
309
+ // - `refreshNamesAfter`: Whether to send NAMES after mass event ends to refresh
310
+ // the user list.
311
+ //
312
+ // This value is set to enable mass event detection by default:
313
+ massEventDetection: {
314
+ enable: true,
315
+ threshold: 10, // Trigger after 10 messages (was 20)
316
+ windowMs: 10000, // 10 second window (was 5s)
317
+ cooldownMs: 10000, // 10 seconds of inactivity to end (was 3s)
318
+ maxDurationMs: 300000, // 5 minute max (was 1 min)
319
+ refreshNamesAfter: true,
320
+ },
296
321
  // ### `useHexIp`
297
322
  //
298
323
  // When set to `true`, users' IP addresses will be encoded as hex.
@@ -450,6 +475,10 @@ module.exports = {
450
475
  //
451
476
  // All values in the `debug` object are set to `false`.
452
477
  debug: {
478
+ // ### `debug.logs`
479
+ //
480
+ // When set to true, this enables extra debugging output
481
+ logs: false,
453
482
  // ### `debug.ircFramework`
454
483
  //
455
484
  // When set to true, this enables extra debugging output provided by
package/dist/package.json CHANGED
@@ -1,11 +1,10 @@
1
1
  {
2
2
  "name": "@lordbex/thelounge",
3
3
  "description": "The self-hosted Web IRC client",
4
- "version": "4.4.4-blowfish",
4
+ "version": "4.5.1-blowfish",
5
+ "type": "module",
5
6
  "preferGlobal": true,
6
- "bin": {
7
- "thelounge": "index.js"
8
- },
7
+ "bin": "index.js",
9
8
  "repository": {
10
9
  "type": "git",
11
10
  "url": "https://github.com/LordBex/thelounge.git"
@@ -13,21 +12,20 @@
13
12
  "homepage": "https://thelounge.chat/",
14
13
  "scripts": {
15
14
  "build:client": "webpack",
16
- "build:server": "tsc -p server/tsconfig.json",
15
+ "build:server": "tsc --build server/tsconfig.json",
17
16
  "build": "run-p --aggregate-output build:client build:server",
18
- "coverage": "run-s test:* && nyc --nycrc-path=test/.nycrc-report.json report",
19
- "dev": "cross-env NODE_ENV=development ts-node --project server/tsconfig.json server/index.ts start --dev",
17
+ "coverage": "run-s test:mocha test:nospec && nyc --nycrc-path=test/.nycrc-report.json report",
18
+ "dev": "cross-env NODE_ENV=development tsx server/index.ts start --dev",
20
19
  "format:prettier": "prettier --write \"**/*.*\"",
21
20
  "generate:config:doc": "ts-node scripts/generate-config-doc.js",
22
- "lint:check-eslint": "eslint-config-prettier .eslintrc.cjs",
23
21
  "lint:eslint": "eslint . --report-unused-disable-directives --color",
24
22
  "lint:prettier": "prettier --list-different \"**/*.*\"",
25
23
  "lint:stylelint": "stylelint --color \"client/**/*.css\"",
26
- "lint": "run-p --aggregate-output --continue-on-error lint:*",
24
+ "lint": "run-p --aggregate-output --continue-on-error lint:eslint lint:prettier lint:stylelint",
27
25
  "start": "node index start",
28
- "test": "run-p --aggregate-output --continue-on-error lint:* test:mocha",
29
- "test:mocha": "webpack --mode=development && cross-env NODE_ENV=test TS_NODE_PROJECT='./test/tsconfig.json' mocha --config=test/.mocharc.yml 'test/**/*.ts'",
30
- "test:nospec": "webpack --mode=development && cross-env NODE_ENV=test TS_NODE_PROJECT='./test/tsconfig.json' mocha --config=test/.mocharc.yml",
26
+ "test": "run-p --aggregate-output --continue-on-error lint:eslint lint:prettier lint:stylelint test:mocha",
27
+ "test:mocha": "webpack --mode=development && cross-env NODE_ENV=test tsx node_modules/.bin/mocha --config=test/.mocharc.yml 'test/**/*.ts'",
28
+ "test:nospec": "webpack --mode=development && cross-env NODE_ENV=test tsx node_modules/.bin/mocha --config=test/.mocharc.yml",
31
29
  "watch": "webpack --watch",
32
30
  "githooks-install": "git config core.hooksPath scripts/git-hooks"
33
31
  },
@@ -44,7 +42,7 @@
44
42
  ],
45
43
  "license": "MIT",
46
44
  "engines": {
47
- "node": ">=18.0.0"
45
+ "node": ">=20.0.0"
48
46
  },
49
47
  "files": [
50
48
  "./.thelounge_home",
@@ -56,120 +54,124 @@
56
54
  "./public/**"
57
55
  ],
58
56
  "dependencies": {
59
- "@fastify/busboy": "1.0.0",
60
- "bcryptjs": "2.4.3",
61
- "chalk": "4.1.2",
62
- "cheerio": "1.0.0",
63
- "commander": "9.0.0",
57
+ "@fastify/busboy": "3.2.0",
58
+ "bcryptjs": "3.0.3",
59
+ "chalk": "5.6.2",
60
+ "cheerio": "1.1.2",
61
+ "commander": "14.0.2",
64
62
  "content-disposition": "0.5.4",
65
- "express": "4.20.0",
66
- "file-type": "16.5.4",
67
- "filenamify": "4.3.0",
68
- "got": "11.8.6",
63
+ "express": "5.1.0",
64
+ "file-type": "21.1.0",
65
+ "filenamify": "7.0.1",
69
66
  "irc-framework": "4.14.0",
70
- "is-utf8": "0.2.1",
71
- "ldapjs": "2.3.3",
72
- "linkify-it": "3.0.3",
67
+ "ldapts": "8.0.9",
68
+ "linkify-it": "5.0.0",
73
69
  "lodash": "4.17.21",
74
- "mime-types": "2.1.35",
70
+ "mime-types": "3.0.1",
75
71
  "node-forge": "1.3.1",
76
- "package-json": "7.0.0",
77
- "read": "1.0.7",
78
- "read-chunk": "3.2.0",
79
- "semver": "7.5.2",
80
- "socket.io": "4.6.2",
81
- "tlds": "1.228.0",
82
- "ua-parser-js": "1.0.39",
83
- "uuid": "8.3.2",
84
- "web-push": "3.4.5",
85
- "yarn": "1.22.22"
72
+ "package-json": "10.0.1",
73
+ "read": "5.0.1",
74
+ "read-chunk": "5.0.0",
75
+ "semver": "7.7.3",
76
+ "socket.io": "4.8.1",
77
+ "tlds": "1.261.0",
78
+ "ua-parser-js": "2.0.6",
79
+ "undici": "7.16.0",
80
+ "uuid": "13.0.0",
81
+ "web-push": "3.6.7"
86
82
  },
87
83
  "optionalDependencies": {
88
- "sqlite3": "5.1.7"
84
+ "better-sqlite3": "12.4.1"
89
85
  },
90
86
  "devDependencies": {
91
- "@babel/core": "7.17.10",
92
- "@babel/plugin-transform-runtime": "7.18.2",
93
- "@babel/preset-env": "7.17.10",
87
+ "@babel/core": "7.28.5",
88
+ "@babel/plugin-transform-runtime": "7.28.5",
89
+ "@babel/preset-env": "7.28.5",
94
90
  "@fortawesome/fontawesome-free": "5.15.4",
95
91
  "@istanbuljs/nyc-config-typescript": "1.0.2",
96
- "@textcomplete/core": "0.1.10",
92
+ "@stylistic/stylelint-plugin": "^4.0.0",
93
+ "@textcomplete/core": "0.1.13",
97
94
  "@textcomplete/textarea": "0.1.13",
98
95
  "@types/bcryptjs": "2.4.6",
99
- "@types/chai": "4.3.5",
96
+ "@types/better-sqlite3": "7.6.11",
97
+ "@types/chai": "5.2.3",
100
98
  "@types/cheerio": "0.22.35",
101
99
  "@types/content-disposition": "0.5.8",
102
- "@types/express": "4.17.21",
103
- "@types/is-utf8": "0.2.3",
104
- "@types/ldapjs": "2.2.5",
100
+ "@types/express": "5.0.5",
105
101
  "@types/linkify-it": "3.0.5",
106
- "@types/lodash": "4.14.202",
107
- "@types/mime-types": "2.1.4",
108
- "@types/mocha": "9.1.1",
102
+ "@types/lodash": "4.17.20",
103
+ "@types/mime-types": "3.0.1",
104
+ "@types/mocha": "^10.0.10",
109
105
  "@types/mousetrap": "1.6.15",
110
- "@types/node": "17.0.45",
106
+ "@types/node": "24.10.1",
111
107
  "@types/read": "0.0.32",
112
- "@types/semver": "7.3.9",
108
+ "@types/semver": "7.7.1",
109
+ "@types/sinon": "^20.0.0",
113
110
  "@types/sortablejs": "1.15.8",
114
- "@types/sqlite3": "3.1.11",
115
111
  "@types/ua-parser-js": "0.7.39",
116
112
  "@types/uuid": "8.3.4",
117
- "@types/web-push": "3.3.2",
113
+ "@types/web-push": "3.6.4",
118
114
  "@types/webpack-env": "1.16.4",
119
115
  "@types/webpack-hot-middleware": "2.25.6",
120
116
  "@types/ws": "8.5.12",
121
- "@typescript-eslint/eslint-plugin": "7.8.0",
122
- "@typescript-eslint/parser": "7.8.0",
123
- "@vue/runtime-dom": "3.2.33",
117
+ "@types/wtfnode": "^0",
118
+ "@typescript-eslint/eslint-plugin": "8.46.4",
119
+ "@typescript-eslint/parser": "8.46.4",
120
+ "@vue/runtime-dom": "3.5.24",
124
121
  "@vue/test-utils": "2.4.6",
125
- "babel-loader": "8.2.5",
122
+ "babel-loader": "10.0.0",
126
123
  "babel-plugin-istanbul": "6.1.1",
127
124
  "babel-preset-typescript-vue3": "2.0.17",
128
- "chai": "4.3.7",
129
- "copy-webpack-plugin": "10.2.4",
125
+ "chai": "6.2.1",
126
+ "copy-webpack-plugin": "13.0.1",
130
127
  "cross-env": "7.0.3",
131
- "css-loader": "6.5.1",
132
- "cssnano": "5.0.17",
128
+ "css-loader": "7.1.2",
129
+ "cssnano": "7.1.2",
133
130
  "dayjs": "1.10.8",
134
131
  "emoji-regex": "10.2.1",
135
- "eslint": "8.57.0",
136
- "eslint-config-prettier": "9.1.0",
137
- "eslint-define-config": "2.1.0",
138
- "eslint-plugin-vue": "9.25.0",
139
- "fork-ts-checker-webpack-plugin": "7.2.13",
132
+ "eslint": "9.39.1",
133
+ "eslint-config-prettier": "10.1.8",
134
+ "eslint-plugin-vue": "10.5.1",
135
+ "fork-ts-checker-webpack-plugin": "9.1.0",
140
136
  "fuzzy": "0.1.3",
141
- "mini-css-extract-plugin": "2.5.3",
142
- "mocha": "9.2.2",
137
+ "globals": "16.5.0",
138
+ "mini-css-extract-plugin": "2.9.4",
139
+ "mocha": "^11.7.5",
143
140
  "mousetrap": "1.6.5",
144
141
  "normalize.css": "8.0.1",
145
142
  "npm-run-all": "4.1.5",
146
- "nyc": "15.1.0",
147
- "postcss": "8.4.47",
148
- "postcss-import": "14.0.2",
149
- "postcss-loader": "6.2.1",
150
- "postcss-preset-env": "7.3.0",
151
- "prettier": "2.5.1",
152
- "pretty-quick": "3.1.3",
143
+ "nyc": "17.1.0",
144
+ "postcss": "8.5.6",
145
+ "postcss-import": "16.1.1",
146
+ "postcss-loader": "8.2.0",
147
+ "postcss-preset-env": "10.4.0",
148
+ "prettier": "3.6.2",
149
+ "pretty-quick": "4.2.2",
153
150
  "primer-tooltips": "2.0.0",
154
- "sinon": "13.0.2",
155
- "socket.io-client": "4.5.0",
151
+ "sinon": "21.0.0",
152
+ "socket.io-client": "4.8.1",
156
153
  "sortablejs": "1.15.2",
157
- "stylelint": "14.3.0",
158
- "stylelint-config-standard": "24.0.0",
159
- "ts-loader": "9.3.0",
160
- "ts-node": "10.7.0",
154
+ "stylelint": "16.25.0",
155
+ "stylelint-config-standard": "36.0.1",
156
+ "ts-loader": "9.5.4",
157
+ "ts-node": "10.9.2",
161
158
  "ts-sinon": "2.0.2",
162
- "typescript": "5.4.5",
159
+ "tsx": "^4.20.6",
160
+ "typescript": "5.9.3",
163
161
  "undate": "0.3.0",
164
- "vue": "3.2.35",
165
- "vue-eslint-parser": "9.4.3",
166
- "vue-loader": "17.0.1",
167
- "vue-router": "4.0.15",
168
- "vuex": "4.0.2",
169
- "webpack": "5.94.0",
170
- "webpack-cli": "4.9.2",
171
- "webpack-dev-middleware": "5.3.4",
172
- "webpack-hot-middleware": "2.25.4"
162
+ "vue": "3.5.24",
163
+ "vue-eslint-parser": "10.2.0",
164
+ "vue-loader": "17.4.2",
165
+ "vue-router": "4.6.3",
166
+ "vuex": "4.1.0",
167
+ "webpack": "5.102.1",
168
+ "webpack-cli": "6.0.1",
169
+ "webpack-dev-middleware": "7.4.2",
170
+ "webpack-hot-middleware": "2.26.1",
171
+ "wtfnode": "^0.10.1"
172
+ },
173
+ "resolutions": {
174
+ "js-yaml": "^4.1.1"
173
175
  },
174
- "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
176
+ "packageManager": "yarn@4.11.0"
175
177
  }