this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

initial commit

notjuliet fe81341d

+1847
+2
.gitignore
··· 1 + .env 2 + node_modules
+1696
package-lock.json
··· 1 + { 2 + "name": "pronouns-bsky", 3 + "lockfileVersion": 3, 4 + "requires": true, 5 + "packages": { 6 + "": { 7 + "dependencies": { 8 + "@atproto/api": "^0.12.23", 9 + "@skyware/firehose": "^0.1.5", 10 + "dotenv": "^16.4.5" 11 + }, 12 + "devDependencies": { 13 + "@types/node": "^20.14.10", 14 + "typescript": "^5.5.3" 15 + } 16 + }, 17 + "node_modules/@atproto/api": { 18 + "version": "0.12.23", 19 + "resolved": "https://registry.npmjs.org/@atproto/api/-/api-0.12.23.tgz", 20 + "integrity": "sha512-fgQ30u+q9smX5g41eep7fISSkSAhRkX0inc81PZ82QwcHbFkC8ePaha/KP0CoTaPWKi7EsC89Z/8BEBCJo0oBA==", 21 + "license": "MIT", 22 + "dependencies": { 23 + "@atproto/common-web": "^0.3.0", 24 + "@atproto/lexicon": "^0.4.0", 25 + "@atproto/syntax": "^0.3.0", 26 + "@atproto/xrpc": "^0.5.0", 27 + "await-lock": "^2.2.2", 28 + "multiformats": "^9.9.0", 29 + "tlds": "^1.234.0" 30 + } 31 + }, 32 + "node_modules/@atproto/common-web": { 33 + "version": "0.3.0", 34 + "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.3.0.tgz", 35 + "integrity": "sha512-67VnV6JJyX+ZWyjV7xFQMypAgDmjVaR9ZCuU/QW+mqlqI7fex2uL4Fv+7/jHadgzhuJHVd6OHOvNn0wR5WZYtA==", 36 + "license": "MIT", 37 + "dependencies": { 38 + "graphemer": "^1.4.0", 39 + "multiformats": "^9.9.0", 40 + "uint8arrays": "3.0.0", 41 + "zod": "^3.21.4" 42 + } 43 + }, 44 + "node_modules/@atproto/lexicon": { 45 + "version": "0.4.0", 46 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.4.0.tgz", 47 + "integrity": "sha512-RvCBKdSI4M8qWm5uTNz1z3R2yIvIhmOsMuleOj8YR6BwRD+QbtUBy3l+xQ7iXf4M5fdfJFxaUNa6Ty0iRwdKqQ==", 48 + "license": "MIT", 49 + "dependencies": { 50 + "@atproto/common-web": "^0.3.0", 51 + "@atproto/syntax": "^0.3.0", 52 + "iso-datestring-validator": "^2.2.2", 53 + "multiformats": "^9.9.0", 54 + "zod": "^3.21.4" 55 + } 56 + }, 57 + "node_modules/@atproto/repo": { 58 + "version": "0.3.9", 59 + "resolved": "https://registry.npmjs.org/@atproto/repo/-/repo-0.3.9.tgz", 60 + "integrity": "sha512-1TZvvIy0XQihdXPd9JALh04sGbOlr82zk9TxtxVmLX2jic6g5Pl48aB4R1TjvoRiVMAsQVh3VLRVbUN4o66eVg==", 61 + "license": "MIT", 62 + "dependencies": { 63 + "@atproto/common": "^0.3.4", 64 + "@atproto/common-web": "^0.2.4", 65 + "@atproto/crypto": "^0.3.0", 66 + "@atproto/identity": "^0.3.3", 67 + "@atproto/lexicon": "^0.3.3", 68 + "@atproto/syntax": "^0.2.1", 69 + "@ipld/car": "^3.2.3", 70 + "@ipld/dag-cbor": "^7.0.0", 71 + "multiformats": "^9.9.0", 72 + "uint8arrays": "3.0.0", 73 + "zod": "^3.21.4" 74 + } 75 + }, 76 + "node_modules/@atproto/repo/node_modules/@atproto/common": { 77 + "version": "0.3.4", 78 + "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.3.4.tgz", 79 + "integrity": "sha512-qjOHcyeHjGRJseYbdnl+0PViDlMRN9GR0/1ToGKAmXh0voz4LbBWU1FwtGF7CvTlbom9MZYhu21lF5pD5RqBwQ==", 80 + "license": "MIT", 81 + "dependencies": { 82 + "@atproto/common-web": "^0.2.4", 83 + "@ipld/dag-cbor": "^7.0.3", 84 + "cbor-x": "^1.5.1", 85 + "iso-datestring-validator": "^2.2.2", 86 + "multiformats": "^9.9.0", 87 + "pino": "^8.15.0", 88 + "zod": "3.21.4" 89 + } 90 + }, 91 + "node_modules/@atproto/repo/node_modules/@atproto/common-web": { 92 + "version": "0.2.4", 93 + "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.2.4.tgz", 94 + "integrity": "sha512-6+DOhQcTklFmeiSkZRx6iFeqi4OFtGl4yEDGATk00q4tEcPoPvyOBtYHN6+G9lrfJIfx5RfmggamvXlJv1PxxA==", 95 + "license": "MIT", 96 + "dependencies": { 97 + "graphemer": "^1.4.0", 98 + "multiformats": "^9.9.0", 99 + "uint8arrays": "3.0.0", 100 + "zod": "^3.21.4" 101 + } 102 + }, 103 + "node_modules/@atproto/repo/node_modules/@atproto/crypto": { 104 + "version": "0.3.0", 105 + "resolved": "https://registry.npmjs.org/@atproto/crypto/-/crypto-0.3.0.tgz", 106 + "integrity": "sha512-bhcxRTL4fgRY2YX/St0x4o0oDUp18QIPD7ek+7v8UKA0HpsCGQYbo8w9d9hUvwwty5X5p00cYF2tbggUWaPy7A==", 107 + "license": "MIT", 108 + "dependencies": { 109 + "@noble/curves": "^1.1.0", 110 + "@noble/hashes": "^1.3.1", 111 + "uint8arrays": "3.0.0" 112 + } 113 + }, 114 + "node_modules/@atproto/repo/node_modules/@atproto/identity": { 115 + "version": "0.3.3", 116 + "resolved": "https://registry.npmjs.org/@atproto/identity/-/identity-0.3.3.tgz", 117 + "integrity": "sha512-i5d3eOnXQAXuOrjdm4NcveIBJxdEywYJQ4d74/JOgy27bGdNVFgh9FdZAsOseQRkLv4r7mr0I0C6OlSA2BQIxA==", 118 + "license": "MIT", 119 + "dependencies": { 120 + "@atproto/common-web": "^0.2.4", 121 + "@atproto/crypto": "^0.3.0", 122 + "axios": "^0.27.2" 123 + } 124 + }, 125 + "node_modules/@atproto/repo/node_modules/@atproto/lexicon": { 126 + "version": "0.3.3", 127 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.3.3.tgz", 128 + "integrity": "sha512-6FOjdc3V05JKrtkhjfhHMS7f/4hMJOeHNtoE3Na7iFMpzBz0Lw5sw8kIFKY8pc8IG79qGcFgELyHLsljZYX+5A==", 129 + "license": "MIT", 130 + "dependencies": { 131 + "@atproto/common-web": "^0.2.4", 132 + "@atproto/syntax": "^0.2.1", 133 + "iso-datestring-validator": "^2.2.2", 134 + "multiformats": "^9.9.0", 135 + "zod": "^3.21.4" 136 + } 137 + }, 138 + "node_modules/@atproto/repo/node_modules/@atproto/syntax": { 139 + "version": "0.2.1", 140 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.2.1.tgz", 141 + "integrity": "sha512-ImOuiICtB5h78j90hAYOfTYzr5q5Wut0irNdELiogA3i74a8EXThe+j6Tj8snanYggrShbu5c6BDc1tVj477Yw==", 142 + "license": "MIT", 143 + "dependencies": { 144 + "@atproto/common-web": "^0.2.4" 145 + } 146 + }, 147 + "node_modules/@atproto/repo/node_modules/zod": { 148 + "version": "3.21.4", 149 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", 150 + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", 151 + "license": "MIT", 152 + "funding": { 153 + "url": "https://github.com/sponsors/colinhacks" 154 + } 155 + }, 156 + "node_modules/@atproto/syntax": { 157 + "version": "0.3.0", 158 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.3.0.tgz", 159 + "integrity": "sha512-Weq0ZBxffGHDXHl9U7BQc2BFJi/e23AL+k+i5+D9hUq/bzT4yjGsrCejkjq0xt82xXDjmhhvQSZ0LqxyZ5woxA==", 160 + "license": "MIT" 161 + }, 162 + "node_modules/@atproto/xrpc": { 163 + "version": "0.5.0", 164 + "resolved": "https://registry.npmjs.org/@atproto/xrpc/-/xrpc-0.5.0.tgz", 165 + "integrity": "sha512-swu+wyOLvYW4l3n+VAuJbHcPcES+tin2Lsrp8Bw5aIXIICiuFn1YMFlwK9JwVUzTH21Py1s1nHEjr4CJeElJog==", 166 + "license": "MIT", 167 + "dependencies": { 168 + "@atproto/lexicon": "^0.4.0", 169 + "zod": "^3.21.4" 170 + } 171 + }, 172 + "node_modules/@atproto/xrpc-server": { 173 + "version": "0.4.4", 174 + "resolved": "https://registry.npmjs.org/@atproto/xrpc-server/-/xrpc-server-0.4.4.tgz", 175 + "integrity": "sha512-R4uYvuia+tUM4wATLlKmMhr/+VEaSImhuAhD7jEHIjN3a+ZxDBE5PnW3PwWf68VBqw720JJ+jmsJMZO7v9y6FA==", 176 + "license": "MIT", 177 + "dependencies": { 178 + "@atproto/common": "^0.3.4", 179 + "@atproto/crypto": "^0.3.0", 180 + "@atproto/lexicon": "^0.3.3", 181 + "cbor-x": "^1.5.1", 182 + "express": "^4.17.2", 183 + "http-errors": "^2.0.0", 184 + "mime-types": "^2.1.35", 185 + "rate-limiter-flexible": "^2.4.1", 186 + "uint8arrays": "3.0.0", 187 + "ws": "^8.12.0", 188 + "zod": "^3.21.4" 189 + } 190 + }, 191 + "node_modules/@atproto/xrpc-server/node_modules/@atproto/common": { 192 + "version": "0.3.4", 193 + "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.3.4.tgz", 194 + "integrity": "sha512-qjOHcyeHjGRJseYbdnl+0PViDlMRN9GR0/1ToGKAmXh0voz4LbBWU1FwtGF7CvTlbom9MZYhu21lF5pD5RqBwQ==", 195 + "license": "MIT", 196 + "dependencies": { 197 + "@atproto/common-web": "^0.2.4", 198 + "@ipld/dag-cbor": "^7.0.3", 199 + "cbor-x": "^1.5.1", 200 + "iso-datestring-validator": "^2.2.2", 201 + "multiformats": "^9.9.0", 202 + "pino": "^8.15.0", 203 + "zod": "3.21.4" 204 + } 205 + }, 206 + "node_modules/@atproto/xrpc-server/node_modules/@atproto/common-web": { 207 + "version": "0.2.4", 208 + "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.2.4.tgz", 209 + "integrity": "sha512-6+DOhQcTklFmeiSkZRx6iFeqi4OFtGl4yEDGATk00q4tEcPoPvyOBtYHN6+G9lrfJIfx5RfmggamvXlJv1PxxA==", 210 + "license": "MIT", 211 + "dependencies": { 212 + "graphemer": "^1.4.0", 213 + "multiformats": "^9.9.0", 214 + "uint8arrays": "3.0.0", 215 + "zod": "^3.21.4" 216 + } 217 + }, 218 + "node_modules/@atproto/xrpc-server/node_modules/@atproto/crypto": { 219 + "version": "0.3.0", 220 + "resolved": "https://registry.npmjs.org/@atproto/crypto/-/crypto-0.3.0.tgz", 221 + "integrity": "sha512-bhcxRTL4fgRY2YX/St0x4o0oDUp18QIPD7ek+7v8UKA0HpsCGQYbo8w9d9hUvwwty5X5p00cYF2tbggUWaPy7A==", 222 + "license": "MIT", 223 + "dependencies": { 224 + "@noble/curves": "^1.1.0", 225 + "@noble/hashes": "^1.3.1", 226 + "uint8arrays": "3.0.0" 227 + } 228 + }, 229 + "node_modules/@atproto/xrpc-server/node_modules/@atproto/lexicon": { 230 + "version": "0.3.3", 231 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.3.3.tgz", 232 + "integrity": "sha512-6FOjdc3V05JKrtkhjfhHMS7f/4hMJOeHNtoE3Na7iFMpzBz0Lw5sw8kIFKY8pc8IG79qGcFgELyHLsljZYX+5A==", 233 + "license": "MIT", 234 + "dependencies": { 235 + "@atproto/common-web": "^0.2.4", 236 + "@atproto/syntax": "^0.2.1", 237 + "iso-datestring-validator": "^2.2.2", 238 + "multiformats": "^9.9.0", 239 + "zod": "^3.21.4" 240 + } 241 + }, 242 + "node_modules/@atproto/xrpc-server/node_modules/@atproto/syntax": { 243 + "version": "0.2.1", 244 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.2.1.tgz", 245 + "integrity": "sha512-ImOuiICtB5h78j90hAYOfTYzr5q5Wut0irNdELiogA3i74a8EXThe+j6Tj8snanYggrShbu5c6BDc1tVj477Yw==", 246 + "license": "MIT", 247 + "dependencies": { 248 + "@atproto/common-web": "^0.2.4" 249 + } 250 + }, 251 + "node_modules/@atproto/xrpc-server/node_modules/zod": { 252 + "version": "3.21.4", 253 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz", 254 + "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==", 255 + "license": "MIT", 256 + "funding": { 257 + "url": "https://github.com/sponsors/colinhacks" 258 + } 259 + }, 260 + "node_modules/@cbor-extract/cbor-extract-darwin-arm64": { 261 + "version": "2.2.0", 262 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-darwin-arm64/-/cbor-extract-darwin-arm64-2.2.0.tgz", 263 + "integrity": "sha512-P7swiOAdF7aSi0H+tHtHtr6zrpF3aAq/W9FXx5HektRvLTM2O89xCyXF3pk7pLc7QpaY7AoaE8UowVf9QBdh3w==", 264 + "cpu": [ 265 + "arm64" 266 + ], 267 + "license": "MIT", 268 + "optional": true, 269 + "os": [ 270 + "darwin" 271 + ] 272 + }, 273 + "node_modules/@cbor-extract/cbor-extract-darwin-x64": { 274 + "version": "2.2.0", 275 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-darwin-x64/-/cbor-extract-darwin-x64-2.2.0.tgz", 276 + "integrity": "sha512-1liF6fgowph0JxBbYnAS7ZlqNYLf000Qnj4KjqPNW4GViKrEql2MgZnAsExhY9LSy8dnvA4C0qHEBgPrll0z0w==", 277 + "cpu": [ 278 + "x64" 279 + ], 280 + "license": "MIT", 281 + "optional": true, 282 + "os": [ 283 + "darwin" 284 + ] 285 + }, 286 + "node_modules/@cbor-extract/cbor-extract-linux-arm": { 287 + "version": "2.2.0", 288 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-linux-arm/-/cbor-extract-linux-arm-2.2.0.tgz", 289 + "integrity": "sha512-QeBcBXk964zOytiedMPQNZr7sg0TNavZeuUCD6ON4vEOU/25+pLhNN6EDIKJ9VLTKaZ7K7EaAriyYQ1NQ05s/Q==", 290 + "cpu": [ 291 + "arm" 292 + ], 293 + "license": "MIT", 294 + "optional": true, 295 + "os": [ 296 + "linux" 297 + ] 298 + }, 299 + "node_modules/@cbor-extract/cbor-extract-linux-arm64": { 300 + "version": "2.2.0", 301 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-linux-arm64/-/cbor-extract-linux-arm64-2.2.0.tgz", 302 + "integrity": "sha512-rQvhNmDuhjTVXSPFLolmQ47/ydGOFXtbR7+wgkSY0bdOxCFept1hvg59uiLPT2fVDuJFuEy16EImo5tE2x3RsQ==", 303 + "cpu": [ 304 + "arm64" 305 + ], 306 + "license": "MIT", 307 + "optional": true, 308 + "os": [ 309 + "linux" 310 + ] 311 + }, 312 + "node_modules/@cbor-extract/cbor-extract-linux-x64": { 313 + "version": "2.2.0", 314 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-linux-x64/-/cbor-extract-linux-x64-2.2.0.tgz", 315 + "integrity": "sha512-cWLAWtT3kNLHSvP4RKDzSTX9o0wvQEEAj4SKvhWuOVZxiDAeQazr9A+PSiRILK1VYMLeDml89ohxCnUNQNQNCw==", 316 + "cpu": [ 317 + "x64" 318 + ], 319 + "license": "MIT", 320 + "optional": true, 321 + "os": [ 322 + "linux" 323 + ] 324 + }, 325 + "node_modules/@cbor-extract/cbor-extract-win32-x64": { 326 + "version": "2.2.0", 327 + "resolved": "https://registry.npmjs.org/@cbor-extract/cbor-extract-win32-x64/-/cbor-extract-win32-x64-2.2.0.tgz", 328 + "integrity": "sha512-l2M+Z8DO2vbvADOBNLbbh9y5ST1RY5sqkWOg/58GkUPBYou/cuNZ68SGQ644f1CvZ8kcOxyZtw06+dxWHIoN/w==", 329 + "cpu": [ 330 + "x64" 331 + ], 332 + "license": "MIT", 333 + "optional": true, 334 + "os": [ 335 + "win32" 336 + ] 337 + }, 338 + "node_modules/@ipld/car": { 339 + "version": "3.2.4", 340 + "resolved": "https://registry.npmjs.org/@ipld/car/-/car-3.2.4.tgz", 341 + "integrity": "sha512-rezKd+jk8AsTGOoJKqzfjLJ3WVft7NZNH95f0pfPbicROvzTyvHCNy567HzSUd6gRXZ9im29z5ZEv9Hw49jSYw==", 342 + "license": "(Apache-2.0 AND MIT)", 343 + "dependencies": { 344 + "@ipld/dag-cbor": "^7.0.0", 345 + "multiformats": "^9.5.4", 346 + "varint": "^6.0.0" 347 + } 348 + }, 349 + "node_modules/@ipld/dag-cbor": { 350 + "version": "7.0.3", 351 + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz", 352 + "integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==", 353 + "license": "(Apache-2.0 AND MIT)", 354 + "dependencies": { 355 + "cborg": "^1.6.0", 356 + "multiformats": "^9.5.4" 357 + } 358 + }, 359 + "node_modules/@noble/curves": { 360 + "version": "1.4.2", 361 + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", 362 + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", 363 + "license": "MIT", 364 + "dependencies": { 365 + "@noble/hashes": "1.4.0" 366 + }, 367 + "funding": { 368 + "url": "https://paulmillr.com/funding/" 369 + } 370 + }, 371 + "node_modules/@noble/hashes": { 372 + "version": "1.4.0", 373 + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", 374 + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", 375 + "license": "MIT", 376 + "engines": { 377 + "node": ">= 16" 378 + }, 379 + "funding": { 380 + "url": "https://paulmillr.com/funding/" 381 + } 382 + }, 383 + "node_modules/@skyware/firehose": { 384 + "version": "0.1.5", 385 + "resolved": "https://registry.npmjs.org/@skyware/firehose/-/firehose-0.1.5.tgz", 386 + "integrity": "sha512-ggO2xHERcTxnICRGHuha0vad9fQbmzvraRPhSoi7ysnIzSGUMiQVz/c6HrON2svVMZBoeMzTtu9jjRyhio+ckA==", 387 + "license": "MPL-2.0", 388 + "dependencies": { 389 + "@atproto/repo": "^0.3.7", 390 + "@atproto/xrpc-server": "^0.4.2", 391 + "ws": "^8.16.0" 392 + } 393 + }, 394 + "node_modules/@types/node": { 395 + "version": "20.14.10", 396 + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", 397 + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", 398 + "dev": true, 399 + "license": "MIT", 400 + "dependencies": { 401 + "undici-types": "~5.26.4" 402 + } 403 + }, 404 + "node_modules/abort-controller": { 405 + "version": "3.0.0", 406 + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", 407 + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", 408 + "license": "MIT", 409 + "dependencies": { 410 + "event-target-shim": "^5.0.0" 411 + }, 412 + "engines": { 413 + "node": ">=6.5" 414 + } 415 + }, 416 + "node_modules/accepts": { 417 + "version": "1.3.8", 418 + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", 419 + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", 420 + "license": "MIT", 421 + "dependencies": { 422 + "mime-types": "~2.1.34", 423 + "negotiator": "0.6.3" 424 + }, 425 + "engines": { 426 + "node": ">= 0.6" 427 + } 428 + }, 429 + "node_modules/array-flatten": { 430 + "version": "1.1.1", 431 + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 432 + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", 433 + "license": "MIT" 434 + }, 435 + "node_modules/asynckit": { 436 + "version": "0.4.0", 437 + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 438 + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", 439 + "license": "MIT" 440 + }, 441 + "node_modules/atomic-sleep": { 442 + "version": "1.0.0", 443 + "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", 444 + "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", 445 + "license": "MIT", 446 + "engines": { 447 + "node": ">=8.0.0" 448 + } 449 + }, 450 + "node_modules/await-lock": { 451 + "version": "2.2.2", 452 + "resolved": "https://registry.npmjs.org/await-lock/-/await-lock-2.2.2.tgz", 453 + "integrity": "sha512-aDczADvlvTGajTDjcjpJMqRkOF6Qdz3YbPZm/PyW6tKPkx2hlYBzxMhEywM/tU72HrVZjgl5VCdRuMlA7pZ8Gw==", 454 + "license": "MIT" 455 + }, 456 + "node_modules/axios": { 457 + "version": "0.27.2", 458 + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", 459 + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", 460 + "license": "MIT", 461 + "dependencies": { 462 + "follow-redirects": "^1.14.9", 463 + "form-data": "^4.0.0" 464 + } 465 + }, 466 + "node_modules/base64-js": { 467 + "version": "1.5.1", 468 + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", 469 + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", 470 + "funding": [ 471 + { 472 + "type": "github", 473 + "url": "https://github.com/sponsors/feross" 474 + }, 475 + { 476 + "type": "patreon", 477 + "url": "https://www.patreon.com/feross" 478 + }, 479 + { 480 + "type": "consulting", 481 + "url": "https://feross.org/support" 482 + } 483 + ], 484 + "license": "MIT" 485 + }, 486 + "node_modules/body-parser": { 487 + "version": "1.20.2", 488 + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", 489 + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", 490 + "license": "MIT", 491 + "dependencies": { 492 + "bytes": "3.1.2", 493 + "content-type": "~1.0.5", 494 + "debug": "2.6.9", 495 + "depd": "2.0.0", 496 + "destroy": "1.2.0", 497 + "http-errors": "2.0.0", 498 + "iconv-lite": "0.4.24", 499 + "on-finished": "2.4.1", 500 + "qs": "6.11.0", 501 + "raw-body": "2.5.2", 502 + "type-is": "~1.6.18", 503 + "unpipe": "1.0.0" 504 + }, 505 + "engines": { 506 + "node": ">= 0.8", 507 + "npm": "1.2.8000 || >= 1.4.16" 508 + } 509 + }, 510 + "node_modules/buffer": { 511 + "version": "6.0.3", 512 + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", 513 + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", 514 + "funding": [ 515 + { 516 + "type": "github", 517 + "url": "https://github.com/sponsors/feross" 518 + }, 519 + { 520 + "type": "patreon", 521 + "url": "https://www.patreon.com/feross" 522 + }, 523 + { 524 + "type": "consulting", 525 + "url": "https://feross.org/support" 526 + } 527 + ], 528 + "license": "MIT", 529 + "dependencies": { 530 + "base64-js": "^1.3.1", 531 + "ieee754": "^1.2.1" 532 + } 533 + }, 534 + "node_modules/bufferutil": { 535 + "version": "4.0.8", 536 + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.8.tgz", 537 + "integrity": "sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==", 538 + "hasInstallScript": true, 539 + "license": "MIT", 540 + "optional": true, 541 + "peer": true, 542 + "dependencies": { 543 + "node-gyp-build": "^4.3.0" 544 + }, 545 + "engines": { 546 + "node": ">=6.14.2" 547 + } 548 + }, 549 + "node_modules/bytes": { 550 + "version": "3.1.2", 551 + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", 552 + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", 553 + "license": "MIT", 554 + "engines": { 555 + "node": ">= 0.8" 556 + } 557 + }, 558 + "node_modules/call-bind": { 559 + "version": "1.0.7", 560 + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", 561 + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", 562 + "license": "MIT", 563 + "dependencies": { 564 + "es-define-property": "^1.0.0", 565 + "es-errors": "^1.3.0", 566 + "function-bind": "^1.1.2", 567 + "get-intrinsic": "^1.2.4", 568 + "set-function-length": "^1.2.1" 569 + }, 570 + "engines": { 571 + "node": ">= 0.4" 572 + }, 573 + "funding": { 574 + "url": "https://github.com/sponsors/ljharb" 575 + } 576 + }, 577 + "node_modules/cbor-extract": { 578 + "version": "2.2.0", 579 + "resolved": "https://registry.npmjs.org/cbor-extract/-/cbor-extract-2.2.0.tgz", 580 + "integrity": "sha512-Ig1zM66BjLfTXpNgKpvBePq271BPOvu8MR0Jl080yG7Jsl+wAZunfrwiwA+9ruzm/WEdIV5QF/bjDZTqyAIVHA==", 581 + "hasInstallScript": true, 582 + "license": "MIT", 583 + "optional": true, 584 + "dependencies": { 585 + "node-gyp-build-optional-packages": "5.1.1" 586 + }, 587 + "bin": { 588 + "download-cbor-prebuilds": "bin/download-prebuilds.js" 589 + }, 590 + "optionalDependencies": { 591 + "@cbor-extract/cbor-extract-darwin-arm64": "2.2.0", 592 + "@cbor-extract/cbor-extract-darwin-x64": "2.2.0", 593 + "@cbor-extract/cbor-extract-linux-arm": "2.2.0", 594 + "@cbor-extract/cbor-extract-linux-arm64": "2.2.0", 595 + "@cbor-extract/cbor-extract-linux-x64": "2.2.0", 596 + "@cbor-extract/cbor-extract-win32-x64": "2.2.0" 597 + } 598 + }, 599 + "node_modules/cbor-x": { 600 + "version": "1.5.9", 601 + "resolved": "https://registry.npmjs.org/cbor-x/-/cbor-x-1.5.9.tgz", 602 + "integrity": "sha512-OEI5rEu3MeR0WWNUXuIGkxmbXVhABP+VtgAXzm48c9ulkrsvxshjjk94XSOGphyAKeNGLPfAxxzEtgQ6rEVpYQ==", 603 + "license": "MIT", 604 + "optionalDependencies": { 605 + "cbor-extract": "^2.2.0" 606 + } 607 + }, 608 + "node_modules/cborg": { 609 + "version": "1.10.2", 610 + "resolved": "https://registry.npmjs.org/cborg/-/cborg-1.10.2.tgz", 611 + "integrity": "sha512-b3tFPA9pUr2zCUiCfRd2+wok2/LBSNUMKOuRRok+WlvvAgEt/PlbgPTsZUcwCOs53IJvLgTp0eotwtosE6njug==", 612 + "license": "Apache-2.0", 613 + "bin": { 614 + "cborg": "cli.js" 615 + } 616 + }, 617 + "node_modules/combined-stream": { 618 + "version": "1.0.8", 619 + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 620 + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 621 + "license": "MIT", 622 + "dependencies": { 623 + "delayed-stream": "~1.0.0" 624 + }, 625 + "engines": { 626 + "node": ">= 0.8" 627 + } 628 + }, 629 + "node_modules/content-disposition": { 630 + "version": "0.5.4", 631 + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", 632 + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", 633 + "license": "MIT", 634 + "dependencies": { 635 + "safe-buffer": "5.2.1" 636 + }, 637 + "engines": { 638 + "node": ">= 0.6" 639 + } 640 + }, 641 + "node_modules/content-type": { 642 + "version": "1.0.5", 643 + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", 644 + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", 645 + "license": "MIT", 646 + "engines": { 647 + "node": ">= 0.6" 648 + } 649 + }, 650 + "node_modules/cookie": { 651 + "version": "0.6.0", 652 + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", 653 + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", 654 + "license": "MIT", 655 + "engines": { 656 + "node": ">= 0.6" 657 + } 658 + }, 659 + "node_modules/cookie-signature": { 660 + "version": "1.0.6", 661 + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 662 + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", 663 + "license": "MIT" 664 + }, 665 + "node_modules/debug": { 666 + "version": "2.6.9", 667 + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 668 + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 669 + "license": "MIT", 670 + "dependencies": { 671 + "ms": "2.0.0" 672 + } 673 + }, 674 + "node_modules/define-data-property": { 675 + "version": "1.1.4", 676 + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", 677 + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", 678 + "license": "MIT", 679 + "dependencies": { 680 + "es-define-property": "^1.0.0", 681 + "es-errors": "^1.3.0", 682 + "gopd": "^1.0.1" 683 + }, 684 + "engines": { 685 + "node": ">= 0.4" 686 + }, 687 + "funding": { 688 + "url": "https://github.com/sponsors/ljharb" 689 + } 690 + }, 691 + "node_modules/delayed-stream": { 692 + "version": "1.0.0", 693 + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 694 + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", 695 + "license": "MIT", 696 + "engines": { 697 + "node": ">=0.4.0" 698 + } 699 + }, 700 + "node_modules/depd": { 701 + "version": "2.0.0", 702 + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", 703 + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", 704 + "license": "MIT", 705 + "engines": { 706 + "node": ">= 0.8" 707 + } 708 + }, 709 + "node_modules/destroy": { 710 + "version": "1.2.0", 711 + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", 712 + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", 713 + "license": "MIT", 714 + "engines": { 715 + "node": ">= 0.8", 716 + "npm": "1.2.8000 || >= 1.4.16" 717 + } 718 + }, 719 + "node_modules/detect-libc": { 720 + "version": "2.0.3", 721 + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", 722 + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", 723 + "license": "Apache-2.0", 724 + "optional": true, 725 + "engines": { 726 + "node": ">=8" 727 + } 728 + }, 729 + "node_modules/dotenv": { 730 + "version": "16.4.5", 731 + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", 732 + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", 733 + "license": "BSD-2-Clause", 734 + "engines": { 735 + "node": ">=12" 736 + }, 737 + "funding": { 738 + "url": "https://dotenvx.com" 739 + } 740 + }, 741 + "node_modules/ee-first": { 742 + "version": "1.1.1", 743 + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 744 + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", 745 + "license": "MIT" 746 + }, 747 + "node_modules/encodeurl": { 748 + "version": "1.0.2", 749 + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 750 + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", 751 + "license": "MIT", 752 + "engines": { 753 + "node": ">= 0.8" 754 + } 755 + }, 756 + "node_modules/es-define-property": { 757 + "version": "1.0.0", 758 + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", 759 + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", 760 + "license": "MIT", 761 + "dependencies": { 762 + "get-intrinsic": "^1.2.4" 763 + }, 764 + "engines": { 765 + "node": ">= 0.4" 766 + } 767 + }, 768 + "node_modules/es-errors": { 769 + "version": "1.3.0", 770 + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", 771 + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", 772 + "license": "MIT", 773 + "engines": { 774 + "node": ">= 0.4" 775 + } 776 + }, 777 + "node_modules/escape-html": { 778 + "version": "1.0.3", 779 + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 780 + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", 781 + "license": "MIT" 782 + }, 783 + "node_modules/etag": { 784 + "version": "1.8.1", 785 + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 786 + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", 787 + "license": "MIT", 788 + "engines": { 789 + "node": ">= 0.6" 790 + } 791 + }, 792 + "node_modules/event-target-shim": { 793 + "version": "5.0.1", 794 + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", 795 + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", 796 + "license": "MIT", 797 + "engines": { 798 + "node": ">=6" 799 + } 800 + }, 801 + "node_modules/events": { 802 + "version": "3.3.0", 803 + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", 804 + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", 805 + "license": "MIT", 806 + "engines": { 807 + "node": ">=0.8.x" 808 + } 809 + }, 810 + "node_modules/express": { 811 + "version": "4.19.2", 812 + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", 813 + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", 814 + "license": "MIT", 815 + "dependencies": { 816 + "accepts": "~1.3.8", 817 + "array-flatten": "1.1.1", 818 + "body-parser": "1.20.2", 819 + "content-disposition": "0.5.4", 820 + "content-type": "~1.0.4", 821 + "cookie": "0.6.0", 822 + "cookie-signature": "1.0.6", 823 + "debug": "2.6.9", 824 + "depd": "2.0.0", 825 + "encodeurl": "~1.0.2", 826 + "escape-html": "~1.0.3", 827 + "etag": "~1.8.1", 828 + "finalhandler": "1.2.0", 829 + "fresh": "0.5.2", 830 + "http-errors": "2.0.0", 831 + "merge-descriptors": "1.0.1", 832 + "methods": "~1.1.2", 833 + "on-finished": "2.4.1", 834 + "parseurl": "~1.3.3", 835 + "path-to-regexp": "0.1.7", 836 + "proxy-addr": "~2.0.7", 837 + "qs": "6.11.0", 838 + "range-parser": "~1.2.1", 839 + "safe-buffer": "5.2.1", 840 + "send": "0.18.0", 841 + "serve-static": "1.15.0", 842 + "setprototypeof": "1.2.0", 843 + "statuses": "2.0.1", 844 + "type-is": "~1.6.18", 845 + "utils-merge": "1.0.1", 846 + "vary": "~1.1.2" 847 + }, 848 + "engines": { 849 + "node": ">= 0.10.0" 850 + } 851 + }, 852 + "node_modules/fast-redact": { 853 + "version": "3.5.0", 854 + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", 855 + "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", 856 + "license": "MIT", 857 + "engines": { 858 + "node": ">=6" 859 + } 860 + }, 861 + "node_modules/finalhandler": { 862 + "version": "1.2.0", 863 + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", 864 + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", 865 + "license": "MIT", 866 + "dependencies": { 867 + "debug": "2.6.9", 868 + "encodeurl": "~1.0.2", 869 + "escape-html": "~1.0.3", 870 + "on-finished": "2.4.1", 871 + "parseurl": "~1.3.3", 872 + "statuses": "2.0.1", 873 + "unpipe": "~1.0.0" 874 + }, 875 + "engines": { 876 + "node": ">= 0.8" 877 + } 878 + }, 879 + "node_modules/follow-redirects": { 880 + "version": "1.15.6", 881 + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", 882 + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", 883 + "funding": [ 884 + { 885 + "type": "individual", 886 + "url": "https://github.com/sponsors/RubenVerborgh" 887 + } 888 + ], 889 + "license": "MIT", 890 + "engines": { 891 + "node": ">=4.0" 892 + }, 893 + "peerDependenciesMeta": { 894 + "debug": { 895 + "optional": true 896 + } 897 + } 898 + }, 899 + "node_modules/form-data": { 900 + "version": "4.0.0", 901 + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", 902 + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", 903 + "license": "MIT", 904 + "dependencies": { 905 + "asynckit": "^0.4.0", 906 + "combined-stream": "^1.0.8", 907 + "mime-types": "^2.1.12" 908 + }, 909 + "engines": { 910 + "node": ">= 6" 911 + } 912 + }, 913 + "node_modules/forwarded": { 914 + "version": "0.2.0", 915 + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", 916 + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", 917 + "license": "MIT", 918 + "engines": { 919 + "node": ">= 0.6" 920 + } 921 + }, 922 + "node_modules/fresh": { 923 + "version": "0.5.2", 924 + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 925 + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", 926 + "license": "MIT", 927 + "engines": { 928 + "node": ">= 0.6" 929 + } 930 + }, 931 + "node_modules/function-bind": { 932 + "version": "1.1.2", 933 + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", 934 + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", 935 + "license": "MIT", 936 + "funding": { 937 + "url": "https://github.com/sponsors/ljharb" 938 + } 939 + }, 940 + "node_modules/get-intrinsic": { 941 + "version": "1.2.4", 942 + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", 943 + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", 944 + "license": "MIT", 945 + "dependencies": { 946 + "es-errors": "^1.3.0", 947 + "function-bind": "^1.1.2", 948 + "has-proto": "^1.0.1", 949 + "has-symbols": "^1.0.3", 950 + "hasown": "^2.0.0" 951 + }, 952 + "engines": { 953 + "node": ">= 0.4" 954 + }, 955 + "funding": { 956 + "url": "https://github.com/sponsors/ljharb" 957 + } 958 + }, 959 + "node_modules/gopd": { 960 + "version": "1.0.1", 961 + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", 962 + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", 963 + "license": "MIT", 964 + "dependencies": { 965 + "get-intrinsic": "^1.1.3" 966 + }, 967 + "funding": { 968 + "url": "https://github.com/sponsors/ljharb" 969 + } 970 + }, 971 + "node_modules/graphemer": { 972 + "version": "1.4.0", 973 + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", 974 + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", 975 + "license": "MIT" 976 + }, 977 + "node_modules/has-property-descriptors": { 978 + "version": "1.0.2", 979 + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", 980 + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", 981 + "license": "MIT", 982 + "dependencies": { 983 + "es-define-property": "^1.0.0" 984 + }, 985 + "funding": { 986 + "url": "https://github.com/sponsors/ljharb" 987 + } 988 + }, 989 + "node_modules/has-proto": { 990 + "version": "1.0.3", 991 + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", 992 + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", 993 + "license": "MIT", 994 + "engines": { 995 + "node": ">= 0.4" 996 + }, 997 + "funding": { 998 + "url": "https://github.com/sponsors/ljharb" 999 + } 1000 + }, 1001 + "node_modules/has-symbols": { 1002 + "version": "1.0.3", 1003 + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", 1004 + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", 1005 + "license": "MIT", 1006 + "engines": { 1007 + "node": ">= 0.4" 1008 + }, 1009 + "funding": { 1010 + "url": "https://github.com/sponsors/ljharb" 1011 + } 1012 + }, 1013 + "node_modules/hasown": { 1014 + "version": "2.0.2", 1015 + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", 1016 + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", 1017 + "license": "MIT", 1018 + "dependencies": { 1019 + "function-bind": "^1.1.2" 1020 + }, 1021 + "engines": { 1022 + "node": ">= 0.4" 1023 + } 1024 + }, 1025 + "node_modules/http-errors": { 1026 + "version": "2.0.0", 1027 + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", 1028 + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", 1029 + "license": "MIT", 1030 + "dependencies": { 1031 + "depd": "2.0.0", 1032 + "inherits": "2.0.4", 1033 + "setprototypeof": "1.2.0", 1034 + "statuses": "2.0.1", 1035 + "toidentifier": "1.0.1" 1036 + }, 1037 + "engines": { 1038 + "node": ">= 0.8" 1039 + } 1040 + }, 1041 + "node_modules/iconv-lite": { 1042 + "version": "0.4.24", 1043 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 1044 + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 1045 + "license": "MIT", 1046 + "dependencies": { 1047 + "safer-buffer": ">= 2.1.2 < 3" 1048 + }, 1049 + "engines": { 1050 + "node": ">=0.10.0" 1051 + } 1052 + }, 1053 + "node_modules/ieee754": { 1054 + "version": "1.2.1", 1055 + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", 1056 + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", 1057 + "funding": [ 1058 + { 1059 + "type": "github", 1060 + "url": "https://github.com/sponsors/feross" 1061 + }, 1062 + { 1063 + "type": "patreon", 1064 + "url": "https://www.patreon.com/feross" 1065 + }, 1066 + { 1067 + "type": "consulting", 1068 + "url": "https://feross.org/support" 1069 + } 1070 + ], 1071 + "license": "BSD-3-Clause" 1072 + }, 1073 + "node_modules/inherits": { 1074 + "version": "2.0.4", 1075 + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1076 + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1077 + "license": "ISC" 1078 + }, 1079 + "node_modules/ipaddr.js": { 1080 + "version": "1.9.1", 1081 + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", 1082 + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", 1083 + "license": "MIT", 1084 + "engines": { 1085 + "node": ">= 0.10" 1086 + } 1087 + }, 1088 + "node_modules/iso-datestring-validator": { 1089 + "version": "2.2.2", 1090 + "resolved": "https://registry.npmjs.org/iso-datestring-validator/-/iso-datestring-validator-2.2.2.tgz", 1091 + "integrity": "sha512-yLEMkBbLZTlVQqOnQ4FiMujR6T4DEcCb1xizmvXS+OxuhwcbtynoosRzdMA69zZCShCNAbi+gJ71FxZBBXx1SA==", 1092 + "license": "MIT" 1093 + }, 1094 + "node_modules/media-typer": { 1095 + "version": "0.3.0", 1096 + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 1097 + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", 1098 + "license": "MIT", 1099 + "engines": { 1100 + "node": ">= 0.6" 1101 + } 1102 + }, 1103 + "node_modules/merge-descriptors": { 1104 + "version": "1.0.1", 1105 + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 1106 + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", 1107 + "license": "MIT" 1108 + }, 1109 + "node_modules/methods": { 1110 + "version": "1.1.2", 1111 + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 1112 + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", 1113 + "license": "MIT", 1114 + "engines": { 1115 + "node": ">= 0.6" 1116 + } 1117 + }, 1118 + "node_modules/mime": { 1119 + "version": "1.6.0", 1120 + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 1121 + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", 1122 + "license": "MIT", 1123 + "bin": { 1124 + "mime": "cli.js" 1125 + }, 1126 + "engines": { 1127 + "node": ">=4" 1128 + } 1129 + }, 1130 + "node_modules/mime-db": { 1131 + "version": "1.52.0", 1132 + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 1133 + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 1134 + "license": "MIT", 1135 + "engines": { 1136 + "node": ">= 0.6" 1137 + } 1138 + }, 1139 + "node_modules/mime-types": { 1140 + "version": "2.1.35", 1141 + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 1142 + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 1143 + "license": "MIT", 1144 + "dependencies": { 1145 + "mime-db": "1.52.0" 1146 + }, 1147 + "engines": { 1148 + "node": ">= 0.6" 1149 + } 1150 + }, 1151 + "node_modules/ms": { 1152 + "version": "2.0.0", 1153 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1154 + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", 1155 + "license": "MIT" 1156 + }, 1157 + "node_modules/multiformats": { 1158 + "version": "9.9.0", 1159 + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", 1160 + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==", 1161 + "license": "(Apache-2.0 AND MIT)" 1162 + }, 1163 + "node_modules/negotiator": { 1164 + "version": "0.6.3", 1165 + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", 1166 + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", 1167 + "license": "MIT", 1168 + "engines": { 1169 + "node": ">= 0.6" 1170 + } 1171 + }, 1172 + "node_modules/node-gyp-build": { 1173 + "version": "4.8.1", 1174 + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.1.tgz", 1175 + "integrity": "sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==", 1176 + "license": "MIT", 1177 + "optional": true, 1178 + "peer": true, 1179 + "bin": { 1180 + "node-gyp-build": "bin.js", 1181 + "node-gyp-build-optional": "optional.js", 1182 + "node-gyp-build-test": "build-test.js" 1183 + } 1184 + }, 1185 + "node_modules/node-gyp-build-optional-packages": { 1186 + "version": "5.1.1", 1187 + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.1.1.tgz", 1188 + "integrity": "sha512-+P72GAjVAbTxjjwUmwjVrqrdZROD4nf8KgpBoDxqXXTiYZZt/ud60dE5yvCSr9lRO8e8yv6kgJIC0K0PfZFVQw==", 1189 + "license": "MIT", 1190 + "optional": true, 1191 + "dependencies": { 1192 + "detect-libc": "^2.0.1" 1193 + }, 1194 + "bin": { 1195 + "node-gyp-build-optional-packages": "bin.js", 1196 + "node-gyp-build-optional-packages-optional": "optional.js", 1197 + "node-gyp-build-optional-packages-test": "build-test.js" 1198 + } 1199 + }, 1200 + "node_modules/object-inspect": { 1201 + "version": "1.13.2", 1202 + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", 1203 + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", 1204 + "license": "MIT", 1205 + "engines": { 1206 + "node": ">= 0.4" 1207 + }, 1208 + "funding": { 1209 + "url": "https://github.com/sponsors/ljharb" 1210 + } 1211 + }, 1212 + "node_modules/on-exit-leak-free": { 1213 + "version": "2.1.2", 1214 + "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz", 1215 + "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==", 1216 + "license": "MIT", 1217 + "engines": { 1218 + "node": ">=14.0.0" 1219 + } 1220 + }, 1221 + "node_modules/on-finished": { 1222 + "version": "2.4.1", 1223 + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", 1224 + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", 1225 + "license": "MIT", 1226 + "dependencies": { 1227 + "ee-first": "1.1.1" 1228 + }, 1229 + "engines": { 1230 + "node": ">= 0.8" 1231 + } 1232 + }, 1233 + "node_modules/parseurl": { 1234 + "version": "1.3.3", 1235 + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 1236 + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", 1237 + "license": "MIT", 1238 + "engines": { 1239 + "node": ">= 0.8" 1240 + } 1241 + }, 1242 + "node_modules/path-to-regexp": { 1243 + "version": "0.1.7", 1244 + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 1245 + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", 1246 + "license": "MIT" 1247 + }, 1248 + "node_modules/pino": { 1249 + "version": "8.21.0", 1250 + "resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz", 1251 + "integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==", 1252 + "license": "MIT", 1253 + "dependencies": { 1254 + "atomic-sleep": "^1.0.0", 1255 + "fast-redact": "^3.1.1", 1256 + "on-exit-leak-free": "^2.1.0", 1257 + "pino-abstract-transport": "^1.2.0", 1258 + "pino-std-serializers": "^6.0.0", 1259 + "process-warning": "^3.0.0", 1260 + "quick-format-unescaped": "^4.0.3", 1261 + "real-require": "^0.2.0", 1262 + "safe-stable-stringify": "^2.3.1", 1263 + "sonic-boom": "^3.7.0", 1264 + "thread-stream": "^2.6.0" 1265 + }, 1266 + "bin": { 1267 + "pino": "bin.js" 1268 + } 1269 + }, 1270 + "node_modules/pino-abstract-transport": { 1271 + "version": "1.2.0", 1272 + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", 1273 + "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", 1274 + "license": "MIT", 1275 + "dependencies": { 1276 + "readable-stream": "^4.0.0", 1277 + "split2": "^4.0.0" 1278 + } 1279 + }, 1280 + "node_modules/pino-std-serializers": { 1281 + "version": "6.2.2", 1282 + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", 1283 + "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==", 1284 + "license": "MIT" 1285 + }, 1286 + "node_modules/process": { 1287 + "version": "0.11.10", 1288 + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", 1289 + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", 1290 + "license": "MIT", 1291 + "engines": { 1292 + "node": ">= 0.6.0" 1293 + } 1294 + }, 1295 + "node_modules/process-warning": { 1296 + "version": "3.0.0", 1297 + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", 1298 + "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==", 1299 + "license": "MIT" 1300 + }, 1301 + "node_modules/proxy-addr": { 1302 + "version": "2.0.7", 1303 + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", 1304 + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", 1305 + "license": "MIT", 1306 + "dependencies": { 1307 + "forwarded": "0.2.0", 1308 + "ipaddr.js": "1.9.1" 1309 + }, 1310 + "engines": { 1311 + "node": ">= 0.10" 1312 + } 1313 + }, 1314 + "node_modules/qs": { 1315 + "version": "6.11.0", 1316 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", 1317 + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", 1318 + "license": "BSD-3-Clause", 1319 + "dependencies": { 1320 + "side-channel": "^1.0.4" 1321 + }, 1322 + "engines": { 1323 + "node": ">=0.6" 1324 + }, 1325 + "funding": { 1326 + "url": "https://github.com/sponsors/ljharb" 1327 + } 1328 + }, 1329 + "node_modules/quick-format-unescaped": { 1330 + "version": "4.0.4", 1331 + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", 1332 + "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==", 1333 + "license": "MIT" 1334 + }, 1335 + "node_modules/range-parser": { 1336 + "version": "1.2.1", 1337 + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", 1338 + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", 1339 + "license": "MIT", 1340 + "engines": { 1341 + "node": ">= 0.6" 1342 + } 1343 + }, 1344 + "node_modules/rate-limiter-flexible": { 1345 + "version": "2.4.2", 1346 + "resolved": "https://registry.npmjs.org/rate-limiter-flexible/-/rate-limiter-flexible-2.4.2.tgz", 1347 + "integrity": "sha512-rMATGGOdO1suFyf/mI5LYhts71g1sbdhmd6YvdiXO2gJnd42Tt6QS4JUKJKSWVVkMtBacm6l40FR7Trjo6Iruw==", 1348 + "license": "ISC" 1349 + }, 1350 + "node_modules/raw-body": { 1351 + "version": "2.5.2", 1352 + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", 1353 + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", 1354 + "license": "MIT", 1355 + "dependencies": { 1356 + "bytes": "3.1.2", 1357 + "http-errors": "2.0.0", 1358 + "iconv-lite": "0.4.24", 1359 + "unpipe": "1.0.0" 1360 + }, 1361 + "engines": { 1362 + "node": ">= 0.8" 1363 + } 1364 + }, 1365 + "node_modules/readable-stream": { 1366 + "version": "4.5.2", 1367 + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", 1368 + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", 1369 + "license": "MIT", 1370 + "dependencies": { 1371 + "abort-controller": "^3.0.0", 1372 + "buffer": "^6.0.3", 1373 + "events": "^3.3.0", 1374 + "process": "^0.11.10", 1375 + "string_decoder": "^1.3.0" 1376 + }, 1377 + "engines": { 1378 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 1379 + } 1380 + }, 1381 + "node_modules/real-require": { 1382 + "version": "0.2.0", 1383 + "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz", 1384 + "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==", 1385 + "license": "MIT", 1386 + "engines": { 1387 + "node": ">= 12.13.0" 1388 + } 1389 + }, 1390 + "node_modules/safe-buffer": { 1391 + "version": "5.2.1", 1392 + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1393 + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 1394 + "funding": [ 1395 + { 1396 + "type": "github", 1397 + "url": "https://github.com/sponsors/feross" 1398 + }, 1399 + { 1400 + "type": "patreon", 1401 + "url": "https://www.patreon.com/feross" 1402 + }, 1403 + { 1404 + "type": "consulting", 1405 + "url": "https://feross.org/support" 1406 + } 1407 + ], 1408 + "license": "MIT" 1409 + }, 1410 + "node_modules/safe-stable-stringify": { 1411 + "version": "2.4.3", 1412 + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", 1413 + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", 1414 + "license": "MIT", 1415 + "engines": { 1416 + "node": ">=10" 1417 + } 1418 + }, 1419 + "node_modules/safer-buffer": { 1420 + "version": "2.1.2", 1421 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 1422 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 1423 + "license": "MIT" 1424 + }, 1425 + "node_modules/send": { 1426 + "version": "0.18.0", 1427 + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", 1428 + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", 1429 + "license": "MIT", 1430 + "dependencies": { 1431 + "debug": "2.6.9", 1432 + "depd": "2.0.0", 1433 + "destroy": "1.2.0", 1434 + "encodeurl": "~1.0.2", 1435 + "escape-html": "~1.0.3", 1436 + "etag": "~1.8.1", 1437 + "fresh": "0.5.2", 1438 + "http-errors": "2.0.0", 1439 + "mime": "1.6.0", 1440 + "ms": "2.1.3", 1441 + "on-finished": "2.4.1", 1442 + "range-parser": "~1.2.1", 1443 + "statuses": "2.0.1" 1444 + }, 1445 + "engines": { 1446 + "node": ">= 0.8.0" 1447 + } 1448 + }, 1449 + "node_modules/send/node_modules/ms": { 1450 + "version": "2.1.3", 1451 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 1452 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 1453 + "license": "MIT" 1454 + }, 1455 + "node_modules/serve-static": { 1456 + "version": "1.15.0", 1457 + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", 1458 + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", 1459 + "license": "MIT", 1460 + "dependencies": { 1461 + "encodeurl": "~1.0.2", 1462 + "escape-html": "~1.0.3", 1463 + "parseurl": "~1.3.3", 1464 + "send": "0.18.0" 1465 + }, 1466 + "engines": { 1467 + "node": ">= 0.8.0" 1468 + } 1469 + }, 1470 + "node_modules/set-function-length": { 1471 + "version": "1.2.2", 1472 + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", 1473 + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", 1474 + "license": "MIT", 1475 + "dependencies": { 1476 + "define-data-property": "^1.1.4", 1477 + "es-errors": "^1.3.0", 1478 + "function-bind": "^1.1.2", 1479 + "get-intrinsic": "^1.2.4", 1480 + "gopd": "^1.0.1", 1481 + "has-property-descriptors": "^1.0.2" 1482 + }, 1483 + "engines": { 1484 + "node": ">= 0.4" 1485 + } 1486 + }, 1487 + "node_modules/setprototypeof": { 1488 + "version": "1.2.0", 1489 + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", 1490 + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", 1491 + "license": "ISC" 1492 + }, 1493 + "node_modules/side-channel": { 1494 + "version": "1.0.6", 1495 + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", 1496 + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", 1497 + "license": "MIT", 1498 + "dependencies": { 1499 + "call-bind": "^1.0.7", 1500 + "es-errors": "^1.3.0", 1501 + "get-intrinsic": "^1.2.4", 1502 + "object-inspect": "^1.13.1" 1503 + }, 1504 + "engines": { 1505 + "node": ">= 0.4" 1506 + }, 1507 + "funding": { 1508 + "url": "https://github.com/sponsors/ljharb" 1509 + } 1510 + }, 1511 + "node_modules/sonic-boom": { 1512 + "version": "3.8.1", 1513 + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz", 1514 + "integrity": "sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==", 1515 + "license": "MIT", 1516 + "dependencies": { 1517 + "atomic-sleep": "^1.0.0" 1518 + } 1519 + }, 1520 + "node_modules/split2": { 1521 + "version": "4.2.0", 1522 + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", 1523 + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", 1524 + "license": "ISC", 1525 + "engines": { 1526 + "node": ">= 10.x" 1527 + } 1528 + }, 1529 + "node_modules/statuses": { 1530 + "version": "2.0.1", 1531 + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", 1532 + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", 1533 + "license": "MIT", 1534 + "engines": { 1535 + "node": ">= 0.8" 1536 + } 1537 + }, 1538 + "node_modules/string_decoder": { 1539 + "version": "1.3.0", 1540 + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", 1541 + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", 1542 + "license": "MIT", 1543 + "dependencies": { 1544 + "safe-buffer": "~5.2.0" 1545 + } 1546 + }, 1547 + "node_modules/thread-stream": { 1548 + "version": "2.7.0", 1549 + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.7.0.tgz", 1550 + "integrity": "sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==", 1551 + "license": "MIT", 1552 + "dependencies": { 1553 + "real-require": "^0.2.0" 1554 + } 1555 + }, 1556 + "node_modules/tlds": { 1557 + "version": "1.253.0", 1558 + "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.253.0.tgz", 1559 + "integrity": "sha512-lNov5nt5/xw6nK00gtoQSA2I4HcpAnot1TMJccTNw2rtL5jdLN26h3f+mT8VF4JBv5/rBNXyuUPWcogceyKJJw==", 1560 + "license": "MIT", 1561 + "bin": { 1562 + "tlds": "bin.js" 1563 + } 1564 + }, 1565 + "node_modules/toidentifier": { 1566 + "version": "1.0.1", 1567 + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", 1568 + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", 1569 + "license": "MIT", 1570 + "engines": { 1571 + "node": ">=0.6" 1572 + } 1573 + }, 1574 + "node_modules/type-is": { 1575 + "version": "1.6.18", 1576 + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 1577 + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", 1578 + "license": "MIT", 1579 + "dependencies": { 1580 + "media-typer": "0.3.0", 1581 + "mime-types": "~2.1.24" 1582 + }, 1583 + "engines": { 1584 + "node": ">= 0.6" 1585 + } 1586 + }, 1587 + "node_modules/typescript": { 1588 + "version": "5.5.3", 1589 + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", 1590 + "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", 1591 + "dev": true, 1592 + "license": "Apache-2.0", 1593 + "bin": { 1594 + "tsc": "bin/tsc", 1595 + "tsserver": "bin/tsserver" 1596 + }, 1597 + "engines": { 1598 + "node": ">=14.17" 1599 + } 1600 + }, 1601 + "node_modules/uint8arrays": { 1602 + "version": "3.0.0", 1603 + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.0.0.tgz", 1604 + "integrity": "sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==", 1605 + "license": "MIT", 1606 + "dependencies": { 1607 + "multiformats": "^9.4.2" 1608 + } 1609 + }, 1610 + "node_modules/undici-types": { 1611 + "version": "5.26.5", 1612 + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", 1613 + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", 1614 + "dev": true, 1615 + "license": "MIT" 1616 + }, 1617 + "node_modules/unpipe": { 1618 + "version": "1.0.0", 1619 + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 1620 + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", 1621 + "license": "MIT", 1622 + "engines": { 1623 + "node": ">= 0.8" 1624 + } 1625 + }, 1626 + "node_modules/utf-8-validate": { 1627 + "version": "6.0.4", 1628 + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-6.0.4.tgz", 1629 + "integrity": "sha512-xu9GQDeFp+eZ6LnCywXN/zBancWvOpUMzgjLPSjy4BRHSmTelvn2E0DG0o1sTiw5hkCKBHo8rwSKncfRfv2EEQ==", 1630 + "hasInstallScript": true, 1631 + "license": "MIT", 1632 + "optional": true, 1633 + "peer": true, 1634 + "dependencies": { 1635 + "node-gyp-build": "^4.3.0" 1636 + }, 1637 + "engines": { 1638 + "node": ">=6.14.2" 1639 + } 1640 + }, 1641 + "node_modules/utils-merge": { 1642 + "version": "1.0.1", 1643 + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 1644 + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", 1645 + "license": "MIT", 1646 + "engines": { 1647 + "node": ">= 0.4.0" 1648 + } 1649 + }, 1650 + "node_modules/varint": { 1651 + "version": "6.0.0", 1652 + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", 1653 + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==", 1654 + "license": "MIT" 1655 + }, 1656 + "node_modules/vary": { 1657 + "version": "1.1.2", 1658 + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 1659 + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", 1660 + "license": "MIT", 1661 + "engines": { 1662 + "node": ">= 0.8" 1663 + } 1664 + }, 1665 + "node_modules/ws": { 1666 + "version": "8.18.0", 1667 + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", 1668 + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", 1669 + "license": "MIT", 1670 + "engines": { 1671 + "node": ">=10.0.0" 1672 + }, 1673 + "peerDependencies": { 1674 + "bufferutil": "^4.0.1", 1675 + "utf-8-validate": ">=5.0.2" 1676 + }, 1677 + "peerDependenciesMeta": { 1678 + "bufferutil": { 1679 + "optional": true 1680 + }, 1681 + "utf-8-validate": { 1682 + "optional": true 1683 + } 1684 + } 1685 + }, 1686 + "node_modules/zod": { 1687 + "version": "3.23.8", 1688 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", 1689 + "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", 1690 + "license": "MIT", 1691 + "funding": { 1692 + "url": "https://github.com/sponsors/colinhacks" 1693 + } 1694 + } 1695 + } 1696 + }
+16
package.json
··· 1 + { 2 + "type": "module", 3 + "scripts": { 4 + "start": "npx tsx src/main.ts", 5 + "dev": "npx tsx --watch src/main.ts" 6 + }, 7 + "devDependencies": { 8 + "@types/node": "^20.14.10", 9 + "typescript": "^5.5.3" 10 + }, 11 + "dependencies": { 12 + "@atproto/api": "^0.12.23", 13 + "@skyware/firehose": "^0.1.5", 14 + "dotenv": "^16.4.5" 15 + } 16 + }
+20
src/agent.ts
··· 1 + import { BskyAgent } from "@atproto/api"; 2 + import "dotenv/config"; 3 + 4 + export const getAgent = async () => { 5 + const agent = new BskyAgent({ 6 + service: process.env.BSKY_SERVICE ?? "https://bsky.social", 7 + }); 8 + 9 + await agent.login({ 10 + identifier: process.env.BSKY_IDENTIFIER!, 11 + password: process.env.BSKY_PASSWORD!, 12 + }); 13 + return agent; 14 + }; 15 + 16 + export const did = await getAgent().then((agent) => agent.session!.did); 17 + 18 + BskyAgent.configure({ 19 + appLabelers: [did], 20 + });
+10
src/constants.ts
··· 1 + export const PRONOUNS: Record<string, string> = { 2 + "she/her": "she", 3 + "he/him": "he", 4 + "they/them": "they", 5 + "it/its": "it", 6 + "any/all": "any", 7 + ask: "ask", 8 + avoid: "avoid", 9 + "look at bio": "bio", 10 + };
+67
src/label.ts
··· 1 + import { did, getAgent } from "./agent.js"; 2 + import { AppBskyFeedPost, BskyAgent } from "@atproto/api"; 3 + import { PRONOUNS } from "./constants.js"; 4 + 5 + const getPostContent = async (agent: BskyAgent, uri: string) => { 6 + return await agent 7 + .getPosts({ uris: [uri] }) 8 + .catch((err) => { 9 + console.error(err.message); 10 + }) 11 + .then((posts) => { 12 + if (posts && AppBskyFeedPost.isRecord(posts.data.posts[0].record)) 13 + return posts.data.posts[0].record.text; 14 + else return ""; 15 + }); 16 + }; 17 + 18 + export const label = async (subject: string, uri: string) => { 19 + const agent = await getAgent(); 20 + 21 + const repo = await agent 22 + .withProxy("atproto_labeler", did) 23 + .api.tools.ozone.moderation.getRepo({ did: subject }); 24 + 25 + const post = await getPostContent(agent, uri); 26 + 27 + if (repo.data.labels && post.includes("Like this post to delete")) { 28 + await agent 29 + .withProxy("atproto_labeler", did) 30 + .api.tools.ozone.moderation.emitEvent({ 31 + event: { 32 + $type: "tools.ozone.moderation.defs#modEventLabel", 33 + createLabelVals: [], 34 + negateLabelVals: repo.data.labels.map((label) => label.val), 35 + }, 36 + subject: { 37 + $type: "com.atproto.admin.defs#repoRef", 38 + did: subject, 39 + }, 40 + createdBy: agent.session!.did, 41 + createdAt: new Date().toISOString(), 42 + subjectBlobCids: [], 43 + }); 44 + return; 45 + } 46 + 47 + if (repo.data.labels && repo.data.labels.length >= 4) return; 48 + 49 + if (PRONOUNS[post]) { 50 + await agent 51 + .withProxy("atproto_labeler", did) 52 + .api.tools.ozone.moderation.emitEvent({ 53 + event: { 54 + $type: "tools.ozone.moderation.defs#modEventLabel", 55 + createLabelVals: [PRONOUNS[post]], 56 + negateLabelVals: [], 57 + }, 58 + subject: { 59 + $type: "com.atproto.admin.defs#repoRef", 60 + did: subject, 61 + }, 62 + createdBy: agent.session!.did, 63 + createdAt: new Date().toISOString(), 64 + subjectBlobCids: [], 65 + }); 66 + } 67 + };
+26
src/main.ts
··· 1 + import { AppBskyFeedLike } from "@atproto/api"; 2 + import { Firehose } from "@skyware/firehose"; 3 + import { did } from "./agent.js"; 4 + import { label } from "./label.js"; 5 + 6 + const subscribe = async () => { 7 + const firehose = new Firehose(); 8 + firehose.on("commit", (commit) => { 9 + for (const op of commit.ops) { 10 + if (op.action === "delete") continue; 11 + if (AppBskyFeedLike.isRecord(op.record)) { 12 + if (op.record.subject.uri.includes(did)) { 13 + if (op.record.subject.uri.includes("app.bsky.feed.post")) { 14 + label(commit.repo, op.record.subject.uri).catch((err) => 15 + console.error(err.message), 16 + ); 17 + } 18 + } 19 + } 20 + } 21 + }); 22 + 23 + firehose.start(); 24 + }; 25 + 26 + subscribe();
+10
tsconfig.json
··· 1 + { 2 + "compilerOptions": { 3 + "strict": true, 4 + "target": "ESNext", 5 + "module": "ESNext", 6 + "moduleResolution": "node", 7 + "allowSyntheticDefaultImports": true, 8 + "esModuleInterop": true, 9 + }, 10 + }