├── .editorconfig ├── .eslintrc.json ├── .gitignore ├── .vercelignore ├── Cargo.lock ├── Cargo.toml ├── FUNDING.yml ├── README.md ├── api ├── crab.rs └── examples │ ├── beer.rs │ ├── cache.rs │ ├── create.rs │ ├── env.rs │ ├── error.rs │ └── params.rs ├── next.config.js ├── package.json ├── pnpm-lock.yaml ├── public ├── cover.jpg └── favicon.ico ├── src ├── app │ ├── globals.css │ └── layout.tsx ├── pages │ └── api │ │ └── hello.ts └── rs │ └── utils.rs ├── tsconfig.json └── vercel.json /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | insert_final_newline = true 6 | indent_style = space 7 | indent_size = 2 8 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | .pnpm-debug.log* 27 | 28 | # local env files 29 | .env*.local 30 | 31 | # vercel 32 | .vercel 33 | 34 | # typescript 35 | *.tsbuildinfo 36 | next-env.d.ts 37 | 38 | target/ 39 | -------------------------------------------------------------------------------- /.vercelignore: -------------------------------------------------------------------------------- 1 | target/ 2 | .next 3 | node_modules 4 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "addr2line" 7 | version = "0.21.0" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" 10 | dependencies = [ 11 | "gimli", 12 | ] 13 | 14 | [[package]] 15 | name = "adler" 16 | version = "1.0.2" 17 | source = "registry+https://github.com/rust-lang/crates.io-index" 18 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 19 | 20 | [[package]] 21 | name = "aho-corasick" 22 | version = "1.1.2" 23 | source = "registry+https://github.com/rust-lang/crates.io-index" 24 | checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" 25 | dependencies = [ 26 | "memchr", 27 | ] 28 | 29 | [[package]] 30 | name = "async-stream" 31 | version = "0.3.5" 32 | source = "registry+https://github.com/rust-lang/crates.io-index" 33 | checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" 34 | dependencies = [ 35 | "async-stream-impl", 36 | "futures-core", 37 | "pin-project-lite", 38 | ] 39 | 40 | [[package]] 41 | name = "async-stream-impl" 42 | version = "0.3.5" 43 | source = "registry+https://github.com/rust-lang/crates.io-index" 44 | checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" 45 | dependencies = [ 46 | "proc-macro2", 47 | "quote", 48 | "syn 2.0.52", 49 | ] 50 | 51 | [[package]] 52 | name = "async-trait" 53 | version = "0.1.77" 54 | source = "registry+https://github.com/rust-lang/crates.io-index" 55 | checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" 56 | dependencies = [ 57 | "proc-macro2", 58 | "quote", 59 | "syn 2.0.52", 60 | ] 61 | 62 | [[package]] 63 | name = "autocfg" 64 | version = "1.1.0" 65 | source = "registry+https://github.com/rust-lang/crates.io-index" 66 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 67 | 68 | [[package]] 69 | name = "aws_lambda_events" 70 | version = "0.12.1" 71 | source = "registry+https://github.com/rust-lang/crates.io-index" 72 | checksum = "03611508dd1e514e311caec235b581c99a4cb66fa1771bd502819eed69894f12" 73 | dependencies = [ 74 | "base64 0.21.7", 75 | "bytes", 76 | "http", 77 | "http-body", 78 | "http-serde", 79 | "query_map", 80 | "serde", 81 | "serde_json", 82 | ] 83 | 84 | [[package]] 85 | name = "backtrace" 86 | version = "0.3.69" 87 | source = "registry+https://github.com/rust-lang/crates.io-index" 88 | checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" 89 | dependencies = [ 90 | "addr2line", 91 | "cc", 92 | "cfg-if", 93 | "libc", 94 | "miniz_oxide", 95 | "object", 96 | "rustc-demangle", 97 | ] 98 | 99 | [[package]] 100 | name = "base64" 101 | version = "0.20.0" 102 | source = "registry+https://github.com/rust-lang/crates.io-index" 103 | checksum = "0ea22880d78093b0cbe17c89f64a7d457941e65759157ec6cb31a31d652b05e5" 104 | 105 | [[package]] 106 | name = "base64" 107 | version = "0.21.7" 108 | source = "registry+https://github.com/rust-lang/crates.io-index" 109 | checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" 110 | 111 | [[package]] 112 | name = "bitflags" 113 | version = "1.3.2" 114 | source = "registry+https://github.com/rust-lang/crates.io-index" 115 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 116 | 117 | [[package]] 118 | name = "bitflags" 119 | version = "2.4.2" 120 | source = "registry+https://github.com/rust-lang/crates.io-index" 121 | checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" 122 | 123 | [[package]] 124 | name = "bumpalo" 125 | version = "3.15.4" 126 | source = "registry+https://github.com/rust-lang/crates.io-index" 127 | checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa" 128 | 129 | [[package]] 130 | name = "bytes" 131 | version = "1.5.0" 132 | source = "registry+https://github.com/rust-lang/crates.io-index" 133 | checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" 134 | dependencies = [ 135 | "serde", 136 | ] 137 | 138 | [[package]] 139 | name = "cc" 140 | version = "1.0.90" 141 | source = "registry+https://github.com/rust-lang/crates.io-index" 142 | checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5" 143 | 144 | [[package]] 145 | name = "cfg-if" 146 | version = "1.0.0" 147 | source = "registry+https://github.com/rust-lang/crates.io-index" 148 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 149 | 150 | [[package]] 151 | name = "core-foundation" 152 | version = "0.9.4" 153 | source = "registry+https://github.com/rust-lang/crates.io-index" 154 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 155 | dependencies = [ 156 | "core-foundation-sys", 157 | "libc", 158 | ] 159 | 160 | [[package]] 161 | name = "core-foundation-sys" 162 | version = "0.8.6" 163 | source = "registry+https://github.com/rust-lang/crates.io-index" 164 | checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" 165 | 166 | [[package]] 167 | name = "dotenv" 168 | version = "0.15.0" 169 | source = "registry+https://github.com/rust-lang/crates.io-index" 170 | checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" 171 | 172 | [[package]] 173 | name = "encoding_rs" 174 | version = "0.8.33" 175 | source = "registry+https://github.com/rust-lang/crates.io-index" 176 | checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" 177 | dependencies = [ 178 | "cfg-if", 179 | ] 180 | 181 | [[package]] 182 | name = "equivalent" 183 | version = "1.0.1" 184 | source = "registry+https://github.com/rust-lang/crates.io-index" 185 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 186 | 187 | [[package]] 188 | name = "errno" 189 | version = "0.3.8" 190 | source = "registry+https://github.com/rust-lang/crates.io-index" 191 | checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" 192 | dependencies = [ 193 | "libc", 194 | "windows-sys 0.52.0", 195 | ] 196 | 197 | [[package]] 198 | name = "fastrand" 199 | version = "2.0.1" 200 | source = "registry+https://github.com/rust-lang/crates.io-index" 201 | checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" 202 | 203 | [[package]] 204 | name = "fnv" 205 | version = "1.0.7" 206 | source = "registry+https://github.com/rust-lang/crates.io-index" 207 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 208 | 209 | [[package]] 210 | name = "foreign-types" 211 | version = "0.3.2" 212 | source = "registry+https://github.com/rust-lang/crates.io-index" 213 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 214 | dependencies = [ 215 | "foreign-types-shared", 216 | ] 217 | 218 | [[package]] 219 | name = "foreign-types-shared" 220 | version = "0.1.1" 221 | source = "registry+https://github.com/rust-lang/crates.io-index" 222 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 223 | 224 | [[package]] 225 | name = "form_urlencoded" 226 | version = "1.2.1" 227 | source = "registry+https://github.com/rust-lang/crates.io-index" 228 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" 229 | dependencies = [ 230 | "percent-encoding", 231 | ] 232 | 233 | [[package]] 234 | name = "futures" 235 | version = "0.3.30" 236 | source = "registry+https://github.com/rust-lang/crates.io-index" 237 | checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" 238 | dependencies = [ 239 | "futures-channel", 240 | "futures-core", 241 | "futures-executor", 242 | "futures-io", 243 | "futures-sink", 244 | "futures-task", 245 | "futures-util", 246 | ] 247 | 248 | [[package]] 249 | name = "futures-channel" 250 | version = "0.3.30" 251 | source = "registry+https://github.com/rust-lang/crates.io-index" 252 | checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" 253 | dependencies = [ 254 | "futures-core", 255 | "futures-sink", 256 | ] 257 | 258 | [[package]] 259 | name = "futures-core" 260 | version = "0.3.30" 261 | source = "registry+https://github.com/rust-lang/crates.io-index" 262 | checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" 263 | 264 | [[package]] 265 | name = "futures-executor" 266 | version = "0.3.30" 267 | source = "registry+https://github.com/rust-lang/crates.io-index" 268 | checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" 269 | dependencies = [ 270 | "futures-core", 271 | "futures-task", 272 | "futures-util", 273 | ] 274 | 275 | [[package]] 276 | name = "futures-io" 277 | version = "0.3.30" 278 | source = "registry+https://github.com/rust-lang/crates.io-index" 279 | checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" 280 | 281 | [[package]] 282 | name = "futures-macro" 283 | version = "0.3.30" 284 | source = "registry+https://github.com/rust-lang/crates.io-index" 285 | checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" 286 | dependencies = [ 287 | "proc-macro2", 288 | "quote", 289 | "syn 2.0.52", 290 | ] 291 | 292 | [[package]] 293 | name = "futures-sink" 294 | version = "0.3.30" 295 | source = "registry+https://github.com/rust-lang/crates.io-index" 296 | checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" 297 | 298 | [[package]] 299 | name = "futures-task" 300 | version = "0.3.30" 301 | source = "registry+https://github.com/rust-lang/crates.io-index" 302 | checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" 303 | 304 | [[package]] 305 | name = "futures-util" 306 | version = "0.3.30" 307 | source = "registry+https://github.com/rust-lang/crates.io-index" 308 | checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" 309 | dependencies = [ 310 | "futures-channel", 311 | "futures-core", 312 | "futures-io", 313 | "futures-macro", 314 | "futures-sink", 315 | "futures-task", 316 | "memchr", 317 | "pin-project-lite", 318 | "pin-utils", 319 | "slab", 320 | ] 321 | 322 | [[package]] 323 | name = "gimli" 324 | version = "0.28.1" 325 | source = "registry+https://github.com/rust-lang/crates.io-index" 326 | checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" 327 | 328 | [[package]] 329 | name = "glob" 330 | version = "0.3.1" 331 | source = "registry+https://github.com/rust-lang/crates.io-index" 332 | checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" 333 | 334 | [[package]] 335 | name = "h2" 336 | version = "0.3.24" 337 | source = "registry+https://github.com/rust-lang/crates.io-index" 338 | checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" 339 | dependencies = [ 340 | "bytes", 341 | "fnv", 342 | "futures-core", 343 | "futures-sink", 344 | "futures-util", 345 | "http", 346 | "indexmap", 347 | "slab", 348 | "tokio", 349 | "tokio-util", 350 | "tracing", 351 | ] 352 | 353 | [[package]] 354 | name = "hashbrown" 355 | version = "0.14.3" 356 | source = "registry+https://github.com/rust-lang/crates.io-index" 357 | checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" 358 | 359 | [[package]] 360 | name = "hermit-abi" 361 | version = "0.3.9" 362 | source = "registry+https://github.com/rust-lang/crates.io-index" 363 | checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" 364 | 365 | [[package]] 366 | name = "http" 367 | version = "0.2.12" 368 | source = "registry+https://github.com/rust-lang/crates.io-index" 369 | checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" 370 | dependencies = [ 371 | "bytes", 372 | "fnv", 373 | "itoa", 374 | ] 375 | 376 | [[package]] 377 | name = "http-body" 378 | version = "0.4.6" 379 | source = "registry+https://github.com/rust-lang/crates.io-index" 380 | checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" 381 | dependencies = [ 382 | "bytes", 383 | "http", 384 | "pin-project-lite", 385 | ] 386 | 387 | [[package]] 388 | name = "http-range-header" 389 | version = "0.3.1" 390 | source = "registry+https://github.com/rust-lang/crates.io-index" 391 | checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" 392 | 393 | [[package]] 394 | name = "http-serde" 395 | version = "1.1.3" 396 | source = "registry+https://github.com/rust-lang/crates.io-index" 397 | checksum = "6f560b665ad9f1572cfcaf034f7fb84338a7ce945216d64a90fd81f046a3caee" 398 | dependencies = [ 399 | "http", 400 | "serde", 401 | ] 402 | 403 | [[package]] 404 | name = "httparse" 405 | version = "1.8.0" 406 | source = "registry+https://github.com/rust-lang/crates.io-index" 407 | checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" 408 | 409 | [[package]] 410 | name = "httpdate" 411 | version = "1.0.3" 412 | source = "registry+https://github.com/rust-lang/crates.io-index" 413 | checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" 414 | 415 | [[package]] 416 | name = "hyper" 417 | version = "0.14.28" 418 | source = "registry+https://github.com/rust-lang/crates.io-index" 419 | checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" 420 | dependencies = [ 421 | "bytes", 422 | "futures-channel", 423 | "futures-core", 424 | "futures-util", 425 | "h2", 426 | "http", 427 | "http-body", 428 | "httparse", 429 | "httpdate", 430 | "itoa", 431 | "pin-project-lite", 432 | "socket2", 433 | "tokio", 434 | "tower-service", 435 | "tracing", 436 | "want", 437 | ] 438 | 439 | [[package]] 440 | name = "hyper-tls" 441 | version = "0.5.0" 442 | source = "registry+https://github.com/rust-lang/crates.io-index" 443 | checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" 444 | dependencies = [ 445 | "bytes", 446 | "hyper", 447 | "native-tls", 448 | "tokio", 449 | "tokio-native-tls", 450 | ] 451 | 452 | [[package]] 453 | name = "idna" 454 | version = "0.5.0" 455 | source = "registry+https://github.com/rust-lang/crates.io-index" 456 | checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" 457 | dependencies = [ 458 | "unicode-bidi", 459 | "unicode-normalization", 460 | ] 461 | 462 | [[package]] 463 | name = "indexmap" 464 | version = "2.2.5" 465 | source = "registry+https://github.com/rust-lang/crates.io-index" 466 | checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" 467 | dependencies = [ 468 | "equivalent", 469 | "hashbrown", 470 | ] 471 | 472 | [[package]] 473 | name = "ipnet" 474 | version = "2.9.0" 475 | source = "registry+https://github.com/rust-lang/crates.io-index" 476 | checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" 477 | 478 | [[package]] 479 | name = "itoa" 480 | version = "1.0.10" 481 | source = "registry+https://github.com/rust-lang/crates.io-index" 482 | checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" 483 | 484 | [[package]] 485 | name = "js-sys" 486 | version = "0.3.69" 487 | source = "registry+https://github.com/rust-lang/crates.io-index" 488 | checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" 489 | dependencies = [ 490 | "wasm-bindgen", 491 | ] 492 | 493 | [[package]] 494 | name = "lambda_http" 495 | version = "0.8.3" 496 | source = "registry+https://github.com/rust-lang/crates.io-index" 497 | checksum = "2505c4a24f5a8d8ac66a87691215ec1f79736c5bc6e62bb921788dca9753f650" 498 | dependencies = [ 499 | "aws_lambda_events", 500 | "base64 0.21.7", 501 | "bytes", 502 | "encoding_rs", 503 | "futures", 504 | "http", 505 | "http-body", 506 | "hyper", 507 | "lambda_runtime", 508 | "mime", 509 | "percent-encoding", 510 | "serde", 511 | "serde_json", 512 | "serde_urlencoded", 513 | "tokio-stream", 514 | "url", 515 | ] 516 | 517 | [[package]] 518 | name = "lambda_runtime" 519 | version = "0.8.3" 520 | source = "registry+https://github.com/rust-lang/crates.io-index" 521 | checksum = "deca8f65d7ce9a8bfddebb49d7d91b22e788a59ca0c5190f26794ab80ed7a702" 522 | dependencies = [ 523 | "async-stream", 524 | "base64 0.20.0", 525 | "bytes", 526 | "futures", 527 | "http", 528 | "http-body", 529 | "http-serde", 530 | "hyper", 531 | "lambda_runtime_api_client", 532 | "serde", 533 | "serde_json", 534 | "serde_path_to_error", 535 | "tokio", 536 | "tokio-stream", 537 | "tower", 538 | "tracing", 539 | ] 540 | 541 | [[package]] 542 | name = "lambda_runtime_api_client" 543 | version = "0.8.0" 544 | source = "registry+https://github.com/rust-lang/crates.io-index" 545 | checksum = "690c5ae01f3acac8c9c3348b556fc443054e9b7f1deaf53e9ebab716282bf0ed" 546 | dependencies = [ 547 | "http", 548 | "hyper", 549 | "tokio", 550 | "tower-service", 551 | ] 552 | 553 | [[package]] 554 | name = "lazy_static" 555 | version = "1.4.0" 556 | source = "registry+https://github.com/rust-lang/crates.io-index" 557 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 558 | 559 | [[package]] 560 | name = "libc" 561 | version = "0.2.153" 562 | source = "registry+https://github.com/rust-lang/crates.io-index" 563 | checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" 564 | 565 | [[package]] 566 | name = "linux-raw-sys" 567 | version = "0.4.13" 568 | source = "registry+https://github.com/rust-lang/crates.io-index" 569 | checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" 570 | 571 | [[package]] 572 | name = "log" 573 | version = "0.4.21" 574 | source = "registry+https://github.com/rust-lang/crates.io-index" 575 | checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" 576 | 577 | [[package]] 578 | name = "memchr" 579 | version = "2.7.1" 580 | source = "registry+https://github.com/rust-lang/crates.io-index" 581 | checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" 582 | 583 | [[package]] 584 | name = "mime" 585 | version = "0.3.17" 586 | source = "registry+https://github.com/rust-lang/crates.io-index" 587 | checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" 588 | 589 | [[package]] 590 | name = "miniz_oxide" 591 | version = "0.7.2" 592 | source = "registry+https://github.com/rust-lang/crates.io-index" 593 | checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" 594 | dependencies = [ 595 | "adler", 596 | ] 597 | 598 | [[package]] 599 | name = "mio" 600 | version = "0.8.11" 601 | source = "registry+https://github.com/rust-lang/crates.io-index" 602 | checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" 603 | dependencies = [ 604 | "libc", 605 | "wasi", 606 | "windows-sys 0.48.0", 607 | ] 608 | 609 | [[package]] 610 | name = "native-tls" 611 | version = "0.2.11" 612 | source = "registry+https://github.com/rust-lang/crates.io-index" 613 | checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" 614 | dependencies = [ 615 | "lazy_static", 616 | "libc", 617 | "log", 618 | "openssl", 619 | "openssl-probe", 620 | "openssl-sys", 621 | "schannel", 622 | "security-framework", 623 | "security-framework-sys", 624 | "tempfile", 625 | ] 626 | 627 | [[package]] 628 | name = "next-rust" 629 | version = "0.1.0" 630 | dependencies = [ 631 | "dotenv", 632 | "reqwest", 633 | "serde", 634 | "serde_json", 635 | "tokio", 636 | "url", 637 | "vercel_runtime", 638 | ] 639 | 640 | [[package]] 641 | name = "num_cpus" 642 | version = "1.16.0" 643 | source = "registry+https://github.com/rust-lang/crates.io-index" 644 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" 645 | dependencies = [ 646 | "hermit-abi", 647 | "libc", 648 | ] 649 | 650 | [[package]] 651 | name = "object" 652 | version = "0.32.2" 653 | source = "registry+https://github.com/rust-lang/crates.io-index" 654 | checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" 655 | dependencies = [ 656 | "memchr", 657 | ] 658 | 659 | [[package]] 660 | name = "once_cell" 661 | version = "1.19.0" 662 | source = "registry+https://github.com/rust-lang/crates.io-index" 663 | checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" 664 | 665 | [[package]] 666 | name = "openssl" 667 | version = "0.10.64" 668 | source = "registry+https://github.com/rust-lang/crates.io-index" 669 | checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" 670 | dependencies = [ 671 | "bitflags 2.4.2", 672 | "cfg-if", 673 | "foreign-types", 674 | "libc", 675 | "once_cell", 676 | "openssl-macros", 677 | "openssl-sys", 678 | ] 679 | 680 | [[package]] 681 | name = "openssl-macros" 682 | version = "0.1.1" 683 | source = "registry+https://github.com/rust-lang/crates.io-index" 684 | checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 685 | dependencies = [ 686 | "proc-macro2", 687 | "quote", 688 | "syn 2.0.52", 689 | ] 690 | 691 | [[package]] 692 | name = "openssl-probe" 693 | version = "0.1.5" 694 | source = "registry+https://github.com/rust-lang/crates.io-index" 695 | checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" 696 | 697 | [[package]] 698 | name = "openssl-sys" 699 | version = "0.9.101" 700 | source = "registry+https://github.com/rust-lang/crates.io-index" 701 | checksum = "dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff" 702 | dependencies = [ 703 | "cc", 704 | "libc", 705 | "pkg-config", 706 | "vcpkg", 707 | ] 708 | 709 | [[package]] 710 | name = "percent-encoding" 711 | version = "2.3.1" 712 | source = "registry+https://github.com/rust-lang/crates.io-index" 713 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 714 | 715 | [[package]] 716 | name = "pin-project" 717 | version = "1.1.5" 718 | source = "registry+https://github.com/rust-lang/crates.io-index" 719 | checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" 720 | dependencies = [ 721 | "pin-project-internal", 722 | ] 723 | 724 | [[package]] 725 | name = "pin-project-internal" 726 | version = "1.1.5" 727 | source = "registry+https://github.com/rust-lang/crates.io-index" 728 | checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" 729 | dependencies = [ 730 | "proc-macro2", 731 | "quote", 732 | "syn 2.0.52", 733 | ] 734 | 735 | [[package]] 736 | name = "pin-project-lite" 737 | version = "0.2.13" 738 | source = "registry+https://github.com/rust-lang/crates.io-index" 739 | checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" 740 | 741 | [[package]] 742 | name = "pin-utils" 743 | version = "0.1.0" 744 | source = "registry+https://github.com/rust-lang/crates.io-index" 745 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 746 | 747 | [[package]] 748 | name = "pkg-config" 749 | version = "0.3.30" 750 | source = "registry+https://github.com/rust-lang/crates.io-index" 751 | checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" 752 | 753 | [[package]] 754 | name = "proc-macro2" 755 | version = "1.0.78" 756 | source = "registry+https://github.com/rust-lang/crates.io-index" 757 | checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" 758 | dependencies = [ 759 | "unicode-ident", 760 | ] 761 | 762 | [[package]] 763 | name = "query_map" 764 | version = "0.7.0" 765 | source = "registry+https://github.com/rust-lang/crates.io-index" 766 | checksum = "5eab6b8b1074ef3359a863758dae650c7c0c6027927a085b7af911c8e0bf3a15" 767 | dependencies = [ 768 | "form_urlencoded", 769 | "serde", 770 | "serde_derive", 771 | ] 772 | 773 | [[package]] 774 | name = "quote" 775 | version = "1.0.35" 776 | source = "registry+https://github.com/rust-lang/crates.io-index" 777 | checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" 778 | dependencies = [ 779 | "proc-macro2", 780 | ] 781 | 782 | [[package]] 783 | name = "regex" 784 | version = "1.10.3" 785 | source = "registry+https://github.com/rust-lang/crates.io-index" 786 | checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" 787 | dependencies = [ 788 | "aho-corasick", 789 | "memchr", 790 | "regex-automata", 791 | "regex-syntax", 792 | ] 793 | 794 | [[package]] 795 | name = "regex-automata" 796 | version = "0.4.6" 797 | source = "registry+https://github.com/rust-lang/crates.io-index" 798 | checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" 799 | dependencies = [ 800 | "aho-corasick", 801 | "memchr", 802 | "regex-syntax", 803 | ] 804 | 805 | [[package]] 806 | name = "regex-syntax" 807 | version = "0.8.2" 808 | source = "registry+https://github.com/rust-lang/crates.io-index" 809 | checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" 810 | 811 | [[package]] 812 | name = "reqwest" 813 | version = "0.11.25" 814 | source = "registry+https://github.com/rust-lang/crates.io-index" 815 | checksum = "0eea5a9eb898d3783f17c6407670e3592fd174cb81a10e51d4c37f49450b9946" 816 | dependencies = [ 817 | "base64 0.21.7", 818 | "bytes", 819 | "encoding_rs", 820 | "futures-core", 821 | "futures-util", 822 | "h2", 823 | "http", 824 | "http-body", 825 | "hyper", 826 | "hyper-tls", 827 | "ipnet", 828 | "js-sys", 829 | "log", 830 | "mime", 831 | "native-tls", 832 | "once_cell", 833 | "percent-encoding", 834 | "pin-project-lite", 835 | "rustls-pemfile", 836 | "serde", 837 | "serde_json", 838 | "serde_urlencoded", 839 | "sync_wrapper", 840 | "system-configuration", 841 | "tokio", 842 | "tokio-native-tls", 843 | "tower-service", 844 | "url", 845 | "wasm-bindgen", 846 | "wasm-bindgen-futures", 847 | "web-sys", 848 | "winreg", 849 | ] 850 | 851 | [[package]] 852 | name = "rustc-demangle" 853 | version = "0.1.23" 854 | source = "registry+https://github.com/rust-lang/crates.io-index" 855 | checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" 856 | 857 | [[package]] 858 | name = "rustix" 859 | version = "0.38.31" 860 | source = "registry+https://github.com/rust-lang/crates.io-index" 861 | checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" 862 | dependencies = [ 863 | "bitflags 2.4.2", 864 | "errno", 865 | "libc", 866 | "linux-raw-sys", 867 | "windows-sys 0.52.0", 868 | ] 869 | 870 | [[package]] 871 | name = "rustls-pemfile" 872 | version = "1.0.4" 873 | source = "registry+https://github.com/rust-lang/crates.io-index" 874 | checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" 875 | dependencies = [ 876 | "base64 0.21.7", 877 | ] 878 | 879 | [[package]] 880 | name = "ryu" 881 | version = "1.0.17" 882 | source = "registry+https://github.com/rust-lang/crates.io-index" 883 | checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" 884 | 885 | [[package]] 886 | name = "schannel" 887 | version = "0.1.23" 888 | source = "registry+https://github.com/rust-lang/crates.io-index" 889 | checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" 890 | dependencies = [ 891 | "windows-sys 0.52.0", 892 | ] 893 | 894 | [[package]] 895 | name = "security-framework" 896 | version = "2.9.2" 897 | source = "registry+https://github.com/rust-lang/crates.io-index" 898 | checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" 899 | dependencies = [ 900 | "bitflags 1.3.2", 901 | "core-foundation", 902 | "core-foundation-sys", 903 | "libc", 904 | "security-framework-sys", 905 | ] 906 | 907 | [[package]] 908 | name = "security-framework-sys" 909 | version = "2.9.1" 910 | source = "registry+https://github.com/rust-lang/crates.io-index" 911 | checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" 912 | dependencies = [ 913 | "core-foundation-sys", 914 | "libc", 915 | ] 916 | 917 | [[package]] 918 | name = "serde" 919 | version = "1.0.197" 920 | source = "registry+https://github.com/rust-lang/crates.io-index" 921 | checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" 922 | dependencies = [ 923 | "serde_derive", 924 | ] 925 | 926 | [[package]] 927 | name = "serde_derive" 928 | version = "1.0.197" 929 | source = "registry+https://github.com/rust-lang/crates.io-index" 930 | checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" 931 | dependencies = [ 932 | "proc-macro2", 933 | "quote", 934 | "syn 2.0.52", 935 | ] 936 | 937 | [[package]] 938 | name = "serde_json" 939 | version = "1.0.114" 940 | source = "registry+https://github.com/rust-lang/crates.io-index" 941 | checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" 942 | dependencies = [ 943 | "itoa", 944 | "ryu", 945 | "serde", 946 | ] 947 | 948 | [[package]] 949 | name = "serde_path_to_error" 950 | version = "0.1.16" 951 | source = "registry+https://github.com/rust-lang/crates.io-index" 952 | checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" 953 | dependencies = [ 954 | "itoa", 955 | "serde", 956 | ] 957 | 958 | [[package]] 959 | name = "serde_urlencoded" 960 | version = "0.7.1" 961 | source = "registry+https://github.com/rust-lang/crates.io-index" 962 | checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" 963 | dependencies = [ 964 | "form_urlencoded", 965 | "itoa", 966 | "ryu", 967 | "serde", 968 | ] 969 | 970 | [[package]] 971 | name = "sharded-slab" 972 | version = "0.1.7" 973 | source = "registry+https://github.com/rust-lang/crates.io-index" 974 | checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" 975 | dependencies = [ 976 | "lazy_static", 977 | ] 978 | 979 | [[package]] 980 | name = "slab" 981 | version = "0.4.9" 982 | source = "registry+https://github.com/rust-lang/crates.io-index" 983 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" 984 | dependencies = [ 985 | "autocfg", 986 | ] 987 | 988 | [[package]] 989 | name = "socket2" 990 | version = "0.5.6" 991 | source = "registry+https://github.com/rust-lang/crates.io-index" 992 | checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871" 993 | dependencies = [ 994 | "libc", 995 | "windows-sys 0.52.0", 996 | ] 997 | 998 | [[package]] 999 | name = "syn" 1000 | version = "1.0.109" 1001 | source = "registry+https://github.com/rust-lang/crates.io-index" 1002 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 1003 | dependencies = [ 1004 | "proc-macro2", 1005 | "quote", 1006 | "unicode-ident", 1007 | ] 1008 | 1009 | [[package]] 1010 | name = "syn" 1011 | version = "2.0.52" 1012 | source = "registry+https://github.com/rust-lang/crates.io-index" 1013 | checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" 1014 | dependencies = [ 1015 | "proc-macro2", 1016 | "quote", 1017 | "unicode-ident", 1018 | ] 1019 | 1020 | [[package]] 1021 | name = "sync_wrapper" 1022 | version = "0.1.2" 1023 | source = "registry+https://github.com/rust-lang/crates.io-index" 1024 | checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" 1025 | 1026 | [[package]] 1027 | name = "system-configuration" 1028 | version = "0.6.0" 1029 | source = "registry+https://github.com/rust-lang/crates.io-index" 1030 | checksum = "658bc6ee10a9b4fcf576e9b0819d95ec16f4d2c02d39fd83ac1c8789785c4a42" 1031 | dependencies = [ 1032 | "bitflags 2.4.2", 1033 | "core-foundation", 1034 | "system-configuration-sys", 1035 | ] 1036 | 1037 | [[package]] 1038 | name = "system-configuration-sys" 1039 | version = "0.6.0" 1040 | source = "registry+https://github.com/rust-lang/crates.io-index" 1041 | checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" 1042 | dependencies = [ 1043 | "core-foundation-sys", 1044 | "libc", 1045 | ] 1046 | 1047 | [[package]] 1048 | name = "tempfile" 1049 | version = "3.10.1" 1050 | source = "registry+https://github.com/rust-lang/crates.io-index" 1051 | checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" 1052 | dependencies = [ 1053 | "cfg-if", 1054 | "fastrand", 1055 | "rustix", 1056 | "windows-sys 0.52.0", 1057 | ] 1058 | 1059 | [[package]] 1060 | name = "thread_local" 1061 | version = "1.1.8" 1062 | source = "registry+https://github.com/rust-lang/crates.io-index" 1063 | checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" 1064 | dependencies = [ 1065 | "cfg-if", 1066 | "once_cell", 1067 | ] 1068 | 1069 | [[package]] 1070 | name = "tinyvec" 1071 | version = "1.6.0" 1072 | source = "registry+https://github.com/rust-lang/crates.io-index" 1073 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 1074 | dependencies = [ 1075 | "tinyvec_macros", 1076 | ] 1077 | 1078 | [[package]] 1079 | name = "tinyvec_macros" 1080 | version = "0.1.1" 1081 | source = "registry+https://github.com/rust-lang/crates.io-index" 1082 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 1083 | 1084 | [[package]] 1085 | name = "tokio" 1086 | version = "1.36.0" 1087 | source = "registry+https://github.com/rust-lang/crates.io-index" 1088 | checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931" 1089 | dependencies = [ 1090 | "backtrace", 1091 | "bytes", 1092 | "libc", 1093 | "mio", 1094 | "num_cpus", 1095 | "pin-project-lite", 1096 | "socket2", 1097 | "tokio-macros", 1098 | "windows-sys 0.48.0", 1099 | ] 1100 | 1101 | [[package]] 1102 | name = "tokio-macros" 1103 | version = "2.2.0" 1104 | source = "registry+https://github.com/rust-lang/crates.io-index" 1105 | checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" 1106 | dependencies = [ 1107 | "proc-macro2", 1108 | "quote", 1109 | "syn 2.0.52", 1110 | ] 1111 | 1112 | [[package]] 1113 | name = "tokio-native-tls" 1114 | version = "0.3.1" 1115 | source = "registry+https://github.com/rust-lang/crates.io-index" 1116 | checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" 1117 | dependencies = [ 1118 | "native-tls", 1119 | "tokio", 1120 | ] 1121 | 1122 | [[package]] 1123 | name = "tokio-stream" 1124 | version = "0.1.14" 1125 | source = "registry+https://github.com/rust-lang/crates.io-index" 1126 | checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" 1127 | dependencies = [ 1128 | "futures-core", 1129 | "pin-project-lite", 1130 | "tokio", 1131 | ] 1132 | 1133 | [[package]] 1134 | name = "tokio-util" 1135 | version = "0.7.10" 1136 | source = "registry+https://github.com/rust-lang/crates.io-index" 1137 | checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" 1138 | dependencies = [ 1139 | "bytes", 1140 | "futures-core", 1141 | "futures-sink", 1142 | "pin-project-lite", 1143 | "tokio", 1144 | "tracing", 1145 | ] 1146 | 1147 | [[package]] 1148 | name = "tower" 1149 | version = "0.4.13" 1150 | source = "registry+https://github.com/rust-lang/crates.io-index" 1151 | checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" 1152 | dependencies = [ 1153 | "futures-core", 1154 | "futures-util", 1155 | "pin-project", 1156 | "pin-project-lite", 1157 | "tower-layer", 1158 | "tower-service", 1159 | "tracing", 1160 | ] 1161 | 1162 | [[package]] 1163 | name = "tower-http" 1164 | version = "0.4.4" 1165 | source = "registry+https://github.com/rust-lang/crates.io-index" 1166 | checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140" 1167 | dependencies = [ 1168 | "bitflags 2.4.2", 1169 | "bytes", 1170 | "futures-core", 1171 | "futures-util", 1172 | "http", 1173 | "http-body", 1174 | "http-range-header", 1175 | "pin-project-lite", 1176 | "tower-layer", 1177 | "tower-service", 1178 | ] 1179 | 1180 | [[package]] 1181 | name = "tower-layer" 1182 | version = "0.3.2" 1183 | source = "registry+https://github.com/rust-lang/crates.io-index" 1184 | checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" 1185 | 1186 | [[package]] 1187 | name = "tower-service" 1188 | version = "0.3.2" 1189 | source = "registry+https://github.com/rust-lang/crates.io-index" 1190 | checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" 1191 | 1192 | [[package]] 1193 | name = "tracing" 1194 | version = "0.1.40" 1195 | source = "registry+https://github.com/rust-lang/crates.io-index" 1196 | checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" 1197 | dependencies = [ 1198 | "log", 1199 | "pin-project-lite", 1200 | "tracing-attributes", 1201 | "tracing-core", 1202 | ] 1203 | 1204 | [[package]] 1205 | name = "tracing-attributes" 1206 | version = "0.1.27" 1207 | source = "registry+https://github.com/rust-lang/crates.io-index" 1208 | checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" 1209 | dependencies = [ 1210 | "proc-macro2", 1211 | "quote", 1212 | "syn 2.0.52", 1213 | ] 1214 | 1215 | [[package]] 1216 | name = "tracing-core" 1217 | version = "0.1.32" 1218 | source = "registry+https://github.com/rust-lang/crates.io-index" 1219 | checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" 1220 | dependencies = [ 1221 | "once_cell", 1222 | ] 1223 | 1224 | [[package]] 1225 | name = "tracing-subscriber" 1226 | version = "0.3.18" 1227 | source = "registry+https://github.com/rust-lang/crates.io-index" 1228 | checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" 1229 | dependencies = [ 1230 | "sharded-slab", 1231 | "thread_local", 1232 | "tracing-core", 1233 | ] 1234 | 1235 | [[package]] 1236 | name = "try-lock" 1237 | version = "0.2.5" 1238 | source = "registry+https://github.com/rust-lang/crates.io-index" 1239 | checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" 1240 | 1241 | [[package]] 1242 | name = "unicode-bidi" 1243 | version = "0.3.15" 1244 | source = "registry+https://github.com/rust-lang/crates.io-index" 1245 | checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" 1246 | 1247 | [[package]] 1248 | name = "unicode-ident" 1249 | version = "1.0.12" 1250 | source = "registry+https://github.com/rust-lang/crates.io-index" 1251 | checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 1252 | 1253 | [[package]] 1254 | name = "unicode-normalization" 1255 | version = "0.1.23" 1256 | source = "registry+https://github.com/rust-lang/crates.io-index" 1257 | checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" 1258 | dependencies = [ 1259 | "tinyvec", 1260 | ] 1261 | 1262 | [[package]] 1263 | name = "url" 1264 | version = "2.5.0" 1265 | source = "registry+https://github.com/rust-lang/crates.io-index" 1266 | checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" 1267 | dependencies = [ 1268 | "form_urlencoded", 1269 | "idna", 1270 | "percent-encoding", 1271 | ] 1272 | 1273 | [[package]] 1274 | name = "vcpkg" 1275 | version = "0.2.15" 1276 | source = "registry+https://github.com/rust-lang/crates.io-index" 1277 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 1278 | 1279 | [[package]] 1280 | name = "vercel_runtime" 1281 | version = "1.1.1" 1282 | source = "registry+https://github.com/rust-lang/crates.io-index" 1283 | checksum = "b08a53b5050450ac9a287b2e308b35478af816730cee0c5d19b73128475268a5" 1284 | dependencies = [ 1285 | "async-trait", 1286 | "base64 0.21.7", 1287 | "bytes", 1288 | "lambda_http", 1289 | "lambda_runtime", 1290 | "serde", 1291 | "serde_derive", 1292 | "serde_json", 1293 | "tokio", 1294 | "tower-http", 1295 | "tower-service", 1296 | "tracing", 1297 | "tracing-subscriber", 1298 | "vercel_runtime_macro", 1299 | "vercel_runtime_router", 1300 | ] 1301 | 1302 | [[package]] 1303 | name = "vercel_runtime_macro" 1304 | version = "1.1.1" 1305 | source = "registry+https://github.com/rust-lang/crates.io-index" 1306 | checksum = "0daaf5bc7ed28af6645e82b2edfb8ab4ecc40d7cd65901350e808c259829956c" 1307 | dependencies = [ 1308 | "glob", 1309 | "quote", 1310 | "syn 1.0.109", 1311 | "vercel_runtime_router", 1312 | ] 1313 | 1314 | [[package]] 1315 | name = "vercel_runtime_router" 1316 | version = "1.1.1" 1317 | source = "registry+https://github.com/rust-lang/crates.io-index" 1318 | checksum = "3afac9b3d8d97c41c948769da85c241375b3eb7d806f91956d6e8866fbc7cb2b" 1319 | dependencies = [ 1320 | "glob", 1321 | "lazy_static", 1322 | "quote", 1323 | "regex", 1324 | "syn 2.0.52", 1325 | ] 1326 | 1327 | [[package]] 1328 | name = "want" 1329 | version = "0.3.1" 1330 | source = "registry+https://github.com/rust-lang/crates.io-index" 1331 | checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" 1332 | dependencies = [ 1333 | "try-lock", 1334 | ] 1335 | 1336 | [[package]] 1337 | name = "wasi" 1338 | version = "0.11.0+wasi-snapshot-preview1" 1339 | source = "registry+https://github.com/rust-lang/crates.io-index" 1340 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 1341 | 1342 | [[package]] 1343 | name = "wasm-bindgen" 1344 | version = "0.2.92" 1345 | source = "registry+https://github.com/rust-lang/crates.io-index" 1346 | checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" 1347 | dependencies = [ 1348 | "cfg-if", 1349 | "wasm-bindgen-macro", 1350 | ] 1351 | 1352 | [[package]] 1353 | name = "wasm-bindgen-backend" 1354 | version = "0.2.92" 1355 | source = "registry+https://github.com/rust-lang/crates.io-index" 1356 | checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" 1357 | dependencies = [ 1358 | "bumpalo", 1359 | "log", 1360 | "once_cell", 1361 | "proc-macro2", 1362 | "quote", 1363 | "syn 2.0.52", 1364 | "wasm-bindgen-shared", 1365 | ] 1366 | 1367 | [[package]] 1368 | name = "wasm-bindgen-futures" 1369 | version = "0.4.42" 1370 | source = "registry+https://github.com/rust-lang/crates.io-index" 1371 | checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" 1372 | dependencies = [ 1373 | "cfg-if", 1374 | "js-sys", 1375 | "wasm-bindgen", 1376 | "web-sys", 1377 | ] 1378 | 1379 | [[package]] 1380 | name = "wasm-bindgen-macro" 1381 | version = "0.2.92" 1382 | source = "registry+https://github.com/rust-lang/crates.io-index" 1383 | checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" 1384 | dependencies = [ 1385 | "quote", 1386 | "wasm-bindgen-macro-support", 1387 | ] 1388 | 1389 | [[package]] 1390 | name = "wasm-bindgen-macro-support" 1391 | version = "0.2.92" 1392 | source = "registry+https://github.com/rust-lang/crates.io-index" 1393 | checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" 1394 | dependencies = [ 1395 | "proc-macro2", 1396 | "quote", 1397 | "syn 2.0.52", 1398 | "wasm-bindgen-backend", 1399 | "wasm-bindgen-shared", 1400 | ] 1401 | 1402 | [[package]] 1403 | name = "wasm-bindgen-shared" 1404 | version = "0.2.92" 1405 | source = "registry+https://github.com/rust-lang/crates.io-index" 1406 | checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" 1407 | 1408 | [[package]] 1409 | name = "web-sys" 1410 | version = "0.3.69" 1411 | source = "registry+https://github.com/rust-lang/crates.io-index" 1412 | checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" 1413 | dependencies = [ 1414 | "js-sys", 1415 | "wasm-bindgen", 1416 | ] 1417 | 1418 | [[package]] 1419 | name = "windows-sys" 1420 | version = "0.48.0" 1421 | source = "registry+https://github.com/rust-lang/crates.io-index" 1422 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" 1423 | dependencies = [ 1424 | "windows-targets 0.48.5", 1425 | ] 1426 | 1427 | [[package]] 1428 | name = "windows-sys" 1429 | version = "0.52.0" 1430 | source = "registry+https://github.com/rust-lang/crates.io-index" 1431 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 1432 | dependencies = [ 1433 | "windows-targets 0.52.4", 1434 | ] 1435 | 1436 | [[package]] 1437 | name = "windows-targets" 1438 | version = "0.48.5" 1439 | source = "registry+https://github.com/rust-lang/crates.io-index" 1440 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" 1441 | dependencies = [ 1442 | "windows_aarch64_gnullvm 0.48.5", 1443 | "windows_aarch64_msvc 0.48.5", 1444 | "windows_i686_gnu 0.48.5", 1445 | "windows_i686_msvc 0.48.5", 1446 | "windows_x86_64_gnu 0.48.5", 1447 | "windows_x86_64_gnullvm 0.48.5", 1448 | "windows_x86_64_msvc 0.48.5", 1449 | ] 1450 | 1451 | [[package]] 1452 | name = "windows-targets" 1453 | version = "0.52.4" 1454 | source = "registry+https://github.com/rust-lang/crates.io-index" 1455 | checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" 1456 | dependencies = [ 1457 | "windows_aarch64_gnullvm 0.52.4", 1458 | "windows_aarch64_msvc 0.52.4", 1459 | "windows_i686_gnu 0.52.4", 1460 | "windows_i686_msvc 0.52.4", 1461 | "windows_x86_64_gnu 0.52.4", 1462 | "windows_x86_64_gnullvm 0.52.4", 1463 | "windows_x86_64_msvc 0.52.4", 1464 | ] 1465 | 1466 | [[package]] 1467 | name = "windows_aarch64_gnullvm" 1468 | version = "0.48.5" 1469 | source = "registry+https://github.com/rust-lang/crates.io-index" 1470 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" 1471 | 1472 | [[package]] 1473 | name = "windows_aarch64_gnullvm" 1474 | version = "0.52.4" 1475 | source = "registry+https://github.com/rust-lang/crates.io-index" 1476 | checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" 1477 | 1478 | [[package]] 1479 | name = "windows_aarch64_msvc" 1480 | version = "0.48.5" 1481 | source = "registry+https://github.com/rust-lang/crates.io-index" 1482 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" 1483 | 1484 | [[package]] 1485 | name = "windows_aarch64_msvc" 1486 | version = "0.52.4" 1487 | source = "registry+https://github.com/rust-lang/crates.io-index" 1488 | checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" 1489 | 1490 | [[package]] 1491 | name = "windows_i686_gnu" 1492 | version = "0.48.5" 1493 | source = "registry+https://github.com/rust-lang/crates.io-index" 1494 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" 1495 | 1496 | [[package]] 1497 | name = "windows_i686_gnu" 1498 | version = "0.52.4" 1499 | source = "registry+https://github.com/rust-lang/crates.io-index" 1500 | checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" 1501 | 1502 | [[package]] 1503 | name = "windows_i686_msvc" 1504 | version = "0.48.5" 1505 | source = "registry+https://github.com/rust-lang/crates.io-index" 1506 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" 1507 | 1508 | [[package]] 1509 | name = "windows_i686_msvc" 1510 | version = "0.52.4" 1511 | source = "registry+https://github.com/rust-lang/crates.io-index" 1512 | checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" 1513 | 1514 | [[package]] 1515 | name = "windows_x86_64_gnu" 1516 | version = "0.48.5" 1517 | source = "registry+https://github.com/rust-lang/crates.io-index" 1518 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" 1519 | 1520 | [[package]] 1521 | name = "windows_x86_64_gnu" 1522 | version = "0.52.4" 1523 | source = "registry+https://github.com/rust-lang/crates.io-index" 1524 | checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" 1525 | 1526 | [[package]] 1527 | name = "windows_x86_64_gnullvm" 1528 | version = "0.48.5" 1529 | source = "registry+https://github.com/rust-lang/crates.io-index" 1530 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" 1531 | 1532 | [[package]] 1533 | name = "windows_x86_64_gnullvm" 1534 | version = "0.52.4" 1535 | source = "registry+https://github.com/rust-lang/crates.io-index" 1536 | checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" 1537 | 1538 | [[package]] 1539 | name = "windows_x86_64_msvc" 1540 | version = "0.48.5" 1541 | source = "registry+https://github.com/rust-lang/crates.io-index" 1542 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" 1543 | 1544 | [[package]] 1545 | name = "windows_x86_64_msvc" 1546 | version = "0.52.4" 1547 | source = "registry+https://github.com/rust-lang/crates.io-index" 1548 | checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" 1549 | 1550 | [[package]] 1551 | name = "winreg" 1552 | version = "0.50.0" 1553 | source = "registry+https://github.com/rust-lang/crates.io-index" 1554 | checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" 1555 | dependencies = [ 1556 | "cfg-if", 1557 | "windows-sys 0.48.0", 1558 | ] 1559 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "next-rust" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | tokio = { version = "1", features = ["macros"] } 8 | serde_json = { version = "1", features = ["raw_value"] } 9 | # Documentation: https://docs.rs/vercel_runtime/latest/vercel_runtime 10 | vercel_runtime = { version = "1.1.0" } 11 | url = "2.4.1" 12 | reqwest = { version = "0.11.23", features = ["blocking", "json"] } 13 | dotenv = "0.15.0" 14 | serde = { version = "1.0", features = ["derive"] } 15 | 16 | # libs 17 | [lib] 18 | path = "src/rs/utils.rs" 19 | 20 | # Each handler has to be specified as [[bin]] 21 | # Note that you need to provide unique names for each binary 22 | 23 | [[bin]] 24 | name = "crab" 25 | path = "api/crab.rs" 26 | 27 | [[bin]] 28 | name = "examples-cache" 29 | path = "api/examples/cache.rs" 30 | 31 | [[bin]] 32 | name = "examples-params" 33 | path = "api/examples/params.rs" 34 | 35 | [[bin]] 36 | name = "examples-env" 37 | path = "api/examples/env.rs" 38 | 39 | [[bin]] 40 | name = "examples-error" 41 | path = "api/examples/error.rs" 42 | 43 | [[bin]] 44 | name = "examples-create" 45 | path = "api/examples/create.rs" 46 | 47 | [[bin]] 48 | name = "examples-beer" 49 | path = "api/examples/beer.rs" 50 | -------------------------------------------------------------------------------- /FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: capJavert 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Next.js + Rust template 2 | 3 | Learn how to use Rust in your existing JavaScript/Next.js projects and discover how to deploy Rust to production on Vercel. 4 | 5 | You can use this template to get started writing Rust code in your Next.js project. 6 | 7 | Read my blog post [Integrating Rust into Next.js: How-To Developer Guide](https://medium.com/@capJavert/integrating-rust-into-next-js-how-to-developer-guide-10e533470d71) for more info. 8 | 9 | ![Rust programming language logo on the right and Next.js logo on the right](public/cover.jpg) 10 | 11 | ### Examples 12 | 13 | Check out `/api/examples` folder for different examples of how to use Rust in your Next.js project. 14 | 15 | All examples are deployed under `/api/examples/*` eg. https://next-rust-lake.vercel.app/api/examples/beer. 16 | 17 | --- 18 | 19 | Running Rust in Next.js is powered by [Rust Runtime from Vercel Community](https://github.com/vercel-community/rust) ❤️ 20 | -------------------------------------------------------------------------------- /api/crab.rs: -------------------------------------------------------------------------------- 1 | use serde_json::json; 2 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 3 | 4 | #[tokio::main] 5 | async fn main() -> Result<(), Error> { 6 | run(handler).await 7 | } 8 | 9 | pub async fn handler(_req: Request) -> Result, Error> { 10 | Ok(Response::builder() 11 | .status(StatusCode::OK) 12 | .header("Content-Type", "application/json") 13 | .body( 14 | json!({ "message": "crab is the best!" }).to_string() 15 | .into(), 16 | )?) 17 | } 18 | -------------------------------------------------------------------------------- /api/examples/beer.rs: -------------------------------------------------------------------------------- 1 | use next_rust::throw_error; 2 | use serde_json::json; 3 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 4 | 5 | #[tokio::main] 6 | async fn main() -> Result<(), Error> { 7 | run(handler).await 8 | } 9 | 10 | pub async fn handler(_req: Request) -> Result, Error> { 11 | let response = reqwest::blocking::get("https://api.punkapi.com/v2/beers/random")?; 12 | let beers = response.json::()?; 13 | 14 | let beer = match beers.get(0) { 15 | Some(beer) => beer, 16 | None => return Ok(throw_error!("no beer found", None, StatusCode::NOT_FOUND)?), 17 | }; 18 | 19 | Ok(Response::builder() 20 | .status(StatusCode::OK) 21 | .header("Content-Type", "application/json") 22 | .header( 23 | "Cache-Control", 24 | format!( 25 | "public, max-age=0, must-revalidate, s-maxage={s_maxage}", 26 | s_maxage = 24 * 60 * 60 27 | ), 28 | ) 29 | .body(json!(beer).to_string().into())?) 30 | } 31 | -------------------------------------------------------------------------------- /api/examples/cache.rs: -------------------------------------------------------------------------------- 1 | use serde_json::json; 2 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 3 | 4 | #[tokio::main] 5 | async fn main() -> Result<(), Error> { 6 | run(handler).await 7 | } 8 | 9 | pub async fn handler(_req: Request) -> Result, Error> { 10 | Ok(Response::builder() 11 | .status(StatusCode::OK) 12 | .header("Content-Type", "application/json") 13 | .header( 14 | "Cache-Control", 15 | format!( 16 | // cache for 1 hours on CDN 17 | "public, max-age=0, must-revalidate, s-maxage={s_maxage}", 18 | s_maxage = 1 * 60 * 60 19 | ), 20 | ) 21 | .body(json!({ "message": "this is cached!" }).to_string().into())?) 22 | } 23 | -------------------------------------------------------------------------------- /api/examples/create.rs: -------------------------------------------------------------------------------- 1 | use next_rust::throw_error; 2 | use reqwest::Method; 3 | use serde::Deserialize; 4 | use serde_json::json; 5 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 6 | 7 | #[tokio::main] 8 | async fn main() -> Result<(), Error> { 9 | run(handler).await 10 | } 11 | 12 | #[derive(Debug, Deserialize)] 13 | struct CreatePayload { 14 | name: String, 15 | } 16 | 17 | fn route_post(_req: Request) -> Result, Error> { 18 | let body: CreatePayload = match serde_json::from_slice(_req.body()) { 19 | Ok(body) => body, 20 | Err(_) => { 21 | return Ok(throw_error!( 22 | "invalid request body", 23 | None, 24 | StatusCode::BAD_REQUEST 25 | )?); 26 | } 27 | }; 28 | 29 | if body.name.trim().is_empty() { 30 | return Ok(throw_error!( 31 | "name is required", 32 | None, 33 | StatusCode::BAD_REQUEST 34 | )?); 35 | } 36 | 37 | Ok(Response::builder() 38 | .status(StatusCode::CREATED) 39 | .header("Content-Type", "application/json") 40 | .body( 41 | json!({ "message": format!("created {name}!", name=body.name) }) 42 | .to_string() 43 | .into(), 44 | )?) 45 | } 46 | 47 | pub async fn handler(_req: Request) -> Result, Error> { 48 | let response = match _req.method().to_owned() { 49 | Method::POST => route_post(_req), 50 | _ => { 51 | return Ok(throw_error!( 52 | "method not allowed", 53 | None, 54 | StatusCode::METHOD_NOT_ALLOWED 55 | )?); 56 | } 57 | }; 58 | 59 | return response; 60 | } 61 | -------------------------------------------------------------------------------- /api/examples/env.rs: -------------------------------------------------------------------------------- 1 | use serde_json::json; 2 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 3 | 4 | #[tokio::main] 5 | async fn main() -> Result<(), Error> { 6 | run(handler).await 7 | } 8 | 9 | pub async fn handler(_req: Request) -> Result, Error> { 10 | Ok(Response::builder() 11 | .status(StatusCode::OK) 12 | .header("Content-Type", "application/json") 13 | .body( 14 | json!({ 15 | "vercelEnv": dotenv::var("VERCEL_ENV").unwrap_or("development".to_string()), 16 | }) 17 | .to_string() 18 | .into(), 19 | )?) 20 | } 21 | -------------------------------------------------------------------------------- /api/examples/error.rs: -------------------------------------------------------------------------------- 1 | use std::collections::HashMap; 2 | 3 | use next_rust::throw_error; 4 | use serde_json::json; 5 | use url::Url; 6 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 7 | 8 | #[tokio::main] 9 | async fn main() -> Result<(), Error> { 10 | run(handler).await 11 | } 12 | 13 | pub async fn handler(_req: Request) -> Result, Error> { 14 | let url = Url::parse(&_req.uri().to_string()).unwrap(); 15 | let query_params = url 16 | .query_pairs() 17 | .into_owned() 18 | .collect::>(); 19 | 20 | let q = match query_params.get("q") { 21 | Some(value) => value, 22 | None => "", 23 | }; 24 | 25 | if q.is_empty() { 26 | return Ok(throw_error!( 27 | "query param 'q' is required", 28 | None, 29 | StatusCode::BAD_REQUEST 30 | )?); 31 | } 32 | 33 | Ok(Response::builder() 34 | .status(StatusCode::OK) 35 | .header("Content-Type", "application/json") 36 | .body( 37 | json!({ 38 | "message": format!("You searched for '{q}'", q=q) 39 | }) 40 | .to_string() 41 | .into(), 42 | )?) 43 | } 44 | -------------------------------------------------------------------------------- /api/examples/params.rs: -------------------------------------------------------------------------------- 1 | use std::collections::HashMap; 2 | 3 | use serde_json::json; 4 | use url::Url; 5 | use vercel_runtime::{run, Body, Error, Request, Response, StatusCode}; 6 | 7 | #[tokio::main] 8 | async fn main() -> Result<(), Error> { 9 | run(handler).await 10 | } 11 | 12 | pub async fn handler(_req: Request) -> Result, Error> { 13 | // reading incoming req headers 14 | let headers = _req.headers(); 15 | let user_agent = match headers.get("user-agent") { 16 | Some(value) => value.to_str().unwrap(), 17 | None => "unknown", 18 | }; 19 | 20 | // parsing req url and path 21 | let url = Url::parse(&_req.uri().to_string()).unwrap(); 22 | 23 | // read url query params 24 | let query_params = url 25 | .query_pairs() 26 | .into_owned() 27 | .collect::>(); 28 | 29 | // open /api/examples/params?q=test in your browser 30 | // and you will see the params in the response 31 | Ok(Response::builder() 32 | .status(StatusCode::OK) 33 | .header("Content-Type", "application/json") 34 | .body( 35 | json!({ 36 | "path": url.path(), 37 | "query": { 38 | "q": query_params.get("q") 39 | }, 40 | "headers": { 41 | "userAgent": user_agent 42 | } }) 43 | .to_string() 44 | .into(), 45 | )?) 46 | } 47 | -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = { 3 | rewrites: async () => { 4 | const rewrites = { 5 | afterFiles: [ 6 | // apply any of your existing rewrites here 7 | ], 8 | fallback: [] 9 | } 10 | 11 | // dev only, this allows for local api calls to be proxied to 12 | // api routes that use rust runtime 13 | if (process.env.NODE_ENV === 'development') { 14 | rewrites.fallback.push({ 15 | source: '/api/:path*', 16 | destination: 'http://0.0.0.0:3001/api/:path*' 17 | }) 18 | } 19 | 20 | return rewrites 21 | }, 22 | redirects: async () => { 23 | return [ 24 | { 25 | source: '/', 26 | // read my article for more info about this template 27 | destination: 'https://medium.com/@capJavert/integrating-rust-into-next-js-how-to-developer-guide-10e533470d71', 28 | permanent: false 29 | } 30 | ] 31 | } 32 | } 33 | 34 | module.exports = nextConfig 35 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "next-rust", 3 | "description": "Next.js + Rust template", 4 | "version": "0.1.0", 5 | "private": true, 6 | "scripts": { 7 | "dev": "next dev & npm run dev:rust", 8 | "build": "next build", 9 | "start": "next start", 10 | "lint": "next lint", 11 | "dev:rust": "vercel dev --listen 3001" 12 | }, 13 | "dependencies": { 14 | "@types/node": "20.11.25", 15 | "@types/react": "18.2.64", 16 | "@types/react-dom": "18.2.21", 17 | "eslint": "8.57.0", 18 | "eslint-config-next": "14.1.3", 19 | "next": "14.1.3", 20 | "react": "18.2.0", 21 | "react-dom": "18.2.0", 22 | "typescript": "5.4.2" 23 | }, 24 | "volta": { 25 | "node": "18.19.1" 26 | }, 27 | "author": "capJavert", 28 | "devDependencies": { 29 | "vercel": "^33.5.5" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | '@types/node': 9 | specifier: 20.11.25 10 | version: 20.11.25 11 | '@types/react': 12 | specifier: 18.2.64 13 | version: 18.2.64 14 | '@types/react-dom': 15 | specifier: 18.2.21 16 | version: 18.2.21 17 | eslint: 18 | specifier: 8.57.0 19 | version: 8.57.0 20 | eslint-config-next: 21 | specifier: 14.1.3 22 | version: 14.1.3(eslint@8.57.0)(typescript@5.4.2) 23 | next: 24 | specifier: 14.1.3 25 | version: 14.1.3(react-dom@18.2.0)(react@18.2.0) 26 | react: 27 | specifier: 18.2.0 28 | version: 18.2.0 29 | react-dom: 30 | specifier: 18.2.0 31 | version: 18.2.0(react@18.2.0) 32 | typescript: 33 | specifier: 5.4.2 34 | version: 5.4.2 35 | 36 | devDependencies: 37 | vercel: 38 | specifier: ^33.5.5 39 | version: 33.5.5 40 | 41 | packages: 42 | 43 | /@aashutoshrathi/word-wrap@1.2.6: 44 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 45 | engines: {node: '>=0.10.0'} 46 | dev: false 47 | 48 | /@babel/runtime@7.24.0: 49 | resolution: {integrity: sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==} 50 | engines: {node: '>=6.9.0'} 51 | dependencies: 52 | regenerator-runtime: 0.14.1 53 | dev: false 54 | 55 | /@cspotcode/source-map-support@0.8.1: 56 | resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} 57 | engines: {node: '>=12'} 58 | dependencies: 59 | '@jridgewell/trace-mapping': 0.3.9 60 | dev: true 61 | 62 | /@edge-runtime/format@2.2.1: 63 | resolution: {integrity: sha512-JQTRVuiusQLNNLe2W9tnzBlV/GvSVcozLl4XZHk5swnRZ/v6jp8TqR8P7sqmJsQqblDZ3EztcWmLDbhRje/+8g==} 64 | engines: {node: '>=16'} 65 | dev: true 66 | 67 | /@edge-runtime/node-utils@2.3.0: 68 | resolution: {integrity: sha512-uUtx8BFoO1hNxtHjp3eqVPC/mWImGb2exOfGjMLUoipuWgjej+f4o/VP4bUI8U40gu7Teogd5VTeZUkGvJSPOQ==} 69 | engines: {node: '>=16'} 70 | dev: true 71 | 72 | /@edge-runtime/ponyfill@2.4.2: 73 | resolution: {integrity: sha512-oN17GjFr69chu6sDLvXxdhg0Qe8EZviGSuqzR9qOiKh4MhFYGdBBcqRNzdmYeAdeRzOW2mM9yil4RftUQ7sUOA==} 74 | engines: {node: '>=16'} 75 | dev: true 76 | 77 | /@edge-runtime/primitives@4.1.0: 78 | resolution: {integrity: sha512-Vw0lbJ2lvRUqc7/soqygUX216Xb8T3WBZ987oywz6aJqRxcwSVWwr9e+Nqo2m9bxobA9mdbWNNoRY6S9eko1EQ==} 79 | engines: {node: '>=16'} 80 | dev: true 81 | 82 | /@edge-runtime/vm@3.2.0: 83 | resolution: {integrity: sha512-0dEVyRLM/lG4gp1R/Ik5bfPl/1wX00xFwd5KcNH602tzBa09oF7pbTKETEhR1GjZ75K6OJnYFu8II2dyMhONMw==} 84 | engines: {node: '>=16'} 85 | dependencies: 86 | '@edge-runtime/primitives': 4.1.0 87 | dev: true 88 | 89 | /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): 90 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 91 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 92 | peerDependencies: 93 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 94 | dependencies: 95 | eslint: 8.57.0 96 | eslint-visitor-keys: 3.4.3 97 | dev: false 98 | 99 | /@eslint-community/regexpp@4.10.0: 100 | resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} 101 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 102 | dev: false 103 | 104 | /@eslint/eslintrc@2.1.4: 105 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 106 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 107 | dependencies: 108 | ajv: 6.12.6 109 | debug: 4.3.4 110 | espree: 9.6.1 111 | globals: 13.24.0 112 | ignore: 5.3.1 113 | import-fresh: 3.3.0 114 | js-yaml: 4.1.0 115 | minimatch: 3.1.2 116 | strip-json-comments: 3.1.1 117 | transitivePeerDependencies: 118 | - supports-color 119 | dev: false 120 | 121 | /@eslint/js@8.57.0: 122 | resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} 123 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 124 | dev: false 125 | 126 | /@fastify/busboy@2.1.1: 127 | resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} 128 | engines: {node: '>=14'} 129 | dev: true 130 | 131 | /@humanwhocodes/config-array@0.11.14: 132 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 133 | engines: {node: '>=10.10.0'} 134 | dependencies: 135 | '@humanwhocodes/object-schema': 2.0.2 136 | debug: 4.3.4 137 | minimatch: 3.1.2 138 | transitivePeerDependencies: 139 | - supports-color 140 | dev: false 141 | 142 | /@humanwhocodes/module-importer@1.0.1: 143 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 144 | engines: {node: '>=12.22'} 145 | dev: false 146 | 147 | /@humanwhocodes/object-schema@2.0.2: 148 | resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} 149 | dev: false 150 | 151 | /@isaacs/cliui@8.0.2: 152 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 153 | engines: {node: '>=12'} 154 | dependencies: 155 | string-width: 5.1.2 156 | string-width-cjs: /string-width@4.2.3 157 | strip-ansi: 7.1.0 158 | strip-ansi-cjs: /strip-ansi@6.0.1 159 | wrap-ansi: 8.1.0 160 | wrap-ansi-cjs: /wrap-ansi@7.0.0 161 | dev: false 162 | 163 | /@jridgewell/resolve-uri@3.1.2: 164 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 165 | engines: {node: '>=6.0.0'} 166 | dev: true 167 | 168 | /@jridgewell/sourcemap-codec@1.4.15: 169 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 170 | dev: true 171 | 172 | /@jridgewell/trace-mapping@0.3.9: 173 | resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} 174 | dependencies: 175 | '@jridgewell/resolve-uri': 3.1.2 176 | '@jridgewell/sourcemap-codec': 1.4.15 177 | dev: true 178 | 179 | /@mapbox/node-pre-gyp@1.0.11: 180 | resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} 181 | hasBin: true 182 | dependencies: 183 | detect-libc: 2.0.2 184 | https-proxy-agent: 5.0.1 185 | make-dir: 3.1.0 186 | node-fetch: 2.7.0 187 | nopt: 5.0.0 188 | npmlog: 5.0.1 189 | rimraf: 3.0.2 190 | semver: 7.6.0 191 | tar: 6.2.0 192 | transitivePeerDependencies: 193 | - encoding 194 | - supports-color 195 | dev: true 196 | 197 | /@next/env@14.1.3: 198 | resolution: {integrity: sha512-VhgXTvrgeBRxNPjyfBsDIMvgsKDxjlpw4IAUsHCX8Gjl1vtHUYRT3+xfQ/wwvLPDd/6kqfLqk9Pt4+7gysuCKQ==} 199 | dev: false 200 | 201 | /@next/eslint-plugin-next@14.1.3: 202 | resolution: {integrity: sha512-VCnZI2cy77Yaj3L7Uhs3+44ikMM1VD/fBMwvTBb3hIaTIuqa+DmG4dhUDq+MASu3yx97KhgsVJbsas0XuiKyww==} 203 | dependencies: 204 | glob: 10.3.10 205 | dev: false 206 | 207 | /@next/swc-darwin-arm64@14.1.3: 208 | resolution: {integrity: sha512-LALu0yIBPRiG9ANrD5ncB3pjpO0Gli9ZLhxdOu6ZUNf3x1r3ea1rd9Q+4xxUkGrUXLqKVK9/lDkpYIJaCJ6AHQ==} 209 | engines: {node: '>= 10'} 210 | cpu: [arm64] 211 | os: [darwin] 212 | requiresBuild: true 213 | dev: false 214 | optional: true 215 | 216 | /@next/swc-darwin-x64@14.1.3: 217 | resolution: {integrity: sha512-E/9WQeXxkqw2dfcn5UcjApFgUq73jqNKaE5bysDm58hEUdUGedVrnRhblhJM7HbCZNhtVl0j+6TXsK0PuzXTCg==} 218 | engines: {node: '>= 10'} 219 | cpu: [x64] 220 | os: [darwin] 221 | requiresBuild: true 222 | dev: false 223 | optional: true 224 | 225 | /@next/swc-linux-arm64-gnu@14.1.3: 226 | resolution: {integrity: sha512-USArX9B+3rZSXYLFvgy0NVWQgqh6LHWDmMt38O4lmiJNQcwazeI6xRvSsliDLKt+78KChVacNiwvOMbl6g6BBw==} 227 | engines: {node: '>= 10'} 228 | cpu: [arm64] 229 | os: [linux] 230 | requiresBuild: true 231 | dev: false 232 | optional: true 233 | 234 | /@next/swc-linux-arm64-musl@14.1.3: 235 | resolution: {integrity: sha512-esk1RkRBLSIEp1qaQXv1+s6ZdYzuVCnDAZySpa62iFTMGTisCyNQmqyCTL9P+cLJ4N9FKCI3ojtSfsyPHJDQNw==} 236 | engines: {node: '>= 10'} 237 | cpu: [arm64] 238 | os: [linux] 239 | requiresBuild: true 240 | dev: false 241 | optional: true 242 | 243 | /@next/swc-linux-x64-gnu@14.1.3: 244 | resolution: {integrity: sha512-8uOgRlYEYiKo0L8YGeS+3TudHVDWDjPVDUcST+z+dUzgBbTEwSSIaSgF/vkcC1T/iwl4QX9iuUyUdQEl0Kxalg==} 245 | engines: {node: '>= 10'} 246 | cpu: [x64] 247 | os: [linux] 248 | requiresBuild: true 249 | dev: false 250 | optional: true 251 | 252 | /@next/swc-linux-x64-musl@14.1.3: 253 | resolution: {integrity: sha512-DX2zqz05ziElLoxskgHasaJBREC5Y9TJcbR2LYqu4r7naff25B4iXkfXWfcp69uD75/0URmmoSgT8JclJtrBoQ==} 254 | engines: {node: '>= 10'} 255 | cpu: [x64] 256 | os: [linux] 257 | requiresBuild: true 258 | dev: false 259 | optional: true 260 | 261 | /@next/swc-win32-arm64-msvc@14.1.3: 262 | resolution: {integrity: sha512-HjssFsCdsD4GHstXSQxsi2l70F/5FsRTRQp8xNgmQs15SxUfUJRvSI9qKny/jLkY3gLgiCR3+6A7wzzK0DBlfA==} 263 | engines: {node: '>= 10'} 264 | cpu: [arm64] 265 | os: [win32] 266 | requiresBuild: true 267 | dev: false 268 | optional: true 269 | 270 | /@next/swc-win32-ia32-msvc@14.1.3: 271 | resolution: {integrity: sha512-DRuxD5axfDM1/Ue4VahwSxl1O5rn61hX8/sF0HY8y0iCbpqdxw3rB3QasdHn/LJ6Wb2y5DoWzXcz3L1Cr+Thrw==} 272 | engines: {node: '>= 10'} 273 | cpu: [ia32] 274 | os: [win32] 275 | requiresBuild: true 276 | dev: false 277 | optional: true 278 | 279 | /@next/swc-win32-x64-msvc@14.1.3: 280 | resolution: {integrity: sha512-uC2DaDoWH7h1P/aJ4Fok3Xiw6P0Lo4ez7NbowW2VGNXw/Xv6tOuLUcxhBYZxsSUJtpeknCi8/fvnSpyCFp4Rcg==} 281 | engines: {node: '>= 10'} 282 | cpu: [x64] 283 | os: [win32] 284 | requiresBuild: true 285 | dev: false 286 | optional: true 287 | 288 | /@nodelib/fs.scandir@2.1.5: 289 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 290 | engines: {node: '>= 8'} 291 | dependencies: 292 | '@nodelib/fs.stat': 2.0.5 293 | run-parallel: 1.2.0 294 | 295 | /@nodelib/fs.stat@2.0.5: 296 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 297 | engines: {node: '>= 8'} 298 | 299 | /@nodelib/fs.walk@1.2.8: 300 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 301 | engines: {node: '>= 8'} 302 | dependencies: 303 | '@nodelib/fs.scandir': 2.1.5 304 | fastq: 1.17.1 305 | 306 | /@pkgjs/parseargs@0.11.0: 307 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 308 | engines: {node: '>=14'} 309 | requiresBuild: true 310 | dev: false 311 | optional: true 312 | 313 | /@rollup/pluginutils@4.2.1: 314 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 315 | engines: {node: '>= 8.0.0'} 316 | dependencies: 317 | estree-walker: 2.0.2 318 | picomatch: 2.3.1 319 | dev: true 320 | 321 | /@rushstack/eslint-patch@1.7.2: 322 | resolution: {integrity: sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==} 323 | dev: false 324 | 325 | /@sinclair/typebox@0.25.24: 326 | resolution: {integrity: sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==} 327 | dev: true 328 | 329 | /@swc/helpers@0.5.2: 330 | resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} 331 | dependencies: 332 | tslib: 2.6.2 333 | dev: false 334 | 335 | /@tootallnate/once@2.0.0: 336 | resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} 337 | engines: {node: '>= 10'} 338 | dev: true 339 | 340 | /@ts-morph/common@0.11.1: 341 | resolution: {integrity: sha512-7hWZS0NRpEsNV8vWJzg7FEz6V8MaLNeJOmwmghqUXTpzk16V1LLZhdo+4QvE/+zv4cVci0OviuJFnqhEfoV3+g==} 342 | dependencies: 343 | fast-glob: 3.3.2 344 | minimatch: 3.1.2 345 | mkdirp: 1.0.4 346 | path-browserify: 1.0.1 347 | dev: true 348 | 349 | /@tsconfig/node10@1.0.9: 350 | resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} 351 | dev: true 352 | 353 | /@tsconfig/node12@1.0.11: 354 | resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} 355 | dev: true 356 | 357 | /@tsconfig/node14@1.0.3: 358 | resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} 359 | dev: true 360 | 361 | /@tsconfig/node16@1.0.4: 362 | resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} 363 | dev: true 364 | 365 | /@types/json-schema@7.0.15: 366 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 367 | dev: true 368 | 369 | /@types/json5@0.0.29: 370 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} 371 | dev: false 372 | 373 | /@types/node@14.18.33: 374 | resolution: {integrity: sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==} 375 | dev: true 376 | 377 | /@types/node@20.11.25: 378 | resolution: {integrity: sha512-TBHyJxk2b7HceLVGFcpAUjsa5zIdsPWlR6XHfyGzd0SFu+/NFgQgMAl96MSDZgQDvJAvV6BKsFOrt6zIL09JDw==} 379 | dependencies: 380 | undici-types: 5.26.5 381 | dev: false 382 | 383 | /@types/prop-types@15.7.11: 384 | resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} 385 | dev: false 386 | 387 | /@types/react-dom@18.2.21: 388 | resolution: {integrity: sha512-gnvBA/21SA4xxqNXEwNiVcP0xSGHh/gi1VhWv9Bl46a0ItbTT5nFY+G9VSQpaG/8N/qdJpJ+vftQ4zflTtnjLw==} 389 | dependencies: 390 | '@types/react': 18.2.64 391 | dev: false 392 | 393 | /@types/react@18.2.64: 394 | resolution: {integrity: sha512-MlmPvHgjj2p3vZaxbQgFUQFvD8QiZwACfGqEdDSWou5yISWxDQ4/74nCAwsUiX7UFLKZz3BbVSPj+YxeoGGCfg==} 395 | dependencies: 396 | '@types/prop-types': 15.7.11 397 | '@types/scheduler': 0.16.8 398 | csstype: 3.1.3 399 | dev: false 400 | 401 | /@types/scheduler@0.16.8: 402 | resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} 403 | dev: false 404 | 405 | /@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.2): 406 | resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} 407 | engines: {node: ^16.0.0 || >=18.0.0} 408 | peerDependencies: 409 | eslint: ^7.0.0 || ^8.0.0 410 | typescript: '*' 411 | peerDependenciesMeta: 412 | typescript: 413 | optional: true 414 | dependencies: 415 | '@typescript-eslint/scope-manager': 6.21.0 416 | '@typescript-eslint/types': 6.21.0 417 | '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.2) 418 | '@typescript-eslint/visitor-keys': 6.21.0 419 | debug: 4.3.4 420 | eslint: 8.57.0 421 | typescript: 5.4.2 422 | transitivePeerDependencies: 423 | - supports-color 424 | dev: false 425 | 426 | /@typescript-eslint/scope-manager@6.21.0: 427 | resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} 428 | engines: {node: ^16.0.0 || >=18.0.0} 429 | dependencies: 430 | '@typescript-eslint/types': 6.21.0 431 | '@typescript-eslint/visitor-keys': 6.21.0 432 | dev: false 433 | 434 | /@typescript-eslint/types@6.21.0: 435 | resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} 436 | engines: {node: ^16.0.0 || >=18.0.0} 437 | dev: false 438 | 439 | /@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.2): 440 | resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} 441 | engines: {node: ^16.0.0 || >=18.0.0} 442 | peerDependencies: 443 | typescript: '*' 444 | peerDependenciesMeta: 445 | typescript: 446 | optional: true 447 | dependencies: 448 | '@typescript-eslint/types': 6.21.0 449 | '@typescript-eslint/visitor-keys': 6.21.0 450 | debug: 4.3.4 451 | globby: 11.1.0 452 | is-glob: 4.0.3 453 | minimatch: 9.0.3 454 | semver: 7.6.0 455 | ts-api-utils: 1.3.0(typescript@5.4.2) 456 | typescript: 5.4.2 457 | transitivePeerDependencies: 458 | - supports-color 459 | dev: false 460 | 461 | /@typescript-eslint/visitor-keys@6.21.0: 462 | resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} 463 | engines: {node: ^16.0.0 || >=18.0.0} 464 | dependencies: 465 | '@typescript-eslint/types': 6.21.0 466 | eslint-visitor-keys: 3.4.3 467 | dev: false 468 | 469 | /@ungap/structured-clone@1.2.0: 470 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 471 | dev: false 472 | 473 | /@vercel/build-utils@7.8.0: 474 | resolution: {integrity: sha512-kYABisJ/Fzn8eYX27nEKnUhtFvW/8oBGGzPWVSgiN9pwtAa0IYCqFGIsg9EbWiXvBSrVuiS7++k6KU+rEtKs1w==} 475 | dev: true 476 | 477 | /@vercel/error-utils@2.0.2: 478 | resolution: {integrity: sha512-Sj0LFafGpYr6pfCqrQ82X6ukRl5qpmVrHM/191kNYFqkkB9YkjlMAj6QcEsvCG259x4QZ7Tya++0AB85NDPbKQ==} 479 | dev: true 480 | 481 | /@vercel/fun@1.1.0: 482 | resolution: {integrity: sha512-SpuPAo+MlAYMtcMcC0plx7Tv4Mp7SQhJJj1iIENlOnABL24kxHpL09XLQMGzZIzIW7upR8c3edwgfpRtp+dhVw==} 483 | engines: {node: '>= 10'} 484 | dependencies: 485 | '@tootallnate/once': 2.0.0 486 | async-listen: 1.2.0 487 | debug: 4.1.1 488 | execa: 3.2.0 489 | fs-extra: 8.1.0 490 | generic-pool: 3.4.2 491 | micro: 9.3.5-canary.3 492 | ms: 2.1.1 493 | node-fetch: 2.6.7 494 | path-match: 1.2.4 495 | promisepipe: 3.0.0 496 | semver: 7.3.5 497 | stat-mode: 0.3.0 498 | stream-to-promise: 2.2.0 499 | tar: 4.4.18 500 | tree-kill: 1.2.2 501 | uid-promise: 1.0.0 502 | uuid: 3.3.2 503 | xdg-app-paths: 5.1.0 504 | yauzl-promise: 2.1.3 505 | transitivePeerDependencies: 506 | - encoding 507 | - supports-color 508 | dev: true 509 | 510 | /@vercel/gatsby-plugin-vercel-analytics@1.0.11: 511 | resolution: {integrity: sha512-iTEA0vY6RBPuEzkwUTVzSHDATo1aF6bdLLspI68mQ/BTbi5UQEGjpjyzdKOVcSYApDtFU6M6vypZ1t4vIEnHvw==} 512 | dependencies: 513 | web-vitals: 0.2.4 514 | dev: true 515 | 516 | /@vercel/gatsby-plugin-vercel-builder@2.0.20: 517 | resolution: {integrity: sha512-CIc2AlXE3kSGnYfYDUgt6+Eha1kByFhhAM2TZNKFIW8AkjP4jly2YZxUoD2GpdRY+TfOlfDD5GzPjrjEa7pttw==} 518 | dependencies: 519 | '@sinclair/typebox': 0.25.24 520 | '@vercel/build-utils': 7.8.0 521 | '@vercel/routing-utils': 3.1.0 522 | esbuild: 0.14.47 523 | etag: 1.8.1 524 | fs-extra: 11.1.0 525 | dev: true 526 | 527 | /@vercel/go@3.0.5: 528 | resolution: {integrity: sha512-+kEDI+hop3e8BuKisaEozxfzT6GBbp0OMBcgi0tlD5ZTmhGmpwi3vgK5mBQlB+RBXj7qlqDLW/uV2F1Y03FLcQ==} 529 | dev: true 530 | 531 | /@vercel/hydrogen@1.0.2: 532 | resolution: {integrity: sha512-/Q2MKk1GfOuZAnkE9jQexjtUQqanbY65R+xtJWd9yKIgwcfRI1hxiNH3uXyVM5AvLoY+fxxULkSuxDtUKpkJpQ==} 533 | dependencies: 534 | '@vercel/static-config': 3.0.0 535 | ts-morph: 12.0.0 536 | dev: true 537 | 538 | /@vercel/next@4.1.5: 539 | resolution: {integrity: sha512-7tylGnpMi5UIt+TUhGhfOcu8LYjJqZsTCjnzHMh1AMhl/tyl8xecxRKGrKxqxnQkqh2yO8tO5vg8KiFpCeGqPg==} 540 | dependencies: 541 | '@vercel/nft': 0.26.4 542 | transitivePeerDependencies: 543 | - encoding 544 | - supports-color 545 | dev: true 546 | 547 | /@vercel/nft@0.26.4: 548 | resolution: {integrity: sha512-j4jCOOXke2t8cHZCIxu1dzKLHLcFmYzC3yqAK6MfZznOL1QIJKd0xcFsXK3zcqzU7ScsE2zWkiMMNHGMHgp+FA==} 549 | engines: {node: '>=16'} 550 | hasBin: true 551 | dependencies: 552 | '@mapbox/node-pre-gyp': 1.0.11 553 | '@rollup/pluginutils': 4.2.1 554 | acorn: 8.11.3 555 | acorn-import-attributes: 1.9.2(acorn@8.11.3) 556 | async-sema: 3.1.1 557 | bindings: 1.5.0 558 | estree-walker: 2.0.2 559 | glob: 7.2.3 560 | graceful-fs: 4.2.11 561 | micromatch: 4.0.5 562 | node-gyp-build: 4.8.0 563 | resolve-from: 5.0.0 564 | transitivePeerDependencies: 565 | - encoding 566 | - supports-color 567 | dev: true 568 | 569 | /@vercel/node@3.0.22: 570 | resolution: {integrity: sha512-opPu9PHiQBEUEnAJa6GPUgbNz2dEi6abkDGV27wjrHErOZemRr687U+SVFoR54CQ3soKASbp/HGHggCfow0SVQ==} 571 | dependencies: 572 | '@edge-runtime/node-utils': 2.3.0 573 | '@edge-runtime/primitives': 4.1.0 574 | '@edge-runtime/vm': 3.2.0 575 | '@types/node': 14.18.33 576 | '@vercel/build-utils': 7.8.0 577 | '@vercel/error-utils': 2.0.2 578 | '@vercel/nft': 0.26.4 579 | '@vercel/static-config': 3.0.0 580 | async-listen: 3.0.0 581 | cjs-module-lexer: 1.2.3 582 | edge-runtime: 2.5.9 583 | es-module-lexer: 1.4.1 584 | esbuild: 0.14.47 585 | etag: 1.8.1 586 | node-fetch: 2.6.9 587 | path-to-regexp: 6.2.1 588 | ts-morph: 12.0.0 589 | ts-node: 10.9.1(@types/node@14.18.33)(typescript@4.9.5) 590 | typescript: 4.9.5 591 | undici: 5.26.5 592 | transitivePeerDependencies: 593 | - '@swc/core' 594 | - '@swc/wasm' 595 | - encoding 596 | - supports-color 597 | dev: true 598 | 599 | /@vercel/python@4.1.1: 600 | resolution: {integrity: sha512-EbAdKOZ0hPd5b59tLt7R3RQK1azNvuZTrCFRAVHNjqcIHNCmrSvjag5zBGn7Memkk8qWb3+CgBw9K/3LJKei0w==} 601 | dev: true 602 | 603 | /@vercel/redwood@2.0.8: 604 | resolution: {integrity: sha512-hAu7SYXDt+W7kscjtQ5NsuNflXH+QB5/xAdA6FRSS/e41lG6Xq6pqLMDobqq4BR7E2PpppVDw2DUx9KzPNoeEw==} 605 | dependencies: 606 | '@vercel/nft': 0.26.4 607 | '@vercel/routing-utils': 3.1.0 608 | semver: 6.3.1 609 | transitivePeerDependencies: 610 | - encoding 611 | - supports-color 612 | dev: true 613 | 614 | /@vercel/remix-builder@2.1.2: 615 | resolution: {integrity: sha512-CLIwxxcgGw3BdoDCGV2c98+BdPnmdYotzvJQ+PQbL6u+Nbo3zIAAspwVPP7RhL8OIPzDiFTW4GjeaaIRI+7dbw==} 616 | dependencies: 617 | '@vercel/error-utils': 2.0.2 618 | '@vercel/nft': 0.26.4 619 | '@vercel/static-config': 3.0.0 620 | ts-morph: 12.0.0 621 | transitivePeerDependencies: 622 | - encoding 623 | - supports-color 624 | dev: true 625 | 626 | /@vercel/routing-utils@3.1.0: 627 | resolution: {integrity: sha512-Ci5xTjVTJY/JLZXpCXpLehMft97i9fH34nu9PGav6DtwkVUF6TOPX86U0W0niQjMZ5n6/ZP0BwcJK2LOozKaGw==} 628 | dependencies: 629 | path-to-regexp: 6.1.0 630 | optionalDependencies: 631 | ajv: 6.12.6 632 | dev: true 633 | 634 | /@vercel/ruby@2.0.5: 635 | resolution: {integrity: sha512-Gfm8HDech41vf+EPleRzgoJUnDTJerKgckMm4KX0JT860gV9XBMSOWYH7eMWHmMza104+HRCWL7wT6OlpftF2Q==} 636 | dev: true 637 | 638 | /@vercel/static-build@2.4.2: 639 | resolution: {integrity: sha512-TYEIzc33tsBFG3IhxmkTwonyhe0K7e951p4tvfoB6dkOQ6jRusHi5lxtJRiT+MQ8UzCmcaCrt8vEMYnakmH3qQ==} 640 | dependencies: 641 | '@vercel/gatsby-plugin-vercel-analytics': 1.0.11 642 | '@vercel/gatsby-plugin-vercel-builder': 2.0.20 643 | '@vercel/static-config': 3.0.0 644 | ts-morph: 12.0.0 645 | dev: true 646 | 647 | /@vercel/static-config@3.0.0: 648 | resolution: {integrity: sha512-2qtvcBJ1bGY0dYGYh3iM7yGKkk971FujLEDXzuW5wcZsPr1GSEjO/w2iSr3qve6nDDtBImsGoDEnus5FI4+fIw==} 649 | dependencies: 650 | ajv: 8.6.3 651 | json-schema-to-ts: 1.6.4 652 | ts-morph: 12.0.0 653 | dev: true 654 | 655 | /abbrev@1.1.1: 656 | resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} 657 | dev: true 658 | 659 | /acorn-import-attributes@1.9.2(acorn@8.11.3): 660 | resolution: {integrity: sha512-O+nfJwNolEA771IYJaiLWK1UAwjNsQmZbTRqqwBYxCgVQTmpFEMvBw6LOIQV0Me339L5UMVYFyRohGnGlQDdIQ==} 661 | peerDependencies: 662 | acorn: ^8 663 | dependencies: 664 | acorn: 8.11.3 665 | dev: true 666 | 667 | /acorn-jsx@5.3.2(acorn@8.11.3): 668 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 669 | peerDependencies: 670 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 671 | dependencies: 672 | acorn: 8.11.3 673 | dev: false 674 | 675 | /acorn-walk@8.3.2: 676 | resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} 677 | engines: {node: '>=0.4.0'} 678 | dev: true 679 | 680 | /acorn@8.11.3: 681 | resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} 682 | engines: {node: '>=0.4.0'} 683 | hasBin: true 684 | 685 | /agent-base@6.0.2: 686 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} 687 | engines: {node: '>= 6.0.0'} 688 | dependencies: 689 | debug: 4.3.4 690 | transitivePeerDependencies: 691 | - supports-color 692 | dev: true 693 | 694 | /ajv@6.12.6: 695 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 696 | dependencies: 697 | fast-deep-equal: 3.1.3 698 | fast-json-stable-stringify: 2.1.0 699 | json-schema-traverse: 0.4.1 700 | uri-js: 4.4.1 701 | 702 | /ajv@8.6.3: 703 | resolution: {integrity: sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==} 704 | dependencies: 705 | fast-deep-equal: 3.1.3 706 | json-schema-traverse: 1.0.0 707 | require-from-string: 2.0.2 708 | uri-js: 4.4.1 709 | dev: true 710 | 711 | /ansi-regex@5.0.1: 712 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 713 | engines: {node: '>=8'} 714 | 715 | /ansi-regex@6.0.1: 716 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 717 | engines: {node: '>=12'} 718 | dev: false 719 | 720 | /ansi-styles@4.3.0: 721 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 722 | engines: {node: '>=8'} 723 | dependencies: 724 | color-convert: 2.0.1 725 | dev: false 726 | 727 | /ansi-styles@6.2.1: 728 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 729 | engines: {node: '>=12'} 730 | dev: false 731 | 732 | /any-promise@1.3.0: 733 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 734 | dev: true 735 | 736 | /anymatch@3.1.3: 737 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 738 | engines: {node: '>= 8'} 739 | dependencies: 740 | normalize-path: 3.0.0 741 | picomatch: 2.3.1 742 | dev: true 743 | 744 | /aproba@2.0.0: 745 | resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} 746 | dev: true 747 | 748 | /are-we-there-yet@2.0.0: 749 | resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} 750 | engines: {node: '>=10'} 751 | dependencies: 752 | delegates: 1.0.0 753 | readable-stream: 3.6.2 754 | dev: true 755 | 756 | /arg@4.1.0: 757 | resolution: {integrity: sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg==} 758 | dev: true 759 | 760 | /arg@4.1.3: 761 | resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} 762 | dev: true 763 | 764 | /argparse@2.0.1: 765 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 766 | dev: false 767 | 768 | /aria-query@5.3.0: 769 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 770 | dependencies: 771 | dequal: 2.0.3 772 | dev: false 773 | 774 | /array-buffer-byte-length@1.0.1: 775 | resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} 776 | engines: {node: '>= 0.4'} 777 | dependencies: 778 | call-bind: 1.0.7 779 | is-array-buffer: 3.0.4 780 | dev: false 781 | 782 | /array-includes@3.1.7: 783 | resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} 784 | engines: {node: '>= 0.4'} 785 | dependencies: 786 | call-bind: 1.0.7 787 | define-properties: 1.2.1 788 | es-abstract: 1.22.5 789 | get-intrinsic: 1.2.4 790 | is-string: 1.0.7 791 | dev: false 792 | 793 | /array-union@2.1.0: 794 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 795 | engines: {node: '>=8'} 796 | dev: false 797 | 798 | /array.prototype.filter@1.0.3: 799 | resolution: {integrity: sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw==} 800 | engines: {node: '>= 0.4'} 801 | dependencies: 802 | call-bind: 1.0.7 803 | define-properties: 1.2.1 804 | es-abstract: 1.22.5 805 | es-array-method-boxes-properly: 1.0.0 806 | is-string: 1.0.7 807 | dev: false 808 | 809 | /array.prototype.findlast@1.2.4: 810 | resolution: {integrity: sha512-BMtLxpV+8BD+6ZPFIWmnUBpQoy+A+ujcg4rhp2iwCRJYA7PEh2MS4NL3lz8EiDlLrJPp2hg9qWihr5pd//jcGw==} 811 | engines: {node: '>= 0.4'} 812 | dependencies: 813 | call-bind: 1.0.7 814 | define-properties: 1.2.1 815 | es-abstract: 1.22.5 816 | es-errors: 1.3.0 817 | es-shim-unscopables: 1.0.2 818 | dev: false 819 | 820 | /array.prototype.findlastindex@1.2.4: 821 | resolution: {integrity: sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ==} 822 | engines: {node: '>= 0.4'} 823 | dependencies: 824 | call-bind: 1.0.7 825 | define-properties: 1.2.1 826 | es-abstract: 1.22.5 827 | es-errors: 1.3.0 828 | es-shim-unscopables: 1.0.2 829 | dev: false 830 | 831 | /array.prototype.flat@1.3.2: 832 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 833 | engines: {node: '>= 0.4'} 834 | dependencies: 835 | call-bind: 1.0.7 836 | define-properties: 1.2.1 837 | es-abstract: 1.22.5 838 | es-shim-unscopables: 1.0.2 839 | dev: false 840 | 841 | /array.prototype.flatmap@1.3.2: 842 | resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} 843 | engines: {node: '>= 0.4'} 844 | dependencies: 845 | call-bind: 1.0.7 846 | define-properties: 1.2.1 847 | es-abstract: 1.22.5 848 | es-shim-unscopables: 1.0.2 849 | dev: false 850 | 851 | /array.prototype.toreversed@1.1.2: 852 | resolution: {integrity: sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==} 853 | dependencies: 854 | call-bind: 1.0.7 855 | define-properties: 1.2.1 856 | es-abstract: 1.22.5 857 | es-shim-unscopables: 1.0.2 858 | dev: false 859 | 860 | /array.prototype.tosorted@1.1.3: 861 | resolution: {integrity: sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==} 862 | dependencies: 863 | call-bind: 1.0.7 864 | define-properties: 1.2.1 865 | es-abstract: 1.22.5 866 | es-errors: 1.3.0 867 | es-shim-unscopables: 1.0.2 868 | dev: false 869 | 870 | /arraybuffer.prototype.slice@1.0.3: 871 | resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} 872 | engines: {node: '>= 0.4'} 873 | dependencies: 874 | array-buffer-byte-length: 1.0.1 875 | call-bind: 1.0.7 876 | define-properties: 1.2.1 877 | es-abstract: 1.22.5 878 | es-errors: 1.3.0 879 | get-intrinsic: 1.2.4 880 | is-array-buffer: 3.0.4 881 | is-shared-array-buffer: 1.0.3 882 | dev: false 883 | 884 | /ast-types-flow@0.0.8: 885 | resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} 886 | dev: false 887 | 888 | /async-listen@1.2.0: 889 | resolution: {integrity: sha512-CcEtRh/oc9Jc4uWeUwdpG/+Mb2YUHKmdaTf0gUr7Wa+bfp4xx70HOb3RuSTJMvqKNB1TkdTfjLdrcz2X4rkkZA==} 890 | dev: true 891 | 892 | /async-listen@3.0.0: 893 | resolution: {integrity: sha512-V+SsTpDqkrWTimiotsyl33ePSjA5/KrithwupuvJ6ztsqPvGv6ge4OredFhPffVXiLN/QUWvE0XcqJaYgt6fOg==} 894 | engines: {node: '>= 14'} 895 | dev: true 896 | 897 | /async-listen@3.0.1: 898 | resolution: {integrity: sha512-cWMaNwUJnf37C/S5TfCkk/15MwbPRwVYALA2jtjkbHjCmAPiDXyNJy2q3p1KAZzDLHAWyarUWSujUoHR4pEgrA==} 899 | engines: {node: '>= 14'} 900 | dev: true 901 | 902 | /async-sema@3.1.1: 903 | resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==} 904 | dev: true 905 | 906 | /asynciterator.prototype@1.0.0: 907 | resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} 908 | dependencies: 909 | has-symbols: 1.0.3 910 | dev: false 911 | 912 | /available-typed-arrays@1.0.7: 913 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 914 | engines: {node: '>= 0.4'} 915 | dependencies: 916 | possible-typed-array-names: 1.0.0 917 | dev: false 918 | 919 | /axe-core@4.7.0: 920 | resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} 921 | engines: {node: '>=4'} 922 | dev: false 923 | 924 | /axobject-query@3.2.1: 925 | resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} 926 | dependencies: 927 | dequal: 2.0.3 928 | dev: false 929 | 930 | /balanced-match@1.0.2: 931 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 932 | 933 | /binary-extensions@2.2.0: 934 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 935 | engines: {node: '>=8'} 936 | dev: true 937 | 938 | /bindings@1.5.0: 939 | resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} 940 | dependencies: 941 | file-uri-to-path: 1.0.0 942 | dev: true 943 | 944 | /brace-expansion@1.1.11: 945 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 946 | dependencies: 947 | balanced-match: 1.0.2 948 | concat-map: 0.0.1 949 | 950 | /brace-expansion@2.0.1: 951 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 952 | dependencies: 953 | balanced-match: 1.0.2 954 | dev: false 955 | 956 | /braces@3.0.2: 957 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 958 | engines: {node: '>=8'} 959 | dependencies: 960 | fill-range: 7.0.1 961 | 962 | /buffer-crc32@0.2.13: 963 | resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} 964 | dev: true 965 | 966 | /busboy@1.6.0: 967 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 968 | engines: {node: '>=10.16.0'} 969 | dependencies: 970 | streamsearch: 1.1.0 971 | dev: false 972 | 973 | /bytes@3.1.0: 974 | resolution: {integrity: sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==} 975 | engines: {node: '>= 0.8'} 976 | dev: true 977 | 978 | /call-bind@1.0.7: 979 | resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} 980 | engines: {node: '>= 0.4'} 981 | dependencies: 982 | es-define-property: 1.0.0 983 | es-errors: 1.3.0 984 | function-bind: 1.1.2 985 | get-intrinsic: 1.2.4 986 | set-function-length: 1.2.2 987 | dev: false 988 | 989 | /callsites@3.1.0: 990 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 991 | engines: {node: '>=6'} 992 | dev: false 993 | 994 | /caniuse-lite@1.0.30001597: 995 | resolution: {integrity: sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==} 996 | dev: false 997 | 998 | /chalk@4.1.2: 999 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1000 | engines: {node: '>=10'} 1001 | dependencies: 1002 | ansi-styles: 4.3.0 1003 | supports-color: 7.2.0 1004 | dev: false 1005 | 1006 | /chokidar@3.3.1: 1007 | resolution: {integrity: sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==} 1008 | engines: {node: '>= 8.10.0'} 1009 | dependencies: 1010 | anymatch: 3.1.3 1011 | braces: 3.0.2 1012 | glob-parent: 5.1.2 1013 | is-binary-path: 2.1.0 1014 | is-glob: 4.0.3 1015 | normalize-path: 3.0.0 1016 | readdirp: 3.3.0 1017 | optionalDependencies: 1018 | fsevents: 2.1.3 1019 | dev: true 1020 | 1021 | /chownr@1.1.4: 1022 | resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} 1023 | dev: true 1024 | 1025 | /chownr@2.0.0: 1026 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} 1027 | engines: {node: '>=10'} 1028 | dev: true 1029 | 1030 | /cjs-module-lexer@1.2.3: 1031 | resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} 1032 | dev: true 1033 | 1034 | /client-only@0.0.1: 1035 | resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} 1036 | dev: false 1037 | 1038 | /code-block-writer@10.1.1: 1039 | resolution: {integrity: sha512-67ueh2IRGst/51p0n6FvPrnRjAGHY5F8xdjkgrYE7DDzpJe6qA07RYQ9VcoUeo5ATOjSOiWpSL3SWBRRbempMw==} 1040 | dev: true 1041 | 1042 | /color-convert@2.0.1: 1043 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1044 | engines: {node: '>=7.0.0'} 1045 | dependencies: 1046 | color-name: 1.1.4 1047 | dev: false 1048 | 1049 | /color-name@1.1.4: 1050 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1051 | dev: false 1052 | 1053 | /color-support@1.1.3: 1054 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} 1055 | hasBin: true 1056 | dev: true 1057 | 1058 | /concat-map@0.0.1: 1059 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1060 | 1061 | /console-control-strings@1.1.0: 1062 | resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} 1063 | dev: true 1064 | 1065 | /content-type@1.0.4: 1066 | resolution: {integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==} 1067 | engines: {node: '>= 0.6'} 1068 | dev: true 1069 | 1070 | /convert-hrtime@3.0.0: 1071 | resolution: {integrity: sha512-7V+KqSvMiHp8yWDuwfww06XleMWVVB9b9tURBx+G7UTADuo5hYPuowKloz4OzOqbPezxgo+fdQ1522WzPG4OeA==} 1072 | engines: {node: '>=8'} 1073 | dev: true 1074 | 1075 | /create-require@1.1.1: 1076 | resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} 1077 | dev: true 1078 | 1079 | /cross-spawn@7.0.3: 1080 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1081 | engines: {node: '>= 8'} 1082 | dependencies: 1083 | path-key: 3.1.1 1084 | shebang-command: 2.0.0 1085 | which: 2.0.2 1086 | 1087 | /csstype@3.1.3: 1088 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 1089 | dev: false 1090 | 1091 | /damerau-levenshtein@1.0.8: 1092 | resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} 1093 | dev: false 1094 | 1095 | /debug@3.2.7: 1096 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 1097 | peerDependencies: 1098 | supports-color: '*' 1099 | peerDependenciesMeta: 1100 | supports-color: 1101 | optional: true 1102 | dependencies: 1103 | ms: 2.1.3 1104 | dev: false 1105 | 1106 | /debug@4.1.1: 1107 | resolution: {integrity: sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==} 1108 | deprecated: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797) 1109 | peerDependencies: 1110 | supports-color: '*' 1111 | peerDependenciesMeta: 1112 | supports-color: 1113 | optional: true 1114 | dependencies: 1115 | ms: 2.1.3 1116 | dev: true 1117 | 1118 | /debug@4.3.4: 1119 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1120 | engines: {node: '>=6.0'} 1121 | peerDependencies: 1122 | supports-color: '*' 1123 | peerDependenciesMeta: 1124 | supports-color: 1125 | optional: true 1126 | dependencies: 1127 | ms: 2.1.2 1128 | 1129 | /deep-is@0.1.4: 1130 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1131 | dev: false 1132 | 1133 | /define-data-property@1.1.4: 1134 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 1135 | engines: {node: '>= 0.4'} 1136 | dependencies: 1137 | es-define-property: 1.0.0 1138 | es-errors: 1.3.0 1139 | gopd: 1.0.1 1140 | dev: false 1141 | 1142 | /define-properties@1.2.1: 1143 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 1144 | engines: {node: '>= 0.4'} 1145 | dependencies: 1146 | define-data-property: 1.1.4 1147 | has-property-descriptors: 1.0.2 1148 | object-keys: 1.1.1 1149 | dev: false 1150 | 1151 | /delegates@1.0.0: 1152 | resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} 1153 | dev: true 1154 | 1155 | /depd@1.1.2: 1156 | resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} 1157 | engines: {node: '>= 0.6'} 1158 | dev: true 1159 | 1160 | /dequal@2.0.3: 1161 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 1162 | engines: {node: '>=6'} 1163 | dev: false 1164 | 1165 | /detect-libc@2.0.2: 1166 | resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} 1167 | engines: {node: '>=8'} 1168 | dev: true 1169 | 1170 | /diff@4.0.2: 1171 | resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} 1172 | engines: {node: '>=0.3.1'} 1173 | dev: true 1174 | 1175 | /dir-glob@3.0.1: 1176 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1177 | engines: {node: '>=8'} 1178 | dependencies: 1179 | path-type: 4.0.0 1180 | dev: false 1181 | 1182 | /doctrine@2.1.0: 1183 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 1184 | engines: {node: '>=0.10.0'} 1185 | dependencies: 1186 | esutils: 2.0.3 1187 | dev: false 1188 | 1189 | /doctrine@3.0.0: 1190 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1191 | engines: {node: '>=6.0.0'} 1192 | dependencies: 1193 | esutils: 2.0.3 1194 | dev: false 1195 | 1196 | /eastasianwidth@0.2.0: 1197 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 1198 | dev: false 1199 | 1200 | /edge-runtime@2.5.9: 1201 | resolution: {integrity: sha512-pk+k0oK0PVXdlT4oRp4lwh+unuKB7Ng4iZ2HB+EZ7QCEQizX360Rp/F4aRpgpRgdP2ufB35N+1KppHmYjqIGSg==} 1202 | engines: {node: '>=16'} 1203 | hasBin: true 1204 | dependencies: 1205 | '@edge-runtime/format': 2.2.1 1206 | '@edge-runtime/ponyfill': 2.4.2 1207 | '@edge-runtime/vm': 3.2.0 1208 | async-listen: 3.0.1 1209 | mri: 1.2.0 1210 | picocolors: 1.0.0 1211 | pretty-ms: 7.0.1 1212 | signal-exit: 4.0.2 1213 | time-span: 4.0.0 1214 | dev: true 1215 | 1216 | /emoji-regex@8.0.0: 1217 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1218 | 1219 | /emoji-regex@9.2.2: 1220 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 1221 | dev: false 1222 | 1223 | /end-of-stream@1.1.0: 1224 | resolution: {integrity: sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==} 1225 | dependencies: 1226 | once: 1.3.3 1227 | dev: true 1228 | 1229 | /end-of-stream@1.4.4: 1230 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 1231 | dependencies: 1232 | once: 1.4.0 1233 | dev: true 1234 | 1235 | /enhanced-resolve@5.16.0: 1236 | resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==} 1237 | engines: {node: '>=10.13.0'} 1238 | dependencies: 1239 | graceful-fs: 4.2.11 1240 | tapable: 2.2.1 1241 | dev: false 1242 | 1243 | /es-abstract@1.22.5: 1244 | resolution: {integrity: sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==} 1245 | engines: {node: '>= 0.4'} 1246 | dependencies: 1247 | array-buffer-byte-length: 1.0.1 1248 | arraybuffer.prototype.slice: 1.0.3 1249 | available-typed-arrays: 1.0.7 1250 | call-bind: 1.0.7 1251 | es-define-property: 1.0.0 1252 | es-errors: 1.3.0 1253 | es-set-tostringtag: 2.0.3 1254 | es-to-primitive: 1.2.1 1255 | function.prototype.name: 1.1.6 1256 | get-intrinsic: 1.2.4 1257 | get-symbol-description: 1.0.2 1258 | globalthis: 1.0.3 1259 | gopd: 1.0.1 1260 | has-property-descriptors: 1.0.2 1261 | has-proto: 1.0.3 1262 | has-symbols: 1.0.3 1263 | hasown: 2.0.2 1264 | internal-slot: 1.0.7 1265 | is-array-buffer: 3.0.4 1266 | is-callable: 1.2.7 1267 | is-negative-zero: 2.0.3 1268 | is-regex: 1.1.4 1269 | is-shared-array-buffer: 1.0.3 1270 | is-string: 1.0.7 1271 | is-typed-array: 1.1.13 1272 | is-weakref: 1.0.2 1273 | object-inspect: 1.13.1 1274 | object-keys: 1.1.1 1275 | object.assign: 4.1.5 1276 | regexp.prototype.flags: 1.5.2 1277 | safe-array-concat: 1.1.2 1278 | safe-regex-test: 1.0.3 1279 | string.prototype.trim: 1.2.8 1280 | string.prototype.trimend: 1.0.7 1281 | string.prototype.trimstart: 1.0.7 1282 | typed-array-buffer: 1.0.2 1283 | typed-array-byte-length: 1.0.1 1284 | typed-array-byte-offset: 1.0.2 1285 | typed-array-length: 1.0.5 1286 | unbox-primitive: 1.0.2 1287 | which-typed-array: 1.1.15 1288 | dev: false 1289 | 1290 | /es-array-method-boxes-properly@1.0.0: 1291 | resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} 1292 | dev: false 1293 | 1294 | /es-define-property@1.0.0: 1295 | resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} 1296 | engines: {node: '>= 0.4'} 1297 | dependencies: 1298 | get-intrinsic: 1.2.4 1299 | dev: false 1300 | 1301 | /es-errors@1.3.0: 1302 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 1303 | engines: {node: '>= 0.4'} 1304 | dev: false 1305 | 1306 | /es-iterator-helpers@1.0.17: 1307 | resolution: {integrity: sha512-lh7BsUqelv4KUbR5a/ZTaGGIMLCjPGPqJ6q+Oq24YP0RdyptX1uzm4vvaqzk7Zx3bpl/76YLTTDj9L7uYQ92oQ==} 1308 | engines: {node: '>= 0.4'} 1309 | dependencies: 1310 | asynciterator.prototype: 1.0.0 1311 | call-bind: 1.0.7 1312 | define-properties: 1.2.1 1313 | es-abstract: 1.22.5 1314 | es-errors: 1.3.0 1315 | es-set-tostringtag: 2.0.3 1316 | function-bind: 1.1.2 1317 | get-intrinsic: 1.2.4 1318 | globalthis: 1.0.3 1319 | has-property-descriptors: 1.0.2 1320 | has-proto: 1.0.3 1321 | has-symbols: 1.0.3 1322 | internal-slot: 1.0.7 1323 | iterator.prototype: 1.1.2 1324 | safe-array-concat: 1.1.2 1325 | dev: false 1326 | 1327 | /es-module-lexer@1.4.1: 1328 | resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} 1329 | dev: true 1330 | 1331 | /es-set-tostringtag@2.0.3: 1332 | resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} 1333 | engines: {node: '>= 0.4'} 1334 | dependencies: 1335 | get-intrinsic: 1.2.4 1336 | has-tostringtag: 1.0.2 1337 | hasown: 2.0.2 1338 | dev: false 1339 | 1340 | /es-shim-unscopables@1.0.2: 1341 | resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} 1342 | dependencies: 1343 | hasown: 2.0.2 1344 | dev: false 1345 | 1346 | /es-to-primitive@1.2.1: 1347 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 1348 | engines: {node: '>= 0.4'} 1349 | dependencies: 1350 | is-callable: 1.2.7 1351 | is-date-object: 1.0.5 1352 | is-symbol: 1.0.4 1353 | dev: false 1354 | 1355 | /esbuild-android-64@0.14.47: 1356 | resolution: {integrity: sha512-R13Bd9+tqLVFndncMHssZrPWe6/0Kpv2/dt4aA69soX4PRxlzsVpCvoJeFE8sOEoeVEiBkI0myjlkDodXlHa0g==} 1357 | engines: {node: '>=12'} 1358 | cpu: [x64] 1359 | os: [android] 1360 | requiresBuild: true 1361 | dev: true 1362 | optional: true 1363 | 1364 | /esbuild-android-arm64@0.14.47: 1365 | resolution: {integrity: sha512-OkwOjj7ts4lBp/TL6hdd8HftIzOy/pdtbrNA4+0oVWgGG64HrdVzAF5gxtJufAPOsEjkyh1oIYvKAUinKKQRSQ==} 1366 | engines: {node: '>=12'} 1367 | cpu: [arm64] 1368 | os: [android] 1369 | requiresBuild: true 1370 | dev: true 1371 | optional: true 1372 | 1373 | /esbuild-darwin-64@0.14.47: 1374 | resolution: {integrity: sha512-R6oaW0y5/u6Eccti/TS6c/2c1xYTb1izwK3gajJwi4vIfNs1s8B1dQzI1UiC9T61YovOQVuePDcfqHLT3mUZJA==} 1375 | engines: {node: '>=12'} 1376 | cpu: [x64] 1377 | os: [darwin] 1378 | requiresBuild: true 1379 | dev: true 1380 | optional: true 1381 | 1382 | /esbuild-darwin-arm64@0.14.47: 1383 | resolution: {integrity: sha512-seCmearlQyvdvM/noz1L9+qblC5vcBrhUaOoLEDDoLInF/VQ9IkobGiLlyTPYP5dW1YD4LXhtBgOyevoIHGGnw==} 1384 | engines: {node: '>=12'} 1385 | cpu: [arm64] 1386 | os: [darwin] 1387 | requiresBuild: true 1388 | dev: true 1389 | optional: true 1390 | 1391 | /esbuild-freebsd-64@0.14.47: 1392 | resolution: {integrity: sha512-ZH8K2Q8/Ux5kXXvQMDsJcxvkIwut69KVrYQhza/ptkW50DC089bCVrJZZ3sKzIoOx+YPTrmsZvqeZERjyYrlvQ==} 1393 | engines: {node: '>=12'} 1394 | cpu: [x64] 1395 | os: [freebsd] 1396 | requiresBuild: true 1397 | dev: true 1398 | optional: true 1399 | 1400 | /esbuild-freebsd-arm64@0.14.47: 1401 | resolution: {integrity: sha512-ZJMQAJQsIOhn3XTm7MPQfCzEu5b9STNC+s90zMWe2afy9EwnHV7Ov7ohEMv2lyWlc2pjqLW8QJnz2r0KZmeAEQ==} 1402 | engines: {node: '>=12'} 1403 | cpu: [arm64] 1404 | os: [freebsd] 1405 | requiresBuild: true 1406 | dev: true 1407 | optional: true 1408 | 1409 | /esbuild-linux-32@0.14.47: 1410 | resolution: {integrity: sha512-FxZOCKoEDPRYvq300lsWCTv1kcHgiiZfNrPtEhFAiqD7QZaXrad8LxyJ8fXGcWzIFzRiYZVtB3ttvITBvAFhKw==} 1411 | engines: {node: '>=12'} 1412 | cpu: [ia32] 1413 | os: [linux] 1414 | requiresBuild: true 1415 | dev: true 1416 | optional: true 1417 | 1418 | /esbuild-linux-64@0.14.47: 1419 | resolution: {integrity: sha512-nFNOk9vWVfvWYF9YNYksZptgQAdstnDCMtR6m42l5Wfugbzu11VpMCY9XrD4yFxvPo9zmzcoUL/88y0lfJZJJw==} 1420 | engines: {node: '>=12'} 1421 | cpu: [x64] 1422 | os: [linux] 1423 | requiresBuild: true 1424 | dev: true 1425 | optional: true 1426 | 1427 | /esbuild-linux-arm64@0.14.47: 1428 | resolution: {integrity: sha512-ywfme6HVrhWcevzmsufjd4iT3PxTfCX9HOdxA7Hd+/ZM23Y9nXeb+vG6AyA6jgq/JovkcqRHcL9XwRNpWG6XRw==} 1429 | engines: {node: '>=12'} 1430 | cpu: [arm64] 1431 | os: [linux] 1432 | requiresBuild: true 1433 | dev: true 1434 | optional: true 1435 | 1436 | /esbuild-linux-arm@0.14.47: 1437 | resolution: {integrity: sha512-ZGE1Bqg/gPRXrBpgpvH81tQHpiaGxa8c9Rx/XOylkIl2ypLuOcawXEAo8ls+5DFCcRGt/o3sV+PzpAFZobOsmA==} 1438 | engines: {node: '>=12'} 1439 | cpu: [arm] 1440 | os: [linux] 1441 | requiresBuild: true 1442 | dev: true 1443 | optional: true 1444 | 1445 | /esbuild-linux-mips64le@0.14.47: 1446 | resolution: {integrity: sha512-mg3D8YndZ1LvUiEdDYR3OsmeyAew4MA/dvaEJxvyygahWmpv1SlEEnhEZlhPokjsUMfRagzsEF/d/2XF+kTQGg==} 1447 | engines: {node: '>=12'} 1448 | cpu: [mips64el] 1449 | os: [linux] 1450 | requiresBuild: true 1451 | dev: true 1452 | optional: true 1453 | 1454 | /esbuild-linux-ppc64le@0.14.47: 1455 | resolution: {integrity: sha512-WER+f3+szmnZiWoK6AsrTKGoJoErG2LlauSmk73LEZFQ/iWC+KhhDsOkn1xBUpzXWsxN9THmQFltLoaFEH8F8w==} 1456 | engines: {node: '>=12'} 1457 | cpu: [ppc64] 1458 | os: [linux] 1459 | requiresBuild: true 1460 | dev: true 1461 | optional: true 1462 | 1463 | /esbuild-linux-riscv64@0.14.47: 1464 | resolution: {integrity: sha512-1fI6bP3A3rvI9BsaaXbMoaOjLE3lVkJtLxsgLHqlBhLlBVY7UqffWBvkrX/9zfPhhVMd9ZRFiaqXnB1T7BsL2g==} 1465 | engines: {node: '>=12'} 1466 | cpu: [riscv64] 1467 | os: [linux] 1468 | requiresBuild: true 1469 | dev: true 1470 | optional: true 1471 | 1472 | /esbuild-linux-s390x@0.14.47: 1473 | resolution: {integrity: sha512-eZrWzy0xFAhki1CWRGnhsHVz7IlSKX6yT2tj2Eg8lhAwlRE5E96Hsb0M1mPSE1dHGpt1QVwwVivXIAacF/G6mw==} 1474 | engines: {node: '>=12'} 1475 | cpu: [s390x] 1476 | os: [linux] 1477 | requiresBuild: true 1478 | dev: true 1479 | optional: true 1480 | 1481 | /esbuild-netbsd-64@0.14.47: 1482 | resolution: {integrity: sha512-Qjdjr+KQQVH5Q2Q1r6HBYswFTToPpss3gqCiSw2Fpq/ua8+eXSQyAMG+UvULPqXceOwpnPo4smyZyHdlkcPppQ==} 1483 | engines: {node: '>=12'} 1484 | cpu: [x64] 1485 | os: [netbsd] 1486 | requiresBuild: true 1487 | dev: true 1488 | optional: true 1489 | 1490 | /esbuild-openbsd-64@0.14.47: 1491 | resolution: {integrity: sha512-QpgN8ofL7B9z8g5zZqJE+eFvD1LehRlxr25PBkjyyasakm4599iroUpaj96rdqRlO2ShuyqwJdr+oNqWwTUmQw==} 1492 | engines: {node: '>=12'} 1493 | cpu: [x64] 1494 | os: [openbsd] 1495 | requiresBuild: true 1496 | dev: true 1497 | optional: true 1498 | 1499 | /esbuild-sunos-64@0.14.47: 1500 | resolution: {integrity: sha512-uOeSgLUwukLioAJOiGYm3kNl+1wJjgJA8R671GYgcPgCx7QR73zfvYqXFFcIO93/nBdIbt5hd8RItqbbf3HtAQ==} 1501 | engines: {node: '>=12'} 1502 | cpu: [x64] 1503 | os: [sunos] 1504 | requiresBuild: true 1505 | dev: true 1506 | optional: true 1507 | 1508 | /esbuild-windows-32@0.14.47: 1509 | resolution: {integrity: sha512-H0fWsLTp2WBfKLBgwYT4OTfFly4Im/8B5f3ojDv1Kx//kiubVY0IQunP2Koc/fr/0wI7hj3IiBDbSrmKlrNgLQ==} 1510 | engines: {node: '>=12'} 1511 | cpu: [ia32] 1512 | os: [win32] 1513 | requiresBuild: true 1514 | dev: true 1515 | optional: true 1516 | 1517 | /esbuild-windows-64@0.14.47: 1518 | resolution: {integrity: sha512-/Pk5jIEH34T68r8PweKRi77W49KwanZ8X6lr3vDAtOlH5EumPE4pBHqkCUdELanvsT14yMXLQ/C/8XPi1pAtkQ==} 1519 | engines: {node: '>=12'} 1520 | cpu: [x64] 1521 | os: [win32] 1522 | requiresBuild: true 1523 | dev: true 1524 | optional: true 1525 | 1526 | /esbuild-windows-arm64@0.14.47: 1527 | resolution: {integrity: sha512-HFSW2lnp62fl86/qPQlqw6asIwCnEsEoNIL1h2uVMgakddf+vUuMcCbtUY1i8sst7KkgHrVKCJQB33YhhOweCQ==} 1528 | engines: {node: '>=12'} 1529 | cpu: [arm64] 1530 | os: [win32] 1531 | requiresBuild: true 1532 | dev: true 1533 | optional: true 1534 | 1535 | /esbuild@0.14.47: 1536 | resolution: {integrity: sha512-wI4ZiIfFxpkuxB8ju4MHrGwGLyp1+awEHAHVpx6w7a+1pmYIq8T9FGEVVwFo0iFierDoMj++Xq69GXWYn2EiwA==} 1537 | engines: {node: '>=12'} 1538 | hasBin: true 1539 | requiresBuild: true 1540 | optionalDependencies: 1541 | esbuild-android-64: 0.14.47 1542 | esbuild-android-arm64: 0.14.47 1543 | esbuild-darwin-64: 0.14.47 1544 | esbuild-darwin-arm64: 0.14.47 1545 | esbuild-freebsd-64: 0.14.47 1546 | esbuild-freebsd-arm64: 0.14.47 1547 | esbuild-linux-32: 0.14.47 1548 | esbuild-linux-64: 0.14.47 1549 | esbuild-linux-arm: 0.14.47 1550 | esbuild-linux-arm64: 0.14.47 1551 | esbuild-linux-mips64le: 0.14.47 1552 | esbuild-linux-ppc64le: 0.14.47 1553 | esbuild-linux-riscv64: 0.14.47 1554 | esbuild-linux-s390x: 0.14.47 1555 | esbuild-netbsd-64: 0.14.47 1556 | esbuild-openbsd-64: 0.14.47 1557 | esbuild-sunos-64: 0.14.47 1558 | esbuild-windows-32: 0.14.47 1559 | esbuild-windows-64: 0.14.47 1560 | esbuild-windows-arm64: 0.14.47 1561 | dev: true 1562 | 1563 | /escape-string-regexp@4.0.0: 1564 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1565 | engines: {node: '>=10'} 1566 | dev: false 1567 | 1568 | /eslint-config-next@14.1.3(eslint@8.57.0)(typescript@5.4.2): 1569 | resolution: {integrity: sha512-sUCpWlGuHpEhI0pIT0UtdSLJk5Z8E2DYinPTwsBiWaSYQomchdl0i60pjynY48+oXvtyWMQ7oE+G3m49yrfacg==} 1570 | peerDependencies: 1571 | eslint: ^7.23.0 || ^8.0.0 1572 | typescript: '>=3.3.1' 1573 | peerDependenciesMeta: 1574 | typescript: 1575 | optional: true 1576 | dependencies: 1577 | '@next/eslint-plugin-next': 14.1.3 1578 | '@rushstack/eslint-patch': 1.7.2 1579 | '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.2) 1580 | eslint: 8.57.0 1581 | eslint-import-resolver-node: 0.3.9 1582 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) 1583 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1584 | eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0) 1585 | eslint-plugin-react: 7.34.0(eslint@8.57.0) 1586 | eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0) 1587 | typescript: 5.4.2 1588 | transitivePeerDependencies: 1589 | - eslint-import-resolver-webpack 1590 | - supports-color 1591 | dev: false 1592 | 1593 | /eslint-import-resolver-node@0.3.9: 1594 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} 1595 | dependencies: 1596 | debug: 3.2.7 1597 | is-core-module: 2.13.1 1598 | resolve: 1.22.8 1599 | transitivePeerDependencies: 1600 | - supports-color 1601 | dev: false 1602 | 1603 | /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): 1604 | resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} 1605 | engines: {node: ^14.18.0 || >=16.0.0} 1606 | peerDependencies: 1607 | eslint: '*' 1608 | eslint-plugin-import: '*' 1609 | dependencies: 1610 | debug: 4.3.4 1611 | enhanced-resolve: 5.16.0 1612 | eslint: 8.57.0 1613 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1614 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1615 | fast-glob: 3.3.2 1616 | get-tsconfig: 4.7.3 1617 | is-core-module: 2.13.1 1618 | is-glob: 4.0.3 1619 | transitivePeerDependencies: 1620 | - '@typescript-eslint/parser' 1621 | - eslint-import-resolver-node 1622 | - eslint-import-resolver-webpack 1623 | - supports-color 1624 | dev: false 1625 | 1626 | /eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): 1627 | resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} 1628 | engines: {node: '>=4'} 1629 | peerDependencies: 1630 | '@typescript-eslint/parser': '*' 1631 | eslint: '*' 1632 | eslint-import-resolver-node: '*' 1633 | eslint-import-resolver-typescript: '*' 1634 | eslint-import-resolver-webpack: '*' 1635 | peerDependenciesMeta: 1636 | '@typescript-eslint/parser': 1637 | optional: true 1638 | eslint: 1639 | optional: true 1640 | eslint-import-resolver-node: 1641 | optional: true 1642 | eslint-import-resolver-typescript: 1643 | optional: true 1644 | eslint-import-resolver-webpack: 1645 | optional: true 1646 | dependencies: 1647 | '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.2) 1648 | debug: 3.2.7 1649 | eslint: 8.57.0 1650 | eslint-import-resolver-node: 0.3.9 1651 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) 1652 | transitivePeerDependencies: 1653 | - supports-color 1654 | dev: false 1655 | 1656 | /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): 1657 | resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} 1658 | engines: {node: '>=4'} 1659 | peerDependencies: 1660 | '@typescript-eslint/parser': '*' 1661 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 1662 | peerDependenciesMeta: 1663 | '@typescript-eslint/parser': 1664 | optional: true 1665 | dependencies: 1666 | '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.2) 1667 | array-includes: 3.1.7 1668 | array.prototype.findlastindex: 1.2.4 1669 | array.prototype.flat: 1.3.2 1670 | array.prototype.flatmap: 1.3.2 1671 | debug: 3.2.7 1672 | doctrine: 2.1.0 1673 | eslint: 8.57.0 1674 | eslint-import-resolver-node: 0.3.9 1675 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) 1676 | hasown: 2.0.2 1677 | is-core-module: 2.13.1 1678 | is-glob: 4.0.3 1679 | minimatch: 3.1.2 1680 | object.fromentries: 2.0.7 1681 | object.groupby: 1.0.2 1682 | object.values: 1.1.7 1683 | semver: 6.3.1 1684 | tsconfig-paths: 3.15.0 1685 | transitivePeerDependencies: 1686 | - eslint-import-resolver-typescript 1687 | - eslint-import-resolver-webpack 1688 | - supports-color 1689 | dev: false 1690 | 1691 | /eslint-plugin-jsx-a11y@6.8.0(eslint@8.57.0): 1692 | resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} 1693 | engines: {node: '>=4.0'} 1694 | peerDependencies: 1695 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 1696 | dependencies: 1697 | '@babel/runtime': 7.24.0 1698 | aria-query: 5.3.0 1699 | array-includes: 3.1.7 1700 | array.prototype.flatmap: 1.3.2 1701 | ast-types-flow: 0.0.8 1702 | axe-core: 4.7.0 1703 | axobject-query: 3.2.1 1704 | damerau-levenshtein: 1.0.8 1705 | emoji-regex: 9.2.2 1706 | es-iterator-helpers: 1.0.17 1707 | eslint: 8.57.0 1708 | hasown: 2.0.2 1709 | jsx-ast-utils: 3.3.5 1710 | language-tags: 1.0.9 1711 | minimatch: 3.1.2 1712 | object.entries: 1.1.7 1713 | object.fromentries: 2.0.7 1714 | dev: false 1715 | 1716 | /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0): 1717 | resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} 1718 | engines: {node: '>=10'} 1719 | peerDependencies: 1720 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 1721 | dependencies: 1722 | eslint: 8.57.0 1723 | dev: false 1724 | 1725 | /eslint-plugin-react@7.34.0(eslint@8.57.0): 1726 | resolution: {integrity: sha512-MeVXdReleBTdkz/bvcQMSnCXGi+c9kvy51IpinjnJgutl3YTHWsDdke7Z1ufZpGfDG8xduBDKyjtB9JH1eBKIQ==} 1727 | engines: {node: '>=4'} 1728 | peerDependencies: 1729 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 1730 | dependencies: 1731 | array-includes: 3.1.7 1732 | array.prototype.findlast: 1.2.4 1733 | array.prototype.flatmap: 1.3.2 1734 | array.prototype.toreversed: 1.1.2 1735 | array.prototype.tosorted: 1.1.3 1736 | doctrine: 2.1.0 1737 | es-iterator-helpers: 1.0.17 1738 | eslint: 8.57.0 1739 | estraverse: 5.3.0 1740 | jsx-ast-utils: 3.3.5 1741 | minimatch: 3.1.2 1742 | object.entries: 1.1.7 1743 | object.fromentries: 2.0.7 1744 | object.hasown: 1.1.3 1745 | object.values: 1.1.7 1746 | prop-types: 15.8.1 1747 | resolve: 2.0.0-next.5 1748 | semver: 6.3.1 1749 | string.prototype.matchall: 4.0.10 1750 | dev: false 1751 | 1752 | /eslint-scope@7.2.2: 1753 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 1754 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1755 | dependencies: 1756 | esrecurse: 4.3.0 1757 | estraverse: 5.3.0 1758 | dev: false 1759 | 1760 | /eslint-visitor-keys@3.4.3: 1761 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 1762 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1763 | dev: false 1764 | 1765 | /eslint@8.57.0: 1766 | resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 1767 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1768 | hasBin: true 1769 | dependencies: 1770 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 1771 | '@eslint-community/regexpp': 4.10.0 1772 | '@eslint/eslintrc': 2.1.4 1773 | '@eslint/js': 8.57.0 1774 | '@humanwhocodes/config-array': 0.11.14 1775 | '@humanwhocodes/module-importer': 1.0.1 1776 | '@nodelib/fs.walk': 1.2.8 1777 | '@ungap/structured-clone': 1.2.0 1778 | ajv: 6.12.6 1779 | chalk: 4.1.2 1780 | cross-spawn: 7.0.3 1781 | debug: 4.3.4 1782 | doctrine: 3.0.0 1783 | escape-string-regexp: 4.0.0 1784 | eslint-scope: 7.2.2 1785 | eslint-visitor-keys: 3.4.3 1786 | espree: 9.6.1 1787 | esquery: 1.5.0 1788 | esutils: 2.0.3 1789 | fast-deep-equal: 3.1.3 1790 | file-entry-cache: 6.0.1 1791 | find-up: 5.0.0 1792 | glob-parent: 6.0.2 1793 | globals: 13.24.0 1794 | graphemer: 1.4.0 1795 | ignore: 5.3.1 1796 | imurmurhash: 0.1.4 1797 | is-glob: 4.0.3 1798 | is-path-inside: 3.0.3 1799 | js-yaml: 4.1.0 1800 | json-stable-stringify-without-jsonify: 1.0.1 1801 | levn: 0.4.1 1802 | lodash.merge: 4.6.2 1803 | minimatch: 3.1.2 1804 | natural-compare: 1.4.0 1805 | optionator: 0.9.3 1806 | strip-ansi: 6.0.1 1807 | text-table: 0.2.0 1808 | transitivePeerDependencies: 1809 | - supports-color 1810 | dev: false 1811 | 1812 | /espree@9.6.1: 1813 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 1814 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1815 | dependencies: 1816 | acorn: 8.11.3 1817 | acorn-jsx: 5.3.2(acorn@8.11.3) 1818 | eslint-visitor-keys: 3.4.3 1819 | dev: false 1820 | 1821 | /esquery@1.5.0: 1822 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 1823 | engines: {node: '>=0.10'} 1824 | dependencies: 1825 | estraverse: 5.3.0 1826 | dev: false 1827 | 1828 | /esrecurse@4.3.0: 1829 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1830 | engines: {node: '>=4.0'} 1831 | dependencies: 1832 | estraverse: 5.3.0 1833 | dev: false 1834 | 1835 | /estraverse@5.3.0: 1836 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1837 | engines: {node: '>=4.0'} 1838 | dev: false 1839 | 1840 | /estree-walker@2.0.2: 1841 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 1842 | dev: true 1843 | 1844 | /esutils@2.0.3: 1845 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1846 | engines: {node: '>=0.10.0'} 1847 | dev: false 1848 | 1849 | /etag@1.8.1: 1850 | resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} 1851 | engines: {node: '>= 0.6'} 1852 | dev: true 1853 | 1854 | /events-intercept@2.0.0: 1855 | resolution: {integrity: sha512-blk1va0zol9QOrdZt0rFXo5KMkNPVSp92Eju/Qz8THwKWKRKeE0T8Br/1aW6+Edkyq9xHYgYxn2QtOnUKPUp+Q==} 1856 | dev: true 1857 | 1858 | /execa@3.2.0: 1859 | resolution: {integrity: sha512-kJJfVbI/lZE1PZYDI5VPxp8zXPO9rtxOkhpZ0jMKha56AI9y2gGVC6bkukStQf0ka5Rh15BA5m7cCCH4jmHqkw==} 1860 | engines: {node: ^8.12.0 || >=9.7.0} 1861 | dependencies: 1862 | cross-spawn: 7.0.3 1863 | get-stream: 5.2.0 1864 | human-signals: 1.1.1 1865 | is-stream: 2.0.1 1866 | merge-stream: 2.0.0 1867 | npm-run-path: 4.0.1 1868 | onetime: 5.1.2 1869 | p-finally: 2.0.1 1870 | signal-exit: 3.0.7 1871 | strip-final-newline: 2.0.0 1872 | dev: true 1873 | 1874 | /fast-deep-equal@3.1.3: 1875 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1876 | 1877 | /fast-glob@3.3.2: 1878 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 1879 | engines: {node: '>=8.6.0'} 1880 | dependencies: 1881 | '@nodelib/fs.stat': 2.0.5 1882 | '@nodelib/fs.walk': 1.2.8 1883 | glob-parent: 5.1.2 1884 | merge2: 1.4.1 1885 | micromatch: 4.0.5 1886 | 1887 | /fast-json-stable-stringify@2.1.0: 1888 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1889 | 1890 | /fast-levenshtein@2.0.6: 1891 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1892 | dev: false 1893 | 1894 | /fastq@1.17.1: 1895 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 1896 | dependencies: 1897 | reusify: 1.0.4 1898 | 1899 | /fd-slicer@1.1.0: 1900 | resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} 1901 | dependencies: 1902 | pend: 1.2.0 1903 | dev: true 1904 | 1905 | /file-entry-cache@6.0.1: 1906 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1907 | engines: {node: ^10.12.0 || >=12.0.0} 1908 | dependencies: 1909 | flat-cache: 3.2.0 1910 | dev: false 1911 | 1912 | /file-uri-to-path@1.0.0: 1913 | resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} 1914 | dev: true 1915 | 1916 | /fill-range@7.0.1: 1917 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1918 | engines: {node: '>=8'} 1919 | dependencies: 1920 | to-regex-range: 5.0.1 1921 | 1922 | /find-up@5.0.0: 1923 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1924 | engines: {node: '>=10'} 1925 | dependencies: 1926 | locate-path: 6.0.0 1927 | path-exists: 4.0.0 1928 | dev: false 1929 | 1930 | /flat-cache@3.2.0: 1931 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} 1932 | engines: {node: ^10.12.0 || >=12.0.0} 1933 | dependencies: 1934 | flatted: 3.3.1 1935 | keyv: 4.5.4 1936 | rimraf: 3.0.2 1937 | dev: false 1938 | 1939 | /flatted@3.3.1: 1940 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} 1941 | dev: false 1942 | 1943 | /for-each@0.3.3: 1944 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 1945 | dependencies: 1946 | is-callable: 1.2.7 1947 | dev: false 1948 | 1949 | /foreground-child@3.1.1: 1950 | resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} 1951 | engines: {node: '>=14'} 1952 | dependencies: 1953 | cross-spawn: 7.0.3 1954 | signal-exit: 4.1.0 1955 | dev: false 1956 | 1957 | /fs-extra@11.1.0: 1958 | resolution: {integrity: sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==} 1959 | engines: {node: '>=14.14'} 1960 | dependencies: 1961 | graceful-fs: 4.2.11 1962 | jsonfile: 6.1.0 1963 | universalify: 2.0.1 1964 | dev: true 1965 | 1966 | /fs-extra@8.1.0: 1967 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 1968 | engines: {node: '>=6 <7 || >=8'} 1969 | dependencies: 1970 | graceful-fs: 4.2.11 1971 | jsonfile: 4.0.0 1972 | universalify: 0.1.2 1973 | dev: true 1974 | 1975 | /fs-minipass@1.2.7: 1976 | resolution: {integrity: sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==} 1977 | dependencies: 1978 | minipass: 2.9.0 1979 | dev: true 1980 | 1981 | /fs-minipass@2.1.0: 1982 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} 1983 | engines: {node: '>= 8'} 1984 | dependencies: 1985 | minipass: 3.3.6 1986 | dev: true 1987 | 1988 | /fs.realpath@1.0.0: 1989 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1990 | 1991 | /fsevents@2.1.3: 1992 | resolution: {integrity: sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==} 1993 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1994 | os: [darwin] 1995 | deprecated: '"Please update to latest v2.3 or v2.2"' 1996 | requiresBuild: true 1997 | dev: true 1998 | optional: true 1999 | 2000 | /function-bind@1.1.2: 2001 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 2002 | dev: false 2003 | 2004 | /function.prototype.name@1.1.6: 2005 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 2006 | engines: {node: '>= 0.4'} 2007 | dependencies: 2008 | call-bind: 1.0.7 2009 | define-properties: 1.2.1 2010 | es-abstract: 1.22.5 2011 | functions-have-names: 1.2.3 2012 | dev: false 2013 | 2014 | /functions-have-names@1.2.3: 2015 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 2016 | dev: false 2017 | 2018 | /gauge@3.0.2: 2019 | resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} 2020 | engines: {node: '>=10'} 2021 | dependencies: 2022 | aproba: 2.0.0 2023 | color-support: 1.1.3 2024 | console-control-strings: 1.1.0 2025 | has-unicode: 2.0.1 2026 | object-assign: 4.1.1 2027 | signal-exit: 3.0.7 2028 | string-width: 4.2.3 2029 | strip-ansi: 6.0.1 2030 | wide-align: 1.1.5 2031 | dev: true 2032 | 2033 | /generic-pool@3.4.2: 2034 | resolution: {integrity: sha512-H7cUpwCQSiJmAHM4c/aFu6fUfrhWXW1ncyh8ftxEPMu6AiYkHw9K8br720TGPZJbk5eOH2bynjZD1yPvdDAmag==} 2035 | engines: {node: '>= 4'} 2036 | dev: true 2037 | 2038 | /get-intrinsic@1.2.4: 2039 | resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} 2040 | engines: {node: '>= 0.4'} 2041 | dependencies: 2042 | es-errors: 1.3.0 2043 | function-bind: 1.1.2 2044 | has-proto: 1.0.3 2045 | has-symbols: 1.0.3 2046 | hasown: 2.0.2 2047 | dev: false 2048 | 2049 | /get-stream@5.2.0: 2050 | resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} 2051 | engines: {node: '>=8'} 2052 | dependencies: 2053 | pump: 3.0.0 2054 | dev: true 2055 | 2056 | /get-symbol-description@1.0.2: 2057 | resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} 2058 | engines: {node: '>= 0.4'} 2059 | dependencies: 2060 | call-bind: 1.0.7 2061 | es-errors: 1.3.0 2062 | get-intrinsic: 1.2.4 2063 | dev: false 2064 | 2065 | /get-tsconfig@4.7.3: 2066 | resolution: {integrity: sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==} 2067 | dependencies: 2068 | resolve-pkg-maps: 1.0.0 2069 | dev: false 2070 | 2071 | /glob-parent@5.1.2: 2072 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2073 | engines: {node: '>= 6'} 2074 | dependencies: 2075 | is-glob: 4.0.3 2076 | 2077 | /glob-parent@6.0.2: 2078 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 2079 | engines: {node: '>=10.13.0'} 2080 | dependencies: 2081 | is-glob: 4.0.3 2082 | dev: false 2083 | 2084 | /glob@10.3.10: 2085 | resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} 2086 | engines: {node: '>=16 || 14 >=14.17'} 2087 | hasBin: true 2088 | dependencies: 2089 | foreground-child: 3.1.1 2090 | jackspeak: 2.3.6 2091 | minimatch: 9.0.3 2092 | minipass: 7.0.4 2093 | path-scurry: 1.10.1 2094 | dev: false 2095 | 2096 | /glob@7.2.3: 2097 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 2098 | dependencies: 2099 | fs.realpath: 1.0.0 2100 | inflight: 1.0.6 2101 | inherits: 2.0.4 2102 | minimatch: 3.1.2 2103 | once: 1.4.0 2104 | path-is-absolute: 1.0.1 2105 | 2106 | /globals@13.24.0: 2107 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 2108 | engines: {node: '>=8'} 2109 | dependencies: 2110 | type-fest: 0.20.2 2111 | dev: false 2112 | 2113 | /globalthis@1.0.3: 2114 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 2115 | engines: {node: '>= 0.4'} 2116 | dependencies: 2117 | define-properties: 1.2.1 2118 | dev: false 2119 | 2120 | /globby@11.1.0: 2121 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 2122 | engines: {node: '>=10'} 2123 | dependencies: 2124 | array-union: 2.1.0 2125 | dir-glob: 3.0.1 2126 | fast-glob: 3.3.2 2127 | ignore: 5.3.1 2128 | merge2: 1.4.1 2129 | slash: 3.0.0 2130 | dev: false 2131 | 2132 | /gopd@1.0.1: 2133 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 2134 | dependencies: 2135 | get-intrinsic: 1.2.4 2136 | dev: false 2137 | 2138 | /graceful-fs@4.2.11: 2139 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 2140 | 2141 | /graphemer@1.4.0: 2142 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 2143 | dev: false 2144 | 2145 | /has-bigints@1.0.2: 2146 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 2147 | dev: false 2148 | 2149 | /has-flag@4.0.0: 2150 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 2151 | engines: {node: '>=8'} 2152 | dev: false 2153 | 2154 | /has-property-descriptors@1.0.2: 2155 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 2156 | dependencies: 2157 | es-define-property: 1.0.0 2158 | dev: false 2159 | 2160 | /has-proto@1.0.3: 2161 | resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} 2162 | engines: {node: '>= 0.4'} 2163 | dev: false 2164 | 2165 | /has-symbols@1.0.3: 2166 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 2167 | engines: {node: '>= 0.4'} 2168 | dev: false 2169 | 2170 | /has-tostringtag@1.0.2: 2171 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 2172 | engines: {node: '>= 0.4'} 2173 | dependencies: 2174 | has-symbols: 1.0.3 2175 | dev: false 2176 | 2177 | /has-unicode@2.0.1: 2178 | resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} 2179 | dev: true 2180 | 2181 | /hasown@2.0.2: 2182 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 2183 | engines: {node: '>= 0.4'} 2184 | dependencies: 2185 | function-bind: 1.1.2 2186 | dev: false 2187 | 2188 | /http-errors@1.4.0: 2189 | resolution: {integrity: sha512-oLjPqve1tuOl5aRhv8GK5eHpqP1C9fb+Ol+XTLjKfLltE44zdDbEdjPSbU7Ch5rSNsVFqZn97SrMmZLdu1/YMw==} 2190 | engines: {node: '>= 0.6'} 2191 | dependencies: 2192 | inherits: 2.0.1 2193 | statuses: 1.5.0 2194 | dev: true 2195 | 2196 | /http-errors@1.7.3: 2197 | resolution: {integrity: sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==} 2198 | engines: {node: '>= 0.6'} 2199 | dependencies: 2200 | depd: 1.1.2 2201 | inherits: 2.0.4 2202 | setprototypeof: 1.1.1 2203 | statuses: 1.5.0 2204 | toidentifier: 1.0.0 2205 | dev: true 2206 | 2207 | /https-proxy-agent@5.0.1: 2208 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} 2209 | engines: {node: '>= 6'} 2210 | dependencies: 2211 | agent-base: 6.0.2 2212 | debug: 4.3.4 2213 | transitivePeerDependencies: 2214 | - supports-color 2215 | dev: true 2216 | 2217 | /human-signals@1.1.1: 2218 | resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} 2219 | engines: {node: '>=8.12.0'} 2220 | dev: true 2221 | 2222 | /iconv-lite@0.4.24: 2223 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 2224 | engines: {node: '>=0.10.0'} 2225 | dependencies: 2226 | safer-buffer: 2.1.2 2227 | dev: true 2228 | 2229 | /ignore@5.3.1: 2230 | resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} 2231 | engines: {node: '>= 4'} 2232 | dev: false 2233 | 2234 | /import-fresh@3.3.0: 2235 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 2236 | engines: {node: '>=6'} 2237 | dependencies: 2238 | parent-module: 1.0.1 2239 | resolve-from: 4.0.0 2240 | dev: false 2241 | 2242 | /imurmurhash@0.1.4: 2243 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 2244 | engines: {node: '>=0.8.19'} 2245 | dev: false 2246 | 2247 | /inflight@1.0.6: 2248 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 2249 | dependencies: 2250 | once: 1.4.0 2251 | wrappy: 1.0.2 2252 | 2253 | /inherits@2.0.1: 2254 | resolution: {integrity: sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==} 2255 | dev: true 2256 | 2257 | /inherits@2.0.4: 2258 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2259 | 2260 | /internal-slot@1.0.7: 2261 | resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} 2262 | engines: {node: '>= 0.4'} 2263 | dependencies: 2264 | es-errors: 1.3.0 2265 | hasown: 2.0.2 2266 | side-channel: 1.0.6 2267 | dev: false 2268 | 2269 | /is-array-buffer@3.0.4: 2270 | resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} 2271 | engines: {node: '>= 0.4'} 2272 | dependencies: 2273 | call-bind: 1.0.7 2274 | get-intrinsic: 1.2.4 2275 | dev: false 2276 | 2277 | /is-async-function@2.0.0: 2278 | resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} 2279 | engines: {node: '>= 0.4'} 2280 | dependencies: 2281 | has-tostringtag: 1.0.2 2282 | dev: false 2283 | 2284 | /is-bigint@1.0.4: 2285 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 2286 | dependencies: 2287 | has-bigints: 1.0.2 2288 | dev: false 2289 | 2290 | /is-binary-path@2.1.0: 2291 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 2292 | engines: {node: '>=8'} 2293 | dependencies: 2294 | binary-extensions: 2.2.0 2295 | dev: true 2296 | 2297 | /is-boolean-object@1.1.2: 2298 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 2299 | engines: {node: '>= 0.4'} 2300 | dependencies: 2301 | call-bind: 1.0.7 2302 | has-tostringtag: 1.0.2 2303 | dev: false 2304 | 2305 | /is-callable@1.2.7: 2306 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 2307 | engines: {node: '>= 0.4'} 2308 | dev: false 2309 | 2310 | /is-core-module@2.13.1: 2311 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} 2312 | dependencies: 2313 | hasown: 2.0.2 2314 | dev: false 2315 | 2316 | /is-date-object@1.0.5: 2317 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 2318 | engines: {node: '>= 0.4'} 2319 | dependencies: 2320 | has-tostringtag: 1.0.2 2321 | dev: false 2322 | 2323 | /is-extglob@2.1.1: 2324 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 2325 | engines: {node: '>=0.10.0'} 2326 | 2327 | /is-finalizationregistry@1.0.2: 2328 | resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} 2329 | dependencies: 2330 | call-bind: 1.0.7 2331 | dev: false 2332 | 2333 | /is-fullwidth-code-point@3.0.0: 2334 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 2335 | engines: {node: '>=8'} 2336 | 2337 | /is-generator-function@1.0.10: 2338 | resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} 2339 | engines: {node: '>= 0.4'} 2340 | dependencies: 2341 | has-tostringtag: 1.0.2 2342 | dev: false 2343 | 2344 | /is-glob@4.0.3: 2345 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 2346 | engines: {node: '>=0.10.0'} 2347 | dependencies: 2348 | is-extglob: 2.1.1 2349 | 2350 | /is-map@2.0.3: 2351 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 2352 | engines: {node: '>= 0.4'} 2353 | dev: false 2354 | 2355 | /is-negative-zero@2.0.3: 2356 | resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} 2357 | engines: {node: '>= 0.4'} 2358 | dev: false 2359 | 2360 | /is-number-object@1.0.7: 2361 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 2362 | engines: {node: '>= 0.4'} 2363 | dependencies: 2364 | has-tostringtag: 1.0.2 2365 | dev: false 2366 | 2367 | /is-number@7.0.0: 2368 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 2369 | engines: {node: '>=0.12.0'} 2370 | 2371 | /is-path-inside@3.0.3: 2372 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 2373 | engines: {node: '>=8'} 2374 | dev: false 2375 | 2376 | /is-regex@1.1.4: 2377 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 2378 | engines: {node: '>= 0.4'} 2379 | dependencies: 2380 | call-bind: 1.0.7 2381 | has-tostringtag: 1.0.2 2382 | dev: false 2383 | 2384 | /is-set@2.0.3: 2385 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 2386 | engines: {node: '>= 0.4'} 2387 | dev: false 2388 | 2389 | /is-shared-array-buffer@1.0.3: 2390 | resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} 2391 | engines: {node: '>= 0.4'} 2392 | dependencies: 2393 | call-bind: 1.0.7 2394 | dev: false 2395 | 2396 | /is-stream@2.0.1: 2397 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 2398 | engines: {node: '>=8'} 2399 | dev: true 2400 | 2401 | /is-string@1.0.7: 2402 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 2403 | engines: {node: '>= 0.4'} 2404 | dependencies: 2405 | has-tostringtag: 1.0.2 2406 | dev: false 2407 | 2408 | /is-symbol@1.0.4: 2409 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 2410 | engines: {node: '>= 0.4'} 2411 | dependencies: 2412 | has-symbols: 1.0.3 2413 | dev: false 2414 | 2415 | /is-typed-array@1.1.13: 2416 | resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} 2417 | engines: {node: '>= 0.4'} 2418 | dependencies: 2419 | which-typed-array: 1.1.15 2420 | dev: false 2421 | 2422 | /is-weakmap@2.0.2: 2423 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 2424 | engines: {node: '>= 0.4'} 2425 | dev: false 2426 | 2427 | /is-weakref@1.0.2: 2428 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 2429 | dependencies: 2430 | call-bind: 1.0.7 2431 | dev: false 2432 | 2433 | /is-weakset@2.0.3: 2434 | resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} 2435 | engines: {node: '>= 0.4'} 2436 | dependencies: 2437 | call-bind: 1.0.7 2438 | get-intrinsic: 1.2.4 2439 | dev: false 2440 | 2441 | /isarray@0.0.1: 2442 | resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} 2443 | dev: true 2444 | 2445 | /isarray@2.0.5: 2446 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 2447 | dev: false 2448 | 2449 | /isexe@2.0.0: 2450 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 2451 | 2452 | /iterator.prototype@1.1.2: 2453 | resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} 2454 | dependencies: 2455 | define-properties: 1.2.1 2456 | get-intrinsic: 1.2.4 2457 | has-symbols: 1.0.3 2458 | reflect.getprototypeof: 1.0.5 2459 | set-function-name: 2.0.2 2460 | dev: false 2461 | 2462 | /jackspeak@2.3.6: 2463 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 2464 | engines: {node: '>=14'} 2465 | dependencies: 2466 | '@isaacs/cliui': 8.0.2 2467 | optionalDependencies: 2468 | '@pkgjs/parseargs': 0.11.0 2469 | dev: false 2470 | 2471 | /js-tokens@4.0.0: 2472 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2473 | dev: false 2474 | 2475 | /js-yaml@4.1.0: 2476 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 2477 | hasBin: true 2478 | dependencies: 2479 | argparse: 2.0.1 2480 | dev: false 2481 | 2482 | /json-buffer@3.0.1: 2483 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 2484 | dev: false 2485 | 2486 | /json-schema-to-ts@1.6.4: 2487 | resolution: {integrity: sha512-pR4yQ9DHz6itqswtHCm26mw45FSNfQ9rEQjosaZErhn5J3J2sIViQiz8rDaezjKAhFGpmsoczYVBgGHzFw/stA==} 2488 | dependencies: 2489 | '@types/json-schema': 7.0.15 2490 | ts-toolbelt: 6.15.5 2491 | dev: true 2492 | 2493 | /json-schema-traverse@0.4.1: 2494 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 2495 | 2496 | /json-schema-traverse@1.0.0: 2497 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 2498 | dev: true 2499 | 2500 | /json-stable-stringify-without-jsonify@1.0.1: 2501 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 2502 | dev: false 2503 | 2504 | /json5@1.0.2: 2505 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} 2506 | hasBin: true 2507 | dependencies: 2508 | minimist: 1.2.8 2509 | dev: false 2510 | 2511 | /jsonfile@4.0.0: 2512 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 2513 | optionalDependencies: 2514 | graceful-fs: 4.2.11 2515 | dev: true 2516 | 2517 | /jsonfile@6.1.0: 2518 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 2519 | dependencies: 2520 | universalify: 2.0.1 2521 | optionalDependencies: 2522 | graceful-fs: 4.2.11 2523 | dev: true 2524 | 2525 | /jsx-ast-utils@3.3.5: 2526 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} 2527 | engines: {node: '>=4.0'} 2528 | dependencies: 2529 | array-includes: 3.1.7 2530 | array.prototype.flat: 1.3.2 2531 | object.assign: 4.1.5 2532 | object.values: 1.1.7 2533 | dev: false 2534 | 2535 | /keyv@4.5.4: 2536 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 2537 | dependencies: 2538 | json-buffer: 3.0.1 2539 | dev: false 2540 | 2541 | /language-subtag-registry@0.3.22: 2542 | resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} 2543 | dev: false 2544 | 2545 | /language-tags@1.0.9: 2546 | resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} 2547 | engines: {node: '>=0.10'} 2548 | dependencies: 2549 | language-subtag-registry: 0.3.22 2550 | dev: false 2551 | 2552 | /levn@0.4.1: 2553 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 2554 | engines: {node: '>= 0.8.0'} 2555 | dependencies: 2556 | prelude-ls: 1.2.1 2557 | type-check: 0.4.0 2558 | dev: false 2559 | 2560 | /locate-path@6.0.0: 2561 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2562 | engines: {node: '>=10'} 2563 | dependencies: 2564 | p-locate: 5.0.0 2565 | dev: false 2566 | 2567 | /lodash.merge@4.6.2: 2568 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2569 | dev: false 2570 | 2571 | /loose-envify@1.4.0: 2572 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 2573 | hasBin: true 2574 | dependencies: 2575 | js-tokens: 4.0.0 2576 | dev: false 2577 | 2578 | /lru-cache@10.2.0: 2579 | resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} 2580 | engines: {node: 14 || >=16.14} 2581 | dev: false 2582 | 2583 | /lru-cache@6.0.0: 2584 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 2585 | engines: {node: '>=10'} 2586 | dependencies: 2587 | yallist: 4.0.0 2588 | 2589 | /make-dir@3.1.0: 2590 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} 2591 | engines: {node: '>=8'} 2592 | dependencies: 2593 | semver: 6.3.1 2594 | dev: true 2595 | 2596 | /make-error@1.3.6: 2597 | resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} 2598 | dev: true 2599 | 2600 | /merge-stream@2.0.0: 2601 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 2602 | dev: true 2603 | 2604 | /merge2@1.4.1: 2605 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2606 | engines: {node: '>= 8'} 2607 | 2608 | /micro@9.3.5-canary.3: 2609 | resolution: {integrity: sha512-viYIo9PefV+w9dvoIBh1gI44Mvx1BOk67B4BpC2QK77qdY0xZF0Q+vWLt/BII6cLkIc8rLmSIcJaB/OrXXKe1g==} 2610 | engines: {node: '>= 8.0.0'} 2611 | hasBin: true 2612 | dependencies: 2613 | arg: 4.1.0 2614 | content-type: 1.0.4 2615 | raw-body: 2.4.1 2616 | dev: true 2617 | 2618 | /micromatch@4.0.5: 2619 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 2620 | engines: {node: '>=8.6'} 2621 | dependencies: 2622 | braces: 3.0.2 2623 | picomatch: 2.3.1 2624 | 2625 | /mimic-fn@2.1.0: 2626 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 2627 | engines: {node: '>=6'} 2628 | dev: true 2629 | 2630 | /minimatch@3.1.2: 2631 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2632 | dependencies: 2633 | brace-expansion: 1.1.11 2634 | 2635 | /minimatch@9.0.3: 2636 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 2637 | engines: {node: '>=16 || 14 >=14.17'} 2638 | dependencies: 2639 | brace-expansion: 2.0.1 2640 | dev: false 2641 | 2642 | /minimist@1.2.8: 2643 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 2644 | 2645 | /minipass@2.9.0: 2646 | resolution: {integrity: sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==} 2647 | dependencies: 2648 | safe-buffer: 5.2.1 2649 | yallist: 3.1.1 2650 | dev: true 2651 | 2652 | /minipass@3.3.6: 2653 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} 2654 | engines: {node: '>=8'} 2655 | dependencies: 2656 | yallist: 4.0.0 2657 | dev: true 2658 | 2659 | /minipass@5.0.0: 2660 | resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} 2661 | engines: {node: '>=8'} 2662 | dev: true 2663 | 2664 | /minipass@7.0.4: 2665 | resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} 2666 | engines: {node: '>=16 || 14 >=14.17'} 2667 | dev: false 2668 | 2669 | /minizlib@1.3.3: 2670 | resolution: {integrity: sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==} 2671 | dependencies: 2672 | minipass: 2.9.0 2673 | dev: true 2674 | 2675 | /minizlib@2.1.2: 2676 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} 2677 | engines: {node: '>= 8'} 2678 | dependencies: 2679 | minipass: 3.3.6 2680 | yallist: 4.0.0 2681 | dev: true 2682 | 2683 | /mkdirp@0.5.6: 2684 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} 2685 | hasBin: true 2686 | dependencies: 2687 | minimist: 1.2.8 2688 | dev: true 2689 | 2690 | /mkdirp@1.0.4: 2691 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 2692 | engines: {node: '>=10'} 2693 | hasBin: true 2694 | dev: true 2695 | 2696 | /mri@1.2.0: 2697 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 2698 | engines: {node: '>=4'} 2699 | dev: true 2700 | 2701 | /ms@2.1.1: 2702 | resolution: {integrity: sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==} 2703 | dev: true 2704 | 2705 | /ms@2.1.2: 2706 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 2707 | 2708 | /ms@2.1.3: 2709 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 2710 | 2711 | /nanoid@3.3.7: 2712 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 2713 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 2714 | hasBin: true 2715 | dev: false 2716 | 2717 | /natural-compare@1.4.0: 2718 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 2719 | dev: false 2720 | 2721 | /next@14.1.3(react-dom@18.2.0)(react@18.2.0): 2722 | resolution: {integrity: sha512-oexgMV2MapI0UIWiXKkixF8J8ORxpy64OuJ/J9oVUmIthXOUCcuVEZX+dtpgq7wIfIqtBwQsKEDXejcjTsan9g==} 2723 | engines: {node: '>=18.17.0'} 2724 | hasBin: true 2725 | peerDependencies: 2726 | '@opentelemetry/api': ^1.1.0 2727 | react: ^18.2.0 2728 | react-dom: ^18.2.0 2729 | sass: ^1.3.0 2730 | peerDependenciesMeta: 2731 | '@opentelemetry/api': 2732 | optional: true 2733 | sass: 2734 | optional: true 2735 | dependencies: 2736 | '@next/env': 14.1.3 2737 | '@swc/helpers': 0.5.2 2738 | busboy: 1.6.0 2739 | caniuse-lite: 1.0.30001597 2740 | graceful-fs: 4.2.11 2741 | postcss: 8.4.31 2742 | react: 18.2.0 2743 | react-dom: 18.2.0(react@18.2.0) 2744 | styled-jsx: 5.1.1(react@18.2.0) 2745 | optionalDependencies: 2746 | '@next/swc-darwin-arm64': 14.1.3 2747 | '@next/swc-darwin-x64': 14.1.3 2748 | '@next/swc-linux-arm64-gnu': 14.1.3 2749 | '@next/swc-linux-arm64-musl': 14.1.3 2750 | '@next/swc-linux-x64-gnu': 14.1.3 2751 | '@next/swc-linux-x64-musl': 14.1.3 2752 | '@next/swc-win32-arm64-msvc': 14.1.3 2753 | '@next/swc-win32-ia32-msvc': 14.1.3 2754 | '@next/swc-win32-x64-msvc': 14.1.3 2755 | transitivePeerDependencies: 2756 | - '@babel/core' 2757 | - babel-plugin-macros 2758 | dev: false 2759 | 2760 | /node-fetch@2.6.7: 2761 | resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} 2762 | engines: {node: 4.x || >=6.0.0} 2763 | peerDependencies: 2764 | encoding: ^0.1.0 2765 | peerDependenciesMeta: 2766 | encoding: 2767 | optional: true 2768 | dependencies: 2769 | whatwg-url: 5.0.0 2770 | dev: true 2771 | 2772 | /node-fetch@2.6.9: 2773 | resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} 2774 | engines: {node: 4.x || >=6.0.0} 2775 | peerDependencies: 2776 | encoding: ^0.1.0 2777 | peerDependenciesMeta: 2778 | encoding: 2779 | optional: true 2780 | dependencies: 2781 | whatwg-url: 5.0.0 2782 | dev: true 2783 | 2784 | /node-fetch@2.7.0: 2785 | resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} 2786 | engines: {node: 4.x || >=6.0.0} 2787 | peerDependencies: 2788 | encoding: ^0.1.0 2789 | peerDependenciesMeta: 2790 | encoding: 2791 | optional: true 2792 | dependencies: 2793 | whatwg-url: 5.0.0 2794 | dev: true 2795 | 2796 | /node-gyp-build@4.8.0: 2797 | resolution: {integrity: sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==} 2798 | hasBin: true 2799 | dev: true 2800 | 2801 | /nopt@5.0.0: 2802 | resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} 2803 | engines: {node: '>=6'} 2804 | hasBin: true 2805 | dependencies: 2806 | abbrev: 1.1.1 2807 | dev: true 2808 | 2809 | /normalize-path@3.0.0: 2810 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 2811 | engines: {node: '>=0.10.0'} 2812 | dev: true 2813 | 2814 | /npm-run-path@4.0.1: 2815 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 2816 | engines: {node: '>=8'} 2817 | dependencies: 2818 | path-key: 3.1.1 2819 | dev: true 2820 | 2821 | /npmlog@5.0.1: 2822 | resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} 2823 | dependencies: 2824 | are-we-there-yet: 2.0.0 2825 | console-control-strings: 1.1.0 2826 | gauge: 3.0.2 2827 | set-blocking: 2.0.0 2828 | dev: true 2829 | 2830 | /object-assign@4.1.1: 2831 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 2832 | engines: {node: '>=0.10.0'} 2833 | 2834 | /object-inspect@1.13.1: 2835 | resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} 2836 | dev: false 2837 | 2838 | /object-keys@1.1.1: 2839 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 2840 | engines: {node: '>= 0.4'} 2841 | dev: false 2842 | 2843 | /object.assign@4.1.5: 2844 | resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} 2845 | engines: {node: '>= 0.4'} 2846 | dependencies: 2847 | call-bind: 1.0.7 2848 | define-properties: 1.2.1 2849 | has-symbols: 1.0.3 2850 | object-keys: 1.1.1 2851 | dev: false 2852 | 2853 | /object.entries@1.1.7: 2854 | resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} 2855 | engines: {node: '>= 0.4'} 2856 | dependencies: 2857 | call-bind: 1.0.7 2858 | define-properties: 1.2.1 2859 | es-abstract: 1.22.5 2860 | dev: false 2861 | 2862 | /object.fromentries@2.0.7: 2863 | resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} 2864 | engines: {node: '>= 0.4'} 2865 | dependencies: 2866 | call-bind: 1.0.7 2867 | define-properties: 1.2.1 2868 | es-abstract: 1.22.5 2869 | dev: false 2870 | 2871 | /object.groupby@1.0.2: 2872 | resolution: {integrity: sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw==} 2873 | dependencies: 2874 | array.prototype.filter: 1.0.3 2875 | call-bind: 1.0.7 2876 | define-properties: 1.2.1 2877 | es-abstract: 1.22.5 2878 | es-errors: 1.3.0 2879 | dev: false 2880 | 2881 | /object.hasown@1.1.3: 2882 | resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} 2883 | dependencies: 2884 | define-properties: 1.2.1 2885 | es-abstract: 1.22.5 2886 | dev: false 2887 | 2888 | /object.values@1.1.7: 2889 | resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} 2890 | engines: {node: '>= 0.4'} 2891 | dependencies: 2892 | call-bind: 1.0.7 2893 | define-properties: 1.2.1 2894 | es-abstract: 1.22.5 2895 | dev: false 2896 | 2897 | /once@1.3.3: 2898 | resolution: {integrity: sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==} 2899 | dependencies: 2900 | wrappy: 1.0.2 2901 | dev: true 2902 | 2903 | /once@1.4.0: 2904 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2905 | dependencies: 2906 | wrappy: 1.0.2 2907 | 2908 | /onetime@5.1.2: 2909 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 2910 | engines: {node: '>=6'} 2911 | dependencies: 2912 | mimic-fn: 2.1.0 2913 | dev: true 2914 | 2915 | /optionator@0.9.3: 2916 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 2917 | engines: {node: '>= 0.8.0'} 2918 | dependencies: 2919 | '@aashutoshrathi/word-wrap': 1.2.6 2920 | deep-is: 0.1.4 2921 | fast-levenshtein: 2.0.6 2922 | levn: 0.4.1 2923 | prelude-ls: 1.2.1 2924 | type-check: 0.4.0 2925 | dev: false 2926 | 2927 | /os-paths@4.4.0: 2928 | resolution: {integrity: sha512-wrAwOeXp1RRMFfQY8Sy7VaGVmPocaLwSFOYCGKSyo8qmJ+/yaafCl5BCA1IQZWqFSRBrKDYFeR9d/VyQzfH/jg==} 2929 | engines: {node: '>= 6.0'} 2930 | dev: true 2931 | 2932 | /p-finally@2.0.1: 2933 | resolution: {integrity: sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==} 2934 | engines: {node: '>=8'} 2935 | dev: true 2936 | 2937 | /p-limit@3.1.0: 2938 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 2939 | engines: {node: '>=10'} 2940 | dependencies: 2941 | yocto-queue: 0.1.0 2942 | dev: false 2943 | 2944 | /p-locate@5.0.0: 2945 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 2946 | engines: {node: '>=10'} 2947 | dependencies: 2948 | p-limit: 3.1.0 2949 | dev: false 2950 | 2951 | /parent-module@1.0.1: 2952 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2953 | engines: {node: '>=6'} 2954 | dependencies: 2955 | callsites: 3.1.0 2956 | dev: false 2957 | 2958 | /parse-ms@2.1.0: 2959 | resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==} 2960 | engines: {node: '>=6'} 2961 | dev: true 2962 | 2963 | /path-browserify@1.0.1: 2964 | resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} 2965 | dev: true 2966 | 2967 | /path-exists@4.0.0: 2968 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 2969 | engines: {node: '>=8'} 2970 | dev: false 2971 | 2972 | /path-is-absolute@1.0.1: 2973 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2974 | engines: {node: '>=0.10.0'} 2975 | 2976 | /path-key@3.1.1: 2977 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2978 | engines: {node: '>=8'} 2979 | 2980 | /path-match@1.2.4: 2981 | resolution: {integrity: sha512-UWlehEdqu36jmh4h5CWJ7tARp1OEVKGHKm6+dg9qMq5RKUTV5WJrGgaZ3dN2m7WFAXDbjlHzvJvL/IUpy84Ktw==} 2982 | dependencies: 2983 | http-errors: 1.4.0 2984 | path-to-regexp: 1.8.0 2985 | dev: true 2986 | 2987 | /path-parse@1.0.7: 2988 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2989 | dev: false 2990 | 2991 | /path-scurry@1.10.1: 2992 | resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} 2993 | engines: {node: '>=16 || 14 >=14.17'} 2994 | dependencies: 2995 | lru-cache: 10.2.0 2996 | minipass: 7.0.4 2997 | dev: false 2998 | 2999 | /path-to-regexp@1.8.0: 3000 | resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} 3001 | dependencies: 3002 | isarray: 0.0.1 3003 | dev: true 3004 | 3005 | /path-to-regexp@6.1.0: 3006 | resolution: {integrity: sha512-h9DqehX3zZZDCEm+xbfU0ZmwCGFCAAraPJWMXJ4+v32NjZJilVg3k1TcKsRgIb8IQ/izZSaydDc1OhJCZvs2Dw==} 3007 | dev: true 3008 | 3009 | /path-to-regexp@6.2.1: 3010 | resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} 3011 | dev: true 3012 | 3013 | /path-type@4.0.0: 3014 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 3015 | engines: {node: '>=8'} 3016 | dev: false 3017 | 3018 | /pend@1.2.0: 3019 | resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} 3020 | dev: true 3021 | 3022 | /picocolors@1.0.0: 3023 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 3024 | 3025 | /picomatch@2.3.1: 3026 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3027 | engines: {node: '>=8.6'} 3028 | 3029 | /possible-typed-array-names@1.0.0: 3030 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} 3031 | engines: {node: '>= 0.4'} 3032 | dev: false 3033 | 3034 | /postcss@8.4.31: 3035 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 3036 | engines: {node: ^10 || ^12 || >=14} 3037 | dependencies: 3038 | nanoid: 3.3.7 3039 | picocolors: 1.0.0 3040 | source-map-js: 1.0.2 3041 | dev: false 3042 | 3043 | /prelude-ls@1.2.1: 3044 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 3045 | engines: {node: '>= 0.8.0'} 3046 | dev: false 3047 | 3048 | /pretty-ms@7.0.1: 3049 | resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==} 3050 | engines: {node: '>=10'} 3051 | dependencies: 3052 | parse-ms: 2.1.0 3053 | dev: true 3054 | 3055 | /promisepipe@3.0.0: 3056 | resolution: {integrity: sha512-V6TbZDJ/ZswevgkDNpGt/YqNCiZP9ASfgU+p83uJE6NrGtvSGoOcHLiDCqkMs2+yg7F5qHdLV8d0aS8O26G/KA==} 3057 | dev: true 3058 | 3059 | /prop-types@15.8.1: 3060 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} 3061 | dependencies: 3062 | loose-envify: 1.4.0 3063 | object-assign: 4.1.1 3064 | react-is: 16.13.1 3065 | dev: false 3066 | 3067 | /pump@3.0.0: 3068 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 3069 | dependencies: 3070 | end-of-stream: 1.4.4 3071 | once: 1.4.0 3072 | dev: true 3073 | 3074 | /punycode@2.3.1: 3075 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 3076 | engines: {node: '>=6'} 3077 | 3078 | /queue-microtask@1.2.3: 3079 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 3080 | 3081 | /raw-body@2.4.1: 3082 | resolution: {integrity: sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==} 3083 | engines: {node: '>= 0.8'} 3084 | dependencies: 3085 | bytes: 3.1.0 3086 | http-errors: 1.7.3 3087 | iconv-lite: 0.4.24 3088 | unpipe: 1.0.0 3089 | dev: true 3090 | 3091 | /react-dom@18.2.0(react@18.2.0): 3092 | resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} 3093 | peerDependencies: 3094 | react: ^18.2.0 3095 | dependencies: 3096 | loose-envify: 1.4.0 3097 | react: 18.2.0 3098 | scheduler: 0.23.0 3099 | dev: false 3100 | 3101 | /react-is@16.13.1: 3102 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} 3103 | dev: false 3104 | 3105 | /react@18.2.0: 3106 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} 3107 | engines: {node: '>=0.10.0'} 3108 | dependencies: 3109 | loose-envify: 1.4.0 3110 | dev: false 3111 | 3112 | /readable-stream@3.6.2: 3113 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 3114 | engines: {node: '>= 6'} 3115 | dependencies: 3116 | inherits: 2.0.4 3117 | string_decoder: 1.3.0 3118 | util-deprecate: 1.0.2 3119 | dev: true 3120 | 3121 | /readdirp@3.3.0: 3122 | resolution: {integrity: sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==} 3123 | engines: {node: '>=8.10.0'} 3124 | dependencies: 3125 | picomatch: 2.3.1 3126 | dev: true 3127 | 3128 | /reflect.getprototypeof@1.0.5: 3129 | resolution: {integrity: sha512-62wgfC8dJWrmxv44CA36pLDnP6KKl3Vhxb7PL+8+qrrFMMoJij4vgiMP8zV4O8+CBMXY1mHxI5fITGHXFHVmQQ==} 3130 | engines: {node: '>= 0.4'} 3131 | dependencies: 3132 | call-bind: 1.0.7 3133 | define-properties: 1.2.1 3134 | es-abstract: 1.22.5 3135 | es-errors: 1.3.0 3136 | get-intrinsic: 1.2.4 3137 | globalthis: 1.0.3 3138 | which-builtin-type: 1.1.3 3139 | dev: false 3140 | 3141 | /regenerator-runtime@0.14.1: 3142 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 3143 | dev: false 3144 | 3145 | /regexp.prototype.flags@1.5.2: 3146 | resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} 3147 | engines: {node: '>= 0.4'} 3148 | dependencies: 3149 | call-bind: 1.0.7 3150 | define-properties: 1.2.1 3151 | es-errors: 1.3.0 3152 | set-function-name: 2.0.2 3153 | dev: false 3154 | 3155 | /require-from-string@2.0.2: 3156 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 3157 | engines: {node: '>=0.10.0'} 3158 | dev: true 3159 | 3160 | /resolve-from@4.0.0: 3161 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 3162 | engines: {node: '>=4'} 3163 | dev: false 3164 | 3165 | /resolve-from@5.0.0: 3166 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 3167 | engines: {node: '>=8'} 3168 | dev: true 3169 | 3170 | /resolve-pkg-maps@1.0.0: 3171 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 3172 | dev: false 3173 | 3174 | /resolve@1.22.8: 3175 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 3176 | hasBin: true 3177 | dependencies: 3178 | is-core-module: 2.13.1 3179 | path-parse: 1.0.7 3180 | supports-preserve-symlinks-flag: 1.0.0 3181 | dev: false 3182 | 3183 | /resolve@2.0.0-next.5: 3184 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} 3185 | hasBin: true 3186 | dependencies: 3187 | is-core-module: 2.13.1 3188 | path-parse: 1.0.7 3189 | supports-preserve-symlinks-flag: 1.0.0 3190 | dev: false 3191 | 3192 | /reusify@1.0.4: 3193 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 3194 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 3195 | 3196 | /rimraf@3.0.2: 3197 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 3198 | hasBin: true 3199 | dependencies: 3200 | glob: 7.2.3 3201 | 3202 | /run-parallel@1.2.0: 3203 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 3204 | dependencies: 3205 | queue-microtask: 1.2.3 3206 | 3207 | /safe-array-concat@1.1.2: 3208 | resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} 3209 | engines: {node: '>=0.4'} 3210 | dependencies: 3211 | call-bind: 1.0.7 3212 | get-intrinsic: 1.2.4 3213 | has-symbols: 1.0.3 3214 | isarray: 2.0.5 3215 | dev: false 3216 | 3217 | /safe-buffer@5.2.1: 3218 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 3219 | dev: true 3220 | 3221 | /safe-regex-test@1.0.3: 3222 | resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} 3223 | engines: {node: '>= 0.4'} 3224 | dependencies: 3225 | call-bind: 1.0.7 3226 | es-errors: 1.3.0 3227 | is-regex: 1.1.4 3228 | dev: false 3229 | 3230 | /safer-buffer@2.1.2: 3231 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 3232 | dev: true 3233 | 3234 | /scheduler@0.23.0: 3235 | resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} 3236 | dependencies: 3237 | loose-envify: 1.4.0 3238 | dev: false 3239 | 3240 | /semver@6.3.1: 3241 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 3242 | hasBin: true 3243 | 3244 | /semver@7.3.5: 3245 | resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} 3246 | engines: {node: '>=10'} 3247 | hasBin: true 3248 | dependencies: 3249 | lru-cache: 6.0.0 3250 | dev: true 3251 | 3252 | /semver@7.6.0: 3253 | resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} 3254 | engines: {node: '>=10'} 3255 | hasBin: true 3256 | dependencies: 3257 | lru-cache: 6.0.0 3258 | 3259 | /set-blocking@2.0.0: 3260 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 3261 | dev: true 3262 | 3263 | /set-function-length@1.2.2: 3264 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} 3265 | engines: {node: '>= 0.4'} 3266 | dependencies: 3267 | define-data-property: 1.1.4 3268 | es-errors: 1.3.0 3269 | function-bind: 1.1.2 3270 | get-intrinsic: 1.2.4 3271 | gopd: 1.0.1 3272 | has-property-descriptors: 1.0.2 3273 | dev: false 3274 | 3275 | /set-function-name@2.0.2: 3276 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 3277 | engines: {node: '>= 0.4'} 3278 | dependencies: 3279 | define-data-property: 1.1.4 3280 | es-errors: 1.3.0 3281 | functions-have-names: 1.2.3 3282 | has-property-descriptors: 1.0.2 3283 | dev: false 3284 | 3285 | /setprototypeof@1.1.1: 3286 | resolution: {integrity: sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==} 3287 | dev: true 3288 | 3289 | /shebang-command@2.0.0: 3290 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 3291 | engines: {node: '>=8'} 3292 | dependencies: 3293 | shebang-regex: 3.0.0 3294 | 3295 | /shebang-regex@3.0.0: 3296 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 3297 | engines: {node: '>=8'} 3298 | 3299 | /side-channel@1.0.6: 3300 | resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} 3301 | engines: {node: '>= 0.4'} 3302 | dependencies: 3303 | call-bind: 1.0.7 3304 | es-errors: 1.3.0 3305 | get-intrinsic: 1.2.4 3306 | object-inspect: 1.13.1 3307 | dev: false 3308 | 3309 | /signal-exit@3.0.7: 3310 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 3311 | dev: true 3312 | 3313 | /signal-exit@4.0.2: 3314 | resolution: {integrity: sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==} 3315 | engines: {node: '>=14'} 3316 | dev: true 3317 | 3318 | /signal-exit@4.1.0: 3319 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 3320 | engines: {node: '>=14'} 3321 | dev: false 3322 | 3323 | /slash@3.0.0: 3324 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 3325 | engines: {node: '>=8'} 3326 | dev: false 3327 | 3328 | /source-map-js@1.0.2: 3329 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 3330 | engines: {node: '>=0.10.0'} 3331 | dev: false 3332 | 3333 | /stat-mode@0.3.0: 3334 | resolution: {integrity: sha512-QjMLR0A3WwFY2aZdV0okfFEJB5TRjkggXZjxP3A1RsWsNHNu3YPv8btmtc6iCFZ0Rul3FE93OYogvhOUClU+ng==} 3335 | dev: true 3336 | 3337 | /statuses@1.5.0: 3338 | resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} 3339 | engines: {node: '>= 0.6'} 3340 | dev: true 3341 | 3342 | /stream-to-array@2.3.0: 3343 | resolution: {integrity: sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==} 3344 | dependencies: 3345 | any-promise: 1.3.0 3346 | dev: true 3347 | 3348 | /stream-to-promise@2.2.0: 3349 | resolution: {integrity: sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==} 3350 | dependencies: 3351 | any-promise: 1.3.0 3352 | end-of-stream: 1.1.0 3353 | stream-to-array: 2.3.0 3354 | dev: true 3355 | 3356 | /streamsearch@1.1.0: 3357 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 3358 | engines: {node: '>=10.0.0'} 3359 | dev: false 3360 | 3361 | /string-width@4.2.3: 3362 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 3363 | engines: {node: '>=8'} 3364 | dependencies: 3365 | emoji-regex: 8.0.0 3366 | is-fullwidth-code-point: 3.0.0 3367 | strip-ansi: 6.0.1 3368 | 3369 | /string-width@5.1.2: 3370 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 3371 | engines: {node: '>=12'} 3372 | dependencies: 3373 | eastasianwidth: 0.2.0 3374 | emoji-regex: 9.2.2 3375 | strip-ansi: 7.1.0 3376 | dev: false 3377 | 3378 | /string.prototype.matchall@4.0.10: 3379 | resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} 3380 | dependencies: 3381 | call-bind: 1.0.7 3382 | define-properties: 1.2.1 3383 | es-abstract: 1.22.5 3384 | get-intrinsic: 1.2.4 3385 | has-symbols: 1.0.3 3386 | internal-slot: 1.0.7 3387 | regexp.prototype.flags: 1.5.2 3388 | set-function-name: 2.0.2 3389 | side-channel: 1.0.6 3390 | dev: false 3391 | 3392 | /string.prototype.trim@1.2.8: 3393 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} 3394 | engines: {node: '>= 0.4'} 3395 | dependencies: 3396 | call-bind: 1.0.7 3397 | define-properties: 1.2.1 3398 | es-abstract: 1.22.5 3399 | dev: false 3400 | 3401 | /string.prototype.trimend@1.0.7: 3402 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} 3403 | dependencies: 3404 | call-bind: 1.0.7 3405 | define-properties: 1.2.1 3406 | es-abstract: 1.22.5 3407 | dev: false 3408 | 3409 | /string.prototype.trimstart@1.0.7: 3410 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} 3411 | dependencies: 3412 | call-bind: 1.0.7 3413 | define-properties: 1.2.1 3414 | es-abstract: 1.22.5 3415 | dev: false 3416 | 3417 | /string_decoder@1.3.0: 3418 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 3419 | dependencies: 3420 | safe-buffer: 5.2.1 3421 | dev: true 3422 | 3423 | /strip-ansi@6.0.1: 3424 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 3425 | engines: {node: '>=8'} 3426 | dependencies: 3427 | ansi-regex: 5.0.1 3428 | 3429 | /strip-ansi@7.1.0: 3430 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 3431 | engines: {node: '>=12'} 3432 | dependencies: 3433 | ansi-regex: 6.0.1 3434 | dev: false 3435 | 3436 | /strip-bom@3.0.0: 3437 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 3438 | engines: {node: '>=4'} 3439 | dev: false 3440 | 3441 | /strip-final-newline@2.0.0: 3442 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 3443 | engines: {node: '>=6'} 3444 | dev: true 3445 | 3446 | /strip-json-comments@3.1.1: 3447 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 3448 | engines: {node: '>=8'} 3449 | dev: false 3450 | 3451 | /styled-jsx@5.1.1(react@18.2.0): 3452 | resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} 3453 | engines: {node: '>= 12.0.0'} 3454 | peerDependencies: 3455 | '@babel/core': '*' 3456 | babel-plugin-macros: '*' 3457 | react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' 3458 | peerDependenciesMeta: 3459 | '@babel/core': 3460 | optional: true 3461 | babel-plugin-macros: 3462 | optional: true 3463 | dependencies: 3464 | client-only: 0.0.1 3465 | react: 18.2.0 3466 | dev: false 3467 | 3468 | /supports-color@7.2.0: 3469 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 3470 | engines: {node: '>=8'} 3471 | dependencies: 3472 | has-flag: 4.0.0 3473 | dev: false 3474 | 3475 | /supports-preserve-symlinks-flag@1.0.0: 3476 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 3477 | engines: {node: '>= 0.4'} 3478 | dev: false 3479 | 3480 | /tapable@2.2.1: 3481 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} 3482 | engines: {node: '>=6'} 3483 | dev: false 3484 | 3485 | /tar@4.4.18: 3486 | resolution: {integrity: sha512-ZuOtqqmkV9RE1+4odd+MhBpibmCxNP6PJhH/h2OqNuotTX7/XHPZQJv2pKvWMplFH9SIZZhitehh6vBH6LO8Pg==} 3487 | engines: {node: '>=4.5'} 3488 | dependencies: 3489 | chownr: 1.1.4 3490 | fs-minipass: 1.2.7 3491 | minipass: 2.9.0 3492 | minizlib: 1.3.3 3493 | mkdirp: 0.5.6 3494 | safe-buffer: 5.2.1 3495 | yallist: 3.1.1 3496 | dev: true 3497 | 3498 | /tar@6.2.0: 3499 | resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} 3500 | engines: {node: '>=10'} 3501 | dependencies: 3502 | chownr: 2.0.0 3503 | fs-minipass: 2.1.0 3504 | minipass: 5.0.0 3505 | minizlib: 2.1.2 3506 | mkdirp: 1.0.4 3507 | yallist: 4.0.0 3508 | dev: true 3509 | 3510 | /text-table@0.2.0: 3511 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 3512 | dev: false 3513 | 3514 | /time-span@4.0.0: 3515 | resolution: {integrity: sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==} 3516 | engines: {node: '>=10'} 3517 | dependencies: 3518 | convert-hrtime: 3.0.0 3519 | dev: true 3520 | 3521 | /to-regex-range@5.0.1: 3522 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 3523 | engines: {node: '>=8.0'} 3524 | dependencies: 3525 | is-number: 7.0.0 3526 | 3527 | /toidentifier@1.0.0: 3528 | resolution: {integrity: sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==} 3529 | engines: {node: '>=0.6'} 3530 | dev: true 3531 | 3532 | /tr46@0.0.3: 3533 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 3534 | dev: true 3535 | 3536 | /tree-kill@1.2.2: 3537 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 3538 | hasBin: true 3539 | dev: true 3540 | 3541 | /ts-api-utils@1.3.0(typescript@5.4.2): 3542 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 3543 | engines: {node: '>=16'} 3544 | peerDependencies: 3545 | typescript: '>=4.2.0' 3546 | dependencies: 3547 | typescript: 5.4.2 3548 | dev: false 3549 | 3550 | /ts-morph@12.0.0: 3551 | resolution: {integrity: sha512-VHC8XgU2fFW7yO1f/b3mxKDje1vmyzFXHWzOYmKEkCEwcLjDtbdLgBQviqj4ZwP4MJkQtRo6Ha2I29lq/B+VxA==} 3552 | dependencies: 3553 | '@ts-morph/common': 0.11.1 3554 | code-block-writer: 10.1.1 3555 | dev: true 3556 | 3557 | /ts-node@10.9.1(@types/node@14.18.33)(typescript@4.9.5): 3558 | resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} 3559 | hasBin: true 3560 | peerDependencies: 3561 | '@swc/core': '>=1.2.50' 3562 | '@swc/wasm': '>=1.2.50' 3563 | '@types/node': '*' 3564 | typescript: '>=2.7' 3565 | peerDependenciesMeta: 3566 | '@swc/core': 3567 | optional: true 3568 | '@swc/wasm': 3569 | optional: true 3570 | dependencies: 3571 | '@cspotcode/source-map-support': 0.8.1 3572 | '@tsconfig/node10': 1.0.9 3573 | '@tsconfig/node12': 1.0.11 3574 | '@tsconfig/node14': 1.0.3 3575 | '@tsconfig/node16': 1.0.4 3576 | '@types/node': 14.18.33 3577 | acorn: 8.11.3 3578 | acorn-walk: 8.3.2 3579 | arg: 4.1.3 3580 | create-require: 1.1.1 3581 | diff: 4.0.2 3582 | make-error: 1.3.6 3583 | typescript: 4.9.5 3584 | v8-compile-cache-lib: 3.0.1 3585 | yn: 3.1.1 3586 | dev: true 3587 | 3588 | /ts-toolbelt@6.15.5: 3589 | resolution: {integrity: sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==} 3590 | dev: true 3591 | 3592 | /tsconfig-paths@3.15.0: 3593 | resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} 3594 | dependencies: 3595 | '@types/json5': 0.0.29 3596 | json5: 1.0.2 3597 | minimist: 1.2.8 3598 | strip-bom: 3.0.0 3599 | dev: false 3600 | 3601 | /tslib@2.6.2: 3602 | resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} 3603 | dev: false 3604 | 3605 | /type-check@0.4.0: 3606 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 3607 | engines: {node: '>= 0.8.0'} 3608 | dependencies: 3609 | prelude-ls: 1.2.1 3610 | dev: false 3611 | 3612 | /type-fest@0.20.2: 3613 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 3614 | engines: {node: '>=10'} 3615 | dev: false 3616 | 3617 | /typed-array-buffer@1.0.2: 3618 | resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} 3619 | engines: {node: '>= 0.4'} 3620 | dependencies: 3621 | call-bind: 1.0.7 3622 | es-errors: 1.3.0 3623 | is-typed-array: 1.1.13 3624 | dev: false 3625 | 3626 | /typed-array-byte-length@1.0.1: 3627 | resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} 3628 | engines: {node: '>= 0.4'} 3629 | dependencies: 3630 | call-bind: 1.0.7 3631 | for-each: 0.3.3 3632 | gopd: 1.0.1 3633 | has-proto: 1.0.3 3634 | is-typed-array: 1.1.13 3635 | dev: false 3636 | 3637 | /typed-array-byte-offset@1.0.2: 3638 | resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} 3639 | engines: {node: '>= 0.4'} 3640 | dependencies: 3641 | available-typed-arrays: 1.0.7 3642 | call-bind: 1.0.7 3643 | for-each: 0.3.3 3644 | gopd: 1.0.1 3645 | has-proto: 1.0.3 3646 | is-typed-array: 1.1.13 3647 | dev: false 3648 | 3649 | /typed-array-length@1.0.5: 3650 | resolution: {integrity: sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==} 3651 | engines: {node: '>= 0.4'} 3652 | dependencies: 3653 | call-bind: 1.0.7 3654 | for-each: 0.3.3 3655 | gopd: 1.0.1 3656 | has-proto: 1.0.3 3657 | is-typed-array: 1.1.13 3658 | possible-typed-array-names: 1.0.0 3659 | dev: false 3660 | 3661 | /typescript@4.9.5: 3662 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 3663 | engines: {node: '>=4.2.0'} 3664 | hasBin: true 3665 | dev: true 3666 | 3667 | /typescript@5.4.2: 3668 | resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} 3669 | engines: {node: '>=14.17'} 3670 | hasBin: true 3671 | dev: false 3672 | 3673 | /uid-promise@1.0.0: 3674 | resolution: {integrity: sha512-R8375j0qwXyIu/7R0tjdF06/sElHqbmdmWC9M2qQHpEVbvE4I5+38KJI7LUUmQMp7NVq4tKHiBMkT0NFM453Ig==} 3675 | dev: true 3676 | 3677 | /unbox-primitive@1.0.2: 3678 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 3679 | dependencies: 3680 | call-bind: 1.0.7 3681 | has-bigints: 1.0.2 3682 | has-symbols: 1.0.3 3683 | which-boxed-primitive: 1.0.2 3684 | dev: false 3685 | 3686 | /undici-types@5.26.5: 3687 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 3688 | dev: false 3689 | 3690 | /undici@5.26.5: 3691 | resolution: {integrity: sha512-cSb4bPFd5qgR7qr2jYAi0hlX9n5YKK2ONKkLFkxl+v/9BvC0sOpZjBHDBSXc5lWAf5ty9oZdRXytBIHzgUcerw==} 3692 | engines: {node: '>=14.0'} 3693 | dependencies: 3694 | '@fastify/busboy': 2.1.1 3695 | dev: true 3696 | 3697 | /universalify@0.1.2: 3698 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 3699 | engines: {node: '>= 4.0.0'} 3700 | dev: true 3701 | 3702 | /universalify@2.0.1: 3703 | resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} 3704 | engines: {node: '>= 10.0.0'} 3705 | dev: true 3706 | 3707 | /unpipe@1.0.0: 3708 | resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} 3709 | engines: {node: '>= 0.8'} 3710 | dev: true 3711 | 3712 | /uri-js@4.4.1: 3713 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 3714 | dependencies: 3715 | punycode: 2.3.1 3716 | 3717 | /util-deprecate@1.0.2: 3718 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 3719 | dev: true 3720 | 3721 | /uuid@3.3.2: 3722 | resolution: {integrity: sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==} 3723 | deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. 3724 | hasBin: true 3725 | dev: true 3726 | 3727 | /v8-compile-cache-lib@3.0.1: 3728 | resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} 3729 | dev: true 3730 | 3731 | /vercel@33.5.5: 3732 | resolution: {integrity: sha512-MsuUq6JCPGtRhrzHQ2MVRh8bxNkhVWDaYGPk3LGSEWKbJ0dkB1ic97s5uMEBSsp6QgUB8ZaGuosPDTDGgmPxXw==} 3733 | engines: {node: '>= 16'} 3734 | hasBin: true 3735 | dependencies: 3736 | '@vercel/build-utils': 7.8.0 3737 | '@vercel/fun': 1.1.0 3738 | '@vercel/go': 3.0.5 3739 | '@vercel/hydrogen': 1.0.2 3740 | '@vercel/next': 4.1.5 3741 | '@vercel/node': 3.0.22 3742 | '@vercel/python': 4.1.1 3743 | '@vercel/redwood': 2.0.8 3744 | '@vercel/remix-builder': 2.1.2 3745 | '@vercel/ruby': 2.0.5 3746 | '@vercel/static-build': 2.4.2 3747 | chokidar: 3.3.1 3748 | transitivePeerDependencies: 3749 | - '@swc/core' 3750 | - '@swc/wasm' 3751 | - encoding 3752 | - supports-color 3753 | dev: true 3754 | 3755 | /web-vitals@0.2.4: 3756 | resolution: {integrity: sha512-6BjspCO9VriYy12z356nL6JBS0GYeEcA457YyRzD+dD6XYCQ75NKhcOHUMHentOE7OcVCIXXDvOm0jKFfQG2Gg==} 3757 | dev: true 3758 | 3759 | /webidl-conversions@3.0.1: 3760 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 3761 | dev: true 3762 | 3763 | /whatwg-url@5.0.0: 3764 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 3765 | dependencies: 3766 | tr46: 0.0.3 3767 | webidl-conversions: 3.0.1 3768 | dev: true 3769 | 3770 | /which-boxed-primitive@1.0.2: 3771 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 3772 | dependencies: 3773 | is-bigint: 1.0.4 3774 | is-boolean-object: 1.1.2 3775 | is-number-object: 1.0.7 3776 | is-string: 1.0.7 3777 | is-symbol: 1.0.4 3778 | dev: false 3779 | 3780 | /which-builtin-type@1.1.3: 3781 | resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} 3782 | engines: {node: '>= 0.4'} 3783 | dependencies: 3784 | function.prototype.name: 1.1.6 3785 | has-tostringtag: 1.0.2 3786 | is-async-function: 2.0.0 3787 | is-date-object: 1.0.5 3788 | is-finalizationregistry: 1.0.2 3789 | is-generator-function: 1.0.10 3790 | is-regex: 1.1.4 3791 | is-weakref: 1.0.2 3792 | isarray: 2.0.5 3793 | which-boxed-primitive: 1.0.2 3794 | which-collection: 1.0.2 3795 | which-typed-array: 1.1.15 3796 | dev: false 3797 | 3798 | /which-collection@1.0.2: 3799 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 3800 | engines: {node: '>= 0.4'} 3801 | dependencies: 3802 | is-map: 2.0.3 3803 | is-set: 2.0.3 3804 | is-weakmap: 2.0.2 3805 | is-weakset: 2.0.3 3806 | dev: false 3807 | 3808 | /which-typed-array@1.1.15: 3809 | resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} 3810 | engines: {node: '>= 0.4'} 3811 | dependencies: 3812 | available-typed-arrays: 1.0.7 3813 | call-bind: 1.0.7 3814 | for-each: 0.3.3 3815 | gopd: 1.0.1 3816 | has-tostringtag: 1.0.2 3817 | dev: false 3818 | 3819 | /which@2.0.2: 3820 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 3821 | engines: {node: '>= 8'} 3822 | hasBin: true 3823 | dependencies: 3824 | isexe: 2.0.0 3825 | 3826 | /wide-align@1.1.5: 3827 | resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} 3828 | dependencies: 3829 | string-width: 4.2.3 3830 | dev: true 3831 | 3832 | /wrap-ansi@7.0.0: 3833 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 3834 | engines: {node: '>=10'} 3835 | dependencies: 3836 | ansi-styles: 4.3.0 3837 | string-width: 4.2.3 3838 | strip-ansi: 6.0.1 3839 | dev: false 3840 | 3841 | /wrap-ansi@8.1.0: 3842 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 3843 | engines: {node: '>=12'} 3844 | dependencies: 3845 | ansi-styles: 6.2.1 3846 | string-width: 5.1.2 3847 | strip-ansi: 7.1.0 3848 | dev: false 3849 | 3850 | /wrappy@1.0.2: 3851 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 3852 | 3853 | /xdg-app-paths@5.1.0: 3854 | resolution: {integrity: sha512-RAQ3WkPf4KTU1A8RtFx3gWywzVKe00tfOPFfl2NDGqbIFENQO4kqAJp7mhQjNj/33W5x5hiWWUdyfPq/5SU3QA==} 3855 | engines: {node: '>=6'} 3856 | dependencies: 3857 | xdg-portable: 7.3.0 3858 | dev: true 3859 | 3860 | /xdg-portable@7.3.0: 3861 | resolution: {integrity: sha512-sqMMuL1rc0FmMBOzCpd0yuy9trqF2yTTVe+E9ogwCSWQCdDEtQUwrZPT6AxqtsFGRNxycgncbP/xmOOSPw5ZUw==} 3862 | engines: {node: '>= 6.0'} 3863 | dependencies: 3864 | os-paths: 4.4.0 3865 | dev: true 3866 | 3867 | /yallist@3.1.1: 3868 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 3869 | dev: true 3870 | 3871 | /yallist@4.0.0: 3872 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 3873 | 3874 | /yauzl-clone@1.0.4: 3875 | resolution: {integrity: sha512-igM2RRCf3k8TvZoxR2oguuw4z1xasOnA31joCqHIyLkeWrvAc2Jgay5ISQ2ZplinkoGaJ6orCz56Ey456c5ESA==} 3876 | engines: {node: '>=6'} 3877 | dependencies: 3878 | events-intercept: 2.0.0 3879 | dev: true 3880 | 3881 | /yauzl-promise@2.1.3: 3882 | resolution: {integrity: sha512-A1pf6fzh6eYkK0L4Qp7g9jzJSDrM6nN0bOn5T0IbY4Yo3w+YkWlHFkJP7mzknMXjqusHFHlKsK2N+4OLsK2MRA==} 3883 | engines: {node: '>=6'} 3884 | dependencies: 3885 | yauzl: 2.10.0 3886 | yauzl-clone: 1.0.4 3887 | dev: true 3888 | 3889 | /yauzl@2.10.0: 3890 | resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} 3891 | dependencies: 3892 | buffer-crc32: 0.2.13 3893 | fd-slicer: 1.1.0 3894 | dev: true 3895 | 3896 | /yn@3.1.1: 3897 | resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} 3898 | engines: {node: '>=6'} 3899 | dev: true 3900 | 3901 | /yocto-queue@0.1.0: 3902 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 3903 | engines: {node: '>=10'} 3904 | dev: false 3905 | -------------------------------------------------------------------------------- /public/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/capJavert/next-rust/11a8f2c7512910091f789e577a1a99e13e9b7eca/public/cover.jpg -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/capJavert/next-rust/11a8f2c7512910091f789e577a1a99e13e9b7eca/public/favicon.ico -------------------------------------------------------------------------------- /src/app/globals.css: -------------------------------------------------------------------------------- 1 | :root { 2 | --max-width: 1100px; 3 | --border-radius: 12px; 4 | --font-mono: ui-monospace, Menlo, Monaco, 'Cascadia Mono', 'Segoe UI Mono', 5 | 'Roboto Mono', 'Oxygen Mono', 'Ubuntu Monospace', 'Source Code Pro', 6 | 'Fira Mono', 'Droid Sans Mono', 'Courier New', monospace; 7 | 8 | --foreground-rgb: 0, 0, 0; 9 | --background-start-rgb: 214, 219, 220; 10 | --background-end-rgb: 255, 255, 255; 11 | 12 | --primary-glow: conic-gradient( 13 | from 180deg at 50% 50%, 14 | #16abff33 0deg, 15 | #0885ff33 55deg, 16 | #54d6ff33 120deg, 17 | #0071ff33 160deg, 18 | transparent 360deg 19 | ); 20 | --secondary-glow: radial-gradient( 21 | rgba(255, 255, 255, 1), 22 | rgba(255, 255, 255, 0) 23 | ); 24 | 25 | --tile-start-rgb: 239, 245, 249; 26 | --tile-end-rgb: 228, 232, 233; 27 | --tile-border: conic-gradient( 28 | #00000080, 29 | #00000040, 30 | #00000030, 31 | #00000020, 32 | #00000010, 33 | #00000010, 34 | #00000080 35 | ); 36 | 37 | --callout-rgb: 238, 240, 241; 38 | --callout-border-rgb: 172, 175, 176; 39 | --card-rgb: 180, 185, 188; 40 | --card-border-rgb: 131, 134, 135; 41 | } 42 | 43 | @media (prefers-color-scheme: dark) { 44 | :root { 45 | --foreground-rgb: 255, 255, 255; 46 | --background-start-rgb: 0, 0, 0; 47 | --background-end-rgb: 0, 0, 0; 48 | 49 | --primary-glow: radial-gradient(rgba(1, 65, 255, 0.4), rgba(1, 65, 255, 0)); 50 | --secondary-glow: linear-gradient( 51 | to bottom right, 52 | rgba(1, 65, 255, 0), 53 | rgba(1, 65, 255, 0), 54 | rgba(1, 65, 255, 0.3) 55 | ); 56 | 57 | --tile-start-rgb: 2, 13, 46; 58 | --tile-end-rgb: 2, 5, 19; 59 | --tile-border: conic-gradient( 60 | #ffffff80, 61 | #ffffff40, 62 | #ffffff30, 63 | #ffffff20, 64 | #ffffff10, 65 | #ffffff10, 66 | #ffffff80 67 | ); 68 | 69 | --callout-rgb: 20, 20, 20; 70 | --callout-border-rgb: 108, 108, 108; 71 | --card-rgb: 100, 100, 100; 72 | --card-border-rgb: 200, 200, 200; 73 | } 74 | } 75 | 76 | * { 77 | box-sizing: border-box; 78 | padding: 0; 79 | margin: 0; 80 | } 81 | 82 | html, 83 | body { 84 | max-width: 100vw; 85 | overflow-x: hidden; 86 | } 87 | 88 | body { 89 | color: rgb(var(--foreground-rgb)); 90 | background: linear-gradient( 91 | to bottom, 92 | transparent, 93 | rgb(var(--background-end-rgb)) 94 | ) 95 | rgb(var(--background-start-rgb)); 96 | } 97 | 98 | a { 99 | color: inherit; 100 | text-decoration: none; 101 | } 102 | 103 | @media (prefers-color-scheme: dark) { 104 | html { 105 | color-scheme: dark; 106 | } 107 | } 108 | -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- 1 | import './globals.css' 2 | 3 | export default function RootLayout({ 4 | children, 5 | }: { 6 | children: React.ReactNode 7 | }) { 8 | return ( 9 | 10 | {/* 11 | will contain the components returned by the nearest parent 12 | head.tsx. Find out more at https://beta.nextjs.org/docs/api-reference/file-conventions/head 13 | */} 14 | 15 | {children} 16 | 17 | ) 18 | } 19 | -------------------------------------------------------------------------------- /src/pages/api/hello.ts: -------------------------------------------------------------------------------- 1 | // Next.js API route support: https://nextjs.org/docs/api-routes/introduction 2 | import type { NextApiRequest, NextApiResponse } from 'next' 3 | 4 | type Data = { 5 | name: string 6 | } 7 | 8 | export default function handler( 9 | req: NextApiRequest, 10 | res: NextApiResponse 11 | ) { 12 | res.status(200).json({ name: 'John Doe' }) 13 | } 14 | -------------------------------------------------------------------------------- /src/rs/utils.rs: -------------------------------------------------------------------------------- 1 | use serde_json::json; 2 | use vercel_runtime::{Body, Error, Response, StatusCode}; 3 | 4 | pub fn throw_error( 5 | message: &str, 6 | error: Option, 7 | status_code: StatusCode, 8 | ) -> Result, Error> { 9 | if let Some(error) = error { 10 | eprintln!("error: {error}"); 11 | } 12 | 13 | Ok(Response::builder() 14 | .status(status_code) 15 | .header("Content-Type", "application/json") 16 | .body( 17 | json!( 18 | { 19 | "message": message 20 | } 21 | ) 22 | .to_string() 23 | .into(), 24 | )?) 25 | } 26 | 27 | #[macro_export] 28 | macro_rules! throw_error { 29 | ($message:expr, $error:expr) => { 30 | throw_error($message, $error, StatusCode::INTERNAL_SERVER_ERROR) 31 | }; 32 | ($message:expr) => { 33 | throw_error($message, None, StatusCode::INTERNAL_SERVER_ERROR) 34 | }; 35 | ($message:expr, $error:expr, $status_code:expr) => { 36 | throw_error($message, $error, $status_code) 37 | }; 38 | } 39 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "es5", 4 | "lib": ["dom", "dom.iterable", "esnext"], 5 | "allowJs": true, 6 | "skipLibCheck": true, 7 | "strict": true, 8 | "forceConsistentCasingInFileNames": true, 9 | "noEmit": true, 10 | "esModuleInterop": true, 11 | "module": "esnext", 12 | "moduleResolution": "node", 13 | "resolveJsonModule": true, 14 | "isolatedModules": true, 15 | "jsx": "preserve", 16 | "incremental": true, 17 | "plugins": [ 18 | { 19 | "name": "next" 20 | } 21 | ], 22 | "baseUrl": ".", 23 | "paths": { 24 | "@/*": ["./src/*"] 25 | } 26 | }, 27 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], 28 | "exclude": ["node_modules"] 29 | } 30 | -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "functions": { 3 | "api/**/*.rs": { 4 | "runtime": "vercel-rust@4.0.6" 5 | } 6 | } 7 | } 8 | --------------------------------------------------------------------------------